GDT finally works

This commit is contained in:
2025-08-10 21:29:16 +02:00
parent f8f00cc608
commit 8ee1ea1292
36 changed files with 868 additions and 206 deletions

View File

@ -1,42 +1,22 @@
#include <limine.h>
#include <com1.h>
#include <kprintf.h>
// Halt and catch fire function.
static void hcf(void) {
for (;;) {
asm ("hlt");
}
}
__attribute__((used, section(".limine_requests")))
static volatile LIMINE_BASE_REVISION(3);
__attribute__((used, section(".limine_requests_start")))
static volatile LIMINE_REQUESTS_START_MARKER;
__attribute__((used, section(".limine_requests_end")))
static volatile LIMINE_REQUESTS_END_MARKER;
__attribute__((used, section(".limine_requests")))
static volatile struct limine_memmap_request memmap_request = {
.id = LIMINE_MEMMAP_REQUEST,
.revision = 0,
};
void limine_init(void) {
if (LIMINE_BASE_REVISION_SUPPORTED == false) {
hcf();
}
}
#include "kprintf.h"
#include "banner.h"
#include "hal/hal.h"
#include "bootinfo/bootinfo.h"
#include "pmm/pmm.h"
static volatile LIMINE_BASE_REVISION(2);
void kmain(void) {
limine_init();
com1_init();
if (LIMINE_BASE_REVISION_SUPPORTED == false) {
hal_hang();
}
kprintf("Hello dupa!\n");
bootinfo_init();
pmm_init();
hal_init();
hcf();
kprintf(BANNER_TEXT "\n");
hal_hang();
}