diff options
author | Alex AUVOLAT <alexis211@gmail.com> | 2013-07-11 22:38:20 +0200 |
---|---|---|
committer | Alex AUVOLAT <alexis211@gmail.com> | 2013-07-11 22:38:20 +0200 |
commit | d2aebee488b71e6f28b8728e7473b63f412ca897 (patch) | |
tree | fbe432590bfcf0b77b189a3db99762fb4f104f39 /src/kernel/task/syscall.cpp | |
parent | 78d7ffce4861dea5624ff29ceb39f1643dff8235 (diff) | |
download | TCE-std_c_userland.tar.gz TCE-std_c_userland.zip |
Added direct acces to video memory from userland.std_c_userland
Next : same for keyboard ; move VT handling to userland.
Consequence : a foreground app has total control over I/O.
Next : implement sockets & a userland console multiplexer.
Diffstat (limited to 'src/kernel/task/syscall.cpp')
-rw-r--r-- | src/kernel/task/syscall.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/kernel/task/syscall.cpp b/src/kernel/task/syscall.cpp index a3074b8..2e1350e 100644 --- a/src/kernel/task/syscall.cpp +++ b/src/kernel/task/syscall.cpp @@ -78,6 +78,10 @@ static void link_sc(registers *r) { r->eax = link((char*)r->ebx, (char*)r->ecx, r->edx); } +static void devcontrol_sc(registers *r) { + r->eax = dev_control(r->ebx, (char*)r->ecx); +} + int_callback syscalls[NUMBER_OF_SYSCALLS] = { // This must correspond to common/include/tce/syscalls.h 0, // 0 @@ -109,6 +113,7 @@ int_callback syscalls[NUMBER_OF_SYSCALLS] = { // This must correspond to common read_sc, write_sc, link_sc, + devcontrol_sc, 0 }; |