Example #1
0
 public static void SetCommand(SysCallTarget command, DSysCallInfoHandler handler, Process proc = null)
 {
     Commands[(uint)command] = new SysCallInfo
     {
         CommandID = command,
         Handler   = handler,
         Process   = proc,
     };
 }
Example #2
0
        public static void Setup()
        {
            KernelMessage.WriteLine("Initialize SysCall Manager");

            IDTManager.SetInterruptHandler(FunctionIRQ, FunctionInterruptHandler);
            IDTManager.SetPrivilegeLevel(FunctionIRQ, 0x03);
            IDTManager.SetInterruptHandler(ActionIRQ, ActionInterruptHandler);
            IDTManager.SetPrivilegeLevel(ActionIRQ, 0x03);
            IDTManager.Flush();

            Commands = new SysCallInfo[256];
            SetCommands();
        }