From 93433409902b72e8120d756ea32c757ca6ed9ac0 Mon Sep 17 00:00:00 2001 From: scbroede <32247405+scbroede@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:35:51 -0400 Subject: [PATCH] decompile remaining functions in overlay 107 (#630) --- .clang-format-ignore | 2 - src/overlay107/ov107_02241AE0.c | 1423 +++++++++++-------------------- src/overlay107/ov107_02245EB0.c | 1117 ++++++++---------------- 3 files changed, 843 insertions(+), 1699 deletions(-) diff --git a/.clang-format-ignore b/.clang-format-ignore index 919aef8938..675989aa24 100644 --- a/.clang-format-ignore +++ b/.clang-format-ignore @@ -1,6 +1,4 @@ # These files still contain inline-ASM functions; ignore them for formatting for now -src/overlay107/ov107_02245EB0.c -src/overlay107/ov107_02241AE0.c src/overlay065/ov65_0222DCE0.c src/overlay064/ov64_0222DCE0.c src/overlay062/ov62_02241204.c diff --git a/src/overlay107/ov107_02241AE0.c b/src/overlay107/ov107_02241AE0.c index 06c7cc0379..3769b0eba7 100644 --- a/src/overlay107/ov107_02241AE0.c +++ b/src/overlay107/ov107_02241AE0.c @@ -7,7 +7,6 @@ #include "struct_decls/struct_020302DC_decl.h" #include "struct_decls/struct_0203041C_decl.h" #include "struct_defs/battle_frontier.h" -#include "party.h" #include "struct_defs/struct_02099F80.h" #include "overlay104/ov104_0222DCE0.h" @@ -22,16 +21,15 @@ #include "overlay107/struct_ov107_02249B8C_decl.h" #include "bg_window.h" -#include "sprite.h" #include "communication_information.h" #include "communication_system.h" -#include "system.h" #include "font.h" #include "game_options.h" #include "game_overlay.h" #include "graphics.h" #include "gx_layers.h" #include "heap.h" +#include "item_use_pokemon.h" #include "list_menu.h" #include "menu.h" #include "message.h" @@ -40,175 +38,174 @@ #include "palette.h" #include "party.h" #include "pokemon.h" +#include "render_oam.h" #include "render_window.h" #include "save_player.h" #include "savedata.h" +#include "screen_fade.h" +#include "sound_playback.h" +#include "sprite.h" +#include "sprite_util.h" #include "strbuf.h" #include "string_list.h" #include "string_template.h" +#include "system.h" #include "text.h" #include "trainer_info.h" -#include "sound_playback.h" -#include "sprite_util.h" -#include "render_oam.h" #include "unk_0200C440.h" -#include "screen_fade.h" -#include "system.h" -#include "vram_transfer.h" #include "unk_020302D0.h" #include "unk_0203061C.h" #include "unk_020363E8.h" #include "unk_020393C8.h" #include "unk_0205DFC4.h" #include "unk_0208C098.h" -#include "item_use_pokemon.h" #include "unk_0209BA80.h" +#include "vram_transfer.h" FS_EXTERN_OVERLAY(overlay104); const u16 Unk_ov107_02249F84[] = { - 0xDD, - 0xD9, - 0x10F, - 0xFD, - 0x115, - 0x10D, - 0x11E, - 0x128, - 0x110, - 0x111, - 0xEC, - 0x102, - 0xD6, - 0xE6, - 0x113, - 0xEA, - 0xD5, - 0xE8, - 0x109, - 0x114, - 0xDC, - 0x129, - 0x11F, - 0x10A, - 0x10B, - 0x10C, - 0x10E + 0xDD, + 0xD9, + 0x10F, + 0xFD, + 0x115, + 0x10D, + 0x11E, + 0x128, + 0x110, + 0x111, + 0xEC, + 0x102, + 0xD6, + 0xE6, + 0x113, + 0xEA, + 0xD5, + 0xE8, + 0x109, + 0x114, + 0xDC, + 0x129, + 0x11F, + 0x10A, + 0x10B, + 0x10C, + 0x10E }; const u16 Unk_ov107_02249FBA[NELEMS(Unk_ov107_02249F84)] = { - 0xA, - 0xF, - 0x5, - 0xF, - 0xA, - 0xA, - 0xA, - 0xA, - 0xA, - 0xA, - 0xF, - 0xF, - 0x5, - 0xF, - 0xA, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14, - 0x14 + 0xA, + 0xF, + 0x5, + 0xF, + 0xA, + 0xA, + 0xA, + 0xA, + 0xA, + 0xA, + 0xF, + 0xF, + 0x5, + 0xF, + 0xA, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14, + 0x14 }; const u16 Unk_ov107_0224A02C[] = { - 0x95, - 0x96, - 0x97, - 0x98, - 0x99, - 0x9C, - 0x9D, - 0x9E, - 0xC9, - 0xCA, - 0xCB, - 0xCC, - 0xCD, - 0xCE, - 0xCF, - 0xB8, - 0xB9, - 0xBA, - 0xBB, - 0xBC, - 0xBD, - 0xBE, - 0xBF, - 0xC0, - 0xC1, - 0xC2, - 0xC3, - 0xC4, - 0xC5, - 0xC6, - 0xC7, - 0xC8 + 0x95, + 0x96, + 0x97, + 0x98, + 0x99, + 0x9C, + 0x9D, + 0x9E, + 0xC9, + 0xCA, + 0xCB, + 0xCC, + 0xCD, + 0xCE, + 0xCF, + 0xB8, + 0xB9, + 0xBA, + 0xBB, + 0xBC, + 0xBD, + 0xBE, + 0xBF, + 0xC0, + 0xC1, + 0xC2, + 0xC3, + 0xC4, + 0xC5, + 0xC6, + 0xC7, + 0xC8 }; const u16 Unk_ov107_0224A06C[NELEMS(Unk_ov107_0224A02C)] = { - 0x2, - 0x2, - 0x2, - 0x2, - 0x2, - 0x2, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5, - 0x5 + 0x2, + 0x2, + 0x2, + 0x2, + 0x2, + 0x2, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5, + 0x5 }; const u16 Unk_ov107_02249E06[] = { - 0xC, - 0xC, - NELEMS(Unk_ov107_02249F84) + 0xC, + 0xC, + NELEMS(Unk_ov107_02249F84) }; const u16 Unk_ov107_02249E12[] = { - 0x8, - 0x8, - NELEMS(Unk_ov107_0224A02C) + 0x8, + 0x8, + NELEMS(Unk_ov107_0224A02C) }; - struct UnkStruct_ov107_02241D6C_t { ApplicationManager *appMan; BattleFrontier *frontier; @@ -234,12 +231,12 @@ struct UnkStruct_ov107_02241D6C_t { u16 unk_16; u16 unk_18; u16 unk_1A; - MessageLoader * unk_1C; - MessageLoader * unk_20; - StringTemplate * unk_24; - Strbuf* unk_28; - Strbuf* unk_2C; - Strbuf* unk_30[3]; + MessageLoader *unk_1C; + MessageLoader *unk_20; + StringTemplate *unk_24; + Strbuf *unk_28; + Strbuf *unk_2C; + Strbuf *unk_30[3]; u16 unk_3C[8]; BgConfig *unk_4C; Window unk_50[18]; @@ -250,26 +247,26 @@ struct UnkStruct_ov107_02241D6C_t { StringList *unk_19C; ListMenuTemplate unk_1A0; PaletteData *unk_1C0; - UnkStruct_0200C440 * unk_1C4; + UnkStruct_0200C440 *unk_1C4; Options *options; SaveData *saveData; - UnkStruct_020302DC * unk_1D0; - UnkStruct_0203041C * unk_1D4; + UnkStruct_020302DC *unk_1D0; + UnkStruct_0203041C *unk_1D4; UnkStruct_ov107_02249954 unk_1D8; - UnkStruct_ov107_02249B8C * unk_3E8; - UnkStruct_ov107_02249B8C * unk_3EC; - UnkStruct_ov107_02249B8C * unk_3F0; - UnkStruct_ov107_02249B8C * unk_3F4[4]; - UnkStruct_ov107_02249B8C * unk_404[4]; - UnkStruct_ov107_02249B8C * unk_414; - UnkStruct_ov107_02249B8C * unk_418; - UnkStruct_ov107_02249B8C * unk_41C; - UnkStruct_ov107_02249B8C * unk_420[4]; - UnkStruct_ov107_02249B8C * unk_430; - UnkStruct_ov107_02249B8C * unk_434; - u16 * unk_438; - Party * unk_43C; - NARC * unk_440; + UnkStruct_ov107_02249B8C *unk_3E8; + UnkStruct_ov107_02249B8C *unk_3EC; + UnkStruct_ov107_02249B8C *unk_3F0; + UnkStruct_ov107_02249B8C *unk_3F4[4]; + UnkStruct_ov107_02249B8C *unk_404[4]; + UnkStruct_ov107_02249B8C *unk_414; + UnkStruct_ov107_02249B8C *unk_418; + UnkStruct_ov107_02249B8C *unk_41C; + UnkStruct_ov107_02249B8C *unk_420[4]; + UnkStruct_ov107_02249B8C *unk_430; + UnkStruct_ov107_02249B8C *unk_434; + u16 *unk_438; + Party *unk_43C; + NARC *unk_440; u16 unk_444[40]; u8 unk_494; u8 unk_495; @@ -279,119 +276,119 @@ struct UnkStruct_ov107_02241D6C_t { u32 unk_49C; }; -int ov107_02241AE0(ApplicationManager *appMan, int * param1); -int ov107_02241BD4(ApplicationManager *appMan, int * param1); -int ov107_02241D2C(ApplicationManager *appMan, int * param1); -static BOOL ov107_02241D6C(UnkStruct_ov107_02241D6C * param0); -static void ov107_02241E70(UnkStruct_ov107_02241D6C * param0); -static BOOL ov107_02241EC8(UnkStruct_ov107_02241D6C * param0); -static BOOL ov107_02242C64(UnkStruct_ov107_02241D6C * param0); -static BOOL ov107_02242D60(UnkStruct_ov107_02241D6C * param0); -static BOOL ov107_02242DCC(UnkStruct_ov107_02241D6C * param0); -static void ov107_02242E14(UnkStruct_ov107_02241D6C * param0); +int ov107_02241AE0(ApplicationManager *appMan, int *param1); +int ov107_02241BD4(ApplicationManager *appMan, int *param1); +int ov107_02241D2C(ApplicationManager *appMan, int *param1); +static BOOL ov107_02241D6C(UnkStruct_ov107_02241D6C *param0); +static void ov107_02241E70(UnkStruct_ov107_02241D6C *param0); +static BOOL ov107_02241EC8(UnkStruct_ov107_02241D6C *param0); +static BOOL ov107_02242C64(UnkStruct_ov107_02241D6C *param0); +static BOOL ov107_02242D60(UnkStruct_ov107_02241D6C *param0); +static BOOL ov107_02242DCC(UnkStruct_ov107_02241D6C *param0); +static void ov107_02242E14(UnkStruct_ov107_02241D6C *param0); static void ov107_02242F24(void); -static void ov107_02242F5C(UnkStruct_ov107_02241D6C * param0); -static void ov107_02243384(UnkStruct_ov107_02241D6C * param0); -static void ov107_02243324(UnkStruct_ov107_02241D6C * param0); +static void ov107_02242F5C(UnkStruct_ov107_02241D6C *param0); +static void ov107_02243384(UnkStruct_ov107_02241D6C *param0); +static void ov107_02243324(UnkStruct_ov107_02241D6C *param0); static void ov107_022433A8(BgConfig *param0); -static void ov107_022433EC(void * param0); +static void ov107_022433EC(void *param0); static void ov107_02243424(void); static void ov107_02243444(BgConfig *param0); -static void ov107_02243588(UnkStruct_ov107_02241D6C * param0, u32 param1); +static void ov107_02243588(UnkStruct_ov107_02241D6C *param0, u32 param1); static void ov107_022435FC(void); -static void ov107_02243630(UnkStruct_ov107_02241D6C * param0, u32 param1); -static void ov107_022436AC(UnkStruct_ov107_02241D6C * param0, u32 param1); -static void ov107_022436F4(UnkStruct_ov107_02241D6C * param0, u32 param1); +static void ov107_02243630(UnkStruct_ov107_02241D6C *param0, u32 param1); +static void ov107_022436AC(UnkStruct_ov107_02241D6C *param0, u32 param1); +static void ov107_022436F4(UnkStruct_ov107_02241D6C *param0, u32 param1); static void ov107_02243678(void); -static void ov107_0224373C(UnkStruct_ov107_02241D6C * param0, u32 param1); -static u8 ov107_0224379C(UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); -static u8 ov107_022437CC(UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, int param10); -static u8 ov107_02243860(UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); -static u8 ov107_02243890(UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); -static u8 ov107_02243918(UnkStruct_ov107_02241D6C * param0, int param1, u8 param2); -static void ov107_02243950(UnkStruct_ov107_02241D6C * param0, Window * param1, Pokemon * param2); -static void ov107_02243B5C(UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u16 param3, u16 param4, int param5); -static void ov107_02243B84(UnkStruct_ov107_02241D6C * param0, Window * param1, Pokemon * param2); -static void ov107_02243C18(UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u32 param3, u32 param4, Pokemon * param5, u32 param6, u32 param7, u32 param8); -static void ov107_02243CC0(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_02243CFC(UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u8 param3); -static void ov107_02243DB0(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_02243DE4(UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u8 param3); -static void ov107_02243E74(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_02243F4C(UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u32 param3); -static void ov107_02243FA4(UnkStruct_ov107_02241D6C * param0); -static void ov107_0224400C(UnkStruct_ov107_02241D6C * param0); -static void ov107_02244018(UnkStruct_ov107_02241D6C * param0); -static void ov107_0224403C(UnkStruct_ov107_02241D6C * param0); -static void ov107_02244064(UnkStruct_ov107_02241D6C * param0); -static void ov107_02244094(UnkStruct_ov107_02241D6C * param0); -static void ov107_0224409C(UnkStruct_ov107_02241D6C * param0); -static void ov107_022440C0(UnkStruct_ov107_02241D6C * param0); -static void ov107_022440C8(UnkStruct_ov107_02241D6C * param0, u8 param1); -static void ov107_02244120(UnkStruct_ov107_02241D6C * param0); -static void ov107_0224414C(UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2); -static void ov107_022441B0(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2, int param3); -static void ov107_022441DC(UnkStruct_ov107_02241D6C * param0); -static void ov107_02244240(UnkStruct_ov107_02241D6C * param0, u8 param1); +static void ov107_0224373C(UnkStruct_ov107_02241D6C *param0, u32 param1); +static u8 ov107_0224379C(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); +static u8 ov107_022437CC(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, int param10); +static u8 ov107_02243860(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); +static u8 ov107_02243890(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); +static u8 ov107_02243918(UnkStruct_ov107_02241D6C *param0, int param1, u8 param2); +static void ov107_02243950(UnkStruct_ov107_02241D6C *param0, Window *param1, Pokemon *param2); +static void ov107_02243B5C(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u16 param3, u16 param4, int param5); +static void ov107_02243B84(UnkStruct_ov107_02241D6C *param0, Window *param1, Pokemon *param2); +static void ov107_02243C18(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u32 param3, u32 param4, Pokemon *param5, u32 param6, u32 param7, u32 param8); +static void ov107_02243CC0(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_02243CFC(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u8 param3); +static void ov107_02243DB0(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_02243DE4(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u8 param3); +static void ov107_02243E74(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_02243F4C(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u32 param3); +static void ov107_02243FA4(UnkStruct_ov107_02241D6C *param0); +static void ov107_0224400C(UnkStruct_ov107_02241D6C *param0); +static void ov107_02244018(UnkStruct_ov107_02241D6C *param0); +static void ov107_0224403C(UnkStruct_ov107_02241D6C *param0); +static void ov107_02244064(UnkStruct_ov107_02241D6C *param0); +static void ov107_02244094(UnkStruct_ov107_02241D6C *param0); +static void ov107_0224409C(UnkStruct_ov107_02241D6C *param0); +static void ov107_022440C0(UnkStruct_ov107_02241D6C *param0); +static void ov107_022440C8(UnkStruct_ov107_02241D6C *param0, u8 param1); +static void ov107_02244120(UnkStruct_ov107_02241D6C *param0); +static void ov107_0224414C(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2); +static void ov107_022441B0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2, int param3); +static void ov107_022441DC(UnkStruct_ov107_02241D6C *param0); +static void ov107_02244240(UnkStruct_ov107_02241D6C *param0, u8 param1); static void ov107_0224440C(ListMenu *param0, u32 param1, u8 param2); static void ov107_02244560(ListMenu *param0, u32 param1, u8 param2); -static void ov107_022445C4(UnkStruct_ov107_02241D6C * param0); +static void ov107_022445C4(UnkStruct_ov107_02241D6C *param0); static void ov107_02244690(ListMenu *param0, u32 param1, u8 param2); static void ov107_02244708(ListMenu *param0, u32 param1, u8 param2); -static void ov107_02244780(UnkStruct_ov107_02241D6C * param0); +static void ov107_02244780(UnkStruct_ov107_02241D6C *param0); static void ov107_0224486C(ListMenu *param0, u32 param1, u8 param2); static void ov107_022448E8(ListMenu *param0, u32 param1, u8 param2); -static void ov107_02244944(UnkStruct_ov107_02241D6C * param0); +static void ov107_02244944(UnkStruct_ov107_02241D6C *param0); static void ov107_02244A1C(ListMenu *param0, u32 param1, u8 param2); -static void ov107_02244A74(UnkStruct_ov107_02241D6C * param0, u32 param1, s32 param2, u32 param3, int param4); -static void ov107_02244A8C(UnkStruct_ov107_02241D6C * param0, u32 param1, BoxPokemon * param2); -static void ov107_02244A98(UnkStruct_ov107_02241D6C * param0, u32 param1); -static void ov107_02244AB4(UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4); -static void ov107_02244B24(UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4); -static void ov107_02244B8C(UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4, u8 param5); -static u8 ov107_02243EF8(UnkStruct_ov107_02241D6C * param0, Window * param1, u16 param2); -static void ov107_02244BD0(UnkStruct_ov107_02241D6C * param0, int * param1, int param2); -static void ov107_02244BD8(UnkStruct_ov107_02241D6C * param0, int param1); -static void ov107_02244C70(UnkStruct_ov107_02241D6C * param0); -static void ov107_02244CA0(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); -static void ov107_02244D08(UnkStruct_ov107_02241D6C * param0, u32 * param1, u32 * param2, u8 param3); -static u16 ov107_02244D5C(UnkStruct_ov107_02241D6C * param0, u16 param1, u8 param2); +static void ov107_02244A74(UnkStruct_ov107_02241D6C *param0, u32 param1, s32 param2, u32 param3, int param4); +static void ov107_02244A8C(UnkStruct_ov107_02241D6C *param0, u32 param1, BoxPokemon *param2); +static void ov107_02244A98(UnkStruct_ov107_02241D6C *param0, u32 param1); +static void ov107_02244AB4(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4); +static void ov107_02244B24(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4); +static void ov107_02244B8C(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4, u8 param5); +static u8 ov107_02243EF8(UnkStruct_ov107_02241D6C *param0, Window *param1, u16 param2); +static void ov107_02244BD0(UnkStruct_ov107_02241D6C *param0, int *param1, int param2); +static void ov107_02244BD8(UnkStruct_ov107_02241D6C *param0, int param1); +static void ov107_02244C70(UnkStruct_ov107_02241D6C *param0); +static void ov107_02244CA0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); +static void ov107_02244D08(UnkStruct_ov107_02241D6C *param0, u32 *param1, u32 *param2, u8 param3); +static u16 ov107_02244D5C(UnkStruct_ov107_02241D6C *param0, u16 param1, u8 param2); static u16 ov107_02244D90(u16 param0); -static u16 ov107_02244DE0(UnkStruct_ov107_02241D6C * param0, u16 param1, u8 param2); -static void ov107_02244E14(UnkStruct_ov107_02241D6C * param0, u16 * param1, u16 * param2, u16 * param3, u16 * param4); -static BOOL ov107_02244E44(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); -static void ov107_0224503C(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); -static u32 ov107_022450E8(UnkStruct_ov107_02241D6C * param0, u8 param1); -static u32 ov107_02245114(UnkStruct_ov107_02241D6C * param0, u8 param1); -static void ov107_02245140(UnkStruct_ov107_02241D6C * param0, s8 param1); -static void ov107_0224518C(UnkStruct_ov107_02241D6C * param0, s8 param1); -static void ov107_022451D8(UnkStruct_ov107_02241D6C * param0); -static BOOL ov107_02245210(Pokemon * param0); -static void ov107_02245288(Window * param0); -BOOL ov107_0224529C(UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2); -void ov107_022452F4(UnkStruct_ov107_02241D6C * param0, u16 param1); -void ov107_02245338(int param0, int param1, void * param2, void * param3); -void ov107_02245368(UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2); -void ov107_022453F8(UnkStruct_ov107_02241D6C * param0, u16 param1); -void ov107_02245408(int param0, int param1, void * param2, void * param3); -void ov107_0224542C(UnkStruct_ov107_02241D6C * param0); -void ov107_02245438(int param0, int param1, void * param2, void * param3); -static void ov107_02245454(Pokemon * param0, u16 param1); -static void ov107_02245464(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_022454F8(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); -static void ov107_022455A0(UnkStruct_ov107_02241D6C * param0, u8 param1, u16 param2); -static void ov107_02245618(UnkStruct_ov107_02241D6C * param0); -static void ov107_02245650(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_02245660(UnkStruct_ov107_02241D6C * param0); -static void ov107_022456E4(UnkStruct_ov107_02241D6C * param0); -static void ov107_02245730(UnkStruct_ov107_02241D6C * param0); -static void ov107_02245780(UnkStruct_ov107_02241D6C * param0, Window * param1); -static void ov107_022459D0(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); -static void ov107_02245B40(UnkStruct_ov107_02241D6C * param0, u8 param1); -static void ov107_02245B90(UnkStruct_ov107_02241D6C * param0, u8 param1); -static void ov107_02245BE0(UnkStruct_ov107_02241D6C * param0); -static void ov107_02245C00(UnkStruct_ov107_02241D6C * param0); -static void ov107_02245C94(UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2); +static u16 ov107_02244DE0(UnkStruct_ov107_02241D6C *param0, u16 param1, u8 param2); +static void ov107_02244E14(UnkStruct_ov107_02241D6C *param0, u16 *param1, u16 *param2, u16 *param3, u16 *param4); +static BOOL ov107_02244E44(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); +static void ov107_0224503C(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); +static u32 ov107_022450E8(UnkStruct_ov107_02241D6C *param0, u8 param1); +static u32 ov107_02245114(UnkStruct_ov107_02241D6C *param0, u8 param1); +static void ov107_02245140(UnkStruct_ov107_02241D6C *param0, s8 param1); +static void ov107_0224518C(UnkStruct_ov107_02241D6C *param0, s8 param1); +static void ov107_022451D8(UnkStruct_ov107_02241D6C *param0); +static BOOL ov107_02245210(Pokemon *param0); +static void ov107_02245288(Window *param0); +BOOL ov107_0224529C(UnkStruct_ov107_02241D6C *param0, u16 param1, u16 param2); +void ov107_022452F4(UnkStruct_ov107_02241D6C *param0, u16 param1); +void ov107_02245338(int param0, int param1, void *param2, void *param3); +void ov107_02245368(UnkStruct_ov107_02241D6C *param0, u16 param1, u16 param2); +void ov107_022453F8(UnkStruct_ov107_02241D6C *param0, u16 param1); +void ov107_02245408(int param0, int param1, void *param2, void *param3); +void ov107_0224542C(UnkStruct_ov107_02241D6C *param0); +void ov107_02245438(int param0, int param1, void *param2, void *param3); +static void ov107_02245454(Pokemon *param0, u16 param1); +static void ov107_02245464(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_022454F8(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); +static void ov107_022455A0(UnkStruct_ov107_02241D6C *param0, u8 param1, u16 param2); +static void ov107_02245618(UnkStruct_ov107_02241D6C *param0); +static void ov107_02245650(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_02245660(UnkStruct_ov107_02241D6C *param0); +static void ov107_022456E4(UnkStruct_ov107_02241D6C *param0); +static void ov107_02245730(UnkStruct_ov107_02241D6C *param0); +static void ov107_02245780(UnkStruct_ov107_02241D6C *param0, Window *param1); +static void ov107_022459D0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); +static void ov107_02245B40(UnkStruct_ov107_02241D6C *param0, u8 param1); +static void ov107_02245B90(UnkStruct_ov107_02241D6C *param0, u8 param1); +static void ov107_02245BE0(UnkStruct_ov107_02241D6C *param0); +static void ov107_02245C00(UnkStruct_ov107_02241D6C *param0); +static void ov107_02245C94(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2); extern void ov107_2243860(void); static const u16 Unk_ov107_02249E00[] = { @@ -407,23 +404,23 @@ static const u16 Unk_ov107_02249E0C[] = { }; static const u32 Unk_ov107_02249FF0[][3] = { - {0x1, 0x13, 0x1}, - {0x2, 0x14, 0x2}, - {0x3, 0x15, 0x3}, - {0x1, 0x16, 0x4}, - {0x1, 0x17, 0xfffffffe} + { 0x1, 0x13, 0x1 }, + { 0x2, 0x14, 0x2 }, + { 0x3, 0x15, 0x3 }, + { 0x1, 0x16, 0x4 }, + { 0x1, 0x17, 0xfffffffe } }; static const u16 Unk_ov107_02249E46[3][3] = { - {0x0, 0x64, 0x64}, - {0x0, 0x64, 0x96}, - {0x0, 0x32, 0x32} + { 0x0, 0x64, 0x64 }, + { 0x0, 0x64, 0x96 }, + { 0x0, 0x32, 0x32 } }; static const u16 Unk_ov107_02249E34[3][3] = { - {0x0, 0x2A, 0x2B}, - {0x0, 0x44, 0x45}, - {0x0, 0x0, 0x0} + { 0x0, 0x2A, 0x2B }, + { 0x0, 0x44, 0x45 }, + { 0x0, 0x0, 0x0 } }; static const ListMenuTemplate Unk_ov107_02249EE4 = { @@ -448,11 +445,11 @@ static const ListMenuTemplate Unk_ov107_02249EE4 = { NULL }; -int ov107_02241AE0 (ApplicationManager *appMan, int * param1) +int ov107_02241AE0(ApplicationManager *appMan, int *param1) { int v0; - UnkStruct_ov107_02241D6C * v1; - UnkStruct_ov104_0223597C * v2; + UnkStruct_ov107_02241D6C *v1; + UnkStruct_ov104_0223597C *v2; Overlay_LoadByID(FS_OVERLAY_ID(overlay104), 2); ov107_02242F24(); @@ -499,9 +496,9 @@ int ov107_02241AE0 (ApplicationManager *appMan, int * param1) return 1; } -int ov107_02241BD4 (ApplicationManager *appMan, int * param1) +int ov107_02241BD4(ApplicationManager *appMan, int *param1) { - UnkStruct_ov107_02241D6C * v0 = ApplicationManager_Data(appMan); + UnkStruct_ov107_02241D6C *v0 = ApplicationManager_Data(appMan); if (v0->unk_496 == 1) { switch (*param1) { @@ -575,10 +572,10 @@ int ov107_02241BD4 (ApplicationManager *appMan, int * param1) return 0; } -int ov107_02241D2C (ApplicationManager *appMan, int * param1) +int ov107_02241D2C(ApplicationManager *appMan, int *param1) { int v0; - UnkStruct_ov107_02241D6C * v1 = ApplicationManager_Data(appMan); + UnkStruct_ov107_02241D6C *v1 = ApplicationManager_Data(appMan); *(v1->unk_438) = v1->unk_0D; @@ -593,7 +590,7 @@ int ov107_02241D2C (ApplicationManager *appMan, int * param1) return 1; } -static BOOL ov107_02241D6C (UnkStruct_ov107_02241D6C * param0) +static BOOL ov107_02241D6C(UnkStruct_ov107_02241D6C *param0) { switch (param0->unk_08) { case 0: @@ -647,10 +644,10 @@ static BOOL ov107_02241D6C (UnkStruct_ov107_02241D6C * param0) return 0; } -static void ov107_02241E70 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02241E70(UnkStruct_ov107_02241D6C *param0) { u16 v0, v1, v2, v3, v4, v5, v6; - Window * v7; + Window *v7; ov107_02244E14(param0, &v2, &v3, &v4, &v5); @@ -667,14 +664,14 @@ static void ov107_02241E70 (UnkStruct_ov107_02241D6C * param0) return; } -static BOOL ov107_02241EC8 (UnkStruct_ov107_02241D6C * param0) +static BOOL ov107_02241EC8(UnkStruct_ov107_02241D6C *param0) { u8 v0, v1; u8 v2; u16 v3; int v4; u32 v5, v6; - Pokemon * v7; + Pokemon *v7; switch (param0->unk_08) { case 0: @@ -758,14 +755,14 @@ static BOOL ov107_02241EC8 (UnkStruct_ov107_02241D6C * param0) if (gSystem.pressedKeys & PAD_KEY_UP) { if (param0->unk_16 == 0) { - ListMenu_TestInput(param0->unk_198, (ListMenuTemplate *)¶m0->unk_1A0, 0, ((NELEMS(Unk_ov107_02249FF0)) - 1), 1, PAD_KEY_DOWN, NULL, NULL); + ListMenu_TestInput(param0->unk_198, (ListMenuTemplate *)¶m0->unk_1A0, 0, ((NELEMS(Unk_ov107_02249FF0))-1), 1, PAD_KEY_DOWN, NULL, NULL); ListMenu_Draw(param0->unk_198); Sound_PlayEffect(SEQ_SE_CONFIRM); ov107_0224379C(param0, ¶m0->unk_50[6], 28, 1, 1, TEXT_SPEED_NO_TRANSFER, 1, 2, 15, FONT_MESSAGE); return 0; } } else if (gSystem.pressedKeys & PAD_KEY_DOWN) { - if (param0->unk_16 == ((NELEMS(Unk_ov107_02249FF0)) - 1)) { + if (param0->unk_16 == ((NELEMS(Unk_ov107_02249FF0))-1)) { ListMenu_TestInput(param0->unk_198, (ListMenuTemplate *)¶m0->unk_1A0, 0, 0, 1, PAD_KEY_UP, NULL, NULL); ListMenu_Draw(param0->unk_198); Sound_PlayEffect(SEQ_SE_CONFIRM); @@ -1239,10 +1236,10 @@ static BOOL ov107_02241EC8 (UnkStruct_ov107_02241D6C * param0) return 0; } -static BOOL ov107_02242C64 (UnkStruct_ov107_02241D6C * param0) +static BOOL ov107_02242C64(UnkStruct_ov107_02241D6C *param0) { u8 v0; - Pokemon * v1; + Pokemon *v1; switch (param0->unk_08) { case 0: @@ -1309,7 +1306,7 @@ static BOOL ov107_02242C64 (UnkStruct_ov107_02241D6C * param0) return 0; } -static BOOL ov107_02242D60 (UnkStruct_ov107_02241D6C * param0) +static BOOL ov107_02242D60(UnkStruct_ov107_02241D6C *param0) { int v0; @@ -1343,7 +1340,7 @@ static BOOL ov107_02242D60 (UnkStruct_ov107_02241D6C * param0) return 0; } -static BOOL ov107_02242DCC (UnkStruct_ov107_02241D6C * param0) +static BOOL ov107_02242DCC(UnkStruct_ov107_02241D6C *param0) { int v0; @@ -1362,7 +1359,7 @@ static BOOL ov107_02242DCC (UnkStruct_ov107_02241D6C * param0) return 0; } -static void ov107_02242E14 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02242E14(UnkStruct_ov107_02241D6C *param0) { u8 v0; int v1, v2; @@ -1412,7 +1409,7 @@ static void ov107_02242E14 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02242F24 (void) +static void ov107_02242F24(void) { SetVBlankCallback(NULL, NULL); SetHBlankCallback(NULL, NULL); @@ -1425,15 +1422,15 @@ static void ov107_02242F24 (void) return; } -static void ov107_02242F5C (UnkStruct_ov107_02241D6C * param0) +static void ov107_02242F5C(UnkStruct_ov107_02241D6C *param0) { u32 v0, v1; u32 v2, v3, v4, v5; u8 v6; u16 v7, v8, v9, v10, v11, v12, v13, v14; int v15, v16, v17; - Window * v18; - Pokemon * v19; + Window *v18; + Pokemon *v19; param0->unk_440 = NARC_ctor(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, HEAP_ID_100); @@ -1524,7 +1521,7 @@ static void ov107_02242F5C (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02243324 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02243324(UnkStruct_ov107_02241D6C *param0) { ov107_02243424(); ov107_02243444(param0->unk_4C); @@ -1545,7 +1542,7 @@ static void ov107_02243324 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02243384 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02243384(UnkStruct_ov107_02241D6C *param0) { ov107_02249604(¶m0->unk_1D8, param0->unk_43C, ov104_0223BA14(param0->unk_09)); return; @@ -1566,9 +1563,9 @@ static void ov107_022433A8(BgConfig *param0) return; } -static void ov107_022433EC (void * param0) +static void ov107_022433EC(void *param0) { - UnkStruct_ov107_02241D6C * v0 = param0; + UnkStruct_ov107_02241D6C *v0 = param0; if (v0->unk_1C0 != NULL) { PaletteData_CommitFadedBuffers(v0->unk_1C0); @@ -1581,7 +1578,7 @@ static void ov107_022433EC (void * param0) OS_SetIrqCheckFlag(OS_IE_V_BLANK); } -static void ov107_02243424 (void) +static void ov107_02243424(void) { UnkStruct_02099F80 v0 = { GX_VRAM_BG_128_C, @@ -1728,7 +1725,7 @@ static void ov107_02243444(BgConfig *param0) return; } -static void ov107_02243588 (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_02243588(UnkStruct_ov107_02241D6C *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_440, 34, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1741,10 +1738,10 @@ static void ov107_02243588 (UnkStruct_ov107_02241D6C * param0, u32 param1) return; } -static void ov107_022435FC (void) +static void ov107_022435FC(void) { - void * v0; - NNSG2dPaletteData * v1; + void *v0; + NNSG2dPaletteData *v1; v0 = Graphics_GetPlttData(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, 137, &v1, HEAP_ID_100); @@ -1755,7 +1752,7 @@ static void ov107_022435FC (void) return; } -static void ov107_02243630 (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_02243630(UnkStruct_ov107_02241D6C *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_440, 34, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_440, 38, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1763,10 +1760,10 @@ static void ov107_02243630 (UnkStruct_ov107_02241D6C * param0, u32 param1) return; } -static void ov107_02243678 (void) +static void ov107_02243678(void) { - void * v0; - NNSG2dPaletteData * v1; + void *v0; + NNSG2dPaletteData *v1; v0 = Graphics_GetPlttData(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, 137, &v1, HEAP_ID_100); @@ -1777,7 +1774,7 @@ static void ov107_02243678 (void) return; } -static void ov107_022436AC (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_022436AC(UnkStruct_ov107_02241D6C *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_440, 34, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_440, 39, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1785,7 +1782,7 @@ static void ov107_022436AC (UnkStruct_ov107_02241D6C * param0, u32 param1) return; } -static void ov107_022436F4 (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_022436F4(UnkStruct_ov107_02241D6C *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_440, 34, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_440, 37, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1793,7 +1790,7 @@ static void ov107_022436F4 (UnkStruct_ov107_02241D6C * param0, u32 param1) return; } -static void ov107_0224373C (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_0224373C(UnkStruct_ov107_02241D6C *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_440, 125, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_440, 126, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1802,12 +1799,12 @@ static void ov107_0224373C (UnkStruct_ov107_02241D6C * param0, u32 param1) return; } -static u8 ov107_0224379C (UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) +static u8 ov107_0224379C(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) { ov107_022437CC(param0, param1, param2, param3, param4, param5, param6, param7, param8, param9, 0); } -static u8 ov107_022437CC (UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, int param10) +static u8 ov107_022437CC(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, int param10) { u8 v0; Window_FillTilemap(param1, param8); @@ -1829,12 +1826,12 @@ static u8 ov107_022437CC (UnkStruct_ov107_02241D6C * param0, Window * param1, in return v0; } -static u8 ov107_02243860 (UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) +static u8 ov107_02243860(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) { return ov107_02243890(param0, param1, param2, param3, param4, param5, param6, param7, param8, param9, 0); } -static u8 ov107_02243890 (UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) +static u8 ov107_02243890(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) { u8 v0; MessageLoader_GetStrbuf(param0->unk_20, param2, param0->unk_2C); @@ -1855,7 +1852,7 @@ static u8 ov107_02243890 (UnkStruct_ov107_02241D6C * param0, Window * param1, in return v0; } -static u8 ov107_02243918 (UnkStruct_ov107_02241D6C * param0, int param1, u8 param2) +static u8 ov107_02243918(UnkStruct_ov107_02241D6C *param0, int param1, u8 param2) { u8 v0 = ov107_0224379C(param0, ¶m0->unk_50[6], param1, 1, 1, TEXT_SPEED_NO_TRANSFER, 1, 2, 15, param2); Window_ScheduleCopyToVRAM(¶m0->unk_50[6]); @@ -1863,245 +1860,51 @@ static u8 ov107_02243918 (UnkStruct_ov107_02241D6C * param0, int param1, u8 para return v0; } -// clang-format off -asm static void ov107_02243950 (UnkStruct_ov107_02241D6C * param0, Window * param1, Pokemon * param2) +static void ov107_02243950(UnkStruct_ov107_02241D6C *param0, Window *window, Pokemon *mon) { - push {r4, r5, r6, lr} - sub sp, #8 - add r4, r1, #0 - add r5, r0, #0 - add r6, r2, #0 - add r0, r4, #0 - mov r1, #0 - bl Window_FillTilemap - add r0, r6, #0 - mov r1, #6 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetItemName - mov r0, #8 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x46 - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #8 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x47 - mov r3, #0x40 - bl ov107_02243B5C - add r0, r6, #0 - bl Pokemon_GetNature - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetNatureName - mov r0, #0x18 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x48 - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #0x18 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x49 - mov r3, #0x40 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetAbilityName - mov r0, #0x28 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4a - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #0x28 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4b - mov r3, #0x40 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa5 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_02244A74 - mov r0, #0x38 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4c - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #0x38 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4d - mov r3, #0x50 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa6 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_02244A74 - mov r0, #0x38 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4e - mov r3, #0x60 - bl ov107_02243B5C - mov r0, #0x38 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x4f - mov r3, #0xb0 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa8 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_02244A74 - mov r0, #0x48 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x50 - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #0x48 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x51 - mov r3, #0x50 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa9 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_02244A74 - mov r0, #0x48 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x52 - mov r3, #0x60 - bl ov107_02243B5C - mov r0, #0x48 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x53 - mov r3, #0xb0 - bl ov107_02243B5C - add r0, r6, #0 - mov r1, #0xa7 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_02244A74 - mov r0, #0x58 - str r0, [sp] - mov r3, #0 - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x54 - str r3, [sp, #4] - bl ov107_02243B5C - mov r0, #0x58 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x55 - mov r3, #0x50 - bl ov107_02243B5C - add r0, r4, #0 - bl Window_ScheduleCopyToVRAM - add sp, #8 - pop {r4, r5, r6, pc} -} -// clang-format on + Window_FillTilemap(window, 0); -static void ov107_02243B5C (UnkStruct_ov107_02241D6C * param0, Window * param1, int param2, u16 param3, u16 param4, int param5) + StringTemplate_SetItemName(param0->unk_24, 0, Pokemon_GetValue(mon, MON_DATA_HELD_ITEM, NULL)); + ov107_02243B5C(param0, window, 70, 0, 8, 0); + ov107_02243B5C(param0, window, 71, 64, 8, 0); + + StringTemplate_SetNatureName(param0->unk_24, 0, Pokemon_GetNature(mon)); + ov107_02243B5C(param0, window, 72, 0, 24, 0); + ov107_02243B5C(param0, window, 73, 64, 24, 0); + + StringTemplate_SetAbilityName(param0->unk_24, 0, Pokemon_GetValue(mon, MON_DATA_ABILITY, NULL)); + ov107_02243B5C(param0, window, 74, 0, 40, 0); + ov107_02243B5C(param0, window, 75, 64, 40, 0); + + ov107_02244A74(param0, 0, Pokemon_GetValue(mon, MON_DATA_ATK, NULL), 3, 1); + ov107_02243B5C(param0, window, 76, 0, 56, 0); + ov107_02243B5C(param0, window, 77, 80, 56, 2); + + ov107_02244A74(param0, 0, Pokemon_GetValue(mon, MON_DATA_DEF, NULL), 3, 1); + ov107_02243B5C(param0, window, 78, 96, 56, 0); + ov107_02243B5C(param0, window, 79, 176, 56, 2); + + ov107_02244A74(param0, 0, Pokemon_GetValue(mon, MON_DATA_SP_ATK, NULL), 3, 1); + ov107_02243B5C(param0, window, 80, 0, 72, 0); + ov107_02243B5C(param0, window, 81, 80, 72, 2); + + ov107_02244A74(param0, 0, Pokemon_GetValue(mon, MON_DATA_SP_DEF, NULL), 3, 1); + ov107_02243B5C(param0, window, 82, 96, 72, 0); + ov107_02243B5C(param0, window, 83, 176, 72, 2); + + ov107_02244A74(param0, 0, Pokemon_GetValue(mon, MON_DATA_SPEED, NULL), 3, 1); + ov107_02243B5C(param0, window, 84, 0, 88, 0); + ov107_02243B5C(param0, window, 85, 80, 88, 2); + + Window_ScheduleCopyToVRAM(window); +} + +static void ov107_02243B5C(UnkStruct_ov107_02241D6C *param0, Window *param1, int param2, u16 param3, u16 param4, int param5) { ov107_02243890(param0, param1, param2, param3, param4, TEXT_SPEED_NO_TRANSFER, 1, 2, 0, FONT_SYSTEM, param5); } -static void ov107_02243B84 (UnkStruct_ov107_02241D6C * param0, Window * param1, Pokemon * param2) +static void ov107_02243B84(UnkStruct_ov107_02241D6C *param0, Window *param1, Pokemon *param2) { Window_FillTilemap(param1, 0); @@ -2114,7 +1917,7 @@ static void ov107_02243B84 (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02243C18 (UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u32 param3, u32 param4, Pokemon * param5, u32 param6, u32 param7, u32 param8) +static void ov107_02243C18(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u32 param3, u32 param4, Pokemon *param5, u32 param6, u32 param7, u32 param8) { u16 v0, v1, v2, v3; @@ -2133,7 +1936,7 @@ static void ov107_02243C18 (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02243CC0 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02243CC0(UnkStruct_ov107_02241D6C *param0, Window *param1) { int v0; u8 v1; @@ -2150,10 +1953,10 @@ static void ov107_02243CC0 (UnkStruct_ov107_02241D6C * param0, Window * param1) return; } -static void ov107_02243CFC (UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u8 param3) +static void ov107_02243CFC(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u8 param3) { u16 v0, v1, v2, v3, v4, v5, v6; - Pokemon * v7; + Pokemon *v7; v7 = Party_GetPokemonBySlotIndex(param0->unk_43C, param2); @@ -2186,7 +1989,7 @@ static void ov107_02243CFC (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02243DB0 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02243DB0(UnkStruct_ov107_02241D6C *param0, Window *param1) { int v0; u8 v1 = ov104_0223B7A8(param0->unk_09, 1); @@ -2199,11 +2002,11 @@ static void ov107_02243DB0 (UnkStruct_ov107_02241D6C * param0, Window * param1) return; } -static void ov107_02243DE4 (UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u8 param3) +static void ov107_02243DE4(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u8 param3) { u32 v0, v1, v2, v3, v4; u16 v5, v6; - Pokemon * v7; + Pokemon *v7; if (ov104_0223BA14(param0->unk_09) == 0) { v5 = 40; @@ -2234,7 +2037,7 @@ static void ov107_02243DE4 (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02243E74 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02243E74(UnkStruct_ov107_02241D6C *param0, Window *param1) { u16 v0 = sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))); @@ -2250,7 +2053,7 @@ static void ov107_02243E74 (UnkStruct_ov107_02241D6C * param0, Window * param1) return; } -static u8 ov107_02243EF8 (UnkStruct_ov107_02241D6C * param0, Window * param1, u16 param2) +static u8 ov107_02243EF8(UnkStruct_ov107_02241D6C *param0, Window *param1, u16 param2) { u8 v0; @@ -2264,7 +2067,7 @@ static u8 ov107_02243EF8 (UnkStruct_ov107_02241D6C * param0, Window * param1, u1 return v0; } -static void ov107_02243F4C (UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2, u32 param3) +static void ov107_02243F4C(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2, u32 param3) { u16 v0; @@ -2281,7 +2084,7 @@ static void ov107_02243F4C (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02243FA4 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02243FA4(UnkStruct_ov107_02241D6C *param0) { param0->unk_0A = ov107_022437CC(param0, ¶m0->unk_50[1], 6, 16, 1 + 4, TEXT_SPEED_NO_TRANSFER, 1, 2, 0, FONT_SYSTEM, 1); @@ -2289,13 +2092,13 @@ static void ov107_02243FA4 (UnkStruct_ov107_02241D6C * param0) param0->unk_0A = ov107_0224379C(param0, ¶m0->unk_50[7], 5, 1, 1, TEXT_SPEED_NO_TRANSFER, 1, 2, 15, FONT_MESSAGE); } -static void ov107_0224400C (UnkStruct_ov107_02241D6C * param0) +static void ov107_0224400C(UnkStruct_ov107_02241D6C *param0) { ov107_02245288(¶m0->unk_50[7]); return; } -static void ov107_02244018 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244018(UnkStruct_ov107_02241D6C *param0) { ov107_02249DBC(¶m0->unk_50[8], Options_Frame(param0->options)); param0->unk_16 = 0; @@ -2304,7 +2107,7 @@ static void ov107_02244018 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_0224403C (UnkStruct_ov107_02241D6C * param0) +static void ov107_0224403C(UnkStruct_ov107_02241D6C *param0) { ListMenu_GetListAndCursorPos(param0->unk_198, ¶m0->unk_18, ¶m0->unk_1A); @@ -2314,7 +2117,7 @@ static void ov107_0224403C (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02244064 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244064(UnkStruct_ov107_02241D6C *param0) { ov107_02249DBC(¶m0->unk_50[6], Options_Frame(param0->options)); @@ -2325,13 +2128,13 @@ static void ov107_02244064 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02244094 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244094(UnkStruct_ov107_02241D6C *param0) { ov107_02245730(param0); return; } -static void ov107_0224409C (UnkStruct_ov107_02241D6C * param0) +static void ov107_0224409C(UnkStruct_ov107_02241D6C *param0) { ov107_02249DBC(¶m0->unk_50[6], Options_Frame(param0->options)); param0->unk_16 = 0; @@ -2340,13 +2143,13 @@ static void ov107_0224409C (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_022440C0 (UnkStruct_ov107_02241D6C * param0) +static void ov107_022440C0(UnkStruct_ov107_02241D6C *param0) { ov107_02245730(param0); return; } -static void ov107_022440C8 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static void ov107_022440C8(UnkStruct_ov107_02241D6C *param0, u8 param1) { param0->unk_0E_3 = 1; @@ -2368,7 +2171,7 @@ static void ov107_022440C8 (UnkStruct_ov107_02241D6C * param0, u8 param1) return; } -static void ov107_02244120 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244120(UnkStruct_ov107_02241D6C *param0) { if (param0->unk_0E_3 == 1) { param0->unk_0E_3 = 0; @@ -2380,7 +2183,7 @@ static void ov107_02244120 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_0224414C (UnkStruct_ov107_02241D6C * param0, Window * param1, u8 param2) +static void ov107_0224414C(UnkStruct_ov107_02241D6C *param0, Window *param1, u8 param2) { int v0; @@ -2401,10 +2204,10 @@ static void ov107_0224414C (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_022441B0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2, int param3) +static void ov107_022441B0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2, int param3) { int v0; - void * v1; + void *v1; MessageLoader_GetStrbuf(param0->unk_20, param3, param0->unk_30[param1]); @@ -2414,7 +2217,7 @@ static void ov107_022441B0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return; } -static void ov107_022441DC (UnkStruct_ov107_02241D6C * param0) +static void ov107_022441DC(UnkStruct_ov107_02241D6C *param0) { ov107_02249D84(param0->unk_4C, ¶m0->unk_50[13]); ov107_0224414C(param0, ¶m0->unk_50[13], 2); @@ -2427,12 +2230,12 @@ static void ov107_022441DC (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02244240 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static void ov107_02244240(UnkStruct_ov107_02241D6C *param0, u8 param1) { u8 v0, v1, v2; u16 v3; int v4; - MessageLoader * v5; + MessageLoader *v5; ov107_0224503C(param0, param0->unk_0D, 1); v2 = ov107_02249C98(param0->unk_14, param0->unk_0D); @@ -2549,7 +2352,7 @@ static void ov107_02244560(ListMenu *param0, u32 param1, u8 param2) return; } -static void ov107_022445C4 (UnkStruct_ov107_02241D6C * param0) +static void ov107_022445C4(UnkStruct_ov107_02241D6C *param0) { u8 v0, v1; u16 v2; @@ -2650,13 +2453,13 @@ static void ov107_02244708(ListMenu *param0, u32 param1, u8 param2) } static const u32 Unk_ov107_02249F54[][3] = { - {0x1, 0x2C, 0x6}, - {0x2, 0x2D, 0x7}, - {0x1, 0x2E, 0x8}, - {0x1, 0x2F, 0xfffffffe} + { 0x1, 0x2C, 0x6 }, + { 0x2, 0x2D, 0x7 }, + { 0x1, 0x2E, 0x8 }, + { 0x1, 0x2F, 0xfffffffe } }; -static void ov107_02244780 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244780(UnkStruct_ov107_02241D6C *param0) { u8 v0, v1; u16 v2; @@ -2760,11 +2563,11 @@ static void ov107_022448E8(ListMenu *param0, u32 param1, u8 param2) } static const u32 Unk_ov107_02249F2C[][2] = { - {0x9, 0x0}, - {0xA, 0x5}, - {0xB, 0x9}, - {0xC, 0xA}, - {0xD, 0xfffffffe} + { 0x9, 0x0 }, + { 0xA, 0x5 }, + { 0xB, 0x9 }, + { 0xC, 0xA }, + { 0xD, 0xfffffffe } }; static const u16 Unk_ov107_02249E18[] = { @@ -2775,7 +2578,7 @@ static const u16 Unk_ov107_02249E18[] = { 0x12 }; -static void ov107_02244944 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244944(UnkStruct_ov107_02241D6C *param0) { int v0; @@ -2808,7 +2611,7 @@ static void ov107_02244944 (UnkStruct_ov107_02241D6C * param0) static void ov107_02244A1C(ListMenu *param0, u32 param1, u8 param2) { - UnkStruct_ov107_02241D6C * v0; + UnkStruct_ov107_02241D6C *v0; u16 v1; v0 = (UnkStruct_ov107_02241D6C *)ListMenu_GetAttribute(param0, 19); @@ -2823,29 +2626,29 @@ static void ov107_02244A1C(ListMenu *param0, u32 param1, u8 param2) return; } -static void ov107_02244A74 (UnkStruct_ov107_02241D6C * param0, u32 param1, s32 param2, u32 param3, int param4) +static void ov107_02244A74(UnkStruct_ov107_02241D6C *param0, u32 param1, s32 param2, u32 param3, int param4) { StringTemplate_SetNumber(param0->unk_24, param1, param2, param3, param4, 1); return; } -static void ov107_02244A8C (UnkStruct_ov107_02241D6C * param0, u32 param1, BoxPokemon * param2) +static void ov107_02244A8C(UnkStruct_ov107_02241D6C *param0, u32 param1, BoxPokemon *param2) { StringTemplate_SetSpeciesName(param0->unk_24, param1, param2); return; } -static void ov107_02244A98 (UnkStruct_ov107_02241D6C * param0, u32 param1) +static void ov107_02244A98(UnkStruct_ov107_02241D6C *param0, u32 param1) { StringTemplate_SetPlayerName(param0->unk_24, param1, SaveData_GetTrainerInfo(param0->saveData)); return; } -static void ov107_02244AB4 (UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4) +static void ov107_02244AB4(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4) { TextColor v0; - const TrainerInfo * v1; - Strbuf* v2; + const TrainerInfo *v1; + Strbuf *v2; v1 = SaveData_GetTrainerInfo(param0->saveData); v2 = Strbuf_Init((7 + 1), HEAP_ID_100); @@ -2865,12 +2668,12 @@ static void ov107_02244AB4 (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02244B24 (UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4) +static void ov107_02244B24(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4) { - TrainerInfo * v0; + TrainerInfo *v0; TextColor v1; - v0 = CommInfo_TrainerInfo((CommSys_CurNetId() ^ 1)); + v0 = CommInfo_TrainerInfo(CommSys_CurNetId() ^ 1); if (TrainerInfo_Gender(v0) == 0) { v1 = TEXT_COLOR(7, 8, 0); @@ -2884,7 +2687,7 @@ static void ov107_02244B24 (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02244B8C (UnkStruct_ov107_02241D6C * param0, Window * param1, u32 param2, u32 param3, u8 param4, u8 param5) +static void ov107_02244B8C(UnkStruct_ov107_02241D6C *param0, Window *param1, u32 param2, u32 param3, u8 param4, u8 param5) { u32 v0, v1; u8 v2, v3, v4; @@ -2908,14 +2711,14 @@ static void ov107_02244B8C (UnkStruct_ov107_02241D6C * param0, Window * param1, return; } -static void ov107_02244BD0 (UnkStruct_ov107_02241D6C * param0, int * param1, int param2) +static void ov107_02244BD0(UnkStruct_ov107_02241D6C *param0, int *param1, int param2) { param0->unk_08 = 0; *param1 = param2; return; } -static void ov107_02244BD8 (UnkStruct_ov107_02241D6C * param0, int param1) +static void ov107_02244BD8(UnkStruct_ov107_02241D6C *param0, int param1) { u8 v0; int v1 = 0; @@ -2976,7 +2779,7 @@ static void ov107_02244BD8 (UnkStruct_ov107_02241D6C * param0, int param1) return; } -static void ov107_02244C70 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02244C70(UnkStruct_ov107_02241D6C *param0) { Sound_PlayEffect(SEQ_SE_CONFIRM); @@ -2988,9 +2791,9 @@ static void ov107_02244C70 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02244CA0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) +static void ov107_02244CA0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { - UnkStruct_ov107_02249B8C * v0; + UnkStruct_ov107_02249B8C *v0; u32 v1, v2, v3, v4; if (param2 == 0) { @@ -3015,7 +2818,7 @@ static void ov107_02244CA0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return; } -static void ov107_02244D08 (UnkStruct_ov107_02241D6C * param0, u32 * param1, u32 * param2, u8 param3) +static void ov107_02244D08(UnkStruct_ov107_02241D6C *param0, u32 *param1, u32 *param2, u8 param3) { if (ov104_0223BA14(param0->unk_09) == 1) { if (param3 == 0) { @@ -3041,7 +2844,7 @@ static void ov107_02244D08 (UnkStruct_ov107_02241D6C * param0, u32 * param1, u32 return; } -static u16 ov107_02244D5C (UnkStruct_ov107_02241D6C * param0, u16 param1, u8 param2) +static u16 ov107_02244D5C(UnkStruct_ov107_02241D6C *param0, u16 param1, u8 param2) { u8 v0, v1, v2, v3; @@ -3056,7 +2859,7 @@ static u16 ov107_02244D5C (UnkStruct_ov107_02241D6C * param0, u16 param1, u8 par return Unk_ov107_02249FBA[param1]; } -static u16 ov107_02244D90 (u16 param0) +static u16 ov107_02244D90(u16 param0) { int v0; @@ -3076,7 +2879,7 @@ static u16 ov107_02244D90 (u16 param0) return 0; } -static u16 ov107_02244DE0 (UnkStruct_ov107_02241D6C * param0, u16 param1, u8 param2) +static u16 ov107_02244DE0(UnkStruct_ov107_02241D6C *param0, u16 param1, u8 param2) { u8 v0, v1, v2, v3; @@ -3091,7 +2894,7 @@ static u16 ov107_02244DE0 (UnkStruct_ov107_02241D6C * param0, u16 param1, u8 par return Unk_ov107_02249F84[param1]; } -static void ov107_02244E14 (UnkStruct_ov107_02241D6C * param0, u16 * param1, u16 * param2, u16 * param3, u16 * param4) +static void ov107_02244E14(UnkStruct_ov107_02241D6C *param0, u16 *param1, u16 *param2, u16 *param3, u16 *param4) { if (ov104_0223BA14(param0->unk_09) == 0) { *param1 = 28; @@ -3108,12 +2911,12 @@ static void ov107_02244E14 (UnkStruct_ov107_02241D6C * param0, u16 * param1, u16 return; } -static BOOL ov107_02244E44 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) +static BOOL ov107_02244E44(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { u32 v0, v1, v2, v3; u16 v4; u8 v5; - Pokemon * v6; + Pokemon *v6; v5 = ov107_02249C98(param0->unk_14, param1); v6 = Party_GetPokemonBySlotIndex(param0->unk_43C, v5); @@ -3192,7 +2995,7 @@ static BOOL ov107_02244E44 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return 0; } -static void ov107_0224503C (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) +static void ov107_0224503C(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { u8 v0, v1; u16 v2; @@ -3229,7 +3032,7 @@ static void ov107_0224503C (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return; } -static u32 ov107_022450E8 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static u32 ov107_022450E8(UnkStruct_ov107_02241D6C *param0, u8 param1) { u32 v0; @@ -3251,7 +3054,7 @@ static u32 ov107_022450E8 (UnkStruct_ov107_02241D6C * param0, u8 param1) return v0; } -static u32 ov107_02245114 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static u32 ov107_02245114(UnkStruct_ov107_02241D6C *param0, u8 param1) { u32 v0; @@ -3273,9 +3076,9 @@ static u32 ov107_02245114 (UnkStruct_ov107_02241D6C * param0, u8 param1) return v0; } -static void ov107_02245140 (UnkStruct_ov107_02241D6C * param0, s8 param1) +static void ov107_02245140(UnkStruct_ov107_02241D6C *param0, s8 param1) { - Pokemon * v0; + Pokemon *v0; s8 v1 = param0->unk_0D; v1 += param1; @@ -3294,9 +3097,9 @@ static void ov107_02245140 (UnkStruct_ov107_02241D6C * param0, s8 param1) return; } -static void ov107_0224518C (UnkStruct_ov107_02241D6C * param0, s8 param1) +static void ov107_0224518C(UnkStruct_ov107_02241D6C *param0, s8 param1) { - Pokemon * v0; + Pokemon *v0; s8 v1 = param0->unk_0D; v1 += param1; @@ -3315,7 +3118,7 @@ static void ov107_0224518C (UnkStruct_ov107_02241D6C * param0, s8 param1) return; } -static void ov107_022451D8 (UnkStruct_ov107_02241D6C * param0) +static void ov107_022451D8(UnkStruct_ov107_02241D6C *param0) { ov107_02245618(param0); ov107_02245730(param0); @@ -3329,7 +3132,7 @@ static void ov107_022451D8 (UnkStruct_ov107_02241D6C * param0) return; } -static BOOL ov107_02245210 (Pokemon * param0) +static BOOL ov107_02245210(Pokemon *param0) { u8 v0 = 0; @@ -3352,14 +3155,14 @@ static BOOL ov107_02245210 (Pokemon * param0) return v0; } -static void ov107_02245288 (Window * param0) +static void ov107_02245288(Window *param0) { Window_EraseMessageBox(param0, 1); Window_ClearAndScheduleCopyToVRAM(param0); return; } -BOOL ov107_0224529C (UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2) +BOOL ov107_0224529C(UnkStruct_ov107_02241D6C *param0, u16 param1, u16 param2) { int v0, v1; @@ -3391,10 +3194,10 @@ BOOL ov107_0224529C (UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2) return v0; } -void ov107_022452F4 (UnkStruct_ov107_02241D6C * param0, u16 param1) +void ov107_022452F4(UnkStruct_ov107_02241D6C *param0, u16 param1) { int v0, v1; - TrainerInfo * v2; + TrainerInfo *v2; v1 = 0; v2 = SaveData_GetTrainerInfo(param0->saveData); @@ -3414,11 +3217,11 @@ void ov107_022452F4 (UnkStruct_ov107_02241D6C * param0, u16 param1) return; } -void ov107_02245338 (int param0, int param1, void * param2, void * param3) +void ov107_02245338(int param0, int param1, void *param2, void *param3) { int v0, v1; - UnkStruct_ov107_02241D6C * v2 = param3; - const u16 * v3 = param2; + UnkStruct_ov107_02241D6C *v2 = param3; + const u16 *v3 = param2; v1 = 0; v2->unk_0F++; @@ -3439,7 +3242,7 @@ void ov107_02245338 (int param0, int param1, void * param2, void * param3) return; } -void ov107_02245368 (UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2) +void ov107_02245368(UnkStruct_ov107_02241D6C *param0, u16 param1, u16 param2) { param0->unk_444[0] = param1; param0->unk_444[1] = param2; @@ -3457,11 +3260,11 @@ void ov107_02245368 (UnkStruct_ov107_02241D6C * param0, u16 param1, u16 param2) return; } -void ov107_022453A0 (int param0, int param1, void * param2, void * param3) +void ov107_022453A0(int param0, int param1, void *param2, void *param3) { int v0, v1; - UnkStruct_ov107_02241D6C * v2 = param3; - const u16 * v3 = param2; + UnkStruct_ov107_02241D6C *v2 = param3; + const u16 *v3 = param2; v1 = 0; v2->unk_0F++; @@ -3489,7 +3292,7 @@ void ov107_022453A0 (int param0, int param1, void * param2, void * param3) return; } -void ov107_022453F8 (UnkStruct_ov107_02241D6C * param0, u16 param1) +void ov107_022453F8(UnkStruct_ov107_02241D6C *param0, u16 param1) { param0->unk_444[0] = param1; param0->unk_444[1] = param0->unk_0D; @@ -3497,10 +3300,10 @@ void ov107_022453F8 (UnkStruct_ov107_02241D6C * param0, u16 param1) return; } -void ov107_02245408 (int param0, int param1, void * param2, void * param3) +void ov107_02245408(int param0, int param1, void *param2, void *param3) { - UnkStruct_ov107_02241D6C * v0 = param3; - const u16 * v1 = param2; + UnkStruct_ov107_02241D6C *v0 = param3; + const u16 *v1 = param2; if (CommSys_CurNetId() == param0) { return; @@ -3512,16 +3315,16 @@ void ov107_02245408 (int param0, int param1, void * param2, void * param3) return; } -void ov107_0224542C (UnkStruct_ov107_02241D6C * param0) +void ov107_0224542C(UnkStruct_ov107_02241D6C *param0) { param0->unk_444[0] = 1; return; } -void ov107_02245438 (int param0, int param1, void * param2, void * param3) +void ov107_02245438(int param0, int param1, void *param2, void *param3) { - UnkStruct_ov107_02241D6C * v0 = param3; - const u16 * v1 = param2; + UnkStruct_ov107_02241D6C *v0 = param3; + const u16 *v1 = param2; if (CommSys_CurNetId() == param0) { return; @@ -3531,13 +3334,13 @@ void ov107_02245438 (int param0, int param1, void * param2, void * param3) return; } -static void ov107_02245454 (Pokemon * param0, u16 param1) +static void ov107_02245454(Pokemon *param0, u16 param1) { Pokemon_ApplyItemEffects(param0, param1, 0, 0, 100); return; } -static void ov107_02245464 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02245464(UnkStruct_ov107_02241D6C *param0, Window *param1) { u16 v0, v1, v2, v3, v4, v5; @@ -3575,10 +3378,10 @@ static void ov107_02245464 (UnkStruct_ov107_02241D6C * param0, Window * param1) return; } -static void ov107_022454F8 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) +static void ov107_022454F8(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { u32 v0; - Pokemon * v1; + Pokemon *v1; v1 = Party_GetPokemonBySlotIndex(param0->unk_43C, ov107_02249C98(param0->unk_14, param1)); v0 = ov107_02249CAC(param0->saveData, param0->unk_09, 0); @@ -3609,9 +3412,9 @@ static void ov107_022454F8 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return; } -static void ov107_022455A0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u16 param2) +static void ov107_022455A0(UnkStruct_ov107_02241D6C *param0, u8 param1, u16 param2) { - Pokemon * v0; + Pokemon *v0; v0 = Party_GetPokemonBySlotIndex(param0->unk_43C, ov107_02249C98(param0->unk_14, param1)); @@ -3627,7 +3430,7 @@ static void ov107_022455A0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u16 pa return; } -static void ov107_02245618 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02245618(UnkStruct_ov107_02241D6C *param0) { if (param0->unk_0E_4 == 1) { param0->unk_0E_4 = 0; @@ -3639,13 +3442,13 @@ static void ov107_02245618 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02245650 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02245650(UnkStruct_ov107_02241D6C *param0, Window *param1) { param0->unk_0E_0 = 1; return; } -static void ov107_02245660 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02245660(UnkStruct_ov107_02241D6C *param0) { ov107_02249BAC(param0->unk_3F0, 0); ov107_02249BAC(param0->unk_3E8, 0); @@ -3665,7 +3468,7 @@ static void ov107_02245660 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_022456E4 (UnkStruct_ov107_02241D6C * param0) +static void ov107_022456E4(UnkStruct_ov107_02241D6C *param0) { u16 v0; @@ -3679,9 +3482,9 @@ static void ov107_022456E4 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02245730 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02245730(UnkStruct_ov107_02241D6C *param0) { - Window * v0; + Window *v0; if (param0->unk_0E_0 == 1) { param0->unk_0E_0 = 0; @@ -3698,279 +3501,49 @@ static void ov107_02245730 (UnkStruct_ov107_02241D6C * param0) return; } -// clang-format off -asm static void ov107_02245780 (UnkStruct_ov107_02241D6C * param0, Window * param1) +static void ov107_02245780(UnkStruct_ov107_02241D6C *param0, Window *window) { - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x30 - add r4, r1, #0 - add r1, sp, #0x28 - str r1, [sp] - add r1, sp, #0x2c - add r3, sp, #0x28 - add r5, r0, #0 - add r1, #2 - add r2, sp, #0x2c - add r3, #2 - bl ov107_02244E14 - ldrb r0, [r5, #9] - bl ov104_0223BA14 - cmp r0, #0 - bne _0224581A - add r1, sp, #0x28 - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x1c] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x1c] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_02244A74 - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02243890 - strb r0, [r5, #0xa] - b _022459C2 - _0224581A: - bl CommSys_CurNetId - cmp r0, #0 - add r1, sp, #0x28 - bne _022458F4 - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x20] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x20] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_02244A74 - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02243890 - add r1, sp, #0x28 - strb r0, [r5, #0xa] - ldrh r0, [r1, #2] - ldrh r6, [r1] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - mov r0, #1 - str r0, [sp] - ldr r2, = 0x436 - add r0, r5, #0 - ldrh r2, [r5, r2] - mov r1, #0 - mov r3, #4 - bl ov107_02244A74 - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r1, #2 - str r1, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - str r1, [sp, #0x18] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #3 - add r3, r7, #0 - bl ov107_02243890 - strb r0, [r5, #0xa] - b _022459C2 - _022458F4: - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - mov r0, #1 - str r0, [sp] - ldr r2, = 0x436 - add r0, r5, #0 - ldrh r2, [r5, r2] - mov r1, #0 - mov r3, #4 - bl ov107_02244A74 - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r1, #2 - str r1, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - str r1, [sp, #0x18] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #3 - add r3, r7, #0 - bl ov107_02243890 - add r1, sp, #0x28 - strb r0, [r5, #0xa] - ldrh r0, [r1, #2] - ldrh r6, [r1] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x24] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x24] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_02244A74 - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02243890 - strb r0, [r5, #0xa] - _022459C2: - add r0, r4, #0 - bl Window_ScheduleCopyToVRAM - add sp, #0x30 - pop {r3, r4, r5, r6, r7, pc} -} -// clang-format on + u16 v0, v1, v2, v3, x, y; + ov107_02244E14(param0, &v0, &v1, &v2, &v3); -static void ov107_022459D0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) + if (ov104_0223BA14(param0->unk_09) == FALSE) { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, y, 48, 16); + ov107_02244A74(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02243890(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + } else { + if (CommSys_CurNetId() == 0) { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, y, 48, 16); + ov107_02244A74(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02243890(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + + x = v2 + 104; + y = v3; + Window_FillRectWithColor(window, 0, x - 48, v3, 48, 16); + ov107_02244A74(param0, 0, param0->unk_49A, 4, 1); + param0->unk_0A = ov107_02243890(param0, window, 3, x, y, 0xFF, 1, 2, 0, 0, 2); + } else { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, v1, 48, 16); + ov107_02244A74(param0, 0, param0->unk_49A, 4, 1); + param0->unk_0A = ov107_02243890(param0, window, 3, x, y, 0xFF, 1, 2, 0, 0, 2); + + x = v2 + 104; + y = v3; + Window_FillRectWithColor(window, 0, x - 48, v3, 48, 16); + ov107_02244A74(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02243890(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + } + } + + Window_ScheduleCopyToVRAM(window); +} + +static void ov107_022459D0(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { u8 v0, v1; u16 v2; @@ -4047,9 +3620,9 @@ static void ov107_022459D0 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 par return; } -static void ov107_02245B40 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static void ov107_02245B40(UnkStruct_ov107_02241D6C *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_02243630(param0, 2); @@ -4064,9 +3637,9 @@ static void ov107_02245B40 (UnkStruct_ov107_02241D6C * param0, u8 param1) return; } -static void ov107_02245B90 (UnkStruct_ov107_02241D6C * param0, u8 param1) +static void ov107_02245B90(UnkStruct_ov107_02241D6C *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_022436AC(param0, 2); @@ -4082,7 +3655,7 @@ static void ov107_02245B90 (UnkStruct_ov107_02241D6C * param0, u8 param1) return; } -static void ov107_02245BE0 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02245BE0(UnkStruct_ov107_02241D6C *param0) { Window_FillTilemap(¶m0->unk_50[4], 0); Window_ClearAndCopyToVRAM(¶m0->unk_50[4]); @@ -4091,11 +3664,11 @@ static void ov107_02245BE0 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02245C00 (UnkStruct_ov107_02241D6C * param0) +static void ov107_02245C00(UnkStruct_ov107_02241D6C *param0) { int v0; u8 v1, v2; - Pokemon * v3; + Pokemon *v3; v1 = ov104_0223B7A8(param0->unk_09, 1); @@ -4117,7 +3690,7 @@ static void ov107_02245C00 (UnkStruct_ov107_02241D6C * param0) return; } -static void ov107_02245C94 (UnkStruct_ov107_02241D6C * param0, u8 param1, u8 param2) +static void ov107_02245C94(UnkStruct_ov107_02241D6C *param0, u8 param1, u8 param2) { u8 v0, v1, v2, v3; u32 v4; diff --git a/src/overlay107/ov107_02245EB0.c b/src/overlay107/ov107_02245EB0.c index 6f6760635e..5ff4d05da6 100644 --- a/src/overlay107/ov107_02245EB0.c +++ b/src/overlay107/ov107_02245EB0.c @@ -7,7 +7,6 @@ #include "struct_decls/struct_020302DC_decl.h" #include "struct_decls/struct_0203041C_decl.h" #include "struct_defs/battle_frontier.h" -#include "party.h" #include "struct_defs/struct_02099F80.h" #include "overlay104/ov104_0222DCE0.h" @@ -22,10 +21,8 @@ #include "overlay107/struct_ov107_02249B8C_decl.h" #include "bg_window.h" -#include "sprite.h" #include "communication_information.h" #include "communication_system.h" -#include "system.h" #include "font.h" #include "game_options.h" #include "game_overlay.h" @@ -40,27 +37,28 @@ #include "palette.h" #include "party.h" #include "pokemon.h" +#include "render_oam.h" #include "render_window.h" #include "save_player.h" #include "savedata.h" +#include "screen_fade.h" +#include "sound_playback.h" +#include "sprite.h" +#include "sprite_util.h" #include "strbuf.h" #include "string_list.h" #include "string_template.h" +#include "system.h" #include "text.h" #include "trainer_info.h" -#include "sound_playback.h" -#include "sprite_util.h" -#include "render_oam.h" #include "unk_0200C440.h" -#include "screen_fade.h" -#include "system.h" -#include "vram_transfer.h" #include "unk_020302D0.h" #include "unk_0203061C.h" #include "unk_020363E8.h" #include "unk_020393C8.h" #include "unk_0205DFC4.h" #include "unk_0209BA80.h" +#include "vram_transfer.h" FS_EXTERN_OVERLAY(overlay104); @@ -90,11 +88,11 @@ struct UnkStruct_ov107_02246170_t { u16 unk_1A; u16 unk_1C; u16 unk_1E; - MessageLoader * unk_20; - StringTemplate * unk_24; - Strbuf* unk_28; - Strbuf* unk_2C; - Strbuf* unk_30[3]; + MessageLoader *unk_20; + StringTemplate *unk_24; + Strbuf *unk_28; + Strbuf *unk_2C; + Strbuf *unk_30[3]; u16 unk_3C[8]; BgConfig *unk_4C; Window unk_50[12]; @@ -104,27 +102,27 @@ struct UnkStruct_ov107_02246170_t { ListMenu *unk_138; StringList *unk_13C; PaletteData *unk_140; - UnkStruct_0200C440 * unk_144; + UnkStruct_0200C440 *unk_144; Options *options; SaveData *saveData; - UnkStruct_020302DC * unk_150; - UnkStruct_0203041C * unk_154; + UnkStruct_020302DC *unk_150; + UnkStruct_0203041C *unk_154; UnkStruct_ov107_02249954 unk_158; - UnkStruct_ov107_02249B8C * unk_368[4]; - UnkStruct_ov107_02249B8C * unk_378[4]; - UnkStruct_ov107_02249B8C * unk_388; - UnkStruct_ov107_02249B8C * unk_38C; - UnkStruct_ov107_02249B8C * unk_390; - UnkStruct_ov107_02249B8C * unk_394[4]; - UnkStruct_ov107_02249B8C * unk_3A4[4][2]; - UnkStruct_ov107_02249B8C * unk_3C4; - u16 * unk_3C8; - u8 * unk_3CC; - u8 * unk_3D0; - u8 * unk_3D4; - u8 * unk_3D8; - Party * unk_3DC; - NARC * unk_3E0; + UnkStruct_ov107_02249B8C *unk_368[4]; + UnkStruct_ov107_02249B8C *unk_378[4]; + UnkStruct_ov107_02249B8C *unk_388; + UnkStruct_ov107_02249B8C *unk_38C; + UnkStruct_ov107_02249B8C *unk_390; + UnkStruct_ov107_02249B8C *unk_394[4]; + UnkStruct_ov107_02249B8C *unk_3A4[4][2]; + UnkStruct_ov107_02249B8C *unk_3C4; + u16 *unk_3C8; + u8 *unk_3CC; + u8 *unk_3D0; + u8 *unk_3D4; + u8 *unk_3D8; + Party *unk_3DC; + NARC *unk_3E0; u16 unk_3E4[40]; u8 unk_434; u8 unk_435; @@ -134,112 +132,112 @@ struct UnkStruct_ov107_02246170_t { u32 unk_43C; }; -int ov107_02245EB0(ApplicationManager *appMan, int * param1); -int ov107_02245FD0(ApplicationManager *appMan, int * param1); -int ov107_02246130(ApplicationManager *appMan, int * param1); -static BOOL ov107_02246170(UnkStruct_ov107_02246170 * param0); -static void ov107_02246274(UnkStruct_ov107_02246170 * param0); -static BOOL ov107_022462CC(UnkStruct_ov107_02246170 * param0); -static BOOL ov107_02246BDC(UnkStruct_ov107_02246170 * param0); -static BOOL ov107_02246CD0(UnkStruct_ov107_02246170 * param0); -static BOOL ov107_02246D3C(UnkStruct_ov107_02246170 * param0); -static void ov107_02246D84(UnkStruct_ov107_02246170 * param0); +int ov107_02245EB0(ApplicationManager *appMan, int *param1); +int ov107_02245FD0(ApplicationManager *appMan, int *param1); +int ov107_02246130(ApplicationManager *appMan, int *param1); +static BOOL ov107_02246170(UnkStruct_ov107_02246170 *param0); +static void ov107_02246274(UnkStruct_ov107_02246170 *param0); +static BOOL ov107_022462CC(UnkStruct_ov107_02246170 *param0); +static BOOL ov107_02246BDC(UnkStruct_ov107_02246170 *param0); +static BOOL ov107_02246CD0(UnkStruct_ov107_02246170 *param0); +static BOOL ov107_02246D3C(UnkStruct_ov107_02246170 *param0); +static void ov107_02246D84(UnkStruct_ov107_02246170 *param0); static void ov107_02246EAC(void); -static void ov107_02246EE4(UnkStruct_ov107_02246170 * param0); -static void ov107_02247280(UnkStruct_ov107_02246170 * param0); -static void ov107_02247220(UnkStruct_ov107_02246170 * param0); +static void ov107_02246EE4(UnkStruct_ov107_02246170 *param0); +static void ov107_02247280(UnkStruct_ov107_02246170 *param0); +static void ov107_02247220(UnkStruct_ov107_02246170 *param0); static void ov107_022472A4(BgConfig *param0); -static void ov107_022472E8(void * param0); +static void ov107_022472E8(void *param0); static void ov107_02247320(void); static void ov107_02247340(BgConfig *param0); -static void ov107_02247484(UnkStruct_ov107_02246170 * param0, u32 param1); +static void ov107_02247484(UnkStruct_ov107_02246170 *param0, u32 param1); static void ov107_022474F8(void); -static void ov107_0224752C(UnkStruct_ov107_02246170 * param0, u32 param1); -static void ov107_022475A8(UnkStruct_ov107_02246170 * param0, u32 param1); +static void ov107_0224752C(UnkStruct_ov107_02246170 *param0, u32 param1); +static void ov107_022475A8(UnkStruct_ov107_02246170 *param0, u32 param1); static void ov107_02247574(void); -static void ov107_022475F0(UnkStruct_ov107_02246170 * param0, u32 param1); -static u8 ov107_02247650(UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); -static u8 ov107_02247680(UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); -static u8 ov107_02247714(UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); -static u8 ov107_02247744(UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); -static u8 ov107_022477CC(UnkStruct_ov107_02246170 * param0, int param1, u8 param2); -static void ov107_02247804(UnkStruct_ov107_02246170 * param0, Window * param1, Pokemon * param2); -static void ov107_02247A14(UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u16 param3, u16 param4, u32 param5); -static void ov107_02247A3C(UnkStruct_ov107_02246170 * param0, Window * param1, Pokemon * param2); -static void ov107_02247AD0(UnkStruct_ov107_02246170 * param0, Window * param1, u8 param2, u32 param3, u32 param4, Pokemon * param5, u32 param6, u32 param7, u32 param8); -static void ov107_02247B78(UnkStruct_ov107_02246170 * param0, Window * param1); -static void ov107_02247C64(UnkStruct_ov107_02246170 * param0, Window * param1); -static void ov107_02247D04(UnkStruct_ov107_02246170 * param0, Window * param1, u8 param2); -static void ov107_02247D68(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2, int param3); -static void ov107_02247D94(UnkStruct_ov107_02246170 * param0); -static void ov107_02247DF0(UnkStruct_ov107_02246170 * param0); -static void ov107_02247E5C(UnkStruct_ov107_02246170 * param0); +static void ov107_022475F0(UnkStruct_ov107_02246170 *param0, u32 param1); +static u8 ov107_02247650(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); +static u8 ov107_02247680(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); +static u8 ov107_02247714(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9); +static u8 ov107_02247744(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10); +static u8 ov107_022477CC(UnkStruct_ov107_02246170 *param0, int param1, u8 param2); +static void ov107_02247804(UnkStruct_ov107_02246170 *param0, Window *param1, Pokemon *param2); +static void ov107_02247A14(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u16 param3, u16 param4, u32 param5); +static void ov107_02247A3C(UnkStruct_ov107_02246170 *param0, Window *param1, Pokemon *param2); +static void ov107_02247AD0(UnkStruct_ov107_02246170 *param0, Window *param1, u8 param2, u32 param3, u32 param4, Pokemon *param5, u32 param6, u32 param7, u32 param8); +static void ov107_02247B78(UnkStruct_ov107_02246170 *param0, Window *param1); +static void ov107_02247C64(UnkStruct_ov107_02246170 *param0, Window *param1); +static void ov107_02247D04(UnkStruct_ov107_02246170 *param0, Window *param1, u8 param2); +static void ov107_02247D68(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2, int param3); +static void ov107_02247D94(UnkStruct_ov107_02246170 *param0); +static void ov107_02247DF0(UnkStruct_ov107_02246170 *param0); +static void ov107_02247E5C(UnkStruct_ov107_02246170 *param0); static void ov107_02247F14(ListMenu *param0, u32 param1, u8 param2); -static void ov107_02247F6C(UnkStruct_ov107_02246170 * param0); +static void ov107_02247F6C(UnkStruct_ov107_02246170 *param0); static void ov107_02248028(ListMenu *param0, u32 param1, u8 param2); static void ov107_022480A0(ListMenu *param0, u32 param1, u8 param2); -static void ov107_022480EC(UnkStruct_ov107_02246170 * param0, u32 param1, s32 param2, u32 param3, int param4); -static void ov107_02248104(UnkStruct_ov107_02246170 * param0, u32 param1, BoxPokemon * param2); -static void ov107_02248110(UnkStruct_ov107_02246170 * param0, u32 param1); -static void ov107_0224812C(UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4); -static void ov107_02248194(UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4); -static void ov107_022481FC(UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4, u8 param5); -static void ov107_02248240(UnkStruct_ov107_02246170 * param0); -static void ov107_022482A4(UnkStruct_ov107_02246170 * param0); -static void ov107_022482B0(UnkStruct_ov107_02246170 * param0); -static void ov107_022482D4(UnkStruct_ov107_02246170 * param0); -static void ov107_022482FC(UnkStruct_ov107_02246170 * param0); -static void ov107_02248348(UnkStruct_ov107_02246170 * param0); -static void ov107_02248350(UnkStruct_ov107_02246170 * param0, int * param1, int param2); -static void ov107_02248358(UnkStruct_ov107_02246170 * param0, int param1); -static void ov107_022483F0(UnkStruct_ov107_02246170 * param0); -static void ov107_02248420(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); -static void ov107_02248488(UnkStruct_ov107_02246170 * param0, u32 * param1, u32 * param2, u8 param3); -static void ov107_022484DC(UnkStruct_ov107_02246170 * param0, u16 * param1, u16 * param2, u16 * param3, u16 * param4); -static BOOL ov107_0224850C(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); -static BOOL ov107_02248674(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); +static void ov107_022480EC(UnkStruct_ov107_02246170 *param0, u32 param1, s32 param2, u32 param3, int param4); +static void ov107_02248104(UnkStruct_ov107_02246170 *param0, u32 param1, BoxPokemon *param2); +static void ov107_02248110(UnkStruct_ov107_02246170 *param0, u32 param1); +static void ov107_0224812C(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4); +static void ov107_02248194(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4); +static void ov107_022481FC(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4, u8 param5); +static void ov107_02248240(UnkStruct_ov107_02246170 *param0); +static void ov107_022482A4(UnkStruct_ov107_02246170 *param0); +static void ov107_022482B0(UnkStruct_ov107_02246170 *param0); +static void ov107_022482D4(UnkStruct_ov107_02246170 *param0); +static void ov107_022482FC(UnkStruct_ov107_02246170 *param0); +static void ov107_02248348(UnkStruct_ov107_02246170 *param0); +static void ov107_02248350(UnkStruct_ov107_02246170 *param0, int *param1, int param2); +static void ov107_02248358(UnkStruct_ov107_02246170 *param0, int param1); +static void ov107_022483F0(UnkStruct_ov107_02246170 *param0); +static void ov107_02248420(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); +static void ov107_02248488(UnkStruct_ov107_02246170 *param0, u32 *param1, u32 *param2, u8 param3); +static void ov107_022484DC(UnkStruct_ov107_02246170 *param0, u16 *param1, u16 *param2, u16 *param3, u16 *param4); +static BOOL ov107_0224850C(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); +static BOOL ov107_02248674(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); static u16 ov107_02248770(u8 param0); -static void ov107_0224877C(UnkStruct_ov107_02246170 * param0, s8 param1); -static void ov107_022487DC(UnkStruct_ov107_02246170 * param0, s8 param1); -static void ov107_0224883C(UnkStruct_ov107_02246170 * param0); -static void ov107_02248860(Window * param0); -BOOL ov107_02248874(UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2); -void ov107_022488CC(UnkStruct_ov107_02246170 * param0, u16 param1); -void ov107_02248910(int param0, int param1, void * param2, void * param3); -void ov107_02248940(UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2); -void ov107_022489D0(UnkStruct_ov107_02246170 * param0, u16 param1); -void ov107_022489E0(int param0, int param1, void * param2, void * param3); -void ov107_02248A04(UnkStruct_ov107_02246170 * param0); -void ov107_02248A10(int param0, int param1, void * param2, void * param3); -static void ov107_02248A2C(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248A74(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248A8C(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248AF0(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248B38(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248B50(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248BB4(UnkStruct_ov107_02246170 * param0); -static void ov107_02248BEC(UnkStruct_ov107_02246170 * param0); -static void ov107_02248C08(UnkStruct_ov107_02246170 * param0, Window * param1); -static void ov107_02248E54(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_02248E84(UnkStruct_ov107_02246170 * param0, Window * param1); -static void ov107_02248F18(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); -static void ov107_02249024(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_022490E8(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); -static void ov107_02249238(UnkStruct_ov107_02246170 * param0); -static void ov107_02249258(UnkStruct_ov107_02246170 * param0); -static void ov107_022492A8(UnkStruct_ov107_02246170 * param0); -static BOOL ov107_0224933C(UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2); -static void ov107_022493CC(UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2); -static void ov107_02249580(UnkStruct_ov107_02246170 * param0); -static void ov107_022495A8(UnkStruct_ov107_02246170 * param0, u8 param1); -static void ov107_022495E4(UnkStruct_ov107_02246170 * param0, u32 * param1, u32 * param2); +static void ov107_0224877C(UnkStruct_ov107_02246170 *param0, s8 param1); +static void ov107_022487DC(UnkStruct_ov107_02246170 *param0, s8 param1); +static void ov107_0224883C(UnkStruct_ov107_02246170 *param0); +static void ov107_02248860(Window *param0); +BOOL ov107_02248874(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2); +void ov107_022488CC(UnkStruct_ov107_02246170 *param0, u16 param1); +void ov107_02248910(int param0, int param1, void *param2, void *param3); +void ov107_02248940(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2); +void ov107_022489D0(UnkStruct_ov107_02246170 *param0, u16 param1); +void ov107_022489E0(int param0, int param1, void *param2, void *param3); +void ov107_02248A04(UnkStruct_ov107_02246170 *param0); +void ov107_02248A10(int param0, int param1, void *param2, void *param3); +static void ov107_02248A2C(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248A74(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248A8C(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248AF0(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248B38(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248B50(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248BB4(UnkStruct_ov107_02246170 *param0); +static void ov107_02248BEC(UnkStruct_ov107_02246170 *param0); +static void ov107_02248C08(UnkStruct_ov107_02246170 *param0, Window *param1); +static void ov107_02248E54(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_02248E84(UnkStruct_ov107_02246170 *param0, Window *param1); +static void ov107_02248F18(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); +static void ov107_02249024(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_022490E8(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); +static void ov107_02249238(UnkStruct_ov107_02246170 *param0); +static void ov107_02249258(UnkStruct_ov107_02246170 *param0); +static void ov107_022492A8(UnkStruct_ov107_02246170 *param0); +static BOOL ov107_0224933C(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2); +static void ov107_022493CC(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2); +static void ov107_02249580(UnkStruct_ov107_02246170 *param0); +static void ov107_022495A8(UnkStruct_ov107_02246170 *param0, u8 param1); +static void ov107_022495E4(UnkStruct_ov107_02246170 *param0, u32 *param1, u32 *param2); extern void ov107_2247650(void); -int ov107_02245EB0 (ApplicationManager *appMan, int * param1) +int ov107_02245EB0(ApplicationManager *appMan, int *param1) { int v0; - UnkStruct_ov107_02246170 * v1; - UnkStruct_ov104_0223597C * v2; + UnkStruct_ov107_02246170 *v1; + UnkStruct_ov104_0223597C *v2; Overlay_LoadByID(FS_OVERLAY_ID(overlay104), 2); ov107_02246EAC(); @@ -293,9 +291,9 @@ int ov107_02245EB0 (ApplicationManager *appMan, int * param1) return 1; } -int ov107_02245FD0 (ApplicationManager *appMan, int * param1) +int ov107_02245FD0(ApplicationManager *appMan, int *param1) { - UnkStruct_ov107_02246170 * v0 = ApplicationManager_Data(appMan); + UnkStruct_ov107_02246170 *v0 = ApplicationManager_Data(appMan); if (v0->unk_436 == 1) { switch (*param1) { @@ -369,10 +367,10 @@ int ov107_02245FD0 (ApplicationManager *appMan, int * param1) return 0; } -int ov107_02246130 (ApplicationManager *appMan, int * param1) +int ov107_02246130(ApplicationManager *appMan, int *param1) { int v0; - UnkStruct_ov107_02246170 * v1 = ApplicationManager_Data(appMan); + UnkStruct_ov107_02246170 *v1 = ApplicationManager_Data(appMan); *(v1->unk_3C8) = v1->unk_0D; @@ -387,7 +385,7 @@ int ov107_02246130 (ApplicationManager *appMan, int * param1) return 1; } -static BOOL ov107_02246170 (UnkStruct_ov107_02246170 * param0) +static BOOL ov107_02246170(UnkStruct_ov107_02246170 *param0) { switch (param0->unk_08) { case 0: @@ -443,10 +441,10 @@ static BOOL ov107_02246170 (UnkStruct_ov107_02246170 * param0) return 0; } -static void ov107_02246274 (UnkStruct_ov107_02246170 * param0) +static void ov107_02246274(UnkStruct_ov107_02246170 *param0) { u16 v0, v1, v2, v3, v4, v5, v6, v7; - Window * v8; + Window *v8; ov107_022484DC(param0, &v2, &v3, &v4, &v5); v8 = ¶m0->unk_50[0]; @@ -463,13 +461,13 @@ static void ov107_02246274 (UnkStruct_ov107_02246170 * param0) return; } -static BOOL ov107_022462CC (UnkStruct_ov107_02246170 * param0) +static BOOL ov107_022462CC(UnkStruct_ov107_02246170 *param0) { u8 v0; u16 v1, v2; int v3, v4; u32 v5, v6, v7; - Pokemon * v8; + Pokemon *v8; switch (param0->unk_08) { case 0: @@ -918,7 +916,7 @@ static BOOL ov107_022462CC (UnkStruct_ov107_02246170 * param0) return 0; } -static BOOL ov107_02246BDC (UnkStruct_ov107_02246170 * param0) +static BOOL ov107_02246BDC(UnkStruct_ov107_02246170 *param0) { u8 v0; @@ -985,7 +983,7 @@ static BOOL ov107_02246BDC (UnkStruct_ov107_02246170 * param0) return 0; } -static BOOL ov107_02246CD0 (UnkStruct_ov107_02246170 * param0) +static BOOL ov107_02246CD0(UnkStruct_ov107_02246170 *param0) { int v0; @@ -1019,7 +1017,7 @@ static BOOL ov107_02246CD0 (UnkStruct_ov107_02246170 * param0) return 0; } -static BOOL ov107_02246D3C (UnkStruct_ov107_02246170 * param0) +static BOOL ov107_02246D3C(UnkStruct_ov107_02246170 *param0) { int v0; @@ -1038,7 +1036,7 @@ static BOOL ov107_02246D3C (UnkStruct_ov107_02246170 * param0) return 0; } -static void ov107_02246D84 (UnkStruct_ov107_02246170 * param0) +static void ov107_02246D84(UnkStruct_ov107_02246170 *param0) { u8 v0; int v1, v2; @@ -1088,7 +1086,7 @@ static void ov107_02246D84 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02246EAC (void) +static void ov107_02246EAC(void) { SetVBlankCallback(NULL, NULL); SetHBlankCallback(NULL, NULL); @@ -1101,14 +1099,14 @@ static void ov107_02246EAC (void) return; } -static void ov107_02246EE4 (UnkStruct_ov107_02246170 * param0) +static void ov107_02246EE4(UnkStruct_ov107_02246170 *param0) { u32 v0, v1; u32 v2, v3; u8 v4; u16 v5, v6, v7, v8, v9, v10, v11, v12; int v13, v14, v15; - Window * v16; + Window *v16; param0->unk_3E0 = NARC_ctor(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, HEAP_ID_100); @@ -1191,7 +1189,7 @@ static void ov107_02246EE4 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02247220 (UnkStruct_ov107_02246170 * param0) +static void ov107_02247220(UnkStruct_ov107_02246170 *param0) { ov107_02247320(); ov107_02247340(param0->unk_4C); @@ -1212,7 +1210,7 @@ static void ov107_02247220 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02247280 (UnkStruct_ov107_02246170 * param0) +static void ov107_02247280(UnkStruct_ov107_02246170 *param0) { ov107_02249604(¶m0->unk_158, param0->unk_3DC, ov104_0223BA14(param0->unk_09)); return; @@ -1233,9 +1231,9 @@ static void ov107_022472A4(BgConfig *param0) return; } -static void ov107_022472E8 (void * param0) +static void ov107_022472E8(void *param0) { - UnkStruct_ov107_02246170 * v0 = param0; + UnkStruct_ov107_02246170 *v0 = param0; if (v0->unk_140 != NULL) { PaletteData_CommitFadedBuffers(v0->unk_140); @@ -1248,7 +1246,7 @@ static void ov107_022472E8 (void * param0) OS_SetIrqCheckFlag(OS_IE_V_BLANK); } -static void ov107_02247320 (void) +static void ov107_02247320(void) { UnkStruct_02099F80 v0 = { GX_VRAM_BG_128_C, @@ -1395,7 +1393,7 @@ static void ov107_02247340(BgConfig *param0) return; } -static void ov107_02247484 (UnkStruct_ov107_02246170 * param0, u32 param1) +static void ov107_02247484(UnkStruct_ov107_02246170 *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_3E0, 44, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1408,10 +1406,10 @@ static void ov107_02247484 (UnkStruct_ov107_02246170 * param0, u32 param1) return; } -static void ov107_022474F8 (void) +static void ov107_022474F8(void) { - void * v0; - NNSG2dPaletteData * v1; + void *v0; + NNSG2dPaletteData *v1; v0 = Graphics_GetPlttData(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, 138, &v1, HEAP_ID_100); @@ -1422,7 +1420,7 @@ static void ov107_022474F8 (void) return; } -static void ov107_0224752C (UnkStruct_ov107_02246170 * param0, u32 param1) +static void ov107_0224752C(UnkStruct_ov107_02246170 *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_3E0, 44, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_3E0, 42, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1430,10 +1428,10 @@ static void ov107_0224752C (UnkStruct_ov107_02246170 * param0, u32 param1) return; } -static void ov107_02247574 (void) +static void ov107_02247574(void) { - void * v0; - NNSG2dPaletteData * v1; + void *v0; + NNSG2dPaletteData *v1; v0 = Graphics_GetPlttData(NARC_INDEX_RESOURCE__ENG__FRONTIER_GRAPHIC__FRONTIER_BG, 138, &v1, HEAP_ID_100); @@ -1444,7 +1442,7 @@ static void ov107_02247574 (void) return; } -static void ov107_022475A8 (UnkStruct_ov107_02246170 * param0, u32 param1) +static void ov107_022475A8(UnkStruct_ov107_02246170 *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_3E0, 44, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_3E0, 43, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1452,7 +1450,7 @@ static void ov107_022475A8 (UnkStruct_ov107_02246170 * param0, u32 param1) return; } -static void ov107_022475F0 (UnkStruct_ov107_02246170 * param0, u32 param1) +static void ov107_022475F0(UnkStruct_ov107_02246170 *param0, u32 param1) { Graphics_LoadTilesToBgLayerFromOpenNARC(param0->unk_3E0, 125, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); Graphics_LoadTilemapToBgLayerFromOpenNARC(param0->unk_3E0, 126, param0->unk_4C, param1, 0, 0, 1, HEAP_ID_100); @@ -1461,12 +1459,12 @@ static void ov107_022475F0 (UnkStruct_ov107_02246170 * param0, u32 param1) return; } -static u8 ov107_02247650 (UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) +static u8 ov107_02247650(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) { return ov107_02247680(param0, param1, param2, param3, param4, param5, param6, param7, param8, param9, 0); } -static u8 ov107_02247680 (UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) +static u8 ov107_02247680(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) { u8 v0; Window_FillTilemap(param1, param8); @@ -1488,12 +1486,12 @@ static u8 ov107_02247680 (UnkStruct_ov107_02246170 * param0, Window * param1, in return v0; } -static u8 ov107_02247714 (UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) +static u8 ov107_02247714(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9) { ov107_02247744(param0, param1, param2, param3, param4, param5, param6, param7, param8, param9, 0); } -static u8 ov107_02247744 (UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) +static u8 ov107_02247744(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u32 param3, u32 param4, u32 param5, u8 param6, u8 param7, u8 param8, u8 param9, u32 param10) { u8 v0; MessageLoader_GetStrbuf(param0->unk_20, param2, param0->unk_2C); @@ -1514,7 +1512,7 @@ static u8 ov107_02247744 (UnkStruct_ov107_02246170 * param0, Window * param1, in return v0; } -static u8 ov107_022477CC (UnkStruct_ov107_02246170 * param0, int param1, u8 param2) +static u8 ov107_022477CC(UnkStruct_ov107_02246170 *param0, int param1, u8 param2) { u8 v0 = ov107_02247650(param0, ¶m0->unk_50[7], param1, 1, 1, TEXT_SPEED_NO_TRANSFER, 1, 2, 15, param2); Window_ScheduleCopyToVRAM(¶m0->unk_50[7]); @@ -1522,248 +1520,51 @@ static u8 ov107_022477CC (UnkStruct_ov107_02246170 * param0, int param1, u8 para return v0; } -// clang-format off -asm static void ov107_02247804 (UnkStruct_ov107_02246170 * param0, Window * param1, Pokemon * param2) +static void ov107_02247804(UnkStruct_ov107_02246170 *param0, Window *window, Pokemon *mon) { - push {r4, r5, r6, lr} - sub sp, #8 - add r4, r1, #0 - add r5, r0, #0 - add r6, r2, #0 - add r0, r4, #0 - mov r1, #0 - bl Window_FillTilemap - add r0, r6, #0 - mov r1, #6 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetItemName - mov r3, #8 - str r3, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x30 - bl ov107_02247A14 - mov r0, #8 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x31 - mov r3, #0x48 - bl ov107_02247A14 - add r0, r6, #0 - bl Pokemon_GetNature - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetNatureName - mov r0, #0x18 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x32 - mov r3, #8 - bl ov107_02247A14 - mov r0, #0x18 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x33 - mov r3, #0x48 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - ldr r0, [r5, #0x24] - mov r1, #0 - bl StringTemplate_SetAbilityName - mov r0, #0x28 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x34 - mov r3, #8 - bl ov107_02247A14 - mov r0, #0x28 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x35 - mov r3, #0x48 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa5 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_022480EC - mov r0, #0x38 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x36 - mov r3, #8 - bl ov107_02247A14 - mov r0, #0x38 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x37 - mov r3, #0x58 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa6 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_022480EC - mov r2, #0x38 - str r2, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r3, #0x68 - bl ov107_02247A14 - mov r0, #0x38 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x39 - mov r3, #0xb8 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa8 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_022480EC - mov r0, #0x48 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3a - mov r3, #8 - bl ov107_02247A14 - mov r0, #0x48 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3b - mov r3, #0x58 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa9 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_022480EC - mov r0, #0x48 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3c - mov r3, #0x68 - bl ov107_02247A14 - mov r0, #0x48 - str r0, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3d - mov r3, #0xb8 - bl ov107_02247A14 - add r0, r6, #0 - mov r1, #0xa7 - mov r2, #0 - bl Pokemon_GetValue - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #3 - bl ov107_022480EC - mov r0, #0x58 - str r0, [sp] - mov r0, #0 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3e - mov r3, #8 - bl ov107_02247A14 - mov r3, #0x58 - str r3, [sp] - mov r0, #2 - str r0, [sp, #4] - add r0, r5, #0 - add r1, r4, #0 - mov r2, #0x3f - bl ov107_02247A14 - add r0, r4, #0 - bl Window_ScheduleCopyToVRAM - add sp, #8 - pop {r4, r5, r6, pc} -} -// clang-format on + Window_FillTilemap(window, 0); -static void ov107_02247A14 (UnkStruct_ov107_02246170 * param0, Window * param1, int param2, u16 param3, u16 param4, u32 param5) + StringTemplate_SetItemName(param0->unk_24, 0, Pokemon_GetValue(mon, MON_DATA_HELD_ITEM, NULL)); + ov107_02247A14(param0, window, 48, 8, 8, 0); + ov107_02247A14(param0, window, 49, 72, 8, 0); + + StringTemplate_SetNatureName(param0->unk_24, 0, Pokemon_GetNature(mon)); + ov107_02247A14(param0, window, 50, 8, 24, 0); + ov107_02247A14(param0, window, 51, 72, 24, 0); + + StringTemplate_SetAbilityName(param0->unk_24, 0, Pokemon_GetValue(mon, MON_DATA_ABILITY, NULL)); + ov107_02247A14(param0, window, 52, 8, 40, 0); + ov107_02247A14(param0, window, 53, 72, 40, 0); + + ov107_022480EC(param0, 0, Pokemon_GetValue(mon, MON_DATA_ATK, NULL), 3, 1); + ov107_02247A14(param0, window, 54, 8, 56, 0); + ov107_02247A14(param0, window, 55, 88, 56, 2); + + ov107_022480EC(param0, 0, Pokemon_GetValue(mon, MON_DATA_DEF, NULL), 3, 1); + ov107_02247A14(param0, window, 56, 104, 56, 0); + ov107_02247A14(param0, window, 57, 184, 56, 2); + + ov107_022480EC(param0, 0, Pokemon_GetValue(mon, MON_DATA_SP_ATK, NULL), 3, 1); + ov107_02247A14(param0, window, 58, 8, 72, 0); + ov107_02247A14(param0, window, 59, 88, 72, 2); + + ov107_022480EC(param0, 0, Pokemon_GetValue(mon, MON_DATA_SP_DEF, NULL), 3, 1); + ov107_02247A14(param0, window, 60, 104, 72, 0); + ov107_02247A14(param0, window, 61, 184, 72, 2); + + ov107_022480EC(param0, 0, Pokemon_GetValue(mon, MON_DATA_SPEED, NULL), 3, 1); + ov107_02247A14(param0, window, 62, 8, 88, 0); + ov107_02247A14(param0, window, 63, 88, 88, 2); + + Window_ScheduleCopyToVRAM(window); +} + +static void ov107_02247A14(UnkStruct_ov107_02246170 *param0, Window *param1, int param2, u16 param3, u16 param4, u32 param5) { ov107_02247744(param0, param1, param2, param3, param4, 0xff, 1, 2, 0, 0, param5); } -static void ov107_02247A3C (UnkStruct_ov107_02246170 * param0, Window * param1, Pokemon * param2) +static void ov107_02247A3C(UnkStruct_ov107_02246170 *param0, Window *param1, Pokemon *param2) { Window_FillTilemap(param1, 0); @@ -1776,7 +1577,7 @@ static void ov107_02247A3C (UnkStruct_ov107_02246170 * param0, Window * param1, return; } -static void ov107_02247AD0 (UnkStruct_ov107_02246170 * param0, Window * param1, u8 param2, u32 param3, u32 param4, Pokemon * param5, u32 param6, u32 param7, u32 param8) +static void ov107_02247AD0(UnkStruct_ov107_02246170 *param0, Window *param1, u8 param2, u32 param3, u32 param4, Pokemon *param5, u32 param6, u32 param7, u32 param8) { u16 v0, v1, v2, v3; @@ -1791,12 +1592,12 @@ static void ov107_02247AD0 (UnkStruct_ov107_02246170 * param0, Window * param1, param0->unk_0A = ov107_02247744(param0, param1, param4, v2, v3, 0xFF, 1, 2, 0, 0, 1); } -static void ov107_02247B78 (UnkStruct_ov107_02246170 * param0, Window * param1) +static void ov107_02247B78(UnkStruct_ov107_02246170 *param0, Window *param1) { u16 v0; u8 v1; int v2; - Pokemon * v3; + Pokemon *v3; Window_FillTilemap(param1, 0); @@ -1826,13 +1627,13 @@ static void ov107_02247B78 (UnkStruct_ov107_02246170 * param0, Window * param1) return; } -static void ov107_02247C64 (UnkStruct_ov107_02246170 * param0, Window * param1) +static void ov107_02247C64(UnkStruct_ov107_02246170 *param0, Window *param1) { u32 v0; u16 v1, v2; u8 v3; int v4; - Pokemon * v5; + Pokemon *v5; Window_FillTilemap(param1, 0); @@ -1858,7 +1659,7 @@ static void ov107_02247C64 (UnkStruct_ov107_02246170 * param0, Window * param1) return; } -static void ov107_02247D04 (UnkStruct_ov107_02246170 * param0, Window * param1, u8 param2) +static void ov107_02247D04(UnkStruct_ov107_02246170 *param0, Window *param1, u8 param2) { int v0; @@ -1879,10 +1680,10 @@ static void ov107_02247D04 (UnkStruct_ov107_02246170 * param0, Window * param1, return; } -static void ov107_02247D68 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2, int param3) +static void ov107_02247D68(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2, int param3) { int v0; - void * v1; + void *v1; MessageLoader_GetStrbuf(param0->unk_20, param3, param0->unk_30[param1]); @@ -1892,7 +1693,7 @@ static void ov107_02247D68 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return; } -static void ov107_02247D94 (UnkStruct_ov107_02246170 * param0) +static void ov107_02247D94(UnkStruct_ov107_02246170 *param0) { ov107_02249D84(param0->unk_4C, ¶m0->unk_50[10]); ov107_02247D04(param0, ¶m0->unk_50[10], 2); @@ -1905,7 +1706,7 @@ static void ov107_02247D94 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02247DF0 (UnkStruct_ov107_02246170 * param0) +static void ov107_02247DF0(UnkStruct_ov107_02246170 *param0) { ov107_02249D84(param0->unk_4C, ¶m0->unk_50[11]); ov107_02247D04(param0, ¶m0->unk_50[11], 3); @@ -1942,10 +1743,10 @@ static const ListMenuTemplate Unk_ov107_0224A17C = { }; static const u32 Unk_ov107_0224A1BC[][2] = { - {0x8, 0x0}, - {0x9, 0x1}, - {0xA, 0x2}, - {0xB, 0xfffffffe} + { 0x8, 0x0 }, + { 0x9, 0x1 }, + { 0xA, 0x2 }, + { 0xB, 0xfffffffe } }; static const u32 Unk_ov107_0224A0CC[] = { @@ -1955,7 +1756,7 @@ static const u32 Unk_ov107_0224A0CC[] = { 0xF }; -static void ov107_02247E5C (UnkStruct_ov107_02246170 * param0) +static void ov107_02247E5C(UnkStruct_ov107_02246170 *param0) { int v0; ListMenuTemplate v1; @@ -2004,20 +1805,20 @@ static void ov107_02247F14(ListMenu *param0, u32 param1, u8 param2) } static const u32 Unk_ov107_0224A19C[][2] = { - {0x21, 0x3}, - {0x22, 0x4}, - {0x23, 0x5}, - {0x24, 0xfffffffe} + { 0x21, 0x3 }, + { 0x22, 0x4 }, + { 0x23, 0x5 }, + { 0x24, 0xfffffffe } }; static const u16 Unk_ov107_0224A0AC[][2] = { - {0x25, 0x25}, - {0x26, 0x26}, - {0x27, 0x28}, - {0x29, 0x29} + { 0x25, 0x25 }, + { 0x26, 0x26 }, + { 0x27, 0x28 }, + { 0x29, 0x29 } }; -static void ov107_02247F6C (UnkStruct_ov107_02246170 * param0) +static void ov107_02247F6C(UnkStruct_ov107_02246170 *param0) { int v0; ListMenuTemplate v1; @@ -2106,29 +1907,29 @@ static void ov107_022480A0(ListMenu *param0, u32 param1, u8 param2) return; } -static void ov107_022480EC (UnkStruct_ov107_02246170 * param0, u32 param1, s32 param2, u32 param3, int param4) +static void ov107_022480EC(UnkStruct_ov107_02246170 *param0, u32 param1, s32 param2, u32 param3, int param4) { StringTemplate_SetNumber(param0->unk_24, param1, param2, param3, param4, 1); return; } -static void ov107_02248104 (UnkStruct_ov107_02246170 * param0, u32 param1, BoxPokemon * param2) +static void ov107_02248104(UnkStruct_ov107_02246170 *param0, u32 param1, BoxPokemon *param2) { StringTemplate_SetSpeciesName(param0->unk_24, param1, param2); return; } -static void ov107_02248110 (UnkStruct_ov107_02246170 * param0, u32 param1) +static void ov107_02248110(UnkStruct_ov107_02246170 *param0, u32 param1) { StringTemplate_SetPlayerName(param0->unk_24, param1, SaveData_GetTrainerInfo(param0->saveData)); return; } -static void ov107_0224812C (UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4) +static void ov107_0224812C(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4) { TextColor v0; - const TrainerInfo * v1; - Strbuf* v2; + const TrainerInfo *v1; + Strbuf *v2; v1 = SaveData_GetTrainerInfo(param0->saveData); v2 = Strbuf_Init((7 + 1), HEAP_ID_100); @@ -2147,12 +1948,12 @@ static void ov107_0224812C (UnkStruct_ov107_02246170 * param0, Window * param1, return; } -static void ov107_02248194 (UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4) +static void ov107_02248194(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4) { - TrainerInfo * v0; + TrainerInfo *v0; TextColor v1; - v0 = CommInfo_TrainerInfo((CommSys_CurNetId() ^ 1)); + v0 = CommInfo_TrainerInfo(CommSys_CurNetId() ^ 1); if (TrainerInfo_Gender(v0) == 0) { v1 = TEXT_COLOR(7, 8, 0); @@ -2166,7 +1967,7 @@ static void ov107_02248194 (UnkStruct_ov107_02246170 * param0, Window * param1, return; } -static void ov107_022481FC (UnkStruct_ov107_02246170 * param0, Window * param1, u32 param2, u32 param3, u8 param4, u8 param5) +static void ov107_022481FC(UnkStruct_ov107_02246170 *param0, Window *param1, u32 param2, u32 param3, u8 param4, u8 param5) { u32 v0, v1; u8 v2, v3, v4; @@ -2190,20 +1991,20 @@ static void ov107_022481FC (UnkStruct_ov107_02246170 * param0, Window * param1, return; } -static void ov107_02248240 (UnkStruct_ov107_02246170 * param0) +static void ov107_02248240(UnkStruct_ov107_02246170 *param0) { param0->unk_0A = ov107_02247680(param0, ¶m0->unk_50[1], 5, 16, 1 + 4, TEXT_SPEED_NO_TRANSFER, 1, 2, 0, FONT_SYSTEM, 1); ov107_02249DBC(¶m0->unk_50[8], Options_Frame(param0->options)); param0->unk_0A = ov107_02247650(param0, ¶m0->unk_50[8], 4, 1, 1, TEXT_SPEED_NO_TRANSFER, 1, 2, 15, FONT_MESSAGE); } -static void ov107_022482A4 (UnkStruct_ov107_02246170 * param0) +static void ov107_022482A4(UnkStruct_ov107_02246170 *param0) { ov107_02248860(¶m0->unk_50[8]); return; } -static void ov107_022482B0 (UnkStruct_ov107_02246170 * param0) +static void ov107_022482B0(UnkStruct_ov107_02246170 *param0) { ov107_02249DBC(¶m0->unk_50[9], Options_Frame(param0->options)); @@ -2213,7 +2014,7 @@ static void ov107_022482B0 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_022482D4 (UnkStruct_ov107_02246170 * param0) +static void ov107_022482D4(UnkStruct_ov107_02246170 *param0) { ListMenu_GetListAndCursorPos(param0->unk_138, ¶m0->unk_1C, ¶m0->unk_1E); @@ -2223,7 +2024,7 @@ static void ov107_022482D4 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_022482FC (UnkStruct_ov107_02246170 * param0) +static void ov107_022482FC(UnkStruct_ov107_02246170 *param0) { ov107_02249DBC(¶m0->unk_50[7], Options_Frame(param0->options)); @@ -2234,20 +2035,20 @@ static void ov107_022482FC (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02248348 (UnkStruct_ov107_02246170 * param0) +static void ov107_02248348(UnkStruct_ov107_02246170 *param0) { ov107_02249258(param0); return; } -static void ov107_02248350 (UnkStruct_ov107_02246170 * param0, int * param1, int param2) +static void ov107_02248350(UnkStruct_ov107_02246170 *param0, int *param1, int param2) { param0->unk_08 = 0; *param1 = param2; return; } -static void ov107_02248358 (UnkStruct_ov107_02246170 * param0, int param1) +static void ov107_02248358(UnkStruct_ov107_02246170 *param0, int param1) { u8 v0; int v1 = 0; @@ -2307,7 +2108,7 @@ static void ov107_02248358 (UnkStruct_ov107_02246170 * param0, int param1) return; } -static void ov107_022483F0 (UnkStruct_ov107_02246170 * param0) +static void ov107_022483F0(UnkStruct_ov107_02246170 *param0) { Sound_PlayEffect(SEQ_SE_CONFIRM); @@ -2319,9 +2120,9 @@ static void ov107_022483F0 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02248420 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static void ov107_02248420(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { - UnkStruct_ov107_02249B8C * v0; + UnkStruct_ov107_02249B8C *v0; u32 v1, v2, v3, v4; if (param2 == 0) { @@ -2346,7 +2147,7 @@ static void ov107_02248420 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return; } -static void ov107_02248488 (UnkStruct_ov107_02246170 * param0, u32 * param1, u32 * param2, u8 param3) +static void ov107_02248488(UnkStruct_ov107_02246170 *param0, u32 *param1, u32 *param2, u8 param3) { if (ov104_0223BA14(param0->unk_09) == 1) { if (param3 == 0) { @@ -2372,7 +2173,7 @@ static void ov107_02248488 (UnkStruct_ov107_02246170 * param0, u32 * param1, u32 return; } -static void ov107_022484DC (UnkStruct_ov107_02246170 * param0, u16 * param1, u16 * param2, u16 * param3, u16 * param4) +static void ov107_022484DC(UnkStruct_ov107_02246170 *param0, u16 *param1, u16 *param2, u16 *param3, u16 *param4) { if (ov104_0223BA14(param0->unk_09) == 0) { *param1 = 32; @@ -2389,12 +2190,12 @@ static void ov107_022484DC (UnkStruct_ov107_02246170 * param0, u16 * param1, u16 return; } -static BOOL ov107_0224850C (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static BOOL ov107_0224850C(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { u16 v0; u32 v1; u8 v2, v3; - Pokemon * v4; + Pokemon *v4; v3 = param0->unk_15; v2 = ov107_02249C98(param0->unk_14, param1); @@ -2466,11 +2267,11 @@ static BOOL ov107_0224850C (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return 0; } -static BOOL ov107_02248674 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static BOOL ov107_02248674(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { u32 v0; u8 v1, v2; - Pokemon * v3; + Pokemon *v3; v2 = param0->unk_15; v1 = ov107_02249C98(param0->unk_14, param1); @@ -2532,7 +2333,7 @@ static BOOL ov107_02248674 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return 0; } -static u16 ov107_02248770 (u8 param0) +static u16 ov107_02248770(u8 param0) { if (param0 == 1) { return 1; @@ -2541,9 +2342,9 @@ static u16 ov107_02248770 (u8 param0) return 15; } -static void ov107_0224877C (UnkStruct_ov107_02246170 * param0, s8 param1) +static void ov107_0224877C(UnkStruct_ov107_02246170 *param0, s8 param1) { - Pokemon * v0; + Pokemon *v0; s8 v1 = param0->unk_0D; while (TRUE) { @@ -2571,9 +2372,9 @@ static void ov107_0224877C (UnkStruct_ov107_02246170 * param0, s8 param1) return; } -static void ov107_022487DC (UnkStruct_ov107_02246170 * param0, s8 param1) +static void ov107_022487DC(UnkStruct_ov107_02246170 *param0, s8 param1) { - Pokemon * v0; + Pokemon *v0; s8 v1 = param0->unk_0D; while (TRUE) { @@ -2601,7 +2402,7 @@ static void ov107_022487DC (UnkStruct_ov107_02246170 * param0, s8 param1) return; } -static void ov107_0224883C (UnkStruct_ov107_02246170 * param0) +static void ov107_0224883C(UnkStruct_ov107_02246170 *param0) { ov107_02248BB4(param0); ov107_02249258(param0); @@ -2612,7 +2413,7 @@ static void ov107_0224883C (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02248860 (Window * param0) +static void ov107_02248860(Window *param0) { Window_EraseMessageBox(param0, 1); Window_ClearAndScheduleCopyToVRAM(param0); @@ -2620,7 +2421,7 @@ static void ov107_02248860 (Window * param0) return; } -BOOL ov107_02248874 (UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2) +BOOL ov107_02248874(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2) { int v0, v1; @@ -2652,10 +2453,10 @@ BOOL ov107_02248874 (UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2) return v0; } -void ov107_022488CC (UnkStruct_ov107_02246170 * param0, u16 param1) +void ov107_022488CC(UnkStruct_ov107_02246170 *param0, u16 param1) { int v0, v1; - TrainerInfo * v2; + TrainerInfo *v2; v1 = 0; v2 = SaveData_GetTrainerInfo(param0->saveData); @@ -2675,11 +2476,11 @@ void ov107_022488CC (UnkStruct_ov107_02246170 * param0, u16 param1) return; } -void ov107_02248910 (int param0, int param1, void * param2, void * param3) +void ov107_02248910(int param0, int param1, void *param2, void *param3) { int v0, v1; - UnkStruct_ov107_02246170 * v2 = param3; - const u16 * v3 = param2; + UnkStruct_ov107_02246170 *v2 = param3; + const u16 *v3 = param2; v1 = 0; v2->unk_17++; @@ -2700,7 +2501,7 @@ void ov107_02248910 (int param0, int param1, void * param2, void * param3) return; } -void ov107_02248940 (UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2) +void ov107_02248940(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2) { param0->unk_3E4[0] = param1; param0->unk_3E4[1] = param2; @@ -2718,11 +2519,11 @@ void ov107_02248940 (UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2) return; } -void ov107_02248978 (int param0, int param1, void * param2, void * param3) +void ov107_02248978(int param0, int param1, void *param2, void *param3) { int v0, v1; - UnkStruct_ov107_02246170 * v2 = param3; - const u16 * v3 = param2; + UnkStruct_ov107_02246170 *v2 = param3; + const u16 *v3 = param2; v1 = 0; v2->unk_17++; @@ -2750,7 +2551,7 @@ void ov107_02248978 (int param0, int param1, void * param2, void * param3) return; } -void ov107_022489D0 (UnkStruct_ov107_02246170 * param0, u16 param1) +void ov107_022489D0(UnkStruct_ov107_02246170 *param0, u16 param1) { param0->unk_3E4[0] = param1; param0->unk_3E4[1] = param0->unk_0D; @@ -2758,10 +2559,10 @@ void ov107_022489D0 (UnkStruct_ov107_02246170 * param0, u16 param1) return; } -void ov107_022489E0 (int param0, int param1, void * param2, void * param3) +void ov107_022489E0(int param0, int param1, void *param2, void *param3) { - UnkStruct_ov107_02246170 * v0 = param3; - const u16 * v1 = param2; + UnkStruct_ov107_02246170 *v0 = param3; + const u16 *v1 = param2; if (CommSys_CurNetId() == param0) { return; @@ -2773,16 +2574,16 @@ void ov107_022489E0 (int param0, int param1, void * param2, void * param3) return; } -void ov107_02248A04 (UnkStruct_ov107_02246170 * param0) +void ov107_02248A04(UnkStruct_ov107_02246170 *param0) { param0->unk_3E4[0] = 1; return; } -void ov107_02248A10 (int param0, int param1, void * param2, void * param3) +void ov107_02248A10(int param0, int param1, void *param2, void *param3) { - UnkStruct_ov107_02246170 * v0 = param3; - const u16 * v1 = param2; + UnkStruct_ov107_02246170 *v0 = param3; + const u16 *v1 = param2; if (CommSys_CurNetId() == param0) { return; @@ -2792,9 +2593,9 @@ void ov107_02248A10 (int param0, int param1, void * param2, void * param3) return; } -static void ov107_02248A2C (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248A2C(UnkStruct_ov107_02246170 *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_0224752C(param0, 2); ov107_02248860(¶m0->unk_50[7]); @@ -2808,15 +2609,15 @@ static void ov107_02248A2C (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_02248A74 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248A74(UnkStruct_ov107_02246170 *param0, u8 param1) { param0->unk_3D4[ov107_02249C98(param0->unk_14, param1)] = 1; return; } -static void ov107_02248A8C (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248A8C(UnkStruct_ov107_02246170 *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_02249DBC(¶m0->unk_50[7], Options_Frame(param0->options)); @@ -2832,9 +2633,9 @@ static void ov107_02248A8C (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_02248AF0 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248AF0(UnkStruct_ov107_02246170 *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_022475A8(param0, 2); ov107_02248860(¶m0->unk_50[7]); @@ -2848,15 +2649,15 @@ static void ov107_02248AF0 (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_02248B38 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248B38(UnkStruct_ov107_02246170 *param0, u8 param1) { param0->unk_3D8[ov107_02249C98(param0->unk_14, param1)] = 1; return; } -static void ov107_02248B50 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02248B50(UnkStruct_ov107_02246170 *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; ov107_02249DBC(¶m0->unk_50[7], Options_Frame(param0->options)); @@ -2872,7 +2673,7 @@ static void ov107_02248B50 (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_02248BB4 (UnkStruct_ov107_02246170 * param0) +static void ov107_02248BB4(UnkStruct_ov107_02246170 *param0) { if (param0->unk_0F_2 == 1) { param0->unk_0F_2 = 0; @@ -2884,283 +2685,55 @@ static void ov107_02248BB4 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02248BEC (UnkStruct_ov107_02246170 * param0) +static void ov107_02248BEC(UnkStruct_ov107_02246170 *param0) { ov107_02249DBC(¶m0->unk_50[7], Options_Frame(param0->options)); return; } -// clang-format off -asm static void ov107_02248C08 (UnkStruct_ov107_02246170 * param0, Window * param1) +static void ov107_02248C08(UnkStruct_ov107_02246170 *param0, Window *window) { - push {r3, r4, r5, r6, r7, lr} - sub sp, #0x30 - add r4, r1, #0 - add r1, sp, #0x28 - str r1, [sp] - add r1, sp, #0x2c - add r3, sp, #0x28 - add r5, r0, #0 - add r1, #2 - add r2, sp, #0x2c - add r3, #2 - bl ov107_022484DC - ldrb r0, [r5, #9] - bl ov104_0223BA14 - cmp r0, #0 - bne _02248CA2 - add r1, sp, #0x28 - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x1c] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x1c] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_022480EC - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02247744 - strb r0, [r5, #0xa] - b _02248E46 - _02248CA2: - bl CommSys_CurNetId - cmp r0, #0 - add r1, sp, #0x28 - bne _02248D7A - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x20] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x20] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_022480EC - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02247744 - add r1, sp, #0x28 - strb r0, [r5, #0xa] - ldrh r0, [r1, #2] - ldrh r6, [r1] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - mov r0, #1 - str r0, [sp] - ldr r2, = 0x3D6 - add r0, r5, #0 - ldrh r2, [r5, r2] - mov r1, #0 - mov r3, #4 - bl ov107_022480EC - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02247744 - strb r0, [r5, #0xa] - b _02248E46 - _02248D7A: - ldrh r0, [r1, #6] - ldrh r6, [r1, #4] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - mov r0, #1 - str r0, [sp] - ldr r2, = 0x3D6 - add r0, r5, #0 - ldrh r2, [r5, r2] - mov r1, #0 - mov r3, #4 - bl ov107_022480EC - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02247744 - add r1, sp, #0x28 - strb r0, [r5, #0xa] - ldrh r0, [r1, #2] - ldrh r6, [r1] - mov r1, #0 - add r0, #0x68 - lsl r0, r0, #0x10 - lsr r7, r0, #0x10 - add r2, r7, #0 - mov r0, #0x30 - sub r2, #0x30 - str r0, [sp] - mov r0, #0x10 - lsl r2, r2, #0x10 - str r0, [sp, #4] - add r0, r4, #0 - lsr r2, r2, #0x10 - add r3, r6, #0 - bl Window_FillRectWithColor - ldrb r0, [r5, #9] - bl sub_0205E630 - str r0, [sp, #0x24] - ldrb r0, [r5, #9] - bl sub_0205E630 - bl sub_0205E6A8 - add r2, r0, #0 - ldr r0, [r5, #4] - ldr r1, [sp, #0x24] - bl sub_02030698 - add r2, r0, #0 - mov r0, #1 - str r0, [sp] - add r0, r5, #0 - mov r1, #0 - mov r3, #4 - bl ov107_022480EC - str r6, [sp] - mov r0, #0xff - str r0, [sp, #4] - mov r0, #1 - str r0, [sp, #8] - mov r2, #2 - str r2, [sp, #0xc] - mov r0, #0 - str r0, [sp, #0x10] - str r0, [sp, #0x14] - add r0, r5, #0 - add r1, r4, #0 - add r3, r7, #0 - str r2, [sp, #0x18] - bl ov107_02247744 - strb r0, [r5, #0xa] - _02248E46: - add r0, r4, #0 - bl Window_ScheduleCopyToVRAM - add sp, #0x30 - pop {r3, r4, r5, r6, r7, pc} -} -// clang-format on + u16 v0, v1, v2, v3, x, y; + ov107_022484DC(param0, &v0, &v1, &v2, &v3); -static void ov107_02248E54 (UnkStruct_ov107_02246170 * param0, u8 param1) + if (ov104_0223BA14(param0->unk_09) == FALSE) { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, y, 48, 16); + ov107_022480EC(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02247744(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + } else { + if (CommSys_CurNetId() == 0) { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, y, 48, 16); + ov107_022480EC(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02247744(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + + x = v2 + 104; + y = v3; + Window_FillRectWithColor(window, 0, x - 48, v3, 48, 16); + ov107_022480EC(param0, 0, param0->unk_43A, 4, 1); + param0->unk_0A = ov107_02247744(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + } else { + x = v0 + 104; + y = v1; + Window_FillRectWithColor(window, 0, x - 48, v1, 48, 16); + ov107_022480EC(param0, 0, param0->unk_43A, 4, 1); + param0->unk_0A = ov107_02247744(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + + x = v2 + 104; + y = v3; + Window_FillRectWithColor(window, 0, x - 48, v3, 48, 16); + ov107_022480EC(param0, 0, sub_02030698(param0->frontier, sub_0205E630(param0->unk_09), sub_0205E6A8(sub_0205E630(param0->unk_09))), 4, 1); + param0->unk_0A = ov107_02247744(param0, window, 2, x, y, 0xFF, 1, 2, 0, 0, 2); + } + } + + Window_ScheduleCopyToVRAM(window); +} + +static void ov107_02248E54(UnkStruct_ov107_02246170 *param0, u8 param1) { ov107_022480EC(param0, 0, ov107_02248770(param1), 4, 0); param0->unk_0A = ov107_022477CC(param0, 25, FONT_MESSAGE); @@ -3171,7 +2744,7 @@ static void ov107_02248E54 (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_02248E84 (UnkStruct_ov107_02246170 * param0, Window * param1) +static void ov107_02248E84(UnkStruct_ov107_02246170 *param0, Window *param1) { u16 v0, v1, v2, v3, v4, v5; @@ -3209,7 +2782,7 @@ static void ov107_02248E84 (UnkStruct_ov107_02246170 * param0, Window * param1) return; } -static void ov107_02248F18 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static void ov107_02248F18(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { u8 v0, v1, v2; u16 v3; @@ -3275,9 +2848,9 @@ static void ov107_02248F18 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return; } -static void ov107_02249024 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_02249024(UnkStruct_ov107_02246170 *param0, u8 param1) { - Pokemon * v0; + Pokemon *v0; v0 = Party_GetPokemonBySlotIndex(param0->unk_3DC, ov107_02249C98(param0->unk_14, param1)); @@ -3299,10 +2872,10 @@ static void ov107_02249024 (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_022490E8 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static void ov107_022490E8(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { u32 v0; - Pokemon * v1; + Pokemon *v1; ov107_02249DBC(¶m0->unk_50[7], Options_Frame(param0->options)); v1 = Party_GetPokemonBySlotIndex(param0->unk_3DC, ov107_02249C98(param0->unk_14, param1)); @@ -3342,7 +2915,7 @@ static void ov107_022490E8 (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return; } -static void ov107_02249238 (UnkStruct_ov107_02246170 * param0) +static void ov107_02249238(UnkStruct_ov107_02246170 *param0) { Window_FillTilemap(¶m0->unk_50[4], 0); Window_ClearAndCopyToVRAM(¶m0->unk_50[4]); @@ -3351,9 +2924,9 @@ static void ov107_02249238 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_02249258 (UnkStruct_ov107_02246170 * param0) +static void ov107_02249258(UnkStruct_ov107_02246170 *param0) { - Window * v0; + Window *v0; if (param0->unk_0F_1 == 1) { param0->unk_0F_1 = 0; @@ -3370,11 +2943,11 @@ static void ov107_02249258 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_022492A8 (UnkStruct_ov107_02246170 * param0) +static void ov107_022492A8(UnkStruct_ov107_02246170 *param0) { int v0; u8 v1, v2; - Pokemon * v3; + Pokemon *v3; v1 = ov104_0223B7A8(param0->unk_09, 1); @@ -3396,7 +2969,7 @@ static void ov107_022492A8 (UnkStruct_ov107_02246170 * param0) return; } -static BOOL ov107_0224933C (UnkStruct_ov107_02246170 * param0, u16 param1, u16 param2) +static BOOL ov107_0224933C(UnkStruct_ov107_02246170 *param0, u16 param1, u16 param2) { u16 v0; @@ -3433,12 +3006,12 @@ static BOOL ov107_0224933C (UnkStruct_ov107_02246170 * param0, u16 param1, u16 p } static const u16 Unk_ov107_0224A0DC[3][3] = { - {0x0, 0x0, 0x0}, - {0x0, 0x0, 0x0}, - {0x0, 0x50, 0x50} + { 0x0, 0x0, 0x0 }, + { 0x0, 0x0, 0x0 }, + { 0x0, 0x50, 0x50 } }; -static void ov107_022493CC (UnkStruct_ov107_02246170 * param0, u8 param1, u8 param2) +static void ov107_022493CC(UnkStruct_ov107_02246170 *param0, u8 param1, u8 param2) { u8 v0, v1, v2, v3; u32 v4; @@ -3505,7 +3078,7 @@ static void ov107_022493CC (UnkStruct_ov107_02246170 * param0, u8 param1, u8 par return; } -static void ov107_02249580 (UnkStruct_ov107_02246170 * param0) +static void ov107_02249580(UnkStruct_ov107_02246170 *param0) { u8 v0; int v1; @@ -3519,7 +3092,7 @@ static void ov107_02249580 (UnkStruct_ov107_02246170 * param0) return; } -static void ov107_022495A8 (UnkStruct_ov107_02246170 * param0, u8 param1) +static void ov107_022495A8(UnkStruct_ov107_02246170 *param0, u8 param1) { if (param0->unk_3D4[param1] == 1) { ov107_02249BAC(param0->unk_3A4[param1][0], 1); @@ -3532,7 +3105,7 @@ static void ov107_022495A8 (UnkStruct_ov107_02246170 * param0, u8 param1) return; } -static void ov107_022495E4 (UnkStruct_ov107_02246170 * param0, u32 * param1, u32 * param2) +static void ov107_022495E4(UnkStruct_ov107_02246170 *param0, u32 *param1, u32 *param2) { if (ov104_0223BA14(param0->unk_09) == 1) { *param1 = 64;