diff --git a/asm/non_matchings/code_80057C60/func_8006C9B8.s b/asm/non_matchings/code_80057C60/func_8006C9B8.s deleted file mode 100644 index d9ffd27ff..000000000 --- a/asm/non_matchings/code_80057C60/func_8006C9B8.s +++ /dev/null @@ -1,359 +0,0 @@ -.section .late_rodata - -glabel jpt_800EE890 -.word L8006CA50, L8006CA74, L8006CA98, L8006CABC -.word L8006CAE0, L8006CB04, L8006CB28, L8006CB4C -.word L8006CB70 - -.section .text - -glabel func_8006C9B8 -/* 06D5B8 8006C9B8 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 06D5BC 8006C9BC AFB10020 */ sw $s1, 0x20($sp) -/* 06D5C0 8006C9C0 AFB0001C */ sw $s0, 0x1c($sp) -/* 06D5C4 8006C9C4 AFA50034 */ sw $a1, 0x34($sp) -/* 06D5C8 8006C9C8 00057400 */ sll $t6, $a1, 0x10 -/* 06D5CC 8006C9CC 000E2C03 */ sra $a1, $t6, 0x10 -/* 06D5D0 8006C9D0 00068600 */ sll $s0, $a2, 0x18 -/* 06D5D4 8006C9D4 00078E00 */ sll $s1, $a3, 0x18 -/* 06D5D8 8006C9D8 0011CE03 */ sra $t9, $s1, 0x18 -/* 06D5DC 8006C9DC 0010C603 */ sra $t8, $s0, 0x18 -/* 06D5E0 8006C9E0 24A2FFFF */ addiu $v0, $a1, -1 -/* 06D5E4 8006C9E4 03008025 */ move $s0, $t8 -/* 06D5E8 8006C9E8 03208825 */ move $s1, $t9 -/* 06D5EC 8006C9EC AFBF0024 */ sw $ra, 0x24($sp) -/* 06D5F0 8006C9F0 AFA60038 */ sw $a2, 0x38($sp) -/* 06D5F4 8006C9F4 AFA7003C */ sw $a3, 0x3c($sp) -/* 06D5F8 8006C9F8 04410003 */ bgez $v0, .L8006CA08 -/* 06D5FC 8006C9FC AFA20028 */ sw $v0, 0x28($sp) -/* 06D600 8006CA00 24080009 */ li $t0, 9 -/* 06D604 8006CA04 AFA80028 */ sw $t0, 0x28($sp) -.L8006CA08: -/* 06D608 8006CA08 000548C0 */ sll $t1, $a1, 3 -/* 06D60C 8006CA0C 01254821 */ addu $t1, $t1, $a1 -/* 06D610 8006CA10 000948C0 */ sll $t1, $t1, 3 -/* 06D614 8006CA14 00891021 */ addu $v0, $a0, $t1 -/* 06D618 8006CA18 844A0AE4 */ lh $t2, 0xae4($v0) -/* 06D61C 8006CA1C 24010001 */ li $at, 1 -/* 06D620 8006CA20 5541005D */ bnel $t2, $at, .L8006CB98 -/* 06D624 8006CA24 84870044 */ lh $a3, 0x44($a0) -/* 06D628 8006CA28 944B0ADA */ lhu $t3, 0xada($v0) -/* 06D62C 8006CA2C 256CFFFF */ addiu $t4, $t3, -1 -/* 06D630 8006CA30 2D810009 */ sltiu $at, $t4, 9 -/* 06D634 8006CA34 1020011D */ beqz $at, .L8006CEAC -/* 06D638 8006CA38 000C6080 */ sll $t4, $t4, 2 -/* 06D63C 8006CA3C 3C01800F */ lui $at, %hi(jpt_800EE890) -/* 06D640 8006CA40 002C0821 */ addu $at, $at, $t4 -/* 06D644 8006CA44 8C2CE890 */ lw $t4, %lo(jpt_800EE890)($at) -/* 06D648 8006CA48 01800008 */ jr $t4 -/* 06D64C 8006CA4C 00000000 */ nop -glabel L8006CA50 -/* 06D650 8006CA50 00103600 */ sll $a2, $s0, 0x18 -/* 06D654 8006CA54 00113E00 */ sll $a3, $s1, 0x18 -/* 06D658 8006CA58 00077603 */ sra $t6, $a3, 0x18 -/* 06D65C 8006CA5C 00066E03 */ sra $t5, $a2, 0x18 -/* 06D660 8006CA60 01A03025 */ move $a2, $t5 -/* 06D664 8006CA64 0C01913A */ jal func_800644E8 -/* 06D668 8006CA68 01C03825 */ move $a3, $t6 -/* 06D66C 8006CA6C 10000110 */ b .L8006CEB0 -/* 06D670 8006CA70 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CA74 -/* 06D674 8006CA74 00103600 */ sll $a2, $s0, 0x18 -/* 06D678 8006CA78 00113E00 */ sll $a3, $s1, 0x18 -/* 06D67C 8006CA7C 0007C603 */ sra $t8, $a3, 0x18 -/* 06D680 8006CA80 00067E03 */ sra $t7, $a2, 0x18 -/* 06D684 8006CA84 01E03025 */ move $a2, $t7 -/* 06D688 8006CA88 0C01927D */ jal func_800649F4 -/* 06D68C 8006CA8C 03003825 */ move $a3, $t8 -/* 06D690 8006CA90 10000107 */ b .L8006CEB0 -/* 06D694 8006CA94 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CA98 -/* 06D698 8006CA98 00103600 */ sll $a2, $s0, 0x18 -/* 06D69C 8006CA9C 00113E00 */ sll $a3, $s1, 0x18 -/* 06D6A0 8006CAA0 00074603 */ sra $t0, $a3, 0x18 -/* 06D6A4 8006CAA4 0006CE03 */ sra $t9, $a2, 0x18 -/* 06D6A8 8006CAA8 03203025 */ move $a2, $t9 -/* 06D6AC 8006CAAC 0C01931D */ jal func_80064C74 -/* 06D6B0 8006CAB0 01003825 */ move $a3, $t0 -/* 06D6B4 8006CAB4 100000FE */ b .L8006CEB0 -/* 06D6B8 8006CAB8 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CABC -/* 06D6BC 8006CABC 00103600 */ sll $a2, $s0, 0x18 -/* 06D6C0 8006CAC0 00113E00 */ sll $a3, $s1, 0x18 -/* 06D6C4 8006CAC4 00075603 */ sra $t2, $a3, 0x18 -/* 06D6C8 8006CAC8 00064E03 */ sra $t1, $a2, 0x18 -/* 06D6CC 8006CACC 01203025 */ move $a2, $t1 -/* 06D6D0 8006CAD0 0C0191F2 */ jal func_800647C8 -/* 06D6D4 8006CAD4 01403825 */ move $a3, $t2 -/* 06D6D8 8006CAD8 100000F5 */ b .L8006CEB0 -/* 06D6DC 8006CADC 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CAE0 -/* 06D6E0 8006CAE0 00103600 */ sll $a2, $s0, 0x18 -/* 06D6E4 8006CAE4 00113E00 */ sll $a3, $s1, 0x18 -/* 06D6E8 8006CAE8 00076603 */ sra $t4, $a3, 0x18 -/* 06D6EC 8006CAEC 00065E03 */ sra $t3, $a2, 0x18 -/* 06D6F0 8006CAF0 01603025 */ move $a2, $t3 -/* 06D6F4 8006CAF4 0C0192CC */ jal func_80064B30 -/* 06D6F8 8006CAF8 01803825 */ move $a3, $t4 -/* 06D6FC 8006CAFC 100000EC */ b .L8006CEB0 -/* 06D700 8006CB00 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CB04 -/* 06D704 8006CB04 00103600 */ sll $a2, $s0, 0x18 -/* 06D708 8006CB08 00113E00 */ sll $a3, $s1, 0x18 -/* 06D70C 8006CB0C 00077603 */ sra $t6, $a3, 0x18 -/* 06D710 8006CB10 00066E03 */ sra $t5, $a2, 0x18 -/* 06D714 8006CB14 01A03025 */ move $a2, $t5 -/* 06D718 8006CB18 0C019239 */ jal func_800648E4 -/* 06D71C 8006CB1C 01C03825 */ move $a3, $t6 -/* 06D720 8006CB20 100000E3 */ b .L8006CEB0 -/* 06D724 8006CB24 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CB28 -/* 06D728 8006CB28 00103600 */ sll $a2, $s0, 0x18 -/* 06D72C 8006CB2C 00113E00 */ sll $a3, $s1, 0x18 -/* 06D730 8006CB30 0007C603 */ sra $t8, $a3, 0x18 -/* 06D734 8006CB34 00067E03 */ sra $t7, $a2, 0x18 -/* 06D738 8006CB38 01E03025 */ move $a2, $t7 -/* 06D73C 8006CB3C 0C019262 */ jal func_80064988 -/* 06D740 8006CB40 03003825 */ move $a3, $t8 -/* 06D744 8006CB44 100000DA */ b .L8006CEB0 -/* 06D748 8006CB48 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CB4C -/* 06D74C 8006CB4C 00103600 */ sll $a2, $s0, 0x18 -/* 06D750 8006CB50 00113E00 */ sll $a3, $s1, 0x18 -/* 06D754 8006CB54 00074603 */ sra $t0, $a3, 0x18 -/* 06D758 8006CB58 0006CE03 */ sra $t9, $a2, 0x18 -/* 06D75C 8006CB5C 03203025 */ move $a2, $t9 -/* 06D760 8006CB60 0C01931D */ jal func_80064C74 -/* 06D764 8006CB64 01003825 */ move $a3, $t0 -/* 06D768 8006CB68 100000D1 */ b .L8006CEB0 -/* 06D76C 8006CB6C 8FBF0024 */ lw $ra, 0x24($sp) -glabel L8006CB70 -/* 06D770 8006CB70 00103600 */ sll $a2, $s0, 0x18 -/* 06D774 8006CB74 00113E00 */ sll $a3, $s1, 0x18 -/* 06D778 8006CB78 00075603 */ sra $t2, $a3, 0x18 -/* 06D77C 8006CB7C 00064E03 */ sra $t1, $a2, 0x18 -/* 06D780 8006CB80 01203025 */ move $a2, $t1 -/* 06D784 8006CB84 0C019199 */ jal func_80064664 -/* 06D788 8006CB88 01403825 */ move $a3, $t2 -/* 06D78C 8006CB8C 100000C8 */ b .L8006CEB0 -/* 06D790 8006CB90 8FBF0024 */ lw $ra, 0x24($sp) -/* 06D794 8006CB94 84870044 */ lh $a3, 0x44($a0) -.L8006CB98: -/* 06D798 8006CB98 8FA60028 */ lw $a2, 0x28($sp) -/* 06D79C 8006CB9C 30EB1000 */ andi $t3, $a3, 0x1000 -/* 06D7A0 8006CBA0 5160000D */ beql $t3, $zero, .L8006CBD8 -/* 06D7A4 8006CBA4 848600CA */ lh $a2, 0xca($a0) -/* 06D7A8 8006CBA8 00103E00 */ sll $a3, $s0, 0x18 -/* 06D7AC 8006CBAC 00076603 */ sra $t4, $a3, 0x18 -/* 06D7B0 8006CBB0 01803825 */ move $a3, $t4 -/* 06D7B4 8006CBB4 AFB10010 */ sw $s1, 0x10($sp) -/* 06D7B8 8006CBB8 0C01850C */ jal func_80061430 -/* 06D7BC 8006CBBC AFA40030 */ sw $a0, 0x30($sp) -/* 06D7C0 8006CBC0 8FA40030 */ lw $a0, 0x30($sp) -/* 06D7C4 8006CBC4 848D0044 */ lh $t5, 0x44($a0) -/* 06D7C8 8006CBC8 31AEFEFF */ andi $t6, $t5, 0xfeff -/* 06D7CC 8006CBCC 100000B7 */ b .L8006CEAC -/* 06D7D0 8006CBD0 A48E0044 */ sh $t6, 0x44($a0) -/* 06D7D4 8006CBD4 848600CA */ lh $a2, 0xca($a0) -.L8006CBD8: -/* 06D7D8 8006CBD8 24011000 */ li $at, 4096 -/* 06D7DC 8006CBDC 30CF1000 */ andi $t7, $a2, 0x1000 -/* 06D7E0 8006CBE0 51E10011 */ beql $t7, $at, .L8006CC28 -/* 06D7E4 8006CBE4 00103E00 */ sll $a3, $s0, 0x18 -/* 06D7E8 8006CBE8 848200E0 */ lh $v0, 0xe0($a0) -/* 06D7EC 8006CBEC 28410002 */ slti $at, $v0, 2 -/* 06D7F0 8006CBF0 50200005 */ beql $at, $zero, .L8006CC08 -/* 06D7F4 8006CBF4 28410002 */ slti $at, $v0, 2 -/* 06D7F8 8006CBF8 8C9800BC */ lw $t8, 0xbc($a0) -/* 06D7FC 8006CBFC 0018C9C0 */ sll $t9, $t8, 7 -/* 06D800 8006CC00 07200008 */ bltz $t9, .L8006CC24 -/* 06D804 8006CC04 28410002 */ slti $at, $v0, 2 -.L8006CC08: -/* 06D808 8006CC08 10200003 */ beqz $at, .L8006CC18 -/* 06D80C 8006CC0C 8C8300BC */ lw $v1, 0xbc($a0) -/* 06D810 8006CC10 00034180 */ sll $t0, $v1, 6 -/* 06D814 8006CC14 05000003 */ bltz $t0, .L8006CC24 -.L8006CC18: -/* 06D818 8006CC18 30690400 */ andi $t1, $v1, 0x400 -/* 06D81C 8006CC1C 11200010 */ beqz $t1, .L8006CC60 -/* 06D820 8006CC20 30CF2000 */ andi $t7, $a2, 0x2000 -.L8006CC24: -/* 06D824 8006CC24 00103E00 */ sll $a3, $s0, 0x18 -.L8006CC28: -/* 06D828 8006CC28 00075603 */ sra $t2, $a3, 0x18 -/* 06D82C 8006CC2C 01403825 */ move $a3, $t2 -/* 06D830 8006CC30 8FA60028 */ lw $a2, 0x28($sp) -/* 06D834 8006CC34 AFB10010 */ sw $s1, 0x10($sp) -/* 06D838 8006CC38 0C018667 */ jal func_8006199C -/* 06D83C 8006CC3C AFA40030 */ sw $a0, 0x30($sp) -/* 06D840 8006CC40 8FA40030 */ lw $a0, 0x30($sp) -/* 06D844 8006CC44 948B0046 */ lhu $t3, 0x46($a0) -/* 06D848 8006CC48 848D0044 */ lh $t5, 0x44($a0) -/* 06D84C 8006CC4C 316CFFF7 */ andi $t4, $t3, 0xfff7 -/* 06D850 8006CC50 31AEFEFF */ andi $t6, $t5, 0xfeff -/* 06D854 8006CC54 A48C0046 */ sh $t4, 0x46($a0) -/* 06D858 8006CC58 10000094 */ b .L8006CEAC -/* 06D85C 8006CC5C A48E0044 */ sh $t6, 0x44($a0) -.L8006CC60: -/* 06D860 8006CC60 24012000 */ li $at, 8192 -/* 06D864 8006CC64 15E10010 */ bne $t7, $at, .L8006CCA8 -/* 06D868 8006CC68 306B0200 */ andi $t3, $v1, 0x200 -/* 06D86C 8006CC6C 00103E00 */ sll $a3, $s0, 0x18 -/* 06D870 8006CC70 0007C603 */ sra $t8, $a3, 0x18 -/* 06D874 8006CC74 03003825 */ move $a3, $t8 -/* 06D878 8006CC78 8FA60028 */ lw $a2, 0x28($sp) -/* 06D87C 8006CC7C AFB10010 */ sw $s1, 0x10($sp) -/* 06D880 8006CC80 0C01868D */ jal func_80061A34 -/* 06D884 8006CC84 AFA40030 */ sw $a0, 0x30($sp) -/* 06D888 8006CC88 8FA40030 */ lw $a0, 0x30($sp) -/* 06D88C 8006CC8C 94990046 */ lhu $t9, 0x46($a0) -/* 06D890 8006CC90 84890044 */ lh $t1, 0x44($a0) -/* 06D894 8006CC94 3328FFF7 */ andi $t0, $t9, 0xfff7 -/* 06D898 8006CC98 312AFEFF */ andi $t2, $t1, 0xfeff -/* 06D89C 8006CC9C A4880046 */ sh $t0, 0x46($a0) -/* 06D8A0 8006CCA0 10000082 */ b .L8006CEAC -/* 06D8A4 8006CCA4 A48A0044 */ sh $t2, 0x44($a0) -.L8006CCA8: -/* 06D8A8 8006CCA8 1160001C */ beqz $t3, .L8006CD1C -/* 06D8AC 8006CCAC 3C01800E */ lui $at, %hi(gCourseTimer) # $at, 0x800e -/* 06D8B0 8006CCB0 C424C598 */ lwc1 $f4, %lo(gCourseTimer)($at) -/* 06D8B4 8006CCB4 00107080 */ sll $t6, $s0, 2 -/* 06D8B8 8006CCB8 3C0F8019 */ lui $t7, %hi(D_8018D930) -/* 06D8BC 8006CCBC 4600218D */ trunc.w.s $f6, $f4 -/* 06D8C0 8006CCC0 01EE7821 */ addu $t7, $t7, $t6 -/* 06D8C4 8006CCC4 8DEFD930 */ lw $t7, %lo(D_8018D930)($t7) -/* 06D8C8 8006CCC8 8FA60028 */ lw $a2, 0x28($sp) -/* 06D8CC 8006CCCC 440D3000 */ mfc1 $t5, $f6 -/* 06D8D0 8006CCD0 00000000 */ nop -/* 06D8D4 8006CCD4 01AFC023 */ subu $t8, $t5, $t7 -/* 06D8D8 8006CCD8 2B010009 */ slti $at, $t8, 9 -/* 06D8DC 8006CCDC 50200010 */ beql $at, $zero, .L8006CD20 -/* 06D8E0 8006CCE0 94820046 */ lhu $v0, 0x46($a0) -/* 06D8E4 8006CCE4 00103E00 */ sll $a3, $s0, 0x18 -/* 06D8E8 8006CCE8 0007CE03 */ sra $t9, $a3, 0x18 -/* 06D8EC 8006CCEC 03203825 */ move $a3, $t9 -/* 06D8F0 8006CCF0 AFB10010 */ sw $s1, 0x10($sp) -/* 06D8F4 8006CCF4 0C01856B */ jal func_800615AC -/* 06D8F8 8006CCF8 AFA40030 */ sw $a0, 0x30($sp) -/* 06D8FC 8006CCFC 8FA40030 */ lw $a0, 0x30($sp) -/* 06D900 8006CD00 94880046 */ lhu $t0, 0x46($a0) -/* 06D904 8006CD04 848A0044 */ lh $t2, 0x44($a0) -/* 06D908 8006CD08 3109FFF7 */ andi $t1, $t0, 0xfff7 -/* 06D90C 8006CD0C 314BFEFF */ andi $t3, $t2, 0xfeff -/* 06D910 8006CD10 A4890046 */ sh $t1, 0x46($a0) -/* 06D914 8006CD14 10000065 */ b .L8006CEAC -/* 06D918 8006CD18 A48B0044 */ sh $t3, 0x44($a0) -.L8006CD1C: -/* 06D91C 8006CD1C 94820046 */ lhu $v0, 0x46($a0) -.L8006CD20: -/* 06D920 8006CD20 24010008 */ li $at, 8 -/* 06D924 8006CD24 8FA60028 */ lw $a2, 0x28($sp) -/* 06D928 8006CD28 304C0008 */ andi $t4, $v0, 8 -/* 06D92C 8006CD2C 1581000C */ bne $t4, $at, .L8006CD60 -/* 06D930 8006CD30 30580020 */ andi $t8, $v0, 0x20 -/* 06D934 8006CD34 00103E00 */ sll $a3, $s0, 0x18 -/* 06D938 8006CD38 00077603 */ sra $t6, $a3, 0x18 -/* 06D93C 8006CD3C 01C03825 */ move $a3, $t6 -/* 06D940 8006CD40 AFB10010 */ sw $s1, 0x10($sp) -/* 06D944 8006CD44 0C0184BE */ jal func_800612F8 -/* 06D948 8006CD48 AFA40030 */ sw $a0, 0x30($sp) -/* 06D94C 8006CD4C 8FA40030 */ lw $a0, 0x30($sp) -/* 06D950 8006CD50 848D0044 */ lh $t5, 0x44($a0) -/* 06D954 8006CD54 31AFFEFF */ andi $t7, $t5, 0xfeff -/* 06D958 8006CD58 10000054 */ b .L8006CEAC -/* 06D95C 8006CD5C A48F0044 */ sh $t7, 0x44($a0) -.L8006CD60: -/* 06D960 8006CD60 24010020 */ li $at, 32 -/* 06D964 8006CD64 1701001D */ bne $t8, $at, .L8006CDDC -/* 06D968 8006CD68 306C2000 */ andi $t4, $v1, 0x2000 -/* 06D96C 8006CD6C 3C014190 */ li $at, 0x41900000 # 18.000000 -/* 06D970 8006CD70 44815000 */ mtc1 $at, $f10 -/* 06D974 8006CD74 C4880094 */ lwc1 $f8, 0x94($a0) -/* 06D978 8006CD78 3C014358 */ li $at, 0x43580000 # 216.000000 -/* 06D97C 8006CD7C 44819000 */ mtc1 $at, $f18 -/* 06D980 8006CD80 460A4403 */ div.s $f16, $f8, $f10 -/* 06D984 8006CD84 3C0141A0 */ li $at, 0x41A00000 # 20.000000 -/* 06D988 8006CD88 44813000 */ mtc1 $at, $f6 -/* 06D98C 8006CD8C 8FA60028 */ lw $a2, 0x28($sp) -/* 06D990 8006CD90 46128102 */ mul.s $f4, $f16, $f18 -/* 06D994 8006CD94 4604303E */ c.le.s $f6, $f4 -/* 06D998 8006CD98 00000000 */ nop -/* 06D99C 8006CD9C 4500000F */ bc1f .L8006CDDC -/* 06D9A0 8006CDA0 00000000 */ nop -/* 06D9A4 8006CDA4 00103E00 */ sll $a3, $s0, 0x18 -/* 06D9A8 8006CDA8 0007CE03 */ sra $t9, $a3, 0x18 -/* 06D9AC 8006CDAC 03203825 */ move $a3, $t9 -/* 06D9B0 8006CDB0 AFB10010 */ sw $s1, 0x10($sp) -/* 06D9B4 8006CDB4 0C018753 */ jal func_80061D4C -/* 06D9B8 8006CDB8 AFA40030 */ sw $a0, 0x30($sp) -/* 06D9BC 8006CDBC 8FA40030 */ lw $a0, 0x30($sp) -/* 06D9C0 8006CDC0 94880046 */ lhu $t0, 0x46($a0) -/* 06D9C4 8006CDC4 848A0044 */ lh $t2, 0x44($a0) -/* 06D9C8 8006CDC8 3109FFF7 */ andi $t1, $t0, 0xfff7 -/* 06D9CC 8006CDCC 314BFEFF */ andi $t3, $t2, 0xfeff -/* 06D9D0 8006CDD0 A4890046 */ sh $t1, 0x46($a0) -/* 06D9D4 8006CDD4 10000035 */ b .L8006CEAC -/* 06D9D8 8006CDD8 A48B0044 */ sh $t3, 0x44($a0) -.L8006CDDC: -/* 06D9DC 8006CDDC 1180000D */ beqz $t4, .L8006CE14 -/* 06D9E0 8006CDE0 0003C280 */ sll $t8, $v1, 0xa -/* 06D9E4 8006CDE4 948E0000 */ lhu $t6, ($a0) -/* 06D9E8 8006CDE8 8FA60028 */ lw $a2, 0x28($sp) -/* 06D9EC 8006CDEC 31CD4000 */ andi $t5, $t6, 0x4000 -/* 06D9F0 8006CDF0 11A00008 */ beqz $t5, .L8006CE14 -/* 06D9F4 8006CDF4 00000000 */ nop -/* 06D9F8 8006CDF8 00103E00 */ sll $a3, $s0, 0x18 -/* 06D9FC 8006CDFC 00077E03 */ sra $t7, $a3, 0x18 -/* 06DA00 8006CE00 01E03825 */ move $a3, $t7 -/* 06DA04 8006CE04 0C01886F */ jal func_800621BC -/* 06DA08 8006CE08 AFB10010 */ sw $s1, 0x10($sp) -/* 06DA0C 8006CE0C 10000028 */ b .L8006CEB0 -/* 06DA10 8006CE10 8FBF0024 */ lw $ra, 0x24($sp) -.L8006CE14: -/* 06DA14 8006CE14 07000003 */ bltz $t8, .L8006CE24 -/* 06DA18 8006CE18 0003CAC0 */ sll $t9, $v1, 0xb -/* 06DA1C 8006CE1C 07230016 */ bgezl $t9, .L8006CE78 -/* 06DA20 8006CE20 30EF0100 */ andi $t7, $a3, 0x100 -.L8006CE24: -/* 06DA24 8006CE24 94880000 */ lhu $t0, ($a0) -/* 06DA28 8006CE28 24014000 */ li $at, 16384 -/* 06DA2C 8006CE2C 8FA60028 */ lw $a2, 0x28($sp) -/* 06DA30 8006CE30 31094000 */ andi $t1, $t0, 0x4000 -/* 06DA34 8006CE34 55210010 */ bnel $t1, $at, .L8006CE78 -/* 06DA38 8006CE38 30EF0100 */ andi $t7, $a3, 0x100 -/* 06DA3C 8006CE3C 00103E00 */ sll $a3, $s0, 0x18 -/* 06DA40 8006CE40 00075603 */ sra $t2, $a3, 0x18 -/* 06DA44 8006CE44 01403825 */ move $a3, $t2 -/* 06DA48 8006CE48 AFB10010 */ sw $s1, 0x10($sp) -/* 06DA4C 8006CE4C 0C0187BD */ jal func_80061EF4 -/* 06DA50 8006CE50 AFA40030 */ sw $a0, 0x30($sp) -/* 06DA54 8006CE54 8FA40030 */ lw $a0, 0x30($sp) -/* 06DA58 8006CE58 948B0046 */ lhu $t3, 0x46($a0) -/* 06DA5C 8006CE5C 848E0044 */ lh $t6, 0x44($a0) -/* 06DA60 8006CE60 316CFFF7 */ andi $t4, $t3, 0xfff7 -/* 06DA64 8006CE64 31CDFEFF */ andi $t5, $t6, 0xfeff -/* 06DA68 8006CE68 A48C0046 */ sh $t4, 0x46($a0) -/* 06DA6C 8006CE6C 1000000F */ b .L8006CEAC -/* 06DA70 8006CE70 A48D0044 */ sh $t5, 0x44($a0) -/* 06DA74 8006CE74 30EF0100 */ andi $t7, $a3, 0x100 -.L8006CE78: -/* 06DA78 8006CE78 24010100 */ li $at, 256 -/* 06DA7C 8006CE7C 15E1000B */ bne $t7, $at, .L8006CEAC -/* 06DA80 8006CE80 8FA60028 */ lw $a2, 0x28($sp) -/* 06DA84 8006CE84 00103E00 */ sll $a3, $s0, 0x18 -/* 06DA88 8006CE88 0007C603 */ sra $t8, $a3, 0x18 -/* 06DA8C 8006CE8C 03003825 */ move $a3, $t8 -/* 06DA90 8006CE90 AFB10010 */ sw $s1, 0x10($sp) -/* 06DA94 8006CE94 0C018936 */ jal func_800624D8 -/* 06DA98 8006CE98 AFA40030 */ sw $a0, 0x30($sp) -/* 06DA9C 8006CE9C 8FA40030 */ lw $a0, 0x30($sp) -/* 06DAA0 8006CEA0 94990046 */ lhu $t9, 0x46($a0) -/* 06DAA4 8006CEA4 3328FFF7 */ andi $t0, $t9, 0xfff7 -/* 06DAA8 8006CEA8 A4880046 */ sh $t0, 0x46($a0) -.L8006CEAC: -/* 06DAAC 8006CEAC 8FBF0024 */ lw $ra, 0x24($sp) -.L8006CEB0: -/* 06DAB0 8006CEB0 8FB0001C */ lw $s0, 0x1c($sp) -/* 06DAB4 8006CEB4 8FB10020 */ lw $s1, 0x20($sp) -/* 06DAB8 8006CEB8 03E00008 */ jr $ra -/* 06DABC 8006CEBC 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/non_matchings/code_80057C60/func_8006CEC0.s b/asm/non_matchings/code_80057C60/func_8006CEC0.s deleted file mode 100644 index 304234e3b..000000000 --- a/asm/non_matchings/code_80057C60/func_8006CEC0.s +++ /dev/null @@ -1,207 +0,0 @@ -.section .late_rodata - -glabel jpt_800EE8B4 -.word L8006CF38, L8006D184, L8006CF4C, L8006D184 -.word L8006CF60, L8006CF74, L8006CF88 - -.section .text - -glabel func_8006CEC0 -/* 06DAC0 8006CEC0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 06DAC4 8006CEC4 AFA5002C */ sw $a1, 0x2c($sp) -/* 06DAC8 8006CEC8 00057400 */ sll $t6, $a1, 0x10 -/* 06DACC 8006CECC 000E2C03 */ sra $a1, $t6, 0x10 -/* 06DAD0 8006CED0 24A2FFFF */ addiu $v0, $a1, -1 -/* 06DAD4 8006CED4 AFBF001C */ sw $ra, 0x1c($sp) -/* 06DAD8 8006CED8 AFA60030 */ sw $a2, 0x30($sp) -/* 06DADC 8006CEDC AFA70034 */ sw $a3, 0x34($sp) -/* 06DAE0 8006CEE0 04410003 */ bgez $v0, .L8006CEF0 -/* 06DAE4 8006CEE4 AFA20020 */ sw $v0, 0x20($sp) -/* 06DAE8 8006CEE8 24180009 */ li $t8, 9 -/* 06DAEC 8006CEEC AFB80020 */ sw $t8, 0x20($sp) -.L8006CEF0: -/* 06DAF0 8006CEF0 0005C8C0 */ sll $t9, $a1, 3 -/* 06DAF4 8006CEF4 0325C821 */ addu $t9, $t9, $a1 -/* 06DAF8 8006CEF8 0019C8C0 */ sll $t9, $t9, 3 -/* 06DAFC 8006CEFC 00991021 */ addu $v0, $a0, $t9 -/* 06DB00 8006CF00 84480274 */ lh $t0, 0x274($v0) -/* 06DB04 8006CF04 24070001 */ li $a3, 1 -/* 06DB08 8006CF08 54E80025 */ bnel $a3, $t0, .L8006CFA0 -/* 06DB0C 8006CF0C 848B0044 */ lh $t3, 0x44($a0) -/* 06DB10 8006CF10 9449026A */ lhu $t1, 0x26a($v0) -/* 06DB14 8006CF14 252AFFFF */ addiu $t2, $t1, -1 -/* 06DB18 8006CF18 2D410007 */ sltiu $at, $t2, 7 -/* 06DB1C 8006CF1C 10200099 */ beqz $at, .L8006D184 -/* 06DB20 8006CF20 000A5080 */ sll $t2, $t2, 2 -/* 06DB24 8006CF24 3C01800F */ lui $at, %hi(jpt_800EE8B4) -/* 06DB28 8006CF28 002A0821 */ addu $at, $at, $t2 -/* 06DB2C 8006CF2C 8C2AE8B4 */ lw $t2, %lo(jpt_800EE8B4)($at) -/* 06DB30 8006CF30 01400008 */ jr $t2 -/* 06DB34 8006CF34 00000000 */ nop -glabel L8006CF38 -/* 06DB38 8006CF38 83A60033 */ lb $a2, 0x33($sp) -/* 06DB3C 8006CF3C 0C018B1D */ jal func_80062C74 -/* 06DB40 8006CF40 83A70037 */ lb $a3, 0x37($sp) -/* 06DB44 8006CF44 10000090 */ b .L8006D188 -/* 06DB48 8006CF48 8FBF001C */ lw $ra, 0x1c($sp) -glabel L8006CF4C -/* 06DB4C 8006CF4C 83A60033 */ lb $a2, 0x33($sp) -/* 06DB50 8006CF50 0C019061 */ jal func_80064184 -/* 06DB54 8006CF54 83A70037 */ lb $a3, 0x37($sp) -/* 06DB58 8006CF58 1000008B */ b .L8006D188 -/* 06DB5C 8006CF5C 8FBF001C */ lw $ra, 0x1c($sp) -glabel L8006CF60 -/* 06DB60 8006CF60 83A60033 */ lb $a2, 0x33($sp) -/* 06DB64 8006CF64 0C018C30 */ jal func_800630C0 -/* 06DB68 8006CF68 83A70037 */ lb $a3, 0x37($sp) -/* 06DB6C 8006CF6C 10000086 */ b .L8006D188 -/* 06DB70 8006CF70 8FBF001C */ lw $ra, 0x1c($sp) -glabel L8006CF74 -/* 06DB74 8006CF74 83A60033 */ lb $a2, 0x33($sp) -/* 06DB78 8006CF78 0C018C6A */ jal func_800631A8 -/* 06DB7C 8006CF7C 83A70037 */ lb $a3, 0x37($sp) -/* 06DB80 8006CF80 10000081 */ b .L8006D188 -/* 06DB84 8006CF84 8FBF001C */ lw $ra, 0x1c($sp) -glabel L8006CF88 -/* 06DB88 8006CF88 83A60033 */ lb $a2, 0x33($sp) -/* 06DB8C 8006CF8C 0C018C9A */ jal func_80063268 -/* 06DB90 8006CF90 83A70037 */ lb $a3, 0x37($sp) -/* 06DB94 8006CF94 1000007C */ b .L8006D188 -/* 06DB98 8006CF98 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DB9C 8006CF9C 848B0044 */ lh $t3, 0x44($a0) -.L8006CFA0: -/* 06DBA0 8006CFA0 316C0200 */ andi $t4, $t3, 0x200 -/* 06DBA4 8006CFA4 5180000D */ beql $t4, $zero, .L8006CFDC -/* 06DBA8 8006CFA8 8C8300BC */ lw $v1, 0xbc($a0) -/* 06DBAC 8006CFAC 948D0000 */ lhu $t5, ($a0) -/* 06DBB0 8006CFB0 8FA60020 */ lw $a2, 0x20($sp) -/* 06DBB4 8006CFB4 83AF0037 */ lb $t7, 0x37($sp) -/* 06DBB8 8006CFB8 31AE4000 */ andi $t6, $t5, 0x4000 -/* 06DBBC 8006CFBC 51C00007 */ beql $t6, $zero, .L8006CFDC -/* 06DBC0 8006CFC0 8C8300BC */ lw $v1, 0xbc($a0) -/* 06DBC4 8006CFC4 83A70033 */ lb $a3, 0x33($sp) -/* 06DBC8 8006CFC8 0C018489 */ jal func_80061224 -/* 06DBCC 8006CFCC AFAF0010 */ sw $t7, 0x10($sp) -/* 06DBD0 8006CFD0 1000006D */ b .L8006D188 -/* 06DBD4 8006CFD4 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DBD8 8006CFD8 8C8300BC */ lw $v1, 0xbc($a0) -.L8006CFDC: -/* 06DBDC 8006CFDC 3C024000 */ lui $v0, 0x4000 -/* 06DBE0 8006CFE0 0062C024 */ and $t8, $v1, $v0 -/* 06DBE4 8006CFE4 5458000D */ bnel $v0, $t8, .L8006D01C -/* 06DBE8 8006CFE8 94860000 */ lhu $a2, ($a0) -/* 06DBEC 8006CFEC 849900B0 */ lh $t9, 0xb0($a0) -/* 06DBF0 8006CFF0 8FA60020 */ lw $a2, 0x20($sp) -/* 06DBF4 8006CFF4 83A80037 */ lb $t0, 0x37($sp) -/* 06DBF8 8006CFF8 2B210032 */ slti $at, $t9, 0x32 -/* 06DBFC 8006CFFC 50200007 */ beql $at, $zero, .L8006D01C -/* 06DC00 8006D000 94860000 */ lhu $a2, ($a0) -/* 06DC04 8006D004 83A70033 */ lb $a3, 0x33($sp) -/* 06DC08 8006D008 0C018425 */ jal func_80061094 -/* 06DC0C 8006D00C AFA80010 */ sw $t0, 0x10($sp) -/* 06DC10 8006D010 1000005D */ b .L8006D188 -/* 06DC14 8006D014 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DC18 8006D018 94860000 */ lhu $a2, ($a0) -.L8006D01C: -/* 06DC1C 8006D01C 24014000 */ li $at, 16384 -/* 06DC20 8006D020 30C94000 */ andi $t1, $a2, 0x4000 -/* 06DC24 8006D024 15210018 */ bne $t1, $at, .L8006D088 -/* 06DC28 8006D028 01203025 */ move $a2, $t1 -/* 06DC2C 8006D02C 948200DE */ lhu $v0, 0xde($a0) -/* 06DC30 8006D030 24010008 */ li $at, 8 -/* 06DC34 8006D034 83AB0037 */ lb $t3, 0x37($sp) -/* 06DC38 8006D038 304A0008 */ andi $t2, $v0, 8 -/* 06DC3C 8006D03C 15410007 */ bne $t2, $at, .L8006D05C -/* 06DC40 8006D040 304C0002 */ andi $t4, $v0, 2 -/* 06DC44 8006D044 8FA60020 */ lw $a2, 0x20($sp) -/* 06DC48 8006D048 83A70033 */ lb $a3, 0x33($sp) -/* 06DC4C 8006D04C 0C0183D4 */ jal func_80060F50 -/* 06DC50 8006D050 AFAB0010 */ sw $t3, 0x10($sp) -/* 06DC54 8006D054 1000004C */ b .L8006D188 -/* 06DC58 8006D058 8FBF001C */ lw $ra, 0x1c($sp) -.L8006D05C: -/* 06DC5C 8006D05C 15800003 */ bnez $t4, .L8006D06C -/* 06DC60 8006D060 304D0001 */ andi $t5, $v0, 1 -/* 06DC64 8006D064 11A00008 */ beqz $t5, .L8006D088 -/* 06DC68 8006D068 00000000 */ nop -.L8006D06C: -/* 06DC6C 8006D06C 83AE0037 */ lb $t6, 0x37($sp) -/* 06DC70 8006D070 8FA60020 */ lw $a2, 0x20($sp) -/* 06DC74 8006D074 83A70033 */ lb $a3, 0x33($sp) -/* 06DC78 8006D078 0C0182C5 */ jal func_80060B14 -/* 06DC7C 8006D07C AFAE0010 */ sw $t6, 0x10($sp) -/* 06DC80 8006D080 10000041 */ b .L8006D188 -/* 06DC84 8006D084 8FBF001C */ lw $ra, 0x1c($sp) -.L8006D088: -/* 06DC88 8006D088 3C02800E */ lui $v0, %hi(gActiveScreenMode) # $v0, 0x800e -/* 06DC8C 8006D08C 8C42C52C */ lw $v0, %lo(gActiveScreenMode)($v0) -/* 06DC90 8006D090 5040000A */ beql $v0, $zero, .L8006D0BC -/* 06DC94 8006D094 3C020400 */ lui $v0, 0x400 -/* 06DC98 8006D098 10470021 */ beq $v0, $a3, .L8006D120 -/* 06DC9C 8006D09C 24010002 */ li $at, 2 -/* 06DCA0 8006D0A0 1041001F */ beq $v0, $at, .L8006D120 -/* 06DCA4 8006D0A4 24010003 */ li $at, 3 -/* 06DCA8 8006D0A8 1041001D */ beq $v0, $at, .L8006D120 -/* 06DCAC 8006D0AC 00000000 */ nop -/* 06DCB0 8006D0B0 10000035 */ b .L8006D188 -/* 06DCB4 8006D0B4 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DCB8 8006D0B8 3C020400 */ lui $v0, 0x400 -.L8006D0BC: -/* 06DCBC 8006D0BC 00627824 */ and $t7, $v1, $v0 -/* 06DCC0 8006D0C0 104F0030 */ beq $v0, $t7, .L8006D184 -/* 06DCC4 8006D0C4 30780400 */ andi $t8, $v1, 0x400 -/* 06DCC8 8006D0C8 24010400 */ li $at, 1024 -/* 06DCCC 8006D0CC 1301002D */ beq $t8, $at, .L8006D184 -/* 06DCD0 8006D0D0 3C020100 */ lui $v0, 0x100 -/* 06DCD4 8006D0D4 0062C824 */ and $t9, $v1, $v0 -/* 06DCD8 8006D0D8 5059002B */ beql $v0, $t9, .L8006D188 -/* 06DCDC 8006D0DC 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DCE0 8006D0E0 848200CA */ lh $v0, 0xca($a0) -/* 06DCE4 8006D0E4 24010002 */ li $at, 2 -/* 06DCE8 8006D0E8 30480002 */ andi $t0, $v0, 2 -/* 06DCEC 8006D0EC 11010025 */ beq $t0, $at, .L8006D184 -/* 06DCF0 8006D0F0 30490010 */ andi $t1, $v0, 0x10 -/* 06DCF4 8006D0F4 24010010 */ li $at, 16 -/* 06DCF8 8006D0F8 11210022 */ beq $t1, $at, .L8006D184 -/* 06DCFC 8006D0FC 304A0100 */ andi $t2, $v0, 0x100 -/* 06DD00 8006D100 15400020 */ bnez $t2, .L8006D184 -/* 06DD04 8006D104 8FA60020 */ lw $a2, 0x20($sp) -/* 06DD08 8006D108 83AB0037 */ lb $t3, 0x37($sp) -/* 06DD0C 8006D10C 83A70033 */ lb $a3, 0x33($sp) -/* 06DD10 8006D110 0C018141 */ jal func_80060504 -/* 06DD14 8006D114 AFAB0010 */ sw $t3, 0x10($sp) -/* 06DD18 8006D118 1000001B */ b .L8006D188 -/* 06DD1C 8006D11C 8FBF001C */ lw $ra, 0x1c($sp) -.L8006D120: -/* 06DD20 8006D120 10C00018 */ beqz $a2, .L8006D184 -/* 06DD24 8006D124 3C020400 */ lui $v0, 0x400 -/* 06DD28 8006D128 00626024 */ and $t4, $v1, $v0 -/* 06DD2C 8006D12C 104C0015 */ beq $v0, $t4, .L8006D184 -/* 06DD30 8006D130 306D0400 */ andi $t5, $v1, 0x400 -/* 06DD34 8006D134 24010400 */ li $at, 1024 -/* 06DD38 8006D138 11A10012 */ beq $t5, $at, .L8006D184 -/* 06DD3C 8006D13C 3C020100 */ lui $v0, 0x100 -/* 06DD40 8006D140 00627024 */ and $t6, $v1, $v0 -/* 06DD44 8006D144 504E0010 */ beql $v0, $t6, .L8006D188 -/* 06DD48 8006D148 8FBF001C */ lw $ra, 0x1c($sp) -/* 06DD4C 8006D14C 848200CA */ lh $v0, 0xca($a0) -/* 06DD50 8006D150 24010002 */ li $at, 2 -/* 06DD54 8006D154 304F0002 */ andi $t7, $v0, 2 -/* 06DD58 8006D158 11E1000A */ beq $t7, $at, .L8006D184 -/* 06DD5C 8006D15C 30580010 */ andi $t8, $v0, 0x10 -/* 06DD60 8006D160 24010010 */ li $at, 16 -/* 06DD64 8006D164 13010007 */ beq $t8, $at, .L8006D184 -/* 06DD68 8006D168 30590100 */ andi $t9, $v0, 0x100 -/* 06DD6C 8006D16C 17200005 */ bnez $t9, .L8006D184 -/* 06DD70 8006D170 8FA60020 */ lw $a2, 0x20($sp) -/* 06DD74 8006D174 83A80037 */ lb $t0, 0x37($sp) -/* 06DD78 8006D178 83A70033 */ lb $a3, 0x33($sp) -/* 06DD7C 8006D17C 0C018141 */ jal func_80060504 -/* 06DD80 8006D180 AFA80010 */ sw $t0, 0x10($sp) -.L8006D184: -glabel L8006D184 -/* 06DD84 8006D184 8FBF001C */ lw $ra, 0x1c($sp) -.L8006D188: -/* 06DD88 8006D188 27BD0028 */ addiu $sp, $sp, 0x28 -/* 06DD8C 8006D18C 03E00008 */ jr $ra -/* 06DD90 8006D190 00000000 */ nop diff --git a/src/code_80057C60.c b/src/code_80057C60.c index 5495adfbc..745816c1d 100644 --- a/src/code_80057C60.c +++ b/src/code_80057C60.c @@ -3493,7 +3493,7 @@ void func_8005F90C(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3, UNUSED s8 GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8005F90C.s") #endif -void func_80060504(Player *player, s16 arg1, s32 arg2, UNUSED s32 arg3) { +void func_80060504(Player *player, s16 arg1, s32 arg2, s8 arg3, s8 arg4) { UNUSED s32 thing1; s16 thing2; UNUSED s32 thing3; @@ -3634,7 +3634,7 @@ void func_80060BCC(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3, UNUSED s8 } } -void func_80060F50(Player* player, s16 arg1, UNUSED s8 arg2, s8 arg3, UNUSED s8 arg4) { +void func_80060F50(Player* player, s16 arg1, UNUSED s32 arg2, s8 arg3, UNUSED s8 arg4) { func_8005D794(player, &player->unk_258[arg1], 0.0f, 0.0f, 0.0f, 0, 0); func_8005D7D8(&player->unk_258[arg1], 5, 4.0f); @@ -3650,7 +3650,7 @@ void func_80060F50(Player* player, s16 arg1, UNUSED s8 arg2, s8 arg3, UNUSED s8 player->unk_0DE &= ~0x0008; } -void func_80061094(Player* player, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { +void func_80061094(Player* player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { if (arg1 == 0) { func_8005D794(player, &player->unk_258[arg1], 0.0f, 0.0f, 0.0f, 0, 0); func_8005D7D8(&player->unk_258[arg1], 6, 3.8f); @@ -3685,7 +3685,7 @@ void func_80061224(Player *player, s16 arg1, s32 arg2, s8 arg3, s8 arg4) { } } -void func_800612F8(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { +void func_800612F8(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 var_s2; for (var_s2 = 0; var_s2 < 10; var_s2++){ @@ -3703,7 +3703,7 @@ void func_800612F8(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 a player->unk_046 &= ~0x0008; } -void func_80061430(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { +void func_80061430(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 var_s2; for (var_s2 = 0; var_s2 < 7; var_s2++){ @@ -3723,7 +3723,7 @@ void func_80061430(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 a player->unk_044 &= ~0x1000; } -void func_800615AC(Player *player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { +void func_800615AC(Player *player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 test = 2; UNUSED s32 stackPadding0; UNUSED s32 stackPadding1; @@ -3788,7 +3788,7 @@ void func_8006199C(Player *player, s16 arg1, s32 arg2, s8 arg3, s8 arg4) { } } -void func_80061A34(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3) { +void func_80061A34(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 sp54; UNUSED s32 stackPadding0; s32 sp4C; @@ -3818,7 +3818,7 @@ void func_80061A34(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3) { } } -void func_80061D4C(Player *player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { +void func_80061D4C(Player *player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 test = 2; UNUSED s32 stackPadding0; UNUSED s32 stackPadding1; @@ -3841,7 +3841,7 @@ void func_80061D4C(Player *player, s16 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { } } -void func_80061EF4(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3) { +void func_80061EF4(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { UNUSED s32 stackPadding0; s32 var_t0 = 0x000000FF; s32 var_t1; @@ -3890,7 +3890,7 @@ void func_80061EF4(Player *player, s16 arg1, s32 arg2, UNUSED s8 arg3) { } } -void func_800621BC(Player* player, s16 arg1, s32 arg2, UNUSED s8 arg3) { +void func_800621BC(Player* player, s16 arg1, s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 temp_v1; s32 phi_t0; s32 phi_t1; @@ -3961,7 +3961,7 @@ void func_80062484(Player* player, UnkPlayerStruct258* arg1, s32 arg2) { arg1->unk_01E = 0; } -void func_800624D8(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3) { +void func_800624D8(Player *player, UNUSED s32 arg1, UNUSED s32 arg2, UNUSED s8 arg3, UNUSED s8 arg4) { s32 var_s1; switch (player->surfaceType) { @@ -6039,14 +6039,6 @@ void func_8006C6AC(Player *player, s16 arg1, s8 arg2, s8 arg3) { } } -#ifdef NON_MATCHING -/** - * https://decomp.me/scratch/pKyCf - * There's something very very wrong about the handling of arg3 - * In the target assembly arg3 keeps getting (re?)converted to - * an s8, but in this decomp attempt that never happens. - * I don't know what's going on. -**/ void func_8006C9B8(Player *player, s16 arg1, s8 arg2, s8 arg3) { UNUSED s32 stackPadding; s32 sp28; @@ -6097,7 +6089,7 @@ void func_8006C9B8(Player *player, s16 arg1, s8 arg2, s8 arg3) { } } else { if (player->unk_044 & 0x1000) { - func_80061430(player, arg1, sp28, arg2); + func_80061430(player, arg1, sp28, arg2, arg3); player->unk_044 &= ~0x0100; return; } @@ -6108,60 +6100,45 @@ void func_8006C9B8(Player *player, s16 arg1, s8 arg2, s8 arg3) { return; } if ((player->unk_0CA & 0x2000) == 0x2000) { - func_80061A34(player, arg1, sp28, arg2); + func_80061A34(player, arg1, sp28, arg2, arg3); player->unk_046 &= ~0x0008; player->unk_044 &= ~0x0100; return; } if ((player->effects & STAR_EFFECT) && ((((s32) gCourseTimer) - D_8018D930[arg2]) < 9)) { - func_800615AC(player, arg1, sp28, arg2); + func_800615AC(player, arg1, sp28, arg2, arg3); player->unk_046 &= ~0x0008; player->unk_044 &= ~0x0100; return; } if ((player->unk_046 & 8) == 8) { - func_800612F8(player, arg1, sp28, arg2); + func_800612F8(player, arg1, sp28, arg2, arg3); player->unk_044 &= ~0x0100; return; } if (((player->unk_046 & 0x20) == 0x20) && (((player->unk_094 / 18.0f) * 216.0f) >= 20.0f)) { - func_80061D4C(player, arg1, sp28, arg2); + func_80061D4C(player, arg1, sp28, arg2, arg3); player->unk_046 &= ~0x0008; player->unk_044 &= ~0x0100; return; } if ((player->effects & BOOST_EFFECT) && (player->type & PLAYER_HUMAN)) { - func_800621BC(player, arg1, sp28, arg2); + func_800621BC(player, arg1, sp28, arg2, arg3); return; } if (((player->effects & 0x200000) || (player->effects & BOOST_RAMP_ASPHALT_EFFECT)) && ((player->type & PLAYER_HUMAN) == PLAYER_HUMAN)) { - func_80061EF4(player, arg1, sp28, arg2); + func_80061EF4(player, arg1, sp28, arg2, arg3); player->unk_046 &= ~0x0008; player->unk_044 &= ~0x0100; return; } if ((player->unk_044 & 0x100) == 0x100) { - func_800624D8(player, arg1, sp28, arg2); + func_800624D8(player, arg1, sp28, arg2, arg3); player->unk_046 &= ~0x0008; } } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8006C9B8.s") -#endif -#ifdef NON_MATCHING -// Something really wrong with arg3 on these functions, could be fake? -void func_80062C74(Player *player, s16 arg1, s32 arg2, s32 arg3); -void func_80064184(Player* player, s16 arg1, s8 arg2, UNUSED s8 arg3); -void func_800630C0(Player* player, s16 arg1, s8 arg2, UNUSED s8 arg3); -void func_800631A8(Player* player, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3); -void func_80063268(Player* player, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3); - -extern s32 gActiveScreenMode; - -// Replacing arg3 with 0 seems to make the percentage higher. -// func_80060504 args could be wrong as well. void func_8006CEC0(Player *arg0, s16 arg1, s8 arg2, s8 arg3) { UNUSED u16 temp_v0_3; s32 sp20 = arg1; @@ -6208,8 +6185,7 @@ void func_8006CEC0(Player *arg0, s16 arg1, s8 arg2, s8 arg3) { && ((arg0->effects & 0x400) != 0x400) && ((arg0->effects & 0x01000000) != 0x01000000)) { if (((arg0->unk_0CA & 2) != 2) && ((arg0->unk_0CA & 0x10) != 0x10) && !(arg0->unk_0CA & 0x100)) { - //func_80060504(arg0, arg1, sp20, arg2, arg3); - func_80060504(arg0, sp20, arg2, arg3); + func_80060504(arg0, arg1, sp20, arg2, arg3); } } break; @@ -6223,17 +6199,13 @@ void func_8006CEC0(Player *arg0, s16 arg1, s8 arg2, s8 arg3) { && ((arg0->effects & 0x400) != 0x400) && ((arg0->effects & 0x01000000) != 0x01000000)) { if (((arg0->unk_0CA & 2) != 2) && ((arg0->unk_0CA & 0x10) != 0x10) && !(arg0->unk_0CA & 0x100)) { - //func_80060504(arg0, arg1, sp20, arg2, arg3); - func_80060504(arg0, sp20, arg2, arg3); + func_80060504(arg0, arg1, sp20, arg2, arg3); } } break; } } } -#else -GLOBAL_ASM("asm/non_matchings/code_80057C60/func_8006CEC0.s") -#endif void func_8006D194(Player *player, s8 arg1, s8 arg2) { if (player->unk_258[0x14].unk_01C == 1) { diff --git a/src/code_80057C60.h b/src/code_80057C60.h index e7950d223..1604299d7 100644 --- a/src/code_80057C60.h +++ b/src/code_80057C60.h @@ -121,27 +121,27 @@ void func_8005ED48(Player*, s16, s32, s8, s8); void func_8005F90C(Player*, s16, s32, s8, s8); -void func_80060504(Player*, s16, s32, s32); +void func_80060504(Player*, s16, s32, s8, s8); void func_800608E0(Player*, s16, s32, s8, s8); void func_80060B14(Player*, s16, s32, s8, s8); void func_80060BCC(Player*, s16, s32, s8, s8); -void func_80060F50(Player*, s16, s8, s8, s8); +void func_80060F50(Player*, s16, s32, s8, s8); -void func_80061094(Player*, s16, s8, s8, s8); +void func_80061094(Player*, s16, s32, s8, s8); void func_80061130(Player*, s16, s32, s8, s8); void func_80061224(Player*, s16, s32, s8, s8); -void func_800612F8(Player*, s32, s32, s8); -void func_80061430(Player*, s32, s32, s8); -void func_800615AC(Player*, s16, s32, s8); +void func_800612F8(Player*, s32, s32, s8, s8); +void func_80061430(Player*, s32, s32, s8, s8); +void func_800615AC(Player*, s16, s32, s8, s8); void func_80061754(Player*, s16, s32, s32, s32); void func_8006199C(Player*, s16, s32, s8, s8); -void func_80061A34(Player*, s16, s32, s8); -void func_80061D4C(Player*, s16, s32, s8); -void func_80061EF4(Player*, s16, s32, s8); +void func_80061A34(Player*, s16, s32, s8, s8); +void func_80061D4C(Player*, s16, s32, s8, s8); +void func_80061EF4(Player*, s16, s32, s8, s8); -void func_800621BC(Player*, s16, s32, s8); +void func_800621BC(Player*, s16, s32, s8, s8); void func_80062484(Player*, UnkPlayerStruct258*, s32); -void func_800624D8(Player*, s32, s32, s8); +void func_800624D8(Player*, s32, s32, s8, s8); void func_800628C0(Player*, s8, s8, s8); void func_80062914(Player*, s8, s8, s8); void func_80062968(Player*, s8, s8, s8);