diff options
| author | Michal Idziorek <m.i@gmx.at> | 2014-07-08 23:19:51 +0200 |
|---|---|---|
| committer | Michal Idziorek <m.i@gmx.at> | 2014-07-08 23:19:51 +0200 |
| commit | d00e64542cb58b25cd67e8c3b682d0e07312f441 (patch) | |
| tree | 725231947c9425e0aae45fb674f8c02a955e7632 /kernel/kernel.c | |
| parent | 1d5e33d5cc2c68dbe63d9a889432316a514a6fd6 (diff) | |
added basic shell with one command.
Diffstat (limited to 'kernel/kernel.c')
| -rw-r--r-- | kernel/kernel.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c index 3c7b578..7118706 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -17,7 +17,6 @@ void int_test_handler() scr_put_string("inside software interrupt handler 88"); - __asm__("popa"); __asm__("leave"); __asm__("iret"); @@ -48,19 +47,22 @@ void kernel_main() // keyboard = 22 (irq 1) // etc.. - // install pit handler (programmable timer interrupt channel0) + // install PIT interrupt handler int_install_ir(32, 0b10001110, 0x08,&int_clock_handler); - // install keyboard handler + // install keyboard interrupt handler int_install_ir(33, 0b10001110, 0x08,&int_kb_handler); - // install test handler + // install test software interrupt handler int_install_ir(88, 0b10001110, 0x08,&int_test_handler); // now we can enable interrupts back again int_enable(); scr_put_string_nl("Interrupts are up and running"); + //init shell + shell_init(); + // kernel main loop while(1) { |
