summaryrefslogtreecommitdiff
path: root/include/pokenav.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/pokenav.h')
-rw-r--r--include/pokenav.h160
1 files changed, 133 insertions, 27 deletions
diff --git a/include/pokenav.h b/include/pokenav.h
index c840fd494..b1c3287f1 100644
--- a/include/pokenav.h
+++ b/include/pokenav.h
@@ -3,8 +3,23 @@
#include "bg.h"
#include "main.h"
+#include "pokemon_storage_system.h"
-typedef u32 (*LoopedTask)(int state);
+typedef u32 (*LoopedTask)(s32 state);
+
+struct PokenavMonList
+{
+ u8 boxId;
+ u8 monId;
+ u16 unk6;
+};
+
+struct PokenavSub18
+{
+ u16 unk0;
+ u16 unk2;
+ struct PokenavMonList unk4[TOTAL_BOXES_COUNT * IN_BOX_COUNT + PARTY_SIZE];
+};
// Return values of LoopedTask functions.
#define LT_INC_AND_PAUSE 0
@@ -41,9 +56,35 @@ enum
POKENAV_MENU_E,
};
+enum
+{
+ MC_HEADER_MR_STONE,
+ MC_HEADER_PROF_BIRCH,
+ MC_HEADER_BRENDAN,
+ MC_HEADER_MAY,
+ MC_HEADER_WALLY,
+ MC_HEADER_NORMAN,
+ MC_HEADER_MOM,
+ MC_HEADER_STEVEN,
+ MC_HEADER_SCOTT,
+ MC_HEADER_ROXANNE,
+ MC_HEADER_BRAWLY,
+ MC_HEADER_WATTSON,
+ MC_HEADER_FLANNERY,
+ MC_HEADER_WINONA,
+ MC_HEADER_TATE_LIZA,
+ MC_HEADER_JUAN,
+ MC_HEADER_SIDNEY,
+ MC_HEADER_PHOEBE,
+ MC_HEADER_GLACIA,
+ MC_HEADER_DRAKE,
+ MC_HEADER_WALLACE,
+ MC_HEADER_COUNT
+};
+
// pokenav.c
void sub_81C7694(u32);
-u16 sub_81C76AC(void);
+u32 sub_81C76AC(void);
void CB2_InitPokeNav(void);
u32 CreateLoopedTask(LoopedTask loopedTask, u32 priority);
@@ -62,7 +103,7 @@ void SetVBlankCallback_(IntrCallback callback);
// pokenav_match_call_ui.c
struct MatchCallListTemplate
{
- u32 unk0;
+ struct PokenavMonList * unk0;
u16 unk4;
u16 unk6;
u8 unk8;
@@ -72,9 +113,10 @@ struct MatchCallListTemplate
u8 unkC;
u8 unkD;
u8 unkE;
- void (*unk10)(u32, u8 *a1);
+ void (*unk10)(struct PokenavMonList *, u8 *a1);
void (*unk14)(u16 a0, u32 a1, u32 a2);
};
+
u32 GetSelectedMatchCall(void);
bool32 sub_81C8224(void);
int MatchCall_MoveCursorUp(void);
@@ -93,15 +135,15 @@ bool32 sub_81C81D4(const struct BgTemplate *arg0, struct MatchCallListTemplate *
void sub_81C8234(void);
// pokenav_match_call_data.c
-bool32 sub_81D17E8(u32 idx);
-u8 sub_81D16DC(u32 idx);
+bool32 MatchCall_HasCheckPage(u32 idx);
+u8 MatchCallMapSecGetByIndex(u32 idx);
bool32 sub_81D1BF8(u32 idx);
bool32 MatchCallFlagGetByIndex(u32 idx);
u32 MatchCall_GetRematchTableIdx(u32 idx);
u32 GetTrainerIdxByRematchIdx(u32 rematchIdx);
-int sub_81D1BD0(u32 idx);
+int MatchCall_GetOverrideFacilityClass(u32 idx);
void MatchCall_GetMessage(u32 idx, u8 *dest);
-const u8 *sub_81D1B40(u32 idx, u32 offset);
+const u8 *MatchCall_GetOverrideFlavorText(u32 idx, u32 offset);
void sub_81D1A78(u32 idx, const u8 **desc, const u8 **name);
// pokenav_main_menu.c
@@ -111,7 +153,7 @@ void sub_81C7850(u32 a0);
u32 sub_81C786C(void);
void LoadLeftHeaderGfxForIndex(u32 arg0);
void sub_81C7FA0(u32 arg0, bool32 arg1, bool32 arg2);
-void sub_81C7AC0(int a0);
+void sub_81C7AC0(s32 a0);
bool32 sub_81C8010(void);
void InitBgTemplates(const struct BgTemplate *templates, int count);
bool32 IsPaletteFadeActive(void);
@@ -125,44 +167,51 @@ void sub_81C7B40(void);
struct Sprite *PauseSpinningPokenavSprite(void);
void ResumeSpinningPokenavSprite(void);
void sub_81C7E14(u32 arg0);
+void sub_81C7FC4(u32 arg0, bool32 arg1);
+void sub_81C7880(void);
void sub_81C7990(u32 a0, u16 a1);
+u32 PokenavMainMenuLoopedTaskIsActive(void);
+bool32 WaitForPokenavShutdownFade(void);
+void sub_81C7834(void *func1, void *func2);
+void ShutdownPokenav(void);
// pokenav_unk_1.c
-bool32 sub_81C9298(void);
-bool32 sub_81C92CC(void);
-bool32 sub_81C9304(void);
-bool32 sub_81C9338(void);
-bool32 sub_81C9368(void);
+bool32 PokenavCallback_Init_0(void);
+bool32 PokenavCallback_Init_4(void);
+bool32 PokenavCallback_Init_5(void);
+bool32 PokenavCallback_Init_2(void);
+bool32 PokenavCallback_Init_3(void);
u32 sub_81C941C(void);
void sub_81C9430(void);
int sub_81C9894(void);
const u8 *sub_81CAF78(int index, u8 *arg1);
+int sub_81C98A4(void);
+int sub_81C98B4(void);
+u16 sub_81C98C4(void);
// pokenav_unk_2.c
+bool32 sub_81C9924(void);
+bool32 sub_81C9940(void);
+void sub_81C9990(s32 ltIdx);
+bool32 sub_81C99C0(void);
void sub_81C99D4(void);
void sub_81CAADC(void);
// pokenav_unk_3.c
-struct Pokenav3Struct_Unk1C
-{
- u8 unk0;
- u8 unk1;
- u16 unk2;
-};
-bool32 sub_81CAAE8(void);
+bool32 PokenavCallback_Init_11(void);
u32 sub_81CAB24(void);
void sub_81CAB38(void);
int sub_81CAE28(void);
int sub_81CAE38(void);
int sub_81CAE48(void);
-struct Pokenav3Struct_Unk1C *sub_81CAE94(void);
+struct PokenavMonList *sub_81CAE94(void);
u16 sub_81CAEA4(int);
bool32 sub_81CAEBC(int index);
int sub_81CAF04(int index);
const u8 *sub_81CAFD8(int index, int textType);
u16 sub_81CB01C(void);
u16 sub_81CB02C(int arg0);
-void sub_81CB050(u32 arg0, u8 *str);
+void sub_81CB050(struct PokenavMonList * arg0, u8 *str);
u8 sub_81CB0C8(int rematchIndex);
int sub_81CB0E4(int index);
bool32 sub_81CAE08(int);
@@ -170,18 +219,75 @@ int sub_81CB128(int index);
// pokenav_unk_4.c
bool32 sub_81CB260(void);
-void sub_81CB29C(int index);
+void sub_81CB29C(s32 index);
u32 sub_81CB2CC(void);
void sub_81CB2E0(void);
void sub_81CBD48(u16 windowId, u32 a1);
// pokenav_unk_5.c
-u32 sub_81CC4D4(void);
+u32 PokenavCallback_Init_6(void);
void sub_81CC524(void);
u32 sub_81CC554(void);
bool32 sub_81CC5F4(void);
-void sub_81CC62C(int);
+void sub_81CC62C(s32);
u32 sub_81CC65C(void);
void sub_81CC670(void);
-#endif //GUARD_POKENAV_H
+// pokenav_unk_6.c
+u32 PokenavCallback_Init_7(void);
+u32 PokenavCallback_Init_9(void);
+u32 sub_81CD070(void);
+void sub_81CD1C0(void);
+bool32 sub_81CD3C4(void);
+bool32 sub_81CDD5C(void);
+struct UnknownStruct_81D1ED4 *sub_81CDC70(void);
+u16 sub_81CDC60(void);
+u16 sub_81CDC50(void);
+u8 sub_81CDDB0(void);
+bool32 sub_81CD548(u8 arg0);
+u8 sub_81CDD7C(void);
+u8 *sub_81CDD04(u8 id);
+u8 *sub_81CDD24(u8 id);
+u16 sub_81CDD48(void);
+void *sub_81CDCB4(u8 id);
+void *sub_81CDCD4(u8 id);
+
+// pokenav_unk_7.c
+bool32 sub_81CDDD4(void);
+void sub_81CDE2C(s32);
+u32 sub_81CDE64(void);
+void sub_81CECA0(void);
+u8 sub_81CEF14(void);
+
+// pokenav_unk_8.c
+u32 PokenavCallback_Init_8(void);
+u32 PokenavCallback_Init_10(void);
+u32 sub_81CEFDC(void);
+void sub_81CEFF0(void);
+bool32 sub_81CF330(void);
+bool32 sub_81CF368(void);
+void sub_81CF3A0(s32);
+u32 sub_81CF3D0(void);
+void sub_81CF3F8(void);
+
+// pokenav_unk_9.c
+u32 PokenavCallback_Init_12(void);
+u32 PokenavCallback_Init_14(void);
+u32 sub_81CFA34(void);
+void sub_81CFA48(void);
+bool32 sub_81CFDD0(void);
+bool32 sub_81CFE08(void);
+void sub_81CFE40(s32);
+u32 sub_81CFE70(void);
+void sub_81CFE98(void);
+
+// pokenav_unk_10.c
+u32 PokenavCallback_Init_13(void);
+u32 sub_81D04A0(void);
+void sub_81D04B8(void);
+bool32 sub_81D0978(void);
+void sub_81D09B0(s32);
+u32 sub_81D09E0(void);
+void sub_81D09F4(void);
+
+#endif // GUARD_POKENAV_H