diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-01-31 19:36:16 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2024-01-31 19:36:16 +0100 |
| commit | 8621867b0e4b38dedc8556e6c483e3575d776af0 (patch) | |
| tree | ae8e9d271db301dc3f9433b909cd80636a8196e5 /Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp | |
| parent | 8f7904569a60721cfd051a359dd17cc86ea67cfe (diff) | |
Kernel: Many improvements done to the kernel and it's HAL and protocols.
Will implement BFileReader on next commit.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp')
| -rw-r--r-- | Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp b/Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp index e49e9c1e..8399d9ce 100644 --- a/Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp +++ b/Private/HALKit/AMD64/CoreInterruptHandlerAMD64.cpp @@ -16,7 +16,7 @@ extern "C" void idt_handle_system_call(HCore::UIntPtr rsp) { rt_syscall_handle(sf); HCore::kcout << "System Call with ID: " - << HCore::StringBuilder::FromInt("syscall{%}", sf->SID); + << HCore::StringBuilder::FromInt("syscall{%}", sf->R15); } extern "C" void idt_handle_gpf(HCore::UIntPtr rsp) { @@ -79,3 +79,12 @@ extern "C" void idt_handle_generic(HCore::UIntPtr rsp) { HCore::ProcessManager::Shared().Leak().GetCurrent().Leak().Crash(); } + +extern "C" HCore::UIntPtr rt_handle_interrupts(HCore::UIntPtr &rsp) { + HCore::HAL::rt_cli(); + + HCore::HAL::StackFramePtr sf = (HCore::HAL::StackFramePtr)rsp; + + HCore::HAL::rt_sti(); + return rsp; +} |
