diff options
Diffstat (limited to 'include/main.h')
-rwxr-xr-x | include/main.h | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/include/main.h b/include/main.h index 3e0c744..f37dd24 100755 --- a/include/main.h +++ b/include/main.h @@ -9,11 +9,11 @@ struct SaveData /*0x74*/ u8 pokedexFlags[204]; /*0x140*/ u8 filler140[1]; /*0x141*/ u8 unk141; - /*0x142*/ u8 unk142; + /*0x142*/ u8 ballSpeed; /*0x143*/ u8 unk143; - /*0x144*/ u8 filler144[0x2D8-0x144]; - s8 signature[10]; - u16 unk2E2; + /*0x144*/ u16 unk144[0x65][2]; + /*0x2D8*/ s8 signature[10]; + u16 checksum; u32 unk2E4; }; @@ -23,7 +23,8 @@ struct Main /*0x02*/ u8 mainState; /*0x03*/ u8 subState; /*0x04*/ u8 unk4; - /*0x05*/ u8 filler5[0x2]; + /*0x05*/ u8 unk5; + /*0x06*/ u8 unk6; /*0x07*/ s8 unk7; /*0x08*/ s8 unk8; /*0x09*/ u8 filler9[0x3]; @@ -57,22 +58,25 @@ struct Main /*0x40*/ int hasSavedGame; /*0x44*/ u8 filler44[0x4]; /*0x48*/ int rngValue; - /*0x4C*/ int unk4C; + /*0x4C*/ int frameCount; /*0x50*/ int unk50; /*0x54*/ u8 filler54[0x20]; + + // This field must be accessed using the following macro to produce matching code. +#define gMain_saveData (*(struct SaveData *)(&gMain.saveData)) /*0x74*/ struct SaveData saveData; + /*0x2E8*/ struct MainUnk2E8 unk2E8[4]; /*0x2F8*/ struct SpriteGroup spriteGroups[NUM_SPRITE_GROUPS]; }; extern struct Main gMain; -extern u8 gUnknown_0200B134[]; extern struct SpriteGroup gUnknown_0200B3B8[]; extern u32 IntrMain_Buffer[0x200]; extern u32 IntrMain[]; -extern IntrFunc *gUnknown_0200FB98; -extern IntrFunc *gUnknown_02019BE0; +extern IntrFunc *gVBlankIntrFuncPtr; +extern IntrFunc *gVCountIntrFuncPtr; extern int gUnknown_02019BE4; extern int gUnknown_02019BE8; extern int gUnknown_02019BEC; @@ -88,7 +92,7 @@ extern u8 gUnknown_02019C10; extern u8 gUnknown_02002008[]; #define INTR_COUNT 14 extern IntrFunc gIntrTable[14]; -extern void (*gUnknown_0200FB9C)(void); +extern void (*gMainCallback)(void); extern void (*gUnknown_0200FBA0)(void); extern void (*gUnknown_02017BD0)(void); extern void (*gUnknown_02017BD4)(void); @@ -97,18 +101,18 @@ extern struct OamData gOamBuffer[128]; void sub_24C(void); void sub_2B4(void); -void sub_490(void); +void ClearGraphicsMemory(void); void sub_518(void); -void sub_578(void); +void ClearSprites(void); u32 Random(void); -void HBlankIntr(void); +void VBlankIntr(void); void VCountIntr(void); void SerialIntr(void); void Timer3Intr(void); void sub_CBC(void); void sub_D10(void); -void sub_D74(void); -void sub_DC4(void); +void MainLoopIter(void); +void DefaultMainCallback(void); #endif // GUARD_MAIN_H |