1 #include <arch/x86/interrupts.h>
2 #include <lunaix/assert.h>
3 #include <libc/stdio.h>
5 void panic (const char* msg, isr_param* param) {
6 tty_set_theme(VGA_COLOR_WHITE, VGA_COLOR_RED);
11 printf(" INT %u: (%x) [0x%x: 0x%x] %s", param->vector, param->err_code, param->cs, param->eip, msg);
16 interrupt_handler(isr_param* param) {
17 switch (param->vector)
20 panic("Division by 0", param);
22 case FAULT_GENERAL_PROTECTION:
23 panic("General Protection", param);
25 case FAULT_PAGE_FAULT:
26 panic("Page Fault", param);
29 panic("Unknown Interrupt", param);