Files
RockOS/kernel/kmain.c
2026-06-13 20:43:09 -04:00

52 lines
861 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();
extern void load_grub_boot_struct(void);
extern void* grub_boot_struct_ptr;
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);
}