Files
RockOS/kernel/kmain.c

48 lines
783 B
C

#include <lib/print.h>
#include <lib/stream.h>
#include <idt.h>
#include <stdint.h>
extern void init_idt();
extern void init_gdt();
extern void init_pic();
extern void init_pit();
extern int init_ps2();
extern void enable_interrupts();
void kmain(void)
{
extern print_stream_t vga_print_stream;
extern print_stream_t* kout;
kout = &vga_print_stream;
kout->trunc();
kprint("RockOS booting...\n");
init_gdt();
kprint("GDT set\n");
init_idt();
kprint("IDT set\n");
init_pic();
kprint("PIC initialized\n");
init_pit();
kprint("PIT initialized\n");
int result = init_ps2();
if (result == -1) {
kprint("PS2 init failed\n");
return;
}
kprint("PS2 initialized\n");
enable_interrupts();
kprint("Interrupts enabled\n");
while(1);
}