diff --git a/src/idt.asm b/src/idt.asm index 8ada1db..7be3089 100644 --- a/src/idt.asm +++ b/src/idt.asm @@ -2,17 +2,13 @@ extern interrput_handler %macro isr_err_stub 1 isr_stub_%+%1: - push %1 call interrput_handler - add rsp, 8 iretq %endmacro %macro isr_no_err_stub 1 isr_stub_%+%1: - push %1 call interrput_handler - add rsp, 8 iretq %endmacro diff --git a/src/idt.c b/src/idt.c index 857eeed..c8a8bda 100644 --- a/src/idt.c +++ b/src/idt.c @@ -53,16 +53,8 @@ void idt_init(void) __asm__ volatile("sti"); } -typedef struct +void interrput_handler() { - uint64_t vector_number; - uint64_t error_code; -} cpu_status_t; - -void interrput_handler(uint64_t vector_number) -{ - vga_print("An exception occurred: "); - vga_print_uint(vector_number); - vga_print("\n"); + vga_print("An interrupt happened\n"); idt_hang(); } \ No newline at end of file diff --git a/src/kernel.c b/src/kernel.c index ba2a83a..95b1c5e 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -9,4 +9,6 @@ void kernel_main(void) vga_print_success("IDT intialzied\n"); vga_print("Welcome to nub OS\n"); + + __asm__ volatile("int $255"); } \ No newline at end of file