diff --git a/asm/non_matchings/unknown_00BC20/func_8000B290.s b/asm/non_matchings/unknown_00BC20/func_8000B290.s index 01e85857..13381ac9 100644 --- a/asm/non_matchings/unknown_00BC20/func_8000B290.s +++ b/asm/non_matchings/unknown_00BC20/func_8000B290.s @@ -48,7 +48,7 @@ glabel func_8000B290 /* 00BF38 8000B338 00000000 */ nop /* 00BF3C 8000B33C 10800003 */ beqz $a0, .L8000B34C /* 00BF40 8000B340 00000000 */ nop -/* 00BF44 8000B344 0C003FEE */ jal func_8000FFB8 +/* 00BF44 8000B344 0C003FEE */ jal particlePtrList_addObject /* 00BF48 8000B348 00000000 */ nop .L8000B34C: /* 00BF4C 8000B34C 3C11800E */ lui $s1, %hi(D_800DC764) # $s1, 0x800e @@ -57,7 +57,7 @@ glabel func_8000B290 /* 00BF58 8000B358 AE000000 */ sw $zero, ($s0) /* 00BF5C 8000B35C 10800003 */ beqz $a0, .L8000B36C /* 00BF60 8000B360 00000000 */ nop -/* 00BF64 8000B364 0C003FEE */ jal func_8000FFB8 +/* 00BF64 8000B364 0C003FEE */ jal particlePtrList_addObject /* 00BF68 8000B368 00000000 */ nop .L8000B36C: /* 00BF6C 8000B36C 0C004013 */ jal particlePtrList_flush diff --git a/asm/non_matchings/unknown_00BC20/func_8000CC7C.s b/asm/non_matchings/unknown_00BC20/func_8000CC7C.s index 3198ff92..69b3ced3 100644 --- a/asm/non_matchings/unknown_00BC20/func_8000CC7C.s +++ b/asm/non_matchings/unknown_00BC20/func_8000CC7C.s @@ -975,7 +975,7 @@ glabel func_8000CC7C /* 00E634 8000DA34 00000000 */ nop /* 00E638 8000DA38 11A00007 */ beqz $t5, .L8000DA58 /* 00E63C 8000DA3C 00000000 */ nop -/* 00E640 8000DA40 0C003FEE */ jal func_8000FFB8 +/* 00E640 8000DA40 0C003FEE */ jal particlePtrList_addObject /* 00E644 8000DA44 02202025 */ move $a0, $s1 /* 00E648 8000DA48 3C028012 */ lui $v0, %hi(objCount) # $v0, 0x8012 /* 00E64C 8000DA4C 8C42AE5C */ lw $v0, %lo(objCount)($v0) @@ -989,7 +989,7 @@ glabel func_8000CC7C /* 00E668 8000DA68 2B210002 */ slti $at, $t9, 2 /* 00E66C 8000DA6C 14200006 */ bnez $at, .L8000DA88 /* 00E670 8000DA70 00000000 */ nop -/* 00E674 8000DA74 0C003FEE */ jal func_8000FFB8 +/* 00E674 8000DA74 0C003FEE */ jal particlePtrList_addObject /* 00E678 8000DA78 02202025 */ move $a0, $s1 /* 00E67C 8000DA7C 3C028012 */ lui $v0, %hi(objCount) # $v0, 0x8012 /* 00E680 8000DA80 8C42AE5C */ lw $v0, %lo(objCount)($v0) diff --git a/asm/non_matchings/unknown_00BC20/func_8000E4D8.s b/asm/non_matchings/unknown_00BC20/func_8000E4D8.s deleted file mode 100644 index b16f7215..00000000 --- a/asm/non_matchings/unknown_00BC20/func_8000E4D8.s +++ /dev/null @@ -1,321 +0,0 @@ -glabel func_8000E4D8 -/* 00F0D8 8000E4D8 3C028012 */ lui $v0, %hi(D_8011AEF5) # $v0, 0x8012 -/* 00F0DC 8000E4DC 9042AEF5 */ lbu $v0, %lo(D_8011AEF5)($v0) -/* 00F0E0 8000E4E0 03E00008 */ jr $ra -/* 00F0E4 8000E4E4 00000000 */ nop - -/* 00F0E8 8000E4E8 00041880 */ sll $v1, $a0, 2 -/* 00F0EC 8000E4EC 3C028012 */ lui $v0, 0x8012 -/* 00F0F0 8000E4F0 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 -/* 00F0F4 8000E4F4 00431021 */ addu $v0, $v0, $v1 -/* 00F0F8 8000E4F8 25CEAEA0 */ addiu $t6, %lo(D_8011AEA0) # addiu $t6, $t6, -0x5160 -/* 00F0FC 8000E4FC 8C42AEB0 */ lw $v0, -0x5150($v0) -/* 00F100 8000E500 006E2821 */ addu $a1, $v1, $t6 -/* 00F104 8000E504 8CAF0000 */ lw $t7, ($a1) -/* 00F108 8000E508 3C198012 */ lui $t9, 0x8012 -/* 00F10C 8000E50C AC40000C */ sw $zero, 0xc($v0) -/* 00F110 8000E510 AC400008 */ sw $zero, 8($v0) -/* 00F114 8000E514 AC400004 */ sw $zero, 4($v0) -/* 00F118 8000E518 AC4F0000 */ sw $t7, ($v0) -/* 00F11C 8000E51C 0323C821 */ addu $t9, $t9, $v1 -/* 00F120 8000E520 8F39AE98 */ lw $t9, -0x5168($t9) -/* 00F124 8000E524 8CB80000 */ lw $t8, ($a1) -/* 00F128 8000E528 24020010 */ li $v0, 16 -/* 00F12C 8000E52C 00003825 */ move $a3, $zero -/* 00F130 8000E530 03194021 */ addu $t0, $t8, $t9 -.L8000E534: -/* 00F134 8000E534 24E70004 */ addiu $a3, $a3, 4 -/* 00F138 8000E538 A1000000 */ sb $zero, ($t0) -/* 00F13C 8000E53C A1000001 */ sb $zero, 1($t0) -/* 00F140 8000E540 A1000002 */ sb $zero, 2($t0) -/* 00F144 8000E544 A1000003 */ sb $zero, 3($t0) -/* 00F148 8000E548 14E2FFFA */ bne $a3, $v0, .L8000E534 -/* 00F14C 8000E54C 25080004 */ addiu $t0, $t0, 4 -/* 00F150 8000E550 03E00008 */ jr $ra -/* 00F154 8000E554 00000000 */ nop - -/* 00F158 8000E558 8C82003C */ lw $v0, 0x3c($a0) -/* 00F15C 8000E55C 3C058012 */ lui $a1, %hi(D_8011AE98) # $a1, 0x8012 -/* 00F160 8000E560 14400003 */ bnez $v0, .L8000E570 -/* 00F164 8000E564 24A5AE98 */ addiu $a1, %lo(D_8011AE98) # addiu $a1, $a1, -0x5168 -/* 00F168 8000E568 03E00008 */ jr $ra -/* 00F16C 8000E56C 24020001 */ li $v0, 1 - -.L8000E570: -/* 00F170 8000E570 8CA40000 */ lw $a0, ($a1) -/* 00F174 8000E574 00401825 */ move $v1, $v0 -/* 00F178 8000E578 0044082A */ slt $at, $v0, $a0 -/* 00F17C 8000E57C 1420000A */ bnez $at, .L8000E5A8 -/* 00F180 8000E580 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 -/* 00F184 8000E584 8DCEAEA0 */ lw $t6, %lo(D_8011AEA0)($t6) -/* 00F188 8000E588 00000000 */ nop -/* 00F18C 8000E58C 000E78C0 */ sll $t7, $t6, 3 -/* 00F190 8000E590 01E4C021 */ addu $t8, $t7, $a0 -/* 00F194 8000E594 0302082A */ slt $at, $t8, $v0 -/* 00F198 8000E598 14200003 */ bnez $at, .L8000E5A8 -/* 00F19C 8000E59C 00000000 */ nop -/* 00F1A0 8000E5A0 03E00008 */ jr $ra -/* 00F1A4 8000E5A4 00001025 */ move $v0, $zero - -.L8000E5A8: -/* 00F1A8 8000E5A8 8CA20004 */ lw $v0, 4($a1) -/* 00F1AC 8000E5AC 3C198012 */ lui $t9, %hi(D_8011AEA4) # $t9, 0x8012 -/* 00F1B0 8000E5B0 0062082A */ slt $at, $v1, $v0 -/* 00F1B4 8000E5B4 1420000A */ bnez $at, .L8000E5E0 -/* 00F1B8 8000E5B8 00000000 */ nop -/* 00F1BC 8000E5BC 8F39AEA4 */ lw $t9, %lo(D_8011AEA4)($t9) -/* 00F1C0 8000E5C0 00000000 */ nop -/* 00F1C4 8000E5C4 001940C0 */ sll $t0, $t9, 3 -/* 00F1C8 8000E5C8 01024821 */ addu $t1, $t0, $v0 -/* 00F1CC 8000E5CC 0123082A */ slt $at, $t1, $v1 -/* 00F1D0 8000E5D0 14200004 */ bnez $at, .L8000E5E4 -/* 00F1D4 8000E5D4 24020001 */ li $v0, 1 -/* 00F1D8 8000E5D8 03E00008 */ jr $ra -/* 00F1DC 8000E5DC 24020001 */ li $v0, 1 - -.L8000E5E0: -/* 00F1E0 8000E5E0 24020001 */ li $v0, 1 -.L8000E5E4: -/* 00F1E4 8000E5E4 03E00008 */ jr $ra -/* 00F1E8 8000E5E8 00000000 */ nop - -/* 00F1EC 8000E5EC 3C068012 */ lui $a2, %hi(D_8011AE98) # $a2, 0x8012 -/* 00F1F0 8000E5F0 3C0B8012 */ lui $t3, %hi(D_8011AEA0) # $t3, 0x8012 -/* 00F1F4 8000E5F4 256BAEA0 */ addiu $t3, %lo(D_8011AEA0) # addiu $t3, $t3, -0x5160 -/* 00F1F8 8000E5F8 24C6AE98 */ addiu $a2, %lo(D_8011AE98) # addiu $a2, $a2, -0x5168 -/* 00F1FC 8000E5FC 90820001 */ lbu $v0, 1($a0) -/* 00F200 8000E600 8CC30000 */ lw $v1, ($a2) -/* 00F204 8000E604 8D6F0000 */ lw $t7, ($t3) -/* 00F208 8000E608 8CC50004 */ lw $a1, 4($a2) -/* 00F20C 8000E60C 8D790004 */ lw $t9, 4($t3) -/* 00F210 8000E610 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 00F214 8000E614 304E003F */ andi $t6, $v0, 0x3f -/* 00F218 8000E618 0083082A */ slt $at, $a0, $v1 -/* 00F21C 8000E61C 01E3C021 */ addu $t8, $t7, $v1 -/* 00F220 8000E620 03256021 */ addu $t4, $t9, $a1 -/* 00F224 8000E624 01C01025 */ move $v0, $t6 -/* 00F228 8000E628 AFB8002C */ sw $t8, 0x2c($sp) -/* 00F22C 8000E62C 14200006 */ bnez $at, .L8000E648 -/* 00F230 8000E630 AFAC0030 */ sw $t4, 0x30($sp) -/* 00F234 8000E634 0098082A */ slt $at, $a0, $t8 -/* 00F238 8000E638 10200004 */ beqz $at, .L8000E64C -/* 00F23C 8000E63C 0085082A */ slt $at, $a0, $a1 -/* 00F240 8000E640 1000000A */ b .L8000E66C -/* 00F244 8000E644 AFA0001C */ sw $zero, 0x1c($sp) -.L8000E648: -/* 00F248 8000E648 0085082A */ slt $at, $a0, $a1 -.L8000E64C: -/* 00F24C 8000E64C 14200008 */ bnez $at, .L8000E670 -/* 00F250 8000E650 8FA8001C */ lw $t0, 0x1c($sp) -/* 00F254 8000E654 8FAE0030 */ lw $t6, 0x30($sp) -/* 00F258 8000E658 240F0001 */ li $t7, 1 -/* 00F25C 8000E65C 008E082A */ slt $at, $a0, $t6 -/* 00F260 8000E660 10200003 */ beqz $at, .L8000E670 -/* 00F264 8000E664 8FA8001C */ lw $t0, 0x1c($sp) -/* 00F268 8000E668 AFAF001C */ sw $t7, 0x1c($sp) -.L8000E66C: -/* 00F26C 8000E66C 8FA8001C */ lw $t0, 0x1c($sp) -.L8000E670: -/* 00F270 8000E670 00823021 */ addu $a2, $a0, $v0 -/* 00F274 8000E674 0008C080 */ sll $t8, $t0, 2 -/* 00F278 8000E678 03B83821 */ addu $a3, $sp, $t8 -/* 00F27C 8000E67C 8CE7002C */ lw $a3, 0x2c($a3) -/* 00F280 8000E680 00801825 */ move $v1, $a0 -/* 00F284 8000E684 00C7082B */ sltu $at, $a2, $a3 -/* 00F288 8000E688 00C02825 */ move $a1, $a2 -/* 00F28C 8000E68C 10200018 */ beqz $at, .L8000E6F0 -/* 00F290 8000E690 03004025 */ move $t0, $t8 -/* 00F294 8000E694 00E65023 */ subu $t2, $a3, $a2 -/* 00F298 8000E698 31590003 */ andi $t9, $t2, 3 -/* 00F29C 8000E69C 13200008 */ beqz $t9, .L8000E6C0 -/* 00F2A0 8000E6A0 03264821 */ addu $t1, $t9, $a2 -.L8000E6A4: -/* 00F2A4 8000E6A4 90AC0000 */ lbu $t4, ($a1) -/* 00F2A8 8000E6A8 24A50001 */ addiu $a1, $a1, 1 -/* 00F2AC 8000E6AC 24630001 */ addiu $v1, $v1, 1 -/* 00F2B0 8000E6B0 1525FFFC */ bne $t1, $a1, .L8000E6A4 -/* 00F2B4 8000E6B4 A06CFFFF */ sb $t4, -1($v1) -/* 00F2B8 8000E6B8 10A7000D */ beq $a1, $a3, .L8000E6F0 -/* 00F2BC 8000E6BC 00000000 */ nop -.L8000E6C0: -/* 00F2C0 8000E6C0 90AD0000 */ lbu $t5, ($a1) -/* 00F2C4 8000E6C4 24A50004 */ addiu $a1, $a1, 4 -/* 00F2C8 8000E6C8 A06D0000 */ sb $t5, ($v1) -/* 00F2CC 8000E6CC 90AEFFFD */ lbu $t6, -3($a1) -/* 00F2D0 8000E6D0 24630004 */ addiu $v1, $v1, 4 -/* 00F2D4 8000E6D4 A06EFFFD */ sb $t6, -3($v1) -/* 00F2D8 8000E6D8 90AFFFFE */ lbu $t7, -2($a1) -/* 00F2DC 8000E6DC 00000000 */ nop -/* 00F2E0 8000E6E0 A06FFFFE */ sb $t7, -2($v1) -/* 00F2E4 8000E6E4 90B8FFFF */ lbu $t8, -1($a1) -/* 00F2E8 8000E6E8 14A7FFF5 */ bne $a1, $a3, .L8000E6C0 -/* 00F2EC 8000E6EC A078FFFF */ sb $t8, -1($v1) -.L8000E6F0: -/* 00F2F0 8000E6F0 01681821 */ addu $v1, $t3, $t0 -/* 00F2F4 8000E6F4 8C790000 */ lw $t9, ($v1) -/* 00F2F8 8000E6F8 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 -/* 00F2FC 8000E6FC 03226023 */ subu $t4, $t9, $v0 -/* 00F300 8000E700 AC6C0000 */ sw $t4, ($v1) -/* 00F304 8000E704 8CC6AE5C */ lw $a2, %lo(objCount)($a2) -/* 00F308 8000E708 00004025 */ move $t0, $zero -/* 00F30C 8000E70C 18C00021 */ blez $a2, .L8000E794 -/* 00F310 8000E710 00002825 */ move $a1, $zero -/* 00F314 8000E714 3C0B8012 */ lui $t3, %hi(objPtrList) # $t3, 0x8012 -/* 00F318 8000E718 256BAE58 */ addiu $t3, %lo(objPtrList) # addiu $t3, $t3, -0x51a8 -.L8000E71C: -/* 00F31C 8000E71C 8D6D0000 */ lw $t5, ($t3) -/* 00F320 8000E720 24A50001 */ addiu $a1, $a1, 1 -/* 00F324 8000E724 01A87021 */ addu $t6, $t5, $t0 -/* 00F328 8000E728 8DC30000 */ lw $v1, ($t6) -/* 00F32C 8000E72C 00000000 */ nop -/* 00F330 8000E730 10600016 */ beqz $v1, .L8000E78C -/* 00F334 8000E734 00A6082A */ slt $at, $a1, $a2 -/* 00F338 8000E738 8C69003C */ lw $t1, 0x3c($v1) -/* 00F33C 8000E73C 00000000 */ nop -/* 00F340 8000E740 11200011 */ beqz $t1, .L8000E788 -/* 00F344 8000E744 0089082A */ slt $at, $a0, $t1 -/* 00F348 8000E748 10200009 */ beqz $at, .L8000E770 -/* 00F34C 8000E74C 01205025 */ move $t2, $t1 -/* 00F350 8000E750 0127082A */ slt $at, $t1, $a3 -/* 00F354 8000E754 10200006 */ beqz $at, .L8000E770 -/* 00F358 8000E758 01227823 */ subu $t7, $t1, $v0 -/* 00F35C 8000E75C AC6F003C */ sw $t7, 0x3c($v1) -/* 00F360 8000E760 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 -/* 00F364 8000E764 8CC6AE5C */ lw $a2, %lo(objCount)($a2) -/* 00F368 8000E768 10000008 */ b .L8000E78C -/* 00F36C 8000E76C 00A6082A */ slt $at, $a1, $a2 -.L8000E770: -/* 00F370 8000E770 148A0006 */ bne $a0, $t2, .L8000E78C -/* 00F374 8000E774 00A6082A */ slt $at, $a1, $a2 -/* 00F378 8000E778 AC60003C */ sw $zero, 0x3c($v1) -/* 00F37C 8000E77C 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 -/* 00F380 8000E780 8CC6AE5C */ lw $a2, %lo(objCount)($a2) -/* 00F384 8000E784 00000000 */ nop -.L8000E788: -/* 00F388 8000E788 00A6082A */ slt $at, $a1, $a2 -.L8000E78C: -/* 00F38C 8000E78C 1420FFE3 */ bnez $at, .L8000E71C -/* 00F390 8000E790 25080004 */ addiu $t0, $t0, 4 -.L8000E794: -/* 00F394 8000E794 03E00008 */ jr $ra -/* 00F398 8000E798 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 00F39C 8000E79C 3C068012 */ lui $a2, %hi(D_8011AEC0) # $a2, 0x8012 -/* 00F3A0 8000E7A0 8CC6AEC0 */ lw $a2, %lo(D_8011AEC0)($a2) -/* 00F3A4 8000E7A4 3C188012 */ lui $t8, %hi(D_8011AEA0) # $t8, 0x8012 -/* 00F3A8 8000E7A8 00064080 */ sll $t0, $a2, 2 -/* 00F3AC 8000E7AC 2718AEA0 */ addiu $t8, %lo(D_8011AEA0) # addiu $t8, $t8, -0x5160 -/* 00F3B0 8000E7B0 3C0D8012 */ lui $t5, 0x8012 -/* 00F3B4 8000E7B4 90820001 */ lbu $v0, 1($a0) -/* 00F3B8 8000E7B8 90A30001 */ lbu $v1, 1($a1) -/* 00F3BC 8000E7BC 01A86821 */ addu $t5, $t5, $t0 -/* 00F3C0 8000E7C0 01184821 */ addu $t1, $t0, $t8 -/* 00F3C4 8000E7C4 8D390000 */ lw $t9, ($t1) -/* 00F3C8 8000E7C8 8DADAEB0 */ lw $t5, -0x5150($t5) -/* 00F3CC 8000E7CC 304E003F */ andi $t6, $v0, 0x3f -/* 00F3D0 8000E7D0 306F003F */ andi $t7, $v1, 0x3f -/* 00F3D4 8000E7D4 01EE082A */ slt $at, $t7, $t6 -/* 00F3D8 8000E7D8 032D3821 */ addu $a3, $t9, $t5 -/* 00F3DC 8000E7DC 01C01025 */ move $v0, $t6 -/* 00F3E0 8000E7E0 01E01825 */ move $v1, $t7 -/* 00F3E4 8000E7E4 1020000E */ beqz $at, .L8000E820 -/* 00F3E8 8000E7E8 24E70010 */ addiu $a3, $a3, 0x10 -/* 00F3EC 8000E7EC 008E4021 */ addu $t0, $a0, $t6 -/* 00F3F0 8000E7F0 0107082B */ sltu $at, $t0, $a3 -/* 00F3F4 8000E7F4 008F3021 */ addu $a2, $a0, $t7 -/* 00F3F8 8000E7F8 10200017 */ beqz $at, .L8000E858 -/* 00F3FC 8000E7FC 00E05025 */ move $t2, $a3 -.L8000E800: -/* 00F400 8000E800 910E0000 */ lbu $t6, ($t0) -/* 00F404 8000E804 25080001 */ addiu $t0, $t0, 1 -/* 00F408 8000E808 010A082B */ sltu $at, $t0, $t2 -/* 00F40C 8000E80C 24C60001 */ addiu $a2, $a2, 1 -/* 00F410 8000E810 1420FFFB */ bnez $at, .L8000E800 -/* 00F414 8000E814 A0CEFFFF */ sb $t6, -1($a2) -/* 00F418 8000E818 10000010 */ b .L8000E85C -/* 00F41C 8000E81C 00003025 */ move $a2, $zero -.L8000E820: -/* 00F420 8000E820 0043082A */ slt $at, $v0, $v1 -/* 00F424 8000E824 1020000C */ beqz $at, .L8000E858 -/* 00F428 8000E828 00E37821 */ addu $t7, $a3, $v1 -/* 00F42C 8000E82C 01E23023 */ subu $a2, $t7, $v0 -/* 00F430 8000E830 00835021 */ addu $t2, $a0, $v1 -/* 00F434 8000E834 0146082B */ sltu $at, $t2, $a2 -/* 00F438 8000E838 10200007 */ beqz $at, .L8000E858 -/* 00F43C 8000E83C 00E04025 */ move $t0, $a3 -.L8000E840: -/* 00F440 8000E840 9118FFFF */ lbu $t8, -1($t0) -/* 00F444 8000E844 24C6FFFF */ addiu $a2, $a2, -1 -/* 00F448 8000E848 0146082B */ sltu $at, $t2, $a2 -/* 00F44C 8000E84C 2508FFFF */ addiu $t0, $t0, -1 -/* 00F450 8000E850 1420FFFB */ bnez $at, .L8000E840 -/* 00F454 8000E854 A0D80000 */ sb $t8, ($a2) -.L8000E858: -/* 00F458 8000E858 00003025 */ move $a2, $zero -.L8000E85C: -/* 00F45C 8000E85C 00803825 */ move $a3, $a0 -/* 00F460 8000E860 00A04025 */ move $t0, $a1 -.L8000E864: -/* 00F464 8000E864 91190000 */ lbu $t9, ($t0) -/* 00F468 8000E868 24C60001 */ addiu $a2, $a2, 1 -/* 00F46C 8000E86C 00C3082A */ slt $at, $a2, $v1 -/* 00F470 8000E870 24E70001 */ addiu $a3, $a3, 1 -/* 00F474 8000E874 25080001 */ addiu $t0, $t0, 1 -/* 00F478 8000E878 1420FFFA */ bnez $at, .L8000E864 -/* 00F47C 8000E87C A0F9FFFF */ sb $t9, -1($a3) -/* 00F480 8000E880 8D2D0000 */ lw $t5, ($t1) -/* 00F484 8000E884 00000000 */ nop -/* 00F488 8000E888 01A37021 */ addu $t6, $t5, $v1 -/* 00F48C 8000E88C 01C27823 */ subu $t7, $t6, $v0 -/* 00F490 8000E890 03E00008 */ jr $ra -/* 00F494 8000E894 AD2F0000 */ sw $t7, ($t1) - -/* 00F498 8000E898 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 -/* 00F49C 8000E89C 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 -/* 00F4A0 8000E8A0 00053080 */ sll $a2, $a1, 2 -/* 00F4A4 8000E8A4 90820001 */ lbu $v0, 1($a0) -/* 00F4A8 8000E8A8 00CF3821 */ addu $a3, $a2, $t7 -/* 00F4AC 8000E8AC 3C188012 */ lui $t8, 0x8012 -/* 00F4B0 8000E8B0 8CE80000 */ lw $t0, ($a3) -/* 00F4B4 8000E8B4 0306C021 */ addu $t8, $t8, $a2 -/* 00F4B8 8000E8B8 8F18AE98 */ lw $t8, -0x5168($t8) -/* 00F4BC 8000E8BC 304E003F */ andi $t6, $v0, 0x3f -/* 00F4C0 8000E8C0 010EC821 */ addu $t9, $t0, $t6 -/* 00F4C4 8000E8C4 01C01025 */ move $v0, $t6 -/* 00F4C8 8000E8C8 ACF90000 */ sw $t9, ($a3) -/* 00F4CC 8000E8CC 00004825 */ move $t1, $zero -/* 00F4D0 8000E8D0 19C0001B */ blez $t6, .L8000E940 -/* 00F4D4 8000E8D4 01181821 */ addu $v1, $t0, $t8 -/* 00F4D8 8000E8D8 31C80003 */ andi $t0, $t6, 3 -/* 00F4DC 8000E8DC 1100000A */ beqz $t0, .L8000E908 -/* 00F4E0 8000E8E0 01002825 */ move $a1, $t0 -/* 00F4E4 8000E8E4 00603021 */ addu $a2, $v1, $zero -/* 00F4E8 8000E8E8 00803821 */ addu $a3, $a0, $zero -.L8000E8EC: -/* 00F4EC 8000E8EC 90EA0000 */ lbu $t2, ($a3) -/* 00F4F0 8000E8F0 25290001 */ addiu $t1, $t1, 1 -/* 00F4F4 8000E8F4 24C60001 */ addiu $a2, $a2, 1 -/* 00F4F8 8000E8F8 24E70001 */ addiu $a3, $a3, 1 -/* 00F4FC 8000E8FC 14A9FFFB */ bne $a1, $t1, .L8000E8EC -/* 00F500 8000E900 A0CAFFFF */ sb $t2, -1($a2) -/* 00F504 8000E904 1122000E */ beq $t1, $v0, .L8000E940 -.L8000E908: -/* 00F508 8000E908 00693021 */ addu $a2, $v1, $t1 -/* 00F50C 8000E90C 00893821 */ addu $a3, $a0, $t1 -.L8000E910: -/* 00F510 8000E910 90EB0000 */ lbu $t3, ($a3) -/* 00F514 8000E914 25290004 */ addiu $t1, $t1, 4 -/* 00F518 8000E918 A0CB0000 */ sb $t3, ($a2) -/* 00F51C 8000E91C 90EC0001 */ lbu $t4, 1($a3) -/* 00F520 8000E920 24C60004 */ addiu $a2, $a2, 4 -/* 00F524 8000E924 A0CCFFFD */ sb $t4, -3($a2) -/* 00F528 8000E928 90ED0002 */ lbu $t5, 2($a3) -/* 00F52C 8000E92C 24E70004 */ addiu $a3, $a3, 4 -/* 00F530 8000E930 A0CDFFFE */ sb $t5, -2($a2) -/* 00F534 8000E934 90EEFFFF */ lbu $t6, -1($a3) -/* 00F538 8000E938 1522FFF5 */ bne $t1, $v0, .L8000E910 -/* 00F53C 8000E93C A0CEFFFF */ sb $t6, -1($a2) -.L8000E940: -/* 00F540 8000E940 03E00008 */ jr $ra -/* 00F544 8000E944 00601025 */ move $v0, $v1 - diff --git a/asm/non_matchings/unknown_00BC20/func_8000E4E8.s b/asm/non_matchings/unknown_00BC20/func_8000E4E8.s new file mode 100644 index 00000000..2a7123d6 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8000E4E8.s @@ -0,0 +1,32 @@ +glabel func_8000E4E8 +/* 00F0E8 8000E4E8 00041880 */ sll $v1, $a0, 2 +/* 00F0EC 8000E4EC 3C028012 */ lui $v0, 0x8012 +/* 00F0F0 8000E4F0 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 +/* 00F0F4 8000E4F4 00431021 */ addu $v0, $v0, $v1 +/* 00F0F8 8000E4F8 25CEAEA0 */ addiu $t6, %lo(D_8011AEA0) # addiu $t6, $t6, -0x5160 +/* 00F0FC 8000E4FC 8C42AEB0 */ lw $v0, -0x5150($v0) +/* 00F100 8000E500 006E2821 */ addu $a1, $v1, $t6 +/* 00F104 8000E504 8CAF0000 */ lw $t7, ($a1) +/* 00F108 8000E508 3C198012 */ lui $t9, 0x8012 +/* 00F10C 8000E50C AC40000C */ sw $zero, 0xc($v0) +/* 00F110 8000E510 AC400008 */ sw $zero, 8($v0) +/* 00F114 8000E514 AC400004 */ sw $zero, 4($v0) +/* 00F118 8000E518 AC4F0000 */ sw $t7, ($v0) +/* 00F11C 8000E51C 0323C821 */ addu $t9, $t9, $v1 +/* 00F120 8000E520 8F39AE98 */ lw $t9, -0x5168($t9) +/* 00F124 8000E524 8CB80000 */ lw $t8, ($a1) +/* 00F128 8000E528 24020010 */ li $v0, 16 +/* 00F12C 8000E52C 00003825 */ move $a3, $zero +/* 00F130 8000E530 03194021 */ addu $t0, $t8, $t9 +.L8000E534: +/* 00F134 8000E534 24E70004 */ addiu $a3, $a3, 4 +/* 00F138 8000E538 A1000000 */ sb $zero, ($t0) +/* 00F13C 8000E53C A1000001 */ sb $zero, 1($t0) +/* 00F140 8000E540 A1000002 */ sb $zero, 2($t0) +/* 00F144 8000E544 A1000003 */ sb $zero, 3($t0) +/* 00F148 8000E548 14E2FFFA */ bne $a3, $v0, .L8000E534 +/* 00F14C 8000E54C 25080004 */ addiu $t0, $t0, 4 +/* 00F150 8000E550 03E00008 */ jr $ra +/* 00F154 8000E554 00000000 */ nop + + diff --git a/asm/non_matchings/unknown_00BC20/func_8000E558.s b/asm/non_matchings/unknown_00BC20/func_8000E558.s new file mode 100644 index 00000000..d92a1870 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8000E558.s @@ -0,0 +1,45 @@ +glabel func_8000E558 +/* 00F158 8000E558 8C82003C */ lw $v0, 0x3c($a0) +/* 00F15C 8000E55C 3C058012 */ lui $a1, %hi(D_8011AE98) # $a1, 0x8012 +/* 00F160 8000E560 14400003 */ bnez $v0, .L8000E570 +/* 00F164 8000E564 24A5AE98 */ addiu $a1, %lo(D_8011AE98) # addiu $a1, $a1, -0x5168 +/* 00F168 8000E568 03E00008 */ jr $ra +/* 00F16C 8000E56C 24020001 */ li $v0, 1 + +.L8000E570: +/* 00F170 8000E570 8CA40000 */ lw $a0, ($a1) +/* 00F174 8000E574 00401825 */ move $v1, $v0 +/* 00F178 8000E578 0044082A */ slt $at, $v0, $a0 +/* 00F17C 8000E57C 1420000A */ bnez $at, .L8000E5A8 +/* 00F180 8000E580 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 +/* 00F184 8000E584 8DCEAEA0 */ lw $t6, %lo(D_8011AEA0)($t6) +/* 00F188 8000E588 00000000 */ nop +/* 00F18C 8000E58C 000E78C0 */ sll $t7, $t6, 3 +/* 00F190 8000E590 01E4C021 */ addu $t8, $t7, $a0 +/* 00F194 8000E594 0302082A */ slt $at, $t8, $v0 +/* 00F198 8000E598 14200003 */ bnez $at, .L8000E5A8 +/* 00F19C 8000E59C 00000000 */ nop +/* 00F1A0 8000E5A0 03E00008 */ jr $ra +/* 00F1A4 8000E5A4 00001025 */ move $v0, $zero + +.L8000E5A8: +/* 00F1A8 8000E5A8 8CA20004 */ lw $v0, 4($a1) +/* 00F1AC 8000E5AC 3C198012 */ lui $t9, %hi(D_8011AEA4) # $t9, 0x8012 +/* 00F1B0 8000E5B0 0062082A */ slt $at, $v1, $v0 +/* 00F1B4 8000E5B4 1420000A */ bnez $at, .L8000E5E0 +/* 00F1B8 8000E5B8 00000000 */ nop +/* 00F1BC 8000E5BC 8F39AEA4 */ lw $t9, %lo(D_8011AEA4)($t9) +/* 00F1C0 8000E5C0 00000000 */ nop +/* 00F1C4 8000E5C4 001940C0 */ sll $t0, $t9, 3 +/* 00F1C8 8000E5C8 01024821 */ addu $t1, $t0, $v0 +/* 00F1CC 8000E5CC 0123082A */ slt $at, $t1, $v1 +/* 00F1D0 8000E5D0 14200004 */ bnez $at, .L8000E5E4 +/* 00F1D4 8000E5D4 24020001 */ li $v0, 1 +/* 00F1D8 8000E5D8 03E00008 */ jr $ra +/* 00F1DC 8000E5DC 24020001 */ li $v0, 1 + +.L8000E5E0: +/* 00F1E0 8000E5E0 24020001 */ li $v0, 1 +.L8000E5E4: +/* 00F1E4 8000E5E4 03E00008 */ jr $ra +/* 00F1E8 8000E5E8 00000000 */ nop diff --git a/asm/non_matchings/unknown_00BC20/func_8000E5EC.s b/asm/non_matchings/unknown_00BC20/func_8000E5EC.s new file mode 100644 index 00000000..5e77aab2 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8000E5EC.s @@ -0,0 +1,121 @@ +glabel func_8000E5EC +/* 00F1EC 8000E5EC 3C068012 */ lui $a2, %hi(D_8011AE98) # $a2, 0x8012 +/* 00F1F0 8000E5F0 3C0B8012 */ lui $t3, %hi(D_8011AEA0) # $t3, 0x8012 +/* 00F1F4 8000E5F4 256BAEA0 */ addiu $t3, %lo(D_8011AEA0) # addiu $t3, $t3, -0x5160 +/* 00F1F8 8000E5F8 24C6AE98 */ addiu $a2, %lo(D_8011AE98) # addiu $a2, $a2, -0x5168 +/* 00F1FC 8000E5FC 90820001 */ lbu $v0, 1($a0) +/* 00F200 8000E600 8CC30000 */ lw $v1, ($a2) +/* 00F204 8000E604 8D6F0000 */ lw $t7, ($t3) +/* 00F208 8000E608 8CC50004 */ lw $a1, 4($a2) +/* 00F20C 8000E60C 8D790004 */ lw $t9, 4($t3) +/* 00F210 8000E610 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 00F214 8000E614 304E003F */ andi $t6, $v0, 0x3f +/* 00F218 8000E618 0083082A */ slt $at, $a0, $v1 +/* 00F21C 8000E61C 01E3C021 */ addu $t8, $t7, $v1 +/* 00F220 8000E620 03256021 */ addu $t4, $t9, $a1 +/* 00F224 8000E624 01C01025 */ move $v0, $t6 +/* 00F228 8000E628 AFB8002C */ sw $t8, 0x2c($sp) +/* 00F22C 8000E62C 14200006 */ bnez $at, .L8000E648 +/* 00F230 8000E630 AFAC0030 */ sw $t4, 0x30($sp) +/* 00F234 8000E634 0098082A */ slt $at, $a0, $t8 +/* 00F238 8000E638 10200004 */ beqz $at, .L8000E64C +/* 00F23C 8000E63C 0085082A */ slt $at, $a0, $a1 +/* 00F240 8000E640 1000000A */ b .L8000E66C +/* 00F244 8000E644 AFA0001C */ sw $zero, 0x1c($sp) +.L8000E648: +/* 00F248 8000E648 0085082A */ slt $at, $a0, $a1 +.L8000E64C: +/* 00F24C 8000E64C 14200008 */ bnez $at, .L8000E670 +/* 00F250 8000E650 8FA8001C */ lw $t0, 0x1c($sp) +/* 00F254 8000E654 8FAE0030 */ lw $t6, 0x30($sp) +/* 00F258 8000E658 240F0001 */ li $t7, 1 +/* 00F25C 8000E65C 008E082A */ slt $at, $a0, $t6 +/* 00F260 8000E660 10200003 */ beqz $at, .L8000E670 +/* 00F264 8000E664 8FA8001C */ lw $t0, 0x1c($sp) +/* 00F268 8000E668 AFAF001C */ sw $t7, 0x1c($sp) +.L8000E66C: +/* 00F26C 8000E66C 8FA8001C */ lw $t0, 0x1c($sp) +.L8000E670: +/* 00F270 8000E670 00823021 */ addu $a2, $a0, $v0 +/* 00F274 8000E674 0008C080 */ sll $t8, $t0, 2 +/* 00F278 8000E678 03B83821 */ addu $a3, $sp, $t8 +/* 00F27C 8000E67C 8CE7002C */ lw $a3, 0x2c($a3) +/* 00F280 8000E680 00801825 */ move $v1, $a0 +/* 00F284 8000E684 00C7082B */ sltu $at, $a2, $a3 +/* 00F288 8000E688 00C02825 */ move $a1, $a2 +/* 00F28C 8000E68C 10200018 */ beqz $at, .L8000E6F0 +/* 00F290 8000E690 03004025 */ move $t0, $t8 +/* 00F294 8000E694 00E65023 */ subu $t2, $a3, $a2 +/* 00F298 8000E698 31590003 */ andi $t9, $t2, 3 +/* 00F29C 8000E69C 13200008 */ beqz $t9, .L8000E6C0 +/* 00F2A0 8000E6A0 03264821 */ addu $t1, $t9, $a2 +.L8000E6A4: +/* 00F2A4 8000E6A4 90AC0000 */ lbu $t4, ($a1) +/* 00F2A8 8000E6A8 24A50001 */ addiu $a1, $a1, 1 +/* 00F2AC 8000E6AC 24630001 */ addiu $v1, $v1, 1 +/* 00F2B0 8000E6B0 1525FFFC */ bne $t1, $a1, .L8000E6A4 +/* 00F2B4 8000E6B4 A06CFFFF */ sb $t4, -1($v1) +/* 00F2B8 8000E6B8 10A7000D */ beq $a1, $a3, .L8000E6F0 +/* 00F2BC 8000E6BC 00000000 */ nop +.L8000E6C0: +/* 00F2C0 8000E6C0 90AD0000 */ lbu $t5, ($a1) +/* 00F2C4 8000E6C4 24A50004 */ addiu $a1, $a1, 4 +/* 00F2C8 8000E6C8 A06D0000 */ sb $t5, ($v1) +/* 00F2CC 8000E6CC 90AEFFFD */ lbu $t6, -3($a1) +/* 00F2D0 8000E6D0 24630004 */ addiu $v1, $v1, 4 +/* 00F2D4 8000E6D4 A06EFFFD */ sb $t6, -3($v1) +/* 00F2D8 8000E6D8 90AFFFFE */ lbu $t7, -2($a1) +/* 00F2DC 8000E6DC 00000000 */ nop +/* 00F2E0 8000E6E0 A06FFFFE */ sb $t7, -2($v1) +/* 00F2E4 8000E6E4 90B8FFFF */ lbu $t8, -1($a1) +/* 00F2E8 8000E6E8 14A7FFF5 */ bne $a1, $a3, .L8000E6C0 +/* 00F2EC 8000E6EC A078FFFF */ sb $t8, -1($v1) +.L8000E6F0: +/* 00F2F0 8000E6F0 01681821 */ addu $v1, $t3, $t0 +/* 00F2F4 8000E6F4 8C790000 */ lw $t9, ($v1) +/* 00F2F8 8000E6F8 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 +/* 00F2FC 8000E6FC 03226023 */ subu $t4, $t9, $v0 +/* 00F300 8000E700 AC6C0000 */ sw $t4, ($v1) +/* 00F304 8000E704 8CC6AE5C */ lw $a2, %lo(objCount)($a2) +/* 00F308 8000E708 00004025 */ move $t0, $zero +/* 00F30C 8000E70C 18C00021 */ blez $a2, .L8000E794 +/* 00F310 8000E710 00002825 */ move $a1, $zero +/* 00F314 8000E714 3C0B8012 */ lui $t3, %hi(objPtrList) # $t3, 0x8012 +/* 00F318 8000E718 256BAE58 */ addiu $t3, %lo(objPtrList) # addiu $t3, $t3, -0x51a8 +.L8000E71C: +/* 00F31C 8000E71C 8D6D0000 */ lw $t5, ($t3) +/* 00F320 8000E720 24A50001 */ addiu $a1, $a1, 1 +/* 00F324 8000E724 01A87021 */ addu $t6, $t5, $t0 +/* 00F328 8000E728 8DC30000 */ lw $v1, ($t6) +/* 00F32C 8000E72C 00000000 */ nop +/* 00F330 8000E730 10600016 */ beqz $v1, .L8000E78C +/* 00F334 8000E734 00A6082A */ slt $at, $a1, $a2 +/* 00F338 8000E738 8C69003C */ lw $t1, 0x3c($v1) +/* 00F33C 8000E73C 00000000 */ nop +/* 00F340 8000E740 11200011 */ beqz $t1, .L8000E788 +/* 00F344 8000E744 0089082A */ slt $at, $a0, $t1 +/* 00F348 8000E748 10200009 */ beqz $at, .L8000E770 +/* 00F34C 8000E74C 01205025 */ move $t2, $t1 +/* 00F350 8000E750 0127082A */ slt $at, $t1, $a3 +/* 00F354 8000E754 10200006 */ beqz $at, .L8000E770 +/* 00F358 8000E758 01227823 */ subu $t7, $t1, $v0 +/* 00F35C 8000E75C AC6F003C */ sw $t7, 0x3c($v1) +/* 00F360 8000E760 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 +/* 00F364 8000E764 8CC6AE5C */ lw $a2, %lo(objCount)($a2) +/* 00F368 8000E768 10000008 */ b .L8000E78C +/* 00F36C 8000E76C 00A6082A */ slt $at, $a1, $a2 +.L8000E770: +/* 00F370 8000E770 148A0006 */ bne $a0, $t2, .L8000E78C +/* 00F374 8000E774 00A6082A */ slt $at, $a1, $a2 +/* 00F378 8000E778 AC60003C */ sw $zero, 0x3c($v1) +/* 00F37C 8000E77C 3C068012 */ lui $a2, %hi(objCount) # $a2, 0x8012 +/* 00F380 8000E780 8CC6AE5C */ lw $a2, %lo(objCount)($a2) +/* 00F384 8000E784 00000000 */ nop +.L8000E788: +/* 00F388 8000E788 00A6082A */ slt $at, $a1, $a2 +.L8000E78C: +/* 00F38C 8000E78C 1420FFE3 */ bnez $at, .L8000E71C +/* 00F390 8000E790 25080004 */ addiu $t0, $t0, 4 +.L8000E794: +/* 00F394 8000E794 03E00008 */ jr $ra +/* 00F398 8000E798 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/asm/non_matchings/unknown_00BC20/func_8000E79C.s b/asm/non_matchings/unknown_00BC20/func_8000E79C.s new file mode 100644 index 00000000..01b254bb --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8000E79C.s @@ -0,0 +1,70 @@ +glabel func_8000E79C +/* 00F39C 8000E79C 3C068012 */ lui $a2, %hi(D_8011AEC0) # $a2, 0x8012 +/* 00F3A0 8000E7A0 8CC6AEC0 */ lw $a2, %lo(D_8011AEC0)($a2) +/* 00F3A4 8000E7A4 3C188012 */ lui $t8, %hi(D_8011AEA0) # $t8, 0x8012 +/* 00F3A8 8000E7A8 00064080 */ sll $t0, $a2, 2 +/* 00F3AC 8000E7AC 2718AEA0 */ addiu $t8, %lo(D_8011AEA0) # addiu $t8, $t8, -0x5160 +/* 00F3B0 8000E7B0 3C0D8012 */ lui $t5, 0x8012 +/* 00F3B4 8000E7B4 90820001 */ lbu $v0, 1($a0) +/* 00F3B8 8000E7B8 90A30001 */ lbu $v1, 1($a1) +/* 00F3BC 8000E7BC 01A86821 */ addu $t5, $t5, $t0 +/* 00F3C0 8000E7C0 01184821 */ addu $t1, $t0, $t8 +/* 00F3C4 8000E7C4 8D390000 */ lw $t9, ($t1) +/* 00F3C8 8000E7C8 8DADAEB0 */ lw $t5, -0x5150($t5) +/* 00F3CC 8000E7CC 304E003F */ andi $t6, $v0, 0x3f +/* 00F3D0 8000E7D0 306F003F */ andi $t7, $v1, 0x3f +/* 00F3D4 8000E7D4 01EE082A */ slt $at, $t7, $t6 +/* 00F3D8 8000E7D8 032D3821 */ addu $a3, $t9, $t5 +/* 00F3DC 8000E7DC 01C01025 */ move $v0, $t6 +/* 00F3E0 8000E7E0 01E01825 */ move $v1, $t7 +/* 00F3E4 8000E7E4 1020000E */ beqz $at, .L8000E820 +/* 00F3E8 8000E7E8 24E70010 */ addiu $a3, $a3, 0x10 +/* 00F3EC 8000E7EC 008E4021 */ addu $t0, $a0, $t6 +/* 00F3F0 8000E7F0 0107082B */ sltu $at, $t0, $a3 +/* 00F3F4 8000E7F4 008F3021 */ addu $a2, $a0, $t7 +/* 00F3F8 8000E7F8 10200017 */ beqz $at, .L8000E858 +/* 00F3FC 8000E7FC 00E05025 */ move $t2, $a3 +.L8000E800: +/* 00F400 8000E800 910E0000 */ lbu $t6, ($t0) +/* 00F404 8000E804 25080001 */ addiu $t0, $t0, 1 +/* 00F408 8000E808 010A082B */ sltu $at, $t0, $t2 +/* 00F40C 8000E80C 24C60001 */ addiu $a2, $a2, 1 +/* 00F410 8000E810 1420FFFB */ bnez $at, .L8000E800 +/* 00F414 8000E814 A0CEFFFF */ sb $t6, -1($a2) +/* 00F418 8000E818 10000010 */ b .L8000E85C +/* 00F41C 8000E81C 00003025 */ move $a2, $zero +.L8000E820: +/* 00F420 8000E820 0043082A */ slt $at, $v0, $v1 +/* 00F424 8000E824 1020000C */ beqz $at, .L8000E858 +/* 00F428 8000E828 00E37821 */ addu $t7, $a3, $v1 +/* 00F42C 8000E82C 01E23023 */ subu $a2, $t7, $v0 +/* 00F430 8000E830 00835021 */ addu $t2, $a0, $v1 +/* 00F434 8000E834 0146082B */ sltu $at, $t2, $a2 +/* 00F438 8000E838 10200007 */ beqz $at, .L8000E858 +/* 00F43C 8000E83C 00E04025 */ move $t0, $a3 +.L8000E840: +/* 00F440 8000E840 9118FFFF */ lbu $t8, -1($t0) +/* 00F444 8000E844 24C6FFFF */ addiu $a2, $a2, -1 +/* 00F448 8000E848 0146082B */ sltu $at, $t2, $a2 +/* 00F44C 8000E84C 2508FFFF */ addiu $t0, $t0, -1 +/* 00F450 8000E850 1420FFFB */ bnez $at, .L8000E840 +/* 00F454 8000E854 A0D80000 */ sb $t8, ($a2) +.L8000E858: +/* 00F458 8000E858 00003025 */ move $a2, $zero +.L8000E85C: +/* 00F45C 8000E85C 00803825 */ move $a3, $a0 +/* 00F460 8000E860 00A04025 */ move $t0, $a1 +.L8000E864: +/* 00F464 8000E864 91190000 */ lbu $t9, ($t0) +/* 00F468 8000E868 24C60001 */ addiu $a2, $a2, 1 +/* 00F46C 8000E86C 00C3082A */ slt $at, $a2, $v1 +/* 00F470 8000E870 24E70001 */ addiu $a3, $a3, 1 +/* 00F474 8000E874 25080001 */ addiu $t0, $t0, 1 +/* 00F478 8000E878 1420FFFA */ bnez $at, .L8000E864 +/* 00F47C 8000E87C A0F9FFFF */ sb $t9, -1($a3) +/* 00F480 8000E880 8D2D0000 */ lw $t5, ($t1) +/* 00F484 8000E884 00000000 */ nop +/* 00F488 8000E888 01A37021 */ addu $t6, $t5, $v1 +/* 00F48C 8000E88C 01C27823 */ subu $t7, $t6, $v0 +/* 00F490 8000E890 03E00008 */ jr $ra +/* 00F494 8000E894 AD2F0000 */ sw $t7, ($t1) diff --git a/asm/non_matchings/unknown_00BC20/func_8000E898.s b/asm/non_matchings/unknown_00BC20/func_8000E898.s new file mode 100644 index 00000000..c37a9ed5 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8000E898.s @@ -0,0 +1,49 @@ +glabel func_8000E898 +/* 00F498 8000E898 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 +/* 00F49C 8000E89C 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 +/* 00F4A0 8000E8A0 00053080 */ sll $a2, $a1, 2 +/* 00F4A4 8000E8A4 90820001 */ lbu $v0, 1($a0) +/* 00F4A8 8000E8A8 00CF3821 */ addu $a3, $a2, $t7 +/* 00F4AC 8000E8AC 3C188012 */ lui $t8, 0x8012 +/* 00F4B0 8000E8B0 8CE80000 */ lw $t0, ($a3) +/* 00F4B4 8000E8B4 0306C021 */ addu $t8, $t8, $a2 +/* 00F4B8 8000E8B8 8F18AE98 */ lw $t8, -0x5168($t8) +/* 00F4BC 8000E8BC 304E003F */ andi $t6, $v0, 0x3f +/* 00F4C0 8000E8C0 010EC821 */ addu $t9, $t0, $t6 +/* 00F4C4 8000E8C4 01C01025 */ move $v0, $t6 +/* 00F4C8 8000E8C8 ACF90000 */ sw $t9, ($a3) +/* 00F4CC 8000E8CC 00004825 */ move $t1, $zero +/* 00F4D0 8000E8D0 19C0001B */ blez $t6, .L8000E940 +/* 00F4D4 8000E8D4 01181821 */ addu $v1, $t0, $t8 +/* 00F4D8 8000E8D8 31C80003 */ andi $t0, $t6, 3 +/* 00F4DC 8000E8DC 1100000A */ beqz $t0, .L8000E908 +/* 00F4E0 8000E8E0 01002825 */ move $a1, $t0 +/* 00F4E4 8000E8E4 00603021 */ addu $a2, $v1, $zero +/* 00F4E8 8000E8E8 00803821 */ addu $a3, $a0, $zero +.L8000E8EC: +/* 00F4EC 8000E8EC 90EA0000 */ lbu $t2, ($a3) +/* 00F4F0 8000E8F0 25290001 */ addiu $t1, $t1, 1 +/* 00F4F4 8000E8F4 24C60001 */ addiu $a2, $a2, 1 +/* 00F4F8 8000E8F8 24E70001 */ addiu $a3, $a3, 1 +/* 00F4FC 8000E8FC 14A9FFFB */ bne $a1, $t1, .L8000E8EC +/* 00F500 8000E900 A0CAFFFF */ sb $t2, -1($a2) +/* 00F504 8000E904 1122000E */ beq $t1, $v0, .L8000E940 +.L8000E908: +/* 00F508 8000E908 00693021 */ addu $a2, $v1, $t1 +/* 00F50C 8000E90C 00893821 */ addu $a3, $a0, $t1 +.L8000E910: +/* 00F510 8000E910 90EB0000 */ lbu $t3, ($a3) +/* 00F514 8000E914 25290004 */ addiu $t1, $t1, 4 +/* 00F518 8000E918 A0CB0000 */ sb $t3, ($a2) +/* 00F51C 8000E91C 90EC0001 */ lbu $t4, 1($a3) +/* 00F520 8000E920 24C60004 */ addiu $a2, $a2, 4 +/* 00F524 8000E924 A0CCFFFD */ sb $t4, -3($a2) +/* 00F528 8000E928 90ED0002 */ lbu $t5, 2($a3) +/* 00F52C 8000E92C 24E70004 */ addiu $a3, $a3, 4 +/* 00F530 8000E930 A0CDFFFE */ sb $t5, -2($a2) +/* 00F534 8000E934 90EEFFFF */ lbu $t6, -1($a3) +/* 00F538 8000E938 1522FFF5 */ bne $t1, $v0, .L8000E910 +/* 00F53C 8000E93C A0CEFFFF */ sb $t6, -1($a2) +.L8000E940: +/* 00F540 8000E940 03E00008 */ jr $ra +/* 00F544 8000E944 00601025 */ move $v0, $v1 diff --git a/asm/non_matchings/unknown_00BC20/func_800101AC.s b/asm/non_matchings/unknown_00BC20/func_800101AC.s index 38c36e7d..45c3e15d 100644 --- a/asm/non_matchings/unknown_00BC20/func_800101AC.s +++ b/asm/non_matchings/unknown_00BC20/func_800101AC.s @@ -224,7 +224,7 @@ glabel func_800101AC /* 0110E4 800104E4 00000000 */ nop /* 0110E8 800104E8 17200005 */ bnez $t9, .L80010500 /* 0110EC 800104EC 00000000 */ nop -/* 0110F0 800104F0 0C003FEE */ jal func_8000FFB8 +/* 0110F0 800104F0 0C003FEE */ jal particlePtrList_addObject /* 0110F4 800104F4 00000000 */ nop /* 0110F8 800104F8 86C50048 */ lh $a1, 0x48($s6) /* 0110FC 800104FC 00000000 */ nop @@ -430,7 +430,7 @@ glabel func_800101AC /* 0113C8 800107C8 16420003 */ bne $s2, $v0, .L800107D8 /* 0113CC 800107CC 00000000 */ nop .L800107D0: -/* 0113D0 800107D0 0C003FEE */ jal func_8000FFB8 +/* 0113D0 800107D0 0C003FEE */ jal particlePtrList_addObject /* 0113D4 800107D4 00000000 */ nop .L800107D8: /* 0113D8 800107D8 8EB80000 */ lw $t8, ($s5) diff --git a/asm/non_matchings/unknown_00BC20/func_800142B8.s b/asm/non_matchings/unknown_00BC20/func_800142B8.s deleted file mode 100644 index 17463a95..00000000 --- a/asm/non_matchings/unknown_00BC20/func_800142B8.s +++ /dev/null @@ -1,69 +0,0 @@ -glabel func_800142B8 -/* 014EB8 800142B8 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 -/* 014EBC 800142BC 3C038012 */ lui $v1, %hi(objCount) # $v1, 0x8012 -/* 014EC0 800142C0 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) -/* 014EC4 800142C4 8C63AE5C */ lw $v1, %lo(objCount)($v1) -/* 014EC8 800142C8 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 -/* 014ECC 800142CC 0043082A */ slt $at, $v0, $v1 -/* 014ED0 800142D0 10200033 */ beqz $at, .L800143A0 -/* 014ED4 800142D4 00022880 */ sll $a1, $v0, 2 -/* 014ED8 800142D8 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 -.L800142DC: -/* 014EDC 800142DC 8D4E0000 */ lw $t6, ($t2) -/* 014EE0 800142E0 24420001 */ addiu $v0, $v0, 1 -/* 014EE4 800142E4 01C57821 */ addu $t7, $t6, $a1 -/* 014EE8 800142E8 8DE40000 */ lw $a0, ($t7) -/* 014EEC 800142EC 00000000 */ nop -/* 014EF0 800142F0 84980006 */ lh $t8, 6($a0) -/* 014EF4 800142F4 00000000 */ nop -/* 014EF8 800142F8 33198000 */ andi $t9, $t8, 0x8000 -/* 014EFC 800142FC 17200026 */ bnez $t9, .L80014398 -/* 014F00 80014300 0043082A */ slt $at, $v0, $v1 -/* 014F04 80014304 8C860040 */ lw $a2, 0x40($a0) -/* 014F08 80014308 00000000 */ nop -/* 014F0C 8001430C 80CB0053 */ lb $t3, 0x53($a2) -/* 014F10 80014310 00000000 */ nop -/* 014F14 80014314 15600020 */ bnez $t3, .L80014398 -/* 014F18 80014318 0043082A */ slt $at, $v0, $v1 -/* 014F1C 8001431C 80C80055 */ lb $t0, 0x55($a2) -/* 014F20 80014320 00003025 */ move $a2, $zero -/* 014F24 80014324 1900001B */ blez $t0, .L80014394 -/* 014F28 80014328 00003825 */ move $a3, $zero -.L8001432C: -/* 014F2C 8001432C 8C8C0068 */ lw $t4, 0x68($a0) -/* 014F30 80014330 24E70001 */ addiu $a3, $a3, 1 -/* 014F34 80014334 01866821 */ addu $t5, $t4, $a2 -/* 014F38 80014338 8DA30000 */ lw $v1, ($t5) -/* 014F3C 8001433C 00000000 */ nop -/* 014F40 80014340 1060000F */ beqz $v1, .L80014380 -/* 014F44 80014344 00E8082A */ slt $at, $a3, $t0 -/* 014F48 80014348 80690020 */ lb $t1, 0x20($v1) -/* 014F4C 8001434C 00000000 */ nop -/* 014F50 80014350 1920000A */ blez $t1, .L8001437C -/* 014F54 80014354 312E0003 */ andi $t6, $t1, 3 -/* 014F58 80014358 A06E0020 */ sb $t6, 0x20($v1) -/* 014F5C 8001435C 806F0020 */ lb $t7, 0x20($v1) -/* 014F60 80014360 00000000 */ nop -/* 014F64 80014364 25F8FFFF */ addiu $t8, $t7, -1 -/* 014F68 80014368 A0780020 */ sb $t8, 0x20($v1) -/* 014F6C 8001436C 8C990040 */ lw $t9, 0x40($a0) -/* 014F70 80014370 00000000 */ nop -/* 014F74 80014374 83280055 */ lb $t0, 0x55($t9) -/* 014F78 80014378 00000000 */ nop -.L8001437C: -/* 014F7C 8001437C 00E8082A */ slt $at, $a3, $t0 -.L80014380: -/* 014F80 80014380 1420FFEA */ bnez $at, .L8001432C -/* 014F84 80014384 24C60004 */ addiu $a2, $a2, 4 -/* 014F88 80014388 3C038012 */ lui $v1, %hi(objCount) # $v1, 0x8012 -/* 014F8C 8001438C 8C63AE5C */ lw $v1, %lo(objCount)($v1) -/* 014F90 80014390 00000000 */ nop -.L80014394: -/* 014F94 80014394 0043082A */ slt $at, $v0, $v1 -.L80014398: -/* 014F98 80014398 1420FFD0 */ bnez $at, .L800142DC -/* 014F9C 8001439C 24A50004 */ addiu $a1, $a1, 4 -.L800143A0: -/* 014FA0 800143A0 03E00008 */ jr $ra -/* 014FA4 800143A4 00000000 */ nop - diff --git a/asm/non_matchings/unknown_00BC20/func_80014CCC.s b/asm/non_matchings/unknown_00BC20/func_80014CCC.s new file mode 100644 index 00000000..18735204 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_80014CCC.s @@ -0,0 +1,462 @@ +glabel func_80014CCC +/* 0158CC 80014CCC 00A4082A */ slt $at, $a1, $a0 +/* 0158D0 80014CD0 1420019B */ bnez $at, .L80015340 +/* 0158D4 80014CD4 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 +/* 0158D8 80014CD8 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 +/* 0158DC 80014CDC 0064082A */ slt $at, $v1, $a0 +.L80014CE0: +/* 0158E0 80014CE0 1420001D */ bnez $at, .L80014D58 +/* 0158E4 80014CE4 00A2082A */ slt $at, $a1, $v0 +/* 0158E8 80014CE8 8D590000 */ lw $t9, ($t2) +/* 0158EC 80014CEC 00045880 */ sll $t3, $a0, 2 +/* 0158F0 80014CF0 032B3821 */ addu $a3, $t9, $t3 +/* 0158F4 80014CF4 8CE60000 */ lw $a2, ($a3) +/* 0158F8 80014CF8 00000000 */ nop +/* 0158FC 80014CFC C4C40010 */ lwc1 $f4, 0x10($a2) +/* 015900 80014D00 C4C60034 */ lwc1 $f6, 0x34($a2) +/* 015904 80014D04 00000000 */ nop +/* 015908 80014D08 46062201 */ sub.s $f8, $f4, $f6 +/* 01590C 80014D0C 460C403C */ c.lt.s $f8, $f12 +/* 015910 80014D10 00000000 */ nop +/* 015914 80014D14 45000010 */ bc1f .L80014D58 +/* 015918 80014D18 00A2082A */ slt $at, $a1, $v0 +.L80014D1C: +/* 01591C 80014D1C 24840001 */ addiu $a0, $a0, 1 +/* 015920 80014D20 0064082A */ slt $at, $v1, $a0 +/* 015924 80014D24 1420000B */ bnez $at, .L80014D54 +/* 015928 80014D28 24E70004 */ addiu $a3, $a3, 4 +/* 01592C 80014D2C 8CE60000 */ lw $a2, ($a3) +/* 015930 80014D30 00000000 */ nop +/* 015934 80014D34 C4CA0010 */ lwc1 $f10, 0x10($a2) +/* 015938 80014D38 C4D00034 */ lwc1 $f16, 0x34($a2) +/* 01593C 80014D3C 00000000 */ nop +/* 015940 80014D40 46105481 */ sub.s $f18, $f10, $f16 +/* 015944 80014D44 460C903C */ c.lt.s $f18, $f12 +/* 015948 80014D48 00000000 */ nop +/* 01594C 80014D4C 4501FFF3 */ bc1t .L80014D1C +/* 015950 80014D50 00000000 */ nop +.L80014D54: +/* 015954 80014D54 00A2082A */ slt $at, $a1, $v0 +.L80014D58: +/* 015958 80014D58 1420001C */ bnez $at, .L80014DCC +/* 01595C 80014D5C 00047080 */ sll $t6, $a0, 2 +/* 015960 80014D60 8D4C0000 */ lw $t4, ($t2) +/* 015964 80014D64 00056880 */ sll $t5, $a1, 2 +/* 015968 80014D68 018D3021 */ addu $a2, $t4, $t5 +/* 01596C 80014D6C 8CC70000 */ lw $a3, ($a2) +/* 015970 80014D70 00000000 */ nop +/* 015974 80014D74 C4E40010 */ lwc1 $f4, 0x10($a3) +/* 015978 80014D78 C4E60034 */ lwc1 $f6, 0x34($a3) +/* 01597C 80014D7C 00000000 */ nop +/* 015980 80014D80 46062201 */ sub.s $f8, $f4, $f6 +/* 015984 80014D84 4608603E */ c.le.s $f12, $f8 +/* 015988 80014D88 00000000 */ nop +/* 01598C 80014D8C 45000010 */ bc1f .L80014DD0 +/* 015990 80014D90 0085082A */ slt $at, $a0, $a1 +.L80014D94: +/* 015994 80014D94 24A5FFFF */ addiu $a1, $a1, -1 +/* 015998 80014D98 00A2082A */ slt $at, $a1, $v0 +/* 01599C 80014D9C 1420000B */ bnez $at, .L80014DCC +/* 0159A0 80014DA0 24C6FFFC */ addiu $a2, $a2, -4 +/* 0159A4 80014DA4 8CC70000 */ lw $a3, ($a2) +/* 0159A8 80014DA8 00000000 */ nop +/* 0159AC 80014DAC C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 0159B0 80014DB0 C4F00034 */ lwc1 $f16, 0x34($a3) +/* 0159B4 80014DB4 00000000 */ nop +/* 0159B8 80014DB8 46105481 */ sub.s $f18, $f10, $f16 +/* 0159BC 80014DBC 4612603E */ c.le.s $f12, $f18 +/* 0159C0 80014DC0 00000000 */ nop +/* 0159C4 80014DC4 4501FFF3 */ bc1t .L80014D94 +/* 0159C8 80014DC8 00000000 */ nop +.L80014DCC: +/* 0159CC 80014DCC 0085082A */ slt $at, $a0, $a1 +.L80014DD0: +/* 0159D0 80014DD0 1020000C */ beqz $at, .L80014E04 +/* 0159D4 80014DD4 00054080 */ sll $t0, $a1, 2 +/* 0159D8 80014DD8 8D460000 */ lw $a2, ($t2) +/* 0159DC 80014DDC 24840001 */ addiu $a0, $a0, 1 +/* 0159E0 80014DE0 00C87821 */ addu $t7, $a2, $t0 +/* 0159E4 80014DE4 8DF80000 */ lw $t8, ($t7) +/* 0159E8 80014DE8 00CE3821 */ addu $a3, $a2, $t6 +/* 0159EC 80014DEC 8CE90000 */ lw $t1, ($a3) +/* 0159F0 80014DF0 ACF80000 */ sw $t8, ($a3) +/* 0159F4 80014DF4 8D590000 */ lw $t9, ($t2) +/* 0159F8 80014DF8 24A5FFFF */ addiu $a1, $a1, -1 +/* 0159FC 80014DFC 03285821 */ addu $t3, $t9, $t0 +/* 015A00 80014E00 AD690000 */ sw $t1, ($t3) +.L80014E04: +/* 015A04 80014E04 00A4082A */ slt $at, $a1, $a0 +/* 015A08 80014E08 1020FFB5 */ beqz $at, .L80014CE0 +/* 015A0C 80014E0C 0064082A */ slt $at, $v1, $a0 +/* 015A10 80014E10 03E00008 */ jr $ra +/* 015A14 80014E14 00801025 */ move $v0, $a0 + +/* 015A18 80014E18 00A4082A */ slt $at, $a1, $a0 +/* 015A1C 80014E1C 14200148 */ bnez $at, .L80015340 +/* 015A20 80014E20 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 +/* 015A24 80014E24 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 +/* 015A28 80014E28 0064082A */ slt $at, $v1, $a0 +.L80014E2C: +/* 015A2C 80014E2C 1420001D */ bnez $at, .L80014EA4 +/* 015A30 80014E30 00A2082A */ slt $at, $a1, $v0 +/* 015A34 80014E34 8D4C0000 */ lw $t4, ($t2) +/* 015A38 80014E38 00046880 */ sll $t5, $a0, 2 +/* 015A3C 80014E3C 018D3821 */ addu $a3, $t4, $t5 +/* 015A40 80014E40 8CE60000 */ lw $a2, ($a3) +/* 015A44 80014E44 00000000 */ nop +/* 015A48 80014E48 C4C40014 */ lwc1 $f4, 0x14($a2) +/* 015A4C 80014E4C C4C60034 */ lwc1 $f6, 0x34($a2) +/* 015A50 80014E50 00000000 */ nop +/* 015A54 80014E54 46062201 */ sub.s $f8, $f4, $f6 +/* 015A58 80014E58 460C403C */ c.lt.s $f8, $f12 +/* 015A5C 80014E5C 00000000 */ nop +/* 015A60 80014E60 45000010 */ bc1f .L80014EA4 +/* 015A64 80014E64 00A2082A */ slt $at, $a1, $v0 +.L80014E68: +/* 015A68 80014E68 24840001 */ addiu $a0, $a0, 1 +/* 015A6C 80014E6C 0064082A */ slt $at, $v1, $a0 +/* 015A70 80014E70 1420000B */ bnez $at, .L80014EA0 +/* 015A74 80014E74 24E70004 */ addiu $a3, $a3, 4 +/* 015A78 80014E78 8CE60000 */ lw $a2, ($a3) +/* 015A7C 80014E7C 00000000 */ nop +/* 015A80 80014E80 C4CA0014 */ lwc1 $f10, 0x14($a2) +/* 015A84 80014E84 C4D00034 */ lwc1 $f16, 0x34($a2) +/* 015A88 80014E88 00000000 */ nop +/* 015A8C 80014E8C 46105481 */ sub.s $f18, $f10, $f16 +/* 015A90 80014E90 460C903C */ c.lt.s $f18, $f12 +/* 015A94 80014E94 00000000 */ nop +/* 015A98 80014E98 4501FFF3 */ bc1t .L80014E68 +/* 015A9C 80014E9C 00000000 */ nop +.L80014EA0: +/* 015AA0 80014EA0 00A2082A */ slt $at, $a1, $v0 +.L80014EA4: +/* 015AA4 80014EA4 1420001C */ bnez $at, .L80014F18 +/* 015AA8 80014EA8 0004C080 */ sll $t8, $a0, 2 +/* 015AAC 80014EAC 8D4E0000 */ lw $t6, ($t2) +/* 015AB0 80014EB0 00057880 */ sll $t7, $a1, 2 +/* 015AB4 80014EB4 01CF3021 */ addu $a2, $t6, $t7 +/* 015AB8 80014EB8 8CC70000 */ lw $a3, ($a2) +/* 015ABC 80014EBC 00000000 */ nop +/* 015AC0 80014EC0 C4E40014 */ lwc1 $f4, 0x14($a3) +/* 015AC4 80014EC4 C4E60034 */ lwc1 $f6, 0x34($a3) +/* 015AC8 80014EC8 00000000 */ nop +/* 015ACC 80014ECC 46062201 */ sub.s $f8, $f4, $f6 +/* 015AD0 80014ED0 4608603E */ c.le.s $f12, $f8 +/* 015AD4 80014ED4 00000000 */ nop +/* 015AD8 80014ED8 45000010 */ bc1f .L80014F1C +/* 015ADC 80014EDC 0085082A */ slt $at, $a0, $a1 +.L80014EE0: +/* 015AE0 80014EE0 24A5FFFF */ addiu $a1, $a1, -1 +/* 015AE4 80014EE4 00A2082A */ slt $at, $a1, $v0 +/* 015AE8 80014EE8 1420000B */ bnez $at, .L80014F18 +/* 015AEC 80014EEC 24C6FFFC */ addiu $a2, $a2, -4 +/* 015AF0 80014EF0 8CC70000 */ lw $a3, ($a2) +/* 015AF4 80014EF4 00000000 */ nop +/* 015AF8 80014EF8 C4EA0014 */ lwc1 $f10, 0x14($a3) +/* 015AFC 80014EFC C4F00034 */ lwc1 $f16, 0x34($a3) +/* 015B00 80014F00 00000000 */ nop +/* 015B04 80014F04 46105481 */ sub.s $f18, $f10, $f16 +/* 015B08 80014F08 4612603E */ c.le.s $f12, $f18 +/* 015B0C 80014F0C 00000000 */ nop +/* 015B10 80014F10 4501FFF3 */ bc1t .L80014EE0 +/* 015B14 80014F14 00000000 */ nop +.L80014F18: +/* 015B18 80014F18 0085082A */ slt $at, $a0, $a1 +.L80014F1C: +/* 015B1C 80014F1C 1020000C */ beqz $at, .L80014F50 +/* 015B20 80014F20 00054080 */ sll $t0, $a1, 2 +/* 015B24 80014F24 8D460000 */ lw $a2, ($t2) +/* 015B28 80014F28 24840001 */ addiu $a0, $a0, 1 +/* 015B2C 80014F2C 00C8C821 */ addu $t9, $a2, $t0 +/* 015B30 80014F30 8F2B0000 */ lw $t3, ($t9) +/* 015B34 80014F34 00D83821 */ addu $a3, $a2, $t8 +/* 015B38 80014F38 8CE90000 */ lw $t1, ($a3) +/* 015B3C 80014F3C ACEB0000 */ sw $t3, ($a3) +/* 015B40 80014F40 8D4C0000 */ lw $t4, ($t2) +/* 015B44 80014F44 24A5FFFF */ addiu $a1, $a1, -1 +/* 015B48 80014F48 01886821 */ addu $t5, $t4, $t0 +/* 015B4C 80014F4C ADA90000 */ sw $t1, ($t5) +.L80014F50: +/* 015B50 80014F50 00A4082A */ slt $at, $a1, $a0 +/* 015B54 80014F54 1020FFB5 */ beqz $at, .L80014E2C +/* 015B58 80014F58 0064082A */ slt $at, $v1, $a0 +/* 015B5C 80014F5C 03E00008 */ jr $ra +/* 015B60 80014F60 00801025 */ move $v0, $a0 + +/* 015B64 80014F64 00A4082A */ slt $at, $a1, $a0 +/* 015B68 80014F68 142000F5 */ bnez $at, .L80015340 +/* 015B6C 80014F6C 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 +/* 015B70 80014F70 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 +/* 015B74 80014F74 0064082A */ slt $at, $v1, $a0 +.L80014F78: +/* 015B78 80014F78 1420001D */ bnez $at, .L80014FF0 +/* 015B7C 80014F7C 00A2082A */ slt $at, $a1, $v0 +/* 015B80 80014F80 8D4E0000 */ lw $t6, ($t2) +/* 015B84 80014F84 00047880 */ sll $t7, $a0, 2 +/* 015B88 80014F88 01CF3821 */ addu $a3, $t6, $t7 +/* 015B8C 80014F8C 8CE60000 */ lw $a2, ($a3) +/* 015B90 80014F90 00000000 */ nop +/* 015B94 80014F94 C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015B98 80014F98 C4C6000C */ lwc1 $f6, 0xc($a2) +/* 015B9C 80014F9C 00000000 */ nop +/* 015BA0 80014FA0 46062200 */ add.s $f8, $f4, $f6 +/* 015BA4 80014FA4 460C403C */ c.lt.s $f8, $f12 +/* 015BA8 80014FA8 00000000 */ nop +/* 015BAC 80014FAC 45000010 */ bc1f .L80014FF0 +/* 015BB0 80014FB0 00A2082A */ slt $at, $a1, $v0 +.L80014FB4: +/* 015BB4 80014FB4 24840001 */ addiu $a0, $a0, 1 +/* 015BB8 80014FB8 0064082A */ slt $at, $v1, $a0 +/* 015BBC 80014FBC 1420000B */ bnez $at, .L80014FEC +/* 015BC0 80014FC0 24E70004 */ addiu $a3, $a3, 4 +/* 015BC4 80014FC4 8CE60000 */ lw $a2, ($a3) +/* 015BC8 80014FC8 00000000 */ nop +/* 015BCC 80014FCC C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015BD0 80014FD0 C4D0000C */ lwc1 $f16, 0xc($a2) +/* 015BD4 80014FD4 00000000 */ nop +/* 015BD8 80014FD8 46105480 */ add.s $f18, $f10, $f16 +/* 015BDC 80014FDC 460C903C */ c.lt.s $f18, $f12 +/* 015BE0 80014FE0 00000000 */ nop +/* 015BE4 80014FE4 4501FFF3 */ bc1t .L80014FB4 +/* 015BE8 80014FE8 00000000 */ nop +.L80014FEC: +/* 015BEC 80014FEC 00A2082A */ slt $at, $a1, $v0 +.L80014FF0: +/* 015BF0 80014FF0 1420001C */ bnez $at, .L80015064 +/* 015BF4 80014FF4 00045880 */ sll $t3, $a0, 2 +/* 015BF8 80014FF8 8D580000 */ lw $t8, ($t2) +/* 015BFC 80014FFC 0005C880 */ sll $t9, $a1, 2 +/* 015C00 80015000 03193021 */ addu $a2, $t8, $t9 +/* 015C04 80015004 8CC70000 */ lw $a3, ($a2) +/* 015C08 80015008 00000000 */ nop +/* 015C0C 8001500C C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015C10 80015010 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 015C14 80015014 00000000 */ nop +/* 015C18 80015018 46062200 */ add.s $f8, $f4, $f6 +/* 015C1C 8001501C 4608603E */ c.le.s $f12, $f8 +/* 015C20 80015020 00000000 */ nop +/* 015C24 80015024 45000010 */ bc1f .L80015068 +/* 015C28 80015028 0085082A */ slt $at, $a0, $a1 +.L8001502C: +/* 015C2C 8001502C 24A5FFFF */ addiu $a1, $a1, -1 +/* 015C30 80015030 00A2082A */ slt $at, $a1, $v0 +/* 015C34 80015034 1420000B */ bnez $at, .L80015064 +/* 015C38 80015038 24C6FFFC */ addiu $a2, $a2, -4 +/* 015C3C 8001503C 8CC70000 */ lw $a3, ($a2) +/* 015C40 80015040 00000000 */ nop +/* 015C44 80015044 C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015C48 80015048 C4F0000C */ lwc1 $f16, 0xc($a3) +/* 015C4C 8001504C 00000000 */ nop +/* 015C50 80015050 46105480 */ add.s $f18, $f10, $f16 +/* 015C54 80015054 4612603E */ c.le.s $f12, $f18 +/* 015C58 80015058 00000000 */ nop +/* 015C5C 8001505C 4501FFF3 */ bc1t .L8001502C +/* 015C60 80015060 00000000 */ nop +.L80015064: +/* 015C64 80015064 0085082A */ slt $at, $a0, $a1 +.L80015068: +/* 015C68 80015068 1020000C */ beqz $at, .L8001509C +/* 015C6C 8001506C 00054080 */ sll $t0, $a1, 2 +/* 015C70 80015070 8D460000 */ lw $a2, ($t2) +/* 015C74 80015074 24840001 */ addiu $a0, $a0, 1 +/* 015C78 80015078 00C86021 */ addu $t4, $a2, $t0 +/* 015C7C 8001507C 8D8D0000 */ lw $t5, ($t4) +/* 015C80 80015080 00CB3821 */ addu $a3, $a2, $t3 +/* 015C84 80015084 8CE90000 */ lw $t1, ($a3) +/* 015C88 80015088 ACED0000 */ sw $t5, ($a3) +/* 015C8C 8001508C 8D4E0000 */ lw $t6, ($t2) +/* 015C90 80015090 24A5FFFF */ addiu $a1, $a1, -1 +/* 015C94 80015094 01C87821 */ addu $t7, $t6, $t0 +/* 015C98 80015098 ADE90000 */ sw $t1, ($t7) +.L8001509C: +/* 015C9C 8001509C 00A4082A */ slt $at, $a1, $a0 +/* 015CA0 800150A0 1020FFB5 */ beqz $at, .L80014F78 +/* 015CA4 800150A4 0064082A */ slt $at, $v1, $a0 +/* 015CA8 800150A8 03E00008 */ jr $ra +/* 015CAC 800150AC 00801025 */ move $v0, $a0 + +/* 015CB0 800150B0 00A4082A */ slt $at, $a1, $a0 +/* 015CB4 800150B4 142000A2 */ bnez $at, .L80015340 +/* 015CB8 800150B8 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 +/* 015CBC 800150BC 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 +/* 015CC0 800150C0 0064082A */ slt $at, $v1, $a0 +.L800150C4: +/* 015CC4 800150C4 1420001D */ bnez $at, .L8001513C +/* 015CC8 800150C8 00A2082A */ slt $at, $a1, $v0 +/* 015CCC 800150CC 8D580000 */ lw $t8, ($t2) +/* 015CD0 800150D0 0004C880 */ sll $t9, $a0, 2 +/* 015CD4 800150D4 03193821 */ addu $a3, $t8, $t9 +/* 015CD8 800150D8 8CE60000 */ lw $a2, ($a3) +/* 015CDC 800150DC 00000000 */ nop +/* 015CE0 800150E0 C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015CE4 800150E4 C4C60010 */ lwc1 $f6, 0x10($a2) +/* 015CE8 800150E8 00000000 */ nop +/* 015CEC 800150EC 46062200 */ add.s $f8, $f4, $f6 +/* 015CF0 800150F0 460C403C */ c.lt.s $f8, $f12 +/* 015CF4 800150F4 00000000 */ nop +/* 015CF8 800150F8 45000010 */ bc1f .L8001513C +/* 015CFC 800150FC 00A2082A */ slt $at, $a1, $v0 +.L80015100: +/* 015D00 80015100 24840001 */ addiu $a0, $a0, 1 +/* 015D04 80015104 0064082A */ slt $at, $v1, $a0 +/* 015D08 80015108 1420000B */ bnez $at, .L80015138 +/* 015D0C 8001510C 24E70004 */ addiu $a3, $a3, 4 +/* 015D10 80015110 8CE60000 */ lw $a2, ($a3) +/* 015D14 80015114 00000000 */ nop +/* 015D18 80015118 C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015D1C 8001511C C4D00010 */ lwc1 $f16, 0x10($a2) +/* 015D20 80015120 00000000 */ nop +/* 015D24 80015124 46105480 */ add.s $f18, $f10, $f16 +/* 015D28 80015128 460C903C */ c.lt.s $f18, $f12 +/* 015D2C 8001512C 00000000 */ nop +/* 015D30 80015130 4501FFF3 */ bc1t .L80015100 +/* 015D34 80015134 00000000 */ nop +.L80015138: +/* 015D38 80015138 00A2082A */ slt $at, $a1, $v0 +.L8001513C: +/* 015D3C 8001513C 1420001C */ bnez $at, .L800151B0 +/* 015D40 80015140 00046880 */ sll $t5, $a0, 2 +/* 015D44 80015144 8D4B0000 */ lw $t3, ($t2) +/* 015D48 80015148 00056080 */ sll $t4, $a1, 2 +/* 015D4C 8001514C 016C3021 */ addu $a2, $t3, $t4 +/* 015D50 80015150 8CC70000 */ lw $a3, ($a2) +/* 015D54 80015154 00000000 */ nop +/* 015D58 80015158 C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015D5C 8001515C C4E60010 */ lwc1 $f6, 0x10($a3) +/* 015D60 80015160 00000000 */ nop +/* 015D64 80015164 46062200 */ add.s $f8, $f4, $f6 +/* 015D68 80015168 4608603E */ c.le.s $f12, $f8 +/* 015D6C 8001516C 00000000 */ nop +/* 015D70 80015170 45000010 */ bc1f .L800151B4 +/* 015D74 80015174 0085082A */ slt $at, $a0, $a1 +.L80015178: +/* 015D78 80015178 24A5FFFF */ addiu $a1, $a1, -1 +/* 015D7C 8001517C 00A2082A */ slt $at, $a1, $v0 +/* 015D80 80015180 1420000B */ bnez $at, .L800151B0 +/* 015D84 80015184 24C6FFFC */ addiu $a2, $a2, -4 +/* 015D88 80015188 8CC70000 */ lw $a3, ($a2) +/* 015D8C 8001518C 00000000 */ nop +/* 015D90 80015190 C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015D94 80015194 C4F00010 */ lwc1 $f16, 0x10($a3) +/* 015D98 80015198 00000000 */ nop +/* 015D9C 8001519C 46105480 */ add.s $f18, $f10, $f16 +/* 015DA0 800151A0 4612603E */ c.le.s $f12, $f18 +/* 015DA4 800151A4 00000000 */ nop +/* 015DA8 800151A8 4501FFF3 */ bc1t .L80015178 +/* 015DAC 800151AC 00000000 */ nop +.L800151B0: +/* 015DB0 800151B0 0085082A */ slt $at, $a0, $a1 +.L800151B4: +/* 015DB4 800151B4 1020000C */ beqz $at, .L800151E8 +/* 015DB8 800151B8 00054080 */ sll $t0, $a1, 2 +/* 015DBC 800151BC 8D460000 */ lw $a2, ($t2) +/* 015DC0 800151C0 24840001 */ addiu $a0, $a0, 1 +/* 015DC4 800151C4 00C87021 */ addu $t6, $a2, $t0 +/* 015DC8 800151C8 8DCF0000 */ lw $t7, ($t6) +/* 015DCC 800151CC 00CD3821 */ addu $a3, $a2, $t5 +/* 015DD0 800151D0 8CE90000 */ lw $t1, ($a3) +/* 015DD4 800151D4 ACEF0000 */ sw $t7, ($a3) +/* 015DD8 800151D8 8D580000 */ lw $t8, ($t2) +/* 015DDC 800151DC 24A5FFFF */ addiu $a1, $a1, -1 +/* 015DE0 800151E0 0308C821 */ addu $t9, $t8, $t0 +/* 015DE4 800151E4 AF290000 */ sw $t1, ($t9) +.L800151E8: +/* 015DE8 800151E8 00A4082A */ slt $at, $a1, $a0 +/* 015DEC 800151EC 1020FFB5 */ beqz $at, .L800150C4 +/* 015DF0 800151F0 0064082A */ slt $at, $v1, $a0 +/* 015DF4 800151F4 03E00008 */ jr $ra +/* 015DF8 800151F8 00801025 */ move $v0, $a0 + +/* 015DFC 800151FC 00A4082A */ slt $at, $a1, $a0 +/* 015E00 80015200 1420004F */ bnez $at, .L80015340 +/* 015E04 80015204 3C0A8012 */ lui $t2, %hi(objPtrList) # $t2, 0x8012 +/* 015E08 80015208 254AAE58 */ addiu $t2, %lo(objPtrList) # addiu $t2, $t2, -0x51a8 +/* 015E0C 8001520C 0064082A */ slt $at, $v1, $a0 +.L80015210: +/* 015E10 80015210 1420001D */ bnez $at, .L80015288 +/* 015E14 80015214 00A2082A */ slt $at, $a1, $v0 +/* 015E18 80015218 8D4B0000 */ lw $t3, ($t2) +/* 015E1C 8001521C 00046080 */ sll $t4, $a0, 2 +/* 015E20 80015220 016C3821 */ addu $a3, $t3, $t4 +/* 015E24 80015224 8CE60000 */ lw $a2, ($a3) +/* 015E28 80015228 00000000 */ nop +/* 015E2C 8001522C C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015E30 80015230 C4C60014 */ lwc1 $f6, 0x14($a2) +/* 015E34 80015234 00000000 */ nop +/* 015E38 80015238 46062200 */ add.s $f8, $f4, $f6 +/* 015E3C 8001523C 460C403C */ c.lt.s $f8, $f12 +/* 015E40 80015240 00000000 */ nop +/* 015E44 80015244 45000010 */ bc1f .L80015288 +/* 015E48 80015248 00A2082A */ slt $at, $a1, $v0 +.L8001524C: +/* 015E4C 8001524C 24840001 */ addiu $a0, $a0, 1 +/* 015E50 80015250 0064082A */ slt $at, $v1, $a0 +/* 015E54 80015254 1420000B */ bnez $at, .L80015284 +/* 015E58 80015258 24E70004 */ addiu $a3, $a3, 4 +/* 015E5C 8001525C 8CE60000 */ lw $a2, ($a3) +/* 015E60 80015260 00000000 */ nop +/* 015E64 80015264 C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015E68 80015268 C4D00014 */ lwc1 $f16, 0x14($a2) +/* 015E6C 8001526C 00000000 */ nop +/* 015E70 80015270 46105480 */ add.s $f18, $f10, $f16 +/* 015E74 80015274 460C903C */ c.lt.s $f18, $f12 +/* 015E78 80015278 00000000 */ nop +/* 015E7C 8001527C 4501FFF3 */ bc1t .L8001524C +/* 015E80 80015280 00000000 */ nop +.L80015284: +/* 015E84 80015284 00A2082A */ slt $at, $a1, $v0 +.L80015288: +/* 015E88 80015288 1420001C */ bnez $at, .L800152FC +/* 015E8C 8001528C 00047880 */ sll $t7, $a0, 2 +/* 015E90 80015290 8D4D0000 */ lw $t5, ($t2) +/* 015E94 80015294 00057080 */ sll $t6, $a1, 2 +/* 015E98 80015298 01AE3021 */ addu $a2, $t5, $t6 +/* 015E9C 8001529C 8CC70000 */ lw $a3, ($a2) +/* 015EA0 800152A0 00000000 */ nop +/* 015EA4 800152A4 C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015EA8 800152A8 C4E60014 */ lwc1 $f6, 0x14($a3) +/* 015EAC 800152AC 00000000 */ nop +/* 015EB0 800152B0 46062200 */ add.s $f8, $f4, $f6 +/* 015EB4 800152B4 4608603E */ c.le.s $f12, $f8 +/* 015EB8 800152B8 00000000 */ nop +/* 015EBC 800152BC 45000010 */ bc1f .L80015300 +/* 015EC0 800152C0 0085082A */ slt $at, $a0, $a1 +.L800152C4: +/* 015EC4 800152C4 24A5FFFF */ addiu $a1, $a1, -1 +/* 015EC8 800152C8 00A2082A */ slt $at, $a1, $v0 +/* 015ECC 800152CC 1420000B */ bnez $at, .L800152FC +/* 015ED0 800152D0 24C6FFFC */ addiu $a2, $a2, -4 +/* 015ED4 800152D4 8CC70000 */ lw $a3, ($a2) +/* 015ED8 800152D8 00000000 */ nop +/* 015EDC 800152DC C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015EE0 800152E0 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 015EE4 800152E4 00000000 */ nop +/* 015EE8 800152E8 46105480 */ add.s $f18, $f10, $f16 +/* 015EEC 800152EC 4612603E */ c.le.s $f12, $f18 +/* 015EF0 800152F0 00000000 */ nop +/* 015EF4 800152F4 4501FFF3 */ bc1t .L800152C4 +/* 015EF8 800152F8 00000000 */ nop +.L800152FC: +/* 015EFC 800152FC 0085082A */ slt $at, $a0, $a1 +.L80015300: +/* 015F00 80015300 1020000C */ beqz $at, .L80015334 +/* 015F04 80015304 00054080 */ sll $t0, $a1, 2 +/* 015F08 80015308 8D460000 */ lw $a2, ($t2) +/* 015F0C 8001530C 24840001 */ addiu $a0, $a0, 1 +/* 015F10 80015310 00C8C021 */ addu $t8, $a2, $t0 +/* 015F14 80015314 8F190000 */ lw $t9, ($t8) +/* 015F18 80015318 00CF3821 */ addu $a3, $a2, $t7 +/* 015F1C 8001531C 8CE90000 */ lw $t1, ($a3) +/* 015F20 80015320 ACF90000 */ sw $t9, ($a3) +/* 015F24 80015324 8D4B0000 */ lw $t3, ($t2) +/* 015F28 80015328 24A5FFFF */ addiu $a1, $a1, -1 +/* 015F2C 8001532C 01686021 */ addu $t4, $t3, $t0 +/* 015F30 80015330 AD890000 */ sw $t1, ($t4) +.L80015334: +/* 015F34 80015334 00A4082A */ slt $at, $a1, $a0 +/* 015F38 80015338 1020FFB5 */ beqz $at, .L80015210 +/* 015F3C 8001533C 0064082A */ slt $at, $v1, $a0 +.L80015340: +/* 015F40 80015340 03E00008 */ jr $ra +/* 015F44 80015344 00801025 */ move $v0, $a0 + diff --git a/asm/non_matchings/unknown_00BC20/func_8001A8F4.s b/asm/non_matchings/unknown_00BC20/func_8001A8F4.s index 0457a9e6..b4526871 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001A8F4.s +++ b/asm/non_matchings/unknown_00BC20/func_8001A8F4.s @@ -224,7 +224,7 @@ glabel func_8001A8F4 /* 01B838 8001AC38 0006C880 */ sll $t9, $a2, 2 /* 01B83C 8001AC3C 03194821 */ addu $t1, $t8, $t9 /* 01B840 8001AC40 8D240000 */ lw $a0, ($t1) -/* 01B844 8001AC44 0C003FEE */ jal func_8000FFB8 +/* 01B844 8001AC44 0C003FEE */ jal particlePtrList_addObject /* 01B848 8001AC48 00000000 */ nop /* 01B84C 8001AC4C 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 /* 01B850 8001AC50 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af diff --git a/asm/non_matchings/unknown_00BC20/func_8001B834.s b/asm/non_matchings/unknown_00BC20/func_8001B834.s index 17c03100..d3d0e87c 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001B834.s +++ b/asm/non_matchings/unknown_00BC20/func_8001B834.s @@ -80,53 +80,3 @@ glabel func_8001B834 /* 01C548 8001B948 46001006 */ mov.s $f0, $f2 /* 01C54C 8001B94C 03E00008 */ jr $ra /* 01C550 8001B950 00000000 */ nop - -/* 01C554 8001B954 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 01C558 8001B958 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 01C55C 8001B95C 00000000 */ nop -/* 01C560 8001B960 1C400004 */ bgtz $v0, .L8001B974 -/* 01C564 8001B964 00000000 */ nop -/* 01C568 8001B968 44800000 */ mtc1 $zero, $f0 -/* 01C56C 8001B96C 03E00008 */ jr $ra -/* 01C570 8001B970 00000000 */ nop - -.L8001B974: -/* 01C574 8001B974 80850192 */ lb $a1, 0x192($a0) -/* 01C578 8001B978 44801000 */ mtc1 $zero, $f2 -/* 01C57C 8001B97C 00A2082A */ slt $at, $a1, $v0 -/* 01C580 8001B980 1020000D */ beqz $at, .L8001B9B8 -/* 01C584 8001B984 00A01825 */ move $v1, $a1 -/* 01C588 8001B988 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 -/* 01C58C 8001B98C 00037900 */ sll $t7, $v1, 4 -/* 01C590 8001B990 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) -/* 01C594 8001B994 01E37823 */ subu $t7, $t7, $v1 -/* 01C598 8001B998 000F7880 */ sll $t7, $t7, 2 -/* 01C59C 8001B99C 01CF3021 */ addu $a2, $t6, $t7 -.L8001B9A0: -/* 01C5A0 8001B9A0 C4C40020 */ lwc1 $f4, 0x20($a2) -/* 01C5A4 8001B9A4 24630001 */ addiu $v1, $v1, 1 -/* 01C5A8 8001B9A8 0062082A */ slt $at, $v1, $v0 -/* 01C5AC 8001B9AC 24C6003C */ addiu $a2, $a2, 0x3c -/* 01C5B0 8001B9B0 1420FFFB */ bnez $at, .L8001B9A0 -/* 01C5B4 8001B9B4 46041080 */ add.s $f2, $f2, $f4 -.L8001B9B8: -/* 01C5B8 8001B9B8 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 -/* 01C5BC 8001B9BC 24A3FFFF */ addiu $v1, $a1, -1 -/* 01C5C0 8001B9C0 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) -/* 01C5C4 8001B9C4 04610003 */ bgez $v1, .L8001B9D4 -/* 01C5C8 8001B9C8 0003C100 */ sll $t8, $v1, 4 -/* 01C5CC 8001B9CC 2443FFFF */ addiu $v1, $v0, -1 -/* 01C5D0 8001B9D0 0003C100 */ sll $t8, $v1, 4 -.L8001B9D4: -/* 01C5D4 8001B9D4 0303C023 */ subu $t8, $t8, $v1 -/* 01C5D8 8001B9D8 0018C080 */ sll $t8, $t8, 2 -/* 01C5DC 8001B9DC 00D8C821 */ addu $t9, $a2, $t8 -/* 01C5E0 8001B9E0 C7260020 */ lwc1 $f6, 0x20($t9) -/* 01C5E4 8001B9E4 C48800A8 */ lwc1 $f8, 0xa8($a0) -/* 01C5E8 8001B9E8 00000000 */ nop -/* 01C5EC 8001B9EC 46083282 */ mul.s $f10, $f6, $f8 -/* 01C5F0 8001B9F0 460A1080 */ add.s $f2, $f2, $f10 -/* 01C5F4 8001B9F4 46001006 */ mov.s $f0, $f2 -/* 01C5F8 8001B9F8 03E00008 */ jr $ra -/* 01C5FC 8001B9FC 00000000 */ nop - diff --git a/asm/non_matchings/unknown_00BC20/func_8001B974.s b/asm/non_matchings/unknown_00BC20/func_8001B974.s new file mode 100644 index 00000000..b64a2a60 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8001B974.s @@ -0,0 +1,49 @@ +glabel func_8001B974 +/* 01C554 8001B954 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 01C558 8001B958 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 01C55C 8001B95C 00000000 */ nop +/* 01C560 8001B960 1C400004 */ bgtz $v0, .L8001B974 +/* 01C564 8001B964 00000000 */ nop +/* 01C568 8001B968 44800000 */ mtc1 $zero, $f0 +/* 01C56C 8001B96C 03E00008 */ jr $ra +/* 01C570 8001B970 00000000 */ nop + +.L8001B974: +/* 01C574 8001B974 80850192 */ lb $a1, 0x192($a0) +/* 01C578 8001B978 44801000 */ mtc1 $zero, $f2 +/* 01C57C 8001B97C 00A2082A */ slt $at, $a1, $v0 +/* 01C580 8001B980 1020000D */ beqz $at, .L8001B9B8 +/* 01C584 8001B984 00A01825 */ move $v1, $a1 +/* 01C588 8001B988 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 +/* 01C58C 8001B98C 00037900 */ sll $t7, $v1, 4 +/* 01C590 8001B990 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) +/* 01C594 8001B994 01E37823 */ subu $t7, $t7, $v1 +/* 01C598 8001B998 000F7880 */ sll $t7, $t7, 2 +/* 01C59C 8001B99C 01CF3021 */ addu $a2, $t6, $t7 +.L8001B9A0: +/* 01C5A0 8001B9A0 C4C40020 */ lwc1 $f4, 0x20($a2) +/* 01C5A4 8001B9A4 24630001 */ addiu $v1, $v1, 1 +/* 01C5A8 8001B9A8 0062082A */ slt $at, $v1, $v0 +/* 01C5AC 8001B9AC 24C6003C */ addiu $a2, $a2, 0x3c +/* 01C5B0 8001B9B0 1420FFFB */ bnez $at, .L8001B9A0 +/* 01C5B4 8001B9B4 46041080 */ add.s $f2, $f2, $f4 +.L8001B9B8: +/* 01C5B8 8001B9B8 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 +/* 01C5BC 8001B9BC 24A3FFFF */ addiu $v1, $a1, -1 +/* 01C5C0 8001B9C0 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) +/* 01C5C4 8001B9C4 04610003 */ bgez $v1, .L8001B9D4 +/* 01C5C8 8001B9C8 0003C100 */ sll $t8, $v1, 4 +/* 01C5CC 8001B9CC 2443FFFF */ addiu $v1, $v0, -1 +/* 01C5D0 8001B9D0 0003C100 */ sll $t8, $v1, 4 +.L8001B9D4: +/* 01C5D4 8001B9D4 0303C023 */ subu $t8, $t8, $v1 +/* 01C5D8 8001B9D8 0018C080 */ sll $t8, $t8, 2 +/* 01C5DC 8001B9DC 00D8C821 */ addu $t9, $a2, $t8 +/* 01C5E0 8001B9E0 C7260020 */ lwc1 $f6, 0x20($t9) +/* 01C5E4 8001B9E4 C48800A8 */ lwc1 $f8, 0xa8($a0) +/* 01C5E8 8001B9E8 00000000 */ nop +/* 01C5EC 8001B9EC 46083282 */ mul.s $f10, $f6, $f8 +/* 01C5F0 8001B9F0 460A1080 */ add.s $f2, $f2, $f10 +/* 01C5F4 8001B9F4 46001006 */ mov.s $f0, $f2 +/* 01C5F8 8001B9F8 03E00008 */ jr $ra +/* 01C5FC 8001B9FC 00000000 */ nop diff --git a/asm/non_matchings/unknown_00BC20/func_8001BB18.s b/asm/non_matchings/unknown_00BC20/func_8001BB18.s index 51f11c42..07f0ff0c 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001BB18.s +++ b/asm/non_matchings/unknown_00BC20/func_8001BB18.s @@ -24,64 +24,3 @@ glabel func_8001BB18 /* 01C75C 8001BB5C 00000000 */ nop /* 01C760 8001BB60 03E00008 */ jr $ra /* 01C764 8001BB64 00000000 */ nop - -/* 01C768 8001BB68 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 01C76C 8001BB6C AFB3002C */ sw $s3, 0x2c($sp) -/* 01C770 8001BB70 AFB20028 */ sw $s2, 0x28($sp) -/* 01C774 8001BB74 00A09025 */ move $s2, $a1 -/* 01C778 8001BB78 00C09825 */ move $s3, $a2 -/* 01C77C 8001BB7C AFBF0034 */ sw $ra, 0x34($sp) -/* 01C780 8001BB80 AFB10024 */ sw $s1, 0x24($sp) -/* 01C784 8001BB84 00808825 */ move $s1, $a0 -/* 01C788 8001BB88 AFB40030 */ sw $s4, 0x30($sp) -/* 01C78C 8001BB8C AFB00020 */ sw $s0, 0x20($sp) -/* 01C790 8001BB90 24060002 */ li $a2, 2 -/* 01C794 8001BB94 0C01ED32 */ jal func_8007B4C8 -/* 01C798 8001BB98 00002825 */ move $a1, $zero -/* 01C79C 8001BB9C 3C148012 */ lui $s4, %hi(D_8011AED0) # $s4, 0x8012 -/* 01C7A0 8001BBA0 2694AED0 */ addiu $s4, %lo(D_8011AED0) # addiu $s4, $s4, -0x5130 -/* 01C7A4 8001BBA4 8E820000 */ lw $v0, ($s4) -/* 01C7A8 8001BBA8 00000000 */ nop -/* 01C7AC 8001BBAC 28410004 */ slti $at, $v0, 4 -/* 01C7B0 8001BBB0 1420001C */ bnez $at, .L8001BC24 -/* 01C7B4 8001BBB4 8FBF0034 */ lw $ra, 0x34($sp) -/* 01C7B8 8001BBB8 1840000D */ blez $v0, .L8001BBF0 -/* 01C7BC 8001BBBC 00008025 */ move $s0, $zero -/* 01C7C0 8001BBC0 02002025 */ move $a0, $s0 -.L8001BBC4: -/* 01C7C4 8001BBC4 00002825 */ move $a1, $zero -/* 01C7C8 8001BBC8 02203025 */ move $a2, $s1 -/* 01C7CC 8001BBCC 02403825 */ move $a3, $s2 -/* 01C7D0 8001BBD0 0C006F10 */ jal func_8001BC40 -/* 01C7D4 8001BBD4 AFB30010 */ sw $s3, 0x10($sp) -/* 01C7D8 8001BBD8 8E820000 */ lw $v0, ($s4) -/* 01C7DC 8001BBDC 26100001 */ addiu $s0, $s0, 1 -/* 01C7E0 8001BBE0 0202082A */ slt $at, $s0, $v0 -/* 01C7E4 8001BBE4 1420FFF7 */ bnez $at, .L8001BBC4 -/* 01C7E8 8001BBE8 02002025 */ move $a0, $s0 -/* 01C7EC 8001BBEC 00008025 */ move $s0, $zero -.L8001BBF0: -/* 01C7F0 8001BBF0 1840000B */ blez $v0, .L8001BC20 -/* 01C7F4 8001BBF4 02002025 */ move $a0, $s0 -.L8001BBF8: -/* 01C7F8 8001BBF8 24050001 */ li $a1, 1 -/* 01C7FC 8001BBFC 02203025 */ move $a2, $s1 -/* 01C800 8001BC00 02403825 */ move $a3, $s2 -/* 01C804 8001BC04 0C006F10 */ jal func_8001BC40 -/* 01C808 8001BC08 AFB30010 */ sw $s3, 0x10($sp) -/* 01C80C 8001BC0C 8E8E0000 */ lw $t6, ($s4) -/* 01C810 8001BC10 26100001 */ addiu $s0, $s0, 1 -/* 01C814 8001BC14 020E082A */ slt $at, $s0, $t6 -/* 01C818 8001BC18 1420FFF7 */ bnez $at, .L8001BBF8 -/* 01C81C 8001BC1C 02002025 */ move $a0, $s0 -.L8001BC20: -/* 01C820 8001BC20 8FBF0034 */ lw $ra, 0x34($sp) -.L8001BC24: -/* 01C824 8001BC24 8FB00020 */ lw $s0, 0x20($sp) -/* 01C828 8001BC28 8FB10024 */ lw $s1, 0x24($sp) -/* 01C82C 8001BC2C 8FB20028 */ lw $s2, 0x28($sp) -/* 01C830 8001BC30 8FB3002C */ lw $s3, 0x2c($sp) -/* 01C834 8001BC34 8FB40030 */ lw $s4, 0x30($sp) -/* 01C838 8001BC38 03E00008 */ jr $ra -/* 01C83C 8001BC3C 27BD0038 */ addiu $sp, $sp, 0x38 - diff --git a/asm/non_matchings/unknown_00BC20/func_8001BB68.s b/asm/non_matchings/unknown_00BC20/func_8001BB68.s new file mode 100644 index 00000000..176abdd2 --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8001BB68.s @@ -0,0 +1,60 @@ +glabel func_8001BB68 +/* 01C768 8001BB68 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 01C76C 8001BB6C AFB3002C */ sw $s3, 0x2c($sp) +/* 01C770 8001BB70 AFB20028 */ sw $s2, 0x28($sp) +/* 01C774 8001BB74 00A09025 */ move $s2, $a1 +/* 01C778 8001BB78 00C09825 */ move $s3, $a2 +/* 01C77C 8001BB7C AFBF0034 */ sw $ra, 0x34($sp) +/* 01C780 8001BB80 AFB10024 */ sw $s1, 0x24($sp) +/* 01C784 8001BB84 00808825 */ move $s1, $a0 +/* 01C788 8001BB88 AFB40030 */ sw $s4, 0x30($sp) +/* 01C78C 8001BB8C AFB00020 */ sw $s0, 0x20($sp) +/* 01C790 8001BB90 24060002 */ li $a2, 2 +/* 01C794 8001BB94 0C01ED32 */ jal func_8007B4C8 +/* 01C798 8001BB98 00002825 */ move $a1, $zero +/* 01C79C 8001BB9C 3C148012 */ lui $s4, %hi(D_8011AED0) # $s4, 0x8012 +/* 01C7A0 8001BBA0 2694AED0 */ addiu $s4, %lo(D_8011AED0) # addiu $s4, $s4, -0x5130 +/* 01C7A4 8001BBA4 8E820000 */ lw $v0, ($s4) +/* 01C7A8 8001BBA8 00000000 */ nop +/* 01C7AC 8001BBAC 28410004 */ slti $at, $v0, 4 +/* 01C7B0 8001BBB0 1420001C */ bnez $at, .L8001BC24 +/* 01C7B4 8001BBB4 8FBF0034 */ lw $ra, 0x34($sp) +/* 01C7B8 8001BBB8 1840000D */ blez $v0, .L8001BBF0 +/* 01C7BC 8001BBBC 00008025 */ move $s0, $zero +/* 01C7C0 8001BBC0 02002025 */ move $a0, $s0 +.L8001BBC4: +/* 01C7C4 8001BBC4 00002825 */ move $a1, $zero +/* 01C7C8 8001BBC8 02203025 */ move $a2, $s1 +/* 01C7CC 8001BBCC 02403825 */ move $a3, $s2 +/* 01C7D0 8001BBD0 0C006F10 */ jal func_8001BC40 +/* 01C7D4 8001BBD4 AFB30010 */ sw $s3, 0x10($sp) +/* 01C7D8 8001BBD8 8E820000 */ lw $v0, ($s4) +/* 01C7DC 8001BBDC 26100001 */ addiu $s0, $s0, 1 +/* 01C7E0 8001BBE0 0202082A */ slt $at, $s0, $v0 +/* 01C7E4 8001BBE4 1420FFF7 */ bnez $at, .L8001BBC4 +/* 01C7E8 8001BBE8 02002025 */ move $a0, $s0 +/* 01C7EC 8001BBEC 00008025 */ move $s0, $zero +.L8001BBF0: +/* 01C7F0 8001BBF0 1840000B */ blez $v0, .L8001BC20 +/* 01C7F4 8001BBF4 02002025 */ move $a0, $s0 +.L8001BBF8: +/* 01C7F8 8001BBF8 24050001 */ li $a1, 1 +/* 01C7FC 8001BBFC 02203025 */ move $a2, $s1 +/* 01C800 8001BC00 02403825 */ move $a3, $s2 +/* 01C804 8001BC04 0C006F10 */ jal func_8001BC40 +/* 01C808 8001BC08 AFB30010 */ sw $s3, 0x10($sp) +/* 01C80C 8001BC0C 8E8E0000 */ lw $t6, ($s4) +/* 01C810 8001BC10 26100001 */ addiu $s0, $s0, 1 +/* 01C814 8001BC14 020E082A */ slt $at, $s0, $t6 +/* 01C818 8001BC18 1420FFF7 */ bnez $at, .L8001BBF8 +/* 01C81C 8001BC1C 02002025 */ move $a0, $s0 +.L8001BC20: +/* 01C820 8001BC20 8FBF0034 */ lw $ra, 0x34($sp) +.L8001BC24: +/* 01C824 8001BC24 8FB00020 */ lw $s0, 0x20($sp) +/* 01C828 8001BC28 8FB10024 */ lw $s1, 0x24($sp) +/* 01C82C 8001BC2C 8FB20028 */ lw $s2, 0x28($sp) +/* 01C830 8001BC30 8FB3002C */ lw $s3, 0x2c($sp) +/* 01C834 8001BC34 8FB40030 */ lw $s4, 0x30($sp) +/* 01C838 8001BC38 03E00008 */ jr $ra +/* 01C83C 8001BC3C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/non_matchings/unknown_00BC20/func_8001D258.s b/asm/non_matchings/unknown_00BC20/func_8001D258.s index b294dde0..6726ea7e 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001D258.s +++ b/asm/non_matchings/unknown_00BC20/func_8001D258.s @@ -17,145 +17,3 @@ glabel func_8001D258 /* 01DE94 8001D294 27BD0020 */ addiu $sp, $sp, 0x20 /* 01DE98 8001D298 03E00008 */ jr $ra /* 01DE9C 8001D29C 00000000 */ nop - -/* 01DEA0 8001D2A0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01DEA4 8001D2A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 01DEA8 8001D2A8 AFB10020 */ sw $s1, 0x20($sp) -/* 01DEAC 8001D2AC AFB0001C */ sw $s0, 0x1c($sp) -/* 01DEB0 8001D2B0 AFA70034 */ sw $a3, 0x34($sp) -/* 01DEB4 8001D2B4 8C900054 */ lw $s0, 0x54($a0) -/* 01DEB8 8001D2B8 44856000 */ mtc1 $a1, $f12 -/* 01DEBC 8001D2BC 44867000 */ mtc1 $a2, $f14 -/* 01DEC0 8001D2C0 12000077 */ beqz $s0, .L8001D4A0 -/* 01DEC4 8001D2C4 00808825 */ move $s1, $a0 -/* 01DEC8 8001D2C8 C6040028 */ lwc1 $f4, 0x28($s0) -/* 01DECC 8001D2CC 44801000 */ mtc1 $zero, $f2 -/* 01DED0 8001D2D0 460C2180 */ add.s $f6, $f4, $f12 -/* 01DED4 8001D2D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01DED8 8001D2D8 E6060028 */ swc1 $f6, 0x28($s0) -/* 01DEDC 8001D2DC 8C900054 */ lw $s0, 0x54($a0) -/* 01DEE0 8001D2E0 00000000 */ nop -/* 01DEE4 8001D2E4 C6000028 */ lwc1 $f0, 0x28($s0) -/* 01DEE8 8001D2E8 00000000 */ nop -/* 01DEEC 8001D2EC 4602003C */ c.lt.s $f0, $f2 -/* 01DEF0 8001D2F0 00000000 */ nop -/* 01DEF4 8001D2F4 45000005 */ bc1f .L8001D30C -/* 01DEF8 8001D2F8 00000000 */ nop -/* 01DEFC 8001D2FC E6020028 */ swc1 $f2, 0x28($s0) -/* 01DF00 8001D300 8C900054 */ lw $s0, 0x54($a0) -/* 01DF04 8001D304 1000000B */ b .L8001D334 -/* 01DF08 8001D308 C608002C */ lwc1 $f8, 0x2c($s0) -.L8001D30C: -/* 01DF0C 8001D30C 44816000 */ mtc1 $at, $f12 -/* 01DF10 8001D310 00000000 */ nop -/* 01DF14 8001D314 4600603C */ c.lt.s $f12, $f0 -/* 01DF18 8001D318 00000000 */ nop -/* 01DF1C 8001D31C 45000004 */ bc1f .L8001D330 -/* 01DF20 8001D320 00000000 */ nop -/* 01DF24 8001D324 E60C0028 */ swc1 $f12, 0x28($s0) -/* 01DF28 8001D328 8E300054 */ lw $s0, 0x54($s1) -/* 01DF2C 8001D32C 00000000 */ nop -.L8001D330: -/* 01DF30 8001D330 C608002C */ lwc1 $f8, 0x2c($s0) -.L8001D334: -/* 01DF34 8001D334 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 01DF38 8001D338 460E4280 */ add.s $f10, $f8, $f14 -/* 01DF3C 8001D33C 44818000 */ mtc1 $at, $f16 -/* 01DF40 8001D340 E60A002C */ swc1 $f10, 0x2c($s0) -/* 01DF44 8001D344 8E300054 */ lw $s0, 0x54($s1) -/* 01DF48 8001D348 3C01800E */ lui $at, %hi(D_800E5660) # $at, 0x800e -/* 01DF4C 8001D34C C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DF50 8001D350 00000000 */ nop -/* 01DF54 8001D354 4602003C */ c.lt.s $f0, $f2 -/* 01DF58 8001D358 00000000 */ nop -/* 01DF5C 8001D35C 45000006 */ bc1f .L8001D378 -/* 01DF60 8001D360 00000000 */ nop -/* 01DF64 8001D364 E602002C */ swc1 $f2, 0x2c($s0) -/* 01DF68 8001D368 8E300054 */ lw $s0, 0x54($s1) -/* 01DF6C 8001D36C 00000000 */ nop -/* 01DF70 8001D370 C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DF74 8001D374 00000000 */ nop -.L8001D378: -/* 01DF78 8001D378 4600803E */ c.le.s $f16, $f0 -/* 01DF7C 8001D37C 00000000 */ nop -/* 01DF80 8001D380 45000008 */ bc1f .L8001D3A4 -/* 01DF84 8001D384 00000000 */ nop -/* 01DF88 8001D388 C4325660 */ lwc1 $f18, %lo(D_800E5660)($at) -/* 01DF8C 8001D38C 00000000 */ nop -/* 01DF90 8001D390 E612002C */ swc1 $f18, 0x2c($s0) -/* 01DF94 8001D394 8E300054 */ lw $s0, 0x54($s1) -/* 01DF98 8001D398 00000000 */ nop -/* 01DF9C 8001D39C C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DFA0 8001D3A0 00000000 */ nop -.L8001D3A4: -/* 01DFA4 8001D3A4 86080024 */ lh $t0, 0x24($s0) -/* 01DFA8 8001D3A8 87A9003A */ lh $t1, 0x3a($sp) -/* 01DFAC 8001D3AC 860E0022 */ lh $t6, 0x22($s0) -/* 01DFB0 8001D3B0 8E050028 */ lw $a1, 0x28($s0) -/* 01DFB4 8001D3B4 01095021 */ addu $t2, $t0, $t1 -/* 01DFB8 8001D3B8 87AF0036 */ lh $t7, 0x36($sp) -/* 01DFBC 8001D3BC AFAA0010 */ sw $t2, 0x10($sp) -/* 01DFC0 8001D3C0 860B0026 */ lh $t3, 0x26($s0) -/* 01DFC4 8001D3C4 87AC003E */ lh $t4, 0x3e($sp) -/* 01DFC8 8001D3C8 01CF3821 */ addu $a3, $t6, $t7 -/* 01DFCC 8001D3CC 0007C400 */ sll $t8, $a3, 0x10 -/* 01DFD0 8001D3D0 44060000 */ mfc1 $a2, $f0 -/* 01DFD4 8001D3D4 016C6821 */ addu $t5, $t3, $t4 -/* 01DFD8 8001D3D8 AFAD0014 */ sw $t5, 0x14($sp) -/* 01DFDC 8001D3DC 00183C03 */ sra $a3, $t8, 0x10 -/* 01DFE0 8001D3E0 0C00752D */ jal func_8001D4B4 -/* 01DFE4 8001D3E4 02002025 */ move $a0, $s0 -/* 01DFE8 8001D3E8 8E220040 */ lw $v0, 0x40($s1) -/* 01DFEC 8001D3EC 00000000 */ nop -/* 01DFF0 8001D3F0 904E003D */ lbu $t6, 0x3d($v0) -/* 01DFF4 8001D3F4 00000000 */ nop -/* 01DFF8 8001D3F8 11C0002A */ beqz $t6, .L8001D4A4 -/* 01DFFC 8001D3FC 8FBF0024 */ lw $ra, 0x24($sp) -/* 01E000 8001D400 904F003A */ lbu $t7, 0x3a($v0) -/* 01E004 8001D404 8E380054 */ lw $t8, 0x54($s1) -/* 01E008 8001D408 00000000 */ nop -/* 01E00C 8001D40C A30F0004 */ sb $t7, 4($t8) -/* 01E010 8001D410 8E390040 */ lw $t9, 0x40($s1) -/* 01E014 8001D414 8E290054 */ lw $t1, 0x54($s1) -/* 01E018 8001D418 9328003B */ lbu $t0, 0x3b($t9) -/* 01E01C 8001D41C 00000000 */ nop -/* 01E020 8001D420 A1280005 */ sb $t0, 5($t1) -/* 01E024 8001D424 8E2A0040 */ lw $t2, 0x40($s1) -/* 01E028 8001D428 8E2C0054 */ lw $t4, 0x54($s1) -/* 01E02C 8001D42C 914B003C */ lbu $t3, 0x3c($t2) -/* 01E030 8001D430 00000000 */ nop -/* 01E034 8001D434 A18B0006 */ sb $t3, 6($t4) -/* 01E038 8001D438 8E2D0040 */ lw $t5, 0x40($s1) -/* 01E03C 8001D43C 8E2F0054 */ lw $t7, 0x54($s1) -/* 01E040 8001D440 91AE003D */ lbu $t6, 0x3d($t5) -/* 01E044 8001D444 00000000 */ nop -/* 01E048 8001D448 A1EE0007 */ sb $t6, 7($t7) -/* 01E04C 8001D44C 8E300054 */ lw $s0, 0x54($s1) -/* 01E050 8001D450 00000000 */ nop -/* 01E054 8001D454 8618001C */ lh $t8, 0x1c($s0) -/* 01E058 8001D458 00000000 */ nop -/* 01E05C 8001D45C 0018C843 */ sra $t9, $t8, 1 -/* 01E060 8001D460 00194023 */ negu $t0, $t9 -/* 01E064 8001D464 A6080008 */ sh $t0, 8($s0) -/* 01E068 8001D468 8E300054 */ lw $s0, 0x54($s1) -/* 01E06C 8001D46C 00000000 */ nop -/* 01E070 8001D470 8609001E */ lh $t1, 0x1e($s0) -/* 01E074 8001D474 00000000 */ nop -/* 01E078 8001D478 00095043 */ sra $t2, $t1, 1 -/* 01E07C 8001D47C 000A5823 */ negu $t3, $t2 -/* 01E080 8001D480 A60B000A */ sh $t3, 0xa($s0) -/* 01E084 8001D484 8E300054 */ lw $s0, 0x54($s1) -/* 01E088 8001D488 00000000 */ nop -/* 01E08C 8001D48C 860C0020 */ lh $t4, 0x20($s0) -/* 01E090 8001D490 00000000 */ nop -/* 01E094 8001D494 000C6843 */ sra $t5, $t4, 1 -/* 01E098 8001D498 000D7023 */ negu $t6, $t5 -/* 01E09C 8001D49C A60E000C */ sh $t6, 0xc($s0) -.L8001D4A0: -/* 01E0A0 8001D4A0 8FBF0024 */ lw $ra, 0x24($sp) -.L8001D4A4: -/* 01E0A4 8001D4A4 8FB0001C */ lw $s0, 0x1c($sp) -/* 01E0A8 8001D4A8 8FB10020 */ lw $s1, 0x20($sp) -/* 01E0AC 8001D4AC 03E00008 */ jr $ra -/* 01E0B0 8001D4B0 27BD0028 */ addiu $sp, $sp, 0x28 - diff --git a/asm/non_matchings/unknown_00BC20/func_8001D2A0.s b/asm/non_matchings/unknown_00BC20/func_8001D2A0.s new file mode 100644 index 00000000..1d051d0c --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8001D2A0.s @@ -0,0 +1,141 @@ +glabel func_8001D2A0 +/* 01DEA0 8001D2A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01DEA4 8001D2A4 AFBF0024 */ sw $ra, 0x24($sp) +/* 01DEA8 8001D2A8 AFB10020 */ sw $s1, 0x20($sp) +/* 01DEAC 8001D2AC AFB0001C */ sw $s0, 0x1c($sp) +/* 01DEB0 8001D2B0 AFA70034 */ sw $a3, 0x34($sp) +/* 01DEB4 8001D2B4 8C900054 */ lw $s0, 0x54($a0) +/* 01DEB8 8001D2B8 44856000 */ mtc1 $a1, $f12 +/* 01DEBC 8001D2BC 44867000 */ mtc1 $a2, $f14 +/* 01DEC0 8001D2C0 12000077 */ beqz $s0, .L8001D4A0 +/* 01DEC4 8001D2C4 00808825 */ move $s1, $a0 +/* 01DEC8 8001D2C8 C6040028 */ lwc1 $f4, 0x28($s0) +/* 01DECC 8001D2CC 44801000 */ mtc1 $zero, $f2 +/* 01DED0 8001D2D0 460C2180 */ add.s $f6, $f4, $f12 +/* 01DED4 8001D2D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01DED8 8001D2D8 E6060028 */ swc1 $f6, 0x28($s0) +/* 01DEDC 8001D2DC 8C900054 */ lw $s0, 0x54($a0) +/* 01DEE0 8001D2E0 00000000 */ nop +/* 01DEE4 8001D2E4 C6000028 */ lwc1 $f0, 0x28($s0) +/* 01DEE8 8001D2E8 00000000 */ nop +/* 01DEEC 8001D2EC 4602003C */ c.lt.s $f0, $f2 +/* 01DEF0 8001D2F0 00000000 */ nop +/* 01DEF4 8001D2F4 45000005 */ bc1f .L8001D30C +/* 01DEF8 8001D2F8 00000000 */ nop +/* 01DEFC 8001D2FC E6020028 */ swc1 $f2, 0x28($s0) +/* 01DF00 8001D300 8C900054 */ lw $s0, 0x54($a0) +/* 01DF04 8001D304 1000000B */ b .L8001D334 +/* 01DF08 8001D308 C608002C */ lwc1 $f8, 0x2c($s0) +.L8001D30C: +/* 01DF0C 8001D30C 44816000 */ mtc1 $at, $f12 +/* 01DF10 8001D310 00000000 */ nop +/* 01DF14 8001D314 4600603C */ c.lt.s $f12, $f0 +/* 01DF18 8001D318 00000000 */ nop +/* 01DF1C 8001D31C 45000004 */ bc1f .L8001D330 +/* 01DF20 8001D320 00000000 */ nop +/* 01DF24 8001D324 E60C0028 */ swc1 $f12, 0x28($s0) +/* 01DF28 8001D328 8E300054 */ lw $s0, 0x54($s1) +/* 01DF2C 8001D32C 00000000 */ nop +.L8001D330: +/* 01DF30 8001D330 C608002C */ lwc1 $f8, 0x2c($s0) +.L8001D334: +/* 01DF34 8001D334 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 01DF38 8001D338 460E4280 */ add.s $f10, $f8, $f14 +/* 01DF3C 8001D33C 44818000 */ mtc1 $at, $f16 +/* 01DF40 8001D340 E60A002C */ swc1 $f10, 0x2c($s0) +/* 01DF44 8001D344 8E300054 */ lw $s0, 0x54($s1) +/* 01DF48 8001D348 3C01800E */ lui $at, %hi(D_800E5660) # $at, 0x800e +/* 01DF4C 8001D34C C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DF50 8001D350 00000000 */ nop +/* 01DF54 8001D354 4602003C */ c.lt.s $f0, $f2 +/* 01DF58 8001D358 00000000 */ nop +/* 01DF5C 8001D35C 45000006 */ bc1f .L8001D378 +/* 01DF60 8001D360 00000000 */ nop +/* 01DF64 8001D364 E602002C */ swc1 $f2, 0x2c($s0) +/* 01DF68 8001D368 8E300054 */ lw $s0, 0x54($s1) +/* 01DF6C 8001D36C 00000000 */ nop +/* 01DF70 8001D370 C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DF74 8001D374 00000000 */ nop +.L8001D378: +/* 01DF78 8001D378 4600803E */ c.le.s $f16, $f0 +/* 01DF7C 8001D37C 00000000 */ nop +/* 01DF80 8001D380 45000008 */ bc1f .L8001D3A4 +/* 01DF84 8001D384 00000000 */ nop +/* 01DF88 8001D388 C4325660 */ lwc1 $f18, %lo(D_800E5660)($at) +/* 01DF8C 8001D38C 00000000 */ nop +/* 01DF90 8001D390 E612002C */ swc1 $f18, 0x2c($s0) +/* 01DF94 8001D394 8E300054 */ lw $s0, 0x54($s1) +/* 01DF98 8001D398 00000000 */ nop +/* 01DF9C 8001D39C C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DFA0 8001D3A0 00000000 */ nop +.L8001D3A4: +/* 01DFA4 8001D3A4 86080024 */ lh $t0, 0x24($s0) +/* 01DFA8 8001D3A8 87A9003A */ lh $t1, 0x3a($sp) +/* 01DFAC 8001D3AC 860E0022 */ lh $t6, 0x22($s0) +/* 01DFB0 8001D3B0 8E050028 */ lw $a1, 0x28($s0) +/* 01DFB4 8001D3B4 01095021 */ addu $t2, $t0, $t1 +/* 01DFB8 8001D3B8 87AF0036 */ lh $t7, 0x36($sp) +/* 01DFBC 8001D3BC AFAA0010 */ sw $t2, 0x10($sp) +/* 01DFC0 8001D3C0 860B0026 */ lh $t3, 0x26($s0) +/* 01DFC4 8001D3C4 87AC003E */ lh $t4, 0x3e($sp) +/* 01DFC8 8001D3C8 01CF3821 */ addu $a3, $t6, $t7 +/* 01DFCC 8001D3CC 0007C400 */ sll $t8, $a3, 0x10 +/* 01DFD0 8001D3D0 44060000 */ mfc1 $a2, $f0 +/* 01DFD4 8001D3D4 016C6821 */ addu $t5, $t3, $t4 +/* 01DFD8 8001D3D8 AFAD0014 */ sw $t5, 0x14($sp) +/* 01DFDC 8001D3DC 00183C03 */ sra $a3, $t8, 0x10 +/* 01DFE0 8001D3E0 0C00752D */ jal func_8001D4B4 +/* 01DFE4 8001D3E4 02002025 */ move $a0, $s0 +/* 01DFE8 8001D3E8 8E220040 */ lw $v0, 0x40($s1) +/* 01DFEC 8001D3EC 00000000 */ nop +/* 01DFF0 8001D3F0 904E003D */ lbu $t6, 0x3d($v0) +/* 01DFF4 8001D3F4 00000000 */ nop +/* 01DFF8 8001D3F8 11C0002A */ beqz $t6, .L8001D4A4 +/* 01DFFC 8001D3FC 8FBF0024 */ lw $ra, 0x24($sp) +/* 01E000 8001D400 904F003A */ lbu $t7, 0x3a($v0) +/* 01E004 8001D404 8E380054 */ lw $t8, 0x54($s1) +/* 01E008 8001D408 00000000 */ nop +/* 01E00C 8001D40C A30F0004 */ sb $t7, 4($t8) +/* 01E010 8001D410 8E390040 */ lw $t9, 0x40($s1) +/* 01E014 8001D414 8E290054 */ lw $t1, 0x54($s1) +/* 01E018 8001D418 9328003B */ lbu $t0, 0x3b($t9) +/* 01E01C 8001D41C 00000000 */ nop +/* 01E020 8001D420 A1280005 */ sb $t0, 5($t1) +/* 01E024 8001D424 8E2A0040 */ lw $t2, 0x40($s1) +/* 01E028 8001D428 8E2C0054 */ lw $t4, 0x54($s1) +/* 01E02C 8001D42C 914B003C */ lbu $t3, 0x3c($t2) +/* 01E030 8001D430 00000000 */ nop +/* 01E034 8001D434 A18B0006 */ sb $t3, 6($t4) +/* 01E038 8001D438 8E2D0040 */ lw $t5, 0x40($s1) +/* 01E03C 8001D43C 8E2F0054 */ lw $t7, 0x54($s1) +/* 01E040 8001D440 91AE003D */ lbu $t6, 0x3d($t5) +/* 01E044 8001D444 00000000 */ nop +/* 01E048 8001D448 A1EE0007 */ sb $t6, 7($t7) +/* 01E04C 8001D44C 8E300054 */ lw $s0, 0x54($s1) +/* 01E050 8001D450 00000000 */ nop +/* 01E054 8001D454 8618001C */ lh $t8, 0x1c($s0) +/* 01E058 8001D458 00000000 */ nop +/* 01E05C 8001D45C 0018C843 */ sra $t9, $t8, 1 +/* 01E060 8001D460 00194023 */ negu $t0, $t9 +/* 01E064 8001D464 A6080008 */ sh $t0, 8($s0) +/* 01E068 8001D468 8E300054 */ lw $s0, 0x54($s1) +/* 01E06C 8001D46C 00000000 */ nop +/* 01E070 8001D470 8609001E */ lh $t1, 0x1e($s0) +/* 01E074 8001D474 00000000 */ nop +/* 01E078 8001D478 00095043 */ sra $t2, $t1, 1 +/* 01E07C 8001D47C 000A5823 */ negu $t3, $t2 +/* 01E080 8001D480 A60B000A */ sh $t3, 0xa($s0) +/* 01E084 8001D484 8E300054 */ lw $s0, 0x54($s1) +/* 01E088 8001D488 00000000 */ nop +/* 01E08C 8001D48C 860C0020 */ lh $t4, 0x20($s0) +/* 01E090 8001D490 00000000 */ nop +/* 01E094 8001D494 000C6843 */ sra $t5, $t4, 1 +/* 01E098 8001D498 000D7023 */ negu $t6, $t5 +/* 01E09C 8001D49C A60E000C */ sh $t6, 0xc($s0) +.L8001D4A0: +/* 01E0A0 8001D4A0 8FBF0024 */ lw $ra, 0x24($sp) +.L8001D4A4: +/* 01E0A4 8001D4A4 8FB0001C */ lw $s0, 0x1c($sp) +/* 01E0A8 8001D4A8 8FB10020 */ lw $s1, 0x20($sp) +/* 01E0AC 8001D4AC 03E00008 */ jr $ra +/* 01E0B0 8001D4B0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/non_matchings/unknown_00BC20/func_8001DD54.s b/asm/non_matchings/unknown_00BC20/func_8001DD54.s index 4ecf0030..f40b5b55 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001DD54.s +++ b/asm/non_matchings/unknown_00BC20/func_8001DD54.s @@ -267,97 +267,3 @@ glabel func_8001DD54 /* 01ED30 8001E130 8FBE0038 */ lw $fp, 0x38($sp) /* 01ED34 8001E134 03E00008 */ jr $ra /* 01ED38 8001E138 27BD0118 */ addiu $sp, $sp, 0x118 - -/* 01ED3C 8001E13C 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 01ED40 8001E140 3C0B8012 */ lui $t3, %hi(objCount) # $t3, 0x8012 -/* 01ED44 8001E144 256BAE5C */ addiu $t3, %lo(objCount) # addiu $t3, $t3, -0x51a4 -/* 01ED48 8001E148 AFB00008 */ sw $s0, 8($sp) -/* 01ED4C 8001E14C 8D630000 */ lw $v1, ($t3) -/* 01ED50 8001E150 00048400 */ sll $s0, $a0, 0x10 -/* 01ED54 8001E154 00107403 */ sra $t6, $s0, 0x10 -/* 01ED58 8001E158 AFB1000C */ sw $s1, 0xc($sp) -/* 01ED5C 8001E15C 00A08825 */ move $s1, $a1 -/* 01ED60 8001E160 01C08025 */ move $s0, $t6 -/* 01ED64 8001E164 AFA40010 */ sw $a0, 0x10($sp) -/* 01ED68 8001E168 18600048 */ blez $v1, .L8001E28C -/* 01ED6C 8001E16C 00001025 */ move $v0, $zero -/* 01ED70 8001E170 3C0C8012 */ lui $t4, %hi(objPtrList) # $t4, 0x8012 -/* 01ED74 8001E174 8FAA0028 */ lw $t2, 0x28($sp) -/* 01ED78 8001E178 8FA90024 */ lw $t1, 0x24($sp) -/* 01ED7C 8001E17C 8FA80020 */ lw $t0, 0x20($sp) -/* 01ED80 8001E180 258CAE58 */ addiu $t4, %lo(objPtrList) # addiu $t4, $t4, -0x51a8 -/* 01ED84 8001E184 240D0001 */ li $t5, 1 -.L8001E188: -/* 01ED88 8001E188 8D8F0000 */ lw $t7, ($t4) -/* 01ED8C 8001E18C 0002C080 */ sll $t8, $v0, 2 -/* 01ED90 8001E190 01F8C821 */ addu $t9, $t7, $t8 -/* 01ED94 8001E194 8F240000 */ lw $a0, ($t9) -/* 01ED98 8001E198 00000000 */ nop -/* 01ED9C 8001E19C 848E0006 */ lh $t6, 6($a0) -/* 01EDA0 8001E1A0 00000000 */ nop -/* 01EDA4 8001E1A4 31CF8000 */ andi $t7, $t6, 0x8000 -/* 01EDA8 8001E1A8 15E00034 */ bnez $t7, .L8001E27C -/* 01EDAC 8001E1AC 00000000 */ nop -/* 01EDB0 8001E1B0 84980048 */ lh $t8, 0x48($a0) -/* 01EDB4 8001E1B4 00000000 */ nop -/* 01EDB8 8001E1B8 15B80030 */ bne $t5, $t8, .L8001E27C -/* 01EDBC 8001E1BC 00000000 */ nop -/* 01EDC0 8001E1C0 8C850064 */ lw $a1, 0x64($a0) -/* 01EDC4 8001E1C4 00000000 */ nop -/* 01EDC8 8001E1C8 84B90000 */ lh $t9, ($a1) -/* 01EDCC 8001E1CC 00000000 */ nop -/* 01EDD0 8001E1D0 1619002B */ bne $s0, $t9, .L8001E280 -/* 01EDD4 8001E1D4 24420001 */ addiu $v0, $v0, 1 -/* 01EDD8 8001E1D8 444EF800 */ cfc1 $t6, $31 -/* 01EDDC 8001E1DC C484000C */ lwc1 $f4, 0xc($a0) -/* 01EDE0 8001E1E0 35C10003 */ ori $at, $t6, 3 -/* 01EDE4 8001E1E4 38210002 */ xori $at, $at, 2 -/* 01EDE8 8001E1E8 44C1F800 */ ctc1 $at, $31 -/* 01EDEC 8001E1EC 00000000 */ nop -/* 01EDF0 8001E1F0 460021A4 */ cvt.w.s $f6, $f4 -/* 01EDF4 8001E1F4 44CEF800 */ ctc1 $t6, $31 -/* 01EDF8 8001E1F8 440F3000 */ mfc1 $t7, $f6 -/* 01EDFC 8001E1FC 00000000 */ nop -/* 01EE00 8001E200 4458F800 */ cfc1 $t8, $31 -/* 01EE04 8001E204 A62F0000 */ sh $t7, ($s1) -/* 01EE08 8001E208 37010003 */ ori $at, $t8, 3 -/* 01EE0C 8001E20C 38210002 */ xori $at, $at, 2 -/* 01EE10 8001E210 44C1F800 */ ctc1 $at, $31 -/* 01EE14 8001E214 C4880010 */ lwc1 $f8, 0x10($a0) -/* 01EE18 8001E218 35C10003 */ ori $at, $t6, 3 -/* 01EE1C 8001E21C 460042A4 */ cvt.w.s $f10, $f8 -/* 01EE20 8001E220 38210002 */ xori $at, $at, 2 -/* 01EE24 8001E224 44195000 */ mfc1 $t9, $f10 -/* 01EE28 8001E228 44D8F800 */ ctc1 $t8, $31 -/* 01EE2C 8001E22C A4D90000 */ sh $t9, ($a2) -/* 01EE30 8001E230 C4900014 */ lwc1 $f16, 0x14($a0) -/* 01EE34 8001E234 44C1F800 */ ctc1 $at, $31 -/* 01EE38 8001E238 00000000 */ nop -/* 01EE3C 8001E23C 460084A4 */ cvt.w.s $f18, $f16 -/* 01EE40 8001E240 440F9000 */ mfc1 $t7, $f18 -/* 01EE44 8001E244 44CEF800 */ ctc1 $t6, $31 -/* 01EE48 8001E248 A4EF0000 */ sh $t7, ($a3) -/* 01EE4C 8001E24C 84980004 */ lh $t8, 4($a0) -/* 01EE50 8001E250 00000000 */ nop -/* 01EE54 8001E254 A5180000 */ sh $t8, ($t0) -/* 01EE58 8001E258 84990002 */ lh $t9, 2($a0) -/* 01EE5C 8001E25C 00000000 */ nop -/* 01EE60 8001E260 A5390000 */ sh $t9, ($t1) -/* 01EE64 8001E264 848E0000 */ lh $t6, ($a0) -/* 01EE68 8001E268 00000000 */ nop -/* 01EE6C 8001E26C A54E0000 */ sh $t6, ($t2) -/* 01EE70 8001E270 8D630000 */ lw $v1, ($t3) -/* 01EE74 8001E274 00000000 */ nop -/* 01EE78 8001E278 00601025 */ move $v0, $v1 -.L8001E27C: -/* 01EE7C 8001E27C 24420001 */ addiu $v0, $v0, 1 -.L8001E280: -/* 01EE80 8001E280 0043082A */ slt $at, $v0, $v1 -/* 01EE84 8001E284 1420FFC0 */ bnez $at, .L8001E188 -/* 01EE88 8001E288 00000000 */ nop -.L8001E28C: -/* 01EE8C 8001E28C 8FB00008 */ lw $s0, 8($sp) -/* 01EE90 8001E290 8FB1000C */ lw $s1, 0xc($sp) -/* 01EE94 8001E294 03E00008 */ jr $ra -/* 01EE98 8001E298 27BD0010 */ addiu $sp, $sp, 0x10 - diff --git a/asm/non_matchings/unknown_00BC20/func_8001E13C.s b/asm/non_matchings/unknown_00BC20/func_8001E13C.s new file mode 100644 index 00000000..24141b8a --- /dev/null +++ b/asm/non_matchings/unknown_00BC20/func_8001E13C.s @@ -0,0 +1,93 @@ +glabel func_8001E13C +/* 01ED3C 8001E13C 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 01ED40 8001E140 3C0B8012 */ lui $t3, %hi(objCount) # $t3, 0x8012 +/* 01ED44 8001E144 256BAE5C */ addiu $t3, %lo(objCount) # addiu $t3, $t3, -0x51a4 +/* 01ED48 8001E148 AFB00008 */ sw $s0, 8($sp) +/* 01ED4C 8001E14C 8D630000 */ lw $v1, ($t3) +/* 01ED50 8001E150 00048400 */ sll $s0, $a0, 0x10 +/* 01ED54 8001E154 00107403 */ sra $t6, $s0, 0x10 +/* 01ED58 8001E158 AFB1000C */ sw $s1, 0xc($sp) +/* 01ED5C 8001E15C 00A08825 */ move $s1, $a1 +/* 01ED60 8001E160 01C08025 */ move $s0, $t6 +/* 01ED64 8001E164 AFA40010 */ sw $a0, 0x10($sp) +/* 01ED68 8001E168 18600048 */ blez $v1, .L8001E28C +/* 01ED6C 8001E16C 00001025 */ move $v0, $zero +/* 01ED70 8001E170 3C0C8012 */ lui $t4, %hi(objPtrList) # $t4, 0x8012 +/* 01ED74 8001E174 8FAA0028 */ lw $t2, 0x28($sp) +/* 01ED78 8001E178 8FA90024 */ lw $t1, 0x24($sp) +/* 01ED7C 8001E17C 8FA80020 */ lw $t0, 0x20($sp) +/* 01ED80 8001E180 258CAE58 */ addiu $t4, %lo(objPtrList) # addiu $t4, $t4, -0x51a8 +/* 01ED84 8001E184 240D0001 */ li $t5, 1 +.L8001E188: +/* 01ED88 8001E188 8D8F0000 */ lw $t7, ($t4) +/* 01ED8C 8001E18C 0002C080 */ sll $t8, $v0, 2 +/* 01ED90 8001E190 01F8C821 */ addu $t9, $t7, $t8 +/* 01ED94 8001E194 8F240000 */ lw $a0, ($t9) +/* 01ED98 8001E198 00000000 */ nop +/* 01ED9C 8001E19C 848E0006 */ lh $t6, 6($a0) +/* 01EDA0 8001E1A0 00000000 */ nop +/* 01EDA4 8001E1A4 31CF8000 */ andi $t7, $t6, 0x8000 +/* 01EDA8 8001E1A8 15E00034 */ bnez $t7, .L8001E27C +/* 01EDAC 8001E1AC 00000000 */ nop +/* 01EDB0 8001E1B0 84980048 */ lh $t8, 0x48($a0) +/* 01EDB4 8001E1B4 00000000 */ nop +/* 01EDB8 8001E1B8 15B80030 */ bne $t5, $t8, .L8001E27C +/* 01EDBC 8001E1BC 00000000 */ nop +/* 01EDC0 8001E1C0 8C850064 */ lw $a1, 0x64($a0) +/* 01EDC4 8001E1C4 00000000 */ nop +/* 01EDC8 8001E1C8 84B90000 */ lh $t9, ($a1) +/* 01EDCC 8001E1CC 00000000 */ nop +/* 01EDD0 8001E1D0 1619002B */ bne $s0, $t9, .L8001E280 +/* 01EDD4 8001E1D4 24420001 */ addiu $v0, $v0, 1 +/* 01EDD8 8001E1D8 444EF800 */ cfc1 $t6, $31 +/* 01EDDC 8001E1DC C484000C */ lwc1 $f4, 0xc($a0) +/* 01EDE0 8001E1E0 35C10003 */ ori $at, $t6, 3 +/* 01EDE4 8001E1E4 38210002 */ xori $at, $at, 2 +/* 01EDE8 8001E1E8 44C1F800 */ ctc1 $at, $31 +/* 01EDEC 8001E1EC 00000000 */ nop +/* 01EDF0 8001E1F0 460021A4 */ cvt.w.s $f6, $f4 +/* 01EDF4 8001E1F4 44CEF800 */ ctc1 $t6, $31 +/* 01EDF8 8001E1F8 440F3000 */ mfc1 $t7, $f6 +/* 01EDFC 8001E1FC 00000000 */ nop +/* 01EE00 8001E200 4458F800 */ cfc1 $t8, $31 +/* 01EE04 8001E204 A62F0000 */ sh $t7, ($s1) +/* 01EE08 8001E208 37010003 */ ori $at, $t8, 3 +/* 01EE0C 8001E20C 38210002 */ xori $at, $at, 2 +/* 01EE10 8001E210 44C1F800 */ ctc1 $at, $31 +/* 01EE14 8001E214 C4880010 */ lwc1 $f8, 0x10($a0) +/* 01EE18 8001E218 35C10003 */ ori $at, $t6, 3 +/* 01EE1C 8001E21C 460042A4 */ cvt.w.s $f10, $f8 +/* 01EE20 8001E220 38210002 */ xori $at, $at, 2 +/* 01EE24 8001E224 44195000 */ mfc1 $t9, $f10 +/* 01EE28 8001E228 44D8F800 */ ctc1 $t8, $31 +/* 01EE2C 8001E22C A4D90000 */ sh $t9, ($a2) +/* 01EE30 8001E230 C4900014 */ lwc1 $f16, 0x14($a0) +/* 01EE34 8001E234 44C1F800 */ ctc1 $at, $31 +/* 01EE38 8001E238 00000000 */ nop +/* 01EE3C 8001E23C 460084A4 */ cvt.w.s $f18, $f16 +/* 01EE40 8001E240 440F9000 */ mfc1 $t7, $f18 +/* 01EE44 8001E244 44CEF800 */ ctc1 $t6, $31 +/* 01EE48 8001E248 A4EF0000 */ sh $t7, ($a3) +/* 01EE4C 8001E24C 84980004 */ lh $t8, 4($a0) +/* 01EE50 8001E250 00000000 */ nop +/* 01EE54 8001E254 A5180000 */ sh $t8, ($t0) +/* 01EE58 8001E258 84990002 */ lh $t9, 2($a0) +/* 01EE5C 8001E25C 00000000 */ nop +/* 01EE60 8001E260 A5390000 */ sh $t9, ($t1) +/* 01EE64 8001E264 848E0000 */ lh $t6, ($a0) +/* 01EE68 8001E268 00000000 */ nop +/* 01EE6C 8001E26C A54E0000 */ sh $t6, ($t2) +/* 01EE70 8001E270 8D630000 */ lw $v1, ($t3) +/* 01EE74 8001E274 00000000 */ nop +/* 01EE78 8001E278 00601025 */ move $v0, $v1 +.L8001E27C: +/* 01EE7C 8001E27C 24420001 */ addiu $v0, $v0, 1 +.L8001E280: +/* 01EE80 8001E280 0043082A */ slt $at, $v0, $v1 +/* 01EE84 8001E284 1420FFC0 */ bnez $at, .L8001E188 +/* 01EE88 8001E288 00000000 */ nop +.L8001E28C: +/* 01EE8C 8001E28C 8FB00008 */ lw $s0, 8($sp) +/* 01EE90 8001E290 8FB1000C */ lw $s1, 0xc($sp) +/* 01EE94 8001E294 03E00008 */ jr $ra +/* 01EE98 8001E298 27BD0010 */ addiu $sp, $sp, 0x10 diff --git a/asm/non_matchings/unknown_00BC20/func_8001E93C.s b/asm/non_matchings/unknown_00BC20/func_8001E93C.s index 67b18e51..db0e8063 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001E93C.s +++ b/asm/non_matchings/unknown_00BC20/func_8001E93C.s @@ -31,7 +31,7 @@ glabel func_8001E93C /* 01F5AC 8001E9AC 1219000A */ beq $s0, $t9, .L8001E9D8 /* 01F5B0 8001E9B0 00000000 */ nop /* 01F5B4 8001E9B4 00602025 */ move $a0, $v1 -/* 01F5B8 8001E9B8 0C003FEE */ jal func_8000FFB8 +/* 01F5B8 8001E9B8 0C003FEE */ jal particlePtrList_addObject /* 01F5BC 8001E9BC AFA2003C */ sw $v0, 0x3c($sp) /* 01F5C0 8001E9C0 8FA2003C */ lw $v0, 0x3c($sp) /* 01F5C4 8001E9C4 3C048012 */ lui $a0, %hi(D_8011AE78) # $a0, 0x8012 diff --git a/asm/non_matchings/unknown_00BC20/func_8001F23C.s b/asm/non_matchings/unknown_00BC20/func_8001F23C.s index 7aa33f76..67d984df 100644 --- a/asm/non_matchings/unknown_00BC20/func_8001F23C.s +++ b/asm/non_matchings/unknown_00BC20/func_8001F23C.s @@ -37,7 +37,7 @@ glabel func_8001F23C /* 01FEC8 8001F2C8 00000000 */ nop /* 01FECC 8001F2CC 11A00005 */ beqz $t5, .L8001F2E4 /* 01FED0 8001F2D0 00000000 */ nop -/* 01FED4 8001F2D4 0C003FEE */ jal func_8000FFB8 +/* 01FED4 8001F2D4 0C003FEE */ jal particlePtrList_addObject /* 01FED8 8001F2D8 00402025 */ move $a0, $v0 /* 01FEDC 8001F2DC AE800064 */ sw $zero, 0x64($s4) /* 01FEE0 8001F2E0 00008825 */ move $s1, $zero diff --git a/asm/non_matchings/unknown_00BC20/func_80022E18.s b/asm/non_matchings/unknown_00BC20/func_80022E18.s index 1cb34708..fd73b8f2 100644 --- a/asm/non_matchings/unknown_00BC20/func_80022E18.s +++ b/asm/non_matchings/unknown_00BC20/func_80022E18.s @@ -39,7 +39,7 @@ glabel func_80022E18 /* 023AA8 80022EA8 8CEB0000 */ lw $t3, ($a3) /* 023AAC 80022EAC 00000000 */ nop /* 023AB0 80022EB0 8D640004 */ lw $a0, 4($t3) -/* 023AB4 80022EB4 0C003FEE */ jal func_8000FFB8 +/* 023AB4 80022EB4 0C003FEE */ jal particlePtrList_addObject /* 023AB8 80022EB8 00000000 */ nop /* 023ABC 80022EBC 3C078012 */ lui $a3, %hi(playerStructArray_Ptr) # $a3, 0x8012 /* 023AC0 80022EC0 24E7AEE4 */ addiu $a3, %lo(playerStructArray_Ptr) # addiu $a3, $a3, -0x511c @@ -91,7 +91,7 @@ glabel func_80022E18 /* 023B6C 80022F6C 00000000 */ nop /* 023B70 80022F70 10800007 */ beqz $a0, .L80022F90 /* 023B74 80022F74 8FAC0030 */ lw $t4, 0x30($sp) -/* 023B78 80022F78 0C003FEE */ jal func_8000FFB8 +/* 023B78 80022F78 0C003FEE */ jal particlePtrList_addObject /* 023B7C 80022F7C AFA30024 */ sw $v1, 0x24($sp) /* 023B80 80022F80 8FA30024 */ lw $v1, 0x24($sp) /* 023B84 80022F84 00000000 */ nop diff --git a/asm/non_matchings/unknown_0255E0/func_8002C7D4.s b/asm/non_matchings/unknown_0255E0/func_8002C7D4.s index b7936d61..32ffde75 100644 --- a/asm/non_matchings/unknown_0255E0/func_8002C7D4.s +++ b/asm/non_matchings/unknown_0255E0/func_8002C7D4.s @@ -84,7 +84,7 @@ glabel func_8002C7D4 /* 02D50C 8002C90C 00000000 */ nop /* 02D510 8002C910 10800005 */ beqz $a0, .L8002C928 /* 02D514 8002C914 00000000 */ nop -/* 02D518 8002C918 0C003FEE */ jal func_8000FFB8 +/* 02D518 8002C918 0C003FEE */ jal particlePtrList_addObject /* 02D51C 8002C91C 00000000 */ nop /* 02D520 8002C920 0C004013 */ jal particlePtrList_flush /* 02D524 8002C924 00000000 */ nop diff --git a/asm/non_matchings/unknown_032760/func_80033F60.s b/asm/non_matchings/unknown_032760/func_80033F60.s index ae522d9c..ea9afef2 100644 --- a/asm/non_matchings/unknown_032760/func_80033F60.s +++ b/asm/non_matchings/unknown_032760/func_80033F60.s @@ -272,7 +272,7 @@ glabel func_80033F60 /* 034F6C 8003436C 2407002C */ li $a3, 44 /* 034F70 80034370 0C00FF11 */ jal func_8003FC44 /* 034F74 80034374 E7A60014 */ swc1 $f6, 0x14($sp) -/* 034F78 80034378 0C003FEE */ jal func_8000FFB8 +/* 034F78 80034378 0C003FEE */ jal particlePtrList_addObject /* 034F7C 8003437C 02002025 */ move $a0, $s0 /* 034F80 80034380 1000000D */ b .L800343B8 /* 034F84 80034384 86090048 */ lh $t1, 0x48($s0) @@ -308,7 +308,7 @@ glabel func_80033F60 /* 034FF0 800343F0 2401012A */ li $at, 298 /* 034FF4 800343F4 15A1000F */ bne $t5, $at, .L80034434 /* 034FF8 800343F8 00000000 */ nop -/* 034FFC 800343FC 0C003FEE */ jal func_8000FFB8 +/* 034FFC 800343FC 0C003FEE */ jal particlePtrList_addObject /* 035000 80034400 02002025 */ move $a0, $s0 /* 035004 80034404 C60C000C */ lwc1 $f12, 0xc($s0) /* 035008 80034408 C60E0010 */ lwc1 $f14, 0x10($s0) @@ -340,7 +340,7 @@ glabel func_80033F60 /* 03506C 8003446C 00000000 */ nop /* 035070 80034470 4500002C */ bc1f .L80034524 /* 035074 80034474 8FBF002C */ lw $ra, 0x2c($sp) -/* 035078 80034478 0C003FEE */ jal func_8000FFB8 +/* 035078 80034478 0C003FEE */ jal particlePtrList_addObject /* 03507C 8003447C 02002025 */ move $a0, $s0 /* 035080 80034480 10000028 */ b .L80034524 /* 035084 80034484 8FBF002C */ lw $ra, 0x2c($sp) @@ -384,7 +384,7 @@ glabel func_80033F60 /* 03510C 8003450C AFA00014 */ sw $zero, 0x14($sp) /* 035110 80034510 0C002556 */ jal func_80009558 /* 035114 80034514 24040155 */ li $a0, 341 -/* 035118 80034518 0C003FEE */ jal func_8000FFB8 +/* 035118 80034518 0C003FEE */ jal particlePtrList_addObject /* 03511C 8003451C 02002025 */ move $a0, $s0 .L80034520: /* 035120 80034520 8FBF002C */ lw $ra, 0x2c($sp) diff --git a/asm/non_matchings/unknown_032760/func_80034860.s b/asm/non_matchings/unknown_032760/func_80034860.s index 819fcadb..4a346fdb 100644 --- a/asm/non_matchings/unknown_032760/func_80034860.s +++ b/asm/non_matchings/unknown_032760/func_80034860.s @@ -165,7 +165,7 @@ glabel func_80034860 .L80034AD0: /* 0356D0 80034AD0 11000004 */ beqz $t0, .L80034AE4 /* 0356D4 80034AD4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0356D8 80034AD8 0C003FEE */ jal func_8000FFB8 +/* 0356D8 80034AD8 0C003FEE */ jal particlePtrList_addObject /* 0356DC 80034ADC 02002025 */ move $a0, $s0 /* 0356E0 80034AE0 8FBF002C */ lw $ra, 0x2c($sp) .L80034AE4: diff --git a/asm/non_matchings/unknown_032760/func_80035260.s b/asm/non_matchings/unknown_032760/func_80035260.s index ea99ee45..56fa4148 100644 --- a/asm/non_matchings/unknown_032760/func_80035260.s +++ b/asm/non_matchings/unknown_032760/func_80035260.s @@ -149,7 +149,7 @@ glabel func_80035260 /* 03609C 8003549C 00000000 */ nop /* 0360A0 800354A0 AC400078 */ sw $zero, 0x78($v0) .L800354A4: -/* 0360A4 800354A4 0C003FEE */ jal func_8000FFB8 +/* 0360A4 800354A4 0C003FEE */ jal particlePtrList_addObject /* 0360A8 800354A8 02002025 */ move $a0, $s0 .L800354AC: /* 0360AC 800354AC 8FAB0034 */ lw $t3, 0x34($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003588C.s b/asm/non_matchings/unknown_032760/func_8003588C.s index 3d21eacc..b5467400 100644 --- a/asm/non_matchings/unknown_032760/func_8003588C.s +++ b/asm/non_matchings/unknown_032760/func_8003588C.s @@ -51,7 +51,7 @@ glabel func_8003588C /* 036548 80035948 0002CA80 */ sll $t9, $v0, 0xa /* 03654C 8003594C 07210004 */ bgez $t9, .L80035960 /* 036550 80035950 8FBF0014 */ lw $ra, 0x14($sp) -/* 036554 80035954 0C003FEE */ jal func_8000FFB8 +/* 036554 80035954 0C003FEE */ jal particlePtrList_addObject /* 036558 80035958 00000000 */ nop /* 03655C 8003595C 8FBF0014 */ lw $ra, 0x14($sp) .L80035960: diff --git a/asm/non_matchings/unknown_032760/func_80035AE8.s b/asm/non_matchings/unknown_032760/func_80035AE8.s index a9277027..3cf6a451 100644 --- a/asm/non_matchings/unknown_032760/func_80035AE8.s +++ b/asm/non_matchings/unknown_032760/func_80035AE8.s @@ -87,7 +87,7 @@ glabel func_80035AE8 /* 03682C 80035C2C 0002C280 */ sll $t8, $v0, 0xa /* 036830 80035C30 07010004 */ bgez $t8, .L80035C44 /* 036834 80035C34 8FBF0014 */ lw $ra, 0x14($sp) -/* 036838 80035C38 0C003FEE */ jal func_8000FFB8 +/* 036838 80035C38 0C003FEE */ jal particlePtrList_addObject /* 03683C 80035C3C 00000000 */ nop /* 036840 80035C40 8FBF0014 */ lw $ra, 0x14($sp) .L80035C44: diff --git a/asm/non_matchings/unknown_032760/func_800370D4.s b/asm/non_matchings/unknown_032760/func_800370D4.s index 55b19218..4617731f 100644 --- a/asm/non_matchings/unknown_032760/func_800370D4.s +++ b/asm/non_matchings/unknown_032760/func_800370D4.s @@ -8,7 +8,7 @@ glabel func_800370D4 /* 037CEC 800370EC AFA50074 */ sw $a1, 0x74($sp) /* 037CF0 800370F0 18400005 */ blez $v0, .L80037108 /* 037CF4 800370F4 00000000 */ nop -/* 037CF8 800370F8 0C003FEE */ jal func_8000FFB8 +/* 037CF8 800370F8 0C003FEE */ jal particlePtrList_addObject /* 037CFC 800370FC 02202025 */ move $a0, $s1 /* 037D00 80037100 10000119 */ b .L80037568 /* 037D04 80037104 8FBF001C */ lw $ra, 0x1c($sp) diff --git a/asm/non_matchings/unknown_032760/func_80037A18.s b/asm/non_matchings/unknown_032760/func_80037A18.s index 6adff54c..e296b239 100644 --- a/asm/non_matchings/unknown_032760/func_80037A18.s +++ b/asm/non_matchings/unknown_032760/func_80037A18.s @@ -178,7 +178,7 @@ glabel func_80037A18 /* 0388A8 80037CA8 11F80004 */ beq $t7, $t8, .L80037CBC /* 0388AC 80037CAC 00000000 */ nop .L80037CB0: -/* 0388B0 80037CB0 0C003FEE */ jal func_8000FFB8 +/* 0388B0 80037CB0 0C003FEE */ jal particlePtrList_addObject /* 0388B4 80037CB4 00A02025 */ move $a0, $a1 /* 0388B8 80037CB8 AE000064 */ sw $zero, 0x64($s0) .L80037CBC: diff --git a/asm/non_matchings/unknown_032760/func_800389B8.s b/asm/non_matchings/unknown_032760/func_800389B8.s index 8df7043f..de3ae2ad 100644 --- a/asm/non_matchings/unknown_032760/func_800389B8.s +++ b/asm/non_matchings/unknown_032760/func_800389B8.s @@ -36,7 +36,7 @@ glabel func_800389B8 /* 03963C 80038A3C E4900010 */ swc1 $f16, 0x10($a0) /* 039640 80038A40 14200006 */ bnez $at, .L80038A5C /* 039644 80038A44 E4880014 */ swc1 $f8, 0x14($a0) -/* 039648 80038A48 0C003FEE */ jal func_8000FFB8 +/* 039648 80038A48 0C003FEE */ jal particlePtrList_addObject /* 03964C 80038A4C AFA40018 */ sw $a0, 0x18($sp) /* 039650 80038A50 8FA40018 */ lw $a0, 0x18($sp) /* 039654 80038A54 240900FF */ li $t1, 255 diff --git a/asm/non_matchings/unknown_032760/func_80038AD4.s b/asm/non_matchings/unknown_032760/func_80038AD4.s index cb02f03f..33b14047 100644 --- a/asm/non_matchings/unknown_032760/func_80038AD4.s +++ b/asm/non_matchings/unknown_032760/func_80038AD4.s @@ -31,7 +31,7 @@ glabel func_80038AD4 /* 039744 80038B44 29010100 */ slti $at, $t0, 0x100 /* 039748 80038B48 14200006 */ bnez $at, .L80038B64 /* 03974C 80038B4C E4900010 */ swc1 $f16, 0x10($a0) -/* 039750 80038B50 0C003FEE */ jal func_8000FFB8 +/* 039750 80038B50 0C003FEE */ jal particlePtrList_addObject /* 039754 80038B54 AFA40018 */ sw $a0, 0x18($sp) /* 039758 80038B58 8FA40018 */ lw $a0, 0x18($sp) /* 03975C 80038B5C 240900FF */ li $t1, 255 diff --git a/asm/non_matchings/unknown_032760/func_80038BF4.s b/asm/non_matchings/unknown_032760/func_80038BF4.s index 79e25306..2368f037 100644 --- a/asm/non_matchings/unknown_032760/func_80038BF4.s +++ b/asm/non_matchings/unknown_032760/func_80038BF4.s @@ -73,7 +73,7 @@ glabel func_80038BF4 /* 039908 80038D08 10000003 */ b .L80038D18 /* 03990C 80038D0C E6100008 */ swc1 $f16, 8($s0) .L80038D10: -/* 039910 80038D10 0C003FEE */ jal func_8000FFB8 +/* 039910 80038D10 0C003FEE */ jal particlePtrList_addObject /* 039914 80038D14 02002025 */ move $a0, $s0 .L80038D18: /* 039918 80038D18 8E190074 */ lw $t9, 0x74($s0) diff --git a/asm/non_matchings/unknown_032760/func_8003B4BC.s b/asm/non_matchings/unknown_032760/func_8003B4BC.s index 43b1ca62..52767314 100644 --- a/asm/non_matchings/unknown_032760/func_8003B4BC.s +++ b/asm/non_matchings/unknown_032760/func_8003B4BC.s @@ -55,7 +55,7 @@ glabel func_8003B4BC /* 03C188 8003B588 1000008B */ b .L8003B7B8 /* 03C18C 8003B58C AE2B007C */ sw $t3, 0x7c($s1) .L8003B590: -/* 03C190 8003B590 0C003FEE */ jal func_8000FFB8 +/* 03C190 8003B590 0C003FEE */ jal particlePtrList_addObject /* 03C194 8003B594 02202025 */ move $a0, $s1 /* 03C198 8003B598 10000088 */ b .L8003B7BC /* 03C19C 8003B59C 8FBF0024 */ lw $ra, 0x24($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003D2B8.s b/asm/non_matchings/unknown_032760/func_8003D2B8.s index 67a404ab..539890a0 100644 --- a/asm/non_matchings/unknown_032760/func_8003D2B8.s +++ b/asm/non_matchings/unknown_032760/func_8003D2B8.s @@ -59,7 +59,7 @@ glabel func_8003D2B8 /* 03DF98 8003D398 00000000 */ nop /* 03DF9C 8003D39C A04D01D8 */ sb $t5, 0x1d8($v0) .L8003D3A0: -/* 03DFA0 8003D3A0 0C003FEE */ jal func_8000FFB8 +/* 03DFA0 8003D3A0 0C003FEE */ jal particlePtrList_addObject /* 03DFA4 8003D3A4 AFA20020 */ sw $v0, 0x20($sp) /* 03DFA8 8003D3A8 8FA20020 */ lw $v0, 0x20($sp) /* 03DFAC 8003D3AC 2401FFFF */ li $at, -1 diff --git a/asm/non_matchings/unknown_032760/func_8003D5A0.s b/asm/non_matchings/unknown_032760/func_8003D5A0.s index 523369e1..c89376bd 100644 --- a/asm/non_matchings/unknown_032760/func_8003D5A0.s +++ b/asm/non_matchings/unknown_032760/func_8003D5A0.s @@ -47,7 +47,7 @@ glabel func_8003D5A0 /* 03E250 8003D650 00000000 */ nop /* 03E254 8003D654 1D80014F */ bgtz $t4, .L8003DB94 /* 03E258 8003D658 8FBF0024 */ lw $ra, 0x24($sp) -/* 03E25C 8003D65C 0C003FEE */ jal func_8000FFB8 +/* 03E25C 8003D65C 0C003FEE */ jal particlePtrList_addObject /* 03E260 8003D660 02002025 */ move $a0, $s0 /* 03E264 8003D664 1000014B */ b .L8003DB94 /* 03E268 8003D668 8FBF0024 */ lw $ra, 0x24($sp) @@ -387,7 +387,7 @@ glabel func_8003D5A0 /* 03E75C 8003DB5C 28410002 */ slti $at, $v0, 2 /* 03E760 8003DB60 14200005 */ bnez $at, .L8003DB78 /* 03E764 8003DB64 2418FFFF */ li $t8, -1 -/* 03E768 8003DB68 0C003FEE */ jal func_8000FFB8 +/* 03E768 8003DB68 0C003FEE */ jal particlePtrList_addObject /* 03E76C 8003DB6C 02002025 */ move $a0, $s0 /* 03E770 8003DB70 10000008 */ b .L8003DB94 /* 03E774 8003DB74 8FBF0024 */ lw $ra, 0x24($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003DBA0.s b/asm/non_matchings/unknown_032760/func_8003DBA0.s index 1f615ab2..03245723 100644 --- a/asm/non_matchings/unknown_032760/func_8003DBA0.s +++ b/asm/non_matchings/unknown_032760/func_8003DBA0.s @@ -42,7 +42,7 @@ glabel func_8003DBA0 /* 03E838 8003DC38 848D0006 */ lh $t5, 6($a0) /* 03E83C 8003DC3C 00000000 */ nop /* 03E840 8003DC40 35AE0600 */ ori $t6, $t5, 0x600 -/* 03E844 8003DC44 0C003FEE */ jal func_8000FFB8 +/* 03E844 8003DC44 0C003FEE */ jal particlePtrList_addObject /* 03E848 8003DC48 A48E0006 */ sh $t6, 6($a0) /* 03E84C 8003DC4C 8FBF0014 */ lw $ra, 0x14($sp) .L8003DC50: diff --git a/asm/non_matchings/unknown_032760/func_8003DC5C.s b/asm/non_matchings/unknown_032760/func_8003DC5C.s index adddaa87..5fa591c1 100644 --- a/asm/non_matchings/unknown_032760/func_8003DC5C.s +++ b/asm/non_matchings/unknown_032760/func_8003DC5C.s @@ -41,7 +41,7 @@ glabel func_8003DC5C /* 03E8F0 8003DCF0 848C0006 */ lh $t4, 6($a0) /* 03E8F4 8003DCF4 00000000 */ nop /* 03E8F8 8003DCF8 358D0600 */ ori $t5, $t4, 0x600 -/* 03E8FC 8003DCFC 0C003FEE */ jal func_8000FFB8 +/* 03E8FC 8003DCFC 0C003FEE */ jal particlePtrList_addObject /* 03E900 8003DD00 A48D0006 */ sh $t5, 6($a0) /* 03E904 8003DD04 8FBF0014 */ lw $ra, 0x14($sp) .L8003DD08: diff --git a/asm/non_matchings/unknown_032760/func_8003DE74.s b/asm/non_matchings/unknown_032760/func_8003DE74.s index f5babfa7..a1c21eb4 100644 --- a/asm/non_matchings/unknown_032760/func_8003DE74.s +++ b/asm/non_matchings/unknown_032760/func_8003DE74.s @@ -31,7 +31,7 @@ glabel func_8003DE74 /* 03EAE8 8003DEE8 13200004 */ beqz $t9, .L8003DEFC /* 03EAEC 8003DEEC 8FBF0014 */ lw $ra, 0x14($sp) .L8003DEF0: -/* 03EAF0 8003DEF0 0C003FEE */ jal func_8000FFB8 +/* 03EAF0 8003DEF0 0C003FEE */ jal particlePtrList_addObject /* 03EAF4 8003DEF4 00000000 */ nop /* 03EAF8 8003DEF8 8FBF0014 */ lw $ra, 0x14($sp) .L8003DEFC: diff --git a/asm/non_matchings/unknown_032760/func_8003DF08.s b/asm/non_matchings/unknown_032760/func_8003DF08.s index 6a5d766c..3dc46079 100644 --- a/asm/non_matchings/unknown_032760/func_8003DF08.s +++ b/asm/non_matchings/unknown_032760/func_8003DF08.s @@ -35,7 +35,7 @@ glabel func_8003DF08 /* 03EB8C 8003DF8C 240A0001 */ li $t2, 1 /* 03EB90 8003DF90 012A5804 */ sllv $t3, $t2, $t1 /* 03EB94 8003DF94 010B6025 */ or $t4, $t0, $t3 -/* 03EB98 8003DF98 0C003FEE */ jal func_8000FFB8 +/* 03EB98 8003DF98 0C003FEE */ jal particlePtrList_addObject /* 03EB9C 8003DF9C A44C0008 */ sh $t4, 8($v0) /* 03EBA0 8003DFA0 8FA60018 */ lw $a2, 0x18($sp) /* 03EBA4 8003DFA4 00000000 */ nop diff --git a/asm/non_matchings/unknown_032760/func_8003DFCC.s b/asm/non_matchings/unknown_032760/func_8003DFCC.s index ec958611..ac739e76 100644 --- a/asm/non_matchings/unknown_032760/func_8003DFCC.s +++ b/asm/non_matchings/unknown_032760/func_8003DFCC.s @@ -94,7 +94,7 @@ glabel func_8003DFCC /* 03ED1C 8003E11C 30480800 */ andi $t0, $v0, 0x800 /* 03ED20 8003E120 11000004 */ beqz $t0, .L8003E134 /* 03ED24 8003E124 8FBF0014 */ lw $ra, 0x14($sp) -/* 03ED28 8003E128 0C003FEE */ jal func_8000FFB8 +/* 03ED28 8003E128 0C003FEE */ jal particlePtrList_addObject /* 03ED2C 8003E12C 00000000 */ nop /* 03ED30 8003E130 8FBF0014 */ lw $ra, 0x14($sp) .L8003E134: diff --git a/asm/non_matchings/unknown_032760/func_8003E694.s b/asm/non_matchings/unknown_032760/func_8003E694.s index 181b488d..91817585 100644 --- a/asm/non_matchings/unknown_032760/func_8003E694.s +++ b/asm/non_matchings/unknown_032760/func_8003E694.s @@ -294,7 +294,7 @@ glabel func_8003E694 /* 03F6E8 8003EAE8 2407002C */ li $a3, 44 /* 03F6EC 8003EAEC 0C00FF11 */ jal func_8003FC44 /* 03F6F0 8003EAF0 E7AA0014 */ swc1 $f10, 0x14($sp) -/* 03F6F4 8003EAF4 0C003FEE */ jal func_8000FFB8 +/* 03F6F4 8003EAF4 0C003FEE */ jal particlePtrList_addObject /* 03F6F8 8003EAF8 02002025 */ move $a0, $s0 /* 03F6FC 8003EAFC 10000041 */ b .L8003EC04 /* 03F700 8003EB00 8FBF002C */ lw $ra, 0x2c($sp) @@ -363,7 +363,7 @@ glabel func_8003E694 /* 03F7EC 8003EBEC AFA80010 */ sw $t0, 0x10($sp) /* 03F7F0 8003EBF0 0C00FF11 */ jal func_8003FC44 /* 03F7F4 8003EBF4 E7B00014 */ swc1 $f16, 0x14($sp) -/* 03F7F8 8003EBF8 0C003FEE */ jal func_8000FFB8 +/* 03F7F8 8003EBF8 0C003FEE */ jal particlePtrList_addObject /* 03F7FC 8003EBFC 02002025 */ move $a0, $s0 .L8003EC00: /* 03F800 8003EC00 8FBF002C */ lw $ra, 0x2c($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003F2E8.s b/asm/non_matchings/unknown_032760/func_8003F2E8.s index ea56a6df..3b307b61 100644 --- a/asm/non_matchings/unknown_032760/func_8003F2E8.s +++ b/asm/non_matchings/unknown_032760/func_8003F2E8.s @@ -193,7 +193,7 @@ glabel func_8003F2E8 /* 0401CC 8003F5CC 1D800007 */ bgtz $t4, .L8003F5EC /* 0401D0 8003F5D0 8FAE0064 */ lw $t6, 0x64($sp) /* 0401D4 8003F5D4 A50D0006 */ sh $t5, 6($t0) -/* 0401D8 8003F5D8 0C003FEE */ jal func_8000FFB8 +/* 0401D8 8003F5D8 0C003FEE */ jal particlePtrList_addObject /* 0401DC 8003F5DC AFA80038 */ sw $t0, 0x38($sp) /* 0401E0 8003F5E0 8FA80038 */ lw $t0, 0x38($sp) /* 0401E4 8003F5E4 00000000 */ nop @@ -339,7 +339,7 @@ glabel func_8003F2E8 /* 0403EC 8003F7EC 1DA00006 */ bgtz $t5, .L8003F808 /* 0403F0 8003F7F0 00000000 */ nop /* 0403F4 8003F7F4 A50F0006 */ sh $t7, 6($t0) -/* 0403F8 8003F7F8 0C003FEE */ jal func_8000FFB8 +/* 0403F8 8003F7F8 0C003FEE */ jal particlePtrList_addObject /* 0403FC 8003F7FC AFA80038 */ sw $t0, 0x38($sp) /* 040400 8003F800 8FA80038 */ lw $t0, 0x38($sp) /* 040404 8003F804 00000000 */ nop @@ -571,7 +571,7 @@ glabel func_8003F2E8 /* 04074C 8003FB4C 2401000A */ li $at, 10 /* 040750 8003FB50 10410005 */ beq $v0, $at, .L8003FB68 /* 040754 8003FB54 00000000 */ nop -/* 040758 8003FB58 0C003FEE */ jal func_8000FFB8 +/* 040758 8003FB58 0C003FEE */ jal particlePtrList_addObject /* 04075C 8003FB5C 02002025 */ move $a0, $s0 /* 040760 8003FB60 10000035 */ b .L8003FC38 /* 040764 8003FB64 8FBF002C */ lw $ra, 0x2c($sp) @@ -627,7 +627,7 @@ glabel func_8003F2E8 /* 040820 8003FC20 AFB80010 */ sw $t8, 0x10($sp) /* 040824 8003FC24 0C00FF11 */ jal func_8003FC44 /* 040828 8003FC28 E7A60014 */ swc1 $f6, 0x14($sp) -/* 04082C 8003FC2C 0C003FEE */ jal func_8000FFB8 +/* 04082C 8003FC2C 0C003FEE */ jal particlePtrList_addObject /* 040830 8003FC30 02002025 */ move $a0, $s0 .L8003FC34: /* 040834 8003FC34 8FBF002C */ lw $ra, 0x2c($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003FD68.s b/asm/non_matchings/unknown_032760/func_8003FD68.s index d01a539b..eee36cf9 100644 --- a/asm/non_matchings/unknown_032760/func_8003FD68.s +++ b/asm/non_matchings/unknown_032760/func_8003FD68.s @@ -94,7 +94,7 @@ glabel func_8003FD68 /* 040AD4 8003FED4 AFAC0028 */ sw $t4, 0x28($sp) /* 040AD8 8003FED8 8FA40048 */ lw $a0, 0x48($sp) .L8003FEDC: -/* 040ADC 8003FEDC 0C003FEE */ jal func_8000FFB8 +/* 040ADC 8003FEDC 0C003FEE */ jal particlePtrList_addObject /* 040AE0 8003FEE0 00000000 */ nop /* 040AE4 8003FEE4 8FBF003C */ lw $ra, 0x3c($sp) /* 040AE8 8003FEE8 8FB00038 */ lw $s0, 0x38($sp) diff --git a/asm/non_matchings/unknown_032760/func_8003FEF4.s b/asm/non_matchings/unknown_032760/func_8003FEF4.s index cdbfe645..d3bfbe82 100644 --- a/asm/non_matchings/unknown_032760/func_8003FEF4.s +++ b/asm/non_matchings/unknown_032760/func_8003FEF4.s @@ -67,7 +67,7 @@ glabel func_8003FEF4 /* 040BF8 8003FFF8 0C002629 */ jal func_800098A4 /* 040BFC 8003FFFC AFAF0030 */ sw $t7, 0x30($sp) /* 040C00 80040000 8FA40048 */ lw $a0, 0x48($sp) -/* 040C04 80040004 0C003FEE */ jal func_8000FFB8 +/* 040C04 80040004 0C003FEE */ jal particlePtrList_addObject /* 040C08 80040008 00000000 */ nop /* 040C0C 8004000C 8FBF0044 */ lw $ra, 0x44($sp) /* 040C10 80040010 8FB00040 */ lw $s0, 0x40($sp) diff --git a/asm/non_matchings/unknown_032760/func_8004001C.s b/asm/non_matchings/unknown_032760/func_8004001C.s index 73b3a337..f28fed8f 100644 --- a/asm/non_matchings/unknown_032760/func_8004001C.s +++ b/asm/non_matchings/unknown_032760/func_8004001C.s @@ -27,7 +27,7 @@ glabel func_8004001C /* 040C80 80040080 0C00265A */ jal func_80009968 /* 040C84 80040084 46802320 */ cvt.s.w $f12, $f4 /* 040C88 80040088 8FA40020 */ lw $a0, 0x20($sp) -/* 040C8C 8004008C 0C003FEE */ jal func_8000FFB8 +/* 040C8C 8004008C 0C003FEE */ jal particlePtrList_addObject /* 040C90 80040090 00000000 */ nop /* 040C94 80040094 8FBF001C */ lw $ra, 0x1c($sp) /* 040C98 80040098 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/asm/non_matchings/unknown_032760/func_80042210.s b/asm/non_matchings/unknown_032760/func_80042210.s index d33c8ca8..3ac262b7 100644 --- a/asm/non_matchings/unknown_032760/func_80042210.s +++ b/asm/non_matchings/unknown_032760/func_80042210.s @@ -47,7 +47,7 @@ glabel func_80042210 /* 042EC4 800422C4 11210007 */ beq $t1, $at, .L800422E4 /* 042EC8 800422C8 8FBF0014 */ lw $ra, 0x14($sp) .L800422CC: -/* 042ECC 800422CC 0C003FEE */ jal func_8000FFB8 +/* 042ECC 800422CC 0C003FEE */ jal particlePtrList_addObject /* 042ED0 800422D0 00000000 */ nop /* 042ED4 800422D4 10000003 */ b .L800422E4 /* 042ED8 800422D8 8FBF0014 */ lw $ra, 0x14($sp) diff --git a/asm/non_matchings/unknown_032760/func_800422F0.s b/asm/non_matchings/unknown_032760/func_800422F0.s index 3c4d8b9f..1e46259c 100644 --- a/asm/non_matchings/unknown_032760/func_800422F0.s +++ b/asm/non_matchings/unknown_032760/func_800422F0.s @@ -96,7 +96,7 @@ glabel func_800422F0 /* 043060 80042460 24040002 */ li $a0, 2 /* 043064 80042464 0C01B629 */ jal func_8006D8A4 /* 043068 80042468 00000000 */ nop -/* 04306C 8004246C 0C003FEE */ jal func_8000FFB8 +/* 04306C 8004246C 0C003FEE */ jal particlePtrList_addObject /* 043070 80042470 02202025 */ move $a0, $s1 /* 043074 80042474 10000140 */ b .L80042978 /* 043078 80042478 8FBF0034 */ lw $ra, 0x34($sp) @@ -366,7 +366,7 @@ glabel func_800422F0 /* 043454 80042854 24040002 */ li $a0, 2 /* 043458 80042858 0C01B629 */ jal func_8006D8A4 /* 04345C 8004285C 00000000 */ nop -/* 043460 80042860 0C003FEE */ jal func_8000FFB8 +/* 043460 80042860 0C003FEE */ jal particlePtrList_addObject /* 043464 80042864 02202025 */ move $a0, $s1 /* 043468 80042868 10000043 */ b .L80042978 /* 04346C 8004286C 8FBF0034 */ lw $ra, 0x34($sp) diff --git a/asm/non_matchings/unknown_09F8F0/func_800A003C.s b/asm/non_matchings/unknown_09F8F0/func_800A003C.s index 50396373..c0b3cdc0 100644 --- a/asm/non_matchings/unknown_09F8F0/func_800A003C.s +++ b/asm/non_matchings/unknown_09F8F0/func_800A003C.s @@ -46,7 +46,7 @@ glabel func_800A003C .L800A00E4: /* 0A0CE4 800A00E4 11600005 */ beqz $t3, .L800A00FC /* 0A0CE8 800A00E8 00000000 */ nop -/* 0A0CEC 800A00EC 0C003FEE */ jal func_8000FFB8 +/* 0A0CEC 800A00EC 0C003FEE */ jal particlePtrList_addObject /* 0A0CF0 800A00F0 00000000 */ nop /* 0A0CF4 800A00F4 10000004 */ b .L800A0108 /* 0A0CF8 800A00F8 8E4C0000 */ lw $t4, ($s2) diff --git a/asm/non_matchings/unknown_09F8F0/func_800A8474.s b/asm/non_matchings/unknown_09F8F0/func_800A8474.s index 37fdb53b..591c69a8 100644 --- a/asm/non_matchings/unknown_09F8F0/func_800A8474.s +++ b/asm/non_matchings/unknown_09F8F0/func_800A8474.s @@ -133,7 +133,7 @@ glabel func_800A8474 /* 0A9268 800A8668 00000000 */ nop /* 0A926C 800A866C 01B17021 */ addu $t6, $t5, $s1 /* 0A9270 800A8670 8DC40000 */ lw $a0, ($t6) -/* 0A9274 800A8674 0C003FEE */ jal func_8000FFB8 +/* 0A9274 800A8674 0C003FEE */ jal particlePtrList_addObject /* 0A9278 800A8678 AFA30144 */ sw $v1, 0x144($sp) /* 0A927C 800A867C 8FA30144 */ lw $v1, 0x144($sp) /* 0A9280 800A8680 10000009 */ b .L800A86A8 diff --git a/asm/non_matchings/unknown_0AEE70/func_800B22FC.s b/asm/non_matchings/unknown_0AEE70/func_800B22FC.s index e0e71cd0..b8ec0e76 100644 --- a/asm/non_matchings/unknown_0AEE70/func_800B22FC.s +++ b/asm/non_matchings/unknown_0AEE70/func_800B22FC.s @@ -167,7 +167,7 @@ glabel func_800B22FC /* 0B3158 800B2558 00000000 */ nop /* 0B315C 800B255C 1D400005 */ bgtz $t2, .L800B2574 /* 0B3160 800B2560 00000000 */ nop -/* 0B3164 800B2564 0C003FEE */ jal func_8000FFB8 +/* 0B3164 800B2564 0C003FEE */ jal particlePtrList_addObject /* 0B3168 800B2568 02002025 */ move $a0, $s0 /* 0B316C 800B256C 10000030 */ b .L800B2630 /* 0B3170 800B2570 8FBF001C */ lw $ra, 0x1c($sp) diff --git a/asm/non_matchings/unknown_0AEE70/func_800B26E0.s b/asm/non_matchings/unknown_0AEE70/func_800B26E0.s index 907405a1..d579b90c 100644 --- a/asm/non_matchings/unknown_0AEE70/func_800B26E0.s +++ b/asm/non_matchings/unknown_0AEE70/func_800B26E0.s @@ -509,7 +509,7 @@ glabel func_800B26E0 /* 0B3A88 800B2E88 1DE00009 */ bgtz $t7, .L800B2EB0 /* 0B3A8C 800B2E8C 00000000 */ nop /* 0B3A90 800B2E90 AFA30038 */ sw $v1, 0x38($sp) -/* 0B3A94 800B2E94 0C003FEE */ jal func_8000FFB8 +/* 0B3A94 800B2E94 0C003FEE */ jal particlePtrList_addObject /* 0B3A98 800B2E98 AFA60050 */ sw $a2, 0x50($sp) /* 0B3A9C 800B2E9C 8FA30038 */ lw $v1, 0x38($sp) /* 0B3AA0 800B2EA0 3C058012 */ lui $a1, %hi(D_80127C80) # $a1, 0x8012 diff --git a/include/structs.h b/include/structs.h index 989b2d8d..c684ef3b 100644 --- a/include/structs.h +++ b/include/structs.h @@ -292,6 +292,10 @@ typedef struct Player_64 { s8 unk1D7; } Player_64; +typedef struct Player_68{ + u8 pad00[0x20]; + s8 unk20; + } Player_68; /* Size: 0x0630 bytes */ typedef struct Player { /* 0x0000 */ s16 y_rotation; @@ -333,7 +337,7 @@ typedef struct Player { /* 0x0060 */ void *unk60; //player + 0x340 /* 0x0064 */ Player_64 *unk64; //player + 0x98 - /* 0x0068 */ void *unk68; //player + 0x80 + /* 0x0068 */ Player_68 **unk68; //player + 0x80 /* 0x006C */ void *unk6C; //player + 0x370 /* 0x0070 */ u32 unk70; diff --git a/src/unknown_00BC20.c b/src/unknown_00BC20.c index ae23e3fd..fbf5bedb 100644 --- a/src/unknown_00BC20.c +++ b/src/unknown_00BC20.c @@ -36,15 +36,8 @@ extern s32 D_8011AD34; extern s8 D_8011AD3C; extern s8 D_8011AD3D; -typedef struct unk8011AD40 { - s16 unk0; - s8 pad2[0xA]; - f32 unkC; - f32 unk10; - f32 unk14; -} unk8011AD40; -extern unk8011AD40 *D_8011AD40; +extern Player *D_8011AD40; extern s8 D_8011AD44; extern s8 D_8011AD45; extern s16 D_8011AD46; @@ -161,7 +154,7 @@ void func_8000C460(void); void *func_80070B78(s32, u32); void *func_80070C9C(s32, u32); s32 *func_80076C58(s32); -void func_8000FFB8(Player *); +void particlePtrList_addObject(Player *); void particlePtrList_flush(void); void func_8001D258(f32, f32, s32, s32, s32); @@ -169,7 +162,44 @@ extern void func_800245B4(s16); GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B020.s") + +#if 1 GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B290.s") +#else + +extern s32 D_800DC754; +extern Player* D_800DC75C; +extern Player* D_800DC764; + +s32 *func_8001E29C(s32 arg0); + +void func_8000B290(){ + + if(D_800DC754){ + func_80071140(); + } + func_8001E29C(20); + /*{ + if(D_800DC754->unk7a) + func_8007CCB0(); + D_800DC754->unk7a = 0; + + if(D_800DC754->unk7C) + func_8007B2BC(); + D_800DC754->unk7C = 0; + }*/ + if(D_800DC75C) + particlePtrList_addObject(D_800DC75C); + D_800DC75C = NULL; + + if(D_800DC764) + particlePtrList_addObject(D_800DC764); + D_800DC764 = NULL; + + particlePtrList_flush(); +} +#endif + GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B38C.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000B750.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000BADC.s") @@ -402,6 +432,7 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000CC7C.s") // Has a jump table GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E0B0.s") + void func_8000E128(void) { D_800DC708 = 0x8000; } @@ -445,15 +476,15 @@ s8 func_8000E1DC() { return D_8011AE03; } -void func_8000E1EC(unk8011AD40 *arg0, s32 arg1) { +void func_8000E1EC(Player *arg0, s32 arg1) { D_8011AD40 = arg0; D_8011AD44 = 4; D_8011AD45 = arg1; - D_8011AD46 = arg0->unkC; - D_8011AD48 = arg0->unk10; - D_8011AD4A = arg0->unk14; - D_8011AD4C = arg0->unk0; - func_8000FFB8(arg0); + D_8011AD46 = arg0->x_position; + D_8011AD48 = arg0->y_position; + D_8011AD4A = arg0->z_position; + D_8011AD4C = arg0->y_rotation; + particlePtrList_addObject(arg0); playerCount = 0; } @@ -467,7 +498,16 @@ u8 func_8000E4C8() { return D_8011AEF4; } -GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E4D8.s") +u8 func_8000E4D8(void){ + return D_8011AEF5; +} + +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E4E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E558.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E5EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E79C.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000E898.s") + Player *getObject(s32 indx) { if (indx < 0 || indx >= objCount) { @@ -542,7 +582,7 @@ s32 func_8000FD34(unk8000FD34 *arg0, s32 arg1) { GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8000FD54.s") -void func_8000FFB8(Player* arg0){ +void particlePtrList_addObject(Player* arg0){ func_800245B4(arg0->unk4A | 0x8000); particlePtrList[particleCount] = arg0; particleCount++; @@ -918,7 +958,28 @@ GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_800138A8.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80013A0C.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80013DCC.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80014090.s") -GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_800142B8.s") + +void func_800142B8(void){ + s32 i = D_8011AE60; + s32 j; + Player* currObj; + Player_68 *curr_68; + for(; i < objCount; i++){ + currObj = objPtrList[i]; + if( (currObj->unk6 & 0x8000) == 0 + && currObj->descriptor_ptr->unk53 == 0 + ){ + for(j=0; jdescriptor_ptr->unk55; j++){ + curr_68 = currObj->unk68[j]; + if( curr_68 != NULL && curr_68->unk20 > 0){ + curr_68->unk20 = curr_68->unk20-- & 0x03; + } + } + } + } + +} + GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_800143A8.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80014814.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_80014B50.s") @@ -1046,6 +1107,7 @@ void func_8001B790(void) { GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001B7A8.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001B834.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001B974.s") // Returns a pointer to some struct that is 0x3C bytes long. unknown8011AECC *func_8001BA00(s32 arg0) { @@ -1090,6 +1152,7 @@ Player *getPlayerStruct(s32 indx) { } GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001BB18.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001BB68.s") void func_8001BC40(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { @@ -1097,6 +1160,7 @@ void func_8001BC40(s32 arg0, s32 arg1, s32 arg2, s32 arg3) { GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001BC54.s") + u32 func_8001BD94(s32 arg0) { if (arg0 < 0 || arg0 >= D_8011AEE0) { return 0; @@ -1141,11 +1205,13 @@ void func_8001D23C(s32 arg0, s32 arg1, s32 arg2) { } GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D258.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D2A0.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D4B4.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D5E0.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D6E4.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001D80C.s") GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001DD54.s") +GLOBAL_ASM("asm/non_matchings/unknown_00BC20/func_8001E13C.s") s32 *func_8001E29C(s32 arg0) { if (arg0 < 0 || arg0 >= D_8011ADA0) { diff --git a/src/unknown_032760.c b/src/unknown_032760.c index 22b107b2..edac00c9 100644 --- a/src/unknown_032760.c +++ b/src/unknown_032760.c @@ -362,7 +362,7 @@ typedef struct unk80038A78 { void func_80038A78(unk80038A78 *arg0, s32 arg1) { arg0->unk18 += arg1 * 8; if (arg0->unk18 >= 0x100) { - func_8000FFB8(); + particlePtrList_addObject(); arg0->unk18 = 0xFF; } } @@ -631,7 +631,7 @@ void func_8003D534(Player *arg0, s32 arg1) { arg0->unk7C.half.upper = 0x14; arg0->unk7C.half.lower = 0x10; if (func_8009C30C() & 0x1000) { - func_8000FFB8(arg0); + particlePtrList_addObject(arg0); } } @@ -834,7 +834,7 @@ void func_80042A1C(unk80042A1C *arg0, s8 *arg1) { arg0->unk7C = arg1[8]; arg0->unk7E = 0; if (is_in_tracks_mode()) { - func_8000FFB8(arg0); + particlePtrList_addObject(arg0); } func_800C56D0(4); } diff --git a/src/unknown_080500.c b/src/unknown_080500.c index bbc76fa4..dfd6eeb6 100644 --- a/src/unknown_080500.c +++ b/src/unknown_080500.c @@ -2890,7 +2890,7 @@ void func_8009C4A8(s16 *arg0) { void func_8007B2BC(u32 arg0); void func_8007CCB0(u32 arg0); -void func_8000FFB8(u32 arg0); +void particlePtrList_addObject(u32 arg0); void func_8005FF40(u32 arg0); void func_8009C508(s32 arg0) { @@ -2905,7 +2905,7 @@ void func_8009C508(s32 arg0) { func_8007CCB0((u32)D_80126550[arg0]); } else { if ((*D_800DF750)[arg0] & 0x4000) { - func_8000FFB8((u32)D_80126550[arg0]); + particlePtrList_addObject((u32)D_80126550[arg0]); } else { func_8005FF40((u32)D_80126550[arg0]); }