#pragma once #include #include #include typedef struct PACKED { u16 size; u16 flags; u32 cylinders; u32 heads; u32 sectors_per_track; u64 sectors_count; u16 bytes_per_sector; u32 edd; // optional } disk_params_t; typedef struct PACKED { u8 size; u8 _unused0; u16 sectors; u32 destination; u64 lba; } dap_t; int read_disk(void *dest, size_t offset, size_t bytes); void disk_init(u16 disk); bool bios_boot_root_hint(boot_root_hint_t *out); void *read_rootfs(const char *path); bool stage_rootfs_image(u64 *paddr, u64 *size);