Decompile mpMenuTextCurrentTrack

This commit is contained in:
Ryan Dwyer 2020-03-18 23:28:26 +10:00
parent 44c50248d5
commit c9de987050
5 changed files with 22 additions and 36 deletions

View File

@ -10960,7 +10960,7 @@ struct menu_dialog menudialog_2bd40 = {
// 2bd58
struct menu_item menuitems_mpsoundtrack[] = {
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_MPMENU(63), 0x00000000, NULL }, // "Current:"
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(3), (u32)&func0f17dfac, NULL }, // ""
{ MENUITEMTYPE_LABEL, 0, 0x00000000, L_OPTIONS(3), (u32)&mpMenuTextCurrentTrack, NULL }, // ""
{ MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL },
{ MENUITEMTYPE_SELECTABLE, 0, 0x00000004, (u32)&func0f17dc44, 0x00000000, &menudialog_2bd40 },
{ MENUITEMTYPE_CHECKBOX, 0, 0x00020000, L_MPMENU(64), 0x00000000, menuhandlerMpMultipleTunes }, // "Multiple Tunes"

View File

@ -4909,7 +4909,7 @@ glabel var7f1b8228
/* f17deb8: 10000029 */ beqz $zero,.L0f17df60
/* f17debc: acca0000 */ sw $t2,0x0($a2)
.L0f17dec0:
/* f17dec0: 0fc63122 */ jal func0f18c488
/* f17dec0: 0fc63122 */ jal mpGetTrackNum
/* f17dec4: afa60038 */ sw $a2,0x38($sp)
/* f17dec8: 04410006 */ bgez $v0,.L0f17dee4
/* f17decc: 8fa60038 */ lw $a2,0x38($sp)
@ -4973,36 +4973,22 @@ bool menudialogMpSelectTune(u32 operation, struct menu_dialog *dialog, struct me
return false;
}
GLOBAL_ASM(
glabel func0f17dfac
/* f17dfac: 27bdffe8 */ addiu $sp,$sp,-24
/* f17dfb0: afbf0014 */ sw $ra,0x14($sp)
/* f17dfb4: 0fc630a9 */ jal mpGetUsingMultipleTunes
/* f17dfb8: afa40018 */ sw $a0,0x18($sp)
/* f17dfbc: 10400005 */ beqz $v0,.L0f17dfd4
/* f17dfc0: 00000000 */ sll $zero,$zero,0x0
/* f17dfc4: 0fc5b9f1 */ jal langGet
/* f17dfc8: 24045042 */ addiu $a0,$zero,0x5042
/* f17dfcc: 1000000c */ beqz $zero,.L0f17e000
/* f17dfd0: 8fbf0014 */ lw $ra,0x14($sp)
.L0f17dfd4:
/* f17dfd4: 0fc63122 */ jal func0f18c488
/* f17dfd8: 00000000 */ sll $zero,$zero,0x0
/* f17dfdc: 04400005 */ bltz $v0,.L0f17dff4
/* f17dfe0: 00402025 */ or $a0,$v0,$zero
/* f17dfe4: 0fc63097 */ jal mpGetTrackName
/* f17dfe8: 00000000 */ sll $zero,$zero,0x0
/* f17dfec: 10000004 */ beqz $zero,.L0f17e000
/* f17dff0: 8fbf0014 */ lw $ra,0x14($sp)
.L0f17dff4:
/* f17dff4: 0fc5b9f1 */ jal langGet
/* f17dff8: 24045043 */ addiu $a0,$zero,0x5043
/* f17dffc: 8fbf0014 */ lw $ra,0x14($sp)
.L0f17e000:
/* f17e000: 27bd0018 */ addiu $sp,$sp,0x18
/* f17e004: 03e00008 */ jr $ra
/* f17e008: 00000000 */ sll $zero,$zero,0x0
);
char *mpMenuTextCurrentTrack(struct menu_item *item)
{
s32 tracknum;
if (mpGetUsingMultipleTunes()) {
return langGet(L_MPMENU(66)); // "Multiple Tunes"
}
tracknum = mpGetTrackNum();
if (tracknum >= 0) {
return mpGetTrackName(tracknum);
}
return langGet(L_MPMENU(67)); // "Random"
}
s32 menuhandlerMpMultipleTunes(u32 operation, struct menu_item *item, s32 *value)
{

View File

@ -5609,7 +5609,7 @@ glabel func0f18c478
);
GLOBAL_ASM(
glabel func0f18c488
glabel mpGetTrackNum
/* f18c488: 3c04800b */ lui $a0,%hi(var800acc14)
/* f18c48c: 8084cc14 */ lb $a0,%lo(var800acc14)($a0)
/* f18c490: 27bdffe8 */ addiu $sp,$sp,-24
@ -5761,7 +5761,7 @@ glabel func0f18c4c0
/* f18c688: 10000038 */ beqz $zero,.L0f18c76c
/* f18c68c: 00031242 */ srl $v0,$v1,0x9
.L0f18c690:
/* f18c690: 0fc63122 */ jal func0f18c488
/* f18c690: 0fc63122 */ jal mpGetTrackNum
/* f18c694: 00000000 */ sll $zero,$zero,0x0
/* f18c698: 04410022 */ bgez $v0,.L0f18c724
/* f18c69c: 00409825 */ or $s3,$v0,$zero

View File

@ -51,7 +51,7 @@ char *mpMenuTextChrNameForTeamSetup(struct menu_item *item);
char *func0f17dac4(u32 operation, struct menu_item *item, s32 *value);
u32 func0f17dc44(void);
s32 menuhandler0017dc84(u32, u32, u32 *);
u32 func0f17dfac(void);
char *mpMenuTextCurrentTrack(struct menu_item *item);
s32 menuhandler0017e06c(u32, u32, u32 *);
u32 func0f17e288(void);
u32 func0f17e318(void);

View File

@ -77,7 +77,7 @@ u32 func0f18c3e4(void);
u32 func0f18c40c(void);
u32 func0f18c430(void);
u32 func0f18c478(void);
u32 func0f18c488(void);
u32 mpGetTrackNum(void);
u32 func0f18c4c0(void);
struct mpchr *func0f18c794(s32 index);
u32 func0f18c828(void);