diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Destroy.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Destroy.s deleted file mode 100644 index 809c0c8009..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Destroy.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel EnNwc_Destroy -/* 008C8 80ABC9A8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 008CC 80ABC9AC 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 008D0 80ABC9B0 AFBF0014 */ sw $ra, 0x0014($sp) -/* 008D4 80ABC9B4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 008D8 80ABC9B8 0C016F0A */ jal Collider_FreeJntSph -/* 008DC 80ABC9BC 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C -/* 008E0 80ABC9C0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 008E4 80ABC9C4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 008E8 80ABC9C8 03E00008 */ jr $ra -/* 008EC 80ABC9CC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Draw.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Draw.s deleted file mode 100644 index cf4fce05a5..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Draw.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel EnNwc_Draw -/* 00958 80ABCA38 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0095C 80ABCA3C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00960 80ABCA40 0C2AF118 */ jal func_80ABC460 -/* 00964 80ABCA44 00000000 */ nop -/* 00968 80ABCA48 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0096C 80ABCA4C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00970 80ABCA50 03E00008 */ jr $ra -/* 00974 80ABCA54 00000000 */ nop -/* 00978 80ABCA58 00000000 */ nop -/* 0097C 80ABCA5C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Init.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Init.s deleted file mode 100644 index 81f8c61b1f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Init.s +++ /dev/null @@ -1,106 +0,0 @@ -glabel EnNwc_Init -/* 0073C 80ABC81C 27BDFD60 */ addiu $sp, $sp, 0xFD60 ## $sp = FFFFFD60 -/* 00740 80ABC820 AFB4003C */ sw $s4, 0x003C($sp) -/* 00744 80ABC824 3C1480AC */ lui $s4, %hi(D_80ABCAA4) ## $s4 = 80AC0000 -/* 00748 80ABC828 2694CAA4 */ addiu $s4, $s4, %lo(D_80ABCAA4) ## $s4 = 80ABCAA4 -/* 0074C 80ABC82C AFB50040 */ sw $s5, 0x0040($sp) -/* 00750 80ABC830 AFB30038 */ sw $s3, 0x0038($sp) -/* 00754 80ABC834 AFB20034 */ sw $s2, 0x0034($sp) -/* 00758 80ABC838 AFB10030 */ sw $s1, 0x0030($sp) -/* 0075C 80ABC83C 27A20058 */ addiu $v0, $sp, 0x0058 ## $v0 = FFFFFDB8 -/* 00760 80ABC840 3C0380AC */ lui $v1, %hi(D_80ABCA80) ## $v1 = 80AC0000 -/* 00764 80ABC844 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000 -/* 00768 80ABC848 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000 -/* 0076C 80ABC84C AFBF0044 */ sw $ra, 0x0044($sp) -/* 00770 80ABC850 AFB0002C */ sw $s0, 0x002C($sp) -/* 00774 80ABC854 F7B80020 */ sdc1 $f24, 0x0020($sp) -/* 00778 80ABC858 F7B60018 */ sdc1 $f22, 0x0018($sp) -/* 0077C 80ABC85C F7B40010 */ sdc1 $f20, 0x0010($sp) -/* 00780 80ABC860 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000 -/* 00784 80ABC864 AE82000C */ sw $v0, 0x000C($s4) ## 80ABCAB0 -/* 00788 80ABC868 2463CA80 */ addiu $v1, $v1, %lo(D_80ABCA80) ## $v1 = 80ABCA80 -/* 0078C 80ABC86C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000 -.L80ABC870: -/* 00790 80ABC870 0060C825 */ or $t9, $v1, $zero ## $t9 = 80ABCA80 -/* 00794 80ABC874 00404025 */ or $t0, $v0, $zero ## $t0 = FFFFFDB8 -/* 00798 80ABC878 24690024 */ addiu $t1, $v1, 0x0024 ## $t1 = 80ABCAA4 -.L80ABC87C: -/* 0079C 80ABC87C 8F380000 */ lw $t8, 0x0000($t9) ## 80ABCA80 -/* 007A0 80ABC880 2739000C */ addiu $t9, $t9, 0x000C ## $t9 = 80ABCA8C -/* 007A4 80ABC884 2508000C */ addiu $t0, $t0, 0x000C ## $t0 = FFFFFDC4 -/* 007A8 80ABC888 AD18FFF4 */ sw $t8, -0x000C($t0) ## FFFFFDB8 -/* 007AC 80ABC88C 8F2FFFF8 */ lw $t7, -0x0008($t9) ## 80ABCA84 -/* 007B0 80ABC890 AD0FFFF8 */ sw $t7, -0x0008($t0) ## FFFFFDBC -/* 007B4 80ABC894 8F38FFFC */ lw $t8, -0x0004($t9) ## 80ABCA88 -/* 007B8 80ABC898 1729FFF8 */ bne $t9, $t1, .L80ABC87C -/* 007BC 80ABC89C AD18FFFC */ sw $t8, -0x0004($t0) ## FFFFFDC0 -/* 007C0 80ABC8A0 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001 -/* 007C4 80ABC8A4 2A210010 */ slti $at, $s1, 0x0010 -/* 007C8 80ABC8A8 1420FFF1 */ bne $at, $zero, .L80ABC870 -/* 007CC 80ABC8AC 24420024 */ addiu $v0, $v0, 0x0024 ## $v0 = FFFFFDDC -/* 007D0 80ABC8B0 2650014C */ addiu $s0, $s2, 0x014C ## $s0 = 0000014C -/* 007D4 80ABC8B4 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 007D8 80ABC8B8 0C016EFE */ jal Collider_InitJntSph -/* 007DC 80ABC8BC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 007E0 80ABC8C0 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000 -/* 007E4 80ABC8C4 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 007E8 80ABC8C8 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000 -/* 007EC 80ABC8CC 0C016F94 */ jal Collider_SetJntSph_Set3 ## ClObjJntSph_set3 -/* 007F0 80ABC8D0 02803825 */ or $a3, $s4, $zero ## $a3 = 80ABCAA4 -/* 007F4 80ABC8D4 240A0010 */ addiu $t2, $zero, 0x0010 ## $t2 = 00000010 -/* 007F8 80ABC8D8 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000010 -/* 007FC 80ABC8DC A24A016C */ sb $t2, 0x016C($s2) ## 0000016C -/* 00800 80ABC8E0 26500170 */ addiu $s0, $s2, 0x0170 ## $s0 = 00000170 -/* 00804 80ABC8E4 19600020 */ blez $t3, .L80ABC968 -/* 00808 80ABC8E8 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000 -/* 0080C 80ABC8EC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00810 80ABC8F0 4481C000 */ mtc1 $at, $f24 ## $f24 = 20.00 -/* 00814 80ABC8F4 3C014248 */ lui $at, 0x4248 ## $at = 42480000 -/* 00818 80ABC8F8 4481B000 */ mtc1 $at, $f22 ## $f22 = 50.00 -/* 0081C 80ABC8FC 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 00820 80ABC900 4481A000 */ mtc1 $at, $f20 ## $f20 = 100.00 -/* 00824 80ABC904 24140005 */ addiu $s4, $zero, 0x0005 ## $s4 = 00000005 -/* 00828 80ABC908 24130001 */ addiu $s3, $zero, 0x0001 ## $s3 = 00000001 -.L80ABC90C: -/* 0082C 80ABC90C 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00830 80ABC910 A2130000 */ sb $s3, 0x0000($s0) ## 00000170 -/* 00834 80ABC914 46140102 */ mul.s $f4, $f0, $f20 -/* 00838 80ABC918 C6480024 */ lwc1 $f8, 0x0024($s2) ## 00000024 -/* 0083C 80ABC91C 46162181 */ sub.s $f6, $f4, $f22 -/* 00840 80ABC920 46083280 */ add.s $f10, $f6, $f8 -/* 00844 80ABC924 E60A0008 */ swc1 $f10, 0x0008($s0) ## 00000178 -/* 00848 80ABC928 C6500028 */ lwc1 $f16, 0x0028($s2) ## 00000028 -/* 0084C 80ABC92C 46188480 */ add.s $f18, $f16, $f24 -/* 00850 80ABC930 0C03F66B */ jal Math_Rand_ZeroOne - ## Rand.Next() float -/* 00854 80ABC934 E612000C */ swc1 $f18, 0x000C($s0) ## 0000017C -/* 00858 80ABC938 46140102 */ mul.s $f4, $f0, $f20 -/* 0085C 80ABC93C C648002C */ lwc1 $f8, 0x002C($s2) ## 0000002C -/* 00860 80ABC940 A6140036 */ sh $s4, 0x0036($s0) ## 000001A6 -/* 00864 80ABC944 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001 -/* 00868 80ABC948 2610005C */ addiu $s0, $s0, 0x005C ## $s0 = 000001CC -/* 0086C 80ABC94C 46162181 */ sub.s $f6, $f4, $f22 -/* 00870 80ABC950 46083280 */ add.s $f10, $f6, $f8 -/* 00874 80ABC954 E60AFFB4 */ swc1 $f10, -0x004C($s0) ## 00000180 -/* 00878 80ABC958 92AC016C */ lbu $t4, 0x016C($s5) ## 0000016C -/* 0087C 80ABC95C 022C082A */ slt $at, $s1, $t4 -/* 00880 80ABC960 1420FFEA */ bne $at, $zero, .L80ABC90C -/* 00884 80ABC964 00000000 */ nop -.L80ABC968: -/* 00888 80ABC968 3C0580AC */ lui $a1, %hi(func_80ABC9D0) ## $a1 = 80AC0000 -/* 0088C 80ABC96C 24A5C9D0 */ addiu $a1, $a1, %lo(func_80ABC9D0) ## $a1 = 80ABC9D0 -/* 00890 80ABC970 0C2AF038 */ jal func_80ABC0E0 -/* 00894 80ABC974 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000 -/* 00898 80ABC978 8FBF0044 */ lw $ra, 0x0044($sp) -/* 0089C 80ABC97C D7B40010 */ ldc1 $f20, 0x0010($sp) -/* 008A0 80ABC980 D7B60018 */ ldc1 $f22, 0x0018($sp) -/* 008A4 80ABC984 D7B80020 */ ldc1 $f24, 0x0020($sp) -/* 008A8 80ABC988 8FB0002C */ lw $s0, 0x002C($sp) -/* 008AC 80ABC98C 8FB10030 */ lw $s1, 0x0030($sp) -/* 008B0 80ABC990 8FB20034 */ lw $s2, 0x0034($sp) -/* 008B4 80ABC994 8FB30038 */ lw $s3, 0x0038($sp) -/* 008B8 80ABC998 8FB4003C */ lw $s4, 0x003C($sp) -/* 008BC 80ABC99C 8FB50040 */ lw $s5, 0x0040($sp) -/* 008C0 80ABC9A0 03E00008 */ jr $ra -/* 008C4 80ABC9A4 27BD02A0 */ addiu $sp, $sp, 0x02A0 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Update.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Update.s deleted file mode 100644 index cec9d20467..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Update.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel EnNwc_Update -/* 00910 80ABC9F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00914 80ABC9F4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00918 80ABC9F8 AFA5001C */ sw $a1, 0x001C($sp) -/* 0091C 80ABC9FC AFA40018 */ sw $a0, 0x0018($sp) -/* 00920 80ABCA00 8C990730 */ lw $t9, 0x0730($a0) ## 00000730 -/* 00924 80ABCA04 0320F809 */ jalr $ra, $t9 -/* 00928 80ABCA08 00000000 */ nop -/* 0092C 80ABCA0C 8FA4001C */ lw $a0, 0x001C($sp) -/* 00930 80ABCA10 8FA70018 */ lw $a3, 0x0018($sp) -/* 00934 80ABCA14 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 00938 80ABCA18 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60 -/* 0093C 80ABCA1C 00812821 */ addu $a1, $a0, $at -/* 00940 80ABCA20 0C01767D */ jal CollisionCheck_SetAC - ## CollisionCheck_setAC -/* 00944 80ABCA24 24E6014C */ addiu $a2, $a3, 0x014C ## $a2 = 0000014C -/* 00948 80ABCA28 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0094C 80ABCA2C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00950 80ABCA30 03E00008 */ jr $ra -/* 00954 80ABCA34 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E0.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E0.s deleted file mode 100644 index 03a327006b..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E0.s +++ /dev/null @@ -1,3 +0,0 @@ -glabel func_80ABC0E0 -/* 00000 80ABC0E0 03E00008 */ jr $ra -/* 00004 80ABC0E4 AC850730 */ sw $a1, 0x0730($a0) ## 00000730 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E8.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E8.s deleted file mode 100644 index 08f8ba7350..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E8.s +++ /dev/null @@ -1,5 +0,0 @@ -glabel func_80ABC0E8 -/* 00008 80ABC0E8 AFA40000 */ sw $a0, 0x0000($sp) -/* 0000C 80ABC0EC AFA50004 */ sw $a1, 0x0004($sp) -/* 00010 80ABC0F0 03E00008 */ jr $ra -/* 00014 80ABC0F4 AFA60008 */ sw $a2, 0x0008($sp) diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0F8.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0F8.s deleted file mode 100644 index 3b8f03ed8f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0F8.s +++ /dev/null @@ -1,66 +0,0 @@ -glabel func_80ABC0F8 -/* 00018 80ABC0F8 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0 -/* 0001C 80ABC0FC AFBF002C */ sw $ra, 0x002C($sp) -/* 00020 80ABC100 AFB00028 */ sw $s0, 0x0028($sp) -/* 00024 80ABC104 AFA50054 */ sw $a1, 0x0054($sp) -/* 00028 80ABC108 908E0001 */ lbu $t6, 0x0001($a0) ## 00000001 -/* 0002C 80ABC10C C4840008 */ lwc1 $f4, 0x0008($a0) ## 00000008 -/* 00030 80ABC110 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00034 80ABC114 31CFFFFC */ andi $t7, $t6, 0xFFFC ## $t7 = 00000000 -/* 00038 80ABC118 A08F0001 */ sb $t7, 0x0001($a0) ## 00000001 -/* 0003C 80ABC11C E7A4003C */ swc1 $f4, 0x003C($sp) -/* 00040 80ABC120 C486000C */ lwc1 $f6, 0x000C($a0) ## 0000000C -/* 00044 80ABC124 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 00048 80ABC128 44815000 */ mtc1 $at, $f10 ## $f10 = 10.00 -/* 0004C 80ABC12C E7A60040 */ swc1 $f6, 0x0040($sp) -/* 00050 80ABC130 C4880010 */ lwc1 $f8, 0x0010($a0) ## 00000010 -/* 00054 80ABC134 8FA40054 */ lw $a0, 0x0054($sp) -/* 00058 80ABC138 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 0005C 80ABC13C 44818000 */ mtc1 $at, $f16 ## $f16 = 20.00 -/* 00060 80ABC140 26180038 */ addiu $t8, $s0, 0x0038 ## $t8 = 00000038 -/* 00064 80ABC144 248407C0 */ addiu $a0, $a0, 0x07C0 ## $a0 = 000007C0 -/* 00068 80ABC148 AFA40034 */ sw $a0, 0x0034($sp) -/* 0006C 80ABC14C AFB80014 */ sw $t8, 0x0014($sp) -/* 00070 80ABC150 26060008 */ addiu $a2, $s0, 0x0008 ## $a2 = 00000008 -/* 00074 80ABC154 2607001C */ addiu $a3, $s0, 0x001C ## $a3 = 0000001C -/* 00078 80ABC158 27A5003C */ addiu $a1, $sp, 0x003C ## $a1 = FFFFFFEC -/* 0007C 80ABC15C E7AA0010 */ swc1 $f10, 0x0010($sp) -/* 00080 80ABC160 E7A80044 */ swc1 $f8, 0x0044($sp) -/* 00084 80ABC164 0C00F519 */ jal func_8003D464 -/* 00088 80ABC168 E7B00018 */ swc1 $f16, 0x0018($sp) -/* 0008C 80ABC16C 10400004 */ beq $v0, $zero, .L80ABC180 -/* 00090 80ABC170 8FA40034 */ lw $a0, 0x0034($sp) -/* 00094 80ABC174 92190001 */ lbu $t9, 0x0001($s0) ## 00000001 -/* 00098 80ABC178 37280002 */ ori $t0, $t9, 0x0002 ## $t0 = 00000002 -/* 0009C 80ABC17C A2080001 */ sb $t0, 0x0001($s0) ## 00000001 -.L80ABC180: -/* 000A0 80ABC180 27A5004C */ addiu $a1, $sp, 0x004C ## $a1 = FFFFFFFC -/* 000A4 80ABC184 27A60048 */ addiu $a2, $sp, 0x0048 ## $a2 = FFFFFFF8 -/* 000A8 80ABC188 0C00F250 */ jal func_8003C940 -/* 000AC 80ABC18C 27A7003C */ addiu $a3, $sp, 0x003C ## $a3 = FFFFFFEC -/* 000B0 80ABC190 C612000C */ lwc1 $f18, 0x000C($s0) ## 0000000C -/* 000B4 80ABC194 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 000B8 80ABC198 E6000004 */ swc1 $f0, 0x0004($s0) ## 00000004 -/* 000BC 80ABC19C 46120081 */ sub.s $f2, $f0, $f18 -/* 000C0 80ABC1A0 3C014220 */ lui $at, 0x4220 ## $at = 42200000 -/* 000C4 80ABC1A4 4602203E */ c.le.s $f4, $f2 -/* 000C8 80ABC1A8 00000000 */ nop -/* 000CC 80ABC1AC 4502000D */ bc1fl .L80ABC1E4 -/* 000D0 80ABC1B0 8FBF002C */ lw $ra, 0x002C($sp) -/* 000D4 80ABC1B4 44813000 */ mtc1 $at, $f6 ## $f6 = 40.00 -/* 000D8 80ABC1B8 00000000 */ nop -/* 000DC 80ABC1BC 4606103C */ c.lt.s $f2, $f6 -/* 000E0 80ABC1C0 00000000 */ nop -/* 000E4 80ABC1C4 45020007 */ bc1fl .L80ABC1E4 -/* 000E8 80ABC1C8 8FBF002C */ lw $ra, 0x002C($sp) -/* 000EC 80ABC1CC 92090001 */ lbu $t1, 0x0001($s0) ## 00000001 -/* 000F0 80ABC1D0 C6080004 */ lwc1 $f8, 0x0004($s0) ## 00000004 -/* 000F4 80ABC1D4 352A0001 */ ori $t2, $t1, 0x0001 ## $t2 = 00000001 -/* 000F8 80ABC1D8 A20A0001 */ sb $t2, 0x0001($s0) ## 00000001 -/* 000FC 80ABC1DC E608000C */ swc1 $f8, 0x000C($s0) ## 0000000C -/* 00100 80ABC1E0 8FBF002C */ lw $ra, 0x002C($sp) -.L80ABC1E4: -/* 00104 80ABC1E4 8FB00028 */ lw $s0, 0x0028($sp) -/* 00108 80ABC1E8 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000 -/* 0010C 80ABC1EC 03E00008 */ jr $ra -/* 00110 80ABC1F0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC1F4.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC1F4.s deleted file mode 100644 index 59801c0819..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC1F4.s +++ /dev/null @@ -1,34 +0,0 @@ -.late_rodata -glabel D_80ABCB00 - .float 0.1 - -.text -glabel func_80ABC1F4 -/* 00114 80ABC1F4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00118 80ABC1F8 3C01C120 */ lui $at, 0xC120 ## $at = C1200000 -/* 0011C 80ABC1FC 44811000 */ mtc1 $at, $f2 ## $f2 = -10.00 -/* 00120 80ABC200 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00124 80ABC204 AFA5001C */ sw $a1, 0x001C($sp) -/* 00128 80ABC208 3C0180AC */ lui $at, %hi(D_80ABCB00) ## $at = 80AC0000 -/* 0012C 80ABC20C C426CB00 */ lwc1 $f6, %lo(D_80ABCB00)($at) -/* 00130 80ABC210 C484002C */ lwc1 $f4, 0x002C($a0) ## 0000002C -/* 00134 80ABC214 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000 -/* 00138 80ABC218 46062201 */ sub.s $f8, $f4, $f6 -/* 0013C 80ABC21C E488002C */ swc1 $f8, 0x002C($a0) ## 0000002C -/* 00140 80ABC220 C480002C */ lwc1 $f0, 0x002C($a0) ## 0000002C -/* 00144 80ABC224 4602003C */ c.lt.s $f0, $f2 -/* 00148 80ABC228 00000000 */ nop -/* 0014C 80ABC22C 45020004 */ bc1fl .L80ABC240 -/* 00150 80ABC230 C48A000C */ lwc1 $f10, 0x000C($a0) ## 0000000C -/* 00154 80ABC234 E482002C */ swc1 $f2, 0x002C($a0) ## 0000002C -/* 00158 80ABC238 C480002C */ lwc1 $f0, 0x002C($a0) ## 0000002C -/* 0015C 80ABC23C C48A000C */ lwc1 $f10, 0x000C($a0) ## 0000000C -.L80ABC240: -/* 00160 80ABC240 46005400 */ add.s $f16, $f10, $f0 -/* 00164 80ABC244 E490000C */ swc1 $f16, 0x000C($a0) ## 0000000C -/* 00168 80ABC248 0C2AF03E */ jal func_80ABC0F8 -/* 0016C 80ABC24C AFA40018 */ sw $a0, 0x0018($sp) -/* 00170 80ABC250 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00174 80ABC254 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00178 80ABC258 03E00008 */ jr $ra -/* 0017C 80ABC25C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC260.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC260.s deleted file mode 100644 index 832239444c..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC260.s +++ /dev/null @@ -1,140 +0,0 @@ -.late_rodata -glabel D_80ABCB04 - .word 0x47C34FF3 - -.text -glabel func_80ABC260 -/* 00180 80ABC260 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70 -/* 00184 80ABC264 3C0180AC */ lui $at, %hi(D_80ABCB04) ## $at = 80AC0000 -/* 00188 80ABC268 C424CB04 */ lwc1 $f4, %lo(D_80ABCB04)($at) -/* 0018C 80ABC26C AFBF0054 */ sw $ra, 0x0054($sp) -/* 00190 80ABC270 AFB70050 */ sw $s7, 0x0050($sp) -/* 00194 80ABC274 AFB6004C */ sw $s6, 0x004C($sp) -/* 00198 80ABC278 AFB50048 */ sw $s5, 0x0048($sp) -/* 0019C 80ABC27C AFB40044 */ sw $s4, 0x0044($sp) -/* 001A0 80ABC280 AFB30040 */ sw $s3, 0x0040($sp) -/* 001A4 80ABC284 AFB2003C */ sw $s2, 0x003C($sp) -/* 001A8 80ABC288 AFB10038 */ sw $s1, 0x0038($sp) -/* 001AC 80ABC28C AFB00034 */ sw $s0, 0x0034($sp) -/* 001B0 80ABC290 F7BA0028 */ sdc1 $f26, 0x0028($sp) -/* 001B4 80ABC294 F7B80020 */ sdc1 $f24, 0x0020($sp) -/* 001B8 80ABC298 F7B60018 */ sdc1 $f22, 0x0018($sp) -/* 001BC 80ABC29C F7B40010 */ sdc1 $f20, 0x0010($sp) -/* 001C0 80ABC2A0 8C910168 */ lw $s1, 0x0168($a0) ## 00000168 -/* 001C4 80ABC2A4 E7A40080 */ swc1 $f4, 0x0080($sp) -/* 001C8 80ABC2A8 908E016C */ lbu $t6, 0x016C($a0) ## 0000016C -/* 001CC 80ABC2AC 0080A025 */ or $s4, $a0, $zero ## $s4 = 00000000 -/* 001D0 80ABC2B0 00A0B825 */ or $s7, $a1, $zero ## $s7 = 00000000 -/* 001D4 80ABC2B4 24900170 */ addiu $s0, $a0, 0x0170 ## $s0 = 00000170 -/* 001D8 80ABC2B8 19C0005A */ blez $t6, .L80ABC424 -/* 001DC 80ABC2BC 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000 -/* 001E0 80ABC2C0 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 001E4 80ABC2C4 4481C000 */ mtc1 $at, $f24 ## $f24 = 100.00 -/* 001E8 80ABC2C8 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 001EC 80ABC2CC 4481B000 */ mtc1 $at, $f22 ## $f22 = 10.00 -/* 001F0 80ABC2D0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 001F4 80ABC2D4 3C1580AC */ lui $s5, %hi(D_80ABCAB4) ## $s5 = 80AC0000 -/* 001F8 80ABC2D8 4481A000 */ mtc1 $at, $f20 ## $f20 = 1.00 -/* 001FC 80ABC2DC 4480D000 */ mtc1 $zero, $f26 ## $f26 = 0.00 -/* 00200 80ABC2E0 26B5CAB4 */ addiu $s5, $s5, %lo(D_80ABCAB4) ## $s5 = 80ABCAB4 -/* 00204 80ABC2E4 27B6007C */ addiu $s6, $sp, 0x007C ## $s6 = FFFFFFEC -/* 00208 80ABC2E8 26120008 */ addiu $s2, $s0, 0x0008 ## $s2 = 00000178 -.L80ABC2EC: -/* 0020C 80ABC2EC 02402825 */ or $a1, $s2, $zero ## $a1 = 00000178 -/* 00210 80ABC2F0 0C01DF90 */ jal Math_Vec3f_Copy - ## Vec3f_Copy -/* 00214 80ABC2F4 2604001C */ addiu $a0, $s0, 0x001C ## $a0 = 0000018C -/* 00218 80ABC2F8 820F0000 */ lb $t7, 0x0000($s0) ## 00000170 -/* 0021C 80ABC2FC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000170 -/* 00220 80ABC300 02802825 */ or $a1, $s4, $zero ## $a1 = 00000000 -/* 00224 80ABC304 000FC080 */ sll $t8, $t7, 2 -/* 00228 80ABC308 02B8C821 */ addu $t9, $s5, $t8 -/* 0022C 80ABC30C 8F390000 */ lw $t9, 0x0000($t9) ## 00000000 -/* 00230 80ABC310 02E03025 */ or $a2, $s7, $zero ## $a2 = 00000000 -/* 00234 80ABC314 0320F809 */ jalr $ra, $t9 -/* 00238 80ABC318 00000000 */ nop -/* 0023C 80ABC31C C6060008 */ lwc1 $f6, 0x0008($s0) ## 00000178 -/* 00240 80ABC320 4600320D */ trunc.w.s $f8, $f6 -/* 00244 80ABC324 44094000 */ mfc1 $t1, $f8 -/* 00248 80ABC328 00000000 */ nop -/* 0024C 80ABC32C A6290030 */ sh $t1, 0x0030($s1) ## 00000030 -/* 00250 80ABC330 C60A000C */ lwc1 $f10, 0x000C($s0) ## 0000017C -/* 00254 80ABC334 4600510D */ trunc.w.s $f4, $f10 -/* 00258 80ABC338 440B2000 */ mfc1 $t3, $f4 -/* 0025C 80ABC33C 00000000 */ nop -/* 00260 80ABC340 A62B0032 */ sh $t3, 0x0032($s1) ## 00000032 -/* 00264 80ABC344 C6060010 */ lwc1 $f6, 0x0010($s0) ## 00000180 -/* 00268 80ABC348 4600320D */ trunc.w.s $f8, $f6 -/* 0026C 80ABC34C 440D4000 */ mfc1 $t5, $f8 -/* 00270 80ABC350 00000000 */ nop -/* 00274 80ABC354 A62D0034 */ sh $t5, 0x0034($s1) ## 00000034 -/* 00278 80ABC358 C7A40080 */ lwc1 $f4, 0x0080($sp) -/* 0027C 80ABC35C C60A000C */ lwc1 $f10, 0x000C($s0) ## 0000017C -/* 00280 80ABC360 C7A6007C */ lwc1 $f6, 0x007C($sp) -/* 00284 80ABC364 46045081 */ sub.s $f2, $f10, $f4 -/* 00288 80ABC368 46001005 */ abs.s $f0, $f2 -/* 0028C 80ABC36C 4616003C */ c.lt.s $f0, $f22 -/* 00290 80ABC370 00000000 */ nop -/* 00294 80ABC374 4502001F */ bc1fl .L80ABC3F4 -/* 00298 80ABC378 8E4F0000 */ lw $t7, 0x0000($s2) ## 00000178 -/* 0029C 80ABC37C C6020008 */ lwc1 $f2, 0x0008($s0) ## 00000178 -/* 002A0 80ABC380 C60C0010 */ lwc1 $f12, 0x0010($s0) ## 00000180 -/* 002A4 80ABC384 C7A80084 */ lwc1 $f8, 0x0084($sp) -/* 002A8 80ABC388 46061381 */ sub.s $f14, $f2, $f6 -/* 002AC 80ABC38C 46086401 */ sub.s $f16, $f12, $f8 -/* 002B0 80ABC390 460E7282 */ mul.s $f10, $f14, $f14 -/* 002B4 80ABC394 00000000 */ nop -/* 002B8 80ABC398 46108102 */ mul.s $f4, $f16, $f16 -/* 002BC 80ABC39C 46045480 */ add.s $f18, $f10, $f4 -/* 002C0 80ABC3A0 4618903C */ c.lt.s $f18, $f24 -/* 002C4 80ABC3A4 00000000 */ nop -/* 002C8 80ABC3A8 45000011 */ bc1f .L80ABC3F0 -/* 002CC 80ABC3AC 00000000 */ nop -/* 002D0 80ABC3B0 461A9032 */ c.eq.s $f18, $f26 -/* 002D4 80ABC3B4 00000000 */ nop -/* 002D8 80ABC3B8 4503000A */ bc1tl .L80ABC3E4 -/* 002DC 80ABC3BC 46141180 */ add.s $f6, $f2, $f20 -/* 002E0 80ABC3C0 46009004 */ sqrt.s $f0, $f18 -/* 002E4 80ABC3C4 46007183 */ div.s $f6, $f14, $f0 -/* 002E8 80ABC3C8 46008283 */ div.s $f10, $f16, $f0 -/* 002EC 80ABC3CC 46061200 */ add.s $f8, $f2, $f6 -/* 002F0 80ABC3D0 E6080008 */ swc1 $f8, 0x0008($s0) ## 00000178 -/* 002F4 80ABC3D4 460A6100 */ add.s $f4, $f12, $f10 -/* 002F8 80ABC3D8 10000005 */ beq $zero, $zero, .L80ABC3F0 -/* 002FC 80ABC3DC E6040010 */ swc1 $f4, 0x0010($s0) ## 00000180 -/* 00300 80ABC3E0 46141180 */ add.s $f6, $f2, $f20 -.L80ABC3E4: -/* 00304 80ABC3E4 46146200 */ add.s $f8, $f12, $f20 -/* 00308 80ABC3E8 E6060008 */ swc1 $f6, 0x0008($s0) ## 00000178 -/* 0030C 80ABC3EC E6080010 */ swc1 $f8, 0x0010($s0) ## 00000180 -.L80ABC3F0: -/* 00310 80ABC3F0 8E4F0000 */ lw $t7, 0x0000($s2) ## 00000178 -.L80ABC3F4: -/* 00314 80ABC3F4 26730001 */ addiu $s3, $s3, 0x0001 ## $s3 = 00000001 -/* 00318 80ABC3F8 2610005C */ addiu $s0, $s0, 0x005C ## $s0 = 000001CC -/* 0031C 80ABC3FC AECF0000 */ sw $t7, 0x0000($s6) ## FFFFFFEC -/* 00320 80ABC400 8E4E0004 */ lw $t6, 0x0004($s2) ## 0000017C -/* 00324 80ABC404 26310040 */ addiu $s1, $s1, 0x0040 ## $s1 = 00000040 -/* 00328 80ABC408 AECE0004 */ sw $t6, 0x0004($s6) ## FFFFFFF0 -/* 0032C 80ABC40C 8E4F0008 */ lw $t7, 0x0008($s2) ## 00000180 -/* 00330 80ABC410 AECF0008 */ sw $t7, 0x0008($s6) ## FFFFFFF4 -/* 00334 80ABC414 9298016C */ lbu $t8, 0x016C($s4) ## 0000016C -/* 00338 80ABC418 0278082A */ slt $at, $s3, $t8 -/* 0033C 80ABC41C 5420FFB3 */ bnel $at, $zero, .L80ABC2EC -/* 00340 80ABC420 26120008 */ addiu $s2, $s0, 0x0008 ## $s2 = 000001D4 -.L80ABC424: -/* 00344 80ABC424 8FBF0054 */ lw $ra, 0x0054($sp) -/* 00348 80ABC428 D7B40010 */ ldc1 $f20, 0x0010($sp) -/* 0034C 80ABC42C D7B60018 */ ldc1 $f22, 0x0018($sp) -/* 00350 80ABC430 D7B80020 */ ldc1 $f24, 0x0020($sp) -/* 00354 80ABC434 D7BA0028 */ ldc1 $f26, 0x0028($sp) -/* 00358 80ABC438 8FB00034 */ lw $s0, 0x0034($sp) -/* 0035C 80ABC43C 8FB10038 */ lw $s1, 0x0038($sp) -/* 00360 80ABC440 8FB2003C */ lw $s2, 0x003C($sp) -/* 00364 80ABC444 8FB30040 */ lw $s3, 0x0040($sp) -/* 00368 80ABC448 8FB40044 */ lw $s4, 0x0044($sp) -/* 0036C 80ABC44C 8FB50048 */ lw $s5, 0x0048($sp) -/* 00370 80ABC450 8FB6004C */ lw $s6, 0x004C($sp) -/* 00374 80ABC454 8FB70050 */ lw $s7, 0x0050($sp) -/* 00378 80ABC458 03E00008 */ jr $ra -/* 0037C 80ABC45C 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC460.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC460.s deleted file mode 100644 index 2aabde2a6d..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC460.s +++ /dev/null @@ -1,272 +0,0 @@ -.rdata -glabel D_80ABCAC0 - .asciz "../z_en_nwc.c" - .balign 4 - -glabel D_80ABCAD0 - .asciz "../z_en_nwc.c" - .balign 4 - -glabel D_80ABCAE0 - .asciz "../z_en_nwc.c" - .balign 4 - -glabel D_80ABCAF0 - .asciz "../z_en_nwc.c" - .balign 4 - -.late_rodata -glabel D_80ABCB08 - .float 0.01 - -glabel D_80ABCB0C - .float 9.58738019108e-05 - -.text -glabel func_80ABC460 -/* 00380 80ABC460 27BDFF00 */ addiu $sp, $sp, 0xFF00 ## $sp = FFFFFF00 -/* 00384 80ABC464 AFBF004C */ sw $ra, 0x004C($sp) -/* 00388 80ABC468 AFBE0048 */ sw $s8, 0x0048($sp) -/* 0038C 80ABC46C AFB70044 */ sw $s7, 0x0044($sp) -/* 00390 80ABC470 AFB60040 */ sw $s6, 0x0040($sp) -/* 00394 80ABC474 AFB5003C */ sw $s5, 0x003C($sp) -/* 00398 80ABC478 AFB40038 */ sw $s4, 0x0038($sp) -/* 0039C 80ABC47C AFB30034 */ sw $s3, 0x0034($sp) -/* 003A0 80ABC480 AFB20030 */ sw $s2, 0x0030($sp) -/* 003A4 80ABC484 AFB1002C */ sw $s1, 0x002C($sp) -/* 003A8 80ABC488 AFB00028 */ sw $s0, 0x0028($sp) -/* 003AC 80ABC48C F7B40020 */ sdc1 $f20, 0x0020($sp) -/* 003B0 80ABC490 AFA40100 */ sw $a0, 0x0100($sp) -/* 003B4 80ABC494 AFA50104 */ sw $a1, 0x0104($sp) -/* 003B8 80ABC498 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 003BC 80ABC49C 3C0680AC */ lui $a2, %hi(D_80ABCAC0) ## $a2 = 80AC0000 -/* 003C0 80ABC4A0 24C6CAC0 */ addiu $a2, $a2, %lo(D_80ABCAC0) ## $a2 = 80ABCAC0 -/* 003C4 80ABC4A4 27A40098 */ addiu $a0, $sp, 0x0098 ## $a0 = FFFFFF98 -/* 003C8 80ABC4A8 2407013C */ addiu $a3, $zero, 0x013C ## $a3 = 0000013C -/* 003CC 80ABC4AC 0C031AB1 */ jal Graph_OpenDisps -/* 003D0 80ABC4B0 AFA500A8 */ sw $a1, 0x00A8($sp) -/* 003D4 80ABC4B4 0C024F20 */ jal func_80093C80 -/* 003D8 80ABC4B8 8FA40104 */ lw $a0, 0x0104($sp) -/* 003DC 80ABC4BC 8FB80100 */ lw $t8, 0x0100($sp) -/* 003E0 80ABC4C0 8FAF00A8 */ lw $t7, 0x00A8($sp) -/* 003E4 80ABC4C4 3C0A0600 */ lui $t2, 0x0600 ## $t2 = 06000000 -/* 003E8 80ABC4C8 9305016C */ lbu $a1, 0x016C($t8) ## 0000016C -/* 003EC 80ABC4CC 8DF002D0 */ lw $s0, 0x02D0($t7) ## 000002D0 -/* 003F0 80ABC4D0 254A0840 */ addiu $t2, $t2, 0x0840 ## $t2 = 06000840 -/* 003F4 80ABC4D4 0005C880 */ sll $t9, $a1, 2 -/* 003F8 80ABC4D8 0325C823 */ subu $t9, $t9, $a1 -/* 003FC 80ABC4DC 0019C8C0 */ sll $t9, $t9, 3 -/* 00400 80ABC4E0 02001025 */ or $v0, $s0, $zero ## $v0 = 00000000 -/* 00404 80ABC4E4 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000 -/* 00408 80ABC4E8 03309021 */ addu $s2, $t9, $s0 -/* 0040C 80ABC4EC 26520008 */ addiu $s2, $s2, 0x0008 ## $s2 = 00000008 -/* 00410 80ABC4F0 AC490000 */ sw $t1, 0x0000($v0) ## 00000000 -/* 00414 80ABC4F4 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004 -/* 00418 80ABC4F8 02401025 */ or $v0, $s2, $zero ## $v0 = 00000008 -/* 0041C 80ABC4FC 3C0C0600 */ lui $t4, 0x0600 ## $t4 = 06000000 -/* 00420 80ABC500 00054100 */ sll $t0, $a1, 4 -/* 00424 80ABC504 01129821 */ addu $s3, $t0, $s2 -/* 00428 80ABC508 258C0BF0 */ addiu $t4, $t4, 0x0BF0 ## $t4 = 06000BF0 -/* 0042C 80ABC50C 3C0BDE00 */ lui $t3, 0xDE00 ## $t3 = DE000000 -/* 00430 80ABC510 26730008 */ addiu $s3, $s3, 0x0008 ## $s3 = 00000008 -/* 00434 80ABC514 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000008 -/* 00438 80ABC518 AC4C0004 */ sw $t4, 0x0004($v0) ## 0000000C -/* 0043C 80ABC51C 02601025 */ or $v0, $s3, $zero ## $v0 = 00000008 -/* 00440 80ABC520 3C0E0600 */ lui $t6, 0x0600 ## $t6 = 06000000 -/* 00444 80ABC524 25CE0C88 */ addiu $t6, $t6, 0x0C88 ## $t6 = 06000C88 -/* 00448 80ABC528 3C0DDE00 */ lui $t5, 0xDE00 ## $t5 = DE000000 -/* 0044C 80ABC52C AC4D0000 */ sw $t5, 0x0000($v0) ## 00000008 -/* 00450 80ABC530 AC4E0004 */ sw $t6, 0x0004($v0) ## 0000000C -/* 00454 80ABC534 8FAF0100 */ lw $t7, 0x0100($sp) -/* 00458 80ABC538 26520008 */ addiu $s2, $s2, 0x0008 ## $s2 = 00000010 -/* 0045C 80ABC53C 26730008 */ addiu $s3, $s3, 0x0008 ## $s3 = 00000010 -/* 00460 80ABC540 25F10170 */ addiu $s1, $t7, 0x0170 ## $s1 = 00000170 -/* 00464 80ABC544 AFB10058 */ sw $s1, 0x0058($sp) -/* 00468 80ABC548 91E5016C */ lbu $a1, 0x016C($t7) ## 0000016C -/* 0046C 80ABC54C 0000A825 */ or $s5, $zero, $zero ## $s5 = 00000000 -/* 00470 80ABC550 3C0180AC */ lui $at, %hi(D_80ABCB08) ## $at = 80AC0000 -/* 00474 80ABC554 18A0004E */ blez $a1, .L80ABC690 -/* 00478 80ABC558 26100008 */ addiu $s0, $s0, 0x0008 ## $s0 = 00000008 -/* 0047C 80ABC55C 3C1EDA38 */ lui $s8, 0xDA38 ## $s8 = DA380000 -/* 00480 80ABC560 37DE0003 */ ori $s8, $s8, 0x0003 ## $s8 = DA380003 -/* 00484 80ABC564 C434CB08 */ lwc1 $f20, %lo(D_80ABCB08)($at) -.L80ABC568: -/* 00488 80ABC568 82390000 */ lb $t9, 0x0000($s1) ## 00000170 -/* 0048C 80ABC56C 3C140600 */ lui $s4, 0x0600 ## $s4 = 06000000 -/* 00490 80ABC570 269408B0 */ addiu $s4, $s4, 0x08B0 ## $s4 = 060008B0 -/* 00494 80ABC574 13200040 */ beq $t9, $zero, .L80ABC678 -/* 00498 80ABC578 26270030 */ addiu $a3, $s1, 0x0030 ## $a3 = 000001A0 -/* 0049C 80ABC57C 96280036 */ lhu $t0, 0x0036($s1) ## 000001A6 -/* 004A0 80ABC580 C62C0008 */ lwc1 $f12, 0x0008($s1) ## 00000178 -/* 004A4 80ABC584 C624000C */ lwc1 $f4, 0x000C($s1) ## 0000017C -/* 004A8 80ABC588 44883000 */ mtc1 $t0, $f6 ## $f6 = 0.00 -/* 004AC 80ABC58C 3C160600 */ lui $s6, 0x0600 ## $s6 = 06000000 -/* 004B0 80ABC590 05010005 */ bgez $t0, .L80ABC5A8 -/* 004B4 80ABC594 46803220 */ cvt.s.w $f8, $f6 -/* 004B8 80ABC598 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000 -/* 004BC 80ABC59C 44815000 */ mtc1 $at, $f10 ## $f10 = 4294967296.00 -/* 004C0 80ABC5A0 00000000 */ nop -/* 004C4 80ABC5A4 460A4200 */ add.s $f8, $f8, $f10 -.L80ABC5A8: -/* 004C8 80ABC5A8 3C170600 */ lui $s7, 0x0600 ## $s7 = 06000000 -/* 004CC 80ABC5AC 26F70CE0 */ addiu $s7, $s7, 0x0CE0 ## $s7 = 06000CE0 -/* 004D0 80ABC5B0 46082380 */ add.s $f14, $f4, $f8 -/* 004D4 80ABC5B4 8E260010 */ lw $a2, 0x0010($s1) ## 00000180 -/* 004D8 80ABC5B8 0C0345A5 */ jal func_800D1694 -/* 004DC 80ABC5BC 26D60C68 */ addiu $s6, $s6, 0x0C68 ## $s6 = 06000C68 -/* 004E0 80ABC5C0 4406A000 */ mfc1 $a2, $f20 -/* 004E4 80ABC5C4 4600A306 */ mov.s $f12, $f20 -/* 004E8 80ABC5C8 4600A386 */ mov.s $f14, $f20 -/* 004EC 80ABC5CC 0C0342A3 */ jal Matrix_Scale -/* 004F0 80ABC5D0 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 004F4 80ABC5D4 8FA90104 */ lw $t1, 0x0104($sp) -/* 004F8 80ABC5D8 3C0580AC */ lui $a1, %hi(D_80ABCAD0) ## $a1 = 80AC0000 -/* 004FC 80ABC5DC 24A5CAD0 */ addiu $a1, $a1, %lo(D_80ABCAD0) ## $a1 = 80ABCAD0 -/* 00500 80ABC5E0 2406015A */ addiu $a2, $zero, 0x015A ## $a2 = 0000015A -/* 00504 80ABC5E4 0C0346A2 */ jal Matrix_NewMtx -/* 00508 80ABC5E8 8D240000 */ lw $a0, 0x0000($t1) ## 00000000 -/* 0050C 80ABC5EC 02001825 */ or $v1, $s0, $zero ## $v1 = 00000008 -/* 00510 80ABC5F0 3C0B0064 */ lui $t3, 0x0064 ## $t3 = 00640000 -/* 00514 80ABC5F4 356BFFFF */ ori $t3, $t3, 0xFFFF ## $t3 = 0064FFFF -/* 00518 80ABC5F8 3C0AFB00 */ lui $t2, 0xFB00 ## $t2 = FB000000 -/* 0051C 80ABC5FC AC6A0000 */ sw $t2, 0x0000($v1) ## 00000008 -/* 00520 80ABC600 AC6B0004 */ sw $t3, 0x0004($v1) ## 0000000C -/* 00524 80ABC604 26100008 */ addiu $s0, $s0, 0x0008 ## $s0 = 00000010 -/* 00528 80ABC608 02001825 */ or $v1, $s0, $zero ## $v1 = 00000010 -/* 0052C 80ABC60C AC7E0000 */ sw $s8, 0x0000($v1) ## 00000010 -/* 00530 80ABC610 AC620004 */ sw $v0, 0x0004($v1) ## 00000014 -/* 00534 80ABC614 26100008 */ addiu $s0, $s0, 0x0008 ## $s0 = 00000018 -/* 00538 80ABC618 02001825 */ or $v1, $s0, $zero ## $v1 = 00000018 -/* 0053C 80ABC61C 3C04DE00 */ lui $a0, 0xDE00 ## $a0 = DE000000 -/* 00540 80ABC620 AC640000 */ sw $a0, 0x0000($v1) ## 00000018 -/* 00544 80ABC624 AC740004 */ sw $s4, 0x0004($v1) ## 0000001C -/* 00548 80ABC628 02401825 */ or $v1, $s2, $zero ## $v1 = 00000010 -/* 0054C 80ABC62C AC7E0000 */ sw $s8, 0x0000($v1) ## 00000010 -/* 00550 80ABC630 AC620004 */ sw $v0, 0x0004($v1) ## 00000014 -/* 00554 80ABC634 26520008 */ addiu $s2, $s2, 0x0008 ## $s2 = 00000018 -/* 00558 80ABC638 02401825 */ or $v1, $s2, $zero ## $v1 = 00000018 -/* 0055C 80ABC63C AC640000 */ sw $a0, 0x0000($v1) ## 00000018 -/* 00560 80ABC640 AC760004 */ sw $s6, 0x0004($v1) ## 0000001C -/* 00564 80ABC644 02601825 */ or $v1, $s3, $zero ## $v1 = 00000010 -/* 00568 80ABC648 AC620004 */ sw $v0, 0x0004($v1) ## 00000014 -/* 0056C 80ABC64C 26730008 */ addiu $s3, $s3, 0x0008 ## $s3 = 00000018 -/* 00570 80ABC650 AC7E0000 */ sw $s8, 0x0000($v1) ## 00000010 -/* 00574 80ABC654 02601025 */ or $v0, $s3, $zero ## $v0 = 00000018 -/* 00578 80ABC658 3C0CDE00 */ lui $t4, 0xDE00 ## $t4 = DE000000 -/* 0057C 80ABC65C AC4C0000 */ sw $t4, 0x0000($v0) ## 00000018 -/* 00580 80ABC660 AC570004 */ sw $s7, 0x0004($v0) ## 0000001C -/* 00584 80ABC664 8FAD0100 */ lw $t5, 0x0100($sp) -/* 00588 80ABC668 26100008 */ addiu $s0, $s0, 0x0008 ## $s0 = 00000020 -/* 0058C 80ABC66C 26520008 */ addiu $s2, $s2, 0x0008 ## $s2 = 00000020 -/* 00590 80ABC670 26730008 */ addiu $s3, $s3, 0x0008 ## $s3 = 00000020 -/* 00594 80ABC674 91A5016C */ lbu $a1, 0x016C($t5) ## 0000016C -.L80ABC678: -/* 00598 80ABC678 26B50001 */ addiu $s5, $s5, 0x0001 ## $s5 = 00000001 -/* 0059C 80ABC67C 02A5082A */ slt $at, $s5, $a1 -/* 005A0 80ABC680 1420FFB9 */ bne $at, $zero, .L80ABC568 -/* 005A4 80ABC684 2631005C */ addiu $s1, $s1, 0x005C ## $s1 = 000001CC -/* 005A8 80ABC688 8FB10058 */ lw $s1, 0x0058($sp) -/* 005AC 80ABC68C 0000A825 */ or $s5, $zero, $zero ## $s5 = 00000000 -.L80ABC690: -/* 005B0 80ABC690 8FAE00A8 */ lw $t6, 0x00A8($sp) -/* 005B4 80ABC694 3C1EDA38 */ lui $s8, 0xDA38 ## $s8 = DA380000 -/* 005B8 80ABC698 37DE0003 */ ori $s8, $s8, 0x0003 ## $s8 = DA380003 -/* 005BC 80ABC69C ADD302D0 */ sw $s3, 0x02D0($t6) ## 000002D0 -/* 005C0 80ABC6A0 8FB80104 */ lw $t8, 0x0104($sp) -/* 005C4 80ABC6A4 0C025011 */ jal func_80094044 -/* 005C8 80ABC6A8 8F040000 */ lw $a0, 0x0000($t8) ## 00000000 -/* 005CC 80ABC6AC 8FAF00A8 */ lw $t7, 0x00A8($sp) -/* 005D0 80ABC6B0 3C090600 */ lui $t1, 0x0600 ## $t1 = 06000000 -/* 005D4 80ABC6B4 25290D10 */ addiu $t1, $t1, 0x0D10 ## $t1 = 06000D10 -/* 005D8 80ABC6B8 8DE202D0 */ lw $v0, 0x02D0($t7) ## 000002D0 -/* 005DC 80ABC6BC 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000 -/* 005E0 80ABC6C0 3C1480AC */ lui $s4, %hi(D_80ABCAE0) ## $s4 = 80AC0000 -/* 005E4 80ABC6C4 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 005E8 80ABC6C8 ADF902D0 */ sw $t9, 0x02D0($t7) ## 000002D0 -/* 005EC 80ABC6CC AC490004 */ sw $t1, 0x0004($v0) ## 00000004 -/* 005F0 80ABC6D0 AC480000 */ sw $t0, 0x0000($v0) ## 00000000 -/* 005F4 80ABC6D4 8FAA0100 */ lw $t2, 0x0100($sp) -/* 005F8 80ABC6D8 2694CAE0 */ addiu $s4, $s4, %lo(D_80ABCAE0) ## $s4 = 80ABCAE0 -/* 005FC 80ABC6DC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00600 80ABC6E0 9145016C */ lbu $a1, 0x016C($t2) ## 0000016C -/* 00604 80ABC6E4 58A0003A */ blezl $a1, .L80ABC7D0 -/* 00608 80ABC6E8 8FA90104 */ lw $t1, 0x0104($sp) -/* 0060C 80ABC6EC 4481A000 */ mtc1 $at, $f20 ## $f20 = 1.00 -/* 00610 80ABC6F0 27B300B0 */ addiu $s3, $sp, 0x00B0 ## $s3 = FFFFFFB0 -.L80ABC6F4: -/* 00614 80ABC6F4 822B0000 */ lb $t3, 0x0000($s1) ## 000001CC -/* 00618 80ABC6F8 51600031 */ beql $t3, $zero, .L80ABC7C0 -/* 0061C 80ABC6FC 26B50001 */ addiu $s5, $s5, 0x0001 ## $s5 = 00000001 -/* 00620 80ABC700 8E240038 */ lw $a0, 0x0038($s1) ## 00000204 -/* 00624 80ABC704 3C120600 */ lui $s2, 0x0600 ## $s2 = 06000000 -/* 00628 80ABC708 26520D50 */ addiu $s2, $s2, 0x0D50 ## $s2 = 06000D50 -/* 0062C 80ABC70C 5080002C */ beql $a0, $zero, .L80ABC7C0 -/* 00630 80ABC710 26B50001 */ addiu $s5, $s5, 0x0001 ## $s5 = 00000002 -/* 00634 80ABC714 8E250008 */ lw $a1, 0x0008($s1) ## 000001D4 -/* 00638 80ABC718 8E260004 */ lw $a2, 0x0004($s1) ## 000001D0 -/* 0063C 80ABC71C 8E270010 */ lw $a3, 0x0010($s1) ## 000001DC -/* 00640 80ABC720 0C00E28A */ jal func_80038A28 -/* 00644 80ABC724 AFB30010 */ sw $s3, 0x0010($sp) -/* 00648 80ABC728 0C03423F */ jal Matrix_Put -/* 0064C 80ABC72C 02602025 */ or $a0, $s3, $zero ## $a0 = FFFFFFB0 -/* 00650 80ABC730 862C0032 */ lh $t4, 0x0032($s1) ## 000001FE -/* 00654 80ABC734 3C0180AC */ lui $at, %hi(D_80ABCB0C) ## $at = 80AC0000 -/* 00658 80ABC738 C426CB0C */ lwc1 $f6, %lo(D_80ABCB0C)($at) -/* 0065C 80ABC73C 448C8000 */ mtc1 $t4, $f16 ## $f16 = 0.00 -/* 00660 80ABC740 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 00664 80ABC744 468084A0 */ cvt.s.w $f18, $f16 -/* 00668 80ABC748 46069302 */ mul.s $f12, $f18, $f6 -/* 0066C 80ABC74C 0C034348 */ jal Matrix_RotateY -/* 00670 80ABC750 00000000 */ nop -/* 00674 80ABC754 4406A000 */ mfc1 $a2, $f20 -/* 00678 80ABC758 4600A306 */ mov.s $f12, $f20 -/* 0067C 80ABC75C 4600A386 */ mov.s $f14, $f20 -/* 00680 80ABC760 0C0342A3 */ jal Matrix_Scale -/* 00684 80ABC764 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 00688 80ABC768 8FA300A8 */ lw $v1, 0x00A8($sp) -/* 0068C 80ABC76C 02802825 */ or $a1, $s4, $zero ## $a1 = 80ABCAE0 -/* 00690 80ABC770 24060184 */ addiu $a2, $zero, 0x0184 ## $a2 = 00000184 -/* 00694 80ABC774 8C6202D0 */ lw $v0, 0x02D0($v1) ## 000002D0 -/* 00698 80ABC778 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008 -/* 0069C 80ABC77C AC6D02D0 */ sw $t5, 0x02D0($v1) ## 000002D0 -/* 006A0 80ABC780 AC5E0000 */ sw $s8, 0x0000($v0) ## 00000000 -/* 006A4 80ABC784 8FAE0104 */ lw $t6, 0x0104($sp) -/* 006A8 80ABC788 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000 -/* 006AC 80ABC78C 0C0346A2 */ jal Matrix_NewMtx -/* 006B0 80ABC790 8DC40000 */ lw $a0, 0x0000($t6) ## 00000000 -/* 006B4 80ABC794 AE020004 */ sw $v0, 0x0004($s0) ## 00000004 -/* 006B8 80ABC798 8FB800A8 */ lw $t8, 0x00A8($sp) -/* 006BC 80ABC79C 3C0FDE00 */ lui $t7, 0xDE00 ## $t7 = DE000000 -/* 006C0 80ABC7A0 8F0202D0 */ lw $v0, 0x02D0($t8) ## 000002D0 -/* 006C4 80ABC7A4 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 006C8 80ABC7A8 AF1902D0 */ sw $t9, 0x02D0($t8) ## 000002D0 -/* 006CC 80ABC7AC AC520004 */ sw $s2, 0x0004($v0) ## 00000004 -/* 006D0 80ABC7B0 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000 -/* 006D4 80ABC7B4 8FA80100 */ lw $t0, 0x0100($sp) -/* 006D8 80ABC7B8 9105016C */ lbu $a1, 0x016C($t0) ## 0000016C -/* 006DC 80ABC7BC 26B50001 */ addiu $s5, $s5, 0x0001 ## $s5 = 00000003 -.L80ABC7C0: -/* 006E0 80ABC7C0 02A5082A */ slt $at, $s5, $a1 -/* 006E4 80ABC7C4 1420FFCB */ bne $at, $zero, .L80ABC6F4 -/* 006E8 80ABC7C8 2631005C */ addiu $s1, $s1, 0x005C ## $s1 = 00000228 -/* 006EC 80ABC7CC 8FA90104 */ lw $t1, 0x0104($sp) -.L80ABC7D0: -/* 006F0 80ABC7D0 3C0680AC */ lui $a2, %hi(D_80ABCAF0) ## $a2 = 80AC0000 -/* 006F4 80ABC7D4 24C6CAF0 */ addiu $a2, $a2, %lo(D_80ABCAF0) ## $a2 = 80ABCAF0 -/* 006F8 80ABC7D8 27A40098 */ addiu $a0, $sp, 0x0098 ## $a0 = FFFFFF98 -/* 006FC 80ABC7DC 2407018B */ addiu $a3, $zero, 0x018B ## $a3 = 0000018B -/* 00700 80ABC7E0 0C031AD5 */ jal Graph_CloseDisps -/* 00704 80ABC7E4 8D250000 */ lw $a1, 0x0000($t1) ## 00000000 -/* 00708 80ABC7E8 8FBF004C */ lw $ra, 0x004C($sp) -/* 0070C 80ABC7EC D7B40020 */ ldc1 $f20, 0x0020($sp) -/* 00710 80ABC7F0 8FB00028 */ lw $s0, 0x0028($sp) -/* 00714 80ABC7F4 8FB1002C */ lw $s1, 0x002C($sp) -/* 00718 80ABC7F8 8FB20030 */ lw $s2, 0x0030($sp) -/* 0071C 80ABC7FC 8FB30034 */ lw $s3, 0x0034($sp) -/* 00720 80ABC800 8FB40038 */ lw $s4, 0x0038($sp) -/* 00724 80ABC804 8FB5003C */ lw $s5, 0x003C($sp) -/* 00728 80ABC808 8FB60040 */ lw $s6, 0x0040($sp) -/* 0072C 80ABC80C 8FB70044 */ lw $s7, 0x0044($sp) -/* 00730 80ABC810 8FBE0048 */ lw $s8, 0x0048($sp) -/* 00734 80ABC814 03E00008 */ jr $ra -/* 00738 80ABC818 27BD0100 */ addiu $sp, $sp, 0x0100 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC9D0.s b/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC9D0.s deleted file mode 100644 index 7d09b9a73a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC9D0.s +++ /dev/null @@ -1,9 +0,0 @@ -glabel func_80ABC9D0 -/* 008F0 80ABC9D0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 008F4 80ABC9D4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 008F8 80ABC9D8 0C2AF098 */ jal func_80ABC260 -/* 008FC 80ABC9DC 00000000 */ nop -/* 00900 80ABC9E0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00904 80ABC9E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00908 80ABC9E8 03E00008 */ jr $ra -/* 0090C 80ABC9EC 00000000 */ nop diff --git a/data/overlays/actors/z_en_nwc.data.s b/data/overlays/actors/z_en_nwc.data.s deleted file mode 100644 index 828ac1d3d5..0000000000 --- a/data/overlays/actors/z_en_nwc.data.s +++ /dev/null @@ -1,26 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .data - -.balign 16 - -glabel En_Nwc_InitVars - .word 0x01350600, 0x00000030, 0x01240000, 0x00000734 -.word EnNwc_Init -.word EnNwc_Destroy -.word EnNwc_Update -.word EnNwc_Draw -glabel D_80ABCA80 - .word 0x01000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x000A0064 -glabel D_80ABCAA4 - .word 0x03000939, 0x00000000, 0x00000010, 0x00000000 -glabel D_80ABCAB4 - .word func_80ABC0E8 -.word func_80ABC1F4 -.word 0x00000000 - diff --git a/data/overlays/actors/z_en_nwc.reloc.s b/data/overlays/actors/z_en_nwc.reloc.s deleted file mode 100644 index 9f2a328054..0000000000 --- a/data/overlays/actors/z_en_nwc.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_80ABCB10 - .incbin "baserom/ovl_En_Nwc", 0xA30, 0x000000A0 diff --git a/spec b/spec index c08fa6c5e9..7c34d74db7 100644 --- a/spec +++ b/spec @@ -2792,8 +2792,7 @@ endseg beginseg name "ovl_En_Nwc" include "build/src/overlays/actors/ovl_En_Nwc/z_en_nwc.o" - include "build/data/overlays/actors/z_en_nwc.data.o" - include "build/data/overlays/actors/z_en_nwc.reloc.o" + include "build/src/overlays/actors/ovl_En_Nwc/ovl_En_Nwc_reloc.o" endseg beginseg diff --git a/src/code/z_sram.c b/src/code/z_sram.c index 1145bd9b36..f0a61bb5d8 100644 --- a/src/code/z_sram.c +++ b/src/code/z_sram.c @@ -221,20 +221,23 @@ ItemEquips sDebugSaveEquips = { 0x1122, // equipment }; -Inventory sDebugSaveInventory = { - { ITEM_STICK, ITEM_NUT, ITEM_BOMB, ITEM_BOW, ITEM_ARROW_FIRE, ITEM_DINS_FIRE, - ITEM_SLINGSHOT, ITEM_OCARINA_FAIRY, ITEM_BOMBCHU, ITEM_HOOKSHOT, ITEM_ARROW_ICE, ITEM_FARORES_WIND, - ITEM_BOOMERANG, ITEM_LENS, ITEM_BEAN, ITEM_HAMMER, ITEM_ARROW_LIGHT, ITEM_NAYRUS_LOVE, - ITEM_BOTTLE, ITEM_POTION_RED, ITEM_POTION_GREEN, ITEM_POTION_BLUE, ITEM_POCKET_EGG, ITEM_WEIRD_EGG }, // items - { 50, 50, 10, 30, 1, 1, 30, 1, 50, 1, 1, 1, 1, 1, 1, 1 }, // ammo - 0x7777, // equipment - 0x125249, // upgrades - 0x1E3FFFF, // questItems - { 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // dungeonItems - { 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 }, // dungeonKeys - 0, // defenseHearts - 0, // gsTokens -}; +Inventory + sDebugSaveInventory = + { + { ITEM_STICK, ITEM_NUT, ITEM_BOMB, ITEM_BOW, ITEM_ARROW_FIRE, + ITEM_DINS_FIRE, ITEM_SLINGSHOT, ITEM_OCARINA_FAIRY, ITEM_BOMBCHU, ITEM_HOOKSHOT, + ITEM_ARROW_ICE, ITEM_FARORES_WIND, ITEM_BOOMERANG, ITEM_LENS, ITEM_BEAN, + ITEM_HAMMER, ITEM_ARROW_LIGHT, ITEM_NAYRUS_LOVE, ITEM_BOTTLE, ITEM_POTION_RED, + ITEM_POTION_GREEN, ITEM_POTION_BLUE, ITEM_POCKET_EGG, ITEM_WEIRD_EGG }, // items + { 50, 50, 10, 30, 1, 1, 30, 1, 50, 1, 1, 1, 1, 1, 1, 1 }, // ammo + 0x7777, // equipment + 0x125249, // upgrades + 0x1E3FFFF, // questItems + { 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // dungeonItems + { 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 }, // dungeonKeys + 0, // defenseHearts + 0, // gsTokens + }; u16 sDebugSaveChecksum = 0; diff --git a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c index c0455d3d6c..392dd4bee2 100644 --- a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c +++ b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c @@ -1,3 +1,9 @@ +/* + * File: z_en_nwc.c + * Overlay: ovl_En_Nwc + * Description: Cluster of cucco chicks. Unfinished. + */ + #include "z_en_nwc.h" #define FLAGS 0x00000030 @@ -9,7 +15,28 @@ void EnNwc_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnNwc_Update(Actor* thisx, GlobalContext* globalCtx); void EnNwc_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void EnNwc_SetUpdate(EnNwc* this, EnNwcUpdateFunc updateFunc); +void EnNwc_ChickNoop(EnNwcChick* chick, EnNwc* this, GlobalContext* globalCtx); +void EnNwc_ChickBgCheck(EnNwcChick* chick, GlobalContext* globalCtx); +void EnNwc_ChickFall(EnNwcChick* chick, EnNwc* this, GlobalContext* globalCtx); +void EnNwc_UpdateChicks(EnNwc* this, GlobalContext* globalCtx); +void EnNwc_DrawChicks(EnNwc* this, GlobalContext* globalCtx); +void EnNwc_Idle(EnNwc* this, GlobalContext* globalCtx); + +#define CHICK_BG_FLOOR (1 << 0) +#define CHICK_BG_WALL (1 << 1) + +typedef enum { CHICK_NONE, CHICK_NORMAL } ChickTypes; + +extern Gfx D_06000840[]; +extern Gfx D_060008B0[]; +extern Gfx D_06000BF0[]; +extern Gfx D_06000C68[]; +extern Gfx D_06000C88[]; +extern Gfx D_06000CE0[]; +extern Gfx D_06000D10[]; +extern Gfx D_06000D50[]; + const ActorInit En_Nwc_InitVars = { ACTOR_EN_NWC, ACTORTYPE_PROP, @@ -21,25 +48,201 @@ const ActorInit En_Nwc_InitVars = { (ActorFunc)EnNwc_Update, (ActorFunc)EnNwc_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E0.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0E8.s") +static ColliderJntSphItemInit sJntSphElementInit = { + { 0x01, { 0x00000000, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x01, 0x00 }, + { 0, { { 0, 0, 0 }, 10 }, 100 }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC0F8.s") +static ColliderJntSphInit_Set3 sJntSphInit = { + { COLTYPE_UNK3, 0x00, 0x09, 0x39, COLSHAPE_JNTSPH }, + 16, + NULL, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC1F4.s") +void EnNwc_SetUpdate(EnNwc* this, EnNwcUpdateFunc updateFunc) { + this->updateFunc = updateFunc; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC260.s") +void EnNwc_ChickNoop(EnNwcChick* chick, EnNwc* this, GlobalContext* globalCtx) { +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC460.s") +void EnNwc_ChickBgCheck(EnNwcChick* chick, GlobalContext* globalCtx) { + CollisionPoly* outPoly; + s32 bgId; + Vec3f outPos; + f32 dy; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Init.s") + chick->bgFlags &= ~CHICK_BG_WALL & ~CHICK_BG_FLOOR; + outPos.x = chick->pos.x; + outPos.y = chick->pos.y; + outPos.z = chick->pos.z; + if (func_8003D464(&globalCtx->colCtx, &outPos, &chick->pos, &chick->lastPos, 10.0f, &chick->floorPoly, 20.0f)) { + chick->bgFlags |= CHICK_BG_WALL; + } + //! @bug The use of outPos here is totally wrong. Even if it didn't get overwritten + // by the wall check, it should add an offset to the y-value so the raycast + // doesn't go through the floor and cause the chicks to ignore all floors. + chick->floorY = func_8003C940(&globalCtx->colCtx, &outPoly, &bgId, &outPos); + dy = chick->floorY - chick->pos.y; + if ((0.0f <= dy) && (dy < 40.0f)) { + chick->pos.y = chick->floorY; + chick->bgFlags |= CHICK_BG_FLOOR; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Destroy.s") +void EnNwc_ChickFall(EnNwcChick* chick, EnNwc* this, GlobalContext* globalCtx) { + chick->velY -= 0.1f; + if (chick->velY < -10.0f) { + chick->velY = -10.0f; + } + chick->pos.y += chick->velY; + EnNwc_ChickBgCheck(chick, globalCtx); + if (chick) {} // Needed for matching. Possibly from remnant of unfinished code? +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/func_80ABC9D0.s") +void EnNwc_UpdateChicks(EnNwc* this, GlobalContext* globalCtx) { + static EnNwcChickFunc chickActionFuncs[] = { EnNwc_ChickNoop, EnNwc_ChickFall }; + EnNwcChick* chick = this->chicks; + ColliderJntSphItem* element = this->collider.list; + Vec3f prevChickPos; + s32 i; + f32 test; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Update.s") + prevChickPos.y = 99999.9f; + for (i = 0; i < this->count; i++, prevChickPos = chick->pos, chick++, element++) { + Math_Vec3f_Copy(&chick->lastPos, &chick->pos); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Nwc/EnNwc_Draw.s") + chickActionFuncs[chick->type](chick, this, globalCtx); + + element->dim.worldSphere.center.x = chick->pos.x; + element->dim.worldSphere.center.y = chick->pos.y; + element->dim.worldSphere.center.z = chick->pos.z; + + test = chick->pos.y - prevChickPos.y; + if (fabsf(test) < 10.0f) { + f32 dx = chick->pos.x - prevChickPos.x; + f32 dz = chick->pos.z - prevChickPos.z; + + test = SQ(dx) + SQ(dz); + if (test < SQ(10.0f)) { + if (test != 0.0f) { + chick->pos.x += dx / sqrtf(test); + chick->pos.z += dz / sqrtf(test); + } else { + chick->pos.x += 1.0f; + chick->pos.z += 1.0f; + } + } + } + } +} + +void EnNwc_DrawChicks(EnNwc* this, GlobalContext* globalCtx) { + s32 i; + Gfx* dList1; + Gfx* dList2; + Gfx* dList3; + MtxF floorMat; + EnNwcChick* chick; + + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_nwc.c", 316); + func_80093C80(globalCtx); + + dList1 = POLY_XLU_DISP; + dList2 = dList1 + 3 * this->count + 1; + dList3 = dList2 + 2 * this->count + 1; + + gSPDisplayList(dList1++, D_06000840); + gSPDisplayList(dList2++, D_06000BF0); + gSPDisplayList(dList3++, D_06000C88); + + chick = this->chicks; + for (i = 0; i < this->count; i++, chick++) { + if (chick->type != CHICK_NONE) { + Mtx* mtx; + + func_800D1694(chick->pos.x, chick->pos.y + chick->height, chick->pos.z, &chick->rot); + Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY); + mtx = Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_nwc.c", 346); + gDPSetEnvColor(dList1++, 0, 100, 255, 255); + gSPMatrix(dList1++, mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(dList1++, D_060008B0); + gSPMatrix(dList2++, mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(dList2++, D_06000C68); + gSPMatrix(dList3++, mtx, G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(dList3++, D_06000CE0); + } + } + + chick = this->chicks; + POLY_XLU_DISP = dList3; + func_80094044(globalCtx->state.gfxCtx); + gSPDisplayList(POLY_XLU_DISP++, D_06000D10); + + for (i = 0; i < this->count; i++, chick++) { + if ((chick->type != CHICK_NONE) && (chick->floorPoly != NULL)) { + func_80038A28(chick->floorPoly, chick->pos.x, chick->floorY, chick->pos.z, &floorMat); + Matrix_Put(&floorMat); + Matrix_RotateY(chick->rot.y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_Scale(1.0f, 1.0f, 1.0f, MTXMODE_APPLY); + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_nwc.c", 388), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(POLY_XLU_DISP++, D_06000D50); + } + } + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_nwc.c", 395); +} + +void EnNwc_Init(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + EnNwc* this = THIS; + ColliderJntSphItemInit elementInits[16]; + ColliderJntSphItemInit* element; + EnNwcChick* chick; + s32 i; + + element = sJntSphInit.list = elementInits; + for (i = 0; i < 16; i++, element++) { + *element = sJntSphElementInit; + } + + Collider_InitJntSph(globalCtx, &this->collider); + Collider_SetJntSph_Set3(globalCtx, &this->collider, &this->actor, &sJntSphInit); + this->count = 16; + chick = this->chicks; + for (i = 0; i < this->count; i++, chick++) { + chick->type = CHICK_NORMAL; + chick->pos.x = thisx->posRot.pos.x + ((Math_Rand_ZeroOne() * 100.0f) - 50.0f); + chick->pos.y = thisx->posRot.pos.y + 20.0f; + chick->pos.z = thisx->posRot.pos.z + ((Math_Rand_ZeroOne() * 100.0f) - 50.0f); + chick->height = 5; + } + EnNwc_SetUpdate(this, EnNwc_Idle); +} + +void EnNwc_Destroy(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + EnNwc* this = THIS; + + Collider_FreeJntSph(globalCtx, &this->collider); +} + +void EnNwc_Idle(EnNwc* this, GlobalContext* globalCtx) { + EnNwc_UpdateChicks(this, globalCtx); +} + +void EnNwc_Update(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + EnNwc* this = THIS; + + this->updateFunc(this, globalCtx); + CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); +} + +void EnNwc_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + EnNwc* this = THIS; + + EnNwc_DrawChicks(this, globalCtx); +} diff --git a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.h b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.h index 5d6871a3a4..f10974f79a 100644 --- a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.h +++ b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.h @@ -5,10 +5,32 @@ #include "global.h" struct EnNwc; +struct EnNwcChick; + +typedef void (*EnNwcUpdateFunc)(struct EnNwc*, GlobalContext*); +typedef void (*EnNwcChickFunc)(struct EnNwcChick*, struct EnNwc*, GlobalContext*); + +typedef struct EnNwcChick { + /* 0x00 */ s8 type; + /* 0x01 */ u8 bgFlags; + /* 0x04 */ f32 floorY; + /* 0x08 */ Vec3f pos; + /* 0x14 */ char unk_14[8]; + /* 0x1C */ Vec3f lastPos; + /* 0x28 */ char unk_28[4]; + /* 0x2C */ f32 velY; + /* 0x30 */ Vec3s rot; + /* 0x36 */ u16 height; + /* 0x38 */ CollisionPoly* floorPoly; + /* 0x44 */ char unk_3C[0x20]; +} EnNwcChick; // size = 0x5C typedef struct EnNwc { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x5E8]; + /* 0x014C */ ColliderJntSph collider; + /* 0x016C */ u8 count; + /* 0x0170 */ EnNwcChick chicks[16]; + /* 0x0730 */ EnNwcUpdateFunc updateFunc; } EnNwc; // size = 0x0734 extern const ActorInit En_Nwc_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index 072fe0bc6d..e05c5b8cbd 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -1127,6 +1127,16 @@ D_060023B0 = 0x060023B0; D_06002428 = 0x06002428; D_06002530 = 0x06002530; +// z_en_nwc +D_06000840 = 0x06000840; +D_060008B0 = 0x060008B0; +D_06000BF0 = 0x06000BF0; +D_06000C68 = 0x06000C68; +D_06000C88 = 0x06000C88; +D_06000CE0 = 0x06000CE0; +D_06000D10 = 0x06000D10; +D_06000D50 = 0x06000D50; + // z_eff_ss_blast D_0401A0B0 = 0x0401A0B0;