Kernel: Abstract TTY to use new VESA

This commit is contained in:
Bananymous
2022-12-15 19:05:07 +02:00
parent 930661619b
commit 9274c9ee2f
5 changed files with 284 additions and 143 deletions

View File

@@ -12,6 +12,7 @@
#include <kernel/Serial.h>
#include <kernel/Shell.h>
#include <kernel/tty.h>
#include <kernel/VESA.h>
#define DISABLE_INTERRUPTS() asm volatile("cli")
#define ENABLE_INTERRUPTS() asm volatile("sti")
@@ -23,14 +24,24 @@ void kernel_main(multiboot_info_t* mbi, uint32_t magic)
{
DISABLE_INTERRUPTS();
Serial::initialize();
if (magic != 0x2BADB002)
{
dprintln("Invalid multiboot magic number");
return;
}
s_multiboot_info = mbi;
if (magic != 0x2BADB002)
if (!VESA::Initialize())
{
dprintln("Could not initialize VESA");
return;
Serial::initialize();
}
TTY::initialize();
dprintln("{}", mbi->framebuffer.type);
kmalloc_initialize();
PIC::initialize();