diff options
author | Alexis211 <alexis211@gmail.com> | 2009-10-20 18:30:50 +0200 |
---|---|---|
committer | Alexis211 <alexis211@gmail.com> | 2009-10-20 18:30:50 +0200 |
commit | 90b49b6f171108f272ff529f7546bd9625ca7d17 (patch) | |
tree | c32f714fc7936867decb3a359effbc1f5c07dc64 /Source/Kernel/VTManager | |
parent | 866580161b826443bed3862b8315cefd505de37c (diff) | |
download | Melon-90b49b6f171108f272ff529f7546bd9625ca7d17.tar.gz Melon-90b49b6f171108f272ff529f7546bd9625ca7d17.zip |
Implemented static syscalls, specific to a class and not an object.
Diffstat (limited to 'Source/Kernel/VTManager')
-rw-r--r-- | Source/Kernel/VTManager/VirtualTerminal.proto.cpp | 6 | ||||
-rw-r--r-- | Source/Kernel/VTManager/VirtualTerminal.proto.h | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/Source/Kernel/VTManager/VirtualTerminal.proto.cpp b/Source/Kernel/VTManager/VirtualTerminal.proto.cpp index 348113d..9b0b862 100644 --- a/Source/Kernel/VTManager/VirtualTerminal.proto.cpp +++ b/Source/Kernel/VTManager/VirtualTerminal.proto.cpp @@ -1,6 +1,7 @@ #include "VirtualTerminal.proto.h" #include <DeviceManager/Disp.ns.h> #include <VTManager/VT.ns.h> +#include <TaskManager/Task.ns.h> #include <VirtualTerminal.iface.h> @@ -17,6 +18,11 @@ call_t VirtualTerminal::m_callTable[] = { CALL0(0, 0) }; +u32int VirtualTerminal::scall(u8int wat, u32int a, u32int b, u32int c, u32int d) { + if (wat == VTIF_SGETPRVT) return Task::currProcess()->getVirtualTerminal()->resId(); + return (u32int) - 1; +} + VirtualTerminal::VirtualTerminal() : Ressource(VTIF_OBJTYPE, m_callTable), m_kbdMutex(false), m_kbdbuffMutex(false), m_kbdbuff() { } diff --git a/Source/Kernel/VTManager/VirtualTerminal.proto.h b/Source/Kernel/VTManager/VirtualTerminal.proto.h index c81cf1a..936e4d4 100644 --- a/Source/Kernel/VTManager/VirtualTerminal.proto.h +++ b/Source/Kernel/VTManager/VirtualTerminal.proto.h @@ -32,6 +32,8 @@ class VirtualTerminal : public Ressource { u32int isBoxedSC(); public: + static u32int scall(u8int, u32int, u32int, u32int, u32int); + VirtualTerminal(); virtual ~VirtualTerminal(); |