From a33d9510bd36a9fdb98f291250a025cd4bec8bc1 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Tue, 27 Feb 2024 11:58:54 +0100 Subject: Kernel: working on interrupts, almost fix them. Signed-off-by: Amlal El Mahrouss --- Private/HALKit/AMD64/HalCoreInterruptHandler.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'Private/HALKit/AMD64/HalCoreInterruptHandler.cpp') diff --git a/Private/HALKit/AMD64/HalCoreInterruptHandler.cpp b/Private/HALKit/AMD64/HalCoreInterruptHandler.cpp index 5a353b6e..70b6e782 100644 --- a/Private/HALKit/AMD64/HalCoreInterruptHandler.cpp +++ b/Private/HALKit/AMD64/HalCoreInterruptHandler.cpp @@ -49,6 +49,13 @@ static const char* kExceptionMessage[32] = { /// @brief System call interrupt (like DOS and NT) #define kKernelSyscallInterrupt (0x21) -EXTERN_C HCore::UIntPtr rt_handle_interrupts(HCore::UIntPtr rsp) { +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; } + + -- cgit v1.2.3