From 44c50248d541b050f2ae519721e80c9b443203d7 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Wed, 18 Mar 2020 23:23:40 +1000 Subject: [PATCH] Decompile mpMenuTextChrNameForTeamSetup --- src/game/data/data_020df0.c | 24 +++++++++++------------ src/game/game_179060.c | 35 ++++++++++++++-------------------- src/include/game/game_179060.h | 2 +- 3 files changed, 27 insertions(+), 34 deletions(-) diff --git a/src/game/data/data_020df0.c b/src/game/data/data_020df0.c index 69ea7f120..0e667b27a 100644 --- a/src/game/data/data_020df0.c +++ b/src/game/data/data_020df0.c @@ -10908,18 +10908,18 @@ struct menu_item menuitems_mpteamcontrol[] = { { MENUITEMTYPE_CHECKBOX, 0, 0x00020000, L_MPMENU(71), 0x00000002, menuhandlerMpTeamsEnabled }, // "Teams Enabled" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000010, L_MPMENU(72), 0x00000000, menuhandlerMpTeamsLabel }, // "Teams:" - { MENUITEMTYPE_DROPDOWN, 0, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 1, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 2, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 3, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 4, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 5, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 6, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 7, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 8, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 9, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 10, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, - { MENUITEMTYPE_DROPDOWN, 11, 0x00020000, (u32)&func0f17da94, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 0, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 1, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 2, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 3, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 4, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 5, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 6, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 7, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 8, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 9, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 10, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, + { MENUITEMTYPE_DROPDOWN, 11, 0x00020000, (u32)&mpMenuTextChrNameForTeamSetup, 0x00000000, menuhandlerMpTeamSlot }, { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_SELECTABLE, 0, 0x00000004, L_MPMENU(73), 0x00000000, &menudialog_mpautoteam }, // "Auto Team..." { MENUITEMTYPE_SELECTABLE, 0, 0x00000008, L_MPMENU(74), 0x00000000, NULL }, // "Back" diff --git a/src/game/game_179060.c b/src/game/game_179060.c index 750fc228c..85c405a1a 100644 --- a/src/game/game_179060.c +++ b/src/game/game_179060.c @@ -82,10 +82,6 @@ const char var7f1b802c[] = "%s"; const char var7f1b8030[] = ""; const char var7f1b8034[] = ""; const char var7f1b8038[] = "%d:\n"; -const char var7f1b8040[] = ""; -const char var7f1b8044[] = "\n"; -const char var7f1b8048[] = "%s:\n"; -const char var7f1b8050[] = "\n"; s32 menuhandlerMpDropOut(u32 operation, struct menu_item *item, s32 *value) { @@ -4608,23 +4604,20 @@ s32 menuhandlerMpHumanSimulantPairs(u32 operation, struct menu_item *item, s32 * return 0; } -GLOBAL_ASM( -glabel func0f17da94 -/* f17da94: 27bdffe8 */ addiu $sp,$sp,-24 -/* f17da98: afbf0014 */ sw $ra,0x14($sp) -/* f17da9c: 0fc631e5 */ jal func0f18c794 -/* f17daa0: 90840001 */ lbu $a0,0x1($a0) -/* f17daa4: 10400003 */ beqz $v0,.L0f17dab4 -/* f17daa8: 8fbf0014 */ lw $ra,0x14($sp) -/* f17daac: 10000003 */ beqz $zero,.L0f17dabc -/* f17dab0: 00000000 */ sll $zero,$zero,0x0 -.L0f17dab4: -/* f17dab4: 3c027f1c */ lui $v0,%hi(var7f1b8040) -/* f17dab8: 24428040 */ addiu $v0,$v0,%lo(var7f1b8040) -.L0f17dabc: -/* f17dabc: 03e00008 */ jr $ra -/* f17dac0: 27bd0018 */ addiu $sp,$sp,0x18 -); +char *mpMenuTextChrNameForTeamSetup(struct menu_item *item) +{ + struct mpchr *mpchr = func0f18c794(item->param); + + if (mpchr) { + return mpchr->name; + } + + return ""; +} + +const char var7f1b8044[] = "\n"; +const char var7f1b8048[] = "%s:\n"; +const char var7f1b8050[] = "\n"; GLOBAL_ASM( glabel func0f17dac4 diff --git a/src/include/game/game_179060.h b/src/include/game/game_179060.h index 6abb0eb62..5f2ae6f99 100644 --- a/src/include/game/game_179060.h +++ b/src/include/game/game_179060.h @@ -47,7 +47,7 @@ s32 menuhandlerMpSimulantDifficulty(u32, u32, u32 *); u32 func0f17cfc0(void); u32 func0f17d378(void); s32 func0f17d4b0(u32 operation, struct menu_item *item, s32 *value, s32 numteams); -u32 func0f17da94(void); +char *mpMenuTextChrNameForTeamSetup(struct menu_item *item); char *func0f17dac4(u32 operation, struct menu_item *item, s32 *value); u32 func0f17dc44(void); s32 menuhandler0017dc84(u32, u32, u32 *);