diff options
| author | Jake Mannens <jake72360@gmail.com> | 2018-07-25 17:18:18 +1000 |
|---|---|---|
| committer | Jake Mannens <jake72360@gmail.com> | 2018-07-25 17:18:18 +1000 |
| commit | 9400716f56057d9f2fcd7f7ad033dfcb131105a2 (patch) | |
| tree | af0e8a7fecf0231e8bd77e7470ad0d934b519778 /include | |
| parent | 45819c035d0b92275de68e559f066cbe50996926 (diff) | |
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().
Diffstat (limited to 'include')
| -rw-r--r-- | include/kernel/con.h | 2 | ||||
| -rw-r--r-- | include/kernel/sys.h | 3 | ||||
| -rw-r--r-- | include/stdio.h | 4 | ||||
| -rw-r--r-- | include/unistd.h | 1 |
4 files changed, 8 insertions, 2 deletions
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 <stdarg.h> +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) { \ |
