2021-11-03 19:03:38 +00:00
|
|
|
#pragma once
|
2022-02-26 19:44:16 +00:00
|
|
|
extern "C"
|
|
|
|
{
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "Lib/string.h"
|
2021-05-10 20:33:25 +00:00
|
|
|
}
|
2022-02-26 19:44:16 +00:00
|
|
|
#include "definitions.h"
|
|
|
|
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "Drivers/VGA/VBE.h"
|
|
|
|
#include "Terminal/kterm.h"
|
2021-05-16 14:53:14 +00:00
|
|
|
|
2022-02-26 19:44:16 +00:00
|
|
|
#include "bootinfo.h"
|
|
|
|
|
2022-08-21 19:18:53 +00:00
|
|
|
#include "Memory/PhysicalMemoryManager.h"
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "Memory/memoryinfo.h"
|
2022-08-21 19:18:53 +00:00
|
|
|
#include "Memory/VirtualMemoryManager.h"
|
2021-11-03 19:03:38 +00:00
|
|
|
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "Memory/GDT/gdtc.h"
|
|
|
|
#include "Interrupts/idt/idt.h"
|
2021-10-23 11:26:15 +00:00
|
|
|
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "Drivers/PIT/pit.h"
|
2021-05-10 20:33:25 +00:00
|
|
|
#include "io.h"
|
2021-07-22 21:14:58 +00:00
|
|
|
#include "cpu.h"
|
2021-11-03 19:03:38 +00:00
|
|
|
#include "serial.h"
|
2021-07-22 19:02:47 +00:00
|
|
|
|
2021-12-29 15:15:18 +00:00
|
|
|
#include "time.h"
|
2022-08-17 12:57:50 +00:00
|
|
|
#include "SuperVisorTerminal/superVisorTerminal.h"
|
2022-08-22 19:16:34 +00:00
|
|
|
#include "PreKernel/bootstructure.h"
|
2021-12-29 15:15:18 +00:00
|
|
|
|
2022-08-18 22:44:52 +00:00
|
|
|
#define CHECK_FLAG(flag, bit) ( flag & (1 << bit ))
|
2021-12-29 15:15:18 +00:00
|
|
|
#define PANIC(message) {return;}
|
2021-07-22 19:02:47 +00:00
|
|
|
|
2022-08-21 19:18:53 +00:00
|
|
|
void map_multiboot_info_structure(unsigned long addr);
|
|
|
|
|
2022-08-22 19:16:34 +00:00
|
|
|
extern "C" void kernel_main ();
|
2022-08-21 19:18:53 +00:00
|
|
|
|
|
|
|
|
|
|
|
extern "C" uint32_t boot_page_directory;
|
|
|
|
extern "C" uint32_t multiboot_page_table;
|
|
|
|
|
|
|
|
|
|
|
|
const uint32_t KERNEL_BASE_ADDR = 0xC0000000;
|