From 695bc37be4276561da1ce86f24cbbb3e5d8f091c Mon Sep 17 00:00:00 2001 From: petrie911 <69443847+petrie911@users.noreply.github.com> Date: Tue, 29 Dec 2020 12:11:11 -0600 Subject: [PATCH] Bg_Gnd_Iceblock and Bg_Ice_Objects (sliding ice blocks) (#534) * Darkmeiro decompilation Bg_Gnd_Darkmeiro decompiled, matched, and documented. * give this a shot * fix conflict * one more try * could be useful * whoops * ZAP2 stuff * ZAP why * ZAP again * a good start * done * Log * formatting * thisx Co-authored-by: petrie911 --- .../BgGndIceblock_Destroy.s | 14 - .../ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s | 14 - .../ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s | 113 ------ .../BgGndIceblock_Update.s | 10 - .../ovl_Bg_Gnd_Iceblock/func_80879C04.s | 76 ---- .../ovl_Bg_Gnd_Iceblock/func_80879D10.s | 18 - .../ovl_Bg_Gnd_Iceblock/func_80879D4C.s | 51 --- .../ovl_Bg_Gnd_Iceblock/func_80879D98.s | 300 --------------- .../ovl_Bg_Gnd_Iceblock/func_8087A0C8.s | 50 --- .../ovl_Bg_Gnd_Iceblock/func_8087A184.s | 56 --- .../ovl_Bg_Gnd_Iceblock/func_8087A248.s | 50 --- .../ovl_Bg_Gnd_Iceblock/func_8087A300.s | 43 --- .../ovl_Bg_Gnd_Iceblock/func_8087A39C.s | 232 ------------ .../ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s | 14 - .../ovl_Bg_Ice_Objects/BgIceObjects_Draw.s | 16 - .../ovl_Bg_Ice_Objects/BgIceObjects_Init.s | 40 -- .../ovl_Bg_Ice_Objects/BgIceObjects_Update.s | 10 - .../actors/ovl_Bg_Ice_Objects/func_8088F8C8.s | 349 ------------------ .../actors/ovl_Bg_Ice_Objects/func_8088FD48.s | 119 ------ .../actors/ovl_Bg_Ice_Objects/func_8088FED0.s | 69 ---- .../actors/ovl_Bg_Ice_Objects/func_8088FFD0.s | 260 ------------- .../actors/ovl_Bg_Ice_Objects/func_80890360.s | 44 --- .../actors/ovl_Bg_Ice_Objects/func_808903FC.s | 16 - data/overlays/actors/z_bg_gnd_iceblock.bss.s | 18 - data/overlays/actors/z_bg_gnd_iceblock.data.s | 30 -- .../overlays/actors/z_bg_gnd_iceblock.reloc.s | 13 - data/overlays/actors/z_bg_ice_objects.data.s | 70 ---- data/overlays/actors/z_bg_ice_objects.reloc.s | 13 - include/macros.h | 1 + spec | 7 +- .../ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.c | 349 ++++++++++++++++-- .../ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.h | 2 +- .../ovl_Bg_Ice_Objects/z_bg_ice_objects.c | 224 ++++++++++- .../ovl_Bg_Ice_Objects/z_bg_ice_objects.h | 7 +- 34 files changed, 544 insertions(+), 2154 deletions(-) delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879C04.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D10.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D4C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D98.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A0C8.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A184.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A248.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A300.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A39C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088F8C8.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FD48.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FED0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FFD0.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_80890360.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_808903FC.s delete mode 100644 data/overlays/actors/z_bg_gnd_iceblock.bss.s delete mode 100644 data/overlays/actors/z_bg_gnd_iceblock.data.s delete mode 100644 data/overlays/actors/z_bg_gnd_iceblock.reloc.s delete mode 100644 data/overlays/actors/z_bg_ice_objects.data.s delete mode 100644 data/overlays/actors/z_bg_ice_objects.reloc.s diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Destroy.s deleted file mode 100644 index 1679cce438..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Destroy.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel BgGndIceblock_Destroy -/* 00134 80879BD4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00138 80879BD8 AFA40018 */ sw $a0, 0x0018($sp) -/* 0013C 80879BDC 8FAE0018 */ lw $t6, 0x0018($sp) -/* 00140 80879BE0 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00144 80879BE4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00148 80879BE8 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810 -/* 0014C 80879BEC 0C00FB56 */ jal DynaPolyInfo_Free - ## DynaPolyInfo_delReserve -/* 00150 80879BF0 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C -/* 00154 80879BF4 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00158 80879BF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0015C 80879BFC 03E00008 */ jr $ra -/* 00160 80879C00 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s deleted file mode 100644 index 48be41a8ee..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel BgGndIceblock_Draw -/* 00C50 8087A6F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C54 8087A6F4 AFA40018 */ sw $a0, 0x0018($sp) -/* 00C58 8087A6F8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00C5C 8087A6FC AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C60 8087A700 3C050600 */ lui $a1, %hi(D_06004420) ## $a1 = 06000000 -/* 00C64 8087A704 0C00D498 */ jal Gfx_DrawDListOpa - -/* 00C68 8087A708 24A54420 */ addiu $a1, $a1, %lo(D_06004420) ## $a1 = 06004420 -/* 00C6C 8087A70C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00C70 8087A710 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00C74 8087A714 03E00008 */ jr $ra -/* 00C78 8087A718 00000000 */ nop -/* 00C7C 8087A71C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s deleted file mode 100644 index 34b63a7c8a..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s +++ /dev/null @@ -1,113 +0,0 @@ -.rdata -glabel D_8087A790 - .asciz "../z_bg_gnd_iceblock.c" - .balign 4 - -glabel D_8087A7A8 - .asciz "thisx->world.position.x = %f\n" - .balign 4 - -glabel D_8087A7C8 - .asciz "0" - .balign 4 - -glabel D_8087A7CC - .asciz "../z_bg_gnd_iceblock.c" - .balign 4 - -.late_rodata -glabel D_8087A7E4 - .float 2792.0 - -glabel D_8087A7E8 - .float 3032.0 - -.text -glabel BgGndIceblock_Init -/* 00000 80879AA0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00004 80879AA4 AFA50034 */ sw $a1, 0x0034($sp) -/* 00008 80879AA8 AFBF001C */ sw $ra, 0x001C($sp) -/* 0000C 80879AAC AFB00018 */ sw $s0, 0x0018($sp) -/* 00010 80879AB0 3C058088 */ lui $a1, %hi(D_8087A754) ## $a1 = 80880000 -/* 00014 80879AB4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00018 80879AB8 AFA00024 */ sw $zero, 0x0024($sp) -/* 0001C 80879ABC 0C01E037 */ jal Actor_ProcessInitChain - -/* 00020 80879AC0 24A5A754 */ addiu $a1, $a1, %lo(D_8087A754) ## $a1 = 8087A754 -/* 00024 80879AC4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00028 80879AC8 0C010D20 */ jal DynaPolyInfo_SetActorMove - -/* 0002C 80879ACC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00030 80879AD0 3C040600 */ lui $a0, %hi(D_06004618) ## $a0 = 06000000 -/* 00034 80879AD4 24844618 */ addiu $a0, $a0, %lo(D_06004618) ## $a0 = 06004618 -/* 00038 80879AD8 0C010620 */ jal DynaPolyInfo_Alloc - -/* 0003C 80879ADC 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4 -/* 00040 80879AE0 8E0F0008 */ lw $t7, 0x0008($s0) ## 00000008 -/* 00044 80879AE4 8FA40034 */ lw $a0, 0x0034($sp) -/* 00048 80879AE8 8E0E000C */ lw $t6, 0x000C($s0) ## 0000000C -/* 0004C 80879AEC AE0F0168 */ sw $t7, 0x0168($s0) ## 00000168 -/* 00050 80879AF0 8E0F0010 */ lw $t7, 0x0010($s0) ## 00000010 -/* 00054 80879AF4 3C188088 */ lui $t8, %hi(func_8087A0C8) ## $t8 = 80880000 -/* 00058 80879AF8 2718A0C8 */ addiu $t8, $t8, %lo(func_8087A0C8) ## $t8 = 8087A0C8 -/* 0005C 80879AFC AE180164 */ sw $t8, 0x0164($s0) ## 00000164 -/* 00060 80879B00 AE0E016C */ sw $t6, 0x016C($s0) ## 0000016C -/* 00064 80879B04 AE0F0170 */ sw $t7, 0x0170($s0) ## 00000170 -/* 00068 80879B08 8FA70024 */ lw $a3, 0x0024($sp) -/* 0006C 80879B0C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00070 80879B10 0C00FA9D */ jal DynaPolyInfo_RegisterActor - ## DynaPolyInfo_setActor -/* 00074 80879B14 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810 -/* 00078 80879B18 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C -/* 0007C 80879B1C 3C018088 */ lui $at, %hi(D_8087A7E4) ## $at = 80880000 -/* 00080 80879B20 C424A7E4 */ lwc1 $f4, %lo(D_8087A7E4)($at) -/* 00084 80879B24 C6000024 */ lwc1 $f0, 0x0024($s0) ## 00000024 -/* 00088 80879B28 24190007 */ addiu $t9, $zero, 0x0007 ## $t9 = 00000007 -/* 0008C 80879B2C 3C018088 */ lui $at, %hi(D_8087A7E8) ## $at = 80880000 -/* 00090 80879B30 46002032 */ c.eq.s $f4, $f0 -/* 00094 80879B34 00000000 */ nop -/* 00098 80879B38 45000005 */ bc1f .L80879B50 -/* 0009C 80879B3C 00000000 */ nop -/* 000A0 80879B40 A600001C */ sh $zero, 0x001C($s0) ## 0000001C -/* 000A4 80879B44 3C018088 */ lui $at, %hi(D_8087AC40) ## $at = 80880000 -/* 000A8 80879B48 1000001D */ beq $zero, $zero, .L80879BC0 -/* 000AC 80879B4C A039AC40 */ sb $t9, %lo(D_8087AC40)($at) -.L80879B50: -/* 000B0 80879B50 C426A7E8 */ lwc1 $f6, %lo(D_8087A7E8)($at) -/* 000B4 80879B54 3C048088 */ lui $a0, %hi(D_8087A790) ## $a0 = 80880000 -/* 000B8 80879B58 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 000BC 80879B5C 46003032 */ c.eq.s $f6, $f0 -/* 000C0 80879B60 3C018088 */ lui $at, %hi(D_8087AC41) ## $at = 80880000 -/* 000C4 80879B64 2409000E */ addiu $t1, $zero, 0x000E ## $t1 = 0000000E -/* 000C8 80879B68 2484A790 */ addiu $a0, $a0, %lo(D_8087A790) ## $a0 = 8087A790 -/* 000CC 80879B6C 45000004 */ bc1f .L80879B80 -/* 000D0 80879B70 00000000 */ nop -/* 000D4 80879B74 A608001C */ sh $t0, 0x001C($s0) ## 0000001C -/* 000D8 80879B78 10000011 */ beq $zero, $zero, .L80879BC0 -/* 000DC 80879B7C A029AC41 */ sb $t1, %lo(D_8087AC41)($at) -.L80879B80: -/* 000E0 80879B80 0C000B84 */ jal LogUtils_LogThreadId - -/* 000E4 80879B84 2405008A */ addiu $a1, $zero, 0x008A ## $a1 = 0000008A -/* 000E8 80879B88 C6080024 */ lwc1 $f8, 0x0024($s0) ## 00000024 -/* 000EC 80879B8C 3C048088 */ lui $a0, %hi(D_8087A7A8) ## $a0 = 80880000 -/* 000F0 80879B90 2484A7A8 */ addiu $a0, $a0, %lo(D_8087A7A8) ## $a0 = 8087A7A8 -/* 000F4 80879B94 460042A1 */ cvt.d.s $f10, $f8 -/* 000F8 80879B98 44075000 */ mfc1 $a3, $f10 -/* 000FC 80879B9C 44065800 */ mfc1 $a2, $f11 -/* 00100 80879BA0 0C00084C */ jal osSyncPrintf - -/* 00104 80879BA4 00000000 */ nop -/* 00108 80879BA8 3C048088 */ lui $a0, %hi(D_8087A7C8) ## $a0 = 80880000 -/* 0010C 80879BAC 3C058088 */ lui $a1, %hi(D_8087A7CC) ## $a1 = 80880000 -/* 00110 80879BB0 24A5A7CC */ addiu $a1, $a1, %lo(D_8087A7CC) ## $a1 = 8087A7CC -/* 00114 80879BB4 2484A7C8 */ addiu $a0, $a0, %lo(D_8087A7C8) ## $a0 = 8087A7C8 -/* 00118 80879BB8 0C0007FC */ jal __assert - -/* 0011C 80879BBC 2406008B */ addiu $a2, $zero, 0x008B ## $a2 = 0000008B -.L80879BC0: -/* 00120 80879BC0 8FBF001C */ lw $ra, 0x001C($sp) -/* 00124 80879BC4 8FB00018 */ lw $s0, 0x0018($sp) -/* 00128 80879BC8 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 0012C 80879BCC 03E00008 */ jr $ra -/* 00130 80879BD0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Update.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Update.s deleted file mode 100644 index ba6f8632e5..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Update.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel BgGndIceblock_Update -/* 00C2C 8087A6CC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C30 8087A6D0 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C34 8087A6D4 8C990164 */ lw $t9, 0x0164($a0) ## 00000164 -/* 00C38 8087A6D8 0320F809 */ jalr $ra, $t9 -/* 00C3C 8087A6DC 00000000 */ nop -/* 00C40 8087A6E0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00C44 8087A6E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00C48 8087A6E8 03E00008 */ jr $ra -/* 00C4C 8087A6EC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879C04.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879C04.s deleted file mode 100644 index 72ce05ced2..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879C04.s +++ /dev/null @@ -1,76 +0,0 @@ -.late_rodata - -glabel D_8087A7EC - .float 2552.0 - -.text -glabel func_80879C04 -/* 00164 80879C04 3C0E8088 */ lui $t6, %hi(D_8087A758) ## $t6 = 80880000 -/* 00168 80879C08 25CEA758 */ addiu $t6, $t6, %lo(D_8087A758) ## $t6 = 8087A758 -/* 0016C 80879C0C 8DD80000 */ lw $t8, 0x0000($t6) ## 8087A758 -/* 00170 80879C10 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 00174 80879C14 27A2001C */ addiu $v0, $sp, 0x001C ## $v0 = FFFFFFE4 -/* 00178 80879C18 AC580000 */ sw $t8, 0x0000($v0) ## FFFFFFE4 -/* 0017C 80879C1C 8DCF0004 */ lw $t7, 0x0004($t6) ## 8087A75C -/* 00180 80879C20 3C198088 */ lui $t9, %hi(D_8087A770) ## $t9 = 80880000 -/* 00184 80879C24 2739A770 */ addiu $t9, $t9, %lo(D_8087A770) ## $t9 = 8087A770 -/* 00188 80879C28 AC4F0004 */ sw $t7, 0x0004($v0) ## FFFFFFE8 -/* 0018C 80879C2C 8DD80008 */ lw $t8, 0x0008($t6) ## 8087A760 -/* 00190 80879C30 27A30004 */ addiu $v1, $sp, 0x0004 ## $v1 = FFFFFFCC -/* 00194 80879C34 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000 -/* 00198 80879C38 AC580008 */ sw $t8, 0x0008($v0) ## FFFFFFEC -/* 0019C 80879C3C 8DCF000C */ lw $t7, 0x000C($t6) ## 8087A764 -/* 001A0 80879C40 44810000 */ mtc1 $at, $f0 ## $f0 = 120.00 -/* 001A4 80879C44 3C018088 */ lui $at, %hi(D_8087AC40) ## $at = 80880000 -/* 001A8 80879C48 AC4F000C */ sw $t7, 0x000C($v0) ## FFFFFFF0 -/* 001AC 80879C4C 8DD80010 */ lw $t8, 0x0010($t6) ## 8087A768 -/* 001B0 80879C50 00455821 */ addu $t3, $v0, $a1 -/* 001B4 80879C54 AC580010 */ sw $t8, 0x0010($v0) ## FFFFFFF4 -/* 001B8 80879C58 95D80014 */ lhu $t8, 0x0014($t6) ## 8087A76C -/* 001BC 80879C5C A4580014 */ sh $t8, 0x0014($v0) ## FFFFFFF8 -/* 001C0 80879C60 8F290000 */ lw $t1, 0x0000($t9) ## 8087A770 -/* 001C4 80879C64 AC690000 */ sw $t1, 0x0000($v1) ## FFFFFFCC -/* 001C8 80879C68 8F280004 */ lw $t0, 0x0004($t9) ## 8087A774 -/* 001CC 80879C6C AC680004 */ sw $t0, 0x0004($v1) ## FFFFFFD0 -/* 001D0 80879C70 8F290008 */ lw $t1, 0x0008($t9) ## 8087A778 -/* 001D4 80879C74 AC690008 */ sw $t1, 0x0008($v1) ## FFFFFFD4 -/* 001D8 80879C78 8F28000C */ lw $t0, 0x000C($t9) ## 8087A77C -/* 001DC 80879C7C AC68000C */ sw $t0, 0x000C($v1) ## FFFFFFD8 -/* 001E0 80879C80 8F290010 */ lw $t1, 0x0010($t9) ## 8087A780 -/* 001E4 80879C84 AC690010 */ sw $t1, 0x0010($v1) ## FFFFFFDC -/* 001E8 80879C88 97290014 */ lhu $t1, 0x0014($t9) ## 8087A784 -/* 001EC 80879C8C A4690014 */ sh $t1, 0x0014($v1) ## FFFFFFE0 -/* 001F0 80879C90 848A001C */ lh $t2, 0x001C($a0) ## 0000001C -/* 001F4 80879C94 002A0821 */ addu $at, $at, $t2 -/* 001F8 80879C98 A025AC40 */ sb $a1, %lo(D_8087AC40)($at) -/* 001FC 80879C9C 916C0000 */ lbu $t4, 0x0000($t3) ## 00000000 -/* 00200 80879CA0 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000 -/* 00204 80879CA4 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00 -/* 00208 80879CA8 05810004 */ bgez $t4, .L80879CBC -/* 0020C 80879CAC 468021A0 */ cvt.s.w $f6, $f4 -/* 00210 80879CB0 44814000 */ mtc1 $at, $f8 ## $f8 = 4294967296.00 -/* 00214 80879CB4 00000000 */ nop -/* 00218 80879CB8 46083180 */ add.s $f6, $f6, $f8 -.L80879CBC: -/* 0021C 80879CBC 46003282 */ mul.s $f10, $f6, $f0 -/* 00220 80879CC0 3C018088 */ lui $at, %hi(D_8087A7EC) ## $at = 80880000 -/* 00224 80879CC4 C430A7EC */ lwc1 $f16, %lo(D_8087A7EC)($at) -/* 00228 80879CC8 00656821 */ addu $t5, $v1, $a1 -/* 0022C 80879CCC 3C01C407 */ lui $at, 0xC407 ## $at = C4070000 -/* 00230 80879CD0 44812000 */ mtc1 $at, $f4 ## $f4 = -540.00 -/* 00234 80879CD4 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000 -/* 00238 80879CD8 46105480 */ add.s $f18, $f10, $f16 -/* 0023C 80879CDC E4920168 */ swc1 $f18, 0x0168($a0) ## 00000168 -/* 00240 80879CE0 91AE0000 */ lbu $t6, 0x0000($t5) ## 00000000 -/* 00244 80879CE4 448E4000 */ mtc1 $t6, $f8 ## $f8 = -0.00 -/* 00248 80879CE8 05C10004 */ bgez $t6, .L80879CFC -/* 0024C 80879CEC 468041A0 */ cvt.s.w $f6, $f8 -/* 00250 80879CF0 44815000 */ mtc1 $at, $f10 ## $f10 = 4294967296.00 -/* 00254 80879CF4 00000000 */ nop -/* 00258 80879CF8 460A3180 */ add.s $f6, $f6, $f10 -.L80879CFC: -/* 0025C 80879CFC 46003402 */ mul.s $f16, $f6, $f0 -/* 00260 80879D00 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 00264 80879D04 46102481 */ sub.s $f18, $f4, $f16 -/* 00268 80879D08 03E00008 */ jr $ra -/* 0026C 80879D0C E4920170 */ swc1 $f18, 0x0170($a0) ## 00000170 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D10.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D10.s deleted file mode 100644 index a62a2fbd01..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D10.s +++ /dev/null @@ -1,18 +0,0 @@ -glabel func_80879D10 -/* 00270 80879D10 3C038088 */ lui $v1, %hi(D_8087AC40) ## $v1 = 80880000 -/* 00274 80879D14 3C028088 */ lui $v0, %hi(D_8087AC42) ## $v0 = 80880000 -/* 00278 80879D18 2442AC42 */ addiu $v0, $v0, %lo(D_8087AC42) ## $v0 = 8087AC42 -/* 0027C 80879D1C 2463AC40 */ addiu $v1, $v1, %lo(D_8087AC40) ## $v1 = 8087AC40 -/* 00280 80879D20 906E0000 */ lbu $t6, 0x0000($v1) ## 8087AC40 -.L80879D24: -/* 00284 80879D24 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 8087AC41 -/* 00288 80879D28 148E0003 */ bne $a0, $t6, .L80879D38 -/* 0028C 80879D2C 00000000 */ nop -/* 00290 80879D30 03E00008 */ jr $ra -/* 00294 80879D34 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80879D38: -/* 00298 80879D38 5462FFFA */ bnel $v1, $v0, .L80879D24 -/* 0029C 80879D3C 906E0000 */ lbu $t6, 0x0000($v1) ## 8087AC41 -/* 002A0 80879D40 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 002A4 80879D44 03E00008 */ jr $ra -/* 002A8 80879D48 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D4C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D4C.s deleted file mode 100644 index 1312128e72..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D4C.s +++ /dev/null @@ -1,51 +0,0 @@ -.late_rodata - -glabel jtbl_8087A7F0 - .word L80879D7C - .word L80879D7C - .word L80879D8C - .word L80879D8C - .word L80879D8C - .word L80879D7C - .word L80879D8C - .word L80879D8C - .word L80879D84 - .word L80879D8C - .word L80879D8C - .word L80879D8C - .word L80879D8C - .word L80879D7C - .word L80879D8C - .word L80879D8C - .word L80879D7C - .word L80879D8C - .word L80879D8C - .word L80879D8C - .word L80879D7C - .word L80879D7C - -.text -glabel func_80879D4C -/* 002AC 80879D4C 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 002B0 80879D50 3C0F8088 */ lui $t7, %hi(D_8087AC40) ## $t7 = 80880000 -/* 002B4 80879D54 01EE7821 */ addu $t7, $t7, $t6 -/* 002B8 80879D58 91EFAC40 */ lbu $t7, %lo(D_8087AC40)($t7) -/* 002BC 80879D5C 2DE10016 */ sltiu $at, $t7, 0x0016 -/* 002C0 80879D60 1020000A */ beq $at, $zero, .L80879D8C -/* 002C4 80879D64 000F7880 */ sll $t7, $t7, 2 -/* 002C8 80879D68 3C018088 */ lui $at, %hi(jtbl_8087A7F0) ## $at = 80880000 -/* 002CC 80879D6C 002F0821 */ addu $at, $at, $t7 -/* 002D0 80879D70 8C2FA7F0 */ lw $t7, %lo(jtbl_8087A7F0)($at) -/* 002D4 80879D74 01E00008 */ jr $t7 -/* 002D8 80879D78 00000000 */ nop -glabel L80879D7C -/* 002DC 80879D7C 03E00008 */ jr $ra -/* 002E0 80879D80 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -glabel L80879D84 -/* 002E4 80879D84 03E00008 */ jr $ra -/* 002E8 80879D88 24020002 */ addiu $v0, $zero, 0x0002 ## $v0 = 00000002 -glabel L80879D8C -.L80879D8C: -/* 002EC 80879D8C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 002F0 80879D90 03E00008 */ jr $ra -/* 002F4 80879D94 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D98.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D98.s deleted file mode 100644 index d80c00ceb6..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D98.s +++ /dev/null @@ -1,300 +0,0 @@ -.late_rodata - -glabel jtbl_8087A848 - .word L80879DE8 - .word L80879DE8 - .word L8087A0B8 - .word L8087A0B8 - .word L80879DFC - .word L8087A0B8 - .word L8087A0B8 - .word L8087A0B8 - .word L80879E38 - .word L8087A0B8 - .word L8087A0B8 - .word L80879E4C - .word L8087A0B8 - .word L8087A0B8 - .word L8087A0B8 - .word L80879E60 - .word L80879E60 - -glabel jtbl_8087A88C - .word L80879EB0 - .word L80879EB0 - .word L8087A0B8 - .word L8087A0B8 - .word L8087A0B8 - .word L80879EC4 - .word L8087A0B8 - .word L80879EC4 - .word L8087A0B8 - .word L80879ED8 - .word L8087A0B8 - .word L8087A0B8 - .word L80879EEC - .word L80879EEC - .word L8087A0B8 - .word L80879F00 - .word L80879F14 - -glabel jtbl_8087A8D0 - .word L80879F7C - .word L80879F90 - .word L8087A0B8 - .word L80879FA4 - .word L8087A0B8 - .word L8087A0B8 - .word L80879FB8 - .word L8087A0B8 - .word L80879FCC - .word L80879FE0 - -glabel jtbl_8087A8F8 - .word L8087A034 - .word L8087A048 - .word L8087A0B8 - .word L8087A05C - .word L8087A0B8 - .word L8087A05C - .word L8087A0B8 - .word L8087A0B8 - .word L8087A070 - .word L8087A084 - -.text -glabel func_80879D98 -/* 002F8 80879D98 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 002FC 80879D9C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00300 80879DA0 84820158 */ lh $v0, 0x0158($a0) ## 00000158 -/* 00304 80879DA4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00308 80879DA8 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000 -/* 0030C 80879DAC 14400031 */ bne $v0, $zero, .L80879E74 -/* 00310 80879DB0 00000000 */ nop -/* 00314 80879DB4 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 00318 80879DB8 3C0F8088 */ lui $t7, %hi(D_8087AC40) ## $t7 = 80880000 -/* 0031C 80879DBC 01EE7821 */ addu $t7, $t7, $t6 -/* 00320 80879DC0 91EFAC40 */ lbu $t7, %lo(D_8087AC40)($t7) -/* 00324 80879DC4 25F8FFFD */ addiu $t8, $t7, 0xFFFD ## $t8 = 8087FFFD -/* 00328 80879DC8 2F010011 */ sltiu $at, $t8, 0x0011 -/* 0032C 80879DCC 102000BA */ beq $at, $zero, .L8087A0B8 -/* 00330 80879DD0 0018C080 */ sll $t8, $t8, 2 -/* 00334 80879DD4 3C018088 */ lui $at, %hi(jtbl_8087A848) ## $at = 80880000 -/* 00338 80879DD8 00380821 */ addu $at, $at, $t8 -/* 0033C 80879DDC 8C38A848 */ lw $t8, %lo(jtbl_8087A848)($at) -/* 00340 80879DE0 03000008 */ jr $t8 -/* 00344 80879DE4 00000000 */ nop -glabel L80879DE8 -/* 00348 80879DE8 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 0034C 80879DEC 0C21E701 */ jal func_80879C04 -/* 00350 80879DF0 24050005 */ addiu $a1, $zero, 0x0005 ## $a1 = 00000005 -/* 00354 80879DF4 100000B1 */ beq $zero, $zero, .L8087A0BC -/* 00358 80879DF8 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879DFC -/* 0035C 80879DFC 24040008 */ addiu $a0, $zero, 0x0008 ## $a0 = 00000008 -/* 00360 80879E00 0C21E744 */ jal func_80879D10 -/* 00364 80879E04 AFA60018 */ sw $a2, 0x0018($sp) -/* 00368 80879E08 10400006 */ beq $v0, $zero, .L80879E24 -/* 0036C 80879E0C 8FA60018 */ lw $a2, 0x0018($sp) -/* 00370 80879E10 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00374 80879E14 0C21E701 */ jal func_80879C04 -/* 00378 80879E18 24050009 */ addiu $a1, $zero, 0x0009 ## $a1 = 00000009 -/* 0037C 80879E1C 100000A7 */ beq $zero, $zero, .L8087A0BC -/* 00380 80879E20 8FBF0014 */ lw $ra, 0x0014($sp) -.L80879E24: -/* 00384 80879E24 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00388 80879E28 0C21E701 */ jal func_80879C04 -/* 0038C 80879E2C 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008 -/* 00390 80879E30 100000A2 */ beq $zero, $zero, .L8087A0BC -/* 00394 80879E34 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879E38 -/* 00398 80879E38 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 0039C 80879E3C 0C21E701 */ jal func_80879C04 -/* 003A0 80879E40 2405000C */ addiu $a1, $zero, 0x000C ## $a1 = 0000000C -/* 003A4 80879E44 1000009D */ beq $zero, $zero, .L8087A0BC -/* 003A8 80879E48 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879E4C -/* 003AC 80879E4C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 003B0 80879E50 0C21E701 */ jal func_80879C04 -/* 003B4 80879E54 2405000F */ addiu $a1, $zero, 0x000F ## $a1 = 0000000F -/* 003B8 80879E58 10000098 */ beq $zero, $zero, .L8087A0BC -/* 003BC 80879E5C 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879E60 -/* 003C0 80879E60 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 003C4 80879E64 0C21E701 */ jal func_80879C04 -/* 003C8 80879E68 24050014 */ addiu $a1, $zero, 0x0014 ## $a1 = 00000014 -/* 003CC 80879E6C 10000093 */ beq $zero, $zero, .L8087A0BC -/* 003D0 80879E70 8FBF0014 */ lw $ra, 0x0014($sp) -.L80879E74: -/* 003D4 80879E74 54410032 */ bnel $v0, $at, .L80879F40 -/* 003D8 80879E78 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 003DC 80879E7C 84D9001C */ lh $t9, 0x001C($a2) ## 0000001C -/* 003E0 80879E80 3C088088 */ lui $t0, %hi(D_8087AC40) ## $t0 = 80880000 -/* 003E4 80879E84 01194021 */ addu $t0, $t0, $t9 -/* 003E8 80879E88 9108AC40 */ lbu $t0, %lo(D_8087AC40)($t0) -/* 003EC 80879E8C 2509FFFE */ addiu $t1, $t0, 0xFFFE ## $t1 = 8087FFFE -/* 003F0 80879E90 2D210011 */ sltiu $at, $t1, 0x0011 -/* 003F4 80879E94 10200088 */ beq $at, $zero, .L8087A0B8 -/* 003F8 80879E98 00094880 */ sll $t1, $t1, 2 -/* 003FC 80879E9C 3C018088 */ lui $at, %hi(jtbl_8087A88C) ## $at = 80880000 -/* 00400 80879EA0 00290821 */ addu $at, $at, $t1 -/* 00404 80879EA4 8C29A88C */ lw $t1, %lo(jtbl_8087A88C)($at) -/* 00408 80879EA8 01200008 */ jr $t1 -/* 0040C 80879EAC 00000000 */ nop -glabel L80879EB0 -/* 00410 80879EB0 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00414 80879EB4 0C21E701 */ jal func_80879C04 -/* 00418 80879EB8 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 0041C 80879EBC 1000007F */ beq $zero, $zero, .L8087A0BC -/* 00420 80879EC0 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879EC4 -/* 00424 80879EC4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00428 80879EC8 0C21E701 */ jal func_80879C04 -/* 0042C 80879ECC 24050006 */ addiu $a1, $zero, 0x0006 ## $a1 = 00000006 -/* 00430 80879ED0 1000007A */ beq $zero, $zero, .L8087A0BC -/* 00434 80879ED4 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879ED8 -/* 00438 80879ED8 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 0043C 80879EDC 0C21E701 */ jal func_80879C04 -/* 00440 80879EE0 2405000A */ addiu $a1, $zero, 0x000A ## $a1 = 0000000A -/* 00444 80879EE4 10000075 */ beq $zero, $zero, .L8087A0BC -/* 00448 80879EE8 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879EEC -/* 0044C 80879EEC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00450 80879EF0 0C21E701 */ jal func_80879C04 -/* 00454 80879EF4 2405000D */ addiu $a1, $zero, 0x000D ## $a1 = 0000000D -/* 00458 80879EF8 10000070 */ beq $zero, $zero, .L8087A0BC -/* 0045C 80879EFC 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879F00 -/* 00460 80879F00 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00464 80879F04 0C21E701 */ jal func_80879C04 -/* 00468 80879F08 24050010 */ addiu $a1, $zero, 0x0010 ## $a1 = 00000010 -/* 0046C 80879F0C 1000006B */ beq $zero, $zero, .L8087A0BC -/* 00470 80879F10 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879F14 -/* 00474 80879F14 24040011 */ addiu $a0, $zero, 0x0011 ## $a0 = 00000011 -/* 00478 80879F18 0C21E744 */ jal func_80879D10 -/* 0047C 80879F1C AFA60018 */ sw $a2, 0x0018($sp) -/* 00480 80879F20 14400065 */ bne $v0, $zero, .L8087A0B8 -/* 00484 80879F24 8FA60018 */ lw $a2, 0x0018($sp) -/* 00488 80879F28 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 0048C 80879F2C 0C21E701 */ jal func_80879C04 -/* 00490 80879F30 24050010 */ addiu $a1, $zero, 0x0010 ## $a1 = 00000010 -/* 00494 80879F34 10000061 */ beq $zero, $zero, .L8087A0BC -/* 00498 80879F38 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0049C 80879F3C 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -.L80879F40: -/* 004A0 80879F40 5441002D */ bnel $v0, $at, .L80879FF8 -/* 004A4 80879F44 2401C000 */ addiu $at, $zero, 0xC000 ## $at = FFFFC000 -/* 004A8 80879F48 84CA001C */ lh $t2, 0x001C($a2) ## 0000001C -/* 004AC 80879F4C 3C0B8088 */ lui $t3, %hi(D_8087AC40) ## $t3 = 80880000 -/* 004B0 80879F50 016A5821 */ addu $t3, $t3, $t2 -/* 004B4 80879F54 916BAC40 */ lbu $t3, %lo(D_8087AC40)($t3) -/* 004B8 80879F58 256CFFFA */ addiu $t4, $t3, 0xFFFA ## $t4 = 8087FFFA -/* 004BC 80879F5C 2D81000A */ sltiu $at, $t4, 0x000A -/* 004C0 80879F60 10200055 */ beq $at, $zero, .L8087A0B8 -/* 004C4 80879F64 000C6080 */ sll $t4, $t4, 2 -/* 004C8 80879F68 3C018088 */ lui $at, %hi(jtbl_8087A8D0) ## $at = 80880000 -/* 004CC 80879F6C 002C0821 */ addu $at, $at, $t4 -/* 004D0 80879F70 8C2CA8D0 */ lw $t4, %lo(jtbl_8087A8D0)($at) -/* 004D4 80879F74 01800008 */ jr $t4 -/* 004D8 80879F78 00000000 */ nop -glabel L80879F7C -/* 004DC 80879F7C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 004E0 80879F80 0C21E701 */ jal func_80879C04 -/* 004E4 80879F84 2405000D */ addiu $a1, $zero, 0x000D ## $a1 = 0000000D -/* 004E8 80879F88 1000004C */ beq $zero, $zero, .L8087A0BC -/* 004EC 80879F8C 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879F90 -/* 004F0 80879F90 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 004F4 80879F94 0C21E701 */ jal func_80879C04 -/* 004F8 80879F98 24050011 */ addiu $a1, $zero, 0x0011 ## $a1 = 00000011 -/* 004FC 80879F9C 10000047 */ beq $zero, $zero, .L8087A0BC -/* 00500 80879FA0 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879FA4 -/* 00504 80879FA4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00508 80879FA8 0C21E701 */ jal func_80879C04 -/* 0050C 80879FAC 2405000B */ addiu $a1, $zero, 0x000B ## $a1 = 0000000B -/* 00510 80879FB0 10000042 */ beq $zero, $zero, .L8087A0BC -/* 00514 80879FB4 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879FB8 -/* 00518 80879FB8 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 0051C 80879FBC 0C21E701 */ jal func_80879C04 -/* 00520 80879FC0 24050015 */ addiu $a1, $zero, 0x0015 ## $a1 = 00000015 -/* 00524 80879FC4 1000003D */ beq $zero, $zero, .L8087A0BC -/* 00528 80879FC8 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879FCC -/* 0052C 80879FCC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00530 80879FD0 0C21E701 */ jal func_80879C04 -/* 00534 80879FD4 24050012 */ addiu $a1, $zero, 0x0012 ## $a1 = 00000012 -/* 00538 80879FD8 10000038 */ beq $zero, $zero, .L8087A0BC -/* 0053C 80879FDC 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L80879FE0 -/* 00540 80879FE0 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00544 80879FE4 0C21E701 */ jal func_80879C04 -/* 00548 80879FE8 24050013 */ addiu $a1, $zero, 0x0013 ## $a1 = 00000013 -/* 0054C 80879FEC 10000033 */ beq $zero, $zero, .L8087A0BC -/* 00550 80879FF0 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00554 80879FF4 2401C000 */ addiu $at, $zero, 0xC000 ## $at = FFFFC000 -.L80879FF8: -/* 00558 80879FF8 54410030 */ bnel $v0, $at, .L8087A0BC -/* 0055C 80879FFC 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00560 8087A000 84CD001C */ lh $t5, 0x001C($a2) ## 0000001C -/* 00564 8087A004 3C0E8088 */ lui $t6, %hi(D_8087AC40) ## $t6 = 80880000 -/* 00568 8087A008 01CD7021 */ addu $t6, $t6, $t5 -/* 0056C 8087A00C 91CEAC40 */ lbu $t6, %lo(D_8087AC40)($t6) -/* 00570 8087A010 25CFFFFA */ addiu $t7, $t6, 0xFFFA ## $t7 = 8087FFFA -/* 00574 8087A014 2DE1000A */ sltiu $at, $t7, 0x000A -/* 00578 8087A018 10200027 */ beq $at, $zero, .L8087A0B8 -/* 0057C 8087A01C 000F7880 */ sll $t7, $t7, 2 -/* 00580 8087A020 3C018088 */ lui $at, %hi(jtbl_8087A8F8) ## $at = 80880000 -/* 00584 8087A024 002F0821 */ addu $at, $at, $t7 -/* 00588 8087A028 8C2FA8F8 */ lw $t7, %lo(jtbl_8087A8F8)($at) -/* 0058C 8087A02C 01E00008 */ jr $t7 -/* 00590 8087A030 00000000 */ nop -glabel L8087A034 -/* 00594 8087A034 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00598 8087A038 0C21E701 */ jal func_80879C04 -/* 0059C 8087A03C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 005A0 8087A040 1000001E */ beq $zero, $zero, .L8087A0BC -/* 005A4 8087A044 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L8087A048 -/* 005A8 8087A048 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 005AC 8087A04C 0C21E701 */ jal func_80879C04 -/* 005B0 8087A050 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 005B4 8087A054 10000019 */ beq $zero, $zero, .L8087A0BC -/* 005B8 8087A058 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L8087A05C -/* 005BC 8087A05C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 005C0 8087A060 0C21E701 */ jal func_80879C04 -/* 005C4 8087A064 24050004 */ addiu $a1, $zero, 0x0004 ## $a1 = 00000004 -/* 005C8 8087A068 10000014 */ beq $zero, $zero, .L8087A0BC -/* 005CC 8087A06C 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L8087A070 -/* 005D0 8087A070 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 005D4 8087A074 0C21E701 */ jal func_80879C04 -/* 005D8 8087A078 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002 -/* 005DC 8087A07C 1000000F */ beq $zero, $zero, .L8087A0BC -/* 005E0 8087A080 8FBF0014 */ lw $ra, 0x0014($sp) -glabel L8087A084 -/* 005E4 8087A084 24040008 */ addiu $a0, $zero, 0x0008 ## $a0 = 00000008 -/* 005E8 8087A088 0C21E744 */ jal func_80879D10 -/* 005EC 8087A08C AFA60018 */ sw $a2, 0x0018($sp) -/* 005F0 8087A090 10400006 */ beq $v0, $zero, .L8087A0AC -/* 005F4 8087A094 8FA60018 */ lw $a2, 0x0018($sp) -/* 005F8 8087A098 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 005FC 8087A09C 0C21E701 */ jal func_80879C04 -/* 00600 8087A0A0 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003 -/* 00604 8087A0A4 10000005 */ beq $zero, $zero, .L8087A0BC -/* 00608 8087A0A8 8FBF0014 */ lw $ra, 0x0014($sp) -.L8087A0AC: -/* 0060C 8087A0AC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 00610 8087A0B0 0C21E701 */ jal func_80879C04 -/* 00614 8087A0B4 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008 -glabel L8087A0B8 -.L8087A0B8: -/* 00618 8087A0B8 8FBF0014 */ lw $ra, 0x0014($sp) -.L8087A0BC: -/* 0061C 8087A0BC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00620 8087A0C0 03E00008 */ jr $ra -/* 00624 8087A0C4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A0C8.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A0C8.s deleted file mode 100644 index 243e4838da..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A0C8.s +++ /dev/null @@ -1,50 +0,0 @@ -glabel func_8087A0C8 -/* 00628 8087A0C8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 0062C 8087A0CC AFBF001C */ sw $ra, 0x001C($sp) -/* 00630 8087A0D0 AFB00018 */ sw $s0, 0x0018($sp) -/* 00634 8087A0D4 AFA50024 */ sw $a1, 0x0024($sp) -/* 00638 8087A0D8 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 0063C 8087A0DC C4840150 */ lwc1 $f4, 0x0150($a0) ## 00000150 -/* 00640 8087A0E0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00644 8087A0E4 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 00648 8087A0E8 46040032 */ c.eq.s $f0, $f4 -/* 0064C 8087A0EC 00000000 */ nop -/* 00650 8087A0F0 45030020 */ bc1tl .L8087A174 -/* 00654 8087A0F4 8FBF001C */ lw $ra, 0x001C($sp) -/* 00658 8087A0F8 8C4F0680 */ lw $t7, 0x0680($v0) ## 00000680 -/* 0065C 8087A0FC 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00660 8087A100 01E1C024 */ and $t8, $t7, $at -/* 00664 8087A104 AC580680 */ sw $t8, 0x0680($v0) ## 00000680 -/* 00668 8087A108 C4860150 */ lwc1 $f6, 0x0150($a0) ## 00000150 -/* 0066C 8087A10C 4606003C */ c.lt.s $f0, $f6 -/* 00670 8087A110 00000000 */ nop -/* 00674 8087A114 45020014 */ bc1fl .L8087A168 -/* 00678 8087A118 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 0067C 8087A11C 0C21E766 */ jal func_80879D98 -/* 00680 8087A120 00000000 */ nop -/* 00684 8087A124 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00688 8087A128 0C00B6EC */ jal func_8002DBB0 -/* 0068C 8087A12C 26050168 */ addiu $a1, $s0, 0x0168 ## $a1 = 00000168 -/* 00690 8087A130 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00694 8087A134 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00 -/* 00698 8087A138 8FA40024 */ lw $a0, 0x0024($sp) -/* 0069C 8087A13C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 006A0 8087A140 4600403C */ c.lt.s $f8, $f0 -/* 006A4 8087A144 00000000 */ nop -/* 006A8 8087A148 45020007 */ bc1fl .L8087A168 -/* 006AC 8087A14C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 006B0 8087A150 0C00B7D5 */ jal func_8002DF54 -/* 006B4 8087A154 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008 -/* 006B8 8087A158 3C198088 */ lui $t9, %hi(func_8087A39C) ## $t9 = 80880000 -/* 006BC 8087A15C 2739A39C */ addiu $t9, $t9, %lo(func_8087A39C) ## $t9 = 8087A39C -/* 006C0 8087A160 AE190164 */ sw $t9, 0x0164($s0) ## 00000164 -/* 006C4 8087A164 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -.L8087A168: -/* 006C8 8087A168 00000000 */ nop -/* 006CC 8087A16C E6000150 */ swc1 $f0, 0x0150($s0) ## 00000150 -/* 006D0 8087A170 8FBF001C */ lw $ra, 0x001C($sp) -.L8087A174: -/* 006D4 8087A174 8FB00018 */ lw $s0, 0x0018($sp) -/* 006D8 8087A178 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 006DC 8087A17C 03E00008 */ jr $ra -/* 006E0 8087A180 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A184.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A184.s deleted file mode 100644 index bdec8a3d16..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A184.s +++ /dev/null @@ -1,56 +0,0 @@ -glabel func_8087A184 -/* 006E4 8087A184 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 006E8 8087A188 AFBF0014 */ sw $ra, 0x0014($sp) -/* 006EC 8087A18C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 006F0 8087A190 C4840150 */ lwc1 $f4, 0x0150($a0) ## 00000150 -/* 006F4 8087A194 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 006F8 8087A198 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 006FC 8087A19C 46040032 */ c.eq.s $f0, $f4 -/* 00700 8087A1A0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000 -/* 00704 8087A1A4 45030007 */ bc1tl .L8087A1C4 -/* 00708 8087A1A8 8CE5000C */ lw $a1, 0x000C($a3) ## 0000000C -/* 0070C 8087A1AC 8C4E0680 */ lw $t6, 0x0680($v0) ## 00000680 -/* 00710 8087A1B0 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00714 8087A1B4 01C17824 */ and $t7, $t6, $at -/* 00718 8087A1B8 AC4F0680 */ sw $t7, 0x0680($v0) ## 00000680 -/* 0071C 8087A1BC E4800150 */ swc1 $f0, 0x0150($a0) ## 00000150 -/* 00720 8087A1C0 8CE5000C */ lw $a1, 0x000C($a3) ## 0000000C -.L8087A1C4: -/* 00724 8087A1C4 AFA70018 */ sw $a3, 0x0018($sp) -/* 00728 8087A1C8 0C01DE80 */ jal Math_StepToF - -/* 0072C 8087A1CC 24E40028 */ addiu $a0, $a3, 0x0028 ## $a0 = 00000028 -/* 00730 8087A1D0 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00734 8087A1D4 10400018 */ beq $v0, $zero, .L8087A238 -/* 00738 8087A1D8 8FA70018 */ lw $a3, 0x0018($sp) -/* 0073C 8087A1DC 8CF90008 */ lw $t9, 0x0008($a3) ## 00000008 -/* 00740 8087A1E0 84E2001C */ lh $v0, 0x001C($a3) ## 0000001C -/* 00744 8087A1E4 8CF8000C */ lw $t8, 0x000C($a3) ## 0000000C -/* 00748 8087A1E8 ACF90168 */ sw $t9, 0x0168($a3) ## 00000168 -/* 0074C 8087A1EC 8CF90010 */ lw $t9, 0x0010($a3) ## 00000010 -/* 00750 8087A1F0 3C088088 */ lui $t0, %hi(func_8087A0C8) ## $t0 = 80880000 -/* 00754 8087A1F4 2508A0C8 */ addiu $t0, $t0, %lo(func_8087A0C8) ## $t0 = 8087A0C8 -/* 00758 8087A1F8 E4E00068 */ swc1 $f0, 0x0068($a3) ## 00000068 -/* 0075C 8087A1FC ACE80164 */ sw $t0, 0x0164($a3) ## 00000164 -/* 00760 8087A200 ACF8016C */ sw $t8, 0x016C($a3) ## 0000016C -/* 00764 8087A204 10400006 */ beq $v0, $zero, .L8087A220 -/* 00768 8087A208 ACF90170 */ sw $t9, 0x0170($a3) ## 00000170 -/* 0076C 8087A20C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00770 8087A210 10410007 */ beq $v0, $at, .L8087A230 -/* 00774 8087A214 240A000E */ addiu $t2, $zero, 0x000E ## $t2 = 0000000E -/* 00778 8087A218 10000008 */ beq $zero, $zero, .L8087A23C -/* 0077C 8087A21C 8FBF0014 */ lw $ra, 0x0014($sp) -.L8087A220: -/* 00780 8087A220 24090007 */ addiu $t1, $zero, 0x0007 ## $t1 = 00000007 -/* 00784 8087A224 3C018088 */ lui $at, %hi(D_8087AC40) ## $at = 80880000 -/* 00788 8087A228 10000003 */ beq $zero, $zero, .L8087A238 -/* 0078C 8087A22C A029AC40 */ sb $t1, %lo(D_8087AC40)($at) -.L8087A230: -/* 00790 8087A230 3C018088 */ lui $at, %hi(D_8087AC41) ## $at = 80880000 -/* 00794 8087A234 A02AAC41 */ sb $t2, %lo(D_8087AC41)($at) -.L8087A238: -/* 00798 8087A238 8FBF0014 */ lw $ra, 0x0014($sp) -.L8087A23C: -/* 0079C 8087A23C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 007A0 8087A240 03E00008 */ jr $ra -/* 007A4 8087A244 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A248.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A248.s deleted file mode 100644 index 4d9f573c85..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A248.s +++ /dev/null @@ -1,50 +0,0 @@ -glabel func_8087A248 -/* 007A8 8087A248 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 007AC 8087A24C AFBF001C */ sw $ra, 0x001C($sp) -/* 007B0 8087A250 AFB00018 */ sw $s0, 0x0018($sp) -/* 007B4 8087A254 AFA50024 */ sw $a1, 0x0024($sp) -/* 007B8 8087A258 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 007BC 8087A25C 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00 -/* 007C0 8087A260 C4840060 */ lwc1 $f4, 0x0060($a0) ## 00000060 -/* 007C4 8087A264 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 007C8 8087A268 3C014396 */ lui $at, 0x4396 ## $at = 43960000 -/* 007CC 8087A26C 46062200 */ add.s $f8, $f4, $f6 -/* 007D0 8087A270 44818000 */ mtc1 $at, $f16 ## $f16 = 300.00 -/* 007D4 8087A274 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028 -/* 007D8 8087A278 E4880038 */ swc1 $f8, 0x0038($a0) ## 00000060 -/* 007DC 8087A27C C60A000C */ lwc1 $f10, 0x000C($s0) ## 0000000C -/* 007E0 8087A280 8E060060 */ lw $a2, 0x0060($s0) ## 00000060 -/* 007E4 8087A284 46105481 */ sub.s $f18, $f10, $f16 -/* 007E8 8087A288 44059000 */ mfc1 $a1, $f18 -/* 007EC 8087A28C 0C01DE80 */ jal Math_StepToF - -/* 007F0 8087A290 00000000 */ nop -/* 007F4 8087A294 10400015 */ beq $v0, $zero, .L8087A2EC -/* 007F8 8087A298 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 007FC 8087A29C C608000C */ lwc1 $f8, 0x000C($s0) ## 0000000C -/* 00800 8087A2A0 44815000 */ mtc1 $at, $f10 ## $f10 = 100.00 -/* 00804 8087A2A4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 00808 8087A2A8 C6060008 */ lwc1 $f6, 0x0008($s0) ## 00000008 -/* 0080C 8087A2AC 460A4401 */ sub.s $f16, $f8, $f10 -/* 00810 8087A2B0 C6120010 */ lwc1 $f18, 0x0010($s0) ## 00000010 -/* 00814 8087A2B4 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060 -/* 00818 8087A2B8 E6060024 */ swc1 $f6, 0x0024($s0) ## 00000024 -/* 0081C 8087A2BC E6100028 */ swc1 $f16, 0x0028($s0) ## 00000028 -/* 00820 8087A2C0 E612002C */ swc1 $f18, 0x002C($s0) ## 0000002C -/* 00824 8087A2C4 0C023A62 */ jal Player_InCsMode -/* 00828 8087A2C8 8FA40024 */ lw $a0, 0x0024($sp) -/* 0082C 8087A2CC 10400004 */ beq $v0, $zero, .L8087A2E0 -/* 00830 8087A2D0 8FA40024 */ lw $a0, 0x0024($sp) -/* 00834 8087A2D4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00838 8087A2D8 0C00B7D5 */ jal func_8002DF54 -/* 0083C 8087A2DC 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007 -.L8087A2E0: -/* 00840 8087A2E0 3C0E8088 */ lui $t6, %hi(func_8087A184) ## $t6 = 80880000 -/* 00844 8087A2E4 25CEA184 */ addiu $t6, $t6, %lo(func_8087A184) ## $t6 = 8087A184 -/* 00848 8087A2E8 AE0E0164 */ sw $t6, 0x0164($s0) ## 00000164 -.L8087A2EC: -/* 0084C 8087A2EC 8FBF001C */ lw $ra, 0x001C($sp) -/* 00850 8087A2F0 8FB00018 */ lw $s0, 0x0018($sp) -/* 00854 8087A2F4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00858 8087A2F8 03E00008 */ jr $ra -/* 0085C 8087A2FC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A300.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A300.s deleted file mode 100644 index 44f674f0f0..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A300.s +++ /dev/null @@ -1,43 +0,0 @@ -glabel func_8087A300 -/* 00860 8087A300 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00864 8087A304 AFBF001C */ sw $ra, 0x001C($sp) -/* 00868 8087A308 AFB00018 */ sw $s0, 0x0018($sp) -/* 0086C 8087A30C AFA50024 */ sw $a1, 0x0024($sp) -/* 00870 8087A310 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00874 8087A314 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00 -/* 00878 8087A318 C4840060 */ lwc1 $f4, 0x0060($a0) ## 00000060 -/* 0087C 8087A31C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00880 8087A320 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000 -/* 00884 8087A324 46062200 */ add.s $f8, $f4, $f6 -/* 00888 8087A328 44818000 */ mtc1 $at, $f16 ## $f16 = 100.00 -/* 0088C 8087A32C 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028 -/* 00890 8087A330 E4880038 */ swc1 $f8, 0x0038($a0) ## 00000060 -/* 00894 8087A334 C60A000C */ lwc1 $f10, 0x000C($s0) ## 0000000C -/* 00898 8087A338 8E060060 */ lw $a2, 0x0060($s0) ## 00000060 -/* 0089C 8087A33C 46105481 */ sub.s $f18, $f10, $f16 -/* 008A0 8087A340 44059000 */ mfc1 $a1, $f18 -/* 008A4 8087A344 0C01DE80 */ jal Math_StepToF - -/* 008A8 8087A348 00000000 */ nop -/* 008AC 8087A34C 5040000F */ beql $v0, $zero, .L8087A38C -/* 008B0 8087A350 8FBF001C */ lw $ra, 0x001C($sp) -/* 008B4 8087A354 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 008B8 8087A358 00000000 */ nop -/* 008BC 8087A35C E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060 -/* 008C0 8087A360 0C023A62 */ jal Player_InCsMode -/* 008C4 8087A364 8FA40024 */ lw $a0, 0x0024($sp) -/* 008C8 8087A368 10400004 */ beq $v0, $zero, .L8087A37C -/* 008CC 8087A36C 8FA40024 */ lw $a0, 0x0024($sp) -/* 008D0 8087A370 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 008D4 8087A374 0C00B7D5 */ jal func_8002DF54 -/* 008D8 8087A378 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007 -.L8087A37C: -/* 008DC 8087A37C 3C0E8088 */ lui $t6, %hi(func_8087A0C8) ## $t6 = 80880000 -/* 008E0 8087A380 25CEA0C8 */ addiu $t6, $t6, %lo(func_8087A0C8) ## $t6 = 8087A0C8 -/* 008E4 8087A384 AE0E0164 */ sw $t6, 0x0164($s0) ## 00000164 -/* 008E8 8087A388 8FBF001C */ lw $ra, 0x001C($sp) -.L8087A38C: -/* 008EC 8087A38C 8FB00018 */ lw $s0, 0x0018($sp) -/* 008F0 8087A390 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 008F4 8087A394 03E00008 */ jr $ra -/* 008F8 8087A398 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A39C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A39C.s deleted file mode 100644 index c0ffa28e4c..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A39C.s +++ /dev/null @@ -1,232 +0,0 @@ -glabel func_8087A39C -/* 008FC 8087A39C 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98 -/* 00900 8087A3A0 AFB00030 */ sw $s0, 0x0030($sp) -/* 00904 8087A3A4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00908 8087A3A8 AFBF0034 */ sw $ra, 0x0034($sp) -/* 0090C 8087A3AC AFA5006C */ sw $a1, 0x006C($sp) -/* 00910 8087A3B0 F7B40028 */ sdc1 $f20, 0x0028($sp) -/* 00914 8087A3B4 3C054120 */ lui $a1, 0x4120 ## $a1 = 41200000 -/* 00918 8087A3B8 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 0091C 8087A3BC 0C01DE80 */ jal Math_StepToF - -/* 00920 8087A3C0 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000 -/* 00924 8087A3C4 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024 -/* 00928 8087A3C8 8E050168 */ lw $a1, 0x0168($s0) ## 00000168 -/* 0092C 8087A3CC 0C01DE80 */ jal Math_StepToF - -/* 00930 8087A3D0 8E060068 */ lw $a2, 0x0068($s0) ## 00000068 -/* 00934 8087A3D4 8E050170 */ lw $a1, 0x0170($s0) ## 00000170 -/* 00938 8087A3D8 8E060068 */ lw $a2, 0x0068($s0) ## 00000068 -/* 0093C 8087A3DC AFA20064 */ sw $v0, 0x0064($sp) -/* 00940 8087A3E0 0C01DE80 */ jal Math_StepToF - -/* 00944 8087A3E4 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C -/* 00948 8087A3E8 8FA30064 */ lw $v1, 0x0064($sp) -/* 0094C 8087A3EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00950 8087A3F0 24052835 */ addiu $a1, $zero, 0x2835 ## $a1 = 00002835 -/* 00954 8087A3F4 00621824 */ and $v1, $v1, $v0 -/* 00958 8087A3F8 10600022 */ beq $v1, $zero, .L8087A484 -/* 0095C 8087A3FC 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000 -/* 00960 8087A400 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 00964 8087A404 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024 -/* 00968 8087A408 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 0096C 8087A40C E6040068 */ swc1 $f4, 0x0068($s0) ## 00000068 -/* 00970 8087A410 E6060168 */ swc1 $f6, 0x0168($s0) ## 00000168 -/* 00974 8087A414 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00978 8087A418 E6080170 */ swc1 $f8, 0x0170($s0) ## 00000170 -/* 0097C 8087A41C 0C21E753 */ jal func_80879D4C -/* 00980 8087A420 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00984 8087A424 10400009 */ beq $v0, $zero, .L8087A44C -/* 00988 8087A428 3C0E8088 */ lui $t6, %hi(func_8087A0C8) ## $t6 = 80880000 -/* 0098C 8087A42C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00990 8087A430 1041000E */ beq $v0, $at, .L8087A46C -/* 00994 8087A434 3C0F8088 */ lui $t7, %hi(func_8087A248) ## $t7 = 80880000 -/* 00998 8087A438 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 0099C 8087A43C 1041000E */ beq $v0, $at, .L8087A478 -/* 009A0 8087A440 3C188088 */ lui $t8, %hi(func_8087A300) ## $t8 = 80880000 -/* 009A4 8087A444 1000009D */ beq $zero, $zero, .L8087A6BC -/* 009A8 8087A448 8FBF0034 */ lw $ra, 0x0034($sp) -.L8087A44C: -/* 009AC 8087A44C 25CEA0C8 */ addiu $t6, $t6, %lo(func_8087A0C8) ## $t6 = 8087A0C8 -/* 009B0 8087A450 AE0E0164 */ sw $t6, 0x0164($s0) ## 00000164 -/* 009B4 8087A454 8FA4006C */ lw $a0, 0x006C($sp) -/* 009B8 8087A458 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 009BC 8087A45C 0C00B7D5 */ jal func_8002DF54 -/* 009C0 8087A460 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007 -/* 009C4 8087A464 10000095 */ beq $zero, $zero, .L8087A6BC -/* 009C8 8087A468 8FBF0034 */ lw $ra, 0x0034($sp) -.L8087A46C: -/* 009CC 8087A46C 25EFA248 */ addiu $t7, $t7, %lo(func_8087A248) ## $t7 = FFFFA248 -/* 009D0 8087A470 10000091 */ beq $zero, $zero, .L8087A6B8 -/* 009D4 8087A474 AE0F0164 */ sw $t7, 0x0164($s0) ## 00000164 -.L8087A478: -/* 009D8 8087A478 2718A300 */ addiu $t8, $t8, %lo(func_8087A300) ## $t8 = FFFFA300 -/* 009DC 8087A47C 1000008E */ beq $zero, $zero, .L8087A6B8 -/* 009E0 8087A480 AE180164 */ sw $t8, 0x0164($s0) ## 00000164 -.L8087A484: -/* 009E4 8087A484 44815000 */ mtc1 $at, $f10 ## $f10 = 0.00 -/* 009E8 8087A488 C6100068 */ lwc1 $f16, 0x0068($s0) ## 00000068 -/* 009EC 8087A48C 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000 -/* 009F0 8087A490 4610503C */ c.lt.s $f10, $f16 -/* 009F4 8087A494 00000000 */ nop -/* 009F8 8087A498 45020088 */ bc1fl .L8087A6BC -/* 009FC 8087A49C 8FBF0034 */ lw $ra, 0x0034($sp) -/* 00A00 8087A4A0 44816000 */ mtc1 $at, $f12 ## $f12 = 120.00 -/* 00A04 8087A4A4 0C00CFC8 */ jal Rand_CenteredFloat - -/* 00A08 8087A4A8 00000000 */ nop -/* 00A0C 8087A4AC 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00A10 8087A4B0 E7A00048 */ swc1 $f0, 0x0048($sp) -/* 00A14 8087A4B4 46000506 */ mov.s $f20, $f0 -/* 00A18 8087A4B8 0C01DE1C */ jal Math_SinS - ## sins? -/* 00A1C 8087A4BC 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A20 8087A4C0 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 00A24 8087A4C4 44819000 */ mtc1 $at, $f18 ## $f18 = 1.50 -/* 00A28 8087A4C8 00000000 */ nop -/* 00A2C 8087A4CC 46149100 */ add.s $f4, $f18, $f20 -/* 00A30 8087A4D0 46002187 */ neg.s $f6, $f4 -/* 00A34 8087A4D4 46060202 */ mul.s $f8, $f0, $f6 -/* 00A38 8087A4D8 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00A3C 8087A4DC E7A8004C */ swc1 $f8, 0x004C($sp) -/* 00A40 8087A4E0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00A44 8087A4E4 44815000 */ mtc1 $at, $f10 ## $f10 = 1.00 -/* 00A48 8087A4E8 00000000 */ nop -/* 00A4C 8087A4EC 460A0400 */ add.s $f16, $f0, $f10 -/* 00A50 8087A4F0 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00A54 8087A4F4 E7B00050 */ swc1 $f16, 0x0050($sp) -/* 00A58 8087A4F8 46000506 */ mov.s $f20, $f0 -/* 00A5C 8087A4FC 0C01DE0D */ jal Math_CosS - ## coss? -/* 00A60 8087A500 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A64 8087A504 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 00A68 8087A508 44819000 */ mtc1 $at, $f18 ## $f18 = 1.50 -/* 00A6C 8087A50C 00000000 */ nop -/* 00A70 8087A510 46149100 */ add.s $f4, $f18, $f20 -/* 00A74 8087A514 46002187 */ neg.s $f6, $f4 -/* 00A78 8087A518 46060202 */ mul.s $f8, $f0, $f6 -/* 00A7C 8087A51C E7A80054 */ swc1 $f8, 0x0054($sp) -/* 00A80 8087A520 0C01DE1C */ jal Math_SinS - ## sins? -/* 00A84 8087A524 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A88 8087A528 46000506 */ mov.s $f20, $f0 -/* 00A8C 8087A52C 0C01DE0D */ jal Math_CosS - ## coss? -/* 00A90 8087A530 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A94 8087A534 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00A98 8087A538 44818000 */ mtc1 $at, $f16 ## $f16 = 60.00 -/* 00A9C 8087A53C C7A60048 */ lwc1 $f6, 0x0048($sp) -/* 00AA0 8087A540 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024 -/* 00AA4 8087A544 46148482 */ mul.s $f18, $f16, $f20 -/* 00AA8 8087A548 46125101 */ sub.s $f4, $f10, $f18 -/* 00AAC 8087A54C 46060202 */ mul.s $f8, $f0, $f6 -/* 00AB0 8087A550 46082401 */ sub.s $f16, $f4, $f8 -/* 00AB4 8087A554 E7B00058 */ swc1 $f16, 0x0058($sp) -/* 00AB8 8087A558 0C01DE0D */ jal Math_CosS - ## coss? -/* 00ABC 8087A55C 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00AC0 8087A560 46000506 */ mov.s $f20, $f0 -/* 00AC4 8087A564 0C01DE1C */ jal Math_SinS - ## sins? -/* 00AC8 8087A568 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00ACC 8087A56C 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00AD0 8087A570 44819000 */ mtc1 $at, $f18 ## $f18 = 60.00 -/* 00AD4 8087A574 C7A80048 */ lwc1 $f8, 0x0048($sp) -/* 00AD8 8087A578 C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C -/* 00ADC 8087A57C 46149182 */ mul.s $f6, $f18, $f20 -/* 00AE0 8087A580 24040028 */ addiu $a0, $zero, 0x0028 ## $a0 = 00000028 -/* 00AE4 8087A584 2405000F */ addiu $a1, $zero, 0x000F ## $a1 = 0000000F -/* 00AE8 8087A588 46080402 */ mul.s $f16, $f0, $f8 -/* 00AEC 8087A58C 46065101 */ sub.s $f4, $f10, $f6 -/* 00AF0 8087A590 46048480 */ add.s $f18, $f16, $f4 -/* 00AF4 8087A594 E7B20060 */ swc1 $f18, 0x0060($sp) -/* 00AF8 8087A598 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028 -/* 00AFC 8087A59C 0C01DF64 */ jal Rand_S16Offset - -/* 00B00 8087A5A0 E7AA005C */ swc1 $f10, 0x005C($sp) -/* 00B04 8087A5A4 3C198088 */ lui $t9, %hi(D_8087A740) ## $t9 = 80880000 -/* 00B08 8087A5A8 3C088088 */ lui $t0, %hi(D_8087A744) ## $t0 = 80880000 -/* 00B0C 8087A5AC 2508A744 */ addiu $t0, $t0, %lo(D_8087A744) ## $t0 = 8087A744 -/* 00B10 8087A5B0 2739A740 */ addiu $t9, $t9, %lo(D_8087A740) ## $t9 = 8087A740 -/* 00B14 8087A5B4 3C078088 */ lui $a3, %hi(D_8087A748) ## $a3 = 80880000 -/* 00B18 8087A5B8 240900FA */ addiu $t1, $zero, 0x00FA ## $t1 = 000000FA -/* 00B1C 8087A5BC AFA90018 */ sw $t1, 0x0018($sp) -/* 00B20 8087A5C0 24E7A748 */ addiu $a3, $a3, %lo(D_8087A748) ## $a3 = 8087A748 -/* 00B24 8087A5C4 AFB90010 */ sw $t9, 0x0010($sp) -/* 00B28 8087A5C8 AFA80014 */ sw $t0, 0x0014($sp) -/* 00B2C 8087A5CC 8FA4006C */ lw $a0, 0x006C($sp) -/* 00B30 8087A5D0 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0 -/* 00B34 8087A5D4 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFE4 -/* 00B38 8087A5D8 0C00A0A7 */ jal func_8002829C -/* 00B3C 8087A5DC AFA2001C */ sw $v0, 0x001C($sp) -/* 00B40 8087A5E0 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000 -/* 00B44 8087A5E4 44816000 */ mtc1 $at, $f12 ## $f12 = 120.00 -/* 00B48 8087A5E8 0C00CFC8 */ jal Rand_CenteredFloat - -/* 00B4C 8087A5EC 00000000 */ nop -/* 00B50 8087A5F0 E7A00048 */ swc1 $f0, 0x0048($sp) -/* 00B54 8087A5F4 0C01DE1C */ jal Math_SinS - ## sins? -/* 00B58 8087A5F8 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00B5C 8087A5FC 46000506 */ mov.s $f20, $f0 -/* 00B60 8087A600 0C01DE0D */ jal Math_CosS - ## coss? -/* 00B64 8087A604 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00B68 8087A608 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00B6C 8087A60C 44814000 */ mtc1 $at, $f8 ## $f8 = 60.00 -/* 00B70 8087A610 C7B20048 */ lwc1 $f18, 0x0048($sp) -/* 00B74 8087A614 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024 -/* 00B78 8087A618 46144402 */ mul.s $f16, $f8, $f20 -/* 00B7C 8087A61C 46103101 */ sub.s $f4, $f6, $f16 -/* 00B80 8087A620 46120282 */ mul.s $f10, $f0, $f18 -/* 00B84 8087A624 46045200 */ add.s $f8, $f10, $f4 -/* 00B88 8087A628 E7A80058 */ swc1 $f8, 0x0058($sp) -/* 00B8C 8087A62C 0C01DE0D */ jal Math_CosS - ## coss? -/* 00B90 8087A630 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00B94 8087A634 46000506 */ mov.s $f20, $f0 -/* 00B98 8087A638 0C01DE1C */ jal Math_SinS - ## sins? -/* 00B9C 8087A63C 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00BA0 8087A640 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00BA4 8087A644 44818000 */ mtc1 $at, $f16 ## $f16 = 60.00 -/* 00BA8 8087A648 C7A40048 */ lwc1 $f4, 0x0048($sp) -/* 00BAC 8087A64C C606002C */ lwc1 $f6, 0x002C($s0) ## 0000002C -/* 00BB0 8087A650 46148482 */ mul.s $f18, $f16, $f20 -/* 00BB4 8087A654 24040028 */ addiu $a0, $zero, 0x0028 ## $a0 = 00000028 -/* 00BB8 8087A658 2405000F */ addiu $a1, $zero, 0x000F ## $a1 = 0000000F -/* 00BBC 8087A65C 46040202 */ mul.s $f8, $f0, $f4 -/* 00BC0 8087A660 46123281 */ sub.s $f10, $f6, $f18 -/* 00BC4 8087A664 46085401 */ sub.s $f16, $f10, $f8 -/* 00BC8 8087A668 0C01DF64 */ jal Rand_S16Offset - -/* 00BCC 8087A66C E7B00060 */ swc1 $f16, 0x0060($sp) -/* 00BD0 8087A670 3C0A8088 */ lui $t2, %hi(D_8087A740) ## $t2 = 80880000 -/* 00BD4 8087A674 3C0B8088 */ lui $t3, %hi(D_8087A744) ## $t3 = 80880000 -/* 00BD8 8087A678 256BA744 */ addiu $t3, $t3, %lo(D_8087A744) ## $t3 = 8087A744 -/* 00BDC 8087A67C 254AA740 */ addiu $t2, $t2, %lo(D_8087A740) ## $t2 = 8087A740 -/* 00BE0 8087A680 3C078088 */ lui $a3, %hi(D_8087A748) ## $a3 = 80880000 -/* 00BE4 8087A684 240C00FA */ addiu $t4, $zero, 0x00FA ## $t4 = 000000FA -/* 00BE8 8087A688 AFAC0018 */ sw $t4, 0x0018($sp) -/* 00BEC 8087A68C 24E7A748 */ addiu $a3, $a3, %lo(D_8087A748) ## $a3 = 8087A748 -/* 00BF0 8087A690 AFAA0010 */ sw $t2, 0x0010($sp) -/* 00BF4 8087A694 AFAB0014 */ sw $t3, 0x0014($sp) -/* 00BF8 8087A698 8FA4006C */ lw $a0, 0x006C($sp) -/* 00BFC 8087A69C 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0 -/* 00C00 8087A6A0 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFE4 -/* 00C04 8087A6A4 0C00A0A7 */ jal func_8002829C -/* 00C08 8087A6A8 AFA2001C */ sw $v0, 0x001C($sp) -/* 00C0C 8087A6AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00C10 8087A6B0 0C00BE5D */ jal func_8002F974 -/* 00C14 8087A6B4 240500DF */ addiu $a1, $zero, 0x00DF ## $a1 = 000000DF -.L8087A6B8: -/* 00C18 8087A6B8 8FBF0034 */ lw $ra, 0x0034($sp) -.L8087A6BC: -/* 00C1C 8087A6BC D7B40028 */ ldc1 $f20, 0x0028($sp) -/* 00C20 8087A6C0 8FB00030 */ lw $s0, 0x0030($sp) -/* 00C24 8087A6C4 03E00008 */ jr $ra -/* 00C28 8087A6C8 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s deleted file mode 100644 index 94325e5c58..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel BgIceObjects_Destroy -/* 00088 8088F898 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0008C 8088F89C AFA40018 */ sw $a0, 0x0018($sp) -/* 00090 8088F8A0 8FAE0018 */ lw $t6, 0x0018($sp) -/* 00094 8088F8A4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00098 8088F8A8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 0009C 8088F8AC 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810 -/* 000A0 8088F8B0 0C00FB56 */ jal DynaPolyInfo_Free - ## DynaPolyInfo_delReserve -/* 000A4 8088F8B4 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C -/* 000A8 8088F8B8 8FBF0014 */ lw $ra, 0x0014($sp) -/* 000AC 8088F8BC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 000B0 8088F8C0 03E00008 */ jr $ra -/* 000B4 8088F8C4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Draw.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Draw.s deleted file mode 100644 index f57f6c8c30..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Draw.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel BgIceObjects_Draw -/* 00C48 80890458 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C4C 8089045C AFA40018 */ sw $a0, 0x0018($sp) -/* 00C50 80890460 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00C54 80890464 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C58 80890468 3C050600 */ lui $a1, %hi(D_06000190) ## $a1 = 06000000 -/* 00C5C 8089046C 0C00D498 */ jal Gfx_DrawDListOpa - -/* 00C60 80890470 24A50190 */ addiu $a1, $a1, %lo(D_06000190) ## $a1 = 06000190 -/* 00C64 80890474 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00C68 80890478 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00C6C 8089047C 03E00008 */ jr $ra -/* 00C70 80890480 00000000 */ nop -/* 00C74 80890484 00000000 */ nop -/* 00C78 80890488 00000000 */ nop -/* 00C7C 8089048C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Init.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Init.s deleted file mode 100644 index 3992273292..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Init.s +++ /dev/null @@ -1,40 +0,0 @@ -glabel BgIceObjects_Init -/* 00000 8088F810 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00004 8088F814 AFA50034 */ sw $a1, 0x0034($sp) -/* 00008 8088F818 AFBF001C */ sw $ra, 0x001C($sp) -/* 0000C 8088F81C AFB00018 */ sw $s0, 0x0018($sp) -/* 00010 8088F820 3C058089 */ lui $a1, %hi(D_808904C4) ## $a1 = 80890000 -/* 00014 8088F824 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00018 8088F828 AFA00024 */ sw $zero, 0x0024($sp) -/* 0001C 8088F82C 0C01E037 */ jal Actor_ProcessInitChain - -/* 00020 8088F830 24A504C4 */ addiu $a1, $a1, %lo(D_808904C4) ## $a1 = 808904C4 -/* 00024 8088F834 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00028 8088F838 0C010D20 */ jal DynaPolyInfo_SetActorMove - -/* 0002C 8088F83C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00030 8088F840 3C040600 */ lui $a0, %hi(D_060003F0) ## $a0 = 06000000 -/* 00034 8088F844 248403F0 */ addiu $a0, $a0, %lo(D_060003F0) ## $a0 = 060003F0 -/* 00038 8088F848 0C010620 */ jal DynaPolyInfo_Alloc - -/* 0003C 8088F84C 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFF4 -/* 00040 8088F850 26040168 */ addiu $a0, $s0, 0x0168 ## $a0 = 00000168 -/* 00044 8088F854 0C01DF90 */ jal Math_Vec3f_Copy - ## Vec3f_Copy -/* 00048 8088F858 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008 -/* 0004C 8088F85C 8FA40034 */ lw $a0, 0x0034($sp) -/* 00050 8088F860 3C0E8089 */ lui $t6, %hi(func_8088FED0) ## $t6 = 80890000 -/* 00054 8088F864 25CEFED0 */ addiu $t6, $t6, %lo(func_8088FED0) ## $t6 = 8088FED0 -/* 00058 8088F868 AE0E0164 */ sw $t6, 0x0164($s0) ## 00000164 -/* 0005C 8088F86C 8FA70024 */ lw $a3, 0x0024($sp) -/* 00060 8088F870 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00064 8088F874 0C00FA9D */ jal DynaPolyInfo_RegisterActor - ## DynaPolyInfo_setActor -/* 00068 8088F878 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810 -/* 0006C 8088F87C AE02014C */ sw $v0, 0x014C($s0) ## 0000014C -/* 00070 8088F880 A600001C */ sh $zero, 0x001C($s0) ## 0000001C -/* 00074 8088F884 8FBF001C */ lw $ra, 0x001C($sp) -/* 00078 8088F888 8FB00018 */ lw $s0, 0x0018($sp) -/* 0007C 8088F88C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 00080 8088F890 03E00008 */ jr $ra -/* 00084 8088F894 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Update.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Update.s deleted file mode 100644 index 2111328ff7..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Update.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel BgIceObjects_Update -/* 00C24 80890434 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00C28 80890438 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00C2C 8089043C 8C990164 */ lw $t9, 0x0164($a0) ## 00000164 -/* 00C30 80890440 0320F809 */ jalr $ra, $t9 -/* 00C34 80890444 00000000 */ nop -/* 00C38 80890448 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00C3C 8089044C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00C40 80890450 03E00008 */ jr $ra -/* 00C44 80890454 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088F8C8.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088F8C8.s deleted file mode 100644 index adb667aab6..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088F8C8.s +++ /dev/null @@ -1,349 +0,0 @@ -.late_rodata -glabel D_80890520 - .float -1260.0 -glabel D_80890524 - .float -1780.0 - -.text -glabel func_8088F8C8 -/* 000B8 8088F8C8 AFA50004 */ sw $a1, 0x0004($sp) -/* 000BC 8088F8CC 84830158 */ lh $v1, 0x0158($a0) ## 00000158 -/* 000C0 8088F8D0 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000 -/* 000C4 8088F8D4 50600004 */ beql $v1, $zero, .L8088F8E8 -/* 000C8 8088F8D8 C4840024 */ lwc1 $f4, 0x0024($a0) ## 00000024 -/* 000CC 8088F8DC 5461008A */ bnel $v1, $at, .L8088FB08 -/* 000D0 8088F8E0 C484002C */ lwc1 $f4, 0x002C($a0) ## 0000002C -/* 000D4 8088F8E4 C4840024 */ lwc1 $f4, 0x0024($a0) ## 00000024 -.L8088F8E8: -/* 000D8 8088F8E8 3C0F8089 */ lui $t7, %hi(D_808904C8) ## $t7 = 80890000 -/* 000DC 8088F8EC 85EF04C8 */ lh $t7, %lo(D_808904C8)($t7) -/* 000E0 8088F8F0 4600218D */ trunc.w.s $f6, $f4 -/* 000E4 8088F8F4 3C188089 */ lui $t8, %hi(D_808904CA) ## $t8 = 80890000 -/* 000E8 8088F8F8 44023000 */ mfc1 $v0, $f6 -/* 000EC 8088F8FC 00000000 */ nop -/* 000F0 8088F900 00021400 */ sll $v0, $v0, 16 -/* 000F4 8088F904 00021403 */ sra $v0, $v0, 16 -/* 000F8 8088F908 144F000C */ bne $v0, $t7, .L8088F93C -/* 000FC 8088F90C 00000000 */ nop -/* 00100 8088F910 14600004 */ bne $v1, $zero, .L8088F924 -/* 00104 8088F914 3C028089 */ lui $v0, %hi(D_808904EA) ## $v0 = 80890000 -/* 00108 8088F918 3C028089 */ lui $v0, %hi(D_808904E8) ## $v0 = 80890000 -/* 0010C 8088F91C 10000002 */ beq $zero, $zero, .L8088F928 -/* 00110 8088F920 844204E8 */ lh $v0, %lo(D_808904E8)($v0) -.L8088F924: -/* 00114 8088F924 844204EA */ lh $v0, %lo(D_808904EA)($v0) -.L8088F928: -/* 00118 8088F928 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 0011C 8088F92C 00000000 */ nop -/* 00120 8088F930 468042A0 */ cvt.s.w $f10, $f8 -/* 00124 8088F934 03E00008 */ jr $ra -/* 00128 8088F938 E48A0170 */ swc1 $f10, 0x0170($a0) ## 00000170 -.L8088F93C: -/* 0012C 8088F93C 871804CA */ lh $t8, %lo(D_808904CA)($t8) -/* 00130 8088F940 3C198089 */ lui $t9, %hi(D_808904CC) ## $t9 = 80890000 -/* 00134 8088F944 1458000C */ bne $v0, $t8, .L8088F978 -/* 00138 8088F948 00000000 */ nop -/* 0013C 8088F94C 14600004 */ bne $v1, $zero, .L8088F960 -/* 00140 8088F950 3C028089 */ lui $v0, %hi(D_808904EE) ## $v0 = 80890000 -/* 00144 8088F954 3C028089 */ lui $v0, %hi(D_808904EC) ## $v0 = 80890000 -/* 00148 8088F958 10000002 */ beq $zero, $zero, .L8088F964 -/* 0014C 8088F95C 844204EC */ lh $v0, %lo(D_808904EC)($v0) -.L8088F960: -/* 00150 8088F960 844204EE */ lh $v0, %lo(D_808904EE)($v0) -.L8088F964: -/* 00154 8088F964 44828000 */ mtc1 $v0, $f16 ## $f16 = -0.00 -/* 00158 8088F968 00000000 */ nop -/* 0015C 8088F96C 468084A0 */ cvt.s.w $f18, $f16 -/* 00160 8088F970 03E00008 */ jr $ra -/* 00164 8088F974 E4920170 */ swc1 $f18, 0x0170($a0) ## 00000170 -.L8088F978: -/* 00168 8088F978 873904CC */ lh $t9, %lo(D_808904CC)($t9) -/* 0016C 8088F97C 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003 -/* 00170 8088F980 00054040 */ sll $t0, $a1, 1 -/* 00174 8088F984 1459000C */ bne $v0, $t9, .L8088F9B8 -/* 00178 8088F988 3C098089 */ lui $t1, %hi(D_808904C8) ## $t1 = 80890000 -/* 0017C 8088F98C 14600004 */ bne $v1, $zero, .L8088F9A0 -/* 00180 8088F990 3C028089 */ lui $v0, %hi(D_808904F2) ## $v0 = 80890000 -/* 00184 8088F994 3C028089 */ lui $v0, %hi(D_808904F0) ## $v0 = 80890000 -/* 00188 8088F998 10000002 */ beq $zero, $zero, .L8088F9A4 -/* 0018C 8088F99C 844204F0 */ lh $v0, %lo(D_808904F0)($v0) -.L8088F9A0: -/* 00190 8088F9A0 844204F2 */ lh $v0, %lo(D_808904F2)($v0) -.L8088F9A4: -/* 00194 8088F9A4 44822000 */ mtc1 $v0, $f4 ## $f4 = -0.00 -/* 00198 8088F9A8 00000000 */ nop -/* 0019C 8088F9AC 468021A0 */ cvt.s.w $f6, $f4 -/* 001A0 8088F9B0 03E00008 */ jr $ra -/* 001A4 8088F9B4 E4860170 */ swc1 $f6, 0x0170($a0) ## 00000170 -.L8088F9B8: -/* 001A8 8088F9B8 252904C8 */ addiu $t1, $t1, %lo(D_808904C8) ## $t1 = 808904C8 -/* 001AC 8088F9BC 01093021 */ addu $a2, $t0, $t1 -/* 001B0 8088F9C0 84CA0000 */ lh $t2, 0x0000($a2) ## 00000000 -/* 001B4 8088F9C4 544A0011 */ bnel $v0, $t2, .L8088FA0C -/* 001B8 8088F9C8 84CD0002 */ lh $t5, 0x0002($a2) ## 00000002 -/* 001BC 8088F9CC 14600006 */ bne $v1, $zero, .L8088F9E8 -/* 001C0 8088F9D0 00056080 */ sll $t4, $a1, 2 -/* 001C4 8088F9D4 00055880 */ sll $t3, $a1, 2 -/* 001C8 8088F9D8 3C028089 */ lui $v0, %hi(D_808904E8) ## $v0 = 80890000 -/* 001CC 8088F9DC 004B1021 */ addu $v0, $v0, $t3 -/* 001D0 8088F9E0 10000004 */ beq $zero, $zero, .L8088F9F4 -/* 001D4 8088F9E4 844204E8 */ lh $v0, %lo(D_808904E8)($v0) -.L8088F9E8: -/* 001D8 8088F9E8 3C028089 */ lui $v0, %hi(D_808904EA) ## $v0 = 80890000 -/* 001DC 8088F9EC 004C1021 */ addu $v0, $v0, $t4 -/* 001E0 8088F9F0 844204EA */ lh $v0, %lo(D_808904EA)($v0) -.L8088F9F4: -/* 001E4 8088F9F4 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 001E8 8088F9F8 00000000 */ nop -/* 001EC 8088F9FC 468042A0 */ cvt.s.w $f10, $f8 -/* 001F0 8088FA00 03E00008 */ jr $ra -/* 001F4 8088FA04 E48A0170 */ swc1 $f10, 0x0170($a0) ## 00000170 -.L8088FA08: -/* 001F8 8088FA08 84CD0002 */ lh $t5, 0x0002($a2) ## 00000002 -.L8088FA0C: -/* 001FC 8088FA0C 544D0011 */ bnel $v0, $t5, .L8088FA54 -/* 00200 8088FA10 84D80004 */ lh $t8, 0x0004($a2) ## 00000004 -/* 00204 8088FA14 14600006 */ bne $v1, $zero, .L8088FA30 -/* 00208 8088FA18 00057880 */ sll $t7, $a1, 2 -/* 0020C 8088FA1C 00057080 */ sll $t6, $a1, 2 -/* 00210 8088FA20 3C028089 */ lui $v0, %hi(D_808904EC) ## $v0 = 80890000 -/* 00214 8088FA24 004E1021 */ addu $v0, $v0, $t6 -/* 00218 8088FA28 10000004 */ beq $zero, $zero, .L8088FA3C -/* 0021C 8088FA2C 844204EC */ lh $v0, %lo(D_808904EC)($v0) -.L8088FA30: -/* 00220 8088FA30 3C028089 */ lui $v0, %hi(D_808904EE) ## $v0 = 80890000 -/* 00224 8088FA34 004F1021 */ addu $v0, $v0, $t7 -/* 00228 8088FA38 844204EE */ lh $v0, %lo(D_808904EE)($v0) -.L8088FA3C: -/* 0022C 8088FA3C 44828000 */ mtc1 $v0, $f16 ## $f16 = -0.00 -/* 00230 8088FA40 00000000 */ nop -/* 00234 8088FA44 468084A0 */ cvt.s.w $f18, $f16 -/* 00238 8088FA48 03E00008 */ jr $ra -/* 0023C 8088FA4C E4920170 */ swc1 $f18, 0x0170($a0) ## 00000170 -.L8088FA50: -/* 00240 8088FA50 84D80004 */ lh $t8, 0x0004($a2) ## 00000004 -.L8088FA54: -/* 00244 8088FA54 54580011 */ bnel $v0, $t8, .L8088FA9C -/* 00248 8088FA58 84C90006 */ lh $t1, 0x0006($a2) ## 00000006 -/* 0024C 8088FA5C 14600006 */ bne $v1, $zero, .L8088FA78 -/* 00250 8088FA60 00054080 */ sll $t0, $a1, 2 -/* 00254 8088FA64 0005C880 */ sll $t9, $a1, 2 -/* 00258 8088FA68 3C028089 */ lui $v0, %hi(D_808904F0) ## $v0 = 80890000 -/* 0025C 8088FA6C 00591021 */ addu $v0, $v0, $t9 -/* 00260 8088FA70 10000004 */ beq $zero, $zero, .L8088FA84 -/* 00264 8088FA74 844204F0 */ lh $v0, %lo(D_808904F0)($v0) -.L8088FA78: -/* 00268 8088FA78 3C028089 */ lui $v0, %hi(D_808904F2) ## $v0 = 80890000 -/* 0026C 8088FA7C 00481021 */ addu $v0, $v0, $t0 -/* 00270 8088FA80 844204F2 */ lh $v0, %lo(D_808904F2)($v0) -.L8088FA84: -/* 00274 8088FA84 44822000 */ mtc1 $v0, $f4 ## $f4 = -0.00 -/* 00278 8088FA88 00000000 */ nop -/* 0027C 8088FA8C 468021A0 */ cvt.s.w $f6, $f4 -/* 00280 8088FA90 03E00008 */ jr $ra -/* 00284 8088FA94 E4860170 */ swc1 $f6, 0x0170($a0) ## 00000170 -.L8088FA98: -/* 00288 8088FA98 84C90006 */ lh $t1, 0x0006($a2) ## 00000006 -.L8088FA9C: -/* 0028C 8088FA9C 14490010 */ bne $v0, $t1, .L8088FAE0 -/* 00290 8088FAA0 00000000 */ nop -/* 00294 8088FAA4 14600006 */ bne $v1, $zero, .L8088FAC0 -/* 00298 8088FAA8 00055880 */ sll $t3, $a1, 2 -/* 0029C 8088FAAC 00055080 */ sll $t2, $a1, 2 -/* 002A0 8088FAB0 3C028089 */ lui $v0, %hi(D_808904F4) ## $v0 = 80890000 -/* 002A4 8088FAB4 004A1021 */ addu $v0, $v0, $t2 -/* 002A8 8088FAB8 10000004 */ beq $zero, $zero, .L8088FACC -/* 002AC 8088FABC 844204F4 */ lh $v0, %lo(D_808904F4)($v0) -.L8088FAC0: -/* 002B0 8088FAC0 3C028089 */ lui $v0, %hi(D_808904F6) ## $v0 = 80890000 -/* 002B4 8088FAC4 004B1021 */ addu $v0, $v0, $t3 -/* 002B8 8088FAC8 844204F6 */ lh $v0, %lo(D_808904F6)($v0) -.L8088FACC: -/* 002BC 8088FACC 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 002C0 8088FAD0 00000000 */ nop -/* 002C4 8088FAD4 468042A0 */ cvt.s.w $f10, $f8 -/* 002C8 8088FAD8 03E00008 */ jr $ra -/* 002CC 8088FADC E48A0170 */ swc1 $f10, 0x0170($a0) ## 00000170 -.L8088FAE0: -/* 002D0 8088FAE0 14600005 */ bne $v1, $zero, .L8088FAF8 -/* 002D4 8088FAE4 3C018089 */ lui $at, %hi(D_80890520) ## $at = 80890000 -/* 002D8 8088FAE8 3C01C3AA */ lui $at, 0xC3AA ## $at = C3AA0000 -/* 002DC 8088FAEC 44818000 */ mtc1 $at, $f16 ## $f16 = -340.00 -/* 002E0 8088FAF0 03E00008 */ jr $ra -/* 002E4 8088FAF4 E4900170 */ swc1 $f16, 0x0170($a0) ## 00000170 -.L8088FAF8: -/* 002E8 8088FAF8 C4320520 */ lwc1 $f18, %lo(D_80890520)($at) -/* 002EC 8088FAFC 03E00008 */ jr $ra -/* 002F0 8088FB00 E4920170 */ swc1 $f18, 0x0170($a0) ## 00000170 -.L8088FB04: -/* 002F4 8088FB04 C484002C */ lwc1 $f4, 0x002C($a0) ## 0000002C -.L8088FB08: -/* 002F8 8088FB08 3C0D8089 */ lui $t5, %hi(D_808904D8) ## $t5 = 80890000 -/* 002FC 8088FB0C 85AD04D8 */ lh $t5, %lo(D_808904D8)($t5) -/* 00300 8088FB10 4600218D */ trunc.w.s $f6, $f4 -/* 00304 8088FB14 3C0E8089 */ lui $t6, %hi(D_808904DA) ## $t6 = 80890000 -/* 00308 8088FB18 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 0030C 8088FB1C 44023000 */ mfc1 $v0, $f6 -/* 00310 8088FB20 00000000 */ nop -/* 00314 8088FB24 00021400 */ sll $v0, $v0, 16 -/* 00318 8088FB28 00021403 */ sra $v0, $v0, 16 -/* 0031C 8088FB2C 144D000C */ bne $v0, $t5, .L8088FB60 -/* 00320 8088FB30 00000000 */ nop -/* 00324 8088FB34 14610004 */ bne $v1, $at, .L8088FB48 -/* 00328 8088FB38 3C028089 */ lui $v0, %hi(D_80890506) ## $v0 = 80890000 -/* 0032C 8088FB3C 3C028089 */ lui $v0, %hi(D_80890504) ## $v0 = 80890000 -/* 00330 8088FB40 10000002 */ beq $zero, $zero, .L8088FB4C -/* 00334 8088FB44 84420504 */ lh $v0, %lo(D_80890504)($v0) -.L8088FB48: -/* 00338 8088FB48 84420506 */ lh $v0, %lo(D_80890506)($v0) -.L8088FB4C: -/* 0033C 8088FB4C 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 00340 8088FB50 00000000 */ nop -/* 00344 8088FB54 468042A0 */ cvt.s.w $f10, $f8 -/* 00348 8088FB58 03E00008 */ jr $ra -/* 0034C 8088FB5C E48A0168 */ swc1 $f10, 0x0168($a0) ## 00000168 -.L8088FB60: -/* 00350 8088FB60 85CE04DA */ lh $t6, %lo(D_808904DA)($t6) -/* 00354 8088FB64 3C0F8089 */ lui $t7, %hi(D_808904DC) ## $t7 = 80890000 -/* 00358 8088FB68 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 0035C 8088FB6C 144E000C */ bne $v0, $t6, .L8088FBA0 -/* 00360 8088FB70 00000000 */ nop -/* 00364 8088FB74 14610004 */ bne $v1, $at, .L8088FB88 -/* 00368 8088FB78 3C028089 */ lui $v0, %hi(D_8089050A) ## $v0 = 80890000 -/* 0036C 8088FB7C 3C028089 */ lui $v0, %hi(D_80890508) ## $v0 = 80890000 -/* 00370 8088FB80 10000002 */ beq $zero, $zero, .L8088FB8C -/* 00374 8088FB84 84420508 */ lh $v0, %lo(D_80890508)($v0) -.L8088FB88: -/* 00378 8088FB88 8442050A */ lh $v0, %lo(D_8089050A)($v0) -.L8088FB8C: -/* 0037C 8088FB8C 44828000 */ mtc1 $v0, $f16 ## $f16 = -0.00 -/* 00380 8088FB90 00000000 */ nop -/* 00384 8088FB94 468084A0 */ cvt.s.w $f18, $f16 -/* 00388 8088FB98 03E00008 */ jr $ra -/* 0038C 8088FB9C E4920168 */ swc1 $f18, 0x0168($a0) ## 00000168 -.L8088FBA0: -/* 00390 8088FBA0 85EF04DC */ lh $t7, %lo(D_808904DC)($t7) -/* 00394 8088FBA4 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003 -/* 00398 8088FBA8 0005C040 */ sll $t8, $a1, 1 -/* 0039C 8088FBAC 144F000D */ bne $v0, $t7, .L8088FBE4 -/* 003A0 8088FBB0 3C198089 */ lui $t9, %hi(D_808904D8) ## $t9 = 80890000 -/* 003A4 8088FBB4 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 003A8 8088FBB8 14610004 */ bne $v1, $at, .L8088FBCC -/* 003AC 8088FBBC 3C028089 */ lui $v0, %hi(D_8089050E) ## $v0 = 80890000 -/* 003B0 8088FBC0 3C028089 */ lui $v0, %hi(D_8089050C) ## $v0 = 80890000 -/* 003B4 8088FBC4 10000002 */ beq $zero, $zero, .L8088FBD0 -/* 003B8 8088FBC8 8442050C */ lh $v0, %lo(D_8089050C)($v0) -.L8088FBCC: -/* 003BC 8088FBCC 8442050E */ lh $v0, %lo(D_8089050E)($v0) -.L8088FBD0: -/* 003C0 8088FBD0 44822000 */ mtc1 $v0, $f4 ## $f4 = -0.00 -/* 003C4 8088FBD4 00000000 */ nop -/* 003C8 8088FBD8 468021A0 */ cvt.s.w $f6, $f4 -/* 003CC 8088FBDC 03E00008 */ jr $ra -/* 003D0 8088FBE0 E4860168 */ swc1 $f6, 0x0168($a0) ## 00000168 -.L8088FBE4: -/* 003D4 8088FBE4 273904D8 */ addiu $t9, $t9, %lo(D_808904D8) ## $t9 = 808904D8 -/* 003D8 8088FBE8 03193021 */ addu $a2, $t8, $t9 -/* 003DC 8088FBEC 84C80000 */ lh $t0, 0x0000($a2) ## 00000000 -/* 003E0 8088FBF0 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 003E4 8088FBF4 54480011 */ bnel $v0, $t0, .L8088FC3C -/* 003E8 8088FBF8 84CB0002 */ lh $t3, 0x0002($a2) ## 00000002 -/* 003EC 8088FBFC 14610006 */ bne $v1, $at, .L8088FC18 -/* 003F0 8088FC00 00055080 */ sll $t2, $a1, 2 -/* 003F4 8088FC04 00054880 */ sll $t1, $a1, 2 -/* 003F8 8088FC08 3C028089 */ lui $v0, %hi(D_80890504) ## $v0 = 80890000 -/* 003FC 8088FC0C 00491021 */ addu $v0, $v0, $t1 -/* 00400 8088FC10 10000004 */ beq $zero, $zero, .L8088FC24 -/* 00404 8088FC14 84420504 */ lh $v0, %lo(D_80890504)($v0) -.L8088FC18: -/* 00408 8088FC18 3C028089 */ lui $v0, %hi(D_80890506) ## $v0 = 80890000 -/* 0040C 8088FC1C 004A1021 */ addu $v0, $v0, $t2 -/* 00410 8088FC20 84420506 */ lh $v0, %lo(D_80890506)($v0) -.L8088FC24: -/* 00414 8088FC24 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 00418 8088FC28 00000000 */ nop -/* 0041C 8088FC2C 468042A0 */ cvt.s.w $f10, $f8 -/* 00420 8088FC30 03E00008 */ jr $ra -/* 00424 8088FC34 E48A0168 */ swc1 $f10, 0x0168($a0) ## 00000168 -.L8088FC38: -/* 00428 8088FC38 84CB0002 */ lh $t3, 0x0002($a2) ## 00000002 -.L8088FC3C: -/* 0042C 8088FC3C 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 00430 8088FC40 544B0011 */ bnel $v0, $t3, .L8088FC88 -/* 00434 8088FC44 84CE0004 */ lh $t6, 0x0004($a2) ## 00000004 -/* 00438 8088FC48 14610006 */ bne $v1, $at, .L8088FC64 -/* 0043C 8088FC4C 00056880 */ sll $t5, $a1, 2 -/* 00440 8088FC50 00056080 */ sll $t4, $a1, 2 -/* 00444 8088FC54 3C028089 */ lui $v0, %hi(D_80890508) ## $v0 = 80890000 -/* 00448 8088FC58 004C1021 */ addu $v0, $v0, $t4 -/* 0044C 8088FC5C 10000004 */ beq $zero, $zero, .L8088FC70 -/* 00450 8088FC60 84420508 */ lh $v0, %lo(D_80890508)($v0) -.L8088FC64: -/* 00454 8088FC64 3C028089 */ lui $v0, %hi(D_8089050A) ## $v0 = 80890000 -/* 00458 8088FC68 004D1021 */ addu $v0, $v0, $t5 -/* 0045C 8088FC6C 8442050A */ lh $v0, %lo(D_8089050A)($v0) -.L8088FC70: -/* 00460 8088FC70 44828000 */ mtc1 $v0, $f16 ## $f16 = -0.00 -/* 00464 8088FC74 00000000 */ nop -/* 00468 8088FC78 468084A0 */ cvt.s.w $f18, $f16 -/* 0046C 8088FC7C 03E00008 */ jr $ra -/* 00470 8088FC80 E4920168 */ swc1 $f18, 0x0168($a0) ## 00000168 -.L8088FC84: -/* 00474 8088FC84 84CE0004 */ lh $t6, 0x0004($a2) ## 00000004 -.L8088FC88: -/* 00478 8088FC88 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 0047C 8088FC8C 544E0011 */ bnel $v0, $t6, .L8088FCD4 -/* 00480 8088FC90 84D90006 */ lh $t9, 0x0006($a2) ## 00000006 -/* 00484 8088FC94 14610006 */ bne $v1, $at, .L8088FCB0 -/* 00488 8088FC98 0005C080 */ sll $t8, $a1, 2 -/* 0048C 8088FC9C 00057880 */ sll $t7, $a1, 2 -/* 00490 8088FCA0 3C028089 */ lui $v0, %hi(D_8089050C) ## $v0 = 80890000 -/* 00494 8088FCA4 004F1021 */ addu $v0, $v0, $t7 -/* 00498 8088FCA8 10000004 */ beq $zero, $zero, .L8088FCBC -/* 0049C 8088FCAC 8442050C */ lh $v0, %lo(D_8089050C)($v0) -.L8088FCB0: -/* 004A0 8088FCB0 3C028089 */ lui $v0, %hi(D_8089050E) ## $v0 = 80890000 -/* 004A4 8088FCB4 00581021 */ addu $v0, $v0, $t8 -/* 004A8 8088FCB8 8442050E */ lh $v0, %lo(D_8089050E)($v0) -.L8088FCBC: -/* 004AC 8088FCBC 44822000 */ mtc1 $v0, $f4 ## $f4 = -0.00 -/* 004B0 8088FCC0 00000000 */ nop -/* 004B4 8088FCC4 468021A0 */ cvt.s.w $f6, $f4 -/* 004B8 8088FCC8 03E00008 */ jr $ra -/* 004BC 8088FCCC E4860168 */ swc1 $f6, 0x0168($a0) ## 00000168 -.L8088FCD0: -/* 004C0 8088FCD0 84D90006 */ lh $t9, 0x0006($a2) ## 00000006 -.L8088FCD4: -/* 004C4 8088FCD4 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 004C8 8088FCD8 14590011 */ bne $v0, $t9, .L8088FD20 -/* 004CC 8088FCDC 00000000 */ nop -/* 004D0 8088FCE0 24014000 */ addiu $at, $zero, 0x4000 ## $at = 00004000 -/* 004D4 8088FCE4 14610006 */ bne $v1, $at, .L8088FD00 -/* 004D8 8088FCE8 00054880 */ sll $t1, $a1, 2 -/* 004DC 8088FCEC 00054080 */ sll $t0, $a1, 2 -/* 004E0 8088FCF0 3C028089 */ lui $v0, %hi(D_80890510) ## $v0 = 80890000 -/* 004E4 8088FCF4 00481021 */ addu $v0, $v0, $t0 -/* 004E8 8088FCF8 10000004 */ beq $zero, $zero, .L8088FD0C -/* 004EC 8088FCFC 84420510 */ lh $v0, %lo(D_80890510)($v0) -.L8088FD00: -/* 004F0 8088FD00 3C028089 */ lui $v0, %hi(D_80890512) ## $v0 = 80890000 -/* 004F4 8088FD04 00491021 */ addu $v0, $v0, $t1 -/* 004F8 8088FD08 84420512 */ lh $v0, %lo(D_80890512)($v0) -.L8088FD0C: -/* 004FC 8088FD0C 44824000 */ mtc1 $v0, $f8 ## $f8 = -0.00 -/* 00500 8088FD10 00000000 */ nop -/* 00504 8088FD14 468042A0 */ cvt.s.w $f10, $f8 -/* 00508 8088FD18 03E00008 */ jr $ra -/* 0050C 8088FD1C E48A0168 */ swc1 $f10, 0x0168($a0) ## 00000168 -.L8088FD20: -/* 00510 8088FD20 14610004 */ bne $v1, $at, .L8088FD34 -/* 00514 8088FD24 3C01C457 */ lui $at, 0xC457 ## $at = C4570000 -/* 00518 8088FD28 44818000 */ mtc1 $at, $f16 ## $f16 = -860.00 -/* 0051C 8088FD2C 03E00008 */ jr $ra -/* 00520 8088FD30 E4900168 */ swc1 $f16, 0x0168($a0) ## 00000168 -.L8088FD34: -/* 00524 8088FD34 3C018089 */ lui $at, %hi(D_80890524) ## $at = 80890000 -/* 00528 8088FD38 C4320524 */ lwc1 $f18, %lo(D_80890524)($at) -/* 0052C 8088FD3C E4920168 */ swc1 $f18, 0x0168($a0) ## 00000168 -/* 00530 8088FD40 03E00008 */ jr $ra -/* 00534 8088FD44 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FD48.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FD48.s deleted file mode 100644 index 9b7e4de68e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FD48.s +++ /dev/null @@ -1,119 +0,0 @@ -.late_rodata -glabel D_80890528 - .float -1660.0 -glabel D_8089052C - .float -1060.0 -glabel D_80890530 - .float -1580.0 -glabel D_80890534 - .float -1180.0 - -.text -glabel func_8088FD48 -/* 00538 8088FD48 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0053C 8088FD4C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00540 8088FD50 AFA5001C */ sw $a1, 0x001C($sp) -/* 00544 8088FD54 C4820060 */ lwc1 $f2, 0x0060($a0) ## 00000060 -/* 00548 8088FD58 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 0054C 8088FD5C 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 00550 8088FD60 3C018089 */ lui $at, %hi(D_80890528) ## $at = 80890000 -/* 00554 8088FD64 4602203C */ c.lt.s $f4, $f2 -/* 00558 8088FD68 00000000 */ nop -/* 0055C 8088FD6C 45030034 */ bc1tl .L8088FE40 -/* 00560 8088FD70 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00564 8088FD74 C4800024 */ lwc1 $f0, 0x0024($a0) ## 00000024 -/* 00568 8088FD78 C4260528 */ lwc1 $f6, %lo(D_80890528)($at) -/* 0056C 8088FD7C 3C018089 */ lui $at, %hi(D_8089052C) ## $at = 80890000 -/* 00570 8088FD80 4606003E */ c.le.s $f0, $f6 -/* 00574 8088FD84 00000000 */ nop -/* 00578 8088FD88 45000006 */ bc1f .L8088FDA4 -/* 0057C 8088FD8C 00000000 */ nop -/* 00580 8088FD90 C428052C */ lwc1 $f8, %lo(D_8089052C)($at) -/* 00584 8088FD94 C48A002C */ lwc1 $f10, 0x002C($a0) ## 0000002C -/* 00588 8088FD98 4608503E */ c.le.s $f10, $f8 -/* 0058C 8088FD9C 00000000 */ nop -/* 00590 8088FDA0 45010026 */ bc1t .L8088FE3C -.L8088FDA4: -/* 00594 8088FDA4 3C018089 */ lui $at, %hi(D_80890530) ## $at = 80890000 -/* 00598 8088FDA8 C4300530 */ lwc1 $f16, %lo(D_80890530)($at) -/* 0059C 8088FDAC 3C01C3D2 */ lui $at, 0xC3D2 ## $at = C3D20000 -/* 005A0 8088FDB0 4610003E */ c.le.s $f0, $f16 -/* 005A4 8088FDB4 00000000 */ nop -/* 005A8 8088FDB8 45020008 */ bc1fl .L8088FDDC -/* 005AC 8088FDBC 3C01C475 */ lui $at, 0xC475 ## $at = C4750000 -/* 005B0 8088FDC0 C4F2002C */ lwc1 $f18, 0x002C($a3) ## 0000002C -/* 005B4 8088FDC4 44812000 */ mtc1 $at, $f4 ## $f4 = -980.00 -/* 005B8 8088FDC8 00000000 */ nop -/* 005BC 8088FDCC 4612203E */ c.le.s $f4, $f18 -/* 005C0 8088FDD0 00000000 */ nop -/* 005C4 8088FDD4 45010019 */ bc1t .L8088FE3C -/* 005C8 8088FDD8 3C01C475 */ lui $at, 0xC475 ## $at = C4750000 -.L8088FDDC: -/* 005CC 8088FDDC 44813000 */ mtc1 $at, $f6 ## $f6 = -980.00 -/* 005D0 8088FDE0 3C018089 */ lui $at, %hi(D_80890534) ## $at = 80890000 -/* 005D4 8088FDE4 4600303E */ c.le.s $f6, $f0 -/* 005D8 8088FDE8 00000000 */ nop -/* 005DC 8088FDEC 45020007 */ bc1fl .L8088FE0C -/* 005E0 8088FDF0 3C01C457 */ lui $at, 0xC457 ## $at = C4570000 -/* 005E4 8088FDF4 C4280534 */ lwc1 $f8, %lo(D_80890534)($at) -/* 005E8 8088FDF8 C4EA002C */ lwc1 $f10, 0x002C($a3) ## 0000002C -/* 005EC 8088FDFC 4608503E */ c.le.s $f10, $f8 -/* 005F0 8088FE00 00000000 */ nop -/* 005F4 8088FE04 4501000D */ bc1t .L8088FE3C -/* 005F8 8088FE08 3C01C457 */ lui $at, 0xC457 ## $at = C4570000 -.L8088FE0C: -/* 005FC 8088FE0C 44818000 */ mtc1 $at, $f16 ## $f16 = -860.00 -/* 00600 8088FE10 3C01C42F */ lui $at, 0xC42F ## $at = C42F0000 -/* 00604 8088FE14 4600803E */ c.le.s $f16, $f0 -/* 00608 8088FE18 00000000 */ nop -/* 0060C 8088FE1C 45020029 */ bc1fl .L8088FEC4 -/* 00610 8088FE20 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00614 8088FE24 C4F2002C */ lwc1 $f18, 0x002C($a3) ## 0000002C -/* 00618 8088FE28 44812000 */ mtc1 $at, $f4 ## $f4 = -700.00 -/* 0061C 8088FE2C 00000000 */ nop -/* 00620 8088FE30 4612203E */ c.le.s $f4, $f18 -/* 00624 8088FE34 00000000 */ nop -/* 00628 8088FE38 45000021 */ bc1f .L8088FEC0 -.L8088FE3C: -/* 0062C 8088FE3C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -.L8088FE40: -/* 00630 8088FE40 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00 -/* 00634 8088FE44 24E40028 */ addiu $a0, $a3, 0x0028 ## $a0 = 00000028 -/* 00638 8088FE48 3C05C396 */ lui $a1, 0xC396 ## $a1 = C3960000 -/* 0063C 8088FE4C 46061200 */ add.s $f8, $f2, $f6 -/* 00640 8088FE50 E4E80060 */ swc1 $f8, 0x0060($a3) ## 00000060 -/* 00644 8088FE54 8CE60060 */ lw $a2, 0x0060($a3) ## 00000060 -/* 00648 8088FE58 0C01DE80 */ jal Math_StepToF - -/* 0064C 8088FE5C AFA70018 */ sw $a3, 0x0018($sp) -/* 00650 8088FE60 10400017 */ beq $v0, $zero, .L8088FEC0 -/* 00654 8088FE64 8FA70018 */ lw $a3, 0x0018($sp) -/* 00658 8088FE68 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 0065C 8088FE6C 44812000 */ mtc1 $at, $f4 ## $f4 = 60.00 -/* 00660 8088FE70 C4F2000C */ lwc1 $f18, 0x000C($a3) ## 0000000C -/* 00664 8088FE74 84EE001C */ lh $t6, 0x001C($a3) ## 0000001C -/* 00668 8088FE78 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -/* 0066C 8088FE7C 46049181 */ sub.s $f6, $f18, $f4 -/* 00670 8088FE80 C4F00008 */ lwc1 $f16, 0x0008($a3) ## 00000008 -/* 00674 8088FE84 C4E80010 */ lwc1 $f8, 0x0010($a3) ## 00000010 -/* 00678 8088FE88 E4EA0060 */ swc1 $f10, 0x0060($a3) ## 00000060 -/* 0067C 8088FE8C E4E60028 */ swc1 $f6, 0x0028($a3) ## 00000028 -/* 00680 8088FE90 E4F00024 */ swc1 $f16, 0x0024($a3) ## 00000024 -/* 00684 8088FE94 11C00007 */ beq $t6, $zero, .L8088FEB4 -/* 00688 8088FE98 E4E8002C */ swc1 $f8, 0x002C($a3) ## 0000002C -/* 0068C 8088FE9C 8FA4001C */ lw $a0, 0x001C($sp) -/* 00690 8088FEA0 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000 -/* 00694 8088FEA4 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007 -/* 00698 8088FEA8 0C00B7D5 */ jal func_8002DF54 -/* 0069C 8088FEAC AFA70018 */ sw $a3, 0x0018($sp) -/* 006A0 8088FEB0 8FA70018 */ lw $a3, 0x0018($sp) -.L8088FEB4: -/* 006A4 8088FEB4 3C0F8089 */ lui $t7, %hi(func_80890360) ## $t7 = 80890000 -/* 006A8 8088FEB8 25EF0360 */ addiu $t7, $t7, %lo(func_80890360) ## $t7 = 80890360 -/* 006AC 8088FEBC ACEF0164 */ sw $t7, 0x0164($a3) ## 00000164 -.L8088FEC0: -/* 006B0 8088FEC0 8FBF0014 */ lw $ra, 0x0014($sp) -.L8088FEC4: -/* 006B4 8088FEC4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 006B8 8088FEC8 03E00008 */ jr $ra -/* 006BC 8088FECC 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FED0.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FED0.s deleted file mode 100644 index 951c0dcee1..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FED0.s +++ /dev/null @@ -1,69 +0,0 @@ -glabel func_8088FED0 -/* 006C0 8088FED0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 006C4 8088FED4 AFBF001C */ sw $ra, 0x001C($sp) -/* 006C8 8088FED8 AFB10018 */ sw $s1, 0x0018($sp) -/* 006CC 8088FEDC AFB00014 */ sw $s0, 0x0014($sp) -/* 006D0 8088FEE0 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 006D4 8088FEE4 C4840150 */ lwc1 $f4, 0x0150($a0) ## 00000150 -/* 006D8 8088FEE8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 006DC 8088FEEC 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 006E0 8088FEF0 46040032 */ c.eq.s $f0, $f4 -/* 006E4 8088FEF4 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 006E8 8088FEF8 45030029 */ bc1tl .L8088FFA0 -/* 006EC 8088FEFC C60A0060 */ lwc1 $f10, 0x0060($s0) ## 00000060 -/* 006F0 8088FF00 8C4E0680 */ lw $t6, 0x0680($v0) ## 00000680 -/* 006F4 8088FF04 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 006F8 8088FF08 01C17824 */ and $t7, $t6, $at -/* 006FC 8088FF0C AC4F0680 */ sw $t7, 0x0680($v0) ## 00000680 -/* 00700 8088FF10 C4860150 */ lwc1 $f6, 0x0150($a0) ## 00000150 -/* 00704 8088FF14 4606003C */ c.lt.s $f0, $f6 -/* 00708 8088FF18 00000000 */ nop -/* 0070C 8088FF1C 4502001D */ bc1fl .L8088FF94 -/* 00710 8088FF20 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00714 8088FF24 0C023A62 */ jal Player_InCsMode -/* 00718 8088FF28 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 0071C 8088FF2C 14400018 */ bne $v0, $zero, .L8088FF90 -/* 00720 8088FF30 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00724 8088FF34 0C223E32 */ jal func_8088F8C8 -/* 00728 8088FF38 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 0072C 8088FF3C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00730 8088FF40 0C00B6EC */ jal func_8002DBB0 -/* 00734 8088FF44 26050168 */ addiu $a1, $s0, 0x0168 ## $a1 = 00000168 -/* 00738 8088FF48 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0073C 8088FF4C 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00 -/* 00740 8088FF50 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 00744 8088FF54 4600403C */ c.lt.s $f8, $f0 -/* 00748 8088FF58 00000000 */ nop -/* 0074C 8088FF5C 4502000D */ bc1fl .L8088FF94 -/* 00750 8088FF60 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00754 8088FF64 8E180004 */ lw $t8, 0x0004($s0) ## 00000004 -/* 00758 8088FF68 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 0075C 8088FF6C 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008 -/* 00760 8088FF70 37190010 */ ori $t9, $t8, 0x0010 ## $t9 = 00000010 -/* 00764 8088FF74 0C00B7D5 */ jal func_8002DF54 -/* 00768 8088FF78 AE190004 */ sw $t9, 0x0004($s0) ## 00000004 -/* 0076C 8088FF7C 3C098089 */ lui $t1, %hi(func_8088FFD0) ## $t1 = 80890000 -/* 00770 8088FF80 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 00774 8088FF84 2529FFD0 */ addiu $t1, $t1, %lo(func_8088FFD0) ## $t1 = 8088FFD0 -/* 00778 8088FF88 A608001C */ sh $t0, 0x001C($s0) ## 0000001C -/* 0077C 8088FF8C AE090164 */ sw $t1, 0x0164($s0) ## 00000164 -.L8088FF90: -/* 00780 8088FF90 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -.L8088FF94: -/* 00784 8088FF94 00000000 */ nop -/* 00788 8088FF98 E6000150 */ swc1 $f0, 0x0150($s0) ## 00000150 -/* 0078C 8088FF9C C60A0060 */ lwc1 $f10, 0x0060($s0) ## 00000060 -.L8088FFA0: -/* 00790 8088FFA0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00794 8088FFA4 460A003C */ c.lt.s $f0, $f10 -/* 00798 8088FFA8 00000000 */ nop -/* 0079C 8088FFAC 45020004 */ bc1fl .L8088FFC0 -/* 007A0 8088FFB0 8FBF001C */ lw $ra, 0x001C($sp) -/* 007A4 8088FFB4 0C223F52 */ jal func_8088FD48 -/* 007A8 8088FFB8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 007AC 8088FFBC 8FBF001C */ lw $ra, 0x001C($sp) -.L8088FFC0: -/* 007B0 8088FFC0 8FB00014 */ lw $s0, 0x0014($sp) -/* 007B4 8088FFC4 8FB10018 */ lw $s1, 0x0018($sp) -/* 007B8 8088FFC8 03E00008 */ jr $ra -/* 007BC 8088FFCC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FFD0.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FFD0.s deleted file mode 100644 index 7c44e740a6..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FFD0.s +++ /dev/null @@ -1,260 +0,0 @@ -.late_rodata -glabel D_80890538 - .float 1387.0 - -.text -glabel func_8088FFD0 -/* 007C0 8088FFD0 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98 -/* 007C4 8088FFD4 AFB00030 */ sw $s0, 0x0030($sp) -/* 007C8 8088FFD8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 007CC 8088FFDC AFBF0034 */ sw $ra, 0x0034($sp) -/* 007D0 8088FFE0 AFA5006C */ sw $a1, 0x006C($sp) -/* 007D4 8088FFE4 F7B40028 */ sdc1 $f20, 0x0028($sp) -/* 007D8 8088FFE8 3C054120 */ lui $a1, 0x4120 ## $a1 = 41200000 -/* 007DC 8088FFEC 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068 -/* 007E0 8088FFF0 0C01DE80 */ jal Math_StepToF - -/* 007E4 8088FFF4 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000 -/* 007E8 8088FFF8 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024 -/* 007EC 8088FFFC 8E050168 */ lw $a1, 0x0168($s0) ## 00000168 -/* 007F0 80890000 0C01DE80 */ jal Math_StepToF - -/* 007F4 80890004 8E060068 */ lw $a2, 0x0068($s0) ## 00000068 -/* 007F8 80890008 8E050170 */ lw $a1, 0x0170($s0) ## 00000170 -/* 007FC 8089000C 8E060068 */ lw $a2, 0x0068($s0) ## 00000068 -/* 00800 80890010 AFA20064 */ sw $v0, 0x0064($sp) -/* 00804 80890014 0C01DE80 */ jal Math_StepToF - -/* 00808 80890018 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C -/* 0080C 8089001C 8FA30064 */ lw $v1, 0x0064($sp) -/* 00810 80890020 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00814 80890024 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007 -/* 00818 80890028 00621824 */ and $v1, $v1, $v0 -/* 0081C 8089002C 10600031 */ beq $v1, $zero, .L808900F4 -/* 00820 80890030 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000 -/* 00824 80890034 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00828 80890038 C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060 -/* 0082C 8089003C C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 00830 80890040 C606002C */ lwc1 $f6, 0x002C($s0) ## 0000002C -/* 00834 80890044 4600403E */ c.le.s $f8, $f0 -/* 00838 80890048 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068 -/* 0083C 8089004C E6040168 */ swc1 $f4, 0x0168($s0) ## 00000168 -/* 00840 80890050 E6060170 */ swc1 $f6, 0x0170($s0) ## 00000170 -/* 00844 80890054 45020006 */ bc1fl .L80890070 -/* 00848 80890058 A600001C */ sh $zero, 0x001C($s0) ## 0000001C -/* 0084C 8089005C 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004 -/* 00850 80890060 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00854 80890064 01C17824 */ and $t7, $t6, $at -/* 00858 80890068 AE0F0004 */ sw $t7, 0x0004($s0) ## 00000004 -/* 0085C 8089006C A600001C */ sh $zero, 0x001C($s0) ## 0000001C -.L80890070: -/* 00860 80890070 0C00B7D5 */ jal func_8002DF54 -/* 00864 80890074 8FA4006C */ lw $a0, 0x006C($sp) -/* 00868 80890078 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0086C 8089007C 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 00870 80890080 24052835 */ addiu $a1, $zero, 0x2835 ## $a1 = 00002835 -/* 00874 80890084 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00878 80890088 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00 -/* 0087C 8089008C 3C018089 */ lui $at, %hi(D_80890538) ## $at = 80890000 -/* 00880 80890090 C4300538 */ lwc1 $f16, %lo(D_80890538)($at) -/* 00884 80890094 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024 -/* 00888 80890098 3C198089 */ lui $t9, %hi(func_8088FED0) ## $t9 = 80890000 -/* 0088C 8089009C 3C014382 */ lui $at, 0x4382 ## $at = 43820000 -/* 00890 808900A0 46105000 */ add.s $f0, $f10, $f16 -/* 00894 808900A4 2739FED0 */ addiu $t9, $t9, %lo(func_8088FED0) ## $t9 = 8088FED0 -/* 00898 808900A8 46000005 */ abs.s $f0, $f0 -/* 0089C 808900AC 4602003C */ c.lt.s $f0, $f2 -/* 008A0 808900B0 00000000 */ nop -/* 008A4 808900B4 4500000D */ bc1f .L808900EC -/* 008A8 808900B8 00000000 */ nop -/* 008AC 808900BC C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C -/* 008B0 808900C0 44812000 */ mtc1 $at, $f4 ## $f4 = 260.00 -/* 008B4 808900C4 3C188089 */ lui $t8, %hi(func_808903FC) ## $t8 = 80890000 -/* 008B8 808900C8 271803FC */ addiu $t8, $t8, %lo(func_808903FC) ## $t8 = 808903FC -/* 008BC 808900CC 46049000 */ add.s $f0, $f18, $f4 -/* 008C0 808900D0 46000005 */ abs.s $f0, $f0 -/* 008C4 808900D4 4602003C */ c.lt.s $f0, $f2 -/* 008C8 808900D8 00000000 */ nop -/* 008CC 808900DC 45000003 */ bc1f .L808900EC -/* 008D0 808900E0 00000000 */ nop -/* 008D4 808900E4 10000096 */ beq $zero, $zero, .L80890340 -/* 008D8 808900E8 AE180164 */ sw $t8, 0x0164($s0) ## 00000164 -.L808900EC: -/* 008DC 808900EC 10000094 */ beq $zero, $zero, .L80890340 -/* 008E0 808900F0 AE190164 */ sw $t9, 0x0164($s0) ## 00000164 -.L808900F4: -/* 008E4 808900F4 44813000 */ mtc1 $at, $f6 ## $f6 = 260.00 -/* 008E8 808900F8 C6080068 */ lwc1 $f8, 0x0068($s0) ## 00000068 -/* 008EC 808900FC 4608303C */ c.lt.s $f6, $f8 -/* 008F0 80890100 00000000 */ nop -/* 008F4 80890104 4502008F */ bc1fl .L80890344 -/* 008F8 80890108 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 008FC 8089010C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00900 80890110 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028 -/* 00904 80890114 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000 -/* 00908 80890118 460A003E */ c.le.s $f0, $f10 -/* 0090C 8089011C 00000000 */ nop -/* 00910 80890120 45020088 */ bc1fl .L80890344 -/* 00914 80890124 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00918 80890128 44816000 */ mtc1 $at, $f12 ## $f12 = 120.00 -/* 0091C 8089012C 0C00CFC8 */ jal Rand_CenteredFloat - -/* 00920 80890130 00000000 */ nop -/* 00924 80890134 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00928 80890138 E7A00048 */ swc1 $f0, 0x0048($sp) -/* 0092C 8089013C 46000506 */ mov.s $f20, $f0 -/* 00930 80890140 0C01DE1C */ jal Math_SinS - ## sins? -/* 00934 80890144 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00938 80890148 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 0093C 8089014C 44818000 */ mtc1 $at, $f16 ## $f16 = 1.50 -/* 00940 80890150 00000000 */ nop -/* 00944 80890154 46148480 */ add.s $f18, $f16, $f20 -/* 00948 80890158 46009107 */ neg.s $f4, $f18 -/* 0094C 8089015C 46040182 */ mul.s $f6, $f0, $f4 -/* 00950 80890160 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 00954 80890164 E7A6004C */ swc1 $f6, 0x004C($sp) -/* 00958 80890168 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 0095C 8089016C 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00 -/* 00960 80890170 00000000 */ nop -/* 00964 80890174 46020200 */ add.s $f8, $f0, $f2 -/* 00968 80890178 0C03F66B */ jal Rand_ZeroOne - ## Rand.Next() float -/* 0096C 8089017C E7A80050 */ swc1 $f8, 0x0050($sp) -/* 00970 80890180 46000506 */ mov.s $f20, $f0 -/* 00974 80890184 0C01DE0D */ jal Math_CosS - ## coss? -/* 00978 80890188 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 0097C 8089018C 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000 -/* 00980 80890190 44815000 */ mtc1 $at, $f10 ## $f10 = 1.50 -/* 00984 80890194 00000000 */ nop -/* 00988 80890198 46145400 */ add.s $f16, $f10, $f20 -/* 0098C 8089019C 46008487 */ neg.s $f18, $f16 -/* 00990 808901A0 46120102 */ mul.s $f4, $f0, $f18 -/* 00994 808901A4 E7A40054 */ swc1 $f4, 0x0054($sp) -/* 00998 808901A8 0C01DE1C */ jal Math_SinS - ## sins? -/* 0099C 808901AC 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 009A0 808901B0 46000506 */ mov.s $f20, $f0 -/* 009A4 808901B4 0C01DE0D */ jal Math_CosS - ## coss? -/* 009A8 808901B8 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 009AC 808901BC 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 009B0 808901C0 44814000 */ mtc1 $at, $f8 ## $f8 = 60.00 -/* 009B4 808901C4 C7B20048 */ lwc1 $f18, 0x0048($sp) -/* 009B8 808901C8 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024 -/* 009BC 808901CC 46144282 */ mul.s $f10, $f8, $f20 -/* 009C0 808901D0 460A3401 */ sub.s $f16, $f6, $f10 -/* 009C4 808901D4 46120102 */ mul.s $f4, $f0, $f18 -/* 009C8 808901D8 46048201 */ sub.s $f8, $f16, $f4 -/* 009CC 808901DC E7A80058 */ swc1 $f8, 0x0058($sp) -/* 009D0 808901E0 0C01DE0D */ jal Math_CosS - ## coss? -/* 009D4 808901E4 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 009D8 808901E8 46000506 */ mov.s $f20, $f0 -/* 009DC 808901EC 0C01DE1C */ jal Math_SinS - ## sins? -/* 009E0 808901F0 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 009E4 808901F4 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 009E8 808901F8 44815000 */ mtc1 $at, $f10 ## $f10 = 60.00 -/* 009EC 808901FC C7A40048 */ lwc1 $f4, 0x0048($sp) -/* 009F0 80890200 C606002C */ lwc1 $f6, 0x002C($s0) ## 0000002C -/* 009F4 80890204 46145482 */ mul.s $f18, $f10, $f20 -/* 009F8 80890208 24040028 */ addiu $a0, $zero, 0x0028 ## $a0 = 00000028 -/* 009FC 8089020C 2405000F */ addiu $a1, $zero, 0x000F ## $a1 = 0000000F -/* 00A00 80890210 46040202 */ mul.s $f8, $f0, $f4 -/* 00A04 80890214 46123401 */ sub.s $f16, $f6, $f18 -/* 00A08 80890218 46104280 */ add.s $f10, $f8, $f16 -/* 00A0C 8089021C E7AA0060 */ swc1 $f10, 0x0060($sp) -/* 00A10 80890220 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028 -/* 00A14 80890224 0C01DF64 */ jal Rand_S16Offset - -/* 00A18 80890228 E7A6005C */ swc1 $f6, 0x005C($sp) -/* 00A1C 8089022C 3C088089 */ lui $t0, %hi(D_80890490) ## $t0 = 80890000 -/* 00A20 80890230 3C098089 */ lui $t1, %hi(D_80890494) ## $t1 = 80890000 -/* 00A24 80890234 25290494 */ addiu $t1, $t1, %lo(D_80890494) ## $t1 = 80890494 -/* 00A28 80890238 25080490 */ addiu $t0, $t0, %lo(D_80890490) ## $t0 = 80890490 -/* 00A2C 8089023C 3C078089 */ lui $a3, %hi(D_80890498) ## $a3 = 80890000 -/* 00A30 80890240 240A00FA */ addiu $t2, $zero, 0x00FA ## $t2 = 000000FA -/* 00A34 80890244 AFAA0018 */ sw $t2, 0x0018($sp) -/* 00A38 80890248 24E70498 */ addiu $a3, $a3, %lo(D_80890498) ## $a3 = 80890498 -/* 00A3C 8089024C AFA80010 */ sw $t0, 0x0010($sp) -/* 00A40 80890250 AFA90014 */ sw $t1, 0x0014($sp) -/* 00A44 80890254 8FA4006C */ lw $a0, 0x006C($sp) -/* 00A48 80890258 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0 -/* 00A4C 8089025C 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFE4 -/* 00A50 80890260 0C00A0A7 */ jal func_8002829C -/* 00A54 80890264 AFA2001C */ sw $v0, 0x001C($sp) -/* 00A58 80890268 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000 -/* 00A5C 8089026C 44816000 */ mtc1 $at, $f12 ## $f12 = 120.00 -/* 00A60 80890270 0C00CFC8 */ jal Rand_CenteredFloat - -/* 00A64 80890274 00000000 */ nop -/* 00A68 80890278 E7A00048 */ swc1 $f0, 0x0048($sp) -/* 00A6C 8089027C 0C01DE1C */ jal Math_SinS - ## sins? -/* 00A70 80890280 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A74 80890284 46000506 */ mov.s $f20, $f0 -/* 00A78 80890288 0C01DE0D */ jal Math_CosS - ## coss? -/* 00A7C 8089028C 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00A80 80890290 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00A84 80890294 44812000 */ mtc1 $at, $f4 ## $f4 = 60.00 -/* 00A88 80890298 C7AA0048 */ lwc1 $f10, 0x0048($sp) -/* 00A8C 8089029C C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024 -/* 00A90 808902A0 46142202 */ mul.s $f8, $f4, $f20 -/* 00A94 808902A4 46089401 */ sub.s $f16, $f18, $f8 -/* 00A98 808902A8 460A0182 */ mul.s $f6, $f0, $f10 -/* 00A9C 808902AC 46103100 */ add.s $f4, $f6, $f16 -/* 00AA0 808902B0 E7A40058 */ swc1 $f4, 0x0058($sp) -/* 00AA4 808902B4 0C01DE0D */ jal Math_CosS - ## coss? -/* 00AA8 808902B8 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00AAC 808902BC 46000506 */ mov.s $f20, $f0 -/* 00AB0 808902C0 0C01DE1C */ jal Math_SinS - ## sins? -/* 00AB4 808902C4 86040158 */ lh $a0, 0x0158($s0) ## 00000158 -/* 00AB8 808902C8 3C014270 */ lui $at, 0x4270 ## $at = 42700000 -/* 00ABC 808902CC 44814000 */ mtc1 $at, $f8 ## $f8 = 60.00 -/* 00AC0 808902D0 C7B00048 */ lwc1 $f16, 0x0048($sp) -/* 00AC4 808902D4 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C -/* 00AC8 808902D8 46144282 */ mul.s $f10, $f8, $f20 -/* 00ACC 808902DC 24040028 */ addiu $a0, $zero, 0x0028 ## $a0 = 00000028 -/* 00AD0 808902E0 2405000F */ addiu $a1, $zero, 0x000F ## $a1 = 0000000F -/* 00AD4 808902E4 46100102 */ mul.s $f4, $f0, $f16 -/* 00AD8 808902E8 460A9181 */ sub.s $f6, $f18, $f10 -/* 00ADC 808902EC 46043201 */ sub.s $f8, $f6, $f4 -/* 00AE0 808902F0 0C01DF64 */ jal Rand_S16Offset - -/* 00AE4 808902F4 E7A80060 */ swc1 $f8, 0x0060($sp) -/* 00AE8 808902F8 3C0B8089 */ lui $t3, %hi(D_80890490) ## $t3 = 80890000 -/* 00AEC 808902FC 3C0C8089 */ lui $t4, %hi(D_80890494) ## $t4 = 80890000 -/* 00AF0 80890300 258C0494 */ addiu $t4, $t4, %lo(D_80890494) ## $t4 = 80890494 -/* 00AF4 80890304 256B0490 */ addiu $t3, $t3, %lo(D_80890490) ## $t3 = 80890490 -/* 00AF8 80890308 3C078089 */ lui $a3, %hi(D_80890498) ## $a3 = 80890000 -/* 00AFC 8089030C 240D00FA */ addiu $t5, $zero, 0x00FA ## $t5 = 000000FA -/* 00B00 80890310 AFAD0018 */ sw $t5, 0x0018($sp) -/* 00B04 80890314 24E70498 */ addiu $a3, $a3, %lo(D_80890498) ## $a3 = 80890498 -/* 00B08 80890318 AFAB0010 */ sw $t3, 0x0010($sp) -/* 00B0C 8089031C AFAC0014 */ sw $t4, 0x0014($sp) -/* 00B10 80890320 8FA4006C */ lw $a0, 0x006C($sp) -/* 00B14 80890324 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0 -/* 00B18 80890328 27A6004C */ addiu $a2, $sp, 0x004C ## $a2 = FFFFFFE4 -/* 00B1C 8089032C 0C00A0A7 */ jal func_8002829C -/* 00B20 80890330 AFA2001C */ sw $v0, 0x001C($sp) -/* 00B24 80890334 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00B28 80890338 0C00BE5D */ jal func_8002F974 -/* 00B2C 8089033C 240500DF */ addiu $a1, $zero, 0x00DF ## $a1 = 000000DF -.L80890340: -/* 00B30 80890340 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80890344: -/* 00B34 80890344 0C223F52 */ jal func_8088FD48 -/* 00B38 80890348 8FA5006C */ lw $a1, 0x006C($sp) -/* 00B3C 8089034C 8FBF0034 */ lw $ra, 0x0034($sp) -/* 00B40 80890350 D7B40028 */ ldc1 $f20, 0x0028($sp) -/* 00B44 80890354 8FB00030 */ lw $s0, 0x0030($sp) -/* 00B48 80890358 03E00008 */ jr $ra -/* 00B4C 8089035C 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_80890360.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_80890360.s deleted file mode 100644 index f73906b67b..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_80890360.s +++ /dev/null @@ -1,44 +0,0 @@ -glabel func_80890360 -/* 00B50 80890360 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00B54 80890364 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00B58 80890368 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00B5C 8089036C C4840150 */ lwc1 $f4, 0x0150($a0) ## 00000150 -/* 00B60 80890370 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 00B64 80890374 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 00B68 80890378 46040032 */ c.eq.s $f0, $f4 -/* 00B6C 8089037C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000 -/* 00B70 80890380 45030007 */ bc1tl .L808903A0 -/* 00B74 80890384 8CE5000C */ lw $a1, 0x000C($a3) ## 0000000C -/* 00B78 80890388 8C4E0680 */ lw $t6, 0x0680($v0) ## 00000680 -/* 00B7C 8089038C 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00B80 80890390 01C17824 */ and $t7, $t6, $at -/* 00B84 80890394 AC4F0680 */ sw $t7, 0x0680($v0) ## 00000680 -/* 00B88 80890398 E4800150 */ swc1 $f0, 0x0150($a0) ## 00000150 -/* 00B8C 8089039C 8CE5000C */ lw $a1, 0x000C($a3) ## 0000000C -.L808903A0: -/* 00B90 808903A0 AFA70018 */ sw $a3, 0x0018($sp) -/* 00B94 808903A4 0C01DE80 */ jal Math_StepToF - -/* 00B98 808903A8 24E40028 */ addiu $a0, $a3, 0x0028 ## $a0 = 00000028 -/* 00B9C 808903AC 1040000F */ beq $v0, $zero, .L808903EC -/* 00BA0 808903B0 8FA70018 */ lw $a3, 0x0018($sp) -/* 00BA4 808903B4 8CF80004 */ lw $t8, 0x0004($a3) ## 00000004 -/* 00BA8 808903B8 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00BAC 808903BC 24E40168 */ addiu $a0, $a3, 0x0168 ## $a0 = 00000168 -/* 00BB0 808903C0 0301C824 */ and $t9, $t8, $at -/* 00BB4 808903C4 ACF90004 */ sw $t9, 0x0004($a3) ## 00000004 -/* 00BB8 808903C8 AFA70018 */ sw $a3, 0x0018($sp) -/* 00BBC 808903CC 0C01DF90 */ jal Math_Vec3f_Copy - ## Vec3f_Copy -/* 00BC0 808903D0 24E50008 */ addiu $a1, $a3, 0x0008 ## $a1 = 00000008 -/* 00BC4 808903D4 8FA70018 */ lw $a3, 0x0018($sp) -/* 00BC8 808903D8 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 -/* 00BCC 808903DC 3C088089 */ lui $t0, %hi(func_8088FED0) ## $t0 = 80890000 -/* 00BD0 808903E0 2508FED0 */ addiu $t0, $t0, %lo(func_8088FED0) ## $t0 = 8088FED0 -/* 00BD4 808903E4 ACE80164 */ sw $t0, 0x0164($a3) ## 00000164 -/* 00BD8 808903E8 E4E60068 */ swc1 $f6, 0x0068($a3) ## 00000068 -.L808903EC: -/* 00BDC 808903EC 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00BE0 808903F0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00BE4 808903F4 03E00008 */ jr $ra -/* 00BE8 808903F8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_808903FC.s b/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_808903FC.s deleted file mode 100644 index a8f40a907d..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_808903FC.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel func_808903FC -/* 00BEC 808903FC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00BF0 80890400 C4840150 */ lwc1 $f4, 0x0150($a0) ## 00000150 -/* 00BF4 80890404 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 00BF8 80890408 46040032 */ c.eq.s $f0, $f4 -/* 00BFC 8089040C 00000000 */ nop -/* 00C00 80890410 45010006 */ bc1t .L8089042C -/* 00C04 80890414 00000000 */ nop -/* 00C08 80890418 8C4E0680 */ lw $t6, 0x0680($v0) ## 00000680 -/* 00C0C 8089041C 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00C10 80890420 01C17824 */ and $t7, $t6, $at -/* 00C14 80890424 AC4F0680 */ sw $t7, 0x0680($v0) ## 00000680 -/* 00C18 80890428 E4800150 */ swc1 $f0, 0x0150($a0) ## 00000150 -.L8089042C: -/* 00C1C 8089042C 03E00008 */ jr $ra -/* 00C20 80890430 00000000 */ nop diff --git a/data/overlays/actors/z_bg_gnd_iceblock.bss.s b/data/overlays/actors/z_bg_gnd_iceblock.bss.s deleted file mode 100644 index a7e4a47379..0000000000 --- a/data/overlays/actors/z_bg_gnd_iceblock.bss.s +++ /dev/null @@ -1,18 +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 .bss - -.balign 16 - -glabel D_8087AC40 - .space 0x01 -glabel D_8087AC41 - .space 0x01 -glabel D_8087AC42 - .space 0x0E - diff --git a/data/overlays/actors/z_bg_gnd_iceblock.data.s b/data/overlays/actors/z_bg_gnd_iceblock.data.s deleted file mode 100644 index a1c773cadf..0000000000 --- a/data/overlays/actors/z_bg_gnd_iceblock.data.s +++ /dev/null @@ -1,30 +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 Bg_Gnd_Iceblock_InitVars - .word 0x01B70600, 0x00000030, 0x01790000, 0x00000174 -.word BgGndIceblock_Init -.word BgGndIceblock_Destroy -.word BgGndIceblock_Update -.word BgGndIceblock_Draw -glabel D_8087A740 - .word 0xFAFAFAFF -glabel D_8087A744 - .word 0xB4B4B4FF -glabel D_8087A748 - .word 0x00000000, 0x00000000, 0x00000000 -glabel D_8087A754 - .word 0x48500064 -glabel D_8087A758 - .word 0x00000000, 0x00000202, 0x02020303, 0x03040404, 0x06060606, 0x06060000 -glabel D_8087A770 - .word 0x05040302, 0x01000504, 0x02010601, 0x00050302, 0x05040302, 0x01000000, 0x00000000, 0x00000000 - diff --git a/data/overlays/actors/z_bg_gnd_iceblock.reloc.s b/data/overlays/actors/z_bg_gnd_iceblock.reloc.s deleted file mode 100644 index dac819280e..0000000000 --- a/data/overlays/actors/z_bg_gnd_iceblock.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_8087A920 - .incbin "baserom/ovl_Bg_Gnd_Iceblock", 0xE80, 0x00000320 diff --git a/data/overlays/actors/z_bg_ice_objects.data.s b/data/overlays/actors/z_bg_ice_objects.data.s deleted file mode 100644 index db560d39d5..0000000000 --- a/data/overlays/actors/z_bg_ice_objects.data.s +++ /dev/null @@ -1,70 +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_80890490 - .word 0xFAFAFAFF -glabel D_80890494 - .word 0xB4B4B4FF -glabel D_80890498 - .word 0x00000000, 0x00000000, 0x00000000 -glabel Bg_Ice_Objects_InitVars - .word 0x00D60600, 0x00000000, 0x006B0000, 0x00000174 -.word BgIceObjects_Init -.word BgIceObjects_Destroy -.word BgIceObjects_Update -.word BgIceObjects_Draw -glabel D_808904C4 - .word 0x48500064 -glabel D_808904C8 - .byte 0xFB, 0xDC -glabel D_808904CA - .byte 0xFB, 0x50 -glabel D_808904CC - .word 0xFB28FA95, 0xF9D4F970, 0xF90C0000 -glabel D_808904D8 - .byte 0xFD, 0xBC -glabel D_808904DA - .byte 0xFD, 0x6C -glabel D_808904DC - .word 0xFCF4FCCC, 0xFCA4FC7C, 0xFBC10000 -glabel D_808904E8 - .byte 0xFD, 0xBC -glabel D_808904EA - .byte 0xFB, 0xC1 -glabel D_808904EC - .byte 0xFC, 0xF4 -glabel D_808904EE - .byte 0xFB, 0x14 -glabel D_808904F0 - .byte 0xFE, 0xAC -glabel D_808904F2 - .byte 0xFC, 0xCC -glabel D_808904F4 - .byte 0xFE, 0xFC -glabel D_808904F6 - .byte 0xFB, 0x14, 0xFE, 0xAC, 0xFC, 0xA4, 0xFD, 0x6C, 0xFB, 0x14, 0xFE, 0xAC, 0xFD, 0x1C -glabel D_80890504 - .byte 0xFC, 0xA4 -glabel D_80890506 - .byte 0xF9, 0xD4 -glabel D_80890508 - .byte 0xFB, 0x28 -glabel D_8089050A - .byte 0xF9, 0x0C -glabel D_8089050C - .byte 0xFC, 0xA4 -glabel D_8089050E - .byte 0xF9, 0x70 -glabel D_80890510 - .byte 0xFC, 0xA4 -glabel D_80890512 - .byte 0xF9, 0x70, 0xFA, 0x95, 0xF9, 0x70, 0xFC, 0xA4, 0xFB, 0x50, 0xFC, 0xA4, 0xF8, 0xF8 - diff --git a/data/overlays/actors/z_bg_ice_objects.reloc.s b/data/overlays/actors/z_bg_ice_objects.reloc.s deleted file mode 100644 index 0a6f24f804..0000000000 --- a/data/overlays/actors/z_bg_ice_objects.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_80890540 - .incbin "baserom/ovl_Bg_Ice_Objects", 0xD30, 0x00000200 diff --git a/include/macros.h b/include/macros.h index 8b651e7089..1dcba0235e 100644 --- a/include/macros.h +++ b/include/macros.h @@ -70,6 +70,7 @@ #define LOG_TIME(exp, value, file, line) LOG(exp, value, "%lld", file, line) #define LOG_NUM(exp, value, file, line) LOG(exp, value, "%d", file, line) #define LOG_HEX(exp, value, file, line) LOG(exp, value, "%x", file, line) +#define LOG_FLOAT(exp, value, file, line) LOG(exp, value, "%f", file, line) #define SET_NEXT_GAMESTATE(curState, newInit, newStruct) \ (curState)->init = newInit; \ diff --git a/spec b/spec index 371394a10f..830650cb7b 100644 --- a/spec +++ b/spec @@ -713,9 +713,7 @@ endseg beginseg name "ovl_Bg_Gnd_Iceblock" include "build/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.o" - include "build/data/overlays/actors/z_bg_gnd_iceblock.data.o" - include "build/data/overlays/actors/z_bg_gnd_iceblock.bss.o" - include "build/data/overlays/actors/z_bg_gnd_iceblock.reloc.o" + include "build/src/overlays/actors/ovl_Bg_Gnd_Iceblock/ovl_Bg_Gnd_Iceblock_reloc.o" endseg beginseg @@ -900,8 +898,7 @@ endseg beginseg name "ovl_Bg_Ice_Objects" include "build/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.o" - include "build/data/overlays/actors/z_bg_ice_objects.data.o" - include "build/data/overlays/actors/z_bg_ice_objects.reloc.o" + include "build/src/overlays/actors/ovl_Bg_Ice_Objects/ovl_Bg_Ice_Objects_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.c b/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.c index 133a5d5a7d..10202b2bb7 100644 --- a/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.c +++ b/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.c @@ -1,7 +1,7 @@ /* * File: z_bg_gnd_iceblock.c * Overlay: ovl_Bg_Gnd_Iceblock - * Description: Pushable large square ice block (Inside Ganon's Castle) + * Description: Pushable ice block (Inside Ganon's Castle) */ #include "z_bg_gnd_iceblock.h" @@ -10,21 +10,23 @@ #define THIS ((BgGndIceblock*)thisx) +typedef enum { + /* 0 */ GNDICE_IDLE, + /* 1 */ GNDICE_FALL, + /* 2 */ GNDICE_HOLE +} BgGndIceblockAction; + void BgGndIceblock_Init(Actor* thisx, GlobalContext* globalCtx); void BgGndIceblock_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgGndIceblock_Update(Actor* thisx, GlobalContext* globalCtx); void BgGndIceblock_Draw(Actor* thisx, GlobalContext* globalCtx); -void func_8087A0C8(BgGndIceblock* this, GlobalContext* globalCtx); -void func_8087A184(BgGndIceblock* this, GlobalContext* globalCtx); -void func_8087A248(BgGndIceblock* this, GlobalContext* globalCtx); -void func_8087A300(BgGndIceblock* this, GlobalContext* globalCtx); -void func_8087A39C(BgGndIceblock* this, GlobalContext* globalCtx); +void BgGndIceblock_Idle(BgGndIceblock* this, GlobalContext* globalCtx); +void BgGndIceblock_Slide(BgGndIceblock* this, GlobalContext* globalCtx); -extern UNK_TYPE D_06004420; -extern UNK_TYPE D_06004618; +extern Gfx D_06004420[]; +extern ColHeader D_06004618; -/* const ActorInit Bg_Gnd_Iceblock_InitVars = { ACTOR_BG_GND_ICEBLOCK, ACTORTYPE_PROP, @@ -36,29 +38,330 @@ const ActorInit Bg_Gnd_Iceblock_InitVars = { (ActorFunc)BgGndIceblock_Update, (ActorFunc)BgGndIceblock_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Destroy.s") +static Color_RGBA8 sWhite = { 250, 250, 250, 255 }; +static Color_RGBA8 sGray = { 180, 180, 180, 255 }; +static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f }; +static InitChainEntry sInitChain[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + +static u8 sBlockPositions[2]; + +void BgGndIceblock_Init(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgGndIceblock* this = THIS; + ColHeader* colHeader = NULL; + + Actor_ProcessInitChain(&this->dyna.actor, sInitChain); + DynaPolyInfo_SetActorMove(&this->dyna, 0); + DynaPolyInfo_Alloc(&D_06004618, &colHeader); + this->targetPos = this->dyna.actor.initPosRot.pos; + this->actionFunc = BgGndIceblock_Idle; + this->dyna.dynaPolyId = + DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); + if (this->dyna.actor.posRot.pos.x == 2792.0f) { + this->dyna.actor.params = 0; + sBlockPositions[0] = 7; + } else if (this->dyna.actor.posRot.pos.x == 3032.0f) { + this->dyna.actor.params = 1; + sBlockPositions[1] = 14; + } else { + LOG_FLOAT("thisx->world.position.x", this->dyna.actor.posRot.pos.x, "../z_bg_gnd_iceblock.c", 138); + __assert("0", "../z_bg_gnd_iceblock.c", 139); + } +} + +void BgGndIceblock_Destroy(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgGndIceblock* this = THIS; + + DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId); +} + +/* + * Diagram of positions in the room: + * __ + * _________|10|_________ + * |*0* 6 *13****16*| + * |*1* 7 17 | + * | 2 14 18 | + * | 3 h8 15 19 | + * | 4 9 11 XX *20*| + * |*5* XX 12 *21*| + * ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾ + * XX are rocks + * ** are pits + * h is the hole. + * Block 0 starts at 7 and block 1 starts at 14 + */ + +void BgGndIceblock_SetPosition(BgGndIceblock* this, s32 blockPosition) { + Actor* thisx = &this->dyna.actor; + u8 xPosIdx[22] = { + 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 3, 3, 3, 4, 4, 4, 6, 6, 6, 6, 6, 6, + }; + u8 zPosIdx[22] = { + 5, 4, 3, 2, 1, 0, 5, 4, 2, 1, 6, 1, 0, 5, 3, 2, 5, 4, 3, 2, 1, 0, + }; + + sBlockPositions[thisx->params] = blockPosition; + this->targetPos.x = 2552.0f + (xPosIdx[blockPosition] * 120.0f); + this->targetPos.z = -540.0f - (zPosIdx[blockPosition] * 120.0f); +} + +s32 BgGndIceblock_CheckForBlock(s32 blockPosition) { + s32 i; + + for (i = 0; i < 2; i++) { + if (blockPosition == sBlockPositions[i]) { + return true; + } + } + return false; +} + +s32 BgGndIceblock_NextAction(BgGndIceblock* this) { + switch (sBlockPositions[this->dyna.actor.params]) { + case 0: + case 1: + case 5: + case 13: + case 16: + case 20: + case 21: + return GNDICE_FALL; + case 8: + return GNDICE_HOLE; + default: + return GNDICE_IDLE; + } +} + +void BgGndIceblock_SetNextPosition(BgGndIceblock* this) { + if (this->dyna.unk_158 == 0) { + switch (sBlockPositions[this->dyna.actor.params]) { + case 3: + case 4: + BgGndIceblock_SetPosition(this, 5); + break; + case 7: + if (BgGndIceblock_CheckForBlock(8)) { + BgGndIceblock_SetPosition(this, 9); + } else { + BgGndIceblock_SetPosition(this, 8); + } + break; + case 11: + BgGndIceblock_SetPosition(this, 12); + break; + case 14: + BgGndIceblock_SetPosition(this, 15); + break; + case 18: + case 19: + BgGndIceblock_SetPosition(this, 20); + break; + } + } else if (this->dyna.unk_158 == -0x8000) { + switch (sBlockPositions[this->dyna.actor.params]) { + case 2: + case 3: + BgGndIceblock_SetPosition(this, 1); + break; + case 7: + case 9: + BgGndIceblock_SetPosition(this, 6); + break; + case 11: + BgGndIceblock_SetPosition(this, 10); + break; + case 14: + case 15: + BgGndIceblock_SetPosition(this, 13); + break; + case 17: + BgGndIceblock_SetPosition(this, 16); + break; + case 18: + if (!BgGndIceblock_CheckForBlock(17)) { + BgGndIceblock_SetPosition(this, 16); + } + break; + } + } else if (this->dyna.unk_158 == 0x4000) { + switch (sBlockPositions[this->dyna.actor.params]) { + case 6: + BgGndIceblock_SetPosition(this, 13); + break; + case 7: + BgGndIceblock_SetPosition(this, 17); + break; + case 9: + BgGndIceblock_SetPosition(this, 11); + break; + case 12: + BgGndIceblock_SetPosition(this, 21); + break; + case 14: + BgGndIceblock_SetPosition(this, 18); + break; + case 15: + BgGndIceblock_SetPosition(this, 19); + break; + } + } else if (this->dyna.unk_158 == -0x4000) { + switch (sBlockPositions[this->dyna.actor.params]) { + case 6: + BgGndIceblock_SetPosition(this, 0); + break; + case 7: + BgGndIceblock_SetPosition(this, 1); + break; + case 9: + case 11: + BgGndIceblock_SetPosition(this, 4); + break; + case 14: + BgGndIceblock_SetPosition(this, 2); + break; + case 15: + if (BgGndIceblock_CheckForBlock(8)) { + BgGndIceblock_SetPosition(this, 3); + } else { + BgGndIceblock_SetPosition(this, 8); + } + break; + } + } +} + +void BgGndIceblock_Idle(BgGndIceblock* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + + if (this->dyna.unk_150 != 0.0f) { + player->stateFlags2 &= ~0x10; + if (this->dyna.unk_150 > 0.0f) { + BgGndIceblock_SetNextPosition(this); + if (func_8002DBB0(&this->dyna.actor, &this->targetPos) > 1.0f) { + func_8002DF54(globalCtx, &this->dyna.actor, 8); + this->actionFunc = BgGndIceblock_Slide; + } + } + this->dyna.unk_150 = 0.0f; + } +} + +void BgGndIceblock_Reset(BgGndIceblock* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879C04.s") + if (this->dyna.unk_150 != 0.0f) { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } + if (Math_StepToF(&thisx->posRot.pos.y, thisx->initPosRot.pos.y, 1.0f)) { + this->targetPos = thisx->initPosRot.pos; + thisx->speedXZ = 0.0f; + this->actionFunc = BgGndIceblock_Idle; + switch (thisx->params) { + case 0: + sBlockPositions[0] = 7; + break; + case 1: + sBlockPositions[1] = 14; + break; + } + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D10.s") +void BgGndIceblock_Fall(BgGndIceblock* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D4C.s") + thisx->velocity.y += 1.0f; + if (Math_StepToF(&thisx->posRot.pos.y, thisx->initPosRot.pos.y - 300.0f, thisx->velocity.y)) { + thisx->velocity.y = 0.0f; + thisx->posRot.pos.x = thisx->initPosRot.pos.x; + thisx->posRot.pos.y = thisx->initPosRot.pos.y - 100.0f; + thisx->posRot.pos.z = thisx->initPosRot.pos.z; + if (Player_InCsMode(globalCtx)) { + func_8002DF54(globalCtx, thisx, 7); + } + this->actionFunc = BgGndIceblock_Reset; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_80879D98.s") +void BgGndIceblock_Hole(BgGndIceblock* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A0C8.s") + thisx->velocity.y += 1.0f; + if (Math_StepToF(&thisx->posRot.pos.y, thisx->initPosRot.pos.y - 100.0f, thisx->velocity.y)) { + thisx->velocity.y = 0.0f; + if (Player_InCsMode(globalCtx)) { + func_8002DF54(globalCtx, thisx, 7); + } + this->actionFunc = BgGndIceblock_Idle; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A184.s") +void BgGndIceblock_Slide(BgGndIceblock* this, GlobalContext* globalCtx) { + s32 atTarget; + Vec3f pos; + Vec3f velocity; + f32 spread; + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A248.s") + Math_StepToF(&thisx->speedXZ, 10.0f, 0.5f); + atTarget = Math_StepToF(&thisx->posRot.pos.x, this->targetPos.x, thisx->speedXZ); + atTarget &= Math_StepToF(&thisx->posRot.pos.z, this->targetPos.z, thisx->speedXZ); + if (atTarget) { + thisx->speedXZ = 0.0f; + this->targetPos.x = thisx->posRot.pos.x; + this->targetPos.z = thisx->posRot.pos.z; + Audio_PlayActorSound2(thisx, NA_SE_EV_BLOCK_BOUND); + switch (BgGndIceblock_NextAction(this)) { + case GNDICE_IDLE: + this->actionFunc = BgGndIceblock_Idle; + func_8002DF54(globalCtx, thisx, 7); + break; + case GNDICE_FALL: + this->actionFunc = BgGndIceblock_Fall; + break; + case GNDICE_HOLE: + this->actionFunc = BgGndIceblock_Hole; + break; + } + } else if (thisx->speedXZ > 6.0f) { + spread = Rand_CenteredFloat(120.0f); + velocity.x = -(1.5f + Rand_ZeroOne()) * Math_SinS(this->dyna.unk_158); + velocity.y = Rand_ZeroOne() + 1.0f; + velocity.z = -(1.5f + Rand_ZeroOne()) * Math_CosS(this->dyna.unk_158); + pos.x = + thisx->posRot.pos.x - (60.0f * Math_SinS(this->dyna.unk_158)) - (Math_CosS(this->dyna.unk_158) * spread); + pos.z = + thisx->posRot.pos.z - (60.0f * Math_CosS(this->dyna.unk_158)) + (Math_SinS(this->dyna.unk_158) * spread); + pos.y = thisx->posRot.pos.y; + func_8002829C(globalCtx, &pos, &velocity, &sZeroVec, &sWhite, &sGray, 250, Rand_S16Offset(40, 15)); + spread = Rand_CenteredFloat(120.0f); + pos.x = + thisx->posRot.pos.x - (60.0f * Math_SinS(this->dyna.unk_158)) + (Math_CosS(this->dyna.unk_158) * spread); + pos.z = + thisx->posRot.pos.z - (60.0f * Math_CosS(this->dyna.unk_158)) - (Math_SinS(this->dyna.unk_158) * spread); + func_8002829C(globalCtx, &pos, &velocity, &sZeroVec, &sWhite, &sGray, 250, Rand_S16Offset(40, 15)); + func_8002F974(thisx, NA_SE_PL_SLIP_ICE_LEVEL - SFX_FLAG); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A300.s") +void BgGndIceblock_Update(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgGndIceblock* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/func_8087A39C.s") + this->actionFunc(this, globalCtx); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Update.s") +void BgGndIceblock_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgGndIceblock* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Gnd_Iceblock/BgGndIceblock_Draw.s") + Gfx_DrawDListOpa(globalCtx, D_06004420); +} diff --git a/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.h b/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.h index a80c4e0931..14ed8fb312 100644 --- a/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.h +++ b/src/overlays/actors/ovl_Bg_Gnd_Iceblock/z_bg_gnd_iceblock.h @@ -11,7 +11,7 @@ typedef void (*BgGndIceblockActionFunc)(struct BgGndIceblock*, GlobalContext*); typedef struct BgGndIceblock { /* 0x0000 */ DynaPolyActor dyna; /* 0x0164 */ BgGndIceblockActionFunc actionFunc; - /* 0x0168 */ Vec3f unk_168; + /* 0x0168 */ Vec3f targetPos; } BgGndIceblock; // size = 0x0174 extern const ActorInit Bg_Gnd_Iceblock_InitVars; diff --git a/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.c b/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.c index 266e797fda..cf316c5a80 100644 --- a/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.c +++ b/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.c @@ -1,7 +1,7 @@ /* * File: z_bg_ice_objects.c * Overlay: ovl_Bg_Ice_Objects - * Description: Movable Ice Block. + * Description: Pushable ice block (Ice Cavern) */ #include "z_bg_ice_objects.h" @@ -15,10 +15,18 @@ void BgIceObjects_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgIceObjects_Update(Actor* thisx, GlobalContext* globalCtx); void BgIceObjects_Draw(Actor* thisx, GlobalContext* globalCtx); -extern UNK_TYPE D_06000190; -extern UNK_TYPE D_060003F0; +void BgIceObjects_Idle(BgIceObjects* this, GlobalContext* globalCtx); +void BgIceObjects_Slide(BgIceObjects* this, GlobalContext* globalCtx); +void BgIceObjects_Reset(BgIceObjects* this, GlobalContext* globalCtx); +void BgIceObjects_Stuck(BgIceObjects* this, GlobalContext* globalCtx); + +extern Gfx D_06000190[]; +extern ColHeader D_060003F0; + +static Color_RGBA8 sWhite = { 250, 250, 250, 255 }; +static Color_RGBA8 sGray = { 180, 180, 180, 255 }; +static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f }; -/* const ActorInit Bg_Ice_Objects_InitVars = { ACTOR_BG_ICE_OBJECTS, ACTORTYPE_PROP, @@ -30,23 +38,209 @@ const ActorInit Bg_Ice_Objects_InitVars = { (ActorFunc)BgIceObjects_Update, (ActorFunc)BgIceObjects_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Destroy.s") +InitChainEntry sInitChain[] = { + ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP), +}; + +void BgIceObjects_Init(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgIceObjects* this = THIS; + ColHeader* colHeader = NULL; + + Actor_ProcessInitChain(&this->dyna.actor, sInitChain); + DynaPolyInfo_SetActorMove(&this->dyna, 0); + DynaPolyInfo_Alloc(&D_060003F0, &colHeader); + Math_Vec3f_Copy(&this->targetPos, &this->dyna.actor.initPosRot.pos); + this->actionFunc = BgIceObjects_Idle; + this->dyna.dynaPolyId = + DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); + this->dyna.actor.params = 0; +} + +void BgIceObjects_Destroy(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgIceObjects* this = THIS; + + DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId); +} + +static s16 sXStarts[] = { + -1060, -1200, -1240, -1387, -1580, -1680, -1780, +}; +static s16 sZStarts[] = { + -580, -660, -780, -820, -860, -900, -1087, +}; +static s16 sZStops[7][2] = { + { -580, -1087 }, { -780, -1260 }, { -340, -820 }, { -260, -1260 }, { -340, -860 }, { -660, -1260 }, { -340, -740 }, +}; +static s16 sXStops[7][2] = { + { -860, -1580 }, { -1240, -1780 }, { -860, -1680 }, { -860, -1680 }, + { -1387, -1680 }, { -860, -1200 }, { -860, -1800 }, +}; + +/* + * Checks which of the eight possible x and z positions the block is at, + * defaulting to the maximum x wall or minimum z wall. Each x and z position + * has only one possible wall or pit on each side of it. + */ +void BgIceObjects_SetNextTarget(BgIceObjects* this, GlobalContext* globalCtx) { + s16 x16; + s16 z16 = 0; // needed to match + s32 i; + + if ((this->dyna.unk_158 == 0) || (this->dyna.unk_158 == -0x8000)) { + x16 = this->dyna.actor.posRot.pos.x; + for (i = 0; i < 7; i++) { + if (x16 == sXStarts[i]) { + z16 = (this->dyna.unk_158 == 0) ? sZStops[i][0] : sZStops[i][1]; + this->targetPos.z = z16; + return; + } + } + this->targetPos.z = (this->dyna.unk_158 == 0) ? -340 : -1260; + } else { + z16 = this->dyna.actor.posRot.pos.z; + for (i = 0; i < 7; i++) { + if (z16 == sZStarts[i]) { + x16 = (this->dyna.unk_158 == 0x4000) ? sXStops[i][0] : sXStops[i][1]; + this->targetPos.x = x16; + return; + } + } + this->targetPos.x = (this->dyna.unk_158 == 0x4000) ? -860 : -1780; + } +} + +/* + * Checks if the block has fallen into any of the pits. + */ +void BgIceObjects_CheckPits(BgIceObjects* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; + + if ((thisx->velocity.y > 0.0f) || ((thisx->posRot.pos.x <= -1660.0f) && (thisx->posRot.pos.z <= -1060.0f)) || + ((thisx->posRot.pos.x <= -1580.0f) && (thisx->posRot.pos.z >= -420.0f)) || + ((thisx->posRot.pos.x >= -980.0f) && (thisx->posRot.pos.z <= -1180.0f)) || + ((thisx->posRot.pos.x >= -860.0f) && (thisx->posRot.pos.z >= -700.0f))) { + + thisx->velocity.y += 1.0f; + if (Math_StepToF(&thisx->posRot.pos.y, -300.0f, thisx->velocity.y)) { + thisx->velocity.y = 0.0f; + thisx->posRot.pos.x = thisx->initPosRot.pos.x; + thisx->posRot.pos.y = thisx->initPosRot.pos.y - 60.0f; + thisx->posRot.pos.z = thisx->initPosRot.pos.z; + if (thisx->params != 0) { + func_8002DF54(globalCtx, thisx, 7); + } + this->actionFunc = BgIceObjects_Reset; + } + } +} + +void BgIceObjects_Idle(BgIceObjects* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + Actor* thisx = &this->dyna.actor; + + if (this->dyna.unk_150 != 0.0f) { + player->stateFlags2 &= ~0x10; + if ((this->dyna.unk_150 > 0.0f) && !Player_InCsMode(globalCtx)) { + BgIceObjects_SetNextTarget(this, globalCtx); + if (func_8002DBB0(thisx, &this->targetPos) > 1.0f) { + thisx->flags |= 0x10; + func_8002DF54(globalCtx, thisx, 8); + thisx->params = 1; + this->actionFunc = BgIceObjects_Slide; + } + } + this->dyna.unk_150 = 0.0f; + } + if (thisx->velocity.y > 0.0f) { + BgIceObjects_CheckPits(this, globalCtx); + } +} + +void BgIceObjects_Slide(BgIceObjects* this, GlobalContext* globalCtx) { + s32 atTarget; + Vec3f pos; + Vec3f velocity; + f32 spread; + Actor* thisx = &this->dyna.actor; + + Math_StepToF(&thisx->speedXZ, 10.0f, 0.5f); + atTarget = Math_StepToF(&thisx->posRot.pos.x, this->targetPos.x, thisx->speedXZ); + atTarget &= Math_StepToF(&thisx->posRot.pos.z, this->targetPos.z, thisx->speedXZ); + if (atTarget) { + thisx->speedXZ = 0.0f; + this->targetPos.x = thisx->posRot.pos.x; + this->targetPos.z = thisx->posRot.pos.z; + if (thisx->velocity.y <= 0.0f) { + thisx->flags &= ~0x10; + } + thisx->params = 0; + func_8002DF54(globalCtx, thisx, 7); + Audio_PlayActorSound2(thisx, NA_SE_EV_BLOCK_BOUND); + if ((fabsf(thisx->posRot.pos.x + 1387.0f) < 1.0f) && (fabsf(thisx->posRot.pos.z + 260.0f) < 1.0f)) { + this->actionFunc = BgIceObjects_Stuck; + } else { + this->actionFunc = BgIceObjects_Idle; + } + } else if ((thisx->speedXZ > 6.0f) && (thisx->posRot.pos.y >= 0.0f)) { + spread = Rand_CenteredFloat(120.0f); + velocity.x = -(1.5f + Rand_ZeroOne()) * Math_SinS(this->dyna.unk_158); + velocity.y = Rand_ZeroOne() + 1.0f; + velocity.z = -(1.5f + Rand_ZeroOne()) * Math_CosS(this->dyna.unk_158); + pos.x = + thisx->posRot.pos.x - (60.0f * Math_SinS(this->dyna.unk_158)) - (Math_CosS(this->dyna.unk_158) * spread); + pos.z = + thisx->posRot.pos.z - (60.0f * Math_CosS(this->dyna.unk_158)) + (Math_SinS(this->dyna.unk_158) * spread); + pos.y = thisx->posRot.pos.y; + func_8002829C(globalCtx, &pos, &velocity, &sZeroVec, &sWhite, &sGray, 250, Rand_S16Offset(40, 15)); + spread = Rand_CenteredFloat(120.0f); + pos.x = + thisx->posRot.pos.x - (60.0f * Math_SinS(this->dyna.unk_158)) + (Math_CosS(this->dyna.unk_158) * spread); + pos.z = + thisx->posRot.pos.z - (60.0f * Math_CosS(this->dyna.unk_158)) - (Math_SinS(this->dyna.unk_158) * spread); + func_8002829C(globalCtx, &pos, &velocity, &sZeroVec, &sWhite, &sGray, 250, Rand_S16Offset(40, 15)); + func_8002F974(thisx, NA_SE_PL_SLIP_ICE_LEVEL - SFX_FLAG); + } + BgIceObjects_CheckPits(this, globalCtx); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088F8C8.s") +void BgIceObjects_Reset(BgIceObjects* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + Actor* thisx = &this->dyna.actor; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FD48.s") + if (this->dyna.unk_150 != 0.0f) { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } + if (Math_StepToF(&thisx->posRot.pos.y, thisx->initPosRot.pos.y, 1.0f)) { + thisx->flags &= ~0x10; + Math_Vec3f_Copy(&this->targetPos, &thisx->initPosRot.pos); + this->actionFunc = BgIceObjects_Idle; + thisx->speedXZ = 0.0f; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FED0.s") +void BgIceObjects_Stuck(BgIceObjects* this, GlobalContext* globalCtx) { + Player* player = PLAYER; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_8088FFD0.s") + if (this->dyna.unk_150 != 0.0f) { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_80890360.s") +void BgIceObjects_Update(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgIceObjects* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/func_808903FC.s") + this->actionFunc(this, globalCtx); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Update.s") +void BgIceObjects_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + BgIceObjects* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Objects/BgIceObjects_Draw.s") + Gfx_DrawDListOpa(globalCtx, D_06000190); +} diff --git a/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.h b/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.h index 4dd09357da..e86055c68d 100644 --- a/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.h +++ b/src/overlays/actors/ovl_Bg_Ice_Objects/z_bg_ice_objects.h @@ -6,9 +6,12 @@ struct BgIceObjects; +typedef void (*BgIceObjectsActionFunc) (struct BgIceObjects*, GlobalContext*); + typedef struct BgIceObjects { - /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x28]; + /* 0x0000 */ DynaPolyActor dyna; + /* 0x0164 */ BgIceObjectsActionFunc actionFunc; + /* 0x0168 */ Vec3f targetPos; } BgIceObjects; // size = 0x0174 extern const ActorInit Bg_Ice_Objects_InitVars;