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(). --- include/kernel/con.h | 2 +- include/kernel/sys.h | 3 ++- include/stdio.h | 4 ++++ include/unistd.h | 1 + 4 files changed, 8 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/kernel/con.h b/include/kernel/con.h index 178a0d3..9dd9dbe 100644 --- a/include/kernel/con.h +++ b/include/kernel/con.h @@ -1,7 +1,7 @@ /* * con.h * - * Basic VGA text console. Implements printk() and puts(). + * Basic VGA text console. Implements printk(). */ #ifndef _CON_H diff --git a/include/kernel/sys.h b/include/kernel/sys.h index b2c1b3b..2ec4490 100644 --- a/include/kernel/sys.h +++ b/include/kernel/sys.h @@ -5,6 +5,7 @@ extern int sys_time(void); extern int sys_getpid(void); extern int sys_getpdir(void); extern int sys_signal(void); +extern int sys_rsputs(void); extern int sys_dummy(void); syscall_t call_table[256] = { @@ -13,7 +14,7 @@ syscall_t call_table[256] = { [2] = &sys_getpid, [3] = &sys_getpdir, [4] = &sys_signal, - [5] = &sys_dummy, + [5] = &sys_rsputs, [6] = &sys_dummy, [7] = &sys_dummy, [8] = &sys_dummy, diff --git a/include/stdio.h b/include/stdio.h index d37699a..94cf227 100644 --- a/include/stdio.h +++ b/include/stdio.h @@ -3,7 +3,11 @@ #include +int puts(char*); +int rsputs(char*); + int printf(char*, ...); +int rsprintf(char*, ...); int vsprintf(char*, char*, va_list); diff --git a/include/unistd.h b/include/unistd.h index 3b144f6..a784e22 100644 --- a/include/unistd.h +++ b/include/unistd.h @@ -10,6 +10,7 @@ typedef uint16_t pid_t; #define __SYS_getpid 2 #define __SYS_getpdir 3 #define __SYS_signal 4 +#define __SYS_rsputs 5 #define _syscall0(type, name) \ type name(void) { \ -- cgit v1.3