diff --git a/asm/non_matchings/code_80057C60/func_8005D6C0.s b/asm/non_matchings/code_80057C60/func_8005D6C0.s deleted file mode 100644 index 53dac6029..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D6C0.s +++ /dev/null @@ -1,58 +0,0 @@ -glabel func_8005D6C0 -/* 05E2C0 8005D6C0 00001025 */ move $v0, $zero -/* 05E2C4 8005D6C4 00801825 */ move $v1, $a0 -.L8005D6C8: -/* 05E2C8 8005D6C8 24420001 */ addiu $v0, $v0, 1 -/* 05E2CC 8005D6CC 2841000A */ slti $at, $v0, 0xa -/* 05E2D0 8005D6D0 24630048 */ addiu $v1, $v1, 0x48 -/* 05E2D4 8005D6D4 A460022C */ sh $zero, 0x22c($v1) -/* 05E2D8 8005D6D8 A460022E */ sh $zero, 0x22e($v1) -/* 05E2DC 8005D6DC 1420FFFA */ bnez $at, .L8005D6C8 -/* 05E2E0 8005D6E0 A4600222 */ sh $zero, 0x222($v1) -/* 05E2E4 8005D6E4 00001025 */ move $v0, $zero -/* 05E2E8 8005D6E8 00801825 */ move $v1, $a0 -.L8005D6EC: -/* 05E2EC 8005D6EC 24420001 */ addiu $v0, $v0, 1 -/* 05E2F0 8005D6F0 2841000A */ slti $at, $v0, 0xa -/* 05E2F4 8005D6F4 24630048 */ addiu $v1, $v1, 0x48 -/* 05E2F8 8005D6F8 A4600A9C */ sh $zero, 0xa9c($v1) -/* 05E2FC 8005D6FC A4600A9E */ sh $zero, 0xa9e($v1) -/* 05E300 8005D700 1420FFFA */ bnez $at, .L8005D6EC -/* 05E304 8005D704 A4600A92 */ sh $zero, 0xa92($v1) -/* 05E308 8005D708 00001025 */ move $v0, $zero -/* 05E30C 8005D70C 00801825 */ move $v1, $a0 -.L8005D710: -/* 05E310 8005D710 24420001 */ addiu $v0, $v0, 1 -/* 05E314 8005D714 2841000A */ slti $at, $v0, 0xa -/* 05E318 8005D718 24630048 */ addiu $v1, $v1, 0x48 -/* 05E31C 8005D71C A46004FC */ sh $zero, 0x4fc($v1) -/* 05E320 8005D720 A46004FE */ sh $zero, 0x4fe($v1) -/* 05E324 8005D724 1420FFFA */ bnez $at, .L8005D710 -/* 05E328 8005D728 A46004F2 */ sh $zero, 0x4f2($v1) -/* 05E32C 8005D72C A4800814 */ sh $zero, 0x814($a0) -/* 05E330 8005D730 A4800816 */ sh $zero, 0x816($a0) -/* 05E334 8005D734 A480080A */ sh $zero, 0x80a($a0) -/* 05E338 8005D738 A480085C */ sh $zero, 0x85c($a0) -/* 05E33C 8005D73C A480085E */ sh $zero, 0x85e($a0) -/* 05E340 8005D740 A4800852 */ sh $zero, 0x852($a0) -/* 05E344 8005D744 24830090 */ addiu $v1, $a0, 0x90 -/* 05E348 8005D748 2404000A */ li $a0, 10 -/* 05E34C 8005D74C 24020002 */ li $v0, 2 -.L8005D750: -/* 05E350 8005D750 24420004 */ addiu $v0, $v0, 4 -/* 05E354 8005D754 A460085C */ sh $zero, 0x85c($v1) -/* 05E358 8005D758 A460085E */ sh $zero, 0x85e($v1) -/* 05E35C 8005D75C A4600852 */ sh $zero, 0x852($v1) -/* 05E360 8005D760 A46008A4 */ sh $zero, 0x8a4($v1) -/* 05E364 8005D764 A46008A6 */ sh $zero, 0x8a6($v1) -/* 05E368 8005D768 A460089A */ sh $zero, 0x89a($v1) -/* 05E36C 8005D76C A46008EC */ sh $zero, 0x8ec($v1) -/* 05E370 8005D770 A46008EE */ sh $zero, 0x8ee($v1) -/* 05E374 8005D774 A46008E2 */ sh $zero, 0x8e2($v1) -/* 05E378 8005D778 24630120 */ addiu $v1, $v1, 0x120 -/* 05E37C 8005D77C A46006F4 */ sh $zero, 0x6f4($v1) -/* 05E380 8005D780 A46006F6 */ sh $zero, 0x6f6($v1) -/* 05E384 8005D784 1444FFF2 */ bne $v0, $a0, .L8005D750 -/* 05E388 8005D788 A46006EA */ sh $zero, 0x6ea($v1) -/* 05E38C 8005D78C 03E00008 */ jr $ra -/* 05E390 8005D790 00000000 */ nop diff --git a/asm/non_matchings/code_80057C60/func_8005D794.s b/asm/non_matchings/code_80057C60/func_8005D794.s deleted file mode 100644 index 4b969866f..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D794.s +++ /dev/null @@ -1,18 +0,0 @@ -glabel func_8005D794 -/* 05E394 8005D794 44866000 */ mtc1 $a2, $f12 -/* 05E398 8005D798 44877000 */ mtc1 $a3, $f14 -/* 05E39C 8005D79C C7A40010 */ lwc1 $f4, 0x10($sp) -/* 05E3A0 8005D7A0 E4AC0000 */ swc1 $f12, ($a1) -/* 05E3A4 8005D7A4 E4AE0004 */ swc1 $f14, 4($a1) -/* 05E3A8 8005D7A8 E4A40008 */ swc1 $f4, 8($a1) -/* 05E3AC 8005D7AC 848E002E */ lh $t6, 0x2e($a0) -/* 05E3B0 8005D7B0 000E7823 */ negu $t7, $t6 -/* 05E3B4 8005D7B4 A4AF0020 */ sh $t7, 0x20($a1) -/* 05E3B8 8005D7B8 83B80017 */ lb $t8, 0x17($sp) -/* 05E3BC 8005D7BC 44983000 */ mtc1 $t8, $f6 -/* 05E3C0 8005D7C0 00000000 */ nop -/* 05E3C4 8005D7C4 46803220 */ cvt.s.w $f8, $f6 -/* 05E3C8 8005D7C8 E4A80014 */ swc1 $f8, 0x14($a1) -/* 05E3CC 8005D7CC 83B9001B */ lb $t9, 0x1b($sp) -/* 05E3D0 8005D7D0 03E00008 */ jr $ra -/* 05E3D4 8005D7D4 A4B90010 */ sh $t9, 0x10($a1) diff --git a/asm/non_matchings/code_80057C60/func_8005D7D8.s b/asm/non_matchings/code_80057C60/func_8005D7D8.s deleted file mode 100644 index 3394b6c53..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D7D8.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_8005D7D8 -/* 05E3D8 8005D7D8 AFA50004 */ sw $a1, 4($sp) -/* 05E3DC 8005D7DC 44866000 */ mtc1 $a2, $f12 -/* 05E3E0 8005D7E0 00057600 */ sll $t6, $a1, 0x18 -/* 05E3E4 8005D7E4 000E7E03 */ sra $t7, $t6, 0x18 -/* 05E3E8 8005D7E8 24180001 */ li $t8, 1 -/* 05E3EC 8005D7EC A498001C */ sh $t8, 0x1c($a0) -/* 05E3F0 8005D7F0 A48F0012 */ sh $t7, 0x12($a0) -/* 05E3F4 8005D7F4 A480001E */ sh $zero, 0x1e($a0) -/* 05E3F8 8005D7F8 03E00008 */ jr $ra -/* 05E3FC 8005D7FC E48C000C */ swc1 $f12, 0xc($a0) diff --git a/asm/non_matchings/code_80057C60/func_8005D800.s b/asm/non_matchings/code_80057C60/func_8005D800.s deleted file mode 100644 index a18a1448b..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D800.s +++ /dev/null @@ -1,12 +0,0 @@ -glabel func_8005D800 -/* 05E400 8005D800 AFA60008 */ sw $a2, 8($sp) -/* 05E404 8005D804 0005C403 */ sra $t8, $a1, 0x10 -/* 05E408 8005D808 00054203 */ sra $t0, $a1, 8 -/* 05E40C 8005D80C 331900FF */ andi $t9, $t8, 0xff -/* 05E410 8005D810 310900FF */ andi $t1, $t0, 0xff -/* 05E414 8005D814 30AA00FF */ andi $t2, $a1, 0xff -/* 05E418 8005D818 A4990038 */ sh $t9, 0x38($a0) -/* 05E41C 8005D81C A489003A */ sh $t1, 0x3a($a0) -/* 05E420 8005D820 A48A003C */ sh $t2, 0x3c($a0) -/* 05E424 8005D824 03E00008 */ jr $ra -/* 05E428 8005D828 A486003E */ sh $a2, 0x3e($a0) diff --git a/asm/non_matchings/code_80057C60/func_8005D82C.s b/asm/non_matchings/code_80057C60/func_8005D82C.s deleted file mode 100644 index e3c14ef93..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D82C.s +++ /dev/null @@ -1,28 +0,0 @@ -glabel func_8005D82C -/* 05E42C 8005D82C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 05E430 8005D830 AFBF0014 */ sw $ra, 0x14($sp) -/* 05E434 8005D834 00803825 */ move $a3, $a0 -/* 05E438 8005D838 AFA60020 */ sw $a2, 0x20($sp) -/* 05E43C 8005D83C AFA70018 */ sw $a3, 0x18($sp) -/* 05E440 8005D840 24040030 */ li $a0, 48 -/* 05E444 8005D844 0C0ADF8D */ jal random_int -/* 05E448 8005D848 AFA5001C */ sw $a1, 0x1c($sp) -/* 05E44C 8005D84C 8FAC001C */ lw $t4, 0x1c($sp) -/* 05E450 8005D850 8FA70018 */ lw $a3, 0x18($sp) -/* 05E454 8005D854 000C7C03 */ sra $t7, $t4, 0x10 -/* 05E458 8005D858 000C4A03 */ sra $t1, $t4, 8 -/* 05E45C 8005D85C 01E2C023 */ subu $t8, $t7, $v0 -/* 05E460 8005D860 01225023 */ subu $t2, $t1, $v0 -/* 05E464 8005D864 01826823 */ subu $t5, $t4, $v0 -/* 05E468 8005D868 331900FF */ andi $t9, $t8, 0xff -/* 05E46C 8005D86C 314B00FF */ andi $t3, $t2, 0xff -/* 05E470 8005D870 31AE00FF */ andi $t6, $t5, 0xff -/* 05E474 8005D874 A4F90038 */ sh $t9, 0x38($a3) -/* 05E478 8005D878 A4EB003A */ sh $t3, 0x3a($a3) -/* 05E47C 8005D87C A4EE003C */ sh $t6, 0x3c($a3) -/* 05E480 8005D880 87AF0022 */ lh $t7, 0x22($sp) -/* 05E484 8005D884 A4EF003E */ sh $t7, 0x3e($a3) -/* 05E488 8005D888 8FBF0014 */ lw $ra, 0x14($sp) -/* 05E48C 8005D88C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 05E490 8005D890 03E00008 */ jr $ra -/* 05E494 8005D894 00000000 */ nop diff --git a/asm/non_matchings/code_80057C60/func_8005D898.s b/asm/non_matchings/code_80057C60/func_8005D898.s deleted file mode 100644 index cbae3ab69..000000000 --- a/asm/non_matchings/code_80057C60/func_8005D898.s +++ /dev/null @@ -1,111 +0,0 @@ -glabel func_8005D898 -/* 05E498 8005D898 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 05E49C 8005D89C AFBF0034 */ sw $ra, 0x34($sp) -/* 05E4A0 8005D8A0 AFB20030 */ sw $s2, 0x30($sp) -/* 05E4A4 8005D8A4 AFB1002C */ sw $s1, 0x2c($sp) -/* 05E4A8 8005D8A8 AFB00028 */ sw $s0, 0x28($sp) -/* 05E4AC 8005D8AC AFA5003C */ sw $a1, 0x3c($sp) -/* 05E4B0 8005D8B0 AFA60040 */ sw $a2, 0x40($sp) -/* 05E4B4 8005D8B4 AFA70044 */ sw $a3, 0x44($sp) -/* 05E4B8 8005D8B8 848E00C0 */ lh $t6, 0xc0($a0) -/* 05E4BC 8005D8BC 87A9003E */ lh $t1, 0x3e($sp) -/* 05E4C0 8005D8C0 00808025 */ move $s0, $a0 -/* 05E4C4 8005D8C4 05C00017 */ bltz $t6, .L8005D924 -/* 05E4C8 8005D8C8 000950C0 */ sll $t2, $t1, 3 -/* 05E4CC 8005D8CC 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05E4D0 8005D8D0 44813000 */ mtc1 $at, $f6 -/* 05E4D4 8005D8D4 87AF003E */ lh $t7, 0x3e($sp) -/* 05E4D8 8005D8D8 C60401D8 */ lwc1 $f4, 0x1d8($s0) -/* 05E4DC 8005D8DC C60A01D0 */ lwc1 $f10, 0x1d0($s0) -/* 05E4E0 8005D8E0 000FC0C0 */ sll $t8, $t7, 3 -/* 05E4E4 8005D8E4 46062200 */ add.s $f8, $f4, $f6 -/* 05E4E8 8005D8E8 8E0601C8 */ lw $a2, 0x1c8($s0) -/* 05E4EC 8005D8EC 030FC021 */ addu $t8, $t8, $t7 -/* 05E4F0 8005D8F0 0018C0C0 */ sll $t8, $t8, 3 -/* 05E4F4 8005D8F4 E7AA0010 */ swc1 $f10, 0x10($sp) -/* 05E4F8 8005D8F8 921901D4 */ lbu $t9, 0x1d4($s0) -/* 05E4FC 8005D8FC 02189021 */ addu $s2, $s0, $t8 -/* 05E500 8005D900 26510528 */ addiu $s1, $s2, 0x528 -/* 05E504 8005D904 44074000 */ mfc1 $a3, $f8 -/* 05E508 8005D908 24080001 */ li $t0, 1 -/* 05E50C 8005D90C AFA80018 */ sw $t0, 0x18($sp) -/* 05E510 8005D910 02202825 */ move $a1, $s1 -/* 05E514 8005D914 0C0175E5 */ jal func_8005D794 -/* 05E518 8005D918 AFB90014 */ sw $t9, 0x14($sp) -/* 05E51C 8005D91C 10000014 */ b .L8005D970 -/* 05E520 8005D920 860200C0 */ lh $v0, 0xc0($s0) -.L8005D924: -/* 05E524 8005D924 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 05E528 8005D928 44819000 */ mtc1 $at, $f18 -/* 05E52C 8005D92C C61001F0 */ lwc1 $f16, 0x1f0($s0) -/* 05E530 8005D930 C60601E8 */ lwc1 $f6, 0x1e8($s0) -/* 05E534 8005D934 01495021 */ addu $t2, $t2, $t1 -/* 05E538 8005D938 46128100 */ add.s $f4, $f16, $f18 -/* 05E53C 8005D93C 8E0601E0 */ lw $a2, 0x1e0($s0) -/* 05E540 8005D940 000A50C0 */ sll $t2, $t2, 3 -/* 05E544 8005D944 E7A60010 */ swc1 $f6, 0x10($sp) -/* 05E548 8005D948 920B01EC */ lbu $t3, 0x1ec($s0) -/* 05E54C 8005D94C 020A9021 */ addu $s2, $s0, $t2 -/* 05E550 8005D950 26510528 */ addiu $s1, $s2, 0x528 -/* 05E554 8005D954 44072000 */ mfc1 $a3, $f4 -/* 05E558 8005D958 02202825 */ move $a1, $s1 -/* 05E55C 8005D95C AFA00018 */ sw $zero, 0x18($sp) -/* 05E560 8005D960 02002025 */ move $a0, $s0 -/* 05E564 8005D964 0C0175E5 */ jal func_8005D794 -/* 05E568 8005D968 AFAB0014 */ sw $t3, 0x14($sp) -/* 05E56C 8005D96C 860200C0 */ lh $v0, 0xc0($s0) -.L8005D970: -/* 05E570 8005D970 240100B6 */ li $at, 182 -/* 05E574 8005D974 02202025 */ move $a0, $s1 -/* 05E578 8005D978 0041001A */ div $zero, $v0, $at -/* 05E57C 8005D97C 00006012 */ mflo $t4 -/* 05E580 8005D980 29810007 */ slti $at, $t4, 7 -/* 05E584 8005D984 10200003 */ beqz $at, .L8005D994 -/* 05E588 8005D988 24050001 */ li $a1, 1 -/* 05E58C 8005D98C 2981FFFA */ slti $at, $t4, -6 -/* 05E590 8005D990 10200021 */ beqz $at, .L8005DA18 -.L8005D994: -/* 05E594 8005D994 3C063EB3 */ lui $a2, (0x3EB33333 >> 16) # lui $a2, 0x3eb3 -/* 05E598 8005D998 0C0175F6 */ jal func_8005D7D8 -/* 05E59C 8005D99C 34C63333 */ ori $a2, (0x3EB33333 & 0xFFFF) # ori $a2, $a2, 0x3333 -/* 05E5A0 8005D9A0 8602022A */ lh $v0, 0x22a($s0) -/* 05E5A4 8005D9A4 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 05E5A8 8005D9A8 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 05E5AC 8005D9AC 14400004 */ bnez $v0, .L8005D9C0 -/* 05E5B0 8005D9B0 02202025 */ move $a0, $s1 -/* 05E5B4 8005D9B4 0C017600 */ jal func_8005D800 -/* 05E5B8 8005D9B8 24060070 */ li $a2, 112 -/* 05E5BC 8005D9BC 8602022A */ lh $v0, 0x22a($s0) -.L8005D9C0: -/* 05E5C0 8005D9C0 24010001 */ li $at, 1 -/* 05E5C4 8005D9C4 14410006 */ bne $v0, $at, .L8005D9E0 -/* 05E5C8 8005D9C8 02202025 */ move $a0, $s1 -/* 05E5CC 8005D9CC 3C0500FF */ lui $a1, (0x00FFFF00 >> 16) # lui $a1, 0xff -/* 05E5D0 8005D9D0 34A5FF00 */ ori $a1, (0x00FFFF00 & 0xFFFF) # ori $a1, $a1, 0xff00 -/* 05E5D4 8005D9D4 0C017600 */ jal func_8005D800 -/* 05E5D8 8005D9D8 24060070 */ li $a2, 112 -/* 05E5DC 8005D9DC 8602022A */ lh $v0, 0x22a($s0) -.L8005D9E0: -/* 05E5E0 8005D9E0 28410002 */ slti $at, $v0, 2 -/* 05E5E4 8005D9E4 14200006 */ bnez $at, .L8005DA00 -/* 05E5E8 8005D9E8 02202025 */ move $a0, $s1 -/* 05E5EC 8005D9EC 3C0500FF */ lui $a1, (0x00FF9600 >> 16) # lui $a1, 0xff -/* 05E5F0 8005D9F0 34A59600 */ ori $a1, (0x00FF9600 & 0xFFFF) # ori $a1, $a1, 0x9600 -/* 05E5F4 8005D9F4 0C017600 */ jal func_8005D800 -/* 05E5F8 8005D9F8 24060070 */ li $a2, 112 -/* 05E5FC 8005D9FC 8602022A */ lh $v0, 0x22a($s0) -.L8005DA00: -/* 05E600 8005DA00 28410002 */ slti $at, $v0, 2 -/* 05E604 8005DA04 14200003 */ bnez $at, .L8005DA14 -/* 05E608 8005DA08 240D0002 */ li $t5, 2 -/* 05E60C 8005DA0C 10000002 */ b .L8005DA18 -/* 05E610 8005DA10 A64D0568 */ sh $t5, 0x568($s2) -.L8005DA14: -/* 05E614 8005DA14 A6420568 */ sh $v0, 0x568($s2) -.L8005DA18: -/* 05E618 8005DA18 8FBF0034 */ lw $ra, 0x34($sp) -/* 05E61C 8005DA1C 8FB00028 */ lw $s0, 0x28($sp) -/* 05E620 8005DA20 8FB1002C */ lw $s1, 0x2c($sp) -/* 05E624 8005DA24 8FB20030 */ lw $s2, 0x30($sp) -/* 05E628 8005DA28 03E00008 */ jr $ra -/* 05E62C 8005DA2C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/code_80057C60/func_8005DAD8.s b/asm/non_matchings/code_80057C60/func_8005DAD8.s deleted file mode 100644 index db46438f4..000000000 --- a/asm/non_matchings/code_80057C60/func_8005DAD8.s +++ /dev/null @@ -1,8 +0,0 @@ -glabel func_8005DAD8 -/* 05E6D8 8005DAD8 AFA50004 */ sw $a1, 4($sp) -/* 05E6DC 8005DADC AFA60008 */ sw $a2, 8($sp) -/* 05E6E0 8005DAE0 AFA7000C */ sw $a3, 0xc($sp) -/* 05E6E4 8005DAE4 A4850038 */ sh $a1, 0x38($a0) -/* 05E6E8 8005DAE8 A487003E */ sh $a3, 0x3e($a0) -/* 05E6EC 8005DAEC 03E00008 */ jr $ra -/* 05E6F0 8005DAF0 A4860040 */ sh $a2, 0x40($a0) diff --git a/asm/non_matchings/code_80057C60/func_80060F50.s b/asm/non_matchings/code_80057C60/func_80060F50.s deleted file mode 100644 index c13aa90dc..000000000 --- a/asm/non_matchings/code_80057C60/func_80060F50.s +++ /dev/null @@ -1,85 +0,0 @@ -glabel func_80060F50 -/* 061B50 80060F50 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 061B54 80060F54 AFA5003C */ sw $a1, 0x3c($sp) -/* 061B58 80060F58 87AE003E */ lh $t6, 0x3e($sp) -/* 061B5C 80060F5C 44800000 */ mtc1 $zero, $f0 -/* 061B60 80060F60 AFB20030 */ sw $s2, 0x30($sp) -/* 061B64 80060F64 000E78C0 */ sll $t7, $t6, 3 -/* 061B68 80060F68 01EE7821 */ addu $t7, $t7, $t6 -/* 061B6C 80060F6C 00809025 */ move $s2, $a0 -/* 061B70 80060F70 AFB00028 */ sw $s0, 0x28($sp) -/* 061B74 80060F74 000F78C0 */ sll $t7, $t7, 3 -/* 061B78 80060F78 AFB1002C */ sw $s1, 0x2c($sp) -/* 061B7C 80060F7C AFA60040 */ sw $a2, 0x40($sp) -/* 061B80 80060F80 AFA70044 */ sw $a3, 0x44($sp) -/* 061B84 80060F84 024F8021 */ addu $s0, $s2, $t7 -/* 061B88 80060F88 AFBF0034 */ sw $ra, 0x34($sp) -/* 061B8C 80060F8C 26110258 */ addiu $s1, $s0, 0x258 -/* 061B90 80060F90 44070000 */ mfc1 $a3, $f0 -/* 061B94 80060F94 44060000 */ mfc1 $a2, $f0 -/* 061B98 80060F98 02202825 */ move $a1, $s1 -/* 061B9C 80060F9C AFA00014 */ sw $zero, 0x14($sp) -/* 061BA0 80060FA0 AFA00018 */ sw $zero, 0x18($sp) -/* 061BA4 80060FA4 0C0175E5 */ jal func_8005D794 -/* 061BA8 80060FA8 E7A00010 */ swc1 $f0, 0x10($sp) -/* 061BAC 80060FAC 02202025 */ move $a0, $s1 -/* 061BB0 80060FB0 24050005 */ li $a1, 5 -/* 061BB4 80060FB4 0C0175F6 */ jal func_8005D7D8 -/* 061BB8 80060FB8 3C064080 */ lui $a2, 0x4080 -/* 061BBC 80060FBC 3C02800E */ lui $v0, %hi(gCurrentCourseId) # $v0, 0x800e -/* 061BC0 80060FC0 8442C5A0 */ lh $v0, %lo(gCurrentCourseId)($v0) -/* 061BC4 80060FC4 24010002 */ li $at, 2 -/* 061BC8 80060FC8 02202025 */ move $a0, $s1 -/* 061BCC 80060FCC 10410004 */ beq $v0, $at, .L80060FE0 -/* 061BD0 80060FD0 3C0500FF */ lui $a1, 0xff -/* 061BD4 80060FD4 24010013 */ li $at, 19 -/* 061BD8 80060FD8 14410005 */ bne $v0, $at, .L80060FF0 -/* 061BDC 80060FDC 240600FF */ li $a2, 255 -.L80060FE0: -/* 061BE0 80060FE0 0C017600 */ jal func_8005D800 -/* 061BE4 80060FE4 240600FF */ li $a2, 255 -/* 061BE8 80060FE8 10000005 */ b .L80061000 -/* 061BEC 80060FEC 00000000 */ nop -.L80060FF0: -/* 061BF0 80060FF0 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 061BF4 80060FF4 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 061BF8 80060FF8 0C017600 */ jal func_8005D800 -/* 061BFC 80060FFC 02202025 */ move $a0, $s1 -.L80061000: -/* 061C00 80061000 0C0AE00E */ jal coss -/* 061C04 80061004 96040278 */ lhu $a0, 0x278($s0) -/* 061C08 80061008 3C01800F */ lui $at, %hi(D_800EE5A8) -/* 061C0C 8006100C D426E5A8 */ ldc1 $f6, %lo(D_800EE5A8)($at) -/* 061C10 80061010 46000121 */ cvt.d.s $f4, $f0 -/* 061C14 80061014 C64A001C */ lwc1 $f10, 0x1c($s2) -/* 061C18 80061018 46262202 */ mul.d $f8, $f4, $f6 -/* 061C1C 8006101C 96040278 */ lhu $a0, 0x278($s0) -/* 061C20 80061020 46005421 */ cvt.d.s $f16, $f10 -/* 061C24 80061024 46304480 */ add.d $f18, $f8, $f16 -/* 061C28 80061028 46209120 */ cvt.s.d $f4, $f18 -/* 061C2C 8006102C 0C0AE006 */ jal sins -/* 061C30 80061030 E6040260 */ swc1 $f4, 0x260($s0) -/* 061C34 80061034 3C01800F */ lui $at, %hi(D_800EE5B0) -/* 061C38 80061038 D42AE5B0 */ ldc1 $f10, %lo(D_800EE5B0)($at) -/* 061C3C 8006103C 460001A1 */ cvt.d.s $f6, $f0 -/* 061C40 80061040 C6500014 */ lwc1 $f16, 0x14($s2) -/* 061C44 80061044 462A3202 */ mul.d $f8, $f6, $f10 -/* 061C48 80061048 3C018016 */ lui $at, %hi(D_801652A0) -/* 061C4C 8006104C 460084A1 */ cvt.d.s $f18, $f16 -/* 061C50 80061050 46324100 */ add.d $f4, $f8, $f18 -/* 061C54 80061054 462021A0 */ cvt.s.d $f6, $f4 -/* 061C58 80061058 E6060258 */ swc1 $f6, 0x258($s0) -/* 061C5C 8006105C 83B80047 */ lb $t8, 0x47($sp) -/* 061C60 80061060 0018C880 */ sll $t9, $t8, 2 -/* 061C64 80061064 00390821 */ addu $at, $at, $t9 -/* 061C68 80061068 C42A52A0 */ lwc1 $f10, %lo(D_801652A0)($at) -/* 061C6C 8006106C E60A025C */ swc1 $f10, 0x25c($s0) -/* 061C70 80061070 964800DE */ lhu $t0, 0xde($s2) -/* 061C74 80061074 3109FFF7 */ andi $t1, $t0, 0xfff7 -/* 061C78 80061078 A64900DE */ sh $t1, 0xde($s2) -/* 061C7C 8006107C 8FBF0034 */ lw $ra, 0x34($sp) -/* 061C80 80061080 8FB20030 */ lw $s2, 0x30($sp) -/* 061C84 80061084 8FB1002C */ lw $s1, 0x2c($sp) -/* 061C88 80061088 8FB00028 */ lw $s0, 0x28($sp) -/* 061C8C 8006108C 03E00008 */ jr $ra -/* 061C90 80061090 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/code_80057C60/func_80061094.s b/asm/non_matchings/code_80057C60/func_80061094.s deleted file mode 100644 index 794f55473..000000000 --- a/asm/non_matchings/code_80057C60/func_80061094.s +++ /dev/null @@ -1,41 +0,0 @@ -glabel func_80061094 -/* 061C94 80061094 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 061C98 80061098 AFA50034 */ sw $a1, 0x34($sp) -/* 061C9C 8006109C 87AE0036 */ lh $t6, 0x36($sp) -/* 061CA0 800610A0 AFBF0024 */ sw $ra, 0x24($sp) -/* 061CA4 800610A4 AFA60038 */ sw $a2, 0x38($sp) -/* 061CA8 800610A8 15C0001D */ bnez $t6, .L80061120 -/* 061CAC 800610AC AFA7003C */ sw $a3, 0x3c($sp) -/* 061CB0 800610B0 44800000 */ mtc1 $zero, $f0 -/* 061CB4 800610B4 000E78C0 */ sll $t7, $t6, 3 -/* 061CB8 800610B8 01EE7821 */ addu $t7, $t7, $t6 -/* 061CBC 800610BC 000F78C0 */ sll $t7, $t7, 3 -/* 061CC0 800610C0 008F1021 */ addu $v0, $a0, $t7 -/* 061CC4 800610C4 24450258 */ addiu $a1, $v0, 0x258 -/* 061CC8 800610C8 44060000 */ mfc1 $a2, $f0 -/* 061CCC 800610CC 44070000 */ mfc1 $a3, $f0 -/* 061CD0 800610D0 AFA50028 */ sw $a1, 0x28($sp) -/* 061CD4 800610D4 AFA2002C */ sw $v0, 0x2c($sp) -/* 061CD8 800610D8 AFA00014 */ sw $zero, 0x14($sp) -/* 061CDC 800610DC AFA00018 */ sw $zero, 0x18($sp) -/* 061CE0 800610E0 0C0175E5 */ jal func_8005D794 -/* 061CE4 800610E4 E7A00010 */ swc1 $f0, 0x10($sp) -/* 061CE8 800610E8 3C064073 */ lui $a2, (0x40733333 >> 16) # lui $a2, 0x4073 -/* 061CEC 800610EC 34C63333 */ ori $a2, (0x40733333 & 0xFFFF) # ori $a2, $a2, 0x3333 -/* 061CF0 800610F0 8FA40028 */ lw $a0, 0x28($sp) -/* 061CF4 800610F4 0C0175F6 */ jal func_8005D7D8 -/* 061CF8 800610F8 24050006 */ li $a1, 6 -/* 061CFC 800610FC 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 061D00 80061100 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 061D04 80061104 8FA40028 */ lw $a0, 0x28($sp) -/* 061D08 80061108 0C017600 */ jal func_8005D800 -/* 061D0C 8006110C 240600FF */ li $a2, 255 -/* 061D10 80061110 8FA2002C */ lw $v0, 0x2c($sp) -/* 061D14 80061114 A4400290 */ sh $zero, 0x290($v0) -/* 061D18 80061118 A4400292 */ sh $zero, 0x292($v0) -/* 061D1C 8006111C A4400294 */ sh $zero, 0x294($v0) -.L80061120: -/* 061D20 80061120 8FBF0024 */ lw $ra, 0x24($sp) -/* 061D24 80061124 27BD0030 */ addiu $sp, $sp, 0x30 -/* 061D28 80061128 03E00008 */ jr $ra -/* 061D2C 8006112C 00000000 */ nop diff --git a/asm/non_matchings/code_80057C60/func_80061130.s b/asm/non_matchings/code_80057C60/func_80061130.s deleted file mode 100644 index 3bdb6a165..000000000 --- a/asm/non_matchings/code_80057C60/func_80061130.s +++ /dev/null @@ -1,62 +0,0 @@ -glabel func_80061130 -/* 061D30 80061130 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 061D34 80061134 AFA5003C */ sw $a1, 0x3c($sp) -/* 061D38 80061138 87AE003E */ lh $t6, 0x3e($sp) -/* 061D3C 8006113C 44800000 */ mtc1 $zero, $f0 -/* 061D40 80061140 AFB10028 */ sw $s1, 0x28($sp) -/* 061D44 80061144 000E78C0 */ sll $t7, $t6, 3 -/* 061D48 80061148 01EE7821 */ addu $t7, $t7, $t6 -/* 061D4C 8006114C 00808825 */ move $s1, $a0 -/* 061D50 80061150 AFB00024 */ sw $s0, 0x24($sp) -/* 061D54 80061154 000F78C0 */ sll $t7, $t7, 3 -/* 061D58 80061158 AFA60040 */ sw $a2, 0x40($sp) -/* 061D5C 8006115C AFA70044 */ sw $a3, 0x44($sp) -/* 061D60 80061160 022F8021 */ addu $s0, $s1, $t7 -/* 061D64 80061164 AFBF002C */ sw $ra, 0x2c($sp) -/* 061D68 80061168 26050258 */ addiu $a1, $s0, 0x258 -/* 061D6C 8006116C 44070000 */ mfc1 $a3, $f0 -/* 061D70 80061170 44060000 */ mfc1 $a2, $f0 -/* 061D74 80061174 AFA50030 */ sw $a1, 0x30($sp) -/* 061D78 80061178 AFA00014 */ sw $zero, 0x14($sp) -/* 061D7C 8006117C AFA00018 */ sw $zero, 0x18($sp) -/* 061D80 80061180 0C0175E5 */ jal func_8005D794 -/* 061D84 80061184 E7A00010 */ swc1 $f0, 0x10($sp) -/* 061D88 80061188 3C063F19 */ lui $a2, (0x3F19999A >> 16) # lui $a2, 0x3f19 -/* 061D8C 8006118C 34C6999A */ ori $a2, (0x3F19999A & 0xFFFF) # ori $a2, $a2, 0x999a -/* 061D90 80061190 8FA40030 */ lw $a0, 0x30($sp) -/* 061D94 80061194 0C0175F6 */ jal func_8005D7D8 -/* 061D98 80061198 24050007 */ li $a1, 7 -/* 061D9C 8006119C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 061DA0 800611A0 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 061DA4 800611A4 8FA40030 */ lw $a0, 0x30($sp) -/* 061DA8 800611A8 0C017600 */ jal func_8005D800 -/* 061DAC 800611AC 240600D0 */ li $a2, 208 -/* 061DB0 800611B0 0C0AE00E */ jal coss -/* 061DB4 800611B4 96040278 */ lhu $a0, 0x278($s0) -/* 061DB8 800611B8 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 061DBC 800611BC 44812000 */ mtc1 $at, $f4 -/* 061DC0 800611C0 C628001C */ lwc1 $f8, 0x1c($s1) -/* 061DC4 800611C4 96040278 */ lhu $a0, 0x278($s0) -/* 061DC8 800611C8 46040182 */ mul.s $f6, $f0, $f4 -/* 061DCC 800611CC 46083280 */ add.s $f10, $f6, $f8 -/* 061DD0 800611D0 0C0AE006 */ jal sins -/* 061DD4 800611D4 E60A0260 */ swc1 $f10, 0x260($s0) -/* 061DD8 800611D8 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 061DDC 800611DC 44818000 */ mtc1 $at, $f16 -/* 061DE0 800611E0 C6240014 */ lwc1 $f4, 0x14($s1) -/* 061DE4 800611E4 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 061DE8 800611E8 46100482 */ mul.s $f18, $f0, $f16 -/* 061DEC 800611EC 44815000 */ mtc1 $at, $f10 -/* 061DF0 800611F0 46049180 */ add.s $f6, $f18, $f4 -/* 061DF4 800611F4 44809000 */ mtc1 $zero, $f18 -/* 061DF8 800611F8 E6060258 */ swc1 $f6, 0x258($s0) -/* 061DFC 800611FC C6280018 */ lwc1 $f8, 0x18($s1) -/* 061E00 80061200 A6000298 */ sh $zero, 0x298($s0) -/* 061E04 80061204 E612027C */ swc1 $f18, 0x27c($s0) -/* 061E08 80061208 460A4401 */ sub.s $f16, $f8, $f10 -/* 061E0C 8006120C E610025C */ swc1 $f16, 0x25c($s0) -/* 061E10 80061210 8FBF002C */ lw $ra, 0x2c($sp) -/* 061E14 80061214 8FB10028 */ lw $s1, 0x28($sp) -/* 061E18 80061218 8FB00024 */ lw $s0, 0x24($sp) -/* 061E1C 8006121C 03E00008 */ jr $ra -/* 061E20 80061220 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/code_80057C60/func_800621BC.s b/asm/non_matchings/code_80057C60/func_800621BC.s deleted file mode 100644 index dfa584175..000000000 --- a/asm/non_matchings/code_80057C60/func_800621BC.s +++ /dev/null @@ -1,190 +0,0 @@ -glabel func_800621BC -/* 062DBC 800621BC 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 062DC0 800621C0 AFB10028 */ sw $s1, 0x28($sp) -/* 062DC4 800621C4 00808825 */ move $s1, $a0 -/* 062DC8 800621C8 AFBF002C */ sw $ra, 0x2c($sp) -/* 062DCC 800621CC AFB00024 */ sw $s0, 0x24($sp) -/* 062DD0 800621D0 240800FF */ li $t0, 255 -/* 062DD4 800621D4 00C08025 */ move $s0, $a2 -/* 062DD8 800621D8 AFA50054 */ sw $a1, 0x54($sp) -/* 062DDC 800621DC AFA7005C */ sw $a3, 0x5c($sp) -/* 062DE0 800621E0 AFA80048 */ sw $t0, 0x48($sp) -/* 062DE4 800621E4 0C0ADF8D */ jal random_int -/* 062DE8 800621E8 24040008 */ li $a0, 8 -/* 062DEC 800621EC 30430001 */ andi $v1, $v0, 1 -/* 062DF0 800621F0 24010001 */ li $at, 1 -/* 062DF4 800621F4 8FA80048 */ lw $t0, 0x48($sp) -/* 062DF8 800621F8 14610006 */ bne $v1, $at, .L80062214 -/* 062DFC 800621FC 87AA0056 */ lh $t2, 0x56($sp) -/* 062E00 80062200 C6220018 */ lwc1 $f2, 0x18($s1) -/* 062E04 80062204 24090001 */ li $t1, 1 -/* 062E08 80062208 00004025 */ move $t0, $zero -/* 062E0C 8006220C AFA90044 */ sw $t1, 0x44($sp) -/* 062E10 80062210 E7A2003C */ swc1 $f2, 0x3c($sp) -.L80062214: -/* 062E14 80062214 8FA90044 */ lw $t1, 0x44($sp) -/* 062E18 80062218 14600004 */ bnez $v1, .L8006222C -/* 062E1C 8006221C C7A2003C */ lwc1 $f2, 0x3c($sp) -/* 062E20 80062220 00004825 */ move $t1, $zero -/* 062E24 80062224 00004025 */ move $t0, $zero -/* 062E28 80062228 C6220018 */ lwc1 $f2, 0x18($s1) -.L8006222C: -/* 062E2C 8006222C 55000091 */ bnel $t0, $zero, .L80062474 -/* 062E30 80062230 8FBF002C */ lw $ra, 0x2c($sp) -/* 062E34 80062234 15400049 */ bnez $t2, .L8006235C -/* 062E38 80062238 24030048 */ li $v1, 72 -/* 062E3C 8006223C 02030019 */ multu $s0, $v1 -/* 062E40 80062240 00007012 */ mflo $t6 -/* 062E44 80062244 022E1021 */ addu $v0, $s1, $t6 -/* 062E48 80062248 844F0AE6 */ lh $t7, 0xae6($v0) -/* 062E4C 8006224C 1DE00004 */ bgtz $t7, .L80062260 -/* 062E50 80062250 00000000 */ nop -/* 062E54 80062254 84580AE4 */ lh $t8, 0xae4($v0) -/* 062E58 80062258 57000041 */ bnel $t8, $zero, .L80062360 -/* 062E5C 8006225C 24030048 */ li $v1, 72 -.L80062260: -/* 062E60 80062260 01430019 */ multu $t2, $v1 -/* 062E64 80062264 44800000 */ mtc1 $zero, $f0 -/* 062E68 80062268 44071000 */ mfc1 $a3, $f2 -/* 062E6C 8006226C 02202025 */ move $a0, $s1 -/* 062E70 80062270 44060000 */ mfc1 $a2, $f0 -/* 062E74 80062274 AFA80014 */ sw $t0, 0x14($sp) -/* 062E78 80062278 AFA90018 */ sw $t1, 0x18($sp) -/* 062E7C 8006227C E7A00010 */ swc1 $f0, 0x10($sp) -/* 062E80 80062280 0000C812 */ mflo $t9 -/* 062E84 80062284 02398021 */ addu $s0, $s1, $t9 -/* 062E88 80062288 26050AC8 */ addiu $a1, $s0, 0xac8 -/* 062E8C 8006228C 0C0175E5 */ jal func_8005D794 -/* 062E90 80062290 AFA50030 */ sw $a1, 0x30($sp) -/* 062E94 80062294 8FA40030 */ lw $a0, 0x30($sp) -/* 062E98 80062298 24050008 */ li $a1, 8 -/* 062E9C 8006229C 0C0175F6 */ jal func_8005D7D8 -/* 062EA0 800622A0 3C063F80 */ lui $a2, 0x3f80 -/* 062EA4 800622A4 3C0500FF */ lui $a1, (0x00FFFF20 >> 16) # lui $a1, 0xff -/* 062EA8 800622A8 34A5FF20 */ ori $a1, (0x00FFFF20 & 0xFFFF) # ori $a1, $a1, 0xff20 -/* 062EAC 800622AC 8FA40030 */ lw $a0, 0x30($sp) -/* 062EB0 800622B0 0C017600 */ jal func_8005D800 -/* 062EB4 800622B4 240600FF */ li $a2, 255 -/* 062EB8 800622B8 960B0AD8 */ lhu $t3, 0xad8($s0) -/* 062EBC 800622BC 24010001 */ li $at, 1 -/* 062EC0 800622C0 A6000AE8 */ sh $zero, 0xae8($s0) -/* 062EC4 800622C4 55610006 */ bnel $t3, $at, .L800622E0 -/* 062EC8 800622C8 860E0AE8 */ lh $t6, 0xae8($s0) -/* 062ECC 800622CC 860C0AE8 */ lh $t4, 0xae8($s0) -/* 062ED0 800622D0 258D0888 */ addiu $t5, $t4, 0x888 -/* 062ED4 800622D4 10000004 */ b .L800622E8 -/* 062ED8 800622D8 A60D0AE8 */ sh $t5, 0xae8($s0) -/* 062EDC 800622DC 860E0AE8 */ lh $t6, 0xae8($s0) -.L800622E0: -/* 062EE0 800622E0 25CFF778 */ addiu $t7, $t6, -0x888 -/* 062EE4 800622E4 A60F0AE8 */ sh $t7, 0xae8($s0) -.L800622E8: -/* 062EE8 800622E8 86180AE8 */ lh $t8, 0xae8($s0) -/* 062EEC 800622EC 8639002E */ lh $t9, 0x2e($s1) -/* 062EF0 800622F0 862C00C0 */ lh $t4, 0xc0($s1) -/* 062EF4 800622F4 03195823 */ subu $t3, $t8, $t9 -/* 062EF8 800622F8 016C2023 */ subu $a0, $t3, $t4 -/* 062EFC 800622FC 308DFFFF */ andi $t5, $a0, 0xffff -/* 062F00 80062300 0C0AE00E */ jal coss -/* 062F04 80062304 01A02025 */ move $a0, $t5 -/* 062F08 80062308 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 062F0C 8006230C 44812000 */ mtc1 $at, $f4 -/* 062F10 80062310 C628001C */ lwc1 $f8, 0x1c($s1) -/* 062F14 80062314 860E0AE8 */ lh $t6, 0xae8($s0) -/* 062F18 80062318 46040182 */ mul.s $f6, $f0, $f4 -/* 062F1C 8006231C 46083280 */ add.s $f10, $f6, $f8 -/* 062F20 80062320 E60A0AD0 */ swc1 $f10, 0xad0($s0) -/* 062F24 80062324 862F002E */ lh $t7, 0x2e($s1) -/* 062F28 80062328 863900C0 */ lh $t9, 0xc0($s1) -/* 062F2C 8006232C 01CFC023 */ subu $t8, $t6, $t7 -/* 062F30 80062330 03192023 */ subu $a0, $t8, $t9 -/* 062F34 80062334 308BFFFF */ andi $t3, $a0, 0xffff -/* 062F38 80062338 0C0AE006 */ jal sins -/* 062F3C 8006233C 01602025 */ move $a0, $t3 -/* 062F40 80062340 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 062F44 80062344 44818000 */ mtc1 $at, $f16 -/* 062F48 80062348 C6240014 */ lwc1 $f4, 0x14($s1) -/* 062F4C 8006234C 46100482 */ mul.s $f18, $f0, $f16 -/* 062F50 80062350 46049180 */ add.s $f6, $f18, $f4 -/* 062F54 80062354 10000046 */ b .L80062470 -/* 062F58 80062358 E6060AC8 */ swc1 $f6, 0xac8($s0) -.L8006235C: -/* 062F5C 8006235C 24030048 */ li $v1, 72 -.L80062360: -/* 062F60 80062360 02030019 */ multu $s0, $v1 -/* 062F64 80062364 00006012 */ mflo $t4 -/* 062F68 80062368 022C6821 */ addu $t5, $s1, $t4 -/* 062F6C 8006236C 85AE0AE6 */ lh $t6, 0xae6($t5) -/* 062F70 80062370 59C00040 */ blezl $t6, .L80062474 -/* 062F74 80062374 8FBF002C */ lw $ra, 0x2c($sp) -/* 062F78 80062378 01430019 */ multu $t2, $v1 -/* 062F7C 8006237C 44800000 */ mtc1 $zero, $f0 -/* 062F80 80062380 44071000 */ mfc1 $a3, $f2 -/* 062F84 80062384 02202025 */ move $a0, $s1 -/* 062F88 80062388 44060000 */ mfc1 $a2, $f0 -/* 062F8C 8006238C AFA80014 */ sw $t0, 0x14($sp) -/* 062F90 80062390 AFA90018 */ sw $t1, 0x18($sp) -/* 062F94 80062394 E7A00010 */ swc1 $f0, 0x10($sp) -/* 062F98 80062398 00007812 */ mflo $t7 -/* 062F9C 8006239C 022F8021 */ addu $s0, $s1, $t7 -/* 062FA0 800623A0 26050AC8 */ addiu $a1, $s0, 0xac8 -/* 062FA4 800623A4 0C0175E5 */ jal func_8005D794 -/* 062FA8 800623A8 AFA50030 */ sw $a1, 0x30($sp) -/* 062FAC 800623AC 8FA40030 */ lw $a0, 0x30($sp) -/* 062FB0 800623B0 24050008 */ li $a1, 8 -/* 062FB4 800623B4 0C0175F6 */ jal func_8005D7D8 -/* 062FB8 800623B8 3C063F80 */ lui $a2, 0x3f80 -/* 062FBC 800623BC 3C0500FF */ lui $a1, (0x00FFFF20 >> 16) # lui $a1, 0xff -/* 062FC0 800623C0 34A5FF20 */ ori $a1, (0x00FFFF20 & 0xFFFF) # ori $a1, $a1, 0xff20 -/* 062FC4 800623C4 8FA40030 */ lw $a0, 0x30($sp) -/* 062FC8 800623C8 0C017600 */ jal func_8005D800 -/* 062FCC 800623CC 240600FF */ li $a2, 255 -/* 062FD0 800623D0 96180AD8 */ lhu $t8, 0xad8($s0) -/* 062FD4 800623D4 24010001 */ li $at, 1 -/* 062FD8 800623D8 A6000AE8 */ sh $zero, 0xae8($s0) -/* 062FDC 800623DC 57010006 */ bnel $t8, $at, .L800623F8 -/* 062FE0 800623E0 860C0AE8 */ lh $t4, 0xae8($s0) -/* 062FE4 800623E4 86190AE8 */ lh $t9, 0xae8($s0) -/* 062FE8 800623E8 272B0888 */ addiu $t3, $t9, 0x888 -/* 062FEC 800623EC 10000004 */ b .L80062400 -/* 062FF0 800623F0 A60B0AE8 */ sh $t3, 0xae8($s0) -/* 062FF4 800623F4 860C0AE8 */ lh $t4, 0xae8($s0) -.L800623F8: -/* 062FF8 800623F8 258DF778 */ addiu $t5, $t4, -0x888 -/* 062FFC 800623FC A60D0AE8 */ sh $t5, 0xae8($s0) -.L80062400: -/* 063000 80062400 860E0AE8 */ lh $t6, 0xae8($s0) -/* 063004 80062404 862F002E */ lh $t7, 0x2e($s1) -/* 063008 80062408 863900C0 */ lh $t9, 0xc0($s1) -/* 06300C 8006240C 01CFC023 */ subu $t8, $t6, $t7 -/* 063010 80062410 03192023 */ subu $a0, $t8, $t9 -/* 063014 80062414 308BFFFF */ andi $t3, $a0, 0xffff -/* 063018 80062418 0C0AE00E */ jal coss -/* 06301C 8006241C 01602025 */ move $a0, $t3 -/* 063020 80062420 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 063024 80062424 44814000 */ mtc1 $at, $f8 -/* 063028 80062428 C630001C */ lwc1 $f16, 0x1c($s1) -/* 06302C 8006242C 860C0AE8 */ lh $t4, 0xae8($s0) -/* 063030 80062430 46080282 */ mul.s $f10, $f0, $f8 -/* 063034 80062434 46105480 */ add.s $f18, $f10, $f16 -/* 063038 80062438 E6120AD0 */ swc1 $f18, 0xad0($s0) -/* 06303C 8006243C 862D002E */ lh $t5, 0x2e($s1) -/* 063040 80062440 862F00C0 */ lh $t7, 0xc0($s1) -/* 063044 80062444 018D7023 */ subu $t6, $t4, $t5 -/* 063048 80062448 01CF2023 */ subu $a0, $t6, $t7 -/* 06304C 8006244C 3098FFFF */ andi $t8, $a0, 0xffff -/* 063050 80062450 0C0AE006 */ jal sins -/* 063054 80062454 03002025 */ move $a0, $t8 -/* 063058 80062458 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 06305C 8006245C 44812000 */ mtc1 $at, $f4 -/* 063060 80062460 C6280014 */ lwc1 $f8, 0x14($s1) -/* 063064 80062464 46040182 */ mul.s $f6, $f0, $f4 -/* 063068 80062468 46083280 */ add.s $f10, $f6, $f8 -/* 06306C 8006246C E60A0AC8 */ swc1 $f10, 0xac8($s0) -.L80062470: -/* 063070 80062470 8FBF002C */ lw $ra, 0x2c($sp) -.L80062474: -/* 063074 80062474 8FB00024 */ lw $s0, 0x24($sp) -/* 063078 80062478 8FB10028 */ lw $s1, 0x28($sp) -/* 06307C 8006247C 03E00008 */ jr $ra -/* 063080 80062480 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/non_matchings/code_80057C60/func_80062484.s b/asm/non_matchings/code_80057C60/func_80062484.s deleted file mode 100644 index 05c9ebc15..000000000 --- a/asm/non_matchings/code_80057C60/func_80062484.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_80062484 -/* 063084 80062484 240E0001 */ li $t6, 1 -/* 063088 80062488 A4AE001C */ sh $t6, 0x1c($a1) -/* 06308C 8006248C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 063090 80062490 44813000 */ mtc1 $at, $f6 -/* 063094 80062494 C4840074 */ lwc1 $f4, 0x74($a0) -/* 063098 80062498 24011998 */ li $at, 6552 -/* 06309C 8006249C 00C10019 */ multu $a2, $at -/* 0630A0 800624A0 46062200 */ add.s $f8, $f4, $f6 -/* 0630A4 800624A4 24080004 */ li $t0, 4 -/* 0630A8 800624A8 E4A80004 */ swc1 $f8, 4($a1) -/* 0630AC 800624AC C48A001C */ lwc1 $f10, 0x1c($a0) -/* 0630B0 800624B0 E4AA0008 */ swc1 $f10, 8($a1) -/* 0630B4 800624B4 C4900014 */ lwc1 $f16, 0x14($a0) -/* 0630B8 800624B8 00007812 */ mflo $t7 -/* 0630BC 800624BC E4B00000 */ swc1 $f16, ($a1) -/* 0630C0 800624C0 8498002E */ lh $t8, 0x2e($a0) -/* 0630C4 800624C4 A4A80012 */ sh $t0, 0x12($a1) -/* 0630C8 800624C8 A4A0001E */ sh $zero, 0x1e($a1) -/* 0630CC 800624CC 01F8C823 */ subu $t9, $t7, $t8 -/* 0630D0 800624D0 03E00008 */ jr $ra -/* 0630D4 800624D4 A4B90020 */ sh $t9, 0x20($a1) diff --git a/asm/non_matchings/code_80057C60/func_800628C0.s b/asm/non_matchings/code_80057C60/func_800628C0.s deleted file mode 100644 index 5f907aa02..000000000 --- a/asm/non_matchings/code_80057C60/func_800628C0.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_800628C0 -/* 0634C0 800628C0 00077600 */ sll $t6, $a3, 0x18 -/* 0634C4 800628C4 000E7E03 */ sra $t7, $t6, 0x18 -/* 0634C8 800628C8 000FC0C0 */ sll $t8, $t7, 3 -/* 0634CC 800628CC 030FC021 */ addu $t8, $t8, $t7 -/* 0634D0 800628D0 0018C0C0 */ sll $t8, $t8, 3 -/* 0634D4 800628D4 AFA50004 */ sw $a1, 4($sp) -/* 0634D8 800628D8 AFA60008 */ sw $a2, 8($sp) -/* 0634DC 800628DC AFA7000C */ sw $a3, 0xc($sp) -/* 0634E0 800628E0 00981021 */ addu $v0, $a0, $t8 -/* 0634E4 800628E4 24190001 */ li $t9, 1 -/* 0634E8 800628E8 A4590814 */ sh $t9, 0x814($v0) -/* 0634EC 800628EC 8488002E */ lh $t0, 0x2e($a0) -/* 0634F0 800628F0 240A0002 */ li $t2, 2 -/* 0634F4 800628F4 A44A080A */ sh $t2, 0x80a($v0) -/* 0634F8 800628F8 00084823 */ negu $t1, $t0 -/* 0634FC 800628FC A4490818 */ sh $t1, 0x818($v0) -/* 063500 80062900 A4400816 */ sh $zero, 0x816($v0) -/* 063504 80062904 3C01800F */ lui $at, %hi(D_800EE5FC) # $at, 0x800f -/* 063508 80062908 C424E5FC */ lwc1 $f4, %lo(D_800EE5FC)($at) -/* 06350C 8006290C 03E00008 */ jr $ra -/* 063510 80062910 E4440804 */ swc1 $f4, 0x804($v0) diff --git a/asm/non_matchings/code_80057C60/func_80062914.s b/asm/non_matchings/code_80057C60/func_80062914.s deleted file mode 100644 index 8d1a01db1..000000000 --- a/asm/non_matchings/code_80057C60/func_80062914.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_80062914 -/* 063514 80062914 00077600 */ sll $t6, $a3, 0x18 -/* 063518 80062918 000E7E03 */ sra $t7, $t6, 0x18 -/* 06351C 8006291C 000FC0C0 */ sll $t8, $t7, 3 -/* 063520 80062920 030FC021 */ addu $t8, $t8, $t7 -/* 063524 80062924 0018C0C0 */ sll $t8, $t8, 3 -/* 063528 80062928 AFA50004 */ sw $a1, 4($sp) -/* 06352C 8006292C AFA60008 */ sw $a2, 8($sp) -/* 063530 80062930 AFA7000C */ sw $a3, 0xc($sp) -/* 063534 80062934 00981021 */ addu $v0, $a0, $t8 -/* 063538 80062938 24190001 */ li $t9, 1 -/* 06353C 8006293C A4590814 */ sh $t9, 0x814($v0) -/* 063540 80062940 8488002E */ lh $t0, 0x2e($a0) -/* 063544 80062944 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 063548 80062948 44812000 */ mtc1 $at, $f4 -/* 06354C 8006294C 240A0004 */ li $t2, 4 -/* 063550 80062950 00084823 */ negu $t1, $t0 -/* 063554 80062954 A4490818 */ sh $t1, 0x818($v0) -/* 063558 80062958 A44A080A */ sh $t2, 0x80a($v0) -/* 06355C 8006295C A4400816 */ sh $zero, 0x816($v0) -/* 063560 80062960 03E00008 */ jr $ra -/* 063564 80062964 E4440804 */ swc1 $f4, 0x804($v0) diff --git a/asm/non_matchings/code_80057C60/func_80062968.s b/asm/non_matchings/code_80057C60/func_80062968.s deleted file mode 100644 index 492db6ce6..000000000 --- a/asm/non_matchings/code_80057C60/func_80062968.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_80062968 -/* 063568 80062968 00077600 */ sll $t6, $a3, 0x18 -/* 06356C 8006296C 000E7E03 */ sra $t7, $t6, 0x18 -/* 063570 80062970 000FC0C0 */ sll $t8, $t7, 3 -/* 063574 80062974 030FC021 */ addu $t8, $t8, $t7 -/* 063578 80062978 0018C0C0 */ sll $t8, $t8, 3 -/* 06357C 8006297C AFA50004 */ sw $a1, 4($sp) -/* 063580 80062980 AFA60008 */ sw $a2, 8($sp) -/* 063584 80062984 AFA7000C */ sw $a3, 0xc($sp) -/* 063588 80062988 00981021 */ addu $v0, $a0, $t8 -/* 06358C 8006298C 24190001 */ li $t9, 1 -/* 063590 80062990 A4590814 */ sh $t9, 0x814($v0) -/* 063594 80062994 8488002E */ lh $t0, 0x2e($a0) -/* 063598 80062998 240A0005 */ li $t2, 5 -/* 06359C 8006299C A44A080A */ sh $t2, 0x80a($v0) -/* 0635A0 800629A0 00084823 */ negu $t1, $t0 -/* 0635A4 800629A4 A4490818 */ sh $t1, 0x818($v0) -/* 0635A8 800629A8 A4400816 */ sh $zero, 0x816($v0) -/* 0635AC 800629AC 3C01800F */ lui $at, %hi(D_800EE600) # $at, 0x800f -/* 0635B0 800629B0 C424E600 */ lwc1 $f4, %lo(D_800EE600)($at) -/* 0635B4 800629B4 03E00008 */ jr $ra -/* 0635B8 800629B8 E4440804 */ swc1 $f4, 0x804($v0) diff --git a/asm/non_matchings/code_80057C60/func_800629BC.s b/asm/non_matchings/code_80057C60/func_800629BC.s deleted file mode 100644 index f9079e2ff..000000000 --- a/asm/non_matchings/code_80057C60/func_800629BC.s +++ /dev/null @@ -1,24 +0,0 @@ -glabel func_800629BC -/* 0635BC 800629BC 00077600 */ sll $t6, $a3, 0x18 -/* 0635C0 800629C0 000E7E03 */ sra $t7, $t6, 0x18 -/* 0635C4 800629C4 000FC0C0 */ sll $t8, $t7, 3 -/* 0635C8 800629C8 AFA50004 */ sw $a1, 4($sp) -/* 0635CC 800629CC 030FC021 */ addu $t8, $t8, $t7 -/* 0635D0 800629D0 AFA60008 */ sw $a2, 8($sp) -/* 0635D4 800629D4 AFA7000C */ sw $a3, 0xc($sp) -/* 0635D8 800629D8 44809000 */ mtc1 $zero, $f18 -/* 0635DC 800629DC 0018C0C0 */ sll $t8, $t8, 3 -/* 0635E0 800629E0 00981021 */ addu $v0, $a0, $t8 -/* 0635E4 800629E4 24190001 */ li $t9, 1 -/* 0635E8 800629E8 A4590814 */ sh $t9, 0x814($v0) -/* 0635EC 800629EC 8488002E */ lh $t0, 0x2e($a0) -/* 0635F0 800629F0 240A0006 */ li $t2, 6 -/* 0635F4 800629F4 A44A080A */ sh $t2, 0x80a($v0) -/* 0635F8 800629F8 00084823 */ negu $t1, $t0 -/* 0635FC 800629FC A4490818 */ sh $t1, 0x818($v0) -/* 063600 80062A00 A4400816 */ sh $zero, 0x816($v0) -/* 063604 80062A04 3C01800F */ lui $at, %hi(D_800EE604) # $at, 0x800f -/* 063608 80062A08 C430E604 */ lwc1 $f16, %lo(D_800EE604)($at) -/* 06360C 80062A0C E45207FC */ swc1 $f18, 0x7fc($v0) -/* 063610 80062A10 03E00008 */ jr $ra -/* 063614 80062A14 E4500804 */ swc1 $f16, 0x804($v0) diff --git a/asm/non_matchings/code_80057C60/func_80062A18.s b/asm/non_matchings/code_80057C60/func_80062A18.s deleted file mode 100644 index 91b8d12de..000000000 --- a/asm/non_matchings/code_80057C60/func_80062A18.s +++ /dev/null @@ -1,37 +0,0 @@ -glabel func_80062A18 -/* 063618 80062A18 0007C600 */ sll $t8, $a3, 0x18 -/* 06361C 80062A1C 0018CE03 */ sra $t9, $t8, 0x18 -/* 063620 80062A20 24030048 */ li $v1, 72 -/* 063624 80062A24 03230019 */ multu $t9, $v1 -/* 063628 80062A28 00057600 */ sll $t6, $a1, 0x18 -/* 06362C 80062A2C 000E7E03 */ sra $t7, $t6, 0x18 -/* 063630 80062A30 AFA60008 */ sw $a2, 8($sp) -/* 063634 80062A34 AFA50004 */ sw $a1, 4($sp) -/* 063638 80062A38 AFA7000C */ sw $a3, 0xc($sp) -/* 06363C 80062A3C 24060001 */ li $a2, 1 -/* 063640 80062A40 24090003 */ li $t1, 3 -/* 063644 80062A44 3C01800F */ lui $at, %hi(D_800EE608) # $at, 0x800f -/* 063648 80062A48 00004012 */ mflo $t0 -/* 06364C 80062A4C 00881021 */ addu $v0, $a0, $t0 -/* 063650 80062A50 A4460814 */ sh $a2, 0x814($v0) -/* 063654 80062A54 01E30019 */ multu $t7, $v1 -/* 063658 80062A58 A449080A */ sh $t1, 0x80a($v0) -/* 06365C 80062A5C C424E608 */ lwc1 $f4, %lo(D_800EE608)($at) -/* 063660 80062A60 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 063664 80062A64 44818000 */ mtc1 $at, $f16 -/* 063668 80062A68 00005012 */ mflo $t2 -/* 06366C 80062A6C 008A5821 */ addu $t3, $a0, $t2 -/* 063670 80062A70 E5640804 */ swc1 $f4, 0x804($t3) -/* 063674 80062A74 A4460816 */ sh $a2, 0x816($v0) -/* 063678 80062A78 A4400818 */ sh $zero, 0x818($v0) -/* 06367C 80062A7C 948C00B6 */ lhu $t4, 0xb6($a0) -/* 063680 80062A80 C486001C */ lwc1 $f6, 0x1c($a0) -/* 063684 80062A84 318DFF7F */ andi $t5, $t4, 0xff7f -/* 063688 80062A88 A48D00B6 */ sh $t5, 0xb6($a0) -/* 06368C 80062A8C E4460800 */ swc1 $f6, 0x800($v0) -/* 063690 80062A90 C4880014 */ lwc1 $f8, 0x14($a0) -/* 063694 80062A94 E44807F8 */ swc1 $f8, 0x7f8($v0) -/* 063698 80062A98 C48A0018 */ lwc1 $f10, 0x18($a0) -/* 06369C 80062A9C 46105480 */ add.s $f18, $f10, $f16 -/* 0636A0 80062AA0 03E00008 */ jr $ra -/* 0636A4 80062AA4 E45207FC */ swc1 $f18, 0x7fc($v0) diff --git a/asm/non_matchings/code_80057C60/func_80062AA8.s b/asm/non_matchings/code_80057C60/func_80062AA8.s deleted file mode 100644 index 254d7b547..000000000 --- a/asm/non_matchings/code_80057C60/func_80062AA8.s +++ /dev/null @@ -1,29 +0,0 @@ -glabel func_80062AA8 -/* 0636A8 80062AA8 00077600 */ sll $t6, $a3, 0x18 -/* 0636AC 80062AAC 000E7E03 */ sra $t7, $t6, 0x18 -/* 0636B0 80062AB0 000FC0C0 */ sll $t8, $t7, 3 -/* 0636B4 80062AB4 030FC021 */ addu $t8, $t8, $t7 -/* 0636B8 80062AB8 0018C0C0 */ sll $t8, $t8, 3 -/* 0636BC 80062ABC AFA50004 */ sw $a1, 4($sp) -/* 0636C0 80062AC0 AFA60008 */ sw $a2, 8($sp) -/* 0636C4 80062AC4 AFA7000C */ sw $a3, 0xc($sp) -/* 0636C8 80062AC8 00981021 */ addu $v0, $a0, $t8 -/* 0636CC 80062ACC 24190001 */ li $t9, 1 -/* 0636D0 80062AD0 24080005 */ li $t0, 5 -/* 0636D4 80062AD4 A4590814 */ sh $t9, 0x814($v0) -/* 0636D8 80062AD8 A448080A */ sh $t0, 0x80a($v0) -/* 0636DC 80062ADC 3C01800F */ lui $at, %hi(D_800EE60C) # $at, 0x800f -/* 0636E0 80062AE0 C424E60C */ lwc1 $f4, %lo(D_800EE60C)($at) -/* 0636E4 80062AE4 A4400816 */ sh $zero, 0x816($v0) -/* 0636E8 80062AE8 3C014004 */ li $at, 0x40040000 # 2.062500 -/* 0636EC 80062AEC E4440804 */ swc1 $f4, 0x804($v0) -/* 0636F0 80062AF0 C4880070 */ lwc1 $f8, 0x70($a0) -/* 0636F4 80062AF4 C4860018 */ lwc1 $f6, 0x18($a0) -/* 0636F8 80062AF8 44819800 */ mtc1 $at, $f19 -/* 0636FC 80062AFC 44809000 */ mtc1 $zero, $f18 -/* 063700 80062B00 46083280 */ add.s $f10, $f6, $f8 -/* 063704 80062B04 46005421 */ cvt.d.s $f16, $f10 -/* 063708 80062B08 46328101 */ sub.d $f4, $f16, $f18 -/* 06370C 80062B0C 462021A0 */ cvt.s.d $f6, $f4 -/* 063710 80062B10 03E00008 */ jr $ra -/* 063714 80062B14 E44607FC */ swc1 $f6, 0x7fc($v0) diff --git a/asm/non_matchings/code_80057C60/func_80062B18.s b/asm/non_matchings/code_80057C60/func_80062B18.s deleted file mode 100644 index c49313bf9..000000000 --- a/asm/non_matchings/code_80057C60/func_80062B18.s +++ /dev/null @@ -1,88 +0,0 @@ -glabel func_80062B18 -/* 063718 80062B18 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 06371C 80062B1C AFB0001C */ sw $s0, 0x1c($sp) -/* 063720 80062B20 97B00056 */ lhu $s0, 0x56($sp) -/* 063724 80062B24 AFBF0024 */ sw $ra, 0x24($sp) -/* 063728 80062B28 AFA40038 */ sw $a0, 0x38($sp) -/* 06372C 80062B2C AFB10020 */ sw $s1, 0x20($sp) -/* 063730 80062B30 F7B40010 */ sdc1 $f20, 0x10($sp) -/* 063734 80062B34 AFA5003C */ sw $a1, 0x3c($sp) -/* 063738 80062B38 AFA60040 */ sw $a2, 0x40($sp) -/* 06373C 80062B3C AFA70044 */ sw $a3, 0x44($sp) -/* 063740 80062B40 0C0AE006 */ jal sins -/* 063744 80062B44 02002025 */ move $a0, $s0 -/* 063748 80062B48 97B10052 */ lhu $s1, 0x52($sp) -/* 06374C 80062B4C E7A00028 */ swc1 $f0, 0x28($sp) -/* 063750 80062B50 0C0AE00E */ jal coss -/* 063754 80062B54 02202025 */ move $a0, $s1 -/* 063758 80062B58 E7A0002C */ swc1 $f0, 0x2c($sp) -/* 06375C 80062B5C 0C0AE00E */ jal coss -/* 063760 80062B60 3204FFFF */ andi $a0, $s0, 0xffff -/* 063764 80062B64 E7A00030 */ swc1 $f0, 0x30($sp) -/* 063768 80062B68 0C0AE00E */ jal coss -/* 06376C 80062B6C 3224FFFF */ andi $a0, $s1, 0xffff -/* 063770 80062B70 46000506 */ mov.s $f20, $f0 -/* 063774 80062B74 0C0AE006 */ jal sins -/* 063778 80062B78 3224FFFF */ andi $a0, $s1, 0xffff -/* 06377C 80062B7C C7A40044 */ lwc1 $f4, 0x44($sp) -/* 063780 80062B80 C7A80030 */ lwc1 $f8, 0x30($sp) -/* 063784 80062B84 C7B00048 */ lwc1 $f16, 0x48($sp) -/* 063788 80062B88 46142182 */ mul.s $f6, $f4, $f20 -/* 06378C 80062B8C C7B2002C */ lwc1 $f18, 0x2c($sp) -/* 063790 80062B90 8FAE0038 */ lw $t6, 0x38($sp) -/* 063794 80062B94 3204FFFF */ andi $a0, $s0, 0xffff -/* 063798 80062B98 46083282 */ mul.s $f10, $f6, $f8 -/* 06379C 80062B9C C7A60028 */ lwc1 $f6, 0x28($sp) -/* 0637A0 80062BA0 46128102 */ mul.s $f4, $f16, $f18 -/* 0637A4 80062BA4 C7B2004C */ lwc1 $f18, 0x4c($sp) -/* 0637A8 80062BA8 46062202 */ mul.s $f8, $f4, $f6 -/* 0637AC 80062BAC 46085400 */ add.s $f16, $f10, $f8 -/* 0637B0 80062BB0 46120102 */ mul.s $f4, $f0, $f18 -/* 0637B4 80062BB4 46048181 */ sub.s $f6, $f16, $f4 -/* 0637B8 80062BB8 0C0AE006 */ jal sins -/* 0637BC 80062BBC E5C60000 */ swc1 $f6, ($t6) -/* 0637C0 80062BC0 46000506 */ mov.s $f20, $f0 -/* 0637C4 80062BC4 0C0AE00E */ jal coss -/* 0637C8 80062BC8 3204FFFF */ andi $a0, $s0, 0xffff -/* 0637CC 80062BCC C7AA0048 */ lwc1 $f10, 0x48($sp) -/* 0637D0 80062BD0 C7B20044 */ lwc1 $f18, 0x44($sp) -/* 0637D4 80062BD4 8FAF003C */ lw $t7, 0x3c($sp) -/* 0637D8 80062BD8 460A0202 */ mul.s $f8, $f0, $f10 -/* 0637DC 80062BDC 3204FFFF */ andi $a0, $s0, 0xffff -/* 0637E0 80062BE0 46149402 */ mul.s $f16, $f18, $f20 -/* 0637E4 80062BE4 46104101 */ sub.s $f4, $f8, $f16 -/* 0637E8 80062BE8 0C0AE006 */ jal sins -/* 0637EC 80062BEC E5E40000 */ swc1 $f4, ($t7) -/* 0637F0 80062BF0 E7A00028 */ swc1 $f0, 0x28($sp) -/* 0637F4 80062BF4 0C0AE006 */ jal sins -/* 0637F8 80062BF8 3224FFFF */ andi $a0, $s1, 0xffff -/* 0637FC 80062BFC E7A0002C */ swc1 $f0, 0x2c($sp) -/* 063800 80062C00 0C0AE00E */ jal coss -/* 063804 80062C04 3204FFFF */ andi $a0, $s0, 0xffff -/* 063808 80062C08 E7A00030 */ swc1 $f0, 0x30($sp) -/* 06380C 80062C0C 0C0AE006 */ jal sins -/* 063810 80062C10 3224FFFF */ andi $a0, $s1, 0xffff -/* 063814 80062C14 46000506 */ mov.s $f20, $f0 -/* 063818 80062C18 0C0AE00E */ jal coss -/* 06381C 80062C1C 3224FFFF */ andi $a0, $s1, 0xffff -/* 063820 80062C20 C7A60044 */ lwc1 $f6, 0x44($sp) -/* 063824 80062C24 C7B20030 */ lwc1 $f18, 0x30($sp) -/* 063828 80062C28 C7B00048 */ lwc1 $f16, 0x48($sp) -/* 06382C 80062C2C 46143282 */ mul.s $f10, $f6, $f20 -/* 063830 80062C30 C7A4002C */ lwc1 $f4, 0x2c($sp) -/* 063834 80062C34 8FB80040 */ lw $t8, 0x40($sp) -/* 063838 80062C38 46125202 */ mul.s $f8, $f10, $f18 -/* 06383C 80062C3C C7AA0028 */ lwc1 $f10, 0x28($sp) -/* 063840 80062C40 46048182 */ mul.s $f6, $f16, $f4 -/* 063844 80062C44 C7A4004C */ lwc1 $f4, 0x4c($sp) -/* 063848 80062C48 460A3482 */ mul.s $f18, $f6, $f10 -/* 06384C 80062C4C 46124400 */ add.s $f16, $f8, $f18 -/* 063850 80062C50 46040182 */ mul.s $f6, $f0, $f4 -/* 063854 80062C54 46103280 */ add.s $f10, $f6, $f16 -/* 063858 80062C58 E70A0000 */ swc1 $f10, ($t8) -/* 06385C 80062C5C 8FBF0024 */ lw $ra, 0x24($sp) -/* 063860 80062C60 8FB10020 */ lw $s1, 0x20($sp) -/* 063864 80062C64 8FB0001C */ lw $s0, 0x1c($sp) -/* 063868 80062C68 D7B40010 */ ldc1 $f20, 0x10($sp) -/* 06386C 80062C6C 03E00008 */ jr $ra -/* 063870 80062C70 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/code_80057C60/func_80064184.s b/asm/non_matchings/code_80057C60/func_80064184.s deleted file mode 100644 index 51a018919..000000000 --- a/asm/non_matchings/code_80057C60/func_80064184.s +++ /dev/null @@ -1,143 +0,0 @@ -glabel func_80064184 -/* 064D84 80064184 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 064D88 80064188 00067600 */ sll $t6, $a2, 0x18 -/* 064D8C 8006418C 000E7E03 */ sra $t7, $t6, 0x18 -/* 064D90 80064190 3C198016 */ lui $t9, %hi(D_801652A0) # $t9, 0x8016 -/* 064D94 80064194 273952A0 */ addiu $t9, %lo(D_801652A0) # addiu $t9, $t9, 0x52a0 -/* 064D98 80064198 000FC080 */ sll $t8, $t7, 2 -/* 064D9C 8006419C AFBF002C */ sw $ra, 0x2c($sp) -/* 064DA0 800641A0 AFB00028 */ sw $s0, 0x28($sp) -/* 064DA4 800641A4 AFA5004C */ sw $a1, 0x4c($sp) -/* 064DA8 800641A8 AFA60050 */ sw $a2, 0x50($sp) -/* 064DAC 800641AC AFA70054 */ sw $a3, 0x54($sp) -/* 064DB0 800641B0 03191821 */ addu $v1, $t8, $t9 -/* 064DB4 800641B4 C4600000 */ lwc1 $f0, ($v1) -/* 064DB8 800641B8 C4840018 */ lwc1 $f4, 0x18($a0) -/* 064DBC 800641BC 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 064DC0 800641C0 44814000 */ mtc1 $at, $f8 -/* 064DC4 800641C4 46040181 */ sub.s $f6, $f0, $f4 -/* 064DC8 800641C8 00808025 */ move $s0, $a0 -/* 064DCC 800641CC 3C0A800E */ lui $t2, %hi(gCurrentCourseId) # $t2, 0x800e -/* 064DD0 800641D0 46083281 */ sub.s $f10, $f6, $f8 -/* 064DD4 800641D4 E7AA0040 */ swc1 $f10, 0x40($sp) -/* 064DD8 800641D8 948800DE */ lhu $t0, 0xde($a0) -/* 064DDC 800641DC 31090001 */ andi $t1, $t0, 1 -/* 064DE0 800641E0 5120000E */ beql $t1, $zero, .L8006421C -/* 064DE4 800641E4 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 064DE8 800641E8 854AC5A0 */ lh $t2, %lo(gCurrentCourseId)($t2) -/* 064DEC 800641EC 24010006 */ li $at, 6 -/* 064DF0 800641F0 5141000A */ beql $t2, $at, .L8006421C -/* 064DF4 800641F4 C7B00040 */ lwc1 $f16, 0x40($sp) -/* 064DF8 800641F8 C4900018 */ lwc1 $f16, 0x18($a0) -/* 064DFC 800641FC 3C01800F */ lui $at, %hi(D_800EE6C8) -/* 064E00 80064200 D426E6C8 */ ldc1 $f6, %lo(D_800EE6C8)($at) -/* 064E04 80064204 46100481 */ sub.s $f18, $f0, $f16 -/* 064E08 80064208 46009121 */ cvt.d.s $f4, $f18 -/* 064E0C 8006420C 46262200 */ add.d $f8, $f4, $f6 -/* 064E10 80064210 462042A0 */ cvt.s.d $f10, $f8 -/* 064E14 80064214 E7AA0040 */ swc1 $f10, 0x40($sp) -/* 064E18 80064218 C7B00040 */ lwc1 $f16, 0x40($sp) -.L8006421C: -/* 064E1C 8006421C 3C014190 */ li $at, 0x41900000 # 18.000000 -/* 064E20 80064220 44812000 */ mtc1 $at, $f4 -/* 064E24 80064224 E7B00010 */ swc1 $f16, 0x10($sp) -/* 064E28 80064228 C6120094 */ lwc1 $f18, 0x94($s0) -/* 064E2C 8006422C 87AB004E */ lh $t3, 0x4e($sp) -/* 064E30 80064230 3C014358 */ li $at, 0x43580000 # 216.000000 -/* 064E34 80064234 46049183 */ div.s $f6, $f18, $f4 -/* 064E38 80064238 000B60C0 */ sll $t4, $t3, 3 -/* 064E3C 8006423C 018B6021 */ addu $t4, $t4, $t3 -/* 064E40 80064240 000C60C0 */ sll $t4, $t4, 3 -/* 064E44 80064244 020C1021 */ addu $v0, $s0, $t4 -/* 064E48 80064248 844D0276 */ lh $t5, 0x276($v0) -/* 064E4C 8006424C 44819000 */ mtc1 $at, $f18 -/* 064E50 80064250 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 064E54 80064254 000D7023 */ negu $t6, $t5 -/* 064E58 80064258 448E4000 */ mtc1 $t6, $f8 -/* 064E5C 8006425C 27A40044 */ addiu $a0, $sp, 0x44 -/* 064E60 80064260 27A50040 */ addiu $a1, $sp, 0x40 -/* 064E64 80064264 27A6003C */ addiu $a2, $sp, 0x3c -/* 064E68 80064268 24070000 */ li $a3, 0 -/* 064E6C 8006426C 468042A0 */ cvt.s.w $f10, $f8 -/* 064E70 80064270 44814000 */ mtc1 $at, $f8 -/* 064E74 80064274 3C01C080 */ li $at, 0xC0800000 # -4.000000 -/* 064E78 80064278 46065402 */ mul.s $f16, $f10, $f6 -/* 064E7C 8006427C 44813000 */ mtc1 $at, $f6 -/* 064E80 80064280 46128102 */ mul.s $f4, $f16, $f18 -/* 064E84 80064284 46082283 */ div.s $f10, $f4, $f8 -/* 064E88 80064288 46065400 */ add.s $f16, $f10, $f6 -/* 064E8C 8006428C E7B00014 */ swc1 $f16, 0x14($sp) -/* 064E90 80064290 844F0278 */ lh $t7, 0x278($v0) -/* 064E94 80064294 000FC023 */ negu $t8, $t7 -/* 064E98 80064298 AFB80018 */ sw $t8, 0x18($sp) -/* 064E9C 8006429C 86190206 */ lh $t9, 0x206($s0) -/* 064EA0 800642A0 AFA30038 */ sw $v1, 0x38($sp) -/* 064EA4 800642A4 AFA20034 */ sw $v0, 0x34($sp) -/* 064EA8 800642A8 00194023 */ negu $t0, $t9 -/* 064EAC 800642AC 00084840 */ sll $t1, $t0, 1 -/* 064EB0 800642B0 0C018AC6 */ jal func_80062B18 -/* 064EB4 800642B4 AFA9001C */ sw $t1, 0x1c($sp) -/* 064EB8 800642B8 C6120014 */ lwc1 $f18, 0x14($s0) -/* 064EBC 800642BC C7A40044 */ lwc1 $f4, 0x44($sp) -/* 064EC0 800642C0 8FA20034 */ lw $v0, 0x34($sp) -/* 064EC4 800642C4 8FA30038 */ lw $v1, 0x38($sp) -/* 064EC8 800642C8 46049200 */ add.s $f8, $f18, $f4 -/* 064ECC 800642CC 844A0276 */ lh $t2, 0x276($v0) -/* 064ED0 800642D0 44800000 */ mtc1 $zero, $f0 -/* 064ED4 800642D4 2401000C */ li $at, 12 -/* 064ED8 800642D8 E4480258 */ swc1 $f8, 0x258($v0) -/* 064EDC 800642DC C7A6003C */ lwc1 $f6, 0x3c($sp) -/* 064EE0 800642E0 C60A001C */ lwc1 $f10, 0x1c($s0) -/* 064EE4 800642E4 254B0001 */ addiu $t3, $t2, 1 -/* 064EE8 800642E8 46065400 */ add.s $f16, $f10, $f6 -/* 064EEC 800642EC E4500260 */ swc1 $f16, 0x260($v0) -/* 064EF0 800642F0 C7A40040 */ lwc1 $f4, 0x40($sp) -/* 064EF4 800642F4 C6120018 */ lwc1 $f18, 0x18($s0) -/* 064EF8 800642F8 A44B0276 */ sh $t3, 0x276($v0) -/* 064EFC 800642FC 844C0276 */ lh $t4, 0x276($v0) -/* 064F00 80064300 46049200 */ add.s $f8, $f18, $f4 -/* 064F04 80064304 11810009 */ beq $t4, $at, .L8006432C -/* 064F08 80064308 E448025C */ swc1 $f8, 0x25c($v0) -/* 064F0C 8006430C C60A0018 */ lwc1 $f10, 0x18($s0) -/* 064F10 80064310 C6060070 */ lwc1 $f6, 0x70($s0) -/* 064F14 80064314 C4720000 */ lwc1 $f18, ($v1) -/* 064F18 80064318 46065401 */ sub.s $f16, $f10, $f6 -/* 064F1C 8006431C 4610903E */ c.le.s $f18, $f16 -/* 064F20 80064320 00000000 */ nop -/* 064F24 80064324 45020005 */ bc1fl .L8006433C -/* 064F28 80064328 3C014000 */ lui $at, 0x4000 -.L8006432C: -/* 064F2C 8006432C A4400274 */ sh $zero, 0x274($v0) -/* 064F30 80064330 A4400276 */ sh $zero, 0x276($v0) -/* 064F34 80064334 A440026A */ sh $zero, 0x26a($v0) -/* 064F38 80064338 3C014000 */ li $at, 0x40000000 # 2.000000 -.L8006433C: -/* 064F3C 8006433C 44812000 */ mtc1 $at, $f4 -/* 064F40 80064340 C4480264 */ lwc1 $f8, 0x264($v0) -/* 064F44 80064344 3C01800F */ lui $at, %hi(D_800EE6D0) -/* 064F48 80064348 E4440270 */ swc1 $f4, 0x270($v0) -/* 064F4C 8006434C D426E6D0 */ ldc1 $f6, %lo(D_800EE6D0)($at) -/* 064F50 80064350 460042A1 */ cvt.d.s $f10, $f8 -/* 064F54 80064354 46265401 */ sub.d $f16, $f10, $f6 -/* 064F58 80064358 462084A0 */ cvt.s.d $f18, $f16 -/* 064F5C 8006435C E4520264 */ swc1 $f18, 0x264($v0) -/* 064F60 80064360 C4440264 */ lwc1 $f4, 0x264($v0) -/* 064F64 80064364 4600203C */ c.lt.s $f4, $f0 -/* 064F68 80064368 00000000 */ nop -/* 064F6C 8006436C 45020003 */ bc1fl .L8006437C -/* 064F70 80064370 844D0296 */ lh $t5, 0x296($v0) -/* 064F74 80064374 E4400264 */ swc1 $f0, 0x264($v0) -/* 064F78 80064378 844D0296 */ lh $t5, 0x296($v0) -.L8006437C: -/* 064F7C 8006437C 25AEFFEA */ addiu $t6, $t5, -0x16 -/* 064F80 80064380 A44E0296 */ sh $t6, 0x296($v0) -/* 064F84 80064384 844F0296 */ lh $t7, 0x296($v0) -/* 064F88 80064388 5DE00003 */ bgtzl $t7, .L80064398 -/* 064F8C 8006438C 8FBF002C */ lw $ra, 0x2c($sp) -/* 064F90 80064390 A4400296 */ sh $zero, 0x296($v0) -/* 064F94 80064394 8FBF002C */ lw $ra, 0x2c($sp) -.L80064398: -/* 064F98 80064398 8FB00028 */ lw $s0, 0x28($sp) -/* 064F9C 8006439C 27BD0048 */ addiu $sp, $sp, 0x48 -/* 064FA0 800643A0 03E00008 */ jr $ra -/* 064FA4 800643A4 00000000 */ nop diff --git a/asm/non_matchings/code_80057C60/func_8006B9CC.s b/asm/non_matchings/code_80057C60/func_8006B9CC.s deleted file mode 100644 index 8b7889385..000000000 --- a/asm/non_matchings/code_80057C60/func_8006B9CC.s +++ /dev/null @@ -1,54 +0,0 @@ -glabel func_8006B9CC -/* 06C5CC 8006B9CC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 06C5D0 8006B9D0 AFA5002C */ sw $a1, 0x2c($sp) -/* 06C5D4 8006B9D4 83AE002F */ lb $t6, 0x2f($sp) -/* 06C5D8 8006B9D8 3C188019 */ lui $t8, %hi(gPlayerBalloonStatus) # $t8, 0x8019 -/* 06C5DC 8006B9DC 2718D5F0 */ addiu $t8, %lo(gPlayerBalloonStatus) # addiu $t8, $t8, -0x2a10 -/* 06C5E0 8006B9E0 000E7880 */ sll $t7, $t6, 2 -/* 06C5E4 8006B9E4 01EE7823 */ subu $t7, $t7, $t6 -/* 06C5E8 8006B9E8 000F7840 */ sll $t7, $t7, 1 -/* 06C5EC 8006B9EC 01F81021 */ addu $v0, $t7, $t8 -/* 06C5F0 8006B9F0 94590000 */ lhu $t9, ($v0) -/* 06C5F4 8006B9F4 AFBF001C */ sw $ra, 0x1c($sp) -/* 06C5F8 8006B9F8 AFA40028 */ sw $a0, 0x28($sp) -/* 06C5FC 8006B9FC 5320000A */ beql $t9, $zero, .L8006BA28 -/* 06C600 8006BA00 94480002 */ lhu $t0, 2($v0) -/* 06C604 8006BA04 44800000 */ mtc1 $zero, $f0 -/* 06C608 8006BA08 01C03825 */ move $a3, $t6 -/* 06C60C 8006BA0C AFA00010 */ sw $zero, 0x10($sp) -/* 06C610 8006BA10 44050000 */ mfc1 $a1, $f0 -/* 06C614 8006BA14 44060000 */ mfc1 $a2, $f0 -/* 06C618 8006BA18 0C01A9F0 */ jal func_8006A7C0 -/* 06C61C 8006BA1C AFA20024 */ sw $v0, 0x24($sp) -/* 06C620 8006BA20 8FA20024 */ lw $v0, 0x24($sp) -/* 06C624 8006BA24 94480002 */ lhu $t0, 2($v0) -.L8006BA28: -/* 06C628 8006BA28 3C053FE6 */ lui $a1, (0x3FE66666 >> 16) # lui $a1, 0x3fe6 -/* 06C62C 8006BA2C 34A56666 */ ori $a1, (0x3FE66666 & 0xFFFF) # ori $a1, $a1, 0x6666 -/* 06C630 8006BA30 11000009 */ beqz $t0, .L8006BA58 -/* 06C634 8006BA34 8FA40028 */ lw $a0, 0x28($sp) -/* 06C638 8006BA38 3C064026 */ lui $a2, (0x40266666 >> 16) # lui $a2, 0x4026 -/* 06C63C 8006BA3C 24090001 */ li $t1, 1 -/* 06C640 8006BA40 AFA90010 */ sw $t1, 0x10($sp) -/* 06C644 8006BA44 34C66666 */ ori $a2, (0x40266666 & 0xFFFF) # ori $a2, $a2, 0x6666 -/* 06C648 8006BA48 83A7002F */ lb $a3, 0x2f($sp) -/* 06C64C 8006BA4C 0C01A9F0 */ jal func_8006A7C0 -/* 06C650 8006BA50 AFA20024 */ sw $v0, 0x24($sp) -/* 06C654 8006BA54 8FA20024 */ lw $v0, 0x24($sp) -.L8006BA58: -/* 06C658 8006BA58 944A0004 */ lhu $t2, 4($v0) -/* 06C65C 8006BA5C 3C05BFE6 */ lui $a1, (0xBFE66666 >> 16) # lui $a1, 0xbfe6 -/* 06C660 8006BA60 34A56666 */ ori $a1, (0xBFE66666 & 0xFFFF) # ori $a1, $a1, 0x6666 -/* 06C664 8006BA64 11400007 */ beqz $t2, .L8006BA84 -/* 06C668 8006BA68 8FA40028 */ lw $a0, 0x28($sp) -/* 06C66C 8006BA6C 3C064026 */ lui $a2, (0x40266666 >> 16) # lui $a2, 0x4026 -/* 06C670 8006BA70 240B0002 */ li $t3, 2 -/* 06C674 8006BA74 AFAB0010 */ sw $t3, 0x10($sp) -/* 06C678 8006BA78 34C66666 */ ori $a2, (0x40266666 & 0xFFFF) # ori $a2, $a2, 0x6666 -/* 06C67C 8006BA7C 0C01A9F0 */ jal func_8006A7C0 -/* 06C680 8006BA80 83A7002F */ lb $a3, 0x2f($sp) -.L8006BA84: -/* 06C684 8006BA84 8FBF001C */ lw $ra, 0x1c($sp) -/* 06C688 8006BA88 27BD0028 */ addiu $sp, $sp, 0x28 -/* 06C68C 8006BA8C 03E00008 */ jr $ra -/* 06C690 8006BA90 00000000 */ nop diff --git a/include/common_structs.h b/include/common_structs.h index fea0c5db0..b09b50094 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -204,7 +204,7 @@ typedef struct { // On flat ground this value should be cornerY - gKartBoundingBoxTable[characterId] /* 0x10 */ f32 cornerGroundY; /* 0x14 */ s32 unk_14; -} kartBoundingBoxCorner; // size = 0x18 +} KartBoundingBoxCorner; // size = 0x18 #define FRONT_LEFT_TYRE 0 #define FRONT_RIGHT_TYRE 1 @@ -315,7 +315,7 @@ typedef struct { /* 0x014C */ char unk_14C[0x4]; /* 0x0150 */ f32 unk_150[9]; /* 0x0174 */ f32 unk_174[9]; - /* 0x0198 */ kartBoundingBoxCorner boundingBoxCorners[4]; + /* 0x0198 */ KartBoundingBoxCorner boundingBoxCorners[4]; /* 0x01F8 */ f32 unk_1F8; /* 0x01FC */ f32 unk_1FC; /* 0x0200 */ s32 unk_200; diff --git a/include/trig_tables.h b/include/trig_tables.h index b209dfb59..569ffefc1 100644 --- a/include/trig_tables.h +++ b/include/trig_tables.h @@ -1,25 +1,25 @@ -#ifndef TRIG_TABLES_H -#define TRIG_TABLES_H - -/* - * The sine and cosine tables overlap, but "#define gCosineTable (gSineTable + - * 0x400)" doesn't give expected codegen; gSineTable and gCosineTable need to - * be different symbols for code to match. Most likely the tables were placed - * adjacent to each other, and gSineTable cut short, such that reads overflow - * into gCosineTable. - * - * These kinds of out of bounds reads are undefined behavior, and break on - * e.g. GCC (which doesn't place the tables next to each other, and probably - * exploits array sizes for range analysis-based optimizations as well). - * Thus, for non-IDO compilers we use the standard-compliant version. - */ -extern f32 gSineTable[]; -#ifdef AVOID_UB -#define gCosineTable (gSineTable + 0x400) -#else -extern f32 gCosineTable[]; -#endif - -extern s16 gArctanTable[]; - -#endif +#ifndef TRIG_TABLES_H +#define TRIG_TABLES_H + +/* + * The sine and cosine tables overlap, but "#define gCosineTable (gSineTable + + * 0x400)" doesn't give expected codegen; gSineTable and gCosineTable need to + * be different symbols for code to match. Most likely the tables were placed + * adjacent to each other, and gSineTable cut short, such that reads overflow + * into gCosineTable. + * + * These kinds of out of bounds reads are undefined behavior, and break on + * e.g. GCC (which doesn't place the tables next to each other, and probably + * exploits array sizes for range analysis-based optimizations as well). + * Thus, for non-IDO compilers we use the standard-compliant version. + */ +extern f32 gSineTable[]; +#ifdef AVOID_UB +#define gCosineTable (gSineTable + 0x400) +#else +extern f32 gCosineTable[]; +#endif + +extern s16 gArctanTable[]; + +#endif diff --git a/src/code_80057C60.c b/src/code_80057C60.c index f7fa59963..9936d42fe 100644 --- a/src/code_80057C60.c +++ b/src/code_80057C60.c @@ -9,48 +9,6 @@ #include "code_80040E50.h" #include "math_util.h" -void func_8001C3C4(s32); -void func_80041D34(void); -void func_8004E638(s32); -void func_8004E78C(s32); -void func_8004E800(s32); -void func_8004E998(s32); -void func_8004EB30(s32); -void func_8004EB38(s32); -void func_8004ED40(s32); -void func_8004EE54(s32); -void func_8004F020(s32); -void func_8004F3E4(s32); -void func_8004FA78(s32); -void func_80050320(void); -void func_800514BC(void); -void func_800517C8(void); -void func_80051EBC(void); -void func_80051EF8(void); -void func_80051F9C(void); -void func_80052044(void); -void func_80052080(void); -void func_80052C60(void); -void func_800532A4(s32); -void func_80054BE8(s32); -void func_80055F48(s32); -void func_80056160(s32); -void func_800744CC(void); -void func_80077640(void); -void func_80078C70(s32); -void func_8007A948(s32); -void func_8007AA44(s32); -void func_8007BB9C(s32); -void func_8007C2F8(s32); -void func_80081210(void); -void func_80086604(void); -void func_80086D80(void); -void func_800892E0(s32); -void func_8008C1D8(s32*); -void func_8008C1E0(s32*, s32*); -void func_8008C204(void); -void func_802A3730(struct UnkStruct_800DC5EC*); - // UI Code? void func_80057C60(void) { gSPViewport(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(D_802B8880)); @@ -3178,204 +3136,105 @@ void func_8005D290(void) { GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D290.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005D6C0(Player *player) { - Player *temp_v1; - Player *temp_v1_2; - Player *temp_v1_3; - f32 *temp_v1_4; - s32 temp_v0; - s32 temp_v0_2; - s32 temp_v0_3; - s32 temp_v0_4; - Player *phi_v1; - s32 phi_v0; - Player *phi_v1_2; - s32 phi_v0_2; - Player *phi_v1_3; - s32 phi_v0_3; - f32 *phi_v1_4; - s32 phi_v0_4; - - phi_v1 = player; - phi_v0 = 0; - phi_v0_2 = 0; - phi_v0_3 = 0; - do { - temp_v0 = phi_v0 + 1; - temp_v1 = phi_v1 + 0x48; - temp_v1->unk_22C = 0; - temp_v1->unk22E = 0; - temp_v1->unk222 = 0; - phi_v1 = temp_v1; - phi_v0 = temp_v0; - } while (temp_v0 < 0xA); - phi_v1_2 = player; - do { - temp_v0_2 = phi_v0_2 + 1; - temp_v1_2 = phi_v1_2 + 0x48; - temp_v1_2->unkA9C = 0; - temp_v1_2->unkA9E = 0; - temp_v1_2->unkA92 = 0; - phi_v1_2 = temp_v1_2; - phi_v0_2 = temp_v0_2; - } while (temp_v0_2 < 0xA); - phi_v1_3 = player; - do { - temp_v0_3 = phi_v0_3 + 1; - temp_v1_3 = phi_v1_3 + 0x48; - temp_v1_3->unk4FC = 0; - temp_v1_3->unk4FE = 0; - temp_v1_3->unk4F2 = 0; - phi_v1_3 = temp_v1_3; - phi_v0_3 = temp_v0_3; - } while (temp_v0_3 < 0xA); - player->unk814 = 0; - player->unk816 = 0; - player->unk80A = 0; - player->unk85C = 0; - player->unk85E = 0; - player->unk852 = 0; - phi_v1_4 = &player->unk_090; - phi_v0_4 = 2; - do { - temp_v0_4 = phi_v0_4 + 4; - phi_v1_4->unk85C = 0; - phi_v1_4->unk85E = 0; - phi_v1_4->unk852 = 0; - phi_v1_4->unk8A4 = 0; - phi_v1_4->unk8A6 = 0; - phi_v1_4->unk89A = 0; - phi_v1_4->unk8EC = 0; - phi_v1_4->unk8EE = 0; - phi_v1_4->unk8E2 = 0; - temp_v1_4 = phi_v1_4 + 0x120; - temp_v1_4->unk6F4 = 0; - temp_v1_4->unk6F6 = 0; - temp_v1_4->unk6EA = 0; - phi_v1_4 = temp_v1_4; - phi_v0_4 = temp_v0_4; - } while (temp_v0_4 != 0xA); -} -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D6C0.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005D794(void *arg0, void *arg1, f32 arg2, f32 arg3, f32 arg4, s8 arg5, s8 arg6) { - arg1->unk0 = arg2; - arg1->unk4 = arg3; - arg1->unk8 = arg4; - arg1->unk20 = -arg0->unk2E; - arg1->unk14 = arg5; - arg1->unk10 = arg6; -} -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D794.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005D7D8(void *arg0, s8 arg1, f32 arg2) { - arg0->unk1C = 1; - arg0->unk12 = arg1; - arg0->unk1E = 0; - arg0->unkC = arg2; -} -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D7D8.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005D800(void *arg0, s32 arg1, s16 arg2) { - arg0->unk38 = (arg1 >> 0x10) & 0xFF; - arg0->unk3A = (arg1 >> 8) & 0xFF; - arg0->unk3C = arg1 & 0xFF; - arg0->unk3E = arg2; -} -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D800.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005D82C(void *arg0, s32 arg1, s16 arg2) { - s16 temp_t3; - s16 temp_t6; +void func_8005D6C0(Player* arg0) { s32 temp_v0; - arg0 = arg0; - temp_v0 = random_int(0x30); - temp_t3 = ((arg1 >> 8) - temp_v0) & 0xFF; - temp_t6 = (arg1 - temp_v0) & 0xFF; - arg0->unk38 = ((arg1 >> 0x10) - temp_v0) & 0xFF; - arg0->unk3A = temp_t3; - arg0->unk3C = temp_t6; - arg0->unk3E = arg2; -} -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D82C.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 792017ad9d422c2467bd42686f383a5c41f41c75 -? func_8005D794(Player *, f32, f32, f32, f32, s32, s32); /* extern */ -? func_8005D7D8(Player *, ?, ?); /* extern */ -? func_8005D800(Player *, ?, ?); /* extern */ - -void func_8005D898(Player *player, s32 arg1, s8 arg2, s32 arg3) { - Player *temp_s1; - Player *temp_s1_2; - s32 temp_lo; - void *temp_s2; - void *temp_s2_2; - Player *phi_s1; - s32 phi_v0; - s32 phi_v0_2; - void *phi_s2; - - if ((s32) player->unk_0C0 >= 0) { - temp_s2 = player + ((s16) arg1 * 0x48); - temp_s1 = temp_s2 + 0x528; - func_8005D794(temp_s1, player->boundingBoxCorners[2].cornerX, player->boundingBoxCorners[2].cornerGroundY + 2.0f, player->boundingBoxCorners[2].cornerZ, (bitwise f32) player->boundingBoxCorners[2].surfaceType, 1); - phi_s1 = temp_s1; - phi_s2 = temp_s2; - } else { - temp_s2_2 = player + ((s16) arg1 * 0x48); - temp_s1_2 = temp_s2_2 + 0x528; - func_8005D794(player, (bitwise f32) temp_s1_2, player->boundingBoxCorners[3].cornerX, player->boundingBoxCorners[3].cornerGroundY + 2.0f, player->boundingBoxCorners[3].cornerZ, (s32) player->boundingBoxCorners[3].surfaceType, 0); - phi_s1 = temp_s1_2; - phi_s2 = temp_s2_2; + for (temp_v0 = 0; temp_v0 < 10; ++temp_v0) + { + arg0->unk_258[temp_v0].unk_01C = 0; + arg0->unk_258[temp_v0].unk_01E = 0; + arg0->unk_258[temp_v0].unk_012 = 0; } - temp_lo = (s32) player->unk_0C0 / 182; + + for (temp_v0 = 0; temp_v0 < 10; ++temp_v0) + { + arg0->unk_258[30 + temp_v0].unk_01C = 0; + arg0->unk_258[30 + temp_v0].unk_01E = 0; + arg0->unk_258[30 + temp_v0].unk_012 = 0; + } + + for (temp_v0 = 0; temp_v0 < 10; ++temp_v0) + { + arg0->unk_258[10 + temp_v0].unk_01C = 0; + arg0->unk_258[10 + temp_v0].unk_01E = 0; + arg0->unk_258[10 + temp_v0].unk_012 = 0; + } + + for (temp_v0 = 0; temp_v0 < 10; ++temp_v0) + { + arg0->unk_258[20 + temp_v0].unk_01C = 0; + arg0->unk_258[20 + temp_v0].unk_01E = 0; + arg0->unk_258[20 + temp_v0].unk_012 = 0; + } +} + +void func_8005D794(Player* arg0, UnkPlayerStruct258* arg1, f32 arg2, f32 arg3, f32 arg4, s8 arg5, s8 arg6) { + arg1->unk_008 = arg4; + arg1->unk_000 = arg2; + arg1->unk_004 = arg3; + arg1->unk_020 = -arg0->unk_02E; + arg1->unk_014 = arg5; + arg1->unk_010 = arg6; +} + +void func_8005D7D8(UnkPlayerStruct258* arg0, s8 arg1, f32 arg2) { + arg0->unk_01C = 1; + arg0->unk_012 = arg1; + arg0->unk_01E = 0; + arg0->unk_00C = arg2; +} + +void func_8005D800(UnkPlayerStruct258* arg0, s32 arg1, s16 arg2) { + arg0->unk_038 = (u8) (arg1 >> 16); + arg0->unk_03A = (u8) (arg1 >> 8); + arg0->unk_03C = (u8) arg1; + arg0->unk_03E = arg2; +} + +void func_8005D82C(UnkPlayerStruct258* arg0, s32 arg1, s16 arg2) { + s32 temp_v0; + temp_v0 = random_int(0x30); + + arg0->unk_038 = (u8) ((u8) (arg1 >> 0x10) - temp_v0) ; + arg0->unk_03A = (u8) ((u8) (arg1 >> 8) - temp_v0) ; + arg0->unk_03C = (u8) ((u8) arg1 - temp_v0) ; + arg0->unk_03E = arg2; +} + +void func_8005D898(Player* player, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) { + s32 temp_lo; + + if (player->unk_0C0 >= 0) { + func_8005D794(player, &player->unk_258[10 + arg1], player->boundingBoxCorners[2].cornerX, player->boundingBoxCorners[2].cornerGroundY + 2.0f, player->boundingBoxCorners[2].cornerZ, player->boundingBoxCorners[2].surfaceType, 1); + } else { + func_8005D794(player, &player->unk_258[10 + arg1], player->boundingBoxCorners[3].cornerX, player->boundingBoxCorners[3].cornerGroundY + 2.0f, player->boundingBoxCorners[3].cornerZ, player->boundingBoxCorners[3].surfaceType, 0); + } + + temp_lo = player->unk_0C0 / 182; if ((temp_lo >= 7) || (temp_lo < -6)) { - func_8005D7D8(phi_s1, 1, 0x3EB33333); + func_8005D7D8(&player->unk_258[10 + arg1], 1, 0.35f); if (player->unk_22A == 0) { - func_8005D800(phi_s1, 0xFFFFFF, 0x70); + func_8005D800(&player->unk_258[10 + arg1], 0xFFFFFF, 0x70); } - phi_v0 = (s32) player->unk_22A; + if (player->unk_22A == 1) { - func_8005D800(phi_s1, 0xFFFF00, 0x70); - phi_v0 = (s32) player->unk_22A; + func_8005D800(&player->unk_258[10 + arg1], 0xFFFF00, 0x70); + } - phi_v0_2 = phi_v0; - if (phi_v0 >= 2) { - func_8005D800(phi_s1, 0xFF9600, 0x70); - phi_v0_2 = (s32) player->unk_22A; + + if (player->unk_22A >= 2) { + func_8005D800(&player->unk_258[10 + arg1], 0xFF9600, 0x70); } - if (phi_v0_2 >= 2) { - phi_s2->unk568 = 2; + + if (player->unk_22A >= 2) { + // Why not put this in previous if statement? + player->unk_258[10 + arg1].unk_040 = 2; return; } - phi_s2->unk568 = (s16) phi_v0_2; + + player->unk_258[10 + arg1].unk_040 = player->unk_22A; } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005D898.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 @@ -3396,16 +3255,11 @@ void func_8005DA30(s32 arg0, s16 arg1, s32 arg2, s8 arg3, s8 arg4) { GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005DA30.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_8005DAD8(void *arg0, s16 arg1, s16 arg2, s16 arg3) { - arg0->unk38 = arg1; - arg0->unk3E = arg3; - arg0->unk40 = arg2; +void func_8005DAD8(UnkPlayerStruct258* arg0, s16 arg1, s16 arg2, s16 arg3) { + arg0->unk_038 = arg1; + arg0->unk_03E = arg3; + arg0->unk_040 = arg2; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005DAD8.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit 792017ad9d422c2467bd42686f383a5c41f41c75 @@ -4776,97 +4630,44 @@ void func_80060BCC(void *arg0, s16 arg1, s32 arg2, ? arg3) { GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80060BCC.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_8005D794(s32, f32, f32, f32, s32, s32); // extern -? func_8005D7D8(s32, ?, ?); // extern -? func_8005D800(s32, ?, ?); // extern -f32 sins(u16); // extern -f32 coss(u16); // extern -extern f64 D_800EE5A8; -extern f64 D_800EE5B0; +void func_80060F50(Player* arg0, s16 arg1, UNUSED s8 arg2, s8 arg3) { + func_8005D794(arg0, &arg0->unk_258[arg1], 0.0f, 0.0f, 0.0f, 0, 0); + func_8005D7D8(&arg0->unk_258[arg1], 5, 4.0f); -void func_80060F50(void *arg0, s16 arg1, ? arg2, s8 arg3) { - s16 temp_v0; - s32 temp_s1; - void *temp_s0; - - temp_s0 = arg0 + (arg1 * 0x48); - temp_s1 = temp_s0 + 0x258; - func_8005D794(temp_s1, 0.0f, 0.0f, 0.0f, 0, 0); - func_8005D7D8(temp_s1, 5, 0x40800000); - temp_v0 = gCurrentCourseId; - if ((temp_v0 == 2) || (temp_v0 == 0x13)) { - func_8005D800(temp_s1, 0xFF0000, 0xFF); + if ((gCurrentCourseId == COURSE_BOWSER_CASTLE) || (gCurrentCourseId == COURSE_BIG_DONUT)) { + func_8005D800(&arg0->unk_258[arg1], 0xFF0000, 0xFF); } else { - func_8005D800(temp_s1, 0xFFFFFF, 0xFF); + func_8005D800(&arg0->unk_258[arg1], 0xFFFFFF, 0xFF); } - temp_s0->unk260 = (coss(temp_s0->unk278) * D_800EE5A8) + arg0->unk1C; - temp_s0->unk258 = (sins(temp_s0->unk278) * D_800EE5B0) + arg0->unk14; - temp_s0->unk25C = D_801652A0[arg3]; - arg0->unkDE = arg0->unkDE & 0xFFF7; + + arg0->unk_258[arg1].unk_008 = (coss(arg0->unk_258[arg1].unk_020) * D_800EE5A8) + arg0->posZ; + arg0->unk_258[arg1].unk_000 = (sins(arg0->unk_258[arg1].unk_020) * D_800EE5B0) + arg0->posX; + arg0->unk_258[arg1].unk_004 = D_801652A0[arg3]; + arg0->unk_0DE &= ~0x0008; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80060F50.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_8005D794(s32, f32, f32, f32, s32, s32); // extern -? func_8005D7D8(s32, ?, ?); // extern -? func_8005D800(s32, ?, ?); // extern - -void func_80061094(s32 arg0, s16 arg1, ? arg2, ? arg3) { - void *sp2C; - s32 sp28; - s32 temp_a1; - void *temp_v0; +void func_80061094(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) { if (arg1 == 0) { - temp_v0 = arg0 + (arg1 * 0x48); - temp_a1 = temp_v0 + 0x258; - sp28 = temp_a1; - sp2C = temp_v0; - func_8005D794(temp_a1, 0.0f, 0.0f, 0.0f, 0, 0); - func_8005D7D8(sp28, 6, 0x40733333); - func_8005D800(sp28, 0xFFFFFF, 0xFF); - temp_v0->unk290 = 0; - temp_v0->unk292 = 0; - temp_v0->unk294 = 0; + func_8005D794(arg0, &arg0->unk_258[arg1], 0.0f, 0.0f, 0.0f, 0, 0); + func_8005D7D8(&arg0->unk_258[arg1], 6, 3.8f); + func_8005D800(&arg0->unk_258[arg1], 0xFFFFFF, 0xFF); + arg0->unk_258[arg1].unk_038 = 0; + arg0->unk_258[arg1].unk_03A = 0; + arg0->unk_258[arg1].unk_03C = 0; } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80061094.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_8005D794(s32, f32, f32, f32, s32, s32); // extern -? func_8005D7D8(s32, ?, ?); // extern -? func_8005D800(s32, ?, ?); // extern -f32 sins(u16); // extern -f32 coss(u16); // extern +void func_80061130(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) { + func_8005D794(arg0, &arg0->unk_258[arg1], 0.0f, 0.0f, 0.0f, 0, 0); + func_8005D7D8(&arg0->unk_258[arg1], 7, 0.6f); + func_8005D800(&arg0->unk_258[arg1], 0xFFFFFF, 0xD0); -void func_80061130(void *arg0, s16 arg1, ? arg2, ? arg3) { - s32 sp30; - s32 temp_a1; - void *temp_s0; - - temp_s0 = arg0 + (arg1 * 0x48); - temp_a1 = temp_s0 + 0x258; - sp30 = temp_a1; - func_8005D794(temp_a1, 0.0f, 0.0f, 0.0f, 0, 0); - func_8005D7D8(sp30, 7, 0x3F19999A); - func_8005D800(sp30, 0xFFFFFF, 0xD0); - temp_s0->unk260 = (coss(temp_s0->unk278) * 6.0f) + arg0->unk1C; - temp_s0->unk258 = (sins(temp_s0->unk278) * 6.0f) + arg0->unk14; - temp_s0->unk298 = 0; - temp_s0->unk27C = 0.0f; - temp_s0->unk25C = arg0->unk18 - 5.0f; + arg0->unk_258[arg1].unk_008 = (coss(arg0->unk_258[arg1].unk_020) * 6.0f) + arg0->posZ; + arg0->unk_258[arg1].unk_000 = (sins(arg0->unk_258[arg1].unk_020) * 6.0f) + arg0->posX; + arg0->unk_258[arg1].unk_004 = arg0->posY - 5.0f; + arg0->unk_258[arg1].unk_040 = 0; + arg0->unk_258[arg1].unk_024 = 0.0f; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80061130.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 @@ -5292,99 +5093,76 @@ void func_80061EF4(void *arg0, s16 arg1, s32 arg2, ? arg3) { GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80061EF4.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_8005D794(void *, void *, f32, f32, f32, s32, s32); // extern -? func_8005D7D8(void *, ?, ?); // extern -? func_8005D800(void *, ?, ?); // extern -f32 sins(s32); // extern -f32 coss(s32); // extern - -void func_800621BC(void *arg0, s16 arg1, s32 arg2, ? arg3) { - s32 sp48; - s32 sp44; - f32 sp3C; - void *sp30; +void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) { s32 temp_v1; - void *temp_a1; - void *temp_a1_2; - void *temp_s0; - void *temp_s0_2; - void *temp_v0; s32 phi_t0; - f32 phi_f2; s32 phi_t1; + Player *new_var; + f32 phi_f2; + Player *new_var2; - sp48 = 0xFF; - temp_v1 = random_int(8) & 1; phi_t0 = 0xFF; + temp_v1 = random_int(8) & 1; if (temp_v1 == 1) { - sp44 = 1; - sp3C = arg0->unk18; + phi_t1 = 1; phi_t0 = 0; + phi_f2 = arg0->posY; } - phi_f2 = sp3C; - phi_t1 = sp44; + if (temp_v1 == 0) { - phi_t0 = 0; - phi_f2 = arg0->unk18; phi_t1 = 0; + if (1) { + phi_t0 = 0; + } + phi_f2 = arg0->posY; } + if (phi_t0 == 0) { - if ((arg1 == 0) && ((temp_v0 = arg0 + (arg2 * 0x48), (temp_v0->unkAE6 > 0)) || (temp_v0->unkAE4 == 0))) { - temp_s0 = arg0 + (arg1 * 0x48); - temp_a1 = temp_s0 + 0xAC8; - sp30 = temp_a1; - func_8005D794(arg0, temp_a1, 0.0f, phi_f2, 0.0f, phi_t0, phi_t1); - func_8005D7D8(sp30, 8, 0x3F800000); - func_8005D800(sp30, 0xFFFF20, 0xFF); - temp_s0->unkAE8 = 0; - if (temp_s0->unkAD8 == 1) { - temp_s0->unkAE8 = temp_s0->unkAE8 + 0x888; + if ((arg1 == 0) && ((arg0->unk_258[30 + arg2].unk_01E > 0) || (arg0->unk_258[30 + arg2].unk_01C == 0))) { + func_8005D794(arg0, &arg0->unk_258[30 + arg1], 0.0f, phi_f2, 0.0f, phi_t0, phi_t1); + func_8005D7D8(&arg0->unk_258[30 + arg1], 8, 1.0f); + func_8005D800(&arg0->unk_258[30 + arg1], 0xFFFF20, 0xFF); + + arg0->unk_258[30 + arg1].unk_020 = 0; + if (arg0->unk_258[30 + arg1].unk_010 == 1) { + arg0->unk_258[30 + arg1].unk_020 += 2184; } else { - temp_s0->unkAE8 = temp_s0->unkAE8 - 0x888; + arg0->unk_258[30 + arg1].unk_020 -= 2184; } - temp_s0->unkAD0 = (coss(((temp_s0->unkAE8 - arg0->unk2E) - arg0->unkC0) & 0xFFFF) * 5.0f) + arg0->unk1C; - temp_s0->unkAC8 = (sins(((temp_s0->unkAE8 - arg0->unk2E) - arg0->unkC0) & 0xFFFF) * 5.0f) + arg0->unk14; + + arg0->unk_258[30 + arg1].unk_008 = (coss((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f) + arg0->posZ; + arg0->unk_258[30 + arg1].unk_000 = (sins((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f) + arg0->posX; return; } - if ((arg0 + (arg2 * 0x48))->unkAE6 > 0) { - temp_s0_2 = arg0 + (arg1 * 0x48); - temp_a1_2 = temp_s0_2 + 0xAC8; - sp30 = temp_a1_2; - func_8005D794(arg0, temp_a1_2, 0.0f, phi_f2, 0.0f, phi_t0, phi_t1); - func_8005D7D8(sp30, 8, 0x3F800000); - func_8005D800(sp30, 0xFFFF20, 0xFF); - temp_s0_2->unkAE8 = 0; - if (temp_s0_2->unkAD8 == 1) { - temp_s0_2->unkAE8 = temp_s0_2->unkAE8 + 0x888; + + new_var2 = arg0; + if (new_var2->unk_258[30 + arg2].unk_01E > 0) { + func_8005D794(new_var2, &new_var2->unk_258[30 + arg1], 0.0f, phi_f2, 0.0f, phi_t0, phi_t1); + func_8005D7D8(&new_var2->unk_258[30 + arg1], 8, 1.0f); + func_8005D800(&new_var2->unk_258[30 + arg1], 0xFFFF20, 0xFF); + new_var2->unk_258[30 + arg1].unk_020 = 0; + if (new_var2->unk_258[30 + arg1].unk_010 == 1) { + new_var2->unk_258[30 + arg1].unk_020 += 2184; } else { - temp_s0_2->unkAE8 = temp_s0_2->unkAE8 - 0x888; + new_var2->unk_258[30 + arg1].unk_020 -= 2184; } - temp_s0_2->unkAD0 = (coss(((temp_s0_2->unkAE8 - arg0->unk2E) - arg0->unkC0) & 0xFFFF) * 5.0f) + arg0->unk1C; - temp_s0_2->unkAC8 = (sins(((temp_s0_2->unkAE8 - arg0->unk2E) - arg0->unkC0) & 0xFFFF) * 5.0f) + arg0->unk14; + + new_var = new_var2; + new_var->unk_258[30 + arg1].unk_008 = (coss((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f) + new_var->posZ; + new_var->unk_258[30 + arg1].unk_000 = (sins((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f) + new_var->posX; } - // Duplicate return node #17. Try simplifying control flow for better match } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_800621BC.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_80062484(void *arg0, void *arg1, s32 arg2) { - arg1->unk1C = 1; - arg1->unk4 = arg0->unk74 + 1.0f; - arg1->unk8 = arg0->unk1C; - arg1->unk0 = arg0->unk14; - arg1->unk12 = 4; - arg1->unk1E = 0; - arg1->unk20 = (arg2 * 0x1998) - arg0->unk2E; +void func_80062484(Player* arg0, UnkPlayerStruct258* arg1, s32 arg2) { + arg1->unk_01C = 1; + arg1->unk_004 = arg0->unk_074 + 1.0f; + arg1->unk_008 = arg0->posZ; + arg1->unk_000 = arg0->posX; + arg1->unk_020 = (arg2 * 0x1998) - arg0->unk_02E; + arg1->unk_012 = 4; + arg1->unk_01E = 0; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062484.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909 @@ -5578,146 +5356,94 @@ block_42: GLOBAL_ASM("asm/non_matchings/code_80057C60/func_800624D8.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -extern f32 D_800EE5FC; - -void func_800628C0(void *arg0, ? arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk80A = 2; - temp_v0->unk818 = -arg0->unk2E; - temp_v0->unk816 = 0; - temp_v0->unk804 = D_800EE5FC; +void func_800628C0(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_020 = -arg0->unk_02E; + arg0->unk_258[20 + arg3].unk_012 = 2; + arg0->unk_258[20 + arg3].unk_01E = 0; + arg0->unk_258[20 + arg3].unk_00C = D_800EE5FC; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_800628C0.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -void func_80062914(void *arg0, ? arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk818 = -arg0->unk2E; - temp_v0->unk80A = 4; - temp_v0->unk816 = 0; - temp_v0->unk804 = 1.0f; +void func_80062914(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_020 = -arg0->unk_02E; + arg0->unk_258[20 + arg3].unk_012 = 4; + arg0->unk_258[20 + arg3].unk_01E = 0; + arg0->unk_258[20 + arg3].unk_00C = 1.0f; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062914.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -extern f32 D_800EE600; - -void func_80062968(void *arg0, ? arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk80A = 5; - temp_v0->unk818 = -arg0->unk2E; - temp_v0->unk816 = 0; - temp_v0->unk804 = D_800EE600; +void func_80062968(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_020 = -arg0->unk_02E; + arg0->unk_258[20 + arg3].unk_012 = 5; + arg0->unk_258[20 + arg3].unk_01E = 0; + arg0->unk_258[20 + arg3].unk_00C = D_800EE600; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062968.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -extern f32 D_800EE604; - -void func_800629BC(void *arg0, ? arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk80A = 6; - temp_v0->unk818 = -arg0->unk2E; - temp_v0->unk816 = 0; - temp_v0->unk7FC = 0.0f; - temp_v0->unk804 = D_800EE604; +void func_800629BC(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_020 = -arg0->unk_02E; + arg0->unk_258[20 + arg3].unk_012 = 6; + arg0->unk_258[20 + arg3].unk_01E = 0; + arg0->unk_258[20 + arg3].unk_00C = D_800EE604; + arg0->unk_258[20 + arg3].unk_004 = 0.0f; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_800629BC.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -extern f32 D_800EE608; - -void func_80062A18(void *arg0, s8 arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk80A = 3; - (arg0 + (arg1 * 0x48))->unk804 = D_800EE608; - temp_v0->unk816 = 1; - temp_v0->unk818 = 0; - arg0->unkB6 = arg0->unkB6 & 0xFF7F; - temp_v0->unk800 = arg0->unk1C; - temp_v0->unk7F8 = arg0->unk14; - temp_v0->unk7FC = arg0->unk18 + 4.0f; +void func_80062A18(Player* arg0, s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_012 = 3; + arg0->unk_258[20 + arg1 /* arg1 instead of arg3 */].unk_00C = D_800EE608; + arg0->unk_258[20 + arg3].unk_01E = 1; + arg0->unk_258[20 + arg3].unk_020 = 0; + arg0->unk_0B6 &= ~0x0080; + arg0->unk_258[20 + arg3].unk_008 = arg0->posZ; + arg0->unk_258[20 + arg3].unk_000 = arg0->posX; + arg0->unk_258[20 + arg3].unk_004 = (arg0->posY + 4.0f); } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062A18.s") -#endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -extern f32 D_800EE60C; - -void func_80062AA8(void *arg0, ? arg1, ? arg2, s8 arg3) { - void *temp_v0; - - temp_v0 = arg0 + (arg3 * 0x48); - temp_v0->unk814 = 1; - temp_v0->unk80A = 5; - temp_v0->unk816 = 0; - temp_v0->unk804 = D_800EE60C; - temp_v0->unk7FC = (arg0->unk18 + arg0->unk70) - 2.5; +void func_80062AA8(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) { + arg0->unk_258[20 + arg3].unk_01C = 1; + arg0->unk_258[20 + arg3].unk_012 = 5; + arg0->unk_258[20 + arg3].unk_00C = D_800EE60C; + arg0->unk_258[20 + arg3].unk_01E = 0; + arg0->unk_258[20 + arg3].unk_004 = (arg0->posY + arg0->unk_070) - 2.5; } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062AA8.s") -#endif - -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -f32 sins(u16); // extern -f32 coss(u16); // extern void func_80062B18(f32 *arg0, f32 *arg1, f32 *arg2, f32 arg3, f32 arg4, f32 arg5, u16 arg6, u16 arg7) { + UNUSED f32 pad; f32 sp30; f32 sp2C; f32 sp28; f32 temp_f20; - f32 temp_f20_2; - f32 temp_f20_3; + // Apply the matrix multiplication: + // Matrix is the Jacobian for cartesian to spherical coordinates? + // Get the change in r, theta, and phi for a change in x, y, z? + // + // | arg0 | | cos(arg6)*cos(arg7) cos(arg6)*sin(arg7) -sin(arg6) | | arg3 | + // | | | | | | + // | arg1 | = | -sin(arg7) cos(arg7) 0 | X | arg4 | + // | | | | | | + // | arg2 | | sin(arg6)*cos(arg7) sin(arg6)*sin(arg7) cos(arg6) | | arg5 | + // sp28 = sins(arg7); sp2C = coss(arg6); - sp30 = coss(arg7 & 0xFFFF); - temp_f20 = coss(arg6 & 0xFFFF); - *arg0 = ((arg3 * temp_f20 * sp30) + (arg4 * sp2C * sp28)) - (sins(arg6 & 0xFFFF) * arg5); - temp_f20_2 = sins(arg7 & 0xFFFF); - *arg1 = (coss(arg7 & 0xFFFF) * arg4) - (arg3 * temp_f20_2); - sp28 = sins(arg7 & 0xFFFF); - sp2C = sins(arg6 & 0xFFFF); - sp30 = coss(arg7 & 0xFFFF); - temp_f20_3 = sins(arg6 & 0xFFFF); - *arg2 = (coss(arg6 & 0xFFFF) * arg5) + ((arg3 * temp_f20_3 * sp30) + (arg4 * sp2C * sp28)); + sp30 = coss(arg7); + temp_f20 = coss(arg6); + // = arg3 * cos(arg6) * cos(arg7) + arg4 * cos(arg6) * sin(arg7) - arg5 * sin(arg6) + *arg0 = (((arg3 * temp_f20) * sp30) + (arg4 * sp2C) * sp28) - (sins(arg6) * arg5); + + temp_f20 = sins(arg7); + // = -arg3 * sin(arg7) + arg4 * cos(arg7) + *arg1 = (coss(arg7) * arg4) - (arg3 * temp_f20); + + sp28 = sins(arg7); + sp2C = sins(arg6); + sp30 = coss(arg7); + temp_f20 = sins(arg6); + // = arg3 * sin(arg6) * cos(arg7) + arg4 * sin(arg6) * sin(arg7) + arg5 * cos(arg6) + *arg2 = (coss(arg6) * arg5) + (((arg3 * temp_f20) * sp30) + ((arg4 * sp2C) * sp28)); } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80062B18.s") -#endif #ifdef MIPS_TO_C //generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 @@ -6094,54 +5820,37 @@ UNUSED void func_80063FBC(void *arg0, s16 arg1, ? arg2, ? arg3) { GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80063FBC.s") #endif -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_80062B18(f32 *, f32 *, f32 *, ?, f32, f32, s32, s32); // extern -extern f64 D_800EE6C8; -extern f64 D_800EE6D0; - -void func_80064184(void *arg0, s16 arg1, s8 arg2, ? arg3) { +void func_80064184(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) { f32 sp44; f32 sp40; f32 sp3C; - f32 *sp38; - void *sp34; - f32 *temp_v1; - f32 temp_f0; - void *temp_v0; - temp_v1 = &D_801652A0[arg2]; - temp_f0 = *temp_v1; - sp40 = (temp_f0 - arg0->unk18) - 3.0f; - if (((arg0->unkDE & 1) != 0) && (gCurrentCourseId != 6)) { - sp40 = (temp_f0 - arg0->unk18) + D_800EE6C8; + sp40 = D_801652A0[arg2] - arg0->posY - 3.0f; + if (((arg0->unk_0DE & 1) != 0) && (gCurrentCourseId != COURSE_KOOPA_BEACH)) { + sp40 = D_801652A0[arg2] - arg0->posY + D_800EE6C8; } - temp_v0 = arg0 + (arg1 * 0x48); - sp38 = temp_v1; - sp34 = temp_v0; - func_80062B18(&sp44, &sp40, &sp3C, 0, sp40, ((-temp_v0->unk276 * (arg0->unk94 / 18.0f) * 216.0f) / 10.0f) + -4.0f, -temp_v0->unk278, arg0->unk206 * -2); - temp_v0->unk258 = arg0->unk14 + sp44; - temp_v0->unk260 = arg0->unk1C + sp3C; - temp_v0->unk276 = temp_v0->unk276 + 1; - temp_v0->unk25C = arg0->unk18 + sp40; - if ((temp_v0->unk276 == 0xC) || (*temp_v1 <= (arg0->unk18 - arg0->unk70))) { - temp_v0->unk274 = 0; - temp_v0->unk276 = 0; - temp_v0->unk26A = 0; + + func_80062B18(&sp44, &sp40, &sp3C, 0.0f, sp40, -4.0f + ((-arg0->unk_258[arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 10.0f), -arg0->unk_258[arg1].unk_020, 2 * -arg0->unk_206); + arg0->unk_258[arg1].unk_000 = arg0->posX + sp44; + arg0->unk_258[arg1].unk_008 = arg0->posZ + sp3C; + arg0->unk_258[arg1].unk_004 = arg0->posY + sp40; + ++arg0->unk_258[arg1].unk_01E; + if ((arg0->unk_258[arg1].unk_01E == 12) || (D_801652A0[arg2] <= (arg0->posY - arg0->unk_070))) { + arg0->unk_258[arg1].unk_01C = 0; + arg0->unk_258[arg1].unk_01E = 0; + arg0->unk_258[arg1].unk_012 = 0; } - temp_v0->unk270 = 2.0f; - temp_v0->unk264 = temp_v0->unk264 - D_800EE6D0; - if (temp_v0->unk264 < 0.0f) { - temp_v0->unk264 = 0.0f; + arg0->unk_258[arg1].unk_018 = 2.0f; + arg0->unk_258[arg1].unk_00C -= D_800EE6D0; + if (arg0->unk_258[arg1].unk_00C < 0.0f) { + arg0->unk_258[arg1].unk_00C = 0.0f; } - temp_v0->unk296 = temp_v0->unk296 - 0x16; - if (temp_v0->unk296 <= 0) { - temp_v0->unk296 = 0; + + arg0->unk_258[arg1].unk_03E -= 22; + if (arg0->unk_258[arg1].unk_03E <= 0) { + arg0->unk_258[arg1].unk_03E = 0; } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80064184.s") -#endif void func_800643A8(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) { arg0->unk_258[10 + arg1].unk_008 = (D_800EE6D8 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020) + arg0->posZ); @@ -10455,33 +10164,20 @@ void func_8006B974(UNUSED s32 arg0, s8 playerIndex, s8 balloonIndex) { } } -#ifdef MIPS_TO_C -//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307 -? func_8006A7C0(s32, s32, s8, s32, s32); // extern -extern ? gPlayerBalloonStatus; - -void func_8006B9CC(s32 arg0, s8 arg1) { - u16 *sp24; - s32 temp_t7; - u16 *temp_v0; - - temp_t7 = arg1 * 6; - temp_v0 = temp_t7 + &gPlayerBalloonStatus; - if (*temp_v0 != 0) { - sp24 = temp_v0; - func_8006A7C0(0, 0, arg1, 0); +void func_8006B9CC(Player* arg0, s8 arg1) { + if (gPlayerBalloonStatus[arg1][0] != 0) { + func_8006A7C0(arg0, 0.0f, 0.0f, arg1, 0); } - if ((temp_t7 + &gPlayerBalloonStatus)->unk2 != 0) { - sp24 = temp_t7 + &gPlayerBalloonStatus; - func_8006A7C0(arg0, 0x3FE66666, 0x40266666, arg1, 1); + + if (gPlayerBalloonStatus[arg1][1] != 0) { + + func_8006A7C0(arg0, 1.8f, 2.6f, arg1, 1); } - if ((temp_t7 + &gPlayerBalloonStatus)->unk4 != 0) { - func_8006A7C0(arg0, 0xBFE66666, 0x40266666, arg1, 2); + + if (gPlayerBalloonStatus[arg1][2] != 0) { + func_8006A7C0(arg0, -1.8f, 2.6f, arg1, 2); } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8006B9CC.s") -#endif void func_8006BA94(Player* arg0, s8 playerIndex, s8 arg2) { if (gPlayerBalloonStatus[playerIndex][0] != BALLOON_STATUS_GONE) { diff --git a/src/code_80057C60.h b/src/code_80057C60.h index ca126ab67..c971e3254 100644 --- a/src/code_80057C60.h +++ b/src/code_80057C60.h @@ -1,240 +1,313 @@ -#ifndef CODE_80057C60_H -#define CODE_80057C60_H - -#include "common_structs.h" - -void func_80057C60(); -void func_80057CE4(); -void func_80057DD0(); -void func_80057FC4(u32); - -void func_80058090(u32); -void func_800581C8(); -void func_800582CC(); -void func_80058394(); -void func_8005845C(); -void func_80058538(u32); -void func_80058640(); -void func_800586FC(); -void func_800587A4(); -void func_8005884C(); -void func_800588F4(s32); -void func_80058B58(); -void func_80058BF4(); -void func_80058C20(u32); -void func_80058DB4(u32); -void func_80058F48(); -void func_80058F78(); - -void func_80059024(); -void func_8005902C(); -void func_800590D4(); -void func_800591B4(); -void func_80059358(); -void func_80059360(); -void func_800593F0(); -void func_800593F8(); -void func_80059488(s32); -void func_800594F0(); -void func_800594F8(); -void func_80059528(); -void func_80059530(); -void func_80059560(s32); -void func_800596A8(); -void func_800596D8(); -void func_80059710(); -void func_80059718(); -void func_80059750(); -void func_80059780(); -void func_800597B8(); -void func_800597E8(); -void func_80059820(s32); -void func_800598D4(s32); -void func_8005994C(); -void func_8005995C(); -void func_80059A88(s32); -void func_80059D00(); - -void func_8005A070(); -void func_8005A14C(s32); -void func_8005A380(); -void func_8005A3C0(); -void func_8005A71C(); -void func_8005A74C(); -void func_8005A99C(); -void func_8005AA34(); -void func_8005AA4C(); -void func_8005AA6C(s32); -void func_8005AA80(); -void func_8005AA94(s32); -void func_8005AAF0(); -void func_8005AB20(); - -void func_8005B914(); - -void func_8005C360(f32); -void func_8005C6B4(s8, s16*, s16*, s16*); -void func_8005C728(); -void func_8005CB60(s32, s32); - -void func_8005D0FC(s32); -void func_8005D18C(); -void func_8005D1F4(s32); - -void func_80062B18(f32*, f32*, f32*, f32, f32, f32, u16, u16); -void func_80062F98(Player*, s16, s8, s8); - -void func_800630C0(Player*, s16, s8, s8); -void func_800631A8(Player*, s16, s8, s8); -void func_80063268(Player*, s16, s8, s8); -void func_80063408(Player*, s16, s8, s8); -void func_800635D4(Player*, s16, s8, s8); -void func_800639DC(Player*, s16, s8, s8); -void func_80063BD4(Player*, s16, s8, s8); -void func_80063D58(Player*, s16, s8, s8); - -void func_800643A8(Player*, s16, s8, s8); -void func_800647C8(Player*, s16, s8, s8); -void func_800648E4(Player*, s16, s8, s8); -void func_80064988(Player*, s16, s8, s8); -void func_800649F4(Player*, s16, s8, s8); -void func_80064B30(Player*, s16, s8, s8); -void func_80064C74(Player*, s16, s8, s8); -void func_80064DEC(Player*, s16, s8, s8); -void func_80064EA4(Player*, s16, s8, s8); -void func_80064F88(Player*, s16, s8, s8); - -void func_80065030(Player*, s16, s8, s8); -void func_800650FC(Player*, s16, s8, s8); -void func_800651F4(Player*, s16, s8, s8); -void func_800658A0(Player*, s8, s16, s8); - -void func_80066998(Player*, s8, s16, s8); - -void func_80067964(Player*, s8, s32, s8, s32); -void func_80067D3C(Player*, s8, s32, s32, f32, s32); - -void func_8006801C(Player*, s8, s32, s32, f32, s32); -void func_80068310(Player*, s8, s32, s8, s32); -void func_80068724(Player*, s8, s32, s8, s32); -void func_80068AA4(Player*, s8, s32, s8, s32); -void func_80068DA0(Player*, s8, s32, s8, s32); - -void func_8006A280(Player*, s8, s16, s8); -void func_8006AFD0(Player*, s16, s8, s8); - -void func_8006B87C(Player*, s8); -void func_8006B974(s32, s8, s8); -void func_8006B9CC(Player*, s8); -void func_8006BA94(Player*, s8, s8); - -void func_8006C6AC(Player*, s16, s8, s8); -void func_8006C9B8(Player*, s16, s8, s8); -void func_8006CEC0(Player*, s16, s8, s8); - -void func_8006D194(Player*, s8, s8); -void func_8006D474(Player*, s8, s8); -void func_8006DC54(Player*, s8, s8); -void func_8006DD3C(Player*, s8, s8); - -void func_8006E058(); -void func_8006E420(Player*, s8, s8); -void func_8006E5AC(Player*, s8, s8); -void func_8006E634(Player*, s8, s8); -void func_8006E6BC(Player*, s8, s8); -void func_8006E744(Player*, s8, s8); -void func_8006E7CC(Player*, s8, s8); -void func_8006E848(Player*, s8, s8); -void func_8006E8C4(Player*, s8, s8); -void func_8006E940(Player*, s8, s8); - -extern u16 gPlayerBalloonStatus[8][3]; // D_8018D5F0 -extern s16 gPlayerBalloonCount[]; // D_8018D8C0 -extern u32 gScreenModeSelection; // D_800DC530 - -extern struct UnkStruct_800DC5EC *D_800DC5EC; -extern struct UnkStruct_800DC5EC *D_800DC5F0; -extern struct UnkStruct_800DC5EC *D_800DC5F4; -extern struct UnkStruct_800DC5EC *D_800DC5F8; - -extern u16 D_800DC5FC; - -extern f64 D_800EE648; -extern f64 D_800EE650; -extern f64 D_800EE658; -extern f64 D_800EE660; -extern f64 D_800EE668; -extern f64 D_800EE670; -extern f64 D_800EE678; -extern f32 D_800EE680; -extern f32 D_800EE684; -extern f32 D_800EE688; -extern f32 D_800EE68C; -extern f64 D_800EE690; -extern f64 D_800EE698; -extern f64 D_800EE6A0; -extern f64 D_800EE6A8; -extern f64 D_800EE6B0; -extern f64 D_800EE6B8; -extern f64 D_800EE6C0; -extern f64 D_800EE6D8; -extern f64 D_800EE6E0; -extern f64 D_800EE6E8; -extern f64 D_800EE700; -extern f64 D_800EE708; -extern f64 D_800EE710; -extern f64 D_800EE718; -extern f64 D_800EE720; -extern f64 D_800EE728; -extern f64 D_800EE730; -extern f64 D_800EE738; -extern f64 D_800EE740; -extern f64 D_800EE748; -extern f64 D_800EE750; -extern f64 D_800EE758; -extern f64 D_800EE760; -extern f64 D_800EE768; -extern f64 D_800EE770; -extern f64 D_800EE778; -extern f32 D_800EE780; -extern f64 D_800EE788; -extern f64 D_800EE790; -extern f64 D_800EE798; -extern f64 D_800EE7A0; -extern f64 D_800EE7A8; -extern f32 D_800EE7B0; -extern f64 D_800EE7B8; -extern f32 D_800EE948; -extern f32 D_800EE94C; - -extern s32 D_80164394; -extern s32 D_80164398; -extern s32 D_8016439C; -extern f32 D_801652A0[]; -extern s32 D_801655C0; -extern s32 D_801655F0; -extern s32 D_80165678; -extern s8 D_801657AE; -extern s8 D_801657D8; -extern s8 D_801657E8; - -extern s8 D_8018CAE0; - -extern s32 D_8018D120; -extern s32 D_8018D170; -extern s32 D_8018D178; -extern s32 D_8018D188; -extern s32 D_8018D190; -extern s32 D_8018D1A0; -extern s32 D_8018D1B4; -extern s32 D_8018D1D4; -extern s32 D_8018D1CC; -extern s32 D_8018D1FC; -extern s32 D_8018D204; -extern s32 D_8018D21C; -extern s32 D_8018D2A4; -extern s32 D_8018D2BC; -extern s32 D_8018D480; -extern s32 D_8018D484; - -#endif +#ifndef CODE_80057C60_H +#define CODE_80057C60_H + +#include "common_structs.h" + +void func_8001C3C4(s32); + +void func_80041D34(void); + +void func_8004E638(s32); +void func_8004E78C(s32); +void func_8004E800(s32); +void func_8004E998(s32); +void func_8004EB30(s32); +void func_8004EB38(s32); +void func_8004ED40(s32); +void func_8004EE54(s32); + +void func_8004F020(s32); +void func_8004F3E4(s32); +void func_8004FA78(s32); + +void func_80050320(void); + +void func_800514BC(void); +void func_800517C8(void); +void func_80051EBC(void); +void func_80051EF8(void); +void func_80051F9C(void); + +void func_80052044(void); +void func_80052080(void); +void func_80052C60(void); + +void func_800532A4(s32); + +void func_80054BE8(s32); + +void func_80055F48(s32); + +void func_80056160(s32); + +void func_80057C60(); +void func_80057CE4(); +void func_80057DD0(); +void func_80057FC4(u32); + +void func_80058090(u32); +void func_800581C8(); +void func_800582CC(); +void func_80058394(); +void func_8005845C(); +void func_80058538(u32); +void func_80058640(); +void func_800586FC(); +void func_800587A4(); +void func_8005884C(); +void func_800588F4(s32); +void func_80058B58(); +void func_80058BF4(); +void func_80058C20(u32); +void func_80058DB4(u32); +void func_80058F48(); +void func_80058F78(); + +void func_80059024(); +void func_8005902C(); +void func_800590D4(); +void func_800591B4(); +void func_80059358(); +void func_80059360(); +void func_800593F0(); +void func_800593F8(); +void func_80059488(s32); +void func_800594F0(); +void func_800594F8(); +void func_80059528(); +void func_80059530(); +void func_80059560(s32); +void func_800596A8(); +void func_800596D8(); +void func_80059710(); +void func_80059718(); +void func_80059750(); +void func_80059780(); +void func_800597B8(); +void func_800597E8(); +void func_80059820(s32); +void func_800598D4(s32); +void func_8005994C(); +void func_8005995C(); +void func_80059A88(s32); +void func_80059D00(); + +void func_8005A070(); +void func_8005A14C(s32); +void func_8005A380(); +void func_8005A3C0(); +void func_8005A71C(); +void func_8005A74C(); +void func_8005A99C(); +void func_8005AA34(); +void func_8005AA4C(); +void func_8005AA6C(s32); +void func_8005AA80(); +void func_8005AA94(s32); +void func_8005AAF0(); +void func_8005AB20(); + +void func_8005B914(); + +void func_8005C360(f32); +void func_8005C6B4(s8, s16*, s16*, s16*); +void func_8005C728(); +void func_8005CB60(s32, s32); + +void func_8005D0FC(s32); +void func_8005D18C(); +void func_8005D1F4(s32); + +void func_80062B18(f32*, f32*, f32*, f32, f32, f32, u16, u16); +void func_80062F98(Player*, s16, s8, s8); + +void func_800630C0(Player*, s16, s8, s8); +void func_800631A8(Player*, s16, s8, s8); +void func_80063268(Player*, s16, s8, s8); +void func_80063408(Player*, s16, s8, s8); +void func_800635D4(Player*, s16, s8, s8); +void func_800639DC(Player*, s16, s8, s8); +void func_80063BD4(Player*, s16, s8, s8); +void func_80063D58(Player*, s16, s8, s8); + +void func_800643A8(Player*, s16, s8, s8); +void func_800647C8(Player*, s16, s8, s8); +void func_800648E4(Player*, s16, s8, s8); +void func_80064988(Player*, s16, s8, s8); +void func_800649F4(Player*, s16, s8, s8); +void func_80064B30(Player*, s16, s8, s8); +void func_80064C74(Player*, s16, s8, s8); +void func_80064DEC(Player*, s16, s8, s8); +void func_80064EA4(Player*, s16, s8, s8); +void func_80064F88(Player*, s16, s8, s8); + +void func_80065030(Player*, s16, s8, s8); +void func_800650FC(Player*, s16, s8, s8); +void func_800651F4(Player*, s16, s8, s8); +void func_800658A0(Player*, s8, s16, s8); + +void func_80066998(Player*, s8, s16, s8); + +void func_80067964(Player*, s8, s32, s8, s32); +void func_80067D3C(Player*, s8, s32, s32, f32, s32); + +void func_8006801C(Player*, s8, s32, s32, f32, s32); +void func_80068310(Player*, s8, s32, s8, s32); +void func_80068724(Player*, s8, s32, s8, s32); +void func_80068AA4(Player*, s8, s32, s8, s32); +void func_80068DA0(Player*, s8, s32, s8, s32); + +void func_8006A280(Player*, s8, s16, s8); +void func_8006A7C0(Player*, f32, f32, s8, s8); +void func_8006AFD0(Player*, s16, s8, s8); + +void func_8006B87C(Player*, s8); +void func_8006B974(s32, s8, s8); +void func_8006B9CC(Player*, s8); +void func_8006BA94(Player*, s8, s8); + +void func_8006C6AC(Player*, s16, s8, s8); +void func_8006C9B8(Player*, s16, s8, s8); +void func_8006CEC0(Player*, s16, s8, s8); + +void func_8006D194(Player*, s8, s8); +void func_8006D474(Player*, s8, s8); +void func_8006DC54(Player*, s8, s8); +void func_8006DD3C(Player*, s8, s8); + +void func_8006E058(); +void func_8006E420(Player*, s8, s8); +void func_8006E5AC(Player*, s8, s8); +void func_8006E634(Player*, s8, s8); +void func_8006E6BC(Player*, s8, s8); +void func_8006E744(Player*, s8, s8); +void func_8006E7CC(Player*, s8, s8); +void func_8006E848(Player*, s8, s8); +void func_8006E8C4(Player*, s8, s8); +void func_8006E940(Player*, s8, s8); + +void func_800744CC(void); +void func_80077640(void); + +void func_80078C70(s32); + +void func_8007A948(s32); +void func_8007AA44(s32); + +void func_8007BB9C(s32); + +void func_8007C2F8(s32); + +void func_80081210(void); + +void func_80086604(void); +void func_80086D80(void); + +void func_800892E0(s32); + +void func_8008C1D8(s32*); +void func_8008C1E0(s32*, s32*); +void func_8008C204(void); + +void func_802A3730(struct UnkStruct_800DC5EC*); + + + +extern u16 gPlayerBalloonStatus[8][3]; // D_8018D5F0 +extern s16 gPlayerBalloonCount[]; // D_8018D8C0 +extern u32 gScreenModeSelection; // D_800DC530 + +extern struct UnkStruct_800DC5EC *D_800DC5EC; +extern struct UnkStruct_800DC5EC *D_800DC5F0; +extern struct UnkStruct_800DC5EC *D_800DC5F4; +extern struct UnkStruct_800DC5EC *D_800DC5F8; + +extern u16 D_800DC5FC; +extern f64 D_800EE5A8; +extern f64 D_800EE5B0; +extern f32 D_800EE5FC; +extern f32 D_800EE600; +extern f32 D_800EE604; +extern f32 D_800EE608; +extern f32 D_800EE60C; +extern f64 D_800EE648; +extern f64 D_800EE650; +extern f64 D_800EE658; +extern f64 D_800EE660; +extern f64 D_800EE668; +extern f64 D_800EE670; +extern f64 D_800EE678; +extern f32 D_800EE680; +extern f32 D_800EE684; +extern f32 D_800EE688; +extern f32 D_800EE68C; +extern f64 D_800EE690; +extern f64 D_800EE698; +extern f64 D_800EE6A0; +extern f64 D_800EE6A8; +extern f64 D_800EE6B0; +extern f64 D_800EE6B8; +extern f64 D_800EE6C0; +extern f64 D_800EE6C8; +extern f64 D_800EE6D0; +extern f64 D_800EE6D8; +extern f64 D_800EE6E0; +extern f64 D_800EE6E8; +extern f64 D_800EE700; +extern f64 D_800EE708; +extern f64 D_800EE710; +extern f64 D_800EE718; +extern f64 D_800EE720; +extern f64 D_800EE728; +extern f64 D_800EE730; +extern f64 D_800EE738; +extern f64 D_800EE740; +extern f64 D_800EE748; +extern f64 D_800EE750; +extern f64 D_800EE758; +extern f64 D_800EE760; +extern f64 D_800EE768; +extern f64 D_800EE770; +extern f64 D_800EE778; +extern f32 D_800EE780; +extern f64 D_800EE788; +extern f64 D_800EE790; +extern f64 D_800EE798; +extern f64 D_800EE7A0; +extern f64 D_800EE7A8; +extern f32 D_800EE7B0; +extern f64 D_800EE7B8; +extern f32 D_800EE948; +extern f32 D_800EE94C; + +extern s32 D_80164394; +extern s32 D_80164398; +extern s32 D_8016439C; +extern f32 D_801652A0[]; +extern s32 D_801655C0; +extern s32 D_801655F0; +extern s32 D_80165678; +extern s8 D_801657AE; +extern s8 D_801657D8; +extern s8 D_801657E8; + +extern s8 D_8018CAE0; + +extern s32 D_8018D120; +extern s32 D_8018D170; +extern s32 D_8018D178; +extern s32 D_8018D188; +extern s32 D_8018D190; +extern s32 D_8018D1A0; +extern s32 D_8018D1B4; +extern s32 D_8018D1D4; +extern s32 D_8018D1CC; +extern s32 D_8018D1FC; +extern s32 D_8018D204; +extern s32 D_8018D21C; +extern s32 D_8018D2A4; +extern s32 D_8018D2BC; +extern s32 D_8018D480; +extern s32 D_8018D484; + +#endif