diff --git a/src/game/game_0d4690.c b/src/game/game_0d4690.c index 8f4c9b358..5ce8b52e0 100644 --- a/src/game/game_0d4690.c +++ b/src/game/game_0d4690.c @@ -1026,7 +1026,7 @@ glabel func0f0d4d0c ); GLOBAL_ASM( -glabel func0f0d52f8 +glabel scenarioDefaultCallback44 /* f0d52f8: 24ce001f */ addiu $t6,$a2,0x1f /* f0d52fc: 240f0001 */ addiu $t7,$zero,0x1 /* f0d5300: 01cf1004 */ sllv $v0,$t7,$t6 @@ -1272,13 +1272,13 @@ glabel func0f0d55a4 /* f0d55fc: 24100001 */ addiu $s0,$zero,0x1 .L0f0d5600: /* f0d5600: 02402025 */ or $a0,$s2,$zero -/* f0d5604: 0fc354be */ jal func0f0d52f8 +/* f0d5604: 0fc354be */ jal scenarioDefaultCallback44 /* f0d5608: 24060008 */ addiu $a2,$zero,0x8 .L0f0d560c: /* f0d560c: 12000004 */ beqz $s0,.L0f0d5620 /* f0d5610: 02402025 */ or $a0,$s2,$zero /* f0d5614: 00002825 */ or $a1,$zero,$zero -/* f0d5618: 0fc354be */ jal func0f0d52f8 +/* f0d5618: 0fc354be */ jal scenarioDefaultCallback44 /* f0d561c: 24060008 */ addiu $a2,$zero,0x8 .L0f0d5620: /* f0d5620: 26310001 */ addiu $s1,$s1,0x1 @@ -1382,12 +1382,12 @@ glabel func0f0d575c /* f0d5764: afa40018 */ sw $a0,0x18($sp) /* f0d5768: afa5001c */ sw $a1,0x1c($sp) /* f0d576c: 8ca50000 */ lw $a1,0x0($a1) -/* f0d5770: 0fc354be */ jal func0f0d52f8 +/* f0d5770: 0fc354be */ jal scenarioDefaultCallback44 /* f0d5774: 24060007 */ addiu $a2,$zero,0x7 /* f0d5778: 8faf001c */ lw $t7,0x1c($sp) /* f0d577c: 8fa40018 */ lw $a0,0x18($sp) /* f0d5780: 2406000d */ addiu $a2,$zero,0xd -/* f0d5784: 0fc354be */ jal func0f0d52f8 +/* f0d5784: 0fc354be */ jal scenarioDefaultCallback44 /* f0d5788: 95e50004 */ lhu $a1,0x4($t7) /* f0d578c: 8fbf0014 */ lw $ra,0x14($sp) /* f0d5790: 27bd0018 */ addiu $sp,$sp,0x18 diff --git a/src/game/game_10ccd0.c b/src/game/game_10ccd0.c index c4a481075..fab869e03 100644 --- a/src/game/game_10ccd0.c +++ b/src/game/game_10ccd0.c @@ -3863,21 +3863,21 @@ glabel func0f10feac /* f110324: 02802025 */ or $a0,$s4,$zero /* f110328: 24060005 */ addiu $a2,$zero,0x5 /* f11032c: 000560c2 */ srl $t4,$a1,0x3 -/* f110330: 0fc354be */ jal func0f0d52f8 +/* f110330: 0fc354be */ jal scenarioDefaultCallback44 /* f110334: 01802825 */ or $a1,$t4,$zero /* f110338: 02802025 */ or $a0,$s4,$zero /* f11033c: 8e450010 */ lw $a1,0x10($s2) -/* f110340: 0fc354be */ jal func0f0d52f8 +/* f110340: 0fc354be */ jal scenarioDefaultCallback44 /* f110344: 24060020 */ addiu $a2,$zero,0x20 /* f110348: 8e450008 */ lw $a1,0x8($s2) /* f11034c: 02802025 */ or $a0,$s4,$zero /* f110350: 24060002 */ addiu $a2,$zero,0x2 /* f110354: 30ad0007 */ andi $t5,$a1,0x7 -/* f110358: 0fc354be */ jal func0f0d52f8 +/* f110358: 0fc354be */ jal scenarioDefaultCallback44 /* f11035c: 01a02825 */ or $a1,$t5,$zero /* f110360: 02802025 */ or $a0,$s4,$zero /* f110364: 9245000c */ lbu $a1,0xc($s2) -/* f110368: 0fc354be */ jal func0f0d52f8 +/* f110368: 0fc354be */ jal scenarioDefaultCallback44 /* f11036c: 24060005 */ addiu $a2,$zero,0x5 /* f110370: 3c028006 */ lui $v0,0x8006 /* f110374: 9442ddc8 */ lhu $v0,-0x2238($v0) @@ -3892,7 +3892,7 @@ glabel func0f10feac .L0f110398: /* f110398: 000729c3 */ sra $a1,$a3,0x7 /* f11039c: 00057082 */ srl $t6,$a1,0x2 -/* f1103a0: 0fc354be */ jal func0f0d52f8 +/* f1103a0: 0fc354be */ jal scenarioDefaultCallback44 /* f1103a4: 01c02825 */ or $a1,$t6,$zero /* f1103a8: 0fc54bd4 */ jal optionsGetMusicVolume /* f1103ac: 00000000 */ sll $zero,$zero,0x0 @@ -3900,24 +3900,24 @@ glabel func0f10feac /* f1103b4: 00057882 */ srl $t7,$a1,0x2 /* f1103b8: 01e02825 */ or $a1,$t7,$zero /* f1103bc: 02802025 */ or $a0,$s4,$zero -/* f1103c0: 0fc354be */ jal func0f0d52f8 +/* f1103c0: 0fc354be */ jal scenarioDefaultCallback44 /* f1103c4: 24060006 */ addiu $a2,$zero,0x6 /* f1103c8: 3c058006 */ lui $a1,0x8006 /* f1103cc: 8ca5ddcc */ lw $a1,-0x2234($a1) /* f1103d0: 02802025 */ or $a0,$s4,$zero -/* f1103d4: 0fc354be */ jal func0f0d52f8 +/* f1103d4: 0fc354be */ jal scenarioDefaultCallback44 /* f1103d8: 24060002 */ addiu $a2,$zero,0x2 /* f1103dc: 0fc549c4 */ jal optionsGetControlMode /* f1103e0: 02602025 */ or $a0,$s3,$zero /* f1103e4: 02802025 */ or $a0,$s4,$zero /* f1103e8: 00402825 */ or $a1,$v0,$zero -/* f1103ec: 0fc354be */ jal func0f0d52f8 +/* f1103ec: 0fc354be */ jal scenarioDefaultCallback44 /* f1103f0: 24060003 */ addiu $a2,$zero,0x3 /* f1103f4: 0fc549c4 */ jal optionsGetControlMode /* f1103f8: 02202025 */ or $a0,$s1,$zero /* f1103fc: 02802025 */ or $a0,$s4,$zero /* f110400: 00402825 */ or $a1,$v0,$zero -/* f110404: 0fc354be */ jal func0f0d52f8 +/* f110404: 0fc354be */ jal scenarioDefaultCallback44 /* f110408: 24060003 */ addiu $a2,$zero,0x3 /* f11040c: 3c10800a */ lui $s0,0x800a /* f110410: 3c11800a */ lui $s1,0x800a @@ -3926,7 +3926,7 @@ glabel func0f10feac /* f11041c: 02802025 */ or $a0,$s4,$zero .L0f110420: /* f110420: 92050014 */ lbu $a1,0x14($s0) -/* f110424: 0fc354be */ jal func0f0d52f8 +/* f110424: 0fc354be */ jal scenarioDefaultCallback44 /* f110428: 24060008 */ addiu $a2,$zero,0x8 /* f11042c: 26100001 */ addiu $s0,$s0,0x1 /* f110430: 0211082b */ sltu $at,$s0,$s1 @@ -3934,7 +3934,7 @@ glabel func0f10feac /* f110438: 02802025 */ or $a0,$s4,$zero /* f11043c: 02802025 */ or $a0,$s4,$zero /* f110440: 9645001e */ lhu $a1,0x1e($s2) -/* f110444: 0fc354be */ jal func0f0d52f8 +/* f110444: 0fc354be */ jal scenarioDefaultCallback44 /* f110448: 24060010 */ addiu $a2,$zero,0x10 /* f11044c: 3c15800a */ lui $s5,0x800a /* f110450: 26b52200 */ addiu $s5,$s5,0x2200 @@ -3945,7 +3945,7 @@ glabel func0f10feac .L0f110460: /* f110460: 02802025 */ or $a0,$s4,$zero /* f110464: 96450020 */ lhu $a1,0x20($s2) -/* f110468: 0fc354be */ jal func0f0d52f8 +/* f110468: 0fc354be */ jal scenarioDefaultCallback44 /* f11046c: 2406000c */ addiu $a2,$zero,0xc /* f110470: 26310002 */ addiu $s1,$s1,0x2 /* f110474: 1633fffa */ bne $s1,$s3,.L0f110460 @@ -3966,7 +3966,7 @@ glabel func0f10feac /* f1104a8: 02002825 */ or $a1,$s0,$zero /* f1104ac: 02802025 */ or $a0,$s4,$zero /* f1104b0: 00402825 */ or $a1,$v0,$zero -/* f1104b4: 0fc354be */ jal func0f0d52f8 +/* f1104b4: 0fc354be */ jal scenarioDefaultCallback44 /* f1104b8: 24060001 */ addiu $a2,$zero,0x1 /* f1104bc: 26100001 */ addiu $s0,$s0,0x1 /* f1104c0: 5612fff8 */ bnel $s0,$s2,.L0f1104a4 @@ -3982,7 +3982,7 @@ glabel func0f10feac /* f1104e8: 02802025 */ or $a0,$s4,$zero .L0f1104ec: /* f1104ec: 8e0500a0 */ lw $a1,0xa0($s0) -/* f1104f0: 0fc354be */ jal func0f0d52f8 +/* f1104f0: 0fc354be */ jal scenarioDefaultCallback44 /* f1104f4: 24060015 */ addiu $a2,$zero,0x15 /* f1104f8: 26100004 */ addiu $s0,$s0,0x4 /* f1104fc: 0211082b */ sltu $at,$s0,$s1 @@ -4003,7 +4003,7 @@ glabel func0f10feac /* f110530: 24070008 */ addiu $a3,$zero,0x8 .L0f110534: /* f110534: 920500ac */ lbu $a1,0xac($s0) -/* f110538: 0fc354be */ jal func0f0d52f8 +/* f110538: 0fc354be */ jal scenarioDefaultCallback44 /* f11053c: 00e03025 */ or $a2,$a3,$zero /* f110540: 26100001 */ addiu $s0,$s0,0x1 /* f110544: 0212082b */ sltu $at,$s0,$s2 @@ -4016,7 +4016,7 @@ glabel func0f10feac /* f110560: 02802025 */ or $a0,$s4,$zero .L0f110564: /* f110564: 920500b5 */ lbu $a1,0xb5($s0) -/* f110568: 0fc354be */ jal func0f0d52f8 +/* f110568: 0fc354be */ jal scenarioDefaultCallback44 /* f11056c: 24060008 */ addiu $a2,$zero,0x8 /* f110570: 26100001 */ addiu $s0,$s0,0x1 /* f110574: 5611fffb */ bnel $s0,$s1,.L0f110564 @@ -4352,11 +4352,11 @@ glabel func0f1109c0 /* f110a08: 3c05800b */ lui $a1,0x800b /* f110a0c: 90a5cc11 */ lbu $a1,-0x33ef($a1) /* f110a10: 02402025 */ or $a0,$s2,$zero -/* f110a14: 0fc354be */ jal func0f0d52f8 +/* f110a14: 0fc354be */ jal scenarioDefaultCallback44 /* f110a18: 24060001 */ addiu $a2,$zero,0x1 /* f110a1c: 02402025 */ or $a0,$s2,$zero /* f110a20: 96050482 */ lhu $a1,0x482($s0) -/* f110a24: 0fc354be */ jal func0f0d52f8 +/* f110a24: 0fc354be */ jal scenarioDefaultCallback44 /* f110a28: 24060004 */ addiu $a2,$zero,0x4 /* f110a2c: 3c10800b */ lui $s0,%hi(var800acbb0) /* f110a30: 3c11800b */ lui $s1,%hi(var800acc10) @@ -4378,12 +4378,12 @@ glabel func0f1109c0 /* f110a6c: 00402825 */ or $a1,$v0,$zero /* f110a70: 02402025 */ or $a0,$s2,$zero /* f110a74: 240500ff */ addiu $a1,$zero,0xff -/* f110a78: 0fc354be */ jal func0f0d52f8 +/* f110a78: 0fc354be */ jal scenarioDefaultCallback44 /* f110a7c: 24060008 */ addiu $a2,$zero,0x8 /* f110a80: 10000003 */ beqz $zero,.L0f110a90 /* f110a84: 00000000 */ sll $zero,$zero,0x0 .L0f110a88: -/* f110a88: 0fc354be */ jal func0f0d52f8 +/* f110a88: 0fc354be */ jal scenarioDefaultCallback44 /* f110a8c: 24060008 */ addiu $a2,$zero,0x8 .L0f110a90: /* f110a90: 3c10800b */ lui $s0,%hi(var800acbb0) @@ -4393,7 +4393,7 @@ glabel func0f1109c0 /* f110aa0: 02402025 */ or $a0,$s2,$zero .L0f110aa4: /* f110aa4: 92050065 */ lbu $a1,0x65($s0) -/* f110aa8: 0fc354be */ jal func0f0d52f8 +/* f110aa8: 0fc354be */ jal scenarioDefaultCallback44 /* f110aac: 24060008 */ addiu $a2,$zero,0x8 /* f110ab0: 26100001 */ addiu $s0,$s0,0x1 /* f110ab4: 5611fffb */ bnel $s0,$s1,.L0f110aa4 @@ -4401,17 +4401,17 @@ glabel func0f1109c0 /* f110abc: 3c05800b */ lui $a1,0x800b /* f110ac0: 90a5cc12 */ lbu $a1,-0x33ee($a1) /* f110ac4: 02402025 */ or $a0,$s2,$zero -/* f110ac8: 0fc354be */ jal func0f0d52f8 +/* f110ac8: 0fc354be */ jal scenarioDefaultCallback44 /* f110acc: 24060001 */ addiu $a2,$zero,0x1 /* f110ad0: 3c05800a */ lui $a1,0x800a /* f110ad4: 90a5232b */ lbu $a1,0x232b($a1) /* f110ad8: 02402025 */ or $a0,$s2,$zero -/* f110adc: 0fc354be */ jal func0f0d52f8 +/* f110adc: 0fc354be */ jal scenarioDefaultCallback44 /* f110ae0: 24060001 */ addiu $a2,$zero,0x1 /* f110ae4: 3c05800a */ lui $a1,0x800a /* f110ae8: 90a5232c */ lbu $a1,0x232c($a1) /* f110aec: 02402025 */ or $a0,$s2,$zero -/* f110af0: 0fc354be */ jal func0f0d52f8 +/* f110af0: 0fc354be */ jal scenarioDefaultCallback44 /* f110af4: 24060001 */ addiu $a2,$zero,0x1 /* f110af8: 0fc35531 */ jal func0f0d54c4 /* f110afc: 02402025 */ or $a0,$s2,$zero diff --git a/src/game/game_176d70.c b/src/game/game_176d70.c index dfafeca55..9c6d53cfe 100644 --- a/src/game/game_176d70.c +++ b/src/game/game_176d70.c @@ -12128,7 +12128,7 @@ glabel scenarioHillCallback44 /* f181b4c: afbf0014 */ sw $ra,0x14($sp) /* f181b50: 3c05800a */ lui $a1,0x800a /* f181b54: 8ca5a444 */ lw $a1,-0x5bbc($a1) -/* f181b58: 0fc354be */ jal func0f0d52f8 +/* f181b58: 0fc354be */ jal scenarioDefaultCallback44 /* f181b5c: 24060008 */ addiu $a2,$zero,0x8 /* f181b60: 8fbf0014 */ lw $ra,0x14($sp) /* f181b64: 27bd0018 */ addiu $sp,$sp,0x18 @@ -16215,34 +16215,14 @@ glabel func0f1853d0 /* f185424: 00000000 */ sll $zero,$zero,0x0 ); -GLOBAL_ASM( -glabel func0f185428 -/* f185428: 3c0e800b */ lui $t6,0x800b -/* f18542c: 91cecb98 */ lbu $t6,-0x3468($t6) -/* f185430: 3c028008 */ lui $v0,0x8008 -/* f185434: 27bdffe8 */ addiu $sp,$sp,-24 -/* f185438: 000e78c0 */ sll $t7,$t6,0x3 -/* f18543c: 01ee7821 */ addu $t7,$t7,$t6 -/* f185440: 000f78c0 */ sll $t7,$t7,0x3 -/* f185444: 004f1021 */ addu $v0,$v0,$t7 -/* f185448: 8c426fdc */ lw $v0,0x6fdc($v0) -/* f18544c: afbf0014 */ sw $ra,0x14($sp) -/* f185450: 00002825 */ or $a1,$zero,$zero -/* f185454: 10400005 */ beqz $v0,.L0f18546c -/* f185458: 00000000 */ sll $zero,$zero,0x0 -/* f18545c: 0040f809 */ jalr $v0 -/* f185460: 00000000 */ sll $zero,$zero,0x0 -/* f185464: 10000004 */ beqz $zero,.L0f185478 -/* f185468: 8fbf0014 */ lw $ra,0x14($sp) -.L0f18546c: -/* f18546c: 0fc354be */ jal func0f0d52f8 -/* f185470: 24060008 */ addiu $a2,$zero,0x8 -/* f185474: 8fbf0014 */ lw $ra,0x14($sp) -.L0f185478: -/* f185478: 27bd0018 */ addiu $sp,$sp,0x18 -/* f18547c: 03e00008 */ jr $ra -/* f185480: 00000000 */ sll $zero,$zero,0x0 -); +void scenarioCallback44(s32 *arg0) +{ + if (g_MpScenarios[g_MpSetup.scenario].unk44) { + g_MpScenarios[g_MpSetup.scenario].unk44(arg0); + } else { + scenarioDefaultCallback44(arg0, 0, 8); + } +} void scenarioCallback04(void) { diff --git a/src/game/game_187770.c b/src/game/game_187770.c index f5055e70f..6b03c7859 100644 --- a/src/game/game_187770.c +++ b/src/game/game_187770.c @@ -7003,7 +7003,7 @@ glabel func0f18d238 /* f18d280: 24060008 */ addiu $a2,$zero,0x8 .L0f18d284: /* f18d284: 02402025 */ or $a0,$s2,$zero -/* f18d288: 0fc354be */ jal func0f0d52f8 +/* f18d288: 0fc354be */ jal scenarioDefaultCallback44 /* f18d28c: 92250097 */ lbu $a1,0x97($s1) /* f18d290: 2610fff8 */ addiu $s0,$s0,-8 /* f18d294: 1613fff7 */ bne $s0,$s3,.L0f18d274 @@ -7251,15 +7251,15 @@ glabel func0f18d5c4 /* f18d624: 3705ffff */ ori $a1,$t8,0xffff /* f18d628: ae050068 */ sw $a1,0x68($s0) .L0f18d62c: -/* f18d62c: 0fc354be */ jal func0f0d52f8 +/* f18d62c: 0fc354be */ jal scenarioDefaultCallback44 /* f18d630: 2406001c */ addiu $a2,$zero,0x1c /* f18d634: 02602025 */ or $a0,$s3,$zero /* f18d638: 9205000f */ lbu $a1,0xf($s0) -/* f18d63c: 0fc354be */ jal func0f0d52f8 +/* f18d63c: 0fc354be */ jal scenarioDefaultCallback44 /* f18d640: 24060007 */ addiu $a2,$zero,0x7 /* f18d644: 02602025 */ or $a0,$s3,$zero /* f18d648: 92050010 */ lbu $a1,0x10($s0) -/* f18d64c: 0fc354be */ jal func0f0d52f8 +/* f18d64c: 0fc354be */ jal scenarioDefaultCallback44 /* f18d650: 24060007 */ addiu $a2,$zero,0x7 /* f18d654: 0fc62ec7 */ jal func0f18bb1c /* f18d658: 00000000 */ sll $zero,$zero,0x0 @@ -7288,7 +7288,7 @@ glabel func0f18d5c4 /* f18d6b0: 02602025 */ or $a0,$s3,$zero .L0f18d6b4: /* f18d6b4: 8e050014 */ lw $a1,0x14($s0) -/* f18d6b8: 0fc354be */ jal func0f0d52f8 +/* f18d6b8: 0fc354be */ jal scenarioDefaultCallback44 /* f18d6bc: 24060008 */ addiu $a2,$zero,0x8 /* f18d6c0: 8e050054 */ lw $a1,0x54($s0) /* f18d6c4: 3c010010 */ lui $at,0x10 @@ -7299,7 +7299,7 @@ glabel func0f18d5c4 /* f18d6d8: 3525ffff */ ori $a1,$t1,0xffff /* f18d6dc: ae050054 */ sw $a1,0x54($s0) .L0f18d6e0: -/* f18d6e0: 0fc354be */ jal func0f0d52f8 +/* f18d6e0: 0fc354be */ jal scenarioDefaultCallback44 /* f18d6e4: 24060014 */ addiu $a2,$zero,0x14 /* f18d6e8: 8e050058 */ lw $a1,0x58($s0) /* f18d6ec: 3c010010 */ lui $at,0x10 @@ -7310,7 +7310,7 @@ glabel func0f18d5c4 /* f18d700: 3545ffff */ ori $a1,$t2,0xffff /* f18d704: ae050058 */ sw $a1,0x58($s0) .L0f18d708: -/* f18d708: 0fc354be */ jal func0f0d52f8 +/* f18d708: 0fc354be */ jal scenarioDefaultCallback44 /* f18d70c: 24060014 */ addiu $a2,$zero,0x14 /* f18d710: 8e05005c */ lw $a1,0x5c($s0) /* f18d714: 3c110008 */ lui $s1,0x8 @@ -7323,7 +7323,7 @@ glabel func0f18d5c4 /* f18d730: ae05005c */ sw $a1,0x5c($s0) .L0f18d734: /* f18d734: 3c120007 */ lui $s2,0x7 -/* f18d738: 0fc354be */ jal func0f0d52f8 +/* f18d738: 0fc354be */ jal scenarioDefaultCallback44 /* f18d73c: 3652ffff */ ori $s2,$s2,0xffff /* f18d740: 8e050060 */ lw $a1,0x60($s0) /* f18d744: 02602025 */ or $a0,$s3,$zero @@ -7333,7 +7333,7 @@ glabel func0f18d5c4 /* f18d754: ae120060 */ sw $s2,0x60($s0) /* f18d758: 02402825 */ or $a1,$s2,$zero .L0f18d75c: -/* f18d75c: 0fc354be */ jal func0f0d52f8 +/* f18d75c: 0fc354be */ jal scenarioDefaultCallback44 /* f18d760: 24060013 */ addiu $a2,$zero,0x13 /* f18d764: 8e050064 */ lw $a1,0x64($s0) /* f18d768: 02602025 */ or $a0,$s3,$zero @@ -7343,7 +7343,7 @@ glabel func0f18d5c4 /* f18d778: ae120064 */ sw $s2,0x64($s0) /* f18d77c: 02402825 */ or $a1,$s2,$zero .L0f18d780: -/* f18d780: 0fc354be */ jal func0f0d52f8 +/* f18d780: 0fc354be */ jal scenarioDefaultCallback44 /* f18d784: 24060013 */ addiu $a2,$zero,0x13 /* f18d788: 8e05006c */ lw $a1,0x6c($s0) /* f18d78c: 3c010200 */ lui $at,0x200 @@ -7354,7 +7354,7 @@ glabel func0f18d5c4 /* f18d7a0: 3565ffff */ ori $a1,$t3,0xffff /* f18d7a4: ae05006c */ sw $a1,0x6c($s0) .L0f18d7a8: -/* f18d7a8: 0fc354be */ jal func0f0d52f8 +/* f18d7a8: 0fc354be */ jal scenarioDefaultCallback44 /* f18d7ac: 24060019 */ addiu $a2,$zero,0x19 /* f18d7b0: 8e050070 */ lw $a1,0x70($s0) /* f18d7b4: 02602025 */ or $a0,$s3,$zero @@ -7364,7 +7364,7 @@ glabel func0f18d5c4 /* f18d7c4: 240503ff */ addiu $a1,$zero,0x3ff /* f18d7c8: ae050070 */ sw $a1,0x70($s0) .L0f18d7cc: -/* f18d7cc: 0fc354be */ jal func0f0d52f8 +/* f18d7cc: 0fc354be */ jal scenarioDefaultCallback44 /* f18d7d0: 2406000a */ addiu $a2,$zero,0xa /* f18d7d4: 8e050074 */ lw $a1,0x74($s0) /* f18d7d8: 3c110400 */ lui $s1,0x400 @@ -7375,7 +7375,7 @@ glabel func0f18d5c4 /* f18d7ec: 35a5ffff */ ori $a1,$t5,0xffff /* f18d7f0: ae050074 */ sw $a1,0x74($s0) .L0f18d7f4: -/* f18d7f4: 0fc354be */ jal func0f0d52f8 +/* f18d7f4: 0fc354be */ jal scenarioDefaultCallback44 /* f18d7f8: 2406001a */ addiu $a2,$zero,0x1a /* f18d7fc: 8e050078 */ lw $a1,0x78($s0) /* f18d800: 02602025 */ or $a0,$s3,$zero @@ -7385,7 +7385,7 @@ glabel func0f18d5c4 /* f18d810: 35c5ffff */ ori $a1,$t6,0xffff /* f18d814: ae050078 */ sw $a1,0x78($s0) .L0f18d818: -/* f18d818: 0fc354be */ jal func0f0d52f8 +/* f18d818: 0fc354be */ jal scenarioDefaultCallback44 /* f18d81c: 2406001a */ addiu $a2,$zero,0x1a /* f18d820: 8e05007c */ lw $a1,0x7c($s0) /* f18d824: 3c010010 */ lui $at,0x10 @@ -7396,7 +7396,7 @@ glabel func0f18d5c4 /* f18d838: 35e5ffff */ ori $a1,$t7,0xffff /* f18d83c: ae05007c */ sw $a1,0x7c($s0) .L0f18d840: -/* f18d840: 0fc354be */ jal func0f0d52f8 +/* f18d840: 0fc354be */ jal scenarioDefaultCallback44 /* f18d844: 24060014 */ addiu $a2,$zero,0x14 /* f18d848: 8e050080 */ lw $a1,0x80($s0) /* f18d84c: 3c014000 */ lui $at,0x4000 @@ -7407,7 +7407,7 @@ glabel func0f18d5c4 /* f18d860: 3705ffff */ ori $a1,$t8,0xffff /* f18d864: ae050080 */ sw $a1,0x80($s0) .L0f18d868: -/* f18d868: 0fc354be */ jal func0f0d52f8 +/* f18d868: 0fc354be */ jal scenarioDefaultCallback44 /* f18d86c: 2406001e */ addiu $a2,$zero,0x1e /* f18d870: 8e050084 */ lw $a1,0x84($s0) /* f18d874: 3c110004 */ lui $s1,0x4 @@ -7420,7 +7420,7 @@ glabel func0f18d5c4 /* f18d890: ae050084 */ sw $a1,0x84($s0) .L0f18d894: /* f18d894: 3c120003 */ lui $s2,0x3 -/* f18d898: 0fc354be */ jal func0f0d52f8 +/* f18d898: 0fc354be */ jal scenarioDefaultCallback44 /* f18d89c: 3652ffff */ ori $s2,$s2,0xffff /* f18d8a0: 8e050088 */ lw $a1,0x88($s0) /* f18d8a4: 02602025 */ or $a0,$s3,$zero @@ -7430,7 +7430,7 @@ glabel func0f18d5c4 /* f18d8b4: ae120088 */ sw $s2,0x88($s0) /* f18d8b8: 02402825 */ or $a1,$s2,$zero .L0f18d8bc: -/* f18d8bc: 0fc354be */ jal func0f0d52f8 +/* f18d8bc: 0fc354be */ jal scenarioDefaultCallback44 /* f18d8c0: 24060012 */ addiu $a2,$zero,0x12 /* f18d8c4: 8e05008c */ lw $a1,0x8c($s0) /* f18d8c8: 02602025 */ or $a0,$s3,$zero @@ -7440,7 +7440,7 @@ glabel func0f18d5c4 /* f18d8d8: ae12008c */ sw $s2,0x8c($s0) /* f18d8dc: 02402825 */ or $a1,$s2,$zero .L0f18d8e0: -/* f18d8e0: 0fc354be */ jal func0f0d52f8 +/* f18d8e0: 0fc354be */ jal scenarioDefaultCallback44 /* f18d8e4: 24060012 */ addiu $a2,$zero,0x12 /* f18d8e8: 8e050090 */ lw $a1,0x90($s0) /* f18d8ec: 3c010001 */ lui $at,0x1 @@ -7451,15 +7451,15 @@ glabel func0f18d5c4 /* f18d900: 3405ffff */ dli $a1,0xffff /* f18d904: ae050090 */ sw $a1,0x90($s0) .L0f18d908: -/* f18d908: 0fc354be */ jal func0f0d52f8 +/* f18d908: 0fc354be */ jal scenarioDefaultCallback44 /* f18d90c: 24060010 */ addiu $a2,$zero,0x10 /* f18d910: 02602025 */ or $a0,$s3,$zero /* f18d914: 92050044 */ lbu $a1,0x44($s0) -/* f18d918: 0fc354be */ jal func0f0d52f8 +/* f18d918: 0fc354be */ jal scenarioDefaultCallback44 /* f18d91c: 24060002 */ addiu $a2,$zero,0x2 /* f18d920: 02602025 */ or $a0,$s3,$zero /* f18d924: 96050048 */ lhu $a1,0x48($s0) -/* f18d928: 0fc354be */ jal func0f0d52f8 +/* f18d928: 0fc354be */ jal scenarioDefaultCallback44 /* f18d92c: 2406000c */ addiu $a2,$zero,0xc /* f18d930: 00008825 */ or $s1,$zero,$zero /* f18d934: 24120005 */ addiu $s2,$zero,0x5 @@ -7472,7 +7472,7 @@ glabel func0f18d5c4 /* f18d948: 02003025 */ or $a2,$s0,$zero /* f18d94c: 02602025 */ or $a0,$s3,$zero /* f18d950: 00402825 */ or $a1,$v0,$zero -/* f18d954: 0fc354be */ jal func0f0d52f8 +/* f18d954: 0fc354be */ jal scenarioDefaultCallback44 /* f18d958: 24060001 */ addiu $a2,$zero,0x1 /* f18d95c: 26100001 */ addiu $s0,$s0,0x1 /* f18d960: 5612fff7 */ bnel $s0,$s2,.L0f18d940 @@ -8093,21 +8093,21 @@ glabel func0f18e16c /* f18e1c8: 262e0004 */ addiu $t6,$s1,0x4 /* f18e1cc: 02402025 */ or $a0,$s2,$zero /* f18e1d0: 02002825 */ or $a1,$s0,$zero -/* f18e1d4: 0fc354be */ jal func0f0d52f8 +/* f18e1d4: 0fc354be */ jal scenarioDefaultCallback44 /* f18e1d8: 24060004 */ addiu $a2,$zero,0x4 /* f18e1dc: 02402025 */ or $a0,$s2,$zero /* f18e1e0: 92650011 */ lbu $a1,0x11($s3) -/* f18e1e4: 0fc354be */ jal func0f0d52f8 +/* f18e1e4: 0fc354be */ jal scenarioDefaultCallback44 /* f18e1e8: 24060007 */ addiu $a2,$zero,0x7 /* f18e1ec: 02402025 */ or $a0,$s2,$zero /* f18e1f0: 92650010 */ lbu $a1,0x10($s3) -/* f18e1f4: 0fc354be */ jal func0f0d52f8 +/* f18e1f4: 0fc354be */ jal scenarioDefaultCallback44 /* f18e1f8: 24060003 */ addiu $a2,$zero,0x3 -/* f18e1fc: 0fc6150a */ jal func0f185428 +/* f18e1fc: 0fc6150a */ jal scenarioCallback44 /* f18e200: 02402025 */ or $a0,$s2,$zero /* f18e204: 02402025 */ or $a0,$s2,$zero /* f18e208: 8e65000c */ lw $a1,0xc($s3) -/* f18e20c: 0fc354be */ jal func0f0d52f8 +/* f18e20c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e210: 24060015 */ addiu $a2,$zero,0x15 /* f18e214: 3c10800b */ lui $s0,%hi(g_MpSimulants) /* f18e218: 2610c538 */ addiu $s0,$s0,%lo(g_MpSimulants) @@ -8115,7 +8115,7 @@ glabel func0f18e16c .L0f18e220: /* f18e220: 02402025 */ or $a0,$s2,$zero /* f18e224: 92050047 */ lbu $a1,0x47($s0) -/* f18e228: 0fc354be */ jal func0f0d52f8 +/* f18e228: 0fc354be */ jal scenarioDefaultCallback44 /* f18e22c: 24060005 */ addiu $a2,$zero,0x5 /* f18e230: 96680016 */ lhu $t0,0x16($s3) /* f18e234: 26290004 */ addiu $t1,$s1,0x4 @@ -8126,18 +8126,18 @@ glabel func0f18e16c /* f18e248: 02402025 */ or $a0,$s2,$zero /* f18e24c: 02402025 */ or $a0,$s2,$zero /* f18e250: 92050048 */ lbu $a1,0x48($s0) -/* f18e254: 0fc354be */ jal func0f0d52f8 +/* f18e254: 0fc354be */ jal scenarioDefaultCallback44 /* f18e258: 24060003 */ addiu $a2,$zero,0x3 /* f18e25c: 10000005 */ beqz $zero,.L0f18e274 /* f18e260: 02402025 */ or $a0,$s2,$zero .L0f18e264: /* f18e264: 24050006 */ addiu $a1,$zero,0x6 -/* f18e268: 0fc354be */ jal func0f0d52f8 +/* f18e268: 0fc354be */ jal scenarioDefaultCallback44 /* f18e26c: 24060003 */ addiu $a2,$zero,0x3 /* f18e270: 02402025 */ or $a0,$s2,$zero .L0f18e274: /* f18e274: 9205000f */ lbu $a1,0xf($s0) -/* f18e278: 0fc354be */ jal func0f0d52f8 +/* f18e278: 0fc354be */ jal scenarioDefaultCallback44 /* f18e27c: 24060007 */ addiu $a2,$zero,0x7 /* f18e280: 92020010 */ lbu $v0,0x10($s0) /* f18e284: 240100ff */ addiu $at,$zero,0xff @@ -8161,11 +8161,11 @@ glabel func0f18e16c /* f18e2c4: 84a57730 */ lh $a1,0x7730($a1) .L0f18e2c8: /* f18e2c8: 02402025 */ or $a0,$s2,$zero -/* f18e2cc: 0fc354be */ jal func0f0d52f8 +/* f18e2cc: 0fc354be */ jal scenarioDefaultCallback44 /* f18e2d0: 24060007 */ addiu $a2,$zero,0x7 /* f18e2d4: 02402025 */ or $a0,$s2,$zero /* f18e2d8: 92050011 */ lbu $a1,0x11($s0) -/* f18e2dc: 0fc354be */ jal func0f0d52f8 +/* f18e2dc: 0fc354be */ jal scenarioDefaultCallback44 /* f18e2e0: 24060003 */ addiu $a2,$zero,0x3 /* f18e2e4: 26310001 */ addiu $s1,$s1,0x1 /* f18e2e8: 2a210008 */ slti $at,$s1,0x8 @@ -8178,7 +8178,7 @@ glabel func0f18e16c /* f18e304: 02402025 */ or $a0,$s2,$zero .L0f18e308: /* f18e308: 92050018 */ lbu $a1,0x18($s0) -/* f18e30c: 0fc354be */ jal func0f0d52f8 +/* f18e30c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e310: 24060007 */ addiu $a2,$zero,0x7 /* f18e314: 26100001 */ addiu $s0,$s0,0x1 /* f18e318: 0211082b */ sltu $at,$s0,$s1 @@ -8186,15 +8186,15 @@ glabel func0f18e16c /* f18e320: 02402025 */ or $a0,$s2,$zero /* f18e324: 02402025 */ or $a0,$s2,$zero /* f18e328: 92650012 */ lbu $a1,0x12($s3) -/* f18e32c: 0fc354be */ jal func0f0d52f8 +/* f18e32c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e330: 24060006 */ addiu $a2,$zero,0x6 /* f18e334: 02402025 */ or $a0,$s2,$zero /* f18e338: 92650013 */ lbu $a1,0x13($s3) -/* f18e33c: 0fc354be */ jal func0f0d52f8 +/* f18e33c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e340: 24060007 */ addiu $a2,$zero,0x7 /* f18e344: 02402025 */ or $a0,$s2,$zero /* f18e348: 96650014 */ lhu $a1,0x14($s3) -/* f18e34c: 0fc354be */ jal func0f0d52f8 +/* f18e34c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e350: 24060009 */ addiu $a2,$zero,0x9 /* f18e354: 3c10800b */ lui $s0,%hi(g_MpChrs) /* f18e358: 3c11800b */ lui $s1,%hi(var800aca38) @@ -8203,7 +8203,7 @@ glabel func0f18e16c /* f18e364: 02402025 */ or $a0,$s2,$zero .L0f18e368: /* f18e368: 92050011 */ lbu $a1,0x11($s0) -/* f18e36c: 0fc354be */ jal func0f0d52f8 +/* f18e36c: 0fc354be */ jal scenarioDefaultCallback44 /* f18e370: 24060003 */ addiu $a2,$zero,0x3 /* f18e374: 261000a0 */ addiu $s0,$s0,0xa0 /* f18e378: 5611fffb */ bnel $s0,$s1,.L0f18e368 diff --git a/src/include/game/game_0d4690.h b/src/include/game/game_0d4690.h index 6a31dbf84..755035a21 100644 --- a/src/include/game/game_0d4690.h +++ b/src/include/game/game_0d4690.h @@ -10,7 +10,7 @@ u32 func0f0d49c8(void); u32 func0f0d4a3c(void); u32 func0f0d4c80(void); u32 func0f0d4d0c(void); -u32 func0f0d52f8(void); +void scenarioDefaultCallback44(s32 *arg0, s32 arg1, s32 arg2); u32 func0f0d5360(void); u32 func0f0d53f8(void); u32 func0f0d545c(void); diff --git a/src/include/game/game_176d70.h b/src/include/game/game_176d70.h index a4a1697ec..93db755ee 100644 --- a/src/include/game/game_176d70.h +++ b/src/include/game/game_176d70.h @@ -108,7 +108,7 @@ u32 scenarioCaptureCallback30(void); u32 scenarioCaptureCallback34(void); u32 scenarioCaptureCallback38(void); u32 scenarioHillCallback40(void); -u32 scenarioHillCallback44(void); +void scenarioHillCallback44(s32 *arg0); void scenarioHillCallback04(void); void scenarioHillCallback0c(void); u32 scenarioHillCallback10(void); @@ -145,7 +145,7 @@ u32 scenarioPopacapCallback24(void); u32 func0f184fb0(void); u32 func0f18500c(void); u32 func0f1853d0(void); -u32 func0f185428(void); +void scenarioCallback44(s32 *arg0); void scenarioCallback04(void); s32 scenarioCallback08(void); void scenarioCallback0c(void); diff --git a/src/include/types.h b/src/include/types.h index 44446a815..f1c1ab8d1 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -4118,7 +4118,7 @@ struct mpscenario { void *unk38; void *unk3c; void *unk40; - void *unk44; + void (*unk44)(s32 *arg0); }; // Throwaway struct for passing two values to menu handlers