diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Destroy.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Destroy.s deleted file mode 100644 index e7c3cf64ee..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Destroy.s +++ /dev/null @@ -1,21 +0,0 @@ -glabel EnBomChu_Destroy -/* 0019C 809C59CC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 001A0 809C59D0 AFA40018 */ sw $a0, 0x0018($sp) -/* 001A4 809C59D4 8FAE0018 */ lw $t6, 0x0018($sp) -/* 001A8 809C59D8 AFBF0014 */ sw $ra, 0x0014($sp) -/* 001AC 809C59DC AFA5001C */ sw $a1, 0x001C($sp) -/* 001B0 809C59E0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 001B4 809C59E4 0C009C27 */ jal Effect_Delete -/* 001B8 809C59E8 8DC5017C */ lw $a1, 0x017C($t6) ## 0000017C -/* 001BC 809C59EC 8FAF0018 */ lw $t7, 0x0018($sp) -/* 001C0 809C59F0 8FA4001C */ lw $a0, 0x001C($sp) -/* 001C4 809C59F4 0C009C27 */ jal Effect_Delete -/* 001C8 809C59F8 8DE50180 */ lw $a1, 0x0180($t7) ## 00000180 -/* 001CC 809C59FC 8FA50018 */ lw $a1, 0x0018($sp) -/* 001D0 809C5A00 8FA4001C */ lw $a0, 0x001C($sp) -/* 001D4 809C5A04 0C016F32 */ jal Collider_DestroyJntSph -/* 001D8 809C5A08 24A50184 */ addiu $a1, $a1, 0x0184 ## $a1 = 00000184 -/* 001DC 809C5A0C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 001E0 809C5A10 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 001E4 809C5A14 03E00008 */ jr $ra -/* 001E8 809C5A18 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Draw.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Draw.s deleted file mode 100644 index 6705a2cf23..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Draw.s +++ /dev/null @@ -1,251 +0,0 @@ -.rdata -glabel D_809C6DA0 - .asciz "../z_en_bom_chu.c" - .balign 4 - -glabel D_809C6DB4 - .asciz "../z_en_bom_chu.c" - .balign 4 - -glabel D_809C6DC8 - .asciz "../z_en_bom_chu.c" - .balign 4 - -.text -glabel EnBomChu_Draw -/* 01164 809C6994 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 01168 809C6998 AFBF001C */ sw $ra, 0x001C($sp) -/* 0116C 809C699C AFB10018 */ sw $s1, 0x0018($sp) -/* 01170 809C69A0 AFB00014 */ sw $s0, 0x0014($sp) -/* 01174 809C69A4 AFA5005C */ sw $a1, 0x005C($sp) -/* 01178 809C69A8 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 0117C 809C69AC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 01180 809C69B0 3C06809C */ lui $a2, %hi(D_809C6DA0) ## $a2 = 809C0000 -/* 01184 809C69B4 24C66DA0 */ addiu $a2, $a2, %lo(D_809C6DA0) ## $a2 = 809C6DA0 -/* 01188 809C69B8 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFD8 -/* 0118C 809C69BC 24070399 */ addiu $a3, $zero, 0x0399 ## $a3 = 00000399 -/* 01190 809C69C0 0C031AB1 */ jal Graph_OpenDisps -/* 01194 809C69C4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 01198 809C69C8 8FAF005C */ lw $t7, 0x005C($sp) -/* 0119C 809C69CC 0C024F46 */ jal func_80093D18 -/* 011A0 809C69D0 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000 -/* 011A4 809C69D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 011A8 809C69D8 8FA5005C */ lw $a1, 0x005C($sp) -/* 011AC 809C69DC 0C00BAF3 */ jal func_8002EBCC -/* 011B0 809C69E0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000 -/* 011B4 809C69E4 86020150 */ lh $v0, 0x0150($s0) ## 00000150 -/* 011B8 809C69E8 28410028 */ slti $at, $v0, 0x0028 -/* 011BC 809C69EC 14200006 */ bne $at, $zero, .L809C6A08 -/* 011C0 809C69F0 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014 -/* 011C4 809C69F4 0041001A */ div $zero, $v0, $at -/* 011C8 809C69F8 00002010 */ mfhi $a0 -/* 011CC 809C69FC 2405000A */ addiu $a1, $zero, 0x000A ## $a1 = 0000000A -/* 011D0 809C6A00 1000000C */ beq $zero, $zero, .L809C6A34 -/* 011D4 809C6A04 44854000 */ mtc1 $a1, $f8 ## $f8 = 0.00 -.L809C6A08: -/* 011D8 809C6A08 2841000A */ slti $at, $v0, 0x000A -/* 011DC 809C6A0C 14200007 */ bne $at, $zero, .L809C6A2C -/* 011E0 809C6A10 30440001 */ andi $a0, $v0, 0x0001 ## $a0 = 00000000 -/* 011E4 809C6A14 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A -/* 011E8 809C6A18 0041001A */ div $zero, $v0, $at -/* 011EC 809C6A1C 00002010 */ mfhi $a0 -/* 011F0 809C6A20 24050005 */ addiu $a1, $zero, 0x0005 ## $a1 = 00000005 -/* 011F4 809C6A24 10000003 */ beq $zero, $zero, .L809C6A34 -/* 011F8 809C6A28 44854000 */ mtc1 $a1, $f8 ## $f8 = 0.00 -.L809C6A2C: -/* 011FC 809C6A2C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 01200 809C6A30 44854000 */ mtc1 $a1, $f8 ## $f8 = 0.00 -.L809C6A34: -/* 01204 809C6A34 00A4082A */ slt $at, $a1, $a0 -/* 01208 809C6A38 10200003 */ beq $at, $zero, .L809C6A48 -/* 0120C 809C6A3C 468042A0 */ cvt.s.w $f10, $f8 -/* 01210 809C6A40 0005C040 */ sll $t8, $a1, 1 -/* 01214 809C6A44 03042023 */ subu $a0, $t8, $a0 -.L809C6A48: -/* 01218 809C6A48 44842000 */ mtc1 $a0, $f4 ## $f4 = 0.00 -/* 0121C 809C6A4C 3C014110 */ lui $at, 0x4110 ## $at = 41100000 -/* 01220 809C6A50 44811000 */ mtc1 $at, $f2 ## $f2 = 9.00 -/* 01224 809C6A54 468021A0 */ cvt.s.w $f6, $f4 -/* 01228 809C6A58 3C014351 */ lui $at, 0x4351 ## $at = 43510000 -/* 0122C 809C6A5C 44818000 */ mtc1 $at, $f16 ## $f16 = 209.00 -/* 01230 809C6A60 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 01234 809C6A64 8E2302C0 */ lw $v1, 0x02C0($s1) ## 000002C0 -/* 01238 809C6A68 3C08FB00 */ lui $t0, 0xFB00 ## $t0 = FB000000 -/* 0123C 809C6A6C 460A3003 */ div.s $f0, $f6, $f10 -/* 01240 809C6A70 24790008 */ addiu $t9, $v1, 0x0008 ## $t9 = 00000008 -/* 01244 809C6A74 AE3902C0 */ sw $t9, 0x02C0($s1) ## 000002C0 -/* 01248 809C6A78 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 0124C 809C6A7C AC680000 */ sw $t0, 0x0000($v1) ## 00000000 -/* 01250 809C6A80 46100482 */ mul.s $f18, $f0, $f16 -/* 01254 809C6A84 46029100 */ add.s $f4, $f18, $f2 -/* 01258 809C6A88 4449F800 */ cfc1 $t1, $31 -/* 0125C 809C6A8C 44CAF800 */ ctc1 $t2, $31 -/* 01260 809C6A90 00000000 */ nop -/* 01264 809C6A94 46002224 */ cvt.w.s $f8, $f4 -/* 01268 809C6A98 444AF800 */ cfc1 $t2, $31 -/* 0126C 809C6A9C 00000000 */ nop -/* 01270 809C6AA0 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000 -/* 01274 809C6AA4 51400013 */ beql $t2, $zero, .L809C6AF4 -/* 01278 809C6AA8 440A4000 */ mfc1 $t2, $f8 -/* 0127C 809C6AAC 44814000 */ mtc1 $at, $f8 ## $f8 = 2147483648.00 -/* 01280 809C6AB0 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 01284 809C6AB4 46082201 */ sub.s $f8, $f4, $f8 -/* 01288 809C6AB8 44CAF800 */ ctc1 $t2, $31 -/* 0128C 809C6ABC 00000000 */ nop -/* 01290 809C6AC0 46004224 */ cvt.w.s $f8, $f8 -/* 01294 809C6AC4 444AF800 */ cfc1 $t2, $31 -/* 01298 809C6AC8 00000000 */ nop -/* 0129C 809C6ACC 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000 -/* 012A0 809C6AD0 15400005 */ bne $t2, $zero, .L809C6AE8 -/* 012A4 809C6AD4 00000000 */ nop -/* 012A8 809C6AD8 440A4000 */ mfc1 $t2, $f8 -/* 012AC 809C6ADC 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 012B0 809C6AE0 10000007 */ beq $zero, $zero, .L809C6B00 -/* 012B4 809C6AE4 01415025 */ or $t2, $t2, $at ## $t2 = 80000000 -.L809C6AE8: -/* 012B8 809C6AE8 10000005 */ beq $zero, $zero, .L809C6B00 -/* 012BC 809C6AEC 240AFFFF */ addiu $t2, $zero, 0xFFFF ## $t2 = FFFFFFFF -/* 012C0 809C6AF0 440A4000 */ mfc1 $t2, $f8 -.L809C6AF4: -/* 012C4 809C6AF4 00000000 */ nop -/* 012C8 809C6AF8 0540FFFB */ bltz $t2, .L809C6AE8 -/* 012CC 809C6AFC 00000000 */ nop -.L809C6B00: -/* 012D0 809C6B00 3C014208 */ lui $at, 0x4208 ## $at = 42080000 -/* 012D4 809C6B04 44C9F800 */ ctc1 $t1, $31 -/* 012D8 809C6B08 44813000 */ mtc1 $at, $f6 ## $f6 = 34.00 -/* 012DC 809C6B0C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 012E0 809C6B10 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 012E4 809C6B14 46060282 */ mul.s $f10, $f0, $f6 -/* 012E8 809C6B18 000A6600 */ sll $t4, $t2, 24 -/* 012EC 809C6B1C 460A1400 */ add.s $f16, $f2, $f10 -/* 012F0 809C6B20 444DF800 */ cfc1 $t5, $31 -/* 012F4 809C6B24 44CEF800 */ ctc1 $t6, $31 -/* 012F8 809C6B28 00000000 */ nop -/* 012FC 809C6B2C 460084A4 */ cvt.w.s $f18, $f16 -/* 01300 809C6B30 444EF800 */ cfc1 $t6, $31 -/* 01304 809C6B34 00000000 */ nop -/* 01308 809C6B38 31CE0078 */ andi $t6, $t6, 0x0078 ## $t6 = 00000000 -/* 0130C 809C6B3C 51C00013 */ beql $t6, $zero, .L809C6B8C -/* 01310 809C6B40 440E9000 */ mfc1 $t6, $f18 -/* 01314 809C6B44 44819000 */ mtc1 $at, $f18 ## $f18 = 2147483648.00 -/* 01318 809C6B48 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 0131C 809C6B4C 46128481 */ sub.s $f18, $f16, $f18 -/* 01320 809C6B50 44CEF800 */ ctc1 $t6, $31 -/* 01324 809C6B54 00000000 */ nop -/* 01328 809C6B58 460094A4 */ cvt.w.s $f18, $f18 -/* 0132C 809C6B5C 444EF800 */ cfc1 $t6, $31 -/* 01330 809C6B60 00000000 */ nop -/* 01334 809C6B64 31CE0078 */ andi $t6, $t6, 0x0078 ## $t6 = 00000000 -/* 01338 809C6B68 15C00005 */ bne $t6, $zero, .L809C6B80 -/* 0133C 809C6B6C 00000000 */ nop -/* 01340 809C6B70 440E9000 */ mfc1 $t6, $f18 -/* 01344 809C6B74 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 01348 809C6B78 10000007 */ beq $zero, $zero, .L809C6B98 -/* 0134C 809C6B7C 01C17025 */ or $t6, $t6, $at ## $t6 = 80000000 -.L809C6B80: -/* 01350 809C6B80 10000005 */ beq $zero, $zero, .L809C6B98 -/* 01354 809C6B84 240EFFFF */ addiu $t6, $zero, 0xFFFF ## $t6 = FFFFFFFF -/* 01358 809C6B88 440E9000 */ mfc1 $t6, $f18 -.L809C6B8C: -/* 0135C 809C6B8C 00000000 */ nop -/* 01360 809C6B90 05C0FFFB */ bltz $t6, .L809C6B80 -/* 01364 809C6B94 00000000 */ nop -.L809C6B98: -/* 01368 809C6B98 3C01420C */ lui $at, 0x420C ## $at = 420C0000 -/* 0136C 809C6B9C 44812000 */ mtc1 $at, $f4 ## $f4 = 35.00 -/* 01370 809C6BA0 3C01C20C */ lui $at, 0xC20C ## $at = C20C0000 -/* 01374 809C6BA4 44CDF800 */ ctc1 $t5, $31 -/* 01378 809C6BA8 44814000 */ mtc1 $at, $f8 ## $f8 = -35.00 -/* 0137C 809C6BAC 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 01380 809C6BB0 31CF00FF */ andi $t7, $t6, 0x00FF ## $t7 = 000000FF -/* 01384 809C6BB4 46080182 */ mul.s $f6, $f0, $f8 -/* 01388 809C6BB8 000FC400 */ sll $t8, $t7, 16 -/* 0138C 809C6BBC 0198C825 */ or $t9, $t4, $t8 ## $t9 = 00000000 -/* 01390 809C6BC0 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 01394 809C6BC4 46062280 */ add.s $f10, $f4, $f6 -/* 01398 809C6BC8 4448F800 */ cfc1 $t0, $31 -/* 0139C 809C6BCC 44C9F800 */ ctc1 $t1, $31 -/* 013A0 809C6BD0 00000000 */ nop -/* 013A4 809C6BD4 46005424 */ cvt.w.s $f16, $f10 -/* 013A8 809C6BD8 4449F800 */ cfc1 $t1, $31 -/* 013AC 809C6BDC 00000000 */ nop -/* 013B0 809C6BE0 31290078 */ andi $t1, $t1, 0x0078 ## $t1 = 00000000 -/* 013B4 809C6BE4 51200013 */ beql $t1, $zero, .L809C6C34 -/* 013B8 809C6BE8 44098000 */ mfc1 $t1, $f16 -/* 013BC 809C6BEC 44818000 */ mtc1 $at, $f16 ## $f16 = 2147483648.00 -/* 013C0 809C6BF0 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 013C4 809C6BF4 46105401 */ sub.s $f16, $f10, $f16 -/* 013C8 809C6BF8 44C9F800 */ ctc1 $t1, $31 -/* 013CC 809C6BFC 00000000 */ nop -/* 013D0 809C6C00 46008424 */ cvt.w.s $f16, $f16 -/* 013D4 809C6C04 4449F800 */ cfc1 $t1, $31 -/* 013D8 809C6C08 00000000 */ nop -/* 013DC 809C6C0C 31290078 */ andi $t1, $t1, 0x0078 ## $t1 = 00000000 -/* 013E0 809C6C10 15200005 */ bne $t1, $zero, .L809C6C28 -/* 013E4 809C6C14 00000000 */ nop -/* 013E8 809C6C18 44098000 */ mfc1 $t1, $f16 -/* 013EC 809C6C1C 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 013F0 809C6C20 10000007 */ beq $zero, $zero, .L809C6C40 -/* 013F4 809C6C24 01214825 */ or $t1, $t1, $at ## $t1 = 80000000 -.L809C6C28: -/* 013F8 809C6C28 10000005 */ beq $zero, $zero, .L809C6C40 -/* 013FC 809C6C2C 2409FFFF */ addiu $t1, $zero, 0xFFFF ## $t1 = FFFFFFFF -/* 01400 809C6C30 44098000 */ mfc1 $t1, $f16 -.L809C6C34: -/* 01404 809C6C34 00000000 */ nop -/* 01408 809C6C38 0520FFFB */ bltz $t1, .L809C6C28 -/* 0140C 809C6C3C 00000000 */ nop -.L809C6C40: -/* 01410 809C6C40 312A00FF */ andi $t2, $t1, 0x00FF ## $t2 = 000000FF -/* 01414 809C6C44 000A5A00 */ sll $t3, $t2, 8 -/* 01418 809C6C48 032B6825 */ or $t5, $t9, $t3 ## $t5 = 00000000 -/* 0141C 809C6C4C 35AE00FF */ ori $t6, $t5, 0x00FF ## $t6 = 000000FF -/* 01420 809C6C50 AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004 -/* 01424 809C6C54 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 01428 809C6C58 44C8F800 */ ctc1 $t0, $31 -/* 0142C 809C6C5C 44807000 */ mtc1 $zero, $f14 ## $f14 = 0.00 -/* 01430 809C6C60 44814000 */ mtc1 $at, $f8 ## $f8 = 100.00 -/* 01434 809C6C64 C6120178 */ lwc1 $f18, 0x0178($s0) ## 00000178 -/* 01438 809C6C68 44067000 */ mfc1 $a2, $f14 -/* 0143C 809C6C6C 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 01440 809C6C70 46089302 */ mul.s $f12, $f18, $f8 -/* 01444 809C6C74 0C034261 */ jal Matrix_Translate -/* 01448 809C6C78 00000000 */ nop -/* 0144C 809C6C7C 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0 -/* 01450 809C6C80 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000 -/* 01454 809C6C84 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003 -/* 01458 809C6C88 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008 -/* 0145C 809C6C8C AE2F02C0 */ sw $t7, 0x02C0($s1) ## 000002C0 -/* 01460 809C6C90 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000 -/* 01464 809C6C94 8FB8005C */ lw $t8, 0x005C($sp) -/* 01468 809C6C98 3C05809C */ lui $a1, %hi(D_809C6DB4) ## $a1 = 809C0000 -/* 0146C 809C6C9C 24A56DB4 */ addiu $a1, $a1, %lo(D_809C6DB4) ## $a1 = 809C6DB4 -/* 01470 809C6CA0 240603BC */ addiu $a2, $zero, 0x03BC ## $a2 = 000003BC -/* 01474 809C6CA4 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000 -/* 01478 809C6CA8 0C0346A2 */ jal Matrix_NewMtx -/* 0147C 809C6CAC 8F040000 */ lw $a0, 0x0000($t8) ## 00000000 -/* 01480 809C6CB0 AE020004 */ sw $v0, 0x0004($s0) ## 00000004 -/* 01484 809C6CB4 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0 -/* 01488 809C6CB8 3C0A0400 */ lui $t2, %hi(gBombchuDL) ## $t2 = 04000000 -/* 0148C 809C6CBC 254A7E10 */ addiu $t2, $t2, %lo(gBombchuDL) ## $t2 = 04007E10 -/* 01490 809C6CC0 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008 -/* 01494 809C6CC4 AE2802C0 */ sw $t0, 0x02C0($s1) ## 000002C0 -/* 01498 809C6CC8 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000 -/* 0149C 809C6CCC AC490000 */ sw $t1, 0x0000($v0) ## 00000000 -/* 014A0 809C6CD0 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004 -/* 014A4 809C6CD4 8FB9005C */ lw $t9, 0x005C($sp) -/* 014A8 809C6CD8 3C06809C */ lui $a2, %hi(D_809C6DC8) ## $a2 = 809C0000 -/* 014AC 809C6CDC 24C66DC8 */ addiu $a2, $a2, %lo(D_809C6DC8) ## $a2 = 809C6DC8 -/* 014B0 809C6CE0 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFD8 -/* 014B4 809C6CE4 240703C1 */ addiu $a3, $zero, 0x03C1 ## $a3 = 000003C1 -/* 014B8 809C6CE8 0C031AD5 */ jal Graph_CloseDisps -/* 014BC 809C6CEC 8F250000 */ lw $a1, 0x0000($t9) ## 00000000 -/* 014C0 809C6CF0 8FBF001C */ lw $ra, 0x001C($sp) -/* 014C4 809C6CF4 8FB00014 */ lw $s0, 0x0014($sp) -/* 014C8 809C6CF8 8FB10018 */ lw $s1, 0x0018($sp) -/* 014CC 809C6CFC 03E00008 */ jr $ra -/* 014D0 809C6D00 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 014D4 809C6D04 00000000 */ nop -/* 014D8 809C6D08 00000000 */ nop -/* 014DC 809C6D0C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Init.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Init.s deleted file mode 100644 index 2005726ae0..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Init.s +++ /dev/null @@ -1,107 +0,0 @@ -glabel EnBomChu_Init -/* 00000 809C5830 27BDFE28 */ addiu $sp, $sp, 0xFE28 ## $sp = FFFFFE28 -/* 00004 809C5834 AFA501DC */ sw $a1, 0x01DC($sp) -/* 00008 809C5838 AFBF0024 */ sw $ra, 0x0024($sp) -/* 0000C 809C583C AFB00020 */ sw $s0, 0x0020($sp) -/* 00010 809C5840 3C05809C */ lui $a1, %hi(D_809C6D64) ## $a1 = 809C0000 -/* 00014 809C5844 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00018 809C5848 0C01E037 */ jal Actor_ProcessInitChain - -/* 0001C 809C584C 24A56D64 */ addiu $a1, $a1, %lo(D_809C6D64) ## $a1 = 809C6D64 -/* 00020 809C5850 26050184 */ addiu $a1, $s0, 0x0184 ## $a1 = 00000184 -/* 00024 809C5854 AFA5002C */ sw $a1, 0x002C($sp) -/* 00028 809C5858 0C016EFE */ jal Collider_InitJntSph -/* 0002C 809C585C 8FA401DC */ lw $a0, 0x01DC($sp) -/* 00030 809C5860 3C07809C */ lui $a3, %hi(D_809C6D54) ## $a3 = 809C0000 -/* 00034 809C5864 260E01A4 */ addiu $t6, $s0, 0x01A4 ## $t6 = 000001A4 -/* 00038 809C5868 8FA5002C */ lw $a1, 0x002C($sp) -/* 0003C 809C586C AFAE0010 */ sw $t6, 0x0010($sp) -/* 00040 809C5870 24E76D54 */ addiu $a3, $a3, %lo(D_809C6D54) ## $a3 = 809C6D54 -/* 00044 809C5874 8FA401DC */ lw $a0, 0x01DC($sp) -/* 00048 809C5878 0C017014 */ jal Collider_SetJntSph -/* 0004C 809C587C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00050 809C5880 8E0201A0 */ lw $v0, 0x01A0($s0) ## 000001A0 -/* 00054 809C5884 3C0A809C */ lui $t2, %hi(D_809C6D6D) ## $t2 = 809C0000 -/* 00058 809C5888 3C0B809C */ lui $t3, %hi(D_809C6D71) ## $t3 = 809C0000 -/* 0005C 809C588C 844F002E */ lh $t7, 0x002E($v0) ## 0000002E -/* 00060 809C5890 3C18809C */ lui $t8, %hi(D_809C6D6C) ## $t8 = 809C0000 -/* 00064 809C5894 3C19809C */ lui $t9, %hi(D_809C6D70) ## $t9 = 809C0000 -/* 00068 809C5898 A44F0036 */ sh $t7, 0x0036($v0) ## 00000036 -/* 0006C 809C589C 3C08809C */ lui $t0, %hi(D_809C6D74) ## $t0 = 809C0000 -/* 00070 809C58A0 3C09809C */ lui $t1, %hi(D_809C6D78) ## $t1 = 809C0000 -/* 00074 809C58A4 916B6D71 */ lbu $t3, %lo(D_809C6D71)($t3) -/* 00078 809C58A8 914A6D6D */ lbu $t2, %lo(D_809C6D6D)($t2) -/* 0007C 809C58AC 93186D6C */ lbu $t8, %lo(D_809C6D6C)($t8) -/* 00080 809C58B0 93396D70 */ lbu $t9, %lo(D_809C6D70)($t9) -/* 00084 809C58B4 91086D74 */ lbu $t0, %lo(D_809C6D74)($t0) -/* 00088 809C58B8 91296D78 */ lbu $t1, %lo(D_809C6D78)($t1) -/* 0008C 809C58BC 3C0C809C */ lui $t4, %hi(D_809C6D75) ## $t4 = 809C0000 -/* 00090 809C58C0 3C0D809C */ lui $t5, %hi(D_809C6D79) ## $t5 = 809C0000 -/* 00094 809C58C4 91AD6D79 */ lbu $t5, %lo(D_809C6D79)($t5) -/* 00098 809C58C8 918C6D75 */ lbu $t4, %lo(D_809C6D75)($t4) -/* 0009C 809C58CC A3AB01BD */ sb $t3, 0x01BD($sp) -/* 000A0 809C58D0 A3AA01B9 */ sb $t2, 0x01B9($sp) -/* 000A4 809C58D4 A3B801B8 */ sb $t8, 0x01B8($sp) -/* 000A8 809C58D8 A3B901BC */ sb $t9, 0x01BC($sp) -/* 000AC 809C58DC A3A801C0 */ sb $t0, 0x01C0($sp) -/* 000B0 809C58E0 A3A901C4 */ sb $t1, 0x01C4($sp) -/* 000B4 809C58E4 3C09809C */ lui $t1, %hi(D_809C6D73) ## $t1 = 809C0000 -/* 000B8 809C58E8 3C08809C */ lui $t0, %hi(D_809C6D6F) ## $t0 = 809C0000 -/* 000BC 809C58EC 3C19809C */ lui $t9, %hi(D_809C6D7A) ## $t9 = 809C0000 -/* 000C0 809C58F0 3C18809C */ lui $t8, %hi(D_809C6D76) ## $t8 = 809C0000 -/* 000C4 809C58F4 3C0A809C */ lui $t2, %hi(D_809C6D77) ## $t2 = 809C0000 -/* 000C8 809C58F8 3C0B809C */ lui $t3, %hi(D_809C6D7B) ## $t3 = 809C0000 -/* 000CC 809C58FC 3C0F809C */ lui $t7, %hi(D_809C6D72) ## $t7 = 809C0000 -/* 000D0 809C5900 3C0E809C */ lui $t6, %hi(D_809C6D6E) ## $t6 = 809C0000 -/* 000D4 809C5904 91CE6D6E */ lbu $t6, %lo(D_809C6D6E)($t6) -/* 000D8 809C5908 91EF6D72 */ lbu $t7, %lo(D_809C6D72)($t7) -/* 000DC 809C590C 916B6D7B */ lbu $t3, %lo(D_809C6D7B)($t3) -/* 000E0 809C5910 914A6D77 */ lbu $t2, %lo(D_809C6D77)($t2) -/* 000E4 809C5914 93186D76 */ lbu $t8, %lo(D_809C6D76)($t8) -/* 000E8 809C5918 93396D7A */ lbu $t9, %lo(D_809C6D7A)($t9) -/* 000EC 809C591C 91086D6F */ lbu $t0, %lo(D_809C6D6F)($t0) -/* 000F0 809C5920 91296D73 */ lbu $t1, %lo(D_809C6D73)($t1) -/* 000F4 809C5924 A3AD01C5 */ sb $t5, 0x01C5($sp) -/* 000F8 809C5928 A3AC01C1 */ sb $t4, 0x01C1($sp) -/* 000FC 809C592C 240C0010 */ addiu $t4, $zero, 0x0010 ## $t4 = 00000010 -/* 00100 809C5930 27AD0034 */ addiu $t5, $sp, 0x0034 ## $t5 = FFFFFE5C -/* 00104 809C5934 AFAC01C8 */ sw $t4, 0x01C8($sp) -/* 00108 809C5938 AFA001CC */ sw $zero, 0x01CC($sp) -/* 0010C 809C593C AFA001D0 */ sw $zero, 0x01D0($sp) -/* 00110 809C5940 AFAD0014 */ sw $t5, 0x0014($sp) -/* 00114 809C5944 AFA00010 */ sw $zero, 0x0010($sp) -/* 00118 809C5948 8FA401DC */ lw $a0, 0x01DC($sp) -/* 0011C 809C594C 2605017C */ addiu $a1, $s0, 0x017C ## $a1 = 0000017C -/* 00120 809C5950 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001 -/* 00124 809C5954 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00128 809C5958 A3AE01BA */ sb $t6, 0x01BA($sp) -/* 0012C 809C595C A3AF01BE */ sb $t7, 0x01BE($sp) -/* 00130 809C5960 A3AB01C7 */ sb $t3, 0x01C7($sp) -/* 00134 809C5964 A3AA01C3 */ sb $t2, 0x01C3($sp) -/* 00138 809C5968 A3B801C2 */ sb $t8, 0x01C2($sp) -/* 0013C 809C596C A3B901C6 */ sb $t9, 0x01C6($sp) -/* 00140 809C5970 A3A801BB */ sb $t0, 0x01BB($sp) -/* 00144 809C5974 0C009B35 */ jal Effect_Add - ## Effect_Add -/* 00148 809C5978 A3A901BF */ sb $t1, 0x01BF($sp) -/* 0014C 809C597C 27AE0034 */ addiu $t6, $sp, 0x0034 ## $t6 = FFFFFE5C -/* 00150 809C5980 AFAE0014 */ sw $t6, 0x0014($sp) -/* 00154 809C5984 8FA401DC */ lw $a0, 0x01DC($sp) -/* 00158 809C5988 26050180 */ addiu $a1, $s0, 0x0180 ## $a1 = 00000180 -/* 0015C 809C598C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001 -/* 00160 809C5990 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00164 809C5994 0C009B35 */ jal Effect_Add - ## Effect_Add -/* 00168 809C5998 AFA00010 */ sw $zero, 0x0010($sp) -/* 0016C 809C599C 3C19809C */ lui $t9, %hi(func_809C5DDC) ## $t9 = 809C0000 -/* 00170 809C59A0 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF -/* 00174 809C59A4 24180078 */ addiu $t8, $zero, 0x0078 ## $t8 = 00000078 -/* 00178 809C59A8 27395DDC */ addiu $t9, $t9, %lo(func_809C5DDC) ## $t9 = 809C5DDC -/* 0017C 809C59AC A20F0003 */ sb $t7, 0x0003($s0) ## 00000003 -/* 00180 809C59B0 A6180150 */ sh $t8, 0x0150($s0) ## 00000150 -/* 00184 809C59B4 AE19014C */ sw $t9, 0x014C($s0) ## 0000014C -/* 00188 809C59B8 8FBF0024 */ lw $ra, 0x0024($sp) -/* 0018C 809C59BC 8FB00020 */ lw $s0, 0x0020($sp) -/* 00190 809C59C0 27BD01D8 */ addiu $sp, $sp, 0x01D8 ## $sp = 00000000 -/* 00194 809C59C4 03E00008 */ jr $ra -/* 00198 809C59C8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Update.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Update.s deleted file mode 100644 index fca7a5e528..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Update.s +++ /dev/null @@ -1,259 +0,0 @@ -glabel EnBomChu_Update -/* 00DA0 809C65D0 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88 -/* 00DA4 809C65D4 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00DA8 809C65D8 AFB10020 */ sw $s1, 0x0020($sp) -/* 00DAC 809C65DC AFB0001C */ sw $s0, 0x001C($sp) -/* 00DB0 809C65E0 908E007D */ lbu $t6, 0x007D($a0) ## 0000007D -/* 00DB4 809C65E4 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 00DB8 809C65E8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00DBC 809C65EC 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 00DC0 809C65F0 11C10037 */ beq $t6, $at, .L809C66D0 -/* 00DC4 809C65F4 AFAE0030 */ sw $t6, 0x0030($sp) -/* 00DC8 809C65F8 848700B6 */ lh $a3, 0x00B6($a0) ## 000000B6 -/* 00DCC 809C65FC 24A407C0 */ addiu $a0, $a1, 0x07C0 ## $a0 = 000007C0 -/* 00DD0 809C6600 01C02825 */ or $a1, $t6, $zero ## $a1 = 00000000 -/* 00DD4 809C6604 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00DD8 809C6608 0C010CE9 */ jal func_800433A4 -/* 00DDC 809C660C A7A7006E */ sh $a3, 0x006E($sp) -/* 00DE0 809C6610 87A7006E */ lh $a3, 0x006E($sp) -/* 00DE4 809C6614 860300B6 */ lh $v1, 0x00B6($s0) ## 000000B6 -/* 00DE8 809C6618 10E3002D */ beq $a3, $v1, .L809C66D0 -/* 00DEC 809C661C 00673823 */ subu $a3, $v1, $a3 -/* 00DF0 809C6620 00073C00 */ sll $a3, $a3, 16 -/* 00DF4 809C6624 00073C03 */ sra $a3, $a3, 16 -/* 00DF8 809C6628 00072400 */ sll $a0, $a3, 16 -/* 00DFC 809C662C 00042403 */ sra $a0, $a0, 16 -/* 00E00 809C6630 0C01DE1C */ jal Math_SinS - ## sins? -/* 00E04 809C6634 A7A7006E */ sh $a3, 0x006E($sp) -/* 00E08 809C6638 87A7006E */ lh $a3, 0x006E($sp) -/* 00E0C 809C663C E7A00068 */ swc1 $f0, 0x0068($sp) -/* 00E10 809C6640 00072400 */ sll $a0, $a3, 16 -/* 00E14 809C6644 0C01DE0D */ jal Math_CosS - ## coss? -/* 00E18 809C6648 00042403 */ sra $a0, $a0, 16 -/* 00E1C 809C664C C7AC0068 */ lwc1 $f12, 0x0068($sp) -/* 00E20 809C6650 C60E015C */ lwc1 $f14, 0x015C($s0) ## 0000015C -/* 00E24 809C6654 C6020154 */ lwc1 $f2, 0x0154($s0) ## 00000154 -/* 00E28 809C6658 C6100168 */ lwc1 $f16, 0x0168($s0) ## 00000168 -/* 00E2C 809C665C 460C7102 */ mul.s $f4, $f14, $f12 -/* 00E30 809C6660 00000000 */ nop -/* 00E34 809C6664 46020182 */ mul.s $f6, $f0, $f2 -/* 00E38 809C6668 00000000 */ nop -/* 00E3C 809C666C 46007282 */ mul.s $f10, $f14, $f0 -/* 00E40 809C6670 C60E0174 */ lwc1 $f14, 0x0174($s0) ## 00000174 -/* 00E44 809C6674 46026482 */ mul.s $f18, $f12, $f2 -/* 00E48 809C6678 C6020160 */ lwc1 $f2, 0x0160($s0) ## 00000160 -/* 00E4C 809C667C 46062200 */ add.s $f8, $f4, $f6 -/* 00E50 809C6680 460C8182 */ mul.s $f6, $f16, $f12 -/* 00E54 809C6684 E6080154 */ swc1 $f8, 0x0154($s0) ## 00000154 -/* 00E58 809C6688 46020202 */ mul.s $f8, $f0, $f2 -/* 00E5C 809C668C 46125101 */ sub.s $f4, $f10, $f18 -/* 00E60 809C6690 46008482 */ mul.s $f18, $f16, $f0 -/* 00E64 809C6694 E604015C */ swc1 $f4, 0x015C($s0) ## 0000015C -/* 00E68 809C6698 46026102 */ mul.s $f4, $f12, $f2 -/* 00E6C 809C669C C602016C */ lwc1 $f2, 0x016C($s0) ## 0000016C -/* 00E70 809C66A0 46083280 */ add.s $f10, $f6, $f8 -/* 00E74 809C66A4 460C7202 */ mul.s $f8, $f14, $f12 -/* 00E78 809C66A8 E60A0160 */ swc1 $f10, 0x0160($s0) ## 00000160 -/* 00E7C 809C66AC 46020282 */ mul.s $f10, $f0, $f2 -/* 00E80 809C66B0 46049181 */ sub.s $f6, $f18, $f4 -/* 00E84 809C66B4 46007102 */ mul.s $f4, $f14, $f0 -/* 00E88 809C66B8 E6060168 */ swc1 $f6, 0x0168($s0) ## 00000168 -/* 00E8C 809C66BC 46026182 */ mul.s $f6, $f12, $f2 -/* 00E90 809C66C0 460A4480 */ add.s $f18, $f8, $f10 -/* 00E94 809C66C4 E612016C */ swc1 $f18, 0x016C($s0) ## 0000016C -/* 00E98 809C66C8 46062201 */ sub.s $f8, $f4, $f6 -/* 00E9C 809C66CC E6080174 */ swc1 $f8, 0x0174($s0) ## 00000174 -.L809C66D0: -/* 00EA0 809C66D0 8E19014C */ lw $t9, 0x014C($s0) ## 0000014C -/* 00EA4 809C66D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00EA8 809C66D8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 00EAC 809C66DC 0320F809 */ jalr $ra, $t9 -/* 00EB0 809C66E0 00000000 */ nop -/* 00EB4 809C66E4 0C00B65F */ jal func_8002D97C -/* 00EB8 809C66E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00EBC 809C66EC C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024 -/* 00EC0 809C66F0 8E0901A0 */ lw $t1, 0x01A0($s0) ## 000001A0 -/* 00EC4 809C66F4 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 00EC8 809C66F8 4600548D */ trunc.w.s $f18, $f10 -/* 00ECC 809C66FC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 00ED0 809C6700 02212821 */ addu $a1, $s1, $at -/* 00ED4 809C6704 26060184 */ addiu $a2, $s0, 0x0184 ## $a2 = 00000184 -/* 00ED8 809C6708 44089000 */ mfc1 $t0, $f18 -/* 00EDC 809C670C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00EE0 809C6710 A5280030 */ sh $t0, 0x0030($t1) ## 00000030 -/* 00EE4 809C6714 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028 -/* 00EE8 809C6718 8E0C01A0 */ lw $t4, 0x01A0($s0) ## 000001A0 -/* 00EEC 809C671C 4600218D */ trunc.w.s $f6, $f4 -/* 00EF0 809C6720 440B3000 */ mfc1 $t3, $f6 -/* 00EF4 809C6724 00000000 */ nop -/* 00EF8 809C6728 A58B0032 */ sh $t3, 0x0032($t4) ## 00000032 -/* 00EFC 809C672C C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 00F00 809C6730 8E0F01A0 */ lw $t7, 0x01A0($s0) ## 000001A0 -/* 00F04 809C6734 4600428D */ trunc.w.s $f10, $f8 -/* 00F08 809C6738 440E5000 */ mfc1 $t6, $f10 -/* 00F0C 809C673C 00000000 */ nop -/* 00F10 809C6740 A5EE0034 */ sh $t6, 0x0034($t7) ## 00000034 -/* 00F14 809C6744 AFA6002C */ sw $a2, 0x002C($sp) -/* 00F18 809C6748 0C01767D */ jal CollisionCheck_SetAC - ## CollisionCheck_setAC -/* 00F1C 809C674C AFA50030 */ sw $a1, 0x0030($sp) -/* 00F20 809C6750 8E18014C */ lw $t8, 0x014C($s0) ## 0000014C -/* 00F24 809C6754 3C19809C */ lui $t9, %hi(func_809C5DDC) ## $t9 = 809C0000 -/* 00F28 809C6758 27395DDC */ addiu $t9, $t9, %lo(func_809C5DDC) ## $t9 = 809C5DDC -/* 00F2C 809C675C 8FA50030 */ lw $a1, 0x0030($sp) -/* 00F30 809C6760 13380003 */ beq $t9, $t8, .L809C6770 -/* 00F34 809C6764 8FA6002C */ lw $a2, 0x002C($sp) -/* 00F38 809C6768 0C017713 */ jal CollisionCheck_SetOC - ## CollisionCheck_setOC -/* 00F3C 809C676C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -.L809C6770: -/* 00F40 809C6770 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00F44 809C6774 0C00B56E */ jal Actor_SetFocus - -/* 00F48 809C6778 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 00F4C 809C677C 8E09014C */ lw $t1, 0x014C($s0) ## 0000014C -/* 00F50 809C6780 3C08809C */ lui $t0, %hi(func_809C5F48) ## $t0 = 809C0000 -/* 00F54 809C6784 25085F48 */ addiu $t0, $t0, %lo(func_809C5F48) ## $t0 = 809C5F48 -/* 00F58 809C6788 1509007D */ bne $t0, $t1, .L809C6980 -/* 00F5C 809C678C 262A07C0 */ addiu $t2, $s1, 0x07C0 ## $t2 = 000007C0 -/* 00F60 809C6790 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00F64 809C6794 AFAA0030 */ sw $t2, 0x0030($sp) -/* 00F68 809C6798 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00F6C 809C679C E7A00038 */ swc1 $f0, 0x0038($sp) -/* 00F70 809C67A0 3C014400 */ lui $at, 0x4400 ## $at = 44000000 -/* 00F74 809C67A4 44819000 */ mtc1 $at, $f18 ## $f18 = 512.00 -/* 00F78 809C67A8 860B0150 */ lh $t3, 0x0150($s0) ## 00000150 -/* 00F7C 809C67AC 3C014640 */ lui $at, 0x4640 ## $at = 46400000 -/* 00F80 809C67B0 46120102 */ mul.s $f4, $f0, $f18 -/* 00F84 809C67B4 448B5000 */ mtc1 $t3, $f10 ## $f10 = 0.00 -/* 00F88 809C67B8 44813000 */ mtc1 $at, $f6 ## $f6 = 12288.00 -/* 00F8C 809C67BC 468054A0 */ cvt.s.w $f18, $f10 -/* 00F90 809C67C0 46062200 */ add.s $f8, $f4, $f6 -/* 00F94 809C67C4 46124102 */ mul.s $f4, $f8, $f18 -/* 00F98 809C67C8 4600218D */ trunc.w.s $f6, $f4 -/* 00F9C 809C67CC 44043000 */ mfc1 $a0, $f6 -/* 00FA0 809C67D0 00000000 */ nop -/* 00FA4 809C67D4 00042400 */ sll $a0, $a0, 16 -/* 00FA8 809C67D8 0C01DE1C */ jal Math_SinS - ## sins? -/* 00FAC 809C67DC 00042403 */ sra $a0, $a0, 16 -/* 00FB0 809C67E0 3C014040 */ lui $at, 0x4040 ## $at = 40400000 -/* 00FB4 809C67E4 44814000 */ mtc1 $at, $f8 ## $f8 = 3.00 -/* 00FB8 809C67E8 C7AA0038 */ lwc1 $f10, 0x0038($sp) -/* 00FBC 809C67EC 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000 -/* 00FC0 809C67F0 44812000 */ mtc1 $at, $f4 ## $f4 = 5.00 -/* 00FC4 809C67F4 46085482 */ mul.s $f18, $f10, $f8 -/* 00FC8 809C67F8 3C05809C */ lui $a1, %hi(D_809C6D7C) ## $a1 = 809C0000 -/* 00FCC 809C67FC 24A56D7C */ addiu $a1, $a1, %lo(D_809C6D7C) ## $a1 = 809C6D7C -/* 00FD0 809C6800 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00FD4 809C6804 27A60054 */ addiu $a2, $sp, 0x0054 ## $a2 = FFFFFFDC -/* 00FD8 809C6808 46122180 */ add.s $f6, $f4, $f18 -/* 00FDC 809C680C 46060282 */ mul.s $f10, $f0, $f6 -/* 00FE0 809C6810 0C271927 */ jal func_809C649C -/* 00FE4 809C6814 E60A0178 */ swc1 $f10, 0x0178($s0) ## 00000178 -/* 00FE8 809C6818 3C05809C */ lui $a1, %hi(D_809C6D88) ## $a1 = 809C0000 -/* 00FEC 809C681C 24A56D88 */ addiu $a1, $a1, %lo(D_809C6D88) ## $a1 = 809C6D88 -/* 00FF0 809C6820 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00FF4 809C6824 0C271927 */ jal func_809C649C -/* 00FF8 809C6828 27A60048 */ addiu $a2, $sp, 0x0048 ## $a2 = FFFFFFD0 -/* 00FFC 809C682C 0C009AC3 */ jal Effect_GetByIndex -/* 01000 809C6830 8E04017C */ lw $a0, 0x017C($s0) ## 0000017C -/* 01004 809C6834 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 -/* 01008 809C6838 27A50054 */ addiu $a1, $sp, 0x0054 ## $a1 = FFFFFFDC -/* 0100C 809C683C 0C007F7C */ jal EffectBlure_AddVertex -/* 01010 809C6840 27A60048 */ addiu $a2, $sp, 0x0048 ## $a2 = FFFFFFD0 -/* 01014 809C6844 3C05809C */ lui $a1, %hi(D_809C6D94) ## $a1 = 809C0000 -/* 01018 809C6848 24A56D94 */ addiu $a1, $a1, %lo(D_809C6D94) ## $a1 = 809C6D94 -/* 0101C 809C684C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01020 809C6850 0C271927 */ jal func_809C649C -/* 01024 809C6854 27A60048 */ addiu $a2, $sp, 0x0048 ## $a2 = FFFFFFD0 -/* 01028 809C6858 0C009AC3 */ jal Effect_GetByIndex -/* 0102C 809C685C 8E040180 */ lw $a0, 0x0180($s0) ## 00000180 -/* 01030 809C6860 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 -/* 01034 809C6864 27A50054 */ addiu $a1, $sp, 0x0054 ## $a1 = FFFFFFDC -/* 01038 809C6868 0C007F7C */ jal EffectBlure_AddVertex -/* 0103C 809C686C 27A60048 */ addiu $a2, $sp, 0x0048 ## $a2 = FFFFFFD0 -/* 01040 809C6870 C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028 -/* 01044 809C6874 27AD0040 */ addiu $t5, $sp, 0x0040 ## $t5 = FFFFFFC8 -/* 01048 809C6878 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFCC -/* 0104C 809C687C E7A80040 */ swc1 $f8, 0x0040($sp) -/* 01050 809C6880 8E07002C */ lw $a3, 0x002C($s0) ## 0000002C -/* 01054 809C6884 8E060024 */ lw $a2, 0x0024($s0) ## 00000024 -/* 01058 809C6888 AFAE0014 */ sw $t6, 0x0014($sp) -/* 0105C 809C688C AFAD0010 */ sw $t5, 0x0010($sp) -/* 01060 809C6890 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 01064 809C6894 0C01084F */ jal WaterBox_GetSurface1 -/* 01068 809C6898 8FA50030 */ lw $a1, 0x0030($sp) -/* 0106C 809C689C 10400032 */ beq $v0, $zero, .L809C6968 -/* 01070 809C68A0 C7A40040 */ lwc1 $f4, 0x0040($sp) -/* 01074 809C68A4 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028 -/* 01078 809C68A8 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 0107C 809C68AC 46122181 */ sub.s $f6, $f4, $f18 -/* 01080 809C68B0 E6060084 */ swc1 $f6, 0x0084($s0) ## 00000084 -/* 01084 809C68B4 C60A0084 */ lwc1 $f10, 0x0084($s0) ## 00000084 -/* 01088 809C68B8 4600503C */ c.lt.s $f10, $f0 -/* 0108C 809C68BC 00000000 */ nop -/* 01090 809C68C0 4502000E */ bc1fl .L809C68FC -/* 01094 809C68C4 96180088 */ lhu $t8, 0x0088($s0) ## 00000088 -/* 01098 809C68C8 96020088 */ lhu $v0, 0x0088($s0) ## 00000088 -/* 0109C 809C68CC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 010A0 809C68D0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 010A4 809C68D4 304F0020 */ andi $t7, $v0, 0x0020 ## $t7 = 00000000 -/* 010A8 809C68D8 51E00005 */ beql $t7, $zero, .L809C68F0 -/* 010AC 809C68DC 3059FFDF */ andi $t9, $v0, 0xFFDF ## $t9 = 00000000 -/* 010B0 809C68E0 0C271952 */ jal func_809C6548 -/* 010B4 809C68E4 8FA60040 */ lw $a2, 0x0040($sp) -/* 010B8 809C68E8 96020088 */ lhu $v0, 0x0088($s0) ## 00000088 -/* 010BC 809C68EC 3059FFDF */ andi $t9, $v0, 0xFFDF ## $t9 = 00000000 -.L809C68F0: -/* 010C0 809C68F0 10000023 */ beq $zero, $zero, .L809C6980 -/* 010C4 809C68F4 A6190088 */ sh $t9, 0x0088($s0) ## 00000088 -/* 010C8 809C68F8 96180088 */ lhu $t8, 0x0088($s0) ## 00000088 -.L809C68FC: -/* 010CC 809C68FC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 010D0 809C6900 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 010D4 809C6904 33080020 */ andi $t0, $t8, 0x0020 ## $t0 = 00000000 -/* 010D8 809C6908 1500000B */ bne $t0, $zero, .L809C6938 -/* 010DC 809C690C 3C074040 */ lui $a3, 0x4040 ## $a3 = 40400000 -/* 010E0 809C6910 86090150 */ lh $t1, 0x0150($s0) ## 00000150 -/* 010E4 809C6914 24010078 */ addiu $at, $zero, 0x0078 ## $at = 00000078 -/* 010E8 809C6918 8FA60040 */ lw $a2, 0x0040($sp) -/* 010EC 809C691C 51210007 */ beql $t1, $at, .L809C693C -/* 010F0 809C6920 3C014170 */ lui $at, 0x4170 ## $at = 41700000 -/* 010F4 809C6924 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 010F8 809C6928 0C271952 */ jal func_809C6548 -/* 010FC 809C692C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01100 809C6930 1000000A */ beq $zero, $zero, .L809C695C -/* 01104 809C6934 960A0088 */ lhu $t2, 0x0088($s0) ## 00000088 -.L809C6938: -/* 01108 809C6938 3C014170 */ lui $at, 0x4170 ## $at = 41700000 -.L809C693C: -/* 0110C 809C693C 44814000 */ mtc1 $at, $f8 ## $f8 = 15.00 -/* 01110 809C6940 3C013E80 */ lui $at, 0x3E80 ## $at = 3E800000 -/* 01114 809C6944 44812000 */ mtc1 $at, $f4 ## $f4 = 0.25 -/* 01118 809C6948 44060000 */ mfc1 $a2, $f0 -/* 0111C 809C694C E7A80010 */ swc1 $f8, 0x0010($sp) -/* 01120 809C6950 0C00A4F9 */ jal EffectSsBubble_Spawn -/* 01124 809C6954 E7A40014 */ swc1 $f4, 0x0014($sp) -/* 01128 809C6958 960A0088 */ lhu $t2, 0x0088($s0) ## 00000088 -.L809C695C: -/* 0112C 809C695C 354B0020 */ ori $t3, $t2, 0x0020 ## $t3 = 00000020 -/* 01130 809C6960 10000007 */ beq $zero, $zero, .L809C6980 -/* 01134 809C6964 A60B0088 */ sh $t3, 0x0088($s0) ## 00000088 -.L809C6968: -/* 01138 809C6968 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088 -/* 0113C 809C696C 3C01C6FA */ lui $at, 0xC6FA ## $at = C6FA0000 -/* 01140 809C6970 44819000 */ mtc1 $at, $f18 ## $f18 = -32000.00 -/* 01144 809C6974 318DFFDF */ andi $t5, $t4, 0xFFDF ## $t5 = 00000000 -/* 01148 809C6978 A60D0088 */ sh $t5, 0x0088($s0) ## 00000088 -/* 0114C 809C697C E6120084 */ swc1 $f18, 0x0084($s0) ## 00000084 -.L809C6980: -/* 01150 809C6980 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01154 809C6984 8FB0001C */ lw $s0, 0x001C($sp) -/* 01158 809C6988 8FB10020 */ lw $s1, 0x0020($sp) -/* 0115C 809C698C 03E00008 */ jr $ra -/* 01160 809C6990 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5A1C.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5A1C.s deleted file mode 100644 index ae4cbd8daa..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5A1C.s +++ /dev/null @@ -1,76 +0,0 @@ -glabel func_809C5A1C -/* 001EC 809C5A1C 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98 -/* 001F0 809C5A20 AFB40060 */ sw $s4, 0x0060($sp) -/* 001F4 809C5A24 0080A025 */ or $s4, $a0, $zero ## $s4 = 00000000 -/* 001F8 809C5A28 AFBF0064 */ sw $ra, 0x0064($sp) -/* 001FC 809C5A2C AFB3005C */ sw $s3, 0x005C($sp) -/* 00200 809C5A30 AFB20058 */ sw $s2, 0x0058($sp) -/* 00204 809C5A34 AFB10054 */ sw $s1, 0x0054($sp) -/* 00208 809C5A38 AFB00050 */ sw $s0, 0x0050($sp) -/* 0020C 809C5A3C F7BA0048 */ sdc1 $f26, 0x0048($sp) -/* 00210 809C5A40 F7B80040 */ sdc1 $f24, 0x0040($sp) -/* 00214 809C5A44 F7B60038 */ sdc1 $f22, 0x0038($sp) -/* 00218 809C5A48 F7B40030 */ sdc1 $f20, 0x0030($sp) -/* 0021C 809C5A4C C6840028 */ lwc1 $f4, 0x0028($s4) ## 00000028 -/* 00220 809C5A50 8E870024 */ lw $a3, 0x0024($s4) ## 00000024 -/* 00224 809C5A54 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000 -/* 00228 809C5A58 E7A40010 */ swc1 $f4, 0x0010($sp) -/* 0022C 809C5A5C C686002C */ lwc1 $f6, 0x002C($s4) ## 0000002C -/* 00230 809C5A60 AFA00024 */ sw $zero, 0x0024($sp) -/* 00234 809C5A64 AFA00020 */ sw $zero, 0x0020($sp) -/* 00238 809C5A68 AFA0001C */ sw $zero, 0x001C($sp) -/* 0023C 809C5A6C AFA00018 */ sw $zero, 0x0018($sp) -/* 00240 809C5A70 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24 -/* 00244 809C5A74 24060010 */ addiu $a2, $zero, 0x0010 ## $a2 = 00000010 -/* 00248 809C5A78 0C00C7D4 */ jal Actor_Spawn - ## ActorSpawn -/* 0024C 809C5A7C E7A60014 */ swc1 $f6, 0x0014($sp) -/* 00250 809C5A80 10400002 */ beq $v0, $zero, .L809C5A8C -/* 00254 809C5A84 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000 -/* 00258 809C5A88 A44001F8 */ sh $zero, 0x01F8($v0) ## 000001F8 -.L809C5A8C: -/* 0025C 809C5A8C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00260 809C5A90 C6880084 */ lwc1 $f8, 0x0084($s4) ## 00000084 -/* 00264 809C5A94 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 00268 809C5A98 A68E0150 */ sh $t6, 0x0150($s4) ## 00000150 -/* 0026C 809C5A9C 4608003C */ c.lt.s $f0, $f8 -/* 00270 809C5AA0 26910024 */ addiu $s1, $s4, 0x0024 ## $s1 = 00000024 -/* 00274 809C5AA4 3C013E80 */ lui $at, 0x3E80 ## $at = 3E800000 -/* 00278 809C5AA8 E6800068 */ swc1 $f0, 0x0068($s4) ## 00000068 -/* 0027C 809C5AAC 45000013 */ bc1f .L809C5AFC -/* 00280 809C5AB0 00000000 */ nop -/* 00284 809C5AB4 4481D000 */ mtc1 $at, $f26 ## $f26 = 0.25 -/* 00288 809C5AB8 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000 -/* 0028C 809C5ABC 4481C000 */ mtc1 $at, $f24 ## $f24 = 30.00 -/* 00290 809C5AC0 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000 -/* 00294 809C5AC4 4481B000 */ mtc1 $at, $f22 ## $f22 = 5.00 -/* 00298 809C5AC8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0029C 809C5ACC 4481A000 */ mtc1 $at, $f20 ## $f20 = 1.00 -/* 002A0 809C5AD0 24120028 */ addiu $s2, $zero, 0x0028 ## $s2 = 00000028 -/* 002A4 809C5AD4 4406A000 */ mfc1 $a2, $f20 -.L809C5AD8: -/* 002A8 809C5AD8 4407B000 */ mfc1 $a3, $f22 -/* 002AC 809C5ADC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 002B0 809C5AE0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000024 -/* 002B4 809C5AE4 E7B80010 */ swc1 $f24, 0x0010($sp) -/* 002B8 809C5AE8 0C00A4F9 */ jal EffectSsBubble_Spawn -/* 002BC 809C5AEC E7BA0014 */ swc1 $f26, 0x0014($sp) -/* 002C0 809C5AF0 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001 -/* 002C4 809C5AF4 5612FFF8 */ bnel $s0, $s2, .L809C5AD8 -/* 002C8 809C5AF8 4406A000 */ mfc1 $a2, $f20 -.L809C5AFC: -/* 002CC 809C5AFC 3C0F809C */ lui $t7, %hi(func_809C645C) ## $t7 = 809C0000 -/* 002D0 809C5B00 25EF645C */ addiu $t7, $t7, %lo(func_809C645C) ## $t7 = 809C645C -/* 002D4 809C5B04 AE8F014C */ sw $t7, 0x014C($s4) ## 0000014C -/* 002D8 809C5B08 8FBF0064 */ lw $ra, 0x0064($sp) -/* 002DC 809C5B0C 8FB40060 */ lw $s4, 0x0060($sp) -/* 002E0 809C5B10 8FB3005C */ lw $s3, 0x005C($sp) -/* 002E4 809C5B14 8FB20058 */ lw $s2, 0x0058($sp) -/* 002E8 809C5B18 8FB10054 */ lw $s1, 0x0054($sp) -/* 002EC 809C5B1C 8FB00050 */ lw $s0, 0x0050($sp) -/* 002F0 809C5B20 D7BA0048 */ ldc1 $f26, 0x0048($sp) -/* 002F4 809C5B24 D7B80040 */ ldc1 $f24, 0x0040($sp) -/* 002F8 809C5B28 D7B60038 */ ldc1 $f22, 0x0038($sp) -/* 002FC 809C5B2C D7B40030 */ ldc1 $f20, 0x0030($sp) -/* 00300 809C5B30 03E00008 */ jr $ra -/* 00304 809C5B34 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5B38.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5B38.s deleted file mode 100644 index bfe8bf9f14..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5B38.s +++ /dev/null @@ -1,29 +0,0 @@ -glabel func_809C5B38 -/* 00308 809C5B38 C4840004 */ lwc1 $f4, 0x0004($a0) ## 00000004 -/* 0030C 809C5B3C C4A60008 */ lwc1 $f6, 0x0008($a1) ## 00000008 -/* 00310 809C5B40 C48A0008 */ lwc1 $f10, 0x0008($a0) ## 00000008 -/* 00314 809C5B44 C4B00004 */ lwc1 $f16, 0x0004($a1) ## 00000004 -/* 00318 809C5B48 46062202 */ mul.s $f8, $f4, $f6 -/* 0031C 809C5B4C 00000000 */ nop -/* 00320 809C5B50 46105482 */ mul.s $f18, $f10, $f16 -/* 00324 809C5B54 46124101 */ sub.s $f4, $f8, $f18 -/* 00328 809C5B58 E4C40000 */ swc1 $f4, 0x0000($a2) ## 00000000 -/* 0032C 809C5B5C C4AA0000 */ lwc1 $f10, 0x0000($a1) ## 00000000 -/* 00330 809C5B60 C4860008 */ lwc1 $f6, 0x0008($a0) ## 00000008 -/* 00334 809C5B64 C4880000 */ lwc1 $f8, 0x0000($a0) ## 00000000 -/* 00338 809C5B68 C4B20008 */ lwc1 $f18, 0x0008($a1) ## 00000008 -/* 0033C 809C5B6C 460A3402 */ mul.s $f16, $f6, $f10 -/* 00340 809C5B70 00000000 */ nop -/* 00344 809C5B74 46124102 */ mul.s $f4, $f8, $f18 -/* 00348 809C5B78 46048181 */ sub.s $f6, $f16, $f4 -/* 0034C 809C5B7C E4C60004 */ swc1 $f6, 0x0004($a2) ## 00000004 -/* 00350 809C5B80 C4A80004 */ lwc1 $f8, 0x0004($a1) ## 00000004 -/* 00354 809C5B84 C48A0000 */ lwc1 $f10, 0x0000($a0) ## 00000000 -/* 00358 809C5B88 C4A40000 */ lwc1 $f4, 0x0000($a1) ## 00000000 -/* 0035C 809C5B8C C4900004 */ lwc1 $f16, 0x0004($a0) ## 00000004 -/* 00360 809C5B90 46085482 */ mul.s $f18, $f10, $f8 -/* 00364 809C5B94 00000000 */ nop -/* 00368 809C5B98 46048182 */ mul.s $f6, $f16, $f4 -/* 0036C 809C5B9C 46069281 */ sub.s $f10, $f18, $f6 -/* 00370 809C5BA0 03E00008 */ jr $ra -/* 00374 809C5BA4 E4CA0008 */ swc1 $f10, 0x0008($a2) ## 00000008 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5BA8.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5BA8.s deleted file mode 100644 index a3f689fcbc..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5BA8.s +++ /dev/null @@ -1,155 +0,0 @@ -.late_rodata -glabel D_809C6DDC - .word 0x38000100 -glabel D_809C6DE0 - .float 0.001 - -glabel D_809C6DE4 - .float 0.001 - -.text -glabel func_809C5BA8 -/* 00378 809C5BA8 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70 -/* 0037C 809C5BAC 3C01809C */ lui $at, %hi(D_809C6DDC) ## $at = 809C0000 -/* 00380 809C5BB0 C4226DDC */ lwc1 $f2, %lo(D_809C6DDC)($at) -/* 00384 809C5BB4 AFBF001C */ sw $ra, 0x001C($sp) -/* 00388 809C5BB8 AFB00018 */ sw $s0, 0x0018($sp) -/* 0038C 809C5BBC AFA60098 */ sw $a2, 0x0098($sp) -/* 00390 809C5BC0 AC850078 */ sw $a1, 0x0078($a0) ## 00000078 -/* 00394 809C5BC4 84AE0008 */ lh $t6, 0x0008($a1) ## 00000008 -/* 00398 809C5BC8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0039C 809C5BCC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 003A0 809C5BD0 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00 -/* 003A4 809C5BD4 00000000 */ nop -/* 003A8 809C5BD8 468021A0 */ cvt.s.w $f6, $f4 -/* 003AC 809C5BDC 46023202 */ mul.s $f8, $f6, $f2 -/* 003B0 809C5BE0 E7A80084 */ swc1 $f8, 0x0084($sp) -/* 003B4 809C5BE4 84AF000A */ lh $t7, 0x000A($a1) ## 0000000A -/* 003B8 809C5BE8 448F5000 */ mtc1 $t7, $f10 ## $f10 = 0.00 -/* 003BC 809C5BEC 00000000 */ nop -/* 003C0 809C5BF0 46805420 */ cvt.s.w $f16, $f10 -/* 003C4 809C5BF4 46028482 */ mul.s $f18, $f16, $f2 -/* 003C8 809C5BF8 E7B20088 */ swc1 $f18, 0x0088($sp) -/* 003CC 809C5BFC 84B8000C */ lh $t8, 0x000C($a1) ## 0000000C -/* 003D0 809C5C00 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00 -/* 003D4 809C5C04 00000000 */ nop -/* 003D8 809C5C08 468021A0 */ cvt.s.w $f6, $f4 -/* 003DC 809C5C0C 46023282 */ mul.s $f10, $f6, $f2 -/* 003E0 809C5C10 E7AA008C */ swc1 $f10, 0x008C($sp) -/* 003E4 809C5C14 C4900160 */ lwc1 $f16, 0x0160($a0) ## 00000160 -/* 003E8 809C5C18 C4860164 */ lwc1 $f6, 0x0164($a0) ## 00000164 -/* 003EC 809C5C1C 46088102 */ mul.s $f4, $f16, $f8 -/* 003F0 809C5C20 00000000 */ nop -/* 003F4 809C5C24 46069402 */ mul.s $f16, $f18, $f6 -/* 003F8 809C5C28 C4920168 */ lwc1 $f18, 0x0168($a0) ## 00000168 -/* 003FC 809C5C2C 46125182 */ mul.s $f6, $f10, $f18 -/* 00400 809C5C30 46102200 */ add.s $f8, $f4, $f16 -/* 00404 809C5C34 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00 -/* 00408 809C5C38 46064300 */ add.s $f12, $f8, $f6 -/* 0040C 809C5C3C 46006005 */ abs.s $f0, $f12 -/* 00410 809C5C40 4600203E */ c.le.s $f4, $f0 -/* 00414 809C5C44 00000000 */ nop -/* 00418 809C5C48 4501005F */ bc1t .L809C5DC8 -/* 0041C 809C5C4C 00000000 */ nop -/* 00420 809C5C50 0C03F4DA */ jal Math_FAcosF -/* 00424 809C5C54 00000000 */ nop -/* 00428 809C5C58 3C01809C */ lui $at, %hi(D_809C6DE0) ## $at = 809C0000 -/* 0042C 809C5C5C C4306DE0 */ lwc1 $f16, %lo(D_809C6DE0)($at) -/* 00430 809C5C60 46000306 */ mov.s $f12, $f0 -/* 00434 809C5C64 26040160 */ addiu $a0, $s0, 0x0160 ## $a0 = 00000160 -/* 00438 809C5C68 4610003C */ c.lt.s $f0, $f16 -/* 0043C 809C5C6C 27A50084 */ addiu $a1, $sp, 0x0084 ## $a1 = FFFFFFF4 -/* 00440 809C5C70 27A60078 */ addiu $a2, $sp, 0x0078 ## $a2 = FFFFFFE8 -/* 00444 809C5C74 45030055 */ bc1tl .L809C5DCC -/* 00448 809C5C78 8FBF001C */ lw $ra, 0x001C($sp) -/* 0044C 809C5C7C AFA40028 */ sw $a0, 0x0028($sp) -/* 00450 809C5C80 0C2716CE */ jal func_809C5B38 -/* 00454 809C5C84 E7AC0074 */ swc1 $f12, 0x0074($sp) -/* 00458 809C5C88 C7AC0074 */ lwc1 $f12, 0x0074($sp) -/* 0045C 809C5C8C 27A50078 */ addiu $a1, $sp, 0x0078 ## $a1 = FFFFFFE8 -/* 00460 809C5C90 0C0348FF */ jal func_800D23FC -/* 00464 809C5C94 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000 -/* 00468 809C5C98 2604016C */ addiu $a0, $s0, 0x016C ## $a0 = 0000016C -/* 0046C 809C5C9C AFA40024 */ sw $a0, 0x0024($sp) -/* 00470 809C5CA0 0C0346BD */ jal Matrix_MultVec3f -/* 00474 809C5CA4 27A50078 */ addiu $a1, $sp, 0x0078 ## $a1 = FFFFFFE8 -/* 00478 809C5CA8 27B90078 */ addiu $t9, $sp, 0x0078 ## $t9 = FFFFFFE8 -/* 0047C 809C5CAC 8FA40024 */ lw $a0, 0x0024($sp) -/* 00480 809C5CB0 8F290000 */ lw $t1, 0x0000($t9) ## FFFFFFE8 -/* 00484 809C5CB4 26060154 */ addiu $a2, $s0, 0x0154 ## $a2 = 00000154 -/* 00488 809C5CB8 27A50084 */ addiu $a1, $sp, 0x0084 ## $a1 = FFFFFFF4 -/* 0048C 809C5CBC AC890000 */ sw $t1, 0x0000($a0) ## 00000000 -/* 00490 809C5CC0 8F280004 */ lw $t0, 0x0004($t9) ## FFFFFFEC -/* 00494 809C5CC4 AC880004 */ sw $t0, 0x0004($a0) ## 00000004 -/* 00498 809C5CC8 8F290008 */ lw $t1, 0x0008($t9) ## FFFFFFF0 -/* 0049C 809C5CCC AC890008 */ sw $t1, 0x0008($a0) ## 00000008 -/* 004A0 809C5CD0 0C2716CE */ jal func_809C5B38 -/* 004A4 809C5CD4 AFA60020 */ sw $a2, 0x0020($sp) -/* 004A8 809C5CD8 0C032D8A */ jal Math3D_Vec3fMagnitude -/* 004AC 809C5CDC 8FA40020 */ lw $a0, 0x0020($sp) -/* 004B0 809C5CE0 3C01809C */ lui $at, %hi(D_809C6DE4) ## $at = 809C0000 -/* 004B4 809C5CE4 C42A6DE4 */ lwc1 $f10, %lo(D_809C6DE4)($at) -/* 004B8 809C5CE8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 004BC 809C5CEC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 004C0 809C5CF0 460A003C */ c.lt.s $f0, $f10 -/* 004C4 809C5CF4 00000000 */ nop -/* 004C8 809C5CF8 45020006 */ bc1fl .L809C5D14 -/* 004CC 809C5CFC 44819000 */ mtc1 $at, $f18 ## $f18 = 1.00 -/* 004D0 809C5D00 0C271687 */ jal func_809C5A1C -/* 004D4 809C5D04 8FA50098 */ lw $a1, 0x0098($sp) -/* 004D8 809C5D08 10000030 */ beq $zero, $zero, .L809C5DCC -/* 004DC 809C5D0C 8FBF001C */ lw $ra, 0x001C($sp) -/* 004E0 809C5D10 44819000 */ mtc1 $at, $f18 ## $f18 = 0.00 -.L809C5D14: -/* 004E4 809C5D14 C6080154 */ lwc1 $f8, 0x0154($s0) ## 00000154 -/* 004E8 809C5D18 C6040158 */ lwc1 $f4, 0x0158($s0) ## 00000158 -/* 004EC 809C5D1C 46009083 */ div.s $f2, $f18, $f0 -/* 004F0 809C5D20 C60A015C */ lwc1 $f10, 0x015C($s0) ## 0000015C -/* 004F4 809C5D24 27AB0084 */ addiu $t3, $sp, 0x0084 ## $t3 = FFFFFFF4 -/* 004F8 809C5D28 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFF9C -/* 004FC 809C5D2C 26050030 */ addiu $a1, $s0, 0x0030 ## $a1 = 00000030 -/* 00500 809C5D30 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000 -/* 00504 809C5D34 46024182 */ mul.s $f6, $f8, $f2 -/* 00508 809C5D38 00000000 */ nop -/* 0050C 809C5D3C 46022402 */ mul.s $f16, $f4, $f2 -/* 00510 809C5D40 00000000 */ nop -/* 00514 809C5D44 46025482 */ mul.s $f18, $f10, $f2 -/* 00518 809C5D48 E6060154 */ swc1 $f6, 0x0154($s0) ## 00000154 -/* 0051C 809C5D4C E6100158 */ swc1 $f16, 0x0158($s0) ## 00000158 -/* 00520 809C5D50 E612015C */ swc1 $f18, 0x015C($s0) ## 0000015C -/* 00524 809C5D54 8D6D0000 */ lw $t5, 0x0000($t3) ## FFFFFFF4 -/* 00528 809C5D58 8FAA0028 */ lw $t2, 0x0028($sp) -/* 0052C 809C5D5C AD4D0000 */ sw $t5, 0x0000($t2) ## 00000000 -/* 00530 809C5D60 8D6C0004 */ lw $t4, 0x0004($t3) ## FFFFFFF8 -/* 00534 809C5D64 AD4C0004 */ sw $t4, 0x0004($t2) ## 00000004 -/* 00538 809C5D68 8D6D0008 */ lw $t5, 0x0008($t3) ## FFFFFFFC -/* 0053C 809C5D6C AD4D0008 */ sw $t5, 0x0008($t2) ## 00000008 -/* 00540 809C5D70 C608016C */ lwc1 $f8, 0x016C($s0) ## 0000016C -/* 00544 809C5D74 C7B00084 */ lwc1 $f16, 0x0084($sp) -/* 00548 809C5D78 C7AA0088 */ lwc1 $f10, 0x0088($sp) -/* 0054C 809C5D7C E7A8002C */ swc1 $f8, 0x002C($sp) -/* 00550 809C5D80 C6060170 */ lwc1 $f6, 0x0170($s0) ## 00000170 -/* 00554 809C5D84 C7B2008C */ lwc1 $f18, 0x008C($sp) -/* 00558 809C5D88 E7A60030 */ swc1 $f6, 0x0030($sp) -/* 0055C 809C5D8C C6040174 */ lwc1 $f4, 0x0174($s0) ## 00000174 -/* 00560 809C5D90 E7B0003C */ swc1 $f16, 0x003C($sp) -/* 00564 809C5D94 E7AA0040 */ swc1 $f10, 0x0040($sp) -/* 00568 809C5D98 E7B20044 */ swc1 $f18, 0x0044($sp) -/* 0056C 809C5D9C E7A40034 */ swc1 $f4, 0x0034($sp) -/* 00570 809C5DA0 C6080154 */ lwc1 $f8, 0x0154($s0) ## 00000154 -/* 00574 809C5DA4 E7A8004C */ swc1 $f8, 0x004C($sp) -/* 00578 809C5DA8 C6060158 */ lwc1 $f6, 0x0158($s0) ## 00000158 -/* 0057C 809C5DAC E7A60050 */ swc1 $f6, 0x0050($sp) -/* 00580 809C5DB0 C604015C */ lwc1 $f4, 0x015C($s0) ## 0000015C -/* 00584 809C5DB4 0C034833 */ jal func_800D20CC -/* 00588 809C5DB8 E7A40054 */ swc1 $f4, 0x0054($sp) -/* 0058C 809C5DBC 860E0030 */ lh $t6, 0x0030($s0) ## 00000030 -/* 00590 809C5DC0 000E7823 */ subu $t7, $zero, $t6 -/* 00594 809C5DC4 A60F0030 */ sh $t7, 0x0030($s0) ## 00000030 -.L809C5DC8: -/* 00598 809C5DC8 8FBF001C */ lw $ra, 0x001C($sp) -.L809C5DCC: -/* 0059C 809C5DCC 8FB00018 */ lw $s0, 0x0018($sp) -/* 005A0 809C5DD0 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000 -/* 005A4 809C5DD4 03E00008 */ jr $ra -/* 005A8 809C5DD8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5DDC.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5DDC.s deleted file mode 100644 index 4ae510cf57..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5DDC.s +++ /dev/null @@ -1,100 +0,0 @@ -glabel func_809C5DDC -/* 005AC 809C5DDC 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 005B0 809C5DE0 AFBF002C */ sw $ra, 0x002C($sp) -/* 005B4 809C5DE4 AFB10028 */ sw $s1, 0x0028($sp) -/* 005B8 809C5DE8 AFB00024 */ sw $s0, 0x0024($sp) -/* 005BC 809C5DEC F7B40018 */ sdc1 $f20, 0x0018($sp) -/* 005C0 809C5DF0 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44 -/* 005C4 809C5DF4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 005C8 809C5DF8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 005CC 809C5DFC AFAE0034 */ sw $t6, 0x0034($sp) -/* 005D0 809C5E00 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -/* 005D4 809C5E04 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 005D8 809C5E08 10400003 */ beq $v0, $zero, .L809C5E18 -/* 005DC 809C5E0C 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF -/* 005E0 809C5E10 A48F0150 */ sh $t7, 0x0150($a0) ## 00000150 -/* 005E4 809C5E14 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -.L809C5E18: -/* 005E8 809C5E18 14400005 */ bne $v0, $zero, .L809C5E30 -/* 005EC 809C5E1C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 005F0 809C5E20 0C271687 */ jal func_809C5A1C -/* 005F4 809C5E24 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 005F8 809C5E28 10000042 */ beq $zero, $zero, .L809C5F34 -/* 005FC 809C5E2C 8FBF002C */ lw $ra, 0x002C($sp) -.L809C5E30: -/* 00600 809C5E30 0C00BD68 */ jal Actor_HasNoParent -/* 00604 809C5E34 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00608 809C5E38 1040003D */ beq $v0, $zero, .L809C5F30 -/* 0060C 809C5E3C 8FB80034 */ lw $t8, 0x0034($sp) -/* 00610 809C5E40 8F080024 */ lw $t0, 0x0024($t8) ## 00000024 -/* 00614 809C5E44 4480A000 */ mtc1 $zero, $f20 ## $f20 = 0.00 -/* 00618 809C5E48 24090004 */ addiu $t1, $zero, 0x0004 ## $t1 = 00000004 -/* 0061C 809C5E4C AE080024 */ sw $t0, 0x0024($s0) ## 00000024 -/* 00620 809C5E50 8F190028 */ lw $t9, 0x0028($t8) ## 00000028 -/* 00624 809C5E54 4406A000 */ mfc1 $a2, $f20 -/* 00628 809C5E58 4407A000 */ mfc1 $a3, $f20 -/* 0062C 809C5E5C AE190028 */ sw $t9, 0x0028($s0) ## 00000028 -/* 00630 809C5E60 8F08002C */ lw $t0, 0x002C($t8) ## 0000002C -/* 00634 809C5E64 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00638 809C5E68 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 0063C 809C5E6C AE08002C */ sw $t0, 0x002C($s0) ## 0000002C -/* 00640 809C5E70 AFA90014 */ sw $t1, 0x0014($sp) -/* 00644 809C5E74 0C00B92D */ jal Actor_UpdateBgCheckInfo -/* 00648 809C5E78 E7B40010 */ swc1 $f20, 0x0010($sp) -/* 0064C 809C5E7C 8FAA0034 */ lw $t2, 0x0034($sp) -/* 00650 809C5E80 854B00B6 */ lh $t3, 0x00B6($t2) ## 000000B6 -/* 00654 809C5E84 A60B00B6 */ sh $t3, 0x00B6($s0) ## 000000B6 -/* 00658 809C5E88 0C01DE1C */ jal Math_SinS - ## sins? -/* 0065C 809C5E8C 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 00660 809C5E90 E6000154 */ swc1 $f0, 0x0154($s0) ## 00000154 -/* 00664 809C5E94 E6140158 */ swc1 $f20, 0x0158($s0) ## 00000158 -/* 00668 809C5E98 0C01DE0D */ jal Math_CosS - ## coss? -/* 0066C 809C5E9C 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 00670 809C5EA0 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 00674 809C5EA4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00678 809C5EA8 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00 -/* 0067C 809C5EAC 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000 -/* 00680 809C5EB0 00042400 */ sll $a0, $a0, 16 -/* 00684 809C5EB4 E600015C */ swc1 $f0, 0x015C($s0) ## 0000015C -/* 00688 809C5EB8 E6140160 */ swc1 $f20, 0x0160($s0) ## 00000160 -/* 0068C 809C5EBC E6140168 */ swc1 $f20, 0x0168($s0) ## 00000168 -/* 00690 809C5EC0 00042403 */ sra $a0, $a0, 16 -/* 00694 809C5EC4 0C01DE1C */ jal Math_SinS - ## sins? -/* 00698 809C5EC8 E6040164 */ swc1 $f4, 0x0164($s0) ## 00000164 -/* 0069C 809C5ECC 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 006A0 809C5ED0 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 -/* 006A4 809C5ED4 E600016C */ swc1 $f0, 0x016C($s0) ## 0000016C -/* 006A8 809C5ED8 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000 -/* 006AC 809C5EDC 00042400 */ sll $a0, $a0, 16 -/* 006B0 809C5EE0 00042403 */ sra $a0, $a0, 16 -/* 006B4 809C5EE4 0C01DE0D */ jal Math_CosS - ## coss? -/* 006B8 809C5EE8 E6060170 */ swc1 $f6, 0x0170($s0) ## 00000170 -/* 006BC 809C5EEC 3C014100 */ lui $at, 0x4100 ## $at = 41000000 -/* 006C0 809C5EF0 44814000 */ mtc1 $at, $f8 ## $f8 = 8.00 -/* 006C4 809C5EF4 E6000174 */ swc1 $f0, 0x0174($s0) ## 00000174 -/* 006C8 809C5EF8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006CC 809C5EFC 8E050078 */ lw $a1, 0x0078($s0) ## 00000078 -/* 006D0 809C5F00 02203025 */ or $a2, $s1, $zero ## $a2 = 00000000 -/* 006D4 809C5F04 0C2716EA */ jal func_809C5BA8 -/* 006D8 809C5F08 E6080068 */ swc1 $f8, 0x0068($s0) ## 00000068 -/* 006DC 809C5F0C 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004 -/* 006E0 809C5F10 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 006E4 809C5F14 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 006E8 809C5F18 358D0001 */ ori $t5, $t4, 0x0001 ## $t5 = 00000001 -/* 006EC 809C5F1C 0C00BE14 */ jal func_8002F850 -/* 006F0 809C5F20 AE0D0004 */ sw $t5, 0x0004($s0) ## 00000004 -/* 006F4 809C5F24 3C0E809C */ lui $t6, %hi(func_809C5F48) ## $t6 = 809C0000 -/* 006F8 809C5F28 25CE5F48 */ addiu $t6, $t6, %lo(func_809C5F48) ## $t6 = 809C5F48 -/* 006FC 809C5F2C AE0E014C */ sw $t6, 0x014C($s0) ## 0000014C -.L809C5F30: -/* 00700 809C5F30 8FBF002C */ lw $ra, 0x002C($sp) -.L809C5F34: -/* 00704 809C5F34 D7B40018 */ ldc1 $f20, 0x0018($sp) -/* 00708 809C5F38 8FB00024 */ lw $s0, 0x0024($sp) -/* 0070C 809C5F3C 8FB10028 */ lw $s1, 0x0028($sp) -/* 00710 809C5F40 03E00008 */ jr $ra -/* 00714 809C5F44 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5F48.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5F48.s deleted file mode 100644 index 264b2d4a69..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5F48.s +++ /dev/null @@ -1,344 +0,0 @@ -glabel func_809C5F48 -/* 00718 809C5F48 3C014100 */ lui $at, 0x4100 ## $at = 41000000 -/* 0071C 809C5F4C 44810000 */ mtc1 $at, $f0 ## $f0 = 8.00 -/* 00720 809C5F50 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 00724 809C5F54 44812000 */ mtc1 $at, $f4 ## $f4 = 2.00 -/* 00728 809C5F58 27BDFF60 */ addiu $sp, $sp, 0xFF60 ## $sp = FFFFFF60 -/* 0072C 809C5F5C AFBF0044 */ sw $ra, 0x0044($sp) -/* 00730 809C5F60 46040402 */ mul.s $f16, $f0, $f4 -/* 00734 809C5F64 AFB20040 */ sw $s2, 0x0040($sp) -/* 00738 809C5F68 AFB1003C */ sw $s1, 0x003C($sp) -/* 0073C 809C5F6C AFB00038 */ sw $s0, 0x0038($sp) -/* 00740 809C5F70 F7B40030 */ sdc1 $f20, 0x0030($sp) -/* 00744 809C5F74 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -/* 00748 809C5F78 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000 -/* 0074C 809C5F7C 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000 -/* 00750 809C5F80 46008506 */ mov.s $f20, $f16 -/* 00754 809C5F84 10400004 */ beq $v0, $zero, .L809C5F98 -/* 00758 809C5F88 E4800068 */ swc1 $f0, 0x0068($a0) ## 00000068 -/* 0075C 809C5F8C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 00760 809C5F90 A48E0150 */ sh $t6, 0x0150($a0) ## 00000150 -/* 00764 809C5F94 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -.L809C5F98: -/* 00768 809C5F98 1040000E */ beq $v0, $zero, .L809C5FD4 -/* 0076C 809C5F9C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00770 809C5FA0 922F0195 */ lbu $t7, 0x0195($s1) ## 00000195 -/* 00774 809C5FA4 31F80002 */ andi $t8, $t7, 0x0002 ## $t8 = 00000000 -/* 00778 809C5FA8 1700000A */ bne $t8, $zero, .L809C5FD4 -/* 0077C 809C5FAC 00000000 */ nop -/* 00780 809C5FB0 92390196 */ lbu $t9, 0x0196($s1) ## 00000196 -/* 00784 809C5FB4 33280002 */ andi $t0, $t9, 0x0002 ## $t0 = 00000000 -/* 00788 809C5FB8 5100000B */ beql $t0, $zero, .L809C5FE8 -/* 0078C 809C5FBC C6200160 */ lwc1 $f0, 0x0160($s1) ## 00000160 -/* 00790 809C5FC0 8E290190 */ lw $t1, 0x0190($s1) ## 00000190 -/* 00794 809C5FC4 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00798 809C5FC8 912A0002 */ lbu $t2, 0x0002($t1) ## 00000002 -/* 0079C 809C5FCC 51410006 */ beql $t2, $at, .L809C5FE8 -/* 007A0 809C5FD0 C6200160 */ lwc1 $f0, 0x0160($s1) ## 00000160 -.L809C5FD4: -/* 007A4 809C5FD4 0C271687 */ jal func_809C5A1C -/* 007A8 809C5FD8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 007AC 809C5FDC 10000119 */ beq $zero, $zero, .L809C6444 -/* 007B0 809C5FE0 8FBF0044 */ lw $ra, 0x0044($sp) -/* 007B4 809C5FE4 C6200160 */ lwc1 $f0, 0x0160($s1) ## 00000160 -.L809C5FE8: -/* 007B8 809C5FE8 C6260024 */ lwc1 $f6, 0x0024($s1) ## 00000024 -/* 007BC 809C5FEC 3C014080 */ lui $at, 0x4080 ## $at = 40800000 -/* 007C0 809C5FF0 46000200 */ add.s $f8, $f0, $f0 -/* 007C4 809C5FF4 44817000 */ mtc1 $at, $f14 ## $f14 = 4.00 -/* 007C8 809C5FF8 261207C0 */ addiu $s2, $s0, 0x07C0 ## $s2 = 000007C0 -/* 007CC 809C5FFC 27AB0098 */ addiu $t3, $sp, 0x0098 ## $t3 = FFFFFFF8 -/* 007D0 809C6000 46083280 */ add.s $f10, $f6, $f8 -/* 007D4 809C6004 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 007D8 809C6008 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001 -/* 007DC 809C600C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 007E0 809C6010 E7AA007C */ swc1 $f10, 0x007C($sp) -/* 007E4 809C6014 C6220164 */ lwc1 $f2, 0x0164($s1) ## 00000164 -/* 007E8 809C6018 C6320028 */ lwc1 $f18, 0x0028($s1) ## 00000028 -/* 007EC 809C601C 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001 -/* 007F0 809C6020 46021100 */ add.s $f4, $f2, $f2 -/* 007F4 809C6024 27B80090 */ addiu $t8, $sp, 0x0090 ## $t8 = FFFFFFF0 -/* 007F8 809C6028 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 007FC 809C602C 27A5007C */ addiu $a1, $sp, 0x007C ## $a1 = FFFFFFDC -/* 00800 809C6030 46049180 */ add.s $f6, $f18, $f4 -/* 00804 809C6034 27A60070 */ addiu $a2, $sp, 0x0070 ## $a2 = FFFFFFD0 -/* 00808 809C6038 27A70058 */ addiu $a3, $sp, 0x0058 ## $a3 = FFFFFFB8 -/* 0080C 809C603C E7A60080 */ swc1 $f6, 0x0080($sp) -/* 00810 809C6040 C62C0168 */ lwc1 $f12, 0x0168($s1) ## 00000168 -/* 00814 809C6044 C628002C */ lwc1 $f8, 0x002C($s1) ## 0000002C -/* 00818 809C6048 460C6280 */ add.s $f10, $f12, $f12 -/* 0081C 809C604C 460A4480 */ add.s $f18, $f8, $f10 -/* 00820 809C6050 E7B20084 */ swc1 $f18, 0x0084($sp) -/* 00824 809C6054 C6260160 */ lwc1 $f6, 0x0160($s1) ## 00000160 -/* 00828 809C6058 C6240024 */ lwc1 $f4, 0x0024($s1) ## 00000024 -/* 0082C 809C605C 460E3202 */ mul.s $f8, $f6, $f14 -/* 00830 809C6060 46082281 */ sub.s $f10, $f4, $f8 -/* 00834 809C6064 E7AA0070 */ swc1 $f10, 0x0070($sp) -/* 00838 809C6068 C6260164 */ lwc1 $f6, 0x0164($s1) ## 00000164 -/* 0083C 809C606C C6320028 */ lwc1 $f18, 0x0028($s1) ## 00000028 -/* 00840 809C6070 460E3102 */ mul.s $f4, $f6, $f14 -/* 00844 809C6074 46049201 */ sub.s $f8, $f18, $f4 -/* 00848 809C6078 E7A80074 */ swc1 $f8, 0x0074($sp) -/* 0084C 809C607C C6260168 */ lwc1 $f6, 0x0168($s1) ## 00000168 -/* 00850 809C6080 C62A002C */ lwc1 $f10, 0x002C($s1) ## 0000002C -/* 00854 809C6084 E7B00054 */ swc1 $f16, 0x0054($sp) -/* 00858 809C6088 460E3482 */ mul.s $f18, $f6, $f14 -/* 0085C 809C608C AFB000A4 */ sw $s0, 0x00A4($sp) -/* 00860 809C6090 AFB80024 */ sw $t8, 0x0024($sp) -/* 00864 809C6094 AFAF0020 */ sw $t7, 0x0020($sp) -/* 00868 809C6098 AFAE001C */ sw $t6, 0x001C($sp) -/* 0086C 809C609C AFAD0018 */ sw $t5, 0x0018($sp) -/* 00870 809C60A0 AFAC0014 */ sw $t4, 0x0014($sp) -/* 00874 809C60A4 46125101 */ sub.s $f4, $f10, $f18 -/* 00878 809C60A8 AFAB0010 */ sw $t3, 0x0010($sp) -/* 0087C 809C60AC 0C00F7A1 */ jal BgCheck_EntityLineTest1 -/* 00880 809C60B0 E7A40078 */ swc1 $f4, 0x0078($sp) -/* 00884 809C60B4 1040005A */ beq $v0, $zero, .L809C6220 -/* 00888 809C60B8 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 0088C 809C60BC 8FA50098 */ lw $a1, 0x0098($sp) -/* 00890 809C60C0 0C01076E */ jal func_80041DB8 -/* 00894 809C60C4 8FA60090 */ lw $a2, 0x0090($sp) -/* 00898 809C60C8 30590030 */ andi $t9, $v0, 0x0030 ## $t9 = 00000000 -/* 0089C 809C60CC 17200054 */ bne $t9, $zero, .L809C6220 -/* 008A0 809C60D0 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 008A4 809C60D4 8FA50098 */ lw $a1, 0x0098($sp) -/* 008A8 809C60D8 0C010812 */ jal SurfaceType_IsIgnoredByProjectiles -/* 008AC 809C60DC 8FA60090 */ lw $a2, 0x0090($sp) -/* 008B0 809C60E0 54400050 */ bnel $v0, $zero, .L809C6224 -/* 008B4 809C60E4 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -/* 008B8 809C60E8 C6280154 */ lwc1 $f8, 0x0154($s1) ## 00000154 -/* 008BC 809C60EC C7AA007C */ lwc1 $f10, 0x007C($sp) -/* 008C0 809C60F0 27A8009C */ addiu $t0, $sp, 0x009C ## $t0 = FFFFFFFC -/* 008C4 809C60F4 46144182 */ mul.s $f6, $f8, $f20 -/* 008C8 809C60F8 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 008CC 809C60FC 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 008D0 809C6100 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 008D4 809C6104 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 008D8 809C6108 27AD0094 */ addiu $t5, $sp, 0x0094 ## $t5 = FFFFFFF4 -/* 008DC 809C610C 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 008E0 809C6110 460A3480 */ add.s $f18, $f6, $f10 -/* 008E4 809C6114 C7A60080 */ lwc1 $f6, 0x0080($sp) -/* 008E8 809C6118 27A5007C */ addiu $a1, $sp, 0x007C ## $a1 = FFFFFFDC -/* 008EC 809C611C 27A60070 */ addiu $a2, $sp, 0x0070 ## $a2 = FFFFFFD0 -/* 008F0 809C6120 E7B20070 */ swc1 $f18, 0x0070($sp) -/* 008F4 809C6124 C6240158 */ lwc1 $f4, 0x0158($s1) ## 00000158 -/* 008F8 809C6128 27A70064 */ addiu $a3, $sp, 0x0064 ## $a3 = FFFFFFC4 -/* 008FC 809C612C 46142202 */ mul.s $f8, $f4, $f20 -/* 00900 809C6130 46064280 */ add.s $f10, $f8, $f6 -/* 00904 809C6134 C7A80084 */ lwc1 $f8, 0x0084($sp) -/* 00908 809C6138 E7AA0074 */ swc1 $f10, 0x0074($sp) -/* 0090C 809C613C C632015C */ lwc1 $f18, 0x015C($s1) ## 0000015C -/* 00910 809C6140 AFAD0024 */ sw $t5, 0x0024($sp) -/* 00914 809C6144 AFAC0020 */ sw $t4, 0x0020($sp) -/* 00918 809C6148 46149102 */ mul.s $f4, $f18, $f20 -/* 0091C 809C614C AFAB001C */ sw $t3, 0x001C($sp) -/* 00920 809C6150 AFAA0018 */ sw $t2, 0x0018($sp) -/* 00924 809C6154 AFA90014 */ sw $t1, 0x0014($sp) -/* 00928 809C6158 AFA80010 */ sw $t0, 0x0010($sp) -/* 0092C 809C615C 46082180 */ add.s $f6, $f4, $f8 -/* 00930 809C6160 0C00F7A1 */ jal BgCheck_EntityLineTest1 -/* 00934 809C6164 E7A60078 */ swc1 $f6, 0x0078($sp) -/* 00938 809C6168 1040001B */ beq $v0, $zero, .L809C61D8 -/* 0093C 809C616C 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 00940 809C6170 8FA5009C */ lw $a1, 0x009C($sp) -/* 00944 809C6174 0C01076E */ jal func_80041DB8 -/* 00948 809C6178 8FA60094 */ lw $a2, 0x0094($sp) -/* 0094C 809C617C 304E0030 */ andi $t6, $v0, 0x0030 ## $t6 = 00000000 -/* 00950 809C6180 15C00015 */ bne $t6, $zero, .L809C61D8 -/* 00954 809C6184 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 00958 809C6188 8FA5009C */ lw $a1, 0x009C($sp) -/* 0095C 809C618C 0C010812 */ jal SurfaceType_IsIgnoredByProjectiles -/* 00960 809C6190 8FA60094 */ lw $a2, 0x0094($sp) -/* 00964 809C6194 14400010 */ bne $v0, $zero, .L809C61D8 -/* 00968 809C6198 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 0096C 809C619C 8FA5009C */ lw $a1, 0x009C($sp) -/* 00970 809C61A0 0C2716EA */ jal func_809C5BA8 -/* 00974 809C61A4 8FA600A4 */ lw $a2, 0x00A4($sp) -/* 00978 809C61A8 27AF0064 */ addiu $t7, $sp, 0x0064 ## $t7 = FFFFFFC4 -/* 0097C 809C61AC 8DF90000 */ lw $t9, 0x0000($t7) ## FFFFFFC4 -/* 00980 809C61B0 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -/* 00984 809C61B4 AE390024 */ sw $t9, 0x0024($s1) ## 00000024 -/* 00988 809C61B8 8DF80004 */ lw $t8, 0x0004($t7) ## FFFFFFC8 -/* 0098C 809C61BC AE380028 */ sw $t8, 0x0028($s1) ## 00000028 -/* 00990 809C61C0 8DF90008 */ lw $t9, 0x0008($t7) ## FFFFFFCC -/* 00994 809C61C4 AE39002C */ sw $t9, 0x002C($s1) ## 0000002C -/* 00998 809C61C8 8FA80094 */ lw $t0, 0x0094($sp) -/* 0099C 809C61CC E62A0068 */ swc1 $f10, 0x0068($s1) ## 00000068 -/* 009A0 809C61D0 10000089 */ beq $zero, $zero, .L809C63F8 -/* 009A4 809C61D4 A228007D */ sb $t0, 0x007D($s1) ## 0000007D -.L809C61D8: -/* 009A8 809C61D8 8FA90098 */ lw $t1, 0x0098($sp) -/* 009AC 809C61DC 8E2A0078 */ lw $t2, 0x0078($s1) ## 00000078 -/* 009B0 809C61E0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 009B4 809C61E4 01202825 */ or $a1, $t1, $zero ## $a1 = 00000000 -/* 009B8 809C61E8 512A0004 */ beql $t1, $t2, .L809C61FC -/* 009BC 809C61EC 27AB0058 */ addiu $t3, $sp, 0x0058 ## $t3 = FFFFFFB8 -/* 009C0 809C61F0 0C2716EA */ jal func_809C5BA8 -/* 009C4 809C61F4 8FA600A4 */ lw $a2, 0x00A4($sp) -/* 009C8 809C61F8 27AB0058 */ addiu $t3, $sp, 0x0058 ## $t3 = FFFFFFB8 -.L809C61FC: -/* 009CC 809C61FC 8D6D0000 */ lw $t5, 0x0000($t3) ## FFFFFFB8 -/* 009D0 809C6200 AE2D0024 */ sw $t5, 0x0024($s1) ## 00000024 -/* 009D4 809C6204 8D6C0004 */ lw $t4, 0x0004($t3) ## FFFFFFBC -/* 009D8 809C6208 AE2C0028 */ sw $t4, 0x0028($s1) ## 00000028 -/* 009DC 809C620C 8D6D0008 */ lw $t5, 0x0008($t3) ## FFFFFFC0 -/* 009E0 809C6210 AE2D002C */ sw $t5, 0x002C($s1) ## 0000002C -/* 009E4 809C6214 8FAE0090 */ lw $t6, 0x0090($sp) -/* 009E8 809C6218 10000077 */ beq $zero, $zero, .L809C63F8 -/* 009EC 809C621C A22E007D */ sb $t6, 0x007D($s1) ## 0000007D -.L809C6220: -/* 009F0 809C6220 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -.L809C6224: -/* 009F4 809C6224 27A60070 */ addiu $a2, $sp, 0x0070 ## $a2 = FFFFFFD0 -/* 009F8 809C6228 27A5007C */ addiu $a1, $sp, 0x007C ## $a1 = FFFFFFDC -/* 009FC 809C622C E6320068 */ swc1 $f18, 0x0068($s1) ## 00000068 -/* 00A00 809C6230 8CD80000 */ lw $t8, 0x0000($a2) ## FFFFFFD0 -/* 00A04 809C6234 C7A40054 */ lwc1 $f4, 0x0054($sp) -/* 00A08 809C6238 3C014040 */ lui $at, 0x4040 ## $at = 40400000 -/* 00A0C 809C623C 44814000 */ mtc1 $at, $f8 ## $f8 = 3.00 -/* 00A10 809C6240 ACB80000 */ sw $t8, 0x0000($a1) ## FFFFFFDC -/* 00A14 809C6244 8CD80008 */ lw $t8, 0x0008($a2) ## FFFFFFD8 -/* 00A18 809C6248 8CCF0004 */ lw $t7, 0x0004($a2) ## FFFFFFD4 -/* 00A1C 809C624C 46082502 */ mul.s $f20, $f4, $f8 -/* 00A20 809C6250 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000 -/* 00A24 809C6254 ACB80008 */ sw $t8, 0x0008($a1) ## FFFFFFE4 -/* 00A28 809C6258 ACAF0004 */ sw $t7, 0x0004($a1) ## FFFFFFE0 -/* 00A2C 809C625C 27A5007C */ addiu $a1, $sp, 0x007C ## $a1 = FFFFFFDC -.L809C6260: -/* 00A30 809C6260 16000011 */ bne $s0, $zero, .L809C62A8 -/* 00A34 809C6264 27A60070 */ addiu $a2, $sp, 0x0070 ## $a2 = FFFFFFD0 -/* 00A38 809C6268 C62A0154 */ lwc1 $f10, 0x0154($s1) ## 00000154 -/* 00A3C 809C626C C7A6007C */ lwc1 $f6, 0x007C($sp) -/* 00A40 809C6270 C7A80080 */ lwc1 $f8, 0x0080($sp) -/* 00A44 809C6274 46145482 */ mul.s $f18, $f10, $f20 -/* 00A48 809C6278 46123101 */ sub.s $f4, $f6, $f18 -/* 00A4C 809C627C E7A40070 */ swc1 $f4, 0x0070($sp) -/* 00A50 809C6280 C62A0158 */ lwc1 $f10, 0x0158($s1) ## 00000158 -/* 00A54 809C6284 C7A40084 */ lwc1 $f4, 0x0084($sp) -/* 00A58 809C6288 46145182 */ mul.s $f6, $f10, $f20 -/* 00A5C 809C628C 46064481 */ sub.s $f18, $f8, $f6 -/* 00A60 809C6290 E7B20074 */ swc1 $f18, 0x0074($sp) -/* 00A64 809C6294 C62A015C */ lwc1 $f10, 0x015C($s1) ## 0000015C -/* 00A68 809C6298 46145202 */ mul.s $f8, $f10, $f20 -/* 00A6C 809C629C 46082181 */ sub.s $f6, $f4, $f8 -/* 00A70 809C62A0 10000023 */ beq $zero, $zero, .L809C6330 -/* 00A74 809C62A4 E7A60078 */ swc1 $f6, 0x0078($sp) -.L809C62A8: -/* 00A78 809C62A8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00A7C 809C62AC 56010012 */ bnel $s0, $at, .L809C62F8 -/* 00A80 809C62B0 C628016C */ lwc1 $f8, 0x016C($s1) ## 0000016C -/* 00A84 809C62B4 C632016C */ lwc1 $f18, 0x016C($s1) ## 0000016C -/* 00A88 809C62B8 C7A4007C */ lwc1 $f4, 0x007C($sp) -/* 00A8C 809C62BC 46149282 */ mul.s $f10, $f18, $f20 -/* 00A90 809C62C0 46045200 */ add.s $f8, $f10, $f4 -/* 00A94 809C62C4 C7AA0080 */ lwc1 $f10, 0x0080($sp) -/* 00A98 809C62C8 E7A80070 */ swc1 $f8, 0x0070($sp) -/* 00A9C 809C62CC C6260170 */ lwc1 $f6, 0x0170($s1) ## 00000170 -/* 00AA0 809C62D0 46143482 */ mul.s $f18, $f6, $f20 -/* 00AA4 809C62D4 460A9100 */ add.s $f4, $f18, $f10 -/* 00AA8 809C62D8 C7B20084 */ lwc1 $f18, 0x0084($sp) -/* 00AAC 809C62DC E7A40074 */ swc1 $f4, 0x0074($sp) -/* 00AB0 809C62E0 C6280174 */ lwc1 $f8, 0x0174($s1) ## 00000174 -/* 00AB4 809C62E4 46144182 */ mul.s $f6, $f8, $f20 -/* 00AB8 809C62E8 46123280 */ add.s $f10, $f6, $f18 -/* 00ABC 809C62EC 10000010 */ beq $zero, $zero, .L809C6330 -/* 00AC0 809C62F0 E7AA0078 */ swc1 $f10, 0x0078($sp) -/* 00AC4 809C62F4 C628016C */ lwc1 $f8, 0x016C($s1) ## 0000016C -.L809C62F8: -/* 00AC8 809C62F8 C7A4007C */ lwc1 $f4, 0x007C($sp) -/* 00ACC 809C62FC C7AA0080 */ lwc1 $f10, 0x0080($sp) -/* 00AD0 809C6300 46144182 */ mul.s $f6, $f8, $f20 -/* 00AD4 809C6304 46062481 */ sub.s $f18, $f4, $f6 -/* 00AD8 809C6308 E7B20070 */ swc1 $f18, 0x0070($sp) -/* 00ADC 809C630C C6280170 */ lwc1 $f8, 0x0170($s1) ## 00000170 -/* 00AE0 809C6310 C7B20084 */ lwc1 $f18, 0x0084($sp) -/* 00AE4 809C6314 46144102 */ mul.s $f4, $f8, $f20 -/* 00AE8 809C6318 46045181 */ sub.s $f6, $f10, $f4 -/* 00AEC 809C631C E7A60074 */ swc1 $f6, 0x0074($sp) -/* 00AF0 809C6320 C6280174 */ lwc1 $f8, 0x0174($s1) ## 00000174 -/* 00AF4 809C6324 46144282 */ mul.s $f10, $f8, $f20 -/* 00AF8 809C6328 460A9101 */ sub.s $f4, $f18, $f10 -/* 00AFC 809C632C E7A40078 */ swc1 $f4, 0x0078($sp) -.L809C6330: -/* 00B00 809C6330 27B9009C */ addiu $t9, $sp, 0x009C ## $t9 = FFFFFFFC -/* 00B04 809C6334 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 00B08 809C6338 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 00B0C 809C633C 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 00B10 809C6340 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 00B14 809C6344 27AC0094 */ addiu $t4, $sp, 0x0094 ## $t4 = FFFFFFF4 -/* 00B18 809C6348 AFAC0024 */ sw $t4, 0x0024($sp) -/* 00B1C 809C634C AFAB0020 */ sw $t3, 0x0020($sp) -/* 00B20 809C6350 AFA9001C */ sw $t1, 0x001C($sp) -/* 00B24 809C6354 AFAA0018 */ sw $t2, 0x0018($sp) -/* 00B28 809C6358 AFA80014 */ sw $t0, 0x0014($sp) -/* 00B2C 809C635C AFB90010 */ sw $t9, 0x0010($sp) -/* 00B30 809C6360 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 00B34 809C6364 0C00F7A1 */ jal BgCheck_EntityLineTest1 -/* 00B38 809C6368 27A70064 */ addiu $a3, $sp, 0x0064 ## $a3 = FFFFFFC4 -/* 00B3C 809C636C 10400019 */ beq $v0, $zero, .L809C63D4 -/* 00B40 809C6370 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 00B44 809C6374 8FA5009C */ lw $a1, 0x009C($sp) -/* 00B48 809C6378 0C01076E */ jal func_80041DB8 -/* 00B4C 809C637C 8FA60094 */ lw $a2, 0x0094($sp) -/* 00B50 809C6380 304D0030 */ andi $t5, $v0, 0x0030 ## $t5 = 00000000 -/* 00B54 809C6384 15A00013 */ bne $t5, $zero, .L809C63D4 -/* 00B58 809C6388 02402025 */ or $a0, $s2, $zero ## $a0 = 000007C0 -/* 00B5C 809C638C 8FA5009C */ lw $a1, 0x009C($sp) -/* 00B60 809C6390 0C010812 */ jal SurfaceType_IsIgnoredByProjectiles -/* 00B64 809C6394 8FA60094 */ lw $a2, 0x0094($sp) -/* 00B68 809C6398 1440000E */ bne $v0, $zero, .L809C63D4 -/* 00B6C 809C639C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00B70 809C63A0 8FA5009C */ lw $a1, 0x009C($sp) -/* 00B74 809C63A4 0C2716EA */ jal func_809C5BA8 -/* 00B78 809C63A8 8FA600A4 */ lw $a2, 0x00A4($sp) -/* 00B7C 809C63AC 27AE0064 */ addiu $t6, $sp, 0x0064 ## $t6 = FFFFFFC4 -/* 00B80 809C63B0 8DD80000 */ lw $t8, 0x0000($t6) ## FFFFFFC4 -/* 00B84 809C63B4 AE380024 */ sw $t8, 0x0024($s1) ## 00000024 -/* 00B88 809C63B8 8DCF0004 */ lw $t7, 0x0004($t6) ## FFFFFFC8 -/* 00B8C 809C63BC AE2F0028 */ sw $t7, 0x0028($s1) ## 00000028 -/* 00B90 809C63C0 8DD80008 */ lw $t8, 0x0008($t6) ## FFFFFFCC -/* 00B94 809C63C4 AE38002C */ sw $t8, 0x002C($s1) ## 0000002C -/* 00B98 809C63C8 8FB90094 */ lw $t9, 0x0094($sp) -/* 00B9C 809C63CC 10000005 */ beq $zero, $zero, .L809C63E4 -/* 00BA0 809C63D0 A239007D */ sb $t9, 0x007D($s1) ## 0000007D -.L809C63D4: -/* 00BA4 809C63D4 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001 -/* 00BA8 809C63D8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 00BAC 809C63DC 5601FFA0 */ bnel $s0, $at, .L809C6260 -/* 00BB0 809C63E0 27A5007C */ addiu $a1, $sp, 0x007C ## $a1 = FFFFFFDC -.L809C63E4: -/* 00BB4 809C63E4 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 00BB8 809C63E8 16010003 */ bne $s0, $at, .L809C63F8 -/* 00BBC 809C63EC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00BC0 809C63F0 0C271687 */ jal func_809C5A1C -/* 00BC4 809C63F4 8FA500A4 */ lw $a1, 0x00A4($sp) -.L809C63F8: -/* 00BC8 809C63F8 86250030 */ lh $a1, 0x0030($s1) ## 00000030 -/* 00BCC 809C63FC 262400B4 */ addiu $a0, $s1, 0x00B4 ## $a0 = 000000B4 -/* 00BD0 809C6400 24060800 */ addiu $a2, $zero, 0x0800 ## $a2 = 00000800 -/* 00BD4 809C6404 00052823 */ subu $a1, $zero, $a1 -/* 00BD8 809C6408 00052C00 */ sll $a1, $a1, 16 -/* 00BDC 809C640C 0C01DE2B */ jal Math_ScaledStepToS - -/* 00BE0 809C6410 00052C03 */ sra $a1, $a1, 16 -/* 00BE4 809C6414 262400B6 */ addiu $a0, $s1, 0x00B6 ## $a0 = 000000B6 -/* 00BE8 809C6418 86250032 */ lh $a1, 0x0032($s1) ## 00000032 -/* 00BEC 809C641C 0C01DE2B */ jal Math_ScaledStepToS - -/* 00BF0 809C6420 24060800 */ addiu $a2, $zero, 0x0800 ## $a2 = 00000800 -/* 00BF4 809C6424 262400B8 */ addiu $a0, $s1, 0x00B8 ## $a0 = 000000B8 -/* 00BF8 809C6428 86250034 */ lh $a1, 0x0034($s1) ## 00000034 -/* 00BFC 809C642C 0C01DE2B */ jal Math_ScaledStepToS - -/* 00C00 809C6430 24060800 */ addiu $a2, $zero, 0x0800 ## $a2 = 00000800 -/* 00C04 809C6434 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00C08 809C6438 0C00BE3C */ jal func_8002F8F0 -/* 00C0C 809C643C 24051031 */ addiu $a1, $zero, 0x1031 ## $a1 = 00001031 -/* 00C10 809C6440 8FBF0044 */ lw $ra, 0x0044($sp) -.L809C6444: -/* 00C14 809C6444 D7B40030 */ ldc1 $f20, 0x0030($sp) -/* 00C18 809C6448 8FB00038 */ lw $s0, 0x0038($sp) -/* 00C1C 809C644C 8FB1003C */ lw $s1, 0x003C($sp) -/* 00C20 809C6450 8FB20040 */ lw $s2, 0x0040($sp) -/* 00C24 809C6454 03E00008 */ jr $ra -/* 00C28 809C6458 27BD00A0 */ addiu $sp, $sp, 0x00A0 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C645C.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C645C.s deleted file mode 100644 index 1847276a7c..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C645C.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel func_809C645C -/* 00C2C 809C645C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C30 809C6460 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C34 809C6464 AFA5001C */ sw $a1, 0x001C($sp) -/* 00C38 809C6468 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -/* 00C3C 809C646C 10400003 */ beq $v0, $zero, .L809C647C -/* 00C40 809C6470 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 00C44 809C6474 A48E0150 */ sh $t6, 0x0150($a0) ## 00000150 -/* 00C48 809C6478 84820150 */ lh $v0, 0x0150($a0) ## 00000150 -.L809C647C: -/* 00C4C 809C647C 54400004 */ bnel $v0, $zero, .L809C6490 -/* 00C50 809C6480 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00C54 809C6484 0C00B55C */ jal Actor_Kill - -/* 00C58 809C6488 00000000 */ nop -/* 00C5C 809C648C 8FBF0014 */ lw $ra, 0x0014($sp) -.L809C6490: -/* 00C60 809C6490 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00C64 809C6494 03E00008 */ jr $ra -/* 00C68 809C6498 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C649C.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C649C.s deleted file mode 100644 index 9036c3721e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C649C.s +++ /dev/null @@ -1,44 +0,0 @@ -glabel func_809C649C -/* 00C6C 809C649C C4A40000 */ lwc1 $f4, 0x0000($a1) ## 00000000 -/* 00C70 809C64A0 C4860178 */ lwc1 $f6, 0x0178($a0) ## 00000178 -/* 00C74 809C64A4 C48A016C */ lwc1 $f10, 0x016C($a0) ## 0000016C -/* 00C78 809C64A8 C4880024 */ lwc1 $f8, 0x0024($a0) ## 00000024 -/* 00C7C 809C64AC 46062000 */ add.s $f0, $f4, $f6 -/* 00C80 809C64B0 C4A60004 */ lwc1 $f6, 0x0004($a1) ## 00000004 -/* 00C84 809C64B4 C4840160 */ lwc1 $f4, 0x0160($a0) ## 00000160 -/* 00C88 809C64B8 46005402 */ mul.s $f16, $f10, $f0 -/* 00C8C 809C64BC 46104480 */ add.s $f18, $f8, $f16 -/* 00C90 809C64C0 46062282 */ mul.s $f10, $f4, $f6 -/* 00C94 809C64C4 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008 -/* 00C98 809C64C8 C4900154 */ lwc1 $f16, 0x0154($a0) ## 00000154 -/* 00C9C 809C64CC 46048182 */ mul.s $f6, $f16, $f4 -/* 00CA0 809C64D0 460A9200 */ add.s $f8, $f18, $f10 -/* 00CA4 809C64D4 46064480 */ add.s $f18, $f8, $f6 -/* 00CA8 809C64D8 E4D20000 */ swc1 $f18, 0x0000($a2) ## 00000000 -/* 00CAC 809C64DC C4900170 */ lwc1 $f16, 0x0170($a0) ## 00000170 -/* 00CB0 809C64E0 C4B20004 */ lwc1 $f18, 0x0004($a1) ## 00000004 -/* 00CB4 809C64E4 C4860164 */ lwc1 $f6, 0x0164($a0) ## 00000164 -/* 00CB8 809C64E8 46008102 */ mul.s $f4, $f16, $f0 -/* 00CBC 809C64EC C48A0028 */ lwc1 $f10, 0x0028($a0) ## 00000028 -/* 00CC0 809C64F0 46123402 */ mul.s $f16, $f6, $f18 -/* 00CC4 809C64F4 C4A60008 */ lwc1 $f6, 0x0008($a1) ## 00000008 -/* 00CC8 809C64F8 46045200 */ add.s $f8, $f10, $f4 -/* 00CCC 809C64FC C4840158 */ lwc1 $f4, 0x0158($a0) ## 00000158 -/* 00CD0 809C6500 46062482 */ mul.s $f18, $f4, $f6 -/* 00CD4 809C6504 46104280 */ add.s $f10, $f8, $f16 -/* 00CD8 809C6508 46125200 */ add.s $f8, $f10, $f18 -/* 00CDC 809C650C E4C80004 */ swc1 $f8, 0x0004($a2) ## 00000004 -/* 00CE0 809C6510 C4840174 */ lwc1 $f4, 0x0174($a0) ## 00000174 -/* 00CE4 809C6514 C4A80004 */ lwc1 $f8, 0x0004($a1) ## 00000004 -/* 00CE8 809C6518 C4920168 */ lwc1 $f18, 0x0168($a0) ## 00000168 -/* 00CEC 809C651C 46002182 */ mul.s $f6, $f4, $f0 -/* 00CF0 809C6520 C490002C */ lwc1 $f16, 0x002C($a0) ## 0000002C -/* 00CF4 809C6524 46089102 */ mul.s $f4, $f18, $f8 -/* 00CF8 809C6528 C4B20008 */ lwc1 $f18, 0x0008($a1) ## 00000008 -/* 00CFC 809C652C 46068280 */ add.s $f10, $f16, $f6 -/* 00D00 809C6530 C486015C */ lwc1 $f6, 0x015C($a0) ## 0000015C -/* 00D04 809C6534 46123202 */ mul.s $f8, $f6, $f18 -/* 00D08 809C6538 46045400 */ add.s $f16, $f10, $f4 -/* 00D0C 809C653C 46088280 */ add.s $f10, $f16, $f8 -/* 00D10 809C6540 03E00008 */ jr $ra -/* 00D14 809C6544 E4CA0008 */ swc1 $f10, 0x0008($a2) ## 00000008 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C6548.s b/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C6548.s deleted file mode 100644 index 19a3129fb8..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C6548.s +++ /dev/null @@ -1,35 +0,0 @@ -glabel func_809C6548 -/* 00D18 809C6548 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00D1C 809C654C AFBF001C */ sw $ra, 0x001C($sp) -/* 00D20 809C6550 AFA40030 */ sw $a0, 0x0030($sp) -/* 00D24 809C6554 AFA50034 */ sw $a1, 0x0034($sp) -/* 00D28 809C6558 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00 -/* 00D2C 809C655C C4840024 */ lwc1 $f4, 0x0024($a0) ## 00000024 -/* 00D30 809C6560 24060046 */ addiu $a2, $zero, 0x0046 ## $a2 = 00000046 -/* 00D34 809C6564 E7AC0028 */ swc1 $f12, 0x0028($sp) -/* 00D38 809C6568 E7A40024 */ swc1 $f4, 0x0024($sp) -/* 00D3C 809C656C C486002C */ lwc1 $f6, 0x002C($a0) ## 0000002C -/* 00D40 809C6570 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00D44 809C6574 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4 -/* 00D48 809C6578 AFA00010 */ sw $zero, 0x0010($sp) -/* 00D4C 809C657C 240701F4 */ addiu $a3, $zero, 0x01F4 ## $a3 = 000001F4 -/* 00D50 809C6580 0C00A511 */ jal EffectSsGRipple_Spawn -/* 00D54 809C6584 E7A6002C */ swc1 $f6, 0x002C($sp) -/* 00D58 809C6588 240F0004 */ addiu $t7, $zero, 0x0004 ## $t7 = 00000004 -/* 00D5C 809C658C AFAF0010 */ sw $t7, 0x0010($sp) -/* 00D60 809C6590 8FA40034 */ lw $a0, 0x0034($sp) -/* 00D64 809C6594 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4 -/* 00D68 809C6598 24060046 */ addiu $a2, $zero, 0x0046 ## $a2 = 00000046 -/* 00D6C 809C659C 0C00A511 */ jal EffectSsGRipple_Spawn -/* 00D70 809C65A0 240701F4 */ addiu $a3, $zero, 0x01F4 ## $a3 = 000001F4 -/* 00D74 809C65A4 24180008 */ addiu $t8, $zero, 0x0008 ## $t8 = 00000008 -/* 00D78 809C65A8 AFB80010 */ sw $t8, 0x0010($sp) -/* 00D7C 809C65AC 8FA40034 */ lw $a0, 0x0034($sp) -/* 00D80 809C65B0 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4 -/* 00D84 809C65B4 24060046 */ addiu $a2, $zero, 0x0046 ## $a2 = 00000046 -/* 00D88 809C65B8 0C00A511 */ jal EffectSsGRipple_Spawn -/* 00D8C 809C65BC 240701F4 */ addiu $a3, $zero, 0x01F4 ## $a3 = 000001F4 -/* 00D90 809C65C0 8FBF001C */ lw $ra, 0x001C($sp) -/* 00D94 809C65C4 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 00D98 809C65C8 03E00008 */ jr $ra -/* 00D9C 809C65CC 00000000 */ nop diff --git a/data/overlays/actors/z_en_bom_chu.data.s b/data/overlays/actors/z_en_bom_chu.data.s deleted file mode 100644 index 20e6780fec..0000000000 --- a/data/overlays/actors/z_en_bom_chu.data.s +++ /dev/null @@ -1,63 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .data - -.balign 16 - -glabel En_Bom_Chu_InitVars - .word 0x00DA0300, 0x00000010, 0x00010000, 0x000001E4 -.word EnBomChu_Init -.word EnBomChu_Destroy -.word EnBomChu_Update -.word EnBomChu_Draw -glabel D_809C6D30 - .word 0x00000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00010100, 0x01000000, 0x00000000, 0x000C0064 -glabel D_809C6D54 - .word 0x0A000931, 0x20000000, 0x00000001 -.word D_809C6D30 -glabel D_809C6D64 - .word 0x801F0002, 0x4850000A -glabel D_809C6D6C - .byte 0xFA -glabel D_809C6D6D - .byte 0x00 -glabel D_809C6D6E - .byte 0x00 -glabel D_809C6D6F - .byte 0xFA -glabel D_809C6D70 - .byte 0xC8 -glabel D_809C6D71 - .byte 0x00 -glabel D_809C6D72 - .byte 0x00 -glabel D_809C6D73 - .byte 0x82 -glabel D_809C6D74 - .byte 0x96 -glabel D_809C6D75 - .byte 0x00 -glabel D_809C6D76 - .byte 0x00 -glabel D_809C6D77 - .byte 0x64 -glabel D_809C6D78 - .byte 0x64 -glabel D_809C6D79 - .byte 0x00 -glabel D_809C6D7A - .byte 0x00 -glabel D_809C6D7B - .byte 0x32 -glabel D_809C6D7C - .word 0x00000000, 0x40E00000, 0xC0C00000 -glabel D_809C6D88 - .word 0x41400000, 0x00000000, 0xC0A00000 -glabel D_809C6D94 - .word 0xC1400000, 0x00000000, 0xC0A00000 - diff --git a/data/overlays/actors/z_en_bom_chu.reloc.s b/data/overlays/actors/z_en_bom_chu.reloc.s deleted file mode 100644 index f2d57a58de..0000000000 --- a/data/overlays/actors/z_en_bom_chu.reloc.s +++ /dev/null @@ -1,13 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .rodata - -.balign 16 - -glabel D_809C6DF0 - .incbin "baserom/ovl_En_Bom_Chu", 0x15C0, 0x00000170 diff --git a/spec b/spec index 24e8548ac0..43787bd906 100644 --- a/spec +++ b/spec @@ -1961,8 +1961,7 @@ endseg beginseg name "ovl_En_Bom_Chu" include "build/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.o" - include "build/data/overlays/actors/z_en_bom_chu.data.o" - include "build/data/overlays/actors/z_en_bom_chu.reloc.o" + include "build/src/overlays/actors/ovl_En_Bom_Chu/ovl_En_Bom_Chu_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c b/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c index 9ea4a5b993..35bb0152d0 100644 --- a/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c +++ b/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c @@ -70,7 +70,7 @@ void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) { if (((fabsf(chuPosDiff.x) < 40.0f) || (BREG(2))) && ((fabsf(chuPosDiff.y) < 40.0f) || (BREG(2))) && ((fabsf(chuPosDiff.z) < 40.0f) || (BREG(2)))) { func_8002DF54(globalCtx, NULL, 8); - chu->unk_150 = 1; + chu->timer = 1; this->camId = Gameplay_CreateSubCamera(globalCtx); Gameplay_ChangeCameraStatus(globalCtx, 0, 1); diff --git a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c index d709c35fd0..ad69b5086e 100644 --- a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c +++ b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c @@ -1,4 +1,5 @@ #include "z_en_bom_chu.h" +#include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "objects/gameplay_keep/gameplay_keep.h" #define FLAGS 0x00000010 @@ -10,7 +11,10 @@ void EnBomChu_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnBomChu_Update(Actor* thisx, GlobalContext* globalCtx); void EnBomChu_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void EnBomChu_WaitForRelease(EnBomChu* this, GlobalContext* globalCtx); +void EnBomChu_Move(EnBomChu* this, GlobalContext* globalCtx); +void EnBomChu_WaitForKill(EnBomChu* this, GlobalContext* globalCtx); + const ActorInit En_Bom_Chu_InitVars = { ACTOR_EN_BOM_CHU, ACTORCAT_EXPLOSIVE, @@ -23,7 +27,7 @@ const ActorInit En_Bom_Chu_InitVars = { (ActorFunc)EnBomChu_Draw, }; -static ColliderJntSphElementInit D_809C6D30[1] = { +static ColliderJntSphElementInit sJntSphElemInit[] = { { { ELEMTYPE_UNK0, @@ -37,7 +41,7 @@ static ColliderJntSphElementInit D_809C6D30[1] = { }, }; -static ColliderJntSphInit D_809C6D54 = { +static ColliderJntSphInit sJntSphInit = { { COLTYPE_NONE, AT_NONE, @@ -47,29 +51,440 @@ static ColliderJntSphInit D_809C6D54 = { COLSHAPE_JNTSPH, }, 1, - D_809C6D30, + sJntSphElemInit, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Destroy.s") +static InitChainEntry sInitChain[] = { + ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5A1C.s") +void EnBomChu_Init(Actor* thisx, GlobalContext* globalCtx) { + static u8 p1StartColor[] = { 250, 0, 0, 250 }; + static u8 p2StartColor[] = { 200, 0, 0, 130 }; + static u8 p1EndColor[] = { 150, 0, 0, 100 }; + static u8 p2EndColor[] = { 100, 0, 0, 50 }; + EnBomChu* this = THIS; + EffectBlureInit1 blureInit; + s32 i; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5B38.s") + Actor_ProcessInitChain(&this->actor, sInitChain); + Collider_InitJntSph(globalCtx, &this->collider); + Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colliderElements); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5BA8.s") + this->collider.elements[0].dim.worldSphere.radius = this->collider.elements[0].dim.modelSphere.radius; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5DDC.s") + for (i = 0; i < 4; i++) { + blureInit.p1StartColor[i] = p1StartColor[i]; + blureInit.p2StartColor[i] = p2StartColor[i]; + blureInit.p1EndColor[i] = p1EndColor[i]; + blureInit.p2EndColor[i] = p2EndColor[i]; + } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C5F48.s") + blureInit.elemDuration = 16; + blureInit.unkFlag = 0; + blureInit.calcMode = 0; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C645C.s") + Effect_Add(globalCtx, &this->blure1Index, EFFECT_BLURE1, 0, 0, &blureInit); + Effect_Add(globalCtx, &this->blure2Index, EFFECT_BLURE1, 0, 0, &blureInit); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C649C.s") + this->actor.room = -1; + this->timer = 120; + this->actionFunc = EnBomChu_WaitForRelease; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/func_809C6548.s") +void EnBomChu_Destroy(Actor* thisx, GlobalContext* globalCtx) { + EnBomChu* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Update.s") + Effect_Delete(globalCtx, this->blure1Index); + Effect_Delete(globalCtx, this->blure2Index); + Collider_DestroyJntSph(globalCtx, &this->collider); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Chu/EnBomChu_Draw.s") +void EnBomChu_Explode(EnBomChu* this, GlobalContext* globalCtx) { + EnBom* bomb; + s32 i; + + bomb = (EnBom*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_BOM, this->actor.world.pos.x, + this->actor.world.pos.y, this->actor.world.pos.z, 0, 0, 0, BOMB_BODY); + if (bomb != NULL) { + bomb->timer = 0; + } + + this->timer = 1; + this->actor.speedXZ = 0.0f; + + if (this->actor.yDistToWater > 0.0f) { + for (i = 0; i < 40; i++) { + EffectSsBubble_Spawn(globalCtx, &this->actor.world.pos, 1.0f, 5.0f, 30.0f, 0.25f); + } + } + + this->actionFunc = EnBomChu_WaitForKill; +} + +void EnBomChu_CrossProduct(Vec3f* a, Vec3f* b, Vec3f* dest) { + dest->x = (a->y * b->z) - (a->z * b->y); + dest->y = (a->z * b->x) - (a->x * b->z); + dest->z = (a->x * b->y) - (a->y * b->x); +} + +void func_809C5BA8(EnBomChu* this, CollisionPoly* floorPoly, GlobalContext* globalCtx) { + Vec3f sp84; + Vec3f sp78; + f32 sp74; + f32 magnitude; + f32 temp_f12; + MtxF mf; + + this->actor.floorPoly = floorPoly; + + sp84.x = floorPoly->normal.x * 0.00003051851f; + sp84.y = floorPoly->normal.y * 0.00003051851f; + sp84.z = floorPoly->normal.z * 0.00003051851f; + + temp_f12 = (sp84.x * this->unk_160.x) + (sp84.y * this->unk_160.y) + (sp84.z * this->unk_160.z); + + if (!(fabsf(temp_f12) >= 1.0f)) { + sp74 = Math_FAcosF(temp_f12); + + if (!(sp74 < 0.001f)) { + EnBomChu_CrossProduct(&this->unk_160, &sp84, &sp78); + func_800D23FC(sp74, &sp78, 0); + Matrix_MultVec3f(&this->unk_16C, &sp78); + this->unk_16C = sp78; + EnBomChu_CrossProduct(&this->unk_16C, &sp84, &this->unk_154); + + magnitude = Math3D_Vec3fMagnitude(&this->unk_154); + + if (magnitude < 0.001f) { + EnBomChu_Explode(this, globalCtx); + return; + } + + this->unk_154.x *= (1.0f / magnitude); + this->unk_154.y *= (1.0f / magnitude); + this->unk_154.z *= (1.0f / magnitude); + + this->unk_160 = sp84; + + if (1) {} + + mf.xx = this->unk_16C.x; + mf.xy = this->unk_16C.y; + mf.xz = this->unk_16C.z; + + mf.yx = sp84.x; + mf.yy = sp84.y; + mf.yz = sp84.z; + + mf.zx = this->unk_154.x; + mf.zy = this->unk_154.y; + mf.zz = this->unk_154.z; + + func_800D20CC(&mf, &this->actor.world.rot, 0); + + this->actor.world.rot.x = -this->actor.world.rot.x; + } + } +} + +void EnBomChu_WaitForRelease(EnBomChu* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + + if (this->timer != 0) { + this->timer--; + } + + if (this->timer == 0) { + EnBomChu_Explode(this, globalCtx); + return; + } + + if (Actor_HasNoParent(&this->actor, globalCtx)) { + this->actor.world.pos = player->actor.world.pos; + Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4); + this->actor.shape.rot.y = player->actor.shape.rot.y; + + this->unk_154.x = Math_SinS(this->actor.shape.rot.y); + this->unk_154.y = 0.0f; + this->unk_154.z = Math_CosS(this->actor.shape.rot.y); + + this->unk_160.x = 0.0f; + this->unk_160.y = 1.0f; + this->unk_160.z = 0.0f; + + this->unk_16C.x = Math_SinS(this->actor.shape.rot.y + 0x4000); + this->unk_16C.y = 0; + this->unk_16C.z = Math_CosS(this->actor.shape.rot.y + 0x4000); + + this->actor.speedXZ = 8.0f; + func_809C5BA8(this, this->actor.floorPoly, globalCtx); + this->actor.flags |= 1; // make chu targetable + func_8002F850(globalCtx, &this->actor); + this->actionFunc = EnBomChu_Move; + } +} + +void EnBomChu_Move(EnBomChu* this, GlobalContext* globalCtx) { + CollisionPoly* sp9C; + CollisionPoly* sp98; + s32 sp94; + s32 sp90; + s32 i; + f32 sp54; + Vec3f sp7C; + Vec3f sp70; + Vec3f sp64; + Vec3f sp58; + + this->actor.speedXZ = 8.0f; + sp54 = this->actor.speedXZ * 2.0f; + + if (this->timer != 0) { + this->timer--; + } + + if ((this->timer == 0) || (this->collider.base.acFlags & AC_HIT) || + ((this->collider.base.ocFlags1 & OC1_HIT) && (this->collider.base.oc->category != ACTORCAT_PLAYER))) { + EnBomChu_Explode(this, globalCtx); + return; + } + + sp7C.x = this->actor.world.pos.x + (this->unk_160.x * 2.0f); + sp7C.y = this->actor.world.pos.y + (this->unk_160.y * 2.0f); + sp7C.z = this->actor.world.pos.z + (this->unk_160.z * 2.0f); + + sp70.x = this->actor.world.pos.x - (this->unk_160.x * 4.0f); + sp70.y = this->actor.world.pos.y - (this->unk_160.y * 4.0f); + sp70.z = this->actor.world.pos.z - (this->unk_160.z * 4.0f); + + if ((BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp7C, &sp70, &sp58, &sp98, true, true, true, true, &sp90)) && + (!(func_80041DB8(&globalCtx->colCtx, sp98, sp90) & 0x30)) && + !SurfaceType_IsIgnoredByProjectiles(&globalCtx->colCtx, sp98, sp90)) { + sp70.x = (this->unk_154.x * sp54) + sp7C.x; + sp70.y = (this->unk_154.y * sp54) + sp7C.y; + sp70.z = (this->unk_154.z * sp54) + sp7C.z; + + if ((BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp7C, &sp70, &sp64, &sp9C, true, true, true, true, &sp94)) && + (!(func_80041DB8(&globalCtx->colCtx, sp9C, sp94) & 0x30)) && + !SurfaceType_IsIgnoredByProjectiles(&globalCtx->colCtx, sp9C, sp94)) { + func_809C5BA8(this, sp9C, globalCtx); + this->actor.world.pos = sp64; + this->actor.floorBgId = sp94; + this->actor.speedXZ = 0.0f; + } else { + if (this->actor.floorPoly != sp98) { + func_809C5BA8(this, sp98, globalCtx); + } + + this->actor.world.pos = sp58; + this->actor.floorBgId = sp90; + } + } else { + this->actor.speedXZ = 0.0f; + sp54 = sp54 * 3.0f; + sp7C = sp70; + + for (i = 0; i < 3; i++) { + if (i == 0) { + sp70.x = sp7C.x - (this->unk_154.x * sp54); + sp70.y = sp7C.y - (this->unk_154.y * sp54); + sp70.z = sp7C.z - (this->unk_154.z * sp54); + } else if (i == 1) { + sp70.x = sp7C.x + (this->unk_16C.x * sp54); + sp70.y = sp7C.y + (this->unk_16C.y * sp54); + sp70.z = sp7C.z + (this->unk_16C.z * sp54); + } else { + sp70.x = sp7C.x - (this->unk_16C.x * sp54); + sp70.y = sp7C.y - (this->unk_16C.y * sp54); + sp70.z = sp7C.z - (this->unk_16C.z * sp54); + } + + if ((BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp7C, &sp70, &sp64, &sp9C, true, true, true, true, + &sp94)) && + (!(func_80041DB8(&globalCtx->colCtx, sp9C, sp94) & 0x30)) && + !SurfaceType_IsIgnoredByProjectiles(&globalCtx->colCtx, sp9C, sp94)) { + func_809C5BA8(this, sp9C, globalCtx); + this->actor.world.pos = sp64; + this->actor.floorBgId = sp94; + break; + } + } + + if (i == 3) { + EnBomChu_Explode(this, globalCtx); + } + } + + Math_ScaledStepToS(&this->actor.shape.rot.x, -this->actor.world.rot.x, 0x800); + Math_ScaledStepToS(&this->actor.shape.rot.y, this->actor.world.rot.y, 0x800); + Math_ScaledStepToS(&this->actor.shape.rot.z, this->actor.world.rot.z, 0x800); + + func_8002F8F0(&this->actor, NA_SE_IT_BOMBCHU_MOVE - SFX_FLAG); +} + +void EnBomChu_WaitForKill(EnBomChu* this, GlobalContext* globalCtx) { + if (this->timer != 0) { + this->timer--; + } + + if (this->timer == 0) { + Actor_Kill(&this->actor); + } +} + +void func_809C649C(EnBomChu* this, Vec3f* arg1, Vec3f* dest) { + f32 scale = arg1->x + this->unk_178; + + dest->x = + this->actor.world.pos.x + (this->unk_16C.x * scale) + (this->unk_160.x * arg1->y) + (this->unk_154.x * arg1->z); + dest->y = + this->actor.world.pos.y + (this->unk_16C.y * scale) + (this->unk_160.y * arg1->y) + (this->unk_154.y * arg1->z); + dest->z = + this->actor.world.pos.z + (this->unk_16C.z * scale) + (this->unk_160.z * arg1->y) + (this->unk_154.z * arg1->z); +} + +void EnBomChu_SpawnRipples(EnBomChu* this, GlobalContext* globalCtx, f32 height) { + Vec3f pos; + + pos.x = this->actor.world.pos.x; + pos.y = height; + pos.z = this->actor.world.pos.z; + + EffectSsGRipple_Spawn(globalCtx, &pos, 70, 500, 0); + EffectSsGRipple_Spawn(globalCtx, &pos, 70, 500, 4); + EffectSsGRipple_Spawn(globalCtx, &pos, 70, 500, 8); +} + +void EnBomChu_Update(Actor* thisx, GlobalContext* globalCtx2) { + static Vec3f D_809C6D7C = { 0.0f, 7.0f, -6.0f }; + static Vec3f D_809C6D88 = { 12.0f, 0.0f, -5.0f }; + static Vec3f D_809C6D94 = { -12.0f, 0.0f, -5.0f }; + GlobalContext* globalCtx = globalCtx2; + EnBomChu* this = THIS; + s16 prevYaw; + f32 sin; + f32 cos; + f32 tempX; + Vec3f sp54; + Vec3f sp48; + WaterBox* waterBox; + f32 waterHeight; + + if (this->actor.floorBgId != BGCHECK_SCENE) { + prevYaw = this->actor.shape.rot.y; + func_800433A4(&globalCtx->colCtx, this->actor.floorBgId, &this->actor); + + if (prevYaw != this->actor.shape.rot.y) { + prevYaw = this->actor.shape.rot.y - prevYaw; + + sin = Math_SinS(prevYaw); + cos = Math_CosS(prevYaw); + + tempX = this->unk_154.x; + this->unk_154.x = (this->unk_154.z * sin) + (cos * tempX); + this->unk_154.z = (this->unk_154.z * cos) - (sin * tempX); + + tempX = this->unk_160.x; + this->unk_160.x = (this->unk_160.z * sin) + (cos * tempX); + this->unk_160.z = (this->unk_160.z * cos) - (sin * tempX); + + tempX = this->unk_16C.x; + this->unk_16C.x = (this->unk_16C.z * sin) + (cos * tempX); + this->unk_16C.z = (this->unk_16C.z * cos) - (sin * tempX); + } + } + + this->actionFunc(this, globalCtx); + func_8002D97C(&this->actor); + + this->collider.elements[0].dim.worldSphere.center.x = this->actor.world.pos.x; + this->collider.elements[0].dim.worldSphere.center.y = this->actor.world.pos.y; + this->collider.elements[0].dim.worldSphere.center.z = this->actor.world.pos.z; + + CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); + + if (this->actionFunc != EnBomChu_WaitForRelease) { + CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); + } + + Actor_SetFocus(&this->actor, 0.0f); + + if (this->actionFunc == EnBomChu_Move) { + this->unk_178 = + (5.0f + (Rand_ZeroOne() * 3.0f)) * Math_SinS(((Rand_ZeroOne() * 512.0f) + 12288.0f) * this->timer); + + func_809C649C(this, &D_809C6D7C, &sp54); + + func_809C649C(this, &D_809C6D88, &sp48); + EffectBlure_AddVertex(Effect_GetByIndex(this->blure1Index), &sp54, &sp48); + + func_809C649C(this, &D_809C6D94, &sp48); + EffectBlure_AddVertex(Effect_GetByIndex(this->blure2Index), &sp54, &sp48); + + waterHeight = this->actor.world.pos.y; + + if (WaterBox_GetSurface1(globalCtx, &globalCtx->colCtx, this->actor.world.pos.x, this->actor.world.pos.z, + &waterHeight, &waterBox)) { + this->actor.yDistToWater = waterHeight - this->actor.world.pos.y; + + if (this->actor.yDistToWater < 0.0f) { + if (this->actor.bgCheckFlags & 0x20) { + EnBomChu_SpawnRipples(this, globalCtx, waterHeight); + } + + this->actor.bgCheckFlags &= ~0x20; + } else { + if (!(this->actor.bgCheckFlags & 0x20) && (this->timer != 120)) { + EnBomChu_SpawnRipples(this, globalCtx, waterHeight); + } else { + EffectSsBubble_Spawn(globalCtx, &this->actor.world.pos, 0.0f, 3.0f, 15.0f, 0.25f); + } + + this->actor.bgCheckFlags |= 0x20; + } + } else { + this->actor.bgCheckFlags &= ~0x20; + this->actor.yDistToWater = BGCHECK_Y_MIN; + } + } +} +void EnBomChu_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + EnBomChu* this = THIS; + f32 colorIntensity; + s32 phi_a1; + s32 timerMod; + + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_bom_chu.c", 921); + + func_80093D18(globalCtx->state.gfxCtx); + func_8002EBCC(&this->actor, globalCtx, 0); + + if (this->timer >= 40) { + timerMod = this->timer % 20; + phi_a1 = 10; + } else if (this->timer >= 10) { + timerMod = this->timer % 10; + phi_a1 = 5; + } else { + timerMod = this->timer & 1; + phi_a1 = 1; + } + + if (phi_a1 < timerMod) { + timerMod = (phi_a1 * 2) - timerMod; + } + + colorIntensity = timerMod / (f32)phi_a1; + + gDPSetEnvColor(POLY_OPA_DISP++, (9.0f + (colorIntensity * 209.0f)), (9.0f + (colorIntensity * 34.0f)), + (35.0f + (colorIntensity * -35.0f)), 255); + Matrix_Translate(this->unk_178 * 100.0f, 0.0f, 0.0f, MTXMODE_APPLY); + gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_bom_chu.c", 956), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(POLY_OPA_DISP++, gBombchuDL); + + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_bom_chu.c", 961); +} diff --git a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h index a64ee4ee39..2457c84be8 100644 --- a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h +++ b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h @@ -11,8 +11,15 @@ typedef void (*EnBomChuActionFunc)(struct EnBomChu*, GlobalContext*); typedef struct EnBomChu { /* 0x0000 */ Actor actor; /* 0x014C */ EnBomChuActionFunc actionFunc; - /* 0x0150 */ u16 unk_150; - /* 0x0152 */ char unk_152[0x92]; + /* 0x0150 */ s16 timer; + /* 0x0154 */ Vec3f unk_154; + /* 0x0160 */ Vec3f unk_160; + /* 0x016C */ Vec3f unk_16C; + /* 0x0178 */ f32 unk_178; + /* 0x017C */ s32 blure1Index; + /* 0x0180 */ s32 blure2Index; + /* 0x0184 */ ColliderJntSph collider; + /* 0x01A4 */ ColliderJntSphElement colliderElements[1]; } EnBomChu; // size = 0x01E4 extern const ActorInit En_Bom_Chu_InitVars; diff --git a/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c b/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c index e548ef021e..75ce68197f 100644 --- a/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c +++ b/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c @@ -89,7 +89,7 @@ void EnWallTubo_DetectChu(EnWallTubo* this, GlobalContext* globalCtx) { if (((fabsf(chuPosDiff.x) < 40.0f) || (BREG(2))) && ((fabsf(chuPosDiff.y) < 40.0f) || (BREG(2))) && (fabsf(chuPosDiff.z) < 40.0f || (BREG(2)))) { this->chuGirl->wallStatus[this->actor.params] = 1; - chu->unk_150 = 2; + chu->timer = 2; func_80078884(NA_SE_SY_TRE_BOX_APPEAR); this->timer = 60; EffectSsBomb2_SpawnLayered(globalCtx, &this->explosionCenter, &effVelocity, &effAccel, 200, 40);