From 7306d13897d682c7fd29bd17af9e102933afc599 Mon Sep 17 00:00:00 2001 From: Parker Burnett Date: Sat, 17 Apr 2021 12:21:43 -0400 Subject: [PATCH] Bg_toki_hikari all functions matching (#781) * starting toki_hikari * func_808BA018 matched and some work on other func * init and draw matched, one to go * matched final function, removed ASM, updated spec * adding suggested changes --- .../ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s | 4 - .../ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s | 24 - .../ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s | 43 -- .../ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s | 10 - .../actors/ovl_Bg_Toki_Hikari/func_808B9F98.s | 4 - .../actors/ovl_Bg_Toki_Hikari/func_808BA018.s | 144 ---- .../actors/ovl_Bg_Toki_Hikari/func_808BA204.s | 12 - .../actors/ovl_Bg_Toki_Hikari/func_808BA22C.s | 26 - .../actors/ovl_Bg_Toki_Hikari/func_808BA274.s | 34 - .../actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s | 668 ------------------ data/overlays/actors/z_bg_toki_hikari.data.s | 20 - data/overlays/actors/z_bg_toki_hikari.reloc.s | 13 - spec | 3 +- .../ovl_Bg_Toki_Hikari/z_bg_toki_hikari.c | 177 ++++- .../ovl_Bg_Toki_Hikari/z_bg_toki_hikari.h | 5 +- 15 files changed, 164 insertions(+), 1023 deletions(-) delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808B9F98.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA018.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA204.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA22C.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA274.s delete mode 100644 asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s delete mode 100644 data/overlays/actors/z_bg_toki_hikari.data.s delete mode 100644 data/overlays/actors/z_bg_toki_hikari.reloc.s diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s deleted file mode 100644 index c7f30992a6..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s +++ /dev/null @@ -1,4 +0,0 @@ -glabel BgTokiHikari_Destroy -/* 0008C 808B9F8C AFA40000 */ sw $a0, 0x0000($sp) -/* 00090 808B9F90 03E00008 */ jr $ra -/* 00094 808B9F94 AFA50004 */ sw $a1, 0x0004($sp) diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s deleted file mode 100644 index 9cbc9420d2..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s +++ /dev/null @@ -1,24 +0,0 @@ -glabel BgTokiHikari_Draw -/* 000C8 808B9FC8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 000CC 808B9FCC AFBF0014 */ sw $ra, 0x0014($sp) -/* 000D0 808B9FD0 8482001C */ lh $v0, 0x001C($a0) ## 0000001C -/* 000D4 808B9FD4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 000D8 808B9FD8 10400005 */ beq $v0, $zero, .L808B9FF0 -/* 000DC 808B9FDC 00000000 */ nop -/* 000E0 808B9FE0 10410007 */ beq $v0, $at, .L808BA000 -/* 000E4 808B9FE4 00000000 */ nop -/* 000E8 808B9FE8 10000008 */ beq $zero, $zero, .L808BA00C -/* 000EC 808B9FEC 8FBF0014 */ lw $ra, 0x0014($sp) -.L808B9FF0: -/* 000F0 808B9FF0 0C22E806 */ jal func_808BA018 -/* 000F4 808B9FF4 00000000 */ nop -/* 000F8 808B9FF8 10000004 */ beq $zero, $zero, .L808BA00C -/* 000FC 808B9FFC 8FBF0014 */ lw $ra, 0x0014($sp) -.L808BA000: -/* 00100 808BA000 0C22E8B3 */ jal func_808BA2CC -/* 00104 808BA004 00000000 */ nop -/* 00108 808BA008 8FBF0014 */ lw $ra, 0x0014($sp) -.L808BA00C: -/* 0010C 808BA00C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00110 808BA010 03E00008 */ jr $ra -/* 00114 808BA014 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s deleted file mode 100644 index 95e54238a2..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s +++ /dev/null @@ -1,43 +0,0 @@ -glabel BgTokiHikari_Init -/* 00000 808B9F00 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00004 808B9F04 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00008 808B9F08 AFA5001C */ sw $a1, 0x001C($sp) -/* 0000C 808B9F0C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C -/* 00010 808B9F10 3C05808C */ lui $a1, %hi(D_808BAC70) ## $a1 = 808C0000 -/* 00014 808B9F14 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00018 808B9F18 10400005 */ beq $v0, $zero, .L808B9F30 -/* 0001C 808B9F1C 24A5AC70 */ addiu $a1, $a1, %lo(D_808BAC70) ## $a1 = 808BAC70 -/* 00020 808B9F20 1041000A */ beq $v0, $at, .L808B9F4C -/* 00024 808B9F24 3C0F8016 */ lui $t7, %hi(gSaveContext+0xedc) -/* 00028 808B9F28 10000015 */ beq $zero, $zero, .L808B9F80 -/* 0002C 808B9F2C 8FBF0014 */ lw $ra, 0x0014($sp) -.L808B9F30: -/* 00030 808B9F30 0C01E037 */ jal Actor_ProcessInitChain - -/* 00034 808B9F34 AFA40018 */ sw $a0, 0x0018($sp) -/* 00038 808B9F38 8FA40018 */ lw $a0, 0x0018($sp) -/* 0003C 808B9F3C 3C0E808C */ lui $t6, %hi(func_808B9F98) ## $t6 = 808C0000 -/* 00040 808B9F40 25CE9F98 */ addiu $t6, $t6, %lo(func_808B9F98) ## $t6 = 808B9F98 -/* 00044 808B9F44 1000000D */ beq $zero, $zero, .L808B9F7C -/* 00048 808B9F48 AC8E0150 */ sw $t6, 0x0150($a0) ## 00000150 -.L808B9F4C: -/* 0004C 808B9F4C 95EFF53C */ lhu $t7, %lo(gSaveContext+0xedc)($t7) -/* 00050 808B9F50 3C19808C */ lui $t9, %hi(func_808BA204) ## $t9 = 808C0000 -/* 00054 808B9F54 2739A204 */ addiu $t9, $t9, %lo(func_808BA204) ## $t9 = 808BA204 -/* 00058 808B9F58 31F80800 */ andi $t8, $t7, 0x0800 ## $t8 = 00000000 -/* 0005C 808B9F5C 17000005 */ bne $t8, $zero, .L808B9F74 -/* 00060 808B9F60 00000000 */ nop -/* 00064 808B9F64 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 00068 808B9F68 AC990150 */ sw $t9, 0x0150($a0) ## 00000150 -/* 0006C 808B9F6C 10000003 */ beq $zero, $zero, .L808B9F7C -/* 00070 808B9F70 E484014C */ swc1 $f4, 0x014C($a0) ## 0000014C -.L808B9F74: -/* 00074 808B9F74 0C00B55C */ jal Actor_Kill - -/* 00078 808B9F78 00000000 */ nop -.L808B9F7C: -/* 0007C 808B9F7C 8FBF0014 */ lw $ra, 0x0014($sp) -.L808B9F80: -/* 00080 808B9F80 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00084 808B9F84 03E00008 */ jr $ra -/* 00088 808B9F88 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s deleted file mode 100644 index b63ceeb49e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s +++ /dev/null @@ -1,10 +0,0 @@ -glabel BgTokiHikari_Update -/* 000A4 808B9FA4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 000A8 808B9FA8 AFBF0014 */ sw $ra, 0x0014($sp) -/* 000AC 808B9FAC 8C990150 */ lw $t9, 0x0150($a0) ## 00000150 -/* 000B0 808B9FB0 0320F809 */ jalr $ra, $t9 -/* 000B4 808B9FB4 00000000 */ nop -/* 000B8 808B9FB8 8FBF0014 */ lw $ra, 0x0014($sp) -/* 000BC 808B9FBC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 000C0 808B9FC0 03E00008 */ jr $ra -/* 000C4 808B9FC4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808B9F98.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808B9F98.s deleted file mode 100644 index 5d2aacf8e0..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808B9F98.s +++ /dev/null @@ -1,4 +0,0 @@ -glabel func_808B9F98 -/* 00098 808B9F98 AFA40000 */ sw $a0, 0x0000($sp) -/* 0009C 808B9F9C 03E00008 */ jr $ra -/* 000A0 808B9FA0 AFA50004 */ sw $a1, 0x0004($sp) diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA018.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA018.s deleted file mode 100644 index 33c2ae2525..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA018.s +++ /dev/null @@ -1,144 +0,0 @@ -.rdata -glabel D_808BAC80 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BAC98 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BACB0 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BACC8 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -.text -glabel func_808BA018 -/* 00118 808BA018 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98 -/* 0011C 808BA01C AFB10020 */ sw $s1, 0x0020($sp) -/* 00120 808BA020 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 00124 808BA024 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00128 808BA028 AFB0001C */ sw $s0, 0x001C($sp) -/* 0012C 808BA02C AFA40068 */ sw $a0, 0x0068($sp) -/* 00130 808BA030 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 00134 808BA034 3C06808C */ lui $a2, %hi(D_808BAC80) ## $a2 = 808C0000 -/* 00138 808BA038 24C6AC80 */ addiu $a2, $a2, %lo(D_808BAC80) ## $a2 = 808BAC80 -/* 0013C 808BA03C 27A40050 */ addiu $a0, $sp, 0x0050 ## $a0 = FFFFFFE8 -/* 00140 808BA040 240700F6 */ addiu $a3, $zero, 0x00F6 ## $a3 = 000000F6 -/* 00144 808BA044 0C031AB1 */ jal Graph_OpenDisps -/* 00148 808BA048 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000 -/* 0014C 808BA04C 0C024F46 */ jal func_80093D18 -/* 00150 808BA050 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 00154 808BA054 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 00158 808BA058 3C0FDA38 */ lui $t7, 0xDA38 ## $t7 = DA380000 -/* 0015C 808BA05C 35EF0003 */ ori $t7, $t7, 0x0003 ## $t7 = DA380003 -/* 00160 808BA060 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008 -/* 00164 808BA064 AE0E02C0 */ sw $t6, 0x02C0($s0) ## 000002C0 -/* 00168 808BA068 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000 -/* 0016C 808BA06C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 00170 808BA070 3C05808C */ lui $a1, %hi(D_808BAC98) ## $a1 = 808C0000 -/* 00174 808BA074 24A5AC98 */ addiu $a1, $a1, %lo(D_808BAC98) ## $a1 = 808BAC98 -/* 00178 808BA078 240600FC */ addiu $a2, $zero, 0x00FC ## $a2 = 000000FC -/* 0017C 808BA07C 0C0346A2 */ jal Matrix_NewMtx -/* 00180 808BA080 AFA2004C */ sw $v0, 0x004C($sp) -/* 00184 808BA084 8FA3004C */ lw $v1, 0x004C($sp) -/* 00188 808BA088 3C188016 */ lui $t8, %hi(gSaveContext+4) -/* 0018C 808BA08C 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000 -/* 00190 808BA090 AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 00194 808BA094 8F18E664 */ lw $t8, %lo(gSaveContext+4)($t8) -/* 00198 808BA098 3C0CDE00 */ lui $t4, 0xDE00 ## $t4 = DE000000 -/* 0019C 808BA09C 5700000A */ bnel $t8, $zero, .L808BA0C8 -/* 001A0 808BA0A0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 001A4 808BA0A4 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -/* 001A8 808BA0A8 3C0A0601 */ lui $t2, %hi(D_06008190) ## $t2 = 06010000 -/* 001AC 808BA0AC 254A8190 */ addiu $t2, $t2, %lo(D_06008190) ## $t2 = 06008190 -/* 001B0 808BA0B0 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 001B4 808BA0B4 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0 -/* 001B8 808BA0B8 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004 -/* 001BC 808BA0BC 10000046 */ beq $zero, $zero, .L808BA1D8 -/* 001C0 808BA0C0 AC490000 */ sw $t1, 0x0000($v0) ## 00000000 -/* 001C4 808BA0C4 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0 -.L808BA0C8: -/* 001C8 808BA0C8 3C0D0600 */ lui $t5, %hi(D_06007E20) ## $t5 = 06000000 -/* 001CC 808BA0CC 25AD7E20 */ addiu $t5, $t5, %lo(D_06007E20) ## $t5 = 06007E20 -/* 001D0 808BA0D0 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008 -/* 001D4 808BA0D4 AE0B02C0 */ sw $t3, 0x02C0($s0) ## 000002C0 -/* 001D8 808BA0D8 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004 -/* 001DC 808BA0DC AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000 -/* 001E0 808BA0E0 0C024F61 */ jal func_80093D84 -/* 001E4 808BA0E4 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 001E8 808BA0E8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 001EC 808BA0EC 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000 -/* 001F0 808BA0F0 35EF0020 */ ori $t7, $t7, 0x0020 ## $t7 = DB060020 -/* 001F4 808BA0F4 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008 -/* 001F8 808BA0F8 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0 -/* 001FC 808BA0FC 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 00200 808BA100 02214021 */ addu $t0, $s1, $at -/* 00204 808BA104 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000 -/* 00208 808BA108 8D061DE4 */ lw $a2, 0x1DE4($t0) ## 00001DE4 -/* 0020C 808BA10C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 00210 808BA110 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020 -/* 00214 808BA114 AFB80010 */ sw $t8, 0x0010($sp) -/* 00218 808BA118 AFA80030 */ sw $t0, 0x0030($sp) -/* 0021C 808BA11C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00220 808BA120 24070040 */ addiu $a3, $zero, 0x0040 ## $a3 = 00000040 -/* 00224 808BA124 AFA20040 */ sw $v0, 0x0040($sp) -/* 00228 808BA128 0C0253A7 */ jal Gfx_TexScroll -/* 0022C 808BA12C 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000 -/* 00230 808BA130 8FA30040 */ lw $v1, 0x0040($sp) -/* 00234 808BA134 8FA80030 */ lw $t0, 0x0030($sp) -/* 00238 808BA138 3C09DB06 */ lui $t1, 0xDB06 ## $t1 = DB060000 -/* 0023C 808BA13C AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 00240 808BA140 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00244 808BA144 35290024 */ ori $t1, $t1, 0x0024 ## $t1 = DB060024 -/* 00248 808BA148 240A0020 */ addiu $t2, $zero, 0x0020 ## $t2 = 00000020 -/* 0024C 808BA14C 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 00250 808BA150 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 -/* 00254 808BA154 AC490000 */ sw $t1, 0x0000($v0) ## 00000000 -/* 00258 808BA158 8D061DE4 */ lw $a2, 0x1DE4($t0) ## 00001DE4 -/* 0025C 808BA15C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 00260 808BA160 AFAA0010 */ sw $t2, 0x0010($sp) -/* 00264 808BA164 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 00268 808BA168 24070040 */ addiu $a3, $zero, 0x0040 ## $a3 = 00000040 -/* 0026C 808BA16C AFA2003C */ sw $v0, 0x003C($sp) -/* 00270 808BA170 0C0253A7 */ jal Gfx_TexScroll -/* 00274 808BA174 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000 -/* 00278 808BA178 8FA3003C */ lw $v1, 0x003C($sp) -/* 0027C 808BA17C 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000 -/* 00280 808BA180 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003 -/* 00284 808BA184 AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 00288 808BA188 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 0028C 808BA18C 3C05808C */ lui $a1, %hi(D_808BACB0) ## $a1 = 808C0000 -/* 00290 808BA190 24A5ACB0 */ addiu $a1, $a1, %lo(D_808BACB0) ## $a1 = 808BACB0 -/* 00294 808BA194 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008 -/* 00298 808BA198 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0 -/* 0029C 808BA19C AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000 -/* 002A0 808BA1A0 8E240000 */ lw $a0, 0x0000($s1) ## 00000000 -/* 002A4 808BA1A4 24060116 */ addiu $a2, $zero, 0x0116 ## $a2 = 00000116 -/* 002A8 808BA1A8 0C0346A2 */ jal Matrix_NewMtx -/* 002AC 808BA1AC AFA20038 */ sw $v0, 0x0038($sp) -/* 002B0 808BA1B0 8FA30038 */ lw $v1, 0x0038($sp) -/* 002B4 808BA1B4 3C0F0600 */ lui $t7, %hi(D_06007EE0) ## $t7 = 06000000 -/* 002B8 808BA1B8 25EF7EE0 */ addiu $t7, $t7, %lo(D_06007EE0) ## $t7 = 06007EE0 -/* 002BC 808BA1BC AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 002C0 808BA1C0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 002C4 808BA1C4 3C0EDE00 */ lui $t6, 0xDE00 ## $t6 = DE000000 -/* 002C8 808BA1C8 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008 -/* 002CC 808BA1CC AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0 -/* 002D0 808BA1D0 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004 -/* 002D4 808BA1D4 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000 -.L808BA1D8: -/* 002D8 808BA1D8 3C06808C */ lui $a2, %hi(D_808BACC8) ## $a2 = 808C0000 -/* 002DC 808BA1DC 24C6ACC8 */ addiu $a2, $a2, %lo(D_808BACC8) ## $a2 = 808BACC8 -/* 002E0 808BA1E0 27A40050 */ addiu $a0, $sp, 0x0050 ## $a0 = FFFFFFE8 -/* 002E4 808BA1E4 8E250000 */ lw $a1, 0x0000($s1) ## 00000000 -/* 002E8 808BA1E8 0C031AD5 */ jal Graph_CloseDisps -/* 002EC 808BA1EC 2407011C */ addiu $a3, $zero, 0x011C ## $a3 = 0000011C -/* 002F0 808BA1F0 8FBF0024 */ lw $ra, 0x0024($sp) -/* 002F4 808BA1F4 8FB0001C */ lw $s0, 0x001C($sp) -/* 002F8 808BA1F8 8FB10020 */ lw $s1, 0x0020($sp) -/* 002FC 808BA1FC 03E00008 */ jr $ra -/* 00300 808BA200 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA204.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA204.s deleted file mode 100644 index 3c25362c80..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA204.s +++ /dev/null @@ -1,12 +0,0 @@ -glabel func_808BA204 -/* 00304 808BA204 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000 -/* 00308 808BA208 01C57021 */ addu $t6, $t6, $a1 -/* 0030C 808BA20C 85CE1D32 */ lh $t6, 0x1D32($t6) ## 00011D32 -/* 00310 808BA210 3C0F808C */ lui $t7, %hi(func_808BA22C) ## $t7 = 808C0000 -/* 00314 808BA214 25EFA22C */ addiu $t7, $t7, %lo(func_808BA22C) ## $t7 = 808BA22C -/* 00318 808BA218 11C00002 */ beq $t6, $zero, .L808BA224 -/* 0031C 808BA21C 00000000 */ nop -/* 00320 808BA220 AC8F0150 */ sw $t7, 0x0150($a0) ## 00000150 -.L808BA224: -/* 00324 808BA224 03E00008 */ jr $ra -/* 00328 808BA228 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA22C.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA22C.s deleted file mode 100644 index e017590674..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA22C.s +++ /dev/null @@ -1,26 +0,0 @@ -.late_rodata -glabel D_808BAD58 - .float 0.05 - -.text -glabel func_808BA22C -/* 0032C 808BA22C AFA50004 */ sw $a1, 0x0004($sp) -/* 00330 808BA230 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00334 808BA234 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00 -/* 00338 808BA238 C480014C */ lwc1 $f0, 0x014C($a0) ## 0000014C -/* 0033C 808BA23C 3C0E808C */ lui $t6, %hi(func_808BA274) ## $t6 = 808C0000 -/* 00340 808BA240 3C01808C */ lui $at, %hi(D_808BAD58) ## $at = 808C0000 -/* 00344 808BA244 4602003C */ c.lt.s $f0, $f2 -/* 00348 808BA248 25CEA274 */ addiu $t6, $t6, %lo(func_808BA274) ## $t6 = 808BA274 -/* 0034C 808BA24C 45020006 */ bc1fl .L808BA268 -/* 00350 808BA250 E482014C */ swc1 $f2, 0x014C($a0) ## 0000014C -/* 00354 808BA254 C424AD58 */ lwc1 $f4, %lo(D_808BAD58)($at) -/* 00358 808BA258 46040180 */ add.s $f6, $f0, $f4 -/* 0035C 808BA25C 03E00008 */ jr $ra -/* 00360 808BA260 E486014C */ swc1 $f6, 0x014C($a0) ## 0000014C -.L808BA264: -/* 00364 808BA264 E482014C */ swc1 $f2, 0x014C($a0) ## 0000014C -.L808BA268: -/* 00368 808BA268 AC8E0150 */ sw $t6, 0x0150($a0) ## 00000150 -/* 0036C 808BA26C 03E00008 */ jr $ra -/* 00370 808BA270 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA274.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA274.s deleted file mode 100644 index 57e3164d35..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA274.s +++ /dev/null @@ -1,34 +0,0 @@ -.late_rodata -glabel D_808BAD5C - .float 0.2 - -glabel D_808BAD60 - .float 0.025 - -.text -glabel func_808BA274 -/* 00374 808BA274 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00378 808BA278 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0037C 808BA27C AFA5001C */ sw $a1, 0x001C($sp) -/* 00380 808BA280 3C01808C */ lui $at, %hi(D_808BAD5C) ## $at = 808C0000 -/* 00384 808BA284 C424AD5C */ lwc1 $f4, %lo(D_808BAD5C)($at) -/* 00388 808BA288 C480014C */ lwc1 $f0, 0x014C($a0) ## 0000014C -/* 0038C 808BA28C 3C01808C */ lui $at, %hi(D_808BAD60) ## $at = 808C0000 -/* 00390 808BA290 4600203C */ c.lt.s $f4, $f0 -/* 00394 808BA294 00000000 */ nop -/* 00398 808BA298 45020006 */ bc1fl .L808BA2B4 -/* 0039C 808BA29C 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -/* 003A0 808BA2A0 C426AD60 */ lwc1 $f6, %lo(D_808BAD60)($at) -/* 003A4 808BA2A4 46060201 */ sub.s $f8, $f0, $f6 -/* 003A8 808BA2A8 10000004 */ beq $zero, $zero, .L808BA2BC -/* 003AC 808BA2AC E488014C */ swc1 $f8, 0x014C($a0) ## 0000014C -/* 003B0 808BA2B0 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -.L808BA2B4: -/* 003B4 808BA2B4 0C00B55C */ jal Actor_Kill - -/* 003B8 808BA2B8 E48A014C */ swc1 $f10, 0x014C($a0) ## 0000014C -.L808BA2BC: -/* 003BC 808BA2BC 8FBF0014 */ lw $ra, 0x0014($sp) -/* 003C0 808BA2C0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 003C4 808BA2C4 03E00008 */ jr $ra -/* 003C8 808BA2C8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s b/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s deleted file mode 100644 index f786d0aded..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s +++ /dev/null @@ -1,668 +0,0 @@ -.rdata -glabel D_808BACE0 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BACF8 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BAD10 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BAD28 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -glabel D_808BAD40 - .asciz "../z_bg_toki_hikari.c" - .balign 4 - -.late_rodata -glabel D_808BAD64 - .float 0.32 -glabel D_808BAD68 - .float 3.1415927 - -.text -glabel func_808BA2CC -/* 003CC 808BA2CC 27BDFF58 */ addiu $sp, $sp, 0xFF58 ## $sp = FFFFFF58 -/* 003D0 808BA2D0 AFBF003C */ sw $ra, 0x003C($sp) -/* 003D4 808BA2D4 AFB00038 */ sw $s0, 0x0038($sp) -/* 003D8 808BA2D8 AFA400A8 */ sw $a0, 0x00A8($sp) -/* 003DC 808BA2DC AFA500AC */ sw $a1, 0x00AC($sp) -/* 003E0 808BA2E0 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 003E4 808BA2E4 3C06808C */ lui $a2, %hi(D_808BACE0) ## $a2 = 808C0000 -/* 003E8 808BA2E8 24C6ACE0 */ addiu $a2, $a2, %lo(D_808BACE0) ## $a2 = 808BACE0 -/* 003EC 808BA2EC 27A4008C */ addiu $a0, $sp, 0x008C ## $a0 = FFFFFFE4 -/* 003F0 808BA2F0 2407015E */ addiu $a3, $zero, 0x015E ## $a3 = 0000015E -/* 003F4 808BA2F4 0C031AB1 */ jal Graph_OpenDisps -/* 003F8 808BA2F8 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000 -/* 003FC 808BA2FC 3C01438A */ lui $at, 0x438A ## $at = 438A0000 -/* 00400 808BA300 44817000 */ mtc1 $at, $f14 ## $f14 = 276.00 -/* 00404 808BA304 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 00408 808BA308 3C06448C */ lui $a2, 0x448C ## $a2 = 448C0000 -/* 0040C 808BA30C 34C64000 */ ori $a2, $a2, 0x4000 ## $a2 = 448C4000 -/* 00410 808BA310 0C034261 */ jal Matrix_Translate -/* 00414 808BA314 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 00418 808BA318 8FAF00A8 */ lw $t7, 0x00A8($sp) -/* 0041C 808BA31C 3C01808C */ lui $at, %hi(D_808BAD64) ## $at = 808C0000 -/* 00420 808BA320 C42CAD64 */ lwc1 $f12, %lo(D_808BAD64)($at) -/* 00424 808BA324 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000 -/* 00428 808BA328 44813000 */ mtc1 $at, $f6 ## $f6 = 7.00 -/* 0042C 808BA32C C5E4014C */ lwc1 $f4, 0x014C($t7) ## 0000014C -/* 00430 808BA330 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 00434 808BA334 46006386 */ mov.s $f14, $f12 -/* 00438 808BA338 46062202 */ mul.s $f8, $f4, $f6 -/* 0043C 808BA33C 44064000 */ mfc1 $a2, $f8 -/* 00440 808BA340 0C0342A3 */ jal Matrix_Scale -/* 00444 808BA344 00000000 */ nop -/* 00448 808BA348 3C01808C */ lui $at, %hi(D_808BAD68) ## $at = 808C0000 -/* 0044C 808BA34C C42CAD68 */ lwc1 $f12, %lo(D_808BAD68)($at) -/* 00450 808BA350 0C0343B5 */ jal Matrix_RotateZ -/* 00454 808BA354 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 00458 808BA358 8FB800AC */ lw $t8, 0x00AC($sp) -/* 0045C 808BA35C 0C024F46 */ jal func_80093D18 -/* 00460 808BA360 8F040000 */ lw $a0, 0x0000($t8) ## 00000000 -/* 00464 808BA364 0C034213 */ jal Matrix_Push -/* 00468 808BA368 00000000 */ nop -/* 0046C 808BA36C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00470 808BA370 3C0AE700 */ lui $t2, 0xE700 ## $t2 = E7000000 -/* 00474 808BA374 3C01431B */ lui $at, 0x431B ## $at = 431B0000 -/* 00478 808BA378 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 0047C 808BA37C AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 -/* 00480 808BA380 AC400004 */ sw $zero, 0x0004($v0) ## 00000004 -/* 00484 808BA384 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000 -/* 00488 808BA388 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0 -/* 0048C 808BA38C 8FA700A8 */ lw $a3, 0x00A8($sp) -/* 00490 808BA390 3C0CFA00 */ lui $t4, 0xFA00 ## $t4 = FA000000 -/* 00494 808BA394 248B0008 */ addiu $t3, $a0, 0x0008 ## $t3 = 00000008 -/* 00498 808BA398 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0 -/* 0049C 808BA39C 358C0080 */ ori $t4, $t4, 0x0080 ## $t4 = FA000080 -/* 004A0 808BA3A0 44811000 */ mtc1 $at, $f2 ## $f2 = 155.00 -/* 004A4 808BA3A4 3C01437F */ lui $at, 0x437F ## $at = 437F0000 -/* 004A8 808BA3A8 AC8C0000 */ sw $t4, 0x0000($a0) ## 00000000 -/* 004AC 808BA3AC 44816000 */ mtc1 $at, $f12 ## $f12 = 255.00 -/* 004B0 808BA3B0 C4E0014C */ lwc1 $f0, 0x014C($a3) ## 0000014C -/* 004B4 808BA3B4 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 004B8 808BA3B8 3C05808C */ lui $a1, %hi(D_808BACF8) ## $a1 = 808C0000 -/* 004BC 808BA3BC 460C0282 */ mul.s $f10, $f0, $f12 -/* 004C0 808BA3C0 444DF800 */ cfc1 $t5, $31 -/* 004C4 808BA3C4 44C3F800 */ ctc1 $v1, $31 -/* 004C8 808BA3C8 00000000 */ nop -/* 004CC 808BA3CC 46005424 */ cvt.w.s $f16, $f10 -/* 004D0 808BA3D0 4443F800 */ cfc1 $v1, $31 -/* 004D4 808BA3D4 00000000 */ nop -/* 004D8 808BA3D8 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 004DC 808BA3DC 10600012 */ beq $v1, $zero, .L808BA428 -/* 004E0 808BA3E0 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 004E4 808BA3E4 44818000 */ mtc1 $at, $f16 ## $f16 = 2147483648.00 -/* 004E8 808BA3E8 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 004EC 808BA3EC 46105401 */ sub.s $f16, $f10, $f16 -/* 004F0 808BA3F0 44C3F800 */ ctc1 $v1, $31 -/* 004F4 808BA3F4 00000000 */ nop -/* 004F8 808BA3F8 46008424 */ cvt.w.s $f16, $f16 -/* 004FC 808BA3FC 4443F800 */ cfc1 $v1, $31 -/* 00500 808BA400 00000000 */ nop -/* 00504 808BA404 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 00508 808BA408 14600005 */ bne $v1, $zero, .L808BA420 -/* 0050C 808BA40C 00000000 */ nop -/* 00510 808BA410 44038000 */ mfc1 $v1, $f16 -/* 00514 808BA414 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00518 808BA418 10000007 */ beq $zero, $zero, .L808BA438 -/* 0051C 808BA41C 00611825 */ or $v1, $v1, $at ## $v1 = 80000000 -.L808BA420: -/* 00520 808BA420 10000005 */ beq $zero, $zero, .L808BA438 -/* 00524 808BA424 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF -.L808BA428: -/* 00528 808BA428 44038000 */ mfc1 $v1, $f16 -/* 0052C 808BA42C 00000000 */ nop -/* 00530 808BA430 0460FFFB */ bltz $v1, .L808BA420 -/* 00534 808BA434 00000000 */ nop -.L808BA438: -/* 00538 808BA438 44CDF800 */ ctc1 $t5, $31 -/* 0053C 808BA43C 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001 -/* 00540 808BA440 306300FF */ andi $v1, $v1, 0x00FF ## $v1 = 000000FF -/* 00544 808BA444 46001482 */ mul.s $f18, $f2, $f0 -/* 00548 808BA448 00037600 */ sll $t6, $v1, 24 -/* 0054C 808BA44C 444FF800 */ cfc1 $t7, $31 -/* 00550 808BA450 44D8F800 */ ctc1 $t8, $31 -/* 00554 808BA454 00000000 */ nop -/* 00558 808BA458 46009124 */ cvt.w.s $f4, $f18 -/* 0055C 808BA45C 4458F800 */ cfc1 $t8, $31 -/* 00560 808BA460 00000000 */ nop -/* 00564 808BA464 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000 -/* 00568 808BA468 13000012 */ beq $t8, $zero, .L808BA4B4 -/* 0056C 808BA46C 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00570 808BA470 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00 -/* 00574 808BA474 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001 -/* 00578 808BA478 46049101 */ sub.s $f4, $f18, $f4 -/* 0057C 808BA47C 44D8F800 */ ctc1 $t8, $31 -/* 00580 808BA480 00000000 */ nop -/* 00584 808BA484 46002124 */ cvt.w.s $f4, $f4 -/* 00588 808BA488 4458F800 */ cfc1 $t8, $31 -/* 0058C 808BA48C 00000000 */ nop -/* 00590 808BA490 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000 -/* 00594 808BA494 17000005 */ bne $t8, $zero, .L808BA4AC -/* 00598 808BA498 00000000 */ nop -/* 0059C 808BA49C 44182000 */ mfc1 $t8, $f4 -/* 005A0 808BA4A0 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 005A4 808BA4A4 10000007 */ beq $zero, $zero, .L808BA4C4 -/* 005A8 808BA4A8 0301C025 */ or $t8, $t8, $at ## $t8 = 80000000 -.L808BA4AC: -/* 005AC 808BA4AC 10000005 */ beq $zero, $zero, .L808BA4C4 -/* 005B0 808BA4B0 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF -.L808BA4B4: -/* 005B4 808BA4B4 44182000 */ mfc1 $t8, $f4 -/* 005B8 808BA4B8 00000000 */ nop -/* 005BC 808BA4BC 0700FFFB */ bltz $t8, .L808BA4AC -/* 005C0 808BA4C0 00000000 */ nop -.L808BA4C4: -/* 005C4 808BA4C4 0300C825 */ or $t9, $t8, $zero ## $t9 = FFFFFFFF -/* 005C8 808BA4C8 272A0064 */ addiu $t2, $t9, 0x0064 ## $t2 = 00000063 -/* 005CC 808BA4CC 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000063 -/* 005D0 808BA4D0 44CFF800 */ ctc1 $t7, $31 -/* 005D4 808BA4D4 000B6400 */ sll $t4, $t3, 16 -/* 005D8 808BA4D8 01CC6825 */ or $t5, $t6, $t4 ## $t5 = FA000080 -/* 005DC 808BA4DC 00037A00 */ sll $t7, $v1, 8 -/* 005E0 808BA4E0 01AFC025 */ or $t8, $t5, $t7 ## $t8 = FA000080 -/* 005E4 808BA4E4 0303C825 */ or $t9, $t8, $v1 ## $t9 = FA0000FF -/* 005E8 808BA4E8 AC990004 */ sw $t9, 0x0004($a0) ## 00000004 -/* 005EC 808BA4EC 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0 -/* 005F0 808BA4F0 3C0BFB00 */ lui $t3, 0xFB00 ## $t3 = FB000000 -/* 005F4 808BA4F4 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 005F8 808BA4F8 246A0008 */ addiu $t2, $v1, 0x0008 ## $t2 = 00000107 -/* 005FC 808BA4FC AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0 -/* 00600 808BA500 AC6B0000 */ sw $t3, 0x0000($v1) ## 000000FF -/* 00604 808BA504 C4E0014C */ lwc1 $f0, 0x014C($a3) ## 0000014C -/* 00608 808BA508 46020182 */ mul.s $f6, $f0, $f2 -/* 0060C 808BA50C 444EF800 */ cfc1 $t6, $31 -/* 00610 808BA510 44CCF800 */ ctc1 $t4, $31 -/* 00614 808BA514 00000000 */ nop -/* 00618 808BA518 46003224 */ cvt.w.s $f8, $f6 -/* 0061C 808BA51C 444CF800 */ cfc1 $t4, $31 -/* 00620 808BA520 00000000 */ nop -/* 00624 808BA524 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000 -/* 00628 808BA528 11800012 */ beq $t4, $zero, .L808BA574 -/* 0062C 808BA52C 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00630 808BA530 44814000 */ mtc1 $at, $f8 ## $f8 = 2147483648.00 -/* 00634 808BA534 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 00638 808BA538 46083201 */ sub.s $f8, $f6, $f8 -/* 0063C 808BA53C 44CCF800 */ ctc1 $t4, $31 -/* 00640 808BA540 00000000 */ nop -/* 00644 808BA544 46004224 */ cvt.w.s $f8, $f8 -/* 00648 808BA548 444CF800 */ cfc1 $t4, $31 -/* 0064C 808BA54C 00000000 */ nop -/* 00650 808BA550 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000 -/* 00654 808BA554 15800005 */ bne $t4, $zero, .L808BA56C -/* 00658 808BA558 00000000 */ nop -/* 0065C 808BA55C 440C4000 */ mfc1 $t4, $f8 -/* 00660 808BA560 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00664 808BA564 10000007 */ beq $zero, $zero, .L808BA584 -/* 00668 808BA568 01816025 */ or $t4, $t4, $at ## $t4 = 80000000 -.L808BA56C: -/* 0066C 808BA56C 10000005 */ beq $zero, $zero, .L808BA584 -/* 00670 808BA570 240CFFFF */ addiu $t4, $zero, 0xFFFF ## $t4 = FFFFFFFF -.L808BA574: -/* 00674 808BA574 440C4000 */ mfc1 $t4, $f8 -/* 00678 808BA578 00000000 */ nop -/* 0067C 808BA57C 0580FFFB */ bltz $t4, .L808BA56C -/* 00680 808BA580 00000000 */ nop -.L808BA584: -/* 00684 808BA584 44CEF800 */ ctc1 $t6, $31 -/* 00688 808BA588 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 0068C 808BA58C 25980064 */ addiu $t8, $t4, 0x0064 ## $t8 = 00000063 -/* 00690 808BA590 46006282 */ mul.s $f10, $f12, $f0 -/* 00694 808BA594 0018CE00 */ sll $t9, $t8, 24 -/* 00698 808BA598 444AF800 */ cfc1 $t2, $31 -/* 0069C 808BA59C 44CBF800 */ ctc1 $t3, $31 -/* 006A0 808BA5A0 00000000 */ nop -/* 006A4 808BA5A4 46005424 */ cvt.w.s $f16, $f10 -/* 006A8 808BA5A8 444BF800 */ cfc1 $t3, $31 -/* 006AC 808BA5AC 00000000 */ nop -/* 006B0 808BA5B0 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000 -/* 006B4 808BA5B4 11600012 */ beq $t3, $zero, .L808BA600 -/* 006B8 808BA5B8 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 006BC 808BA5BC 44818000 */ mtc1 $at, $f16 ## $f16 = 2147483648.00 -/* 006C0 808BA5C0 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 006C4 808BA5C4 46105401 */ sub.s $f16, $f10, $f16 -/* 006C8 808BA5C8 44CBF800 */ ctc1 $t3, $31 -/* 006CC 808BA5CC 00000000 */ nop -/* 006D0 808BA5D0 46008424 */ cvt.w.s $f16, $f16 -/* 006D4 808BA5D4 444BF800 */ cfc1 $t3, $31 -/* 006D8 808BA5D8 00000000 */ nop -/* 006DC 808BA5DC 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000 -/* 006E0 808BA5E0 15600005 */ bne $t3, $zero, .L808BA5F8 -/* 006E4 808BA5E4 00000000 */ nop -/* 006E8 808BA5E8 440B8000 */ mfc1 $t3, $f16 -/* 006EC 808BA5EC 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 006F0 808BA5F0 10000007 */ beq $zero, $zero, .L808BA610 -/* 006F4 808BA5F4 01615825 */ or $t3, $t3, $at ## $t3 = 80000000 -.L808BA5F8: -/* 006F8 808BA5F8 10000005 */ beq $zero, $zero, .L808BA610 -/* 006FC 808BA5FC 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF -.L808BA600: -/* 00700 808BA600 440B8000 */ mfc1 $t3, $f16 -/* 00704 808BA604 00000000 */ nop -/* 00708 808BA608 0560FFFB */ bltz $t3, .L808BA5F8 -/* 0070C 808BA60C 00000000 */ nop -.L808BA610: -/* 00710 808BA610 01607025 */ or $t6, $t3, $zero ## $t6 = FFFFFFFF -/* 00714 808BA614 31CC00FF */ andi $t4, $t6, 0x00FF ## $t4 = 000000FF -/* 00718 808BA618 000C6C00 */ sll $t5, $t4, 16 -/* 0071C 808BA61C 032D7825 */ or $t7, $t9, $t5 ## $t7 = FA0000FF -/* 00720 808BA620 35F80080 */ ori $t8, $t7, 0x0080 ## $t8 = FA0000FF -/* 00724 808BA624 AC780004 */ sw $t8, 0x0004($v1) ## 00000103 -/* 00728 808BA628 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 0072C 808BA62C 44CAF800 */ ctc1 $t2, $31 -/* 00730 808BA630 3C0BDA38 */ lui $t3, 0xDA38 ## $t3 = DA380000 -/* 00734 808BA634 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008 -/* 00738 808BA638 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0 -/* 0073C 808BA63C 356B0003 */ ori $t3, $t3, 0x0003 ## $t3 = DA380003 -/* 00740 808BA640 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000 -/* 00744 808BA644 8FAE00AC */ lw $t6, 0x00AC($sp) -/* 00748 808BA648 24A5ACF8 */ addiu $a1, $a1, %lo(D_808BACF8) ## $a1 = 808BACF8 -/* 0074C 808BA64C 2406017E */ addiu $a2, $zero, 0x017E ## $a2 = 0000017E -/* 00750 808BA650 8DC40000 */ lw $a0, 0x0000($t6) ## FFFFFFFF -/* 00754 808BA654 0C0346A2 */ jal Matrix_NewMtx -/* 00758 808BA658 AFA2007C */ sw $v0, 0x007C($sp) -/* 0075C 808BA65C 8FA3007C */ lw $v1, 0x007C($sp) -/* 00760 808BA660 3C19DB06 */ lui $t9, 0xDB06 ## $t9 = DB060000 -/* 00764 808BA664 37390020 */ ori $t9, $t9, 0x0020 ## $t9 = DB060020 -/* 00768 808BA668 AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 0076C 808BA66C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00770 808BA670 8FA900AC */ lw $t1, 0x00AC($sp) -/* 00774 808BA674 3C030001 */ lui $v1, 0x0001 ## $v1 = 00010000 -/* 00778 808BA678 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008 -/* 0077C 808BA67C AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0 -/* 00780 808BA680 AC590000 */ sw $t9, 0x0000($v0) ## 00000000 -/* 00784 808BA684 00691821 */ addu $v1, $v1, $t1 -/* 00788 808BA688 8C631DE4 */ lw $v1, 0x1DE4($v1) ## 00011DE4 -/* 0078C 808BA68C 8D240000 */ lw $a0, 0x0000($t1) ## 00000000 -/* 00790 808BA690 240D0020 */ addiu $t5, $zero, 0x0020 ## $t5 = 00000020 -/* 00794 808BA694 3063007F */ andi $v1, $v1, 0x007F ## $v1 = 00000000 -/* 00798 808BA698 00030823 */ subu $at, $zero, $v1 -/* 0079C 808BA69C 00035080 */ sll $t2, $v1, 2 -/* 007A0 808BA6A0 240F0040 */ addiu $t7, $zero, 0x0040 ## $t7 = 00000040 -/* 007A4 808BA6A4 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001 -/* 007A8 808BA6A8 240B0020 */ addiu $t3, $zero, 0x0020 ## $t3 = 00000020 -/* 007AC 808BA6AC 240E0040 */ addiu $t6, $zero, 0x0040 ## $t6 = 00000040 -/* 007B0 808BA6B0 AFAE0028 */ sw $t6, 0x0028($sp) -/* 007B4 808BA6B4 AFAB0024 */ sw $t3, 0x0024($sp) -/* 007B8 808BA6B8 AFB80018 */ sw $t8, 0x0018($sp) -/* 007BC 808BA6BC AFAF0014 */ sw $t7, 0x0014($sp) -/* 007C0 808BA6C0 AFAA001C */ sw $t2, 0x001C($sp) -/* 007C4 808BA6C4 00013040 */ sll $a2, $at, 1 -/* 007C8 808BA6C8 AFAD0010 */ sw $t5, 0x0010($sp) -/* 007CC 808BA6CC AFA00020 */ sw $zero, 0x0020($sp) -/* 007D0 808BA6D0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 -/* 007D4 808BA6D4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000 -/* 007D8 808BA6D8 0C0253D0 */ jal Gfx_TwoTexScroll -/* 007DC 808BA6DC AFA20078 */ sw $v0, 0x0078($sp) -/* 007E0 808BA6E0 8FA80078 */ lw $t0, 0x0078($sp) -/* 007E4 808BA6E4 3C0D0600 */ lui $t5, %hi(D_06000880) ## $t5 = 06000000 -/* 007E8 808BA6E8 25AD0880 */ addiu $t5, $t5, %lo(D_06000880) ## $t5 = 06000880 -/* 007EC 808BA6EC AD020004 */ sw $v0, 0x0004($t0) ## 00000004 -/* 007F0 808BA6F0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 007F4 808BA6F4 3C19DE00 */ lui $t9, 0xDE00 ## $t9 = DE000000 -/* 007F8 808BA6F8 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008 -/* 007FC 808BA6FC AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0 -/* 00800 808BA700 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004 -/* 00804 808BA704 0C034221 */ jal Matrix_Pop -/* 00808 808BA708 AC590000 */ sw $t9, 0x0000($v0) ## 00000000 -/* 0080C 808BA70C 0C034213 */ jal Matrix_Push -/* 00810 808BA710 00000000 */ nop -/* 00814 808BA714 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00818 808BA718 3C18E700 */ lui $t8, 0xE700 ## $t8 = E7000000 -/* 0081C 808BA71C 3C0BFA00 */ lui $t3, 0xFA00 ## $t3 = FA000000 -/* 00820 808BA720 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008 -/* 00824 808BA724 AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0 -/* 00828 808BA728 AC400004 */ sw $zero, 0x0004($v0) ## 00000004 -/* 0082C 808BA72C AC580000 */ sw $t8, 0x0000($v0) ## 00000000 -/* 00830 808BA730 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0 -/* 00834 808BA734 8FA700A8 */ lw $a3, 0x00A8($sp) -/* 00838 808BA738 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -/* 0083C 808BA73C 246A0008 */ addiu $t2, $v1, 0x0008 ## $t2 = 00000008 -/* 00840 808BA740 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0 -/* 00844 808BA744 AC6B0000 */ sw $t3, 0x0000($v1) ## 00000000 -/* 00848 808BA748 44811000 */ mtc1 $at, $f2 ## $f2 = 200.00 -/* 0084C 808BA74C C4F2014C */ lwc1 $f18, 0x014C($a3) ## 0000014C -/* 00850 808BA750 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 00854 808BA754 3C0AFB00 */ lui $t2, 0xFB00 ## $t2 = FB000000 -/* 00858 808BA758 46029102 */ mul.s $f4, $f18, $f2 -/* 0085C 808BA75C 3C05808C */ lui $a1, %hi(D_808BAD10) ## $a1 = 808C0000 -/* 00860 808BA760 444EF800 */ cfc1 $t6, $31 -/* 00864 808BA764 44CCF800 */ ctc1 $t4, $31 -/* 00868 808BA768 00000000 */ nop -/* 0086C 808BA76C 460021A4 */ cvt.w.s $f6, $f4 -/* 00870 808BA770 444CF800 */ cfc1 $t4, $31 -/* 00874 808BA774 00000000 */ nop -/* 00878 808BA778 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000 -/* 0087C 808BA77C 11800012 */ beq $t4, $zero, .L808BA7C8 -/* 00880 808BA780 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00884 808BA784 44813000 */ mtc1 $at, $f6 ## $f6 = 2147483648.00 -/* 00888 808BA788 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001 -/* 0088C 808BA78C 46062181 */ sub.s $f6, $f4, $f6 -/* 00890 808BA790 44CCF800 */ ctc1 $t4, $31 -/* 00894 808BA794 00000000 */ nop -/* 00898 808BA798 460031A4 */ cvt.w.s $f6, $f6 -/* 0089C 808BA79C 444CF800 */ cfc1 $t4, $31 -/* 008A0 808BA7A0 00000000 */ nop -/* 008A4 808BA7A4 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000 -/* 008A8 808BA7A8 15800005 */ bne $t4, $zero, .L808BA7C0 -/* 008AC 808BA7AC 00000000 */ nop -/* 008B0 808BA7B0 440C3000 */ mfc1 $t4, $f6 -/* 008B4 808BA7B4 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 008B8 808BA7B8 10000007 */ beq $zero, $zero, .L808BA7D8 -/* 008BC 808BA7BC 01816025 */ or $t4, $t4, $at ## $t4 = 80000000 -.L808BA7C0: -/* 008C0 808BA7C0 10000005 */ beq $zero, $zero, .L808BA7D8 -/* 008C4 808BA7C4 240CFFFF */ addiu $t4, $zero, 0xFFFF ## $t4 = FFFFFFFF -.L808BA7C8: -/* 008C8 808BA7C8 440C3000 */ mfc1 $t4, $f6 -/* 008CC 808BA7CC 00000000 */ nop -/* 008D0 808BA7D0 0580FFFB */ bltz $t4, .L808BA7C0 -/* 008D4 808BA7D4 00000000 */ nop -.L808BA7D8: -/* 008D8 808BA7D8 318D00FF */ andi $t5, $t4, 0x00FF ## $t5 = 000000FF -/* 008DC 808BA7DC 2401FF00 */ addiu $at, $zero, 0xFF00 ## $at = FFFFFF00 -/* 008E0 808BA7E0 01A17825 */ or $t7, $t5, $at ## $t7 = FFFFFFFF -/* 008E4 808BA7E4 AC6F0004 */ sw $t7, 0x0004($v1) ## 00000004 -/* 008E8 808BA7E8 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0 -/* 008EC 808BA7EC 3C01437F */ lui $at, 0x437F ## $at = 437F0000 -/* 008F0 808BA7F0 44CEF800 */ ctc1 $t6, $31 -/* 008F4 808BA7F4 24980008 */ addiu $t8, $a0, 0x0008 ## $t8 = 00000008 -/* 008F8 808BA7F8 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0 -/* 008FC 808BA7FC AC8A0000 */ sw $t2, 0x0000($a0) ## 00000000 -/* 00900 808BA800 C4E0014C */ lwc1 $f0, 0x014C($a3) ## 0000014C -/* 00904 808BA804 44814000 */ mtc1 $at, $f8 ## $f8 = 255.00 -/* 00908 808BA808 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 0090C 808BA80C 46080282 */ mul.s $f10, $f0, $f8 -/* 00910 808BA810 444BF800 */ cfc1 $t3, $31 -/* 00914 808BA814 44C3F800 */ ctc1 $v1, $31 -/* 00918 808BA818 00000000 */ nop -/* 0091C 808BA81C 46005424 */ cvt.w.s $f16, $f10 -/* 00920 808BA820 4443F800 */ cfc1 $v1, $31 -/* 00924 808BA824 00000000 */ nop -/* 00928 808BA828 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 0092C 808BA82C 10600012 */ beq $v1, $zero, .L808BA878 -/* 00930 808BA830 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00934 808BA834 44818000 */ mtc1 $at, $f16 ## $f16 = 2147483648.00 -/* 00938 808BA838 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 0093C 808BA83C 46105401 */ sub.s $f16, $f10, $f16 -/* 00940 808BA840 44C3F800 */ ctc1 $v1, $31 -/* 00944 808BA844 00000000 */ nop -/* 00948 808BA848 46008424 */ cvt.w.s $f16, $f16 -/* 0094C 808BA84C 4443F800 */ cfc1 $v1, $31 -/* 00950 808BA850 00000000 */ nop -/* 00954 808BA854 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 00958 808BA858 14600005 */ bne $v1, $zero, .L808BA870 -/* 0095C 808BA85C 00000000 */ nop -/* 00960 808BA860 44038000 */ mfc1 $v1, $f16 -/* 00964 808BA864 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00968 808BA868 10000007 */ beq $zero, $zero, .L808BA888 -/* 0096C 808BA86C 00611825 */ or $v1, $v1, $at ## $v1 = 80000000 -.L808BA870: -/* 00970 808BA870 10000005 */ beq $zero, $zero, .L808BA888 -/* 00974 808BA874 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF -.L808BA878: -/* 00978 808BA878 44038000 */ mfc1 $v1, $f16 -/* 0097C 808BA87C 00000000 */ nop -/* 00980 808BA880 0460FFFB */ bltz $v1, .L808BA870 -/* 00984 808BA884 00000000 */ nop -.L808BA888: -/* 00988 808BA888 44CBF800 */ ctc1 $t3, $31 -/* 0098C 808BA88C 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 00990 808BA890 306300FF */ andi $v1, $v1, 0x00FF ## $v1 = 000000FF -/* 00994 808BA894 46001482 */ mul.s $f18, $f2, $f0 -/* 00998 808BA898 00037600 */ sll $t6, $v1, 24 -/* 0099C 808BA89C 00036400 */ sll $t4, $v1, 16 -/* 009A0 808BA8A0 01CCC825 */ or $t9, $t6, $t4 ## $t9 = FFFFFFFF -/* 009A4 808BA8A4 00036A00 */ sll $t5, $v1, 8 -/* 009A8 808BA8A8 032D7825 */ or $t7, $t9, $t5 ## $t7 = FFFFFFFF -/* 009AC 808BA8AC 3C0DDA38 */ lui $t5, 0xDA38 ## $t5 = DA380000 -/* 009B0 808BA8B0 4458F800 */ cfc1 $t8, $31 -/* 009B4 808BA8B4 44CAF800 */ ctc1 $t2, $31 -/* 009B8 808BA8B8 00000000 */ nop -/* 009BC 808BA8BC 46009124 */ cvt.w.s $f4, $f18 -/* 009C0 808BA8C0 444AF800 */ cfc1 $t2, $31 -/* 009C4 808BA8C4 00000000 */ nop -/* 009C8 808BA8C8 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000 -/* 009CC 808BA8CC 11400012 */ beq $t2, $zero, .L808BA918 -/* 009D0 808BA8D0 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 009D4 808BA8D4 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00 -/* 009D8 808BA8D8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 009DC 808BA8DC 46049101 */ sub.s $f4, $f18, $f4 -/* 009E0 808BA8E0 44CAF800 */ ctc1 $t2, $31 -/* 009E4 808BA8E4 00000000 */ nop -/* 009E8 808BA8E8 46002124 */ cvt.w.s $f4, $f4 -/* 009EC 808BA8EC 444AF800 */ cfc1 $t2, $31 -/* 009F0 808BA8F0 00000000 */ nop -/* 009F4 808BA8F4 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000 -/* 009F8 808BA8F8 15400005 */ bne $t2, $zero, .L808BA910 -/* 009FC 808BA8FC 00000000 */ nop -/* 00A00 808BA900 440A2000 */ mfc1 $t2, $f4 -/* 00A04 808BA904 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00A08 808BA908 10000007 */ beq $zero, $zero, .L808BA928 -/* 00A0C 808BA90C 01415025 */ or $t2, $t2, $at ## $t2 = 80000000 -.L808BA910: -/* 00A10 808BA910 10000005 */ beq $zero, $zero, .L808BA928 -/* 00A14 808BA914 240AFFFF */ addiu $t2, $zero, 0xFFFF ## $t2 = FFFFFFFF -.L808BA918: -/* 00A18 808BA918 440A2000 */ mfc1 $t2, $f4 -/* 00A1C 808BA91C 00000000 */ nop -/* 00A20 808BA920 0540FFFB */ bltz $t2, .L808BA910 -/* 00A24 808BA924 00000000 */ nop -.L808BA928: -/* 00A28 808BA928 314E00FF */ andi $t6, $t2, 0x00FF ## $t6 = 000000FF -/* 00A2C 808BA92C 01EE6025 */ or $t4, $t7, $t6 ## $t4 = FFFFFFFF -/* 00A30 808BA930 AC8C0004 */ sw $t4, 0x0004($a0) ## 00000004 -/* 00A34 808BA934 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00A38 808BA938 35AD0003 */ ori $t5, $t5, 0x0003 ## $t5 = DA380003 -/* 00A3C 808BA93C 44D8F800 */ ctc1 $t8, $31 -/* 00A40 808BA940 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008 -/* 00A44 808BA944 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 -/* 00A48 808BA948 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000 -/* 00A4C 808BA94C 8FB800AC */ lw $t8, 0x00AC($sp) -/* 00A50 808BA950 24A5AD10 */ addiu $a1, $a1, %lo(D_808BAD10) ## $a1 = 808BAD10 -/* 00A54 808BA954 2406019F */ addiu $a2, $zero, 0x019F ## $a2 = 0000019F -/* 00A58 808BA958 8F040000 */ lw $a0, 0x0000($t8) ## 00000008 -/* 00A5C 808BA95C 0C0346A2 */ jal Matrix_NewMtx -/* 00A60 808BA960 AFA20064 */ sw $v0, 0x0064($sp) -/* 00A64 808BA964 8FA30064 */ lw $v1, 0x0064($sp) -/* 00A68 808BA968 3C0F0600 */ lui $t7, %hi(D_060009C0) ## $t7 = 06000000 -/* 00A6C 808BA96C 25EF09C0 */ addiu $t7, $t7, %lo(D_060009C0) ## $t7 = 060009C0 -/* 00A70 808BA970 AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 00A74 808BA974 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00A78 808BA978 3C0BDE00 */ lui $t3, 0xDE00 ## $t3 = DE000000 -/* 00A7C 808BA97C 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008 -/* 00A80 808BA980 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0 -/* 00A84 808BA984 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004 -/* 00A88 808BA988 0C034221 */ jal Matrix_Pop -/* 00A8C 808BA98C AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000 -/* 00A90 808BA990 0C034213 */ jal Matrix_Push -/* 00A94 808BA994 00000000 */ nop -/* 00A98 808BA998 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00A9C 808BA99C 3C0CE700 */ lui $t4, 0xE700 ## $t4 = E7000000 -/* 00AA0 808BA9A0 3C0DFA00 */ lui $t5, 0xFA00 ## $t5 = FA000000 -/* 00AA4 808BA9A4 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008 -/* 00AA8 808BA9A8 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0 -/* 00AAC 808BA9AC AC400004 */ sw $zero, 0x0004($v0) ## 00000004 -/* 00AB0 808BA9B0 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000 -/* 00AB4 808BA9B4 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0 -/* 00AB8 808BA9B8 3C014348 */ lui $at, 0x4348 ## $at = 43480000 -/* 00ABC 808BA9BC 44811000 */ mtc1 $at, $f2 ## $f2 = 200.00 -/* 00AC0 808BA9C0 24790008 */ addiu $t9, $v1, 0x0008 ## $t9 = 00000008 -/* 00AC4 808BA9C4 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 -/* 00AC8 808BA9C8 AC6D0000 */ sw $t5, 0x0000($v1) ## 00000000 -/* 00ACC 808BA9CC 8FB800A8 */ lw $t8, 0x00A8($sp) -/* 00AD0 808BA9D0 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 00AD4 808BA9D4 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00AD8 808BA9D8 C706014C */ lwc1 $f6, 0x014C($t8) ## 0000014C -/* 00ADC 808BA9DC 3C05808C */ lui $a1, %hi(D_808BAD28) ## $a1 = 808C0000 -/* 00AE0 808BA9E0 46023202 */ mul.s $f8, $f6, $f2 -/* 00AE4 808BA9E4 444AF800 */ cfc1 $t2, $31 -/* 00AE8 808BA9E8 44CBF800 */ ctc1 $t3, $31 -/* 00AEC 808BA9EC 00000000 */ nop -/* 00AF0 808BA9F0 460042A4 */ cvt.w.s $f10, $f8 -/* 00AF4 808BA9F4 444BF800 */ cfc1 $t3, $31 -/* 00AF8 808BA9F8 00000000 */ nop -/* 00AFC 808BA9FC 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000 -/* 00B00 808BAA00 51600013 */ beql $t3, $zero, .L808BAA50 -/* 00B04 808BAA04 440B5000 */ mfc1 $t3, $f10 -/* 00B08 808BAA08 44815000 */ mtc1 $at, $f10 ## $f10 = 2147483648.00 -/* 00B0C 808BAA0C 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001 -/* 00B10 808BAA10 460A4281 */ sub.s $f10, $f8, $f10 -/* 00B14 808BAA14 44CBF800 */ ctc1 $t3, $31 -/* 00B18 808BAA18 00000000 */ nop -/* 00B1C 808BAA1C 460052A4 */ cvt.w.s $f10, $f10 -/* 00B20 808BAA20 444BF800 */ cfc1 $t3, $31 -/* 00B24 808BAA24 00000000 */ nop -/* 00B28 808BAA28 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000 -/* 00B2C 808BAA2C 15600005 */ bne $t3, $zero, .L808BAA44 -/* 00B30 808BAA30 00000000 */ nop -/* 00B34 808BAA34 440B5000 */ mfc1 $t3, $f10 -/* 00B38 808BAA38 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00B3C 808BAA3C 10000007 */ beq $zero, $zero, .L808BAA5C -/* 00B40 808BAA40 01615825 */ or $t3, $t3, $at ## $t3 = 80000000 -.L808BAA44: -/* 00B44 808BAA44 10000005 */ beq $zero, $zero, .L808BAA5C -/* 00B48 808BAA48 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF -/* 00B4C 808BAA4C 440B5000 */ mfc1 $t3, $f10 -.L808BAA50: -/* 00B50 808BAA50 00000000 */ nop -/* 00B54 808BAA54 0560FFFB */ bltz $t3, .L808BAA44 -/* 00B58 808BAA58 00000000 */ nop -.L808BAA5C: -/* 00B5C 808BAA5C 316E00FF */ andi $t6, $t3, 0x00FF ## $t6 = 000000FF -/* 00B60 808BAA60 2401FF00 */ addiu $at, $zero, 0xFF00 ## $at = FFFFFF00 -/* 00B64 808BAA64 01C16025 */ or $t4, $t6, $at ## $t4 = FFFFFFFF -/* 00B68 808BAA68 AC6C0004 */ sw $t4, 0x0004($v1) ## 00000004 -/* 00B6C 808BAA6C 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0 -/* 00B70 808BAA70 3C0DFB00 */ lui $t5, 0xFB00 ## $t5 = FB000000 -/* 00B74 808BAA74 3C01437F */ lui $at, 0x437F ## $at = 437F0000 -/* 00B78 808BAA78 24990008 */ addiu $t9, $a0, 0x0008 ## $t9 = 00000008 -/* 00B7C 808BAA7C AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 -/* 00B80 808BAA80 AC8D0000 */ sw $t5, 0x0000($a0) ## 00000000 -/* 00B84 808BAA84 8FB800A8 */ lw $t8, 0x00A8($sp) -/* 00B88 808BAA88 44CAF800 */ ctc1 $t2, $31 -/* 00B8C 808BAA8C 44818000 */ mtc1 $at, $f16 ## $f16 = 255.00 -/* 00B90 808BAA90 C700014C */ lwc1 $f0, 0x014C($t8) ## 0000014C -/* 00B94 808BAA94 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 00B98 808BAA98 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00B9C 808BAA9C 46100482 */ mul.s $f18, $f0, $f16 -/* 00BA0 808BAAA0 444AF800 */ cfc1 $t2, $31 -/* 00BA4 808BAAA4 44C3F800 */ ctc1 $v1, $31 -/* 00BA8 808BAAA8 00000000 */ nop -/* 00BAC 808BAAAC 46009124 */ cvt.w.s $f4, $f18 -/* 00BB0 808BAAB0 4443F800 */ cfc1 $v1, $31 -/* 00BB4 808BAAB4 00000000 */ nop -/* 00BB8 808BAAB8 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 00BBC 808BAABC 50600013 */ beql $v1, $zero, .L808BAB0C -/* 00BC0 808BAAC0 44032000 */ mfc1 $v1, $f4 -/* 00BC4 808BAAC4 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00 -/* 00BC8 808BAAC8 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 00BCC 808BAACC 46049101 */ sub.s $f4, $f18, $f4 -/* 00BD0 808BAAD0 44C3F800 */ ctc1 $v1, $31 -/* 00BD4 808BAAD4 00000000 */ nop -/* 00BD8 808BAAD8 46002124 */ cvt.w.s $f4, $f4 -/* 00BDC 808BAADC 4443F800 */ cfc1 $v1, $31 -/* 00BE0 808BAAE0 00000000 */ nop -/* 00BE4 808BAAE4 30630078 */ andi $v1, $v1, 0x0078 ## $v1 = 00000000 -/* 00BE8 808BAAE8 14600005 */ bne $v1, $zero, .L808BAB00 -/* 00BEC 808BAAEC 00000000 */ nop -/* 00BF0 808BAAF0 44032000 */ mfc1 $v1, $f4 -/* 00BF4 808BAAF4 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00BF8 808BAAF8 10000007 */ beq $zero, $zero, .L808BAB18 -/* 00BFC 808BAAFC 00611825 */ or $v1, $v1, $at ## $v1 = 80000000 -.L808BAB00: -/* 00C00 808BAB00 10000005 */ beq $zero, $zero, .L808BAB18 -/* 00C04 808BAB04 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF -/* 00C08 808BAB08 44032000 */ mfc1 $v1, $f4 -.L808BAB0C: -/* 00C0C 808BAB0C 00000000 */ nop -/* 00C10 808BAB10 0460FFFB */ bltz $v1, .L808BAB00 -/* 00C14 808BAB14 00000000 */ nop -.L808BAB18: -/* 00C18 808BAB18 44CAF800 */ ctc1 $t2, $31 -/* 00C1C 808BAB1C 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001 -/* 00C20 808BAB20 306300FF */ andi $v1, $v1, 0x00FF ## $v1 = 000000FF -/* 00C24 808BAB24 46001182 */ mul.s $f6, $f2, $f0 -/* 00C28 808BAB28 00035E00 */ sll $t3, $v1, 24 -/* 00C2C 808BAB2C 00037C00 */ sll $t7, $v1, 16 -/* 00C30 808BAB30 016F7025 */ or $t6, $t3, $t7 ## $t6 = FFFFFFFF -/* 00C34 808BAB34 00036200 */ sll $t4, $v1, 8 -/* 00C38 808BAB38 01CCC825 */ or $t9, $t6, $t4 ## $t9 = FFFFFFFF -/* 00C3C 808BAB3C 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00C40 808BAB40 444DF800 */ cfc1 $t5, $31 -/* 00C44 808BAB44 44D8F800 */ ctc1 $t8, $31 -/* 00C48 808BAB48 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000 -/* 00C4C 808BAB4C 46003224 */ cvt.w.s $f8, $f6 -/* 00C50 808BAB50 4458F800 */ cfc1 $t8, $31 -/* 00C54 808BAB54 00000000 */ nop -/* 00C58 808BAB58 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000 -/* 00C5C 808BAB5C 53000013 */ beql $t8, $zero, .L808BABAC -/* 00C60 808BAB60 44184000 */ mfc1 $t8, $f8 -/* 00C64 808BAB64 44814000 */ mtc1 $at, $f8 ## $f8 = 2147483648.00 -/* 00C68 808BAB68 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001 -/* 00C6C 808BAB6C 46083201 */ sub.s $f8, $f6, $f8 -/* 00C70 808BAB70 44D8F800 */ ctc1 $t8, $31 -/* 00C74 808BAB74 00000000 */ nop -/* 00C78 808BAB78 46004224 */ cvt.w.s $f8, $f8 -/* 00C7C 808BAB7C 4458F800 */ cfc1 $t8, $31 -/* 00C80 808BAB80 00000000 */ nop -/* 00C84 808BAB84 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000 -/* 00C88 808BAB88 17000005 */ bne $t8, $zero, .L808BABA0 -/* 00C8C 808BAB8C 00000000 */ nop -/* 00C90 808BAB90 44184000 */ mfc1 $t8, $f8 -/* 00C94 808BAB94 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00C98 808BAB98 10000007 */ beq $zero, $zero, .L808BABB8 -/* 00C9C 808BAB9C 0301C025 */ or $t8, $t8, $at ## $t8 = 80000000 -.L808BABA0: -/* 00CA0 808BABA0 10000005 */ beq $zero, $zero, .L808BABB8 -/* 00CA4 808BABA4 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF -/* 00CA8 808BABA8 44184000 */ mfc1 $t8, $f8 -.L808BABAC: -/* 00CAC 808BABAC 00000000 */ nop -/* 00CB0 808BABB0 0700FFFB */ bltz $t8, .L808BABA0 -/* 00CB4 808BABB4 00000000 */ nop -.L808BABB8: -/* 00CB8 808BABB8 330B00FF */ andi $t3, $t8, 0x00FF ## $t3 = 000000FF -/* 00CBC 808BABBC 032B7825 */ or $t7, $t9, $t3 ## $t7 = FFFFFFFF -/* 00CC0 808BABC0 AC8F0004 */ sw $t7, 0x0004($a0) ## 00000004 -/* 00CC4 808BABC4 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00CC8 808BABC8 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003 -/* 00CCC 808BABCC 44CDF800 */ ctc1 $t5, $31 -/* 00CD0 808BABD0 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008 -/* 00CD4 808BABD4 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0 -/* 00CD8 808BABD8 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000 -/* 00CDC 808BABDC 8FAD00AC */ lw $t5, 0x00AC($sp) -/* 00CE0 808BABE0 24A5AD28 */ addiu $a1, $a1, %lo(D_808BAD28) ## $a1 = 808BAD28 -/* 00CE4 808BABE4 240601B5 */ addiu $a2, $zero, 0x01B5 ## $a2 = 000001B5 -/* 00CE8 808BABE8 8DA40000 */ lw $a0, 0x0000($t5) ## FB000000 -/* 00CEC 808BABEC 0C0346A2 */ jal Matrix_NewMtx -/* 00CF0 808BABF0 AFA20050 */ sw $v0, 0x0050($sp) -/* 00CF4 808BABF4 8FA30050 */ lw $v1, 0x0050($sp) -/* 00CF8 808BABF8 3C190600 */ lui $t9, %hi(D_06000A10) ## $t9 = 06000000 -/* 00CFC 808BABFC 27390A10 */ addiu $t9, $t9, %lo(D_06000A10) ## $t9 = 06000A10 -/* 00D00 808BAC00 AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 00D04 808BAC04 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0 -/* 00D08 808BAC08 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000 -/* 00D0C 808BAC0C 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008 -/* 00D10 808BAC10 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0 -/* 00D14 808BAC14 AC590004 */ sw $t9, 0x0004($v0) ## 00000004 -/* 00D18 808BAC18 0C034221 */ jal Matrix_Pop -/* 00D1C 808BAC1C AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000 -/* 00D20 808BAC20 8FAB00AC */ lw $t3, 0x00AC($sp) -/* 00D24 808BAC24 3C06808C */ lui $a2, %hi(D_808BAD40) ## $a2 = 808C0000 -/* 00D28 808BAC28 24C6AD40 */ addiu $a2, $a2, %lo(D_808BAD40) ## $a2 = 808BAD40 -/* 00D2C 808BAC2C 27A4008C */ addiu $a0, $sp, 0x008C ## $a0 = FFFFFFE4 -/* 00D30 808BAC30 240701BB */ addiu $a3, $zero, 0x01BB ## $a3 = 000001BB -/* 00D34 808BAC34 0C031AD5 */ jal Graph_CloseDisps -/* 00D38 808BAC38 8D650000 */ lw $a1, 0x0000($t3) ## 00000000 -/* 00D3C 808BAC3C 8FBF003C */ lw $ra, 0x003C($sp) -/* 00D40 808BAC40 8FB00038 */ lw $s0, 0x0038($sp) -/* 00D44 808BAC44 27BD00A8 */ addiu $sp, $sp, 0x00A8 ## $sp = 00000000 -/* 00D48 808BAC48 03E00008 */ jr $ra -/* 00D4C 808BAC4C 00000000 */ nop diff --git a/data/overlays/actors/z_bg_toki_hikari.data.s b/data/overlays/actors/z_bg_toki_hikari.data.s deleted file mode 100644 index 496d66c784..0000000000 --- a/data/overlays/actors/z_bg_toki_hikari.data.s +++ /dev/null @@ -1,20 +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_Toki_Hikari_InitVars - .word 0x006A0100, 0x00000020, 0x005E0000, 0x00000154 -.word BgTokiHikari_Init -.word BgTokiHikari_Destroy -.word BgTokiHikari_Update -.word BgTokiHikari_Draw -glabel D_808BAC70 - .word 0x485003E8, 0x00000000, 0x00000000, 0x00000000 - diff --git a/data/overlays/actors/z_bg_toki_hikari.reloc.s b/data/overlays/actors/z_bg_toki_hikari.reloc.s deleted file mode 100644 index 3cb0b44708..0000000000 --- a/data/overlays/actors/z_bg_toki_hikari.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_808BAD70 - .incbin "baserom/ovl_Bg_Toki_Hikari", 0xE70, 0x000000D0 diff --git a/spec b/spec index 184973425c..0c229933fe 100644 --- a/spec +++ b/spec @@ -1312,8 +1312,7 @@ endseg beginseg name "ovl_Bg_Toki_Hikari" include "build/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.o" - include "build/data/overlays/actors/z_bg_toki_hikari.data.o" - include "build/data/overlays/actors/z_bg_toki_hikari.reloc.o" + include "build/src/overlays/actors/ovl_Bg_Toki_Hikari/ovl_Bg_Toki_Hikari_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.c b/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.c index 18ee20f61a..1e99cbf931 100644 --- a/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.c +++ b/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.c @@ -1,3 +1,9 @@ +/* + * File: z_bg_toki_hikari.c + * Overlay: ovl_Toki_Hikari + * Description: Temple of Time Windows + */ + #include "z_bg_toki_hikari.h" #define FLAGS 0x00000020 @@ -9,14 +15,20 @@ void BgTokiHikari_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgTokiHikari_Update(Actor* thisx, GlobalContext* globalCtx); void BgTokiHikari_Draw(Actor* thisx, GlobalContext* globalCtx); -extern UNK_TYPE D_06000880; -extern UNK_TYPE D_060009C0; -extern UNK_TYPE D_06000A10; -extern UNK_TYPE D_06007E20; -extern UNK_TYPE D_06007EE0; -extern UNK_TYPE D_06008190; +void BgTokiHikari_DoNothing(BgTokiHikari* this, GlobalContext* globalCtx); +void func_808BA018(BgTokiHikari* this, GlobalContext* globalCtx); +void func_808BA204(BgTokiHikari* this, GlobalContext* globalCtx); +void func_808BA22C(BgTokiHikari* this, GlobalContext* globalCtx); +void func_808BA274(BgTokiHikari* this, GlobalContext* globalCtx); +void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx); + +extern Gfx D_06000880[]; +extern Gfx D_060009C0[]; +extern Gfx D_06000A10[]; +extern Gfx D_06007E20[]; +extern Gfx D_06007EE0[]; +extern Gfx D_06008190[]; -/* const ActorInit Bg_Toki_Hikari_InitVars = { ACTOR_BG_TOKI_HIKARI, ACTORCAT_BG, @@ -28,23 +40,152 @@ const ActorInit Bg_Toki_Hikari_InitVars = { (ActorFunc)BgTokiHikari_Update, (ActorFunc)BgTokiHikari_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Init.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Destroy.s") +static InitChainEntry sInitChain[] = { + ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808B9F98.s") +void BgTokiHikari_Init(Actor* thisx, GlobalContext* globalCtx) { + BgTokiHikari* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Update.s") + switch (this->actor.params) { + case 0: + Actor_ProcessInitChain(&this->actor, sInitChain); + this->actionFunc = BgTokiHikari_DoNothing; + break; + case 1: + if (!(gSaveContext.eventChkInf[4] & 0x800)) { + this->actionFunc = func_808BA204; + this->unk_14C = 0.0f; + } else { + Actor_Kill(&this->actor); + } + break; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/BgTokiHikari_Draw.s") +void BgTokiHikari_Destroy(Actor* thisx, GlobalContext* globalCtx) { +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA018.s") +void BgTokiHikari_DoNothing(BgTokiHikari* this, GlobalContext* globalCtx) { +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA204.s") +void BgTokiHikari_Update(Actor* thisx, GlobalContext* globalCtx) { + BgTokiHikari* this = THIS; + this->actionFunc(this, globalCtx); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA22C.s") +void BgTokiHikari_Draw(Actor* thisx, GlobalContext* globalCtx) { + BgTokiHikari* this = THIS; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA274.s") + switch (this->actor.params) { + case 0: + func_808BA018(this, globalCtx); + break; + case 1: + func_808BA2CC(this, globalCtx); + break; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Toki_Hikari/func_808BA2CC.s") +void func_808BA018(BgTokiHikari* this, GlobalContext* globalCtx) { + s32 pad; + + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 246); + func_80093D18(globalCtx->state.gfxCtx); + gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 252), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + if (LINK_IS_ADULT) { + gSPDisplayList(POLY_OPA_DISP++, D_06008190); + } else { + gSPDisplayList(POLY_OPA_DISP++, D_06007E20); + func_80093D84(globalCtx->state.gfxCtx); + gSPSegment(POLY_XLU_DISP++, 8, + Gfx_TexScroll(globalCtx->state.gfxCtx, 0, globalCtx->gameplayFrames % 128, 64, 32)); + + gSPSegment(POLY_XLU_DISP++, 9, + Gfx_TexScroll(globalCtx->state.gfxCtx, 0, globalCtx->gameplayFrames % 128, 64, 32)); + + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 278), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + gSPDisplayList(POLY_XLU_DISP++, D_06007EE0); + } + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 284); +} + +void func_808BA204(BgTokiHikari* this, GlobalContext* globalCtx) { + if (globalCtx->unk_11D30[1] != 0) { + this->actionFunc = func_808BA22C; + } +} + +void func_808BA22C(BgTokiHikari* this, GlobalContext* globalCtx) { + if (this->unk_14C < 1.0f) { + this->unk_14C += 0.05f; + } else { + this->unk_14C = 1.0f; + this->actionFunc = func_808BA274; + } +} + +void func_808BA274(BgTokiHikari* this, GlobalContext* globalCtx) { + if (this->unk_14C > 0.2f) { + this->unk_14C -= 0.025f; + } else { + this->unk_14C = 0.0f; + Actor_Kill(&this->actor); + } +} + +void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx) { + s32 pad[2]; + + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 350); + Matrix_Translate(0.0f, 276.0f, 1122.0f, MTXMODE_NEW); + Matrix_Scale(0.32f, 0.32f, this->unk_14C * 7.0f, MTXMODE_APPLY); + Matrix_RotateZ(M_PI, MTXMODE_APPLY); + func_80093D18(globalCtx->state.gfxCtx); + Matrix_Push(); + gDPPipeSync(POLY_XLU_DISP++); + gDPSetPrimColor(POLY_XLU_DISP++, 0, 0x80, this->unk_14C * 255.0f, (u8)(155.0f * this->unk_14C) + 100, + this->unk_14C * 255.0f, this->unk_14C * 255.0f); + + gDPSetEnvColor(POLY_XLU_DISP++, (u8)(this->unk_14C * 155.0f) + 100, (u8)(255.0f * this->unk_14C), 0, 128); + + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 382), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + gSPSegment(POLY_XLU_DISP++, 0x08, + Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -2 * (globalCtx->gameplayFrames & 0x7F), 0, 0x20, 0x40, 1, + (globalCtx->gameplayFrames & 0x7F) * 4, 0, 0x20, 0x40)); + + gSPDisplayList(POLY_XLU_DISP++, D_06000880); + Matrix_Pop(); + Matrix_Push(); + gDPPipeSync(POLY_XLU_DISP++); + gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, (u8)(this->unk_14C * 200.0f)); + + gDPSetEnvColor(POLY_XLU_DISP++, (u8)(this->unk_14C * 255.0f), (u8)(this->unk_14C * 255.0f), + (u8)(this->unk_14C * 255.0f), (u8)(200.0f * this->unk_14C)); + + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 415), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + gSPDisplayList(POLY_XLU_DISP++, D_060009C0); + Matrix_Pop(); + Matrix_Push(); + gDPPipeSync(POLY_XLU_DISP++); + gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, (u8)(this->unk_14C * 200.0f)); + + gDPSetEnvColor(POLY_XLU_DISP++, (u8)(this->unk_14C * 255.0f), (u8)(this->unk_14C * 255.0f), + (u8)(this->unk_14C * 255.0f), (u8)(200.0f * this->unk_14C)); + + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 437), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + gSPDisplayList(POLY_XLU_DISP++, D_06000A10); + Matrix_Pop(); + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 443); +} diff --git a/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.h b/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.h index e1df819d68..5dcbe1ca5e 100644 --- a/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.h +++ b/src/overlays/actors/ovl_Bg_Toki_Hikari/z_bg_toki_hikari.h @@ -6,9 +6,12 @@ struct BgTokiHikari; +typedef void (*BgTokiHikariActionFunc)(struct BgTokiHikari*, GlobalContext*); + typedef struct BgTokiHikari { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x8]; + /* 0x014C */ f32 unk_14C; + /* 0x0150 */ BgTokiHikariActionFunc actionFunc; } BgTokiHikari; // size = 0x0154 extern const ActorInit Bg_Toki_Hikari_InitVars;