katam/include/multi_boot_util.h
2020-06-03 10:51:07 -05:00

50 lines
1.1 KiB
C

#ifndef GUARD_MULTI_BOOT_UTIL_H
#define GUARD_MULTI_BOOT_UTIL_H
#include "global.h"
#include "multi_boot.h"
struct MultiBootDataRecv {
vu16 data[1 + MULTIBOOT_NCHILD];
};
struct MultiBootStruct { // TODO: needs a better name
vu8 unk00;
vu8 unk01;
vu8 unk02;
vu8 unk03;
vu8 unk04;
vu16 unk06;
vu16 unk08;
vu16 unk0A;
vu16 unk0C;
vu16 unk0E;
const u8 *volatile srcp;
const u8 *volatile endp;
vs32 length;
u16 filler1C;
vu16 unk1E[MULTIBOOT_NCHILD];
vu8 unk24;
vu8 unk25;
vu8 unk26;
vu16 unk28;
vu8 unk2A;
vu8 unk2B;
};
extern IntrFunc gTimer3IntrBkp;
extern struct MultiBootDataRecv gMultiBootDataRecv;
extern u32 gUnk_03000480; // always zero. debug variable?
extern IntrFunc gMultiSioIntrBkp;
extern struct MultiBootStruct gMultiBootStruct;
extern struct MultiBootParam gMultiBootParam;
extern vs32 gUnk_0300050C;
void sub_0803024C(void);
void sub_08030B38(void);
void MultiBootInitWithParams(const void *start, const void *end);
void sub_08030C1C(void);
void sub_08030C40(u16);
#endif // GUARD_MULTI_BOOT_UTIL_H