summaryrefslogtreecommitdiff
path: root/src/stdio.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/stdio.c')
-rw-r--r--src/stdio.c37
1 files changed, 0 insertions, 37 deletions
diff --git a/src/stdio.c b/src/stdio.c
deleted file mode 100644
index e93dea1..0000000
--- a/src/stdio.c
+++ /dev/null
@@ -1,37 +0,0 @@
-#include"types.h"
-#include"string.h"
-#include<stdarg.h>
-
-void terminal_putchar(char c);
-void terminal_writestring(char* data);
-void terminal_writeint(uint32_t data);
-void terminal_writefloat(double num);
-
-void printf(char *str, ...)
-{
- size_t count=0;
- for(size_t i=0;str[i]!='\0';i++) if(str[i]=='%') count++;
-
- va_list list;
- va_start(list, str);
-
- for(size_t i=0;str[i]!='\0';i++)
- {
- if(str[i]=='%')
- {
- i++;
- if(str[i]=='c') terminal_putchar((char)va_arg(list,int));
- else if(str[i]=='s') terminal_writestring(va_arg(list,char*));
- else if(str[i]=='d') terminal_writeint(va_arg(list,int));
- else if(str[i]=='f') terminal_writefloat(va_arg(list,double));
- else
- {
- terminal_writestring("wrong format using print function\n");
- return;
- }
- }
- else terminal_putchar(str[i]);
- }
-
- va_end(list);
-}