From 93117587c149f0c73e3933be5a220e8b36f30288 Mon Sep 17 00:00:00 2001 From: Tyler McGavran Date: Fri, 14 Jul 2023 23:36:24 -0400 Subject: [PATCH] Finalize matches in code_80004740 (#342) Since the animation stuff was merged, I'm finalizing the matching of the 3 functions in code_80004740 Signed-off-by: Taggerung --- .../code_80004740/func_80004A1C.s | 143 ------------------ .../code_80004740/func_80004C30.s | 125 --------------- .../code_80004740/func_80004DFC.s | 47 ------ src/code_80004740.c | 27 ---- 4 files changed, 342 deletions(-) delete mode 100644 asm/non_matchings/code_80004740/func_80004A1C.s delete mode 100644 asm/non_matchings/code_80004740/func_80004C30.s delete mode 100644 asm/non_matchings/code_80004740/func_80004DFC.s diff --git a/asm/non_matchings/code_80004740/func_80004A1C.s b/asm/non_matchings/code_80004740/func_80004A1C.s deleted file mode 100644 index 3012401c4..000000000 --- a/asm/non_matchings/code_80004740/func_80004A1C.s +++ /dev/null @@ -1,143 +0,0 @@ -glabel func_80004A1C -/* 00561C 80004A1C 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 005620 80004A20 3C098016 */ lui $t1, %hi(D_80162D76) # $t1, 0x8016 -/* 005624 80004A24 25292D76 */ addiu $t1, %lo(D_80162D76) # addiu $t1, $t1, 0x2d76 -/* 005628 80004A28 85280000 */ lh $t0, ($t1) -/* 00562C 80004A2C AFBF001C */ sw $ra, 0x1c($sp) -/* 005630 80004A30 AFB00018 */ sw $s0, 0x18($sp) -/* 005634 80004A34 AFA400A0 */ sw $a0, 0xa0($sp) -/* 005638 80004A38 8C8F000C */ lw $t7, 0xc($a0) -/* 00563C 80004A3C 00A08025 */ move $s0, $a1 -/* 005640 80004A40 1500001E */ bnez $t0, .L80004ABC -/* 005644 80004A44 AFAF003C */ sw $t7, 0x3c($sp) -/* 005648 80004A48 00801825 */ move $v1, $a0 -/* 00564C 80004A4C 3C048016 */ lui $a0, %hi(D_80162D70) # $a0, 0x8016 -/* 005650 80004A50 3C058016 */ lui $a1, %hi(D_80162D76) # $a1, 0x8016 -/* 005654 80004A54 24A52D76 */ addiu $a1, %lo(D_80162D76) # addiu $a1, $a1, 0x2d76 -/* 005658 80004A58 24842D70 */ addiu $a0, %lo(D_80162D70) # addiu $a0, $a0, 0x2d70 -/* 00565C 80004A5C 27A20094 */ addiu $v0, $sp, 0x94 -/* 005660 80004A60 24840002 */ addiu $a0, $a0, 2 -/* 005664 80004A64 8499FFFE */ lh $t9, -2($a0) -/* 005668 80004A68 1085000B */ beq $a0, $a1, .L80004A98 -/* 00566C 80004A6C 8C780010 */ lw $t8, 0x10($v1) -.L80004A70: -/* 005670 80004A70 03195021 */ addu $t2, $t8, $t9 -/* 005674 80004A74 448A9000 */ mtc1 $t2, $f18 -/* 005678 80004A78 24840002 */ addiu $a0, $a0, 2 -/* 00567C 80004A7C 24420004 */ addiu $v0, $v0, 4 -/* 005680 80004A80 468094A0 */ cvt.s.w $f18, $f18 -/* 005684 80004A84 24630004 */ addiu $v1, $v1, 4 -/* 005688 80004A88 8499FFFE */ lh $t9, -2($a0) -/* 00568C 80004A8C E452FFFC */ swc1 $f18, -4($v0) -/* 005690 80004A90 1485FFF7 */ bne $a0, $a1, .L80004A70 -/* 005694 80004A94 8C780010 */ lw $t8, 0x10($v1) -.L80004A98: -/* 005698 80004A98 03195021 */ addu $t2, $t8, $t9 -/* 00569C 80004A9C 448A9000 */ mtc1 $t2, $f18 -/* 0056A0 80004AA0 24420004 */ addiu $v0, $v0, 4 -/* 0056A4 80004AA4 24630004 */ addiu $v1, $v1, 4 -/* 0056A8 80004AA8 468094A0 */ cvt.s.w $f18, $f18 -/* 0056AC 80004AAC E452FFFC */ swc1 $f18, -4($v0) -/* 0056B0 80004AB0 250B0001 */ addiu $t3, $t0, 1 -/* 0056B4 80004AB4 10000012 */ b .L80004B00 -/* 0056B8 80004AB8 A52B0000 */ sh $t3, ($t1) -.L80004ABC: -/* 0056BC 80004ABC 27A20094 */ addiu $v0, $sp, 0x94 -/* 0056C0 80004AC0 8FA300A0 */ lw $v1, 0xa0($sp) -/* 0056C4 80004AC4 27A400A0 */ addiu $a0, $sp, 0xa0 -/* 0056C8 80004AC8 24420004 */ addiu $v0, $v0, 4 -/* 0056CC 80004ACC 10440008 */ beq $v0, $a0, .L80004AF0 -/* 0056D0 80004AD0 8C6C0010 */ lw $t4, 0x10($v1) -.L80004AD4: -/* 0056D4 80004AD4 448C9000 */ mtc1 $t4, $f18 -/* 0056D8 80004AD8 24420004 */ addiu $v0, $v0, 4 -/* 0056DC 80004ADC 24630004 */ addiu $v1, $v1, 4 -/* 0056E0 80004AE0 468094A0 */ cvt.s.w $f18, $f18 -/* 0056E4 80004AE4 E452FFF8 */ swc1 $f18, -8($v0) -/* 0056E8 80004AE8 1444FFFA */ bne $v0, $a0, .L80004AD4 -/* 0056EC 80004AEC 8C6C0010 */ lw $t4, 0x10($v1) -.L80004AF0: -/* 0056F0 80004AF0 448C9000 */ mtc1 $t4, $f18 -/* 0056F4 80004AF4 24630004 */ addiu $v1, $v1, 4 -/* 0056F8 80004AF8 468094A0 */ cvt.s.w $f18, $f18 -/* 0056FC 80004AFC E452FFFC */ swc1 $f18, -4($v0) -.L80004B00: -/* 005700 80004B00 00C01025 */ move $v0, $a2 -/* 005704 80004B04 27A3008C */ addiu $v1, $sp, 0x8c -/* 005708 80004B08 27A50092 */ addiu $a1, $sp, 0x92 -.L80004B0C: -/* 00570C 80004B0C 944D0000 */ lhu $t5, ($v0) -/* 005710 80004B10 00002025 */ move $a0, $zero -/* 005714 80004B14 00ED082A */ slt $at, $a3, $t5 -/* 005718 80004B18 10200003 */ beqz $at, .L80004B28 -/* 00571C 80004B1C 00000000 */ nop -/* 005720 80004B20 10000001 */ b .L80004B28 -/* 005724 80004B24 00E02025 */ move $a0, $a3 -.L80004B28: -/* 005728 80004B28 944F0002 */ lhu $t7, 2($v0) -/* 00572C 80004B2C 0004C840 */ sll $t9, $a0, 1 -/* 005730 80004B30 24630002 */ addiu $v1, $v1, 2 -/* 005734 80004B34 000F7040 */ sll $t6, $t7, 1 -/* 005738 80004B38 020EC021 */ addu $t8, $s0, $t6 -/* 00573C 80004B3C 03195021 */ addu $t2, $t8, $t9 -/* 005740 80004B40 854B0000 */ lh $t3, ($t2) -/* 005744 80004B44 24420004 */ addiu $v0, $v0, 4 -/* 005748 80004B48 1465FFF0 */ bne $v1, $a1, .L80004B0C -/* 00574C 80004B4C A46BFFFE */ sh $t3, -2($v1) -/* 005750 80004B50 27A4004C */ addiu $a0, $sp, 0x4c -/* 005754 80004B54 27A50094 */ addiu $a1, $sp, 0x94 -/* 005758 80004B58 0C001236 */ jal func_800048D8 -/* 00575C 80004B5C 27A6008C */ addiu $a2, $sp, 0x8c -/* 005760 80004B60 3C108019 */ lui $s0, %hi(D_8018D120) # $s0, 0x8019 -/* 005764 80004B64 2610D120 */ addiu $s0, %lo(D_8018D120) # addiu $s0, $s0, -0x2ee0 -/* 005768 80004B68 8E0D0000 */ lw $t5, ($s0) -/* 00576C 80004B6C 3C0C8015 */ lui $t4, %hi(gGfxPool) # $t4, 0x8015 -/* 005770 80004B70 8D8CEF40 */ lw $t4, %lo(gGfxPool)($t4) -/* 005774 80004B74 000D7980 */ sll $t7, $t5, 6 -/* 005778 80004B78 27A5004C */ addiu $a1, $sp, 0x4c -/* 00577C 80004B7C 018F2021 */ addu $a0, $t4, $t7 -/* 005780 80004B80 0C0011D0 */ jal func_80004740 -/* 005784 80004B84 248402C0 */ addiu $a0, $a0, 0x2c0 -/* 005788 80004B88 3C048016 */ lui $a0, %hi(D_80162D7A) # $a0, 0x8016 -/* 00578C 80004B8C 3C058015 */ lui $a1, %hi(gDisplayListHead) # $a1, 0x8015 -/* 005790 80004B90 24A50298 */ addiu $a1, %lo(gDisplayListHead) # addiu $a1, $a1, 0x298 -/* 005794 80004B94 24842D7A */ addiu $a0, %lo(D_80162D7A) # addiu $a0, $a0, 0x2d7a -/* 005798 80004B98 848E0000 */ lh $t6, ($a0) -/* 00579C 80004B9C 8CA30000 */ lw $v1, ($a1) -/* 0057A0 80004BA0 3C0A0104 */ lui $t2, (0x01040040 >> 16) # lui $t2, 0x104 -/* 0057A4 80004BA4 25D80001 */ addiu $t8, $t6, 1 -/* 0057A8 80004BA8 24790008 */ addiu $t9, $v1, 8 -/* 0057AC 80004BAC 8FA6003C */ lw $a2, 0x3c($sp) -/* 0057B0 80004BB0 A4980000 */ sh $t8, ($a0) -/* 0057B4 80004BB4 ACB90000 */ sw $t9, ($a1) -/* 0057B8 80004BB8 354A0040 */ ori $t2, (0x01040040 & 0xFFFF) # ori $t2, $t2, 0x40 -/* 0057BC 80004BBC AC6A0000 */ sw $t2, ($v1) -/* 0057C0 80004BC0 8E0D0000 */ lw $t5, ($s0) -/* 0057C4 80004BC4 3C0B8015 */ lui $t3, %hi(gGfxPool) # $t3, 0x8015 -/* 0057C8 80004BC8 8D6BEF40 */ lw $t3, %lo(gGfxPool)($t3) -/* 0057CC 80004BCC 3C018000 */ lui $at, (0x800002C0 >> 16) # lui $at, 0x8000 -/* 0057D0 80004BD0 000D6180 */ sll $t4, $t5, 6 -/* 0057D4 80004BD4 342102C0 */ ori $at, (0x800002C0 & 0xFFFF) # ori $at, $at, 0x2c0 -/* 0057D8 80004BD8 016C7821 */ addu $t7, $t3, $t4 -/* 0057DC 80004BDC 01E17021 */ addu $t6, $t7, $at -/* 0057E0 80004BE0 AC6E0004 */ sw $t6, 4($v1) -/* 0057E4 80004BE4 8E180000 */ lw $t8, ($s0) -/* 0057E8 80004BE8 27190001 */ addiu $t9, $t8, 1 -/* 0057EC 80004BEC 10C0000B */ beqz $a2, .L80004C1C -/* 0057F0 80004BF0 AE190000 */ sw $t9, ($s0) -/* 0057F4 80004BF4 0C0A9EF5 */ jal segmented_to_virtual -/* 0057F8 80004BF8 00C02025 */ move $a0, $a2 -/* 0057FC 80004BFC 3C058015 */ lui $a1, %hi(gDisplayListHead) # $a1, 0x8015 -/* 005800 80004C00 24A50298 */ addiu $a1, %lo(gDisplayListHead) # addiu $a1, $a1, 0x298 -/* 005804 80004C04 8CA30000 */ lw $v1, ($a1) -/* 005808 80004C08 3C0D0600 */ lui $t5, 0x600 -/* 00580C 80004C0C 246A0008 */ addiu $t2, $v1, 8 -/* 005810 80004C10 ACAA0000 */ sw $t2, ($a1) -/* 005814 80004C14 AC620004 */ sw $v0, 4($v1) -/* 005818 80004C18 AC6D0000 */ sw $t5, ($v1) -.L80004C1C: -/* 00581C 80004C1C 8FBF001C */ lw $ra, 0x1c($sp) -/* 005820 80004C20 8FB00018 */ lw $s0, 0x18($sp) -/* 005824 80004C24 27BD00A0 */ addiu $sp, $sp, 0xa0 -/* 005828 80004C28 03E00008 */ jr $ra -/* 00582C 80004C2C 00000000 */ nop diff --git a/asm/non_matchings/code_80004740/func_80004C30.s b/asm/non_matchings/code_80004740/func_80004C30.s deleted file mode 100644 index f41cdf25c..000000000 --- a/asm/non_matchings/code_80004740/func_80004C30.s +++ /dev/null @@ -1,125 +0,0 @@ -glabel func_80004C30 -/* 005830 80004C30 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 005834 80004C34 AFB20020 */ sw $s2, 0x20($sp) -/* 005838 80004C38 00809025 */ move $s2, $a0 -/* 00583C 80004C3C AFBF003C */ sw $ra, 0x3c($sp) -/* 005840 80004C40 AFBE0038 */ sw $fp, 0x38($sp) -/* 005844 80004C44 AFB70034 */ sw $s7, 0x34($sp) -/* 005848 80004C48 AFB60030 */ sw $s6, 0x30($sp) -/* 00584C 80004C4C AFB5002C */ sw $s5, 0x2c($sp) -/* 005850 80004C50 AFB40028 */ sw $s4, 0x28($sp) -/* 005854 80004C54 AFB30024 */ sw $s3, 0x24($sp) -/* 005858 80004C58 AFB1001C */ sw $s1, 0x1c($sp) -/* 00585C 80004C5C AFB00018 */ sw $s0, 0x18($sp) -/* 005860 80004C60 AFA60050 */ sw $a2, 0x50($sp) -/* 005864 80004C64 8CA4000C */ lw $a0, 0xc($a1) -/* 005868 80004C68 00A08025 */ move $s0, $a1 -/* 00586C 80004C6C 0C0A9EF5 */ jal segmented_to_virtual -/* 005870 80004C70 A7A60052 */ sh $a2, 0x52($sp) -/* 005874 80004C74 AFA20040 */ sw $v0, 0x40($sp) -/* 005878 80004C78 0C0A9EF5 */ jal segmented_to_virtual -/* 00587C 80004C7C 8E040010 */ lw $a0, 0x10($s0) -/* 005880 80004C80 3C138016 */ lui $s3, %hi(D_80162D7A) # $s3, 0x8016 -/* 005884 80004C84 26732D7A */ addiu $s3, %lo(D_80162D7A) # addiu $s3, $s3, 0x2d7a -/* 005888 80004C88 A6600000 */ sh $zero, ($s3) -/* 00588C 80004C8C 3C018016 */ lui $at, %hi(D_80162D76) # $at, 0x8016 -/* 005890 80004C90 3C038016 */ lui $v1, %hi(D_80162D70) # $v1, 0x8016 -/* 005894 80004C94 3C068016 */ lui $a2, %hi(D_80162D76) # $a2, 0x8016 -/* 005898 80004C98 87A70052 */ lh $a3, 0x52($sp) -/* 00589C 80004C9C A4202D76 */ sh $zero, %lo(D_80162D76)($at) -/* 0058A0 80004CA0 24C62D76 */ addiu $a2, %lo(D_80162D76) # addiu $a2, $a2, 0x2d76 -/* 0058A4 80004CA4 24632D70 */ addiu $v1, %lo(D_80162D70) # addiu $v1, $v1, 0x2d70 -/* 0058A8 80004CA8 00402025 */ move $a0, $v0 -/* 0058AC 80004CAC 8FA80040 */ lw $t0, 0x40($sp) -.L80004CB0: -/* 0058B0 80004CB0 948F0000 */ lhu $t7, ($a0) -/* 0058B4 80004CB4 00002825 */ move $a1, $zero -/* 0058B8 80004CB8 00EF082A */ slt $at, $a3, $t7 -/* 0058BC 80004CBC 10200003 */ beqz $at, .L80004CCC -/* 0058C0 80004CC0 00000000 */ nop -/* 0058C4 80004CC4 10000001 */ b .L80004CCC -/* 0058C8 80004CC8 00E02825 */ move $a1, $a3 -.L80004CCC: -/* 0058CC 80004CCC 94980002 */ lhu $t8, 2($a0) -/* 0058D0 80004CD0 00055040 */ sll $t2, $a1, 1 -/* 0058D4 80004CD4 24630002 */ addiu $v1, $v1, 2 -/* 0058D8 80004CD8 0018C840 */ sll $t9, $t8, 1 -/* 0058DC 80004CDC 01194821 */ addu $t1, $t0, $t9 -/* 0058E0 80004CE0 012A5821 */ addu $t3, $t1, $t2 -/* 0058E4 80004CE4 856C0000 */ lh $t4, ($t3) -/* 0058E8 80004CE8 24840004 */ addiu $a0, $a0, 4 -/* 0058EC 80004CEC 1466FFF0 */ bne $v1, $a2, .L80004CB0 -/* 0058F0 80004CF0 A46CFFFE */ sh $t4, -2($v1) -/* 0058F4 80004CF4 3C158016 */ lui $s5, %hi(D_80162D78) # $s5, 0x8016 -/* 0058F8 80004CF8 26B52D78 */ addiu $s5, %lo(D_80162D78) # addiu $s5, $s5, 0x2d78 -/* 0058FC 80004CFC 3C118015 */ lui $s1, %hi(gDisplayListHead) # $s1, 0x8015 -/* 005900 80004D00 2454000C */ addiu $s4, $v0, 0xc -/* 005904 80004D04 A6A00000 */ sh $zero, ($s5) -/* 005908 80004D08 26310298 */ addiu $s1, %lo(gDisplayListHead) # addiu $s1, $s1, 0x298 -/* 00590C 80004D0C 3C1EBD00 */ lui $fp, 0xbd00 -/* 005910 80004D10 24170003 */ li $s7, 3 -/* 005914 80004D14 24160001 */ li $s6, 1 -.L80004D18: -/* 005918 80004D18 8E500000 */ lw $s0, ($s2) -/* 00591C 80004D1C 02402025 */ move $a0, $s2 -/* 005920 80004D20 02803025 */ move $a2, $s4 -/* 005924 80004D24 52000015 */ beql $s0, $zero, .L80004D7C -/* 005928 80004D28 86B80000 */ lh $t8, ($s5) -/* 00592C 80004D2C 12160007 */ beq $s0, $s6, .L80004D4C -/* 005930 80004D30 24010002 */ li $at, 2 -/* 005934 80004D34 52010008 */ beql $s0, $at, .L80004D58 -/* 005938 80004D38 8E230000 */ lw $v1, ($s1) -/* 00593C 80004D3C 52170020 */ beql $s0, $s7, .L80004DC0 -/* 005940 80004D40 8E4B0004 */ lw $t3, 4($s2) -/* 005944 80004D44 1000001E */ b .L80004DC0 -/* 005948 80004D48 8E4B0004 */ lw $t3, 4($s2) -.L80004D4C: -/* 00594C 80004D4C 1000001B */ b .L80004DBC -/* 005950 80004D50 A6B60000 */ sh $s6, ($s5) -/* 005954 80004D54 8E230000 */ lw $v1, ($s1) -.L80004D58: -/* 005958 80004D58 246D0008 */ addiu $t5, $v1, 8 -/* 00595C 80004D5C AE2D0000 */ sw $t5, ($s1) -/* 005960 80004D60 AC600004 */ sw $zero, 4($v1) -/* 005964 80004D64 AC7E0000 */ sw $fp, ($v1) -/* 005968 80004D68 866E0000 */ lh $t6, ($s3) -/* 00596C 80004D6C 25CFFFFF */ addiu $t7, $t6, -1 -/* 005970 80004D70 10000012 */ b .L80004DBC -/* 005974 80004D74 A66F0000 */ sh $t7, ($s3) -/* 005978 80004D78 86B80000 */ lh $t8, ($s5) -.L80004D7C: -/* 00597C 80004D7C 5700000A */ bnel $t8, $zero, .L80004DA8 -/* 005980 80004D80 8FA50040 */ lw $a1, 0x40($sp) -/* 005984 80004D84 8E230000 */ lw $v1, ($s1) -/* 005988 80004D88 24790008 */ addiu $t9, $v1, 8 -/* 00598C 80004D8C AE390000 */ sw $t9, ($s1) -/* 005990 80004D90 AC600004 */ sw $zero, 4($v1) -/* 005994 80004D94 AC7E0000 */ sw $fp, ($v1) -/* 005998 80004D98 86690000 */ lh $t1, ($s3) -/* 00599C 80004D9C 252AFFFF */ addiu $t2, $t1, -1 -/* 0059A0 80004DA0 A66A0000 */ sh $t2, ($s3) -/* 0059A4 80004DA4 8FA50040 */ lw $a1, 0x40($sp) -.L80004DA8: -/* 0059A8 80004DA8 0C001287 */ jal func_80004A1C -/* 0059AC 80004DAC A7A70052 */ sh $a3, 0x52($sp) -/* 0059B0 80004DB0 87A70052 */ lh $a3, 0x52($sp) -/* 0059B4 80004DB4 A6A00000 */ sh $zero, ($s5) -/* 0059B8 80004DB8 2694000C */ addiu $s4, $s4, 0xc -.L80004DBC: -/* 0059BC 80004DBC 8E4B0004 */ lw $t3, 4($s2) -.L80004DC0: -/* 0059C0 80004DC0 000B6080 */ sll $t4, $t3, 2 -/* 0059C4 80004DC4 1617FFD4 */ bne $s0, $s7, .L80004D18 -/* 0059C8 80004DC8 024C9021 */ addu $s2, $s2, $t4 -/* 0059CC 80004DCC 8FBF003C */ lw $ra, 0x3c($sp) -/* 0059D0 80004DD0 8FB00018 */ lw $s0, 0x18($sp) -/* 0059D4 80004DD4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0059D8 80004DD8 8FB20020 */ lw $s2, 0x20($sp) -/* 0059DC 80004DDC 8FB30024 */ lw $s3, 0x24($sp) -/* 0059E0 80004DE0 8FB40028 */ lw $s4, 0x28($sp) -/* 0059E4 80004DE4 8FB5002C */ lw $s5, 0x2c($sp) -/* 0059E8 80004DE8 8FB60030 */ lw $s6, 0x30($sp) -/* 0059EC 80004DEC 8FB70034 */ lw $s7, 0x34($sp) -/* 0059F0 80004DF0 8FBE0038 */ lw $fp, 0x38($sp) -/* 0059F4 80004DF4 03E00008 */ jr $ra -/* 0059F8 80004DF8 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/non_matchings/code_80004740/func_80004DFC.s b/asm/non_matchings/code_80004740/func_80004DFC.s deleted file mode 100644 index 71f34c840..000000000 --- a/asm/non_matchings/code_80004740/func_80004DFC.s +++ /dev/null @@ -1,47 +0,0 @@ -glabel func_80004DFC -/* 0059FC 80004DFC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 005A00 80004E00 AFB00018 */ sw $s0, 0x18($sp) -/* 005A04 80004E04 00078400 */ sll $s0, $a3, 0x10 -/* 005A08 80004E08 00107403 */ sra $t6, $s0, 0x10 -/* 005A0C 80004E0C AFBF001C */ sw $ra, 0x1c($sp) -/* 005A10 80004E10 01C08025 */ move $s0, $t6 -/* 005A14 80004E14 AFA5002C */ sw $a1, 0x2c($sp) -/* 005A18 80004E18 AFA60030 */ sw $a2, 0x30($sp) -/* 005A1C 80004E1C 0C0A9EF5 */ jal segmented_to_virtual -/* 005A20 80004E20 AFA70034 */ sw $a3, 0x34($sp) -/* 005A24 80004E24 AFA20024 */ sw $v0, 0x24($sp) -/* 005A28 80004E28 0C0A9EF5 */ jal segmented_to_virtual -/* 005A2C 80004E2C 8FA4002C */ lw $a0, 0x2c($sp) -/* 005A30 80004E30 87AF0032 */ lh $t7, 0x32($sp) -/* 005A34 80004E34 000FC080 */ sll $t8, $t7, 2 -/* 005A38 80004E38 0058C821 */ addu $t9, $v0, $t8 -/* 005A3C 80004E3C 0C0A9EF5 */ jal segmented_to_virtual -/* 005A40 80004E40 8F240000 */ lw $a0, ($t9) -/* 005A44 80004E44 84480008 */ lh $t0, 8($v0) -/* 005A48 80004E48 00402825 */ move $a1, $v0 -/* 005A4C 80004E4C 8FA40024 */ lw $a0, 0x24($sp) -/* 005A50 80004E50 0208082A */ slt $at, $s0, $t0 -/* 005A54 80004E54 54200003 */ bnel $at, $zero, .L80004E64 -/* 005A58 80004E58 00103400 */ sll $a2, $s0, 0x10 -/* 005A5C 80004E5C 00008025 */ move $s0, $zero -/* 005A60 80004E60 00103400 */ sll $a2, $s0, 0x10 -.L80004E64: -/* 005A64 80004E64 00064C03 */ sra $t1, $a2, 0x10 -/* 005A68 80004E68 01203025 */ move $a2, $t1 -/* 005A6C 80004E6C 0C00130C */ jal func_80004C30 -/* 005A70 80004E70 AFA50020 */ sw $a1, 0x20($sp) -/* 005A74 80004E74 8FA50020 */ lw $a1, 0x20($sp) -/* 005A78 80004E78 26100001 */ addiu $s0, $s0, 1 -/* 005A7C 80004E7C 00105400 */ sll $t2, $s0, 0x10 -/* 005A80 80004E80 84AC0008 */ lh $t4, 8($a1) -/* 005A84 80004E84 000A8403 */ sra $s0, $t2, 0x10 -/* 005A88 80004E88 8FBF001C */ lw $ra, 0x1c($sp) -/* 005A8C 80004E8C 020C082A */ slt $at, $s0, $t4 -/* 005A90 80004E90 54200003 */ bnel $at, $zero, .L80004EA0 -/* 005A94 80004E94 02001025 */ move $v0, $s0 -/* 005A98 80004E98 00008025 */ move $s0, $zero -/* 005A9C 80004E9C 02001025 */ move $v0, $s0 -.L80004EA0: -/* 005AA0 80004EA0 8FB00018 */ lw $s0, 0x18($sp) -/* 005AA4 80004EA4 03E00008 */ jr $ra -/* 005AA8 80004EA8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/src/code_80004740.c b/src/code_80004740.c index 90179e011..38022c16b 100644 --- a/src/code_80004740.c +++ b/src/code_80004740.c @@ -65,12 +65,6 @@ void func_800048D8(Mat4 dest, Vec3f b, Vec3s c) { dest[3][3] = 1.0f; } -#if 1 -/* -https://decomp.me/scratch/v615X -Leaving this as non-matching due to all the animation stuff being in flux -But, as stuff currently stands, it is technically matching -*/ void func_80004A1C(animation_type_1 *arg0, s16 *arg1, animation_type_3_triplet arg2, s32 arg3) { Vec3f sp94; Vec3s sp8C; @@ -109,17 +103,7 @@ void func_80004A1C(animation_type_1 *arg0, s16 *arg1, animation_type_3_triplet a gSPDisplayList(gDisplayListHead++, some_dl); } } -#else -GLOBAL_ASM("asm/non_matchings/code_80004740/func_80004A1C.s") -#endif -#ifdef NON_MATCHING -/* -https://decomp.me/scratch/DCV5v -Leaving this as non-matching due to all the animation stuff being in flux -But, as stuff currently stands, it is technically matching -There is some really silly type-casting being done to arg0. I don't see a way around it :/ -*/ void func_80004C30(u32 *arg0, animation_type_2 *arg1, s16 arg2) { u32 *temp; s16 *sp40; @@ -167,15 +151,7 @@ void func_80004C30(u32 *arg0, animation_type_2 *arg1, s16 arg2) { arg0 += ((animation_type_1*)arg0)->size; } while (new_var != 3); } -#else -GLOBAL_ASM("asm/non_matchings/code_80004740/func_80004C30.s") -#endif -#ifdef NON_MATCHING -/* -Leaving this as non-matching due to all the animation stuff being in flux -But, as stuff currently stands, it is technically matching -*/ s16 func_80004DFC(animation_type_1 *arg0, animation_type_2 **arg1, s16 arg2, s16 arg3) { animation_type_1 *sp24; animation_type_2 *temp_v0; @@ -194,9 +170,6 @@ s16 func_80004DFC(animation_type_1 *arg0, animation_type_2 **arg1, s16 arg2, s16 } return arg3; } -#else -GLOBAL_ASM("asm/non_matchings/code_80004740/func_80004DFC.s") -#endif s16 func_80004EAC(void *addr, s16 offset) { uintptr_t *item = segmented_to_virtual(addr);