summaryrefslogtreecommitdiff
path: root/Source/Kernel/VTManager
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Kernel/VTManager')
-rw-r--r--Source/Kernel/VTManager/VirtualTerminal.proto.cpp6
-rw-r--r--Source/Kernel/VTManager/VirtualTerminal.proto.h2
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();