#include #include #include #include #include #include "paging.h" #include "mboot.h" #include "idt.h" #include "pic.h" static struct boot_info boot_info; void* amd64_shim(void *mboot_data_ptr) { serial_init(); paging_init(); pic_remap(); idt_init(); //kmap_page(mboot_data_ptr, mboot_data_ptr, F_WRITEABLE); struct mboot_info mboot_info; mboot_info = mboot_load_info(mboot_data_ptr); struct mboot_tag *map_tag; map_tag = mboot_get_tag(&mboot_info, MBOOT_MEMORYMAP); boot_info.map = map_tag->data.memory_map; return &boot_info; }