diff --git a/irq_handler.c b/irq_handler.c index fc50e7a..7a30083 100644 --- a/irq_handler.c +++ b/irq_handler.c @@ -1,7 +1,22 @@ #include "interrupt.h" +#include "vga.h" +#include "io.h" // Need GCC > 6 __attribute__((interrupt)) void keyboard_handler(struct interrupt_frame *frame) { - (void)frame; + printString("Keyboard!", RED, BLACK, 0, 7); + char c = 0; + if (inb(0x60) != c) { + c = inb(0x60); + if (c > 0) + printChar(c, RED, BLACK, 0, 8); + } + (void)frame; +} + +__attribute__((interrupt)) void timer_handler(struct interrupt_frame *frame) +{ + printString("Timer!", RED, BLACK, 0, 9); + (void)frame; }