diff options
author | Kartik Agaram <vc@akkartik.com> | 2020-01-01 18:22:19 -0800 |
---|---|---|
committer | Kartik Agaram <vc@akkartik.com> | 2020-01-01 18:42:48 -0800 |
commit | 65409d2312e702a48d3cf5b32479d25266bda3c3 (patch) | |
tree | 62a7262fce61f2302109246da4536ce6f8e9ef80 /kernel.soso/isr.c | |
parent | a6da50ad30d2e1825575ffef497ab450a8f26e94 (diff) | |
download | mu-65409d2312e702a48d3cf5b32479d25266bda3c3.tar.gz |
5858
Move script to create a Soso boot image into a sub-directory. I'm trying to streamline newcomer attention to just a couple of use cases.
Diffstat (limited to 'kernel.soso/isr.c')
-rw-r--r-- | kernel.soso/isr.c | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/kernel.soso/isr.c b/kernel.soso/isr.c deleted file mode 100644 index 448a2e55..00000000 --- a/kernel.soso/isr.c +++ /dev/null @@ -1,44 +0,0 @@ -#include "common.h" -#include "isr.h" -#include "screen.h" - -IsrFunction gInterruptHandlers[256]; - -extern uint32 gSystemTickCount; - -void registerInterruptHandler(uint8 n, IsrFunction handler) { - gInterruptHandlers[n] = handler; -} - -void handleISR(Registers regs) { - //printkf("handleISR interrupt no:%d\n", regs.int_no); - - uint8 int_no = regs.interruptNumber & 0xFF; - - if (gInterruptHandlers[int_no] != 0) { - IsrFunction handler = gInterruptHandlers[int_no]; - handler(®s); - } - else { - printkf("unhandled interrupt: %d\n", int_no); - printkf("Tick: %d\n", gSystemTickCount); - PANIC("unhandled interrupt"); - } -} - -void handleIRQ(Registers regs) { - // end of interrupt message - if (regs.interruptNumber >= 40) { - //slave PIC - outb(0xA0, 0x20); - } - - outb(0x20, 0x20); - - //printkf("irq: %d\n", regs.int_no); - - if (gInterruptHandlers[regs.interruptNumber] != 0) { - IsrFunction handler = gInterruptHandlers[regs.interruptNumber]; - handler(®s); - } -} |