From a982d40480685868bd070054176ba881c07e5924 Mon Sep 17 00:00:00 2001 From: Nathan Faltermeier Date: Sat, 18 Jul 2020 16:40:27 -0500 Subject: [PATCH] Decompile ovl_En_Insect (#244) * Start decompiling bugs * Decomp func_80A7BFA0 * Match 4 functions * Match a few functions, really close on another * Consolidate if statements * Progress on func_80A7C86C * Decompile a few small functions * func_80A7CEC0 still needs stack and regalloc work * Finish up func_80A7CEC0, do a couple functions * Start on func_80A7D460 * func_80A7D460 is mostly down to regalloc * Match update and draw, more work on func_80A7D460 * func_80A7D460 is really close to matching * func_80A7D460 matches * Cleanup * Run formatter * Missed reversing a couple flout comparisons * Apply suggestions from code review Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com> * PR Comments * PR Comments #2 * Missed one Co-authored-by: Roman971 <32455037+Roman971@users.noreply.github.com> --- .../actors/ovl_En_Insect/EnInsect_Destroy.s | 31 - .../actors/ovl_En_Insect/EnInsect_Draw.s | 28 - .../actors/ovl_En_Insect/EnInsect_Init.s | 173 ---- .../actors/ovl_En_Insect/EnInsect_Update.s | 168 ---- .../actors/ovl_En_Insect/func_80A7BE20.s | 9 - .../actors/ovl_En_Insect/func_80A7BE40.s | 12 - .../actors/ovl_En_Insect/func_80A7BE6C.s | 63 -- .../actors/ovl_En_Insect/func_80A7BF58.s | 20 - .../actors/ovl_En_Insect/func_80A7BFA0.s | 50 -- .../actors/ovl_En_Insect/func_80A7C058.s | 48 -- .../actors/ovl_En_Insect/func_80A7C3A0.s | 23 - .../actors/ovl_En_Insect/func_80A7C3F4.s | 131 --- .../actors/ovl_En_Insect/func_80A7C598.s | 23 - .../actors/ovl_En_Insect/func_80A7C5EC.s | 2 +- .../actors/ovl_En_Insect/func_80A7C818.s | 23 - .../actors/ovl_En_Insect/func_80A7C86C.s | 2 +- .../actors/ovl_En_Insect/func_80A7CA64.s | 34 - .../actors/ovl_En_Insect/func_80A7CAD0.s | 84 -- .../actors/ovl_En_Insect/func_80A7CBC8.s | 37 - .../actors/ovl_En_Insect/func_80A7CC3C.s | 176 ---- .../actors/ovl_En_Insect/func_80A7CE60.s | 26 - .../actors/ovl_En_Insect/func_80A7CEC0.s | 246 ------ .../actors/ovl_En_Insect/func_80A7D1F4.s | 39 - .../actors/ovl_En_Insect/func_80A7D26C.s | 100 --- .../actors/ovl_En_Insect/func_80A7D39C.s | 64 -- .../actors/ovl_En_Insect/func_80A7D460.s | 635 --------------- data/overlays/actors/z_en_insect.data.s | 35 - include/variables.h | 1 + include/z64.h | 2 +- spec | 1 - .../actors/ovl_En_Insect/z_en_insect.c | 769 +++++++++++++++++- .../actors/ovl_En_Insect/z_en_insect.h | 20 +- undefined_syms.txt | 4 + 33 files changed, 770 insertions(+), 2309 deletions(-) delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE20.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE40.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE6C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BF58.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BFA0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C058.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3A0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3F4.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C598.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C818.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CA64.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CAD0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CBC8.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CC3C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CE60.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CEC0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D1F4.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D26C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D39C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D460.s delete mode 100644 data/overlays/actors/z_en_insect.data.s diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Destroy.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Destroy.s deleted file mode 100644 index 78d2a659a1..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Destroy.s +++ /dev/null @@ -1,31 +0,0 @@ -glabel EnInsect_Destroy -/* 00514 80A7C334 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00518 80A7C338 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0051C 80A7C33C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C -/* 00520 80A7C340 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00524 80A7C344 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00528 80A7C348 30420003 */ andi $v0, $v0, 0x0003 ## $v0 = 00000000 -/* 0052C 80A7C34C 00021400 */ sll $v0, $v0, 16 -/* 00530 80A7C350 00021403 */ sra $v0, $v0, 16 -/* 00534 80A7C354 A7A2001E */ sh $v0, 0x001E($sp) -/* 00538 80A7C358 0C016F32 */ jal Collider_DestroyJntSph -/* 0053C 80A7C35C 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C -/* 00540 80A7C360 87A2001E */ lh $v0, 0x001E($sp) -/* 00544 80A7C364 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00548 80A7C368 3C0380A8 */ lui $v1, %hi(D_80A7DEB8) ## $v1 = 80A80000 -/* 0054C 80A7C36C 10410004 */ beq $v0, $at, .L80A7C380 -/* 00550 80A7C370 2463DEB8 */ addiu $v1, $v1, %lo(D_80A7DEB8) ## $v1 = 80A7DEB8 -/* 00554 80A7C374 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 00558 80A7C378 54410006 */ bnel $v0, $at, .L80A7C394 -/* 0055C 80A7C37C 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7C380: -/* 00560 80A7C380 84620000 */ lh $v0, 0x0000($v1) ## 80A7DEB8 -/* 00564 80A7C384 18400002 */ blez $v0, .L80A7C390 -/* 00568 80A7C388 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 0056C 80A7C38C A46E0000 */ sh $t6, 0x0000($v1) ## 80A7DEB8 -.L80A7C390: -/* 00570 80A7C390 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7C394: -/* 00574 80A7C394 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00578 80A7C398 03E00008 */ jr $ra -/* 0057C 80A7C39C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Draw.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Draw.s deleted file mode 100644 index 4f3f35efdf..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Draw.s +++ /dev/null @@ -1,28 +0,0 @@ -glabel EnInsect_Draw -/* 02028 80A7DE48 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 0202C 80A7DE4C AFBF001C */ sw $ra, 0x001C($sp) -/* 02030 80A7DE50 AFA40020 */ sw $a0, 0x0020($sp) -/* 02034 80A7DE54 AFA50024 */ sw $a1, 0x0024($sp) -/* 02038 80A7DE58 0C024F46 */ jal func_80093D18 -/* 0203C 80A7DE5C 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000 -/* 02040 80A7DE60 8FA20020 */ lw $v0, 0x0020($sp) -/* 02044 80A7DE64 8FA40024 */ lw $a0, 0x0024($sp) -/* 02048 80A7DE68 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 0204C 80A7DE6C 8C4501B0 */ lw $a1, 0x01B0($v0) ## 000001B0 -/* 02050 80A7DE70 8C4601CC */ lw $a2, 0x01CC($v0) ## 000001CC -/* 02054 80A7DE74 AFA00014 */ sw $zero, 0x0014($sp) -/* 02058 80A7DE78 0C028572 */ jal SkelAnime_Draw - -/* 0205C 80A7DE7C AFA00010 */ sw $zero, 0x0010($sp) -/* 02060 80A7DE80 8FA50020 */ lw $a1, 0x0020($sp) -/* 02064 80A7DE84 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000 -/* 02068 80A7DE88 0C018A29 */ jal func_800628A4 -/* 0206C 80A7DE8C 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C -/* 02070 80A7DE90 8FBF001C */ lw $ra, 0x001C($sp) -/* 02074 80A7DE94 3C0180A8 */ lui $at, %hi(D_80A7DEB4) ## $at = 80A80000 -/* 02078 80A7DE98 A420DEB4 */ sh $zero, %lo(D_80A7DEB4)($at) -/* 0207C 80A7DE9C 03E00008 */ jr $ra -/* 02080 80A7DEA0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 02084 80A7DEA4 00000000 */ nop -/* 02088 80A7DEA8 00000000 */ nop -/* 0208C 80A7DEAC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Init.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Init.s deleted file mode 100644 index 6db21836ae..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Init.s +++ /dev/null @@ -1,173 +0,0 @@ -.late_rodata -glabel D_80A7DFD0 - .word 0xBE4CCCCD -glabel D_80A7DFD4 - .float 0.3 - -glabel D_80A7DFD8 - .float 0.4 - -.text -glabel EnInsect_Init -/* 002CC 80A7C0EC 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8 -/* 002D0 80A7C0F0 AFB3003C */ sw $s3, 0x003C($sp) -/* 002D4 80A7C0F4 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000 -/* 002D8 80A7C0F8 AFBF0044 */ sw $ra, 0x0044($sp) -/* 002DC 80A7C0FC AFB10034 */ sw $s1, 0x0034($sp) -/* 002E0 80A7C100 3C0580A8 */ lui $a1, %hi(D_80A7DF18) ## $a1 = 80A80000 -/* 002E4 80A7C104 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000 -/* 002E8 80A7C108 AFB40040 */ sw $s4, 0x0040($sp) -/* 002EC 80A7C10C AFB20038 */ sw $s2, 0x0038($sp) -/* 002F0 80A7C110 AFB00030 */ sw $s0, 0x0030($sp) -/* 002F4 80A7C114 0C01E037 */ jal Actor_ProcessInitChain - -/* 002F8 80A7C118 24A5DF18 */ addiu $a1, $a1, %lo(D_80A7DF18) ## $a1 = 80A7DF18 -/* 002FC 80A7C11C 0C29EF88 */ jal func_80A7BE20 -/* 00300 80A7C120 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00304 80A7C124 8632001C */ lh $s2, 0x001C($s1) ## 0000001C -/* 00308 80A7C128 3C060403 */ lui $a2, 0x0403 ## $a2 = 04030000 -/* 0030C 80A7C12C 3C070403 */ lui $a3, 0x0403 ## $a3 = 04030000 -/* 00310 80A7C130 32520003 */ andi $s2, $s2, 0x0003 ## $s2 = 00000000 -/* 00314 80A7C134 00129400 */ sll $s2, $s2, 16 -/* 00318 80A7C138 262E01F0 */ addiu $t6, $s1, 0x01F0 ## $t6 = 000001F0 -/* 0031C 80A7C13C 262F0280 */ addiu $t7, $s1, 0x0280 ## $t7 = 00000280 -/* 00320 80A7C140 24180018 */ addiu $t8, $zero, 0x0018 ## $t8 = 00000018 -/* 00324 80A7C144 00129403 */ sra $s2, $s2, 16 -/* 00328 80A7C148 AFB80018 */ sw $t8, 0x0018($sp) -/* 0032C 80A7C14C AFAF0014 */ sw $t7, 0x0014($sp) -/* 00330 80A7C150 AFAE0010 */ sw $t6, 0x0010($sp) -/* 00334 80A7C154 24E741FC */ addiu $a3, $a3, 0x41FC ## $a3 = 040341FC -/* 00338 80A7C158 24C65590 */ addiu $a2, $a2, 0x5590 ## $a2 = 04035590 -/* 0033C 80A7C15C 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 00340 80A7C160 0C02915F */ jal SkelAnime_Init - -/* 00344 80A7C164 262501AC */ addiu $a1, $s1, 0x01AC ## $a1 = 000001AC -/* 00348 80A7C168 2630014C */ addiu $s0, $s1, 0x014C ## $s0 = 0000014C -/* 0034C 80A7C16C 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 00350 80A7C170 0C016EFE */ jal Collider_InitJntSph -/* 00354 80A7C174 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 00358 80A7C178 3C0780A8 */ lui $a3, %hi(D_80A7DF00) ## $a3 = 80A80000 -/* 0035C 80A7C17C 2639016C */ addiu $t9, $s1, 0x016C ## $t9 = 0000016C -/* 00360 80A7C180 AFB90010 */ sw $t9, 0x0010($sp) -/* 00364 80A7C184 24E7DF00 */ addiu $a3, $a3, %lo(D_80A7DF00) ## $a3 = 80A7DF00 -/* 00368 80A7C188 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 0036C 80A7C18C 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 00370 80A7C190 0C017014 */ jal Collider_SetJntSph -/* 00374 80A7C194 02203025 */ or $a2, $s1, $zero ## $a2 = 00000000 -/* 00378 80A7C198 96230314 */ lhu $v1, 0x0314($s1) ## 00000314 -/* 0037C 80A7C19C 2408001E */ addiu $t0, $zero, 0x001E ## $t0 = 0000001E -/* 00380 80A7C1A0 A22800AE */ sb $t0, 0x00AE($s1) ## 000000AE -/* 00384 80A7C1A4 30690001 */ andi $t1, $v1, 0x0001 ## $t1 = 00000000 -/* 00388 80A7C1A8 11200007 */ beq $t1, $zero, .L80A7C1C8 -/* 0038C 80A7C1AC 3C0180A8 */ lui $at, %hi(D_80A7DFD0) ## $at = 80A80000 -/* 00390 80A7C1B0 C424DFD0 */ lwc1 $f4, %lo(D_80A7DFD0)($at) -/* 00394 80A7C1B4 3C01C000 */ lui $at, 0xC000 ## $at = C0000000 -/* 00398 80A7C1B8 44813000 */ mtc1 $at, $f6 ## $f6 = -2.00 -/* 0039C 80A7C1BC 96230314 */ lhu $v1, 0x0314($s1) ## 00000314 -/* 003A0 80A7C1C0 E624006C */ swc1 $f4, 0x006C($s1) ## 0000006C -/* 003A4 80A7C1C4 E6260070 */ swc1 $f6, 0x0070($s1) ## 00000070 -.L80A7C1C8: -/* 003A8 80A7C1C8 306A0004 */ andi $t2, $v1, 0x0004 ## $t2 = 00000000 -/* 003AC 80A7C1CC 11400007 */ beq $t2, $zero, .L80A7C1EC -/* 003B0 80A7C1D0 240400C8 */ addiu $a0, $zero, 0x00C8 ## $a0 = 000000C8 -/* 003B4 80A7C1D4 0C01DF64 */ jal Math_Rand_S16Offset - -/* 003B8 80A7C1D8 24050028 */ addiu $a1, $zero, 0x0028 ## $a1 = 00000028 -/* 003BC 80A7C1DC 8E2B0004 */ lw $t3, 0x0004($s1) ## 00000004 -/* 003C0 80A7C1E0 A622031C */ sh $v0, 0x031C($s1) ## 0000031C -/* 003C4 80A7C1E4 356C0010 */ ori $t4, $t3, 0x0010 ## $t4 = 00000010 -/* 003C8 80A7C1E8 AE2C0004 */ sw $t4, 0x0004($s1) ## 00000004 -.L80A7C1EC: -/* 003CC 80A7C1EC 24140002 */ addiu $s4, $zero, 0x0002 ## $s4 = 00000002 -/* 003D0 80A7C1F0 12540002 */ beq $s2, $s4, .L80A7C1FC -/* 003D4 80A7C1F4 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 003D8 80A7C1F8 1641002E */ bne $s2, $at, .L80A7C2B4 -.L80A7C1FC: -/* 003DC 80A7C1FC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 003E0 80A7C200 0C29EFE8 */ jal func_80A7BFA0 -/* 003E4 80A7C204 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000 -/* 003E8 80A7C208 10400007 */ beq $v0, $zero, .L80A7C228 -/* 003EC 80A7C20C 00000000 */ nop -/* 003F0 80A7C210 962D0314 */ lhu $t5, 0x0314($s1) ## 00000314 -/* 003F4 80A7C214 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00 -/* 003F8 80A7C218 3C0180A8 */ lui $at, %hi(D_80A7DEB0) ## $at = 80A80000 -/* 003FC 80A7C21C 35AE0010 */ ori $t6, $t5, 0x0010 ## $t6 = 00000010 -/* 00400 80A7C220 A62E0314 */ sh $t6, 0x0314($s1) ## 00000314 -/* 00404 80A7C224 E428DEB0 */ swc1 $f8, %lo(D_80A7DEB0)($at) -.L80A7C228: -/* 00408 80A7C228 1654001A */ bne $s2, $s4, .L80A7C294 -/* 0040C 80A7C22C 00000000 */ nop -/* 00410 80A7C230 A6200034 */ sh $zero, 0x0034($s1) ## 00000034 -/* 00414 80A7C234 862F0034 */ lh $t7, 0x0034($s1) ## 00000034 -/* 00418 80A7C238 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000 -/* 0041C 80A7C23C 26721C24 */ addiu $s2, $s3, 0x1C24 ## $s2 = 00001C24 -/* 00420 80A7C240 A62F00B8 */ sh $t7, 0x00B8($s1) ## 000000B8 -/* 00424 80A7C244 C62A0028 */ lwc1 $f10, 0x0028($s1) ## 00000028 -.L80A7C248: -/* 00428 80A7C248 8E270024 */ lw $a3, 0x0024($s1) ## 00000024 -/* 0042C 80A7C24C 24090003 */ addiu $t1, $zero, 0x0003 ## $t1 = 00000003 -/* 00430 80A7C250 E7AA0010 */ swc1 $f10, 0x0010($sp) -/* 00434 80A7C254 C630002C */ lwc1 $f16, 0x002C($s1) ## 0000002C -/* 00438 80A7C258 02402025 */ or $a0, $s2, $zero ## $a0 = 00001C24 -/* 0043C 80A7C25C 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000 -/* 00440 80A7C260 E7B00014 */ swc1 $f16, 0x0014($sp) -/* 00444 80A7C264 863800B4 */ lh $t8, 0x00B4($s1) ## 000000B4 -/* 00448 80A7C268 24060020 */ addiu $a2, $zero, 0x0020 ## $a2 = 00000020 -/* 0044C 80A7C26C AFB80018 */ sw $t8, 0x0018($sp) -/* 00450 80A7C270 863900B6 */ lh $t9, 0x00B6($s1) ## 000000B6 -/* 00454 80A7C274 AFB9001C */ sw $t9, 0x001C($sp) -/* 00458 80A7C278 862800B8 */ lh $t0, 0x00B8($s1) ## 000000B8 -/* 0045C 80A7C27C AFA90024 */ sw $t1, 0x0024($sp) -/* 00460 80A7C280 0C00C7D4 */ jal Actor_Spawn - ## ActorSpawn -/* 00464 80A7C284 AFA80020 */ sw $t0, 0x0020($sp) -/* 00468 80A7C288 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001 -/* 0046C 80A7C28C 5614FFEE */ bnel $s0, $s4, .L80A7C248 -/* 00470 80A7C290 C62A0028 */ lwc1 $f10, 0x0028($s1) ## 00000028 -.L80A7C294: -/* 00474 80A7C294 0C29F4E7 */ jal func_80A7D39C -/* 00478 80A7C298 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 0047C 80A7C29C 3C0280A8 */ lui $v0, %hi(D_80A7DEB8) ## $v0 = 80A80000 -/* 00480 80A7C2A0 2442DEB8 */ addiu $v0, $v0, %lo(D_80A7DEB8) ## $v0 = 80A7DEB8 -/* 00484 80A7C2A4 844A0000 */ lh $t2, 0x0000($v0) ## 80A7DEB8 -/* 00488 80A7C2A8 254B0001 */ addiu $t3, $t2, 0x0001 ## $t3 = 00000001 -/* 0048C 80A7C2AC 10000019 */ beq $zero, $zero, .L80A7C314 -/* 00490 80A7C2B0 A44B0000 */ sh $t3, 0x0000($v0) ## 80A7DEB8 -.L80A7C2B4: -/* 00494 80A7C2B4 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00498 80A7C2B8 00000000 */ nop -/* 0049C 80A7C2BC 3C0180A8 */ lui $at, %hi(D_80A7DFD4) ## $at = 80A80000 -/* 004A0 80A7C2C0 C432DFD4 */ lwc1 $f18, %lo(D_80A7DFD4)($at) -/* 004A4 80A7C2C4 4612003C */ c.lt.s $f0, $f18 -/* 004A8 80A7C2C8 00000000 */ nop -/* 004AC 80A7C2CC 45000005 */ bc1f .L80A7C2E4 -/* 004B0 80A7C2D0 00000000 */ nop -/* 004B4 80A7C2D4 0C29F0E8 */ jal func_80A7C3A0 -/* 004B8 80A7C2D8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 004BC 80A7C2DC 1000000E */ beq $zero, $zero, .L80A7C318 -/* 004C0 80A7C2E0 8FBF0044 */ lw $ra, 0x0044($sp) -.L80A7C2E4: -/* 004C4 80A7C2E4 3C0180A8 */ lui $at, %hi(D_80A7DFD8) ## $at = 80A80000 -/* 004C8 80A7C2E8 C424DFD8 */ lwc1 $f4, %lo(D_80A7DFD8)($at) -/* 004CC 80A7C2EC 4604003C */ c.lt.s $f0, $f4 -/* 004D0 80A7C2F0 00000000 */ nop -/* 004D4 80A7C2F4 45000005 */ bc1f .L80A7C30C -/* 004D8 80A7C2F8 00000000 */ nop -/* 004DC 80A7C2FC 0C29F166 */ jal func_80A7C598 -/* 004E0 80A7C300 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 004E4 80A7C304 10000004 */ beq $zero, $zero, .L80A7C318 -/* 004E8 80A7C308 8FBF0044 */ lw $ra, 0x0044($sp) -.L80A7C30C: -/* 004EC 80A7C30C 0C29F206 */ jal func_80A7C818 -/* 004F0 80A7C310 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -.L80A7C314: -/* 004F4 80A7C314 8FBF0044 */ lw $ra, 0x0044($sp) -.L80A7C318: -/* 004F8 80A7C318 8FB00030 */ lw $s0, 0x0030($sp) -/* 004FC 80A7C31C 8FB10034 */ lw $s1, 0x0034($sp) -/* 00500 80A7C320 8FB20038 */ lw $s2, 0x0038($sp) -/* 00504 80A7C324 8FB3003C */ lw $s3, 0x003C($sp) -/* 00508 80A7C328 8FB40040 */ lw $s4, 0x0040($sp) -/* 0050C 80A7C32C 03E00008 */ jr $ra -/* 00510 80A7C330 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Update.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Update.s deleted file mode 100644 index fe88c24816..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Update.s +++ /dev/null @@ -1,168 +0,0 @@ -glabel EnInsect_Update -/* 01DE0 80A7DC00 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 01DE4 80A7DC04 AFBF0024 */ sw $ra, 0x0024($sp) -/* 01DE8 80A7DC08 AFB00020 */ sw $s0, 0x0020($sp) -/* 01DEC 80A7DC0C AFA5002C */ sw $a1, 0x002C($sp) -/* 01DF0 80A7DC10 8C82011C */ lw $v0, 0x011C($a0) ## 0000011C -/* 01DF4 80A7DC14 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 01DF8 80A7DC18 50400008 */ beql $v0, $zero, .L80A7DC3C -/* 01DFC 80A7DC1C 8602031A */ lh $v0, 0x031A($s0) ## 0000031A -/* 01E00 80A7DC20 8C4E0130 */ lw $t6, 0x0130($v0) ## 00000130 -/* 01E04 80A7DC24 55C00005 */ bnel $t6, $zero, .L80A7DC3C -/* 01E08 80A7DC28 8602031A */ lh $v0, 0x031A($s0) ## 0000031A -/* 01E0C 80A7DC2C 50820003 */ beql $a0, $v0, .L80A7DC3C -/* 01E10 80A7DC30 8602031A */ lh $v0, 0x031A($s0) ## 0000031A -/* 01E14 80A7DC34 AC80011C */ sw $zero, 0x011C($a0) ## 0000011C -/* 01E18 80A7DC38 8602031A */ lh $v0, 0x031A($s0) ## 0000031A -.L80A7DC3C: -/* 01E1C 80A7DC3C 18400002 */ blez $v0, .L80A7DC48 -/* 01E20 80A7DC40 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF -/* 01E24 80A7DC44 A60F031A */ sh $t7, 0x031A($s0) ## 0000031A -.L80A7DC48: -/* 01E28 80A7DC48 8602031C */ lh $v0, 0x031C($s0) ## 0000031C -/* 01E2C 80A7DC4C 18400002 */ blez $v0, .L80A7DC58 -/* 01E30 80A7DC50 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF -/* 01E34 80A7DC54 A618031C */ sh $t8, 0x031C($s0) ## 0000031C -.L80A7DC58: -/* 01E38 80A7DC58 8E190310 */ lw $t9, 0x0310($s0) ## 00000310 -/* 01E3C 80A7DC5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01E40 80A7DC60 8FA5002C */ lw $a1, 0x002C($sp) -/* 01E44 80A7DC64 0320F809 */ jalr $ra, $t9 -/* 01E48 80A7DC68 00000000 */ nop -/* 01E4C 80A7DC6C 8E080130 */ lw $t0, 0x0130($s0) ## 00000130 -/* 01E50 80A7DC70 51000071 */ beql $t0, $zero, .L80A7DE38 -/* 01E54 80A7DC74 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01E58 80A7DC78 0C00B638 */ jal Actor_MoveForward - -/* 01E5C 80A7DC7C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01E60 80A7DC80 96030314 */ lhu $v1, 0x0314($s0) ## 00000314 -/* 01E64 80A7DC84 30690100 */ andi $t1, $v1, 0x0100 ## $t1 = 00000000 -/* 01E68 80A7DC88 1120000E */ beq $t1, $zero, .L80A7DCC4 -/* 01E6C 80A7DC8C 306A0001 */ andi $t2, $v1, 0x0001 ## $t2 = 00000000 -/* 01E70 80A7DC90 11400009 */ beq $t2, $zero, .L80A7DCB8 -/* 01E74 80A7DC94 00000000 */ nop -/* 01E78 80A7DC98 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -/* 01E7C 80A7DC9C 316C0001 */ andi $t4, $t3, 0x0001 ## $t4 = 00000000 -/* 01E80 80A7DCA0 51800009 */ beql $t4, $zero, .L80A7DCC8 -/* 01E84 80A7DCA4 306D0001 */ andi $t5, $v1, 0x0001 ## $t5 = 00000000 -/* 01E88 80A7DCA8 0C29F016 */ jal func_80A7C058 -/* 01E8C 80A7DCAC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01E90 80A7DCB0 10000004 */ beq $zero, $zero, .L80A7DCC4 -/* 01E94 80A7DCB4 96030314 */ lhu $v1, 0x0314($s0) ## 00000314 -.L80A7DCB8: -/* 01E98 80A7DCB8 0C29F016 */ jal func_80A7C058 -/* 01E9C 80A7DCBC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01EA0 80A7DCC0 96030314 */ lhu $v1, 0x0314($s0) ## 00000314 -.L80A7DCC4: -/* 01EA4 80A7DCC4 306D0001 */ andi $t5, $v1, 0x0001 ## $t5 = 00000000 -.L80A7DCC8: -/* 01EA8 80A7DCC8 11A00002 */ beq $t5, $zero, .L80A7DCD4 -/* 01EAC 80A7DCCC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 01EB0 80A7DCD0 24020004 */ addiu $v0, $zero, 0x0004 ## $v0 = 00000004 -.L80A7DCD4: -/* 01EB4 80A7DCD4 306E0002 */ andi $t6, $v1, 0x0002 ## $t6 = 00000000 -/* 01EB8 80A7DCD8 11C00002 */ beq $t6, $zero, .L80A7DCE4 -/* 01EBC 80A7DCDC 8FA4002C */ lw $a0, 0x002C($sp) -/* 01EC0 80A7DCE0 34420001 */ ori $v0, $v0, 0x0001 ## $v0 = 00000005 -.L80A7DCE4: -/* 01EC4 80A7DCE4 10400008 */ beq $v0, $zero, .L80A7DD08 -/* 01EC8 80A7DCE8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 01ECC 80A7DCEC 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 01ED0 80A7DCF0 34420040 */ ori $v0, $v0, 0x0040 ## $v0 = 00000045 -/* 01ED4 80A7DCF4 AFA20014 */ sw $v0, 0x0014($sp) -/* 01ED8 80A7DCF8 3C064100 */ lui $a2, 0x4100 ## $a2 = 41000000 -/* 01EDC 80A7DCFC 3C0740A0 */ lui $a3, 0x40A0 ## $a3 = 40A00000 -/* 01EE0 80A7DD00 0C00B92D */ jal func_8002E4B4 -/* 01EE4 80A7DD04 E7A40010 */ swc1 $f4, 0x0010($sp) -.L80A7DD08: -/* 01EE8 80A7DD08 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01EEC 80A7DD0C 0C00BD04 */ jal func_8002F410 -/* 01EF0 80A7DD10 8FA5002C */ lw $a1, 0x002C($sp) -/* 01EF4 80A7DD14 10400011 */ beq $v0, $zero, .L80A7DD5C -/* 01EF8 80A7DD18 3C014248 */ lui $at, 0x4248 ## $at = 42480000 -/* 01EFC 80A7DD1C 8602001C */ lh $v0, 0x001C($s0) ## 0000001C -/* 01F00 80A7DD20 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 01F04 80A7DD24 AE000118 */ sw $zero, 0x0118($s0) ## 00000118 -/* 01F08 80A7DD28 30420003 */ andi $v0, $v0, 0x0003 ## $v0 = 00000000 -/* 01F0C 80A7DD2C 10410003 */ beq $v0, $at, .L80A7DD3C -/* 01F10 80A7DD30 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 01F14 80A7DD34 14410005 */ bne $v0, $at, .L80A7DD4C -/* 01F18 80A7DD38 00000000 */ nop -.L80A7DD3C: -/* 01F1C 80A7DD3C 0C00B55C */ jal Actor_Kill - -/* 01F20 80A7DD40 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01F24 80A7DD44 10000039 */ beq $zero, $zero, .L80A7DE2C -/* 01F28 80A7DD48 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80A7DD4C: -/* 01F2C 80A7DD4C 0C29F299 */ jal func_80A7CA64 -/* 01F30 80A7DD50 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01F34 80A7DD54 10000035 */ beq $zero, $zero, .L80A7DE2C -/* 01F38 80A7DD58 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80A7DD5C: -/* 01F3C 80A7DD5C C6060090 */ lwc1 $f6, 0x0090($s0) ## 00000090 -/* 01F40 80A7DD60 44814000 */ mtc1 $at, $f8 ## $f8 = 0.00 -/* 01F44 80A7DD64 00000000 */ nop -/* 01F48 80A7DD68 4608303C */ c.lt.s $f6, $f8 -/* 01F4C 80A7DD6C 00000000 */ nop -/* 01F50 80A7DD70 4502002E */ bc1fl .L80A7DE2C -/* 01F54 80A7DD74 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01F58 80A7DD78 8E180310 */ lw $t8, 0x0310($s0) ## 00000310 -/* 01F5C 80A7DD7C 3C0F80A8 */ lui $t7, %hi(func_80A7CAD0) ## $t7 = 80A80000 -/* 01F60 80A7DD80 25EFCAD0 */ addiu $t7, $t7, %lo(func_80A7CAD0) ## $t7 = 80A7CAD0 -/* 01F64 80A7DD84 51F80029 */ beql $t7, $t8, .L80A7DE2C -/* 01F68 80A7DD88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01F6C 80A7DD8C 96030314 */ lhu $v1, 0x0314($s0) ## 00000314 -/* 01F70 80A7DD90 30790020 */ andi $t9, $v1, 0x0020 ## $t9 = 00000000 -/* 01F74 80A7DD94 5720000C */ bnel $t9, $zero, .L80A7DDC8 -/* 01F78 80A7DD98 30690008 */ andi $t1, $v1, 0x0008 ## $t1 = 00000000 -/* 01F7C 80A7DD9C 8608031C */ lh $t0, 0x031C($s0) ## 0000031C -/* 01F80 80A7DDA0 8FA4002C */ lw $a0, 0x002C($sp) -/* 01F84 80A7DDA4 2606014C */ addiu $a2, $s0, 0x014C ## $a2 = 0000014C -/* 01F88 80A7DDA8 290100B4 */ slti $at, $t0, 0x00B4 -/* 01F8C 80A7DDAC 10200005 */ beq $at, $zero, .L80A7DDC4 -/* 01F90 80A7DDB0 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 01F94 80A7DDB4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 01F98 80A7DDB8 0C017713 */ jal CollisionCheck_SetOC - ## CollisionCheck_setOT -/* 01F9C 80A7DDBC 00812821 */ addu $a1, $a0, $at -/* 01FA0 80A7DDC0 96030314 */ lhu $v1, 0x0314($s0) ## 00000314 -.L80A7DDC4: -/* 01FA4 80A7DDC4 30690008 */ andi $t1, $v1, 0x0008 ## $t1 = 00000000 -.L80A7DDC8: -/* 01FA8 80A7DDC8 15200017 */ bne $t1, $zero, .L80A7DE28 -/* 01FAC 80A7DDCC 3C0A80A8 */ lui $t2, %hi(D_80A7DEB4) ## $t2 = 80A80000 -/* 01FB0 80A7DDD0 854ADEB4 */ lh $t2, %lo(D_80A7DEB4)($t2) -/* 01FB4 80A7DDD4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01FB8 80A7DDD8 29410004 */ slti $at, $t2, 0x0004 -/* 01FBC 80A7DDDC 50200013 */ beql $at, $zero, .L80A7DE2C -/* 01FC0 80A7DDE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01FC4 80A7DDE4 0C29EF9B */ jal func_80A7BE6C -/* 01FC8 80A7DDE8 8FA5002C */ lw $a1, 0x002C($sp) -/* 01FCC 80A7DDEC 1040000E */ beq $v0, $zero, .L80A7DE28 -/* 01FD0 80A7DDF0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01FD4 80A7DDF4 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000 -/* 01FD8 80A7DDF8 44815000 */ mtc1 $at, $f10 ## $f10 = 30.00 -/* 01FDC 80A7DDFC 8FA5002C */ lw $a1, 0x002C($sp) -/* 01FE0 80A7DE00 2406007E */ addiu $a2, $zero, 0x007E ## $a2 = 0000007E -/* 01FE4 80A7DE04 3C074270 */ lui $a3, 0x4270 ## $a3 = 42700000 -/* 01FE8 80A7DE08 0C00BD0D */ jal func_8002F434 -/* 01FEC 80A7DE0C E7AA0010 */ swc1 $f10, 0x0010($sp) -/* 01FF0 80A7DE10 10400005 */ beq $v0, $zero, .L80A7DE28 -/* 01FF4 80A7DE14 3C0280A8 */ lui $v0, %hi(D_80A7DEB4) ## $v0 = 80A80000 -/* 01FF8 80A7DE18 2442DEB4 */ addiu $v0, $v0, %lo(D_80A7DEB4) ## $v0 = 80A7DEB4 -/* 01FFC 80A7DE1C 844B0000 */ lh $t3, 0x0000($v0) ## 80A7DEB4 -/* 02000 80A7DE20 256C0001 */ addiu $t4, $t3, 0x0001 ## $t4 = 00000001 -/* 02004 80A7DE24 A44C0000 */ sh $t4, 0x0000($v0) ## 80A7DEB4 -.L80A7DE28: -/* 02008 80A7DE28 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80A7DE2C: -/* 0200C 80A7DE2C 0C00B56E */ jal Actor_SetHeight - -/* 02010 80A7DE30 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 02014 80A7DE34 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DE38: -/* 02018 80A7DE38 8FB00020 */ lw $s0, 0x0020($sp) -/* 0201C 80A7DE3C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 02020 80A7DE40 03E00008 */ jr $ra -/* 02024 80A7DE44 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE20.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE20.s deleted file mode 100644 index cf40a27ebb..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE20.s +++ /dev/null @@ -1,9 +0,0 @@ -glabel func_80A7BE20 -/* 00000 80A7BE20 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 00004 80A7BE24 3C1980A8 */ lui $t9, %hi(D_80A7DF10) ## $t9 = 80A80000 -/* 00008 80A7BE28 31CF0003 */ andi $t7, $t6, 0x0003 ## $t7 = 00000000 -/* 0000C 80A7BE2C 000FC040 */ sll $t8, $t7, 1 -/* 00010 80A7BE30 0338C821 */ addu $t9, $t9, $t8 -/* 00014 80A7BE34 9739DF10 */ lhu $t9, %lo(D_80A7DF10)($t9) -/* 00018 80A7BE38 03E00008 */ jr $ra -/* 0001C 80A7BE3C A4990314 */ sh $t9, 0x0314($a0) ## 00000314 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE40.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE40.s deleted file mode 100644 index 8814fbed1b..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE40.s +++ /dev/null @@ -1,12 +0,0 @@ -glabel func_80A7BE40 -/* 00020 80A7BE40 C4840000 */ lwc1 $f4, 0x0000($a0) ## 00000000 -/* 00024 80A7BE44 C4A60000 */ lwc1 $f6, 0x0000($a1) ## 00000000 -/* 00028 80A7BE48 C4880008 */ lwc1 $f8, 0x0008($a0) ## 00000008 -/* 0002C 80A7BE4C C4AA0008 */ lwc1 $f10, 0x0008($a1) ## 00000008 -/* 00030 80A7BE50 46062081 */ sub.s $f2, $f4, $f6 -/* 00034 80A7BE54 460A4301 */ sub.s $f12, $f8, $f10 -/* 00038 80A7BE58 46021402 */ mul.s $f16, $f2, $f2 -/* 0003C 80A7BE5C 00000000 */ nop -/* 00040 80A7BE60 460C6482 */ mul.s $f18, $f12, $f12 -/* 00044 80A7BE64 03E00008 */ jr $ra -/* 00048 80A7BE68 46128000 */ add.s $f0, $f16, $f18 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE6C.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE6C.s deleted file mode 100644 index d495ee7569..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE6C.s +++ /dev/null @@ -1,63 +0,0 @@ -glabel func_80A7BE6C -/* 0004C 80A7BE6C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00050 80A7BE70 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00054 80A7BE74 3C014200 */ lui $at, 0x4200 ## $at = 42000000 -/* 00058 80A7BE78 44813000 */ mtc1 $at, $f6 ## $f6 = 32.00 -/* 0005C 80A7BE7C C4840090 */ lwc1 $f4, 0x0090($a0) ## 00000090 -/* 00060 80A7BE80 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00064 80A7BE84 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 00068 80A7BE88 4606203C */ c.lt.s $f4, $f6 -/* 0006C 80A7BE8C 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000 -/* 00070 80A7BE90 4502002D */ bc1fl .L80A7BF48 -/* 00074 80A7BE94 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00078 80A7BE98 8484008A */ lh $a0, 0x008A($a0) ## 0000008A -/* 0007C 80A7BE9C AFA60030 */ sw $a2, 0x0030($sp) -/* 00080 80A7BEA0 AFA20028 */ sw $v0, 0x0028($sp) -/* 00084 80A7BEA4 00812021 */ addu $a0, $a0, $at -/* 00088 80A7BEA8 00042400 */ sll $a0, $a0, 16 -/* 0008C 80A7BEAC 0C01DE1C */ jal Math_Sins - ## sins? -/* 00090 80A7BEB0 00042403 */ sra $a0, $a0, 16 -/* 00094 80A7BEB4 3C014180 */ lui $at, 0x4180 ## $at = 41800000 -/* 00098 80A7BEB8 44814000 */ mtc1 $at, $f8 ## $f8 = 16.00 -/* 0009C 80A7BEBC 8FA20028 */ lw $v0, 0x0028($sp) -/* 000A0 80A7BEC0 8FAE0030 */ lw $t6, 0x0030($sp) -/* 000A4 80A7BEC4 46080282 */ mul.s $f10, $f0, $f8 -/* 000A8 80A7BEC8 C4500024 */ lwc1 $f16, 0x0024($v0) ## 00000024 -/* 000AC 80A7BECC 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000 -/* 000B0 80A7BED0 46105480 */ add.s $f18, $f10, $f16 -/* 000B4 80A7BED4 E7B2001C */ swc1 $f18, 0x001C($sp) -/* 000B8 80A7BED8 C4440028 */ lwc1 $f4, 0x0028($v0) ## 00000028 -/* 000BC 80A7BEDC E7A40020 */ swc1 $f4, 0x0020($sp) -/* 000C0 80A7BEE0 85C4008A */ lh $a0, 0x008A($t6) ## 0000008A -/* 000C4 80A7BEE4 00812021 */ addu $a0, $a0, $at -/* 000C8 80A7BEE8 00042400 */ sll $a0, $a0, 16 -/* 000CC 80A7BEEC 0C01DE0D */ jal Math_Coss - ## coss? -/* 000D0 80A7BEF0 00042403 */ sra $a0, $a0, 16 -/* 000D4 80A7BEF4 3C014180 */ lui $at, 0x4180 ## $at = 41800000 -/* 000D8 80A7BEF8 44813000 */ mtc1 $at, $f6 ## $f6 = 16.00 -/* 000DC 80A7BEFC 8FA20028 */ lw $v0, 0x0028($sp) -/* 000E0 80A7BF00 8FA50030 */ lw $a1, 0x0030($sp) -/* 000E4 80A7BF04 46060202 */ mul.s $f8, $f0, $f6 -/* 000E8 80A7BF08 C44A002C */ lwc1 $f10, 0x002C($v0) ## 0000002C -/* 000EC 80A7BF0C 27A4001C */ addiu $a0, $sp, 0x001C ## $a0 = FFFFFFEC -/* 000F0 80A7BF10 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024 -/* 000F4 80A7BF14 460A4400 */ add.s $f16, $f8, $f10 -/* 000F8 80A7BF18 0C29EF90 */ jal func_80A7BE40 -/* 000FC 80A7BF1C E7B00024 */ swc1 $f16, 0x0024($sp) -/* 00100 80A7BF20 3C0143C8 */ lui $at, 0x43C8 ## $at = 43C80000 -/* 00104 80A7BF24 44819000 */ mtc1 $at, $f18 ## $f18 = 400.00 -/* 00108 80A7BF28 00000000 */ nop -/* 0010C 80A7BF2C 4612003E */ c.le.s $f0, $f18 -/* 00110 80A7BF30 00000000 */ nop -/* 00114 80A7BF34 45020004 */ bc1fl .L80A7BF48 -/* 00118 80A7BF38 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 0011C 80A7BF3C 10000002 */ beq $zero, $zero, .L80A7BF48 -/* 00120 80A7BF40 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 00124 80A7BF44 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80A7BF48: -/* 00128 80A7BF48 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0012C 80A7BF4C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 00130 80A7BF50 03E00008 */ jr $ra -/* 00134 80A7BF54 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BF58.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BF58.s deleted file mode 100644 index 4aa4ee8a1a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BF58.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel func_80A7BF58 -/* 00138 80A7BF58 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 0013C 80A7BF5C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 00140 80A7BF60 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00144 80A7BF64 AFA40028 */ sw $a0, 0x0028($sp) -/* 00148 80A7BF68 3C050403 */ lui $a1, 0x0403 ## $a1 = 04030000 -/* 0014C 80A7BF6C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 00150 80A7BF70 44070000 */ mfc1 $a3, $f0 -/* 00154 80A7BF74 AFAE0014 */ sw $t6, 0x0014($sp) -/* 00158 80A7BF78 24A541FC */ addiu $a1, $a1, 0x41FC ## $a1 = 040341FC -/* 0015C 80A7BF7C 248401AC */ addiu $a0, $a0, 0x01AC ## $a0 = 000001AC -/* 00160 80A7BF80 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000 -/* 00164 80A7BF84 E7A00010 */ swc1 $f0, 0x0010($sp) -/* 00168 80A7BF88 0C029468 */ jal SkelAnime_ChangeAnim - -/* 0016C 80A7BF8C E7A00018 */ swc1 $f0, 0x0018($sp) -/* 00170 80A7BF90 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00174 80A7BF94 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 00178 80A7BF98 03E00008 */ jr $ra -/* 0017C 80A7BF9C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BFA0.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BFA0.s deleted file mode 100644 index f0caf3aa73..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BFA0.s +++ /dev/null @@ -1,50 +0,0 @@ -glabel func_80A7BFA0 -/* 00180 80A7BFA0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00184 80A7BFA4 AFBF002C */ sw $ra, 0x002C($sp) -/* 00188 80A7BFA8 AFB30028 */ sw $s3, 0x0028($sp) -/* 0018C 80A7BFAC AFB20024 */ sw $s2, 0x0024($sp) -/* 00190 80A7BFB0 AFB10020 */ sw $s1, 0x0020($sp) -/* 00194 80A7BFB4 AFB0001C */ sw $s0, 0x001C($sp) -/* 00198 80A7BFB8 F7B40010 */ sdc1 $f20, 0x0010($sp) -/* 0019C 80A7BFBC 8CB01C6C */ lw $s0, 0x1C6C($a1) ## 00001C6C -/* 001A0 80A7BFC0 3C0145C8 */ lui $at, 0x45C8 ## $at = 45C80000 -/* 001A4 80A7BFC4 4481A000 */ mtc1 $at, $f20 ## $f20 = 6400.00 -/* 001A8 80A7BFC8 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000 -/* 001AC 80A7BFCC 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000 -/* 001B0 80A7BFD0 12000018 */ beq $s0, $zero, .L80A7C034 -/* 001B4 80A7BFD4 AC800320 */ sw $zero, 0x0320($a0) ## 00000320 -/* 001B8 80A7BFD8 241201CF */ addiu $s2, $zero, 0x01CF ## $s2 = 000001CF -/* 001BC 80A7BFDC 860E0000 */ lh $t6, 0x0000($s0) ## 00000000 -.L80A7BFE0: -/* 001C0 80A7BFE0 564E0012 */ bnel $s2, $t6, .L80A7C02C -/* 001C4 80A7BFE4 8E100124 */ lw $s0, 0x0124($s0) ## 00000124 -/* 001C8 80A7BFE8 C62C0024 */ lwc1 $f12, 0x0024($s1) ## 00000024 -/* 001CC 80A7BFEC C62E002C */ lwc1 $f14, 0x002C($s1) ## 0000002C -/* 001D0 80A7BFF0 8E060024 */ lw $a2, 0x0024($s0) ## 00000024 -/* 001D4 80A7BFF4 0C032D65 */ jal func_800CB594 -/* 001D8 80A7BFF8 8E07002C */ lw $a3, 0x002C($s0) ## 0000002C -/* 001DC 80A7BFFC 4614003C */ c.lt.s $f0, $f20 -/* 001E0 80A7C000 00000000 */ nop -/* 001E4 80A7C004 45020009 */ bc1fl .L80A7C02C -/* 001E8 80A7C008 8E100124 */ lw $s0, 0x0124($s0) ## 00000124 -/* 001EC 80A7C00C 822F0003 */ lb $t7, 0x0003($s1) ## 00000003 -/* 001F0 80A7C010 82180003 */ lb $t8, 0x0003($s0) ## 00000003 -/* 001F4 80A7C014 55F80005 */ bnel $t7, $t8, .L80A7C02C -/* 001F8 80A7C018 8E100124 */ lw $s0, 0x0124($s0) ## 00000124 -/* 001FC 80A7C01C 24130001 */ addiu $s3, $zero, 0x0001 ## $s3 = 00000001 -/* 00200 80A7C020 46000506 */ mov.s $f20, $f0 -/* 00204 80A7C024 AE300320 */ sw $s0, 0x0320($s1) ## 00000320 -/* 00208 80A7C028 8E100124 */ lw $s0, 0x0124($s0) ## 00000124 -.L80A7C02C: -/* 0020C 80A7C02C 5600FFEC */ bnel $s0, $zero, .L80A7BFE0 -/* 00210 80A7C030 860E0000 */ lh $t6, 0x0000($s0) ## 00000000 -.L80A7C034: -/* 00214 80A7C034 8FBF002C */ lw $ra, 0x002C($sp) -/* 00218 80A7C038 02601025 */ or $v0, $s3, $zero ## $v0 = 00000001 -/* 0021C 80A7C03C 8FB30028 */ lw $s3, 0x0028($sp) -/* 00220 80A7C040 D7B40010 */ ldc1 $f20, 0x0010($sp) -/* 00224 80A7C044 8FB0001C */ lw $s0, 0x001C($sp) -/* 00228 80A7C048 8FB10020 */ lw $s1, 0x0020($sp) -/* 0022C 80A7C04C 8FB20024 */ lw $s2, 0x0024($sp) -/* 00230 80A7C050 03E00008 */ jr $ra -/* 00234 80A7C054 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C058.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C058.s deleted file mode 100644 index 5af9c9bf5f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C058.s +++ /dev/null @@ -1,48 +0,0 @@ -.late_rodata -glabel D_80A7DFCC - .float 0.1 - -.text -glabel func_80A7C058 -/* 00238 80A7C058 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0023C 80A7C05C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00240 80A7C060 8482031E */ lh $v0, 0x031E($a0) ## 0000031E -/* 00244 80A7C064 240539F0 */ addiu $a1, $zero, 0x39F0 ## $a1 = 000039F0 -/* 00248 80A7C068 18400003 */ blez $v0, .L80A7C078 -/* 0024C 80A7C06C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 00250 80A7C070 1000001A */ beq $zero, $zero, .L80A7C0DC -/* 00254 80A7C074 A48E031E */ sh $t6, 0x031E($a0) ## 0000031E -.L80A7C078: -/* 00258 80A7C078 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 0025C 80A7C07C AFA40018 */ sw $a0, 0x0018($sp) -/* 00260 80A7C080 8FA40018 */ lw $a0, 0x0018($sp) -/* 00264 80A7C084 3C0180A8 */ lui $at, %hi(D_80A7DFCC) ## $at = 80A80000 -/* 00268 80A7C088 C42CDFCC */ lwc1 $f12, %lo(D_80A7DFCC)($at) -/* 0026C 80A7C08C C48001C8 */ lwc1 $f0, 0x01C8($a0) ## 000001C8 -/* 00270 80A7C090 3C014040 */ lui $at, 0x4040 ## $at = 40400000 -/* 00274 80A7C094 44812000 */ mtc1 $at, $f4 ## $f4 = 3.00 -/* 00278 80A7C098 460C003C */ c.lt.s $f0, $f12 -/* 0027C 80A7C09C 24080002 */ addiu $t0, $zero, 0x0002 ## $t0 = 00000002 -/* 00280 80A7C0A0 45020004 */ bc1fl .L80A7C0B4 -/* 00284 80A7C0A4 46000086 */ mov.s $f2, $f0 -/* 00288 80A7C0A8 10000002 */ beq $zero, $zero, .L80A7C0B4 -/* 0028C 80A7C0AC 46006086 */ mov.s $f2, $f12 -/* 00290 80A7C0B0 46000086 */ mov.s $f2, $f0 -.L80A7C0B4: -/* 00294 80A7C0B4 46022183 */ div.s $f6, $f4, $f2 -/* 00298 80A7C0B8 4600320D */ trunc.w.s $f8, $f6 -/* 0029C 80A7C0BC 44184000 */ mfc1 $t8, $f8 -/* 002A0 80A7C0C0 00000000 */ nop -/* 002A4 80A7C0C4 A498031E */ sh $t8, 0x031E($a0) ## 0000031E -/* 002A8 80A7C0C8 8499031E */ lh $t9, 0x031E($a0) ## 0000031E -/* 002AC 80A7C0CC 2B210002 */ slti $at, $t9, 0x0002 -/* 002B0 80A7C0D0 50200003 */ beql $at, $zero, .L80A7C0E0 -/* 002B4 80A7C0D4 8FBF0014 */ lw $ra, 0x0014($sp) -/* 002B8 80A7C0D8 A488031E */ sh $t0, 0x031E($a0) ## 0000031E -.L80A7C0DC: -/* 002BC 80A7C0DC 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7C0E0: -/* 002C0 80A7C0E0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 002C4 80A7C0E4 03E00008 */ jr $ra -/* 002C8 80A7C0E8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3A0.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3A0.s deleted file mode 100644 index 95d9ae12de..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3A0.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_80A7C3A0 -/* 00580 80A7C3A0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00584 80A7C3A4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00588 80A7C3A8 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 0058C 80A7C3AC AFA60018 */ sw $a2, 0x0018($sp) -/* 00590 80A7C3B0 24040005 */ addiu $a0, $zero, 0x0005 ## $a0 = 00000005 -/* 00594 80A7C3B4 0C01DF64 */ jal Math_Rand_S16Offset - -/* 00598 80A7C3B8 24050023 */ addiu $a1, $zero, 0x0023 ## $a1 = 00000023 -/* 0059C 80A7C3BC 8FA40018 */ lw $a0, 0x0018($sp) -/* 005A0 80A7C3C0 0C29EFD6 */ jal func_80A7BF58 -/* 005A4 80A7C3C4 A482031A */ sh $v0, 0x031A($a0) ## 0000031A -/* 005A8 80A7C3C8 8FA60018 */ lw $a2, 0x0018($sp) -/* 005AC 80A7C3CC 3C0E80A8 */ lui $t6, %hi(func_80A7C3F4) ## $t6 = 80A80000 -/* 005B0 80A7C3D0 25CEC3F4 */ addiu $t6, $t6, %lo(func_80A7C3F4) ## $t6 = 80A7C3F4 -/* 005B4 80A7C3D4 94CF0314 */ lhu $t7, 0x0314($a2) ## 00000314 -/* 005B8 80A7C3D8 ACCE0310 */ sw $t6, 0x0310($a2) ## 00000310 -/* 005BC 80A7C3DC 35F80100 */ ori $t8, $t7, 0x0100 ## $t8 = 00000100 -/* 005C0 80A7C3E0 A4D80314 */ sh $t8, 0x0314($a2) ## 00000314 -/* 005C4 80A7C3E4 8FBF0014 */ lw $ra, 0x0014($sp) -/* 005C8 80A7C3E8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 005CC 80A7C3EC 03E00008 */ jr $ra -/* 005D0 80A7C3F0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3F4.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3F4.s deleted file mode 100644 index ba51b5c85a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3F4.s +++ /dev/null @@ -1,131 +0,0 @@ -.late_rodata -glabel D_80A7DFDC - .float 1.2 - -glabel D_80A7DFE0 - .float 0.8 - -glabel D_80A7DFE4 - .float 1.9 - -.text -glabel func_80A7C3F4 -/* 005D4 80A7C3F4 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 005D8 80A7C3F8 AFBF0024 */ sw $ra, 0x0024($sp) -/* 005DC 80A7C3FC AFB00020 */ sw $s0, 0x0020($sp) -/* 005E0 80A7C400 AFA5003C */ sw $a1, 0x003C($sp) -/* 005E4 80A7C404 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 005E8 80A7C408 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 005EC 80A7C40C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 005F0 80A7C410 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000 -/* 005F4 80A7C414 31CF0003 */ andi $t7, $t6, 0x0003 ## $t7 = 00000000 -/* 005F8 80A7C418 44050000 */ mfc1 $a1, $f0 -/* 005FC 80A7C41C A7AF002E */ sh $t7, 0x002E($sp) -/* 00600 80A7C420 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD -/* 00604 80A7C424 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 00608 80A7C428 3C073F00 */ lui $a3, 0x3F00 ## $a3 = 3F000000 -/* 0060C 80A7C42C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF - -/* 00610 80A7C430 E7A00010 */ swc1 $f0, 0x0010($sp) -/* 00614 80A7C434 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00618 80A7C438 00000000 */ nop -/* 0061C 80A7C43C 3C0180A8 */ lui $at, %hi(D_80A7DFDC) ## $at = 80A80000 -/* 00620 80A7C440 C426DFDC */ lwc1 $f6, %lo(D_80A7DFDC)($at) -/* 00624 80A7C444 C6040068 */ lwc1 $f4, 0x0068($s0) ## 00000068 -/* 00628 80A7C448 3C0180A8 */ lui $at, %hi(D_80A7DFE0) ## $at = 80A80000 -/* 0062C 80A7C44C C42ADFE0 */ lwc1 $f10, %lo(D_80A7DFE0)($at) -/* 00630 80A7C450 46062202 */ mul.s $f8, $f4, $f6 -/* 00634 80A7C454 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 00638 80A7C458 3C0180A8 */ lui $at, %hi(D_80A7DFE4) ## $at = 80A80000 -/* 0063C 80A7C45C 460A0402 */ mul.s $f16, $f0, $f10 -/* 00640 80A7C460 46088080 */ add.s $f2, $f16, $f8 -/* 00644 80A7C464 460C103C */ c.lt.s $f2, $f12 -/* 00648 80A7C468 00000000 */ nop -/* 0064C 80A7C46C 45000003 */ bc1f .L80A7C47C -/* 00650 80A7C470 00000000 */ nop -/* 00654 80A7C474 1000000A */ beq $zero, $zero, .L80A7C4A0 -/* 00658 80A7C478 E60C01C8 */ swc1 $f12, 0x01C8($s0) ## 000001C8 -.L80A7C47C: -/* 0065C 80A7C47C C42CDFE4 */ lwc1 $f12, %lo(D_80A7DFE4)($at) -/* 00660 80A7C480 4602603C */ c.lt.s $f12, $f2 -/* 00664 80A7C484 00000000 */ nop -/* 00668 80A7C488 45020004 */ bc1fl .L80A7C49C -/* 0066C 80A7C48C 46001006 */ mov.s $f0, $f2 -/* 00670 80A7C490 10000002 */ beq $zero, $zero, .L80A7C49C -/* 00674 80A7C494 46006006 */ mov.s $f0, $f12 -/* 00678 80A7C498 46001006 */ mov.s $f0, $f2 -.L80A7C49C: -/* 0067C 80A7C49C E60001C8 */ swc1 $f0, 0x01C8($s0) ## 000001C8 -.L80A7C4A0: -/* 00680 80A7C4A0 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00684 80A7C4A4 260401AC */ addiu $a0, $s0, 0x01AC ## $a0 = 000001AC -/* 00688 80A7C4A8 8619031A */ lh $t9, 0x031A($s0) ## 0000031A -/* 0068C 80A7C4AC 86180032 */ lh $t8, 0x0032($s0) ## 00000032 -/* 00690 80A7C4B0 1F200003 */ bgtz $t9, .L80A7C4C0 -/* 00694 80A7C4B4 A61800B6 */ sh $t8, 0x00B6($s0) ## 000000B6 -/* 00698 80A7C4B8 0C29F166 */ jal func_80A7C598 -/* 0069C 80A7C4BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80A7C4C0: -/* 006A0 80A7C4C0 96020314 */ lhu $v0, 0x0314($s0) ## 00000314 -/* 006A4 80A7C4C4 87A3002E */ lh $v1, 0x002E($sp) -/* 006A8 80A7C4C8 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 006AC 80A7C4CC 30480004 */ andi $t0, $v0, 0x0004 ## $t0 = 00000000 -/* 006B0 80A7C4D0 11000004 */ beq $t0, $zero, .L80A7C4E4 -/* 006B4 80A7C4D4 00000000 */ nop -/* 006B8 80A7C4D8 8609031C */ lh $t1, 0x031C($s0) ## 0000031C -/* 006BC 80A7C4DC 19200011 */ blez $t1, .L80A7C524 -/* 006C0 80A7C4E0 00000000 */ nop -.L80A7C4E4: -/* 006C4 80A7C4E4 10610004 */ beq $v1, $at, .L80A7C4F8 -/* 006C8 80A7C4E8 304A0001 */ andi $t2, $v0, 0x0001 ## $t2 = 00000000 -/* 006CC 80A7C4EC 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 006D0 80A7C4F0 54610011 */ bnel $v1, $at, .L80A7C538 -/* 006D4 80A7C4F4 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000 -.L80A7C4F8: -/* 006D8 80A7C4F8 5140000F */ beql $t2, $zero, .L80A7C538 -/* 006DC 80A7C4FC 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000 -/* 006E0 80A7C500 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -/* 006E4 80A7C504 3C0D80A8 */ lui $t5, %hi(D_80A7DEB8) ## $t5 = 80A80000 -/* 006E8 80A7C508 316C0001 */ andi $t4, $t3, 0x0001 ## $t4 = 00000000 -/* 006EC 80A7C50C 5180000A */ beql $t4, $zero, .L80A7C538 -/* 006F0 80A7C510 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000 -/* 006F4 80A7C514 85ADDEB8 */ lh $t5, %lo(D_80A7DEB8)($t5) -/* 006F8 80A7C518 29A10004 */ slti $at, $t5, 0x0004 -/* 006FC 80A7C51C 54200006 */ bnel $at, $zero, .L80A7C538 -/* 00700 80A7C520 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000 -.L80A7C524: -/* 00704 80A7C524 0C29F2F2 */ jal func_80A7CBC8 -/* 00708 80A7C528 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0070C 80A7C52C 10000016 */ beq $zero, $zero, .L80A7C588 -/* 00710 80A7C530 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00714 80A7C534 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000 -.L80A7C538: -/* 00718 80A7C538 11C00009 */ beq $t6, $zero, .L80A7C560 -/* 0071C 80A7C53C 3C014220 */ lui $at, 0x4220 ## $at = 42200000 -/* 00720 80A7C540 960F0088 */ lhu $t7, 0x0088($s0) ## 00000088 -/* 00724 80A7C544 31F80040 */ andi $t8, $t7, 0x0040 ## $t8 = 00000000 -/* 00728 80A7C548 53000006 */ beql $t8, $zero, .L80A7C564 -/* 0072C 80A7C54C C6120090 */ lwc1 $f18, 0x0090($s0) ## 00000090 -/* 00730 80A7C550 0C29F398 */ jal func_80A7CE60 -/* 00734 80A7C554 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00738 80A7C558 1000000B */ beq $zero, $zero, .L80A7C588 -/* 0073C 80A7C55C 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7C560: -/* 00740 80A7C560 C6120090 */ lwc1 $f18, 0x0090($s0) ## 00000090 -.L80A7C564: -/* 00744 80A7C564 44812000 */ mtc1 $at, $f4 ## $f4 = 0.00 -/* 00748 80A7C568 00000000 */ nop -/* 0074C 80A7C56C 4604903C */ c.lt.s $f18, $f4 -/* 00750 80A7C570 00000000 */ nop -/* 00754 80A7C574 45020004 */ bc1fl .L80A7C588 -/* 00758 80A7C578 8FBF0024 */ lw $ra, 0x0024($sp) -/* 0075C 80A7C57C 0C29F206 */ jal func_80A7C818 -/* 00760 80A7C580 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00764 80A7C584 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7C588: -/* 00768 80A7C588 8FB00020 */ lw $s0, 0x0020($sp) -/* 0076C 80A7C58C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 00770 80A7C590 03E00008 */ jr $ra -/* 00774 80A7C594 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C598.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C598.s deleted file mode 100644 index 1dd0b2ffc6..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C598.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_80A7C598 -/* 00778 80A7C598 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0077C 80A7C59C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00780 80A7C5A0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00784 80A7C5A4 AFA60018 */ sw $a2, 0x0018($sp) -/* 00788 80A7C5A8 2404000A */ addiu $a0, $zero, 0x000A ## $a0 = 0000000A -/* 0078C 80A7C5AC 0C01DF64 */ jal Math_Rand_S16Offset - -/* 00790 80A7C5B0 2405002D */ addiu $a1, $zero, 0x002D ## $a1 = 0000002D -/* 00794 80A7C5B4 8FA40018 */ lw $a0, 0x0018($sp) -/* 00798 80A7C5B8 0C29EFD6 */ jal func_80A7BF58 -/* 0079C 80A7C5BC A482031A */ sh $v0, 0x031A($a0) ## 0000031A -/* 007A0 80A7C5C0 8FA60018 */ lw $a2, 0x0018($sp) -/* 007A4 80A7C5C4 3C0E80A8 */ lui $t6, %hi(func_80A7C5EC) ## $t6 = 80A80000 -/* 007A8 80A7C5C8 25CEC5EC */ addiu $t6, $t6, %lo(func_80A7C5EC) ## $t6 = 80A7C5EC -/* 007AC 80A7C5CC 94CF0314 */ lhu $t7, 0x0314($a2) ## 00000314 -/* 007B0 80A7C5D0 ACCE0310 */ sw $t6, 0x0310($a2) ## 00000310 -/* 007B4 80A7C5D4 35F80100 */ ori $t8, $t7, 0x0100 ## $t8 = 00000100 -/* 007B8 80A7C5D8 A4D80314 */ sh $t8, 0x0314($a2) ## 00000314 -/* 007BC 80A7C5DC 8FBF0014 */ lw $ra, 0x0014($sp) -/* 007C0 80A7C5E0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 007C4 80A7C5E4 03E00008 */ jr $ra -/* 007C8 80A7C5E8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C5EC.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C5EC.s index ce2bfbd68b..d7c00348b5 100644 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C5EC.s +++ b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C5EC.s @@ -30,7 +30,7 @@ glabel func_80A7C5EC /* 0080C 80A7C62C 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024 /* 00810 80A7C630 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 /* 00814 80A7C634 AFA50028 */ sw $a1, 0x0028($sp) -/* 00818 80A7C638 0C29EF90 */ jal func_80A7BE40 +/* 00818 80A7C638 0C29EF90 */ jal EnInsect_XZDistanceSquared /* 0081C 80A7C63C AFA4002C */ sw $a0, 0x002C($sp) /* 00820 80A7C640 3C0144C8 */ lui $at, 0x44C8 ## $at = 44C80000 /* 00824 80A7C644 44813000 */ mtc1 $at, $f6 ## $f6 = 1600.00 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C818.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C818.s deleted file mode 100644 index 002771324f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C818.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_80A7C818 -/* 009F8 80A7C818 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 009FC 80A7C81C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00A00 80A7C820 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00A04 80A7C824 AFA60018 */ sw $a2, 0x0018($sp) -/* 00A08 80A7C828 2404000A */ addiu $a0, $zero, 0x000A ## $a0 = 0000000A -/* 00A0C 80A7C82C 0C01DF64 */ jal Math_Rand_S16Offset - -/* 00A10 80A7C830 24050028 */ addiu $a1, $zero, 0x0028 ## $a1 = 00000028 -/* 00A14 80A7C834 8FA40018 */ lw $a0, 0x0018($sp) -/* 00A18 80A7C838 0C29EFD6 */ jal func_80A7BF58 -/* 00A1C 80A7C83C A482031A */ sh $v0, 0x031A($a0) ## 0000031A -/* 00A20 80A7C840 8FA60018 */ lw $a2, 0x0018($sp) -/* 00A24 80A7C844 3C0E80A8 */ lui $t6, %hi(func_80A7C86C) ## $t6 = 80A80000 -/* 00A28 80A7C848 25CEC86C */ addiu $t6, $t6, %lo(func_80A7C86C) ## $t6 = 80A7C86C -/* 00A2C 80A7C84C 94CF0314 */ lhu $t7, 0x0314($a2) ## 00000314 -/* 00A30 80A7C850 ACCE0310 */ sw $t6, 0x0310($a2) ## 00000310 -/* 00A34 80A7C854 35F80100 */ ori $t8, $t7, 0x0100 ## $t8 = 00000100 -/* 00A38 80A7C858 A4D80314 */ sh $t8, 0x0314($a2) ## 00000314 -/* 00A3C 80A7C85C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00A40 80A7C860 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00A44 80A7C864 03E00008 */ jr $ra -/* 00A48 80A7C868 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C86C.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C86C.s index e8613d8e06..aa0998e132 100644 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C86C.s +++ b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C86C.s @@ -37,7 +37,7 @@ glabel func_80A7C86C /* 00AA4 80A7C8C4 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024 /* 00AA8 80A7C8C8 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 /* 00AAC 80A7C8CC AFA5002C */ sw $a1, 0x002C($sp) -/* 00AB0 80A7C8D0 0C29EF90 */ jal func_80A7BE40 +/* 00AB0 80A7C8D0 0C29EF90 */ jal EnInsect_XZDistanceSquared /* 00AB4 80A7C8D4 AFA40030 */ sw $a0, 0x0030($sp) /* 00AB8 80A7C8D8 3C0146C8 */ lui $at, 0x46C8 ## $at = 46C80000 /* 00ABC 80A7C8DC 44815000 */ mtc1 $at, $f10 ## $f10 = 25600.00 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CA64.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CA64.s deleted file mode 100644 index 6b38dac667..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CA64.s +++ /dev/null @@ -1,34 +0,0 @@ -.late_rodata -glabel D_80A7E000 - .float 0.3 - -.text -glabel func_80A7CA64 -/* 00C44 80A7CA64 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C48 80A7CA68 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C4C 80A7CA6C 240E00C8 */ addiu $t6, $zero, 0x00C8 ## $t6 = 000000C8 -/* 00C50 80A7CA70 A48E031A */ sh $t6, 0x031A($a0) ## 0000031A -/* 00C54 80A7CA74 3C053A83 */ lui $a1, 0x3A83 ## $a1 = 3A830000 -/* 00C58 80A7CA78 34A5126F */ ori $a1, $a1, 0x126F ## $a1 = 3A83126F -/* 00C5C 80A7CA7C 0C00B58B */ jal Actor_SetScale - -/* 00C60 80A7CA80 AFA40018 */ sw $a0, 0x0018($sp) -/* 00C64 80A7CA84 8FA40018 */ lw $a0, 0x0018($sp) -/* 00C68 80A7CA88 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 00C6C 80A7CA8C AC800134 */ sw $zero, 0x0134($a0) ## 00000134 -/* 00C70 80A7CA90 0C29EFD6 */ jal func_80A7BF58 -/* 00C74 80A7CA94 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068 -/* 00C78 80A7CA98 8FA40018 */ lw $a0, 0x0018($sp) -/* 00C7C 80A7CA9C 3C0180A8 */ lui $at, %hi(D_80A7E000) ## $at = 80A80000 -/* 00C80 80A7CAA0 C426E000 */ lwc1 $f6, %lo(D_80A7E000)($at) -/* 00C84 80A7CAA4 94980314 */ lhu $t8, 0x0314($a0) ## 00000314 -/* 00C88 80A7CAA8 3C0F80A8 */ lui $t7, %hi(func_80A7CAD0) ## $t7 = 80A80000 -/* 00C8C 80A7CAAC 25EFCAD0 */ addiu $t7, $t7, %lo(func_80A7CAD0) ## $t7 = 80A7CAD0 -/* 00C90 80A7CAB0 3319FEFF */ andi $t9, $t8, 0xFEFF ## $t9 = 00000000 -/* 00C94 80A7CAB4 AC8F0310 */ sw $t7, 0x0310($a0) ## 00000310 -/* 00C98 80A7CAB8 A4990314 */ sh $t9, 0x0314($a0) ## 00000314 -/* 00C9C 80A7CABC E48601C8 */ swc1 $f6, 0x01C8($a0) ## 000001C8 -/* 00CA0 80A7CAC0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00CA4 80A7CAC4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00CA8 80A7CAC8 03E00008 */ jr $ra -/* 00CAC 80A7CACC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CAD0.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CAD0.s deleted file mode 100644 index 9affdf156d..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CAD0.s +++ /dev/null @@ -1,84 +0,0 @@ -.late_rodata -glabel D_80A7E004 - .float 0.01 - -glabel D_80A7E008 - .float 0.01 - -glabel D_80A7E00C - .float 0.001 - -.text -glabel func_80A7CAD0 -/* 00CB0 80A7CAD0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00CB4 80A7CAD4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00CB8 80A7CAD8 AFA5001C */ sw $a1, 0x001C($sp) -/* 00CBC 80A7CADC 8482031A */ lh $v0, 0x031A($a0) ## 0000031A -/* 00CC0 80A7CAE0 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014 -/* 00CC4 80A7CAE4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00CC8 80A7CAE8 14410009 */ bne $v0, $at, .L80A7CB10 -/* 00CCC 80A7CAEC 00000000 */ nop -/* 00CD0 80A7CAF0 948E0314 */ lhu $t6, 0x0314($a0) ## 00000314 -/* 00CD4 80A7CAF4 3C1880A8 */ lui $t8, %hi(EnInsect_Draw) ## $t8 = 80A80000 -/* 00CD8 80A7CAF8 2718DE48 */ addiu $t8, $t8, %lo(EnInsect_Draw) ## $t8 = 80A7DE48 -/* 00CDC 80A7CAFC 31CF0004 */ andi $t7, $t6, 0x0004 ## $t7 = 00000000 -/* 00CE0 80A7CB00 15E00003 */ bne $t7, $zero, .L80A7CB10 -/* 00CE4 80A7CB04 00000000 */ nop -/* 00CE8 80A7CB08 1000002B */ beq $zero, $zero, .L80A7CBB8 -/* 00CEC 80A7CB0C AC980134 */ sw $t8, 0x0134($a0) ## 00000134 -.L80A7CB10: -/* 00CF0 80A7CB10 14400014 */ bne $v0, $zero, .L80A7CB64 -/* 00CF4 80A7CB14 28410014 */ slti $at, $v0, 0x0014 -/* 00CF8 80A7CB18 94D90314 */ lhu $t9, 0x0314($a2) ## 00000314 -/* 00CFC 80A7CB1C 3C0180A8 */ lui $at, %hi(D_80A7E004) ## $at = 80A80000 -/* 00D00 80A7CB20 33280004 */ andi $t0, $t9, 0x0004 ## $t0 = 00000000 -/* 00D04 80A7CB24 11000005 */ beq $t0, $zero, .L80A7CB3C -/* 00D08 80A7CB28 00000000 */ nop -/* 00D0C 80A7CB2C 0C00B55C */ jal Actor_Kill - -/* 00D10 80A7CB30 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00D14 80A7CB34 10000021 */ beq $zero, $zero, .L80A7CBBC -/* 00D18 80A7CB38 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7CB3C: -/* 00D1C 80A7CB3C C42CE004 */ lwc1 $f12, %lo(D_80A7E004)($at) -/* 00D20 80A7CB40 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00D24 80A7CB44 AFA60018 */ sw $a2, 0x0018($sp) -/* 00D28 80A7CB48 44056000 */ mfc1 $a1, $f12 -/* 00D2C 80A7CB4C 0C00B58B */ jal Actor_SetScale - -/* 00D30 80A7CB50 00000000 */ nop -/* 00D34 80A7CB54 0C29F0E8 */ jal func_80A7C3A0 -/* 00D38 80A7CB58 8FA40018 */ lw $a0, 0x0018($sp) -/* 00D3C 80A7CB5C 10000017 */ beq $zero, $zero, .L80A7CBBC -/* 00D40 80A7CB60 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7CB64: -/* 00D44 80A7CB64 10200014 */ beq $at, $zero, .L80A7CBB8 -/* 00D48 80A7CB68 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00D4C 80A7CB6C 3C0180A8 */ lui $at, %hi(D_80A7E008) ## $at = 80A80000 -/* 00D50 80A7CB70 C42CE008 */ lwc1 $f12, %lo(D_80A7E008)($at) -/* 00D54 80A7CB74 3C0180A8 */ lui $at, %hi(D_80A7E00C) ## $at = 80A80000 -/* 00D58 80A7CB78 C426E00C */ lwc1 $f6, %lo(D_80A7E00C)($at) -/* 00D5C 80A7CB7C C4C40050 */ lwc1 $f4, 0x0050($a2) ## 00000050 -/* 00D60 80A7CB80 46062000 */ add.s $f0, $f4, $f6 -/* 00D64 80A7CB84 4600603C */ c.lt.s $f12, $f0 -/* 00D68 80A7CB88 00000000 */ nop -/* 00D6C 80A7CB8C 45020004 */ bc1fl .L80A7CBA0 -/* 00D70 80A7CB90 46000086 */ mov.s $f2, $f0 -/* 00D74 80A7CB94 10000002 */ beq $zero, $zero, .L80A7CBA0 -/* 00D78 80A7CB98 46006086 */ mov.s $f2, $f12 -/* 00D7C 80A7CB9C 46000086 */ mov.s $f2, $f0 -.L80A7CBA0: -/* 00D80 80A7CBA0 44051000 */ mfc1 $a1, $f2 -/* 00D84 80A7CBA4 0C00B58B */ jal Actor_SetScale - -/* 00D88 80A7CBA8 AFA60018 */ sw $a2, 0x0018($sp) -/* 00D8C 80A7CBAC 8FA60018 */ lw $a2, 0x0018($sp) -/* 00D90 80A7CBB0 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00D94 80A7CBB4 24C401AC */ addiu $a0, $a2, 0x01AC ## $a0 = 000001AC -.L80A7CBB8: -/* 00D98 80A7CBB8 8FBF0014 */ lw $ra, 0x0014($sp) -.L80A7CBBC: -/* 00D9C 80A7CBBC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00DA0 80A7CBC0 03E00008 */ jr $ra -/* 00DA4 80A7CBC4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CBC8.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CBC8.s deleted file mode 100644 index 3e3459aa81..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CBC8.s +++ /dev/null @@ -1,37 +0,0 @@ -.late_rodata -glabel D_80A7E010 - .float 1.9 - -.text -glabel func_80A7CBC8 -/* 00DA8 80A7CBC8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00DAC 80A7CBCC AFBF001C */ sw $ra, 0x001C($sp) -/* 00DB0 80A7CBD0 AFB00018 */ sw $s0, 0x0018($sp) -/* 00DB4 80A7CBD4 240E003C */ addiu $t6, $zero, 0x003C ## $t6 = 0000003C -/* 00DB8 80A7CBD8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00DBC 80A7CBDC 0C29EFD6 */ jal func_80A7BF58 -/* 00DC0 80A7CBE0 A48E031A */ sh $t6, 0x031A($a0) ## 0000031A -/* 00DC4 80A7CBE4 3C0180A8 */ lui $at, %hi(D_80A7E010) ## $at = 80A80000 -/* 00DC8 80A7CBE8 C424E010 */ lwc1 $f4, %lo(D_80A7E010)($at) -/* 00DCC 80A7CBEC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00DD0 80A7CBF0 240539E9 */ addiu $a1, $zero, 0x39E9 ## $a1 = 000039E9 -/* 00DD4 80A7CBF4 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00DD8 80A7CBF8 E60401C8 */ swc1 $f4, 0x01C8($s0) ## 000001C8 -/* 00DDC 80A7CBFC 26040008 */ addiu $a0, $s0, 0x0008 ## $a0 = 00000008 -/* 00DE0 80A7CC00 0C01DF90 */ jal Math_Vec3f_Copy - ## Vec3f_Copy -/* 00DE4 80A7CC04 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 00DE8 80A7CC08 96180314 */ lhu $t8, 0x0314($s0) ## 00000314 -/* 00DEC 80A7CC0C 3C0F80A8 */ lui $t7, %hi(func_80A7CC3C) ## $t7 = 80A80000 -/* 00DF0 80A7CC10 25EFCC3C */ addiu $t7, $t7, %lo(func_80A7CC3C) ## $t7 = 80A7CC3C -/* 00DF4 80A7CC14 3308FEFF */ andi $t0, $t8, 0xFEFF ## $t0 = 00000000 -/* 00DF8 80A7CC18 A6080314 */ sh $t0, 0x0314($s0) ## 00000314 -/* 00DFC 80A7CC1C 35090008 */ ori $t1, $t0, 0x0008 ## $t1 = 00000008 -/* 00E00 80A7CC20 AE0F0310 */ sw $t7, 0x0310($s0) ## 00000310 -/* 00E04 80A7CC24 A6090314 */ sh $t1, 0x0314($s0) ## 00000314 -/* 00E08 80A7CC28 8FBF001C */ lw $ra, 0x001C($sp) -/* 00E0C 80A7CC2C 8FB00018 */ lw $s0, 0x0018($sp) -/* 00E10 80A7CC30 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00E14 80A7CC34 03E00008 */ jr $ra -/* 00E18 80A7CC38 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CC3C.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CC3C.s deleted file mode 100644 index 43aa1e87f9..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CC3C.s +++ /dev/null @@ -1,176 +0,0 @@ -.late_rodata -glabel D_80A7E014 - .float 0.001 - -glabel D_80A7E018 - .word 0x3951B717 -glabel D_80A7E01C - .float 0.8 - -glabel D_80A7E020 - .float 0.1 - -glabel D_80A7E024 - .word 0xBF19999A -glabel D_80A7E028 - .float 0.6 - -glabel D_80A7E02C - .word 0xBF19999A - -.text -glabel func_80A7CC3C -/* 00E1C 80A7CC3C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00E20 80A7CC40 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8 -/* 00E24 80A7CC44 AFB00020 */ sw $s0, 0x0020($sp) -/* 00E28 80A7CC48 AFA5004C */ sw $a1, 0x004C($sp) -/* 00E2C 80A7CC4C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00E30 80A7CC50 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00E34 80A7CC54 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000 -/* 00E38 80A7CC58 44050000 */ mfc1 $a1, $f0 -/* 00E3C 80A7CC5C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD -/* 00E40 80A7CC60 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 00E44 80A7CC64 3C073F00 */ lui $a3, 0x3F00 ## $a3 = 3F000000 -/* 00E48 80A7CC68 0C01E0C4 */ jal Math_SmoothScaleMaxMinF - -/* 00E4C 80A7CC6C E7A00010 */ swc1 $f0, 0x0010($sp) -/* 00E50 80A7CC70 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00E54 80A7CC74 24052AAA */ addiu $a1, $zero, 0x2AAA ## $a1 = 00002AAA -/* 00E58 80A7CC78 0C01DE5F */ jal Math_ApproxS - -/* 00E5C 80A7CC7C 24060160 */ addiu $a2, $zero, 0x0160 ## $a2 = 00000160 -/* 00E60 80A7CC80 3C0180A8 */ lui $at, %hi(D_80A7E014) ## $at = 80A80000 -/* 00E64 80A7CC84 C42CE014 */ lwc1 $f12, %lo(D_80A7E014)($at) -/* 00E68 80A7CC88 3C0180A8 */ lui $at, %hi(D_80A7E018) ## $at = 80A80000 -/* 00E6C 80A7CC8C C426E018 */ lwc1 $f6, %lo(D_80A7E018)($at) -/* 00E70 80A7CC90 C6040050 */ lwc1 $f4, 0x0050($s0) ## 00000050 -/* 00E74 80A7CC94 46062001 */ sub.s $f0, $f4, $f6 -/* 00E78 80A7CC98 460C003C */ c.lt.s $f0, $f12 -/* 00E7C 80A7CC9C 00000000 */ nop -/* 00E80 80A7CCA0 45020004 */ bc1fl .L80A7CCB4 -/* 00E84 80A7CCA4 46000086 */ mov.s $f2, $f0 -/* 00E88 80A7CCA8 10000002 */ beq $zero, $zero, .L80A7CCB4 -/* 00E8C 80A7CCAC 46006086 */ mov.s $f2, $f12 -/* 00E90 80A7CCB0 46000086 */ mov.s $f2, $f0 -.L80A7CCB4: -/* 00E94 80A7CCB4 44051000 */ mfc1 $a1, $f2 -/* 00E98 80A7CCB8 0C00B58B */ jal Actor_SetScale - -/* 00E9C 80A7CCBC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00EA0 80A7CCC0 3C0180A8 */ lui $at, %hi(D_80A7E01C) ## $at = 80A80000 -/* 00EA4 80A7CCC4 C42AE01C */ lwc1 $f10, %lo(D_80A7E01C)($at) -/* 00EA8 80A7CCC8 C60800BC */ lwc1 $f8, 0x00BC($s0) ## 000000BC -/* 00EAC 80A7CCCC 460A4401 */ sub.s $f16, $f8, $f10 -/* 00EB0 80A7CCD0 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00EB4 80A7CCD4 E61000BC */ swc1 $f16, 0x00BC($s0) ## 000000BC -/* 00EB8 80A7CCD8 C6120008 */ lwc1 $f18, 0x0008($s0) ## 00000008 -/* 00EBC 80A7CCDC 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 00EC0 80A7CCE0 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50 -/* 00EC4 80A7CCE4 46120100 */ add.s $f4, $f0, $f18 -/* 00EC8 80A7CCE8 46062201 */ sub.s $f8, $f4, $f6 -/* 00ECC 80A7CCEC 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00ED0 80A7CCF0 E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024 -/* 00ED4 80A7CCF4 C60A0010 */ lwc1 $f10, 0x0010($s0) ## 00000010 -/* 00ED8 80A7CCF8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 00EDC 80A7CCFC 44819000 */ mtc1 $at, $f18 ## $f18 = 0.50 -/* 00EE0 80A7CD00 460A0400 */ add.s $f16, $f0, $f10 -/* 00EE4 80A7CD04 260401AC */ addiu $a0, $s0, 0x01AC ## $a0 = 000001AC -/* 00EE8 80A7CD08 46128101 */ sub.s $f4, $f16, $f18 -/* 00EEC 80A7CD0C 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00EF0 80A7CD10 E604002C */ swc1 $f4, 0x002C($s0) ## 0000002C -/* 00EF4 80A7CD14 860E031A */ lh $t6, 0x031A($s0) ## 0000031A -/* 00EF8 80A7CD18 29C10015 */ slti $at, $t6, 0x0015 -/* 00EFC 80A7CD1C 54200034 */ bnel $at, $zero, .L80A7CDF0 -/* 00F00 80A7CD20 8609031A */ lh $t1, 0x031A($s0) ## 0000031A -/* 00F04 80A7CD24 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00F08 80A7CD28 00000000 */ nop -/* 00F0C 80A7CD2C 3C0180A8 */ lui $at, %hi(D_80A7E020) ## $at = 80A80000 -/* 00F10 80A7CD30 C426E020 */ lwc1 $f6, %lo(D_80A7E020)($at) -/* 00F14 80A7CD34 4606003C */ c.lt.s $f0, $f6 -/* 00F18 80A7CD38 00000000 */ nop -/* 00F1C 80A7CD3C 4502002C */ bc1fl .L80A7CDF0 -/* 00F20 80A7CD40 8609031A */ lh $t1, 0x031A($s0) ## 0000031A -/* 00F24 80A7CD44 0C01DE1C */ jal Math_Sins - ## sins? -/* 00F28 80A7CD48 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 00F2C 80A7CD4C 3C0180A8 */ lui $at, %hi(D_80A7E024) ## $at = 80A80000 -/* 00F30 80A7CD50 C428E024 */ lwc1 $f8, %lo(D_80A7E024)($at) -/* 00F34 80A7CD54 46080282 */ mul.s $f10, $f0, $f8 -/* 00F38 80A7CD58 E7AA0034 */ swc1 $f10, 0x0034($sp) -/* 00F3C 80A7CD5C 0C01DE1C */ jal Math_Sins - ## sins? -/* 00F40 80A7CD60 860400B4 */ lh $a0, 0x00B4($s0) ## 000000B4 -/* 00F44 80A7CD64 3C0180A8 */ lui $at, %hi(D_80A7E028) ## $at = 80A80000 -/* 00F48 80A7CD68 C430E028 */ lwc1 $f16, %lo(D_80A7E028)($at) -/* 00F4C 80A7CD6C 46100482 */ mul.s $f18, $f0, $f16 -/* 00F50 80A7CD70 E7B20038 */ swc1 $f18, 0x0038($sp) -/* 00F54 80A7CD74 0C01DE0D */ jal Math_Coss - ## coss? -/* 00F58 80A7CD78 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6 -/* 00F5C 80A7CD7C 3C0180A8 */ lui $at, %hi(D_80A7E02C) ## $at = 80A80000 -/* 00F60 80A7CD80 C424E02C */ lwc1 $f4, %lo(D_80A7E02C)($at) -/* 00F64 80A7CD84 46040182 */ mul.s $f6, $f0, $f4 -/* 00F68 80A7CD88 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00F6C 80A7CD8C E7A6003C */ swc1 $f6, 0x003C($sp) -/* 00F70 80A7CD90 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00F74 80A7CD94 E7A0002C */ swc1 $f0, 0x002C($sp) -/* 00F78 80A7CD98 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000 -/* 00F7C 80A7CD9C 44811000 */ mtc1 $at, $f2 ## $f2 = 5.00 -/* 00F80 80A7CDA0 C7A8002C */ lwc1 $f8, 0x002C($sp) -/* 00F84 80A7CDA4 3C014100 */ lui $at, 0x4100 ## $at = 41000000 -/* 00F88 80A7CDA8 44816000 */ mtc1 $at, $f12 ## $f12 = 8.00 -/* 00F8C 80A7CDAC 46024282 */ mul.s $f10, $f8, $f2 -/* 00F90 80A7CDB0 3C0780A8 */ lui $a3, %hi(D_80A7DF28) ## $a3 = 80A80000 -/* 00F94 80A7CDB4 24E7DF28 */ addiu $a3, $a3, %lo(D_80A7DF28) ## $a3 = 80A7DF28 -/* 00F98 80A7CDB8 46020102 */ mul.s $f4, $f0, $f2 -/* 00F9C 80A7CDBC 8FA4004C */ lw $a0, 0x004C($sp) -/* 00FA0 80A7CDC0 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 00FA4 80A7CDC4 27A60034 */ addiu $a2, $sp, 0x0034 ## $a2 = FFFFFFEC -/* 00FA8 80A7CDC8 460C5400 */ add.s $f16, $f10, $f12 -/* 00FAC 80A7CDCC 460C2180 */ add.s $f6, $f4, $f12 -/* 00FB0 80A7CDD0 4600848D */ trunc.w.s $f18, $f16 -/* 00FB4 80A7CDD4 4600320D */ trunc.w.s $f8, $f6 -/* 00FB8 80A7CDD8 44189000 */ mfc1 $t8, $f18 -/* 00FBC 80A7CDDC 44084000 */ mfc1 $t0, $f8 -/* 00FC0 80A7CDE0 AFB80010 */ sw $t8, 0x0010($sp) -/* 00FC4 80A7CDE4 0C00A1B3 */ jal func_800286CC -/* 00FC8 80A7CDE8 AFA80014 */ sw $t0, 0x0014($sp) -/* 00FCC 80A7CDEC 8609031A */ lh $t1, 0x031A($s0) ## 0000031A -.L80A7CDF0: -/* 00FD0 80A7CDF0 5D200017 */ bgtzl $t1, .L80A7CE50 -/* 00FD4 80A7CDF4 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00FD8 80A7CDF8 960A0314 */ lhu $t2, 0x0314($s0) ## 00000314 -/* 00FDC 80A7CDFC 314B0010 */ andi $t3, $t2, 0x0010 ## $t3 = 00000000 -/* 00FE0 80A7CE00 11600010 */ beq $t3, $zero, .L80A7CE44 -/* 00FE4 80A7CE04 00000000 */ nop -/* 00FE8 80A7CE08 8E020320 */ lw $v0, 0x0320($s0) ## 00000320 -/* 00FEC 80A7CE0C 1040000D */ beq $v0, $zero, .L80A7CE44 -/* 00FF0 80A7CE10 24440024 */ addiu $a0, $v0, 0x0024 ## $a0 = 00000024 -/* 00FF4 80A7CE14 0C032D94 */ jal func_800CB650 -/* 00FF8 80A7CE18 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 00FFC 80A7CE1C 3C014280 */ lui $at, 0x4280 ## $at = 42800000 -/* 01000 80A7CE20 44815000 */ mtc1 $at, $f10 ## $f10 = 64.00 -/* 01004 80A7CE24 00000000 */ nop -/* 01008 80A7CE28 460A003C */ c.lt.s $f0, $f10 -/* 0100C 80A7CE2C 00000000 */ nop -/* 01010 80A7CE30 45000004 */ bc1f .L80A7CE44 -/* 01014 80A7CE34 00000000 */ nop -/* 01018 80A7CE38 8E0D0320 */ lw $t5, 0x0320($s0) ## 00000320 -/* 0101C 80A7CE3C 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 01020 80A7CE40 A5AC0152 */ sh $t4, 0x0152($t5) ## 00000152 -.L80A7CE44: -/* 01024 80A7CE44 0C00B55C */ jal Actor_Kill - -/* 01028 80A7CE48 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0102C 80A7CE4C 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7CE50: -/* 01030 80A7CE50 8FB00020 */ lw $s0, 0x0020($sp) -/* 01034 80A7CE54 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000 -/* 01038 80A7CE58 03E00008 */ jr $ra -/* 0103C 80A7CE5C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CE60.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CE60.s deleted file mode 100644 index 3c52e8a3a4..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CE60.s +++ /dev/null @@ -1,26 +0,0 @@ -glabel func_80A7CE60 -/* 01040 80A7CE60 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 01044 80A7CE64 AFBF0014 */ sw $ra, 0x0014($sp) -/* 01048 80A7CE68 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 0104C 80A7CE6C AFA60018 */ sw $a2, 0x0018($sp) -/* 01050 80A7CE70 24040078 */ addiu $a0, $zero, 0x0078 ## $a0 = 00000078 -/* 01054 80A7CE74 0C01DF64 */ jal Math_Rand_S16Offset - -/* 01058 80A7CE78 24050032 */ addiu $a1, $zero, 0x0032 ## $a1 = 00000032 -/* 0105C 80A7CE7C 8FA40018 */ lw $a0, 0x0018($sp) -/* 01060 80A7CE80 0C29EFD6 */ jal func_80A7BF58 -/* 01064 80A7CE84 A482031A */ sh $v0, 0x031A($a0) ## 0000031A -/* 01068 80A7CE88 8FA60018 */ lw $a2, 0x0018($sp) -/* 0106C 80A7CE8C 3C0F80A8 */ lui $t7, %hi(func_80A7CEC0) ## $t7 = 80A80000 -/* 01070 80A7CE90 25EFCEC0 */ addiu $t7, $t7, %lo(func_80A7CEC0) ## $t7 = 80A7CEC0 -/* 01074 80A7CE94 94D80314 */ lhu $t8, 0x0314($a2) ## 00000314 -/* 01078 80A7CE98 A4C00318 */ sh $zero, 0x0318($a2) ## 00000318 -/* 0107C 80A7CE9C 84CE0318 */ lh $t6, 0x0318($a2) ## 00000318 -/* 01080 80A7CEA0 3319FEFF */ andi $t9, $t8, 0xFEFF ## $t9 = 00000000 -/* 01084 80A7CEA4 ACCF0310 */ sw $t7, 0x0310($a2) ## 00000310 -/* 01088 80A7CEA8 A4D90314 */ sh $t9, 0x0314($a2) ## 00000314 -/* 0108C 80A7CEAC A4CE0316 */ sh $t6, 0x0316($a2) ## 00000316 -/* 01090 80A7CEB0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 01094 80A7CEB4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 01098 80A7CEB8 03E00008 */ jr $ra -/* 0109C 80A7CEBC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CEC0.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CEC0.s deleted file mode 100644 index b4ca4d1385..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CEC0.s +++ /dev/null @@ -1,246 +0,0 @@ -.late_rodata -glabel D_80A7E030 - .float 0.1 - -glabel D_80A7E034 - .word 0x3C9374BC -glabel D_80A7E038 - .float 1.9 - -glabel D_80A7E03C - .float 0.03 - -.text -glabel func_80A7CEC0 -/* 010A0 80A7CEC0 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 010A4 80A7CEC4 AFBF0024 */ sw $ra, 0x0024($sp) -/* 010A8 80A7CEC8 AFB00020 */ sw $s0, 0x0020($sp) -/* 010AC 80A7CECC AFA5005C */ sw $a1, 0x005C($sp) -/* 010B0 80A7CED0 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 010B4 80A7CED4 3C063CA3 */ lui $a2, 0x3CA3 ## $a2 = 3CA30000 -/* 010B8 80A7CED8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 010BC 80A7CEDC 31CF0003 */ andi $t7, $t6, 0x0003 ## $t7 = 00000000 -/* 010C0 80A7CEE0 A7AF004E */ sh $t7, 0x004E($sp) -/* 010C4 80A7CEE4 8498031A */ lh $t8, 0x031A($a0) ## 0000031A -/* 010C8 80A7CEE8 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3CA3D70A -/* 010CC 80A7CEEC 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 010D0 80A7CEF0 2B010051 */ slti $at, $t8, 0x0051 -/* 010D4 80A7CEF4 14200009 */ bne $at, $zero, .L80A7CF1C -/* 010D8 80A7CEF8 00000000 */ nop -/* 010DC 80A7CEFC 3C053F19 */ lui $a1, 0x3F19 ## $a1 = 3F190000 -/* 010E0 80A7CF00 3C063DA3 */ lui $a2, 0x3DA3 ## $a2 = 3DA30000 -/* 010E4 80A7CF04 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3DA3D70A -/* 010E8 80A7CF08 34A5999A */ ori $a1, $a1, 0x999A ## $a1 = 3F19999A -/* 010EC 80A7CF0C 0C01DE80 */ jal Math_ApproxF - -/* 010F0 80A7CF10 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 010F4 80A7CF14 10000004 */ beq $zero, $zero, .L80A7CF28 -/* 010F8 80A7CF18 8619031A */ lh $t9, 0x031A($s0) ## 0000031A -.L80A7CF1C: -/* 010FC 80A7CF1C 0C01DE80 */ jal Math_ApproxF - -/* 01100 80A7CF20 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068 -/* 01104 80A7CF24 8619031A */ lh $t9, 0x031A($s0) ## 0000031A -.L80A7CF28: -/* 01108 80A7CF28 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028 -/* 0110C 80A7CF2C C6080084 */ lwc1 $f8, 0x0084($s0) ## 00000084 -/* 01110 80A7CF30 44998000 */ mtc1 $t9, $f16 ## $f16 = 0.00 -/* 01114 80A7CF34 3C0180A8 */ lui $at, %hi(D_80A7E030) ## $at = 80A80000 -/* 01118 80A7CF38 46083280 */ add.s $f10, $f6, $f8 -/* 0111C 80A7CF3C C422E030 */ lwc1 $f2, %lo(D_80A7E030)($at) -/* 01120 80A7CF40 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 01124 80A7CF44 468084A0 */ cvt.s.w $f18, $f16 -/* 01128 80A7CF48 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000028 -/* 0112C 80A7CF4C 3C0180A8 */ lui $at, %hi(D_80A7E034) ## $at = 80A80000 -/* 01130 80A7CF50 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060 -/* 01134 80A7CF54 C424E034 */ lwc1 $f4, %lo(D_80A7E034)($at) -/* 01138 80A7CF58 3C0180A8 */ lui $at, %hi(D_80A7E038) ## $at = 80A80000 -/* 0113C 80A7CF5C 46049002 */ mul.s $f0, $f18, $f4 -/* 01140 80A7CF60 4602003C */ c.lt.s $f0, $f2 -/* 01144 80A7CF64 00000000 */ nop -/* 01148 80A7CF68 45000003 */ bc1f .L80A7CF78 -/* 0114C 80A7CF6C 00000000 */ nop -/* 01150 80A7CF70 1000000A */ beq $zero, $zero, .L80A7CF9C -/* 01154 80A7CF74 E60201C8 */ swc1 $f2, 0x01C8($s0) ## 000001C8 -.L80A7CF78: -/* 01158 80A7CF78 C42CE038 */ lwc1 $f12, %lo(D_80A7E038)($at) -/* 0115C 80A7CF7C 4600603C */ c.lt.s $f12, $f0 -/* 01160 80A7CF80 00000000 */ nop -/* 01164 80A7CF84 45020004 */ bc1fl .L80A7CF98 -/* 01168 80A7CF88 46000086 */ mov.s $f2, $f0 -/* 0116C 80A7CF8C 10000002 */ beq $zero, $zero, .L80A7CF98 -/* 01170 80A7CF90 46006086 */ mov.s $f2, $f12 -/* 01174 80A7CF94 46000086 */ mov.s $f2, $f0 -.L80A7CF98: -/* 01178 80A7CF98 E60201C8 */ swc1 $f2, 0x01C8($s0) ## 000001C8 -.L80A7CF9C: -/* 0117C 80A7CF9C 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 01180 80A7CFA0 260401AC */ addiu $a0, $s0, 0x01AC ## $a0 = 000001AC -/* 01184 80A7CFA4 8608031A */ lh $t0, 0x031A($s0) ## 0000031A -/* 01188 80A7CFA8 2404FFCE */ addiu $a0, $zero, 0xFFCE ## $a0 = FFFFFFCE -/* 0118C 80A7CFAC 29010051 */ slti $at, $t0, 0x0051 -/* 01190 80A7CFB0 5420000D */ bnel $at, $zero, .L80A7CFE8 -/* 01194 80A7CFB4 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -/* 01198 80A7CFB8 0C01DF64 */ jal Math_Rand_S16Offset - -/* 0119C 80A7CFBC 24050064 */ addiu $a1, $zero, 0x0064 ## $a1 = 00000064 -/* 011A0 80A7CFC0 86090316 */ lh $t1, 0x0316($s0) ## 00000316 -/* 011A4 80A7CFC4 2404FED4 */ addiu $a0, $zero, 0xFED4 ## $a0 = FFFFFED4 -/* 011A8 80A7CFC8 24050258 */ addiu $a1, $zero, 0x0258 ## $a1 = 00000258 -/* 011AC 80A7CFCC 01225021 */ addu $t2, $t1, $v0 -/* 011B0 80A7CFD0 0C01DF64 */ jal Math_Rand_S16Offset - -/* 011B4 80A7CFD4 A60A0316 */ sh $t2, 0x0316($s0) ## 00000316 -/* 011B8 80A7CFD8 860B0318 */ lh $t3, 0x0318($s0) ## 00000318 -/* 011BC 80A7CFDC 01626021 */ addu $t4, $t3, $v0 -/* 011C0 80A7CFE0 A60C0318 */ sh $t4, 0x0318($s0) ## 00000318 -/* 011C4 80A7CFE4 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -.L80A7CFE8: -/* 011C8 80A7CFE8 44814000 */ mtc1 $at, $f8 ## $f8 = 200.00 -/* 011CC 80A7CFEC C60601C8 */ lwc1 $f6, 0x01C8($s0) ## 000001C8 -/* 011D0 80A7CFF0 86040316 */ lh $a0, 0x0316($s0) ## 00000316 -/* 011D4 80A7CFF4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 011D8 80A7CFF8 46083282 */ mul.s $f10, $f6, $f8 -/* 011DC 80A7CFFC 4600540D */ trunc.w.s $f16, $f10 -/* 011E0 80A7D000 44038000 */ mfc1 $v1, $f16 -/* 011E4 80A7D004 00000000 */ nop -/* 011E8 80A7D008 00031C00 */ sll $v1, $v1, 16 -/* 011EC 80A7D00C 00031C03 */ sra $v1, $v1, 16 -/* 011F0 80A7D010 00031023 */ subu $v0, $zero, $v1 -/* 011F4 80A7D014 0082082A */ slt $at, $a0, $v0 -/* 011F8 80A7D018 50200004 */ beql $at, $zero, .L80A7D02C -/* 011FC 80A7D01C 0064082A */ slt $at, $v1, $a0 -/* 01200 80A7D020 10000007 */ beq $zero, $zero, .L80A7D040 -/* 01204 80A7D024 A6020316 */ sh $v0, 0x0316($s0) ## 00000316 -/* 01208 80A7D028 0064082A */ slt $at, $v1, $a0 -.L80A7D02C: -/* 0120C 80A7D02C 10200003 */ beq $at, $zero, .L80A7D03C -/* 01210 80A7D030 00801025 */ or $v0, $a0, $zero ## $v0 = 00000000 -/* 01214 80A7D034 10000001 */ beq $zero, $zero, .L80A7D03C -/* 01218 80A7D038 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000 -.L80A7D03C: -/* 0121C 80A7D03C A6020316 */ sh $v0, 0x0316($s0) ## 00000316 -.L80A7D040: -/* 01220 80A7D040 3C01447A */ lui $at, 0x447A ## $at = 447A0000 -/* 01224 80A7D044 44812000 */ mtc1 $at, $f4 ## $f4 = 1000.00 -/* 01228 80A7D048 C61201C8 */ lwc1 $f18, 0x01C8($s0) ## 000001C8 -/* 0122C 80A7D04C 860E0032 */ lh $t6, 0x0032($s0) ## 00000032 -/* 01230 80A7D050 860F0316 */ lh $t7, 0x0316($s0) ## 00000316 -/* 01234 80A7D054 46049182 */ mul.s $f6, $f18, $f4 -/* 01238 80A7D058 86040318 */ lh $a0, 0x0318($s0) ## 00000318 -/* 0123C 80A7D05C 01CFC021 */ addu $t8, $t6, $t7 -/* 01240 80A7D060 A6180032 */ sh $t8, 0x0032($s0) ## 00000032 -/* 01244 80A7D064 4600320D */ trunc.w.s $f8, $f6 -/* 01248 80A7D068 44034000 */ mfc1 $v1, $f8 -/* 0124C 80A7D06C 00000000 */ nop -/* 01250 80A7D070 00031C00 */ sll $v1, $v1, 16 -/* 01254 80A7D074 00031C03 */ sra $v1, $v1, 16 -/* 01258 80A7D078 00031023 */ subu $v0, $zero, $v1 -/* 0125C 80A7D07C 0082082A */ slt $at, $a0, $v0 -/* 01260 80A7D080 50200004 */ beql $at, $zero, .L80A7D094 -/* 01264 80A7D084 0064082A */ slt $at, $v1, $a0 -/* 01268 80A7D088 10000007 */ beq $zero, $zero, .L80A7D0A8 -/* 0126C 80A7D08C A6020318 */ sh $v0, 0x0318($s0) ## 00000318 -/* 01270 80A7D090 0064082A */ slt $at, $v1, $a0 -.L80A7D094: -/* 01274 80A7D094 10200003 */ beq $at, $zero, .L80A7D0A4 -/* 01278 80A7D098 00801025 */ or $v0, $a0, $zero ## $v0 = 00000000 -/* 0127C 80A7D09C 10000001 */ beq $zero, $zero, .L80A7D0A4 -/* 01280 80A7D0A0 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000 -.L80A7D0A4: -/* 01284 80A7D0A4 A6020318 */ sh $v0, 0x0318($s0) ## 00000318 -.L80A7D0A8: -/* 01288 80A7D0A8 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6 -/* 0128C 80A7D0AC 86090318 */ lh $t1, 0x0318($s0) ## 00000318 -/* 01290 80A7D0B0 26040030 */ addiu $a0, $s0, 0x0030 ## $a0 = 00000030 -/* 01294 80A7D0B4 24060BB8 */ addiu $a2, $zero, 0x0BB8 ## $a2 = 00000BB8 -/* 01298 80A7D0B8 01095021 */ addu $t2, $t0, $t1 -/* 0129C 80A7D0BC 0C01DE2B */ jal Math_ApproxUpdateScaledS - -/* 012A0 80A7D0C0 A60A00B6 */ sh $t2, 0x00B6($s0) ## 000000B6 -/* 012A4 80A7D0C4 860B0030 */ lh $t3, 0x0030($s0) ## 00000030 -/* 012A8 80A7D0C8 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 012AC 80A7D0CC A60B00B4 */ sh $t3, 0x00B4($s0) ## 000000B4 -/* 012B0 80A7D0D0 3C0180A8 */ lui $at, %hi(D_80A7E03C) ## $at = 80A80000 -/* 012B4 80A7D0D4 C42AE03C */ lwc1 $f10, %lo(D_80A7E03C)($at) -/* 012B8 80A7D0D8 460A003C */ c.lt.s $f0, $f10 -/* 012BC 80A7D0DC 00000000 */ nop -/* 012C0 80A7D0E0 45020018 */ bc1fl .L80A7D144 -/* 012C4 80A7D0E4 860E031A */ lh $t6, 0x031A($s0) ## 0000031A -/* 012C8 80A7D0E8 C6100024 */ lwc1 $f16, 0x0024($s0) ## 00000024 -/* 012CC 80A7D0EC 240C0004 */ addiu $t4, $zero, 0x0004 ## $t4 = 00000004 -/* 012D0 80A7D0F0 8FA4005C */ lw $a0, 0x005C($sp) -/* 012D4 80A7D0F4 E7B00040 */ swc1 $f16, 0x0040($sp) -/* 012D8 80A7D0F8 C6040084 */ lwc1 $f4, 0x0084($s0) ## 00000084 -/* 012DC 80A7D0FC C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028 -/* 012E0 80A7D100 27A50040 */ addiu $a1, $sp, 0x0040 ## $a1 = FFFFFFE8 -/* 012E4 80A7D104 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014 -/* 012E8 80A7D108 46049180 */ add.s $f6, $f18, $f4 -/* 012EC 80A7D10C 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064 -/* 012F0 80A7D110 E7A60044 */ swc1 $f6, 0x0044($sp) -/* 012F4 80A7D114 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 012F8 80A7D118 AFAC0010 */ sw $t4, 0x0010($sp) -/* 012FC 80A7D11C 0C00A511 */ jal func_80029444 -/* 01300 80A7D120 E7A80048 */ swc1 $f8, 0x0048($sp) -/* 01304 80A7D124 240D0008 */ addiu $t5, $zero, 0x0008 ## $t5 = 00000008 -/* 01308 80A7D128 AFAD0010 */ sw $t5, 0x0010($sp) -/* 0130C 80A7D12C 8FA4005C */ lw $a0, 0x005C($sp) -/* 01310 80A7D130 27A50040 */ addiu $a1, $sp, 0x0040 ## $a1 = FFFFFFE8 -/* 01314 80A7D134 24060028 */ addiu $a2, $zero, 0x0028 ## $a2 = 00000028 -/* 01318 80A7D138 0C00A511 */ jal func_80029444 -/* 0131C 80A7D13C 240700C8 */ addiu $a3, $zero, 0x00C8 ## $a3 = 000000C8 -/* 01320 80A7D140 860E031A */ lh $t6, 0x031A($s0) ## 0000031A -.L80A7D144: -/* 01324 80A7D144 19C00015 */ blez $t6, .L80A7D19C -/* 01328 80A7D148 00000000 */ nop -/* 0132C 80A7D14C 96020314 */ lhu $v0, 0x0314($s0) ## 00000314 -/* 01330 80A7D150 87B9004E */ lh $t9, 0x004E($sp) -/* 01334 80A7D154 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 01338 80A7D158 304F0004 */ andi $t7, $v0, 0x0004 ## $t7 = 00000000 -/* 0133C 80A7D15C 11E00004 */ beq $t7, $zero, .L80A7D170 -/* 01340 80A7D160 00000000 */ nop -/* 01344 80A7D164 8618031C */ lh $t8, 0x031C($s0) ## 0000031C -/* 01348 80A7D168 1B00000C */ blez $t8, .L80A7D19C -/* 0134C 80A7D16C 00000000 */ nop -.L80A7D170: -/* 01350 80A7D170 13210004 */ beq $t9, $at, .L80A7D184 -/* 01354 80A7D174 30480001 */ andi $t0, $v0, 0x0001 ## $t0 = 00000000 -/* 01358 80A7D178 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 0135C 80A7D17C 5721000C */ bnel $t9, $at, .L80A7D1B0 -/* 01360 80A7D180 960A0088 */ lhu $t2, 0x0088($s0) ## 00000088 -.L80A7D184: -/* 01364 80A7D184 11000009 */ beq $t0, $zero, .L80A7D1AC -/* 01368 80A7D188 3C0980A8 */ lui $t1, %hi(D_80A7DEB8) ## $t1 = 80A80000 -/* 0136C 80A7D18C 8529DEB8 */ lh $t1, %lo(D_80A7DEB8)($t1) -/* 01370 80A7D190 29210004 */ slti $at, $t1, 0x0004 -/* 01374 80A7D194 54200006 */ bnel $at, $zero, .L80A7D1B0 -/* 01378 80A7D198 960A0088 */ lhu $t2, 0x0088($s0) ## 00000088 -.L80A7D19C: -/* 0137C 80A7D19C 0C29F47D */ jal func_80A7D1F4 -/* 01380 80A7D1A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01384 80A7D1A4 1000000F */ beq $zero, $zero, .L80A7D1E4 -/* 01388 80A7D1A8 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7D1AC: -/* 0138C 80A7D1AC 960A0088 */ lhu $t2, 0x0088($s0) ## 00000088 -.L80A7D1B0: -/* 01390 80A7D1B0 304C0010 */ andi $t4, $v0, 0x0010 ## $t4 = 00000000 -/* 01394 80A7D1B4 314B0040 */ andi $t3, $t2, 0x0040 ## $t3 = 00000000 -/* 01398 80A7D1B8 5560000A */ bnel $t3, $zero, .L80A7D1E4 -/* 0139C 80A7D1BC 8FBF0024 */ lw $ra, 0x0024($sp) -/* 013A0 80A7D1C0 11800005 */ beq $t4, $zero, .L80A7D1D8 -/* 013A4 80A7D1C4 00000000 */ nop -/* 013A8 80A7D1C8 0C29F4E7 */ jal func_80A7D39C -/* 013AC 80A7D1CC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 013B0 80A7D1D0 10000004 */ beq $zero, $zero, .L80A7D1E4 -/* 013B4 80A7D1D4 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7D1D8: -/* 013B8 80A7D1D8 0C29F0E8 */ jal func_80A7C3A0 -/* 013BC 80A7D1DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 013C0 80A7D1E0 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7D1E4: -/* 013C4 80A7D1E4 8FB00020 */ lw $s0, 0x0020($sp) -/* 013C8 80A7D1E8 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 013CC 80A7D1EC 03E00008 */ jr $ra -/* 013D0 80A7D1F0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D1F4.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D1F4.s deleted file mode 100644 index df7fe0be43..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D1F4.s +++ /dev/null @@ -1,39 +0,0 @@ -.late_rodata -glabel D_80A7E040 - .float -0.8 - -glabel D_80A7E044 - .word 0xBD23D70A - -.text -glabel func_80A7D1F4 -/* 013D4 80A7D1F4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 013D8 80A7D1F8 AFBF0014 */ sw $ra, 0x0014($sp) -/* 013DC 80A7D1FC 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064 -/* 013E0 80A7D200 A48E031A */ sh $t6, 0x031A($a0) ## 0000031A -/* 013E4 80A7D204 0C29EFD6 */ jal func_80A7BF58 -/* 013E8 80A7D208 AFA40018 */ sw $a0, 0x0018($sp) -/* 013EC 80A7D20C 8FA40018 */ lw $a0, 0x0018($sp) -/* 013F0 80A7D210 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 013F4 80A7D214 3C0180A8 */ lui $at, %hi(D_80A7E040) ## $at = 80A80000 -/* 013F8 80A7D218 948F0314 */ lhu $t7, 0x0314($a0) ## 00000314 -/* 013FC 80A7D21C E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060 -/* 01400 80A7D220 E4800068 */ swc1 $f0, 0x0068($a0) ## 00000068 -/* 01404 80A7D224 C424E040 */ lwc1 $f4, %lo(D_80A7E040)($at) -/* 01408 80A7D228 3C0180A8 */ lui $at, %hi(D_80A7E044) ## $at = 80A80000 -/* 0140C 80A7D22C 31E8FFFC */ andi $t0, $t7, 0xFFFC ## $t0 = 00000000 -/* 01410 80A7D230 E4840070 */ swc1 $f4, 0x0070($a0) ## 00000070 -/* 01414 80A7D234 C426E044 */ lwc1 $f6, %lo(D_80A7E044)($at) -/* 01418 80A7D238 310AFEFF */ andi $t2, $t0, 0xFEFF ## $t2 = 00000000 -/* 0141C 80A7D23C 3C1980A8 */ lui $t9, %hi(func_80A7D26C) ## $t9 = 80A80000 -/* 01420 80A7D240 A4880314 */ sh $t0, 0x0314($a0) ## 00000314 -/* 01424 80A7D244 2739D26C */ addiu $t9, $t9, %lo(func_80A7D26C) ## $t9 = 80A7D26C -/* 01428 80A7D248 354B0008 */ ori $t3, $t2, 0x0008 ## $t3 = 00000008 -/* 0142C 80A7D24C A48A0314 */ sh $t2, 0x0314($a0) ## 00000314 -/* 01430 80A7D250 AC990310 */ sw $t9, 0x0310($a0) ## 00000310 -/* 01434 80A7D254 A48B0314 */ sh $t3, 0x0314($a0) ## 00000314 -/* 01438 80A7D258 E486006C */ swc1 $f6, 0x006C($a0) ## 0000006C -/* 0143C 80A7D25C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 01440 80A7D260 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 01444 80A7D264 03E00008 */ jr $ra -/* 01448 80A7D268 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D26C.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D26C.s deleted file mode 100644 index 2afa99e742..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D26C.s +++ /dev/null @@ -1,100 +0,0 @@ -.late_rodata -glabel D_80A7E048 - .float 0.001 - -glabel D_80A7E04C - .word 0x3851B717 -glabel D_80A7E050 - .float 0.3 - -glabel D_80A7E054 - .float 0.04 - -glabel D_80A7E058 - .float 0.02 - -.text -glabel func_80A7D26C -/* 0144C 80A7D26C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 01450 80A7D270 AFBF0024 */ sw $ra, 0x0024($sp) -/* 01454 80A7D274 AFB00020 */ sw $s0, 0x0020($sp) -/* 01458 80A7D278 AFA5002C */ sw $a1, 0x002C($sp) -/* 0145C 80A7D27C 848E00B4 */ lh $t6, 0x00B4($a0) ## 000000B4 -/* 01460 80A7D280 849800B6 */ lh $t8, 0x00B6($a0) ## 000000B6 -/* 01464 80A7D284 3C0180A8 */ lui $at, %hi(D_80A7E048) ## $at = 80A80000 -/* 01468 80A7D288 C42CE048 */ lwc1 $f12, %lo(D_80A7E048)($at) -/* 0146C 80A7D28C 25CFFE0C */ addiu $t7, $t6, 0xFE0C ## $t7 = FFFFFE0C -/* 01470 80A7D290 271900C8 */ addiu $t9, $t8, 0x00C8 ## $t9 = 000000C8 -/* 01474 80A7D294 A48F00B4 */ sh $t7, 0x00B4($a0) ## 000000B4 -/* 01478 80A7D298 A49900B6 */ sh $t9, 0x00B6($a0) ## 000000B6 -/* 0147C 80A7D29C 3C0180A8 */ lui $at, %hi(D_80A7E04C) ## $at = 80A80000 -/* 01480 80A7D2A0 C426E04C */ lwc1 $f6, %lo(D_80A7E04C)($at) -/* 01484 80A7D2A4 C4840050 */ lwc1 $f4, 0x0050($a0) ## 00000050 -/* 01488 80A7D2A8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 0148C 80A7D2AC 46062001 */ sub.s $f0, $f4, $f6 -/* 01490 80A7D2B0 460C003C */ c.lt.s $f0, $f12 -/* 01494 80A7D2B4 00000000 */ nop -/* 01498 80A7D2B8 45020004 */ bc1fl .L80A7D2CC -/* 0149C 80A7D2BC 46000086 */ mov.s $f2, $f0 -/* 014A0 80A7D2C0 10000002 */ beq $zero, $zero, .L80A7D2CC -/* 014A4 80A7D2C4 46006086 */ mov.s $f2, $f12 -/* 014A8 80A7D2C8 46000086 */ mov.s $f2, $f0 -.L80A7D2CC: -/* 014AC 80A7D2CC 44051000 */ mfc1 $a1, $f2 -/* 014B0 80A7D2D0 0C00B58B */ jal Actor_SetScale - -/* 014B4 80A7D2D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 014B8 80A7D2D8 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000 -/* 014BC 80A7D2DC 44814000 */ mtc1 $at, $f8 ## $f8 = 5.00 -/* 014C0 80A7D2E0 C6000084 */ lwc1 $f0, 0x0084($s0) ## 00000084 -/* 014C4 80A7D2E4 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000 -/* 014C8 80A7D2E8 4600403C */ c.lt.s $f8, $f0 -/* 014CC 80A7D2EC 00000000 */ nop -/* 014D0 80A7D2F0 45020021 */ bc1fl .L80A7D378 -/* 014D4 80A7D2F4 8608031A */ lh $t0, 0x031A($s0) ## 0000031A -/* 014D8 80A7D2F8 44815000 */ mtc1 $at, $f10 ## $f10 = 30.00 -/* 014DC 80A7D2FC 00000000 */ nop -/* 014E0 80A7D300 460A003C */ c.lt.s $f0, $f10 -/* 014E4 80A7D304 00000000 */ nop -/* 014E8 80A7D308 4502001B */ bc1fl .L80A7D378 -/* 014EC 80A7D30C 8608031A */ lh $t0, 0x031A($s0) ## 0000031A -/* 014F0 80A7D310 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 014F4 80A7D314 00000000 */ nop -/* 014F8 80A7D318 3C0180A8 */ lui $at, %hi(D_80A7E050) ## $at = 80A80000 -/* 014FC 80A7D31C C430E050 */ lwc1 $f16, %lo(D_80A7E050)($at) -/* 01500 80A7D320 4610003C */ c.lt.s $f0, $f16 -/* 01504 80A7D324 00000000 */ nop -/* 01508 80A7D328 45020013 */ bc1fl .L80A7D378 -/* 0150C 80A7D32C 8608031A */ lh $t0, 0x031A($s0) ## 0000031A -/* 01510 80A7D330 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01514 80A7D334 00000000 */ nop -/* 01518 80A7D338 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000 -/* 0151C 80A7D33C 44811000 */ mtc1 $at, $f2 ## $f2 = 5.00 -/* 01520 80A7D340 3C0180A8 */ lui $at, %hi(D_80A7E054) ## $at = 80A80000 -/* 01524 80A7D344 C432E054 */ lwc1 $f18, %lo(D_80A7E054)($at) -/* 01528 80A7D348 3C0180A8 */ lui $at, %hi(D_80A7E058) ## $at = 80A80000 -/* 0152C 80A7D34C C426E058 */ lwc1 $f6, %lo(D_80A7E058)($at) -/* 01530 80A7D350 46120102 */ mul.s $f4, $f0, $f18 -/* 01534 80A7D354 44071000 */ mfc1 $a3, $f2 -/* 01538 80A7D358 8FA4002C */ lw $a0, 0x002C($sp) -/* 0153C 80A7D35C 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 01540 80A7D360 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000 -/* 01544 80A7D364 E7A20010 */ swc1 $f2, 0x0010($sp) -/* 01548 80A7D368 46062200 */ add.s $f8, $f4, $f6 -/* 0154C 80A7D36C 0C00A4F9 */ jal func_800293E4 -/* 01550 80A7D370 E7A80014 */ swc1 $f8, 0x0014($sp) -/* 01554 80A7D374 8608031A */ lh $t0, 0x031A($s0) ## 0000031A -.L80A7D378: -/* 01558 80A7D378 5D000004 */ bgtzl $t0, .L80A7D38C -/* 0155C 80A7D37C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01560 80A7D380 0C00B55C */ jal Actor_Kill - -/* 01564 80A7D384 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01568 80A7D388 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7D38C: -/* 0156C 80A7D38C 8FB00020 */ lw $s0, 0x0020($sp) -/* 01570 80A7D390 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 01574 80A7D394 03E00008 */ jr $ra -/* 01578 80A7D398 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D39C.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D39C.s deleted file mode 100644 index d460e21b5a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D39C.s +++ /dev/null @@ -1,64 +0,0 @@ -.late_rodata -glabel D_80A7E05C - .word 0x477FFF80 -glabel D_80A7E060 - .float 1500.0 - -glabel D_80A7E064 - .word 0x477FFF80 - -.text -glabel func_80A7D39C -/* 0157C 80A7D39C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 01580 80A7D3A0 AFBF001C */ sw $ra, 0x001C($sp) -/* 01584 80A7D3A4 AFB00018 */ sw $s0, 0x0018($sp) -/* 01588 80A7D3A8 0C29EFD6 */ jal func_80A7BF58 -/* 0158C 80A7D3AC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 01590 80A7D3B0 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 01594 80A7D3B4 44812000 */ mtc1 $at, $f4 ## $f4 = 1.50 -/* 01598 80A7D3B8 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064 -/* 0159C 80A7D3BC A60E031A */ sh $t6, 0x031A($s0) ## 0000031A -/* 015A0 80A7D3C0 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 015A4 80A7D3C4 E6040324 */ swc1 $f4, 0x0324($s0) ## 00000324 -/* 015A8 80A7D3C8 3C0180A8 */ lui $at, %hi(D_80A7E05C) ## $at = 80A80000 -/* 015AC 80A7D3CC C426E05C */ lwc1 $f6, %lo(D_80A7E05C)($at) -/* 015B0 80A7D3D0 46060202 */ mul.s $f8, $f0, $f6 -/* 015B4 80A7D3D4 4600428D */ trunc.w.s $f10, $f8 -/* 015B8 80A7D3D8 44185000 */ mfc1 $t8, $f10 -/* 015BC 80A7D3DC 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 015C0 80A7D3E0 A6180328 */ sh $t8, 0x0328($s0) ## 00000328 -/* 015C4 80A7D3E4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 015C8 80A7D3E8 44818000 */ mtc1 $at, $f16 ## $f16 = 0.50 -/* 015CC 80A7D3EC 3C0180A8 */ lui $at, %hi(D_80A7E060) ## $at = 80A80000 -/* 015D0 80A7D3F0 C424E060 */ lwc1 $f4, %lo(D_80A7E060)($at) -/* 015D4 80A7D3F4 46100481 */ sub.s $f18, $f0, $f16 -/* 015D8 80A7D3F8 46049182 */ mul.s $f6, $f18, $f4 -/* 015DC 80A7D3FC 4600320D */ trunc.w.s $f8, $f6 -/* 015E0 80A7D400 44084000 */ mfc1 $t0, $f8 -/* 015E4 80A7D404 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 015E8 80A7D408 A6080316 */ sh $t0, 0x0316($s0) ## 00000316 -/* 015EC 80A7D40C 3C0180A8 */ lui $at, %hi(D_80A7E064) ## $at = 80A80000 -/* 015F0 80A7D410 C42AE064 */ lwc1 $f10, %lo(D_80A7E064)($at) -/* 015F4 80A7D414 3C053B44 */ lui $a1, 0x3B44 ## $a1 = 3B440000 -/* 015F8 80A7D418 34A59BA6 */ ori $a1, $a1, 0x9BA6 ## $a1 = 3B449BA6 -/* 015FC 80A7D41C 460A0402 */ mul.s $f16, $f0, $f10 -/* 01600 80A7D420 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01604 80A7D424 4600848D */ trunc.w.s $f18, $f16 -/* 01608 80A7D428 440A9000 */ mfc1 $t2, $f18 -/* 0160C 80A7D42C 0C00B58B */ jal Actor_SetScale - -/* 01610 80A7D430 A60A0032 */ sh $t2, 0x0032($s0) ## 00000032 -/* 01614 80A7D434 960C0314 */ lhu $t4, 0x0314($s0) ## 00000314 -/* 01618 80A7D438 3C0B80A8 */ lui $t3, %hi(func_80A7D460) ## $t3 = 80A80000 -/* 0161C 80A7D43C 256BD460 */ addiu $t3, $t3, %lo(func_80A7D460) ## $t3 = 80A7D460 -/* 01620 80A7D440 358D0100 */ ori $t5, $t4, 0x0100 ## $t5 = 00000100 -/* 01624 80A7D444 AE0B0310 */ sw $t3, 0x0310($s0) ## 00000310 -/* 01628 80A7D448 A60D0314 */ sh $t5, 0x0314($s0) ## 00000314 -/* 0162C 80A7D44C 8FBF001C */ lw $ra, 0x001C($sp) -/* 01630 80A7D450 8FB00018 */ lw $s0, 0x0018($sp) -/* 01634 80A7D454 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 01638 80A7D458 03E00008 */ jr $ra -/* 0163C 80A7D45C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D460.s b/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D460.s deleted file mode 100644 index a1b93caef0..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D460.s +++ /dev/null @@ -1,635 +0,0 @@ -.rdata -glabel D_80A7DF40 - .asciz "" - .balign 4 - -glabel D_80A7DF4C - .asciz "warning:目標 Actor が NULL (%s %d)\n" - .balign 4 - -glabel D_80A7DF70 - .asciz "../z_en_mushi.c" - .balign 4 - -glabel D_80A7DF80 - .asciz "\x1b[m" - .balign 4 - -glabel D_80A7DF84 - .asciz "" - .balign 4 - -glabel D_80A7DF90 - .asciz "BG 抜け? Actor_delete します(%s %d)\n" - .balign 4 - -glabel D_80A7DFB8 - .asciz "../z_en_mushi.c" - .balign 4 - -glabel D_80A7DFC8 - .asciz "\x1b[m" - .balign 4 - -.late_rodata -glabel D_80A7E068 - .word 0x3B5A740D -glabel D_80A7E06C - .word 0x3F7FBE77 -glabel D_80A7E070 - .float 1.1 - -glabel D_80A7E074 - .word 0x3D8F5C29 -glabel D_80A7E078 - .word 0x3F7FBE77 -glabel D_80A7E07C - .float 0.6 - -glabel D_80A7E080 - .word 0x3D8F5C29 -glabel D_80A7E084 - .float 0.1 - -glabel D_80A7E088 - .float 0.8 - -glabel D_80A7E08C - .float 1.3 - -glabel D_80A7E090 - .word 0x477FFF00 -glabel D_80A7E094 - .float 0.01 - -glabel D_80A7E098 - .word 0x3A51B717 -glabel D_80A7E09C - .word 0x3E0F5C29 -glabel D_80A7E0A0 - .float 0.12 - -glabel D_80A7E0A4 - .float 1.3 - -glabel D_80A7E0A8 - .float 1.9 - -glabel D_80A7E0AC - .word 0xC6F9EC00 - -.text -glabel func_80A7D460 -/* 01640 80A7D460 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 01644 80A7D464 AFBF0024 */ sw $ra, 0x0024($sp) -/* 01648 80A7D468 AFB00020 */ sw $s0, 0x0020($sp) -/* 0164C 80A7D46C AFA5005C */ sw $a1, 0x005C($sp) -/* 01650 80A7D470 AFA00050 */ sw $zero, 0x0050($sp) -/* 01654 80A7D474 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 01658 80A7D478 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 0165C 80A7D47C 31CF0003 */ andi $t7, $t6, 0x0003 ## $t7 = 00000000 -/* 01660 80A7D480 A7AF003A */ sh $t7, 0x003A($sp) -/* 01664 80A7D484 8C820320 */ lw $v0, 0x0320($a0) ## 00000320 -/* 01668 80A7D488 10400005 */ beq $v0, $zero, .L80A7D4A0 -/* 0166C 80A7D48C 24840024 */ addiu $a0, $a0, 0x0024 ## $a0 = 00000024 -/* 01670 80A7D490 0C032D94 */ jal func_800CB650 -/* 01674 80A7D494 24450024 */ addiu $a1, $v0, 0x0024 ## $a1 = 00000024 -/* 01678 80A7D498 10000015 */ beq $zero, $zero, .L80A7D4F0 -/* 0167C 80A7D49C E7A00040 */ swc1 $f0, 0x0040($sp) -.L80A7D4A0: -/* 01680 80A7D4A0 96180314 */ lhu $t8, 0x0314($s0) ## 00000314 -/* 01684 80A7D4A4 3C0480A8 */ lui $a0, %hi(D_80A7DF40) ## $a0 = 80A80000 -/* 01688 80A7D4A8 33190010 */ andi $t9, $t8, 0x0010 ## $t9 = 00000000 -/* 0168C 80A7D4AC 5320000D */ beql $t9, $zero, .L80A7D4E4 -/* 01690 80A7D4B0 3C014220 */ lui $at, 0x4220 ## $at = 42200000 -/* 01694 80A7D4B4 0C00084C */ jal osSyncPrintf - -/* 01698 80A7D4B8 2484DF40 */ addiu $a0, $a0, %lo(D_80A7DF40) ## $a0 = 80A7DF40 -/* 0169C 80A7D4BC 3C0480A8 */ lui $a0, %hi(D_80A7DF4C) ## $a0 = 80A80000 -/* 016A0 80A7D4C0 3C0580A8 */ lui $a1, %hi(D_80A7DF70) ## $a1 = 80A80000 -/* 016A4 80A7D4C4 24A5DF70 */ addiu $a1, $a1, %lo(D_80A7DF70) ## $a1 = 80A7DF70 -/* 016A8 80A7D4C8 2484DF4C */ addiu $a0, $a0, %lo(D_80A7DF4C) ## $a0 = 80A7DF4C -/* 016AC 80A7D4CC 0C00084C */ jal osSyncPrintf - -/* 016B0 80A7D4D0 24060416 */ addiu $a2, $zero, 0x0416 ## $a2 = 00000416 -/* 016B4 80A7D4D4 3C0480A8 */ lui $a0, %hi(D_80A7DF80) ## $a0 = 80A80000 -/* 016B8 80A7D4D8 0C00084C */ jal osSyncPrintf - -/* 016BC 80A7D4DC 2484DF80 */ addiu $a0, $a0, %lo(D_80A7DF80) ## $a0 = 80A7DF80 -/* 016C0 80A7D4E0 3C014220 */ lui $at, 0x4220 ## $at = 42200000 -.L80A7D4E4: -/* 016C4 80A7D4E4 44812000 */ mtc1 $at, $f4 ## $f4 = 40.00 -/* 016C8 80A7D4E8 00000000 */ nop -/* 016CC 80A7D4EC E7A40040 */ swc1 $f4, 0x0040($sp) -.L80A7D4F0: -/* 016D0 80A7D4F0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 016D4 80A7D4F4 44816000 */ mtc1 $at, $f12 ## $f12 = 1.00 -/* 016D8 80A7D4F8 3C0280A8 */ lui $v0, %hi(D_80A7DEB0) ## $v0 = 80A80000 -/* 016DC 80A7D4FC 2442DEB0 */ addiu $v0, $v0, %lo(D_80A7DEB0) ## $v0 = 80A7DEB0 -/* 016E0 80A7D500 3C0180A8 */ lui $at, %hi(D_80A7E068) ## $at = 80A80000 -/* 016E4 80A7D504 C428E068 */ lwc1 $f8, %lo(D_80A7E068)($at) -/* 016E8 80A7D508 C4460000 */ lwc1 $f6, 0x0000($v0) ## 80A7DEB0 -/* 016EC 80A7D50C 3C0180A8 */ lui $at, %hi(D_80A7E06C) ## $at = 80A80000 -/* 016F0 80A7D510 46083280 */ add.s $f10, $f6, $f8 -/* 016F4 80A7D514 E44A0000 */ swc1 $f10, 0x0000($v0) ## 80A7DEB0 -/* 016F8 80A7D518 C4400000 */ lwc1 $f0, 0x0000($v0) ## 80A7DEB0 -/* 016FC 80A7D51C 4600603C */ c.lt.s $f12, $f0 -/* 01700 80A7D520 00000000 */ nop -/* 01704 80A7D524 45000003 */ bc1f .L80A7D534 -/* 01708 80A7D528 00000000 */ nop -/* 0170C 80A7D52C E44C0000 */ swc1 $f12, 0x0000($v0) ## 80A7DEB0 -/* 01710 80A7D530 C4400000 */ lwc1 $f0, 0x0000($v0) ## 80A7DEB0 -.L80A7D534: -/* 01714 80A7D534 C430E06C */ lwc1 $f16, %lo(D_80A7E06C)($at) -/* 01718 80A7D538 4600803C */ c.lt.s $f16, $f0 -/* 0171C 80A7D53C 00000000 */ nop -/* 01720 80A7D540 45020005 */ bc1fl .L80A7D558 -/* 01724 80A7D544 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -/* 01728 80A7D548 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00 -/* 0172C 80A7D54C 10000019 */ beq $zero, $zero, .L80A7D5B4 -/* 01730 80A7D550 8E080320 */ lw $t0, 0x0320($s0) ## 00000320 -/* 01734 80A7D554 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -.L80A7D558: -/* 01738 80A7D558 44819000 */ mtc1 $at, $f18 ## $f18 = 900.00 -/* 0173C 80A7D55C C7A40040 */ lwc1 $f4, 0x0040($sp) -/* 01740 80A7D560 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 01744 80A7D564 4604903C */ c.lt.s $f18, $f4 -/* 01748 80A7D568 00000000 */ nop -/* 0174C 80A7D56C 4502000C */ bc1fl .L80A7D5A0 -/* 01750 80A7D570 46006101 */ sub.s $f4, $f12, $f0 -/* 01754 80A7D574 3C0180A8 */ lui $at, %hi(D_80A7E070) ## $at = 80A80000 -/* 01758 80A7D578 C426E070 */ lwc1 $f6, %lo(D_80A7E070)($at) -/* 0175C 80A7D57C 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 01760 80A7D580 44815000 */ mtc1 $at, $f10 ## $f10 = 100.00 -/* 01764 80A7D584 46003201 */ sub.s $f8, $f6, $f0 -/* 01768 80A7D588 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 0176C 80A7D58C 44819000 */ mtc1 $at, $f18 ## $f18 = 20.00 -/* 01770 80A7D590 460A4402 */ mul.s $f16, $f8, $f10 -/* 01774 80A7D594 10000006 */ beq $zero, $zero, .L80A7D5B0 -/* 01778 80A7D598 46128080 */ add.s $f2, $f16, $f18 -/* 0177C 80A7D59C 46006101 */ sub.s $f4, $f12, $f0 -.L80A7D5A0: -/* 01780 80A7D5A0 44813000 */ mtc1 $at, $f6 ## $f6 = 20.00 -/* 01784 80A7D5A4 00000000 */ nop -/* 01788 80A7D5A8 46062082 */ mul.s $f2, $f4, $f6 -/* 0178C 80A7D5AC 00000000 */ nop -.L80A7D5B0: -/* 01790 80A7D5B0 8E080320 */ lw $t0, 0x0320($s0) ## 00000320 -.L80A7D5B4: -/* 01794 80A7D5B4 11000022 */ beq $t0, $zero, .L80A7D640 -/* 01798 80A7D5B8 00000000 */ nop -/* 0179C 80A7D5BC 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 017A0 80A7D5C0 E7A2003C */ swc1 $f2, 0x003C($sp) -/* 017A4 80A7D5C4 3C0180A8 */ lui $at, %hi(D_80A7E074) ## $at = 80A80000 -/* 017A8 80A7D5C8 C428E074 */ lwc1 $f8, %lo(D_80A7E074)($at) -/* 017AC 80A7D5CC C7A2003C */ lwc1 $f2, 0x003C($sp) -/* 017B0 80A7D5D0 4608003C */ c.lt.s $f0, $f8 -/* 017B4 80A7D5D4 00000000 */ nop -/* 017B8 80A7D5D8 45000019 */ bc1f .L80A7D640 -/* 017BC 80A7D5DC 00000000 */ nop -/* 017C0 80A7D5E0 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 017C4 80A7D5E4 E7A2003C */ swc1 $f2, 0x003C($sp) -/* 017C8 80A7D5E8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 017CC 80A7D5EC 44815000 */ mtc1 $at, $f10 ## $f10 = 0.50 -/* 017D0 80A7D5F0 C7A2003C */ lwc1 $f2, 0x003C($sp) -/* 017D4 80A7D5F4 8E090320 */ lw $t1, 0x0320($s0) ## 00000320 -/* 017D8 80A7D5F8 460A0401 */ sub.s $f16, $f0, $f10 -/* 017DC 80A7D5FC 8E0A0320 */ lw $t2, 0x0320($s0) ## 00000320 -/* 017E0 80A7D600 C5240024 */ lwc1 $f4, 0x0024($t1) ## 00000024 -/* 017E4 80A7D604 46028482 */ mul.s $f18, $f16, $f2 -/* 017E8 80A7D608 46049180 */ add.s $f6, $f18, $f4 -/* 017EC 80A7D60C E6060008 */ swc1 $f6, 0x0008($s0) ## 00000008 -/* 017F0 80A7D610 C5480028 */ lwc1 $f8, 0x0028($t2) ## 00000028 -/* 017F4 80A7D614 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 017F8 80A7D618 E608000C */ swc1 $f8, 0x000C($s0) ## 0000000C -/* 017FC 80A7D61C 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 01800 80A7D620 44815000 */ mtc1 $at, $f10 ## $f10 = 0.50 -/* 01804 80A7D624 C7A2003C */ lwc1 $f2, 0x003C($sp) -/* 01808 80A7D628 8E0B0320 */ lw $t3, 0x0320($s0) ## 00000320 -/* 0180C 80A7D62C 460A0401 */ sub.s $f16, $f0, $f10 -/* 01810 80A7D630 C564002C */ lwc1 $f4, 0x002C($t3) ## 0000002C -/* 01814 80A7D634 46028482 */ mul.s $f18, $f16, $f2 -/* 01818 80A7D638 46049180 */ add.s $f6, $f18, $f4 -/* 0181C 80A7D63C E6060010 */ swc1 $f6, 0x0010($s0) ## 00000010 -.L80A7D640: -/* 01820 80A7D640 3C0280A8 */ lui $v0, %hi(D_80A7DEB0) ## $v0 = 80A80000 -/* 01824 80A7D644 2442DEB0 */ addiu $v0, $v0, %lo(D_80A7DEB0) ## $v0 = 80A7DEB0 -/* 01828 80A7D648 3C0180A8 */ lui $at, %hi(D_80A7E078) ## $at = 80A80000 -/* 0182C 80A7D64C C428E078 */ lwc1 $f8, %lo(D_80A7E078)($at) -/* 01830 80A7D650 C44A0000 */ lwc1 $f10, 0x0000($v0) ## 80A7DEB0 -/* 01834 80A7D654 460A403C */ c.lt.s $f8, $f10 -/* 01838 80A7D658 00000000 */ nop -/* 0183C 80A7D65C 4500000B */ bc1f .L80A7D68C -/* 01840 80A7D660 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024 -/* 01844 80A7D664 0C01E01A */ jal Math_Vec3f_Yaw - -/* 01848 80A7D668 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 -/* 0184C 80A7D66C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01850 80A7D670 A6020328 */ sh $v0, 0x0328($s0) ## 00000328 -/* 01854 80A7D674 3C0180A8 */ lui $at, %hi(D_80A7E07C) ## $at = 80A80000 -/* 01858 80A7D678 C422E07C */ lwc1 $f2, %lo(D_80A7E07C)($at) -/* 0185C 80A7D67C 46020402 */ mul.s $f16, $f0, $f2 -/* 01860 80A7D680 46028480 */ add.s $f18, $f16, $f2 -/* 01864 80A7D684 10000048 */ beq $zero, $zero, .L80A7D7A8 -/* 01868 80A7D688 E6120324 */ swc1 $f18, 0x0324($s0) ## 00000324 -.L80A7D68C: -/* 0186C 80A7D68C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01870 80A7D690 00000000 */ nop -/* 01874 80A7D694 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 01878 80A7D698 44816000 */ mtc1 $at, $f12 ## $f12 = 1.00 -/* 0187C 80A7D69C 3C0180A8 */ lui $at, %hi(D_80A7E080) ## $at = 80A80000 -/* 01880 80A7D6A0 C424E080 */ lwc1 $f4, %lo(D_80A7E080)($at) -/* 01884 80A7D6A4 260C0024 */ addiu $t4, $s0, 0x0024 ## $t4 = 00000024 -/* 01888 80A7D6A8 4604003C */ c.lt.s $f0, $f4 -/* 0188C 80A7D6AC 00000000 */ nop -/* 01890 80A7D6B0 4500003D */ bc1f .L80A7D7A8 -/* 01894 80A7D6B4 00000000 */ nop -/* 01898 80A7D6B8 AFAC002C */ sw $t4, 0x002C($sp) -/* 0189C 80A7D6BC C6060324 */ lwc1 $f6, 0x0324($s0) ## 00000324 -/* 018A0 80A7D6C0 3C0180A8 */ lui $at, %hi(D_80A7E084) ## $at = 80A80000 -/* 018A4 80A7D6C4 4606603C */ c.lt.s $f12, $f6 -/* 018A8 80A7D6C8 00000000 */ nop -/* 018AC 80A7D6CC 45000004 */ bc1f .L80A7D6E0 -/* 018B0 80A7D6D0 00000000 */ nop -/* 018B4 80A7D6D4 C428E084 */ lwc1 $f8, %lo(D_80A7E084)($at) -/* 018B8 80A7D6D8 1000000A */ beq $zero, $zero, .L80A7D704 -/* 018BC 80A7D6DC E6080324 */ swc1 $f8, 0x0324($s0) ## 00000324 -.L80A7D6E0: -/* 018C0 80A7D6E0 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 018C4 80A7D6E4 00000000 */ nop -/* 018C8 80A7D6E8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 018CC 80A7D6EC 44816000 */ mtc1 $at, $f12 ## $f12 = 1.00 -/* 018D0 80A7D6F0 3C0180A8 */ lui $at, %hi(D_80A7E088) ## $at = 80A80000 -/* 018D4 80A7D6F4 C42AE088 */ lwc1 $f10, %lo(D_80A7E088)($at) -/* 018D8 80A7D6F8 460A0402 */ mul.s $f16, $f0, $f10 -/* 018DC 80A7D6FC 460C8480 */ add.s $f18, $f16, $f12 -/* 018E0 80A7D700 E6120324 */ swc1 $f18, 0x0324($s0) ## 00000324 -.L80A7D704: -/* 018E4 80A7D704 3C0180A8 */ lui $at, %hi(D_80A7E08C) ## $at = 80A80000 -/* 018E8 80A7D708 C424E08C */ lwc1 $f4, %lo(D_80A7E08C)($at) -/* 018EC 80A7D70C 3C0180A8 */ lui $at, %hi(D_80A7DEB0) ## $at = 80A80000 -/* 018F0 80A7D710 C426DEB0 */ lwc1 $f6, %lo(D_80A7DEB0)($at) -/* 018F4 80A7D714 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00 -/* 018F8 80A7D718 46062081 */ sub.s $f2, $f4, $f6 -/* 018FC 80A7D71C 4608103C */ c.lt.s $f2, $f8 -/* 01900 80A7D720 00000000 */ nop -/* 01904 80A7D724 45020005 */ bc1fl .L80A7D73C -/* 01908 80A7D728 4602603C */ c.lt.s $f12, $f2 -/* 0190C 80A7D72C 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00 -/* 01910 80A7D730 10000009 */ beq $zero, $zero, .L80A7D758 -/* 01914 80A7D734 00000000 */ nop -/* 01918 80A7D738 4602603C */ c.lt.s $f12, $f2 -.L80A7D73C: -/* 0191C 80A7D73C 00000000 */ nop -/* 01920 80A7D740 45020004 */ bc1fl .L80A7D754 -/* 01924 80A7D744 46001006 */ mov.s $f0, $f2 -/* 01928 80A7D748 10000002 */ beq $zero, $zero, .L80A7D754 -/* 0192C 80A7D74C 46006006 */ mov.s $f0, $f12 -/* 01930 80A7D750 46001006 */ mov.s $f0, $f2 -.L80A7D754: -/* 01934 80A7D754 46000086 */ mov.s $f2, $f0 -.L80A7D758: -/* 01938 80A7D758 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 0193C 80A7D75C E7A20034 */ swc1 $f2, 0x0034($sp) -/* 01940 80A7D760 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 01944 80A7D764 44815000 */ mtc1 $at, $f10 ## $f10 = 0.50 -/* 01948 80A7D768 3C0180A8 */ lui $at, %hi(D_80A7E090) ## $at = 80A80000 -/* 0194C 80A7D76C C432E090 */ lwc1 $f18, %lo(D_80A7E090)($at) -/* 01950 80A7D770 460A0401 */ sub.s $f16, $f0, $f10 -/* 01954 80A7D774 C7A20034 */ lwc1 $f2, 0x0034($sp) -/* 01958 80A7D778 8FA4002C */ lw $a0, 0x002C($sp) -/* 0195C 80A7D77C 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 -/* 01960 80A7D780 46128102 */ mul.s $f4, $f16, $f18 -/* 01964 80A7D784 00000000 */ nop -/* 01968 80A7D788 46022182 */ mul.s $f6, $f4, $f2 -/* 0196C 80A7D78C 4600320D */ trunc.w.s $f8, $f6 -/* 01970 80A7D790 440E4000 */ mfc1 $t6, $f8 -/* 01974 80A7D794 0C01E01A */ jal Math_Vec3f_Yaw - -/* 01978 80A7D798 A7AE0038 */ sh $t6, 0x0038($sp) -/* 0197C 80A7D79C 87AF0038 */ lh $t7, 0x0038($sp) -/* 01980 80A7D7A0 004FC021 */ addu $t8, $v0, $t7 -/* 01984 80A7D7A4 A6180328 */ sh $t8, 0x0328($s0) ## 00000328 -.L80A7D7A8: -/* 01988 80A7D7A8 3C0180A8 */ lui $at, %hi(D_80A7E094) ## $at = 80A80000 -/* 0198C 80A7D7AC C42CE094 */ lwc1 $f12, %lo(D_80A7E094)($at) -/* 01990 80A7D7B0 3C0180A8 */ lui $at, %hi(D_80A7E098) ## $at = 80A80000 -/* 01994 80A7D7B4 C430E098 */ lwc1 $f16, %lo(D_80A7E098)($at) -/* 01998 80A7D7B8 C60A0050 */ lwc1 $f10, 0x0050($s0) ## 00000050 -/* 0199C 80A7D7BC 46105080 */ add.s $f2, $f10, $f16 -/* 019A0 80A7D7C0 4602603C */ c.lt.s $f12, $f2 -/* 019A4 80A7D7C4 00000000 */ nop -/* 019A8 80A7D7C8 45020004 */ bc1fl .L80A7D7DC -/* 019AC 80A7D7CC 46001006 */ mov.s $f0, $f2 -/* 019B0 80A7D7D0 10000002 */ beq $zero, $zero, .L80A7D7DC -/* 019B4 80A7D7D4 46006006 */ mov.s $f0, $f12 -/* 019B8 80A7D7D8 46001006 */ mov.s $f0, $f2 -.L80A7D7DC: -/* 019BC 80A7D7DC 44050000 */ mfc1 $a1, $f0 -/* 019C0 80A7D7E0 0C00B58B */ jal Actor_SetScale - -/* 019C4 80A7D7E4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 019C8 80A7D7E8 96190088 */ lhu $t9, 0x0088($s0) ## 00000088 -/* 019CC 80A7D7EC 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068 -/* 019D0 80A7D7F0 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 019D4 80A7D7F4 33280001 */ andi $t0, $t9, 0x0001 ## $t0 = 00000000 -/* 019D8 80A7D7F8 11000017 */ beq $t0, $zero, .L80A7D858 -/* 019DC 80A7D7FC 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000 -/* 019E0 80A7D800 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -/* 019E4 80A7D804 8E050324 */ lw $a1, 0x0324($s0) ## 00000324 -/* 019E8 80A7D808 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000 -/* 019EC 80A7D80C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD -/* 019F0 80A7D810 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068 -/* 019F4 80A7D814 3C073F00 */ lui $a3, 0x3F00 ## $a3 = 3F000000 -/* 019F8 80A7D818 0C01E0C4 */ jal Math_SmoothScaleMaxMinF - -/* 019FC 80A7D81C E7B20010 */ swc1 $f18, 0x0010($sp) -/* 01A00 80A7D820 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032 -/* 01A04 80A7D824 86050328 */ lh $a1, 0x0328($s0) ## 00000328 -/* 01A08 80A7D828 0C01DE2B */ jal Math_ApproxUpdateScaledS - -/* 01A0C 80A7D82C 240607D0 */ addiu $a2, $zero, 0x07D0 ## $a2 = 000007D0 -/* 01A10 80A7D830 26040030 */ addiu $a0, $s0, 0x0030 ## $a0 = 00000030 -/* 01A14 80A7D834 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 01A18 80A7D838 0C01DE2B */ jal Math_ApproxUpdateScaledS - -/* 01A1C 80A7D83C 240607D0 */ addiu $a2, $zero, 0x07D0 ## $a2 = 000007D0 -/* 01A20 80A7D840 AFA20050 */ sw $v0, 0x0050($sp) -/* 01A24 80A7D844 86090032 */ lh $t1, 0x0032($s0) ## 00000032 -/* 01A28 80A7D848 860A0030 */ lh $t2, 0x0030($s0) ## 00000030 -/* 01A2C 80A7D84C A60900B6 */ sh $t1, 0x00B6($s0) ## 000000B6 -/* 01A30 80A7D850 10000021 */ beq $zero, $zero, .L80A7D8D8 -/* 01A34 80A7D854 A60A00B4 */ sh $t2, 0x00B4($s0) ## 000000B4 -.L80A7D858: -/* 01A38 80A7D858 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 01A3C 80A7D85C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 0000CCCD -/* 01A40 80A7D860 3C073F00 */ lui $a3, 0x3F00 ## $a3 = 3F000000 -/* 01A44 80A7D864 0C01E0C4 */ jal Math_SmoothScaleMaxMinF - -/* 01A48 80A7D868 E7A40010 */ swc1 $f4, 0x0010($sp) -/* 01A4C 80A7D86C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01A50 80A7D870 00000000 */ nop -/* 01A54 80A7D874 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 01A58 80A7D878 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50 -/* 01A5C 80A7D87C 3C0180A8 */ lui $at, %hi(D_80A7E09C) ## $at = 80A80000 -/* 01A60 80A7D880 C42AE09C */ lwc1 $f10, %lo(D_80A7E09C)($at) -/* 01A64 80A7D884 46060201 */ sub.s $f8, $f0, $f6 -/* 01A68 80A7D888 C6120068 */ lwc1 $f18, 0x0068($s0) ## 00000068 -/* 01A6C 80A7D88C 460A4402 */ mul.s $f16, $f8, $f10 -/* 01A70 80A7D890 46109100 */ add.s $f4, $f18, $f16 -/* 01A74 80A7D894 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01A78 80A7D898 E6040068 */ swc1 $f4, 0x0068($s0) ## 00000068 -/* 01A7C 80A7D89C 3C0180A8 */ lui $at, %hi(D_80A7E0A0) ## $at = 80A80000 -/* 01A80 80A7D8A0 C428E0A0 */ lwc1 $f8, %lo(D_80A7E0A0)($at) -/* 01A84 80A7D8A4 860B0032 */ lh $t3, 0x0032($s0) ## 00000032 -/* 01A88 80A7D8A8 860C0316 */ lh $t4, 0x0316($s0) ## 00000316 -/* 01A8C 80A7D8AC 46080282 */ mul.s $f10, $f0, $f8 -/* 01A90 80A7D8B0 C6060060 */ lwc1 $f6, 0x0060($s0) ## 00000060 -/* 01A94 80A7D8B4 016C6821 */ addu $t5, $t3, $t4 -/* 01A98 80A7D8B8 860F00B4 */ lh $t7, 0x00B4($s0) ## 000000B4 -/* 01A9C 80A7D8BC A60D0032 */ sh $t5, 0x0032($s0) ## 00000032 -/* 01AA0 80A7D8C0 860E0032 */ lh $t6, 0x0032($s0) ## 00000032 -/* 01AA4 80A7D8C4 25F8F830 */ addiu $t8, $t7, 0xF830 ## $t8 = FFFFF830 -/* 01AA8 80A7D8C8 460A3480 */ add.s $f18, $f6, $f10 -/* 01AAC 80A7D8CC A61800B4 */ sh $t8, 0x00B4($s0) ## 000000B4 -/* 01AB0 80A7D8D0 A60E00B6 */ sh $t6, 0x00B6($s0) ## 000000B6 -/* 01AB4 80A7D8D4 E6120060 */ swc1 $f18, 0x0060($s0) ## 00000060 -.L80A7D8D8: -/* 01AB8 80A7D8D8 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 01ABC 80A7D8DC 00000000 */ nop -/* 01AC0 80A7D8E0 3C0180A8 */ lui $at, %hi(D_80A7E0A4) ## $at = 80A80000 -/* 01AC4 80A7D8E4 C424E0A4 */ lwc1 $f4, %lo(D_80A7E0A4)($at) -/* 01AC8 80A7D8E8 C6100068 */ lwc1 $f16, 0x0068($s0) ## 00000068 -/* 01ACC 80A7D8EC 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 01AD0 80A7D8F0 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50 -/* 01AD4 80A7D8F4 46048202 */ mul.s $f8, $f16, $f4 -/* 01AD8 80A7D8F8 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 01ADC 80A7D8FC 3C0180A8 */ lui $at, %hi(D_80A7E0A8) ## $at = 80A80000 -/* 01AE0 80A7D900 46060282 */ mul.s $f10, $f0, $f6 -/* 01AE4 80A7D904 46085080 */ add.s $f2, $f10, $f8 -/* 01AE8 80A7D908 460C103C */ c.lt.s $f2, $f12 -/* 01AEC 80A7D90C 00000000 */ nop -/* 01AF0 80A7D910 45000003 */ bc1f .L80A7D920 -/* 01AF4 80A7D914 00000000 */ nop -/* 01AF8 80A7D918 1000000A */ beq $zero, $zero, .L80A7D944 -/* 01AFC 80A7D91C E60C01C8 */ swc1 $f12, 0x01C8($s0) ## 000001C8 -.L80A7D920: -/* 01B00 80A7D920 C42CE0A8 */ lwc1 $f12, %lo(D_80A7E0A8)($at) -/* 01B04 80A7D924 4602603C */ c.lt.s $f12, $f2 -/* 01B08 80A7D928 00000000 */ nop -/* 01B0C 80A7D92C 45020004 */ bc1fl .L80A7D940 -/* 01B10 80A7D930 46001006 */ mov.s $f0, $f2 -/* 01B14 80A7D934 10000002 */ beq $zero, $zero, .L80A7D940 -/* 01B18 80A7D938 46006006 */ mov.s $f0, $f12 -/* 01B1C 80A7D93C 46001006 */ mov.s $f0, $f2 -.L80A7D940: -/* 01B20 80A7D940 E60001C8 */ swc1 $f0, 0x01C8($s0) ## 000001C8 -.L80A7D944: -/* 01B24 80A7D944 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 01B28 80A7D948 260401AC */ addiu $a0, $s0, 0x01AC ## $a0 = 000001AC -/* 01B2C 80A7D94C 96060314 */ lhu $a2, 0x0314($s0) ## 00000314 -/* 01B30 80A7D950 30D90040 */ andi $t9, $a2, 0x0040 ## $t9 = 00000000 -/* 01B34 80A7D954 1720000E */ bne $t9, $zero, .L80A7D990 -/* 01B38 80A7D958 30C80001 */ andi $t0, $a2, 0x0001 ## $t0 = 00000000 -/* 01B3C 80A7D95C 5100000D */ beql $t0, $zero, .L80A7D994 -/* 01B40 80A7D960 87AD003A */ lh $t5, 0x003A($sp) -/* 01B44 80A7D964 96090088 */ lhu $t1, 0x0088($s0) ## 00000088 -/* 01B48 80A7D968 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01B4C 80A7D96C 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000 -/* 01B50 80A7D970 51400008 */ beql $t2, $zero, .L80A7D994 -/* 01B54 80A7D974 87AD003A */ lh $t5, 0x003A($sp) -/* 01B58 80A7D978 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 01B5C 80A7D97C 240539A0 */ addiu $a1, $zero, 0x39A0 ## $a1 = 000039A0 -/* 01B60 80A7D980 960B0314 */ lhu $t3, 0x0314($s0) ## 00000314 -/* 01B64 80A7D984 356C0040 */ ori $t4, $t3, 0x0040 ## $t4 = 00000040 -/* 01B68 80A7D988 A60C0314 */ sh $t4, 0x0314($s0) ## 00000314 -/* 01B6C 80A7D98C 3186FFFF */ andi $a2, $t4, 0xFFFF ## $a2 = 00000040 -.L80A7D990: -/* 01B70 80A7D990 87AD003A */ lh $t5, 0x003A($sp) -.L80A7D994: -/* 01B74 80A7D994 24070002 */ addiu $a3, $zero, 0x0002 ## $a3 = 00000002 -/* 01B78 80A7D998 30CE0010 */ andi $t6, $a2, 0x0010 ## $t6 = 00000000 -/* 01B7C 80A7D99C 55A7002E */ bnel $t5, $a3, .L80A7DA58 -/* 01B80 80A7D9A0 30C20001 */ andi $v0, $a2, 0x0001 ## $v0 = 00000000 -/* 01B84 80A7D9A4 11C0002B */ beq $t6, $zero, .L80A7DA54 -/* 01B88 80A7D9A8 30CF0080 */ andi $t7, $a2, 0x0080 ## $t7 = 00000000 -/* 01B8C 80A7D9AC 55E0002A */ bnel $t7, $zero, .L80A7DA58 -/* 01B90 80A7D9B0 30C20001 */ andi $v0, $a2, 0x0001 ## $v0 = 00000000 -/* 01B94 80A7D9B4 9202032A */ lbu $v0, 0x032A($s0) ## 0000032A -/* 01B98 80A7D9B8 2841000F */ slti $at, $v0, 0x000F -/* 01B9C 80A7D9BC 14200023 */ bne $at, $zero, .L80A7DA4C -/* 01BA0 80A7D9C0 24580001 */ addiu $t8, $v0, 0x0001 ## $t8 = 00000001 -/* 01BA4 80A7D9C4 8E020320 */ lw $v0, 0x0320($s0) ## 00000320 -/* 01BA8 80A7D9C8 3C088016 */ lui $t0, %hi(gSaveContext+0xe9c) -/* 01BAC 80A7D9CC 5040001C */ beql $v0, $zero, .L80A7DA40 -/* 01BB0 80A7D9D0 34CF0080 */ ori $t7, $a2, 0x0080 ## $t7 = 000000C0 -/* 01BB4 80A7D9D4 8443001C */ lh $v1, 0x001C($v0) ## 0000001C -/* 01BB8 80A7D9D8 3C098012 */ lui $t1, %hi(D_8012723C) -/* 01BBC 80A7D9DC 3C0B8012 */ lui $t3, %hi(D_8012724C) -/* 01BC0 80A7D9E0 00032203 */ sra $a0, $v1, 8 -/* 01BC4 80A7D9E4 3084001F */ andi $a0, $a0, 0x001F ## $a0 = 00000000 -/* 01BC8 80A7D9E8 2484FFFF */ addiu $a0, $a0, 0xFFFF ## $a0 = FFFFFFFF -/* 01BCC 80A7D9EC 30850003 */ andi $a1, $a0, 0x0003 ## $a1 = 00000003 -/* 01BD0 80A7D9F0 0004C083 */ sra $t8, $a0, 2 -/* 01BD4 80A7D9F4 0018C880 */ sll $t9, $t8, 2 -/* 01BD8 80A7D9F8 00052880 */ sll $a1, $a1, 2 -/* 01BDC 80A7D9FC 01254821 */ addu $t1, $t1, $a1 -/* 01BE0 80A7DA00 01194021 */ addu $t0, $t0, $t9 -/* 01BE4 80A7DA04 8D08F4FC */ lw $t0, %lo(gSaveContext+0xe9c)($t0) -/* 01BE8 80A7DA08 8D29723C */ lw $t1, %lo(D_8012723C)($t1) -/* 01BEC 80A7DA0C 01655821 */ addu $t3, $t3, $a1 -/* 01BF0 80A7DA10 8D6B724C */ lw $t3, %lo(D_8012724C)($t3) -/* 01BF4 80A7DA14 01095024 */ and $t2, $t0, $t1 -/* 01BF8 80A7DA18 306D00FF */ andi $t5, $v1, 0x00FF ## $t5 = 00000000 -/* 01BFC 80A7DA1C 016A6006 */ srlv $t4, $t2, $t3 -/* 01C00 80A7DA20 018D7024 */ and $t6, $t4, $t5 -/* 01C04 80A7DA24 55C00006 */ bnel $t6, $zero, .L80A7DA40 -/* 01C08 80A7DA28 34CF0080 */ ori $t7, $a2, 0x0080 ## $t7 = 000000C0 -/* 01C0C 80A7DA2C 0C01E221 */ jal func_80078884 -/* 01C10 80A7DA30 24044807 */ addiu $a0, $zero, 0x4807 ## $a0 = 00004807 -/* 01C14 80A7DA34 24070002 */ addiu $a3, $zero, 0x0002 ## $a3 = 00000002 -/* 01C18 80A7DA38 96060314 */ lhu $a2, 0x0314($s0) ## 00000314 -/* 01C1C 80A7DA3C 34CF0080 */ ori $t7, $a2, 0x0080 ## $t7 = 00000080 -.L80A7DA40: -/* 01C20 80A7DA40 A60F0314 */ sh $t7, 0x0314($s0) ## 00000314 -/* 01C24 80A7DA44 10000003 */ beq $zero, $zero, .L80A7DA54 -/* 01C28 80A7DA48 31E6FFFF */ andi $a2, $t7, 0xFFFF ## $a2 = 00000080 -.L80A7DA4C: -/* 01C2C 80A7DA4C A218032A */ sb $t8, 0x032A($s0) ## 0000032A -/* 01C30 80A7DA50 96060314 */ lhu $a2, 0x0314($s0) ## 00000314 -.L80A7DA54: -/* 01C34 80A7DA54 30C20001 */ andi $v0, $a2, 0x0001 ## $v0 = 00000000 -.L80A7DA58: -/* 01C38 80A7DA58 10400009 */ beq $v0, $zero, .L80A7DA80 -/* 01C3C 80A7DA5C 30C90010 */ andi $t1, $a2, 0x0010 ## $t1 = 00000000 -/* 01C40 80A7DA60 96190088 */ lhu $t9, 0x0088($s0) ## 00000088 -/* 01C44 80A7DA64 33280040 */ andi $t0, $t9, 0x0040 ## $t0 = 00000000 -/* 01C48 80A7DA68 11000005 */ beq $t0, $zero, .L80A7DA80 -/* 01C4C 80A7DA6C 00000000 */ nop -/* 01C50 80A7DA70 0C29F398 */ jal func_80A7CE60 -/* 01C54 80A7DA74 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01C58 80A7DA78 1000005D */ beq $zero, $zero, .L80A7DBF0 -/* 01C5C 80A7DA7C 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DA80: -/* 01C60 80A7DA80 11200033 */ beq $t1, $zero, .L80A7DB50 -/* 01C64 80A7DA84 8FA80050 */ lw $t0, 0x0050($sp) -/* 01C68 80A7DA88 3C014110 */ lui $at, 0x4110 ## $at = 41100000 -/* 01C6C 80A7DA8C 44818000 */ mtc1 $at, $f16 ## $f16 = 9.00 -/* 01C70 80A7DA90 C7B20040 */ lwc1 $f18, 0x0040($sp) -/* 01C74 80A7DA94 4610903C */ c.lt.s $f18, $f16 -/* 01C78 80A7DA98 00000000 */ nop -/* 01C7C 80A7DA9C 45020006 */ bc1fl .L80A7DAB8 -/* 01C80 80A7DAA0 860A031A */ lh $t2, 0x031A($s0) ## 0000031A -/* 01C84 80A7DAA4 0C29F2F2 */ jal func_80A7CBC8 -/* 01C88 80A7DAA8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01C8C 80A7DAAC 10000050 */ beq $zero, $zero, .L80A7DBF0 -/* 01C90 80A7DAB0 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01C94 80A7DAB4 860A031A */ lh $t2, 0x031A($s0) ## 0000031A -.L80A7DAB8: -/* 01C98 80A7DAB8 19400014 */ blez $t2, .L80A7DB0C -/* 01C9C 80A7DABC 00000000 */ nop -/* 01CA0 80A7DAC0 8603031C */ lh $v1, 0x031C($s0) ## 0000031C -/* 01CA4 80A7DAC4 18600011 */ blez $v1, .L80A7DB0C -/* 01CA8 80A7DAC8 00000000 */ nop -/* 01CAC 80A7DACC 10400013 */ beq $v0, $zero, .L80A7DB1C -/* 01CB0 80A7DAD0 C7A40040 */ lwc1 $f4, 0x0040($sp) -/* 01CB4 80A7DAD4 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -/* 01CB8 80A7DAD8 3C0D80A8 */ lui $t5, %hi(D_80A7DEB8) ## $t5 = 80A80000 -/* 01CBC 80A7DADC 316C0001 */ andi $t4, $t3, 0x0001 ## $t4 = 00000000 -/* 01CC0 80A7DAE0 5180000F */ beql $t4, $zero, .L80A7DB20 -/* 01CC4 80A7DAE4 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -/* 01CC8 80A7DAE8 85ADDEB8 */ lh $t5, %lo(D_80A7DEB8)($t5) -/* 01CCC 80A7DAEC 87AE003A */ lh $t6, 0x003A($sp) -/* 01CD0 80A7DAF0 29A10004 */ slti $at, $t5, 0x0004 -/* 01CD4 80A7DAF4 5420000A */ bnel $at, $zero, .L80A7DB20 -/* 01CD8 80A7DAF8 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -/* 01CDC 80A7DAFC 11C70003 */ beq $t6, $a3, .L80A7DB0C -/* 01CE0 80A7DB00 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 01CE4 80A7DB04 55C10006 */ bnel $t6, $at, .L80A7DB20 -/* 01CE8 80A7DB08 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -.L80A7DB0C: -/* 01CEC 80A7DB0C 0C29F2F2 */ jal func_80A7CBC8 -/* 01CF0 80A7DB10 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01CF4 80A7DB14 10000036 */ beq $zero, $zero, .L80A7DBF0 -/* 01CF8 80A7DB18 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DB1C: -/* 01CFC 80A7DB1C 3C014461 */ lui $at, 0x4461 ## $at = 44610000 -.L80A7DB20: -/* 01D00 80A7DB20 44813000 */ mtc1 $at, $f6 ## $f6 = 900.00 -/* 01D04 80A7DB24 246F0001 */ addiu $t7, $v1, 0x0001 ## $t7 = 00000001 -/* 01D08 80A7DB28 34D80020 */ ori $t8, $a2, 0x0020 ## $t8 = 00000020 -/* 01D0C 80A7DB2C 4606203C */ c.lt.s $f4, $f6 -/* 01D10 80A7DB30 24190064 */ addiu $t9, $zero, 0x0064 ## $t9 = 00000064 -/* 01D14 80A7DB34 45000004 */ bc1f .L80A7DB48 -/* 01D18 80A7DB38 00000000 */ nop -/* 01D1C 80A7DB3C A60F031C */ sh $t7, 0x031C($s0) ## 0000031C -/* 01D20 80A7DB40 1000002A */ beq $zero, $zero, .L80A7DBEC -/* 01D24 80A7DB44 A6180314 */ sh $t8, 0x0314($s0) ## 00000314 -.L80A7DB48: -/* 01D28 80A7DB48 10000028 */ beq $zero, $zero, .L80A7DBEC -/* 01D2C 80A7DB4C A619031A */ sh $t9, 0x031A($s0) ## 0000031A -.L80A7DB50: -/* 01D30 80A7DB50 11000005 */ beq $t0, $zero, .L80A7DB68 -/* 01D34 80A7DB54 87A9003A */ lh $t1, 0x003A($sp) -/* 01D38 80A7DB58 0C29F0E8 */ jal func_80A7C3A0 -/* 01D3C 80A7DB5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01D40 80A7DB60 10000023 */ beq $zero, $zero, .L80A7DBF0 -/* 01D44 80A7DB64 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DB68: -/* 01D48 80A7DB68 11270003 */ beq $t1, $a3, .L80A7DB78 -/* 01D4C 80A7DB6C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 01D50 80A7DB70 5521001F */ bnel $t1, $at, .L80A7DBF0 -/* 01D54 80A7DB74 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DB78: -/* 01D58 80A7DB78 5040001D */ beql $v0, $zero, .L80A7DBF0 -/* 01D5C 80A7DB7C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01D60 80A7DB80 860A031C */ lh $t2, 0x031C($s0) ## 0000031C -/* 01D64 80A7DB84 5D40001A */ bgtzl $t2, .L80A7DBF0 -/* 01D68 80A7DB88 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01D6C 80A7DB8C 860B031A */ lh $t3, 0x031A($s0) ## 0000031A -/* 01D70 80A7DB90 3C0180A8 */ lui $at, %hi(D_80A7E0AC) ## $at = 80A80000 -/* 01D74 80A7DB94 5D600016 */ bgtzl $t3, .L80A7DBF0 -/* 01D78 80A7DB98 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01D7C 80A7DB9C C60A0080 */ lwc1 $f10, 0x0080($s0) ## 00000080 -/* 01D80 80A7DBA0 C428E0AC */ lwc1 $f8, %lo(D_80A7E0AC)($at) -/* 01D84 80A7DBA4 3C0480A8 */ lui $a0, %hi(D_80A7DF84) ## $a0 = 80A80000 -/* 01D88 80A7DBA8 4608503C */ c.lt.s $f10, $f8 -/* 01D8C 80A7DBAC 00000000 */ nop -/* 01D90 80A7DBB0 4502000F */ bc1fl .L80A7DBF0 -/* 01D94 80A7DBB4 8FBF0024 */ lw $ra, 0x0024($sp) -/* 01D98 80A7DBB8 0C00084C */ jal osSyncPrintf - -/* 01D9C 80A7DBBC 2484DF84 */ addiu $a0, $a0, %lo(D_80A7DF84) ## $a0 = 80A7DF84 -/* 01DA0 80A7DBC0 3C0480A8 */ lui $a0, %hi(D_80A7DF90) ## $a0 = 80A80000 -/* 01DA4 80A7DBC4 3C0580A8 */ lui $a1, %hi(D_80A7DFB8) ## $a1 = 80A80000 -/* 01DA8 80A7DBC8 24A5DFB8 */ addiu $a1, $a1, %lo(D_80A7DFB8) ## $a1 = 80A7DFB8 -/* 01DAC 80A7DBCC 2484DF90 */ addiu $a0, $a0, %lo(D_80A7DF90) ## $a0 = 80A7DF90 -/* 01DB0 80A7DBD0 0C00084C */ jal osSyncPrintf - -/* 01DB4 80A7DBD4 240604AD */ addiu $a2, $zero, 0x04AD ## $a2 = 000004AD -/* 01DB8 80A7DBD8 3C0480A8 */ lui $a0, %hi(D_80A7DFC8) ## $a0 = 80A80000 -/* 01DBC 80A7DBDC 0C00084C */ jal osSyncPrintf - -/* 01DC0 80A7DBE0 2484DFC8 */ addiu $a0, $a0, %lo(D_80A7DFC8) ## $a0 = 80A7DFC8 -/* 01DC4 80A7DBE4 0C00B55C */ jal Actor_Kill - -/* 01DC8 80A7DBE8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80A7DBEC: -/* 01DCC 80A7DBEC 8FBF0024 */ lw $ra, 0x0024($sp) -.L80A7DBF0: -/* 01DD0 80A7DBF0 8FB00020 */ lw $s0, 0x0020($sp) -/* 01DD4 80A7DBF4 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 01DD8 80A7DBF8 03E00008 */ jr $ra -/* 01DDC 80A7DBFC 00000000 */ nop diff --git a/data/overlays/actors/z_en_insect.data.s b/data/overlays/actors/z_en_insect.data.s deleted file mode 100644 index 6e68f44780..0000000000 --- a/data/overlays/actors/z_en_insect.data.s +++ /dev/null @@ -1,35 +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 D_80A7DEB0 - .word 0x00000000 -glabel D_80A7DEB4 - .word 0x00000000 -glabel D_80A7DEB8 - .word 0x00000000 -glabel En_Insect_InitVars - .word 0x00200700, 0x00000000, 0x00010000, 0x0000032C -.word EnInsect_Init -.word EnInsect_Destroy -.word EnInsect_Update -.word EnInsect_Draw -glabel D_80A7DEDC - .word 0x00000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00000100, 0x00000000, 0x00000000, 0x00050064 -glabel D_80A7DF00 - .word 0x0A000019, 0x10000000, 0x00000001 -.word D_80A7DEDC -glabel D_80A7DF10 - .word 0x00000005, 0x00070007 -glabel D_80A7DF18 - .word 0xC850000A, 0xB0F402BC, 0xB0F80014, 0x30FC0258 -glabel D_80A7DF28 - .word 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - diff --git a/include/variables.h b/include/variables.h index 54f3ed6605..dd278d4226 100644 --- a/include/variables.h +++ b/include/variables.h @@ -461,6 +461,7 @@ extern u32 gUpgradeNegMasks[8]; extern u8 gEquipShifts[4]; extern u8 gUpgradeShifts[8]; extern u16 gUpgradeCapacities[8][4]; +extern u32 D_8012723C[4]; extern u32 D_8012724C[4]; extern u32 gItemIcons[0x82]; extern u8 gItemSlots[56]; diff --git a/include/z64.h b/include/z64.h index 190e462dba..685e62d0f4 100644 --- a/include/z64.h +++ b/include/z64.h @@ -142,7 +142,7 @@ typedef struct { /* 0x0E88 */ s32 tempCollectFlags; } fw; /* 0x0E8C */ char unk_E8C[0x0010]; - /* 0x0E9C */ u32 gsFlags[6]; + /* 0x0E9C */ s32 gsFlags[6]; /* 0x0EB4 */ char unk_EB4[0x0010]; /* 0x0EC4 */ s32 unk_EC4; /* 0x0EC8 */ char unk_EC8[0x000C]; diff --git a/spec b/spec index 7e331423eb..d3d616a5f7 100644 --- a/spec +++ b/spec @@ -2752,7 +2752,6 @@ endseg beginseg name "ovl_En_Insect" include "build/src/overlays/actors/ovl_En_Insect/z_en_insect.o" - include "build/data/overlays/actors/z_en_insect.data.o" include "build/data/overlays/actors/z_en_insect.reloc.o" endseg diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c index 1decd2a5fa..8183b42c97 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c @@ -1,4 +1,5 @@ #include "z_en_insect.h" +#include #define FLAGS 0x00000000 @@ -9,7 +10,29 @@ void EnInsect_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnInsect_Update(Actor* thisx, GlobalContext* globalCtx); void EnInsect_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void func_80A7C3A0(EnInsect* this); +void func_80A7C3F4(EnInsect* this, GlobalContext* globalCtx); +void func_80A7C598(EnInsect* this); +void func_80A7C5EC(EnInsect* this, GlobalContext* globalCtx); +void func_80A7C818(EnInsect* this); +void func_80A7C86C(EnInsect* this, GlobalContext* globalCtx); +void func_80A7CAD0(EnInsect* this, GlobalContext* globalCtx); +void func_80A7CBC8(EnInsect* this); +void func_80A7CC3C(EnInsect* this, GlobalContext* globalCtx); +void func_80A7CE60(EnInsect* this); +void func_80A7CEC0(EnInsect* this, GlobalContext* globalCtx); +void func_80A7D1F4(EnInsect* this); +void func_80A7D26C(EnInsect* this, GlobalContext* globalCtx); +void func_80A7D39C(EnInsect* this); +void func_80A7D460(EnInsect* this, GlobalContext* globalCtx); + +extern SkeletonHeader D_04035590; +extern AnimationHeader D_040341FC; + +f32 D_80A7DEB0 = 0.0f; +s16 D_80A7DEB4 = 0; +s16 D_80A7DEB8 = 0; + const ActorInit En_Insect_InitVars = { ACTOR_EN_INSECT, ACTORTYPE_ITEMACTION, @@ -21,55 +44,749 @@ const ActorInit En_Insect_InitVars = { (ActorFunc)EnInsect_Update, (ActorFunc)EnInsect_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE20.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE40.s") +static ColliderJntSphItemInit sColliderItemInit[1] = { + { + { 0x00, { 0x00000000, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, + { 0, { { 0, 0, 0 }, 5 }, 100 }, + }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BE6C.s") +static ColliderJntSphInit sColliderInit = { + { COLTYPE_UNK10, 0x00, 0x00, 0x19, 0x10, COLSHAPE_JNTSPH }, + 1, + sColliderItemInit, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BF58.s") +u16 D_80A7DF10[] = { 0, 5, 7, 7 }; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7BFA0.s") +static InitChainEntry sInitChain[] = { + ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneForward, 700, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 20, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 600, ICHAIN_STOP), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C058.s") +Vec3f D_80A7DF28[2] = { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Init.s") +void func_80A7BE20(EnInsect* this) { + this->unk_314 = D_80A7DF10[this->actor.params & 3]; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Destroy.s") +f32 EnInsect_XZDistanceSquared(Vec3f* v1, Vec3f* v2) { + return SQ(v1->x - v2->x) + SQ(v1->z - v2->z); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3A0.s") +s32 func_80A7BE6C(EnInsect* this, GlobalContext* globalCtx) { + u32 pad; + Player* player = PLAYER; + Vec3f pos; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C3F4.s") + if (this->actor.xzDistFromLink < 32.0f) { + pos.x = Math_Sins(this->actor.yawTowardsLink + 0x8000) * 16.0f + player->actor.posRot.pos.x; + pos.y = player->actor.posRot.pos.y; + pos.z = Math_Coss(this->actor.yawTowardsLink + 0x8000) * 16.0f + player->actor.posRot.pos.z; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C598.s") + if (EnInsect_XZDistanceSquared(&pos, &this->actor.posRot.pos) <= 400.0f) { + return 1; + } + } + return 0; +} + +void func_80A7BF58(EnInsect* this) { + SkelAnime_ChangeAnim(&this->skelAnime, &D_040341FC, 1.0f, 0.0f, 0.0f, 1, 0.0f); +} + +/** + * Find the nearest soft dirt patch within 6400 units in the xz plane and the current room + * + * @return 1 if one was found, 0 otherwise + */ +s32 EnInsect_FoundNearbySoil(EnInsect* this, GlobalContext* globalCtx) { + Actor* currentActor; + f32 currentDistance; + f32 bestDistance; + s32 ret; + + ret = 0; + currentActor = globalCtx->actorCtx.actorList[ACTORTYPE_ITEMACTION].first; + bestDistance = 6400.0f; + this->soilActor = NULL; + + while (currentActor != NULL) { + if (currentActor->id == ACTOR_OBJ_MAKEKINSUTA) { + currentDistance = func_800CB594(this->actor.posRot.pos.x, this->actor.posRot.pos.z, + currentActor->posRot.pos.x, currentActor->posRot.pos.z); + + if (currentDistance < bestDistance && currentActor->room == this->actor.room) { + ret = 1; + bestDistance = currentDistance; + this->soilActor = (ObjMakekinsuta*)currentActor; + } + } + currentActor = currentActor->next; + } + return ret; +} + +void func_80A7C058(EnInsect* this) { + if (this->unk_31E > 0) { + this->unk_31E -= 1; + return; + } + + Audio_PlayActorSound2(&this->actor, NA_SE_EN_MUSI_WALK); + + this->unk_31E = 3.0f / CLAMP_MIN(this->skelAnime.animPlaybackSpeed, 0.1f); + if (this->unk_31E < 2) { + this->unk_31E = 2; + } +} + +void EnInsect_Init(Actor* thisx, GlobalContext* globalCtx) { + EnInsect* this = THIS; + f32 rand; + s16 temp_s2; + s32 count; + + Actor_ProcessInitChain(&this->actor, sInitChain); + func_80A7BE20(this); + + temp_s2 = this->actor.params & 3; + + SkelAnime_Init(globalCtx, &this->skelAnime, &D_04035590, &D_040341FC, this->limbDrawTable, + this->transitionDrawTable, 24); + Collider_InitJntSph(globalCtx, &this->collider); + Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sColliderInit, &this->colliderItem); + + this->actor.colChkInfo.mass = 30; + + if (this->unk_314 & 1) { + this->actor.gravity = -0.2f; + this->actor.minVelocityY = -2.0f; + } + + if (this->unk_314 & 4) { + this->unk_31C = Math_Rand_S16Offset(200, 40); + this->actor.flags |= 0x10; + } + + if (temp_s2 == 2 || temp_s2 == 3) { + if (EnInsect_FoundNearbySoil(this, globalCtx)) { + this->unk_314 |= 0x10; + D_80A7DEB0 = 0.0f; + } + + if (temp_s2 == 2) { + this->actor.posRot.rot.z = 0; + this->actor.shape.rot.z = this->actor.posRot.rot.z; + + for (count = 0; count < 2; count++) { + Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_INSECT, this->actor.posRot.pos.x, + this->actor.posRot.pos.y, this->actor.posRot.pos.z, this->actor.shape.rot.x, + this->actor.shape.rot.y, this->actor.shape.rot.z, 3); + + if (globalCtx) {} + } + } + + func_80A7D39C(this); + + if (1) {} + + D_80A7DEB8++; + } else { + rand = Math_Rand_ZeroOne(); + + if (rand < 0.3f) { + func_80A7C3A0(this); + } else if (rand < 0.4f) { + func_80A7C598(this); + } else { + func_80A7C818(this); + } + } +} + +void EnInsect_Destroy(Actor* thisx, GlobalContext* globalCtx) { + s16 temp_v0; + EnInsect* this = THIS; + + temp_v0 = this->actor.params & 3; + Collider_DestroyJntSph(globalCtx, &this->collider); + if ((temp_v0 == 2 || temp_v0 == 3) && D_80A7DEB8 > 0) { + D_80A7DEB8--; + } +} + +void func_80A7C3A0(EnInsect* this) { + this->unk_31A = Math_Rand_S16Offset(5, 35); + func_80A7BF58(this); + this->actionFunc = func_80A7C3F4; + this->unk_314 |= 0x100; +} + +void func_80A7C3F4(EnInsect* this, GlobalContext* globalCtx) { + s32 pad[2]; + s16 sp2E; + f32 animPlaybackSpeed; + + sp2E = this->actor.params & 3; + + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.1f, 0.5f, 0.0f); + + animPlaybackSpeed = (Math_Rand_ZeroOne() * 0.8f) + (this->actor.speedXZ * 1.2f); + this->skelAnime.animPlaybackSpeed = CLAMP(animPlaybackSpeed, 0.0f, 1.9f); + + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + this->actor.shape.rot.y = this->actor.posRot.rot.y; + if (this->unk_31A <= 0) { + func_80A7C598(this); + } + + if (((this->unk_314 & 4) && this->unk_31C <= 0) || + ((sp2E == 2 || sp2E == 3) && (this->unk_314 & 1) && (this->actor.bgCheckFlags & 1) && D_80A7DEB8 >= 4)) { + func_80A7CBC8(this); + } else if ((this->unk_314 & 1) && (this->actor.bgCheckFlags & 0x40)) { + func_80A7CE60(this); + } else if (this->actor.xzDistFromLink < 40.0f) { + func_80A7C818(this); + } +} + +void func_80A7C598(EnInsect* this) { + this->unk_31A = Math_Rand_S16Offset(10, 45); + func_80A7BF58(this); + this->actionFunc = func_80A7C5EC; + this->unk_314 |= 0x100; +} + +#ifdef NON_MATCHING +// a stack offset is wrong +void func_80A7C5EC(EnInsect* this, GlobalContext* globalCtx) { + s32 pad[2]; + s16 sp34 = this->actor.params & 3; + + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 1.5f, 0.1f, 0.5f, 0.0f); + + if (EnInsect_XZDistanceSquared(&this->actor.posRot.pos, &this->actor.initPosRot.pos) > 1600.0f || + (this->unk_31A < 4)) { + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.y, + Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.initPosRot.pos), 2000); + } else if (this->actor.attachedB != NULL && &this->actor != this->actor.attachedB) { + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.y, + Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.attachedB->posRot.pos), 2000); + } + + this->actor.shape.rot.y = this->actor.posRot.rot.y; + this->skelAnime.animPlaybackSpeed = CLAMP(this->actor.speedXZ * 1.4f, 0.7f, 1.9f); + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + + if (this->unk_31A <= 0) { + func_80A7C3A0(this); + } + + if (((this->unk_314 & 4) && this->unk_31C <= 0) || + ((sp34 == 2 || sp34 == 3) && (this->unk_314 & 1) && (this->actor.bgCheckFlags & 1) && D_80A7DEB8 >= 4)) { + func_80A7CBC8(this); + } else if ((this->unk_314 & 1) && (this->actor.bgCheckFlags & 0x40)) { + func_80A7CE60(this); + } else if (this->actor.xzDistFromLink < 40.0f) { + func_80A7C818(this); + } +} +#else #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C5EC.s") +#endif -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C818.s") +void func_80A7C818(EnInsect* this) { + this->unk_31A = Math_Rand_S16Offset(10, 40); + func_80A7BF58(this); + this->actionFunc = func_80A7C86C; + this->unk_314 |= 0x100; +} +#ifdef NON_MATCHING +// regalloc, minor reordering +void func_80A7C86C(EnInsect* this, GlobalContext* globalCtx) { + s32 pad[3]; + s16 phi_a1; + s16 sp38; + + sp38 = 0; + if (this->actor.xzDistFromLink < 40.0f) { + sp38 = 1; + } + + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 1.8f, 0.1f, 0.5f, 0.0f); + + if (EnInsect_XZDistanceSquared(&this->actor.posRot.pos, &this->actor.initPosRot.pos) > 25600.0f || + this->unk_31A < 4) { + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.y, + Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.initPosRot.pos), 2000); + } else if (sp38 != 0) { + phi_a1 = this->actor.yawTowardsLink + 0x8000; + + if ((s16)globalCtx->state.frames & 0x10) { + if ((s16)globalCtx->state.frames & 0x20) { + phi_a1 += 0x2000; + } + } else if ((s16)globalCtx->state.frames & 0x20) { + phi_a1 -= 0x2000; + } + + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.y, phi_a1, 2000); + } + + this->actor.shape.rot.y = this->actor.posRot.rot.y; + this->skelAnime.animPlaybackSpeed = CLAMP(this->actor.speedXZ * 1.6f, 0.8f, 1.9f); + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + + if (this->unk_31A <= 0 || sp38 == 0) { + func_80A7C3A0(this); + } else if ((this->unk_314 & 1) && (this->actor.bgCheckFlags & 0x40)) { + func_80A7CE60(this); + } +} +#else #pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7C86C.s") +#endif -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CA64.s") +void func_80A7CA64(EnInsect* this) { + this->unk_31A = 200; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CAD0.s") + Actor_SetScale(&this->actor, 0.001f); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CBC8.s") + this->actor.draw = NULL; + this->actor.speedXZ = 0.0f; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CC3C.s") + func_80A7BF58(this); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CE60.s") + this->skelAnime.animPlaybackSpeed = 0.3f; + this->actionFunc = func_80A7CAD0; + this->unk_314 &= ~0x100; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7CEC0.s") +void func_80A7CAD0(EnInsect* this, GlobalContext* globalCtx) { + if (this->unk_31A == 20 && !(this->unk_314 & 4)) { + this->actor.draw = EnInsect_Draw; + } else if (this->unk_31A == 0) { + if (this->unk_314 & 4) { + Actor_Kill(&this->actor); + } else { + Actor_SetScale(&this->actor, 0.01f); + func_80A7C3A0(this); + } + } else if (this->unk_31A < 20) { + Actor_SetScale(&this->actor, CLAMP_MAX(this->actor.scale.x + 0.001f, 0.01f)); + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D1F4.s") +void func_80A7CBC8(EnInsect* this) { + this->unk_31A = 60; + func_80A7BF58(this); + this->skelAnime.animPlaybackSpeed = 1.9f; + Audio_PlayActorSound2(&this->actor, NA_SE_EN_MUSI_SINK); + Math_Vec3f_Copy(&this->actor.initPosRot.pos, &this->actor.posRot.pos); + this->actionFunc = func_80A7CC3C; + this->unk_314 &= ~0x100; + this->unk_314 |= 0x8; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D26C.s") +void func_80A7CC3C(EnInsect* this, GlobalContext* globalCtx) { + s32 pad[2]; + Vec3f sp34; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D39C.s") + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.1f, 0.5f, 0.0f); + Math_ApproxS(&this->actor.shape.rot.x, 10922, 352); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/func_80A7D460.s") + Actor_SetScale(&this->actor, CLAMP_MIN(this->actor.scale.x - 0.0002f, 0.001f)); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Update.s") + this->actor.shape.unk_08 -= 0.8f; + this->actor.posRot.pos.x = Math_Rand_ZeroOne() + this->actor.initPosRot.pos.x - 0.5f; + this->actor.posRot.pos.z = Math_Rand_ZeroOne() + this->actor.initPosRot.pos.z - 0.5f; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Insect/EnInsect_Draw.s") + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + + if (this->unk_31A >= 21 && Math_Rand_ZeroOne() < 0.1f) { + sp34.x = Math_Sins(this->actor.shape.rot.y) * -0.6f; + sp34.y = Math_Sins(this->actor.shape.rot.x) * 0.6f; + sp34.z = Math_Coss(this->actor.shape.rot.y) * -0.6f; + func_800286CC(globalCtx, &this->actor.posRot.pos, &sp34, D_80A7DF28, Math_Rand_ZeroOne() * 5.0f + 8.0f, + Math_Rand_ZeroOne() * 5.0f + 8.0f); + } + + if (this->unk_31A <= 0) { + if ((this->unk_314 & 0x10) && this->soilActor != NULL && + func_800CB650(&this->soilActor->actor.posRot.pos, &this->actor.posRot.pos) < 64.0f) { + this->soilActor->unk_152 = 1; + } + Actor_Kill(&this->actor); + } +} + +void func_80A7CE60(EnInsect* this) { + this->unk_31A = Math_Rand_S16Offset(120, 50); + func_80A7BF58(this); + this->unk_316 = this->unk_318 = 0; + this->actionFunc = func_80A7CEC0; + this->unk_314 &= ~0x100; +} + +void func_80A7CEC0(EnInsect* this, GlobalContext* globalCtx) { + f32 temp_f0; + s16 temp_v1; + s16 padding; + s16 sp4E; + Vec3f sp40; + s32 phi_v0; + s32 phi_v0_2; + + sp4E = this->actor.params & 3; + + if (this->unk_31A >= 81) { + Math_ApproxF(&this->actor.speedXZ, 0.6f, 0.08f); + } else { + Math_ApproxF(&this->actor.speedXZ, 0.0f, 0.02f); + } + this->actor.velocity.y = 0.0f; + this->actor.posRot.pos.y += this->actor.waterY; + this->skelAnime.animPlaybackSpeed = CLAMP(this->unk_31A * 0.018f, 0.1f, 1.9f); + + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + + if (this->unk_31A >= 81) { + this->unk_316 += Math_Rand_S16Offset(-50, 100); + this->unk_318 += Math_Rand_S16Offset(-300, 600); + } + + temp_v1 = this->skelAnime.animPlaybackSpeed * 200.0f; + + if (this->unk_316 < -temp_v1) { + this->unk_316 = -temp_v1; + } else { + if (temp_v1 < this->unk_316) { + phi_v0 = temp_v1; + } else { + phi_v0 = this->unk_316; + } + this->unk_316 = phi_v0; + } + this->actor.posRot.rot.y += this->unk_316; + + temp_v1 = this->skelAnime.animPlaybackSpeed * 1000.0f; + if (this->unk_318 < -temp_v1) { + this->unk_318 = -temp_v1; + } else { + if (temp_v1 < this->unk_318) { + phi_v0_2 = temp_v1; + } else { + phi_v0_2 = this->unk_318; + } + this->unk_318 = phi_v0_2; + } + this->actor.shape.rot.y += this->unk_318; + + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.x, 0, 3000); + this->actor.shape.rot.x = this->actor.posRot.rot.x; + + if (Math_Rand_ZeroOne() < 0.03f) { + sp40.x = this->actor.posRot.pos.x; + sp40.y = this->actor.posRot.pos.y + this->actor.waterY; + sp40.z = this->actor.posRot.pos.z; + func_80029444(globalCtx, &sp40, 20, 100, 4); + func_80029444(globalCtx, &sp40, 40, 200, 8); + } + + if (this->unk_31A <= 0 || ((this->unk_314 & 4) && this->unk_31C <= 0) || + ((sp4E == 2 || sp4E == 3) && (this->unk_314 & 1) && D_80A7DEB8 >= 4)) { + func_80A7D1F4(this); + } else if (!(this->actor.bgCheckFlags & 0x40)) { + if (this->unk_314 & 0x10) { + func_80A7D39C(this); + } else { + func_80A7C3A0(this); + } + } +} + +void func_80A7D1F4(EnInsect* this) { + this->unk_31A = 100; + func_80A7BF58(this); + this->actor.velocity.y = 0.0f; + this->actor.speedXZ = 0.0f; + this->actor.minVelocityY = -0.8f; + this->actor.gravity = -0.04f; + this->unk_314 &= ~0x3; + this->actionFunc = func_80A7D26C; + this->unk_314 &= ~0x100; + this->unk_314 |= 8; +} + +void func_80A7D26C(EnInsect* this, GlobalContext* globalCtx) { + this->actor.shape.rot.x -= 500; + this->actor.shape.rot.y += 200; + Actor_SetScale(&this->actor, CLAMP_MIN(this->actor.scale.x - 0.00005f, 0.001f)); + + if (this->actor.waterY > 5.0f && this->actor.waterY < 30.0f && Math_Rand_ZeroOne() < 0.3f) { + func_800293E4(globalCtx, &this->actor.posRot.pos, -5.0f, 5.0f, 5.0f, (Math_Rand_ZeroOne() * 0.04f) + 0.02f); + } + + if (this->unk_31A <= 0) { + Actor_Kill(&this->actor); + } +} + +void func_80A7D39C(EnInsect* this) { + func_80A7BF58(this); + this->unk_31A = 100; + this->unk_324 = 1.5f; + this->unk_328 = Math_Rand_ZeroOne() * 65535.5f; + this->unk_316 = (Math_Rand_ZeroOne() - 0.5f) * 1500.0f; + this->actor.posRot.rot.y = Math_Rand_ZeroOne() * 65535.5f; + Actor_SetScale(&this->actor, 0.003f); + this->actionFunc = func_80A7D460; + this->unk_314 |= 0x100; +} + +void func_80A7D460(EnInsect* this, GlobalContext* globalCtx) { + s32 temp_a0; + s32 sp50; + f32 phi_f0; + EnInsect* thisTemp = this; + s32 temp_a1; + f32 sp40; + f32 phi_f2; + s16 sp3A; + s16 sp38; + f32 sp34; + + sp50 = 0; + sp3A = this->actor.params & 3; + + if (this->soilActor != NULL) { + sp40 = func_800CB650(&this->actor.posRot.pos, &this->soilActor->actor.posRot.pos); + } else { + if (this->unk_314 & 0x10) { + osSyncPrintf(VT_COL(YELLOW, BLACK)); + // warning: target Actor is NULL + osSyncPrintf("warning:目標 Actor が NULL (%s %d)\n", "../z_en_mushi.c", 1046); + osSyncPrintf(VT_RST); + } + sp40 = 40.0f; + } + + if (!this->soilActor->actor.params) {} + + D_80A7DEB0 += 0.0033333332f; + if (D_80A7DEB0 > 1.0f) { + D_80A7DEB0 = 1.0f; + } + + if (D_80A7DEB0 > 0.999f) { + phi_f2 = 0.0f; + } else { + if (sp40 > 900.0f) { + phi_f2 = ((1.1f - D_80A7DEB0) * 100.0f) + 20.0f; + } else { + phi_f2 = (1.0f - D_80A7DEB0) * 10.0f; + } + } + + if (this->soilActor != NULL && Math_Rand_ZeroOne() < 0.07f) { + this->actor.initPosRot.pos.x = (Math_Rand_ZeroOne() - 0.5f) * phi_f2 + thisTemp->soilActor->actor.posRot.pos.x; + this->actor.initPosRot.pos.y = thisTemp->soilActor->actor.posRot.pos.y; + this->actor.initPosRot.pos.z = (Math_Rand_ZeroOne() - 0.5f) * phi_f2 + thisTemp->soilActor->actor.posRot.pos.z; + } + + if (D_80A7DEB0 > 0.999f) { + this->unk_328 = Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.initPosRot.pos); + this->unk_324 = Math_Rand_ZeroOne() * 0.6f + 0.6f; + } else if (Math_Rand_ZeroOne() < 0.07f) { + if (this->unk_324 > 1.0f) { + this->unk_324 = 0.1f; + } else { + this->unk_324 = Math_Rand_ZeroOne() * 0.8f + 1.0f; + } + + sp34 = 1.3f - D_80A7DEB0; + if (sp34 < 0.0f) { + sp34 = 0.0f; + } else { + if (sp34 > 1.0f) { + phi_f0 = 1.0f; + } else { + phi_f0 = sp34; + } + sp34 = phi_f0; + } + + sp38 = (Math_Rand_ZeroOne() - 0.5f) * 65535.0f * sp34; + this->unk_328 = Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.initPosRot.pos) + sp38; + } + + Actor_SetScale(&this->actor, CLAMP_MAX(thisTemp->actor.scale.x + 0.0008f, 0.01f)); + + if (this->actor.bgCheckFlags & 1) { + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, this->unk_324, 0.1f, 0.5f, 0.0f); + Math_ApproxUpdateScaledS(&this->actor.posRot.rot.y, this->unk_328, 2000); + sp50 = Math_ApproxUpdateScaledS(&this->actor.posRot.rot.x, 0, 2000); + this->actor.shape.rot.y = this->actor.posRot.rot.y; + this->actor.shape.rot.x = this->actor.posRot.rot.x; + } else { + Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.1f, 0.5f, 0.0f); + this->actor.speedXZ += (Math_Rand_ZeroOne() - 0.5f) * 0.14f; + this->actor.velocity.y += Math_Rand_ZeroOne() * 0.12f; + this->actor.posRot.rot.y += this->unk_316; + this->actor.shape.rot.y = this->actor.posRot.rot.y; + this->actor.shape.rot.x -= 2000; + } + + phi_f2 = Math_Rand_ZeroOne() * 0.5f + this->actor.speedXZ * 1.3f; + if (phi_f2 < 0.0f) { + this->skelAnime.animPlaybackSpeed = 0.0f; + } else { + if (phi_f2 > 1.9f) { + phi_f0 = 1.9f; + } else { + phi_f0 = phi_f2; + } + this->skelAnime.animPlaybackSpeed = phi_f0; + } + + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + if (!(this->unk_314 & 0x40) && (this->unk_314 & 1) && (this->actor.bgCheckFlags & 1)) { + Audio_PlayActorSound2(&this->actor, NA_SE_EN_MUSI_LAND); + this->unk_314 |= 0x40; + } + + if (sp3A == 2 && (this->unk_314 & 0x10) && !(this->unk_314 & 0x80)) { + if (this->unk_32A >= 15) { + if (this->soilActor != NULL) { + temp_a0 = ((this->soilActor->actor.params >> 8) & 0x1F) - 1; + temp_a1 = temp_a0 & 3; + + if ((((gSaveContext.gsFlags[temp_a0 >> 2] & D_8012723C[temp_a1]) >> D_8012724C[temp_a1]) & + (this->soilActor->actor.params & 0xFF)) == 0) { + func_80078884(NA_SE_SY_TRE_BOX_APPEAR); + } + } + this->unk_314 |= 0x80; + } else { + this->unk_32A++; + } + } + + if ((this->unk_314 & 1) && (this->actor.bgCheckFlags & 0x40)) { + func_80A7CE60(this); + } else if (this->unk_314 & 0x10) { + if (sp40 < 9.0f) { + func_80A7CBC8(this); + } else if (this->unk_31A <= 0 || this->unk_31C <= 0 || + ((this->unk_314 & 1) && (this->actor.bgCheckFlags & 1) && D_80A7DEB8 >= 4 && + (sp3A == 2 || sp3A == 3))) { + func_80A7CBC8(this); + } else { + if (sp40 < 900.0f) { + this->unk_31C++; + this->unk_314 |= 0x20; + } else { + this->unk_31A = 100; + } + } + } else if (sp50 != 0) { + func_80A7C3A0(this); + } else if ((sp3A == 2 || sp3A == 3) && (this->unk_314 & 1) && this->unk_31C <= 0 && this->unk_31A <= 0 && + this->actor.groundY < -31990.0f) { + osSyncPrintf(VT_COL(YELLOW, BLACK)); + // BG missing? To do Actor_delete + osSyncPrintf("BG 抜け? Actor_delete します(%s %d)\n", "../z_en_mushi.c", 1197); + osSyncPrintf(VT_RST); + Actor_Kill(&this->actor); + } +} + +void EnInsect_Update(Actor* thisx, GlobalContext* globalCtx) { + EnInsect* this = THIS; + s32 phi_v0; + + if (this->actor.attachedB != NULL) { + if (this->actor.attachedB->update == NULL) { + if (&this->actor != this->actor.attachedB) { + this->actor.attachedB = NULL; + } + } + } + + if (this->unk_31A > 0) { + this->unk_31A--; + } + + if (this->unk_31C > 0) { + this->unk_31C--; + } + + this->actionFunc(this, globalCtx); + + if (this->actor.update != NULL) { + Actor_MoveForward(&this->actor); + if (this->unk_314 & 0x100) { + if (this->unk_314 & 1) { + if (this->actor.bgCheckFlags & 1) { + func_80A7C058(this); + } + } else { + func_80A7C058(this); + } + } + + phi_v0 = 0; + + if (this->unk_314 & 1) { + phi_v0 = 4; + } + + if (this->unk_314 & 2) { + phi_v0 |= 1; + } + + if (phi_v0 != 0) { + phi_v0 |= 0x40; + func_8002E4B4(globalCtx, &this->actor, 8.0f, 5.0f, 0.0f, phi_v0); + } + + if (func_8002F410(&this->actor, globalCtx) != 0) { + this->actor.attachedA = NULL; + phi_v0 = this->actor.params & 3; + + if (phi_v0 == 2 || phi_v0 == 3) { + Actor_Kill(&this->actor); + } else { + func_80A7CA64(this); + } + } else if (this->actor.xzDistFromLink < 50.0f && this->actionFunc != func_80A7CAD0) { + if (!(this->unk_314 & 0x20) && this->unk_31C < 180) { + CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); + } + + if (!(this->unk_314 & 8) && D_80A7DEB4 < 4 && func_80A7BE6C(this, globalCtx) != 0 && + func_8002F434(&this->actor, globalCtx, 0x7E, 60.0f, 30.0f) != 0) { + D_80A7DEB4++; + } + } + + Actor_SetHeight(&this->actor, 0.0f); + } +} + +void EnInsect_Draw(Actor* thisx, GlobalContext* globalCtx) { + EnInsect* this = THIS; + + func_80093D18(globalCtx->state.gfxCtx); + SkelAnime_Draw(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl, NULL, NULL, NULL); + func_800628A4(0, &this->collider); + D_80A7DEB4 = 0; +} diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.h b/src/overlays/actors/ovl_En_Insect/z_en_insect.h index 4ef5a27bbb..d45d760559 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.h +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.h @@ -3,12 +3,30 @@ #include #include +#include "overlays/actors/ovl_Obj_Makekinsuta/z_obj_makekinsuta.h" struct EnInsect; +typedef void (*EnInsectActionFunc)(struct EnInsect*, GlobalContext*); + typedef struct EnInsect { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x1E0]; + /* 0x014C */ ColliderJntSph collider; + /* 0x016C */ ColliderJntSphItem colliderItem; + /* 0x01AC */ SkelAnime skelAnime; + /* 0x01F0 */ Vec3s limbDrawTable[24]; + /* 0x0280 */ Vec3s transitionDrawTable[24]; + /* 0x0310 */ EnInsectActionFunc actionFunc; + /* 0x0314 */ u16 unk_314; + /* 0x0316 */ s16 unk_316; + /* 0x0318 */ s16 unk_318; + /* 0x031A */ s16 unk_31A; + /* 0x031C */ s16 unk_31C; + /* 0x031E */ s16 unk_31E; + /* 0x0320 */ ObjMakekinsuta* soilActor; + /* 0x0324 */ f32 unk_324; + /* 0x0328 */ s16 unk_328; + /* 0x032A */ u8 unk_32A; } EnInsect; // size = 0x032C extern const ActorInit En_Insect_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index 4b4435ed0e..0bb608f17f 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -708,3 +708,7 @@ D_0600FAA0 = 0x0600FAA0; D_0600FCF8 = 0x0600FCF8; D_060105E0 = 0x060105E0; D_06012160 = 0x06012160; + +// z_en_insect +D_04035590 = 0x04035590; +D_040341FC = 0x040341FC;