30 lines
1.1 KiB
C
30 lines
1.1 KiB
C
#ifndef HAZEL_MULTIBOOT_H_
|
|
#define HAZEL_MULTIBOOT_H_
|
|
|
|
#include <stdint.h>
|
|
|
|
typedef struct {
|
|
uint32_t flags; //required
|
|
uint32_t memlower; //if bit 0 in flags are set
|
|
uint32_t memupper; //if bit 0 in flags are set
|
|
uint32_t bootdevice; //if bit 1 in flags are set
|
|
uint32_t commandline; //if bit 2 in flags are set
|
|
uint32_t modulecount; //if bit 3 in flags are set
|
|
uint32_t moduleaddress; //if bit 3 in flags are set
|
|
uint32_t syms[4]; //if bits 4 or 5 in flags are set
|
|
uint32_t memmaplength; //if bit 6 in flags is set
|
|
uint32_t memmapaddress; //if bit 6 in flags is set
|
|
uint32_t driveslength; //if bit 7 in flags is set
|
|
uint32_t drivesaddress; //if bit 7 in flags is set
|
|
uint32_t configtable; //if bit 8 in flags is set
|
|
uint32_t apmtable; //if bit 9 in flags is set
|
|
uint32_t vbecontrolinfo; //if bit 10 in flags is set
|
|
uint32_t vbemodeinfo; //if bit 11 in flags is set
|
|
uint32_t vbemode; // all vbe_* set if bit 12 in flags are set
|
|
uint32_t vbeinterfaceseg;
|
|
uint32_t vbeinterfaceoff;
|
|
uint32_t vbeinterfacelength;
|
|
} multiboot_info_t;
|
|
|
|
#endif
|