From 706d8edc5abf15960ff8bebf9a2a6dc76b23eeac Mon Sep 17 00:00:00 2001 From: Michal Idziorek Date: Thu, 4 Sep 2014 11:13:43 +0200 Subject: using raimage instead of floppy --- kernel/kernel.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'kernel/kernel.c') diff --git a/kernel/kernel.c b/kernel/kernel.c index a6322f0..0b87b64 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -1,4 +1,5 @@ #define FOOLOS_MODULE_NAME "kernel" +#include "config.h" #include "lib/logger/log.h" #include "lib/int/stdint.h" @@ -6,12 +7,16 @@ #include "smp.h" #include "time.h" +#ifdef FOOLOS_COMPILE_FLOPPY +#include "floppy.h" +#endif + /////// // interrupt handler prototypes // todo: move somewhere else!? void int_clock_handler(); void int_kb_handler(); -void int_floppy_handler(); + uint32_t read_eip(); uint32_t c1,c2,c3; @@ -66,6 +71,11 @@ void kernel_main(uint32_t initial_stack, int mp) dest[i]=source[i]; } + + + /////////////////// BULLSHIT ABOVE THIS LINE: TODO: CLEANUP + + // // We want to get output to the screen as fast as possible! // @@ -90,6 +100,9 @@ void kernel_main(uint32_t initial_stack, int mp) uint32_t vesa_physbase=vesa_init(0x8300,0x8400,0x80000); + char *ramdisk=0x80400; + log(FOOLOS_MODULE_NAME,FOOLOS_LOG_INFO,"ramdisk: %s",ramdisk); + // // Print initial address of the esp stack pointer // @@ -133,8 +146,10 @@ void kernel_main(uint32_t initial_stack, int mp) // install keyboard interrupt handler (irq 1 => 33) int_install_ir(33, 0b10001110, 0x08,&int_kb_handler); +#ifdef FOOLOS_COMPILE_FLOPPY // install floppy interrupt handler (irq 6 => 38) int_install_ir(38, 0b10001110, 0x08,&int_floppy_handler); +#endif // now we can enable interrupts back again x86_int_enable(); @@ -183,7 +198,9 @@ void kernel_main(uint32_t initial_stack, int mp) // Initialize Floppy Disk // + #ifdef FOOLOS_COMPILE_FLOPPY floppy_init(); + #endif // -- cgit v1.2.3