aboutsummaryrefslogtreecommitdiff
path: root/kernel/main.c
diff options
context:
space:
mode:
authorFranklin Wei <frankhwei536@gmail.com>2015-02-01 21:35:36 -0500
committerFranklin Wei <frankhwei536@gmail.com>2015-02-01 21:35:36 -0500
commit474ba91122aa4b32fdd9348d90aec7468b3d2b8a (patch)
tree07db85d066b8a701c8253ae1279f0a5e9a65244d /kernel/main.c
parent483754ab27f2a58011f723efa52163a83c63e56e (diff)
downloadkappa-474ba91122aa4b32fdd9348d90aec7468b3d2b8a.zip
kappa-474ba91122aa4b32fdd9348d90aec7468b3d2b8a.tar.gz
kappa-474ba91122aa4b32fdd9348d90aec7468b3d2b8a.tar.bz2
kappa-474ba91122aa4b32fdd9348d90aec7468b3d2b8a.tar.xz
a lotta changes, crashes on STI
Diffstat (limited to 'kernel/main.c')
-rw-r--r--kernel/main.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/kernel/main.c b/kernel/main.c
index fd56fb0..63ba635 100644
--- a/kernel/main.c
+++ b/kernel/main.c
@@ -5,9 +5,8 @@
#include "tty.h"
#include <stdio.h>
-void irq1(struct regs_t *regs)
+void interrupt(struct regs_t regs)
{
- printf("Keypress\n");
}
void main(struct multiboot_header *hdr, uint32_t magic)
@@ -15,17 +14,17 @@ void main(struct multiboot_header *hdr, uint32_t magic)
tty_init();
gdt_init();
- printf("GDT initialized.\n");
-
idt_init();
- printf("IDT initialized.\n");
isr_init();
irq_init();
- irq_set_handler(1, irq1);
+ for(int i=0;i<256;++i)
+ set_interrupt_handler(i, interrupt);
+
+ asm("sti");
- printf("Hello, world!\n");
+ printf("Boot finished.!\n");
while(1)
;
}