From d1381d8b77ee691cc5dc1fe1fdcb158e7524283a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Oct 2018 21:17:43 -0400 Subject: Start decompiling quest_log.o --- include/global.h | 9 ++++++++- include/quest_log.h | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 include/quest_log.h (limited to 'include') diff --git a/include/global.h b/include/global.h index 11a79ebe8..791eb2dbf 100644 --- a/include/global.h +++ b/include/global.h @@ -474,6 +474,11 @@ struct MysteryEventStruct u8 unk_1; }; +struct QuestLog +{ + /*0x0000*/ u8 filler_0000[0x19a0]; +}; + #define MAP_OBJECTS_COUNT 16 #define BERRY_TREES_COUNT 128 #define FLAGS_COUNT 300 @@ -494,7 +499,9 @@ struct SaveBlock1 /*0x63a*/ u8 trainerRematches[100]; /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; - /*0x0EE0*/ u8 fillerEE0[0x2580]; + /*0x0EE0*/ u8 fillerEE0[0x420]; + /*0x1300*/ struct QuestLog questLog; + /*0x2ca0*/ u8 filler2CA0[0x7c0]; /*0x3460*/ struct MysteryEventStruct unk_3460; /*0x3464*/ u8 filler_3464[0x1b8]; /*0x361C*/ struct RamScript ramScript; diff --git a/include/quest_log.h b/include/quest_log.h new file mode 100644 index 000000000..015f4966e --- /dev/null +++ b/include/quest_log.h @@ -0,0 +1,4 @@ +#ifndef GUARD_QUEST_LOG_H +#define GUARD_QUEST_LOG_H + +#endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From f5964c58bd51718381c5492c063662354a86309e Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 9 Oct 2018 21:28:20 -0400 Subject: through sub_811092C --- include/global.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 791eb2dbf..e1b6ff579 100644 --- a/include/global.h +++ b/include/global.h @@ -476,7 +476,7 @@ struct MysteryEventStruct struct QuestLog { - /*0x0000*/ u8 filler_0000[0x19a0]; + /*0x0000*/ u8 filler_000[0x668]; }; #define MAP_OBJECTS_COUNT 16 @@ -500,7 +500,7 @@ struct SaveBlock1 /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; /*0x0EE0*/ u8 fillerEE0[0x420]; - /*0x1300*/ struct QuestLog questLog; + /*0x1300*/ struct QuestLog questLog[4]; /*0x2ca0*/ u8 filler2CA0[0x7c0]; /*0x3460*/ struct MysteryEventStruct unk_3460; /*0x3464*/ u8 filler_3464[0x1b8]; -- cgit v1.2.3 From b78aef06258d5bc6f44cdcc43987a5dd11f1d975 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Oct 2018 07:59:47 -0400 Subject: sub_8110944 --- include/global.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index e1b6ff579..907dc7eaa 100644 --- a/include/global.h +++ b/include/global.h @@ -476,7 +476,9 @@ struct MysteryEventStruct struct QuestLog { - /*0x0000*/ u8 filler_000[0x668]; + /*0x0000*/ u8 filler_000[0x568]; + /*0x0568*/ u8 filler_568[0x100]; + /*0x0668*/ u8 end[0]; }; #define MAP_OBJECTS_COUNT 16 -- cgit v1.2.3 From dc37cd7de0d60727e4b45fd4c83301a59a194bdf Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Oct 2018 10:45:50 -0400 Subject: through sub_8110A3C --- include/quest_log.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/quest_log.h b/include/quest_log.h index 015f4966e..dfdd4bf41 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -1,4 +1,6 @@ #ifndef GUARD_QUEST_LOG_H #define GUARD_QUEST_LOG_H +extern u8 gUnknown_3005E88; + #endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From 572929c3523aeb2f563821f07724f5356df61d76 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Oct 2018 11:25:05 -0400 Subject: sub_8110BB0 --- include/global.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 907dc7eaa..4efd21e48 100644 --- a/include/global.h +++ b/include/global.h @@ -476,7 +476,13 @@ struct MysteryEventStruct struct QuestLog { - /*0x0000*/ u8 filler_000[0x568]; + /*0x0000*/ u8 unk_000; + /*0x0001*/ s8 unk_001; + /*0x0002*/ s8 unk_002; + /*0x0003*/ s8 unk_003; + /*0x0004*/ s16 unk_004; + /*0x0006*/ s16 unk_006; + /*0x0008*/ u8 filler_008[0x560]; /*0x0568*/ u8 filler_568[0x100]; /*0x0668*/ u8 end[0]; }; @@ -489,7 +495,7 @@ struct QuestLog struct SaveBlock1 { - /*0x0000*/ u8 filler[0x4]; + /*0x0000*/ struct Coords16 pos; /*0x0004*/ struct WarpData location; /*0x0C*/ struct WarpData warp1; /*0x14*/ struct WarpData warp2; -- cgit v1.2.3 From 7e35bd4266a9573a6fbc6d73efb5175a44ba5b93 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 10 Oct 2018 19:43:12 -0400 Subject: nonmatching sub_8110BE8 --- include/global.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 4efd21e48..1655ac4e3 100644 --- a/include/global.h +++ b/include/global.h @@ -474,6 +474,16 @@ struct MysteryEventStruct u8 unk_1; }; +struct QuestLogNPCData +{ + u32 x:8; + u32 negx:1; + u32 y:8; + u32 negy:1; + u32 elevation:6; + u32 movementType:8; +}; + struct QuestLog { /*0x0000*/ u8 unk_000; @@ -482,7 +492,8 @@ struct QuestLog /*0x0003*/ s8 unk_003; /*0x0004*/ s16 unk_004; /*0x0006*/ s16 unk_006; - /*0x0008*/ u8 filler_008[0x560]; + /*0x0008*/ u8 filler_008[0x460]; + /*0x0468*/ struct QuestLogNPCData npcData[64]; /*0x0568*/ u8 filler_568[0x100]; /*0x0668*/ u8 end[0]; }; -- cgit v1.2.3 From 230f58b77dae53c2934cafbff6ef96807232a9d0 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 10:13:08 -0400 Subject: through sub_8110E20 --- include/global.h | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 1655ac4e3..f1efeb4e0 100644 --- a/include/global.h +++ b/include/global.h @@ -492,7 +492,9 @@ struct QuestLog /*0x0003*/ s8 unk_003; /*0x0004*/ s16 unk_004; /*0x0006*/ s16 unk_006; - /*0x0008*/ u8 filler_008[0x460]; + /*0x0008*/ u8 filler_008[0x140]; + /*0x0148*/ u8 unk_148[0x120]; + /*0x02c8*/ u8 unk_268[0x200]; /*0x0468*/ struct QuestLogNPCData npcData[64]; /*0x0568*/ u8 filler_568[0x100]; /*0x0668*/ u8 end[0]; @@ -500,7 +502,7 @@ struct QuestLog #define MAP_OBJECTS_COUNT 16 #define BERRY_TREES_COUNT 128 -#define FLAGS_COUNT 300 +#define FLAGS_COUNT 288 // 300 #define VARS_COUNT 256 #define MAIL_COUNT 16 @@ -512,13 +514,26 @@ struct SaveBlock1 /*0x14*/ struct WarpData warp2; /*0x1C*/ struct WarpData lastHealLocation; /*0x24*/ struct WarpData warp4; - /*0x002C*/ u8 filler2C[0x60C]; + /*0x2C*/ u16 savedMusic; + /*0x2E*/ u8 weather; + /*0x2F*/ u8 filler_2F; + /*0x30*/ u8 flashLevel; + /*0x32*/ u16 mapDataId; + /*0x34*/ u16 mapView[0x100]; + /*0x234*/ u8 playerPartyCount; + /*0x238*/ struct Pokemon playerParty[PARTY_SIZE]; + /*0x490*/ u32 money; + /*0x494*/ u16 coins; + /*0x496*/ u16 registeredItem; // registered for use with SELECT button + /*0x498*/ u8 filler_0498[0x1a0]; /*0x638*/ u8 trainerRematchStepCounter; u8 filler_639; /*0x63a*/ u8 trainerRematches[100]; /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; - /*0x0EE0*/ u8 fillerEE0[0x420]; + /*0x0EE0*/ u8 flags[FLAGS_COUNT]; + /*0x1000*/ u16 vars[VARS_COUNT]; + /*0x1200*/ u8 filler1200[0x100]; /*0x1300*/ struct QuestLog questLog[4]; /*0x2ca0*/ u8 filler2CA0[0x7c0]; /*0x3460*/ struct MysteryEventStruct unk_3460; -- cgit v1.2.3 From 0046efe86762b893b8bc688ff8172a071a952fac Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 11:06:25 -0400 Subject: sub_8110E68 --- include/unk_8159F40.h | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 include/unk_8159F40.h (limited to 'include') diff --git a/include/unk_8159F40.h b/include/unk_8159F40.h new file mode 100644 index 000000000..7343dc629 --- /dev/null +++ b/include/unk_8159F40.h @@ -0,0 +1,6 @@ +#ifndef GUARD_UNK_8159F40_H +#define GUARD_UNK_8159F40_H + +void sub_815A008(struct QuestLog *); + +#endif //GUARD_UNK_8159F40_H -- cgit v1.2.3 From 1e655837127f458d5fcaf6e57d89032f74950540 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 12:04:54 -0400 Subject: through sub_8110FCC --- include/help_system.h | 6 ++++++ include/overworld.h | 4 ++++ include/wild_encounter.h | 1 + 3 files changed, 11 insertions(+) create mode 100644 include/help_system.h (limited to 'include') diff --git a/include/help_system.h b/include/help_system.h new file mode 100644 index 000000000..3a4c52f2e --- /dev/null +++ b/include/help_system.h @@ -0,0 +1,6 @@ +#ifndef GUARD_HELP_SYSTEM_H +#define GUARD_HELP_SYSTEM_H + +extern bool8 gUnknown_3005ECC; + +#endif //GUARD_HELP_SYSTEM_H diff --git a/include/overworld.h b/include/overworld.h index a5fba0c10..7f7c92743 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -71,4 +71,8 @@ void mapldr_default(void); void IncrementGameStat(u8); u32 GetGameStat(u8); +void sub_8056938(void); + +extern u8 gUnknown_2031DD8; + #endif //GUARD_ROM4_H diff --git a/include/wild_encounter.h b/include/wild_encounter.h index 55bbaa7dd..a1e26fe45 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -40,5 +40,6 @@ void FishingWildEncounter(u8 rod); u16 GetLocalWildMon(bool8 *isWaterMon); u16 GetLocalWaterMon(void); bool8 UpdateRepelCounter(void); +void sub_8082740(u8); #endif // GUARD_WILD_ENCOUNTER_H -- cgit v1.2.3 From b8054bbe5bae6eb87b60840c49606f96e034e6e0 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 12:36:39 -0400 Subject: through sub_8111070 --- include/field_fadetransition.h | 2 ++ include/menu.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h index 7c2d16a24..2cd01601e 100644 --- a/include/field_fadetransition.h +++ b/include/field_fadetransition.h @@ -8,5 +8,7 @@ void sp13F_fall_to_last_warp(void); void sub_80AF848(void); void sub_80AF87C(void); +void sub_807DF64(void); +void sub_807DF7C(void); #endif // GUARD_FIELD_FADETRANSITION_H diff --git a/include/menu.h b/include/menu.h index 99ff35adb..86a67adc4 100644 --- a/include/menu.h +++ b/include/menu.h @@ -32,7 +32,7 @@ void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirs s8 ProcessMenuInputNoWrap_(void); void do_scheduled_bg_tilemap_copies_to_vram(void); void clear_scheduled_bg_copies_to_vram(void); -void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, struct TextColor *color, s8 speed, const u8 *str); +void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u16 a3); #endif // GUARD_MENU_H -- cgit v1.2.3 From 21224433ab5ce61f3c0b5c14bf2d76cbdb3ed740 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 13:56:18 -0400 Subject: through sub_8111150 --- include/unk_8159F40.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/unk_8159F40.h b/include/unk_8159F40.h index 7343dc629..b7666766f 100644 --- a/include/unk_8159F40.h +++ b/include/unk_8159F40.h @@ -2,5 +2,6 @@ #define GUARD_UNK_8159F40_H void sub_815A008(struct QuestLog *); +void sub_815A1F8(struct QuestLog *, struct MapObjectTemplate *); #endif //GUARD_UNK_8159F40_H -- cgit v1.2.3 From 1fd187fb57a8b588f68455366d81f4b839939cb5 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 15:06:35 -0400 Subject: through sub_81113E4 --- include/event_data.h | 1 + include/item.h | 2 ++ include/overworld.h | 5 +++++ 3 files changed, 8 insertions(+) (limited to 'include') diff --git a/include/event_data.h b/include/event_data.h index f28ed4f75..77bc41603 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -31,6 +31,7 @@ u8 FlagClear(u16 id); bool8 FlagGet(u16 id); u16 * sub_806E454(u16 id); bool32 sub_806E2BC(void); +void sub_806E6FC(void); extern u16 gSpecialVar_0x8000; extern u16 gSpecialVar_0x8001; diff --git a/include/item.h b/include/item.h index a136f03ec..199b3b65e 100644 --- a/include/item.h +++ b/include/item.h @@ -60,5 +60,7 @@ u8 ItemId_GetBattleUsage(u16 itemId); ItemUseFunc ItemId_GetBattleFunc(u16 itemId); u8 ItemId_GetSecondaryId(u16 itemId); u16 itemid_get_market_price(u16 itemId); +void sub_809A2DC(void); +void sub_809A2A4(void); #endif // ITEM_H diff --git a/include/overworld.h b/include/overworld.h index 7f7c92743..ab9e114ef 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -72,7 +72,12 @@ void IncrementGameStat(u8); u32 GetGameStat(u8); void sub_8056938(void); +void sub_8055D5C(struct WarpData *); +void sub_80572A8(void); +void sub_805726C(void); extern u8 gUnknown_2031DD8; +extern bool8 (* gUnknown_3005024)(void); + #endif //GUARD_ROM4_H -- cgit v1.2.3 From 3310b1445ac759a042776d8931cfe8d7dec46bd5 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 16:13:46 -0400 Subject: sub_8111438 --- include/pokemon_storage_system.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 9fcfdba96..04d739314 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -5,9 +5,10 @@ #define IN_BOX_COUNT 30 u8* GetBoxNamePtr(u8 boxNumber); -struct BoxPokemon *GetBoxedMonPtr(u8, u8); -void SetBoxMonNickFromAnyBox(u8, u8, u8 *); +struct BoxPokemon *GetBoxedMonPtr(u8 boxId, u8 monPosition); +void SetBoxMonNickFromAnyBox(u8 boxId, u8 monPosition, u8 * newNick); void CompactPartySlots(void); u32 GetBoxMonDataFromAnyBox(u8 boxId, u8 monPosition, u32 request); +void sub_808BCB4(u8 boxId, u8 monPosition); #endif // GUARD_POKEMON_STORAGE_SYSTEM_H -- cgit v1.2.3 From 913f2a9a1d88ca8fb86557cc265cd6ca7fac80e4 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 17:21:45 -0400 Subject: through sub_811175C --- include/global.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index f1efeb4e0..5cbdbb360 100644 --- a/include/global.h +++ b/include/global.h @@ -496,8 +496,8 @@ struct QuestLog /*0x0148*/ u8 unk_148[0x120]; /*0x02c8*/ u8 unk_268[0x200]; /*0x0468*/ struct QuestLogNPCData npcData[64]; - /*0x0568*/ u8 filler_568[0x100]; - /*0x0668*/ u8 end[0]; + /*0x0568*/ u16 unk_568[0x80]; + /*0x0668*/ u16 end[0]; }; #define MAP_OBJECTS_COUNT 16 -- cgit v1.2.3 From d0c63f0f5971e94dc3607feb9e8e7d995ebcacb4 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 11 Oct 2018 18:47:20 -0400 Subject: through sub_8111984 --- include/overworld.h | 1 + include/palette.h | 2 ++ include/save.h | 1 + 3 files changed, 4 insertions(+) (limited to 'include') diff --git a/include/overworld.h b/include/overworld.h index ab9e114ef..ab3554137 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -75,6 +75,7 @@ void sub_8056938(void); void sub_8055D5C(struct WarpData *); void sub_80572A8(void); void sub_805726C(void); +void sub_8057430(void); extern u8 gUnknown_2031DD8; diff --git a/include/palette.h b/include/palette.h index d3bcd2271..ffdc0496d 100644 --- a/include/palette.h +++ b/include/palette.h @@ -68,4 +68,6 @@ void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); void BlendPalettes(u32, u8, u16); void BlendPalettesUnfaded(u32, u8, u16); +extern struct PaletteFadeControl gUnknown_2037AB8; + #endif // GUARD_PALETTE_H diff --git a/include/save.h b/include/save.h index 3bd1ff8cf..80c2bf804 100644 --- a/include/save.h +++ b/include/save.h @@ -93,5 +93,6 @@ u16 sub_815355C(void); u32 TryCopySpecialSaveSection(u8 sector, u8* dst); u32 sub_8153634(u8 sector, u8* src); void sub_8153688(u8 taskId); +void sub_80DA4FC(u8); #endif // GUARD_SAVE_H -- cgit v1.2.3 From 9377dc23e2dcb8a293d8c0d1193c4d708045e08d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 12:18:17 -0400 Subject: through sub_8111F8C --- include/field_player_avatar.h | 2 ++ include/map_obj_80688E4.h | 6 ++++++ include/palette.h | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 include/map_obj_80688E4.h (limited to 'include') diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 25b7f2d71..4bbc197aa 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -11,6 +11,8 @@ u8 player_get_direction_upper_nybble(void); u8 player_get_x22(void); void sub_808D074(u8); +void sub_805C270(); +void sub_805C780(); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/map_obj_80688E4.h b/include/map_obj_80688E4.h new file mode 100644 index 000000000..b131a1a54 --- /dev/null +++ b/include/map_obj_80688E4.h @@ -0,0 +1,6 @@ +#ifndef GUARD_MAP_OBJ_80688E4_H +#define GUARD_MAP_OBJ_80688E4_H + +void player_bitmagic(void); + +#endif //GUARD_MAP_OBJ_80688E4_H diff --git a/include/palette.h b/include/palette.h index ffdc0496d..bdd1d1b93 100644 --- a/include/palette.h +++ b/include/palette.h @@ -68,6 +68,6 @@ void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); void BlendPalettes(u32, u8, u16); void BlendPalettesUnfaded(u32, u8, u16); -extern struct PaletteFadeControl gUnknown_2037AB8; +extern struct PaletteFadeControl gPaletteFade; #endif // GUARD_PALETTE_H -- cgit v1.2.3 From 58f91389a345f8dab7c0da2637f9063a823f495f Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 13:51:56 -0400 Subject: through sub_8112044 --- include/gba/gba.h | 1 + include/region_map.h | 1 + 2 files changed, 2 insertions(+) (limited to 'include') diff --git a/include/gba/gba.h b/include/gba/gba.h index 7e58efb9f..4b5f2de95 100644 --- a/include/gba/gba.h +++ b/include/gba/gba.h @@ -1,6 +1,7 @@ #ifndef GUARD_GBA_GBA_H #define GUARD_GBA_GBA_H +#include #include "defines.h" #include "io_reg.h" #include "types.h" diff --git a/include/region_map.h b/include/region_map.h index 91384d166..eb84a71b1 100644 --- a/include/region_map.h +++ b/include/region_map.h @@ -310,5 +310,6 @@ void CreateRegionMapPlayerIcon(u16 x, u16 y); void CreateRegionMapCursor(u16 tileTag, u16 paletteTag); u8 *GetMapName(u8 *, u16, u16); bool32 sub_8124668(u8 mapSecId); +void sub_80C4DF8(u8 *, u8); #endif //GUARD_REGION_MAP_H -- cgit v1.2.3 From 67cbc482982245c8cdd0466f59d73ab89d09b633 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 15:05:47 -0400 Subject: sub_81120AC --- include/map_name_popup.h | 1 + include/map_obj_lock.h | 1 + include/overworld.h | 2 ++ 3 files changed, 4 insertions(+) (limited to 'include') diff --git a/include/map_name_popup.h b/include/map_name_popup.h index 8a9043a3f..0cb0c49ad 100644 --- a/include/map_name_popup.h +++ b/include/map_name_popup.h @@ -7,5 +7,6 @@ // Exported ROM declarations void HideMapNamePopUpWindow(void); +void sub_8098110(u8); #endif //GUARD_MAP_NAME_POPUP_H diff --git a/include/map_obj_lock.h b/include/map_obj_lock.h index a10648f2f..cf1f714d7 100644 --- a/include/map_obj_lock.h +++ b/include/map_obj_lock.h @@ -7,5 +7,6 @@ bool8 sub_809847C(void); void LockSelectedMapObject(void); void sub_8098630(void); bool8 sub_8098734(void); +void sub_80696C0(void); #endif // GUARD_MAP_OBJ_LOCK_H diff --git a/include/overworld.h b/include/overworld.h index ab3554137..d497ddbe1 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -76,8 +76,10 @@ void sub_8055D5C(struct WarpData *); void sub_80572A8(void); void sub_805726C(void); void sub_8057430(void); +void sub_8055DC4(void); extern u8 gUnknown_2031DD8; +extern u8 gUnknown_2036E28; extern bool8 (* gUnknown_3005024)(void); -- cgit v1.2.3 From a4000de4bc94c21ee91295727c605b90ce2f7397 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 15:29:43 -0400 Subject: sub_81121D8 --- include/palette.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/palette.h b/include/palette.h index bdd1d1b93..90112947a 100644 --- a/include/palette.h +++ b/include/palette.h @@ -42,8 +42,8 @@ struct PaletteFadeControl extern struct PaletteFadeControl gPaletteFade; extern u32 gPlttBufferTransferPending; extern u8 gPaletteDecompressionBuffer[]; -extern u16 gPlttBufferUnfaded[]; -extern u16 gPlttBufferFaded[]; +extern u16 gPlttBufferUnfaded[PLTT_BUFFER_SIZE]; +extern u16 gPlttBufferFaded[PLTT_BUFFER_SIZE]; void LoadCompressedPalette(const void *, u16, u16); void LoadPalette(const void *, u16, u16); @@ -67,6 +67,7 @@ void BeginFastPaletteFade(u8); void BeginHardwarePaletteFade(u8, u8, u8, u8, u8); void BlendPalettes(u32, u8, u16); void BlendPalettesUnfaded(u32, u8, u16); +void sub_80716F8(const u16 *, u16 *, u16, u8); extern struct PaletteFadeControl gPaletteFade; -- cgit v1.2.3 From e143072f961cfffc5e8e2cc5b2a6059c27124808 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 18:00:42 -0400 Subject: through sub_8112364 --- include/field_weather.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/field_weather.h b/include/field_weather.h index e12107e70..3f7741f00 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -8,5 +8,6 @@ u8 GetSav1Weather(void); void sub_80AEDBC(void); void DoCurrentWeather(void); +void sub_807B0C4(u16 *, u16 *, u32); #endif // GUARD_WEATHER_H -- cgit v1.2.3 From ef81b5a2372911c1ab65f87c8a8633862d59d682 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 21:31:25 -0400 Subject: sub_8112450 --- include/menu_helpers.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/menu_helpers.h b/include/menu_helpers.h index f083a10e2..e88385f94 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -16,5 +16,6 @@ void sub_812225C(u16 *, u16 *, u8, u8); void sub_8122298(u16 *, u16 *, u8, u8, u8); void sub_8121F68(u8 taskId, const struct YesNoFuncTable *data); bool8 sub_81221AC(void); +bool8 sub_80BF708(void); #endif //GUARD_MENU_HELPERS_H -- cgit v1.2.3 From 65bce70419a44d62c5f8a6442db6d0ddfb7ced8c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 12 Oct 2018 21:56:35 -0400 Subject: sub_811246C --- include/field_map_obj.h | 2 ++ include/quest_log_8150454.h | 6 ++++++ 2 files changed, 8 insertions(+) create mode 100644 include/quest_log_8150454.h (limited to 'include') diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 0107fa10f..22d2d4a78 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -76,6 +76,8 @@ void MoveCoords(u8, s16 *, s16 *); bool8 FieldObjectIsSpecialAnimActive(struct MapObject *); u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *); u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z); +void sub_8063E28(struct MapObject *, struct Sprite *); +void sub_8063CA4(struct MapObject *, u8); // Exported data declarations diff --git a/include/quest_log_8150454.h b/include/quest_log_8150454.h new file mode 100644 index 000000000..05bebdd75 --- /dev/null +++ b/include/quest_log_8150454.h @@ -0,0 +1,6 @@ +#ifndef GUARD_QUEST_LOG_8150454_H +#define GUARD_QUEST_LOG_8150454_H + +void sub_8150454(void); + +#endif //GUARD_QUEST_LOG_8150454_H -- cgit v1.2.3 From 4190928a1109d425a5d87bbde8ec2321de52dd58 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 13 Oct 2018 09:28:50 -0400 Subject: through sub_81127F8 --- include/field_control_avatar.h | 6 ++++++ include/quest_log.h | 2 ++ 2 files changed, 8 insertions(+) create mode 100644 include/field_control_avatar.h (limited to 'include') diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h new file mode 100644 index 000000000..5b2184561 --- /dev/null +++ b/include/field_control_avatar.h @@ -0,0 +1,6 @@ +#ifndef GUARD_FIELD_CONTROL_AVATAR_H +#define GUARD_FIELD_CONTROL_AVATAR_H + +extern u32 gUnknown_3005078; + +#endif //GUARD_FIELD_CONTROL_AVATAR_H diff --git a/include/quest_log.h b/include/quest_log.h index dfdd4bf41..280a04423 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -2,5 +2,7 @@ #define GUARD_QUEST_LOG_H extern u8 gUnknown_3005E88; +extern u16 gUnknown_3005E8C; +extern struct UnkStruct_203AE98 * gUnknown_3005E94; #endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From ddb2440809e0f222175c43045fc0d450cf7c0938 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 13 Oct 2018 16:04:33 -0400 Subject: sub_8112940 --- include/quest_log.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'include') diff --git a/include/quest_log.h b/include/quest_log.h index 280a04423..f3fc04f41 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -1,8 +1,20 @@ #ifndef GUARD_QUEST_LOG_H #define GUARD_QUEST_LOG_H +struct UnkStruct_3005E90 +{ + u8 unk_0; + u8 unk_1_0:1; + u8 unk_1_1:1; + u8 unk_1_2:1; + u8 unk_1_3:1; + u8 unk_1_4:1; + u8 unk_2; +}; + extern u8 gUnknown_3005E88; extern u16 gUnknown_3005E8C; +extern struct UnkStruct_3005E90 gUnknown_3005E90; extern struct UnkStruct_203AE98 * gUnknown_3005E94; #endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From 1c90805498f7a03d415d74bfe3b380396b81e14f Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Oct 2018 10:07:39 -0500 Subject: through sub_8112D40 --- include/save.h | 1 - 1 file changed, 1 deletion(-) (limited to 'include') diff --git a/include/save.h b/include/save.h index 5a502e1fc..29524a7e2 100644 --- a/include/save.h +++ b/include/save.h @@ -119,7 +119,6 @@ u8 Save_LoadGameData(u8 a1); u32 TryCopySpecialSaveSection(u8 sector, u8* dst); u32 sub_8153634(u8 sector, u8* src); void sub_8153688(u8 taskId); -//void Save_LoadGameData(u8); u32 sub_80DA5E0(u8 sector, u8* src); void sub_80DA634(u8 taskId); -- cgit v1.2.3 From 6d31e24cba449b856f63c8279339bf1406013b83 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 15 Oct 2018 20:08:52 -0500 Subject: through sub_8113114 --- include/event_data.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/event_data.h b/include/event_data.h index 77bc41603..555887b6c 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -29,7 +29,7 @@ u8 *GetFlagPointer(u16 id); u8 FlagSet(u16 id); u8 FlagClear(u16 id); bool8 FlagGet(u16 id); -u16 * sub_806E454(u16 id); +u16 * GetVarPointer(u16 id); bool32 sub_806E2BC(void); void sub_806E6FC(void); -- cgit v1.2.3 From 7670f0527fcbd49269ed52a52b8fa3e30353ef64 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 16 Oct 2018 18:05:39 -0700 Subject: through sub_8113414 --- include/event_data.h | 1 + include/event_scripts.h | 3 +++ include/global.h | 4 +++- 3 files changed, 7 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/event_data.h b/include/event_data.h index 555887b6c..398e03264 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -53,5 +53,6 @@ extern u16 gSpecialVar_MonBoxPos; extern u16 gSpecialVar_0x8014; extern u16 gUnknown_20370D0; +extern u16 gUnknown_20370C0; #endif // GUARD_EVENT_DATA_H diff --git a/include/event_scripts.h b/include/event_scripts.h index 844f1052a..6b9025ec2 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -372,4 +372,7 @@ extern const u8 SecretBase_RedCave1_Text_274E75[]; extern const u8 SecretBase_RedCave1_Text_2751E1[]; extern const u8 SecretBase_RedCave1_Text_2754F6[]; extern const u8 SecretBase_RedCave1_Text_2758CC[]; + +extern const u8 gUnknown_84178D0[]; +extern const u8 gUnknown_84178DA[]; #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/global.h b/include/global.h index ee64e855a..0857d552a 100644 --- a/include/global.h +++ b/include/global.h @@ -237,7 +237,9 @@ struct SaveBlock2 /*0x098*/ struct Time localTimeOffset; /*0x0A0*/ struct Time lastBerryTreeUpdate; /*0x0A8*/ u32 field_A8; - /*0x0AC*/ u8 filler_AC[0xE74]; + /*0x0AC*/ u8 filler_AC[0x9ec]; + /*0xA98*/ u8 unk_A98[2][16]; + /*0xAB8*/ u8 filler_AB8[0x468]; /*0xF20*/ u32 encryptionKey; }; -- cgit v1.2.3 From 0ba52688584d8a35ec9c617b035c9dea71e2689f Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 16 Oct 2018 21:46:09 -0700 Subject: through sub_8113530 --- include/battle.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/battle.h b/include/battle.h index ee707f78b..d89db4656 100644 --- a/include/battle.h +++ b/include/battle.h @@ -977,4 +977,6 @@ extern u8 gBattlersCount; extern u16 gBattlerPartyIndexes[MAX_BATTLERS_COUNT]; extern s32 gBattleMoveDamage; +extern u8 gUnknown_2023E8A; + #endif // GUARD_BATTLE_H -- cgit v1.2.3 From 5819c8a97e7a24e8c86afda2f0bcf659d6fc4893 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 5 Nov 2018 17:45:21 -0500 Subject: sub_8113ABC --- include/global.h | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index b1604e1d6..50d979cba 100644 --- a/include/global.h +++ b/include/global.h @@ -503,6 +503,25 @@ struct QuestLogNPCData u32 movementType:8; }; +struct UnkStruct_203B024_Sub1 +{ + u8 unk_00; + u8 unk_01; + u8 filler_02[26]; +}; + +union UnkUnion_203B024 +{ + struct UnkStruct_203B024_Sub1 type1; + u8 filler[28]; +}; + +struct UnkStruct_203B024 +{ + u16 unk_00; + union UnkUnion_203B024 unk_04; +}; + struct QuestLog { /*0x0000*/ u8 unk_000; @@ -515,7 +534,7 @@ struct QuestLog /*0x0148*/ u8 unk_148[0x120]; /*0x02c8*/ u8 unk_268[0x200]; /*0x0468*/ struct QuestLogNPCData npcData[64]; - /*0x0568*/ u16 unk_568[0x80]; + /*0x0568*/ struct UnkStruct_203B024 unk_568[8]; /*0x0668*/ u16 end[0]; }; -- cgit v1.2.3 From ed3cc83264cf25acb4889508ffc6b878b1e1d095 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 5 Nov 2018 22:19:53 -0500 Subject: nonmatching sub_8113AE8 --- include/global.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/global.h b/include/global.h index 50d979cba..6a178feb6 100644 --- a/include/global.h +++ b/include/global.h @@ -519,6 +519,7 @@ union UnkUnion_203B024 struct UnkStruct_203B024 { u16 unk_00; + u16 unk_02; union UnkUnion_203B024 unk_04; }; -- cgit v1.2.3 From 50709682c7b1db4a1fcdfcf8080910bde2f969a1 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 8 Nov 2018 11:43:54 -0500 Subject: through sub_8113FBC --- include/constants/items.h | 7 +++++++ include/party_menu.h | 1 + 2 files changed, 8 insertions(+) (limited to 'include') diff --git a/include/constants/items.h b/include/constants/items.h index dd2b4c4ed..64fed0e4c 100644 --- a/include/constants/items.h +++ b/include/constants/items.h @@ -393,4 +393,11 @@ // Check if the item is one that can be used on a Pokemon. #define IS_POKEMON_ITEM(item) ((item) >= ITEM_POTION && (item) <= ITEM_0B2) +// POCKETS +#define POCKET_ITEMS 1 +#define POCKET_KEY_ITEMS 2 +#define POCKET_POKE_BALLS 3 +#define POCKET_TM_CASE 4 +#define POCKET_BERRY_POUCH 5 + #endif // GUARD_CONSTANTS_ITEMS_H diff --git a/include/party_menu.h b/include/party_menu.h index c787bafb1..75a1645c4 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -14,5 +14,6 @@ bool8 pokemon_has_move(struct Pokemon *, u16); void sub_81B58A8(void); void DoWallyTutorialBagMenu(void); u8 pokemon_ailments_get_primary(u32 status); +u16 ItemIdToBattleMoveId(u16 itemId); #endif // GUARD_PARTY_MENU_H -- cgit v1.2.3 From 6317f0180e191fb7c426eaf38b2dd631d9694146 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 9 Nov 2018 08:28:39 -0500 Subject: Start to refactor some of the data components --- include/global.h | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 6a178feb6..11c0e61e3 100644 --- a/include/global.h +++ b/include/global.h @@ -503,24 +503,29 @@ struct QuestLogNPCData u32 movementType:8; }; -struct UnkStruct_203B024_Sub1 +struct UnkStruct_203B024 { - u8 unk_00; - u8 unk_01; - u8 filler_02[26]; + u16 unk_00; + u16 unk_02; + u16 unk_04[14]; }; -union UnkUnion_203B024 +union QuestLogScene { - struct UnkStruct_203B024_Sub1 type1; - u8 filler[28]; + u8 allocation[32]; + u16 ident; }; -struct UnkStruct_203B024 +typedef union QuestLogScene QuestLogScene; + +union QuestLogMovement; +union QuestLogMovement { - u16 unk_00; - u16 unk_02; - union UnkUnion_203B024 unk_04; + u16 ident_raw; + struct { + u16 ident:12; + u16 flags:4; + } ident_struct; }; struct QuestLog @@ -535,7 +540,7 @@ struct QuestLog /*0x0148*/ u8 unk_148[0x120]; /*0x02c8*/ u8 unk_268[0x200]; /*0x0468*/ struct QuestLogNPCData npcData[64]; - /*0x0568*/ struct UnkStruct_203B024 unk_568[8]; + /*0x0568*/ u16 unk_568[128]; /*0x0668*/ u16 end[0]; }; -- cgit v1.2.3 From d6233c5b3b7539469e028838b1e548b6c39ce784 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 9 Nov 2018 12:33:20 -0500 Subject: Fix C/C++ errors generated by CLion IDE --- include/battle.h | 2 ++ include/battle_2.h | 2 ++ include/battle_ai_script_commands.h | 2 ++ include/battle_ai_switch_items.h | 2 ++ include/battle_anim.h | 6 ++++++ include/battle_controllers.h | 2 ++ include/battle_dome_cards.h | 2 ++ include/battle_interface.h | 1 + include/battle_message.h | 2 ++ include/battle_script_commands.h | 2 ++ include/battle_scripts.h | 2 ++ include/battle_setup.h | 2 ++ include/battle_string_ids.h | 2 ++ include/battle_tower.h | 2 ++ include/battle_transition.h | 2 ++ include/battle_util.h | 2 ++ include/battle_util2.h | 2 ++ include/berry.h | 2 ++ include/bg.h | 2 ++ include/blend_palette.h | 2 ++ include/calculate_base_damage.h | 2 ++ include/coins.h | 2 ++ include/config.h | 2 ++ include/data2.h | 2 ++ include/daycare.h | 2 ++ include/decompress.h | 2 ++ include/diploma.h | 2 ++ include/dma3.h | 2 ++ include/easy_chat.h | 2 ++ include/egg_hatch.h | 2 ++ include/event_data.h | 2 ++ include/event_scripts.h | 2 ++ include/evolution_graphics.h | 2 ++ include/evolution_scene.h | 2 ++ include/field_camera.h | 2 ++ include/field_control_avatar.h | 2 ++ include/field_door.h | 2 ++ include/field_effect.h | 2 ++ include/field_effect_helpers.h | 2 ++ include/field_fadetransition.h | 2 ++ include/field_ground_effect.h | 2 ++ include/field_map_obj.h | 2 ++ include/field_map_obj_helpers.h | 2 ++ include/field_message_box.h | 2 ++ include/field_player_avatar.h | 2 ++ include/field_poison.h | 2 ++ include/field_screen.h | 2 ++ include/field_screen_effect.h | 2 ++ include/field_specials.h | 2 ++ include/field_tasks.h | 2 ++ include/field_weather.h | 2 ++ include/fieldmap.h | 2 ++ include/fldeff_80F9BCC.h | 2 ++ include/global.berry.h | 2 ++ include/global.fieldmap.h | 2 ++ include/global.h | 29 +++++++++++++++++++++++------ include/gpu_regs.h | 2 ++ include/graphics.h | 2 ++ include/hall_of_fame.h | 2 ++ include/heal_location.h | 2 ++ include/help_system.h | 2 ++ include/international_string_util.h | 2 ++ include/item_icon.h | 2 ++ include/item_menu.h | 2 ++ include/item_menu_icons.h | 2 ++ include/link.h | 2 ++ include/list_menu.h | 2 ++ include/load_save.h | 2 ++ include/m4a.h | 2 ++ include/mail.h | 2 ++ include/mail_data.h | 2 ++ include/main.h | 2 ++ include/malloc.h | 2 ++ include/map_name_popup.h | 2 ++ include/map_obj_80688E4.h | 2 ++ include/map_obj_8097404.h | 2 ++ include/map_obj_lock.h | 2 ++ include/menews_jisan.h | 2 ++ include/menu.h | 2 ++ include/menu_helpers.h | 2 ++ include/menu_indicators.h | 2 ++ include/metatile_behavior.h | 2 ++ include/mevent.h | 2 ++ include/money.h | 2 ++ include/multiboot.h | 2 ++ include/mystery_event_script.h | 2 ++ include/naming_screen.h | 2 ++ include/new_game.h | 2 ++ include/new_menu_helpers.h | 2 ++ include/overworld.h | 2 ++ include/palette.h | 2 ++ include/party_menu.h | 2 ++ include/play_time.h | 2 ++ include/player_pc.h | 2 ++ include/pokeball.h | 2 ++ include/pokedex.h | 2 ++ include/pokemon.h | 8 ++++++++ include/pokemon_3.h | 2 ++ include/pokemon_icon.h | 2 ++ include/pokemon_item_effects.h | 2 +- include/pokemon_size_record.h | 2 ++ include/pokemon_storage_system.h | 2 ++ include/pokenav.h | 2 ++ include/quest_log.h | 2 ++ include/quest_log_8150454.h | 2 ++ include/random.h | 2 ++ include/region_map.h | 2 ++ include/reshow_battle_screen.h | 2 ++ include/roamer.h | 2 ++ include/rom6.h | 2 ++ include/rom_818CFC8.h | 2 ++ include/rom_81BE66C.h | 2 ++ include/safari_zone.h | 2 ++ include/save.h | 2 ++ include/save_location.h | 2 ++ include/script.h | 2 ++ include/script_menu.h | 2 ++ include/script_movement.h | 2 ++ include/script_pokemon_80F8.h | 2 ++ include/script_pokemon_81B9.h | 2 ++ include/shop.h | 2 ++ include/slot_machine.h | 2 ++ include/songs.h | 2 ++ include/sound.h | 2 ++ include/sprite.h | 2 ++ include/start_menu.h | 2 ++ include/string_util.h | 2 ++ include/strings.h | 2 ++ include/task.h | 2 ++ include/text.h | 2 ++ include/text_window.h | 2 ++ include/tilesets.h | 2 ++ include/trainer_classes.h | 2 ++ include/trainer_front_sprites.h | 6 ++++-- include/trainer_ids.h | 2 ++ include/trainer_see.h | 2 ++ include/trig.h | 2 ++ include/unk_8159F40.h | 2 ++ include/unk_text_util.h | 2 ++ include/unknown_task.h | 2 ++ include/util.h | 2 ++ include/wild_encounter.h | 2 ++ include/window.h | 2 ++ 143 files changed, 317 insertions(+), 9 deletions(-) (limited to 'include') diff --git a/include/battle.h b/include/battle.h index d89db4656..e2f7ddb44 100644 --- a/include/battle.h +++ b/include/battle.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_H #define GUARD_BATTLE_H +#include "global.h" + // should they be included here or included individually by every file? #include "constants/battle.h" #include "battle_util.h" diff --git a/include/battle_2.h b/include/battle_2.h index ee61efd9b..ca8b78805 100644 --- a/include/battle_2.h +++ b/include/battle_2.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_2_H #define GUARD_BATTLE_2_H +#include "global.h" + void CB2_InitBattle(void); void BattleMainCB2(void); void CB2_QuitRecordedBattle(void); diff --git a/include/battle_ai_script_commands.h b/include/battle_ai_script_commands.h index 5fb422b41..5f8c4419b 100644 --- a/include/battle_ai_script_commands.h +++ b/include/battle_ai_script_commands.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_AI_SCRIPT_COMMANDS_H #define GUARD_BATTLE_AI_SCRIPT_COMMANDS_H +#include "global.h" + void BattleAI_HandleItemUseBeforeAISetup(u8 defaultScoreMoves); void BattleAI_SetupAIData(u8 defaultScoreMoves); u8 BattleAI_ChooseMoveOrAction(void); diff --git a/include/battle_ai_switch_items.h b/include/battle_ai_switch_items.h index 0a230e7f6..d0461319d 100644 --- a/include/battle_ai_switch_items.h +++ b/include/battle_ai_switch_items.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_AI_SWITCH_ITEMS_H #define GUARD_BATTLE_AI_SWITCH_ITEMS_H +#include "global.h" + enum { AI_ITEM_FULL_RESTORE = 1, diff --git a/include/battle_anim.h b/include/battle_anim.h index 9fb7ccd53..4ea3bdead 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -1,6 +1,12 @@ #ifndef GUARD_BATTLE_ANIM_H #define GUARD_BATTLE_ANIM_H +#include "global.h" + +#ifndef BATTLE_BANKS_COUNT +#define BATTLE_BANKS_COUNT 4 +#endif // BATTLE_BANKS_COUNT + enum { ANIM_BANK_ATTACKER, diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 66984b453..df00c3526 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_CONTROLLERS_H #define GUARD_BATTLE_CONTROLLERS_H +#include "global.h" + enum { REQUEST_ALL_BATTLE, diff --git a/include/battle_dome_cards.h b/include/battle_dome_cards.h index a0696d156..48d165e9c 100644 --- a/include/battle_dome_cards.h +++ b/include/battle_dome_cards.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_DOME_CARDS_H #define GUARD_BATTLE_DOME_CARDS_H +#include "global.h" + bool16 dp13_810BB8C(void); u16 sub_818D3E4(u16 species, u32 otId, u32 personality, u8 flags, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); u16 sub_818D7D8(u16 species, u32 otId, u32 personality, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 paletteTag); diff --git a/include/battle_interface.h b/include/battle_interface.h index b2d3b1b97..27f93a3c2 100644 --- a/include/battle_interface.h +++ b/include/battle_interface.h @@ -1,6 +1,7 @@ #ifndef GUARD_BATTLE_INTERFACE_H #define GUARD_BATTLE_INTERFACE_H +#include "global.h" #include "battle_controllers.h" enum diff --git a/include/battle_message.h b/include/battle_message.h index 30ddca469..27ae88b01 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_MESSAGE_H #define GUARD_BATTLE_MESSAGE_H +#include "global.h" + // for 0xFD #define B_TXT_BUFF1 0x0 diff --git a/include/battle_script_commands.h b/include/battle_script_commands.h index 80fabaa64..d4cb75e91 100644 --- a/include/battle_script_commands.h +++ b/include/battle_script_commands.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_SCRIPT_COMMANDS_H #define GUARD_BATTLE_SCRIPT_COMMANDS_H +#include "global.h" + #define NO_ACC_CALC 0xFFFE #define NO_ACC_CALC_CHECK_LOCK_ON 0xFFFF #define ACC_CURR_MOVE 0 diff --git a/include/battle_scripts.h b/include/battle_scripts.h index 2e31a37c5..69edacae6 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_SCRIPTS_H #define GUARD_BATTLE_SCRIPTS_H +#include "global.h" + extern const u8 BattleScript_HitFromCritCalc[]; extern const u8 BattleScript_MoveEnd[]; extern const u8 BattleScript_MakeMoveMissed[]; diff --git a/include/battle_setup.h b/include/battle_setup.h index 0168022cc..b4c0201a3 100644 --- a/include/battle_setup.h +++ b/include/battle_setup.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_SETUP_H #define GUARD_BATTLE_SETUP_H +#include "global.h" + void BattleSetup_StartScriptedWildBattle(void); u8 BattleSetup_GetTerrainId(void); u8 *BattleSetup_ConfigureTrainerBattle(const u8 *data); diff --git a/include/battle_string_ids.h b/include/battle_string_ids.h index f242284b0..a030a7b48 100644 --- a/include/battle_string_ids.h +++ b/include/battle_string_ids.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_STRING_IDS_H #define GUARD_BATTLE_STRING_IDS_H +#include "global.h" + #define BATTLESTRINGS_COUNT 369 #define BATTLESTRINGS_ID_ADDER 12 // all battlestrings have its ID + 12, because first 5 are reserved diff --git a/include/battle_tower.h b/include/battle_tower.h index 25b439c1b..120ab9a99 100644 --- a/include/battle_tower.h +++ b/include/battle_tower.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_TOWER_H #define GUARD_BATTLE_TOWER_H +#include "global.h" + u16 sub_8164FCC(u8, u8); #endif //GUARD_BATTLE_TOWER_H diff --git a/include/battle_transition.h b/include/battle_transition.h index 1603f5c93..eba76fd61 100644 --- a/include/battle_transition.h +++ b/include/battle_transition.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_TRANSITION_H #define GUARD_BATTLE_TRANSITION_H +#include "global.h" + void sub_8149DFC(u8 a1); #endif // GUARD_BATTLE_TRANSITION_H diff --git a/include/battle_util.h b/include/battle_util.h index 25e26719b..ed070720d 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_UTIL_H #define GUARD_BATTLE_UTIL_H +#include "global.h" + #define MOVE_LIMITATION_ZEROMOVE (1 << 0) #define MOVE_LIMITATION_PP (1 << 1) #define MOVE_LIMITATION_DISABLED (1 << 2) diff --git a/include/battle_util2.h b/include/battle_util2.h index 3954e42dc..3b8a6f817 100644 --- a/include/battle_util2.h +++ b/include/battle_util2.h @@ -1,6 +1,8 @@ #ifndef GUARD_BATTLE_UTIL2_H #define GUARD_BATTLE_UTIL2_H +#include "global.h" + void AllocateBattleResources(void); void FreeBattleResources(void); void AdjustFriendshipOnBattleFaint(u8 bank); diff --git a/include/berry.h b/include/berry.h index 425a664c9..40715868b 100644 --- a/include/berry.h +++ b/include/berry.h @@ -1,6 +1,8 @@ #ifndef GUARD_BERRY_H #define GUARD_BERRY_H +#include "global.h" + enum { BERRY_FIRMNESS_UNKNOWN, diff --git a/include/bg.h b/include/bg.h index 0700e2d23..55927a5a4 100644 --- a/include/bg.h +++ b/include/bg.h @@ -1,6 +1,8 @@ #ifndef GUARD_BG_H #define GUARD_BG_H +#include "global.h" + struct BGCntrlBitfield // for the I/O registers { volatile u16 priority:2; diff --git a/include/blend_palette.h b/include/blend_palette.h index 1db3f4eb0..4ece15d69 100644 --- a/include/blend_palette.h +++ b/include/blend_palette.h @@ -1,6 +1,8 @@ #ifndef GUARD_BLEND_PALETTE_H #define GUARD_BLEND_PALETTE_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/calculate_base_damage.h b/include/calculate_base_damage.h index e9146c188..8079031e8 100644 --- a/include/calculate_base_damage.h +++ b/include/calculate_base_damage.h @@ -1,6 +1,8 @@ #ifndef GUARD_CALCULATE_BASE_DAMAGE_H #define GUARD_CALCULATE_BASE_DAMAGE_H +#include "global.h" + s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *defender, u32 move, u16 sideStatus, u16 powerOverride, u8 typeOverride, u8 bankAtk, u8 bankDef); #endif // GUARD_CALCULATE_BASE_DAMAGE_H diff --git a/include/coins.h b/include/coins.h index 996519605..83ad7d611 100644 --- a/include/coins.h +++ b/include/coins.h @@ -1,6 +1,8 @@ #ifndef GUARD_COINS_H #define GUARD_COINS_H +#include "global.h" + void PrintCoinsString(u32 coinAmount); void ShowCoinsWindow(u32 coinAmount, u8 x, u8 y); void HideCoinsWindow(void); diff --git a/include/config.h b/include/config.h index 756fd1ebd..f094c95bd 100644 --- a/include/config.h +++ b/include/config.h @@ -1,6 +1,8 @@ #ifndef GUARD_CONFIG_H #define GUARD_CONFIG_H +#include "global.h" + // In the Generation 3 games, Asserts were used in various debug builds. // Ruby/Sapphire and Emerald do not have these asserts while Fire Red // still has them in the ROM. This is because the developers forgot diff --git a/include/data2.h b/include/data2.h index be0f33ab8..e383b1c9a 100644 --- a/include/data2.h +++ b/include/data2.h @@ -1,6 +1,8 @@ #ifndef GUARD_DATA2_H #define GUARD_DATA2_H +#include "global.h" + struct MonCoords { // This would use a bitfield, but some function diff --git a/include/daycare.h b/include/daycare.h index 7db44e024..6544ba21a 100644 --- a/include/daycare.h +++ b/include/daycare.h @@ -1,6 +1,8 @@ #ifndef GUARD_DAYCARE_H #define GUARD_DAYCARE_H +#include "global.h" + #define EGG_HATCH_LEVEL 5 u8 *GetMonNick(struct Pokemon *mon, u8 *dest); diff --git a/include/decompress.h b/include/decompress.h index 34a678cda..5f3863dc7 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -1,6 +1,8 @@ #ifndef GUARD_DECOMPRESS_H #define GUARD_DECOMPRESS_H +#include "global.h" + #include "sprite.h" extern u8 gDecompressionBuffer[0x4000]; diff --git a/include/diploma.h b/include/diploma.h index 8d730fa05..8477e70fc 100644 --- a/include/diploma.h +++ b/include/diploma.h @@ -1,6 +1,8 @@ #ifndef GUARD_DIPLOMA_H #define GUARD_DIPLOMA_H +#include "global.h" + void CB2_ShowDiploma(void); #endif // GUARD_DIPLOMA_H diff --git a/include/dma3.h b/include/dma3.h index 265b47824..fcd7bae43 100644 --- a/include/dma3.h +++ b/include/dma3.h @@ -1,6 +1,8 @@ #ifndef GUARD_DMA3_H #define GUARD_DMA3_H +#include "global.h" + void ClearDma3Requests(void); void ProcessDma3Requests(void); int RequestDma3Copy(const void *src, void *dest, u16 size, u8 mode); diff --git a/include/easy_chat.h b/include/easy_chat.h index f0ac51c22..2b5664420 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -1,6 +1,8 @@ #ifndef GUARD_EASYCHAT_H #define GUARD_EASYCHAT_H +#include "global.h" + // Taken from Pokeruby, check if it's correct enum { diff --git a/include/egg_hatch.h b/include/egg_hatch.h index 862d33947..9945284e1 100644 --- a/include/egg_hatch.h +++ b/include/egg_hatch.h @@ -1,6 +1,8 @@ #ifndef GUARD_EGG_HATCH_H #define GUARD_EGG_HATCH_H +#include "global.h" + void ScriptHatchMon(void); bool8 sub_8071614(void); void EggHatch(void); diff --git a/include/event_data.h b/include/event_data.h index 398e03264..2e340f073 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -1,6 +1,8 @@ #ifndef GUARD_EVENT_DATA_H #define GUARD_EVENT_DATA_H +#include "global.h" + #include "constants/flags.h" #include "constants/vars.h" diff --git a/include/event_scripts.h b/include/event_scripts.h index 6b9025ec2..900755108 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -5,6 +5,8 @@ #ifndef GUARD_EVENT_SCRIPTS_H #define GUARD_EVENT_SCRIPTS_H +#include "global.h" + extern const u8 gUnknown_0823B4E8[]; extern const u8 gUnknown_0823B5E9[]; extern const u8 EventScript_275BB7[]; diff --git a/include/evolution_graphics.h b/include/evolution_graphics.h index f52105815..21f133872 100644 --- a/include/evolution_graphics.h +++ b/include/evolution_graphics.h @@ -1,6 +1,8 @@ #ifndef GUARD_EVOLUTION_GRAPHICS_H #define GUARD_EVOLUTION_GRAPHICS_H +#include "global.h" + void LoadEvoSparkleSpriteAndPal(void); u8 LaunchTask_PreEvoSparklesSet1(u16 arg0); diff --git a/include/evolution_scene.h b/include/evolution_scene.h index 5f8c534b9..1d87ceb76 100644 --- a/include/evolution_scene.h +++ b/include/evolution_scene.h @@ -1,6 +1,8 @@ #ifndef GUARD_EVOLUTION_SCENE_H #define GUARD_EVOLUTION_SCENE_H +#include "global.h" + void BeginEvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID); void EvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, bool8 canStopEvo, u8 partyID); void TradeEvolutionScene(struct Pokemon* mon, u16 speciesToEvolve, u8 preEvoSpriteID, u8 partyID); diff --git a/include/field_camera.h b/include/field_camera.h index a8559e1c2..53d734081 100644 --- a/include/field_camera.h +++ b/include/field_camera.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_CAMERA_H #define GUARD_FIELD_CAMERA_H +#include "global.h" + // Exported type declarations struct CameraObject diff --git a/include/field_control_avatar.h b/include/field_control_avatar.h index 5b2184561..0a33138b3 100644 --- a/include/field_control_avatar.h +++ b/include/field_control_avatar.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_CONTROL_AVATAR_H #define GUARD_FIELD_CONTROL_AVATAR_H +#include "global.h" + extern u32 gUnknown_3005078; #endif //GUARD_FIELD_CONTROL_AVATAR_H diff --git a/include/field_door.h b/include/field_door.h index f1dfc551d..0059cbe1a 100644 --- a/include/field_door.h +++ b/include/field_door.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELDDOOR_H #define GUARD_FIELDDOOR_H +#include "global.h" + void FieldSetDoorOpened(u32, u32); void FieldSetDoorClosed(u32, u32); s8 FieldAnimateDoorClose(u32, u32); diff --git a/include/field_effect.h b/include/field_effect.h index 629ae07c7..8d96e4929 100644 --- a/include/field_effect.h +++ b/include/field_effect.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_EFFECTS_H #define GUARD_FIELD_EFFECTS_H +#include "global.h" + enum FieldEffectScriptIdx { FLDEFF_EXCLAMATION_MARK_ICON_1, diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index e80daf3bd..33c4d5bbc 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -5,6 +5,8 @@ #ifndef GUARD_FIELD_EFFECT_HELPERS_H #define GUARD_FIELD_EFFECT_HELPERS_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/field_fadetransition.h b/include/field_fadetransition.h index 2cd01601e..051865210 100644 --- a/include/field_fadetransition.h +++ b/include/field_fadetransition.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_FADETRANSITION_H #define GUARD_FIELD_FADETRANSITION_H +#include "global.h" + void sub_80AF734(void); void sp13E_warp_to_last_warp(void); void sub_80AF7D0(void); diff --git a/include/field_ground_effect.h b/include/field_ground_effect.h index 63b67ceaf..49448db6a 100644 --- a/include/field_ground_effect.h +++ b/include/field_ground_effect.h @@ -5,6 +5,8 @@ #ifndef GUARD_FIELD_GROUND_EFFECT_H #define GUARD_FIELD_GROUND_EFFECT_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 22d2d4a78..ebe68ea01 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_MAP_OBJ_H #define GUARD_FIELD_MAP_OBJ_H +#include "global.h" + #define NUM_OBJECT_GRAPHICS_INFO 239 #define SPRITE_VAR 240 diff --git a/include/field_map_obj_helpers.h b/include/field_map_obj_helpers.h index ba797ec98..2d3f69d95 100644 --- a/include/field_map_obj_helpers.h +++ b/include/field_map_obj_helpers.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELDMAPOBJHELP_H #define GUARD_FIELDMAPOBJHELP_H +#include "global.h" + void UnfreezeMapObjects(void); void sub_8097B78(u8, u8); diff --git a/include/field_message_box.h b/include/field_message_box.h index 432c9078b..5777921b7 100644 --- a/include/field_message_box.h +++ b/include/field_message_box.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_MESSAGE_BOX_H #define GUARD_FIELD_MESSAGE_BOX_H +#include "global.h" + bool8 ShowFieldMessage(const u8 *message); bool8 sub_8098238(const u8 *message); bool8 ShowFieldAutoScrollMessage(const u8 *message); diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 4bbc197aa..9b7fcde38 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_PLAYER_AVATAR_H #define GUARD_FIELD_PLAYER_AVATAR_H +#include "global.h" + void ClearPlayerAvatarInfo(void); void SetPlayerAvatarExtraStateTransition(u8, u8); u8 GetPlayerAvatarGenderByGraphicsId(u8); diff --git a/include/field_poison.h b/include/field_poison.h index d1a4c823b..fcfb71cf5 100644 --- a/include/field_poison.h +++ b/include/field_poison.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_POISON_H #define GUARD_FIELD_POISON_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/field_screen.h b/include/field_screen.h index cfc0d081f..a11aa0041 100644 --- a/include/field_screen.h +++ b/include/field_screen.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_SCREEN_H #define GUARD_FIELD_SCREEN_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/field_screen_effect.h b/include/field_screen_effect.h index ef81c2f9e..add61d57c 100644 --- a/include/field_screen_effect.h +++ b/include/field_screen_effect.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_SCREEN_EFFECT_H #define GUARD_FIELD_SCREEN_EFFECT_H +#include "global.h" + void sub_80AF79C(void); void sub_80B009C(u8); void sub_80B0244(void); diff --git a/include/field_specials.h b/include/field_specials.h index 1f8fbf147..fbe004355 100644 --- a/include/field_specials.h +++ b/include/field_specials.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_SPECIALS_H #define GUARD_FIELD_SPECIALS_H +#include "global.h" + u8 GetLeadMonIndex(void); #endif // GUARD_FIELD_SPECIALS_H diff --git a/include/field_tasks.h b/include/field_tasks.h index 2a2a772d8..aba2a9eee 100644 --- a/include/field_tasks.h +++ b/include/field_tasks.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELD_TASKS_H #define GUARD_FIELD_TASKS_H +#include "global.h" + void ActivatePerStepCallback(u8); #endif // GUARD_FIELD_TASKS_H diff --git a/include/field_weather.h b/include/field_weather.h index 3f7741f00..b896259e9 100644 --- a/include/field_weather.h +++ b/include/field_weather.h @@ -1,6 +1,8 @@ #ifndef GUARD_WEATHER_H #define GUARD_WEATHER_H +#include "global.h" + void fade_screen(u8, s8); void SetSav1Weather(u32); diff --git a/include/fieldmap.h b/include/fieldmap.h index 06cb7cc77..c5abdb2e1 100644 --- a/include/fieldmap.h +++ b/include/fieldmap.h @@ -1,6 +1,8 @@ #ifndef GUARD_FIELDMAP_H #define GUARD_FIELDMAP_H +#include "global.h" + extern struct MapCoords { int width; int height; diff --git a/include/fldeff_80F9BCC.h b/include/fldeff_80F9BCC.h index d57665c68..3960c6c65 100644 --- a/include/fldeff_80F9BCC.h +++ b/include/fldeff_80F9BCC.h @@ -1,6 +1,8 @@ #ifndef GUARD_FLDEFF_80F9BCC_H #define GUARD_FLDEFF_80F9BCC_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/global.berry.h b/include/global.berry.h index 5c8a43a02..f9e27b186 100644 --- a/include/global.berry.h +++ b/include/global.berry.h @@ -1,6 +1,8 @@ #ifndef GUARD_GLOBAL_BERRY_H #define GUARD_GLOBAL_BERRY_H +#include "global.h" + #define BERRY_NAME_COUNT 7 #define BERRY_ITEM_EFFECT_COUNT 18 diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index ed5054b7d..98077d8d4 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -1,6 +1,8 @@ #ifndef GUARD_GLOBAL_FIELDMAP_H #define GUARD_GLOBAL_FIELDMAP_H +#include "global.h" + #define NUM_FIELD_OBJECTS 16 enum diff --git a/include/global.h b/include/global.h index 11c0e61e3..9db1443c2 100644 --- a/include/global.h +++ b/include/global.h @@ -3,6 +3,7 @@ #include "config.h" #include "gba/gba.h" +#include // Prevent cross-jump optimization. #define BLOCK_CROSS_JUMP asm(""); @@ -12,10 +13,18 @@ #define asm_unified(x) asm(".syntax unified\n" x "\n.syntax divided") #if defined (__APPLE__) || defined (__CYGWIN__) -void *memset(void *, int, size_t); -void *memcpy(void *, const void *, size_t); -int strcmp(const char *s1, const char *s2); -char* strcpy(char *dst0, const char *src0); +// Get the IDE to stfu + +// We define it this way to fool preproc. +#define INCBIN(x) {0} +#define INCBIN_U8 INCBIN +#define INCBIN_U16 INCBIN +#define INCBIN_U32 INCBIN +#define INCBIN_S8 INCBIN +#define INCBIN_S16 INCBIN +#define INCBIN_S32 INCBIN +#define _(x) (x) +#define __(x) (x) #endif // __APPLE__ #define ARRAY_COUNT(array) (sizeof(array) / sizeof((array)[0])) @@ -518,7 +527,12 @@ union QuestLogScene typedef union QuestLogScene QuestLogScene; +// This name is a complete guess and may change. + +// Declare here so that it can be recursively referenced. union QuestLogMovement; + +// Define here union QuestLogMovement { u16 ident_raw; @@ -537,8 +551,11 @@ struct QuestLog /*0x0004*/ s16 unk_004; /*0x0006*/ s16 unk_006; /*0x0008*/ u8 filler_008[0x140]; - /*0x0148*/ u8 unk_148[0x120]; - /*0x02c8*/ u8 unk_268[0x200]; + + // These arrays hold the game state for + // playing back the quest log + /*0x0148*/ u8 flags[0x120]; + /*0x02c8*/ u16 vars[0x100]; /*0x0468*/ struct QuestLogNPCData npcData[64]; /*0x0568*/ u16 unk_568[128]; /*0x0668*/ u16 end[0]; diff --git a/include/gpu_regs.h b/include/gpu_regs.h index 89e0cb64b..3930f6809 100644 --- a/include/gpu_regs.h +++ b/include/gpu_regs.h @@ -1,6 +1,8 @@ #ifndef GUARD_GPU_REGS_H #define GUARD_GPU_REGS_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/graphics.h b/include/graphics.h index aad5c0190..9888d2f7c 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -5,6 +5,8 @@ #ifndef GUARD_GRAPHICS_H #define GUARD_GRAPHICS_H +#include "global.h" + extern const u8 gInterfaceGfx_PokeBall[]; extern const u8 gInterfacePal_PokeBall[]; extern const u8 gInterfaceGfx_GreatBall[]; diff --git a/include/hall_of_fame.h b/include/hall_of_fame.h index d35ecf268..2dc9fae41 100644 --- a/include/hall_of_fame.h +++ b/include/hall_of_fame.h @@ -1,6 +1,8 @@ #ifndef GUARD_HALL_OF_FAME_H #define GUARD_HALL_OF_FAME_H +#include "global.h" + void CB2_DoHallOfFameScreen(void); void CB2_DoHallOfFameScreenDontSaveData(void); void CB2_DoHallOfFamePC(void); diff --git a/include/heal_location.h b/include/heal_location.h index 1f966f1ae..0143b8158 100644 --- a/include/heal_location.h +++ b/include/heal_location.h @@ -1,6 +1,8 @@ #ifndef GUARD_HEAL_LOCATION_H #define GUARD_HEAL_LOCATION_H +#include "global.h" + // Exported type declarations struct UnkStruct_0859F534 { diff --git a/include/help_system.h b/include/help_system.h index 3a4c52f2e..3f6a741c6 100644 --- a/include/help_system.h +++ b/include/help_system.h @@ -1,6 +1,8 @@ #ifndef GUARD_HELP_SYSTEM_H #define GUARD_HELP_SYSTEM_H +#include "global.h" + extern bool8 gUnknown_3005ECC; #endif //GUARD_HELP_SYSTEM_H diff --git a/include/international_string_util.h b/include/international_string_util.h index e7876162e..2b922676d 100644 --- a/include/international_string_util.h +++ b/include/international_string_util.h @@ -1,6 +1,8 @@ #ifndef GUARD_INTERNATIONAL_STRING_UTIL_H #define GUARD_INTERNATIONAL_STRING_UTIL_H +#include "global.h" + #include "menu.h" void sub_81DB52C(const u8 *src); diff --git a/include/item_icon.h b/include/item_icon.h index a43b72f39..75e2475f3 100644 --- a/include/item_icon.h +++ b/include/item_icon.h @@ -5,6 +5,8 @@ #ifndef GUARD_ITEM_ICON_H #define GUARD_ITEM_ICON_H +#include "global.h" + extern EWRAM_DATA void *gUnknown_0203CEBC; extern EWRAM_DATA void *gUnknown_0203CEC0; diff --git a/include/item_menu.h b/include/item_menu.h index 85655e9d5..24f700918 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_item_menu_H #define GUARD_item_menu_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/item_menu_icons.h b/include/item_menu_icons.h index 553e7c262..7fcd6d5e1 100644 --- a/include/item_menu_icons.h +++ b/include/item_menu_icons.h @@ -1,6 +1,8 @@ #ifndef GUARD_ITEM_MENU_ICONS #define GUARD_ITEM_MENU_ICONS +#include "global.h" + u8 sub_80D511C(u8 a0, u8 a1, u8 a2, u8 a3); #endif // GUARD_ITEM_MENU_ICONS diff --git a/include/link.h b/include/link.h index 352386523..239a59b71 100644 --- a/include/link.h +++ b/include/link.h @@ -1,6 +1,8 @@ #ifndef GUARD_LINK_H #define GUARD_LINK_H +#include "global.h" + #define MAX_LINK_PLAYERS 4 #define MAX_RFU_PLAYERS 5 #define CMD_LENGTH 8 diff --git a/include/list_menu.h b/include/list_menu.h index 0249b06af..f547801bd 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_LIST_MENU_H #define GUARD_LIST_MENU_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/load_save.h b/include/load_save.h index b3e9fe49c..064e6dff2 100644 --- a/include/load_save.h +++ b/include/load_save.h @@ -1,6 +1,8 @@ #ifndef GUARD_LOAD_SAVE_H #define GUARD_LOAD_SAVE_H +#include "global.h" + extern bool32 gFlashMemoryPresent; void ClearSav2(void); diff --git a/include/m4a.h b/include/m4a.h index 8c3380dd8..24b454104 100644 --- a/include/m4a.h +++ b/include/m4a.h @@ -1,6 +1,8 @@ #ifndef GUARD_M4A_H #define GUARD_M4A_H +#include "global.h" + #include "gba/m4a_internal.h" void m4aSoundVSync(void); diff --git a/include/mail.h b/include/mail.h index 0a70237bf..5d6ad559b 100644 --- a/include/mail.h +++ b/include/mail.h @@ -1,6 +1,8 @@ #ifndef GUARD_MAIL_H #define GUARD_MAIL_H +#include "global.h" + #define IS_ITEM_MAIL(itemId)((itemId == ITEM_ORANGE_MAIL \ || itemId == ITEM_HARBOR_MAIL \ || itemId == ITEM_GLITTER_MAIL \ diff --git a/include/mail_data.h b/include/mail_data.h index bf6540bad..bbe695203 100644 --- a/include/mail_data.h +++ b/include/mail_data.h @@ -1,6 +1,8 @@ #ifndef GUARD_MAIL_DATA_H #define GUARD_MAIL_DATA_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/main.h b/include/main.h index 82f85f881..84d356692 100644 --- a/include/main.h +++ b/include/main.h @@ -3,6 +3,8 @@ #include "global.h" +#include "global.h" + typedef void (*MainCallback)(void); typedef void (*IntrCallback)(void); typedef void (*IntrFunc)(void); diff --git a/include/malloc.h b/include/malloc.h index 6efa8fbef..ae66aecb1 100644 --- a/include/malloc.h +++ b/include/malloc.h @@ -1,6 +1,8 @@ #ifndef GUARD_MALLOC_H #define GUARD_MALLOC_H +#include "global.h" + #define HEAP_SIZE 0x1C000 #define malloc Alloc #define calloc(ct, sz) AllocZeroed((ct) * (sz)) diff --git a/include/map_name_popup.h b/include/map_name_popup.h index 0cb0c49ad..cf9b005d9 100644 --- a/include/map_name_popup.h +++ b/include/map_name_popup.h @@ -1,6 +1,8 @@ #ifndef GUARD_MAP_NAME_POPUP_H #define GUARD_MAP_NAME_POPUP_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/map_obj_80688E4.h b/include/map_obj_80688E4.h index b131a1a54..9ab76646d 100644 --- a/include/map_obj_80688E4.h +++ b/include/map_obj_80688E4.h @@ -1,6 +1,8 @@ #ifndef GUARD_MAP_OBJ_80688E4_H #define GUARD_MAP_OBJ_80688E4_H +#include "global.h" + void player_bitmagic(void); #endif //GUARD_MAP_OBJ_80688E4_H diff --git a/include/map_obj_8097404.h b/include/map_obj_8097404.h index 27ffd18cb..ad90bed9c 100644 --- a/include/map_obj_8097404.h +++ b/include/map_obj_8097404.h @@ -5,6 +5,8 @@ #ifndef GUARD_MAP_OBJ_8097404_H #define GUARD_MAP_OBJ_8097404_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/map_obj_lock.h b/include/map_obj_lock.h index cf1f714d7..c8e075658 100644 --- a/include/map_obj_lock.h +++ b/include/map_obj_lock.h @@ -1,6 +1,8 @@ #ifndef GUARD_MAP_OBJ_LOCK_H #define GUARD_MAP_OBJ_LOCK_H +#include "global.h" + bool8 sub_80983C4(void); void ScriptFreezeMapObjects(void); bool8 sub_809847C(void); diff --git a/include/menews_jisan.h b/include/menews_jisan.h index 8dc1d0a99..4db5a7be2 100644 --- a/include/menews_jisan.h +++ b/include/menews_jisan.h @@ -1,6 +1,8 @@ #ifndef GUARD_MENEWS_JISAN_H #define GUARD_MENEWS_JISAN_H +#include "global.h" + void sub_8146C30(u32 a0); void sub_8146C88(void); void sub_8146CA4(void); diff --git a/include/menu.h b/include/menu.h index 2d28218b6..b932693f7 100644 --- a/include/menu.h +++ b/include/menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_MENU_H #define GUARD_MENU_H +#include "global.h" + #include "text.h" #include "window.h" diff --git a/include/menu_helpers.h b/include/menu_helpers.h index e88385f94..b193388e5 100644 --- a/include/menu_helpers.h +++ b/include/menu_helpers.h @@ -1,6 +1,8 @@ #ifndef GUARD_MENU_HELPERS_H #define GUARD_MENU_HELPERS_H +#include "global.h" + // Exported type declarations struct YesNoFuncTable { diff --git a/include/menu_indicators.h b/include/menu_indicators.h index d0baac810..2350e2502 100644 --- a/include/menu_indicators.h +++ b/include/menu_indicators.h @@ -1,6 +1,8 @@ #ifndef GUARD_MENU_INDICATORS_H #define GUARD_MENU_INDICATORS_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h index d6743b788..973d96cbb 100644 --- a/include/metatile_behavior.h +++ b/include/metatile_behavior.h @@ -1,6 +1,8 @@ #ifndef GUARD_METATILE_BEHAVIOR #define GUARD_METATILE_BEHAVIOR +#include "global.h" + bool8 ShouldDoJumpLandingDustEffect(u8); bool8 MetatileBehavior_IsEncounterTile(u8); bool8 MetatileBehavior_IsJumpEast(u8); diff --git a/include/mevent.h b/include/mevent.h index a611a98a8..7df669da3 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -1,6 +1,8 @@ #ifndef GUARD_MEVENT_H #define GUARD_MEVENT_H +#include "global.h" + struct MysteryEventStruct * sub_8143D94(void); bool32 sub_8143E1C(void); diff --git a/include/money.h b/include/money.h index 48b15db76..fa63e321c 100644 --- a/include/money.h +++ b/include/money.h @@ -1,6 +1,8 @@ #ifndef GUARD_MONEY_H #define GUARD_MONEY_H +#include "global.h" + u32 GetMoney(u32* moneyPtr); void SetMoney(u32* moneyPtr, u32 newValue); bool8 IsEnoughMoney(u32* moneyPtr, u32 cost); diff --git a/include/multiboot.h b/include/multiboot.h index d4700ff4e..4b4a3693a 100644 --- a/include/multiboot.h +++ b/include/multiboot.h @@ -1,6 +1,8 @@ #ifndef GUARD_MULTIBOOT_H #define GUARD_MULTIBOOT_H +#include "global.h" + #define MULTIBOOT_MASTER_INFO 0x62 #define MULTIBOOT_CLIENT_INFO 0x72 #define MULTIBOOT_MASTER_START_PROBE 0x61 diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index ab23a8d00..1ba1464fa 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -1,6 +1,8 @@ #ifndef GUARD_MYSTERY_EVENT_SCRIPT_H #define GUARD_MYSTERY_EVENT_SCRIPT_H +#include "global.h" + u32 RunMysteryEventScript(u8 *); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); diff --git a/include/naming_screen.h b/include/naming_screen.h index 3d69b834f..be2cf34f8 100644 --- a/include/naming_screen.h +++ b/include/naming_screen.h @@ -1,6 +1,8 @@ #ifndef GUARD_NAMING_SCREEN_H #define GUARD_NAMING_SCREEN_H +#include "global.h" + #define NAMING_SCREEN_PLAYER 0 #define NAMING_SCREEN_BOX 1 #define NAMING_SCREEN_CAUGHT_MON 2 diff --git a/include/new_game.h b/include/new_game.h index 2088d1826..c495a9585 100644 --- a/include/new_game.h +++ b/include/new_game.h @@ -1,6 +1,8 @@ #ifndef GUARD_NEW_GAME_H #define GUARD_NEW_GAME_H +#include "global.h" + void WriteUnalignedWord(u32 var, u8 *dataPtr); u32 ReadUnalignedWord(u8* dataPtr); void CopyUnalignedWord(u8 *copyTo, u8 *copyFrom); diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index c52184972..ffe5c2e3f 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -1,6 +1,8 @@ #ifndef GUARD_NEW_MENU_HELPERS_H #define GUARD_NEW_MENU_HELPERS_H +#include "global.h" + #include "text.h" #include "task.h" diff --git a/include/overworld.h b/include/overworld.h index d497ddbe1..05ff5e03c 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -1,6 +1,8 @@ #ifndef GUARD_ROM4_H #define GUARD_ROM4_H +#include "global.h" + #include "main.h" struct UnkPlayerStruct diff --git a/include/palette.h b/include/palette.h index 90112947a..3af0d5d7b 100644 --- a/include/palette.h +++ b/include/palette.h @@ -3,6 +3,8 @@ #include "global.h" +#include "global.h" + #define gPaletteFade_selectedPalettes (gPaletteFade.multipurpose1) // normal and fast fade #define gPaletteFade_blendCnt (gPaletteFade.multipurpose1) // hardware fade #define gPaletteFade_delay (gPaletteFade.multipurpose2) // normal and hardware fade diff --git a/include/party_menu.h b/include/party_menu.h index 75a1645c4..19e1f7d4e 100644 --- a/include/party_menu.h +++ b/include/party_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_PARTY_MENU_H #define GUARD_PARTY_MENU_H +#include "global.h" + enum { AILMENT_NONE, AILMENT_PSN, diff --git a/include/play_time.h b/include/play_time.h index 49091f4b1..233dbadda 100644 --- a/include/play_time.h +++ b/include/play_time.h @@ -1,6 +1,8 @@ #ifndef GUARD_PLAY_TIME_H #define GUARD_PLAY_TIME_H +#include "global.h" + void PlayTimeCounter_Reset(void); void PlayTimeCounter_Start(void); void PlayTimeCounter_Stop(void); diff --git a/include/player_pc.h b/include/player_pc.h index b14d1ede3..e14e5e9da 100644 --- a/include/player_pc.h +++ b/include/player_pc.h @@ -1,6 +1,8 @@ #ifndef GUARD_PLAYER_PC_H #define GUARD_PLAYER_PC_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/pokeball.h b/include/pokeball.h index 84178b5b2..10a9529b9 100644 --- a/include/pokeball.h +++ b/include/pokeball.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEBALL_H #define GUARD_POKEBALL_H +#include "global.h" + enum { BALL_POKE, diff --git a/include/pokedex.h b/include/pokedex.h index 236feac45..ca642ed1a 100644 --- a/include/pokedex.h +++ b/include/pokedex.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEDEX_H #define GUARD_POKEDEX_H +#include "global.h" + void ResetPokedex(void); void CopyMonCategoryText(u16 species, u8 *dst); u16 GetPokedexHeightWeight(u16 dexNum, u8 data); diff --git a/include/pokemon.h b/include/pokemon.h index e15172dd5..e8782af98 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEMON_H #define GUARD_POKEMON_H +#include "global.h" + #define MON_DATA_PERSONALITY 0 #define MON_DATA_OT_ID 1 #define MON_DATA_NICKNAME 2 @@ -570,8 +572,14 @@ void DecryptBoxMon(struct BoxPokemon *boxMon); // but they are not used since some code erroneously omits the third arg. // u32 GetMonData(struct Pokemon *mon, s32 field, u8 *data); // u32 GetBoxMonData(struct BoxPokemon *boxMon, s32 field, u8 *data); + +#ifdef IS_POKEMON_C +u32 GetMonData(struct Pokemon *, s32, u8 *); +u32 GetBoxMonData(struct BoxPokemon *, s32, u8 *); +#else u32 GetMonData(); u32 GetBoxMonData(); +#endif // IS_POKEMON_C void SetMonData(struct Pokemon *mon, s32 field, const void *data); void SetBoxMonData(struct BoxPokemon *boxMon, s32 field, const void *data); diff --git a/include/pokemon_3.h b/include/pokemon_3.h index 5c9862d57..cffc9780b 100644 --- a/include/pokemon_3.h +++ b/include/pokemon_3.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEMON_3_H #define GUARD_POKEMON_3_H +#include "global.h" + const u8* GetTrainerClassNameFromId(u16 trainerId); const u8* GetTrainerNameFromId(u16 trainerId); diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index b6d21823e..da58a2d83 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEMON_ICON_H #define GUARD_POKEMON_ICON_H +#include "global.h" + const u8 *GetMonIconPtr(u16 speciesId, u32 personality, u32 frameNo); const u16 *GetValidMonIconPalettePtr(u16 speciesId); u16 sub_80D2E84(u16 speciesId); diff --git a/include/pokemon_item_effects.h b/include/pokemon_item_effects.h index 505cc0f25..e02d976b2 100644 --- a/include/pokemon_item_effects.h +++ b/include/pokemon_item_effects.h @@ -55,8 +55,8 @@ struct PokemonItemEffect /*field 6 u8 value; }; -*/ bool8 ExecuteTableBasedItemEffect(struct Pokemon *mon, u16 itemId, u8 partyId, u8 monMoveIndex, u8 a5); +*/ #endif // GUARD_POKEMON_ITEM_EFFECTS diff --git a/include/pokemon_size_record.h b/include/pokemon_size_record.h index f61286bd4..3fa448cbb 100644 --- a/include/pokemon_size_record.h +++ b/include/pokemon_size_record.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEMON_SIZE_RECORD_H #define GUARD_POKEMON_SIZE_RECORD_H +#include "global.h" + void InitSeedotSizeRecord(void); void GetSeedotSizeRecordInfo(void); void CompareSeedotSize(void); diff --git a/include/pokemon_storage_system.h b/include/pokemon_storage_system.h index 04d739314..5b2d2052b 100644 --- a/include/pokemon_storage_system.h +++ b/include/pokemon_storage_system.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKEMON_STORAGE_SYSTEM_H #define GUARD_POKEMON_STORAGE_SYSTEM_H +#include "global.h" + #define TOTAL_BOXES_COUNT 14 #define IN_BOX_COUNT 30 diff --git a/include/pokenav.h b/include/pokenav.h index 06676610a..ad95873b1 100644 --- a/include/pokenav.h +++ b/include/pokenav.h @@ -1,6 +1,8 @@ #ifndef GUARD_POKENAV_H #define GUARD_POKENAV_H +#include "global.h" + bool8 sub_81D5C18(void); #endif //GUARD_POKENAV_H diff --git a/include/quest_log.h b/include/quest_log.h index f3fc04f41..90eb290ca 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -1,6 +1,8 @@ #ifndef GUARD_QUEST_LOG_H #define GUARD_QUEST_LOG_H +#include "global.h" + struct UnkStruct_3005E90 { u8 unk_0; diff --git a/include/quest_log_8150454.h b/include/quest_log_8150454.h index 05bebdd75..adf5d193e 100644 --- a/include/quest_log_8150454.h +++ b/include/quest_log_8150454.h @@ -1,6 +1,8 @@ #ifndef GUARD_QUEST_LOG_8150454_H #define GUARD_QUEST_LOG_8150454_H +#include "global.h" + void sub_8150454(void); #endif //GUARD_QUEST_LOG_8150454_H diff --git a/include/random.h b/include/random.h index 79a9d71dc..139316f9d 100644 --- a/include/random.h +++ b/include/random.h @@ -1,6 +1,8 @@ #ifndef GUARD_RANDOM_H #define GUARD_RANDOM_H +#include "global.h" + extern u32 gRngValue; extern u32 gRng2Value; diff --git a/include/region_map.h b/include/region_map.h index eb84a71b1..93ad5541d 100644 --- a/include/region_map.h +++ b/include/region_map.h @@ -1,6 +1,8 @@ #ifndef GUARD_REGION_MAP_H #define GUARD_REGION_MAP_H +#include "global.h" + #include "bg.h" // Exported type declarations diff --git a/include/reshow_battle_screen.h b/include/reshow_battle_screen.h index c22135280..9d1ec30f2 100644 --- a/include/reshow_battle_screen.h +++ b/include/reshow_battle_screen.h @@ -1,6 +1,8 @@ #ifndef GUARD_RESHOW_BATTLE_SCREEN_H #define GUARD_RESHOW_BATTLE_SCREEN_H +#include "global.h" + void nullsub_35(void); void ReshowBattleScreenAfterMenu(void); diff --git a/include/roamer.h b/include/roamer.h index ba1b09b54..5ec0a17fc 100644 --- a/include/roamer.h +++ b/include/roamer.h @@ -1,6 +1,8 @@ #ifndef GUARD_ROAMER_H #define GUARD_ROAMER_H +#include "global.h" + void ClearRoamerData(void); void ClearRoamerLocationData(void); void InitRoamer(void); diff --git a/include/rom6.h b/include/rom6.h index 6d20752e2..753c07305 100644 --- a/include/rom6.h +++ b/include/rom6.h @@ -1,6 +1,8 @@ #ifndef GUARD_ROM6_H #define GUARD_ROM6_H +#include "global.h" + void sub_81357FC(u8, void(void)); u8 GetLeadMonIndex(void); u8 GetSSTidalLocation(u8 *grp, u8 *num, s16 *x, s16 *y); diff --git a/include/rom_818CFC8.h b/include/rom_818CFC8.h index 1d0626b2b..048825778 100644 --- a/include/rom_818CFC8.h +++ b/include/rom_818CFC8.h @@ -5,6 +5,8 @@ #ifndef GUARD_ROM_818CFC8_H #define GUARD_ROM_818CFC8_H +#include "global.h" + bool8 InBattlePyramid(void); u8 sub_81AAA40(void); diff --git a/include/rom_81BE66C.h b/include/rom_81BE66C.h index 5b4f80249..fa439d8da 100644 --- a/include/rom_81BE66C.h +++ b/include/rom_81BE66C.h @@ -5,6 +5,8 @@ #ifndef GUARD_ROM_81BE66C_H #define GUARD_ROM_81BE66C_H +#include "global.h" + bool32 InTrainerHill(void); bool8 FieldObjectIsFarawayIslandMew(struct MapObject *); u32 sub_81D427C(void); diff --git a/include/safari_zone.h b/include/safari_zone.h index 9a81894b8..b20555a8c 100644 --- a/include/safari_zone.h +++ b/include/safari_zone.h @@ -1,6 +1,8 @@ #ifndef GUARD_SAFARI_ZONE_H #define GUARD_SAFARI_ZONE_H +#include "global.h" + extern u8 gNumSafariBalls; bool32 GetSafariZoneFlag(void); diff --git a/include/save.h b/include/save.h index 29524a7e2..f547230b9 100644 --- a/include/save.h +++ b/include/save.h @@ -1,6 +1,8 @@ #ifndef GUARD_SAVE_H #define GUARD_SAVE_H +#include "global.h" + #define NUM_SECTORS 32 // defined in agb_flash but not in a header #define SAVE_STATUS_EMPTY 0 diff --git a/include/save_location.h b/include/save_location.h index 95b3a7d7d..69b39ea53 100644 --- a/include/save_location.h +++ b/include/save_location.h @@ -1,6 +1,8 @@ #ifndef GUARD_SAVE_LOCATION_H #define GUARD_SAVE_LOCATION_H +#include "global.h" + bool32 sub_81AFCEC(void); void TrySetMapSaveWarpStatus(void); void sub_81AFDA0(void); diff --git a/include/script.h b/include/script.h index 2b5f8c2ce..9e26b8a28 100644 --- a/include/script.h +++ b/include/script.h @@ -1,6 +1,8 @@ #ifndef GUARD_SCRIPT_H #define GUARD_SCRIPT_H +#include "global.h" + struct ScriptContext; typedef bool8 (*ScrCmdFunc)(struct ScriptContext *); diff --git a/include/script_menu.h b/include/script_menu.h index 717eda041..1e95570b3 100644 --- a/include/script_menu.h +++ b/include/script_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_SCRIPT_MENU_H #define GUARD_SCRIPT_MENU_H +#include "global.h" + extern const u8 *const gUnknown_0858BAF0[9]; bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 var3, u8 var4); diff --git a/include/script_movement.h b/include/script_movement.h index 4c3fa6002..ae446812e 100644 --- a/include/script_movement.h +++ b/include/script_movement.h @@ -1,6 +1,8 @@ #ifndef GUARD_SCRIPT_MOVEMENT_H #define GUARD_SCRIPT_MOVEMENT_H +#include "global.h" + bool8 ScriptMovement_StartObjectMovementScript(u8, u8, u8, const u8 *); bool8 ScriptMovement_IsObjectMovementFinished(u8, u8, u8); void sub_80D338C(void); diff --git a/include/script_pokemon_80F8.h b/include/script_pokemon_80F8.h index 8dd7ed0c0..8a5bb12e1 100644 --- a/include/script_pokemon_80F8.h +++ b/include/script_pokemon_80F8.h @@ -1,6 +1,8 @@ #ifndef GUARD_SCRIPTPOKE80F8_H #define GUARD_SCRIPTPOKE80F8_H +#include "global.h" + void ShowContestWinner(void); u8 ScriptGiveMon(u16, u8, u16, u32, u32, u8); u8 ScriptGiveEgg(u16); diff --git a/include/script_pokemon_81B9.h b/include/script_pokemon_81B9.h index 1b8563ee6..d49095fcc 100644 --- a/include/script_pokemon_81B9.h +++ b/include/script_pokemon_81B9.h @@ -1,6 +1,8 @@ #ifndef GUARD_SCRIPTPOKE81B9_H #define GUARD_SCRIPTPOKE81B9_H +#include "global.h" + void sub_81B9404(void); #endif diff --git a/include/shop.h b/include/shop.h index d3e86408c..1046a590a 100644 --- a/include/shop.h +++ b/include/shop.h @@ -1,6 +1,8 @@ #ifndef GUARD_SHOP_H #define GUARD_SHOP_H +#include "global.h" + extern EWRAM_DATA struct ItemSlot gUnknown_02039F80[3]; void CreatePokemartMenu(const u16 *); diff --git a/include/slot_machine.h b/include/slot_machine.h index 8334e56fc..5c96384fa 100644 --- a/include/slot_machine.h +++ b/include/slot_machine.h @@ -1,6 +1,8 @@ #ifndef GUARD_SLOT_MACHINE_H #define GUARD_SLOT_MACHINE_H +#include "global.h" + void PlaySlotMachine(u8, void *); #endif // GUARD_SLOT_MACHINE_H diff --git a/include/songs.h b/include/songs.h index 5a1fff00c..f8d0fbf5b 100644 --- a/include/songs.h +++ b/include/songs.h @@ -1,6 +1,8 @@ #ifndef GUARD_SONGS_H #define GUARD_SONGS_H +#include "global.h" + enum { /*0x00*/ SE_STOP, diff --git a/include/sound.h b/include/sound.h index 7d47b7456..34fdfc839 100644 --- a/include/sound.h +++ b/include/sound.h @@ -1,6 +1,8 @@ #ifndef GUARD_SOUND_H #define GUARD_SOUND_H +#include "global.h" + void InitMapMusic(void); void MapMusicMain(void); void ResetMapMusic(void); diff --git a/include/sprite.h b/include/sprite.h index 170d77c3f..bc47f7100 100644 --- a/include/sprite.h +++ b/include/sprite.h @@ -1,6 +1,8 @@ #ifndef GUARD_SPRITE_H #define GUARD_SPRITE_H +#include "global.h" + #define MAX_SPRITES 64 struct SpriteSheet diff --git a/include/start_menu.h b/include/start_menu.h index 6c7cb3237..f5b38ee5e 100644 --- a/include/start_menu.h +++ b/include/start_menu.h @@ -1,6 +1,8 @@ #ifndef GUARD_START_MENU_H #define GUARD_START_MENU_H +#include "global.h" + void AppendToList(u8* list, u8* pos, u8 newEntry); #endif // GUARD_START_MENU_H diff --git a/include/string_util.h b/include/string_util.h index 2354c9ded..32e74e031 100644 --- a/include/string_util.h +++ b/include/string_util.h @@ -1,6 +1,8 @@ #ifndef GUARD_STRING_UTIL_H #define GUARD_STRING_UTIL_H +#include "global.h" + enum StringConvertMode { STR_CONV_MODE_LEFT_ALIGN, diff --git a/include/strings.h b/include/strings.h index 8b218e1e9..90c84c9b9 100644 --- a/include/strings.h +++ b/include/strings.h @@ -1,6 +1,8 @@ #ifndef GUARD_STRINGS_H #define GUARD_STRINGS_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/task.h b/include/task.h index a199ba128..cd3deb544 100644 --- a/include/task.h +++ b/include/task.h @@ -1,6 +1,8 @@ #ifndef GUARD_TASK_H #define GUARD_TASK_H +#include "global.h" + #define NUM_TASKS 16 typedef void (*TaskFunc)(u8 taskId); diff --git a/include/text.h b/include/text.h index 7853598f8..2bda590c1 100644 --- a/include/text.h +++ b/include/text.h @@ -1,6 +1,8 @@ #ifndef GUARD_TEXT_H #define GUARD_TEXT_H +#include "global.h" + #define CHAR_SPACE 0x00 #define CHAR_0 0xA1 #define CHAR_QUESTION_MARK 0xAC diff --git a/include/text_window.h b/include/text_window.h index 3514296c1..72ce50efc 100644 --- a/include/text_window.h +++ b/include/text_window.h @@ -1,6 +1,8 @@ #ifndef GUARD_TEXT_WINDOW_H #define GUARD_TEXT_WINDOW_H +#include "global.h" + struct TilesPal { u32* tiles; diff --git a/include/tilesets.h b/include/tilesets.h index 70609c046..03274be60 100644 --- a/include/tilesets.h +++ b/include/tilesets.h @@ -1,6 +1,8 @@ #ifndef GUARD_tilesets_H #define GUARD_tilesets_H +#include "global.h" + // Exported type declarations // Exported RAM declarations diff --git a/include/trainer_classes.h b/include/trainer_classes.h index e5e26b359..3b93c3814 100644 --- a/include/trainer_classes.h +++ b/include/trainer_classes.h @@ -1,6 +1,8 @@ #ifndef GUARD_TRAINER_CLASSES_H #define GUARD_TRAINER_CLASSES_H +#include "global.h" + enum { CLASS_PKMN_TRAINER0, // 0 diff --git a/include/trainer_front_sprites.h b/include/trainer_front_sprites.h index 3259bec88..8855041a5 100644 --- a/include/trainer_front_sprites.h +++ b/include/trainer_front_sprites.h @@ -1,6 +1,8 @@ #ifndef GUARD_TRAINER_FRONT_SPRITES_H #define GUARD_TRAINER_FRONT_SPRITES_H +#include "global.h" + enum { TRAINER_FRONT_PIC_HIKER, @@ -54,8 +56,8 @@ enum TRAINER_FRONT_PIC_SCHOOL_KID_M, TRAINER_FRONT_PIC_SCHOOL_KID_F, TRAINER_FRONT_PIC_SR_JR, - TRAINER_FRONT_PIC_POKÉFAN_M, - TRAINER_FRONT_PIC_POKÉFAN_F, + TRAINER_FRONT_PIC_POKéFAN_M, + TRAINER_FRONT_PIC_POKéFAN_F, TRAINER_FRONT_PIC_YOUNGSTER, TRAINER_FRONT_PIC_WALLACE, TRAINER_FRONT_PIC_FISHERMAN, diff --git a/include/trainer_ids.h b/include/trainer_ids.h index 65c80187f..ebcb6e4e5 100644 --- a/include/trainer_ids.h +++ b/include/trainer_ids.h @@ -1,6 +1,8 @@ #ifndef GUARD_TRAINER_IDS_H #define GUARD_TRAINER_IDS_H +#include "global.h" + #define NO_OF_TRAINERS 854 #define TRAINER_ID_STEVEN 804 diff --git a/include/trainer_see.h b/include/trainer_see.h index ab035d9f8..f87189377 100644 --- a/include/trainer_see.h +++ b/include/trainer_see.h @@ -1,6 +1,8 @@ #ifndef GUARD_TRAINER_SEE_H #define GUARD_TRAINER_SEE_H +#include "global.h" + void sub_80B4578(struct MapObject *); u8 sub_80B47BC(void); void sub_8155D78(struct MapObject *); diff --git a/include/trig.h b/include/trig.h index a2f98a3e6..92388e05c 100644 --- a/include/trig.h +++ b/include/trig.h @@ -1,6 +1,8 @@ #ifndef GUARD_TRIG_H #define GUARD_TRIG_H +#include "global.h" + extern const s16 gSineTable[]; s16 Sin(s16 index, s16 amplitude); diff --git a/include/unk_8159F40.h b/include/unk_8159F40.h index b7666766f..f0e85d416 100644 --- a/include/unk_8159F40.h +++ b/include/unk_8159F40.h @@ -1,6 +1,8 @@ #ifndef GUARD_UNK_8159F40_H #define GUARD_UNK_8159F40_H +#include "global.h" + void sub_815A008(struct QuestLog *); void sub_815A1F8(struct QuestLog *, struct MapObjectTemplate *); diff --git a/include/unk_text_util.h b/include/unk_text_util.h index 72243a90e..750c0541e 100644 --- a/include/unk_text_util.h +++ b/include/unk_text_util.h @@ -1,6 +1,8 @@ #ifndef GUARD_UNK_TEXT_UTIL_H #define GUARD_UNK_TEXT_UTIL_H +#include "global.h" + void UnkTextUtil_Reset(void); void UnkTextUtil_SetPtrI(u8 idx, const u8 *ptr); u8 *UnkTextUtil_StringExpandPlaceholders(u8 *dest, const u8 *src); diff --git a/include/unknown_task.h b/include/unknown_task.h index 9c6968c30..429e58aad 100644 --- a/include/unknown_task.h +++ b/include/unknown_task.h @@ -1,6 +1,8 @@ #ifndef GUARD_unknown_task_H #define GUARD_unknown_task_H +#include "global.h" + // Exported type declarations struct UnknownTaskStruct { diff --git a/include/util.h b/include/util.h index 63887b13f..a22cc77fa 100644 --- a/include/util.h +++ b/include/util.h @@ -1,6 +1,8 @@ #ifndef GUARD_UTIL_H #define GUARD_UTIL_H +#include "global.h" + #include "sprite.h" extern const u8 gMiscBlank_Gfx[]; // unused in Emerald diff --git a/include/wild_encounter.h b/include/wild_encounter.h index a1e26fe45..2186e0b4f 100644 --- a/include/wild_encounter.h +++ b/include/wild_encounter.h @@ -1,6 +1,8 @@ #ifndef GUARD_WILD_ENCOUNTER_H #define GUARD_WILD_ENCOUNTER_H +#include "global.h" + #define LAND_WILD_COUNT 12 #define WATER_WILD_COUNT 5 #define ROCK_WILD_COUNT 5 diff --git a/include/window.h b/include/window.h index 1e29119ea..2705a7895 100644 --- a/include/window.h +++ b/include/window.h @@ -1,6 +1,8 @@ #ifndef GUARD_WINDOW_H #define GUARD_WINDOW_H +#include "global.h" + enum { WINDOW_PRIORITY, -- cgit v1.2.3 From 251d031ec98c599dab50b28f0fe57c035e273dd1 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 19 Nov 2018 18:14:31 -0500 Subject: through sub_8114CE4 --- include/item.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/item.h b/include/item.h index 199b3b65e..75c56c94d 100644 --- a/include/item.h +++ b/include/item.h @@ -62,5 +62,6 @@ u8 ItemId_GetSecondaryId(u16 itemId); u16 itemid_get_market_price(u16 itemId); void sub_809A2DC(void); void sub_809A2A4(void); +void sub_8099E90(u16, u8 *); #endif // ITEM_H -- cgit v1.2.3 From 76f0c361edf91c3825b7a4344186150de0ce3469 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 21 Nov 2018 20:11:12 -0500 Subject: Try and guess what some of this stuff in crt0.s is --- include/global.h | 94 +++++++++++++++++++++++++++++++++----------------------- 1 file changed, 55 insertions(+), 39 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 9db1443c2..050e200f9 100644 --- a/include/global.h +++ b/include/global.h @@ -155,6 +155,8 @@ struct Time /*0x04*/ s8 seconds; }; +#define DEX_FLAGS_NO ((POKEMON_SLOTS_NUMBER / 8) + ((POKEMON_SLOTS_NUMBER % 8) ? 1 : 0)) + struct Pokedex { /*0x00*/ u8 order; @@ -164,8 +166,8 @@ struct Pokedex /*0x04*/ u32 unownPersonality; // set when you first see Unown /*0x08*/ u32 spindaPersonality; // set when you first see Spinda /*0x0C*/ u32 unknown3; - /*0x10*/ u8 owned[52]; - /*0x44*/ u8 seen[52]; + /*0x10*/ u8 owned[DEX_FLAGS_NO]; + /*0x44*/ u8 seen[DEX_FLAGS_NO]; }; struct PokemonJumpResults // possibly used in the game itself? @@ -514,9 +516,9 @@ struct QuestLogNPCData struct UnkStruct_203B024 { - u16 unk_00; - u16 unk_02; - u16 unk_04[14]; + u16 unk_00; + u16 unk_02; + u16 unk_04[14]; }; union QuestLogScene @@ -535,11 +537,11 @@ union QuestLogMovement; // Define here union QuestLogMovement { - u16 ident_raw; - struct { - u16 ident:12; - u16 flags:4; - } ident_struct; + u16 ident_raw; + struct { + u16 ident:12; + u16 flags:4; + } ident_struct; }; struct QuestLog @@ -571,30 +573,31 @@ struct SaveBlock1 { /*0x0000*/ struct Coords16 pos; /*0x0004*/ struct WarpData location; - /*0x0C*/ struct WarpData warp1; - /*0x14*/ struct WarpData warp2; - /*0x1C*/ struct WarpData lastHealLocation; - /*0x24*/ struct WarpData warp4; - /*0x2C*/ u16 savedMusic; - /*0x2E*/ u8 weather; - /*0x2F*/ u8 filler_2F; - /*0x30*/ u8 flashLevel; - /*0x32*/ u16 mapDataId; - /*0x234*/ u8 playerPartyCount; - /*0x238*/ struct Pokemon playerParty[PARTY_SIZE]; - /*0x490*/ u32 money; - /*0x494*/ u16 coins; - /*0x496*/ u16 registeredItem; // registered for use with SELECT button - /*0x0298*/ u8 filler298[0x78]; - /*0x0310*/ struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; - /*0x????*/ struct ItemSlot bagPocket_KeyItems[BAG_KEYITEMS_COUNT]; - /*0x????*/ struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; - /*0x????*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT]; - /*0x????*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT]; - /*0x05F8*/ u8 filler5F8[0x40]; - /*0x638*/ u8 trainerRematchStepCounter; - u8 filler_639; - /*0x63A*/ u8 trainerRematches[100]; + /*0x000C*/ struct WarpData warp1; + /*0x0014*/ struct WarpData warp2; + /*0x001C*/ struct WarpData lastHealLocation; + /*0x0024*/ struct WarpData warp4; + /*0x002C*/ u16 savedMusic; + /*0x002E*/ u8 weather; + /*0x002F*/ u8 filler_2F; + /*0x0030*/ u8 flashLevel; + /*0x0032*/ u16 mapDataId; + /*0x0034*/ u8 playerPartyCount; + /*0x0038*/ struct Pokemon playerParty[PARTY_SIZE]; + /*0x0290*/ u32 money; + /*0x0294*/ u16 coins; + /*0x0296*/ u16 registeredItem; // registered for use with SELECT button + /*0x0298*/ u8 filler298[0x78]; + /*0x0310*/ struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; + /*0x03b8*/ struct ItemSlot bagPocket_KeyItems[BAG_KEYITEMS_COUNT]; + /*0x0430*/ struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; + /*0x0464*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT]; + /*0x054c*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT]; + /*0x05F8*/ u8 seen1[DEX_FLAGS_NO]; + /*0x062C*/ u8 filler_062c[12]; + /*0x0638*/ u8 trainerRematchStepCounter; + u8 filler_639; + /*0x063A*/ u8 trainerRematches[100]; /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; /*0x0EE0*/ u8 flags[FLAGS_COUNT]; @@ -602,14 +605,27 @@ struct SaveBlock1 /*0x1200*/ u8 filler1200[0x100]; /*0x1300*/ struct QuestLog questLog[4]; /*0x2CA0*/ u8 filler2CA0[0x30]; - /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; - /*0x2F10*/ u8 filler2F10[0x1DA]; - /*0x30EC*/ struct EnigmaBerry enigmaBerry; - /*0x3120*/ u8 filler3120[0x340]; + /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; + /*0x2F10*/ u8 filler2F10[0x184]; + struct { + /*0x3094*/ u8 unknown1[8]; + /*0x309C*/ u8 giftRibbons[11]; + /*0x30A7*/ u8 unknown2[8]; + /*0x30AF*/ u32 currentPokeCoupons; + /*0x30B3*/ u32 totalEarnedPokeCoupons; + /*0x30B7*/ u8 unknown3[6]; + /*0x30BD*/ u8 receivedWishmakerJirachi; + /*0x30BE*/ u8 unknown4[18]; + } __attribute__((packed)) externalReservedData; + /*0x30D0*/ struct Roamer roamer; + /*0x30EC*/ struct EnigmaBerry enigmaBerry; + /*0x3120*/ u8 filler3120[0x340]; /*0x3460*/ struct MysteryEventStruct unk_3460; /*0x3464*/ u8 filler_3464[0x1b8]; /*0x361C*/ struct RamScript ramScript; - /*0x3A08*/ u8 filler3A08[0x44]; + /*0x3A08*/ u8 filler3A08[12]; + /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; + /*0x3A48*/ u8 filler_3a48[4]; /*0x3A4C*/ u8 rivalName[PLAYER_NAME_LENGTH]; /*0x3A54*/ u8 filler3A54[0x2E4]; u32 unkArray[4][3]; -- cgit v1.2.3 From d347a95390a5cb61416f0148e9a9661b1ffddde7 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 23 Nov 2018 15:17:38 -0500 Subject: quest_log_8150454 --- include/bike.h | 6 ++++++ include/field_effect_helpers.h | 1 + include/field_map_obj.h | 3 +++ include/field_player_avatar.h | 4 ++++ include/quest_log.h | 2 ++ 5 files changed, 16 insertions(+) create mode 100644 include/bike.h (limited to 'include') diff --git a/include/bike.h b/include/bike.h new file mode 100644 index 000000000..468c48273 --- /dev/null +++ b/include/bike.h @@ -0,0 +1,6 @@ +#ifndef GUARD_BIKE_H +#define GUARD_BIKE_H + +void sub_80BD620(u32 unkC, u32 unk10); + +#endif //GUARD_BIKE_H diff --git a/include/field_effect_helpers.h b/include/field_effect_helpers.h index 33c4d5bbc..5cd29fc5b 100644 --- a/include/field_effect_helpers.h +++ b/include/field_effect_helpers.h @@ -14,5 +14,6 @@ // Exported ROM declarations u8 sub_8154228(void); bool8 sub_8155DA0(struct MapObject *); +void sub_80DC44C(u8, u8); #endif //GUARD_FIELD_EFFECT_HELPERS_H diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 9ff5ecedc..ded970a83 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -83,6 +83,9 @@ void sub_8063CA4(struct MapObject *, u8); void npc_coords_shift_still(struct MapObject *); void sub_805FE7C(struct MapObject *, u8); void npc_set_running_behaviour_etc(struct MapObject *, u8); +u8 sub_80634F0(u8 direction); +u8 sub_8063500(u8 a0); +void sub_805F060(struct MapObject *mapObject, u8 a1); // Exported data declarations diff --git a/include/field_player_avatar.h b/include/field_player_avatar.h index 9b7fcde38..297d66441 100644 --- a/include/field_player_avatar.h +++ b/include/field_player_avatar.h @@ -16,5 +16,9 @@ void sub_808D074(u8); void sub_805C270(); void sub_805C780(); void GetXYCoordsOneStepInFrontOfPlayer(s16 *xPtr, s16 *yPtr); +u8 sub_805C808(u8); +void SetPlayerAvatarStateMask(u8 mask); +void sub_805D9C4(struct Sprite *sprite); +void sub_805D154(u8 direction); #endif //GUARD_FIELD_PLAYER_AVATAR_H diff --git a/include/quest_log.h b/include/quest_log.h index 90eb290ca..b2a750725 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -19,4 +19,6 @@ extern u16 gUnknown_3005E8C; extern struct UnkStruct_3005E90 gUnknown_3005E90; extern struct UnkStruct_203AE98 * gUnknown_3005E94; +void sub_8112720(u8); + #endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From 91bfbfb9fb2bbdecfc33e76fca7aa6ff5a2c8a34 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 23 Nov 2018 21:22:31 -0500 Subject: quest_log_battle, 1 --- include/overworld.h | 3 ++- include/quest_log.h | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/overworld.h b/include/overworld.h index 05ff5e03c..8cae07bdc 100644 --- a/include/overworld.h +++ b/include/overworld.h @@ -70,7 +70,6 @@ void c2_load_new_map(void); void copy_saved_warp2_bank_and_enter_x_to_warp1(u8 unused); void mapldr_default(void); -void IncrementGameStat(u8); u32 GetGameStat(u8); void sub_8056938(void); @@ -80,6 +79,8 @@ void sub_805726C(void); void sub_8057430(void); void sub_8055DC4(void); +u8 sav1_map_get_name(void); + extern u8 gUnknown_2031DD8; extern u8 gUnknown_2036E28; diff --git a/include/quest_log.h b/include/quest_log.h index b2a750725..9f8a0ea21 100644 --- a/include/quest_log.h +++ b/include/quest_log.h @@ -20,5 +20,6 @@ extern struct UnkStruct_3005E90 gUnknown_3005E90; extern struct UnkStruct_203AE98 * gUnknown_3005E94; void sub_8112720(u8); +void sub_8113550(u16, const u16 *); #endif //GUARD_QUEST_LOG_H -- cgit v1.2.3 From d5d220bc5c952aae723a0c0849bfbbdb17dff70a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 23 Nov 2018 21:55:21 -0500 Subject: quest_log_battle, 2 --- include/battle.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/battle.h b/include/battle.h index e2f7ddb44..c86bc9232 100644 --- a/include/battle.h +++ b/include/battle.h @@ -604,7 +604,11 @@ struct BattleStruct u8 hpScale; u8 synchronizeMoveEffect; u8 field_B3; - void (*savedCallback)(void); + u8 field_B4; + u8 field_B5; + u8 field_B6; + u8 field_B7; + // void (*savedCallback)(void); u16 usedHeldItems[BATTLE_BANKS_COUNT]; u8 chosenItem[4]; // why is this an u8? u8 AI_itemType[2]; -- cgit v1.2.3 From 5a262eec73614998a87f3466a0c0924c7317be36 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Nov 2018 13:08:18 -0500 Subject: sub_812C3F8 --- include/bg.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/bg.h b/include/bg.h index 55927a5a4..003ffc916 100644 --- a/include/bg.h +++ b/include/bg.h @@ -77,9 +77,9 @@ void UnsetBgTilemapBuffer(u8 bg); void* GetBgTilemapBuffer(u8 bg); void CopyToBgTilemapBuffer(u8 bg, const void *src, u16 mode, u16 destOffset); void CopyBgTilemapBufferToVram(u8 bg); -void CopyToBgTilemapBufferRect(u8 bg, void* src, u8 destX, u8 destY, u8 width, u8 height); -void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette); -void CopyRectToBgTilemapBufferRect(u8 bg, void* src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2); +void CopyToBgTilemapBufferRect(u8 bg, const void* src, u8 destX, u8 destY, u8 width, u8 height); +void CopyToBgTilemapBufferRect_ChangePalette(u8 bg, const void *src, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette); +void CopyRectToBgTilemapBufferRect(u8 bg, const void* src, u8 srcX, u8 srcY, u8 srcWidth, u8 srcHeight, u8 destX, u8 destY, u8 rectWidth, u8 rectHeight, u8 palette1, u16 tileOffset, u16 palette2); void FillBgTilemapBufferRect_Palette0(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height); void FillBgTilemapBufferRect(u8 bg, u16 tileNum, u8 x, u8 y, u8 width, u8 height, u8 palette); void WriteSequenceToBgTilemapBuffer(u8 bg, u16 firstTileNum, u8 x, u8 y, u8 width, u8 height, u8 paletteSlot, s16 tileNumDelta); -- cgit v1.2.3 From 2571ba516cb0f21c19405e943c53eebf5d19ab7a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Nov 2018 15:51:55 -0500 Subject: through sub_812C694 --- include/graphics.h | 7 +++++++ include/item_menu.h | 1 + 2 files changed, 8 insertions(+) (limited to 'include') diff --git a/include/graphics.h b/include/graphics.h index 9888d2f7c..c5544428e 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -143,4 +143,11 @@ extern const u8 gUnknown_08DDB020[]; extern const u8 gUnknown_08DDB2C4[]; extern const u16 gUnknown_08DDAFE0[]; +// fame_checker + +extern const u16 gUnknown_8E9F220[0x30]; +extern const u16 gUnknown_8E9F260[0xa50]; +extern const u16 gUnknown_8EA0700[0x400]; +extern const u16 gUnknown_8EA0F00[0x400]; + #endif //GUARD_GRAPHICS_H diff --git a/include/item_menu.h b/include/item_menu.h index 731c7cf2b..64cb2d762 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -12,5 +12,6 @@ extern u16 gUnknown_203AD30; // Exported ROM declarations void sub_81AAC50(void); void sub_81AAC70(void); +void sub_8107EB8(void); #endif //GUARD_ITEM_MENU_H -- cgit v1.2.3 From 93f67f9557109d85e191283b171f7f5e8028b7bf Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Nov 2018 20:04:50 -0500 Subject: sub_812CAD8 New macro `PRESSED(x)` tests `gMain.newKeys & (x)`. The macro itself is inoptimal. However, its use is required to match this function. We suspect this macro may have been implemented globally, hence we put it in `global.h`. Propagating its use through the remainder of this project, as well as [Ruby](/pret/pokeruby) and [Emerald](/pret/pokeemerald), has been left as a to-do item. --- include/global.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'include') diff --git a/include/global.h b/include/global.h index 050e200f9..3dc11bfbd 100644 --- a/include/global.h +++ b/include/global.h @@ -62,6 +62,13 @@ #define T2_READ_32(ptr) ((ptr)[0] + ((ptr)[1] << 8) + ((ptr)[2] << 16) + ((ptr)[3] << 24)) #define T2_READ_PTR(ptr) (void*) T2_READ_32(ptr) +// This macro is required to prevent the compiler from optimizing +// a dpad up/down check in sub_812CAD8 (fame_checker.c). +// We suspect it was used globally. +// GameFreak never ceases to amaze. +// TODO: Propagate use of this macro +#define PRESSED(button) ({gMain.newKeys & (button);}) + extern u8 gStringVar1[]; extern u8 gStringVar2[]; extern u8 gStringVar3[]; -- cgit v1.2.3 From c60b28011871abaf987a46a6da6823ce451fa66d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Nov 2018 21:41:18 -0500 Subject: through sub_812CD3C --- include/global.h | 8 +++++++- include/new_menu_helpers.h | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 3dc11bfbd..568ece2be 100644 --- a/include/global.h +++ b/include/global.h @@ -570,6 +570,11 @@ struct QuestLog /*0x0668*/ u16 end[0]; }; +struct FameCheckerSaveData +{ + /*3a54*/ u8 unk_0_0:2; +}; + #define MAP_OBJECTS_COUNT 16 #define BERRY_TREES_COUNT 128 #define FLAGS_COUNT 288 // 300 @@ -634,7 +639,8 @@ struct SaveBlock1 /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; /*0x3A48*/ u8 filler_3a48[4]; /*0x3A4C*/ u8 rivalName[PLAYER_NAME_LENGTH]; - /*0x3A54*/ u8 filler3A54[0x2E4]; + /*0x3A54*/ struct FameCheckerSaveData fameChecker[17]; + /*0x3A98*/ u8 filler3A94[0x2A0]; u32 unkArray[4][3]; }; diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index 639395941..432d06c81 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -16,5 +16,6 @@ void SetStandardWindowBorderStyle(u8 a0, u8 a1); void sub_8197930(void); u8 GetPlayerTextSpeed(void); void sub_80F6F54(u8, u8); +u8 sub_80F78A8(void); #endif // GUARD_NEW_MENU_HELPERS_H -- cgit v1.2.3 From 8f9ec933264a3ecfe204b653c508feacde3c976d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 24 Nov 2018 23:02:38 -0500 Subject: through sub_812D094 --- include/list_menu.h | 1 + include/new_menu_helpers.h | 2 ++ 2 files changed, 3 insertions(+) (limited to 'include') diff --git a/include/list_menu.h b/include/list_menu.h index f547801bd..89adeaba0 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -54,5 +54,6 @@ u8 ListMenuInit(struct ListMenuTemplate *template, u16 a1, u16 a2); s32 ListMenuHandleInput(u8 id); void get_coro_args_x18_x1A(u8 a0, u16 *a1, u16 *a2); void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2); +void sub_810713C(u8, u8, u8); #endif //GUARD_LIST_MENU_H diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index 432d06c81..2ff20eb39 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -17,5 +17,7 @@ void sub_8197930(void); u8 GetPlayerTextSpeed(void); void sub_80F6F54(u8, u8); u8 sub_80F78A8(void); +void sub_80F6E9C(void); +void sub_80F6EE4(u8, u8); #endif // GUARD_NEW_MENU_HELPERS_H -- cgit v1.2.3 From 5b30b664bebb2ba890b86cd09f40c7c53da05659 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 08:21:08 -0500 Subject: sub_812D1A8 --- include/field_map_obj.h | 1 + include/global.h | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/field_map_obj.h b/include/field_map_obj.h index ded970a83..685701e89 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -86,6 +86,7 @@ void npc_set_running_behaviour_etc(struct MapObject *, u8); u8 sub_80634F0(u8 direction); u8 sub_8063500(u8 a0); void sub_805F060(struct MapObject *mapObject, u8 a1); +u8 sub_805EB44(u8, u8, s16, s16); // Exported data declarations diff --git a/include/global.h b/include/global.h index 568ece2be..31bb77f9f 100644 --- a/include/global.h +++ b/include/global.h @@ -572,7 +572,8 @@ struct QuestLog struct FameCheckerSaveData { - /*3a54*/ u8 unk_0_0:2; + /*3a54*/ u16 unk_0_0:2; + u16 unk_0_2:12; }; #define MAP_OBJECTS_COUNT 16 -- cgit v1.2.3 From 83dc744b85346386dea95ba70323917ca1e2a3ed Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 18:32:21 -0500 Subject: through sub_812D388 --- include/global.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 31bb77f9f..9fb7703cd 100644 --- a/include/global.h +++ b/include/global.h @@ -574,6 +574,7 @@ struct FameCheckerSaveData { /*3a54*/ u16 unk_0_0:2; u16 unk_0_2:12; + u16 unk_0_E:2; }; #define MAP_OBJECTS_COUNT 16 @@ -640,8 +641,8 @@ struct SaveBlock1 /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; /*0x3A48*/ u8 filler_3a48[4]; /*0x3A4C*/ u8 rivalName[PLAYER_NAME_LENGTH]; - /*0x3A54*/ struct FameCheckerSaveData fameChecker[17]; - /*0x3A98*/ u8 filler3A94[0x2A0]; + /*0x3A54*/ struct FameCheckerSaveData fameChecker[16]; + /*0x3A94*/ u8 filler3A94[0x2A4]; u32 unkArray[4][3]; }; -- cgit v1.2.3 From 5090c3fab25806fd972fd47360fef30ab095317d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 18:46:32 -0500 Subject: sub_812D420 --- include/gba/macro.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include') diff --git a/include/gba/macro.h b/include/gba/macro.h index 462d3589d..c0a4e481b 100644 --- a/include/gba/macro.h +++ b/include/gba/macro.h @@ -125,6 +125,9 @@ #define DmaCopyLarge32(dmaNum, src, dest, size, block) DmaCopyLarge(dmaNum, src, dest, size, block, 32) +#define DmaClearLarge16(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 16) +#define DmaClearLarge32(dmaNum, dest, size, block) DmaClearLarge(dmaNum, dest, size, block, 32) + #define DmaCopyDefvars(dmaNum, src, dest, size, bit) \ { \ const void *_src = src; \ -- cgit v1.2.3 From f05f41b89a0de0e0c32a06d6477de0d5e2fad243 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 19:21:05 -0500 Subject: through sub_812D5EC --- include/field_map_obj.h | 1 + include/scanline_effect.h | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 include/scanline_effect.h (limited to 'include') diff --git a/include/field_map_obj.h b/include/field_map_obj.h index 685701e89..d2ec58979 100644 --- a/include/field_map_obj.h +++ b/include/field_map_obj.h @@ -87,6 +87,7 @@ u8 sub_80634F0(u8 direction); u8 sub_8063500(u8 a0); void sub_805F060(struct MapObject *mapObject, u8 a1); u8 sub_805EB44(u8, u8, s16, s16); +void npc_paltag_set_load(u8 mode); // Exported data declarations diff --git a/include/scanline_effect.h b/include/scanline_effect.h new file mode 100644 index 000000000..d49f5b4d6 --- /dev/null +++ b/include/scanline_effect.h @@ -0,0 +1,6 @@ +#ifndef GUARD_SCANLINE_EFFECT_H +#define GUARD_SCANLINE_EFFECT_H + +void remove_some_task(void); + +#endif //GUARD_SCANLINE_EFFECT_H -- cgit v1.2.3 From 5c013a089798efa1819986528de4af8470a9c329 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 21:12:07 -0500 Subject: through sub_812DA14 --- include/battle_dome_cards.h | 2 ++ include/text.h | 24 ++++++++++++------------ 2 files changed, 14 insertions(+), 12 deletions(-) (limited to 'include') diff --git a/include/battle_dome_cards.h b/include/battle_dome_cards.h index 48d165e9c..94c9876f3 100644 --- a/include/battle_dome_cards.h +++ b/include/battle_dome_cards.h @@ -11,5 +11,7 @@ u16 sub_818D8AC(u16 species, bool8 isFrontPic, s16 x, s16 y, u8 paletteSlot, u16 u16 sub_818D8F0(u16 spriteId); u16 sub_818D938(u16 species, bool8 isFrontPic, u16 destX, u16 destY, u8 paletteSlot, u8 windowId); u8 sub_818D97C(u8 a0, u8 a1); +u8 sub_810C2A4(u16, u8, s16, s16, u8, u16); +void sub_810C2E8(u16); #endif //GUARD_BATTLE_DOME_CARDS_H diff --git a/include/text.h b/include/text.h index 2bda590c1..e127f103a 100644 --- a/include/text.h +++ b/include/text.h @@ -161,7 +161,7 @@ extern const struct FontInfo *gFonts; struct GlyphWidthFunc { u32 font_id; - u32 (*func)(u16 glyphId, bool32 isJapanese); + s32 (*func)(u16 glyphId, bool32 isJapanese); }; struct KeypadIcon @@ -224,9 +224,9 @@ bool16 TextPrinterWaitWithDownArrow(struct TextPrinter *textPrinter); bool16 TextPrinterWait(struct TextPrinter *textPrinter); void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *counter, u8 *yCoordIndex); u16 RenderText(struct TextPrinter *textPrinter); -u32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing); -u32 (*GetFontWidthFunc(u8 glyphId))(u16, bool32); -u32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing); +s32 GetStringWidthFixedWidthFont(const u8 *str, u8 fontId, u8 letterSpacing); +s32 (*GetFontWidthFunc(u8 glyphId))(u16, bool32); +s32 GetStringWidth(u8 fontId, const u8 *str, s16 letterSpacing); u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str); u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y); u8 GetKeypadIconTileOffset(u8 keypadIconId); @@ -236,19 +236,19 @@ void SetDefaultFontsPointer(void); u8 GetFontAttribute(u8 fontId, u8 attributeId); u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension); void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont0(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont0(u16 glyphId, bool32 isJapanese); void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont7(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont7(u16 glyphId, bool32 isJapanese); void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont8(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont8(u16 glyphId, bool32 isJapanese); void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont2(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont2(u16 glyphId, bool32 isJapanese); void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont1(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont1(u16 glyphId, bool32 isJapanese); void DecompressGlyphFont9(u16 glyphId); -u32 GetGlyphWidthFont3(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont4(u16 glyphId, bool32 isJapanese); -u32 GetGlyphWidthFont5(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont3(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont4(u16 glyphId, bool32 isJapanese); +s32 GetGlyphWidthFont5(u16 glyphId, bool32 isJapanese); void sub_80062B0(struct Sprite *sprite); #endif // GUARD_TEXT_H -- cgit v1.2.3 From 82c7bd49aa07293c840254bccc144836057f2c65 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 25 Nov 2018 21:58:52 -0500 Subject: through sub_812DB64 --- include/list_menu.h | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) (limited to 'include') diff --git a/include/list_menu.h b/include/list_menu.h index 89adeaba0..fc829940e 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -18,22 +18,23 @@ struct ListMenu; struct ListMenuTemplate { const struct ListMenuItem *items; - void (* unk_04)(u32, bool8, struct ListMenu *); - void (* unk_08)(u8, s32, u8); + void (* moveCursorFunc)(s32 itemIndex, bool8 onInit, struct ListMenu *list); + void (* itemPrintFunc)(u8 windowId, s32 itemId, u8 y); u16 totalItems; u16 maxShowed; - u8 unk_10; - u8 unk_11; - u8 unk_12; - u8 cursor_Y; - u32 upText_Y:4; // x1, x2, x4, x8 = xF - u32 cursorColor:4; // x10, x20, x40, x80 = xF0 - u32 fillColor:4; // x100, x200, x400, x800 = xF00 - u32 cursorShadowColor:4; // x1000, x2000, x4000, x8000 = xF000 - u32 unk_16_0:1; // x10000 - u32 spaceBetweenItems:6; // x20000, x40000, x80000, x100000, x200000, x400000 = x7E0000 - u32 unk_16_7:1; // x800000 - u32 unk_17_0:6; // x1000000, x2000000, x4000000, x8000000, x10000000, x20000000 = x3F000000 + u8 windowId; + u8 header_X; + u8 item_X; + u8 cursor_X; + u8 upText_Y:4; // x1, x2, x4, x8 = xF + u8 cursorPal:4; // x10, x20, x40, x80 = xF0 + u8 fillValue:4; // x1, x2, x4, x8 = xF + u8 cursorShadowPal:4; // x10, x20, x40, x80 = xF0 + u8 lettersSpacing:3; + u8 itemVerticalPadding:3; + u8 scrollMultiple:2; // x40, x80 = xC0 + u8 fontId:6; // x1, x2, x4, x8, x10, x20 = x3F + u8 cursorKind:2; // x40, x80 }; struct ListMenu { -- cgit v1.2.3 From eb8dface178fed90656ea7a7726b6835ee5a1229 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 10:26:12 -0500 Subject: through sub_812E064 --- include/menu_indicators.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'include') diff --git a/include/menu_indicators.h b/include/menu_indicators.h index 2350e2502..f88fd5549 100644 --- a/include/menu_indicators.h +++ b/include/menu_indicators.h @@ -7,8 +7,17 @@ // Exported RAM declarations +struct ScrollIndicatorArrowPairTemplate +{ + u8 filler_00[6]; + u16 unk_06; + u16 unk_08; + u8 filler_0a[6]; +}; + // Exported ROM declarations u8 AddScrollIndicatorArrowPairParametrized(u8, u8, u8, u8, s32, u16, u16, u16 *); +u8 AddScrollIndicatorArrowPair(const struct ScrollIndicatorArrowPairTemplate * template, u16 * a1); void RemoveScrollIndicatorArrowPair(u8); #endif //GUARD_MENU_INDICATORS_H -- cgit v1.2.3 From f75453388c6f9e1123915707f6d69c3373f761f6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 10:54:41 -0500 Subject: Finish decomp of fame_checker(.text) --- include/list_menu.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/list_menu.h b/include/list_menu.h index fc829940e..8834e5215 100644 --- a/include/list_menu.h +++ b/include/list_menu.h @@ -56,5 +56,6 @@ s32 ListMenuHandleInput(u8 id); void get_coro_args_x18_x1A(u8 a0, u16 *a1, u16 *a2); void sub_81AE6C8(u8 a0, u16 *a1, u16 *a2); void sub_810713C(u8, u8, u8); +u16 ListMenuGetYCoordForPrintingArrowCursor(u8); #endif //GUARD_LIST_MENU_H -- cgit v1.2.3 From ae8b4043c1690d6b3cb62f89372c7f7e6d45348b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 12:34:22 -0500 Subject: More data decomp --- include/event_scripts.h | 132 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index ebfdb4fe3..28106d9d4 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -381,4 +381,136 @@ extern const u8 gUnknown_84178DA[]; extern const u8 gUnknown_81C137C[]; extern const u8 gUnknown_81C13D6[]; extern const u8 gUnknown_81C1429[]; + +// fame_checker + +extern const u8 gUnknown_81AD106[]; +extern const u8 gUnknown_81AD145[]; +extern const u8 gUnknown_81AD1BB[]; +extern const u8 gUnknown_81AD258[]; +extern const u8 gUnknown_81AD2B9[]; +extern const u8 gUnknown_81AD377[]; +extern const u8 gUnknown_81AD40C[]; +extern const u8 gUnknown_81AD4AE[]; +extern const u8 gUnknown_81AD516[]; +extern const u8 gUnknown_81AD5A7[]; +extern const u8 gUnknown_81AD608[]; +extern const u8 gUnknown_81AD69F[]; +extern const u8 gUnknown_81AD705[]; +extern const u8 gUnknown_81AD771[]; +extern const u8 gUnknown_81AD840[]; +extern const u8 gUnknown_81AD908[]; +extern const u8 gUnknown_81AD99A[]; +extern const u8 gUnknown_81ADA27[]; +extern const u8 gUnknown_81ADA91[]; +extern const u8 gUnknown_81ADAF6[]; +extern const u8 gUnknown_81ADB5A[]; +extern const u8 gUnknown_81ADBD9[]; +extern const u8 gUnknown_81ADC72[]; +extern const u8 gUnknown_81ADCEB[]; +extern const u8 gUnknown_81ADD3C[]; +extern const u8 gUnknown_81ADDA7[]; +extern const u8 gUnknown_81ADE0B[]; +extern const u8 gUnknown_81ADE82[]; +extern const u8 gUnknown_81ADEEC[]; +extern const u8 gUnknown_81ADF6A[]; +extern const u8 gUnknown_81AE009[]; +extern const u8 gUnknown_81AE072[]; +extern const u8 gUnknown_81AE0F3[]; +extern const u8 gUnknown_81AE15B[]; +extern const u8 gUnknown_81AE1E5[]; +extern const u8 gUnknown_81AE247[]; +extern const u8 gUnknown_81AE2B6[]; +extern const u8 gUnknown_81AE31D[]; +extern const u8 gUnknown_81AE37D[]; +extern const u8 gUnknown_81AE407[]; +extern const u8 gUnknown_81AE48D[]; +extern const u8 gUnknown_81AE51B[]; +extern const u8 gUnknown_81AE5E8[]; +extern const u8 gUnknown_81AE656[]; +extern const u8 gUnknown_81AE6D7[]; +extern const u8 gUnknown_81AE762[]; +extern const u8 gUnknown_81AE7CB[]; +extern const u8 gUnknown_81AE841[]; +extern const u8 gUnknown_81AE89E[]; +extern const u8 gUnknown_81AE90A[]; +extern const u8 gUnknown_81AE990[]; +extern const u8 gUnknown_81AEA59[]; +extern const u8 gUnknown_81AEAEE[]; +extern const u8 gUnknown_81AEB69[]; +extern const u8 gUnknown_81AEBDF[]; +extern const u8 gUnknown_81AEC28[]; +extern const u8 gUnknown_81AEC82[]; +extern const u8 gUnknown_81AED27[]; +extern const u8 gUnknown_81AEDAA[]; +extern const u8 gUnknown_81AEE51[]; +extern const u8 gUnknown_81AEF25[]; +extern const u8 gUnknown_81AEF6C[]; +extern const u8 gUnknown_81AEFC6[]; +extern const u8 gUnknown_81AF04C[]; +extern const u8 gUnknown_81AF0F0[]; +extern const u8 gUnknown_81AF19A[]; +extern const u8 gUnknown_81AF200[]; +extern const u8 gUnknown_81AF248[]; +extern const u8 gUnknown_81AF2B7[]; +extern const u8 gUnknown_81AF34E[]; +extern const u8 gUnknown_81AF3BE[]; +extern const u8 gUnknown_81AF47C[]; +extern const u8 gUnknown_81AF4FD[]; +extern const u8 gUnknown_81AF567[]; +extern const u8 gUnknown_81AF641[]; +extern const u8 gUnknown_81AF6BA[]; +extern const u8 gUnknown_81AF758[]; +extern const u8 gUnknown_81AF7CB[]; +extern const u8 gUnknown_81AF83E[]; +extern const u8 gUnknown_81AF8CA[]; +extern const u8 gUnknown_81AF929[]; +extern const u8 gUnknown_81AF998[]; +extern const u8 gUnknown_81AFA20[]; +extern const u8 gUnknown_81AFAB9[]; +extern const u8 gUnknown_81AFB0C[]; +extern const u8 gUnknown_81AFB76[]; +extern const u8 gUnknown_81AFC38[]; +extern const u8 gUnknown_81AFCE9[]; +extern const u8 gUnknown_81AFD49[]; +extern const u8 gUnknown_81AFDC4[]; +extern const u8 gUnknown_81AFE68[]; +extern const u8 gUnknown_81AFF23[]; +extern const u8 gUnknown_81AFFA8[]; +extern const u8 gUnknown_81B0022[]; +extern const u8 gUnknown_81B00A6[]; +extern const u8 gUnknown_81B0106[]; +extern const u8 gUnknown_81B0188[]; +extern const u8 gUnknown_81B0198[]; +extern const u8 gUnknown_81B0251[]; +extern const u8 gUnknown_81B025D[]; +extern const u8 gUnknown_81B030F[]; +extern const u8 gUnknown_81B031B[]; +extern const u8 gUnknown_81B03B3[]; +extern const u8 gUnknown_81B03BF[]; +extern const u8 gUnknown_81B0446[]; +extern const u8 gUnknown_81B0456[]; +extern const u8 gUnknown_81B0504[]; +extern const u8 gUnknown_81B0510[]; +extern const u8 gUnknown_81B05C2[]; +extern const u8 gUnknown_81B05CD[]; +extern const u8 gUnknown_81B0667[]; +extern const u8 gUnknown_81B0675[]; +extern const u8 gUnknown_81B06FB[]; +extern const u8 gUnknown_81B0708[]; +extern const u8 gUnknown_81B079F[]; +extern const u8 gUnknown_81B07AD[]; +extern const u8 gUnknown_81B0845[]; +extern const u8 gUnknown_81B0851[]; +extern const u8 gUnknown_81B08EE[]; +extern const u8 gUnknown_81B08FB[]; +extern const u8 gUnknown_81B097F[]; +extern const u8 gUnknown_81B098B[]; +extern const u8 gUnknown_81B0A45[]; +extern const u8 gUnknown_81B0A50[]; +extern const u8 gUnknown_81B0AFF[]; +extern const u8 gUnknown_81B0B0E[]; +extern const u8 gUnknown_81B0BA6[]; +extern const u8 gUnknown_81B0BB5[]; + #endif //GUARD_EVENT_SCRIPTS_H -- cgit v1.2.3 From 6fb78b0885d4dacf83df09eb48bb97d3c75b6680 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 12:51:56 -0500 Subject: more text dism --- include/event_scripts.h | 96 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index 28106d9d4..2aec4a406 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -512,5 +512,101 @@ extern const u8 gUnknown_81B0AFF[]; extern const u8 gUnknown_81B0B0E[]; extern const u8 gUnknown_81B0BA6[]; extern const u8 gUnknown_81B0BB5[]; +extern const u8 gUnknown_81B0C45[]; +extern const u8 gUnknown_81B0C51[]; +extern const u8 gUnknown_81B0C5E[]; +extern const u8 gUnknown_81B0C6B[]; +extern const u8 gUnknown_81B0C79[]; +extern const u8 gUnknown_81B0C88[]; +extern const u8 gUnknown_81B0C95[]; +extern const u8 gUnknown_81B0CA2[]; +extern const u8 gUnknown_81B0CB1[]; +extern const u8 gUnknown_81B0CC1[]; +extern const u8 gUnknown_81B0CCF[]; +extern const u8 gUnknown_81B0CDF[]; +extern const u8 gUnknown_81B0CEB[]; +extern const u8 gUnknown_81B0CF7[]; +extern const u8 gUnknown_81B0D02[]; +extern const u8 gUnknown_81B0D0E[]; +extern const u8 gUnknown_81B0D16[]; +extern const u8 gUnknown_81B0D1F[]; +extern const u8 gUnknown_81B0D2D[]; +extern const u8 gUnknown_81B0D3B[]; +extern const u8 gUnknown_81B0D48[]; +extern const u8 gUnknown_81B0D55[]; +extern const u8 gUnknown_81B0D65[]; +extern const u8 gUnknown_81B0D73[]; +extern const u8 gUnknown_81B0D81[]; +extern const u8 gUnknown_81B0D90[]; +extern const u8 gUnknown_81B0D9E[]; +extern const u8 gUnknown_81B0DAC[]; +extern const u8 gUnknown_81B0DBA[]; +extern const u8 gUnknown_81B0DC8[]; +extern const u8 gUnknown_81B0DD7[]; +extern const u8 gUnknown_81B0DE4[]; +extern const u8 gUnknown_81B0DF0[]; +extern const u8 gUnknown_81B0DFC[]; +extern const u8 gUnknown_81B0E08[]; +extern const u8 gUnknown_81B0E14[]; +extern const u8 gUnknown_81B0E24[]; +extern const u8 gUnknown_81B0E31[]; +extern const u8 gUnknown_81B0E3D[]; +extern const u8 gUnknown_81B0E49[]; +extern const u8 gUnknown_81B0E56[]; +extern const u8 gUnknown_81B0E63[]; +extern const u8 gUnknown_81B0E6F[]; +extern const u8 gUnknown_81B0E7C[]; +extern const u8 gUnknown_81B0E89[]; +extern const u8 gUnknown_81B0E95[]; +extern const u8 gUnknown_81B0EA1[]; +extern const u8 gUnknown_81B0EAE[]; +extern const u8 gUnknown_81B0EBA[]; +extern const u8 gUnknown_81B0ECA[]; +extern const u8 gUnknown_81B0ED7[]; +extern const u8 gUnknown_81B0EE4[]; +extern const u8 gUnknown_81B0EF4[]; +extern const u8 gUnknown_81B0F01[]; +extern const u8 gUnknown_81B0F11[]; +extern const u8 gUnknown_81B0F20[]; +extern const u8 gUnknown_81B0F2F[]; +extern const u8 gUnknown_81B0F3B[]; +extern const u8 gUnknown_81B0F47[]; +extern const u8 gUnknown_81B0F53[]; +extern const u8 gUnknown_81B0F5F[]; +extern const u8 gUnknown_81B0F6E[]; +extern const u8 gUnknown_81B0F7D[]; +extern const u8 gUnknown_81B0F8A[]; +extern const u8 gUnknown_81B0F94[]; +extern const u8 gUnknown_81B0F9F[]; +extern const u8 gUnknown_81B0FAE[]; +extern const u8 gUnknown_81B0FBD[]; +extern const u8 gUnknown_81B0FCC[]; +extern const u8 gUnknown_81B0FDB[]; +extern const u8 gUnknown_81B0FE8[]; +extern const u8 gUnknown_81B0FF7[]; +extern const u8 gUnknown_81B1002[]; +extern const u8 gUnknown_81B1011[]; +extern const u8 gUnknown_81B1020[]; +extern const u8 gUnknown_81B102D[]; +extern const u8 gUnknown_81B103B[]; +extern const u8 gUnknown_81B104A[]; +extern const u8 gUnknown_81B1059[]; +extern const u8 gUnknown_81B1067[]; +extern const u8 gUnknown_81B1075[]; +extern const u8 gUnknown_81B1082[]; +extern const u8 gUnknown_81B108D[]; +extern const u8 gUnknown_81B1098[]; +extern const u8 gUnknown_81B10A3[]; +extern const u8 gUnknown_81B10B1[]; +extern const u8 gUnknown_81B10BF[]; +extern const u8 gUnknown_81B10CD[]; +extern const u8 gUnknown_81B10DB[]; +extern const u8 gUnknown_81B10E8[]; +extern const u8 gUnknown_81B10F8[]; +extern const u8 gUnknown_81B1107[]; +extern const u8 gUnknown_81B1111[]; +extern const u8 gUnknown_81B111B[]; +extern const u8 gUnknown_81B1128[]; +extern const u8 gUnknown_81B1135[]; #endif //GUARD_EVENT_SCRIPTS_H -- cgit v1.2.3 From e85ce728372d4c03deef73e41d883b04062a415a Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 12:57:24 -0500 Subject: Another text pointer table decomped --- include/event_scripts.h | 96 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index 2aec4a406..4405b831d 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -608,5 +608,101 @@ extern const u8 gUnknown_81B1111[]; extern const u8 gUnknown_81B111B[]; extern const u8 gUnknown_81B1128[]; extern const u8 gUnknown_81B1135[]; +extern const u8 gUnknown_81B1146[]; +extern const u8 gUnknown_81B114B[]; +extern const u8 gUnknown_81B1155[]; +extern const u8 gUnknown_81B115A[]; +extern const u8 gUnknown_81B116A[]; +extern const u8 gUnknown_81B1171[]; +extern const u8 gUnknown_81B1176[]; +extern const u8 gUnknown_81B117B[]; +extern const u8 gUnknown_81B1181[]; +extern const u8 gUnknown_81B1185[]; +extern const u8 gUnknown_81B1195[]; +extern const u8 gUnknown_81B119E[]; +extern const u8 gUnknown_81B11AE[]; +extern const u8 gUnknown_81B11B3[]; +extern const u8 gUnknown_81B11B9[]; +extern const u8 gUnknown_81B11C3[]; +extern const u8 gUnknown_81B11C7[]; +extern const u8 gUnknown_81B11CB[]; +extern const u8 gUnknown_81B11DB[]; +extern const u8 gUnknown_81B11E0[]; +extern const u8 gUnknown_81B11E6[]; +extern const u8 gUnknown_81B11EB[]; +extern const u8 gUnknown_81B11F5[]; +extern const u8 gUnknown_81B11FA[]; +extern const u8 gUnknown_81B120A[]; +extern const u8 gUnknown_81B120F[]; +extern const u8 gUnknown_81B1219[]; +extern const u8 gUnknown_81B1220[]; +extern const u8 gUnknown_81B1227[]; +extern const u8 gUnknown_81B122E[]; +extern const u8 gUnknown_81B123E[]; +extern const u8 gUnknown_81B1243[]; +extern const u8 gUnknown_81B1249[]; +extern const u8 gUnknown_81B124E[]; +extern const u8 gUnknown_81B1254[]; +extern const u8 gUnknown_81B125A[]; +extern const u8 gUnknown_81B126A[]; +extern const u8 gUnknown_81B126F[]; +extern const u8 gUnknown_81B1274[]; +extern const u8 gUnknown_81B1279[]; +extern const u8 gUnknown_81B1281[]; +extern const u8 gUnknown_81B1291[]; +extern const u8 gUnknown_81B1295[]; +extern const u8 gUnknown_81B129A[]; +extern const u8 gUnknown_81B12A4[]; +extern const u8 gUnknown_81B12AC[]; +extern const u8 gUnknown_81B12B4[]; +extern const u8 gUnknown_81B12C4[]; +extern const u8 gUnknown_81B12CA[]; +extern const u8 gUnknown_81B12CF[]; +extern const u8 gUnknown_81B12D6[]; +extern const u8 gUnknown_81B12DC[]; +extern const u8 gUnknown_81B12E2[]; +extern const u8 gUnknown_81B12E8[]; +extern const u8 gUnknown_81B12F8[]; +extern const u8 gUnknown_81B1300[]; +extern const u8 gUnknown_81B1308[]; +extern const u8 gUnknown_81B1310[]; +extern const u8 gUnknown_81B1320[]; +extern const u8 gUnknown_81B132C[]; +extern const u8 gUnknown_81B1335[]; +extern const u8 gUnknown_81B133B[]; +extern const u8 gUnknown_81B1341[]; +extern const u8 gUnknown_81B1351[]; +extern const u8 gUnknown_81B1359[]; +extern const u8 gUnknown_81B135F[]; +extern const u8 gUnknown_81B1367[]; +extern const u8 gUnknown_81B136E[]; +extern const u8 gUnknown_81B1376[]; +extern const u8 gUnknown_81B137E[]; +extern const u8 gUnknown_81B138E[]; +extern const u8 gUnknown_81B1395[]; +extern const u8 gUnknown_81B139E[]; +extern const u8 gUnknown_81B13A4[]; +extern const u8 gUnknown_81B13AA[]; +extern const u8 gUnknown_81B13B0[]; +extern const u8 gUnknown_81B13BC[]; +extern const u8 gUnknown_81B13CC[]; +extern const u8 gUnknown_81B13D6[]; +extern const u8 gUnknown_81B13D9[]; +extern const u8 gUnknown_81B13E4[]; +extern const u8 gUnknown_81B13EC[]; +extern const u8 gUnknown_81B13F2[]; +extern const u8 gUnknown_81B13F8[]; +extern const u8 gUnknown_81B13FE[]; +extern const u8 gUnknown_81B140A[]; +extern const u8 gUnknown_81B1416[]; +extern const u8 gUnknown_81B141F[]; +extern const u8 gUnknown_81B1423[]; +extern const u8 gUnknown_81B1429[]; +extern const u8 gUnknown_81B1439[]; +extern const u8 gUnknown_81B1442[]; +extern const u8 gUnknown_81B144C[]; +extern const u8 gUnknown_81B1456[]; +extern const u8 gUnknown_81B145F[]; +extern const u8 gUnknown_81B1463[]; #endif //GUARD_EVENT_SCRIPTS_H -- cgit v1.2.3 From a2b7b3ebf2f5460c4f5ab076e5dcb06935f61d25 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 15:47:50 -0500 Subject: Finish data decomp --- include/menu_indicators.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/menu_indicators.h b/include/menu_indicators.h index f88fd5549..f195ceb6d 100644 --- a/include/menu_indicators.h +++ b/include/menu_indicators.h @@ -9,10 +9,18 @@ struct ScrollIndicatorArrowPairTemplate { - u8 filler_00[6]; + u8 unk_00; + u8 unk_01; + u8 unk_02; + u8 unk_03; + u8 unk_04; + u8 unk_05; u16 unk_06; u16 unk_08; - u8 filler_0a[6]; + u16 unk_0a; + u16 unk_0c; + u16 unk_0e_0:4; + u16 unk_0e_4:12; }; // Exported ROM declarations -- cgit v1.2.3 From 9750849c69899b0faaa156f397ff63dd086ab40c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 16:47:19 -0500 Subject: Genericize PRESSED macro --- include/global.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 9fb7703cd..2b9b00d5c 100644 --- a/include/global.h +++ b/include/global.h @@ -67,7 +67,9 @@ // We suspect it was used globally. // GameFreak never ceases to amaze. // TODO: Propagate use of this macro -#define PRESSED(button) ({gMain.newKeys & (button);}) +#define TEST_BUTTON(field, button) ({(field) & (button);}) +#define PRESSED(button) TEST_BUTTON(gMain.newKeys, button) +#define PUSHED(button) TEST_BUTTON(gMain.heldKeys, button) extern u8 gStringVar1[]; extern u8 gStringVar2[]; -- cgit v1.2.3 From 69106536eb68653a47f31c7bd9f8755087ce7b43 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 18:12:17 -0500 Subject: Start documenting stuff; make objects static where possible --- include/fame_checker.h | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 include/fame_checker.h (limited to 'include') diff --git a/include/fame_checker.h b/include/fame_checker.h new file mode 100644 index 000000000..7e95a7224 --- /dev/null +++ b/include/fame_checker.h @@ -0,0 +1,9 @@ +#ifndef GUARD_FAME_CHECKER_H +#define GUARD_FAME_CHECKER_H + +#include "main.h" + +void ResetFameChecker(void); +void UseFameChecker(MainCallback savedCallback); + +#endif //GUARD_FAME_CHECKER_H -- cgit v1.2.3 From b21c50675b8b143608b39b26b53788e4807bbc9e Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 18:24:17 -0500 Subject: PRESSED-->JOY_NEW, PUSHED-->JOY_HELD --- include/global.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 2b9b00d5c..84597dba0 100644 --- a/include/global.h +++ b/include/global.h @@ -68,8 +68,8 @@ // GameFreak never ceases to amaze. // TODO: Propagate use of this macro #define TEST_BUTTON(field, button) ({(field) & (button);}) -#define PRESSED(button) TEST_BUTTON(gMain.newKeys, button) -#define PUSHED(button) TEST_BUTTON(gMain.heldKeys, button) +#define JOY_NEW(button) TEST_BUTTON(gMain.newKeys, button) +#define JOY_HELD(button) TEST_BUTTON(gMain.heldKeys, button) extern u8 gStringVar1[]; extern u8 gStringVar2[]; -- cgit v1.2.3 From 7e684b32f108bc484f3f8ba66b209d3f633e8acd Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 26 Nov 2018 22:27:19 -0500 Subject: More documentation of fame checker --- include/fame_checker.h | 19 +++++++++++++++++++ include/item_menu.h | 2 +- 2 files changed, 20 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/fame_checker.h b/include/fame_checker.h index 7e95a7224..bc653740e 100644 --- a/include/fame_checker.h +++ b/include/fame_checker.h @@ -3,6 +3,25 @@ #include "main.h" +enum { + FAMECHECKER_OAK, + FAMECHECKER_DAISY, + FAMECHECKER_BROCK, + FAMECHECKER_MISTY, + FAMECHECKER_LTSURGE, + FAMECHECKER_ERIKA, + FAMECHECKER_KOGA, + FAMECHECKER_SABRINA, + FAMECHECKER_BLAINE, + FAMECHECKER_LORELEI, + FAMECHECKER_BRUNO, + FAMECHECKER_AGATHA, + FAMECHECKER_LANCE, + FAMECHECKER_BILL, + FAMECHECKER_MRFUJI, + FAMECHECKER_GIOVANNI +}; + void ResetFameChecker(void); void UseFameChecker(MainCallback savedCallback); diff --git a/include/item_menu.h b/include/item_menu.h index 64cb2d762..2482aa51f 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -12,6 +12,6 @@ extern u16 gUnknown_203AD30; // Exported ROM declarations void sub_81AAC50(void); void sub_81AAC70(void); -void sub_8107EB8(void); +void UseFameCheckerFromMenu(void); #endif //GUARD_ITEM_MENU_H -- cgit v1.2.3 From a738e3dca5563355df0b31323a95e017ce9205d6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 27 Nov 2018 08:44:24 -0500 Subject: More documentation and enums --- include/fame_checker.h | 6 ++++++ include/global.berry.h | 2 -- include/global.fieldmap.h | 2 -- include/global.h | 4 ++-- 4 files changed, 8 insertions(+), 6 deletions(-) (limited to 'include') diff --git a/include/fame_checker.h b/include/fame_checker.h index bc653740e..fad629108 100644 --- a/include/fame_checker.h +++ b/include/fame_checker.h @@ -22,6 +22,12 @@ enum { FAMECHECKER_GIOVANNI }; +enum { + FCPICKSTATE_NO_DRAW, + FCPICKSTATE_SILHOUETTE, + FCPICKSTATE_COLORED +}; + void ResetFameChecker(void); void UseFameChecker(MainCallback savedCallback); diff --git a/include/global.berry.h b/include/global.berry.h index f9e27b186..5c8a43a02 100644 --- a/include/global.berry.h +++ b/include/global.berry.h @@ -1,8 +1,6 @@ #ifndef GUARD_GLOBAL_BERRY_H #define GUARD_GLOBAL_BERRY_H -#include "global.h" - #define BERRY_NAME_COUNT 7 #define BERRY_ITEM_EFFECT_COUNT 18 diff --git a/include/global.fieldmap.h b/include/global.fieldmap.h index 98077d8d4..ed5054b7d 100644 --- a/include/global.fieldmap.h +++ b/include/global.fieldmap.h @@ -1,8 +1,6 @@ #ifndef GUARD_GLOBAL_FIELDMAP_H #define GUARD_GLOBAL_FIELDMAP_H -#include "global.h" - #define NUM_FIELD_OBJECTS 16 enum diff --git a/include/global.h b/include/global.h index 84597dba0..d99f912ae 100644 --- a/include/global.h +++ b/include/global.h @@ -574,8 +574,8 @@ struct QuestLog struct FameCheckerSaveData { - /*3a54*/ u16 unk_0_0:2; - u16 unk_0_2:12; + /*3a54*/ u16 pickState:2; + u16 flavorTextFlags:12; u16 unk_0_E:2; }; -- cgit v1.2.3 From d2bd51c49f0654a7cb37a6aeb0f50b8b2d2470b1 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Tue, 27 Nov 2018 16:50:10 -0500 Subject: Rename most assets and functions in fame_checker --- include/event_scripts.h | 640 ++++++++++++++++++++++----------------------- include/fame_checker.h | 13 +- include/global.h | 4 +- include/new_menu_helpers.h | 2 +- 4 files changed, 336 insertions(+), 323 deletions(-) (limited to 'include') diff --git a/include/event_scripts.h b/include/event_scripts.h index 4405b831d..b909566d0 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -384,325 +384,325 @@ extern const u8 gUnknown_81C1429[]; // fame_checker -extern const u8 gUnknown_81AD106[]; -extern const u8 gUnknown_81AD145[]; -extern const u8 gUnknown_81AD1BB[]; -extern const u8 gUnknown_81AD258[]; -extern const u8 gUnknown_81AD2B9[]; -extern const u8 gUnknown_81AD377[]; -extern const u8 gUnknown_81AD40C[]; -extern const u8 gUnknown_81AD4AE[]; -extern const u8 gUnknown_81AD516[]; -extern const u8 gUnknown_81AD5A7[]; -extern const u8 gUnknown_81AD608[]; -extern const u8 gUnknown_81AD69F[]; -extern const u8 gUnknown_81AD705[]; -extern const u8 gUnknown_81AD771[]; -extern const u8 gUnknown_81AD840[]; -extern const u8 gUnknown_81AD908[]; -extern const u8 gUnknown_81AD99A[]; -extern const u8 gUnknown_81ADA27[]; -extern const u8 gUnknown_81ADA91[]; -extern const u8 gUnknown_81ADAF6[]; -extern const u8 gUnknown_81ADB5A[]; -extern const u8 gUnknown_81ADBD9[]; -extern const u8 gUnknown_81ADC72[]; -extern const u8 gUnknown_81ADCEB[]; -extern const u8 gUnknown_81ADD3C[]; -extern const u8 gUnknown_81ADDA7[]; -extern const u8 gUnknown_81ADE0B[]; -extern const u8 gUnknown_81ADE82[]; -extern const u8 gUnknown_81ADEEC[]; -extern const u8 gUnknown_81ADF6A[]; -extern const u8 gUnknown_81AE009[]; -extern const u8 gUnknown_81AE072[]; -extern const u8 gUnknown_81AE0F3[]; -extern const u8 gUnknown_81AE15B[]; -extern const u8 gUnknown_81AE1E5[]; -extern const u8 gUnknown_81AE247[]; -extern const u8 gUnknown_81AE2B6[]; -extern const u8 gUnknown_81AE31D[]; -extern const u8 gUnknown_81AE37D[]; -extern const u8 gUnknown_81AE407[]; -extern const u8 gUnknown_81AE48D[]; -extern const u8 gUnknown_81AE51B[]; -extern const u8 gUnknown_81AE5E8[]; -extern const u8 gUnknown_81AE656[]; -extern const u8 gUnknown_81AE6D7[]; -extern const u8 gUnknown_81AE762[]; -extern const u8 gUnknown_81AE7CB[]; -extern const u8 gUnknown_81AE841[]; -extern const u8 gUnknown_81AE89E[]; -extern const u8 gUnknown_81AE90A[]; -extern const u8 gUnknown_81AE990[]; -extern const u8 gUnknown_81AEA59[]; -extern const u8 gUnknown_81AEAEE[]; -extern const u8 gUnknown_81AEB69[]; -extern const u8 gUnknown_81AEBDF[]; -extern const u8 gUnknown_81AEC28[]; -extern const u8 gUnknown_81AEC82[]; -extern const u8 gUnknown_81AED27[]; -extern const u8 gUnknown_81AEDAA[]; -extern const u8 gUnknown_81AEE51[]; -extern const u8 gUnknown_81AEF25[]; -extern const u8 gUnknown_81AEF6C[]; -extern const u8 gUnknown_81AEFC6[]; -extern const u8 gUnknown_81AF04C[]; -extern const u8 gUnknown_81AF0F0[]; -extern const u8 gUnknown_81AF19A[]; -extern const u8 gUnknown_81AF200[]; -extern const u8 gUnknown_81AF248[]; -extern const u8 gUnknown_81AF2B7[]; -extern const u8 gUnknown_81AF34E[]; -extern const u8 gUnknown_81AF3BE[]; -extern const u8 gUnknown_81AF47C[]; -extern const u8 gUnknown_81AF4FD[]; -extern const u8 gUnknown_81AF567[]; -extern const u8 gUnknown_81AF641[]; -extern const u8 gUnknown_81AF6BA[]; -extern const u8 gUnknown_81AF758[]; -extern const u8 gUnknown_81AF7CB[]; -extern const u8 gUnknown_81AF83E[]; -extern const u8 gUnknown_81AF8CA[]; -extern const u8 gUnknown_81AF929[]; -extern const u8 gUnknown_81AF998[]; -extern const u8 gUnknown_81AFA20[]; -extern const u8 gUnknown_81AFAB9[]; -extern const u8 gUnknown_81AFB0C[]; -extern const u8 gUnknown_81AFB76[]; -extern const u8 gUnknown_81AFC38[]; -extern const u8 gUnknown_81AFCE9[]; -extern const u8 gUnknown_81AFD49[]; -extern const u8 gUnknown_81AFDC4[]; -extern const u8 gUnknown_81AFE68[]; -extern const u8 gUnknown_81AFF23[]; -extern const u8 gUnknown_81AFFA8[]; -extern const u8 gUnknown_81B0022[]; -extern const u8 gUnknown_81B00A6[]; -extern const u8 gUnknown_81B0106[]; -extern const u8 gUnknown_81B0188[]; -extern const u8 gUnknown_81B0198[]; -extern const u8 gUnknown_81B0251[]; -extern const u8 gUnknown_81B025D[]; -extern const u8 gUnknown_81B030F[]; -extern const u8 gUnknown_81B031B[]; -extern const u8 gUnknown_81B03B3[]; -extern const u8 gUnknown_81B03BF[]; -extern const u8 gUnknown_81B0446[]; -extern const u8 gUnknown_81B0456[]; -extern const u8 gUnknown_81B0504[]; -extern const u8 gUnknown_81B0510[]; -extern const u8 gUnknown_81B05C2[]; -extern const u8 gUnknown_81B05CD[]; -extern const u8 gUnknown_81B0667[]; -extern const u8 gUnknown_81B0675[]; -extern const u8 gUnknown_81B06FB[]; -extern const u8 gUnknown_81B0708[]; -extern const u8 gUnknown_81B079F[]; -extern const u8 gUnknown_81B07AD[]; -extern const u8 gUnknown_81B0845[]; -extern const u8 gUnknown_81B0851[]; -extern const u8 gUnknown_81B08EE[]; -extern const u8 gUnknown_81B08FB[]; -extern const u8 gUnknown_81B097F[]; -extern const u8 gUnknown_81B098B[]; -extern const u8 gUnknown_81B0A45[]; -extern const u8 gUnknown_81B0A50[]; -extern const u8 gUnknown_81B0AFF[]; -extern const u8 gUnknown_81B0B0E[]; -extern const u8 gUnknown_81B0BA6[]; -extern const u8 gUnknown_81B0BB5[]; -extern const u8 gUnknown_81B0C45[]; -extern const u8 gUnknown_81B0C51[]; -extern const u8 gUnknown_81B0C5E[]; -extern const u8 gUnknown_81B0C6B[]; -extern const u8 gUnknown_81B0C79[]; -extern const u8 gUnknown_81B0C88[]; -extern const u8 gUnknown_81B0C95[]; -extern const u8 gUnknown_81B0CA2[]; -extern const u8 gUnknown_81B0CB1[]; -extern const u8 gUnknown_81B0CC1[]; -extern const u8 gUnknown_81B0CCF[]; -extern const u8 gUnknown_81B0CDF[]; -extern const u8 gUnknown_81B0CEB[]; -extern const u8 gUnknown_81B0CF7[]; -extern const u8 gUnknown_81B0D02[]; -extern const u8 gUnknown_81B0D0E[]; -extern const u8 gUnknown_81B0D16[]; -extern const u8 gUnknown_81B0D1F[]; -extern const u8 gUnknown_81B0D2D[]; -extern const u8 gUnknown_81B0D3B[]; -extern const u8 gUnknown_81B0D48[]; -extern const u8 gUnknown_81B0D55[]; -extern const u8 gUnknown_81B0D65[]; -extern const u8 gUnknown_81B0D73[]; -extern const u8 gUnknown_81B0D81[]; -extern const u8 gUnknown_81B0D90[]; -extern const u8 gUnknown_81B0D9E[]; -extern const u8 gUnknown_81B0DAC[]; -extern const u8 gUnknown_81B0DBA[]; -extern const u8 gUnknown_81B0DC8[]; -extern const u8 gUnknown_81B0DD7[]; -extern const u8 gUnknown_81B0DE4[]; -extern const u8 gUnknown_81B0DF0[]; -extern const u8 gUnknown_81B0DFC[]; -extern const u8 gUnknown_81B0E08[]; -extern const u8 gUnknown_81B0E14[]; -extern const u8 gUnknown_81B0E24[]; -extern const u8 gUnknown_81B0E31[]; -extern const u8 gUnknown_81B0E3D[]; -extern const u8 gUnknown_81B0E49[]; -extern const u8 gUnknown_81B0E56[]; -extern const u8 gUnknown_81B0E63[]; -extern const u8 gUnknown_81B0E6F[]; -extern const u8 gUnknown_81B0E7C[]; -extern const u8 gUnknown_81B0E89[]; -extern const u8 gUnknown_81B0E95[]; -extern const u8 gUnknown_81B0EA1[]; -extern const u8 gUnknown_81B0EAE[]; -extern const u8 gUnknown_81B0EBA[]; -extern const u8 gUnknown_81B0ECA[]; -extern const u8 gUnknown_81B0ED7[]; -extern const u8 gUnknown_81B0EE4[]; -extern const u8 gUnknown_81B0EF4[]; -extern const u8 gUnknown_81B0F01[]; -extern const u8 gUnknown_81B0F11[]; -extern const u8 gUnknown_81B0F20[]; -extern const u8 gUnknown_81B0F2F[]; -extern const u8 gUnknown_81B0F3B[]; -extern const u8 gUnknown_81B0F47[]; -extern const u8 gUnknown_81B0F53[]; -extern const u8 gUnknown_81B0F5F[]; -extern const u8 gUnknown_81B0F6E[]; -extern const u8 gUnknown_81B0F7D[]; -extern const u8 gUnknown_81B0F8A[]; -extern const u8 gUnknown_81B0F94[]; -extern const u8 gUnknown_81B0F9F[]; -extern const u8 gUnknown_81B0FAE[]; -extern const u8 gUnknown_81B0FBD[]; -extern const u8 gUnknown_81B0FCC[]; -extern const u8 gUnknown_81B0FDB[]; -extern const u8 gUnknown_81B0FE8[]; -extern const u8 gUnknown_81B0FF7[]; -extern const u8 gUnknown_81B1002[]; -extern const u8 gUnknown_81B1011[]; -extern const u8 gUnknown_81B1020[]; -extern const u8 gUnknown_81B102D[]; -extern const u8 gUnknown_81B103B[]; -extern const u8 gUnknown_81B104A[]; -extern const u8 gUnknown_81B1059[]; -extern const u8 gUnknown_81B1067[]; -extern const u8 gUnknown_81B1075[]; -extern const u8 gUnknown_81B1082[]; -extern const u8 gUnknown_81B108D[]; -extern const u8 gUnknown_81B1098[]; -extern const u8 gUnknown_81B10A3[]; -extern const u8 gUnknown_81B10B1[]; -extern const u8 gUnknown_81B10BF[]; -extern const u8 gUnknown_81B10CD[]; -extern const u8 gUnknown_81B10DB[]; -extern const u8 gUnknown_81B10E8[]; -extern const u8 gUnknown_81B10F8[]; -extern const u8 gUnknown_81B1107[]; -extern const u8 gUnknown_81B1111[]; -extern const u8 gUnknown_81B111B[]; -extern const u8 gUnknown_81B1128[]; -extern const u8 gUnknown_81B1135[]; -extern const u8 gUnknown_81B1146[]; -extern const u8 gUnknown_81B114B[]; -extern const u8 gUnknown_81B1155[]; -extern const u8 gUnknown_81B115A[]; -extern const u8 gUnknown_81B116A[]; -extern const u8 gUnknown_81B1171[]; -extern const u8 gUnknown_81B1176[]; -extern const u8 gUnknown_81B117B[]; -extern const u8 gUnknown_81B1181[]; -extern const u8 gUnknown_81B1185[]; -extern const u8 gUnknown_81B1195[]; -extern const u8 gUnknown_81B119E[]; -extern const u8 gUnknown_81B11AE[]; -extern const u8 gUnknown_81B11B3[]; -extern const u8 gUnknown_81B11B9[]; -extern const u8 gUnknown_81B11C3[]; -extern const u8 gUnknown_81B11C7[]; -extern const u8 gUnknown_81B11CB[]; -extern const u8 gUnknown_81B11DB[]; -extern const u8 gUnknown_81B11E0[]; -extern const u8 gUnknown_81B11E6[]; -extern const u8 gUnknown_81B11EB[]; -extern const u8 gUnknown_81B11F5[]; -extern const u8 gUnknown_81B11FA[]; -extern const u8 gUnknown_81B120A[]; -extern const u8 gUnknown_81B120F[]; -extern const u8 gUnknown_81B1219[]; -extern const u8 gUnknown_81B1220[]; -extern const u8 gUnknown_81B1227[]; -extern const u8 gUnknown_81B122E[]; -extern const u8 gUnknown_81B123E[]; -extern const u8 gUnknown_81B1243[]; -extern const u8 gUnknown_81B1249[]; -extern const u8 gUnknown_81B124E[]; -extern const u8 gUnknown_81B1254[]; -extern const u8 gUnknown_81B125A[]; -extern const u8 gUnknown_81B126A[]; -extern const u8 gUnknown_81B126F[]; -extern const u8 gUnknown_81B1274[]; -extern const u8 gUnknown_81B1279[]; -extern const u8 gUnknown_81B1281[]; -extern const u8 gUnknown_81B1291[]; -extern const u8 gUnknown_81B1295[]; -extern const u8 gUnknown_81B129A[]; -extern const u8 gUnknown_81B12A4[]; -extern const u8 gUnknown_81B12AC[]; -extern const u8 gUnknown_81B12B4[]; -extern const u8 gUnknown_81B12C4[]; -extern const u8 gUnknown_81B12CA[]; -extern const u8 gUnknown_81B12CF[]; -extern const u8 gUnknown_81B12D6[]; -extern const u8 gUnknown_81B12DC[]; -extern const u8 gUnknown_81B12E2[]; -extern const u8 gUnknown_81B12E8[]; -extern const u8 gUnknown_81B12F8[]; -extern const u8 gUnknown_81B1300[]; -extern const u8 gUnknown_81B1308[]; -extern const u8 gUnknown_81B1310[]; -extern const u8 gUnknown_81B1320[]; -extern const u8 gUnknown_81B132C[]; -extern const u8 gUnknown_81B1335[]; -extern const u8 gUnknown_81B133B[]; -extern const u8 gUnknown_81B1341[]; -extern const u8 gUnknown_81B1351[]; -extern const u8 gUnknown_81B1359[]; -extern const u8 gUnknown_81B135F[]; -extern const u8 gUnknown_81B1367[]; -extern const u8 gUnknown_81B136E[]; -extern const u8 gUnknown_81B1376[]; -extern const u8 gUnknown_81B137E[]; -extern const u8 gUnknown_81B138E[]; -extern const u8 gUnknown_81B1395[]; -extern const u8 gUnknown_81B139E[]; -extern const u8 gUnknown_81B13A4[]; -extern const u8 gUnknown_81B13AA[]; -extern const u8 gUnknown_81B13B0[]; -extern const u8 gUnknown_81B13BC[]; -extern const u8 gUnknown_81B13CC[]; -extern const u8 gUnknown_81B13D6[]; -extern const u8 gUnknown_81B13D9[]; -extern const u8 gUnknown_81B13E4[]; -extern const u8 gUnknown_81B13EC[]; -extern const u8 gUnknown_81B13F2[]; -extern const u8 gUnknown_81B13F8[]; -extern const u8 gUnknown_81B13FE[]; -extern const u8 gUnknown_81B140A[]; -extern const u8 gUnknown_81B1416[]; -extern const u8 gUnknown_81B141F[]; -extern const u8 gUnknown_81B1423[]; -extern const u8 gUnknown_81B1429[]; -extern const u8 gUnknown_81B1439[]; -extern const u8 gUnknown_81B1442[]; -extern const u8 gUnknown_81B144C[]; -extern const u8 gUnknown_81B1456[]; -extern const u8 gUnknown_81B145F[]; -extern const u8 gUnknown_81B1463[]; +extern const u8 gFameCheckerFlavorText_ProfOak0[]; +extern const u8 gFameCheckerFlavorText_ProfOak1[]; +extern const u8 gFameCheckerFlavorText_ProfOak2[]; +extern const u8 gFameCheckerFlavorText_ProfOak3[]; +extern const u8 gFameCheckerFlavorText_ProfOak4[]; +extern const u8 gFameCheckerFlavorText_ProfOak5[]; +extern const u8 gFameCheckerFlavorText_Daisy0[]; +extern const u8 gFameCheckerFlavorText_Daisy1[]; +extern const u8 gFameCheckerFlavorText_Daisy2[]; +extern const u8 gFameCheckerFlavorText_Daisy3[]; +extern const u8 gFameCheckerFlavorText_Daisy4[]; +extern const u8 gFameCheckerFlavorText_Daisy5[]; +extern const u8 gFameCheckerFlavorText_Brock0[]; +extern const u8 gFameCheckerFlavorText_Brock1[]; +extern const u8 gFameCheckerFlavorText_Brock2[]; +extern const u8 gFameCheckerFlavorText_Brock3[]; +extern const u8 gFameCheckerFlavorText_Brock4[]; +extern const u8 gFameCheckerFlavorText_Brock5[]; +extern const u8 gFameCheckerFlavorText_Misty0[]; +extern const u8 gFameCheckerFlavorText_Misty1[]; +extern const u8 gFameCheckerFlavorText_Misty2[]; +extern const u8 gFameCheckerFlavorText_Misty3[]; +extern const u8 gFameCheckerFlavorText_Misty4[]; +extern const u8 gFameCheckerFlavorText_Misty5[]; +extern const u8 gFameCheckerFlavorText_LtSurge0[]; +extern const u8 gFameCheckerFlavorText_LtSurge1[]; +extern const u8 gFameCheckerFlavorText_LtSurge2[]; +extern const u8 gFameCheckerFlavorText_LtSurge3[]; +extern const u8 gFameCheckerFlavorText_LtSurge4[]; +extern const u8 gFameCheckerFlavorText_LtSurge5[]; +extern const u8 gFameCheckerFlavorText_Erika0[]; +extern const u8 gFameCheckerFlavorText_Erika1[]; +extern const u8 gFameCheckerFlavorText_Erika2[]; +extern const u8 gFameCheckerFlavorText_Erika3[]; +extern const u8 gFameCheckerFlavorText_Erika4[]; +extern const u8 gFameCheckerFlavorText_Erika5[]; +extern const u8 gFameCheckerFlavorText_Koga0[]; +extern const u8 gFameCheckerFlavorText_Koga1[]; +extern const u8 gFameCheckerFlavorText_Koga2[]; +extern const u8 gFameCheckerFlavorText_Koga3[]; +extern const u8 gFameCheckerFlavorText_Koga4[]; +extern const u8 gFameCheckerFlavorText_Koga5[]; +extern const u8 gFameCheckerFlavorText_Sabrina0[]; +extern const u8 gFameCheckerFlavorText_Sabrina1[]; +extern const u8 gFameCheckerFlavorText_Sabrina2[]; +extern const u8 gFameCheckerFlavorText_Sabrina3[]; +extern const u8 gFameCheckerFlavorText_Sabrina4[]; +extern const u8 gFameCheckerFlavorText_Sabrina5[]; +extern const u8 gFameCheckerFlavorText_Blaine0[]; +extern const u8 gFameCheckerFlavorText_Blaine1[]; +extern const u8 gFameCheckerFlavorText_Blaine2[]; +extern const u8 gFameCheckerFlavorText_Blaine3[]; +extern const u8 gFameCheckerFlavorText_Blaine4[]; +extern const u8 gFameCheckerFlavorText_Blaine5[]; +extern const u8 gFameCheckerFlavorText_Lorelei0[]; +extern const u8 gFameCheckerFlavorText_Lorelei1[]; +extern const u8 gFameCheckerFlavorText_Lorelei2[]; +extern const u8 gFameCheckerFlavorText_Lorelei3[]; +extern const u8 gFameCheckerFlavorText_Lorelei4[]; +extern const u8 gFameCheckerFlavorText_Lorelei5[]; +extern const u8 gFameCheckerFlavorText_Bruno0[]; +extern const u8 gFameCheckerFlavorText_Bruno1[]; +extern const u8 gFameCheckerFlavorText_Bruno2[]; +extern const u8 gFameCheckerFlavorText_Bruno3[]; +extern const u8 gFameCheckerFlavorText_Bruno4[]; +extern const u8 gFameCheckerFlavorText_Bruno5[]; +extern const u8 gFameCheckerFlavorText_Agatha0[]; +extern const u8 gFameCheckerFlavorText_Agatha1[]; +extern const u8 gFameCheckerFlavorText_Agatha2[]; +extern const u8 gFameCheckerFlavorText_Agatha3[]; +extern const u8 gFameCheckerFlavorText_Agatha4[]; +extern const u8 gFameCheckerFlavorText_Agatha5[]; +extern const u8 gFameCheckerFlavorText_Lance0[]; +extern const u8 gFameCheckerFlavorText_Lance1[]; +extern const u8 gFameCheckerFlavorText_Lance2[]; +extern const u8 gFameCheckerFlavorText_Lance3[]; +extern const u8 gFameCheckerFlavorText_Lance4[]; +extern const u8 gFameCheckerFlavorText_Lance5[]; +extern const u8 gFameCheckerFlavorText_Bill0[]; +extern const u8 gFameCheckerFlavorText_Bill1[]; +extern const u8 gFameCheckerFlavorText_Bill2[]; +extern const u8 gFameCheckerFlavorText_Bill3[]; +extern const u8 gFameCheckerFlavorText_Bill4[]; +extern const u8 gFameCheckerFlavorText_Bill5[]; +extern const u8 gFameCheckerFlavorText_MrFuji0[]; +extern const u8 gFameCheckerFlavorText_MrFuji1[]; +extern const u8 gFameCheckerFlavorText_MrFuji2[]; +extern const u8 gFameCheckerFlavorText_MrFuji3[]; +extern const u8 gFameCheckerFlavorText_MrFuji4[]; +extern const u8 gFameCheckerFlavorText_MrFuji5[]; +extern const u8 gFameCheckerFlavorText_Giovanni0[]; +extern const u8 gFameCheckerFlavorText_Giovanni1[]; +extern const u8 gFameCheckerFlavorText_Giovanni2[]; +extern const u8 gFameCheckerFlavorText_Giovanni3[]; +extern const u8 gFameCheckerFlavorText_Giovanni4[]; +extern const u8 gFameCheckerFlavorText_Giovanni5[]; +extern const u8 gFameCheckerPersonName_ProfOak[]; +extern const u8 gFameCheckerPersonQuote_ProfOak[]; +extern const u8 gFameCheckerPersonName_Daisy[]; +extern const u8 gFameCheckerPersonQuote_Daisy[]; +extern const u8 gFameCheckerPersonName_Brock[]; +extern const u8 gFameCheckerPersonQuote_Brock[]; +extern const u8 gFameCheckerPersonName_Misty[]; +extern const u8 gFameCheckerPersonQuote_Misty[]; +extern const u8 gFameCheckerPersonName_LtSurge[]; +extern const u8 gFameCheckerPersonQuote_LtSurge[]; +extern const u8 gFameCheckerPersonName_Erika[]; +extern const u8 gFameCheckerPersonQuote_Erika[]; +extern const u8 gFameCheckerPersonName_Koga[]; +extern const u8 gFameCheckerPersonQuote_Koga[]; +extern const u8 gFameCheckerPersonName_Sabrina[]; +extern const u8 gFameCheckerPersonQuote_Sabrina[]; +extern const u8 gFameCheckerPersonName_Blaine[]; +extern const u8 gFameCheckerPersonQuote_Blaine[]; +extern const u8 gFameCheckerPersonName_Lorelei[]; +extern const u8 gFameCheckerPersonQuote_Lorelei[]; +extern const u8 gFameCheckerPersonName_Bruno[]; +extern const u8 gFameCheckerPersonQuote_Bruno[]; +extern const u8 gFameCheckerPersonName_Agatha[]; +extern const u8 gFameCheckerPersonQuote_Agatha[]; +extern const u8 gFameCheckerPersonName_Lance[]; +extern const u8 gFameCheckerPersonQuote_Lance[]; +extern const u8 gFameCheckerPersonName_Bill[]; +extern const u8 gFameCheckerPersonQuote_Bill[]; +extern const u8 gFameCheckerPersonName_MrFuji[]; +extern const u8 gFameCheckerPersonQuote_MrFuji[]; +extern const u8 gFameCheckerPersonName_Giovanni[]; +extern const u8 gFameCheckerPersonQuote_Giovanni[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_ProfOak5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Daisy5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Brock5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Misty5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_LtSurge5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Erika5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Koga5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Sabrina5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Blaine5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lorelei5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bruno5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Agatha5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Lance5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Bill5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_MrFuji5[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni0[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni1[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni2[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni3[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni4[]; +extern const u8 gFameCheckerFlavorTextOriginLocation_Giovanni5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_ProfOak5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Daisy5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Brock5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Misty5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_LtSurge5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Erika5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Koga5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Sabrina5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Blaine5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lorelei5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bruno5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Agatha5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Lance5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Bill5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_MrFuji5[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni0[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni1[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni2[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni3[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni4[]; +extern const u8 gFameCheckerFlavorTextOriginObjectName_Giovanni5[]; #endif //GUARD_EVENT_SCRIPTS_H diff --git a/include/fame_checker.h b/include/fame_checker.h index fad629108..2849eef09 100644 --- a/include/fame_checker.h +++ b/include/fame_checker.h @@ -19,7 +19,8 @@ enum { FAMECHECKER_LANCE, FAMECHECKER_BILL, FAMECHECKER_MRFUJI, - FAMECHECKER_GIOVANNI + FAMECHECKER_GIOVANNI, + NUM_FAMECHECKER_PERSONS }; enum { @@ -28,7 +29,17 @@ enum { FCPICKSTATE_COLORED }; +enum { + FCWINDOWID_LIST, + FCWINDOWID_UIHELP, + FCWINDOWID_MSGBOX, + FCWINDOWID_ICONDESC +}; + void ResetFameChecker(void); +void FullyUnlockFameChecker(void); void UseFameChecker(MainCallback savedCallback); +void SetFlavorTextFlagFromSpecialVars(void); +void UpdatePickStateFromSpecialVar8005(void); #endif //GUARD_FAME_CHECKER_H diff --git a/include/global.h b/include/global.h index d99f912ae..b81b29381 100644 --- a/include/global.h +++ b/include/global.h @@ -572,6 +572,8 @@ struct QuestLog /*0x0668*/ u16 end[0]; }; +#include "fame_checker.h" + struct FameCheckerSaveData { /*3a54*/ u16 pickState:2; @@ -643,7 +645,7 @@ struct SaveBlock1 /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; /*0x3A48*/ u8 filler_3a48[4]; /*0x3A4C*/ u8 rivalName[PLAYER_NAME_LENGTH]; - /*0x3A54*/ struct FameCheckerSaveData fameChecker[16]; + /*0x3A54*/ struct FameCheckerSaveData fameChecker[NUM_FAMECHECKER_PERSONS]; /*0x3A94*/ u8 filler3A94[0x2A4]; u32 unkArray[4][3]; }; diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h index 2ff20eb39..2a68a35e6 100644 --- a/include/new_menu_helpers.h +++ b/include/new_menu_helpers.h @@ -18,6 +18,6 @@ u8 GetPlayerTextSpeed(void); void sub_80F6F54(u8, u8); u8 sub_80F78A8(void); void sub_80F6E9C(void); -void sub_80F6EE4(u8, u8); +void sub_80F6EE4(u8 windowId, bool8 transfer); #endif // GUARD_NEW_MENU_HELPERS_H -- cgit v1.2.3 From 66c7fc0d701ef5211114fdbdaa9588007beed3f2 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 08:42:21 -0500 Subject: All functions and assets in fame_checker are named --- include/fame_checker.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include') diff --git a/include/fame_checker.h b/include/fame_checker.h index 2849eef09..257431d8b 100644 --- a/include/fame_checker.h +++ b/include/fame_checker.h @@ -36,6 +36,9 @@ enum { FCWINDOWID_ICONDESC }; +extern struct ListMenuTemplate gFameChecker_ListMenuTemplate; +extern u8 gIconDescriptionBoxIsOpen; + void ResetFameChecker(void); void FullyUnlockFameChecker(void); void UseFameChecker(MainCallback savedCallback); -- cgit v1.2.3 From 144027e4fad045d41afea0dfc8bd2bed27a64e6d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 10:50:41 -0500 Subject: Dump another fame checker tilemap --- include/graphics.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/graphics.h b/include/graphics.h index c5544428e..d249ece10 100644 --- a/include/graphics.h +++ b/include/graphics.h @@ -145,9 +145,9 @@ extern const u16 gUnknown_08DDAFE0[]; // fame_checker -extern const u16 gUnknown_8E9F220[0x30]; -extern const u16 gUnknown_8E9F260[0xa50]; -extern const u16 gUnknown_8EA0700[0x400]; -extern const u16 gUnknown_8EA0F00[0x400]; +extern const u16 gFameCheckerBgPals[0x30]; +extern const u16 gFameCheckerBgTiles[0xa50]; +extern const u16 gFameCheckerBg3Tilemap[0x400]; +extern const u16 gFameCheckerBg2Tilemap[0x400]; #endif //GUARD_GRAPHICS_H -- cgit v1.2.3 From 013fcf86fbeccf8d527e43a4f5aaf44402daba48 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 13:49:46 -0500 Subject: Fix spacing in globah.h --- include/global.h | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index b81b29381..30be4fd9f 100644 --- a/include/global.h +++ b/include/global.h @@ -616,8 +616,8 @@ struct SaveBlock1 /*0x0638*/ u8 trainerRematchStepCounter; u8 filler_639; /*0x063A*/ u8 trainerRematches[100]; - /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; - /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; + /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; + /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; /*0x0EE0*/ u8 flags[FLAGS_COUNT]; /*0x1000*/ u16 vars[VARS_COUNT]; /*0x1200*/ u8 filler1200[0x100]; @@ -626,15 +626,15 @@ struct SaveBlock1 /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; /*0x2F10*/ u8 filler2F10[0x184]; struct { - /*0x3094*/ u8 unknown1[8]; - /*0x309C*/ u8 giftRibbons[11]; - /*0x30A7*/ u8 unknown2[8]; - /*0x30AF*/ u32 currentPokeCoupons; - /*0x30B3*/ u32 totalEarnedPokeCoupons; - /*0x30B7*/ u8 unknown3[6]; - /*0x30BD*/ u8 receivedWishmakerJirachi; - /*0x30BE*/ u8 unknown4[18]; - } __attribute__((packed)) externalReservedData; + /*0x3094*/ u8 unknown1[8]; + /*0x309C*/ u8 giftRibbons[11]; + /*0x30A7*/ u8 unknown2[8]; + /*0x30AF*/ u32 currentPokeCoupons; + /*0x30B3*/ u32 totalEarnedPokeCoupons; + /*0x30B7*/ u8 unknown3[6]; + /*0x30BD*/ u8 receivedWishmakerJirachi; + /*0x30BE*/ u8 unknown4[18]; + } __attribute__((packed)) externalReservedData; /*0x30D0*/ struct Roamer roamer; /*0x30EC*/ struct EnigmaBerry enigmaBerry; /*0x3120*/ u8 filler3120[0x340]; -- cgit v1.2.3 From ff55777ac8d0ee55fbe629381a781f0519cb2d29 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 14:15:29 -0500 Subject: Define the PC items allocation in SaveBlock1 --- include/global.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 30be4fd9f..97b179410 100644 --- a/include/global.h +++ b/include/global.h @@ -97,6 +97,7 @@ enum LanguageId { #define GAME_LANGUAGE (LANGUAGE_ENGLISH) +#define PC_ITEMS_COUNT 30 #define BAG_ITEMS_COUNT 42 #define BAG_KEYITEMS_COUNT 30 #define BAG_POKEBALLS_COUNT 13 @@ -605,7 +606,7 @@ struct SaveBlock1 /*0x0290*/ u32 money; /*0x0294*/ u16 coins; /*0x0296*/ u16 registeredItem; // registered for use with SELECT button - /*0x0298*/ u8 filler298[0x78]; + /*0x0298*/ struct ItemSlot pcItems[PC_ITEMS_COUNT]; /*0x0310*/ struct ItemSlot bagPocket_Items[BAG_ITEMS_COUNT]; /*0x03b8*/ struct ItemSlot bagPocket_KeyItems[BAG_KEYITEMS_COUNT]; /*0x0430*/ struct ItemSlot bagPocket_PokeBalls[BAG_POKEBALLS_COUNT]; -- cgit v1.2.3 From 592a0f03e8196e2851e00b4d891daef752e6edf0 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 18:10:28 -0500 Subject: Name the game stats array --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 97b179410..3ff57357e 100644 --- a/include/global.h +++ b/include/global.h @@ -621,7 +621,7 @@ struct SaveBlock1 /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; /*0x0EE0*/ u8 flags[FLAGS_COUNT]; /*0x1000*/ u16 vars[VARS_COUNT]; - /*0x1200*/ u8 filler1200[0x100]; + /*0x1200*/ u32 gameStats[NUM_GAME_STATS]; /*0x1300*/ struct QuestLog questLog[4]; /*0x2CA0*/ u8 filler2CA0[0x30]; /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; -- cgit v1.2.3 From c79a939d3d03d861769a5f54ec52c7b976c14a3b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 18:18:10 -0500 Subject: Identify easy chat arrays in save block 1 --- include/global.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 3ff57357e..5ad4e4f9d 100644 --- a/include/global.h +++ b/include/global.h @@ -623,7 +623,10 @@ struct SaveBlock1 /*0x1000*/ u16 vars[VARS_COUNT]; /*0x1200*/ u32 gameStats[NUM_GAME_STATS]; /*0x1300*/ struct QuestLog questLog[4]; - /*0x2CA0*/ u8 filler2CA0[0x30]; + /*0x2CA0*/ u16 unk2CA0[6]; + /*0x2CAC*/ u16 unk2CAC[6]; + /*0x2CB8*/ u16 unk2CB8[6]; + /*0x2CC4*/ u16 unk2CC4[6]; /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; /*0x2F10*/ u8 filler2F10[0x184]; struct { -- cgit v1.2.3 From c6778caf1e36c2847314c5751e8181089c8c66ab Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 18:55:55 -0500 Subject: Identify most of SaveBlock1 --- include/global.h | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 5ad4e4f9d..d5bfc5241 100644 --- a/include/global.h +++ b/include/global.h @@ -489,8 +489,8 @@ struct DaycareMon struct DayCare { struct DaycareMon mons[DAYCARE_MON_COUNT]; - u32 offspringPersonality; - u8 stepCounter; + u16 unk_118; + u8 unk_11A; }; struct DayCareMail @@ -588,6 +588,9 @@ struct FameCheckerSaveData #define VARS_COUNT 256 #define MAIL_COUNT 16 +#define NUM_EASY_CHAT_EXTRA_PHRASES 33 +#define EASY_CHAT_EXTRA_PHRASES_SIZE ((NUM_EASY_CHAT_EXTRA_PHRASES >> 3) + (NUM_EASY_CHAT_EXTRA_PHRASES % 8 ? 1 : 0)) + struct SaveBlock1 { /*0x0000*/ struct Coords16 pos; @@ -613,10 +616,10 @@ struct SaveBlock1 /*0x0464*/ struct ItemSlot bagPocket_TMHM[BAG_TMHM_COUNT]; /*0x054c*/ struct ItemSlot bagPocket_Berries[BAG_BERRIES_COUNT]; /*0x05F8*/ u8 seen1[DEX_FLAGS_NO]; - /*0x062C*/ u8 filler_062c[12]; + /*0x062C*/ u16 berryBlenderRecords[3]; // unused + /*0x0632*/ u8 field_632[6]; // unused? /*0x0638*/ u8 trainerRematchStepCounter; - u8 filler_639; - /*0x063A*/ u8 trainerRematches[100]; + /*0x063A*/ u8 ALIGNED(2) trainerRematches[100]; /*0x06A0*/ struct MapObject mapObjects[MAP_OBJECTS_COUNT]; /*0x08E0*/ struct MapObjectTemplate mapObjectTemplates[64]; /*0x0EE0*/ u8 flags[FLAGS_COUNT]; @@ -628,17 +631,11 @@ struct SaveBlock1 /*0x2CB8*/ u16 unk2CB8[6]; /*0x2CC4*/ u16 unk2CC4[6]; /*0x2CD0*/ struct MailStruct mail[MAIL_COUNT]; - /*0x2F10*/ u8 filler2F10[0x184]; - struct { - /*0x3094*/ u8 unknown1[8]; - /*0x309C*/ u8 giftRibbons[11]; - /*0x30A7*/ u8 unknown2[8]; - /*0x30AF*/ u32 currentPokeCoupons; - /*0x30B3*/ u32 totalEarnedPokeCoupons; - /*0x30B7*/ u8 unknown3[6]; - /*0x30BD*/ u8 receivedWishmakerJirachi; - /*0x30BE*/ u8 unknown4[18]; - } __attribute__((packed)) externalReservedData; + /*0x2F10*/ u8 additionalPhrases[EASY_CHAT_EXTRA_PHRASES_SIZE]; + /*0x2F18*/ OldMan oldMan; // unused + /*0x2F54*/ struct EasyChatPair easyChatPairs[5]; // unused + /*0x2F80*/ struct DayCare daycare; + /*0x309C*/ u8 giftRibbons[52]; /*0x30D0*/ struct Roamer roamer; /*0x30EC*/ struct EnigmaBerry enigmaBerry; /*0x3120*/ u8 filler3120[0x340]; -- cgit v1.2.3 From 21a301b77d01851a9d019b594ff11c547cc6514f Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 28 Nov 2018 22:15:11 -0500 Subject: through sub_81436EC --- include/link.h | 5 +++++ include/main.h | 3 +++ include/unk_815c27c.h | 11 +++++++++++ 3 files changed, 19 insertions(+) create mode 100644 include/unk_815c27c.h (limited to 'include') diff --git a/include/link.h b/include/link.h index 239a59b71..d015708b1 100644 --- a/include/link.h +++ b/include/link.h @@ -146,6 +146,10 @@ extern u16 word_3002910[]; extern bool8 gReceivedRemoteLinkPlayers; extern bool8 gLinkVSyncDisabled; +extern u8 gUnknown_3003F84; +extern u64 gUnknown_3003FB4; +extern u16 gUnknown_202271A; + void Task_DestroySelf(u8); void OpenLink(void); void CloseLink(void); @@ -196,5 +200,6 @@ void sub_8011BD0(void); u8 sub_800ABAC(void); u8 sub_800ABBC(void); void sub_800AC34(void); +void sub_8009804(void); #endif // GUARD_LINK_H diff --git a/include/main.h b/include/main.h index 84d356692..0fe138d1f 100644 --- a/include/main.h +++ b/include/main.h @@ -9,6 +9,8 @@ typedef void (*MainCallback)(void); typedef void (*IntrCallback)(void); typedef void (*IntrFunc)(void); +extern IntrFunc gIntrTable[]; + struct Main { /*0x000*/ MainCallback callback1; @@ -62,5 +64,6 @@ void SetSerialCallback(IntrCallback callback); void InitFlashTimer(void); void DoSoftReset(void); void ClearPokemonCrySongs(void); +void RestoreSerialTimer3IntrHandlers(void); #endif // GUARD_MAIN_H diff --git a/include/unk_815c27c.h b/include/unk_815c27c.h new file mode 100644 index 000000000..d5ddc7bdc --- /dev/null +++ b/include/unk_815c27c.h @@ -0,0 +1,11 @@ +#ifndef GUARD_UNK_815C27C_H +#define GUARD_UNK_815C27C_H + +void sub_815C6D4(void); +void sub_815C6C4(void); +void sub_815C8C8(void); +void sub_815C960(void); +void sub_815C91C(void); +u16 sub_815C498(u8, u32, u32, u8); + +#endif //GUARD_UNK_815C27C_H -- cgit v1.2.3 From 2943997dcbab30619e0410b294dc109fd3e08e83 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 09:54:26 -0500 Subject: through sub_81438F0 --- include/link.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'include') diff --git a/include/link.h b/include/link.h index d015708b1..92abf6e28 100644 --- a/include/link.h +++ b/include/link.h @@ -146,6 +146,7 @@ extern u16 word_3002910[]; extern bool8 gReceivedRemoteLinkPlayers; extern bool8 gLinkVSyncDisabled; +extern u8 gUnknown_3003F64; extern u8 gUnknown_3003F84; extern u64 gUnknown_3003FB4; extern u16 gUnknown_202271A; @@ -201,5 +202,8 @@ u8 sub_800ABAC(void); u8 sub_800ABBC(void); void sub_800AC34(void); void sub_8009804(void); +bool8 sub_800AA48(void); +void sub_800A5BC(void); +void sub_800AA80(u8); #endif // GUARD_LINK_H -- cgit v1.2.3 From 746006911096730ea6d5f14bfff5957ef9b5bc2c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 11:35:31 -0500 Subject: sub_8143910 --- include/global.h | 12 ++++++++++++ include/link.h | 2 ++ include/link_rfu_4.h | 6 ++++++ include/unk_815c27c.h | 2 +- 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 include/link_rfu_4.h (limited to 'include') diff --git a/include/global.h b/include/global.h index d5bfc5241..899508993 100644 --- a/include/global.h +++ b/include/global.h @@ -591,6 +591,18 @@ struct FameCheckerSaveData #define NUM_EASY_CHAT_EXTRA_PHRASES 33 #define EASY_CHAT_EXTRA_PHRASES_SIZE ((NUM_EASY_CHAT_EXTRA_PHRASES >> 3) + (NUM_EASY_CHAT_EXTRA_PHRASES % 8 ? 1 : 0)) +struct MEventBuffer1 +{ + u32 crc; + u8 data[0x1bc]; +}; + +struct MEventBuffer2 +{ + u32 crc; + u8 data[0x14c]; +}; + struct SaveBlock1 { /*0x0000*/ struct Coords16 pos; diff --git a/include/link.h b/include/link.h index 92abf6e28..321a28d11 100644 --- a/include/link.h +++ b/include/link.h @@ -205,5 +205,7 @@ void sub_8009804(void); bool8 sub_800AA48(void); void sub_800A5BC(void); void sub_800AA80(u8); +void sub_80098D8(void); +void sub_80098B8(void); #endif // GUARD_LINK_H diff --git a/include/link_rfu_4.h b/include/link_rfu_4.h new file mode 100644 index 000000000..08bb3d7c5 --- /dev/null +++ b/include/link_rfu_4.h @@ -0,0 +1,6 @@ +#ifndef GUARD_LINK_RFU_4_H +#define GUARD_LINK_RFU_4_H + +bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src); + +#endif //GUARD_LINK_RFU_4_H diff --git a/include/unk_815c27c.h b/include/unk_815c27c.h index d5ddc7bdc..cc1cbb7ce 100644 --- a/include/unk_815c27c.h +++ b/include/unk_815c27c.h @@ -6,6 +6,6 @@ void sub_815C6C4(void); void sub_815C8C8(void); void sub_815C960(void); void sub_815C91C(void); -u16 sub_815C498(u8, u32, u32, u8); +u16 sub_815C498(u8, size_t, const void *, u8); #endif //GUARD_UNK_815C27C_H -- cgit v1.2.3 From cec95ebfb41f8381feeb87ff889ebc1d89827ec6 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 14:02:49 -0500 Subject: through sub_8143DBC --- include/easy_chat.h | 1 + include/global.h | 29 ++++++++++++++++++++++------- include/link_rfu_4.h | 1 + 3 files changed, 24 insertions(+), 7 deletions(-) (limited to 'include') diff --git a/include/easy_chat.h b/include/easy_chat.h index 2b5664420..78e371cbb 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -37,5 +37,6 @@ bool32 sub_811F8D8(u16 word); void InitializeEasyChatWordArray(u16 *words, u16 length); void ConvertEasyChatWordsToString(u8 *dest, const u16 *src, u16 length1, u16 length2); bool8 ECWord_CheckIfOutsideOfValidRange(u16 word); +void sub_80BDE28(void); #endif // GUARD_EASYCHAT_H diff --git a/include/global.h b/include/global.h index 899508993..456f2c083 100644 --- a/include/global.h +++ b/include/global.h @@ -591,18 +591,34 @@ struct FameCheckerSaveData #define NUM_EASY_CHAT_EXTRA_PHRASES 33 #define EASY_CHAT_EXTRA_PHRASES_SIZE ((NUM_EASY_CHAT_EXTRA_PHRASES >> 3) + (NUM_EASY_CHAT_EXTRA_PHRASES % 8 ? 1 : 0)) -struct MEventBuffer1 +struct MEventBuffer_3120 { u32 crc; - u8 data[0x1bc]; + u16 data[222]; }; -struct MEventBuffer2 +struct MEventBuffer_32E0 { u32 crc; - u8 data[0x14c]; + u16 data[166]; }; +struct MEventBuffer_3430 +{ + u32 crc; + u16 data[18]; +}; + +struct MEventBuffers +{ + /*0x000 0x3120*/ struct MEventBuffer_3120 buffer_000; + /*0x1c0 0x32e0*/ struct MEventBuffer_32E0 buffer_1c0; + /*0x310 0x3430*/ struct MEventBuffer_3430 buffer_310; + /*0x338 0x3458*/ u16 unk_338[4]; + /*0x340 0x3460*/ struct MysteryEventStruct unk_340; + /*0x344 0x3464*/ u8 filler_344[0x28]; +}; // 0x36C 0x348C + struct SaveBlock1 { /*0x0000*/ struct Coords16 pos; @@ -650,9 +666,8 @@ struct SaveBlock1 /*0x309C*/ u8 giftRibbons[52]; /*0x30D0*/ struct Roamer roamer; /*0x30EC*/ struct EnigmaBerry enigmaBerry; - /*0x3120*/ u8 filler3120[0x340]; - /*0x3460*/ struct MysteryEventStruct unk_3460; - /*0x3464*/ u8 filler_3464[0x1b8]; + /*0x3120*/ struct MEventBuffers unk_3120; + /*0x348C*/ u8 filler_3464[0x190]; /*0x361C*/ struct RamScript ramScript; /*0x3A08*/ u8 filler3A08[12]; /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; diff --git a/include/link_rfu_4.h b/include/link_rfu_4.h index 08bb3d7c5..91ae86e4c 100644 --- a/include/link_rfu_4.h +++ b/include/link_rfu_4.h @@ -1,6 +1,7 @@ #ifndef GUARD_LINK_RFU_4_H #define GUARD_LINK_RFU_4_H +void sub_8142504(const u8 *str); bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src); #endif //GUARD_LINK_RFU_4_H -- cgit v1.2.3 From 159f242e32532f14496abaa8d2f96e9c3d30d720 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 15:33:58 -0500 Subject: through sub_8144018 --- include/battle_tower.h | 1 + include/event_data.h | 2 ++ include/global.h | 36 ++++++++++++++++++++++++++++++++---- include/script.h | 1 + 4 files changed, 36 insertions(+), 4 deletions(-) (limited to 'include') diff --git a/include/battle_tower.h b/include/battle_tower.h index 120ab9a99..36d5eb1f7 100644 --- a/include/battle_tower.h +++ b/include/battle_tower.h @@ -4,5 +4,6 @@ #include "global.h" u16 sub_8164FCC(u8, u8); +void sub_80E7524(u32 *); #endif //GUARD_BATTLE_TOWER_H diff --git a/include/event_data.h b/include/event_data.h index 2e340f073..bced2a88f 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -34,6 +34,8 @@ bool8 FlagGet(u16 id); u16 * GetVarPointer(u16 id); bool32 sub_806E2BC(void); void sub_806E6FC(void); +void sub_806E2D0(void); +void sub_806E370(void); extern u16 gSpecialVar_0x8000; extern u16 gSpecialVar_0x8001; diff --git a/include/global.h b/include/global.h index 456f2c083..df2926d0b 100644 --- a/include/global.h +++ b/include/global.h @@ -264,7 +264,9 @@ struct SaveBlock2 /*0x098*/ struct Time localTimeOffset; /*0x0A0*/ struct Time lastBerryTreeUpdate; /*0x0A8*/ u32 field_A8; - /*0x0AC*/ u8 filler_AC[0x9ec]; + /*0x0AC*/ u8 filler_AC[0x3F4]; + /*0x4A0*/ u32 unk_4A0[0x2F]; + /*0x55c*/ u8 filler_55C[0x53C]; /*0xA98*/ u8 unk_A98[2][16]; /*0xAB8*/ u8 filler_AB8[0x468]; /*0xF20*/ u32 encryptionKey; @@ -591,22 +593,48 @@ struct FameCheckerSaveData #define NUM_EASY_CHAT_EXTRA_PHRASES 33 #define EASY_CHAT_EXTRA_PHRASES_SIZE ((NUM_EASY_CHAT_EXTRA_PHRASES >> 3) + (NUM_EASY_CHAT_EXTRA_PHRASES % 8 ? 1 : 0)) +struct MEventBuffer_3120_Sub +{ + u16 unk_00; + u8 unk_02; + u16 filler_04[220]; +}; + struct MEventBuffer_3120 { u32 crc; - u16 data[222]; + struct MEventBuffer_3120_Sub data; +}; + +struct MEventBuffer_32E0_Sub +{ + u16 unk_00; + u16 unk_02; + u8 filler_04[4]; + u8 unk_08_0:2; + u8 unk_08_2:4; + u8 unk_08_6:2; + u8 unk_09; + u8 filler_0A[322]; }; struct MEventBuffer_32E0 { u32 crc; - u16 data[166]; + struct MEventBuffer_32E0_Sub data; +}; + +struct MEventBuffer_3430_Sub +{ + u8 filler_00[6]; + u16 unk_06; + u8 filler_08[28]; }; struct MEventBuffer_3430 { u32 crc; - u16 data[18]; + struct MEventBuffer_3430_Sub data; }; struct MEventBuffers diff --git a/include/script.h b/include/script.h index 9e26b8a28..6ed2e8f49 100644 --- a/include/script.h +++ b/include/script.h @@ -62,5 +62,6 @@ u8 *GetRamScript(u8 objectId, u8 *script); bool32 sub_80991F8(void); u8 *sub_8099244(void); void sub_80992A0(u8 *script, u16 scriptSize); +bool32 sub_8069DFC(void); #endif // GUARD_SCRIPT_H -- cgit v1.2.3 From 51622adaec9fd47a8f1be2b61b1f4521cc9d47da Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 18:15:22 -0500 Subject: through sub_8144218 --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index df2926d0b..04f89802c 100644 --- a/include/global.h +++ b/include/global.h @@ -628,7 +628,7 @@ struct MEventBuffer_3430_Sub { u8 filler_00[6]; u16 unk_06; - u8 filler_08[28]; + u16 unk_08[2][7]; }; struct MEventBuffer_3430 -- cgit v1.2.3 From d68f434a527d185e2968d8da418fa74110090c79 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 18:48:06 -0500 Subject: through sub_814449C --- include/main.h | 3 +++ include/mevent.h | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) (limited to 'include') diff --git a/include/main.h b/include/main.h index 0fe138d1f..adbf1fb5d 100644 --- a/include/main.h +++ b/include/main.h @@ -66,4 +66,7 @@ void DoSoftReset(void); void ClearPokemonCrySongs(void); void RestoreSerialTimer3IntrHandlers(void); +extern const char RomHeaderGameCode[4]; +extern const char RomHeaderSoftwareVersion; + #endif // GUARD_MAIN_H diff --git a/include/mevent.h b/include/mevent.h index 7df669da3..ae301263f 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -3,6 +3,24 @@ #include "global.h" +struct MEventStruct_Unk1442CC +{ + u32 unk_00; + u16 unk_04; + u32 unk_08; + u16 unk_0C; + u32 unk_10; + u16 unk_14; + u16 unk_16[4]; + struct MEventBuffer_3430_Sub unk_20; + u8 unk_44; + u8 unk_45[7]; + u8 unk_4C[4]; + u16 unk_50[6]; + u8 unk_5C[4]; + u8 unk_60; +}; + struct MysteryEventStruct * sub_8143D94(void); bool32 sub_8143E1C(void); -- cgit v1.2.3 From 939ae833c3364d7ea7543c4db56df5c90b4e9d8d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 19:17:38 -0500 Subject: through sub_81445C0 --- include/global.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 04f89802c..92e6b7da1 100644 --- a/include/global.h +++ b/include/global.h @@ -626,7 +626,9 @@ struct MEventBuffer_32E0 struct MEventBuffer_3430_Sub { - u8 filler_00[6]; + u16 unk_00; + u16 unk_02; + u16 unk_04; u16 unk_06; u16 unk_08[2][7]; }; -- cgit v1.2.3 From 9200df7516151a84d0fcdda84259179eafafcabb Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 20:56:53 -0500 Subject: Finish decomp of mevent.s --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 92e6b7da1..b1c6adcf3 100644 --- a/include/global.h +++ b/include/global.h @@ -646,7 +646,7 @@ struct MEventBuffers /*0x310 0x3430*/ struct MEventBuffer_3430 buffer_310; /*0x338 0x3458*/ u16 unk_338[4]; /*0x340 0x3460*/ struct MysteryEventStruct unk_340; - /*0x344 0x3464*/ u8 filler_344[0x28]; + /*0x344 0x3464*/ u32 unk_344[2][5]; }; // 0x36C 0x348C struct SaveBlock1 -- cgit v1.2.3 From 5e98e6b8df930bb386acc5ce21940a122fd497ce Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Thu, 29 Nov 2018 21:02:08 -0500 Subject: Fix this field's name to be consistent with offset --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index b1c6adcf3..1dae2f75f 100644 --- a/include/global.h +++ b/include/global.h @@ -697,7 +697,7 @@ struct SaveBlock1 /*0x30D0*/ struct Roamer roamer; /*0x30EC*/ struct EnigmaBerry enigmaBerry; /*0x3120*/ struct MEventBuffers unk_3120; - /*0x348C*/ u8 filler_3464[0x190]; + /*0x348C*/ u8 filler_348C[0x190]; /*0x361C*/ struct RamScript ramScript; /*0x3A08*/ u8 filler3A08[12]; /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; -- cgit v1.2.3 From 294b150d70385a117e1324fd1e13bab25bfaabc9 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 08:47:58 -0500 Subject: Set up to decomp mevent_server --- include/global.h | 2 ++ include/mevent.h | 12 ++++++++++++ 2 files changed, 14 insertions(+) (limited to 'include') diff --git a/include/global.h b/include/global.h index 1dae2f75f..5b07796cc 100644 --- a/include/global.h +++ b/include/global.h @@ -28,6 +28,8 @@ #endif // __APPLE__ #define ARRAY_COUNT(array) (sizeof(array) / sizeof((array)[0])) +// GF's lingo +#define NELEMS ARRAY_COUNT // useful math macros diff --git a/include/mevent.h b/include/mevent.h index ae301263f..31e1041fe 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -21,6 +21,18 @@ struct MEventStruct_Unk1442CC u8 unk_60; }; +struct MEvent_Str_1 +{ + u16 unk_000; + size_t unk_004; + const void * unk_008; +}; + +struct MEvent_Str_2 +{ + u8 fill_00[0x40]; +}; + struct MysteryEventStruct * sub_8143D94(void); bool32 sub_8143E1C(void); -- cgit v1.2.3 From 80dbdacaced2e4522f29e6974474103926461161 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 10:27:25 -0500 Subject: through sub_814490C --- include/link.h | 2 +- include/link_rfu.h | 8 ++++++++ include/link_rfu_4.h | 7 ------- include/mevent_server.h | 4 ++++ 4 files changed, 13 insertions(+), 8 deletions(-) create mode 100644 include/link_rfu.h delete mode 100644 include/link_rfu_4.h create mode 100644 include/mevent_server.h (limited to 'include') diff --git a/include/link.h b/include/link.h index 321a28d11..1c13de37e 100644 --- a/include/link.h +++ b/include/link.h @@ -149,7 +149,7 @@ extern bool8 gLinkVSyncDisabled; extern u8 gUnknown_3003F64; extern u8 gUnknown_3003F84; extern u64 gUnknown_3003FB4; -extern u16 gUnknown_202271A; +extern u16 gLinkType; void Task_DestroySelf(u8); void OpenLink(void); diff --git a/include/link_rfu.h b/include/link_rfu.h new file mode 100644 index 000000000..065d23f9f --- /dev/null +++ b/include/link_rfu.h @@ -0,0 +1,8 @@ +#ifndef GUARD_LINK_RFU_H +#define GUARD_LINK_RFU_H + +void sub_8142504(const u8 *str); +bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src); +void sub_80FA190(void); + +#endif //GUARD_LINK_RFU_H diff --git a/include/link_rfu_4.h b/include/link_rfu_4.h deleted file mode 100644 index 91ae86e4c..000000000 --- a/include/link_rfu_4.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef GUARD_LINK_RFU_4_H -#define GUARD_LINK_RFU_4_H - -void sub_8142504(const u8 *str); -bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src); - -#endif //GUARD_LINK_RFU_4_H diff --git a/include/mevent_server.h b/include/mevent_server.h new file mode 100644 index 000000000..0d46d8fc5 --- /dev/null +++ b/include/mevent_server.h @@ -0,0 +1,4 @@ +#ifndef GUARD_MEVENT_SERVER_H +#define GUARD_MEVENT_SERVER_H + +#endif //GUARD_MEVENT_SERVER_H -- cgit v1.2.3 From 5a80a339cd04864f36bae99eb4b35de2f8bbab16 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 10:52:54 -0500 Subject: sub_81449E0 --- include/link.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/link.h b/include/link.h index 1c13de37e..39873ec11 100644 --- a/include/link.h +++ b/include/link.h @@ -207,5 +207,6 @@ void sub_800A5BC(void); void sub_800AA80(u8); void sub_80098D8(void); void sub_80098B8(void); +bool8 sub_800A4BC(void); #endif // GUARD_LINK_H -- cgit v1.2.3 From 7c2517611b83ac9d490a99ec32cf1a4412c05ce0 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 12:16:42 -0500 Subject: sub_8144CA0 --- include/battle_tower.h | 1 + include/mevent.h | 5 +++++ include/script.h | 1 + 3 files changed, 7 insertions(+) (limited to 'include') diff --git a/include/battle_tower.h b/include/battle_tower.h index 36d5eb1f7..0782725b6 100644 --- a/include/battle_tower.h +++ b/include/battle_tower.h @@ -5,5 +5,6 @@ u16 sub_8164FCC(u8, u8); void sub_80E7524(u32 *); +void sub_80E7490(void); #endif //GUARD_BATTLE_TOWER_H diff --git a/include/mevent.h b/include/mevent.h index 31e1041fe..1744bb524 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -34,6 +34,11 @@ struct MEvent_Str_2 }; struct MysteryEventStruct * sub_8143D94(void); +bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src); bool32 sub_8143E1C(void); +bool32 sub_8143EF4(const u8 * src); +bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data); +bool32 sub_8144254(const u16 * data); +void sub_81442CC(struct MEventStruct_Unk1442CC * data); #endif //GUARD_MEVENT_H diff --git a/include/script.h b/include/script.h index 6ed2e8f49..b718af4c1 100644 --- a/include/script.h +++ b/include/script.h @@ -63,5 +63,6 @@ bool32 sub_80991F8(void); u8 *sub_8099244(void); void sub_80992A0(u8 *script, u16 scriptSize); bool32 sub_8069DFC(void); +void sub_8069EA4(u8 * script, u16 scriptSize); #endif // GUARD_SCRIPT_H -- cgit v1.2.3 From f178d06946a4debf6a0551094d3ef2f70b7b364c Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 12:26:24 -0500 Subject: through mevent_srv_ish_exec --- include/mystery_event_script.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'include') diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index 1ba1464fa..8f90ccf53 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -7,4 +7,7 @@ u32 RunMysteryEventScript(u8 *); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); +void sub_80DA89C(void *); +bool32 sub_80DA8B0(u32 *); + #endif // GUARD_MYSTERY_EVENT_SCRIPT_H -- cgit v1.2.3 From 8a8e86fa4fe0a7932f475c7aa8424ea840327e4b Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 15:26:16 -0500 Subject: split mevent_server --- include/cereader_tool.h | 9 +++++++++ include/help_system.h | 2 ++ include/mevent_server.h | 36 ++++++++++++++++++++++++++++++++++++ include/mystery_gift_menu.h | 6 ++++++ 4 files changed, 53 insertions(+) create mode 100644 include/cereader_tool.h create mode 100644 include/mystery_gift_menu.h (limited to 'include') diff --git a/include/cereader_tool.h b/include/cereader_tool.h new file mode 100644 index 000000000..28ef526eb --- /dev/null +++ b/include/cereader_tool.h @@ -0,0 +1,9 @@ +#ifndef GUARD_CEREADER_TOOL_H +#define GUARD_CEREADER_TOOL_H + +#include "global.h" + +bool32 sub_815D794(u8 *); +u8 sub_815D6B4(u8 *); + +#endif //GUARD_CEREADER_TOOL_H diff --git a/include/help_system.h b/include/help_system.h index 3f6a741c6..632788148 100644 --- a/include/help_system.h +++ b/include/help_system.h @@ -5,4 +5,6 @@ extern bool8 gUnknown_3005ECC; +void sub_812B484(void); + #endif //GUARD_HELP_SYSTEM_H diff --git a/include/mevent_server.h b/include/mevent_server.h index 0d46d8fc5..d2d7b0687 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -1,4 +1,40 @@ #ifndef GUARD_MEVENT_SERVER_H #define GUARD_MEVENT_SERVER_H +#include "global.h" + +#define ME_SEND_BUF_SIZE 0x400 + +struct mevent_srv_sub +{ + s32 unk_00; + u8 unk_04; + u8 unk_05; + u16 unk_06; + u16 unk_08; + u16 unk_0A; + u16 unk_0C; + u16 unk_0E; + u16 unk_10; + u16 unk_12; + u16 unk_14; + void * unk_18; + void * unk_1C; + u32 (*unk_20)(struct mevent_srv_sub *); + u32 (*unk_24)(struct mevent_srv_sub *); +}; + +struct send_recv_buff +{ + u16 unk0; + u16 unk2; + u16 unk4; +}; + +u32 sub_8144844(struct mevent_srv_sub * svr); +u32 sub_8144850(struct mevent_srv_sub * svr); +void sub_814485C(struct mevent_srv_sub * svr, u32 a1, u32 a2); +void sub_8144888(struct mevent_srv_sub * svr, u32 a1, void * a2, u32 size); +void sub_81448AC(struct mevent_srv_sub * svr, u32 a1, void * a2); + #endif //GUARD_MEVENT_SERVER_H diff --git a/include/mystery_gift_menu.h b/include/mystery_gift_menu.h new file mode 100644 index 000000000..17af9ce57 --- /dev/null +++ b/include/mystery_gift_menu.h @@ -0,0 +1,6 @@ +#ifndef GUARD_MYSTERY_GIFT_MENU_H +#define GUARD_MYSTERY_GIFT_MENU_H + +void sub_81422FC(void); + +#endif //GUARD_MYSTERY_GIFT_MENU_H -- cgit v1.2.3 From b9a6cba30a3ee44ccb14548d198accd7f6bbfa8d Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 30 Nov 2018 16:51:22 -0500 Subject: Finish decomp of mevent_server --- include/mevent.h | 9 +++++++++ include/script.h | 1 + 2 files changed, 10 insertions(+) (limited to 'include') diff --git a/include/mevent.h b/include/mevent.h index 1744bb524..d940b212c 100644 --- a/include/mevent.h +++ b/include/mevent.h @@ -33,12 +33,21 @@ struct MEvent_Str_2 u8 fill_00[0x40]; }; +struct MEventBuffer_3120_Sub * sub_8143D58(void); +struct MEventBuffer_32E0_Sub * sav1_get_mevent_buffer_1(void); +struct MEventBuffer_3430_Sub * sav1_get_mevent_buffer_2(void); struct MysteryEventStruct * sub_8143D94(void); bool32 sub_8143DC8(const struct MEventBuffer_3120_Sub * src); bool32 sub_8143E1C(void); bool32 sub_8143EF4(const u8 * src); bool32 sub_8143F68(const struct MEventBuffer_32E0_Sub * data); +void sub_814410C(struct MEventBuffer_32E0_Sub * buffer); bool32 sub_8144254(const u16 * data); void sub_81442CC(struct MEventStruct_Unk1442CC * data); +bool32 sub_81443D4(const struct MEventStruct_Unk1442CC * data); +u32 sub_8144418(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused); +u32 sub_8144434(const u16 * a0, const struct MEventStruct_Unk1442CC * a1, void * unused); +bool32 sub_8144474(const struct MEventStruct_Unk1442CC * a0, const u16 * a1); +u16 sub_81444B0(const struct MEventStruct_Unk1442CC * a0, u32 command); #endif //GUARD_MEVENT_H diff --git a/include/script.h b/include/script.h index b718af4c1..ebb4caa86 100644 --- a/include/script.h +++ b/include/script.h @@ -64,5 +64,6 @@ u8 *sub_8099244(void); void sub_80992A0(u8 *script, u16 scriptSize); bool32 sub_8069DFC(void); void sub_8069EA4(u8 * script, u16 scriptSize); +u8 * sub_8069E48(void); #endif // GUARD_SCRIPT_H -- cgit v1.2.3 From 01aada9e93b5e132635feb214baa5d302c4f2154 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 1 Dec 2018 11:24:05 -0500 Subject: merge mevent server and document mevent_server_helpers --- include/link.h | 2 +- include/mevent_server.h | 105 +++++++++++++++++++++++++++++++++++++----------- include/util.h | 4 +- 3 files changed, 85 insertions(+), 26 deletions(-) (limited to 'include') diff --git a/include/link.h b/include/link.h index 39873ec11..ef8776c64 100644 --- a/include/link.h +++ b/include/link.h @@ -169,7 +169,7 @@ void sub_8007E24(void); void sub_8007E4C(void); u8 GetMultiplayerId(void); u8 bitmask_all_link_players_but_self(void); -bool8 SendBlock(u8, void *, u16); +bool8 SendBlock(u8, const void *, u16); u8 GetBlockReceivedStatus(void); void ResetBlockReceivedFlags(void); void ResetBlockReceivedFlag(u8); diff --git a/include/mevent_server.h b/include/mevent_server.h index d2d7b0687..90cb5f35d 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -7,34 +7,93 @@ struct mevent_srv_sub { - s32 unk_00; - u8 unk_04; - u8 unk_05; - u16 unk_06; - u16 unk_08; - u16 unk_0A; - u16 unk_0C; - u16 unk_0E; - u16 unk_10; - u16 unk_12; - u16 unk_14; + s32 seqno; + u8 sendPlayerNo; + u8 recvPlayerNo; + u16 recvIdent; + u16 recvCounter; + u16 recvCRC; + u16 recvSize; + u16 sendIdent; + u16 sendCounter; + u16 sendCRC; + u16 sendSize; + void * recvBfr; + const void * sendBfr; + u32 (*recvFunc)(struct mevent_srv_sub *); + u32 (*sendFunc)(struct mevent_srv_sub *); +}; + +struct send_recv_header +{ + u16 ident; + u16 crc; + u16 size; +}; + +struct mevent_cmd_ish +{ + u32 instr; + u32 parameter; +}; + +struct mevent_srv_ish +{ + u32 unk_00; + u32 unk_04; + u32 mainseqno; + u32 unk_0C; + u32 cmdidx; + void * unk_14; void * unk_18; - void * unk_1C; - u32 (*unk_20)(struct mevent_srv_sub *); - u32 (*unk_24)(struct mevent_srv_sub *); + struct mevent_cmd_ish * cmdBuffer; + void * unk_20; + struct mevent_srv_sub unk_24; }; -struct send_recv_buff +struct mevent_cmd { - u16 unk0; - u16 unk2; - u16 unk4; + u32 instr; + bool32 flag; + void * parameter; }; -u32 sub_8144844(struct mevent_srv_sub * svr); -u32 sub_8144850(struct mevent_srv_sub * svr); -void sub_814485C(struct mevent_srv_sub * svr, u32 a1, u32 a2); -void sub_8144888(struct mevent_srv_sub * svr, u32 a1, void * a2, u32 size); -void sub_81448AC(struct mevent_srv_sub * svr, u32 a1, void * a2); +struct mevent_srv_common +{ + u32 unk_00; + u32 unk_04; + u32 mainseqno; + u32 cmdidx; + const struct mevent_cmd * cmdBuffer; + void * unk_14; + struct MEventBuffer_32E0_Sub * unk_18; + struct MEventBuffer_3120_Sub * unk_1C; + struct MEventStruct_Unk1442CC * unk_20; + void * unk_24; + u32 unk_28; + void * unk_2C; + u32 unk_30; + void * unk_34; + struct mevent_srv_sub unk_38; +}; + +u32 mevent_srv_sub_recv(struct mevent_srv_sub * svr); +u32 mevent_srv_sub_send(struct mevent_srv_sub * svr); +void mevent_srv_sub_init(struct mevent_srv_sub * svr, u32 sendPlayerNo, u32 recvPlayerNo); +void mevent_srv_sub_init_send(struct mevent_srv_sub * svr, u32 ident, const void * src, u32 size); +void mevent_srv_sub_init_recv(struct mevent_srv_sub * svr, u32 ident, void * dest); + +void sub_8144AEC(void); +u32 sub_8144B0C(u16 * a0); +void sub_8144B48(void); +void * sub_8144B58(void); +void sub_8144B64(u32 a0); +void sub_8144F1C(void); +void sub_8144F40(void); +u32 sub_8144F64(u16 * a0); + +extern const u8 gUnknown_84687E0[]; +extern const u8 gUnknown_8468B6C[]; +extern const u8 gUnknown_8468BCC[]; #endif //GUARD_MEVENT_SERVER_H diff --git a/include/util.h b/include/util.h index a22cc77fa..e0034d816 100644 --- a/include/util.h +++ b/include/util.h @@ -12,8 +12,8 @@ u8 CreateInvisibleSpriteWithCallback(void (*)(struct Sprite *)); void StoreWordInTwoHalfwords(u16 *, u32); void LoadWordFromTwoHalfwords(u16 *, u32 *); int CountTrailingZeroBits(u32 value); -u16 CalcCRC16(u8 *data, s32 length); -u16 CalcCRC16WithTable(u8 *data, u32 length); +u16 CalcCRC16(const u8 *data, s32 length); +u16 CalcCRC16WithTable(const u8 *data, u32 length); u32 CalcByteArraySum(const u8* data, u32 length); #endif // GUARD_UTIL_H -- cgit v1.2.3 From 2fbe528d5e2db723db338cb2d1635f0fa76ac905 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sat, 1 Dec 2018 20:27:35 -0500 Subject: Attempt to give meaningful names to mevent srv fields --- include/mevent_server.h | 54 +++++++++++++++++++++++-------------------------- 1 file changed, 25 insertions(+), 29 deletions(-) (limited to 'include') diff --git a/include/mevent_server.h b/include/mevent_server.h index 90cb5f35d..e593b5dbd 100644 --- a/include/mevent_server.h +++ b/include/mevent_server.h @@ -40,15 +40,15 @@ struct mevent_cmd_ish struct mevent_srv_ish { u32 unk_00; - u32 unk_04; + u32 param; u32 mainseqno; - u32 unk_0C; + u32 flag; u32 cmdidx; - void * unk_14; - void * unk_18; + void * sendBuffer; + void * recvBuffer; struct mevent_cmd_ish * cmdBuffer; - void * unk_20; - struct mevent_srv_sub unk_24; + void * buffer; + struct mevent_srv_sub manager; }; struct mevent_cmd @@ -61,20 +61,20 @@ struct mevent_cmd struct mevent_srv_common { u32 unk_00; - u32 unk_04; + u32 param; u32 mainseqno; u32 cmdidx; const struct mevent_cmd * cmdBuffer; - void * unk_14; - struct MEventBuffer_32E0_Sub * unk_18; - struct MEventBuffer_3120_Sub * unk_1C; - struct MEventStruct_Unk1442CC * unk_20; - void * unk_24; - u32 unk_28; - void * unk_2C; - u32 unk_30; - void * unk_34; - struct mevent_srv_sub unk_38; + void * recvBuffer; + struct MEventBuffer_32E0_Sub * mevent_32e0; + struct MEventBuffer_3120_Sub * mevent_3120; + struct MEventStruct_Unk1442CC * mevent_unk1442cc; + void * sendBuffer1; + u32 sendBuffer1Size; + void * sendBuffer2; + u32 sendBuffer2Size; + u32 sendWord; + struct mevent_srv_sub manager; }; u32 mevent_srv_sub_recv(struct mevent_srv_sub * svr); @@ -83,17 +83,13 @@ void mevent_srv_sub_init(struct mevent_srv_sub * svr, u32 sendPlayerNo, u32 recv void mevent_srv_sub_init_send(struct mevent_srv_sub * svr, u32 ident, const void * src, u32 size); void mevent_srv_sub_init_recv(struct mevent_srv_sub * svr, u32 ident, void * dest); -void sub_8144AEC(void); -u32 sub_8144B0C(u16 * a0); -void sub_8144B48(void); -void * sub_8144B58(void); -void sub_8144B64(u32 a0); -void sub_8144F1C(void); -void sub_8144F40(void); -u32 sub_8144F64(u16 * a0); - -extern const u8 gUnknown_84687E0[]; -extern const u8 gUnknown_8468B6C[]; -extern const u8 gUnknown_8468BCC[]; +void mevent_srv_ish_do_init(void); +u32 mevent_srv_ish_do_exec(u16 * a0); +void mevent_srv_ish_inc_flag(void); +void * mevent_srv_ish_get_buffer(void); +void mevent_srv_ish_set_param(u32 a0); +void mevent_srv_common_do_init_1(void); +void mevent_srv_common_do_init_2(void); +u32 mevent_srv_init_do_exec(u16 * a0); #endif //GUARD_MEVENT_SERVER_H -- cgit v1.2.3 From 884f1934e8bf34813701f745140f1d8429e8beaf Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 10:02:39 -0500 Subject: start decompiling mevent_8145654 --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 5b07796cc..7c663a813 100644 --- a/include/global.h +++ b/include/global.h @@ -599,7 +599,7 @@ struct MEventBuffer_3120_Sub { u16 unk_00; u8 unk_02; - u16 filler_04[220]; + u8 filler_04[440]; }; struct MEventBuffer_3120 -- cgit v1.2.3 From 8f0f725039e9b0ae9de440df28e1eb4bd7d00dc3 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 11:42:45 -0500 Subject: sub_814571C and associated graphics dump --- include/pokemon_icon.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index da58a2d83..cc6c578fe 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -10,5 +10,6 @@ void sub_80D2F68(u16 iconId); u8 sub_80D2D78(u16 iconId, void callback(struct Sprite *), u16 x, u16 y, u16 a4, u8 a5); void sub_80D2FF0(u16 iconId); void sub_80D2EF8(struct Sprite *sprite); +void sub_809707C(void); #endif // GUARD_POKEMON_ICON_H -- cgit v1.2.3 From 2fb1404613d12e5384c7650ef9d46d2678865544 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 12:09:16 -0500 Subject: sub_814593C and associated ewram --- include/mystery_gift_menu.h | 3 +++ include/pokemon_icon.h | 1 + 2 files changed, 4 insertions(+) (limited to 'include') diff --git a/include/mystery_gift_menu.h b/include/mystery_gift_menu.h index 17af9ce57..24bf85a13 100644 --- a/include/mystery_gift_menu.h +++ b/include/mystery_gift_menu.h @@ -1,6 +1,9 @@ #ifndef GUARD_MYSTERY_GIFT_MENU_H #define GUARD_MYSTERY_GIFT_MENU_H +extern bool8 gUnknown_203F3B8; + void sub_81422FC(void); +void sub_8142344(bool8, bool32); #endif //GUARD_MYSTERY_GIFT_MENU_H diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index cc6c578fe..2c2edcc7c 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -11,5 +11,6 @@ u8 sub_80D2D78(u16 iconId, void callback(struct Sprite *), u16 x, u16 y, u16 a4, void sub_80D2FF0(u16 iconId); void sub_80D2EF8(struct Sprite *sprite); void sub_809707C(void); +void FreeMonIconPalettes(void); #endif // GUARD_POKEMON_ICON_H -- cgit v1.2.3 From cd42b22d6b450b1fc1d79b046fe7cd1a0fdcf543 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 13:33:03 -0500 Subject: sub_8145A98 --- include/global.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 7c663a813..783a2c375 100644 --- a/include/global.h +++ b/include/global.h @@ -612,12 +612,16 @@ struct MEventBuffer_32E0_Sub { u16 unk_00; u16 unk_02; - u8 filler_04[4]; + u32 unk_04; u8 unk_08_0:2; u8 unk_08_2:4; u8 unk_08_6:2; u8 unk_09; - u8 filler_0A[322]; + u8 unk_0A[40]; + u8 unk_32[40]; + u8 unk_5A[4][40]; + u8 unk_FA[40]; + u8 unk_122[40]; }; struct MEventBuffer_32E0 -- cgit v1.2.3 From 30d4803a44a8f11ee88c4d4e37cef9f2373b3542 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 16:06:01 -0500 Subject: sub_8145D18 --- include/pokemon_icon.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index 2c2edcc7c..cef408046 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -12,5 +12,7 @@ void sub_80D2FF0(u16 iconId); void sub_80D2EF8(struct Sprite *sprite); void sub_809707C(void); void FreeMonIconPalettes(void); +u16 sub_8096FD4(u16); +u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32); #endif // GUARD_POKEMON_ICON_H -- cgit v1.2.3 From 9e34e6b53d8c21c79e67c7b46ac658506abb4ed3 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 16:38:07 -0500 Subject: sub_8146060 --- include/decompress.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'include') diff --git a/include/decompress.h b/include/decompress.h index 5f3863dc7..36672dcfd 100644 --- a/include/decompress.h +++ b/include/decompress.h @@ -32,4 +32,6 @@ void LoadSpecialPokePic_DontHandleDeoxys(const struct CompressedSpriteSheet *src u32 sub_8034974(const u8 *ptr); +void sub_800F034(const struct CompressedSpriteSheet *src); + #endif // GUARD_DECOMPRESS_H -- cgit v1.2.3 From 60b8858b19f50751d1222abd0c662d1ee938b3ce Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 16:48:04 -0500 Subject: sub_81461D8 --- include/pokemon_icon.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/pokemon_icon.h b/include/pokemon_icon.h index cef408046..593715b7d 100644 --- a/include/pokemon_icon.h +++ b/include/pokemon_icon.h @@ -14,5 +14,6 @@ void sub_809707C(void); void FreeMonIconPalettes(void); u16 sub_8096FD4(u16); u8 sub_8096ECC(u16, void (*)(struct Sprite *), s16, s16, u8, bool32); +void sub_8097070(struct Sprite *); #endif // GUARD_POKEMON_ICON_H -- cgit v1.2.3 From 5151db6054d0704584fdf53e55840e262cde32a4 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Sun, 2 Dec 2018 17:25:59 -0500 Subject: sub_8146288 --- include/global.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/global.h b/include/global.h index 783a2c375..840c90725 100644 --- a/include/global.h +++ b/include/global.h @@ -599,6 +599,7 @@ struct MEventBuffer_3120_Sub { u16 unk_00; u8 unk_02; + u8 unk_03; u8 filler_04[440]; }; -- cgit v1.2.3 From 208c6054475030ce48482c34647bd5728172b074 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 3 Dec 2018 08:41:06 -0500 Subject: sub_8146604 --- include/link_rfu.h | 1 + 1 file changed, 1 insertion(+) (limited to 'include') diff --git a/include/link_rfu.h b/include/link_rfu.h index 065d23f9f..6e54fcc6c 100644 --- a/include/link_rfu.h +++ b/include/link_rfu.h @@ -4,5 +4,6 @@ void sub_8142504(const u8 *str); bool32 mevent_0814257C(u8 * cmdPtr, const u8 * src); void sub_80FA190(void); +void sub_8142420(void); #endif //GUARD_LINK_RFU_H -- cgit v1.2.3 From 59b87e9d2af887401736d8fd06d3a9266e3983e5 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 3 Dec 2018 10:09:28 -0500 Subject: sub_8146980 --- include/global.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 840c90725..775b3115e 100644 --- a/include/global.h +++ b/include/global.h @@ -600,7 +600,8 @@ struct MEventBuffer_3120_Sub u16 unk_00; u8 unk_02; u8 unk_03; - u8 filler_04[440]; + u8 unk_04[40]; + u8 unk_2C[10][40]; }; struct MEventBuffer_3120 -- cgit v1.2.3 From 931f19d2ead516a5fb5a2a15784391ea02bdbbc3 Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 3 Dec 2018 20:21:35 -0500 Subject: Port mystery_event_script --- include/battle_tower.h | 2 +- include/constants/vars.h | 10 +++++----- include/easy_chat.h | 1 + include/global.berry.h | 1 + include/mail_data.h | 1 + include/mystery_event_msg.h | 18 ++++++++++++++++++ include/mystery_event_script.h | 2 +- include/strings.h | 2 ++ 8 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 include/mystery_event_msg.h (limited to 'include') diff --git a/include/battle_tower.h b/include/battle_tower.h index 0782725b6..ec00d1f96 100644 --- a/include/battle_tower.h +++ b/include/battle_tower.h @@ -5,6 +5,6 @@ u16 sub_8164FCC(u8, u8); void sub_80E7524(u32 *); -void sub_80E7490(void); +void ValidateEReaderTrainer(void); #endif //GUARD_BATTLE_TOWER_H diff --git a/include/constants/vars.h b/include/constants/vars.h index 6dc8d0ccd..c9340a3b4 100644 --- a/include/constants/vars.h +++ b/include/constants/vars.h @@ -51,12 +51,12 @@ #define VAR_0x402D 0x402D #define VAR_0x402E 0x402E -#define VAR_FRONTIER_MANIAC_FACILITY 0x402F +#define VAR_0x402F 0x402F -#define VAR_FRONTIER_GAMBLER_FACILITY 0x4030 -#define VAR_FRONTIER_GAMBLER_SET_FACILITY_F 0x4031 -#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032 -#define VAR_FRONTIER_GAMBLER_PLACED_BET_F 0x4033 +#define VAR_0x4030 0x4030 +#define VAR_0x4031 0x4031 +#define VAR_0x4032 0x4032 +#define VAR_ENIGMA_BERRY_AVAILABLE 0x4033 #define VAR_0x4034 0x4034 #define VAR_0x4035 0x4035 diff --git a/include/easy_chat.h b/include/easy_chat.h index 78e371cbb..bd5c9a026 100644 --- a/include/easy_chat.h +++ b/include/easy_chat.h @@ -38,5 +38,6 @@ void InitializeEasyChatWordArray(u16 *words, u16 length); void ConvertEasyChatWordsToString(u8 *dest, const u16 *src, u16 length1, u16 length2); bool8 ECWord_CheckIfOutsideOfValidRange(u16 word); void sub_80BDE28(void); +void EnableRareWord(u8); #endif // GUARD_EASYCHAT_H diff --git a/include/global.berry.h b/include/global.berry.h index 5c8a43a02..148bbc957 100644 --- a/include/global.berry.h +++ b/include/global.berry.h @@ -1,6 +1,7 @@ #ifndef GUARD_GLOBAL_BERRY_H #define GUARD_GLOBAL_BERRY_H +#define BERRY_NAME_LENGTH 6 #define BERRY_NAME_COUNT 7 #define BERRY_ITEM_EFFECT_COUNT 18 diff --git a/include/mail_data.h b/include/mail_data.h index bbe695203..0275d8dc6 100644 --- a/include/mail_data.h +++ b/include/mail_data.h @@ -10,5 +10,6 @@ // Exported ROM declarations u16 sub_80D45E8(u16, u16 *); +bool8 itemid_is_mail(u16 itemId); #endif //GUARD_MAIL_DATA_H diff --git a/include/mystery_event_msg.h b/include/mystery_event_msg.h new file mode 100644 index 000000000..e96c3069b --- /dev/null +++ b/include/mystery_event_msg.h @@ -0,0 +1,18 @@ +#ifndef GUARD_MYSTERY_EVENT_MSG_H +#define GUARD_MYSTERY_EVENT_MSG_H + +#include + +extern const u8 gText_MysteryGiftBerry[]; +extern const u8 gText_MysteryGiftBerryTransform[]; +extern const u8 gText_MysteryGiftBerryObtained[]; +extern const u8 gText_MysteryGiftSpecialRibbon[]; +extern const u8 gText_MysteryGiftNationalDex[]; +extern const u8 gText_MysteryGiftRareWord[]; +extern const u8 gText_MysteryGiftSentOver[]; +extern const u8 gText_MysteryGiftFullParty[]; +extern const u8 gText_MysteryGiftNewTrainer[]; +extern const u8 gText_MysteryGiftNewAdversaryInBattleTower[]; +extern const u8 gText_MysteryGiftCantBeUsed[]; + +#endif // GUARD_MYSTERY_EVENT_MSG_H diff --git a/include/mystery_event_script.h b/include/mystery_event_script.h index 8f90ccf53..be64663ed 100644 --- a/include/mystery_event_script.h +++ b/include/mystery_event_script.h @@ -7,7 +7,7 @@ u32 RunMysteryEventScript(u8 *); void SetMysteryEventScriptStatus(u32 val); u16 GetRecordMixingGift(void); -void sub_80DA89C(void *); +void sub_80DA89C(u8 *); bool32 sub_80DA8B0(u32 *); #endif // GUARD_MYSTERY_EVENT_SCRIPT_H diff --git a/include/strings.h b/include/strings.h index 90c84c9b9..40021a01d 100644 --- a/include/strings.h +++ b/include/strings.h @@ -89,5 +89,7 @@ extern const u8 gText_Cancel4[]; extern const u8 gText_IsThisTheCorrectTime[]; extern const u8 gText_PkmnFainted3[]; extern const u8 gText_Coins[]; +extern const u8 gText_EggNickname[]; +extern const u8 gText_Pokemon[]; #endif //GUARD_STRINGS_H -- cgit v1.2.3 From c14c6d36f8a60fd561f7c24339b575807bc6066f Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Wed, 5 Dec 2018 08:43:55 -0500 Subject: Rename most special vars --- include/event_data.h | 4 ++-- include/item_menu.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'include') diff --git a/include/event_data.h b/include/event_data.h index bced2a88f..13e388bf2 100644 --- a/include/event_data.h +++ b/include/event_data.h @@ -56,7 +56,7 @@ extern u16 gSpecialVar_MonBoxId; extern u16 gSpecialVar_MonBoxPos; extern u16 gSpecialVar_0x8014; -extern u16 gUnknown_20370D0; -extern u16 gUnknown_20370C0; +extern u16 gSpecialVar_Result; +extern u16 gSpecialVar_0x8004; #endif // GUARD_EVENT_DATA_H diff --git a/include/item_menu.h b/include/item_menu.h index 2482aa51f..a6128b9fb 100644 --- a/include/item_menu.h +++ b/include/item_menu.h @@ -7,7 +7,7 @@ // Exported RAM declarations -extern u16 gUnknown_203AD30; +extern u16 gSpecialVar_ItemId; // Exported ROM declarations void sub_81AAC50(void); -- cgit v1.2.3 From 2761c0f0a5a0411020bd9853329d402b663121cd Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Mon, 17 Dec 2018 15:43:45 -0500 Subject: Drop devkitARM dependency entirely --- include/global.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 775b3115e..1d2152af7 100644 --- a/include/global.h +++ b/include/global.h @@ -705,7 +705,7 @@ struct SaveBlock1 /*0x30D0*/ struct Roamer roamer; /*0x30EC*/ struct EnigmaBerry enigmaBerry; /*0x3120*/ struct MEventBuffers unk_3120; - /*0x348C*/ u8 filler_348C[0x190]; + /*0x348C*/ u8 filler_348C[400]; /*0x361C*/ struct RamScript ramScript; /*0x3A08*/ u8 filler3A08[12]; /*0x3A14*/ u8 seen2[DEX_FLAGS_NO]; -- cgit v1.2.3 From a7ab82a948cdbbe30da4307d2245369980440bea Mon Sep 17 00:00:00 2001 From: PikalaxALT Date: Fri, 21 Dec 2018 11:43:24 -0500 Subject: Guess a small struct in save block 2 --- include/global.h | 49 +++++++++++++++++++++++++++++++++++++------------ include/link.h | 2 -- 2 files changed, 37 insertions(+), 14 deletions(-) (limited to 'include') diff --git a/include/global.h b/include/global.h index 1d2152af7..c47bd2d15 100644 --- a/include/global.h +++ b/include/global.h @@ -224,6 +224,23 @@ struct BerryCrush #define PLAYER_NAME_LENGTH 8 +#define LINK_B_RECORDS_COUNT 5 + +struct LinkBattleRecord +{ + u8 name[PLAYER_NAME_LENGTH]; + u16 trainerId; + u16 wins; + u16 losses; + u16 draws; +}; + +struct LinkBattleRecords +{ + struct LinkBattleRecord entries[LINK_B_RECORDS_COUNT]; + u8 languages[LINK_B_RECORDS_COUNT]; +}; + struct UnknownSaveBlock2Struct { u8 field_0; @@ -244,6 +261,21 @@ struct UnknownSaveBlock2Struct u8 field_EB; }; // sizeof = 0xEC +struct UnkSaveBlock2Substruct_55C +{ + /* 0x000:0x55C */ u8 unk_00_0:1; + u8 unk_00_1:1; + /* 0x001:0x55D */ u8 unk_01; + /* 0x002:0x55E */ u8 unk_02[2]; + /* 0x004:0x560 */ u16 unk_04[2]; + /* 0x008:0x564 */ u16 unk_08[2]; + /* 0x00C:0x568 */ u16 unk_0C[2]; + /* 0x010:0x56C */ u8 unk_10; + /* 0x011:0x56D */ u8 unk_11[3]; + /* 0x014:0x570 */ u16 unk_14; + /* 0x016:0x572 */ u8 unk_16; +}; // size: 0x018 + struct SaveBlock2 { /*0x000*/ u8 playerName[PLAYER_NAME_LENGTH]; @@ -268,9 +300,11 @@ struct SaveBlock2 /*0x0A8*/ u32 field_A8; /*0x0AC*/ u8 filler_AC[0x3F4]; /*0x4A0*/ u32 unk_4A0[0x2F]; - /*0x55c*/ u8 filler_55C[0x53C]; - /*0xA98*/ u8 unk_A98[2][16]; - /*0xAB8*/ u8 filler_AB8[0x468]; + /*0x55c*/ struct UnkSaveBlock2Substruct_55C unk_55C; + /*0x574*/ u8 filler_574[0x524]; + /*0xA98*/ struct LinkBattleRecords linkBattleRecords; + /*0xAF0*/ struct BerryCrush berryCrush; + /*0xB00*/ u8 filler_B00[0x420]; /*0xF20*/ u32 encryptionKey; }; @@ -438,15 +472,6 @@ struct RecordMixing_UnknownStruct u16 unk74[0x2]; }; -struct LinkBattleRecord -{ - u8 name[8]; - u16 trainerId; - u16 wins; - u16 losses; - u16 draws; -}; - struct RecordMixingGiftData { u8 unk0; diff --git a/include/link.h b/include/link.h index ef8776c64..93ad9dfe1 100644 --- a/include/link.h +++ b/include/link.h @@ -146,10 +146,8 @@ extern u16 word_3002910[]; extern bool8 gReceivedRemoteLinkPlayers; extern bool8 gLinkVSyncDisabled; -extern u8 gUnknown_3003F64; extern u8 gUnknown_3003F84; extern u64 gUnknown_3003FB4; -extern u16 gLinkType; void Task_DestroySelf(u8); void OpenLink(void); -- cgit v1.2.3