diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Destroy.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Destroy.s deleted file mode 100644 index bd5c04d7f8..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Destroy.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel EnCrow_Destroy -/* 000EC 809E032C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 000F0 809E0330 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 000F4 809E0334 AFBF0014 */ sw $ra, 0x0014($sp) -/* 000F8 809E0338 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 000FC 809E033C 0C016F32 */ jal Collider_DestroyJntSph -/* 00100 809E0340 24C50238 */ addiu $a1, $a2, 0x0238 ## $a1 = 00000238 -/* 00104 809E0344 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00108 809E0348 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0010C 809E034C 03E00008 */ jr $ra -/* 00110 809E0350 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Draw.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Draw.s deleted file mode 100644 index d33905495e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Draw.s +++ /dev/null @@ -1,25 +0,0 @@ -glabel EnCrow_Draw -/* 013A0 809E15E0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 013A4 809E15E4 AFBF0024 */ sw $ra, 0x0024($sp) -/* 013A8 809E15E8 AFA40028 */ sw $a0, 0x0028($sp) -/* 013AC 809E15EC AFA5002C */ sw $a1, 0x002C($sp) -/* 013B0 809E15F0 0C024F46 */ jal func_80093D18 -/* 013B4 809E15F4 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000 -/* 013B8 809E15F8 8FA20028 */ lw $v0, 0x0028($sp) -/* 013BC 809E15FC 3C0F809E */ lui $t7, %hi(func_809E1434) ## $t7 = 809E0000 -/* 013C0 809E1600 3C18809E */ lui $t8, %hi(func_809E1520) ## $t8 = 809E0000 -/* 013C4 809E1604 8C450180 */ lw $a1, 0x0180($v0) ## 00000180 -/* 013C8 809E1608 8C46019C */ lw $a2, 0x019C($v0) ## 0000019C -/* 013CC 809E160C 9047017E */ lbu $a3, 0x017E($v0) ## 0000017E -/* 013D0 809E1610 27181520 */ addiu $t8, $t8, %lo(func_809E1520) ## $t8 = 809E1520 -/* 013D4 809E1614 25EF1434 */ addiu $t7, $t7, %lo(func_809E1434) ## $t7 = 809E1434 -/* 013D8 809E1618 AFAF0010 */ sw $t7, 0x0010($sp) -/* 013DC 809E161C AFB80014 */ sw $t8, 0x0014($sp) -/* 013E0 809E1620 8FA4002C */ lw $a0, 0x002C($sp) -/* 013E4 809E1624 0C0286B2 */ jal SkelAnime_DrawSV -/* 013E8 809E1628 AFA20018 */ sw $v0, 0x0018($sp) -/* 013EC 809E162C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 013F0 809E1630 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 013F4 809E1634 03E00008 */ jr $ra -/* 013F8 809E1638 00000000 */ nop -/* 013FC 809E163C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Init.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Init.s deleted file mode 100644 index d3feffb313..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Init.s +++ /dev/null @@ -1,62 +0,0 @@ -glabel EnCrow_Init -/* 00000 809E0240 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 00004 809E0244 AFA5003C */ sw $a1, 0x003C($sp) -/* 00008 809E0248 AFBF002C */ sw $ra, 0x002C($sp) -/* 0000C 809E024C AFB00028 */ sw $s0, 0x0028($sp) -/* 00010 809E0250 3C05809E */ lui $a1, %hi(D_809E16CC) ## $a1 = 809E0000 -/* 00014 809E0254 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00018 809E0258 0C01E037 */ jal Actor_ProcessInitChain - -/* 0001C 809E025C 24A516CC */ addiu $a1, $a1, %lo(D_809E16CC) ## $a1 = 809E16CC -/* 00020 809E0260 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000 -/* 00024 809E0264 3C070600 */ lui $a3, 0x0600 ## $a3 = 06000000 -/* 00028 809E0268 260E01CA */ addiu $t6, $s0, 0x01CA ## $t6 = 000001CA -/* 0002C 809E026C 260F0200 */ addiu $t7, $s0, 0x0200 ## $t7 = 00000200 -/* 00030 809E0270 24180009 */ addiu $t8, $zero, 0x0009 ## $t8 = 00000009 -/* 00034 809E0274 AFB80018 */ sw $t8, 0x0018($sp) -/* 00038 809E0278 AFAF0014 */ sw $t7, 0x0014($sp) -/* 0003C 809E027C AFAE0010 */ sw $t6, 0x0010($sp) -/* 00040 809E0280 24E700F0 */ addiu $a3, $a3, 0x00F0 ## $a3 = 060000F0 -/* 00044 809E0284 24C610C0 */ addiu $a2, $a2, 0x10C0 ## $a2 = 060010C0 -/* 00048 809E0288 8FA4003C */ lw $a0, 0x003C($sp) -/* 0004C 809E028C 0C0291BE */ jal SkelAnime_InitSV -/* 00050 809E0290 2605017C */ addiu $a1, $s0, 0x017C ## $a1 = 0000017C -/* 00054 809E0294 26050238 */ addiu $a1, $s0, 0x0238 ## $a1 = 00000238 -/* 00058 809E0298 AFA50030 */ sw $a1, 0x0030($sp) -/* 0005C 809E029C 0C016EFE */ jal Collider_InitJntSph -/* 00060 809E02A0 8FA4003C */ lw $a0, 0x003C($sp) -/* 00064 809E02A4 3C07809E */ lui $a3, %hi(D_809E1690) ## $a3 = 809E0000 -/* 00068 809E02A8 26190258 */ addiu $t9, $s0, 0x0258 ## $t9 = 00000258 -/* 0006C 809E02AC 8FA50030 */ lw $a1, 0x0030($sp) -/* 00070 809E02B0 AFB90010 */ sw $t9, 0x0010($sp) -/* 00074 809E02B4 24E71690 */ addiu $a3, $a3, %lo(D_809E1690) ## $a3 = 809E1690 -/* 00078 809E02B8 8FA4003C */ lw $a0, 0x003C($sp) -/* 0007C 809E02BC 0C017014 */ jal Collider_SetJntSph -/* 00080 809E02C0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00084 809E02C4 3C08809E */ lui $t0, %hi(D_809E169C) ## $t0 = 809E0000 -/* 00088 809E02C8 8D08169C */ lw $t0, %lo(D_809E169C)($t0) -/* 0008C 809E02CC 8E0A0254 */ lw $t2, 0x0254($s0) ## 00000254 -/* 00090 809E02D0 3C05809E */ lui $a1, %hi(D_809E16A8) ## $a1 = 809E0000 -/* 00094 809E02D4 85090020 */ lh $t1, 0x0020($t0) ## 809E0020 -/* 00098 809E02D8 3C06809E */ lui $a2, %hi(D_809E16A0) ## $a2 = 809E0000 -/* 0009C 809E02DC 24C616A0 */ addiu $a2, $a2, %lo(D_809E16A0) ## $a2 = 809E16A0 -/* 000A0 809E02E0 24A516A8 */ addiu $a1, $a1, %lo(D_809E16A8) ## $a1 = 809E16A8 -/* 000A4 809E02E4 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098 -/* 000A8 809E02E8 0C0187B5 */ jal func_80061ED4 -/* 000AC 809E02EC A5490036 */ sh $t1, 0x0036($t2) ## 00000036 -/* 000B0 809E02F0 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle) -/* 000B4 809E02F4 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle) -/* 000B8 809E02F8 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 000BC 809E02FC 3C0544FA */ lui $a1, 0x44FA ## $a1 = 44FA0000 -/* 000C0 809E0300 0C00AC78 */ jal ActorShape_Init - -/* 000C4 809E0304 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000 -/* 000C8 809E0308 3C01809E */ lui $at, %hi(D_809E16C8) ## $at = 809E0000 -/* 000CC 809E030C AC2016C8 */ sw $zero, %lo(D_809E16C8)($at) -/* 000D0 809E0310 0C2780D5 */ jal func_809E0354 -/* 000D4 809E0314 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 000D8 809E0318 8FBF002C */ lw $ra, 0x002C($sp) -/* 000DC 809E031C 8FB00028 */ lw $s0, 0x0028($sp) -/* 000E0 809E0320 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 000E4 809E0324 03E00008 */ jr $ra -/* 000E8 809E0328 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Update.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Update.s deleted file mode 100644 index 0edfe36d28..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Update.s +++ /dev/null @@ -1,149 +0,0 @@ -glabel EnCrow_Update -/* 00FE0 809E1220 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0 -/* 00FE4 809E1224 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00FE8 809E1228 AFB10020 */ sw $s1, 0x0020($sp) -/* 00FEC 809E122C AFB0001C */ sw $s0, 0x001C($sp) -/* 00FF0 809E1230 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00FF4 809E1234 0C27845D */ jal func_809E1174 -/* 00FF8 809E1238 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 00FFC 809E123C 8E1901C0 */ lw $t9, 0x01C0($s0) ## 000001C0 -/* 01000 809E1240 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01004 809E1244 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01008 809E1248 0320F809 */ jalr $ra, $t9 -/* 0100C 809E124C 00000000 */ nop -/* 01010 809E1250 860F00B4 */ lh $t7, 0x00B4($s0) ## 000000B4 -/* 01014 809E1254 860E00B6 */ lh $t6, 0x00B6($s0) ## 000000B6 -/* 01018 809E1258 3C08809E */ lui $t0, %hi(func_809E10A8) ## $t0 = 809E0000 -/* 0101C 809E125C 000FC023 */ subu $t8, $zero, $t7 -/* 01020 809E1260 C6040050 */ lwc1 $f4, 0x0050($s0) ## 00000050 -/* 01024 809E1264 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 01028 809E1268 A6180030 */ sh $t8, 0x0030($s0) ## 00000030 -/* 0102C 809E126C 250810A8 */ addiu $t0, $t0, %lo(func_809E10A8) ## $t0 = 809E10A8 -/* 01030 809E1270 A60E0032 */ sh $t6, 0x0032($s0) ## 00000032 -/* 01034 809E1274 44813000 */ mtc1 $at, $f6 ## $f6 = 100.00 -/* 01038 809E1278 AFA8002C */ sw $t0, 0x002C($sp) -/* 0103C 809E127C 8E0901C0 */ lw $t1, 0x01C0($s0) ## 000001C0 -/* 01040 809E1280 46062002 */ mul.s $f0, $f4, $f6 -/* 01044 809E1284 51090027 */ beql $t0, $t1, .L809E1324 -/* 01048 809E1288 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -/* 0104C 809E128C 920A00AF */ lbu $t2, 0x00AF($s0) ## 000000AF -/* 01050 809E1290 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 01054 809E1294 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01058 809E1298 5140000A */ beql $t2, $zero, .L809E12C4 -/* 0105C 809E129C 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00 -/* 01060 809E12A0 44814000 */ mtc1 $at, $f8 ## $f8 = 20.00 -/* 01064 809E12A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01068 809E12A8 E7A00030 */ swc1 $f0, 0x0030($sp) -/* 0106C 809E12AC 46004282 */ mul.s $f10, $f8, $f0 -/* 01070 809E12B0 0C00B65F */ jal func_8002D97C -/* 01074 809E12B4 E7AA0034 */ swc1 $f10, 0x0034($sp) -/* 01078 809E12B8 10000006 */ beq $zero, $zero, .L809E12D4 -/* 0107C 809E12BC C7A00030 */ lwc1 $f0, 0x0030($sp) -/* 01080 809E12C0 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00 -.L809E12C4: -/* 01084 809E12C4 E7A00030 */ swc1 $f0, 0x0030($sp) -/* 01088 809E12C8 0C00B638 */ jal Actor_MoveForward - -/* 0108C 809E12CC E7B00034 */ swc1 $f16, 0x0034($sp) -/* 01090 809E12D0 C7A00030 */ lwc1 $f0, 0x0030($sp) -.L809E12D4: -/* 01094 809E12D4 3C014140 */ lui $at, 0x4140 ## $at = 41400000 -/* 01098 809E12D8 44819000 */ mtc1 $at, $f18 ## $f18 = 12.00 -/* 0109C 809E12DC 3C0141C8 */ lui $at, 0x41C8 ## $at = 41C80000 -/* 010A0 809E12E0 44813000 */ mtc1 $at, $f6 ## $f6 = 25.00 -/* 010A4 809E12E4 46009102 */ mul.s $f4, $f18, $f0 -/* 010A8 809E12E8 3C014248 */ lui $at, 0x4248 ## $at = 42480000 -/* 010AC 809E12EC 44815000 */ mtc1 $at, $f10 ## $f10 = 50.00 -/* 010B0 809E12F0 46003202 */ mul.s $f8, $f6, $f0 -/* 010B4 809E12F4 240B0007 */ addiu $t3, $zero, 0x0007 ## $t3 = 00000007 -/* 010B8 809E12F8 AFAB0014 */ sw $t3, 0x0014($sp) -/* 010BC 809E12FC 46005402 */ mul.s $f16, $f10, $f0 -/* 010C0 809E1300 44062000 */ mfc1 $a2, $f4 -/* 010C4 809E1304 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 010C8 809E1308 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 010CC 809E130C 44074000 */ mfc1 $a3, $f8 -/* 010D0 809E1310 0C00B92D */ jal func_8002E4B4 -/* 010D4 809E1314 E7B00010 */ swc1 $f16, 0x0010($sp) -/* 010D8 809E1318 10000005 */ beq $zero, $zero, .L809E1330 -/* 010DC 809E131C C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 010E0 809E1320 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -.L809E1324: -/* 010E4 809E1324 00000000 */ nop -/* 010E8 809E1328 E7B20034 */ swc1 $f18, 0x0034($sp) -/* 010EC 809E132C C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -.L809E1330: -/* 010F0 809E1330 8E190254 */ lw $t9, 0x0254($s0) ## 00000254 -/* 010F4 809E1334 3C0B809E */ lui $t3, %hi(func_809E0C8C) ## $t3 = 809E0000 -/* 010F8 809E1338 4600218D */ trunc.w.s $f6, $f4 -/* 010FC 809E133C 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 01100 809E1340 256B0C8C */ addiu $t3, $t3, %lo(func_809E0C8C) ## $t3 = 809E0C8C -/* 01104 809E1344 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 01108 809E1348 440D3000 */ mfc1 $t5, $f6 -/* 0110C 809E134C 02212821 */ addu $a1, $s1, $at -/* 01110 809E1350 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 01114 809E1354 A72D0030 */ sh $t5, 0x0030($t9) ## 00000030 -/* 01118 809E1358 C7AA0034 */ lwc1 $f10, 0x0034($sp) -/* 0111C 809E135C C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028 -/* 01120 809E1360 8E180254 */ lw $t8, 0x0254($s0) ## 00000254 -/* 01124 809E1364 460A4400 */ add.s $f16, $f8, $f10 -/* 01128 809E1368 4600848D */ trunc.w.s $f18, $f16 -/* 0112C 809E136C 440F9000 */ mfc1 $t7, $f18 -/* 01130 809E1370 00000000 */ nop -/* 01134 809E1374 A70F0032 */ sh $t7, 0x0032($t8) ## 00000032 -/* 01138 809E1378 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C -/* 0113C 809E137C 8E0A0254 */ lw $t2, 0x0254($s0) ## 00000254 -/* 01140 809E1380 4600218D */ trunc.w.s $f6, $f4 -/* 01144 809E1384 44093000 */ mfc1 $t1, $f6 -/* 01148 809E1388 00000000 */ nop -/* 0114C 809E138C A5490034 */ sh $t1, 0x0034($t2) ## 00000034 -/* 01150 809E1390 8E0C01C0 */ lw $t4, 0x01C0($s0) ## 000001C0 -/* 01154 809E1394 556C0004 */ bnel $t3, $t4, .L809E13A8 -/* 01158 809E1398 920D0249 */ lbu $t5, 0x0249($s0) ## 00000249 -/* 0115C 809E139C 0C0175E7 */ jal CollisionCheck_SetAT - ## CollisionCheck_setAT -/* 01160 809E13A0 26060238 */ addiu $a2, $s0, 0x0238 ## $a2 = 00000238 -/* 01164 809E13A4 920D0249 */ lbu $t5, 0x0249($s0) ## 00000249 -.L809E13A8: -/* 01168 809E13A8 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 0116C 809E13AC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 01170 809E13B0 31B90001 */ andi $t9, $t5, 0x0001 ## $t9 = 00000000 -/* 01174 809E13B4 13200004 */ beq $t9, $zero, .L809E13C8 -/* 01178 809E13B8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 0117C 809E13BC 02212821 */ addu $a1, $s1, $at -/* 01180 809E13C0 0C01767D */ jal CollisionCheck_SetAC - ## CollisionCheck_setAC -/* 01184 809E13C4 26060238 */ addiu $a2, $s0, 0x0238 ## $a2 = 00000238 -.L809E13C8: -/* 01188 809E13C8 8FAE002C */ lw $t6, 0x002C($sp) -/* 0118C 809E13CC 8E0F01C0 */ lw $t7, 0x01C0($s0) ## 000001C0 -/* 01190 809E13D0 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 01194 809E13D4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 01198 809E13D8 11CF0004 */ beq $t6, $t7, .L809E13EC -/* 0119C 809E13DC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 011A0 809E13E0 02212821 */ addu $a1, $s1, $at -/* 011A4 809E13E4 0C017713 */ jal CollisionCheck_SetOC - ## CollisionCheck_setOT -/* 011A8 809E13E8 26060238 */ addiu $a2, $s0, 0x0238 ## $a2 = 00000238 -.L809E13EC: -/* 011AC 809E13EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 011B0 809E13F0 0C00B56E */ jal Actor_SetHeight - -/* 011B4 809E13F4 8FA50034 */ lw $a1, 0x0034($sp) -/* 011B8 809E13F8 921800AF */ lbu $t8, 0x00AF($s0) ## 000000AF -/* 011BC 809E13FC 2604017C */ addiu $a0, $s0, 0x017C ## $a0 = 0000017C -/* 011C0 809E1400 53000008 */ beql $t8, $zero, .L809E1424 -/* 011C4 809E1404 8FBF0024 */ lw $ra, 0x0024($sp) -/* 011C8 809E1408 0C0295B2 */ jal func_800A56C8 -/* 011CC 809E140C 3C054040 */ lui $a1, 0x4040 ## $a1 = 40400000 -/* 011D0 809E1410 10400003 */ beq $v0, $zero, .L809E1420 -/* 011D4 809E1414 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 011D8 809E1418 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 011DC 809E141C 24053897 */ addiu $a1, $zero, 0x3897 ## $a1 = 00003897 -.L809E1420: -/* 011E0 809E1420 8FBF0024 */ lw $ra, 0x0024($sp) -.L809E1424: -/* 011E4 809E1424 8FB0001C */ lw $s0, 0x001C($sp) -/* 011E8 809E1428 8FB10020 */ lw $s1, 0x0020($sp) -/* 011EC 809E142C 03E00008 */ jr $ra -/* 011F0 809E1430 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0354.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0354.s deleted file mode 100644 index ea9f27b6dd..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0354.s +++ /dev/null @@ -1,13 +0,0 @@ -glabel func_809E0354 -/* 00114 809E0354 908F0249 */ lbu $t7, 0x0249($a0) ## 00000249 -/* 00118 809E0358 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0011C 809E035C 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00 -/* 00120 809E0360 3C19809E */ lui $t9, %hi(func_809E0864) ## $t9 = 809E0000 -/* 00124 809E0364 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064 -/* 00128 809E0368 27390864 */ addiu $t9, $t9, %lo(func_809E0864) ## $t9 = 809E0864 -/* 0012C 809E036C 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001 -/* 00130 809E0370 A48E01C4 */ sh $t6, 0x01C4($a0) ## 000001C4 -/* 00134 809E0374 A0980249 */ sb $t8, 0x0249($a0) ## 00000249 -/* 00138 809E0378 AC9901C0 */ sw $t9, 0x01C0($a0) ## 000001C0 -/* 0013C 809E037C 03E00008 */ jr $ra -/* 00140 809E0380 E4840198 */ swc1 $f4, 0x0198($a0) ## 00000198 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0384.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0384.s deleted file mode 100644 index 8832d92981..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0384.s +++ /dev/null @@ -1,13 +0,0 @@ -glabel func_809E0384 -/* 00144 809E0384 3C014080 */ lui $at, 0x4080 ## $at = 40800000 -/* 00148 809E0388 44812000 */ mtc1 $at, $f4 ## $f4 = 4.00 -/* 0014C 809E038C 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 00150 809E0390 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00 -/* 00154 809E0394 3C0F809E */ lui $t7, %hi(func_809E0C8C) ## $t7 = 809E0000 -/* 00158 809E0398 240E012C */ addiu $t6, $zero, 0x012C ## $t6 = 0000012C -/* 0015C 809E039C 25EF0C8C */ addiu $t7, $t7, %lo(func_809E0C8C) ## $t7 = 809E0C8C -/* 00160 809E03A0 A48E01C4 */ sh $t6, 0x01C4($a0) ## 000001C4 -/* 00164 809E03A4 AC8F01C0 */ sw $t7, 0x01C0($a0) ## 000001C0 -/* 00168 809E03A8 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068 -/* 0016C 809E03AC 03E00008 */ jr $ra -/* 00170 809E03B0 E4860198 */ swc1 $f6, 0x0198($a0) ## 00000198 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E03B4.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E03B4.s deleted file mode 100644 index 860f4d7a86..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E03B4.s +++ /dev/null @@ -1,224 +0,0 @@ -.late_rodata -glabel D_809E16F0 - .float 0.85 - -glabel D_809E16F4 - .float 0.15 - -.text -glabel func_809E03B4 -/* 00174 809E03B4 27BDFF68 */ addiu $sp, $sp, 0xFF68 ## $sp = FFFFFF68 -/* 00178 809E03B8 AFB10060 */ sw $s1, 0x0060($sp) -/* 0017C 809E03BC 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000 -/* 00180 809E03C0 AFBF0074 */ sw $ra, 0x0074($sp) -/* 00184 809E03C4 AFB50070 */ sw $s5, 0x0070($sp) -/* 00188 809E03C8 AFB4006C */ sw $s4, 0x006C($sp) -/* 0018C 809E03CC AFB30068 */ sw $s3, 0x0068($sp) -/* 00190 809E03D0 AFB20064 */ sw $s2, 0x0064($sp) -/* 00194 809E03D4 AFB0005C */ sw $s0, 0x005C($sp) -/* 00198 809E03D8 F7BC0050 */ sdc1 $f28, 0x0050($sp) -/* 0019C 809E03DC F7BA0048 */ sdc1 $f26, 0x0048($sp) -/* 001A0 809E03E0 F7B80040 */ sdc1 $f24, 0x0040($sp) -/* 001A4 809E03E4 F7B60038 */ sdc1 $f22, 0x0038($sp) -/* 001A8 809E03E8 F7B40030 */ sdc1 $f20, 0x0030($sp) -/* 001AC 809E03EC 00A0A825 */ or $s5, $a1, $zero ## $s5 = 00000000 -/* 001B0 809E03F0 0C01DE0D */ jal Math_Coss - ## coss? -/* 001B4 809E03F4 84840030 */ lh $a0, 0x0030($a0) ## 00000030 -/* 001B8 809E03F8 C6240068 */ lwc1 $f4, 0x0068($s1) ## 00000068 -/* 001BC 809E03FC 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00 -/* 001C0 809E0400 3C01C040 */ lui $at, 0xC040 ## $at = C0400000 -/* 001C4 809E0404 46002182 */ mul.s $f6, $f4, $f0 -/* 001C8 809E0408 44814000 */ mtc1 $at, $f8 ## $f8 = -3.00 -/* 001CC 809E040C E6220060 */ swc1 $f2, 0x0060($s1) ## 00000060 -/* 001D0 809E0410 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000 -/* 001D4 809E0414 3C063ECC */ lui $a2, 0x3ECC ## $a2 = 3ECC0000 -/* 001D8 809E0418 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 001DC 809E041C 44071000 */ mfc1 $a3, $f2 -/* 001E0 809E0420 E6260068 */ swc1 $f6, 0x0068($s1) ## 00000068 -/* 001E4 809E0424 AFAE0014 */ sw $t6, 0x0014($sp) -/* 001E8 809E0428 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3ECCCCCD -/* 001EC 809E042C 24A500F0 */ addiu $a1, $a1, 0x00F0 ## $a1 = 060000F0 -/* 001F0 809E0430 2624017C */ addiu $a0, $s1, 0x017C ## $a0 = 0000017C -/* 001F4 809E0434 E7A20010 */ swc1 $f2, 0x0010($sp) -/* 001F8 809E0438 0C029468 */ jal SkelAnime_ChangeAnim - -/* 001FC 809E043C E7A80018 */ swc1 $f8, 0x0018($sp) -/* 00200 809E0440 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 00204 809E0444 44818000 */ mtc1 $at, $f16 ## $f16 = 100.00 -/* 00208 809E0448 C62A0050 */ lwc1 $f10, 0x0050($s1) ## 00000050 -/* 0020C 809E044C 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00210 809E0450 44812000 */ mtc1 $at, $f4 ## $f4 = 20.00 -/* 00214 809E0454 46105602 */ mul.s $f24, $f10, $f16 -/* 00218 809E0458 C6320028 */ lwc1 $f18, 0x0028($s1) ## 00000028 -/* 0021C 809E045C 962F0088 */ lhu $t7, 0x0088($s1) ## 00000088 -/* 00220 809E0460 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00224 809E0464 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00228 809E0468 31F8FFFE */ andi $t8, $t7, 0xFFFE ## $t8 = 00000000 -/* 0022C 809E046C A6380088 */ sh $t8, 0x0088($s1) ## 00000088 -/* 00230 809E0470 46182182 */ mul.s $f6, $f4, $f24 -/* 00234 809E0474 240538EB */ addiu $a1, $zero, 0x38EB ## $a1 = 000038EB -/* 00238 809E0478 E62000BC */ swc1 $f0, 0x00BC($s1) ## 000000BC -/* 0023C 809E047C E620004C */ swc1 $f0, 0x004C($s1) ## 0000004C -/* 00240 809E0480 46069200 */ add.s $f8, $f18, $f6 -/* 00244 809E0484 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00248 809E0488 E6280028 */ swc1 $f8, 0x0028($s1) ## 00000028 -/* 0024C 809E048C 922200B1 */ lbu $v0, 0x00B1($s1) ## 000000B1 -/* 00250 809E0490 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 00254 809E0494 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00258 809E0498 14410048 */ bne $v0, $at, .L809E05BC -/* 0025C 809E049C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00260 809E04A0 24190028 */ addiu $t9, $zero, 0x0028 ## $t9 = 00000028 -/* 00264 809E04A4 AFB90010 */ sw $t9, 0x0010($sp) -/* 00268 809E04A8 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF -/* 0026C 809E04AC 0C00D09B */ jal func_8003426C -/* 00270 809E04B0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00274 809E04B4 3C01809E */ lui $at, %hi(D_809E16F0) ## $at = 809E0000 -/* 00278 809E04B8 C43C16F0 */ lwc1 $f28, %lo(D_809E16F0)($at) -/* 0027C 809E04BC 3C01809E */ lui $at, %hi(D_809E16F4) ## $at = 809E0000 -/* 00280 809E04C0 C43A16F4 */ lwc1 $f26, %lo(D_809E16F4)($at) -/* 00284 809E04C4 3C01C0E0 */ lui $at, 0xC0E0 ## $at = C0E00000 -/* 00288 809E04C8 4481B000 */ mtc1 $at, $f22 ## $f22 = -7.00 -/* 0028C 809E04CC 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000 -/* 00290 809E04D0 4481A000 */ mtc1 $at, $f20 ## $f20 = 7.00 -/* 00294 809E04D4 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000 -/* 00298 809E04D8 24130008 */ addiu $s3, $zero, 0x0008 ## $s3 = 00000008 -/* 0029C 809E04DC 27B20084 */ addiu $s2, $sp, 0x0084 ## $s2 = FFFFFFEC -/* 002A0 809E04E0 32080001 */ andi $t0, $s0, 0x0001 ## $t0 = 00000000 -.L809E04E4: -/* 002A4 809E04E4 51000004 */ beql $t0, $zero, .L809E04F8 -/* 002A8 809E04E8 4600B006 */ mov.s $f0, $f22 -/* 002AC 809E04EC 10000002 */ beq $zero, $zero, .L809E04F8 -/* 002B0 809E04F0 4600A006 */ mov.s $f0, $f20 -/* 002B4 809E04F4 4600B006 */ mov.s $f0, $f22 -.L809E04F8: -/* 002B8 809E04F8 46180282 */ mul.s $f10, $f0, $f24 -/* 002BC 809E04FC C6300024 */ lwc1 $f16, 0x0024($s1) ## 00000024 -/* 002C0 809E0500 32090002 */ andi $t1, $s0, 0x0002 ## $t1 = 00000000 -/* 002C4 809E0504 46105100 */ add.s $f4, $f10, $f16 -/* 002C8 809E0508 11200003 */ beq $t1, $zero, .L809E0518 -/* 002CC 809E050C E7A40084 */ swc1 $f4, 0x0084($sp) -/* 002D0 809E0510 10000002 */ beq $zero, $zero, .L809E051C -/* 002D4 809E0514 4600A006 */ mov.s $f0, $f20 -.L809E0518: -/* 002D8 809E0518 4600B006 */ mov.s $f0, $f22 -.L809E051C: -/* 002DC 809E051C 46180482 */ mul.s $f18, $f0, $f24 -/* 002E0 809E0520 C6260028 */ lwc1 $f6, 0x0028($s1) ## 00000028 -/* 002E4 809E0524 320A0004 */ andi $t2, $s0, 0x0004 ## $t2 = 00000000 -/* 002E8 809E0528 46069200 */ add.s $f8, $f18, $f6 -/* 002EC 809E052C 11400003 */ beq $t2, $zero, .L809E053C -/* 002F0 809E0530 E7A80088 */ swc1 $f8, 0x0088($sp) -/* 002F4 809E0534 10000002 */ beq $zero, $zero, .L809E0540 -/* 002F8 809E0538 4600A006 */ mov.s $f0, $f20 -.L809E053C: -/* 002FC 809E053C 4600B006 */ mov.s $f0, $f22 -.L809E0540: -/* 00300 809E0540 46180282 */ mul.s $f10, $f0, $f24 -/* 00304 809E0544 C630002C */ lwc1 $f16, 0x002C($s1) ## 0000002C -/* 00308 809E0548 46105100 */ add.s $f4, $f10, $f16 -/* 0030C 809E054C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00310 809E0550 E7A4008C */ swc1 $f4, 0x008C($sp) -/* 00314 809E0554 461A0482 */ mul.s $f18, $f0, $f26 -/* 00318 809E0558 240B0096 */ addiu $t3, $zero, 0x0096 ## $t3 = 00000096 -/* 0031C 809E055C 240C0096 */ addiu $t4, $zero, 0x0096 ## $t4 = 00000096 -/* 00320 809E0560 240D00FA */ addiu $t5, $zero, 0x00FA ## $t5 = 000000FA -/* 00324 809E0564 240E00EB */ addiu $t6, $zero, 0x00EB ## $t6 = 000000EB -/* 00328 809E0568 240F00F5 */ addiu $t7, $zero, 0x00F5 ## $t7 = 000000F5 -/* 0032C 809E056C 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF -/* 00330 809E0570 461C9180 */ add.s $f6, $f18, $f28 -/* 00334 809E0574 AFB80024 */ sw $t8, 0x0024($sp) -/* 00338 809E0578 AFAF0020 */ sw $t7, 0x0020($sp) -/* 0033C 809E057C AFAE001C */ sw $t6, 0x001C($sp) -/* 00340 809E0580 46183202 */ mul.s $f8, $f6, $f24 -/* 00344 809E0584 AFAD0018 */ sw $t5, 0x0018($sp) -/* 00348 809E0588 AFAC0014 */ sw $t4, 0x0014($sp) -/* 0034C 809E058C AFAB0010 */ sw $t3, 0x0010($sp) -/* 00350 809E0590 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000 -/* 00354 809E0594 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 00358 809E0598 02403025 */ or $a2, $s2, $zero ## $a2 = FFFFFFEC -/* 0035C 809E059C E7A80028 */ swc1 $f8, 0x0028($sp) -/* 00360 809E05A0 0C00A850 */ jal EffectSsEnIce_SpawnFlyingVec3f -/* 00364 809E05A4 24070096 */ addiu $a3, $zero, 0x0096 ## $a3 = 00000096 -/* 00368 809E05A8 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001 -/* 0036C 809E05AC 5613FFCD */ bnel $s0, $s3, .L809E04E4 -/* 00370 809E05B0 32080001 */ andi $t0, $s0, 0x0001 ## $t0 = 00000001 -/* 00374 809E05B4 1000002B */ beq $zero, $zero, .L809E0664 -/* 00378 809E05B8 8E220004 */ lw $v0, 0x0004($s1) ## 00000004 -.L809E05BC: -/* 0037C 809E05BC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00380 809E05C0 14410021 */ bne $v0, $at, .L809E0648 -/* 00384 809E05C4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00388 809E05C8 24190028 */ addiu $t9, $zero, 0x0028 ## $t9 = 00000028 -/* 0038C 809E05CC AFB90010 */ sw $t9, 0x0010($sp) -/* 00390 809E05D0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00394 809E05D4 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000 -/* 00398 809E05D8 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF -/* 0039C 809E05DC 0C00D09B */ jal func_8003426C -/* 003A0 809E05E0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 003A4 809E05E4 3C014248 */ lui $at, 0x4248 ## $at = 42480000 -/* 003A8 809E05E8 44815000 */ mtc1 $at, $f10 ## $f10 = 50.00 -/* 003AC 809E05EC 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000 -/* 003B0 809E05F0 26320024 */ addiu $s2, $s1, 0x0024 ## $s2 = 00000024 -/* 003B4 809E05F4 46185402 */ mul.s $f16, $f10, $f24 -/* 003B8 809E05F8 24140004 */ addiu $s4, $zero, 0x0004 ## $s4 = 00000004 -/* 003BC 809E05FC 4600810D */ trunc.w.s $f4, $f16 -/* 003C0 809E0600 44132000 */ mfc1 $s3, $f4 -/* 003C4 809E0604 00000000 */ nop -/* 003C8 809E0608 00139C00 */ sll $s3, $s3, 16 -/* 003CC 809E060C 00139C03 */ sra $s3, $s3, 16 -/* 003D0 809E0610 00133C00 */ sll $a3, $s3, 16 -.L809E0614: -/* 003D4 809E0614 00073C03 */ sra $a3, $a3, 16 -/* 003D8 809E0618 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000 -/* 003DC 809E061C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 003E0 809E0620 02403025 */ or $a2, $s2, $zero ## $a2 = 00000024 -/* 003E4 809E0624 AFA00010 */ sw $zero, 0x0010($sp) -/* 003E8 809E0628 AFA00014 */ sw $zero, 0x0014($sp) -/* 003EC 809E062C 0C00A935 */ jal EffectSsEnFire_SpawnVec3f -/* 003F0 809E0630 AFB00018 */ sw $s0, 0x0018($sp) -/* 003F4 809E0634 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001 -/* 003F8 809E0638 5614FFF6 */ bnel $s0, $s4, .L809E0614 -/* 003FC 809E063C 00133C00 */ sll $a3, $s3, 16 -/* 00400 809E0640 10000008 */ beq $zero, $zero, .L809E0664 -/* 00404 809E0644 8E220004 */ lw $v0, 0x0004($s1) ## 00000004 -.L809E0648: -/* 00408 809E0648 24090028 */ addiu $t1, $zero, 0x0028 ## $t1 = 00000028 -/* 0040C 809E064C AFA90010 */ sw $t1, 0x0010($sp) -/* 00410 809E0650 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000 -/* 00414 809E0654 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF -/* 00418 809E0658 0C00D09B */ jal func_8003426C -/* 0041C 809E065C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00420 809E0660 8E220004 */ lw $v0, 0x0004($s1) ## 00000004 -.L809E0664: -/* 00424 809E0664 3C0E809E */ lui $t6, %hi(func_809E0E2C) ## $t6 = 809E0000 -/* 00428 809E0668 25CE0E2C */ addiu $t6, $t6, %lo(func_809E0E2C) ## $t6 = 809E0E2C -/* 0042C 809E066C 304A8000 */ andi $t2, $v0, 0x8000 ## $t2 = 00000000 -/* 00430 809E0670 51400005 */ beql $t2, $zero, .L809E0688 -/* 00434 809E0674 922B0249 */ lbu $t3, 0x0249($s1) ## 00000249 -/* 00438 809E0678 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00 -/* 0043C 809E067C 8E220004 */ lw $v0, 0x0004($s1) ## 00000004 -/* 00440 809E0680 E6320068 */ swc1 $f18, 0x0068($s1) ## 00000068 -/* 00444 809E0684 922B0249 */ lbu $t3, 0x0249($s1) ## 00000249 -.L809E0688: -/* 00448 809E0688 344D0010 */ ori $t5, $v0, 0x0010 ## $t5 = 00000010 -/* 0044C 809E068C AE2D0004 */ sw $t5, 0x0004($s1) ## 00000004 -/* 00450 809E0690 316CFFFE */ andi $t4, $t3, 0xFFFE ## $t4 = 00000000 -/* 00454 809E0694 A22C0249 */ sb $t4, 0x0249($s1) ## 00000249 -/* 00458 809E0698 AE2E01C0 */ sw $t6, 0x01C0($s1) ## 000001C0 -/* 0045C 809E069C 8FBF0074 */ lw $ra, 0x0074($sp) -/* 00460 809E06A0 8FB50070 */ lw $s5, 0x0070($sp) -/* 00464 809E06A4 8FB4006C */ lw $s4, 0x006C($sp) -/* 00468 809E06A8 8FB30068 */ lw $s3, 0x0068($sp) -/* 0046C 809E06AC 8FB20064 */ lw $s2, 0x0064($sp) -/* 00470 809E06B0 8FB10060 */ lw $s1, 0x0060($sp) -/* 00474 809E06B4 8FB0005C */ lw $s0, 0x005C($sp) -/* 00478 809E06B8 D7BC0050 */ ldc1 $f28, 0x0050($sp) -/* 0047C 809E06BC D7BA0048 */ ldc1 $f26, 0x0048($sp) -/* 00480 809E06C0 D7B80040 */ ldc1 $f24, 0x0040($sp) -/* 00484 809E06C4 D7B60038 */ ldc1 $f22, 0x0038($sp) -/* 00488 809E06C8 D7B40030 */ ldc1 $f20, 0x0030($sp) -/* 0048C 809E06CC 03E00008 */ jr $ra -/* 00490 809E06D0 27BD0098 */ addiu $sp, $sp, 0x0098 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06D4.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06D4.s deleted file mode 100644 index d882515270..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06D4.s +++ /dev/null @@ -1,6 +0,0 @@ -glabel func_809E06D4 -/* 00494 809E06D4 3C0E809E */ lui $t6, %hi(func_809E0F54) ## $t6 = 809E0000 -/* 00498 809E06D8 25CE0F54 */ addiu $t6, $t6, %lo(func_809E0F54) ## $t6 = 809E0F54 -/* 0049C 809E06DC A0800114 */ sb $zero, 0x0114($a0) ## 00000114 -/* 004A0 809E06E0 03E00008 */ jr $ra -/* 004A4 809E06E4 AC8E01C0 */ sw $t6, 0x01C0($a0) ## 000001C0 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06E8.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06E8.s deleted file mode 100644 index 22326f97a9..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06E8.s +++ /dev/null @@ -1,36 +0,0 @@ -glabel func_809E06E8 -/* 004A8 809E06E8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 004AC 809E06EC AFBF001C */ sw $ra, 0x001C($sp) -/* 004B0 809E06F0 8498008A */ lh $t8, 0x008A($a0) ## 0000008A -/* 004B4 809E06F4 3C014060 */ lui $at, 0x4060 ## $at = 40600000 -/* 004B8 809E06F8 44812000 */ mtc1 $at, $f4 ## $f4 = 3.50 -/* 004BC 809E06FC 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000 -/* 004C0 809E0700 0301C821 */ addu $t9, $t8, $at -/* 004C4 809E0704 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 004C8 809E0708 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00 -/* 004CC 809E070C 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064 -/* 004D0 809E0710 240FF000 */ addiu $t7, $zero, 0xF000 ## $t7 = FFFFF000 -/* 004D4 809E0714 A48E01C4 */ sh $t6, 0x01C4($a0) ## 000001C4 -/* 004D8 809E0718 A48F01C6 */ sh $t7, 0x01C6($a0) ## 000001C6 -/* 004DC 809E071C A49901C8 */ sh $t9, 0x01C8($a0) ## 000001C8 -/* 004E0 809E0720 24080005 */ addiu $t0, $zero, 0x0005 ## $t0 = 00000005 -/* 004E4 809E0724 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068 -/* 004E8 809E0728 E4860198 */ swc1 $f6, 0x0198($a0) ## 00000198 -/* 004EC 809E072C AFA40020 */ sw $a0, 0x0020($sp) -/* 004F0 809E0730 AFA80010 */ sw $t0, 0x0010($sp) -/* 004F4 809E0734 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 004F8 809E0738 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF -/* 004FC 809E073C 0C00D09B */ jal func_8003426C -/* 00500 809E0740 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00504 809E0744 8FA40020 */ lw $a0, 0x0020($sp) -/* 00508 809E0748 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 0050C 809E074C 2405389E */ addiu $a1, $zero, 0x389E ## $a1 = 0000389E -/* 00510 809E0750 8FA40020 */ lw $a0, 0x0020($sp) -/* 00514 809E0754 3C09809E */ lui $t1, %hi(func_809E1004) ## $t1 = 809E0000 -/* 00518 809E0758 25291004 */ addiu $t1, $t1, %lo(func_809E1004) ## $t1 = 809E1004 -/* 0051C 809E075C AC8901C0 */ sw $t1, 0x01C0($a0) ## 000001C0 -/* 00520 809E0760 8FBF001C */ lw $ra, 0x001C($sp) -/* 00524 809E0764 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00528 809E0768 03E00008 */ jr $ra -/* 0052C 809E076C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0770.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0770.s deleted file mode 100644 index 011192fd5c..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0770.s +++ /dev/null @@ -1,70 +0,0 @@ -.late_rodata -glabel D_809E16F8 - .float 0.03 - -.text -glabel func_809E0770 -/* 00530 809E0770 3C02809E */ lui $v0, %hi(D_809E16C8) ## $v0 = 809E0000 -/* 00534 809E0774 244216C8 */ addiu $v0, $v0, %lo(D_809E16C8) ## $v0 = 809E16C8 -/* 00538 809E0778 8C4E0000 */ lw $t6, 0x0000($v0) ## 809E16C8 -/* 0053C 809E077C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00540 809E0780 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A -/* 00544 809E0784 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00548 809E0788 15C10015 */ bne $t6, $at, .L809E07E0 -/* 0054C 809E078C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00550 809E0790 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001 -/* 00554 809E0794 A48F001C */ sh $t7, 0x001C($a0) ## 0000001C -/* 00558 809E0798 AC400000 */ sw $zero, 0x0000($v0) ## 809E16C8 -/* 0055C 809E079C 3C18809E */ lui $t8, %hi(D_809E169C) ## $t8 = 809E0000 -/* 00560 809E07A0 8F18169C */ lw $t8, %lo(D_809E169C)($t8) -/* 00564 809E07A4 3C01809E */ lui $at, %hi(D_809E16F8) ## $at = 809E0000 -/* 00568 809E07A8 C42816F8 */ lwc1 $f8, %lo(D_809E16F8)($at) -/* 0056C 809E07AC 87190020 */ lh $t9, 0x0020($t8) ## 809E0020 -/* 00570 809E07B0 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 00574 809E07B4 44818000 */ mtc1 $at, $f16 ## $f16 = 100.00 -/* 00578 809E07B8 44992000 */ mtc1 $t9, $f4 ## $f4 = 0.00 -/* 0057C 809E07BC 8C8A0254 */ lw $t2, 0x0254($a0) ## 00000254 -/* 00580 809E07C0 468021A0 */ cvt.s.w $f6, $f4 -/* 00584 809E07C4 46083282 */ mul.s $f10, $f6, $f8 -/* 00588 809E07C8 00000000 */ nop -/* 0058C 809E07CC 46105482 */ mul.s $f18, $f10, $f16 -/* 00590 809E07D0 4600910D */ trunc.w.s $f4, $f18 -/* 00594 809E07D4 44092000 */ mfc1 $t1, $f4 -/* 00598 809E07D8 10000007 */ beq $zero, $zero, .L809E07F8 -/* 0059C 809E07DC A5490036 */ sh $t1, 0x0036($t2) ## 00000036 -.L809E07E0: -/* 005A0 809E07E0 A4C0001C */ sh $zero, 0x001C($a2) ## 0000001C -/* 005A4 809E07E4 3C0B809E */ lui $t3, %hi(D_809E169C) ## $t3 = 809E0000 -/* 005A8 809E07E8 8D6B169C */ lw $t3, %lo(D_809E169C)($t3) -/* 005AC 809E07EC 8CCD0254 */ lw $t5, 0x0254($a2) ## 00000254 -/* 005B0 809E07F0 856C0020 */ lh $t4, 0x0020($t3) ## 809E0020 -/* 005B4 809E07F4 A5AC0036 */ sh $t4, 0x0036($t5) ## 00000036 -.L809E07F8: -/* 005B8 809E07F8 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000 -/* 005BC 809E07FC 24A500F0 */ addiu $a1, $a1, 0x00F0 ## $a1 = 060000F0 -/* 005C0 809E0800 24C4017C */ addiu $a0, $a2, 0x017C ## $a0 = 0000017C -/* 005C4 809E0804 0C0294BE */ jal SkelAnime_ChangeAnimDefaultRepeat -/* 005C8 809E0808 AFA60018 */ sw $a2, 0x0018($sp) -/* 005CC 809E080C 8FA60018 */ lw $a2, 0x0018($sp) -/* 005D0 809E0810 24C40024 */ addiu $a0, $a2, 0x0024 ## $a0 = 00000024 -/* 005D4 809E0814 0C01DF90 */ jal Math_Vec3f_Copy - ## Vec3f_Copy -/* 005D8 809E0818 24C50008 */ addiu $a1, $a2, 0x0008 ## $a1 = 00000008 -/* 005DC 809E081C 8FA60018 */ lw $a2, 0x0018($sp) -/* 005E0 809E0820 3C0144FA */ lui $at, 0x44FA ## $at = 44FA0000 -/* 005E4 809E0824 44813000 */ mtc1 $at, $f6 ## $f6 = 2000.00 -/* 005E8 809E0828 44814000 */ mtc1 $at, $f8 ## $f8 = 2000.00 -/* 005EC 809E082C 3C0F809E */ lui $t7, %hi(func_809E10A8) ## $t7 = 809E0000 -/* 005F0 809E0830 240E012C */ addiu $t6, $zero, 0x012C ## $t6 = 0000012C -/* 005F4 809E0834 25EF10A8 */ addiu $t7, $t7, %lo(func_809E10A8) ## $t7 = 809E10A8 -/* 005F8 809E0838 A4C000B4 */ sh $zero, 0x00B4($a2) ## 000000B4 -/* 005FC 809E083C A4C000B8 */ sh $zero, 0x00B8($a2) ## 000000B8 -/* 00600 809E0840 A4CE01C4 */ sh $t6, 0x01C4($a2) ## 000001C4 -/* 00604 809E0844 ACC00134 */ sw $zero, 0x0134($a2) ## 00000134 -/* 00608 809E0848 ACCF01C0 */ sw $t7, 0x01C0($a2) ## 000001C0 -/* 0060C 809E084C E4C600BC */ swc1 $f6, 0x00BC($a2) ## 000000BC -/* 00610 809E0850 E4C8004C */ swc1 $f8, 0x004C($a2) ## 0000004C -/* 00614 809E0854 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00618 809E0858 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0061C 809E085C 03E00008 */ jr $ra -/* 00620 809E0860 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0864.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0864.s deleted file mode 100644 index fa26080ef7..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0864.s +++ /dev/null @@ -1,309 +0,0 @@ -.late_rodata -glabel D_809E16FC - .float 0.1 - -glabel D_809E1700 - .float 0.1 - -.text -glabel func_809E0864 -/* 00624 809E0864 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0 -/* 00628 809E0868 AFB00020 */ sw $s0, 0x0020($sp) -/* 0062C 809E086C AFBF0024 */ sw $ra, 0x0024($sp) -/* 00630 809E0870 AFA50044 */ sw $a1, 0x0044($sp) -/* 00634 809E0874 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44 -/* 00638 809E0878 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 0063C 809E087C 2484017C */ addiu $a0, $a0, 0x017C ## $a0 = 0000017C -/* 00640 809E0880 AFA40028 */ sw $a0, 0x0028($sp) -/* 00644 809E0884 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00648 809E0888 AFAF003C */ sw $t7, 0x003C($sp) -/* 0064C 809E088C 8FA40028 */ lw $a0, 0x0028($sp) -/* 00650 809E0890 0C0295B2 */ jal func_800A56C8 -/* 00654 809E0894 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 00658 809E0898 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 0065C 809E089C AFA20038 */ sw $v0, 0x0038($sp) -/* 00660 809E08A0 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 00664 809E08A4 44812000 */ mtc1 $at, $f4 ## $f4 = 1.50 -/* 00668 809E08A8 3C014040 */ lui $at, 0x4040 ## $at = 40400000 -/* 0066C 809E08AC 44814000 */ mtc1 $at, $f8 ## $f8 = 3.00 -/* 00670 809E08B0 46040182 */ mul.s $f6, $f0, $f4 -/* 00674 809E08B4 96180088 */ lhu $t8, 0x0088($s0) ## 00000088 -/* 00678 809E08B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0067C 809E08BC 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 -/* 00680 809E08C0 33190008 */ andi $t9, $t8, 0x0008 ## $t9 = 00000000 -/* 00684 809E08C4 46083280 */ add.s $f10, $f6, $f8 -/* 00688 809E08C8 13200004 */ beq $t9, $zero, .L809E08DC -/* 0068C 809E08CC E60A0068 */ swc1 $f10, 0x0068($s0) ## 00000068 -/* 00690 809E08D0 8608007E */ lh $t0, 0x007E($s0) ## 0000007E -/* 00694 809E08D4 1000000D */ beq $zero, $zero, .L809E090C -/* 00698 809E08D8 A60801C8 */ sh $t0, 0x01C8($s0) ## 000001C8 -.L809E08DC: -/* 0069C 809E08DC 0C00B6EC */ jal func_8002DBB0 -/* 006A0 809E08E0 AFA50028 */ sw $a1, 0x0028($sp) -/* 006A4 809E08E4 3C014396 */ lui $at, 0x4396 ## $at = 43960000 -/* 006A8 809E08E8 44818000 */ mtc1 $at, $f16 ## $f16 = 300.00 -/* 006AC 809E08EC 8FA50028 */ lw $a1, 0x0028($sp) -/* 006B0 809E08F0 4600803C */ c.lt.s $f16, $f0 -/* 006B4 809E08F4 00000000 */ nop -/* 006B8 809E08F8 45020005 */ bc1fl .L809E0910 -/* 006BC 809E08FC 860501C8 */ lh $a1, 0x01C8($s0) ## 000001C8 -/* 006C0 809E0900 0C00B6B0 */ jal func_8002DAC0 -/* 006C4 809E0904 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006C8 809E0908 A60201C8 */ sh $v0, 0x01C8($s0) ## 000001C8 -.L809E090C: -/* 006CC 809E090C 860501C8 */ lh $a1, 0x01C8($s0) ## 000001C8 -.L809E0910: -/* 006D0 809E0910 24090010 */ addiu $t1, $zero, 0x0010 ## $t1 = 00000010 -/* 006D4 809E0914 AFA90010 */ sw $t1, 0x0010($sp) -/* 006D8 809E0918 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6 -/* 006DC 809E091C 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005 -/* 006E0 809E0920 0C01E1A7 */ jal Math_SmoothScaleMaxMinS - -/* 006E4 809E0924 24070300 */ addiu $a3, $zero, 0x0300 ## $a3 = 00000300 -/* 006E8 809E0928 14400035 */ bne $v0, $zero, .L809E0A00 -/* 006EC 809E092C 8FAA0038 */ lw $t2, 0x0038($sp) -/* 006F0 809E0930 51400034 */ beql $t2, $zero, .L809E0A04 -/* 006F4 809E0934 3C01C220 */ lui $at, 0xC220 ## $at = C2200000 -/* 006F8 809E0938 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 006FC 809E093C 00000000 */ nop -/* 00700 809E0940 3C01809E */ lui $at, %hi(D_809E16FC) ## $at = 809E0000 -/* 00704 809E0944 C43216FC */ lwc1 $f18, %lo(D_809E16FC)($at) -/* 00708 809E0948 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0070C 809E094C 4612003C */ c.lt.s $f0, $f18 -/* 00710 809E0950 00000000 */ nop -/* 00714 809E0954 4502002B */ bc1fl .L809E0A04 -/* 00718 809E0958 3C01C220 */ lui $at, 0xC220 ## $at = C2200000 -/* 0071C 809E095C 0C00B6B0 */ jal func_8002DAC0 -/* 00720 809E0960 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 -/* 00724 809E0964 860B00B6 */ lh $t3, 0x00B6($s0) ## 000000B6 -/* 00728 809E0968 004B1823 */ subu $v1, $v0, $t3 -/* 0072C 809E096C 00031C00 */ sll $v1, $v1, 16 -/* 00730 809E0970 00031C03 */ sra $v1, $v1, 16 -/* 00734 809E0974 18600010 */ blez $v1, .L809E09B8 -/* 00738 809E0978 00000000 */ nop -/* 0073C 809E097C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00740 809E0980 00000000 */ nop -/* 00744 809E0984 3C014580 */ lui $at, 0x4580 ## $at = 45800000 -/* 00748 809E0988 44811000 */ mtc1 $at, $f2 ## $f2 = 4096.00 -/* 0074C 809E098C 860C01C8 */ lh $t4, 0x01C8($s0) ## 000001C8 -/* 00750 809E0990 46001202 */ mul.s $f8, $f2, $f0 -/* 00754 809E0994 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00 -/* 00758 809E0998 00000000 */ nop -/* 0075C 809E099C 468021A0 */ cvt.s.w $f6, $f4 -/* 00760 809E09A0 46081280 */ add.s $f10, $f2, $f8 -/* 00764 809E09A4 460A3400 */ add.s $f16, $f6, $f10 -/* 00768 809E09A8 4600848D */ trunc.w.s $f18, $f16 -/* 0076C 809E09AC 440E9000 */ mfc1 $t6, $f18 -/* 00770 809E09B0 10000010 */ beq $zero, $zero, .L809E09F4 -/* 00774 809E09B4 A60E01C8 */ sh $t6, 0x01C8($s0) ## 000001C8 -.L809E09B8: -/* 00778 809E09B8 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 0077C 809E09BC 00000000 */ nop -/* 00780 809E09C0 3C014580 */ lui $at, 0x4580 ## $at = 45800000 -/* 00784 809E09C4 44811000 */ mtc1 $at, $f2 ## $f2 = 4096.00 -/* 00788 809E09C8 860F01C8 */ lh $t7, 0x01C8($s0) ## 000001C8 -/* 0078C 809E09CC 46001182 */ mul.s $f6, $f2, $f0 -/* 00790 809E09D0 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00 -/* 00794 809E09D4 00000000 */ nop -/* 00798 809E09D8 46802220 */ cvt.s.w $f8, $f4 -/* 0079C 809E09DC 46061280 */ add.s $f10, $f2, $f6 -/* 007A0 809E09E0 460A4401 */ sub.s $f16, $f8, $f10 -/* 007A4 809E09E4 4600848D */ trunc.w.s $f18, $f16 -/* 007A8 809E09E8 44199000 */ mfc1 $t9, $f18 -/* 007AC 809E09EC 00000000 */ nop -/* 007B0 809E09F0 A61901C8 */ sh $t9, 0x01C8($s0) ## 000001C8 -.L809E09F4: -/* 007B4 809E09F4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 007B8 809E09F8 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 007BC 809E09FC 240538B6 */ addiu $a1, $zero, 0x38B6 ## $a1 = 000038B6 -.L809E0A00: -/* 007C0 809E0A00 3C01C220 */ lui $at, 0xC220 ## $at = C2200000 -.L809E0A04: -/* 007C4 809E0A04 44812000 */ mtc1 $at, $f4 ## $f4 = -40.00 -/* 007C8 809E0A08 C6060084 */ lwc1 $f6, 0x0084($s0) ## 00000084 -/* 007CC 809E0A0C 3C014248 */ lui $at, 0x4248 ## $at = 42480000 -/* 007D0 809E0A10 2408F000 */ addiu $t0, $zero, 0xF000 ## $t0 = FFFFF000 -/* 007D4 809E0A14 4606203C */ c.lt.s $f4, $f6 -/* 007D8 809E0A18 00000000 */ nop -/* 007DC 809E0A1C 45020004 */ bc1fl .L809E0A30 -/* 007E0 809E0A20 44816000 */ mtc1 $at, $f12 ## $f12 = 50.00 -/* 007E4 809E0A24 10000025 */ beq $zero, $zero, .L809E0ABC -/* 007E8 809E0A28 A60801C6 */ sh $t0, 0x01C6($s0) ## 000001C6 -/* 007EC 809E0A2C 44816000 */ mtc1 $at, $f12 ## $f12 = 50.00 -.L809E0A30: -/* 007F0 809E0A30 C602000C */ lwc1 $f2, 0x000C($s0) ## 0000000C -/* 007F4 809E0A34 C6000028 */ lwc1 $f0, 0x0028($s0) ## 00000028 -/* 007F8 809E0A38 460C1201 */ sub.s $f8, $f2, $f12 -/* 007FC 809E0A3C 4608003C */ c.lt.s $f0, $f8 -/* 00800 809E0A40 00000000 */ nop -/* 00804 809E0A44 4502000E */ bc1fl .L809E0A80 -/* 00808 809E0A48 460C1180 */ add.s $f6, $f2, $f12 -/* 0080C 809E0A4C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00810 809E0A50 00000000 */ nop -/* 00814 809E0A54 3C014500 */ lui $at, 0x4500 ## $at = 45000000 -/* 00818 809E0A58 44811000 */ mtc1 $at, $f2 ## $f2 = 2048.00 -/* 0081C 809E0A5C 3C01C500 */ lui $at, 0xC500 ## $at = C5000000 -/* 00820 809E0A60 44815000 */ mtc1 $at, $f10 ## $f10 = -2048.00 -/* 00824 809E0A64 46020402 */ mul.s $f16, $f0, $f2 -/* 00828 809E0A68 46105481 */ sub.s $f18, $f10, $f16 -/* 0082C 809E0A6C 4600910D */ trunc.w.s $f4, $f18 -/* 00830 809E0A70 440A2000 */ mfc1 $t2, $f4 -/* 00834 809E0A74 10000011 */ beq $zero, $zero, .L809E0ABC -/* 00838 809E0A78 A60A01C6 */ sh $t2, 0x01C6($s0) ## 000001C6 -/* 0083C 809E0A7C 460C1180 */ add.s $f6, $f2, $f12 -.L809E0A80: -/* 00840 809E0A80 4600303C */ c.lt.s $f6, $f0 -/* 00844 809E0A84 00000000 */ nop -/* 00848 809E0A88 4502000D */ bc1fl .L809E0AC0 -/* 0084C 809E0A8C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00850 809E0A90 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00854 809E0A94 00000000 */ nop -/* 00858 809E0A98 3C014500 */ lui $at, 0x4500 ## $at = 45000000 -/* 0085C 809E0A9C 44811000 */ mtc1 $at, $f2 ## $f2 = 2048.00 -/* 00860 809E0AA0 00000000 */ nop -/* 00864 809E0AA4 46020202 */ mul.s $f8, $f0, $f2 -/* 00868 809E0AA8 46024280 */ add.s $f10, $f8, $f2 -/* 0086C 809E0AAC 4600540D */ trunc.w.s $f16, $f10 -/* 00870 809E0AB0 440C8000 */ mfc1 $t4, $f16 -/* 00874 809E0AB4 00000000 */ nop -/* 00878 809E0AB8 A60C01C6 */ sh $t4, 0x01C6($s0) ## 000001C6 -.L809E0ABC: -/* 0087C 809E0ABC 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -.L809E0AC0: -/* 00880 809E0AC0 860501C6 */ lh $a1, 0x01C6($s0) ## 000001C6 -/* 00884 809E0AC4 240D0008 */ addiu $t5, $zero, 0x0008 ## $t5 = 00000008 -/* 00888 809E0AC8 AFAD0010 */ sw $t5, 0x0010($sp) -/* 0088C 809E0ACC AFA40028 */ sw $a0, 0x0028($sp) -/* 00890 809E0AD0 2406000A */ addiu $a2, $zero, 0x000A ## $a2 = 0000000A -/* 00894 809E0AD4 0C01E1A7 */ jal Math_SmoothScaleMaxMinS - -/* 00898 809E0AD8 24070100 */ addiu $a3, $zero, 0x0100 ## $a3 = 00000100 -/* 0089C 809E0ADC 1440003C */ bne $v0, $zero, .L809E0BD0 -/* 008A0 809E0AE0 8FAE0038 */ lw $t6, 0x0038($sp) -/* 008A4 809E0AE4 51C0003B */ beql $t6, $zero, .L809E0BD4 -/* 008A8 809E0AE8 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088 -/* 008AC 809E0AEC 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 008B0 809E0AF0 00000000 */ nop -/* 008B4 809E0AF4 3C01809E */ lui $at, %hi(D_809E1700) ## $at = 809E0000 -/* 008B8 809E0AF8 C4321700 */ lwc1 $f18, %lo(D_809E1700)($at) -/* 008BC 809E0AFC 4612003C */ c.lt.s $f0, $f18 -/* 008C0 809E0B00 00000000 */ nop -/* 008C4 809E0B04 45020033 */ bc1fl .L809E0BD4 -/* 008C8 809E0B08 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088 -/* 008CC 809E0B0C C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C -/* 008D0 809E0B10 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028 -/* 008D4 809E0B14 4606203C */ c.lt.s $f4, $f6 -/* 008D8 809E0B18 00000000 */ nop -/* 008DC 809E0B1C 45000010 */ bc1f .L809E0B60 -/* 008E0 809E0B20 00000000 */ nop -/* 008E4 809E0B24 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 008E8 809E0B28 00000000 */ nop -/* 008EC 809E0B2C 3C014480 */ lui $at, 0x4480 ## $at = 44800000 -/* 008F0 809E0B30 44811000 */ mtc1 $at, $f2 ## $f2 = 1024.00 -/* 008F4 809E0B34 860F01C6 */ lh $t7, 0x01C6($s0) ## 000001C6 -/* 008F8 809E0B38 46001402 */ mul.s $f16, $f2, $f0 -/* 008FC 809E0B3C 448F4000 */ mtc1 $t7, $f8 ## $f8 = 0.00 -/* 00900 809E0B40 00000000 */ nop -/* 00904 809E0B44 468042A0 */ cvt.s.w $f10, $f8 -/* 00908 809E0B48 46028480 */ add.s $f18, $f16, $f2 -/* 0090C 809E0B4C 46125101 */ sub.s $f4, $f10, $f18 -/* 00910 809E0B50 4600218D */ trunc.w.s $f6, $f4 -/* 00914 809E0B54 44193000 */ mfc1 $t9, $f6 -/* 00918 809E0B58 10000010 */ beq $zero, $zero, .L809E0B9C -/* 0091C 809E0B5C A61901C6 */ sh $t9, 0x01C6($s0) ## 000001C6 -.L809E0B60: -/* 00920 809E0B60 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00924 809E0B64 00000000 */ nop -/* 00928 809E0B68 3C014480 */ lui $at, 0x4480 ## $at = 44800000 -/* 0092C 809E0B6C 44811000 */ mtc1 $at, $f2 ## $f2 = 1024.00 -/* 00930 809E0B70 860801C6 */ lh $t0, 0x01C6($s0) ## 000001C6 -/* 00934 809E0B74 46001282 */ mul.s $f10, $f2, $f0 -/* 00938 809E0B78 44884000 */ mtc1 $t0, $f8 ## $f8 = 0.00 -/* 0093C 809E0B7C 00000000 */ nop -/* 00940 809E0B80 46804420 */ cvt.s.w $f16, $f8 -/* 00944 809E0B84 46025480 */ add.s $f18, $f10, $f2 -/* 00948 809E0B88 46128100 */ add.s $f4, $f16, $f18 -/* 0094C 809E0B8C 4600218D */ trunc.w.s $f6, $f4 -/* 00950 809E0B90 440A3000 */ mfc1 $t2, $f6 -/* 00954 809E0B94 00000000 */ nop -/* 00958 809E0B98 A60A01C6 */ sh $t2, 0x01C6($s0) ## 000001C6 -.L809E0B9C: -/* 0095C 809E0B9C 860201C6 */ lh $v0, 0x01C6($s0) ## 000001C6 -/* 00960 809E0BA0 240BF000 */ addiu $t3, $zero, 0xF000 ## $t3 = FFFFF000 -/* 00964 809E0BA4 2841F000 */ slti $at, $v0, 0xF000 -/* 00968 809E0BA8 50200004 */ beql $at, $zero, .L809E0BBC -/* 0096C 809E0BAC 28411001 */ slti $at, $v0, 0x1001 -/* 00970 809E0BB0 10000007 */ beq $zero, $zero, .L809E0BD0 -/* 00974 809E0BB4 A60B01C6 */ sh $t3, 0x01C6($s0) ## 000001C6 -/* 00978 809E0BB8 28411001 */ slti $at, $v0, 0x1001 -.L809E0BBC: -/* 0097C 809E0BBC 14200003 */ bne $at, $zero, .L809E0BCC -/* 00980 809E0BC0 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000 -/* 00984 809E0BC4 10000001 */ beq $zero, $zero, .L809E0BCC -/* 00988 809E0BC8 24031000 */ addiu $v1, $zero, 0x1000 ## $v1 = 00001000 -.L809E0BCC: -/* 0098C 809E0BCC A60301C6 */ sh $v1, 0x01C6($s0) ## 000001C6 -.L809E0BD0: -/* 00990 809E0BD0 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088 -.L809E0BD4: -/* 00994 809E0BD4 8FA40028 */ lw $a0, 0x0028($sp) -/* 00998 809E0BD8 2405FF00 */ addiu $a1, $zero, 0xFF00 ## $a1 = FFFFFF00 -/* 0099C 809E0BDC 318D0001 */ andi $t5, $t4, 0x0001 ## $t5 = 00000000 -/* 009A0 809E0BE0 51A00004 */ beql $t5, $zero, .L809E0BF4 -/* 009A4 809E0BE4 860201C4 */ lh $v0, 0x01C4($s0) ## 000001C4 -/* 009A8 809E0BE8 0C01DE2B */ jal Math_ApproxUpdateScaledS - -/* 009AC 809E0BEC 24060400 */ addiu $a2, $zero, 0x0400 ## $a2 = 00000400 -/* 009B0 809E0BF0 860201C4 */ lh $v0, 0x01C4($s0) ## 000001C4 -.L809E0BF4: -/* 009B4 809E0BF4 3C014396 */ lui $at, 0x4396 ## $at = 43960000 -/* 009B8 809E0BF8 10400003 */ beq $v0, $zero, .L809E0C08 -/* 009BC 809E0BFC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 009C0 809E0C00 A60E01C4 */ sh $t6, 0x01C4($s0) ## 000001C4 -/* 009C4 809E0C04 860201C4 */ lh $v0, 0x01C4($s0) ## 000001C4 -.L809E0C08: -/* 009C8 809E0C08 5440001C */ bnel $v0, $zero, .L809E0C7C -/* 009CC 809E0C0C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 009D0 809E0C10 C6080090 */ lwc1 $f8, 0x0090($s0) ## 00000090 -/* 009D4 809E0C14 44815000 */ mtc1 $at, $f10 ## $f10 = 300.00 -/* 009D8 809E0C18 8FAF003C */ lw $t7, 0x003C($sp) -/* 009DC 809E0C1C 460A403C */ c.lt.s $f8, $f10 -/* 009E0 809E0C20 00000000 */ nop -/* 009E4 809E0C24 45020015 */ bc1fl .L809E0C7C -/* 009E8 809E0C28 8FBF0024 */ lw $ra, 0x0024($sp) -/* 009EC 809E0C2C 8DF8067C */ lw $t8, 0x067C($t7) ## 0000067C -/* 009F0 809E0C30 3C01C220 */ lui $at, 0xC220 ## $at = C2200000 -/* 009F4 809E0C34 0018CA00 */ sll $t9, $t8, 8 -/* 009F8 809E0C38 07220010 */ bltzl $t9, .L809E0C7C -/* 009FC 809E0C3C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00A00 809E0C40 C6100084 */ lwc1 $f16, 0x0084($s0) ## 00000084 -/* 00A04 809E0C44 44819000 */ mtc1 $at, $f18 ## $f18 = -40.00 -/* 00A08 809E0C48 00000000 */ nop -/* 00A0C 809E0C4C 4612803C */ c.lt.s $f16, $f18 -/* 00A10 809E0C50 00000000 */ nop -/* 00A14 809E0C54 45020009 */ bc1fl .L809E0C7C -/* 00A18 809E0C58 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00A1C 809E0C5C 0C023C20 */ jal Player_GetMask -/* 00A20 809E0C60 8FA40044 */ lw $a0, 0x0044($sp) -/* 00A24 809E0C64 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00A28 809E0C68 50410004 */ beql $v0, $at, .L809E0C7C -/* 00A2C 809E0C6C 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00A30 809E0C70 0C2780E1 */ jal func_809E0384 -/* 00A34 809E0C74 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00A38 809E0C78 8FBF0024 */ lw $ra, 0x0024($sp) -.L809E0C7C: -/* 00A3C 809E0C7C 8FB00020 */ lw $s0, 0x0020($sp) -/* 00A40 809E0C80 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000 -/* 00A44 809E0C84 03E00008 */ jr $ra -/* 00A48 809E0C88 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0C8C.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0C8C.s deleted file mode 100644 index 6222507844..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0C8C.s +++ /dev/null @@ -1,119 +0,0 @@ -glabel func_809E0C8C -/* 00A4C 809E0C8C 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0 -/* 00A50 809E0C90 AFBF001C */ sw $ra, 0x001C($sp) -/* 00A54 809E0C94 AFB00018 */ sw $s0, 0x0018($sp) -/* 00A58 809E0C98 AFA50044 */ sw $a1, 0x0044($sp) -/* 00A5C 809E0C9C 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44 -/* 00A60 809E0CA0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00A64 809E0CA4 2484017C */ addiu $a0, $a0, 0x017C ## $a0 = 0000017C -/* 00A68 809E0CA8 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00A6C 809E0CAC AFAF003C */ sw $t7, 0x003C($sp) -/* 00A70 809E0CB0 860301C4 */ lh $v1, 0x01C4($s0) ## 000001C4 -/* 00A74 809E0CB4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00A78 809E0CB8 10600002 */ beq $v1, $zero, .L809E0CC4 -/* 00A7C 809E0CBC 2478FFFF */ addiu $t8, $v1, 0xFFFF ## $t8 = FFFFFFFF -/* 00A80 809E0CC0 A61801C4 */ sh $t8, 0x01C4($s0) ## 000001C4 -.L809E0CC4: -/* 00A84 809E0CC4 0C00B821 */ jal func_8002E084 -/* 00A88 809E0CC8 24052800 */ addiu $a1, $zero, 0x2800 ## $a1 = 00002800 -/* 00A8C 809E0CCC 10400019 */ beq $v0, $zero, .L809E0D34 -/* 00A90 809E0CD0 AFA20038 */ sw $v0, 0x0038($sp) -/* 00A94 809E0CD4 8FA2003C */ lw $v0, 0x003C($sp) -/* 00A98 809E0CD8 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00A9C 809E0CDC 44814000 */ mtc1 $at, $f8 ## $f8 = 20.00 -/* 00AA0 809E0CE0 C4440024 */ lwc1 $f4, 0x0024($v0) ## 00000024 -/* 00AA4 809E0CE4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00AA8 809E0CE8 27A5002C */ addiu $a1, $sp, 0x002C ## $a1 = FFFFFFEC -/* 00AAC 809E0CEC E7A4002C */ swc1 $f4, 0x002C($sp) -/* 00AB0 809E0CF0 C4460028 */ lwc1 $f6, 0x0028($v0) ## 00000028 -/* 00AB4 809E0CF4 46083280 */ add.s $f10, $f6, $f8 -/* 00AB8 809E0CF8 E7AA0030 */ swc1 $f10, 0x0030($sp) -/* 00ABC 809E0CFC C450002C */ lwc1 $f16, 0x002C($v0) ## 0000002C -/* 00AC0 809E0D00 0C00B6CA */ jal func_8002DB28 -/* 00AC4 809E0D04 E7B00034 */ swc1 $f16, 0x0034($sp) -/* 00AC8 809E0D08 00022C00 */ sll $a1, $v0, 16 -/* 00ACC 809E0D0C 28413001 */ slti $at, $v0, 0x3001 -/* 00AD0 809E0D10 14200002 */ bne $at, $zero, .L809E0D1C -/* 00AD4 809E0D14 00052C03 */ sra $a1, $a1, 16 -/* 00AD8 809E0D18 24053000 */ addiu $a1, $zero, 0x3000 ## $a1 = 00003000 -.L809E0D1C: -/* 00ADC 809E0D1C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00AE0 809E0D20 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002 -/* 00AE4 809E0D24 0C01E1EF */ jal Math_SmoothScaleMaxS - -/* 00AE8 809E0D28 24070400 */ addiu $a3, $zero, 0x0400 ## $a3 = 00000400 -/* 00AEC 809E0D2C 10000007 */ beq $zero, $zero, .L809E0D4C -/* 00AF0 809E0D30 8FB90038 */ lw $t9, 0x0038($sp) -.L809E0D34: -/* 00AF4 809E0D34 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00AF8 809E0D38 2405F000 */ addiu $a1, $zero, 0xF000 ## $a1 = FFFFF000 -/* 00AFC 809E0D3C 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002 -/* 00B00 809E0D40 0C01E1EF */ jal Math_SmoothScaleMaxS - -/* 00B04 809E0D44 24070100 */ addiu $a3, $zero, 0x0100 ## $a3 = 00000100 -/* 00B08 809E0D48 8FB90038 */ lw $t9, 0x0038($sp) -.L809E0D4C: -/* 00B0C 809E0D4C 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000 -/* 00B10 809E0D50 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6 -/* 00B14 809E0D54 17200007 */ bne $t9, $zero, .L809E0D74 -/* 00B18 809E0D58 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004 -/* 00B1C 809E0D5C 44819000 */ mtc1 $at, $f18 ## $f18 = 80.00 -/* 00B20 809E0D60 C6040090 */ lwc1 $f4, 0x0090($s0) ## 00000090 -/* 00B24 809E0D64 4604903C */ c.lt.s $f18, $f4 -/* 00B28 809E0D68 00000000 */ nop -/* 00B2C 809E0D6C 45020005 */ bc1fl .L809E0D84 -/* 00B30 809E0D70 860801C4 */ lh $t0, 0x01C4($s0) ## 000001C4 -.L809E0D74: -/* 00B34 809E0D74 8605008A */ lh $a1, 0x008A($s0) ## 0000008A -/* 00B38 809E0D78 0C01E1EF */ jal Math_SmoothScaleMaxS - -/* 00B3C 809E0D7C 24070C00 */ addiu $a3, $zero, 0x0C00 ## $a3 = 00000C00 -/* 00B40 809E0D80 860801C4 */ lh $t0, 0x01C4($s0) ## 000001C4 -.L809E0D84: -/* 00B44 809E0D84 5100001B */ beql $t0, $zero, .L809E0DF4 -/* 00B48 809E0D88 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -/* 00B4C 809E0D8C 0C023C20 */ jal Player_GetMask -/* 00B50 809E0D90 8FA40044 */ lw $a0, 0x0044($sp) -/* 00B54 809E0D94 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00B58 809E0D98 50410016 */ beql $v0, $at, .L809E0DF4 -/* 00B5C 809E0D9C 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -/* 00B60 809E0DA0 92090248 */ lbu $t1, 0x0248($s0) ## 00000248 -/* 00B64 809E0DA4 312A0002 */ andi $t2, $t1, 0x0002 ## $t2 = 00000000 -/* 00B68 809E0DA8 55400012 */ bnel $t2, $zero, .L809E0DF4 -/* 00B6C 809E0DAC 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -/* 00B70 809E0DB0 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -/* 00B74 809E0DB4 8FAD003C */ lw $t5, 0x003C($sp) -/* 00B78 809E0DB8 316C0009 */ andi $t4, $t3, 0x0009 ## $t4 = 00000000 -/* 00B7C 809E0DBC 5580000D */ bnel $t4, $zero, .L809E0DF4 -/* 00B80 809E0DC0 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -/* 00B84 809E0DC4 8DAE067C */ lw $t6, 0x067C($t5) ## 0000067C -/* 00B88 809E0DC8 3C01C220 */ lui $at, 0xC220 ## $at = C2200000 -/* 00B8C 809E0DCC 000E7A00 */ sll $t7, $t6, 8 -/* 00B90 809E0DD0 05E20008 */ bltzl $t7, .L809E0DF4 -/* 00B94 809E0DD4 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -/* 00B98 809E0DD8 44813000 */ mtc1 $at, $f6 ## $f6 = -40.00 -/* 00B9C 809E0DDC C6080084 */ lwc1 $f8, 0x0084($s0) ## 00000084 -/* 00BA0 809E0DE0 4608303C */ c.lt.s $f6, $f8 -/* 00BA4 809E0DE4 00000000 */ nop -/* 00BA8 809E0DE8 4502000C */ bc1fl .L809E0E1C -/* 00BAC 809E0DEC 8FBF001C */ lw $ra, 0x001C($sp) -/* 00BB0 809E0DF0 92020248 */ lbu $v0, 0x0248($s0) ## 00000248 -.L809E0DF4: -/* 00BB4 809E0DF4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00BB8 809E0DF8 240538B7 */ addiu $a1, $zero, 0x38B7 ## $a1 = 000038B7 -/* 00BBC 809E0DFC 30580002 */ andi $t8, $v0, 0x0002 ## $t8 = 00000000 -/* 00BC0 809E0E00 13000003 */ beq $t8, $zero, .L809E0E10 -/* 00BC4 809E0E04 3059FFFD */ andi $t9, $v0, 0xFFFD ## $t9 = 00000000 -/* 00BC8 809E0E08 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00BCC 809E0E0C A2190248 */ sb $t9, 0x0248($s0) ## 00000248 -.L809E0E10: -/* 00BD0 809E0E10 0C2780D5 */ jal func_809E0354 -/* 00BD4 809E0E14 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00BD8 809E0E18 8FBF001C */ lw $ra, 0x001C($sp) -.L809E0E1C: -/* 00BDC 809E0E1C 8FB00018 */ lw $s0, 0x0018($sp) -/* 00BE0 809E0E20 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000 -/* 00BE4 809E0E24 03E00008 */ jr $ra -/* 00BE8 809E0E28 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0E2C.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0E2C.s deleted file mode 100644 index fb178ea696..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0E2C.s +++ /dev/null @@ -1,86 +0,0 @@ -.late_rodata -glabel D_809E1704 - .float 10000.0 - -.text -glabel func_809E0E2C -/* 00BEC 809E0E2C 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0 -/* 00BF0 809E0E30 AFB00048 */ sw $s0, 0x0048($sp) -/* 00BF4 809E0E34 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00BF8 809E0E38 AFBF004C */ sw $ra, 0x004C($sp) -/* 00BFC 809E0E3C AFA50054 */ sw $a1, 0x0054($sp) -/* 00C00 809E0E40 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 00C04 809E0E44 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 00C08 809E0E48 0C01DE80 */ jal Math_ApproxF - -/* 00C0C 809E0E4C 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000 -/* 00C10 809E0E50 8E0F0004 */ lw $t7, 0x0004($s0) ## 00000004 -/* 00C14 809E0E54 240E0028 */ addiu $t6, $zero, 0x0028 ## $t6 = 00000028 -/* 00C18 809E0E58 A20E0114 */ sb $t6, 0x0114($s0) ## 00000114 -/* 00C1C 809E0E5C 31F88000 */ andi $t8, $t7, 0x8000 ## $t8 = 00000000 -/* 00C20 809E0E60 57000038 */ bnel $t8, $zero, .L809E0F44 -/* 00C24 809E0E64 8FBF004C */ lw $ra, 0x004C($sp) -/* 00C28 809E0E68 96190112 */ lhu $t9, 0x0112($s0) ## 00000112 -/* 00C2C 809E0E6C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00C30 809E0E70 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000 -/* 00C34 809E0E74 33284000 */ andi $t0, $t9, 0x4000 ## $t0 = 00000000 -/* 00C38 809E0E78 51000007 */ beql $t0, $zero, .L809E0E98 -/* 00C3C 809E0E7C 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -/* 00C40 809E0E80 0C01DE2B */ jal Math_ApproxUpdateScaledS - -/* 00C44 809E0E84 24060200 */ addiu $a2, $zero, 0x0200 ## $a2 = 00000200 -/* 00C48 809E0E88 860900B8 */ lh $t1, 0x00B8($s0) ## 000000B8 -/* 00C4C 809E0E8C 252A1780 */ addiu $t2, $t1, 0x1780 ## $t2 = 00001780 -/* 00C50 809E0E90 A60A00B8 */ sh $t2, 0x00B8($s0) ## 000000B8 -/* 00C54 809E0E94 960B0088 */ lhu $t3, 0x0088($s0) ## 00000088 -.L809E0E98: -/* 00C58 809E0E98 3C06809E */ lui $a2, %hi(D_809E1640) ## $a2 = 809E0000 -/* 00C5C 809E0E9C 24C61640 */ addiu $a2, $a2, %lo(D_809E1640) ## $a2 = 809E1640 -/* 00C60 809E0EA0 316C0001 */ andi $t4, $t3, 0x0001 ## $t4 = 00000000 -/* 00C64 809E0EA4 15800006 */ bne $t4, $zero, .L809E0EC0 -/* 00C68 809E0EA8 3C01C6FA */ lui $at, 0xC6FA ## $at = C6FA0000 -/* 00C6C 809E0EAC 44812000 */ mtc1 $at, $f4 ## $f4 = -32000.00 -/* 00C70 809E0EB0 C6060080 */ lwc1 $f6, 0x0080($s0) ## 00000080 -/* 00C74 809E0EB4 46062032 */ c.eq.s $f4, $f6 -/* 00C78 809E0EB8 00000000 */ nop -/* 00C7C 809E0EBC 45000020 */ bc1f .L809E0F40 -.L809E0EC0: -/* 00C80 809E0EC0 3C01809E */ lui $at, %hi(D_809E1704) ## $at = 809E0000 -/* 00C84 809E0EC4 C42A1704 */ lwc1 $f10, %lo(D_809E1704)($at) -/* 00C88 809E0EC8 C6080050 */ lwc1 $f8, 0x0050($s0) ## 00000050 -/* 00C8C 809E0ECC 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF -/* 00C90 809E0ED0 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF -/* 00C94 809E0ED4 460A4402 */ mul.s $f16, $f8, $f10 -/* 00C98 809E0ED8 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF -/* 00C9C 809E0EDC 240800FF */ addiu $t0, $zero, 0x00FF ## $t0 = 000000FF -/* 00CA0 809E0EE0 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF -/* 00CA4 809E0EE4 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 00CA8 809E0EE8 240B0009 */ addiu $t3, $zero, 0x0009 ## $t3 = 00000009 -/* 00CAC 809E0EEC 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 00CB0 809E0EF0 4600848D */ trunc.w.s $f18, $f16 -/* 00CB4 809E0EF4 AFAC003C */ sw $t4, 0x003C($sp) -/* 00CB8 809E0EF8 AFAB0038 */ sw $t3, 0x0038($sp) -/* 00CBC 809E0EFC AFAA0034 */ sw $t2, 0x0034($sp) -/* 00CC0 809E0F00 440E9000 */ mfc1 $t6, $f18 -/* 00CC4 809E0F04 AFA90028 */ sw $t1, 0x0028($sp) -/* 00CC8 809E0F08 AFA80024 */ sw $t0, 0x0024($sp) -/* 00CCC 809E0F0C AFB90020 */ sw $t9, 0x0020($sp) -/* 00CD0 809E0F10 AFB8001C */ sw $t8, 0x001C($sp) -/* 00CD4 809E0F14 AFAF0018 */ sw $t7, 0x0018($sp) -/* 00CD8 809E0F18 AFA00030 */ sw $zero, 0x0030($sp) -/* 00CDC 809E0F1C AFA0002C */ sw $zero, 0x002C($sp) -/* 00CE0 809E0F20 AFA00014 */ sw $zero, 0x0014($sp) -/* 00CE4 809E0F24 8FA40054 */ lw $a0, 0x0054($sp) -/* 00CE8 809E0F28 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 00CEC 809E0F2C 00C03825 */ or $a3, $a2, $zero ## $a3 = 809E1640 -/* 00CF0 809E0F30 0C00A9AE */ jal EffectSsDeadDb_Spawn -/* 00CF4 809E0F34 AFAE0010 */ sw $t6, 0x0010($sp) -/* 00CF8 809E0F38 0C2781B5 */ jal func_809E06D4 -/* 00CFC 809E0F3C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L809E0F40: -/* 00D00 809E0F40 8FBF004C */ lw $ra, 0x004C($sp) -.L809E0F44: -/* 00D04 809E0F44 8FB00048 */ lw $s0, 0x0048($sp) -/* 00D08 809E0F48 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000 -/* 00D0C 809E0F4C 03E00008 */ jr $ra -/* 00D10 809E0F50 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0F54.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0F54.s deleted file mode 100644 index d6354962f4..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0F54.s +++ /dev/null @@ -1,60 +0,0 @@ -.late_rodata -glabel D_809E1708 - .word 0x3BC49BA6 -glabel D_809E170C - .float 0.002 - -.text -glabel func_809E0F54 -/* 00D14 809E0F54 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00D18 809E0F58 AFBF001C */ sw $ra, 0x001C($sp) -/* 00D1C 809E0F5C AFB00018 */ sw $s0, 0x0018($sp) -/* 00D20 809E0F60 AFA50024 */ sw $a1, 0x0024($sp) -/* 00D24 809E0F64 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 00D28 809E0F68 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00D2C 809E0F6C 3C01809E */ lui $at, %hi(D_809E170C) ## $at = 809E0000 -/* 00D30 809E0F70 11C00004 */ beq $t6, $zero, .L809E0F84 -/* 00D34 809E0F74 26040050 */ addiu $a0, $s0, 0x0050 ## $a0 = 00000050 -/* 00D38 809E0F78 3C01809E */ lui $at, %hi(D_809E1708) ## $at = 809E0000 -/* 00D3C 809E0F7C 10000002 */ beq $zero, $zero, .L809E0F88 -/* 00D40 809E0F80 C4201708 */ lwc1 $f0, %lo(D_809E1708)($at) -.L809E0F84: -/* 00D44 809E0F84 C420170C */ lwc1 $f0, %lo(D_809E170C)($at) -.L809E0F88: -/* 00D48 809E0F88 44060000 */ mfc1 $a2, $f0 -/* 00D4C 809E0F8C 0C01DE80 */ jal Math_ApproxF - -/* 00D50 809E0F90 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 00D54 809E0F94 10400013 */ beq $v0, $zero, .L809E0FE4 -/* 00D58 809E0F98 8FA40024 */ lw $a0, 0x0024($sp) -/* 00D5C 809E0F9C 860F001C */ lh $t7, 0x001C($s0) ## 0000001C -/* 00D60 809E0FA0 3C02809E */ lui $v0, %hi(D_809E16C8) ## $v0 = 809E0000 -/* 00D64 809E0FA4 244216C8 */ addiu $v0, $v0, %lo(D_809E16C8) ## $v0 = 809E16C8 -/* 00D68 809E0FA8 15E0000A */ bne $t7, $zero, .L809E0FD4 -/* 00D6C 809E0FAC 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024 -/* 00D70 809E0FB0 8C580000 */ lw $t8, 0x0000($v0) ## 809E16C8 -/* 00D74 809E0FB4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00D78 809E0FB8 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024 -/* 00D7C 809E0FBC 27190001 */ addiu $t9, $t8, 0x0001 ## $t9 = 00000001 -/* 00D80 809E0FC0 AC590000 */ sw $t9, 0x0000($v0) ## 809E16C8 -/* 00D84 809E0FC4 0C007E50 */ jal Item_DropCollectibleRandom - -/* 00D88 809E0FC8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00D8C 809E0FCC 10000003 */ beq $zero, $zero, .L809E0FDC -/* 00D90 809E0FD0 00000000 */ nop -.L809E0FD4: -/* 00D94 809E0FD4 0C007D52 */ jal Item_DropCollectible - -/* 00D98 809E0FD8 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002 -.L809E0FDC: -/* 00D9C 809E0FDC 0C2781DC */ jal func_809E0770 -/* 00DA0 809E0FE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L809E0FE4: -/* 00DA4 809E0FE4 C6000050 */ lwc1 $f0, 0x0050($s0) ## 00000050 -/* 00DA8 809E0FE8 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054 -/* 00DAC 809E0FEC E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058 -/* 00DB0 809E0FF0 8FBF001C */ lw $ra, 0x001C($sp) -/* 00DB4 809E0FF4 8FB00018 */ lw $s0, 0x0018($sp) -/* 00DB8 809E0FF8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00DBC 809E0FFC 03E00008 */ jr $ra -/* 00DC0 809E1000 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1004.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1004.s deleted file mode 100644 index 6de1504b62..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1004.s +++ /dev/null @@ -1,49 +0,0 @@ -glabel func_809E1004 -/* 00DC4 809E1004 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00DC8 809E1008 AFB00018 */ sw $s0, 0x0018($sp) -/* 00DCC 809E100C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00DD0 809E1010 AFBF001C */ sw $ra, 0x001C($sp) -/* 00DD4 809E1014 AFA50024 */ sw $a1, 0x0024($sp) -/* 00DD8 809E1018 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00DDC 809E101C 2484017C */ addiu $a0, $a0, 0x017C ## $a0 = 0000017C -/* 00DE0 809E1020 960E0088 */ lhu $t6, 0x0088($s0) ## 00000088 -/* 00DE4 809E1024 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6 -/* 00DE8 809E1028 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003 -/* 00DEC 809E102C 31CF0008 */ andi $t7, $t6, 0x0008 ## $t7 = 00000000 -/* 00DF0 809E1030 11E00004 */ beq $t7, $zero, .L809E1044 -/* 00DF4 809E1034 24070C00 */ addiu $a3, $zero, 0x0C00 ## $a3 = 00000C00 -/* 00DF8 809E1038 8618007E */ lh $t8, 0x007E($s0) ## 0000007E -/* 00DFC 809E103C 10000005 */ beq $zero, $zero, .L809E1054 -/* 00E00 809E1040 A61801C8 */ sh $t8, 0x01C8($s0) ## 000001C8 -.L809E1044: -/* 00E04 809E1044 8619008A */ lh $t9, 0x008A($s0) ## 0000008A -/* 00E08 809E1048 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000 -/* 00E0C 809E104C 03214021 */ addu $t0, $t9, $at -/* 00E10 809E1050 A60801C8 */ sh $t0, 0x01C8($s0) ## 000001C8 -.L809E1054: -/* 00E14 809E1054 0C01E1EF */ jal Math_SmoothScaleMaxS - -/* 00E18 809E1058 860501C8 */ lh $a1, 0x01C8($s0) ## 000001C8 -/* 00E1C 809E105C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 -/* 00E20 809E1060 860501C6 */ lh $a1, 0x01C6($s0) ## 000001C6 -/* 00E24 809E1064 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005 -/* 00E28 809E1068 0C01E1EF */ jal Math_SmoothScaleMaxS - -/* 00E2C 809E106C 24070100 */ addiu $a3, $zero, 0x0100 ## $a3 = 00000100 -/* 00E30 809E1070 860201C4 */ lh $v0, 0x01C4($s0) ## 000001C4 -/* 00E34 809E1074 10400003 */ beq $v0, $zero, .L809E1084 -/* 00E38 809E1078 2449FFFF */ addiu $t1, $v0, 0xFFFF ## $t1 = FFFFFFFF -/* 00E3C 809E107C A60901C4 */ sh $t1, 0x01C4($s0) ## 000001C4 -/* 00E40 809E1080 860201C4 */ lh $v0, 0x01C4($s0) ## 000001C4 -.L809E1084: -/* 00E44 809E1084 54400004 */ bnel $v0, $zero, .L809E1098 -/* 00E48 809E1088 8FBF001C */ lw $ra, 0x001C($sp) -/* 00E4C 809E108C 0C2780D5 */ jal func_809E0354 -/* 00E50 809E1090 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00E54 809E1094 8FBF001C */ lw $ra, 0x001C($sp) -.L809E1098: -/* 00E58 809E1098 8FB00018 */ lw $s0, 0x0018($sp) -/* 00E5C 809E109C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00E60 809E10A0 03E00008 */ jr $ra -/* 00E64 809E10A4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E10A8.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E10A8.s deleted file mode 100644 index e3aa05a8ed..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E10A8.s +++ /dev/null @@ -1,70 +0,0 @@ -.late_rodata -glabel D_809E1710 - .float 0.03 - -glabel D_809E1714 - .float 0.01 - -glabel D_809E1718 - .float 0.1 - -.text -glabel func_809E10A8 -/* 00E68 809E10A8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00E6C 809E10AC AFBF001C */ sw $ra, 0x001C($sp) -/* 00E70 809E10B0 AFB00018 */ sw $s0, 0x0018($sp) -/* 00E74 809E10B4 AFA50024 */ sw $a1, 0x0024($sp) -/* 00E78 809E10B8 848201C4 */ lh $v0, 0x01C4($a0) ## 000001C4 -/* 00E7C 809E10BC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00E80 809E10C0 10400003 */ beq $v0, $zero, .L809E10D0 -/* 00E84 809E10C4 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF -/* 00E88 809E10C8 A48E01C4 */ sh $t6, 0x01C4($a0) ## 000001C4 -/* 00E8C 809E10CC 848201C4 */ lh $v0, 0x01C4($a0) ## 000001C4 -.L809E10D0: -/* 00E90 809E10D0 54400024 */ bnel $v0, $zero, .L809E1164 -/* 00E94 809E10D4 8FBF001C */ lw $ra, 0x001C($sp) -/* 00E98 809E10D8 0C02927F */ jal SkelAnime_FrameUpdateMatrix - -/* 00E9C 809E10DC 2604017C */ addiu $a0, $s0, 0x017C ## $a0 = 0000017C -/* 00EA0 809E10E0 8618001C */ lh $t8, 0x001C($s0) ## 0000001C -/* 00EA4 809E10E4 3C0F809E */ lui $t7, %hi(EnCrow_Draw) ## $t7 = 809E0000 -/* 00EA8 809E10E8 25EF15E0 */ addiu $t7, $t7, %lo(EnCrow_Draw) ## $t7 = 809E15E0 -/* 00EAC 809E10EC 13000004 */ beq $t8, $zero, .L809E1100 -/* 00EB0 809E10F0 AE0F0134 */ sw $t7, 0x0134($s0) ## 00000134 -/* 00EB4 809E10F4 3C01809E */ lui $at, %hi(D_809E1710) ## $at = 809E0000 -/* 00EB8 809E10F8 10000003 */ beq $zero, $zero, .L809E1108 -/* 00EBC 809E10FC C4201710 */ lwc1 $f0, %lo(D_809E1710)($at) -.L809E1100: -/* 00EC0 809E1100 3C01809E */ lui $at, %hi(D_809E1714) ## $at = 809E0000 -/* 00EC4 809E1104 C4201714 */ lwc1 $f0, %lo(D_809E1714)($at) -.L809E1108: -/* 00EC8 809E1108 3C01809E */ lui $at, %hi(D_809E1718) ## $at = 809E0000 -/* 00ECC 809E110C C4241718 */ lwc1 $f4, %lo(D_809E1718)($at) -/* 00ED0 809E1110 44050000 */ mfc1 $a1, $f0 -/* 00ED4 809E1114 26040050 */ addiu $a0, $s0, 0x0050 ## $a0 = 00000050 -/* 00ED8 809E1118 46040182 */ mul.s $f6, $f0, $f4 -/* 00EDC 809E111C 44063000 */ mfc1 $a2, $f6 -/* 00EE0 809E1120 0C01DE80 */ jal Math_ApproxF - -/* 00EE4 809E1124 00000000 */ nop -/* 00EE8 809E1128 1040000A */ beq $v0, $zero, .L809E1154 -/* 00EEC 809E112C 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00EF0 809E1130 8E190004 */ lw $t9, 0x0004($s0) ## 00000004 -/* 00EF4 809E1134 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 00EF8 809E1138 A20B00AF */ sb $t3, 0x00AF($s0) ## 000000AF -/* 00EFC 809E113C 37280001 */ ori $t0, $t9, 0x0001 ## $t0 = 00000001 -/* 00F00 809E1140 AE080004 */ sw $t0, 0x0004($s0) ## 00000004 -/* 00F04 809E1144 01015024 */ and $t2, $t0, $at -/* 00F08 809E1148 AE0A0004 */ sw $t2, 0x0004($s0) ## 00000004 -/* 00F0C 809E114C 0C2780D5 */ jal func_809E0354 -/* 00F10 809E1150 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L809E1154: -/* 00F14 809E1154 C6000050 */ lwc1 $f0, 0x0050($s0) ## 00000050 -/* 00F18 809E1158 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054 -/* 00F1C 809E115C E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058 -/* 00F20 809E1160 8FBF001C */ lw $ra, 0x001C($sp) -.L809E1164: -/* 00F24 809E1164 8FB00018 */ lw $s0, 0x0018($sp) -/* 00F28 809E1168 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00F2C 809E116C 03E00008 */ jr $ra -/* 00F30 809E1170 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1174.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1174.s deleted file mode 100644 index 8f07b717b3..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1174.s +++ /dev/null @@ -1,49 +0,0 @@ -glabel func_809E1174 -/* 00F34 809E1174 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00F38 809E1178 AFBF001C */ sw $ra, 0x001C($sp) -/* 00F3C 809E117C AFB00018 */ sw $s0, 0x0018($sp) -/* 00F40 809E1180 AFA50024 */ sw $a1, 0x0024($sp) -/* 00F44 809E1184 90820249 */ lbu $v0, 0x0249($a0) ## 00000249 -/* 00F48 809E1188 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00F4C 809E118C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001 -/* 00F50 809E1190 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000 -/* 00F54 809E1194 11C0001D */ beq $t6, $zero, .L809E120C -/* 00F58 809E1198 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000 -/* 00F5C 809E119C A08F0249 */ sb $t7, 0x0249($a0) ## 00000249 -/* 00F60 809E11A0 0C00D594 */ jal func_80035650 -/* 00F64 809E11A4 8E050254 */ lw $a1, 0x0254($s0) ## 00000254 -/* 00F68 809E11A8 920200B1 */ lbu $v0, 0x00B1($s0) ## 000000B1 -/* 00F6C 809E11AC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00F70 809E11B0 14400004 */ bne $v0, $zero, .L809E11C4 -/* 00F74 809E11B4 00000000 */ nop -/* 00F78 809E11B8 921800B0 */ lbu $t8, 0x00B0($s0) ## 000000B0 -/* 00F7C 809E11BC 53000014 */ beql $t8, $zero, .L809E1210 -/* 00F80 809E11C0 8FBF001C */ lw $ra, 0x001C($sp) -.L809E11C4: -/* 00F84 809E11C4 14410005 */ bne $v0, $at, .L809E11DC -/* 00F88 809E11C8 00000000 */ nop -/* 00F8C 809E11CC 0C2781BA */ jal func_809E06E8 -/* 00F90 809E11D0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00F94 809E11D4 1000000E */ beq $zero, $zero, .L809E1210 -/* 00F98 809E11D8 8FBF001C */ lw $ra, 0x001C($sp) -.L809E11DC: -/* 00F9C 809E11DC 0C00D58A */ jal Actor_ApplyDamage - -/* 00FA0 809E11E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00FA4 809E11E4 8E190004 */ lw $t9, 0x0004($s0) ## 00000004 -/* 00FA8 809E11E8 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE -/* 00FAC 809E11EC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00FB0 809E11F0 03214024 */ and $t0, $t9, $at -/* 00FB4 809E11F4 AE080004 */ sw $t0, 0x0004($s0) ## 00000004 -/* 00FB8 809E11F8 0C00CB1F */ jal func_80032C7C -/* 00FBC 809E11FC 8FA40024 */ lw $a0, 0x0024($sp) -/* 00FC0 809E1200 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00FC4 809E1204 0C2780ED */ jal func_809E03B4 -/* 00FC8 809E1208 8FA50024 */ lw $a1, 0x0024($sp) -.L809E120C: -/* 00FCC 809E120C 8FBF001C */ lw $ra, 0x001C($sp) -.L809E1210: -/* 00FD0 809E1210 8FB00018 */ lw $s0, 0x0018($sp) -/* 00FD4 809E1214 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00FD8 809E1218 03E00008 */ jr $ra -/* 00FDC 809E121C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1434.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1434.s deleted file mode 100644 index c4f32c5c17..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1434.s +++ /dev/null @@ -1,72 +0,0 @@ -.late_rodata -glabel D_809E171C - .word 0x3F490FDB -glabel D_809E1720 - .word 0x3F490FDB, 0x00000000, 0x00000000, 0x00000000 - -.text -glabel func_809E1434 -/* 011F4 809E1434 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 011F8 809E1438 AFA40018 */ sw $a0, 0x0018($sp) -/* 011FC 809E143C 8FA4002C */ lw $a0, 0x002C($sp) -/* 01200 809E1440 AFBF0014 */ sw $ra, 0x0014($sp) -/* 01204 809E1444 AFA60020 */ sw $a2, 0x0020($sp) -/* 01208 809E1448 AFA70024 */ sw $a3, 0x0024($sp) -/* 0120C 809E144C 908E00AF */ lbu $t6, 0x00AF($a0) ## 000000AF -/* 01210 809E1450 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007 -/* 01214 809E1454 51C0002E */ beql $t6, $zero, .L809E1510 -/* 01218 809E1458 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0121C 809E145C 14A10013 */ bne $a1, $at, .L809E14AC -/* 01220 809E1460 3C01809E */ lui $at, %hi(D_809E171C) ## $at = 809E0000 -/* 01224 809E1464 C426171C */ lwc1 $f6, %lo(D_809E171C)($at) -/* 01228 809E1468 C4840194 */ lwc1 $f4, 0x0194($a0) ## 00000194 -/* 0122C 809E146C 46062302 */ mul.s $f12, $f4, $f6 -/* 01230 809E1470 0C0400A4 */ jal sinf - -/* 01234 809E1474 00000000 */ nop -/* 01238 809E1478 8FA20028 */ lw $v0, 0x0028($sp) -/* 0123C 809E147C 3C014540 */ lui $at, 0x4540 ## $at = 45400000 -/* 01240 809E1480 44818000 */ mtc1 $at, $f16 ## $f16 = 3072.00 -/* 01244 809E1484 844F0002 */ lh $t7, 0x0002($v0) ## 00000002 -/* 01248 809E1488 46008482 */ mul.s $f18, $f16, $f0 -/* 0124C 809E148C 448F4000 */ mtc1 $t7, $f8 ## $f8 = 0.00 -/* 01250 809E1490 00000000 */ nop -/* 01254 809E1494 468042A0 */ cvt.s.w $f10, $f8 -/* 01258 809E1498 46125100 */ add.s $f4, $f10, $f18 -/* 0125C 809E149C 4600218D */ trunc.w.s $f6, $f4 -/* 01260 809E14A0 44193000 */ mfc1 $t9, $f6 -/* 01264 809E14A4 10000019 */ beq $zero, $zero, .L809E150C -/* 01268 809E14A8 A4590002 */ sh $t9, 0x0002($v0) ## 00000002 -.L809E14AC: -/* 0126C 809E14AC 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008 -/* 01270 809E14B0 14A10016 */ bne $a1, $at, .L809E150C -/* 01274 809E14B4 3C014020 */ lui $at, 0x4020 ## $at = 40200000 -/* 01278 809E14B8 44818000 */ mtc1 $at, $f16 ## $f16 = 2.50 -/* 0127C 809E14BC C4880194 */ lwc1 $f8, 0x0194($a0) ## 00000194 -/* 01280 809E14C0 3C01809E */ lui $at, %hi(D_809E1720) ## $at = 809E0000 -/* 01284 809E14C4 C4321720 */ lwc1 $f18, %lo(D_809E1720)($at) -/* 01288 809E14C8 46104280 */ add.s $f10, $f8, $f16 -/* 0128C 809E14CC 46125302 */ mul.s $f12, $f10, $f18 -/* 01290 809E14D0 0C0400A4 */ jal sinf - -/* 01294 809E14D4 00000000 */ nop -/* 01298 809E14D8 8FA20028 */ lw $v0, 0x0028($sp) -/* 0129C 809E14DC 3C0145A0 */ lui $at, 0x45A0 ## $at = 45A00000 -/* 012A0 809E14E0 44814000 */ mtc1 $at, $f8 ## $f8 = 5120.00 -/* 012A4 809E14E4 84480002 */ lh $t0, 0x0002($v0) ## 00000002 -/* 012A8 809E14E8 46004402 */ mul.s $f16, $f8, $f0 -/* 012AC 809E14EC 44882000 */ mtc1 $t0, $f4 ## $f4 = 0.00 -/* 012B0 809E14F0 00000000 */ nop -/* 012B4 809E14F4 468021A0 */ cvt.s.w $f6, $f4 -/* 012B8 809E14F8 46103280 */ add.s $f10, $f6, $f16 -/* 012BC 809E14FC 4600548D */ trunc.w.s $f18, $f10 -/* 012C0 809E1500 440A9000 */ mfc1 $t2, $f18 -/* 012C4 809E1504 00000000 */ nop -/* 012C8 809E1508 A44A0002 */ sh $t2, 0x0002($v0) ## 00000002 -.L809E150C: -/* 012CC 809E150C 8FBF0014 */ lw $ra, 0x0014($sp) -.L809E1510: -/* 012D0 809E1510 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 012D4 809E1514 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 012D8 809E1518 03E00008 */ jr $ra -/* 012DC 809E151C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1520.s b/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1520.s deleted file mode 100644 index 51f8657deb..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1520.s +++ /dev/null @@ -1,52 +0,0 @@ -glabel func_809E1520 -/* 012E0 809E1520 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 012E4 809E1524 AFA60030 */ sw $a2, 0x0030($sp) -/* 012E8 809E1528 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 012EC 809E152C 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000 -/* 012F0 809E1530 AFBF0014 */ sw $ra, 0x0014($sp) -/* 012F4 809E1534 AFA40028 */ sw $a0, 0x0028($sp) -/* 012F8 809E1538 AFA5002C */ sw $a1, 0x002C($sp) -/* 012FC 809E153C 14A1000D */ bne $a1, $at, .L809E1574 -/* 01300 809E1540 AFA70034 */ sw $a3, 0x0034($sp) -/* 01304 809E1544 8FA50038 */ lw $a1, 0x0038($sp) -/* 01308 809E1548 3C04809E */ lui $a0, %hi(D_809E16DC) ## $a0 = 809E0000 -/* 0130C 809E154C 248416DC */ addiu $a0, $a0, %lo(D_809E16DC) ## $a0 = 809E16DC -/* 01310 809E1550 0C0346BD */ jal Matrix_MultVec3f -/* 01314 809E1554 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C -/* 01318 809E1558 8FA20038 */ lw $v0, 0x0038($sp) -/* 0131C 809E155C 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 01320 809E1560 44813000 */ mtc1 $at, $f6 ## $f6 = 20.00 -/* 01324 809E1564 C4440150 */ lwc1 $f4, 0x0150($v0) ## 00000150 -/* 01328 809E1568 46062201 */ sub.s $f8, $f4, $f6 -/* 0132C 809E156C 10000018 */ beq $zero, $zero, .L809E15D0 -/* 01330 809E1570 E4480150 */ swc1 $f8, 0x0150($v0) ## 00000150 -.L809E1574: -/* 01334 809E1574 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004 -/* 01338 809E1578 10C10005 */ beq $a2, $at, .L809E1590 -/* 0133C 809E157C 3C04809E */ lui $a0, %hi(D_809E1640) ## $a0 = 809E0000 -/* 01340 809E1580 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006 -/* 01344 809E1584 10C10002 */ beq $a2, $at, .L809E1590 -/* 01348 809E1588 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008 -/* 0134C 809E158C 14C10010 */ bne $a2, $at, .L809E15D0 -.L809E1590: -/* 01350 809E1590 00067843 */ sra $t7, $a2, 1 -/* 01354 809E1594 8FAE0038 */ lw $t6, 0x0038($sp) -/* 01358 809E1598 000FC080 */ sll $t8, $t7, 2 -/* 0135C 809E159C 030FC023 */ subu $t8, $t8, $t7 -/* 01360 809E15A0 0018C080 */ sll $t8, $t8, 2 -/* 01364 809E15A4 01D82821 */ addu $a1, $t6, $t8 -/* 01368 809E15A8 24A50140 */ addiu $a1, $a1, 0x0140 ## $a1 = 00000140 -/* 0136C 809E15AC AFA5001C */ sw $a1, 0x001C($sp) -/* 01370 809E15B0 0C0346BD */ jal Matrix_MultVec3f -/* 01374 809E15B4 24841640 */ addiu $a0, $a0, %lo(D_809E1640) ## $a0 = 809E1640 -/* 01378 809E15B8 8FA5001C */ lw $a1, 0x001C($sp) -/* 0137C 809E15BC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 01380 809E15C0 44818000 */ mtc1 $at, $f16 ## $f16 = 20.00 -/* 01384 809E15C4 C4AA0004 */ lwc1 $f10, 0x0004($a1) ## 00000004 -/* 01388 809E15C8 46105481 */ sub.s $f18, $f10, $f16 -/* 0138C 809E15CC E4B20004 */ swc1 $f18, 0x0004($a1) ## 00000004 -.L809E15D0: -/* 01390 809E15D0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 01394 809E15D4 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 01398 809E15D8 03E00008 */ jr $ra -/* 0139C 809E15DC 00000000 */ nop diff --git a/data/overlays/actors/z_en_crow.data.s b/data/overlays/actors/z_en_crow.data.s deleted file mode 100644 index b77c35577d..0000000000 --- a/data/overlays/actors/z_en_crow.data.s +++ /dev/null @@ -1,36 +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_809E1640 - .word 0x00000000, 0x00000000, 0x00000000 -glabel En_Crow_InitVars - .word 0x01C00500, 0x00005005, 0x00080000, 0x00000298 -.word EnCrow_Init -.word EnCrow_Destroy -.word EnCrow_Update -.word EnCrow_Draw -glabel D_809E166C - .word 0x00000000, 0xFFCFFFFF, 0x00080000, 0xFFCFFFFF, 0x00000000, 0x09010100, 0x01000000, 0x00000000, 0x00140064 -glabel D_809E1690 - .word 0x03110939, 0x10000000, 0x00000001 -glabel D_809E169C - .word D_809E166C -glabel D_809E16A0 - .word 0x0100000F, 0x001E1E00 -glabel D_809E16A8 - .word 0x10020102, 0x01020202, 0x01020424, 0x32020402, 0x02240000, 0x00000104, 0x02020804, 0x00000400 -glabel D_809E16C8 - .word 0x00000000 -glabel D_809E16CC - .word 0xB0F80BB8, 0x89170058, 0xB86CFF38, 0x304C07D0 -glabel D_809E16DC - .word 0x451C4000, 0x00000000, 0x00000000, 0x00000000, 0x00000000 - diff --git a/data/overlays/actors/z_en_crow.reloc.s b/data/overlays/actors/z_en_crow.reloc.s deleted file mode 100644 index a78be03ec7..0000000000 --- a/data/overlays/actors/z_en_crow.reloc.s +++ /dev/null @@ -1,13 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .rodata - -.balign 16 - -glabel D_809E1730 - .incbin "baserom/ovl_En_Crow", 0x14F0, 0x00000180 diff --git a/spec b/spec index 958503d7f3..3c9839538a 100644 --- a/spec +++ b/spec @@ -2085,8 +2085,7 @@ endseg beginseg name "ovl_En_Crow" include "build/src/overlays/actors/ovl_En_Crow/z_en_crow.o" - include "build/data/overlays/actors/z_en_crow.data.o" - include "build/data/overlays/actors/z_en_crow.reloc.o" + include "build/src/overlays/actors/ovl_En_Crow/ovl_En_Crow_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.c b/src/overlays/actors/ovl_En_Crow/z_en_crow.c index 2464acaace..5457cb574c 100644 --- a/src/overlays/actors/ovl_En_Crow/z_en_crow.c +++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.c @@ -9,7 +9,16 @@ void EnCrow_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnCrow_Update(Actor* thisx, GlobalContext* globalCtx); void EnCrow_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void EnCrow_SetupWait(EnCrow* this); +void EnCrow_Wait(EnCrow* this, GlobalContext* globalCtx); +void func_809E10A8(EnCrow* this, GlobalContext* globalCtx); +void func_809E0C8C(EnCrow* this, GlobalContext* globalCtx); +void EnCrow_Die(EnCrow* this, GlobalContext* globalCtx); +void func_809E1004(EnCrow* this, GlobalContext* globalCtx); +void func_809E0E2C(EnCrow* this, GlobalContext* globalCtx); + +static Vec3f sZeroVecAccel = { 0.0f, 0.0f, 0.0f }; + const ActorInit En_Crow_InitVars = { ACTOR_EN_CROW, ACTORTYPE_ENEMY, @@ -21,41 +30,434 @@ const ActorInit En_Crow_InitVars = { (ActorFunc)EnCrow_Update, (ActorFunc)EnCrow_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Destroy.s") +static ColliderJntSphItemInit sJntSphItemsInit = { + { 0x00, { 0xFFCFFFFF, 0x00, 0x08 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x09, 0x01, 0x01 }, + { 1, { { 0, 0, 0 }, 20 }, 100 }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0354.s") +static ColliderJntSphInit sJntSphInit = { + { COLTYPE_UNK3, 0x11, 0x09, 0x39, 0x10, COLSHAPE_JNTSPH }, + 1, + &sJntSphItemsInit, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0384.s") +static CollisionCheckInfoInit sColChkInfoInit = { 1, 0x000F, 0x001E, 30 }; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E03B4.s") +static DamageTable sDamageTable = { + 0x10, 0x02, 0x01, 0x02, 0x01, 0x02, 0x02, 0x02, 0x01, 0x02, 0x04, 0x24, 0x32, 0x02, 0x04, 0x02, + 0x02, 0x24, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x02, 0x02, 0x08, 0x04, 0x00, 0x00, 0x04, 0x00, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06D4.s") +static u32 sDeathCount = 0; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E06E8.s") +static InitChainEntry sInitChain[] = { + ICHAIN_F32(uncullZoneScale, 3000, ICHAIN_CONTINUE), + ICHAIN_S8(naviEnemyId, 88, ICHAIN_CONTINUE), + ICHAIN_F32_DIV1000(gravity, 65336, ICHAIN_CONTINUE), + ICHAIN_F32(unk_4C, 2000, ICHAIN_STOP), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0770.s") +static Vec3f sHeadVec[] = { 2500.0f, 0.0f, 0.0f }; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0864.s") +extern SkeletonHeader D_060010C0; +extern AnimationHeader D_060000F0; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0C8C.s") +void EnCrow_Init(Actor* thisx, GlobalContext* globalCtx) { + EnCrow* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0E2C.s") + Actor_ProcessInitChain(&this->actor, sInitChain); + SkelAnime_InitSV(globalCtx, &this->skelAnime, &D_060010C0, &D_060000F0, &this->limbDrawTable, + &this->transitionDrawTable, 9); + Collider_InitJntSph(globalCtx, &this->collider); + Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, &this->colliderItems); + this->collider.list[0].dim.worldSphere.radius = sJntSphInit.list->dim.modelSphere.radius; + func_80061ED4(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit); + ActorShape_Init(&this->actor.shape, 2000.0f, ActorShadow_DrawFunc_Circle, 20.0f); + sDeathCount = 0; + EnCrow_SetupWait(this); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E0F54.s") +void EnCrow_Destroy(Actor* thisx, GlobalContext* globalCtx) { + EnCrow* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1004.s") + Collider_DestroyJntSph(globalCtx, &this->collider); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E10A8.s") +void EnCrow_SetupWait(EnCrow* this) { + this->timer = 100; + this->collider.base.acFlags |= 1; + this->actionFunc = EnCrow_Wait; + this->skelAnime.animPlaybackSpeed = 1.0f; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1174.s") +void func_809E0384(EnCrow* this) { + this->timer = 300; + this->actor.speedXZ = 4.0f; + this->skelAnime.animPlaybackSpeed = 2.0f; + this->actionFunc = func_809E0C8C; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Update.s") +void func_809E03B4(EnCrow* this, GlobalContext* globalCtx) { + s32 i; + f32 scale; + Vec3f iceParticlePos; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1434.s") + this->actor.speedXZ *= Math_Coss(this->actor.posRot.rot.x); + this->actor.velocity.y = 0.0f; + SkelAnime_ChangeAnim(&this->skelAnime, &D_060000F0, 0.4f, 0.0f, 0.0f, 1, -3.0f); + scale = this->actor.scale.x * 100.0f; + this->actor.posRot.pos.y += 20.0f * scale; + this->actor.bgCheckFlags &= ~1; + this->actor.shape.unk_08 = 0.0f; + this->actor.unk_4C = 0.0f; + Audio_PlayActorSound2(&this->actor, NA_SE_EN_KAICHO_DEAD); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/func_809E1520.s") + if (this->actor.colChkInfo.damageEffect == 3) { + func_8003426C(&this->actor, 0, 255, 0, 40); + for (i = 0; i < 8; i++) { + iceParticlePos.x = ((i & 1 ? 7.0f : -7.0f) * scale) + this->actor.posRot.pos.x; + iceParticlePos.y = ((i & 2 ? 7.0f : -7.0f) * scale) + this->actor.posRot.pos.y; + iceParticlePos.z = ((i & 4 ? 7.0f : -7.0f) * scale) + this->actor.posRot.pos.z; + EffectSsEnIce_SpawnFlyingVec3f(globalCtx, &this->actor, &iceParticlePos, 150, 150, 150, 250, 235, 245, 255, + ((Math_Rand_ZeroOne() * 0.15f) + 0.85f) * scale); + } + } else if (this->actor.colChkInfo.damageEffect == 2) { + func_8003426C(&this->actor, 0x4000, 255, 0, 40); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Crow/EnCrow_Draw.s") + for (i = 0; i < 4; i++) { + EffectSsEnFire_SpawnVec3f(globalCtx, &this->actor, &this->actor.posRot, 50.0f * scale, 0, 0, i); + } + } else { + func_8003426C(&this->actor, 0x4000, 255, 0, 40); + } + + if (this->actor.flags & 0x8000) { + this->actor.speedXZ = 0.0f; + } + + this->collider.base.acFlags &= ~1; + this->actor.flags |= 0x10; + + this->actionFunc = func_809E0E2C; +} + +void EnCrow_SetupDie(EnCrow* this) { + this->actor.dmgEffectTimer = 0; + this->actionFunc = EnCrow_Die; +} + +void func_809E06E8(EnCrow* this) { + this->timer = 100; + this->actor.speedXZ = 3.5f; + this->aimRotX = -0x1000; + this->aimRotY = this->actor.yawTowardsLink + 0x8000; + this->skelAnime.animPlaybackSpeed = 2.0f; + func_8003426C(&this->actor, 0, 255, 0, 5); + Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_FREEZE); + this->actionFunc = func_809E1004; +} + +void func_809E0770(EnCrow* this) { + if (sDeathCount == 10) { + this->actor.params = 1; + sDeathCount = 0; + this->collider.list[0].dim.worldSphere.radius = sJntSphInit.list->dim.modelSphere.radius * 0.03f * 100.0f; + } else { + this->actor.params = 0; + this->collider.list[0].dim.worldSphere.radius = sJntSphInit.list->dim.modelSphere.radius; + } + + SkelAnime_ChangeAnimDefaultRepeat(&this->skelAnime, &D_060000F0); + Math_Vec3f_Copy(&this->actor.posRot, &this->actor.initPosRot); + this->actor.shape.rot.x = 0; + this->actor.shape.rot.z = 0; + this->timer = 300; + this->actor.shape.unk_08 = 2000; + this->actor.unk_4C = 2000.0f; + this->actor.draw = NULL; + this->actionFunc = func_809E10A8; +} + +void EnCrow_Wait(EnCrow* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + s32 skelanimeUpdated; + s16 var; + + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + skelanimeUpdated = func_800A56C8(&this->skelAnime, 0.0f); + this->actor.speedXZ = (Math_Rand_ZeroOne() * 1.5f) + 3.0f; + + if (this->actor.bgCheckFlags & 8) { + this->aimRotY = this->actor.wallPolyRot; + } else if (func_8002DBB0(&this->actor, &this->actor.initPosRot) > 300.0f) { + this->aimRotY = func_8002DAC0(&this->actor, &this->actor.initPosRot); + } + + if ((Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, this->aimRotY, 5, 0x300, 0x10) == 0) && (skelanimeUpdated) && + (Math_Rand_ZeroOne() < 0.1f)) { + var = func_8002DAC0(&this->actor, &this->actor.initPosRot) - this->actor.shape.rot.y; + if (var > 0) { + this->aimRotY += 0x1000 + (0x1000 * Math_Rand_ZeroOne()); + } else { + this->aimRotY -= 0x1000 + (0x1000 * Math_Rand_ZeroOne()); + } + Audio_PlayActorSound2(&this->actor, NA_SE_EN_KAICHO_CRY); + } + + if (this->actor.waterY > -40.0f) { + this->aimRotX = -0x1000; + } else if (this->actor.posRot.pos.y < (this->actor.initPosRot.pos.y - 50.0f)) { + this->aimRotX = -0x800 - (Math_Rand_ZeroOne() * 0x800); + } else if (this->actor.posRot.pos.y > (this->actor.initPosRot.pos.y + 50.0f)) { + this->aimRotX = 0x800 + (Math_Rand_ZeroOne() * 0x800); + } + + if ((Math_SmoothScaleMaxMinS(&this->actor.shape.rot.x, this->aimRotX, 10, 0x100, 8) == 0) && (skelanimeUpdated) && + (Math_Rand_ZeroOne() < 0.1f)) { + if (this->actor.initPosRot.pos.y < this->actor.posRot.pos.y) { + this->aimRotX -= (0x400 * Math_Rand_ZeroOne()) + 0x400; + } else { + this->aimRotX += (0x400 * Math_Rand_ZeroOne()) + 0x400; + } + this->aimRotX = CLAMP(this->aimRotX, -0x1000, 0x1000); + } + + if (this->actor.bgCheckFlags & 1) { + Math_ApproxUpdateScaledS(&this->actor.shape.rot.x, -0x100, 0x400); + } + + if (this->timer != 0) { + this->timer--; + } + if ((this->timer == 0) && (this->actor.xzDistFromLink < 300.0f) && !(player->stateFlags1 & 0x00800000) && + (this->actor.waterY < -40.0f) && (Player_GetMask(globalCtx) != PLAYER_MASK_SKULL)) { + func_809E0384(this); + } +} + +void func_809E0C8C(EnCrow* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + s32 yaw; + Vec3f pos; + s16 target; + + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + if (this->timer != 0) { + this->timer--; + } + + yaw = func_8002E084(&this->actor, 0x2800); + + if (yaw != 0) { + pos.x = player->actor.posRot.pos.x; + pos.y = player->actor.posRot.pos.y + 20.0f; + pos.z = player->actor.posRot.pos.z; + target = func_8002DB28(&this->actor, &pos); + if (target > 0x3000) { + target = 0x3000; + } + Math_SmoothScaleMaxS(&this->actor.shape.rot.x, target, 2, 0x400); + } else { + Math_SmoothScaleMaxS(&this->actor.shape.rot.x, -0x1000, 2, 0x100); + } + + if ((yaw != 0) || (this->actor.xzDistFromLink > 80.0f)) { + Math_SmoothScaleMaxS(&this->actor.shape.rot.y, this->actor.yawTowardsLink, 4, 0xC00); + } + + if ((this->timer == 0) || (Player_GetMask(globalCtx) == PLAYER_MASK_SKULL) || (this->collider.base.atFlags & 2) || + (this->actor.bgCheckFlags & 9) || (player->stateFlags1 & 0x00800000) || (this->actor.waterY > -40.0f)) { + if (this->collider.base.atFlags & 2) { + this->collider.base.atFlags &= ~2; + Audio_PlayActorSound2(&this->actor, NA_SE_EN_KAICHO_ATTACK); + } + + EnCrow_SetupWait(this); + } +} + +void func_809E0E2C(EnCrow* this, GlobalContext* globalCtx) { + Math_ApproxF(&this->actor.speedXZ, 0.0f, 0.5f); + this->actor.dmgEffectTimer = 40; + + if (!(this->actor.flags & 0x8000)) { + if (this->actor.dmgEffectParams & 0x4000) { + Math_ApproxUpdateScaledS(&this->actor.shape.rot.x, 0x4000, 0x200); + this->actor.shape.rot.z += 0x1780; + } + if ((this->actor.bgCheckFlags & 1) || (this->actor.groundY == -32000.0f)) { + EffectSsDeadDb_Spawn(globalCtx, &this->actor.posRot, &sZeroVecAccel, &sZeroVecAccel, + this->actor.scale.x * 10000.0f, 0, 255, 255, 255, 255, 255, 0, 0, 1, 9, 1); + EnCrow_SetupDie(this); + } + } +} + +void EnCrow_Die(EnCrow* this, GlobalContext* globalCtx) { + f32 step; + + if (this->actor.params != 0) { + step = 0.006f; + } else { + step = 0.002f; + } + + if (Math_ApproxF(&this->actor.scale, 0.0f, step)) { + if (this->actor.params == 0) { + sDeathCount++; + Item_DropCollectibleRandom(globalCtx, &this->actor, &this->actor.posRot, 0); + } else { + Item_DropCollectible(globalCtx, &this->actor.posRot, ITEM00_RUPEE_RED); + } + func_809E0770(this); + } + + this->actor.scale.z = this->actor.scale.y = this->actor.scale.x; +} + +void func_809E1004(EnCrow* this, GlobalContext* globalCtx) { + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + + if (this->actor.bgCheckFlags & 8) { + this->aimRotY = this->actor.wallPolyRot; + } else { + this->aimRotY = this->actor.yawTowardsLink + 0x8000; + } + + Math_SmoothScaleMaxS(&this->actor.shape.rot.y, this->aimRotY, 3, 0xC00); + Math_SmoothScaleMaxS(&this->actor.shape.rot.x, this->aimRotX, 5, 0x100); + + if (this->timer != 0) { + this->timer--; + } + if (this->timer == 0) { + EnCrow_SetupWait(this); + } +} + +void func_809E10A8(EnCrow* this, GlobalContext* globalCtx) { + f32 target; + + if (this->timer != 0) { + this->timer--; + } + + if (this->timer == 0) { + SkelAnime_FrameUpdateMatrix(&this->skelAnime); + this->actor.draw = EnCrow_Draw; + if (this->actor.params != 0) { + target = 0.03f; + } else { + target = 0.01f; + } + if (Math_ApproxF(&this->actor.scale, target, target * 0.1f)) { + this->actor.flags |= 1; + this->actor.flags &= ~0x10; + this->actor.colChkInfo.health = 1; + EnCrow_SetupWait(this); + } + this->actor.scale.z = this->actor.scale.y = this->actor.scale.x; + } +} + +void func_809E1174(EnCrow* this, GlobalContext* globalCtx) { + if (this->collider.base.acFlags & 2) { + this->collider.base.acFlags &= ~2; + func_80035650(&this->actor, &this->collider.list[0].body, 1); + if ((this->actor.colChkInfo.damageEffect != 0) || (this->actor.colChkInfo.damage != 0)) { + if (this->actor.colChkInfo.damageEffect == 1) { + func_809E06E8(this); + } else { + Actor_ApplyDamage(&this->actor); + this->actor.flags &= ~1; + func_80032C7C(globalCtx, &this->actor); + func_809E03B4(this, globalCtx); + } + } + } +} + +void EnCrow_Update(Actor* thisx, GlobalContext* globalCtx) { + EnCrow* this = THIS; + f32 pad; + f32 height; + f32 scale; + + func_809E1174(this, globalCtx); + this->actionFunc(this, globalCtx); + scale = this->actor.scale.x * 100.0f; + this->actor.posRot.rot.y = this->actor.shape.rot.y; + this->actor.posRot.rot.x = -this->actor.shape.rot.x; + + if (this->actionFunc != func_809E10A8) { + if (this->actor.colChkInfo.health != 0) { + height = 20.0f * scale; + func_8002D97C(&this->actor); + } else { + height = 0.0f; + Actor_MoveForward(&this->actor); + } + func_8002E4B4(globalCtx, &this->actor, 12.0f * scale, 25.0f * scale, 50.0f * scale, 7); + } else { + height = 0.0f; + } + + this->collider.list[0].dim.worldSphere.center.x = this->actor.posRot.pos.x; + this->collider.list[0].dim.worldSphere.center.y = this->actor.posRot.pos.y + height; + this->collider.list[0].dim.worldSphere.center.z = this->actor.posRot.pos.z; + + if (this->actionFunc == func_809E0C8C) { + CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->collider); + } + + if (this->collider.base.acFlags & 1) { + CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider); + } + + if (this->actionFunc != func_809E10A8) { + CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider); + } + + Actor_SetHeight(&this->actor, height); + + if (this->actor.colChkInfo.health != 0 && func_800A56C8(&this->skelAnime, 3.0f)) { + Audio_PlayActorSound2(&this->actor, NA_SE_EN_KAICHO_FLUTTER); + } +} + +s32 EnCrow_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, + Actor* thisx) { + EnCrow* this = THIS; + + if (this->actor.colChkInfo.health != 0) { + if (limbIndex == 7) { + rot->y += 0xC00 * sinf(this->skelAnime.animCurrentFrame * (M_PI / 4)); + } else if (limbIndex == 8) { + rot->y += 0x1400 * sinf((this->skelAnime.animCurrentFrame + 2.5f) * (M_PI / 4)); + } + } + return false; +} + +void EnCrow_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx) { + EnCrow* this = THIS; + Vec3f* vec; + + if (limbIndex == 2) { + Matrix_MultVec3f(&sHeadVec, &this->bodyPartsPos[0]); + this->bodyPartsPos[0].y -= 20.0f; + } else if ((limbIndex == 4) || (limbIndex == 6) || (limbIndex == 8)) { + vec = &this->bodyPartsPos[(limbIndex >> 1) - 1]; + Matrix_MultVec3f(&sZeroVecAccel, vec); + vec->y -= 20.0f; + } +} + +void EnCrow_Draw(Actor* thisx, GlobalContext* globalCtx) { + EnCrow* this = THIS; + + func_80093D18(globalCtx->state.gfxCtx); + SkelAnime_DrawSV(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl, this->skelAnime.dListCount, + EnCrow_OverrideLimbDraw, EnCrow_PostLimbDraw, &this->actor); +} diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.h b/src/overlays/actors/ovl_En_Crow/z_en_crow.h index abaa36754a..3830bab394 100644 --- a/src/overlays/actors/ovl_En_Crow/z_en_crow.h +++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.h @@ -6,9 +6,20 @@ struct EnCrow; +typedef void (*EnCrowActionFunc)(struct EnCrow*, GlobalContext*); + typedef struct EnCrow { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x14C]; + /* 0x014C */ Vec3f bodyPartsPos[4]; + /* 0x017C */ SkelAnime skelAnime; + /* 0x01C0 */ EnCrowActionFunc actionFunc; + /* 0x01C4 */ s16 timer; + /* 0x01C6 */ s16 aimRotX; + /* 0x01C8 */ s16 aimRotY; + /* 0x01CA */ Vec3s limbDrawTable[9]; + /* 0x0200 */ Vec3s transitionDrawTable[9]; + /* 0x0238 */ ColliderJntSph collider; + /* 0x0258 */ ColliderJntSphItem colliderItems[1]; } EnCrow; // size = 0x0298 extern const ActorInit En_Crow_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index b713bdfb32..e64e8c4498 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -1282,6 +1282,10 @@ D_040184B0 = 0x040184B0; D_0601BFB0 = 0x0601BFB0; D_0601C160 = 0x0601C160; +// z_en_crow +D_060010C0 = 0x060010C0; +D_060000F0 = 0x060000F0; + // z_en_rl D_06007B38 = 0x06007B38; D_06000A3C = 0x06000A3C;