41 lines
770 B
D
41 lines
770 B
D
/**
|
|
* HULK image header.
|
|
*/
|
|
module hulk.header;
|
|
|
|
import hulk.bootinfo;
|
|
|
|
/**
|
|
* Header describing the HULK image.
|
|
*/
|
|
struct HulkHeader
|
|
{
|
|
/**
|
|
* HULK BSS size.
|
|
*
|
|
* The OS loader must map memory to a zeroed range of this size.
|
|
*
|
|
* This value is really an integer, but is stored as a pointer because it
|
|
* is provided by the linker and LDC does not like us to cast it.
|
|
*/
|
|
void * hulk_bss_size;
|
|
|
|
/** Entry point. */
|
|
void * entry;
|
|
|
|
/** Stack size. */
|
|
ulong stack_size;
|
|
|
|
/** Virtual base address. */
|
|
ulong virt_base;
|
|
|
|
/** Stack top virtual address. */
|
|
ulong virt_stack_top;
|
|
|
|
/** Framebuffer virtual address. */
|
|
ulong virt_fb_buffer;
|
|
|
|
/** HULK boot information. */
|
|
BootInfo bootinfo;
|
|
}
|