diff --git a/src/interrupts.c b/src/interrupts.c index 4430b80..c7564f9 100644 --- a/src/interrupts.c +++ b/src/interrupts.c @@ -1,3 +1,4 @@ +#include #include #include @@ -22,7 +23,10 @@ void interrupts_load() kernaux_asm_i386_flush_idt((uint32_t)&idt_pointer); } -void interrupts_handler() {} +void interrupts_handler() +{ + drivers_console_puts("INTERRUPT!!!!!"); +} #define init_intr(num, dpl) do { \ void interrupts_cb_##num(); \ @@ -73,4 +77,6 @@ void interrupts_setup(const uint16_t kernel_cs_selector) init_intr(0x1d, 0); init_intr(0x1e, 0); init_intr(0x1f, 0); + + init_intr(0x80, 0); } diff --git a/src/main.c b/src/main.c index 23c90ae..e7b42d4 100644 --- a/src/main.c +++ b/src/main.c @@ -95,6 +95,10 @@ void main( protected_initialize(); drivers_console_puts("[INFO] main: Finished."); + + asm("int $0x80"); + asm("int $0x80"); + asm("int $0x80"); } void my_putc(void *display KERNAUX_UNUSED, char c)