From 9400716f56057d9f2fcd7f7ad033dfcb131105a2 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Wed, 25 Jul 2018 17:18:18 +1000 Subject: Added missing prototype for puts() in stdio.h. Implemented a basic serial interface using COM0 which can be accessed with the system call sys_puts as well as the library functions rsputs() and rsprintf(). Renamed puts() in con.c to con_puts() and made the function static to avoid interference with the library function puts(). --- lib/stdio.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'lib/stdio.c') diff --git a/lib/stdio.c b/lib/stdio.c index 912fd17..a718ee4 100644 --- a/lib/stdio.c +++ b/lib/stdio.c @@ -3,6 +3,7 @@ #include _syscall1(int, puts, char*, s); +_syscall1(int, rsputs, char*, s); int printf(char *fmt, ...) { int ret; @@ -16,3 +17,16 @@ int printf(char *fmt, ...) { puts(buf); return ret; } + +int rsprintf(char *fmt, ...) { + int ret; + char buf[1024]; + va_list ap; + + va_start(ap, fmt); + ret = vsprintf(buf, fmt, ap); + va_end(ap); + + rsputs(buf); + return ret; +} -- cgit v1.3