lindows/lcrash/main.c

31 lines
657 B
C

/// lcrash entry point
/// super awesome...
#include <lcrash/gdb/gdb.h>
#include "types.h"
#include "lnxboot.h"
#include "efi/efi.h"
[[noreturn]]
void entry64(struct boot_params* BootParams) {
BootBootParams = BootParams;
BootSetupInfo = (void*)BootParams + 0x1f1;
// Notify the debugger that we're ready
struct GdbDataBlock* GdbDataBlock = (struct GdbDataBlock*)0x100000;
GdbDataBlock->KernelLoaded = true;
GdbDataBlock->KernelBase = (void*)BootSetupInfo->code32_start;
GdbDataBlock->Update++;
// Initialize EFI code if we had EFI
EfiInitialize();
// Initialize ACPI code if we have ACPI
AcpiInitialize();
// Hang :)
while (1) {}
}