From 1d1129d28ceb84092dc1e55ded2c1fad32cabc9e Mon Sep 17 00:00:00 2001 From: Kermalis <29823718+Kermalis@users.noreply.github.com> Date: Sat, 13 Dec 2025 18:19:31 -0500 Subject: [PATCH 1/2] Clean some externs --- include/code_8015080.h | 11 +++ include/code_8094F88.h | 3 + include/code_80958E8.h | 5 ++ include/credits1.h | 13 +--- include/mailbox.h | 8 ++- include/pelipper_board.h | 3 + include/thank_you_wonder_mail.h | 2 + include/wonder_mail.h | 2 + include/wonder_mail_2.h | 8 +++ src/code_8015080.c | 5 +- src/credits1.c | 12 +++- src/main_loops.c | 70 +++++++++---------- src/save.c | 20 +++--- src/textbox.c | 118 +++++++++++++------------------- src/wonder_mail_2.c | 7 +- 15 files changed, 147 insertions(+), 140 deletions(-) create mode 100644 include/code_8015080.h create mode 100644 include/wonder_mail_2.h diff --git a/include/code_8015080.h b/include/code_8015080.h new file mode 100644 index 000000000..9bf6b6b82 --- /dev/null +++ b/include/code_8015080.h @@ -0,0 +1,11 @@ +#ifndef GUARD_CODE_8015080_H +#define GUARD_CODE_8015080_H + +#include "structs/menu.h" + +bool8 sub_8015080(u8 *buffer, const MenuItem *menuItems); +u32 sub_801516C(void); +u32 sub_8015198(void); +void sub_80151A4(void); + +#endif // GUARD_CODE_8015080_H diff --git a/include/code_8094F88.h b/include/code_8094F88.h index 006f79b20..00e7a9556 100644 --- a/include/code_8094F88.h +++ b/include/code_8094F88.h @@ -50,5 +50,8 @@ void sub_8095824(DataSerializer *a, unkStruct_203B480 *b); void sub_8095774(DataSerializer *a, unkStruct_203B480 *b); void sub_809542C(DungeonMailSeed *param_1); void sub_8095494(DungeonMailSeed *param_1, u8 index); +void sub_80958E4(u32 *a, u32 b); +u32 sub_8095624(u8 *buffer, u32 b); +u32 sub_80954CC(u8 *buffer, u32 size); #endif // GUARD_CODE_8094F88_H \ No newline at end of file diff --git a/include/code_80958E8.h b/include/code_80958E8.h index 26f7358e9..f1849c2c3 100644 --- a/include/code_80958E8.h +++ b/include/code_80958E8.h @@ -2,6 +2,7 @@ #define GUARD_CODE_80958E8_H #include "constants/mailbox.h" +#include "structs/str_pokemon.h" #include "structs/str_wonder_mail.h" #include "data_serializer.h" @@ -59,6 +60,8 @@ void ResetJobSlot(u8 index); void ResetMailbox(void); void ResetMailboxSlot(u8 index); void ResetPelipperBoardSlot(u8); +u32 RestoreMailInfo(u8 *r0, u32 size); +u32 SaveMailInfo(u8 *r0, u32 size); void ShiftJobSlotsDown(void); void ShiftMailboxSlotsDown(void); void ShiftPelipperJobsDown(void); @@ -70,7 +73,9 @@ void sub_8096488(void); bool8 sub_80964B4(void); bool8 sub_80964E4(void); bool8 sub_809693C(WonderMail *mail); +bool8 sub_8096A08(u8 dungeon, Pokemon *pokemon); void sub_8096AF8(struct unkStruct_8096AF8 *, u8 slotIndex, u8 dungeon); +void sub_8096BD0(void); bool8 sub_8096C08(u8 *jobIndex); u8 *sub_8096DD8(void); u8 *sub_8096DE8(void); diff --git a/include/credits1.h b/include/credits1.h index ebd87789c..a5f93fd98 100644 --- a/include/credits1.h +++ b/include/credits1.h @@ -1,17 +1,6 @@ #ifndef GUARD_CREDITS1_H #define GUARD_CREDITS1_H -#include "structs/str_text.h" - -// size: 0x6C -typedef struct Credits1Work -{ - WindowTemplates unk0; - s32 unk60; - s32 unk64; - /* 0x68 */ s32 creditsCategoryIndex; -} Credits1Work; - // size: 0xC typedef struct CreditsData { @@ -23,7 +12,7 @@ typedef struct CreditsData bool8 DrawCredits(s32 creditsCategoryIndex, s32); -s32 sub_8035574(void); +u32 sub_8035574(void); void sub_803565C(void); #endif // GUARD_CREDITS1_H diff --git a/include/mailbox.h b/include/mailbox.h index 44b89edda..52ae2fd40 100644 --- a/include/mailbox.h +++ b/include/mailbox.h @@ -22,9 +22,6 @@ struct unkStruct_203B304 WindowTemplates unk10C; }; -u8 sub_802DFB0(void); -void SetMailboxState(u32); - enum MailBoxStates { INITIALIZE_MAILBOX, @@ -41,4 +38,9 @@ enum MailBoxStates DISPLAY_SEL_PKMN_NEWS, }; +void SetMailboxState(u32); +u8 sub_802DFB0(void); +u32 sub_802DFD8(void); +void sub_802E06C(void); + #endif // GUARD_MAILBOX_H diff --git a/include/pelipper_board.h b/include/pelipper_board.h index a33221a7d..978209b44 100644 --- a/include/pelipper_board.h +++ b/include/pelipper_board.h @@ -43,5 +43,8 @@ enum PelipperBoardActions }; bool8 sub_802E864(void); +u32 sub_802E890(void); +u32 sub_802E90C(void); +void sub_802E918(void); #endif // GUARD_PELIPPER_BOARD_H diff --git a/include/thank_you_wonder_mail.h b/include/thank_you_wonder_mail.h index d94a5d3d3..467c0e11d 100644 --- a/include/thank_you_wonder_mail.h +++ b/include/thank_you_wonder_mail.h @@ -33,6 +33,8 @@ typedef struct WonderMailStruct_203B2C4 unkStruct_802F204 unk53C; } WonderMailStruct_203B2C4; +void CleanThankYouMailPelipper(void); bool8 CreateThankYouMailPelipper(void); +u32 ThankYouMailPelipperCallback(void); #endif // GUARD_THANK_YOU_WONDER_MAIL_H diff --git a/include/wonder_mail.h b/include/wonder_mail.h index 7342e7b9b..1df340ece 100644 --- a/include/wonder_mail.h +++ b/include/wonder_mail.h @@ -36,5 +36,7 @@ typedef struct WonderMailStruct_203B2C0 u8 sub_8027F88(void); u32 sub_8028078(void); +s32 sub_80282DC(u8 *r0); +void sub_80282FC(void); #endif // GUARD_WONDER_MAIL_H diff --git a/include/wonder_mail_2.h b/include/wonder_mail_2.h new file mode 100644 index 000000000..d4881b2d7 --- /dev/null +++ b/include/wonder_mail_2.h @@ -0,0 +1,8 @@ +#ifndef GUARD_WONDER_MAIL_2_H +#define GUARD_WONDER_MAIL_2_H + +u8 sub_802B2D4(void); +u32 sub_802B358(void); +void sub_802B3B8(void); + +#endif // GUARD_WONDER_MAIL_2_H diff --git a/src/code_8015080.c b/src/code_8015080.c index b61f00881..496b3303e 100644 --- a/src/code_8015080.c +++ b/src/code_8015080.c @@ -1,18 +1,19 @@ #include "global.h" #include "globaldata.h" +#include "constants/input.h" #include "code_800D090.h" -#include "music_util.h" +#include "code_8015080.h" #include "code_803D0D8.h" #include "input.h" #include "memory.h" #include "menu_input.h" +#include "music_util.h" #include "sprite.h" #include "string_format.h" #include "text_1.h" #include "text_2.h" #include "text_3.h" #include "text_util.h" -#include "constants/input.h" struct unkStruct_203B1F8 { diff --git a/src/credits1.c b/src/credits1.c index 2c1bdf5fd..9b68bca9d 100644 --- a/src/credits1.c +++ b/src/credits1.c @@ -1,5 +1,6 @@ #include "global.h" #include "globaldata.h" +#include "structs/str_text.h" #include "code_8099360.h" #include "credits1.h" #include "event_flag.h" @@ -9,6 +10,15 @@ #include "text_1.h" #include "text_3.h" +// Dize: 0x6C +typedef struct Credits1Work +{ + WindowTemplates unk0; + s32 unk60; + s32 unk64; + /* 0x68 */ s32 creditsCategoryIndex; +} Credits1Work; + EWRAM_INIT static Credits1Work *sCredits1Work = { NULL }; static const WindowTemplate sDummyWinTemplate = WIN_TEMPLATE_DUMMY; @@ -161,7 +171,7 @@ bool8 DrawCredits(s32 creditsCategoryIndex, s32 param_2) return TRUE; } -s32 sub_8035574(void) +u32 sub_8035574(void) { switch (sCredits1Work->unk60) { case 0: diff --git a/src/main_loops.c b/src/main_loops.c index eb08da710..2e92c9655 100644 --- a/src/main_loops.c +++ b/src/main_loops.c @@ -1,36 +1,39 @@ #include "global.h" #include "globaldata.h" #include "constants/bg_music.h" +#include "constants/friend_area.h" +#include "constants/ground_map.h" #include "constants/main_menu.h" #include "structs/str_dungeon_setup.h" +#include "adventure_info.h" #include "bg_control.h" #include "bg_palette_buffer.h" #include "code_800558C.h" -#include "graphics_memory.h" #include "code_800C9CC.h" #include "code_800D090_1.h" -#include "music_util.h" -#include "run_dungeon.h" #include "code_8094F88.h" #include "code_80958E8.h" -#include "adventure_info.h" #include "code_8099360.h" #include "code_80A26CC.h" #include "cpu.h" #include "debug.h" +#include "decompress_at.h" #include "def_filearchives.h" +#include "dungeon_info.h" #include "event_flag.h" #include "exclusive_pokemon.h" #include "friend_area.h" +#include "friend_areas_map.h" #include "game_options.h" +#include "graphics_memory.h" #include "ground_main.h" #include "main_loops.h" #include "main_menu1.h" #include "main_menu2.h" -#include "dungeon_info.h" #include "memory.h" #include "moves.h" #include "music.h" +#include "music_util.h" #include "palette_util.h" #include "play_time.h" #include "pokemon.h" @@ -39,6 +42,7 @@ #include "quick_save_write.h" #include "random.h" #include "rescue_team_info.h" +#include "run_dungeon.h" #include "save.h" #include "save_read.h" #include "sprite.h" @@ -47,12 +51,7 @@ #include "text_2.h" #include "text_3.h" #include "text_util.h" -#include "decompress_at.h" #include "world_map.h" -#include "friend_areas_map.h" -#include "structs/str_dungeon_setup.h" -#include "constants/friend_area.h" -#include "constants/ground_map.h" typedef struct unkTalkTable { @@ -73,40 +72,24 @@ static EWRAM_INIT TeamBasicInfo sTeamBasicInfo_203B040 = { .PartnerNick = {""}, }; -static void LoadTitleScreen(void); -static void NDS_LoadOverlay_GroundMain(); -static u32 RunGameMode_Async(u32 param_1); -static void sub_80011CC(DungeonSetupSubstruct *info, u8 dungId); -static void sub_80011E8(DungeonSetupSubstruct *info); -static void LoadAndRunQuickSaveDungeon_Async(DungeonSetupStruct *param_1); -static u8 sub_8001170(void); -static void RemoveMoneyAndRandomItems(void); -static void RemoveAllMoneyAndItems(void); -static void LoadAndRunDungeon_Async(DungeonSetupStruct *r0); -static u32 xxx_script_related_8001334(u32 startMode); -static void MainLoops_RunFrameActions(u32 unused); - -extern bool8 sub_8096A08(u8 dungeon, Pokemon *pokemon); -extern void sub_8096BD0(void); - static const unkTalkTable sBaseKindTable[17] = { - [0] = { .unk0 = 0, .species = MONSTER_PIKACHU }, - [1] = { .unk0 = 1, .species = MONSTER_MEOWTH }, - [2] = { .unk0 = 2, .species = MONSTER_EEVEE }, - [3] = { .unk0 = 3, .species = MONSTER_SKITTY }, - [4] = { .unk0 = 4, .species = MONSTER_SQUIRTLE }, - [5] = { .unk0 = 5, .species = MONSTER_TOTODILE }, - [6] = { .unk0 = 6, .species = MONSTER_MUDKIP }, - [7] = { .unk0 = 7, .species = MONSTER_PSYDUCK }, - [8] = { .unk0 = 8, .species = MONSTER_CHARMANDER }, - [9] = { .unk0 = 9, .species = MONSTER_TORCHIC }, + [ 0] = { .unk0 = 0, .species = MONSTER_PIKACHU }, + [ 1] = { .unk0 = 1, .species = MONSTER_MEOWTH }, + [ 2] = { .unk0 = 2, .species = MONSTER_EEVEE }, + [ 3] = { .unk0 = 3, .species = MONSTER_SKITTY }, + [ 4] = { .unk0 = 4, .species = MONSTER_SQUIRTLE }, + [ 5] = { .unk0 = 5, .species = MONSTER_TOTODILE }, + [ 6] = { .unk0 = 6, .species = MONSTER_MUDKIP }, + [ 7] = { .unk0 = 7, .species = MONSTER_PSYDUCK }, + [ 8] = { .unk0 = 8, .species = MONSTER_CHARMANDER }, + [ 9] = { .unk0 = 9, .species = MONSTER_TORCHIC }, [10] = { .unk0 = 10, .species = MONSTER_CYNDAQUIL }, [11] = { .unk0 = 11, .species = MONSTER_CUBONE }, [12] = { .unk0 = 12, .species = MONSTER_MACHOP }, [13] = { .unk0 = 13, .species = MONSTER_BULBASAUR }, [14] = { .unk0 = 14, .species = MONSTER_CHIKORITA }, [15] = { .unk0 = 15, .species = MONSTER_TREECKO }, - [16] = { .unk0 = 0, .species = MONSTER_NONE }, + [16] = { .unk0 = 0, .species = MONSTER_NONE }, }; static const unkTalkTable sTalkKindTable[5] = { @@ -117,6 +100,19 @@ static const unkTalkTable sTalkKindTable[5] = { [4] = { .unk0 = 2, .species = MONSTER_NONE }, }; +static void LoadAndRunDungeon_Async(DungeonSetupStruct *r0); +static void LoadAndRunQuickSaveDungeon_Async(DungeonSetupStruct *param_1); +static void LoadTitleScreen(void); +static void MainLoops_RunFrameActions(u32 unused); +static void NDS_LoadOverlay_GroundMain(); +static void RemoveAllMoneyAndItems(void); +static void RemoveMoneyAndRandomItems(void); +static u32 RunGameMode_Async(u32 param_1); +static u32 xxx_script_related_8001334(u32 startMode); +static u8 sub_8001170(void); +static void sub_80011CC(DungeonSetupSubstruct *info, u8 dungId); +static void sub_80011E8(DungeonSetupSubstruct *info); + // arm9.bin::0200E0A8 void GameLoop_Async(void) { diff --git a/src/save.c b/src/save.c index 9bdbf4b13..538ccc71f 100644 --- a/src/save.c +++ b/src/save.c @@ -1,21 +1,23 @@ #include "global.h" #include "globaldata.h" -#include "save.h" -#include "music_util.h" -#include "string_format.h" #include "adventure_info.h" +#include "adventure_save.h" +#include "code_800D090_1.h" +#include "code_8094F88.h" +#include "code_80958E8.h" #include "event_flag.h" #include "exclusive_pokemon.h" #include "flash.h" #include "friend_area.h" #include "game_options.h" #include "memory.h" +#include "music_util.h" #include "pokemon_3.h" #include "random.h" -#include "adventure_save.h" -#include "training_maze.h" #include "rescue_scenario.h" -#include "code_800D090_1.h" +#include "save.h" +#include "string_format.h" +#include "training_maze.h" // size: 0x800 struct unk_struct @@ -39,12 +41,6 @@ ALIGNED(4) static const char fill_save0[] = _("pksdir0"); ALIGNED(4) static const char fill_save1[] = _("pksdir0"); ALIGNED(4) static const char fill_save2[] = _("pksdir0"); -extern u32 sub_80954CC(void* a, s32 b); -extern u32 sub_8095624(u8 *, u32); -extern u32 RestoreMailInfo(void* a, s32 b); -extern u32 SaveMailInfo(u8 *, u32); -extern void sub_80958E4(u32 *a, u32 b); - u32 sub_8011C1C(void) { return gUnknown_203B17C; diff --git a/src/textbox.c b/src/textbox.c index 07292a558..8e459e44e 100644 --- a/src/textbox.c +++ b/src/textbox.c @@ -1,30 +1,32 @@ #include "global.h" #include "globaldata.h" -#include "textbox.h" #include "constants/dungeon.h" #include "constants/monster.h" +#include "structs/menu.h" +#include "structs/str_file_system.h" +#include "structs/str_mon_portrait.h" #include "code_800558C.h" #include "code_800D090.h" -#include "confirm_name_menu.h" +#include "code_8015080.h" #include "code_801B60C.h" -#include "code_802DB28.h" -#include "code_80958E8.h" -#include "code_80A26CC.h" -#include "luminous_cave.h" -#include "makuhita_dojo1.h" -#include "makuhita_dojo2.h" -#include "music_util.h" #include "code_801D014.h" +#include "code_802DB28.h" #include "code_803B050.h" +#include "code_80958E8.h" #include "code_8099360.h" +#include "code_80A26CC.h" +#include "confirm_name_menu.h" +#include "credits1.h" #include "credits2.h" +#include "dungeon_list_menu.h" #include "event_flag.h" #include "felicity_bank.h" #include "flash.h" #include "friend_list_menu.h" +#include "game_options.h" #include "ground_lives.h" -#include "ground_map.h" #include "ground_main.h" +#include "ground_map.h" #include "ground_script.h" #include "gulpin_shop_801FB50.h" #include "input.h" @@ -32,30 +34,49 @@ #include "kangaskhan_storage2.h" #include "kecleon_bros1.h" #include "kecleon_bros4.h" +#include "luminous_cave.h" +#include "mailbox.h" #include "main_loops.h" +#include "makuhita_dojo1.h" +#include "makuhita_dojo2.h" #include "memory.h" +#include "music_util.h" +#include "naming_screen.h" #include "palette_util.h" +#include "pelipper_board.h" #include "personality_test1.h" -#include "portrait_placement.h" #include "pokemon.h" +#include "portrait_placement.h" +#include "post_office_guide1.h" +#include "save.h" #include "save_write.h" +#include "script_item.h" #include "string_format.h" #include "text_1.h" #include "text_2.h" #include "text_3.h" +#include "textbox.h" +#include "thank_you_wonder_mail.h" #include "wigglytuff_shop1.h" #include "wigglytuff_shop3.h" #include "wonder_mail.h" -#include "naming_screen.h" -#include "dungeon_list_menu.h" -#include "thank_you_wonder_mail.h" -#include "game_options.h" -#include "pelipper_board.h" -#include "script_item.h" -#include "mailbox.h" -#include "structs/menu.h" -#include "structs/str_file_system.h" -#include "structs/str_mon_portrait.h" +#include "wonder_mail_2.h" + +#define TEXTBOX_FLAG_NONE 0x0 +#define TEXTBOX_FLAG_x1 (1 << 0) +// Unused, but set for almost all flag sets +#define TEXTBOX_FLAG_UNUSED_x2 (1 << 1) +#define TEXTBOX_FLAG_x4 (1 << 2) +#define TEXTBOX_FLAG_x8 (1 << 3) +#define TEXTBOX_FLAG_UNUSED_x10 (1 << 4) +#define TEXTBOX_FLAG_INSTANT_TEXT (1 << 5) +// Both need to be set to wait for the player's button press. One flag would be sufficient in my opinion, but what can you do? +#define TEXTBOX_FLAG_WAIT_FOR_BUTTON_PRESS_2 (1 << 6) +#define TEXTBOX_FLAG_WAIT_FOR_BUTTON_PRESS (1 << 7) +// Speaker's name + dialogue sound +#define TEXTBOX_FLAG_SPEAKER (1 << 8) +// Only dialogue sound +#define TEXTBOX_FLAG_DIALOGUE_SOUND (1 << 9) // Size: 0x24 typedef struct TextboxPortrait @@ -122,48 +143,8 @@ typedef struct Textbox static IWRAM_INIT Textbox *sTextbox = { NULL }; -void sub_809B028(const MenuItem *, s32 a1_, s32 a2, s32 a3, s32 a4_, const u8 *text); -bool8 sub_809B18C(s32 *sp); -extern u8 sub_802B2D4(void); -extern void sub_802B3B8(void); -extern u32 sub_802B358(void); -void sub_8096BD0(void); -bool8 DrawCredits(s32 creditsCategoryIndex, s32); -u32 sub_8035574(); -void sub_803565C(void); -bool8 sub_8015080(u8 *buffer, const MenuItem *menuItems); -s32 sub_801516C(); -void sub_80151A4(); -s32 sub_8015198(); -void sub_8011C28(u32); -bool8 CreateHelperPelipperMenu(s16); -u32 sub_802E90C(); -void sub_802E918(); -u32 sub_80282DC(u8 *r0); -void sub_80282FC(void); -extern void CleanThankYouMailPelipper(void); -extern void CleanHelperPelipper(void); -extern void sub_802E06C(void); -extern u32 ThankYouMailPelipperCallback(void); -extern u32 HelperPelipperCallback(void); -extern u32 sub_802E890(void); -extern u32 sub_802DFD8(void); - -#define TEXTBOX_FLAG_NONE 0x0 -#define TEXTBOX_FLAG_x1 (1 << 0) -// Unused, but set for almost all flag sets -#define TEXTBOX_FLAG_UNUSED_x2 (1 << 1) -#define TEXTBOX_FLAG_x4 (1 << 2) -#define TEXTBOX_FLAG_x8 (1 << 3) -#define TEXTBOX_FLAG_UNUSED_x10 (1 << 4) -#define TEXTBOX_FLAG_INSTANT_TEXT (1 << 5) -// Both need to be set to wait for the player's button press. One flag would be sufficient in my opinion, but what can you do? -#define TEXTBOX_FLAG_WAIT_FOR_BUTTON_PRESS_2 (1 << 6) -#define TEXTBOX_FLAG_WAIT_FOR_BUTTON_PRESS (1 << 7) -// Speaker's name + dialogue sound -#define TEXTBOX_FLAG_SPEAKER (1 << 8) -// Only dialogue sound -#define TEXTBOX_FLAG_DIALOGUE_SOUND (1 << 9) +EWRAM_DATA u16 gUnknown_20399DC = 0; +EWRAM_DATA u16 gUnknown_20399DE = 0; #include "data/portrait_placements.h" @@ -216,24 +197,21 @@ ALIGNED(4) static const u8 sSpeechBubbleText[] = _("{SPEECH_BUBBLE}"); ALIGNED(4) static const u8 sYellowSpeechBubbleText[] = _("{COLOR YELLOW_N}{SPEECH_BUBBLE}{RESET}"); ALIGNED(4) static const u8 sYellowStringText[] = _("{COLOR YELLOW_N}%s{RESET}"); -EWRAM_DATA u16 gUnknown_20399DC = 0; -EWRAM_DATA u16 gUnknown_20399DE = 0; - +static bool8 IsTextboxOpen_809B40C(TextboxText *a0); static void ResetAllTextboxPortraits(void); +static void ResetTextbox(void); static bool8 ScriptPrintTextInternal(TextboxText *ptr, u32 flags_, s32 a2_, const char *text); // textboxType: See enum "TextboxTypeID" static bool8 SetTextboxType(u32 textboxType, bool8 unused); -static void ResetTextbox(void); -static bool8 IsTextboxOpen_809B40C(TextboxText *a0); static u8 *sub_809B428(u8 *a0, s32 a1, u8 *a2); static bool8 sub_809B648(void); static void sub_809C39C(void); static void sub_809C3D8(void); -static void sub_809C504(void); +static void sub_809C414(void); static void sub_809C464(void); static void sub_809C478(void); -static void sub_809C414(void); static void sub_809C4B0(void); +static void sub_809C504(void); static void sub_809C550(void); void TextboxInit(void) diff --git a/src/wonder_mail_2.c b/src/wonder_mail_2.c index 18cf6a651..012c79e2f 100644 --- a/src/wonder_mail_2.c +++ b/src/wonder_mail_2.c @@ -2,13 +2,15 @@ #include "globaldata.h" #include "constants/item.h" #include "constants/wonder_mail.h" +#include "adventure_info.h" #include "code_800D090.h" #include "code_802F204.h" +#include "code_803C1B4.h" #include "code_8094F88.h" -#include "adventure_info.h" #include "code_8099360.h" #include "event_flag.h" #include "game_options.h" +#include "ground_main.h" #include "input.h" #include "memory.h" #include "menu_input.h" @@ -19,8 +21,7 @@ #include "save_write.h" #include "string_format.h" #include "text_1.h" -#include "ground_main.h" -#include "code_803C1B4.h" +#include "wonder_mail_2.h" struct unkStruct_203B2C8 { From 40f63f56e0c2577ccbfa2066c6a9664e588d7bb1 Mon Sep 17 00:00:00 2001 From: Kermalis <29823718+Kermalis@users.noreply.github.com> Date: Sun, 14 Dec 2025 03:42:10 -0500 Subject: [PATCH 2/2] Dize --- src/credits1.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/credits1.c b/src/credits1.c index 9b68bca9d..985db605e 100644 --- a/src/credits1.c +++ b/src/credits1.c @@ -10,7 +10,7 @@ #include "text_1.h" #include "text_3.h" -// Dize: 0x6C +// Size: 0x6C typedef struct Credits1Work { WindowTemplates unk0;