blob: 8d2783f2c923b1c2f49843b87587ec80eb68d79f [file] [log] [blame]
swissChilid8137922021-02-17 15:34:07 -08001#include "vga.h"
swissChili0b35bf22021-02-18 12:49:40 -08002#include "log.h"
swissChilidefeb0d2021-02-18 15:28:36 -08003#include "io.h"
swissChilid8137922021-02-17 15:34:07 -08004#include "descriptor_tables.h"
swissChilidefeb0d2021-02-18 15:28:36 -08005#include "timer.h"
swissChilid8137922021-02-17 15:34:07 -08006
swissChili0b35bf22021-02-18 12:49:40 -08007int kmain(void *mboot)
swissChilid8137922021-02-17 15:34:07 -08008{
9 vga_clear();
10 vga_set_color(LIGHT_BLUE, BLACK);
11 vga_write("Hello!\nWelcome to Bluejay OS\n");
swissChilid8137922021-02-17 15:34:07 -080012 vga_set_color(WHITE, BLACK);
13
swissChili0b35bf22021-02-18 12:49:40 -080014 init_descriptor_tables();
swissChilid8137922021-02-17 15:34:07 -080015
swissChili0b35bf22021-02-18 12:49:40 -080016 vga_set_color(LIGHT_GREEN, BLACK);
17 vga_write("Setup complete!\n");
18 vga_set_color(WHITE, BLACK);
swissChilid8137922021-02-17 15:34:07 -080019
swissChilidefeb0d2021-02-18 15:28:36 -080020 asm volatile("sti");
21
22 init_timer(50);
swissChili0b35bf22021-02-18 12:49:40 -080023
24 while (1)
25 {}
swissChilid8137922021-02-17 15:34:07 -080026
27 return 0xCAFEBABE;
28}