From e9f2092cd6d44f018fda2858fcf6827a2ff012e3 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Thu, 2 Jan 2020 21:29:17 +1000 Subject: [PATCH] Decompile menuhandlerMpSimulantBody --- src/game/game_013540.c | 8 +- src/game/game_0b0420.c | 12 +-- src/game/game_0dcdb0.c | 8 +- src/game/game_176d70.c | 169 ++++++++++++--------------------- src/game/game_187770.c | 88 ++++++++--------- src/game/game_1999b0.c | 8 +- src/gvars/gvars.c | 153 +---------------------------- src/include/game/game_176d70.h | 4 +- src/include/gvars/gvars.h | 2 +- src/include/types.h | 25 +++++ 10 files changed, 152 insertions(+), 325 deletions(-) diff --git a/src/game/game_013540.c b/src/game/game_013540.c index 06ace015f..5d0536dcf 100644 --- a/src/game/game_013540.c +++ b/src/game/game_013540.c @@ -1416,8 +1416,8 @@ glabel func0f014848 /* f014850: 0305c021 */ addu $t8,$t8,$a1 /* f014854: 0018c080 */ sll $t8,$t8,0x2 /* f014858: 0305c023 */ subu $t8,$t8,$a1 -/* f01485c: 3c19800b */ lui $t9,%hi(var800ac538) -/* f014860: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f01485c: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f014860: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f014864: 0018c080 */ sll $t8,$t8,0x2 /* f014868: afbf002c */ sw $ra,0x2c($sp) /* f01486c: afa40078 */ sw $a0,0x78($sp) @@ -1566,10 +1566,10 @@ glabel func0f014848 /* f014a9c: 00230821 */ addu $at,$at,$v1 /* f014aa0: 0018c080 */ sll $t8,$t8,0x2 /* f014aa4: ac30c4d0 */ sw $s0,-0x3b30($at) -/* f014aa8: 3c19800b */ lui $t9,%hi(var800ac538) +/* f014aa8: 3c19800b */ lui $t9,%hi(g_MpSimulants) /* f014aac: 030fc023 */ subu $t8,$t8,$t7 /* f014ab0: 0018c080 */ sll $t8,$t8,0x2 -/* f014ab4: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f014ab4: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f014ab8: 3c01800b */ lui $at,0x800b /* f014abc: 00230821 */ addu $at,$at,$v1 /* f014ac0: 03194821 */ addu $t1,$t8,$t9 diff --git a/src/game/game_0b0420.c b/src/game/game_0b0420.c index 57cb4a0d0..2852b34fa 100644 --- a/src/game/game_0b0420.c +++ b/src/game/game_0b0420.c @@ -405,9 +405,9 @@ glabel func0f0b0818 /* f0b0840: 25299fc0 */ addiu $t1,$t1,%lo(g_Vars) /* f0b0844: 8d2f0288 */ lw $t7,0x288($t1) /* f0b0848: afa20034 */ sw $v0,0x34($sp) -/* f0b084c: 3c0c800b */ lui $t4,%hi(var800ac538) +/* f0b084c: 3c0c800b */ lui $t4,%hi(g_MpSimulants) /* f0b0850: 8de30070 */ lw $v1,0x70($t7) -/* f0b0854: 258cc538 */ addiu $t4,$t4,%lo(var800ac538) +/* f0b0854: 258cc538 */ addiu $t4,$t4,%lo(g_MpSimulants) /* f0b0858: 24044c05 */ addiu $a0,$zero,0x4c05 /* f0b085c: 28610004 */ slti $at,$v1,0x4 /* f0b0860: 10200008 */ beqz $at,.L0f0b0884 @@ -567,8 +567,8 @@ glabel func0f0b09f4 /* f0b0a90: 000c6080 */ sll $t4,$t4,0x2 /* f0b0a94: 01826023 */ subu $t4,$t4,$v0 /* f0b0a98: 000c6080 */ sll $t4,$t4,0x2 -/* f0b0a9c: 3c0e800b */ lui $t6,%hi(var800ac538) -/* f0b0aa0: 25cec538 */ addiu $t6,$t6,%lo(var800ac538) +/* f0b0a9c: 3c0e800b */ lui $t6,%hi(g_MpSimulants) +/* f0b0aa0: 25cec538 */ addiu $t6,$t6,%lo(g_MpSimulants) /* f0b0aa4: 258dfed0 */ addiu $t5,$t4,-304 /* f0b0aa8: 01ae7821 */ addu $t7,$t5,$t6 /* f0b0aac: afaf0140 */ sw $t7,0x140($sp) @@ -596,8 +596,8 @@ glabel func0f0b09f4 /* f0b0afc: 000a5080 */ sll $t2,$t2,0x2 /* f0b0b00: 01425023 */ subu $t2,$t2,$v0 /* f0b0b04: 000a5080 */ sll $t2,$t2,0x2 -/* f0b0b08: 3c0c800b */ lui $t4,%hi(var800ac538) -/* f0b0b0c: 258cc538 */ addiu $t4,$t4,%lo(var800ac538) +/* f0b0b08: 3c0c800b */ lui $t4,%hi(g_MpSimulants) +/* f0b0b0c: 258cc538 */ addiu $t4,$t4,%lo(g_MpSimulants) /* f0b0b10: 254bfed0 */ addiu $t3,$t2,-304 /* f0b0b14: 016c1821 */ addu $v1,$t3,$t4 .L0f0b0b18: diff --git a/src/game/game_0dcdb0.c b/src/game/game_0dcdb0.c index e6ca20855..f7073e44e 100644 --- a/src/game/game_0dcdb0.c +++ b/src/game/game_0dcdb0.c @@ -23675,8 +23675,8 @@ glabel func0f0ee648 /* f0ee6d8: 000a5080 */ sll $t2,$t2,0x2 /* f0ee6dc: 01435023 */ subu $t2,$t2,$v1 /* f0ee6e0: 000a5080 */ sll $t2,$t2,0x2 -/* f0ee6e4: 3c0c800b */ lui $t4,%hi(var800ac538) -/* f0ee6e8: 258cc538 */ addiu $t4,$t4,%lo(var800ac538) +/* f0ee6e4: 3c0c800b */ lui $t4,%hi(g_MpSimulants) +/* f0ee6e8: 258cc538 */ addiu $t4,$t4,%lo(g_MpSimulants) /* f0ee6ec: 254bfed0 */ addiu $t3,$t2,-304 /* f0ee6f0: 016c6821 */ addu $t5,$t3,$t4 /* f0ee6f4: afad00b0 */ sw $t5,0xb0($sp) @@ -24275,8 +24275,8 @@ glabel func0f0ee648 /* f0eefd0: 0019c880 */ sll $t9,$t9,0x2 /* f0eefd4: 0330c823 */ subu $t9,$t9,$s0 /* f0eefd8: 0019c880 */ sll $t9,$t9,0x2 -/* f0eefdc: 3c09800b */ lui $t1,%hi(var800ac538) -/* f0eefe0: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f0eefdc: 3c09800b */ lui $t1,%hi(g_MpSimulants) +/* f0eefe0: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f0eefe4: 272cfed0 */ addiu $t4,$t9,-304 /* f0eefe8: 01893821 */ addu $a3,$t4,$t1 .L0f0eefec: diff --git a/src/game/game_176d70.c b/src/game/game_176d70.c index ad53f9f7c..ab451296f 100644 --- a/src/game/game_176d70.c +++ b/src/game/game_176d70.c @@ -1699,10 +1699,10 @@ glabel menuhandler00177e00 /* f177e7c: 00001025 */ or $v0,$zero,$zero .L0f177e80: /* f177e80: 3c03800b */ lui $v1,0x800b -/* f177e84: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f177e84: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f177e88: 3c09800b */ lui $t1,%hi(g_Options) /* f177e8c: 2529c7b8 */ addiu $t1,$t1,%lo(g_Options) -/* f177e90: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f177e90: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f177e94: 9463cb9e */ lhu $v1,-0x3462($v1) /* f177e98: 00002825 */ or $a1,$zero,$zero /* f177e9c: 240c004c */ addiu $t4,$zero,0x4c @@ -2113,8 +2113,8 @@ glabel func0f1783a0 /* f1783f0: 0019c880 */ sll $t9,$t9,0x2 /* f1783f4: 0323c823 */ subu $t9,$t9,$v1 /* f1783f8: 0019c880 */ sll $t9,$t9,0x2 -/* f1783fc: 3c09800b */ lui $t1,%hi(var800ac538) -/* f178400: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f1783fc: 3c09800b */ lui $t1,%hi(g_MpSimulants) +/* f178400: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f178404: 2728fed0 */ addiu $t0,$t9,-304 /* f178408: 01093021 */ addu $a2,$t0,$t1 .L0f17840c: @@ -6870,7 +6870,7 @@ glabel menuhandler0017c6a4 .L0f17c858: /* f17c858: 8fac0038 */ lw $t4,0x38($sp) /* f17c85c: 8fad003c */ lw $t5,0x3c($sp) -/* f17c860: 3c19800b */ lui $t9,%hi(var800ac538) +/* f17c860: 3c19800b */ lui $t9,%hi(g_MpSimulants) /* f17c864: 11800006 */ beqz $t4,.L0f17c880 /* f17c868: 000d7880 */ sll $t7,$t5,0x2 /* f17c86c: 8fa4003c */ lw $a0,0x3c($sp) @@ -6884,7 +6884,7 @@ glabel menuhandler0017c6a4 /* f17c888: 000f7880 */ sll $t7,$t7,0x2 /* f17c88c: 01ed7823 */ subu $t7,$t7,$t5 /* f17c890: 000f7880 */ sll $t7,$t7,0x2 -/* f17c894: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f17c894: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f17c898: 01f91021 */ addu $v0,$t7,$t9 /* f17c89c: 31d800ff */ andi $t8,$t6,0xff /* f17c8a0: 17000004 */ bnez $t8,.L0f17c8b4 @@ -7097,7 +7097,7 @@ glabel menuhandlerMpSimulantHead /* f17cb8c: 3c0f8007 */ lui $t7,0x8007 /* f17cb90: 8def1448 */ lw $t7,0x1448($t7) /* f17cb94: 3c19800a */ lui $t9,0x800a -/* f17cb98: 3c09800b */ lui $t1,%hi(var800ac538) +/* f17cb98: 3c09800b */ lui $t1,%hi(g_MpSimulants) /* f17cb9c: 000fc0c0 */ sll $t8,$t7,0x3 /* f17cba0: 030fc023 */ subu $t8,$t8,$t7 /* f17cba4: 0018c080 */ sll $t8,$t8,0x2 @@ -7107,7 +7107,7 @@ glabel menuhandlerMpSimulantHead /* f17cbb4: 0018c100 */ sll $t8,$t8,0x4 /* f17cbb8: 0338c821 */ addu $t9,$t9,$t8 /* f17cbbc: 8f39ee1c */ lw $t9,-0x11e4($t9) -/* f17cbc0: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f17cbc0: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f17cbc4: 2401000d */ addiu $at,$zero,0xd /* f17cbc8: 00194080 */ sll $t0,$t9,0x2 /* f17cbcc: 01194021 */ addu $t0,$t0,$t9 @@ -7136,64 +7136,17 @@ glabel menuhandlerMpSimulantHead /* f17cc20: 00000000 */ sll $zero,$zero,0x0 ); -GLOBAL_ASM( -glabel menuhandlerMpSimulantBody -/* f17cc24: 27bdffe0 */ addiu $sp,$sp,-32 -/* f17cc28: 24010006 */ addiu $at,$zero,0x6 -/* f17cc2c: 14810016 */ bne $a0,$at,.L0f17cc88 -/* f17cc30: afbf001c */ sw $ra,0x1c($sp) -/* f17cc34: 3c0f8007 */ lui $t7,0x8007 -/* f17cc38: 8def1448 */ lw $t7,0x1448($t7) -/* f17cc3c: 3c19800a */ lui $t9,0x800a -/* f17cc40: 8cce0000 */ lw $t6,0x0($a2) -/* f17cc44: 000fc0c0 */ sll $t8,$t7,0x3 -/* f17cc48: 030fc023 */ subu $t8,$t8,$t7 -/* f17cc4c: 0018c080 */ sll $t8,$t8,0x2 -/* f17cc50: 030fc021 */ addu $t8,$t8,$t7 -/* f17cc54: 0018c0c0 */ sll $t8,$t8,0x3 -/* f17cc58: 030fc023 */ subu $t8,$t8,$t7 -/* f17cc5c: 0018c100 */ sll $t8,$t8,0x4 -/* f17cc60: 0338c821 */ addu $t9,$t9,$t8 -/* f17cc64: 8f39ee1c */ lw $t9,-0x11e4($t9) -/* f17cc68: 3c01800b */ lui $at,0x800b -/* f17cc6c: 00194080 */ sll $t0,$t9,0x2 -/* f17cc70: 01194021 */ addu $t0,$t0,$t9 -/* f17cc74: 00084080 */ sll $t0,$t0,0x2 -/* f17cc78: 01194023 */ subu $t0,$t0,$t9 -/* f17cc7c: 00084080 */ sll $t0,$t0,0x2 -/* f17cc80: 00280821 */ addu $at,$at,$t0 -/* f17cc84: a02ec548 */ sb $t6,-0x3ab8($at) -.L0f17cc88: -/* f17cc88: 3c098007 */ lui $t1,0x8007 -/* f17cc8c: 8d291448 */ lw $t1,0x1448($t1) -/* f17cc90: 3c0b800a */ lui $t3,0x800a -/* f17cc94: 3c0d800b */ lui $t5,%hi(var800ac538) -/* f17cc98: 000950c0 */ sll $t2,$t1,0x3 -/* f17cc9c: 01495023 */ subu $t2,$t2,$t1 -/* f17cca0: 000a5080 */ sll $t2,$t2,0x2 -/* f17cca4: 01495021 */ addu $t2,$t2,$t1 -/* f17cca8: 000a50c0 */ sll $t2,$t2,0x3 -/* f17ccac: 01495023 */ subu $t2,$t2,$t1 -/* f17ccb0: 000a5100 */ sll $t2,$t2,0x4 -/* f17ccb4: 016a5821 */ addu $t3,$t3,$t2 -/* f17ccb8: 8d6bee1c */ lw $t3,-0x11e4($t3) -/* f17ccbc: 25adc538 */ addiu $t5,$t5,%lo(var800ac538) -/* f17ccc0: afa00014 */ sw $zero,0x14($sp) -/* f17ccc4: 000b6080 */ sll $t4,$t3,0x2 -/* f17ccc8: 018b6021 */ addu $t4,$t4,$t3 -/* f17cccc: 000c6080 */ sll $t4,$t4,0x2 -/* f17ccd0: 018b6023 */ subu $t4,$t4,$t3 -/* f17ccd4: 000c6080 */ sll $t4,$t4,0x2 -/* f17ccd8: 018d1021 */ addu $v0,$t4,$t5 -/* f17ccdc: 904f000f */ lbu $t7,0xf($v0) -/* f17cce0: 90470010 */ lbu $a3,0x10($v0) -/* f17cce4: 0fc5e769 */ jal func0f179da4 -/* f17cce8: afaf0010 */ sw $t7,0x10($sp) -/* f17ccec: 8fbf001c */ lw $ra,0x1c($sp) -/* f17ccf0: 27bd0020 */ addiu $sp,$sp,0x20 -/* f17ccf4: 03e00008 */ jr $ra -/* f17ccf8: 00000000 */ sll $zero,$zero,0x0 -); +s32 menuhandlerMpSimulantBody(u32 operation, struct menu_item *item, s32 *value) +{ + if (operation == MENUOP_SET) { + g_MpSimulants[g_MenuStack[g_MenuStackDepth].slotindex].bodynum = *value; + } + + return func0f179da4(operation, item, value, + g_MpSimulants[g_MenuStack[g_MenuStackDepth].slotindex].bodynum, + g_MpSimulants[g_MenuStack[g_MenuStackDepth].slotindex].unk0f, + 0); +} GLOBAL_ASM( glabel menudialog0017ccfc @@ -7395,14 +7348,14 @@ glabel func0f17cfc0 /* f17cfec: 030fc021 */ addu $t8,$t8,$t7 /* f17cff0: 8f18ee1c */ lw $t8,-0x11e4($t8) /* f17cff4: afa40018 */ sw $a0,0x18($sp) -/* f17cff8: 3c08800b */ lui $t0,%hi(var800ac538) +/* f17cff8: 3c08800b */ lui $t0,%hi(g_MpSimulants) /* f17cffc: 0018c880 */ sll $t9,$t8,0x2 /* f17d000: 0338c821 */ addu $t9,$t9,$t8 /* f17d004: 0019c880 */ sll $t9,$t9,0x2 /* f17d008: 0338c823 */ subu $t9,$t9,$t8 /* f17d00c: afbf0014 */ sw $ra,0x14($sp) /* f17d010: 0019c880 */ sll $t9,$t9,0x2 -/* f17d014: 2508c538 */ addiu $t0,$t0,%lo(var800ac538) +/* f17d014: 2508c538 */ addiu $t0,$t0,%lo(g_MpSimulants) /* f17d018: 3c048007 */ lui $a0,0x8007 /* f17d01c: 3c057f1c */ lui $a1,0x7f1c /* f17d020: 24a5802c */ addiu $a1,$a1,-32724 @@ -7431,7 +7384,7 @@ glabel menuhandlerMpChangeSimulantType /* f17d06c: 3c0e8007 */ lui $t6,0x8007 /* f17d070: 8dce1448 */ lw $t6,0x1448($t6) /* f17d074: 3c18800a */ lui $t8,0x800a -/* f17d078: 3c08800b */ lui $t0,%hi(var800ac538) +/* f17d078: 3c08800b */ lui $t0,%hi(g_MpSimulants) /* f17d07c: 000e78c0 */ sll $t7,$t6,0x3 /* f17d080: 01ee7823 */ subu $t7,$t7,$t6 /* f17d084: 000f7880 */ sll $t7,$t7,0x2 @@ -7441,7 +7394,7 @@ glabel menuhandlerMpChangeSimulantType /* f17d094: 000f7900 */ sll $t7,$t7,0x4 /* f17d098: 030fc021 */ addu $t8,$t8,$t7 /* f17d09c: 8f18ee1c */ lw $t8,-0x11e4($t8) -/* f17d0a0: 2508c538 */ addiu $t0,$t0,%lo(var800ac538) +/* f17d0a0: 2508c538 */ addiu $t0,$t0,%lo(g_MpSimulants) /* f17d0a4: 00008825 */ or $s1,$zero,$zero /* f17d0a8: 0018c880 */ sll $t9,$t8,0x2 /* f17d0ac: 0338c821 */ addu $t9,$t9,$t8 @@ -7553,8 +7506,8 @@ s32 menuhandlerMpSimulantSlot(u32 operation, struct menu_item *item, s32 *value) GLOBAL_ASM( glabel func0f17d378 /* f17d378: 90820001 */ lbu $v0,0x1($a0) -/* f17d37c: 3c0f800b */ lui $t7,%hi(var800ac538) -/* f17d380: 25efc538 */ addiu $t7,$t7,%lo(var800ac538) +/* f17d37c: 3c0f800b */ lui $t7,%hi(g_MpSimulants) +/* f17d380: 25efc538 */ addiu $t7,$t7,%lo(g_MpSimulants) /* f17d384: 00027080 */ sll $t6,$v0,0x2 /* f17d388: 01c27021 */ addu $t6,$t6,$v0 /* f17d38c: 000e7080 */ sll $t6,$t6,0x2 @@ -7873,13 +7826,13 @@ glabel menuhandlerMpMaximumTeams /* f17d7ec: afa5003c */ sw $a1,0x3c($sp) /* f17d7f0: 1481002b */ bne $a0,$at,.L0f17d8a0 /* f17d7f4: afa60040 */ sw $a2,0x40($sp) -/* f17d7f8: 3c16800b */ lui $s6,%hi(var800ac538) +/* f17d7f8: 3c16800b */ lui $s6,%hi(g_MpSimulants) /* f17d7fc: 3c13800b */ lui $s3,%hi(g_Options) /* f17d800: 3c12800b */ lui $s2,%hi(g_MpSetup) /* f17d804: 00008825 */ or $s1,$zero,$zero /* f17d808: 2652cb88 */ addiu $s2,$s2,%lo(g_MpSetup) /* f17d80c: 2673c7b8 */ addiu $s3,$s3,%lo(g_Options) -/* f17d810: 26d6c538 */ addiu $s6,$s6,%lo(var800ac538) +/* f17d810: 26d6c538 */ addiu $s6,$s6,%lo(g_MpSimulants) /* f17d814: 00008025 */ or $s0,$zero,$zero /* f17d818: 2417004c */ addiu $s7,$zero,0x4c /* f17d81c: 2415000c */ addiu $s5,$zero,0xc @@ -7943,12 +7896,12 @@ glabel menuhandlerMpHumansVsSimulants /* f17d8dc: afa5001c */ sw $a1,0x1c($sp) /* f17d8e0: 14810028 */ bne $a0,$at,.L0f17d984 /* f17d8e4: afa60020 */ sw $a2,0x20($sp) -/* f17d8e8: 3c09800b */ lui $t1,%hi(var800ac538) +/* f17d8e8: 3c09800b */ lui $t1,%hi(g_MpSimulants) /* f17d8ec: 3c05800b */ lui $a1,%hi(g_Options) /* f17d8f0: 3c04800b */ lui $a0,%hi(g_MpSetup) /* f17d8f4: 2484cb88 */ addiu $a0,$a0,%lo(g_MpSetup) /* f17d8f8: 24a5c7b8 */ addiu $a1,$a1,%lo(g_Options) -/* f17d8fc: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f17d8fc: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f17d900: 00001025 */ or $v0,$zero,$zero /* f17d904: 240a004c */ addiu $t2,$zero,0x4c /* f17d908: 24080001 */ addiu $t0,$zero,0x1 @@ -8006,14 +7959,14 @@ glabel menuhandlerMpHumanSimulantPairs /* f17d9b4: 25ce5a84 */ addiu $t6,$t6,%lo(var80085a84) /* f17d9b8: 8dc10000 */ lw $at,0x0($t6) /* f17d9bc: 27a6002c */ addiu $a2,$sp,0x2c -/* f17d9c0: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f17d9c0: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f17d9c4: 3c08800b */ lui $t0,%hi(g_Options) /* f17d9c8: 3c07800b */ lui $a3,%hi(g_MpSetup) /* f17d9cc: 00002825 */ or $a1,$zero,$zero /* f17d9d0: 00002025 */ or $a0,$zero,$zero /* f17d9d4: 24e7cb88 */ addiu $a3,$a3,%lo(g_MpSetup) /* f17d9d8: 2508c7b8 */ addiu $t0,$t0,%lo(g_Options) -/* f17d9dc: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f17d9dc: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f17d9e0: 00001025 */ or $v0,$zero,$zero /* f17d9e4: 240c004c */ addiu $t4,$zero,0x4c /* f17d9e8: 240a000c */ addiu $t2,$zero,0xc @@ -9809,10 +9762,10 @@ glabel func0f17f260 .L0f17f340: /* f17f340: 0fc63377 */ jal func0f18cddc /* f17f344: 00000000 */ sll $zero,$zero,0x0 -/* f17f348: 3c02800b */ lui $v0,%hi(var800ac538) +/* f17f348: 3c02800b */ lui $v0,%hi(g_MpSimulants) /* f17f34c: 3c04800b */ lui $a0,%hi(var800ac798) /* f17f350: 2484c798 */ addiu $a0,$a0,%lo(var800ac798) -/* f17f354: 2442c538 */ addiu $v0,$v0,%lo(var800ac538) +/* f17f354: 2442c538 */ addiu $v0,$v0,%lo(g_MpSimulants) /* f17f358: 24030001 */ addiu $v1,$zero,0x1 .L0f17f35c: /* f17f35c: 2442004c */ addiu $v0,$v0,0x4c @@ -9825,8 +9778,8 @@ glabel func0f17f260 /* f17f378: 2456ffff */ addiu $s6,$v0,-1 /* f17f37c: 06c0001e */ bltz $s6,.L0f17f3f8 /* f17f380: 2415004c */ addiu $s5,$zero,0x4c -/* f17f384: 3c14800b */ lui $s4,%hi(var800ac538) -/* f17f388: 2694c538 */ addiu $s4,$s4,%lo(var800ac538) +/* f17f384: 3c14800b */ lui $s4,%hi(g_MpSimulants) +/* f17f388: 2694c538 */ addiu $s4,$s4,%lo(g_MpSimulants) /* f17f38c: 02c02025 */ or $a0,$s6,$zero .L0f17f390: /* f17f390: 0fc631e5 */ jal func0f18c794 @@ -11390,10 +11343,10 @@ glabel func0f180960 /* f180984: 31f80400 */ andi $t8,$t7,0x400 /* f180988: 13000033 */ beqz $t8,.L0f180a58 /* f18098c: 240d004c */ addiu $t5,$zero,0x4c -/* f180990: 3c0c800b */ lui $t4,%hi(var800ac538) +/* f180990: 3c0c800b */ lui $t4,%hi(g_MpSimulants) /* f180994: 3c0a800b */ lui $t2,%hi(g_Options) /* f180998: 254ac7b8 */ addiu $t2,$t2,%lo(g_Options) -/* f18099c: 258cc538 */ addiu $t4,$t4,%lo(var800ac538) +/* f18099c: 258cc538 */ addiu $t4,$t4,%lo(g_MpSimulants) /* f1809a0: 240b00a0 */ addiu $t3,$zero,0xa0 /* f1809a4: 2409000c */ addiu $t1,$zero,0xc .L0f1809a8: @@ -11660,10 +11613,10 @@ glabel func0f180c98 /* f180d34: a440fffe */ sh $zero,-0x2($v0) /* f180d38: 1443fffd */ bne $v0,$v1,.L0f180d30 /* f180d3c: a4450006 */ sh $a1,0x6($v0) -/* f180d40: 3c15800b */ lui $s5,%hi(var800ac538) +/* f180d40: 3c15800b */ lui $s5,%hi(g_MpSimulants) /* f180d44: 3c12800b */ lui $s2,%hi(g_Options) /* f180d48: 2652c7b8 */ addiu $s2,$s2,%lo(g_Options) -/* f180d4c: 26b5c538 */ addiu $s5,$s5,%lo(var800ac538) +/* f180d4c: 26b5c538 */ addiu $s5,$s5,%lo(g_MpSimulants) /* f180d50: 00008825 */ or $s1,$zero,$zero /* f180d54: 2416004c */ addiu $s6,$zero,0x4c /* f180d58: 2414000c */ addiu $s4,$zero,0xc @@ -11835,8 +11788,8 @@ glabel func0f180e34 /* f180f88: 000c6080 */ sll $t4,$t4,0x2 /* f180f8c: 01916023 */ subu $t4,$t4,$s1 /* f180f90: 000c6080 */ sll $t4,$t4,0x2 -/* f180f94: 3c19800b */ lui $t9,%hi(var800ac538) -/* f180f98: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f180f94: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f180f98: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f180f9c: 258dfed0 */ addiu $t5,$t4,-304 /* f180fa0: 01b98021 */ addu $s0,$t5,$t9 .L0f180fa4: @@ -12147,10 +12100,10 @@ glabel func0f1813d8 /* f181400: 240c004c */ addiu $t4,$zero,0x4c /* f181404: 33190400 */ andi $t9,$t8,0x400 /* f181408: 13200028 */ beqz $t9,.L0f1814ac -/* f18140c: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f18140c: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f181410: 3c09800b */ lui $t1,%hi(g_Options) /* f181414: 2529c7b8 */ addiu $t1,$t1,%lo(g_Options) -/* f181418: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f181418: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f18141c: 240a00a0 */ addiu $t2,$zero,0xa0 /* f181420: 2408000c */ addiu $t0,$zero,0xc .L0f181424: @@ -13674,10 +13627,10 @@ glabel func0f182908 /* f182928: 240c004c */ addiu $t4,$zero,0x4c /* f18292c: 31f80400 */ andi $t8,$t7,0x400 /* f182930: 13000028 */ beqz $t8,.L0f1829d4 -/* f182934: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f182934: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f182938: 3c09800b */ lui $t1,%hi(g_Options) /* f18293c: 2529c7b8 */ addiu $t1,$t1,%lo(g_Options) -/* f182940: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f182940: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f182944: 240a00a0 */ addiu $t2,$zero,0xa0 /* f182948: 2408000c */ addiu $t0,$zero,0xc .L0f18294c: @@ -15036,10 +14989,10 @@ glabel func0f183bb4 /* f183c1c: 31af0400 */ andi $t7,$t5,0x400 /* f183c20: 11e00033 */ beqz $t7,.L0f183cf0 /* f183c24: 240a004c */ addiu $t2,$zero,0x4c -/* f183c28: 3c09800b */ lui $t1,%hi(var800ac538) +/* f183c28: 3c09800b */ lui $t1,%hi(g_MpSimulants) /* f183c2c: 3c07800b */ lui $a3,%hi(g_Options) /* f183c30: 24e7c7b8 */ addiu $a3,$a3,%lo(g_Options) -/* f183c34: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f183c34: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f183c38: 240800a0 */ addiu $t0,$zero,0xa0 /* f183c3c: 2405000c */ addiu $a1,$zero,0xc .L0f183c40: @@ -16232,10 +16185,10 @@ glabel func0f184c18 /* f184c90: 330c0400 */ andi $t4,$t8,0x400 /* f184c94: 11800033 */ beqz $t4,.L0f184d64 /* f184c98: 240a004c */ addiu $t2,$zero,0x4c -/* f184c9c: 3c09800b */ lui $t1,%hi(var800ac538) +/* f184c9c: 3c09800b */ lui $t1,%hi(g_MpSimulants) /* f184ca0: 3c07800b */ lui $a3,%hi(g_Options) /* f184ca4: 24e7c7b8 */ addiu $a3,$a3,%lo(g_Options) -/* f184ca8: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f184ca8: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f184cac: 240800a0 */ addiu $t0,$zero,0xa0 /* f184cb0: 2405000c */ addiu $a1,$zero,0xc .L0f184cb4: @@ -17363,11 +17316,11 @@ glabel func0f185c14 /* f185c60: 1000003b */ beqz $zero,.L0f185d50 /* f185c64: 8fbf001c */ lw $ra,0x1c($sp) .L0f185c68: -/* f185c68: 3c09800b */ lui $t1,%hi(var800ac538) +/* f185c68: 3c09800b */ lui $t1,%hi(g_MpSimulants) /* f185c6c: 3c07800b */ lui $a3,%hi(g_Options) /* f185c70: acc00000 */ sw $zero,0x0($a2) /* f185c74: 24e7c7b8 */ addiu $a3,$a3,%lo(g_Options) -/* f185c78: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f185c78: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f185c7c: 00001025 */ or $v0,$zero,$zero /* f185c80: 02001825 */ or $v1,$s0,$zero /* f185c84: 240a004c */ addiu $t2,$zero,0x4c @@ -18208,8 +18161,8 @@ glabel func0f186780 /* f1867fc: 00084080 */ sll $t0,$t0,0x2 /* f186800: 01034023 */ subu $t0,$t0,$v1 /* f186804: 00084080 */ sll $t0,$t0,0x2 -/* f186808: 3c0a800b */ lui $t2,%hi(var800ac538) -/* f18680c: 254ac538 */ addiu $t2,$t2,%lo(var800ac538) +/* f186808: 3c0a800b */ lui $t2,%hi(g_MpSimulants) +/* f18680c: 254ac538 */ addiu $t2,$t2,%lo(g_MpSimulants) /* f186810: 2509fed0 */ addiu $t1,$t0,-304 /* f186814: 012a2021 */ addu $a0,$t1,$t2 .L0f186818: @@ -18228,8 +18181,8 @@ glabel func0f186780 /* f186844: 000d6880 */ sll $t5,$t5,0x2 /* f186848: 01a26823 */ subu $t5,$t5,$v0 /* f18684c: 000d6880 */ sll $t5,$t5,0x2 -/* f186850: 3c0f800b */ lui $t7,%hi(var800ac538) -/* f186854: 25efc538 */ addiu $t7,$t7,%lo(var800ac538) +/* f186850: 3c0f800b */ lui $t7,%hi(g_MpSimulants) +/* f186854: 25efc538 */ addiu $t7,$t7,%lo(g_MpSimulants) /* f186858: 25aefed0 */ addiu $t6,$t5,-304 /* f18685c: 01cf1821 */ addu $v1,$t6,$t7 .L0f186860: @@ -18303,8 +18256,8 @@ glabel func0f186898 /* f18694c: 001979c0 */ sll $t7,$t9,0x7 /* f186950: 022f5021 */ addu $t2,$s1,$t7 /* f186954: 8d4200e4 */ lw $v0,0xe4($t2) -/* f186958: 3c19800b */ lui $t9,%hi(var800ac538) -/* f18695c: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f186958: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f18695c: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f186960: 28410004 */ slti $at,$v0,0x4 /* f186964: 10200007 */ beqz $at,.L0f186984 /* f186968: 00027080 */ sll $t6,$v0,0x2 @@ -18479,8 +18432,8 @@ glabel func0f186898 /* f186bbc: 000ec1c0 */ sll $t8,$t6,0x7 /* f186bc0: 0238c821 */ addu $t9,$s1,$t8 /* f186bc4: 8f2200e4 */ lw $v0,0xe4($t9) -/* f186bc8: 3c0e800b */ lui $t6,%hi(var800ac538) -/* f186bcc: 25cec538 */ addiu $t6,$t6,%lo(var800ac538) +/* f186bc8: 3c0e800b */ lui $t6,%hi(g_MpSimulants) +/* f186bcc: 25cec538 */ addiu $t6,$t6,%lo(g_MpSimulants) /* f186bd0: 28410004 */ slti $at,$v0,0x4 /* f186bd4: 10200007 */ beqz $at,.L0f186bf4 /* f186bd8: 00026080 */ sll $t4,$v0,0x2 @@ -19103,8 +19056,8 @@ glabel func0f187410 /* f187488: 000d71c0 */ sll $t6,$t5,0x7 /* f18748c: 014e7821 */ addu $t7,$t2,$t6 /* f187490: 8de200e4 */ lw $v0,0xe4($t7) -/* f187494: 3c0d800b */ lui $t5,%hi(var800ac538) -/* f187498: 25adc538 */ addiu $t5,$t5,%lo(var800ac538) +/* f187494: 3c0d800b */ lui $t5,%hi(g_MpSimulants) +/* f187498: 25adc538 */ addiu $t5,$t5,%lo(g_MpSimulants) /* f18749c: 28410004 */ slti $at,$v0,0x4 /* f1874a0: 10200006 */ beqz $at,.L0f1874bc /* f1874a4: 00025880 */ sll $t3,$v0,0x2 diff --git a/src/game/game_187770.c b/src/game/game_187770.c index ae14cb252..c13d74346 100644 --- a/src/game/game_187770.c +++ b/src/game/game_187770.c @@ -621,8 +621,8 @@ glabel func0f187944 /* f187cc8: 000c6080 */ sll $t4,$t4,0x2 /* f187ccc: 01906023 */ subu $t4,$t4,$s0 /* f187cd0: 000c6080 */ sll $t4,$t4,0x2 -/* f187cd4: 3c0f800b */ lui $t7,%hi(var800ac538) -/* f187cd8: 25efc538 */ addiu $t7,$t7,%lo(var800ac538) +/* f187cd4: 3c0f800b */ lui $t7,%hi(g_MpSimulants) +/* f187cd8: 25efc538 */ addiu $t7,$t7,%lo(g_MpSimulants) /* f187cdc: 258efed0 */ addiu $t6,$t4,-304 /* f187ce0: 01cf2021 */ addu $a0,$t6,$t7 .L0f187ce4: @@ -995,8 +995,8 @@ glabel func0f1881d4 /* f1881d8: 01c47021 */ addu $t6,$t6,$a0 /* f1881dc: 000e7080 */ sll $t6,$t6,0x2 /* f1881e0: 01c47023 */ subu $t6,$t6,$a0 -/* f1881e4: 3c0f800b */ lui $t7,%hi(var800ac538) -/* f1881e8: 25efc538 */ addiu $t7,$t7,%lo(var800ac538) +/* f1881e4: 3c0f800b */ lui $t7,%hi(g_MpSimulants) +/* f1881e8: 25efc538 */ addiu $t7,$t7,%lo(g_MpSimulants) /* f1881ec: 000e7080 */ sll $t6,$t6,0x2 /* f1881f0: 01cf1021 */ addu $v0,$t6,$t7 /* f1881f4: 24180006 */ addiu $t8,$zero,0x6 @@ -1340,8 +1340,8 @@ glabel func0f1885e4 /* f18867c: 000e7080 */ sll $t6,$t6,0x2 /* f188680: 01d17023 */ subu $t6,$t6,$s1 /* f188684: 000e7080 */ sll $t6,$t6,0x2 -/* f188688: 3c19800b */ lui $t9,%hi(var800ac538) -/* f18868c: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f188688: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f18868c: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f188690: 25cffed0 */ addiu $t7,$t6,-304 /* f188694: 01f99021 */ addu $s2,$t7,$t9 .L0f188698: @@ -1574,8 +1574,8 @@ glabel func0f188930 /* f1889c8: 00094880 */ sll $t1,$t1,0x2 /* f1889cc: 01304823 */ subu $t1,$t1,$s0 /* f1889d0: 00094880 */ sll $t1,$t1,0x2 -/* f1889d4: 3c0b800b */ lui $t3,%hi(var800ac538) -/* f1889d8: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f1889d4: 3c0b800b */ lui $t3,%hi(g_MpSimulants) +/* f1889d8: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f1889dc: 252afed0 */ addiu $t2,$t1,-304 /* f1889e0: 014b2021 */ addu $a0,$t2,$t3 /* f1889e4: 908c0011 */ lbu $t4,0x11($a0) @@ -3768,8 +3768,8 @@ glabel func0f18a56c /* f18a784: 000f7880 */ sll $t7,$t7,0x2 /* f18a788: 01e37823 */ subu $t7,$t7,$v1 /* f18a78c: 000f7880 */ sll $t7,$t7,0x2 -/* f18a790: 3c19800b */ lui $t9,%hi(var800ac538) -/* f18a794: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f18a790: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f18a794: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f18a798: 25f8fed0 */ addiu $t8,$t7,-304 /* f18a79c: 03191021 */ addu $v0,$t8,$t9 /* f18a7a0: 00447021 */ addu $t6,$v0,$a0 @@ -4179,8 +4179,8 @@ glabel func0f18a56c /* f18ad88: 000f7880 */ sll $t7,$t7,0x2 /* f18ad8c: 01e37823 */ subu $t7,$t7,$v1 /* f18ad90: 000f7880 */ sll $t7,$t7,0x2 -/* f18ad94: 3c0d800b */ lui $t5,%hi(var800ac538) -/* f18ad98: 25adc538 */ addiu $t5,$t5,%lo(var800ac538) +/* f18ad94: 3c0d800b */ lui $t5,%hi(g_MpSimulants) +/* f18ad98: 25adc538 */ addiu $t5,$t5,%lo(g_MpSimulants) /* f18ad9c: 25f8fed0 */ addiu $t8,$t7,-304 /* f18ada0: 030d1021 */ addu $v0,$t8,$t5 .L0f18ada4: @@ -4249,8 +4249,8 @@ glabel func0f18a56c /* f18ae80: 000d6880 */ sll $t5,$t5,0x2 /* f18ae84: 01a36823 */ subu $t5,$t5,$v1 /* f18ae88: 000d6880 */ sll $t5,$t5,0x2 -/* f18ae8c: 3c19800b */ lui $t9,%hi(var800ac538) -/* f18ae90: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f18ae8c: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f18ae90: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f18ae94: 25b8fed0 */ addiu $t8,$t5,-304 /* f18ae98: 03191021 */ addu $v0,$t8,$t9 /* f18ae9c: 8c4f0020 */ lw $t7,0x20($v0) @@ -4837,12 +4837,12 @@ glabel func0f18a56c /* f18b6d4: 14200072 */ bnez $at,.L0f18b8a0 /* f18b6d8: 3c0800ff */ lui $t0,0xff /* f18b6dc: 3c07800b */ lui $a3,0x800b -/* f18b6e0: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f18b6e0: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f18b6e4: 00003025 */ or $a2,$zero,$zero /* f18b6e8: 2409ffff */ addiu $t1,$zero,-1 /* f18b6ec: 3508ffff */ ori $t0,$t0,0xffff /* f18b6f0: 240affff */ addiu $t2,$zero,-1 -/* f18b6f4: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f18b6f4: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f18b6f8: 94e7cb9e */ lhu $a3,-0x3462($a3) /* f18b6fc: 00002825 */ or $a1,$zero,$zero /* f18b700: 240c004c */ addiu $t4,$zero,0x4c @@ -4924,8 +4924,8 @@ glabel func0f18a56c /* f18b804: 0019c880 */ sll $t9,$t9,0x2 /* f18b808: 0329c823 */ subu $t9,$t9,$t1 /* f18b80c: 0019c880 */ sll $t9,$t9,0x2 -/* f18b810: 3c0e800b */ lui $t6,%hi(var800ac538) -/* f18b814: 25cec538 */ addiu $t6,$t6,%lo(var800ac538) +/* f18b810: 3c0e800b */ lui $t6,%hi(g_MpSimulants) +/* f18b814: 25cec538 */ addiu $t6,$t6,%lo(g_MpSimulants) /* f18b818: 272ffed0 */ addiu $t7,$t9,-304 /* f18b81c: 01ee1021 */ addu $v0,$t7,$t6 .L0f18b820: @@ -4954,8 +4954,8 @@ glabel func0f18a56c /* f18b86c: 000d6880 */ sll $t5,$t5,0x2 /* f18b870: 01aa6823 */ subu $t5,$t5,$t2 /* f18b874: 000d6880 */ sll $t5,$t5,0x2 -/* f18b878: 3c19800b */ lui $t9,%hi(var800ac538) -/* f18b87c: 2739c538 */ addiu $t9,$t9,%lo(var800ac538) +/* f18b878: 3c19800b */ lui $t9,%hi(g_MpSimulants) +/* f18b87c: 2739c538 */ addiu $t9,$t9,%lo(g_MpSimulants) /* f18b880: 25b8fed0 */ addiu $t8,$t5,-304 /* f18b884: 03191021 */ addu $v0,$t8,$t9 .L0f18b888: @@ -5366,13 +5366,13 @@ glabel func0f18bc9c /* f18bda4: afb40024 */ sw $s4,0x24($sp) /* f18bda8: afb30020 */ sw $s3,0x20($sp) /* f18bdac: 3c12800b */ lui $s2,%hi(g_Options) -/* f18bdb0: 3c15800b */ lui $s5,%hi(var800ac538) +/* f18bdb0: 3c15800b */ lui $s5,%hi(g_MpSimulants) /* f18bdb4: afbf0034 */ sw $ra,0x34($sp) /* f18bdb8: afb10018 */ sw $s1,0x18($sp) /* f18bdbc: afb00014 */ sw $s0,0x14($sp) /* f18bdc0: afa40038 */ sw $a0,0x38($sp) /* f18bdc4: afa5003c */ sw $a1,0x3c($sp) -/* f18bdc8: 26b5c538 */ addiu $s5,$s5,%lo(var800ac538) +/* f18bdc8: 26b5c538 */ addiu $s5,$s5,%lo(g_MpSimulants) /* f18bdcc: 2652c7b8 */ addiu $s2,$s2,%lo(g_Options) /* f18bdd0: 241300a0 */ addiu $s3,$zero,0xa0 /* f18bdd4: 2414000c */ addiu $s4,$zero,0xc @@ -6184,8 +6184,8 @@ glabel func0f18c794 /* f18c7f0: 00094880 */ sll $t1,$t1,0x2 /* f18c7f4: 01254823 */ subu $t1,$t1,$a1 /* f18c7f8: 00094880 */ sll $t1,$t1,0x2 -/* f18c7fc: 3c0b800b */ lui $t3,%hi(var800ac538) -/* f18c800: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f18c7fc: 3c0b800b */ lui $t3,%hi(g_MpSimulants) +/* f18c800: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f18c804: 252afed0 */ addiu $t2,$t1,-304 /* f18c808: 03e00008 */ jr $ra /* f18c80c: 014b1021 */ addu $v0,$t2,$t3 @@ -6251,11 +6251,11 @@ glabel func0f18c87c GLOBAL_ASM( glabel func0f18c8b8 /* f18c8b8: 3c05800b */ lui $a1,0x800b -/* f18c8bc: 3c0b800b */ lui $t3,%hi(var800ac538) +/* f18c8bc: 3c0b800b */ lui $t3,%hi(g_MpSimulants) /* f18c8c0: 3c08800b */ lui $t0,%hi(g_Options) /* f18c8c4: 00001825 */ or $v1,$zero,$zero /* f18c8c8: 2508c7b8 */ addiu $t0,$t0,%lo(g_Options) -/* f18c8cc: 256bc538 */ addiu $t3,$t3,%lo(var800ac538) +/* f18c8cc: 256bc538 */ addiu $t3,$t3,%lo(g_MpSimulants) /* f18c8d0: 94a5cb9e */ lhu $a1,-0x3462($a1) /* f18c8d4: 240c004c */ addiu $t4,$zero,0x4c /* f18c8d8: 240a000c */ addiu $t2,$zero,0xc @@ -6337,9 +6337,9 @@ glabel func0f18c984 /* f18c9d4: 001278c0 */ sll $t7,$s2,0x3 /* f18c9d8: 01f83821 */ addu $a3,$t7,$t8 /* f18c9dc: 90e80001 */ lbu $t0,0x1($a3) -/* f18c9e0: 3c14800b */ lui $s4,%hi(var800ac538) +/* f18c9e0: 3c14800b */ lui $s4,%hi(g_MpSimulants) /* f18c9e4: 90f90000 */ lbu $t9,0x0($a3) -/* f18c9e8: 2694c538 */ addiu $s4,$s4,%lo(var800ac538) +/* f18c9e8: 2694c538 */ addiu $s4,$s4,%lo(g_MpSimulants) /* f18c9ec: 3c0a800b */ lui $t2,%hi(var800ac798) /* f18c9f0: 00007012 */ mflo $t6 /* f18c9f4: 028ef021 */ addu $s8,$s4,$t6 @@ -6449,8 +6449,8 @@ glabel func0f18cb60 /* f18cb64: 01c47021 */ addu $t6,$t6,$a0 /* f18cb68: 000e7080 */ sll $t6,$t6,0x2 /* f18cb6c: 01c47023 */ subu $t6,$t6,$a0 -/* f18cb70: 3c0f800b */ lui $t7,%hi(var800ac538) -/* f18cb74: 25efc538 */ addiu $t7,$t7,%lo(var800ac538) +/* f18cb70: 3c0f800b */ lui $t7,%hi(g_MpSimulants) +/* f18cb74: 25efc538 */ addiu $t7,$t7,%lo(g_MpSimulants) /* f18cb78: 000e7080 */ sll $t6,$t6,0x2 /* f18cb7c: 01cf1021 */ addu $v0,$t6,$t7 /* f18cb80: 3c19800b */ lui $t9,%hi(var800ac798) @@ -6669,10 +6669,10 @@ glabel func0f18cddc /* f18ce14: 0043082b */ sltu $at,$v0,$v1 /* f18ce18: 1420fffd */ bnez $at,.L0f18ce10 /* f18ce1c: ac40fffc */ sw $zero,-0x4($v0) -/* f18ce20: 3c17800b */ lui $s7,%hi(var800ac538) +/* f18ce20: 3c17800b */ lui $s7,%hi(g_MpSimulants) /* f18ce24: 3c16800b */ lui $s6,%hi(g_MpSetup) /* f18ce28: 26d6cb88 */ addiu $s6,$s6,%lo(g_MpSetup) -/* f18ce2c: 26f7c538 */ addiu $s7,$s7,%lo(var800ac538) +/* f18ce2c: 26f7c538 */ addiu $s7,$s7,%lo(g_MpSimulants) /* f18ce30: 24110004 */ addiu $s1,$zero,0x4 /* f18ce34: 241e004c */ addiu $s8,$zero,0x4c /* f18ce38: 27b50068 */ addiu $s5,$sp,0x68 @@ -6860,8 +6860,8 @@ glabel func0f18d074 /* f18d0a4: 28610004 */ slti $at,$v1,0x4 /* f18d0a8: 1420fff9 */ bnez $at,.L0f18d090 /* f18d0ac: 244200a0 */ addiu $v0,$v0,0xa0 -/* f18d0b0: 3c02800b */ lui $v0,%hi(var800ac538) -/* f18d0b4: 2442c538 */ addiu $v0,$v0,%lo(var800ac538) +/* f18d0b0: 3c02800b */ lui $v0,%hi(g_MpSimulants) +/* f18d0b4: 2442c538 */ addiu $v0,$v0,%lo(g_MpSimulants) /* f18d0b8: 00001825 */ or $v1,$zero,$zero /* f18d0bc: 24040008 */ addiu $a0,$zero,0x8 .L0f18d0c0: @@ -6919,8 +6919,8 @@ glabel func0f18d0e8 /* f18d16c: 0019c880 */ sll $t9,$t9,0x2 /* f18d170: 0324c823 */ subu $t9,$t9,$a0 /* f18d174: 0019c880 */ sll $t9,$t9,0x2 -/* f18d178: 3c09800b */ lui $t1,%hi(var800ac538) -/* f18d17c: 2529c538 */ addiu $t1,$t1,%lo(var800ac538) +/* f18d178: 3c09800b */ lui $t1,%hi(g_MpSimulants) +/* f18d17c: 2529c538 */ addiu $t1,$t1,%lo(g_MpSimulants) /* f18d180: 2728fed0 */ addiu $t0,$t9,-304 /* f18d184: 01093021 */ addu $a2,$t0,$t1 .L0f18d188: @@ -7781,8 +7781,8 @@ glabel func0f18dcec /* f18dd60: 8f210000 */ lw $at,0x0($t9) /* f18dd64: 3c09800b */ lui $t1,0x800b /* f18dd68: 2537c798 */ addiu $s7,$t1,-14440 -/* f18dd6c: 3c11800b */ lui $s1,%hi(var800ac538) -/* f18dd70: 2631c538 */ addiu $s1,$s1,%lo(var800ac538) +/* f18dd6c: 3c11800b */ lui $s1,%hi(g_MpSimulants) +/* f18dd70: 2631c538 */ addiu $s1,$s1,%lo(g_MpSimulants) /* f18dd74: 02e0a825 */ or $s5,$s7,$zero /* f18dd78: 00009825 */ or $s3,$zero,$zero /* f18dd7c: 03c0a025 */ or $s4,$s8,$zero @@ -7957,13 +7957,13 @@ glabel func0f18df5c /* f18dfd4: 0fc354fe */ jal func0f0d53f8 /* f18dfd8: 24050015 */ addiu $a1,$zero,0x15 /* f18dfdc: 96ae0016 */ lhu $t6,0x16($s5) -/* f18dfe0: 3c11800b */ lui $s1,%hi(var800ac538) +/* f18dfe0: 3c11800b */ lui $s1,%hi(g_MpSimulants) /* f18dfe4: 3c14800b */ lui $s4,%hi(var800ac798) /* f18dfe8: 31cf000f */ andi $t7,$t6,0xf /* f18dfec: aea2000c */ sw $v0,0xc($s5) /* f18dff0: a6af0016 */ sh $t7,0x16($s5) /* f18dff4: 2694c798 */ addiu $s4,$s4,%lo(var800ac798) -/* f18dff8: 2631c538 */ addiu $s1,$s1,%lo(var800ac538) +/* f18dff8: 2631c538 */ addiu $s1,$s1,%lo(g_MpSimulants) /* f18dffc: 00009025 */ or $s2,$zero,$zero /* f18e000: 24160006 */ addiu $s6,$zero,0x6 /* f18e004: 24100004 */ addiu $s0,$zero,0x4 @@ -8109,8 +8109,8 @@ glabel func0f18e16c /* f18e208: 8e65000c */ lw $a1,0xc($s3) /* f18e20c: 0fc354be */ jal func0f0d52f8 /* f18e210: 24060015 */ addiu $a2,$zero,0x15 -/* f18e214: 3c10800b */ lui $s0,%hi(var800ac538) -/* f18e218: 2610c538 */ addiu $s0,$s0,%lo(var800ac538) +/* f18e214: 3c10800b */ lui $s0,%hi(g_MpSimulants) +/* f18e218: 2610c538 */ addiu $s0,$s0,%lo(g_MpSimulants) /* f18e21c: 00008825 */ or $s1,$zero,$zero .L0f18e220: /* f18e220: 02402025 */ or $a0,$s2,$zero @@ -15464,12 +15464,12 @@ glabel func0f194990 /* f194a30: 00008025 */ or $s0,$zero,$zero /* f194a34: 1940002b */ blez $t2,.L0f194ae4 /* f194a38: 2417004c */ addiu $s7,$zero,0x4c -/* f194a3c: 3c16800b */ lui $s6,%hi(var800ac538) +/* f194a3c: 3c16800b */ lui $s6,%hi(g_MpSimulants) /* f194a40: 3c14800b */ lui $s4,%hi(g_Options) /* f194a44: 3c13800b */ lui $s3,%hi(var800ac110) /* f194a48: 2673c110 */ addiu $s3,$s3,%lo(var800ac110) /* f194a4c: 2694c7b8 */ addiu $s4,$s4,%lo(g_Options) -/* f194a50: 26d6c538 */ addiu $s6,$s6,%lo(var800ac538) +/* f194a50: 26d6c538 */ addiu $s6,$s6,%lo(g_MpSimulants) /* f194a54: 241500a0 */ addiu $s5,$zero,0xa0 /* f194a58: 8e2b0000 */ lw $t3,0x0($s1) .L0f194a5c: diff --git a/src/game/game_1999b0.c b/src/game/game_1999b0.c index 19d60ab2b..cfdf69807 100644 --- a/src/game/game_1999b0.c +++ b/src/game/game_1999b0.c @@ -2110,9 +2110,9 @@ glabel func0f19b540 /* f19b5bc: 256bc798 */ addiu $t3,$t3,%lo(var800ac798) /* f19b5c0: 24c6cb88 */ addiu $a2,$a2,%lo(g_MpSetup) /* f19b5c4: 00ab2021 */ addu $a0,$a1,$t3 -/* f19b5c8: 3c03800b */ lui $v1,%hi(var800ac538) +/* f19b5c8: 3c03800b */ lui $v1,%hi(g_MpSimulants) /* f19b5cc: a4ca0016 */ sh $t2,0x16($a2) -/* f19b5d0: 2463c538 */ addiu $v1,$v1,%lo(var800ac538) +/* f19b5d0: 2463c538 */ addiu $v1,$v1,%lo(g_MpSimulants) /* f19b5d4: 24050006 */ addiu $a1,$zero,0x6 /* f19b5d8: 24070008 */ addiu $a3,$zero,0x8 /* f19b5dc: 00001025 */ or $v0,$zero,$zero @@ -2872,7 +2872,7 @@ glabel func0f19bfa0 /* f19bfe0: 02602825 */ or $a1,$s3,$zero /* f19bfe4: 0fc66ee6 */ jal func0f19bb98 /* f19bfe8: 24060028 */ addiu $a2,$zero,0x28 -/* f19bfec: 3c11800b */ lui $s1,%hi(var800ac538) +/* f19bfec: 3c11800b */ lui $s1,%hi(g_MpSimulants) /* f19bff0: 3c1e800b */ lui $s8,%hi(var800ac798) /* f19bff4: 3c178008 */ lui $s7,%hi(mpheadstable) /* f19bff8: 3c168008 */ lui $s6,%hi(mpbodytable) @@ -2882,7 +2882,7 @@ glabel func0f19bfa0 /* f19c008: 26d677bc */ addiu $s6,$s6,%lo(mpbodytable) /* f19c00c: 26f7752c */ addiu $s7,$s7,%lo(mpheadstable) /* f19c010: 27dec798 */ addiu $s8,$s8,%lo(var800ac798) -/* f19c014: 2631c538 */ addiu $s1,$s1,%lo(var800ac538) +/* f19c014: 2631c538 */ addiu $s1,$s1,%lo(g_MpSimulants) /* f19c018: 92240047 */ lbu $a0,0x47($s1) .L0f19c01c: /* f19c01c: 0fc6335a */ jal func0f18cd68 diff --git a/src/gvars/gvars.c b/src/gvars/gvars.c index 4729df840..2b93622ed 100644 --- a/src/gvars/gvars.c +++ b/src/gvars/gvars.c @@ -30636,158 +30636,7 @@ u32 var800ac528 = 0; u32 var800ac52c = 0; u32 var800ac530 = 0; u32 var800ac534 = 0; -u32 var800ac538 = 0; -u32 var800ac53c = 0; -u32 var800ac540 = 0; -u32 var800ac544 = 0; -u32 var800ac548 = 0; -u32 var800ac54c = 0; -u32 var800ac550 = 0; -u32 var800ac554 = 0; -u32 var800ac558 = 0; -u32 var800ac55c = 0; -u32 var800ac560 = 0; -u32 var800ac564 = 0; -u32 var800ac568 = 0; -u32 var800ac56c = 0; -u32 var800ac570 = 0; -u32 var800ac574 = 0; -u32 var800ac578 = 0; -u32 var800ac57c = 0; -u32 var800ac580 = 0; -u32 var800ac584 = 0; -u32 var800ac588 = 0; -u32 var800ac58c = 0; -u32 var800ac590 = 0; -u32 var800ac594 = 0; -u32 var800ac598 = 0; -u32 var800ac59c = 0; -u32 var800ac5a0 = 0; -u32 var800ac5a4 = 0; -u32 var800ac5a8 = 0; -u32 var800ac5ac = 0; -u32 var800ac5b0 = 0; -u32 var800ac5b4 = 0; -u32 var800ac5b8 = 0; -u32 var800ac5bc = 0; -u32 var800ac5c0 = 0; -u32 var800ac5c4 = 0; -u32 var800ac5c8 = 0; -u32 var800ac5cc = 0; -u32 var800ac5d0 = 0; -u32 var800ac5d4 = 0; -u32 var800ac5d8 = 0; -u32 var800ac5dc = 0; -u32 var800ac5e0 = 0; -u32 var800ac5e4 = 0; -u32 var800ac5e8 = 0; -u32 var800ac5ec = 0; -u32 var800ac5f0 = 0; -u32 var800ac5f4 = 0; -u32 var800ac5f8 = 0; -u32 var800ac5fc = 0; -u32 var800ac600 = 0; -u32 var800ac604 = 0; -u32 var800ac608 = 0; -u32 var800ac60c = 0; -u32 var800ac610 = 0; -u32 var800ac614 = 0; -u32 var800ac618 = 0; -u32 var800ac61c = 0; -u32 var800ac620 = 0; -u32 var800ac624 = 0; -u32 var800ac628 = 0; -u32 var800ac62c = 0; -u32 var800ac630 = 0; -u32 var800ac634 = 0; -u32 var800ac638 = 0; -u32 var800ac63c = 0; -u32 var800ac640 = 0; -u32 var800ac644 = 0; -u32 var800ac648 = 0; -u32 var800ac64c = 0; -u32 var800ac650 = 0; -u32 var800ac654 = 0; -u32 var800ac658 = 0; -u32 var800ac65c = 0; -u32 var800ac660 = 0; -u32 var800ac664 = 0; -u32 var800ac668 = 0; -u32 var800ac66c = 0; -u32 var800ac670 = 0; -u32 var800ac674 = 0; -u32 var800ac678 = 0; -u32 var800ac67c = 0; -u32 var800ac680 = 0; -u32 var800ac684 = 0; -u32 var800ac688 = 0; -u32 var800ac68c = 0; -u32 var800ac690 = 0; -u32 var800ac694 = 0; -u32 var800ac698 = 0; -u32 var800ac69c = 0; -u32 var800ac6a0 = 0; -u32 var800ac6a4 = 0; -u32 var800ac6a8 = 0; -u32 var800ac6ac = 0; -u32 var800ac6b0 = 0; -u32 var800ac6b4 = 0; -u32 var800ac6b8 = 0; -u32 var800ac6bc = 0; -u32 var800ac6c0 = 0; -u32 var800ac6c4 = 0; -u32 var800ac6c8 = 0; -u32 var800ac6cc = 0; -u32 var800ac6d0 = 0; -u32 var800ac6d4 = 0; -u32 var800ac6d8 = 0; -u32 var800ac6dc = 0; -u32 var800ac6e0 = 0; -u32 var800ac6e4 = 0; -u32 var800ac6e8 = 0; -u32 var800ac6ec = 0; -u32 var800ac6f0 = 0; -u32 var800ac6f4 = 0; -u32 var800ac6f8 = 0; -u32 var800ac6fc = 0; -u32 var800ac700 = 0; -u32 var800ac704 = 0; -u32 var800ac708 = 0; -u32 var800ac70c = 0; -u32 var800ac710 = 0; -u32 var800ac714 = 0; -u32 var800ac718 = 0; -u32 var800ac71c = 0; -u32 var800ac720 = 0; -u32 var800ac724 = 0; -u32 var800ac728 = 0; -u32 var800ac72c = 0; -u32 var800ac730 = 0; -u32 var800ac734 = 0; -u32 var800ac738 = 0; -u32 var800ac73c = 0; -u32 var800ac740 = 0; -u32 var800ac744 = 0; -u32 var800ac748 = 0; -u32 var800ac74c = 0; -u32 var800ac750 = 0; -u32 var800ac754 = 0; -u32 var800ac758 = 0; -u32 var800ac75c = 0; -u32 var800ac760 = 0; -u32 var800ac764 = 0; -u32 var800ac768 = 0; -u32 var800ac76c = 0; -u32 var800ac770 = 0; -u32 var800ac774 = 0; -u32 var800ac778 = 0; -u32 var800ac77c = 0; -u32 var800ac780 = 0; -u32 var800ac784 = 0; -u32 var800ac788 = 0; -u32 var800ac78c = 0; -u32 var800ac790 = 0; -u32 var800ac794 = 0; +struct mpsim g_MpSimulants[8] = {0}; u32 var800ac798 = 0; u32 var800ac79c = 0; u32 var800ac7a0 = 0; diff --git a/src/include/game/game_176d70.h b/src/include/game/game_176d70.h index 58cdff296..6a253afc6 100644 --- a/src/include/game/game_176d70.h +++ b/src/include/game/game_176d70.h @@ -35,7 +35,7 @@ u32 func0f1790fc(void); u32 func0f179104(void); u32 func0f17960c(void); u32 func0f179b58(void); -u32 func0f179da4(void); +s32 func0f179da4(u32 operation, struct menu_item *item, s32 *value, s32 arg3, s32 arg4, s32 arg5); u32 func0f17a658(void); u32 func0f17a6ac(void); u32 func0f17a700(void); @@ -247,7 +247,7 @@ s32 menuhandlerMpRestoreHandicapDefaults(u32, u32, u32 *); s32 menuhandlerMpRestoreScoreDefaults(u32 operation, struct menu_item *item, s32 *value); s32 menuhandlerMpSaveSettings(u32 operation, struct menu_item *item, s32 *value); s32 menuhandlerMpScoreLimitSlider(u32 operation, struct menu_item *item, struct numandtext *value); -s32 menuhandlerMpSimulantBody(u32, u32, u32 *); +s32 menuhandlerMpSimulantBody(u32 operation, struct menu_item *item, s32 *value); s32 menuhandlerMpSimulantDifficulty(u32, u32, u32 *); s32 menuhandlerMpSimulantHead(u32, u32, u32 *); s32 menuhandlerMpSimulantSlot(u32 operation, struct menu_item *item, s32 *value); diff --git a/src/include/gvars/gvars.h b/src/include/gvars/gvars.h index 6938f22fc..a6fa1caff 100644 --- a/src/include/gvars/gvars.h +++ b/src/include/gvars/gvars.h @@ -843,7 +843,7 @@ extern u32 var800ac4cc; extern u32 var800ac4d0; extern u32 var800ac500; extern u32 var800ac530; -extern u32 var800ac538; +extern struct mpsim g_MpSimulants[8]; extern u32 var800ac798; extern struct options g_Options[]; extern u32 var800ac858; diff --git a/src/include/types.h b/src/include/types.h index 8de2dd33c..6f5ca7a00 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -4047,4 +4047,29 @@ struct numandtext { char *text; }; +struct mpsim { + /*0x00*/ u32 unk00; + /*0x04*/ u32 unk04; + /*0x08*/ u32 unk08; + /*0x0c*/ u8 unk0c; + /*0x0d*/ u8 unk0d; + /*0x0e*/ u8 unk0e; + /*0x0f*/ u8 unk0f; + /*0x10*/ u8 bodynum; + /*0x14*/ u32 unk14; + /*0x18*/ u32 unk18; + /*0x1c*/ u32 unk1c; + /*0x20*/ u32 unk20; + /*0x24*/ u32 unk24; + /*0x28*/ u32 unk28; + /*0x2c*/ u32 unk2c; + /*0x30*/ u32 unk30; + /*0x34*/ u32 unk34; + /*0x38*/ u32 unk38; + /*0x3c*/ u32 unk3c; + /*0x40*/ u32 unk40; + /*0x44*/ u32 unk44; + /*0x48*/ u32 unk48; +}; + #endif