diff --git a/SystemCalls/Native.cpp b/SystemCalls/Native.cpp index a9dc569..4f73b3d 100644 --- a/SystemCalls/Native.cpp +++ b/SystemCalls/Native.cpp @@ -34,12 +34,20 @@ static uint64_t sys_free_pages(SyscallsFrame *Frame, uint64_t Address, uint64_t return 0; } +static uint64_t sys_kernelctl(SyscallsFrame *Frame, uint64_t Command, uint64_t Arg1, uint64_t Arg2, uint64_t Arg3, uint64_t Arg4) +{ + fixme("KernelCTL: %lld", Command); + return 0; +} + static void *NativeSyscallsTable[] = { [_Exit] = (void *)sys_exit, [_Print] = (void *)sys_print, [_RequestPages] = (void *)sys_request_pages, [_FreePages] = (void *)sys_free_pages, + + [_KernelCTL] = (void *)sys_kernelctl, }; uint64_t HandleNativeSyscalls(SyscallsFrame *Frame) diff --git a/syscalls.h b/syscalls.h index d5130f6..d0baae9 100644 --- a/syscalls.h +++ b/syscalls.h @@ -10,6 +10,8 @@ enum NativeSyscalls _RequestPages, _FreePages, + + _KernelCTL, }; static inline long syscall0(long syscall)