diff options
Diffstat (limited to 'include/pokenav.h')
-rw-r--r-- | include/pokenav.h | 176 |
1 files changed, 132 insertions, 44 deletions
diff --git a/include/pokenav.h b/include/pokenav.h index f77f93e2d..a72cea9c4 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -2,10 +2,13 @@ #define GUARD_POKENAV_H #include "region_map.h" +#include "mon_markings.h" struct UnkPokenavStruct_Sub { /*0x0*/ u16 unk0; - /*0x2*/ u8 filler2[6]; + /*0x2*/ u16 unk2; + /*0x4*/ u8 unk4; + /*0x5*/ u8 unk5; }; struct UnkPokenavStruct_Sub1 { @@ -27,36 +30,65 @@ struct UnkPokenavStruct_Sub1 { /*0x66*/ s16 unk66[5]; }; -struct UnkPokenavStruct_Sub2 { - /*0x00*/ u8 filler_00[0x26]; - /*0x26*/ u16 unk26; -}; - struct UnkPokenavStruct_Sub3 { /*0x00*/s16 unk0; }; struct UnkUsePokeblockSub { - /*0*/ u8 fil0[2]; - /*2*/ u8 partyIdx:5; - /*2*/ u16 unk2:9; + /*0x0*/ u8 unk0; + /*0x1*/ u8 unk1; + /*0x2*/ u8 partyIdx:5; + /*0x2*/ u16 unk2:9; + /*0x3*/ u8 unk4:1; +}; + +struct UnkPokenav11 { + u16 unk0; + u16 unk2; }; struct UnkPokenavStruct { - /*0x0000*/ u8 filler0000[0x306]; + /*0x0000*/ u16 unk0[6][0x40]; + /*0x0300*/ u8 filler0300[0x6]; /*0x0306*/ u16 unk306; - /*0x0306*/ u8 filler0308[0x4]; - /*0x030C*/ union { // TODO: what? - u16 val; - struct UnkPokenavStruct_Sub3 unk030C; - } unk030C; - /*0x0310*/ u8 filler030E[0x6a90]; + /*0x0306*/ int unk308; + /*0x030C*/ s16 unk030C; + /*0x030E*/ s8 unk30E; + /*0x030F*/ u8 unk30F; + /*0x0310*/ u8 filler0310[0x1]; + /*0x0311*/ u8 unk311; + /*0x0312*/ u16 unk312; + /*0x0314*/ u16 unk314[6]; + /*0x0320*/ struct Sprite *unk320[6][4]; + /*0x0380*/ struct SpriteSheet unk380; + /*0x0388*/ u8 unk388[0x1400]; + /*0x1788*/ u8 unk1788[0xC00]; + /*0x2388*/ u8 unk2388[0x1800]; + /*0x3B88*/ struct Sprite *unk3B88[2]; + /*0x3B90*/ struct Sprite *unk3B90[2]; + /*0x3B98*/ u8 unk3B98[0x600]; + /*0x4198*/ u8 unk4198[0x600]; + /*0x4798*/ u8 unk4798[0x600]; + /*0x4D98*/ u8 unk4D98[0x600]; + /*0x5398*/ u8 unk5398[0xC00]; + /*0x5F98*/ u8 unk5F98[0x200]; + /*0x6198*/ u8 unk6198[0x200]; + /*0x6398*/ u8 unk6398[0x200]; + /*0x6598*/ u8 unk6598[0x200]; + /*0x6798*/ u8 unk6798[0x200]; + /*0x6998*/ u8 unk6998[0x200]; + /*0x6B98*/ u8 unk6B98[0x200]; + /*0x6D98*/ struct Sprite *unk6D98; + /*0x6D9C*/ struct Sprite *unk6D9C; /*0x6DA0*/ u16 unk6DA0; /*0x6DA2*/ u16 unk6DA2; /*0x6DA4*/ u16 taskId6DA4; /*0x6DA6*/ u8 filler6DA6[0x6]; /*0x6DAC*/ u8 unk6DAC; - /*0x6DAD*/ u8 filler6DAD[0x6B]; + /*0x6DAD*/ s8 unk6DAD; + /*0x6DAE*/ s8 unk6DAE; + /*0x6DAF*/ u8 filler6DAF[0x3]; + /*0x6DB2*/ u8 unk6DB2[0x66]; /*0x6E18*/ struct RegionMap regionMap; /*0x7698*/ u16 unk7698; /*0x769A*/ u16 unk769A; @@ -65,38 +97,80 @@ struct UnkPokenavStruct { /*0x769E*/ u8 unk769E; /*0x769F*/ u8 filler769F[0xB]; /*0x76AA*/ u8 unk76AA; - /*0x76AB*/ u8 filler76AB[0x10bd]; - /*0x8768*/ struct UnkPokenavStruct_Sub2 *unk8768; - /*0x876C*/ u8 filler876C[0x2]; - /*0x876E*/ u8 unk876E; - /*0x876F*/ u8 filler876F[0x7]; - /*0x8776*/ u16 unk8776; + /*0x76AC*/ struct Sprite *unk76AC; + /*0x76B0*/ struct PokemonMarkMenu unk76B0; + /*0x8764*/ u16 unk8764; + /*0x8766*/ s16 unk8766; + /*0x8768*/ struct Sprite *unk8768; + /*0x876C*/ s16 unk876C; + /*0x876E*/ s16 unk876E; + /*0x8770*/ s16 unk8770; + /*0x8772*/ s16 unk8772; + /*0x8774*/ s16 unk8774; + /*0x8776*/ s16 unk8776; /*0x8778*/ u16 unk8778; - /*0x877A*/ u8 filler877A[0xE]; + /*0x877A*/ s16 unk877A; + /*0x877C*/ s16 unk877C; + /*0x877E*/ u16 unk877E; + /*0x8780*/ u16 unk8780; + /*0x8782*/ u8 filler8782[0x2]; + /*0x8784*/ u16 unk8784; + /*0x8786*/ u16 unk8786; /*0x8788*/ u8 unk8788[0x40]; /*0x87C8*/ u8 unk87C8; - /*0x87C9*/ u8 filler87C9; + /*0x87C9*/ u8 unk87C9; /*0x87CA*/ u8 unk87CA; - /*0x87CB*/ u8 filler87CB[0xF]; + /*0x87CB*/ u8 unk87CB; + /*0x87CC*/ struct Sprite *unk87CC; + /*0x87D0*/ struct Sprite *unk87D0[2]; + /*0x87D8*/ u8 unk87D8; + /*0x87D9*/ u8 filler87D9[0x1]; /*0x87DA*/ s16 unk87DA; /*0x87DC*/ s16 unk87DC; - /*0x87DE*/ s16 unk87DE; - /*0x87E0*/ void *unk87E0; - /*0x87E4*/ u8 filler87E4[0x44]; + /*0x87DE*/ u8 unk87DE; + /*0x87DF*/ u8 filler87DF[0x1]; + /*0x87E0*/ bool8 (*unk87E0)(void); + /*0x87E4*/ struct Sprite *unk87E4[7]; + /*0x8800*/ struct Sprite *unk8800[10]; /*0x8828*/ u8 unk8828; /*0x8829*/ u8 unk8829[3][64]; /*0x88E9*/ u8 unk88E9[3][24]; - /*0x8931*/ u8 unk8931[11]; - /*0x893C*/ struct UnkUsePokeblockSub unk893c[0x1ab]; - /*0x8fe8*/ u8 fil8fe8[1]; + /*0x8931*/ u8 unk8931[3]; + /*0x8934*/ u8 unk8934[3]; + /*0x8937*/ u8 unk8937[5]; + /*0x893C*/ struct UnkUsePokeblockSub unk893c[0x1AA]; + /*0x8FE4*/ u16 unk8FE4; + /*0x8FE6*/ u8 unk8FE6; + /*0x8FE7*/ u8 unk8FE7; + /*0x8FE8*/ u8 filler8FE8[0x1]; /*0x8fe9*/ s8 unk8fe9; - /*0x8fea*/ u8 fil8fea[6]; - /*0x8ff0*/ u8 unk8ff0; - /*0x8ff1*/ u8 filler8ff1[0x13]; - /*0x9004*/ u8 unk9004[3][20]; - /*0x9040*/ u8 unk9040[0x304]; + /*0x8fea*/ s8 unk8FEA; + /*0x8feb*/ s8 unk8FEB; + /*0x8fec*/ s8 unk8FEC; + /*0x8FED*/ u8 filler8FED[0x1]; + /*0x8fee*/ u16 unk8FEE; + /*0x8ff0*/ u8 unk8ff0[4][5]; + /*0x9004*/ struct UnkPokenav11 unk9004[3][5]; + /*0x9040*/ struct UnkPokenav11 unk9040[5]; + /*0x9054*/ struct UnkPokenav11 unk9054[9][5]; + /*0x9108*/ u8 unk9108[0x14]; + /*0x911C*/ struct UnkPokenav11 unk911C[5]; + /*0x9130*/ u8 filler9130[0x212]; + /*0x9342*/ u16 unk9342; /*0x9344*/ u8 unk9344; - /*0x9345*/ u8 filler9345[0x2955]; + /*0x9345*/ u8 filler9345[3]; + /*0x9348*/ struct Sprite *unk9348; + /*0x934C*/ u16 unk934C[0x280]; + /*0x984C*/ u8 unk984C[0xC][0x100]; + /*0xA44C*/ u8 unkA44C[0xC][0x200]; + /*0xBC4C*/ u8 unkBC4C[0x42]; + /*0xBC8E*/ u8 unkBC8E; + /*0xBC8F*/ u8 unkBC8F; + /*0xBC90*/ u8 unkBC90; + /*0xBC91*/ u8 unkBC91; + /*0xBC92*/ u8 unkBC92; + /*0xBC93*/ u8 unkBC93; + /*0xBC94*/ u8 fillerBC94[0x6]; /*0xBC9A*/ u8 unkBC9A; /*0xBC9B*/ u8 unkBC9B; /*0xBC9C*/ u8 unkBC9C[22][200]; @@ -105,13 +179,27 @@ struct UnkPokenavStruct { /*0xCE4E*/ u16 unkCE4E; /*0xCE50*/ u16 unkCE50; /*0xCE52*/ u16 palettesCE52[30]; - /*0xCE8E*/ u16 palettesCE8E[0x2D]; - /*0xCEE8*/ struct UnkPokenavStruct_Sub unkCEE8[78]; + /*0xCE8E*/ u16 palettesCE8E[0x21]; + /*0xCED0*/ struct Sprite *unkCED0; + /*0xCED4*/ struct Sprite *unkCED4[5]; + /*0xCEE8*/ struct UnkPokenavStruct_Sub unkCEE8[69]; + /*0xD110*/ const u8 *trainerEyeDescriptionLines[4]; + /*0xD120*/ u8 fillerD114[0x18]; + /*0xD138*/ u8 unkD138[0x20]; /*0xD158*/ u16 unkD158; - /*0xD15A*/ u8 fillerD15A[6]; + /*0xD15A*/ u16 unkD15A; + /*0xD15C*/ u16 unkD15C; + /*0xD15E*/ u8 fillerD15E[2]; /*0xD160*/ u16 unkD160; - /*0xD162*/ u8 unkD162[2]; + /*0xD162*/ u8 unkD162; /*0xD164*/ struct UnkPokenavStruct_Sub1 unkD164; + /*0xD1D4*/ u8 fillerD1D6[0x2]; + /*0xD1D6*/ u16 unkD1D6[3]; + /*0xD1DC*/ u16 unkD1DC; + /*0xD1DE*/ u16 unkD1DE; + /*0xD1E0*/ u8 *unkD1E0; + /*0xD1E4*/ u8 unkD1E4[3][0x2000]; + /*0x131E4*/ u8 unk131E4[0x1000]; }; extern struct UnkPokenavStruct *const gUnknown_083DFEC4; @@ -128,7 +216,7 @@ void sub_80F33A8(void); void sub_80F3C94(void); void sub_80F3D00(void); void sub_80F4BD0(void); -void sub_80F556C(void *); +void sub_80F556C(struct UnkPokenav11*); void sub_80F567C(void *, void *); void sub_80F5B38(void); bool8 sub_80F5B50(void); @@ -137,7 +225,7 @@ void sub_80EBA5C(void); void sub_80F5060(bool8); void move_anim_execute(void); bool8 gpu_sync_bg_show(void); -void sub_80F5550(void *, void *); +void sub_80F5550(struct UnkPokenav11*, struct UnkPokenav11*); bool8 sub_80F555C(void); void sub_80F7224(u8); void sub_80F5BDC(void); |