From b8b334f90a305229f1462357aa7fe7c1cbc3f6dd Mon Sep 17 00:00:00 2001 From: krimtonz <33664508+krimtonz@users.noreply.github.com> Date: Tue, 19 May 2020 15:27:25 -0500 Subject: [PATCH] Decompiles fcurve_skelanime, code_8006C510, and actor MagicWind (#135) * decompile z_fcurve_skelanime and code_8006C510 * format * Decomp Magic_Wind * PR Updates * add space between ActorFunc and MagicWindFunc * missing pr updates --- .../{func_8006CBAC.s => SkelCurve_DrawLimb.s} | 6 +- .../z_fcurve_data_skelanime/func_8006C750.s | 12 - .../z_fcurve_data_skelanime/func_8006C778.s | 74 ---- .../z_fcurve_data_skelanime/func_8006C85C.s | 23 -- .../z_fcurve_data_skelanime/func_8006C894.s | 14 - .../z_fcurve_data_skelanime/func_8006C8C4.s | 204 ------------ .../z_fcurve_data_skelanime/func_8006CF6C.s | 20 -- .../ovl_Demo_Effect/DemoEffect_Destroy.s | 14 +- .../actors/ovl_Demo_Effect/DemoEffect_Init.s | 268 +++++++-------- .../actors/ovl_Demo_Effect/func_80971DFC.s | 110 +++--- .../actors/ovl_Demo_Effect/func_80972008.s | 40 +-- .../actors/ovl_Demo_Effect/func_80972344.s | 32 +- .../actors/ovl_Demo_Effect/func_80976404.s | 52 +-- .../ovl_Demo_Tre_Lgt/DemoTreLgt_Destroy.s | 8 +- .../actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Draw.s | 38 +-- .../actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Init.s | 22 +- .../actors/ovl_Demo_Tre_Lgt/func_809937B4.s | 42 +-- .../actors/ovl_Demo_Tre_Lgt/func_80993848.s | 144 ++++---- .../actors/ovl_Magic_Wind/MagicWind_Destroy.s | 18 +- .../actors/ovl_Magic_Wind/MagicWind_Draw.s | 36 +- .../actors/ovl_Magic_Wind/MagicWind_Init.s | 70 ++-- .../actors/ovl_Magic_Wind/func_80B8B3C8.s | 36 +- .../actors/ovl_Magic_Wind/func_80B8B468.s | 20 +- .../actors/ovl_Magic_Wind/func_80B8B564.s | 20 +- include/functions.h | 13 +- include/z64animation.h | 49 +++ spec | 3 +- src/code/code_8006C510.c | 39 ++- src/code/z_fcurve_data_skelanime.c | 186 ++++++++++- .../actors/ovl_Magic_Wind/z_magic_wind.c | 239 ++++++++++++- .../actors/ovl_Magic_Wind/z_magic_wind.h | 6 +- .../actors/ovl_Magic_Wind/z_magic_wind_gfx.c | 315 ++++++++++++++++++ 32 files changed, 1309 insertions(+), 864 deletions(-) rename asm/non_matchings/code/z_fcurve_data_skelanime/{func_8006CBAC.s => SkelCurve_DrawLimb.s} (98%) delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C750.s delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C778.s delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C85C.s delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C894.s delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C8C4.s delete mode 100644 asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CF6C.s create mode 100644 src/overlays/actors/ovl_Magic_Wind/z_magic_wind_gfx.c diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CBAC.s b/asm/non_matchings/code/z_fcurve_data_skelanime/SkelCurve_DrawLimb.s similarity index 98% rename from asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CBAC.s rename to asm/non_matchings/code/z_fcurve_data_skelanime/SkelCurve_DrawLimb.s index b81cf95b9e..1dd70252f2 100644 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CBAC.s +++ b/asm/non_matchings/code/z_fcurve_data_skelanime/SkelCurve_DrawLimb.s @@ -25,7 +25,7 @@ glabel D_8013BAFC .balign 4 .text -glabel func_8006CBAC +glabel SkelCurve_DrawLimb /* AE3D4C 8006CBAC 27BDFF68 */ addiu $sp, $sp, -0x98 /* AE3D50 8006CBB0 AFBF002C */ sw $ra, 0x2c($sp) /* AE3D54 8006CBB4 AFB00028 */ sw $s0, 0x28($sp) @@ -243,7 +243,7 @@ glabel func_8006CBAC /* AE4088 8006CEE8 8FAD00B0 */ lw $t5, 0xb0($sp) /* AE408C 8006CEEC AFB00010 */ sw $s0, 0x10($sp) /* AE4090 8006CEF0 AFA90014 */ sw $t1, 0x14($sp) -/* AE4094 8006CEF4 0C01B2EB */ jal func_8006CBAC +/* AE4094 8006CEF4 0C01B2EB */ jal SkelCurve_DrawLimb /* AE4098 8006CEF8 AFAD0018 */ sw $t5, 0x18($sp) .L8006CEFC: /* AE409C 8006CEFC 0C034221 */ jal Matrix_Pull @@ -260,7 +260,7 @@ glabel func_8006CBAC /* AE40C8 8006CF28 8FAF00B0 */ lw $t7, 0xb0($sp) /* AE40CC 8006CF2C AFB00010 */ sw $s0, 0x10($sp) /* AE40D0 8006CF30 AFB80014 */ sw $t8, 0x14($sp) -/* AE40D4 8006CF34 0C01B2EB */ jal func_8006CBAC +/* AE40D4 8006CF34 0C01B2EB */ jal SkelCurve_DrawLimb /* AE40D8 8006CF38 AFAF0018 */ sw $t7, 0x18($sp) /* AE40DC 8006CF3C 8FB90098 */ lw $t9, 0x98($sp) .L8006CF40: diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C750.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C750.s deleted file mode 100644 index cd8551a255..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C750.s +++ /dev/null @@ -1,12 +0,0 @@ -glabel func_8006C750 -/* AE38F0 8006C750 44800000 */ mtc1 $zero, $f0 -/* AE38F4 8006C754 A0800000 */ sb $zero, ($a0) -/* AE38F8 8006C758 AC800004 */ sw $zero, 4($a0) -/* AE38FC 8006C75C AC800008 */ sw $zero, 8($a0) -/* AE3900 8006C760 AC80001C */ sw $zero, 0x1c($a0) -/* AE3904 8006C764 E4800018 */ swc1 $f0, 0x18($a0) -/* AE3908 8006C768 E4800014 */ swc1 $f0, 0x14($a0) -/* AE390C 8006C76C E4800010 */ swc1 $f0, 0x10($a0) -/* AE3910 8006C770 03E00008 */ jr $ra -/* AE3914 8006C774 E480000C */ swc1 $f0, 0xc($a0) - diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C778.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C778.s deleted file mode 100644 index a4ab454ecc..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C778.s +++ /dev/null @@ -1,74 +0,0 @@ -.rdata -glabel D_8013B9E0 - .asciz "../z_fcurve_data_skelanime.c" - .balign 4 - -glabel D_8013BA00 - .asciz "this->now_joint != NULL" - .balign 4 - -glabel D_8013BA18 - .asciz "../z_fcurve_data_skelanime.c" - .balign 4 - -.text -glabel func_8006C778 -/* AE3918 8006C778 00067100 */ sll $t6, $a2, 4 -/* AE391C 8006C77C 3C088016 */ lui $t0, %hi(gSegments) # $t0, 0x8016 -/* AE3920 8006C780 000E7F02 */ srl $t7, $t6, 0x1c -/* AE3924 8006C784 25086FA8 */ addiu $t0, %lo(gSegments) # addiu $t0, $t0, 0x6fa8 -/* AE3928 8006C788 000FC080 */ sll $t8, $t7, 2 -/* AE392C 8006C78C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* AE3930 8006C790 0118C821 */ addu $t9, $t0, $t8 -/* AE3934 8006C794 8F2B0000 */ lw $t3, ($t9) -/* AE3938 8006C798 3C0900FF */ lui $t1, (0x00FFFFFF >> 16) # lui $t1, 0xff -/* AE393C 8006C79C 3529FFFF */ ori $t1, (0x00FFFFFF & 0xFFFF) # ori $t1, $t1, 0xffff -/* AE3940 8006C7A0 00C96024 */ and $t4, $a2, $t1 -/* AE3944 8006C7A4 3C0A8000 */ lui $t2, 0x8000 -/* AE3948 8006C7A8 016C6821 */ addu $t5, $t3, $t4 -/* AE394C 8006C7AC AFBF001C */ sw $ra, 0x1c($sp) -/* AE3950 8006C7B0 AFB00018 */ sw $s0, 0x18($sp) -/* AE3954 8006C7B4 AFA40020 */ sw $a0, 0x20($sp) -/* AE3958 8006C7B8 AFA60028 */ sw $a2, 0x28($sp) -/* AE395C 8006C7BC AFA7002C */ sw $a3, 0x2c($sp) -/* AE3960 8006C7C0 01AA1021 */ addu $v0, $t5, $t2 -/* AE3964 8006C7C4 904E0004 */ lbu $t6, 4($v0) -/* AE3968 8006C7C8 00A08025 */ move $s0, $a1 -/* AE396C 8006C7CC 2406007D */ li $a2, 125 -/* AE3970 8006C7D0 A0AE0000 */ sb $t6, ($a1) -/* AE3974 8006C7D4 8C430000 */ lw $v1, ($v0) -/* AE3978 8006C7D8 90A40000 */ lbu $a0, ($a1) -/* AE397C 8006C7DC 00037900 */ sll $t7, $v1, 4 -/* AE3980 8006C7E0 000FC702 */ srl $t8, $t7, 0x1c -/* AE3984 8006C7E4 0018C880 */ sll $t9, $t8, 2 -/* AE3988 8006C7E8 01195821 */ addu $t3, $t0, $t9 -/* AE398C 8006C7EC 8D6C0000 */ lw $t4, ($t3) -/* AE3990 8006C7F0 00696824 */ and $t5, $v1, $t1 -/* AE3994 8006C7F4 00800821 */ addu $at, $a0, $zero -/* AE3998 8006C7F8 018D7021 */ addu $t6, $t4, $t5 -/* AE399C 8006C7FC 01CA7821 */ addu $t7, $t6, $t2 -/* AE39A0 8006C800 ACAF0004 */ sw $t7, 4($a1) -/* AE39A4 8006C804 000420C0 */ sll $a0, $a0, 3 -/* AE39A8 8006C808 00812021 */ addu $a0, $a0, $at -/* AE39AC 8006C80C 3C058014 */ lui $a1, %hi(D_8013B9E0) # $a1, 0x8014 -/* AE39B0 8006C810 24A5B9E0 */ addiu $a1, %lo(D_8013B9E0) # addiu $a1, $a1, -0x4620 -/* AE39B4 8006C814 0C01EBB8 */ jal ZeldaArena_MallocDebug -/* AE39B8 8006C818 00042040 */ sll $a0, $a0, 1 -/* AE39BC 8006C81C 14400007 */ bnez $v0, .L8006C83C -/* AE39C0 8006C820 AE02001C */ sw $v0, 0x1c($s0) -/* AE39C4 8006C824 3C048014 */ lui $a0, %hi(D_8013BA00) # $a0, 0x8014 -/* AE39C8 8006C828 3C058014 */ lui $a1, %hi(D_8013BA18) -/* AE39CC 8006C82C 24A5BA18 */ addiu $a1, %lo(D_8013BA18) # addiu $a1, $a1, -0x45e8 -/* AE39D0 8006C830 2484BA00 */ addiu $a0, %lo(D_8013BA00) # addiu $a0, $a0, -0x4600 -/* AE39D4 8006C834 0C0007FC */ jal __assert -/* AE39D8 8006C838 2406007F */ li $a2, 127 -.L8006C83C: -/* AE39DC 8006C83C 44802000 */ mtc1 $zero, $f4 -/* AE39E0 8006C840 24020001 */ li $v0, 1 -/* AE39E4 8006C844 E6040018 */ swc1 $f4, 0x18($s0) -/* AE39E8 8006C848 8FBF001C */ lw $ra, 0x1c($sp) -/* AE39EC 8006C84C 8FB00018 */ lw $s0, 0x18($sp) -/* AE39F0 8006C850 27BD0020 */ addiu $sp, $sp, 0x20 -/* AE39F4 8006C854 03E00008 */ jr $ra -/* AE39F8 8006C858 00000000 */ nop - diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C85C.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C85C.s deleted file mode 100644 index cecb0240a5..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C85C.s +++ /dev/null @@ -1,23 +0,0 @@ -.rdata -glabel D_8013BA38 - .asciz "../z_fcurve_data_skelanime.c" - .balign 4 - -.text -glabel func_8006C85C -/* AE39FC 8006C85C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* AE3A00 8006C860 AFBF0014 */ sw $ra, 0x14($sp) -/* AE3A04 8006C864 AFA40018 */ sw $a0, 0x18($sp) -/* AE3A08 8006C868 8CA4001C */ lw $a0, 0x1c($a1) -/* AE3A0C 8006C86C 3C058014 */ lui $a1, %hi(D_8013BA38) # $a1, 0x8014 -/* AE3A10 8006C870 24A5BA38 */ addiu $a1, %lo(D_8013BA38) # addiu $a1, $a1, -0x45c8 -/* AE3A14 8006C874 50800004 */ beql $a0, $zero, .L8006C888 -/* AE3A18 8006C878 8FBF0014 */ lw $ra, 0x14($sp) -/* AE3A1C 8006C87C 0C01EC35 */ jal ZeldaArena_FreeDebug -/* AE3A20 8006C880 24060092 */ li $a2, 146 -/* AE3A24 8006C884 8FBF0014 */ lw $ra, 0x14($sp) -.L8006C888: -/* AE3A28 8006C888 27BD0018 */ addiu $sp, $sp, 0x18 -/* AE3A2C 8006C88C 03E00008 */ jr $ra -/* AE3A30 8006C890 00000000 */ nop - diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C894.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C894.s deleted file mode 100644 index 89e17f700d..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C894.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel func_8006C894 -/* AE3A34 8006C894 44866000 */ mtc1 $a2, $f12 -/* AE3A38 8006C898 C4840014 */ lwc1 $f4, 0x14($a0) -/* AE3A3C 8006C89C 44877000 */ mtc1 $a3, $f14 -/* AE3A40 8006C8A0 46046181 */ sub.s $f6, $f12, $f4 -/* AE3A44 8006C8A4 E48E0010 */ swc1 $f14, 0x10($a0) -/* AE3A48 8006C8A8 E486000C */ swc1 $f6, 0xc($a0) -/* AE3A4C 8006C8AC C7A80010 */ lwc1 $f8, 0x10($sp) -/* AE3A50 8006C8B0 E4880018 */ swc1 $f8, 0x18($a0) -/* AE3A54 8006C8B4 C7AA0014 */ lwc1 $f10, 0x14($sp) -/* AE3A58 8006C8B8 AC850008 */ sw $a1, 8($a0) -/* AE3A5C 8006C8BC 03E00008 */ jr $ra -/* AE3A60 8006C8C0 E48A0014 */ swc1 $f10, 0x14($a0) - diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C8C4.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C8C4.s deleted file mode 100644 index 0b49fe58fa..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C8C4.s +++ /dev/null @@ -1,204 +0,0 @@ -.late_rodata -glabel D_8013BB1C - .float 182.04445 - -.text -glabel func_8006C8C4 -/* AE3A64 8006C8C4 27BDFF90 */ addiu $sp, $sp, -0x70 -/* AE3A68 8006C8C8 AFBF0054 */ sw $ra, 0x54($sp) -/* AE3A6C 8006C8CC AFBE0050 */ sw $fp, 0x50($sp) -/* AE3A70 8006C8D0 AFB7004C */ sw $s7, 0x4c($sp) -/* AE3A74 8006C8D4 AFB60048 */ sw $s6, 0x48($sp) -/* AE3A78 8006C8D8 AFB50044 */ sw $s5, 0x44($sp) -/* AE3A7C 8006C8DC AFB40040 */ sw $s4, 0x40($sp) -/* AE3A80 8006C8E0 AFB3003C */ sw $s3, 0x3c($sp) -/* AE3A84 8006C8E4 AFB20038 */ sw $s2, 0x38($sp) -/* AE3A88 8006C8E8 AFB10034 */ sw $s1, 0x34($sp) -/* AE3A8C 8006C8EC AFB00030 */ sw $s0, 0x30($sp) -/* AE3A90 8006C8F0 F7B80028 */ sdc1 $f24, 0x28($sp) -/* AE3A94 8006C8F4 F7B60020 */ sdc1 $f22, 0x20($sp) -/* AE3A98 8006C8F8 F7B40018 */ sdc1 $f20, 0x18($sp) -/* AE3A9C 8006C8FC AFA40070 */ sw $a0, 0x70($sp) -/* AE3AA0 8006C900 AFA50074 */ sw $a1, 0x74($sp) -/* AE3AA4 8006C904 AFA00058 */ sw $zero, 0x58($sp) -/* AE3AA8 8006C908 8CA30008 */ lw $v1, 8($a1) -/* AE3AAC 8006C90C 3C088016 */ lui $t0, %hi(gSegments) # $t0, 0x8016 -/* AE3AB0 8006C910 25086FA8 */ addiu $t0, %lo(gSegments) # addiu $t0, $t0, 0x6fa8 -/* AE3AB4 8006C914 00037900 */ sll $t7, $v1, 4 -/* AE3AB8 8006C918 000FC702 */ srl $t8, $t7, 0x1c -/* AE3ABC 8006C91C 0018C880 */ sll $t9, $t8, 2 -/* AE3AC0 8006C920 01195821 */ addu $t3, $t0, $t9 -/* AE3AC4 8006C924 8D6C0000 */ lw $t4, ($t3) -/* AE3AC8 8006C928 3C0900FF */ lui $t1, (0x00FFFFFF >> 16) # lui $t1, 0xff -/* AE3ACC 8006C92C 3529FFFF */ ori $t1, (0x00FFFFFF & 0xFFFF) # ori $t1, $t1, 0xffff -/* AE3AD0 8006C930 00696824 */ and $t5, $v1, $t1 -/* AE3AD4 8006C934 3C0A8000 */ li $t2, 0x80000000 # 0.000000 -/* AE3AD8 8006C938 018D7821 */ addu $t7, $t4, $t5 -/* AE3ADC 8006C93C 01EA1021 */ addu $v0, $t7, $t2 -/* AE3AE0 8006C940 8C440000 */ lw $a0, ($v0) -/* AE3AE4 8006C944 8C460004 */ lw $a2, 4($v0) -/* AE3AE8 8006C948 8C470008 */ lw $a3, 8($v0) -/* AE3AEC 8006C94C 0004C100 */ sll $t8, $a0, 4 -/* AE3AF0 8006C950 0018CF02 */ srl $t9, $t8, 0x1c -/* AE3AF4 8006C954 00195880 */ sll $t3, $t9, 2 -/* AE3AF8 8006C958 010B6021 */ addu $t4, $t0, $t3 -/* AE3AFC 8006C95C 8D8D0000 */ lw $t5, ($t4) -/* AE3B00 8006C960 0006C900 */ sll $t9, $a2, 4 -/* AE3B04 8006C964 00195F02 */ srl $t3, $t9, 0x1c -/* AE3B08 8006C968 00897824 */ and $t7, $a0, $t1 -/* AE3B0C 8006C96C 000B6080 */ sll $t4, $t3, 2 -/* AE3B10 8006C970 01AFC021 */ addu $t8, $t5, $t7 -/* AE3B14 8006C974 010C6821 */ addu $t5, $t0, $t4 -/* AE3B18 8006C978 00075900 */ sll $t3, $a3, 4 -/* AE3B1C 8006C97C 8DAF0000 */ lw $t7, ($t5) -/* AE3B20 8006C980 000B6702 */ srl $t4, $t3, 0x1c -/* AE3B24 8006C984 000C6880 */ sll $t5, $t4, 2 -/* AE3B28 8006C988 030A9821 */ addu $s3, $t8, $t2 -/* AE3B2C 8006C98C 3C0C8016 */ lui $t4, %hi(gGameInfo) -/* AE3B30 8006C990 8D8CFA90 */ lw $t4, %lo(gGameInfo)($t4) -/* AE3B34 8006C994 00C9C024 */ and $t8, $a2, $t1 -/* AE3B38 8006C998 01F8C821 */ addu $t9, $t7, $t8 -/* AE3B3C 8006C99C 010D7821 */ addu $t7, $t0, $t5 -/* AE3B40 8006C9A0 858D0110 */ lh $t5, 0x110($t4) -/* AE3B44 8006C9A4 C4A20014 */ lwc1 $f2, 0x14($a1) -/* AE3B48 8006C9A8 3C013F00 */ li $at, 0x3F000000 # 0.000000 -/* AE3B4C 8006C9AC 448D2000 */ mtc1 $t5, $f4 -/* AE3B50 8006C9B0 44815000 */ mtc1 $at, $f10 -/* AE3B54 8006C9B4 44806000 */ mtc1 $zero, $f12 -/* AE3B58 8006C9B8 468021A0 */ cvt.s.w $f6, $f4 -/* AE3B5C 8006C9BC C4B20018 */ lwc1 $f18, 0x18($a1) -/* AE3B60 8006C9C0 8DF80000 */ lw $t8, ($t7) -/* AE3B64 8006C9C4 032AA021 */ addu $s4, $t9, $t2 -/* AE3B68 8006C9C8 00E9C824 */ and $t9, $a3, $t1 -/* AE3B6C 8006C9CC 4602603E */ c.le.s $f12, $f2 -/* AE3B70 8006C9D0 46061202 */ mul.s $f8, $f2, $f6 -/* AE3B74 8006C9D4 03195821 */ addu $t3, $t8, $t9 -/* AE3B78 8006C9D8 016AA821 */ addu $s5, $t3, $t2 -/* AE3B7C 8006C9DC 8CB0001C */ lw $s0, 0x1c($a1) -/* AE3B80 8006C9E0 3C0142C8 */ li $at, 0x42C80000 # 0.000000 -/* AE3B84 8006C9E4 2417000C */ li $s7, 12 -/* AE3B88 8006C9E8 241E0001 */ li $fp, 1 -/* AE3B8C 8006C9EC 460A4402 */ mul.s $f16, $f8, $f10 -/* AE3B90 8006C9F0 46109100 */ add.s $f4, $f18, $f16 -/* AE3B94 8006C9F4 45000008 */ bc1f .L8006CA18 -/* AE3B98 8006C9F8 E4A40018 */ swc1 $f4, 0x18($a1) -/* AE3B9C 8006C9FC 8FAF0074 */ lw $t7, 0x74($sp) -/* AE3BA0 8006CA00 C5E00010 */ lwc1 $f0, 0x10($t7) -/* AE3BA4 8006CA04 C5E60018 */ lwc1 $f6, 0x18($t7) -/* AE3BA8 8006CA08 4606003C */ c.lt.s $f0, $f6 -/* AE3BAC 8006CA0C 00000000 */ nop -/* AE3BB0 8006CA10 4503000C */ bc1tl .L8006CA44 -/* AE3BB4 8006CA14 8FB90074 */ lw $t9, 0x74($sp) -.L8006CA18: -/* AE3BB8 8006CA18 460C103C */ c.lt.s $f2, $f12 -/* AE3BBC 8006CA1C 8FB80074 */ lw $t8, 0x74($sp) -/* AE3BC0 8006CA20 4502000C */ bc1fl .L8006CA54 -/* AE3BC4 8006CA24 8FAC0074 */ lw $t4, 0x74($sp) -/* AE3BC8 8006CA28 C7000010 */ lwc1 $f0, 0x10($t8) -/* AE3BCC 8006CA2C C7080018 */ lwc1 $f8, 0x18($t8) -/* AE3BD0 8006CA30 4600403C */ c.lt.s $f8, $f0 -/* AE3BD4 8006CA34 00000000 */ nop -/* AE3BD8 8006CA38 45020006 */ bc1fl .L8006CA54 -/* AE3BDC 8006CA3C 8FAC0074 */ lw $t4, 0x74($sp) -/* AE3BE0 8006CA40 8FB90074 */ lw $t9, 0x74($sp) -.L8006CA44: -/* AE3BE4 8006CA44 240B0001 */ li $t3, 1 -/* AE3BE8 8006CA48 E7200018 */ swc1 $f0, 0x18($t9) -/* AE3BEC 8006CA4C AFAB0058 */ sw $t3, 0x58($sp) -/* AE3BF0 8006CA50 8FAC0074 */ lw $t4, 0x74($sp) -.L8006CA54: -/* AE3BF4 8006CA54 AFA0005C */ sw $zero, 0x5c($sp) -/* AE3BF8 8006CA58 918D0000 */ lbu $t5, ($t4) -/* AE3BFC 8006CA5C 59A00044 */ blezl $t5, .L8006CB70 -/* AE3C00 8006CA60 8FBF0054 */ lw $ra, 0x54($sp) -/* AE3C04 8006CA64 4481C000 */ mtc1 $at, $f24 -/* AE3C08 8006CA68 3C018014 */ lui $at, %hi(D_8013BB1C) -/* AE3C0C 8006CA6C C436BB1C */ lwc1 $f22, %lo(D_8013BB1C)($at) -/* AE3C10 8006CA70 3C014480 */ li $at, 0x44800000 # 0.000000 -/* AE3C14 8006CA74 4481A000 */ mtc1 $at, $f20 -/* AE3C18 8006CA78 24160003 */ li $s6, 3 -/* AE3C1C 8006CA7C 00009025 */ move $s2, $zero -.L8006CA80: -/* AE3C20 8006CA80 00008825 */ move $s1, $zero -.L8006CA84: -/* AE3C24 8006CA84 92660000 */ lbu $a2, ($s3) -/* AE3C28 8006CA88 8FB90074 */ lw $t9, 0x74($sp) -/* AE3C2C 8006CA8C 02802825 */ move $a1, $s4 -/* AE3C30 8006CA90 14C0000E */ bnez $a2, .L8006CACC -/* AE3C34 8006CA94 00000000 */ nop -/* AE3C38 8006CA98 96AE0000 */ lhu $t6, ($s5) -/* AE3C3C 8006CA9C 3C014F80 */ li $at, 0x4F800000 # 0.000000 -/* AE3C40 8006CAA0 448E5000 */ mtc1 $t6, $f10 -/* AE3C44 8006CAA4 05C10004 */ bgez $t6, .L8006CAB8 -/* AE3C48 8006CAA8 46805020 */ cvt.s.w $f0, $f10 -/* AE3C4C 8006CAAC 44819000 */ mtc1 $at, $f18 -/* AE3C50 8006CAB0 00000000 */ nop -/* AE3C54 8006CAB4 46120000 */ add.s $f0, $f0, $f18 -.L8006CAB8: -/* AE3C58 8006CAB8 4600040D */ trunc.w.s $f16, $f0 -/* AE3C5C 8006CABC 26B50002 */ addiu $s5, $s5, 2 -/* AE3C60 8006CAC0 44188000 */ mfc1 $t8, $f16 -/* AE3C64 8006CAC4 1000001A */ b .L8006CB30 -/* AE3C68 8006CAC8 A6180000 */ sh $t8, ($s0) -.L8006CACC: -/* AE3C6C 8006CACC 0C01B16A */ jal func_8006C5A8 -/* AE3C70 8006CAD0 C72C0018 */ lwc1 $f12, 0x18($t9) -/* AE3C74 8006CAD4 926B0000 */ lbu $t3, ($s3) -/* AE3C78 8006CAD8 01770019 */ multu $t3, $s7 -/* AE3C7C 8006CADC 00006012 */ mflo $t4 -/* AE3C80 8006CAE0 028CA021 */ addu $s4, $s4, $t4 -/* AE3C84 8006CAE4 16400006 */ bnez $s2, .L8006CB00 -/* AE3C88 8006CAE8 00000000 */ nop -/* AE3C8C 8006CAEC 46140102 */ mul.s $f4, $f0, $f20 -/* AE3C90 8006CAF0 4600218D */ trunc.w.s $f6, $f4 -/* AE3C94 8006CAF4 440E3000 */ mfc1 $t6, $f6 -/* AE3C98 8006CAF8 1000000D */ b .L8006CB30 -/* AE3C9C 8006CAFC A60E0000 */ sh $t6, ($s0) -.L8006CB00: -/* AE3CA0 8006CB00 165E0006 */ bne $s2, $fp, .L8006CB1C -/* AE3CA4 8006CB04 00000000 */ nop -/* AE3CA8 8006CB08 46160202 */ mul.s $f8, $f0, $f22 -/* AE3CAC 8006CB0C 4600428D */ trunc.w.s $f10, $f8 -/* AE3CB0 8006CB10 44185000 */ mfc1 $t8, $f10 -/* AE3CB4 8006CB14 10000006 */ b .L8006CB30 -/* AE3CB8 8006CB18 A6180000 */ sh $t8, ($s0) -.L8006CB1C: -/* AE3CBC 8006CB1C 46180482 */ mul.s $f18, $f0, $f24 -/* AE3CC0 8006CB20 4600940D */ trunc.w.s $f16, $f18 -/* AE3CC4 8006CB24 440B8000 */ mfc1 $t3, $f16 -/* AE3CC8 8006CB28 00000000 */ nop -/* AE3CCC 8006CB2C A60B0000 */ sh $t3, ($s0) -.L8006CB30: -/* AE3CD0 8006CB30 26310001 */ addiu $s1, $s1, 1 -/* AE3CD4 8006CB34 26730001 */ addiu $s3, $s3, 1 -/* AE3CD8 8006CB38 1636FFD2 */ bne $s1, $s6, .L8006CA84 -/* AE3CDC 8006CB3C 26100002 */ addiu $s0, $s0, 2 -/* AE3CE0 8006CB40 26520001 */ addiu $s2, $s2, 1 -/* AE3CE4 8006CB44 5656FFCF */ bnel $s2, $s6, .L8006CA84 -/* AE3CE8 8006CB48 00008825 */ move $s1, $zero -/* AE3CEC 8006CB4C 8FAC005C */ lw $t4, 0x5c($sp) -/* AE3CF0 8006CB50 8FAE0074 */ lw $t6, 0x74($sp) -/* AE3CF4 8006CB54 258D0001 */ addiu $t5, $t4, 1 -/* AE3CF8 8006CB58 AFAD005C */ sw $t5, 0x5c($sp) -/* AE3CFC 8006CB5C 91CF0000 */ lbu $t7, ($t6) -/* AE3D00 8006CB60 01AF082A */ slt $at, $t5, $t7 -/* AE3D04 8006CB64 5420FFC6 */ bnezl $at, .L8006CA80 -/* AE3D08 8006CB68 00009025 */ move $s2, $zero -/* AE3D0C 8006CB6C 8FBF0054 */ lw $ra, 0x54($sp) -.L8006CB70: -/* AE3D10 8006CB70 8FA20058 */ lw $v0, 0x58($sp) -/* AE3D14 8006CB74 D7B40018 */ ldc1 $f20, 0x18($sp) -/* AE3D18 8006CB78 D7B60020 */ ldc1 $f22, 0x20($sp) -/* AE3D1C 8006CB7C D7B80028 */ ldc1 $f24, 0x28($sp) -/* AE3D20 8006CB80 8FB00030 */ lw $s0, 0x30($sp) -/* AE3D24 8006CB84 8FB10034 */ lw $s1, 0x34($sp) -/* AE3D28 8006CB88 8FB20038 */ lw $s2, 0x38($sp) -/* AE3D2C 8006CB8C 8FB3003C */ lw $s3, 0x3c($sp) -/* AE3D30 8006CB90 8FB40040 */ lw $s4, 0x40($sp) -/* AE3D34 8006CB94 8FB50044 */ lw $s5, 0x44($sp) -/* AE3D38 8006CB98 8FB60048 */ lw $s6, 0x48($sp) -/* AE3D3C 8006CB9C 8FB7004C */ lw $s7, 0x4c($sp) -/* AE3D40 8006CBA0 8FBE0050 */ lw $fp, 0x50($sp) -/* AE3D44 8006CBA4 03E00008 */ jr $ra -/* AE3D48 8006CBA8 27BD0070 */ addiu $sp, $sp, 0x70 - diff --git a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CF6C.s b/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CF6C.s deleted file mode 100644 index 3f7d46ec65..0000000000 --- a/asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CF6C.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel func_8006CF6C -/* AE410C 8006CF6C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* AE4110 8006CF70 AFBF0024 */ sw $ra, 0x24($sp) -/* AE4114 8006CF74 AFA40028 */ sw $a0, 0x28($sp) -/* AE4118 8006CF78 8CCE001C */ lw $t6, 0x1c($a2) -/* AE411C 8006CF7C 00A02025 */ move $a0, $a1 -/* AE4120 8006CF80 00002825 */ move $a1, $zero -/* AE4124 8006CF84 11C00007 */ beqz $t6, .L8006CFA4 -/* AE4128 8006CF88 8FAF0038 */ lw $t7, 0x38($sp) -/* AE412C 8006CF8C 8FB8003C */ lw $t8, 0x3c($sp) -/* AE4130 8006CF90 8FB90040 */ lw $t9, 0x40($sp) -/* AE4134 8006CF94 AFAF0010 */ sw $t7, 0x10($sp) -/* AE4138 8006CF98 AFB80014 */ sw $t8, 0x14($sp) -/* AE413C 8006CF9C 0C01B2EB */ jal func_8006CBAC -/* AE4140 8006CFA0 AFB90018 */ sw $t9, 0x18($sp) -.L8006CFA4: -/* AE4144 8006CFA4 8FBF0024 */ lw $ra, 0x24($sp) -/* AE4148 8006CFA8 27BD0028 */ addiu $sp, $sp, 0x28 -/* AE414C 8006CFAC 03E00008 */ jr $ra -/* AE4150 8006CFB0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Destroy.s index 4519f2aaf4..45c05f7729 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Destroy.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Destroy.s @@ -1,22 +1,22 @@ glabel DemoEffect_Destroy /* 009C4 80971914 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 009C8 80971918 AFBF0014 */ sw $ra, 0x0014($sp) +/* 009C8 80971918 AFBF0014 */ sw $ra, 0x0014($sp) /* 009CC 8097191C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C /* 009D0 80971920 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F /* 009D4 80971924 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 /* 009D8 80971928 304200FF */ andi $v0, $v0, 0x00FF ## $v0 = 00000000 -/* 009DC 8097192C 10410005 */ beq $v0, $at, .L80971944 +/* 009DC 8097192C 10410005 */ beq $v0, $at, .L80971944 /* 009E0 80971930 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000 /* 009E4 80971934 24010018 */ addiu $at, $zero, 0x0018 ## $at = 00000018 -/* 009E8 80971938 10410002 */ beq $v0, $at, .L80971944 +/* 009E8 80971938 10410002 */ beq $v0, $at, .L80971944 /* 009EC 8097193C 24010019 */ addiu $at, $zero, 0x0019 ## $at = 00000019 -/* 009F0 80971940 14410003 */ bne $v0, $at, .L80971950 +/* 009F0 80971940 14410003 */ bne $v0, $at, .L80971950 .L80971944: /* 009F4 80971944 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000 -/* 009F8 80971948 0C01B217 */ jal func_8006C85C +/* 009F8 80971948 0C01B217 */ jal SkelCurve_Destroy /* 009FC 8097194C 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C .L80971950: -/* 00A00 80971950 8FBF0014 */ lw $ra, 0x0014($sp) +/* 00A00 80971950 8FBF0014 */ lw $ra, 0x0014($sp) /* 00A04 80971954 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00A08 80971958 03E00008 */ jr $ra +/* 00A08 80971958 03E00008 */ jr $ra /* 00A0C 8097195C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Init.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Init.s index 2ed2d06996..1e713b7e28 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Init.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/DemoEffect_Init.s @@ -63,54 +63,54 @@ glabel jtbl_80976CC0 .text glabel DemoEffect_Init /* 00170 809710C0 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0 -/* 00174 809710C4 AFBF003C */ sw $ra, 0x003C($sp) -/* 00178 809710C8 AFB00038 */ sw $s0, 0x0038($sp) -/* 0017C 809710CC AFA50064 */ sw $a1, 0x0064($sp) +/* 00174 809710C4 AFBF003C */ sw $ra, 0x003C($sp) +/* 00178 809710C8 AFB00038 */ sw $s0, 0x0038($sp) +/* 0017C 809710CC AFA50064 */ sw $a1, 0x0064($sp) /* 00180 809710D0 8482001C */ lh $v0, 0x001C($a0) ## 0000001C /* 00184 809710D4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 /* 00188 809710D8 3C048097 */ lui $a0, %hi(D_80976880) ## $a0 = 80970000 /* 0018C 809710DC 304EF000 */ andi $t6, $v0, 0xF000 ## $t6 = 00000000 -/* 00190 809710E0 000E7B03 */ sra $t7, $t6, 12 +/* 00190 809710E0 000E7B03 */ sra $t7, $t6, 12 /* 00194 809710E4 304500FF */ andi $a1, $v0, 0x00FF ## $a1 = 00000000 -/* 00198 809710E8 AFAF0050 */ sw $t7, 0x0050($sp) -/* 0019C 809710EC AFA50054 */ sw $a1, 0x0054($sp) +/* 00198 809710E8 AFAF0050 */ sw $t7, 0x0050($sp) +/* 0019C 809710EC AFA50054 */ sw $a1, 0x0054($sp) /* 001A0 809710F0 0C00084C */ jal osSyncPrintf - + /* 001A4 809710F4 24846880 */ addiu $a0, $a0, %lo(D_80976880) ## $a0 = 80976880 -/* 001A8 809710F8 8FB80054 */ lw $t8, 0x0054($sp) +/* 001A8 809710F8 8FB80054 */ lw $t8, 0x0054($sp) /* 001AC 809710FC 3C058097 */ lui $a1, %hi(D_80976814) ## $a1 = 80970000 /* 001B0 80971100 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 001B4 80971104 0018C840 */ sll $t9, $t8, 1 -/* 001B8 80971108 00B92821 */ addu $a1, $a1, $t9 -/* 001BC 8097110C 84A56814 */ lh $a1, %lo(D_80976814)($a1) -/* 001C0 80971110 8FA40064 */ lw $a0, 0x0064($sp) -/* 001C4 80971114 54A10004 */ bnel $a1, $at, .L80971128 +/* 001B4 80971104 0018C840 */ sll $t9, $t8, 1 +/* 001B8 80971108 00B92821 */ addu $a1, $a1, $t9 +/* 001BC 8097110C 84A56814 */ lh $a1, %lo(D_80976814)($a1) +/* 001C0 80971110 8FA40064 */ lw $a0, 0x0064($sp) +/* 001C4 80971114 54A10004 */ bnel $a1, $at, .L80971128 /* 001C8 80971118 3C010001 */ lui $at, 0x0001 ## $at = 00010000 -/* 001CC 8097111C 10000006 */ beq $zero, $zero, .L80971138 +/* 001CC 8097111C 10000006 */ beq $zero, $zero, .L80971138 /* 001D0 80971120 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000 /* 001D4 80971124 3C010001 */ lui $at, 0x0001 ## $at = 00010000 .L80971128: /* 001D8 80971128 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4 /* 001DC 8097112C 0C02604B */ jal Object_GetIndex ## ObjectIndex -/* 001E0 80971130 00812021 */ addu $a0, $a0, $at +/* 001E0 80971130 00812021 */ addu $a0, $a0, $at /* 001E4 80971134 00402825 */ or $a1, $v0, $zero ## $a1 = 00000000 .L80971138: /* 001E8 80971138 3C048097 */ lui $a0, %hi(D_80976894) ## $a0 = 80970000 /* 001EC 8097113C 24846894 */ addiu $a0, $a0, %lo(D_80976894) ## $a0 = 80976894 /* 001F0 80971140 0C00084C */ jal osSyncPrintf - -/* 001F4 80971144 AFA5004C */ sw $a1, 0x004C($sp) -/* 001F8 80971148 8FA5004C */ lw $a1, 0x004C($sp) + +/* 001F4 80971144 AFA5004C */ sw $a1, 0x004C($sp) +/* 001F8 80971148 8FA5004C */ lw $a1, 0x004C($sp) /* 001FC 8097114C 3C048097 */ lui $a0, %hi(D_809768AC) ## $a0 = 80970000 /* 00200 80971150 248468AC */ addiu $a0, $a0, %lo(D_809768AC) ## $a0 = 809768AC -/* 00204 80971154 04A10006 */ bgez $a1, .L80971170 +/* 00204 80971154 04A10006 */ bgez $a1, .L80971170 /* 00208 80971158 240602D3 */ addiu $a2, $zero, 0x02D3 ## $a2 = 000002D3 /* 0020C 8097115C 3C058097 */ lui $a1, %hi(D_809768B0) ## $a1 = 80970000 /* 00210 80971160 0C0007FC */ jal __assert - + /* 00214 80971164 24A568B0 */ addiu $a1, $a1, %lo(D_809768B0) ## $a1 = 809768B0 -/* 00218 80971168 10000003 */ beq $zero, $zero, .L80971178 +/* 00218 80971168 10000003 */ beq $zero, $zero, .L80971178 /* 0021C 8097116C 3C053E4C */ lui $a1, 0x3E4C ## $a1 = 3E4C0000 .L80971170: /* 00220 80971170 A205016C */ sb $a1, 0x016C($s0) ## 0000016C @@ -119,16 +119,16 @@ glabel DemoEffect_Init /* 00228 80971178 A600018A */ sh $zero, 0x018A($s0) ## 0000018A /* 0022C 8097117C 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3E4CCCCD /* 00230 80971180 0C00B58B */ jal Actor_SetScale - + /* 00234 80971184 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00238 80971188 8FA80054 */ lw $t0, 0x0054($sp) -/* 0023C 8097118C 2D01001A */ sltiu $at, $t0, 0x001A -/* 00240 80971190 102001CA */ beq $at, $zero, .L809718BC -/* 00244 80971194 00084080 */ sll $t0, $t0, 2 +/* 00238 80971188 8FA80054 */ lw $t0, 0x0054($sp) +/* 0023C 8097118C 2D01001A */ sltiu $at, $t0, 0x001A +/* 00240 80971190 102001CA */ beq $at, $zero, .L809718BC +/* 00244 80971194 00084080 */ sll $t0, $t0, 2 /* 00248 80971198 3C018097 */ lui $at, %hi(jtbl_80976C58) ## $at = 80970000 -/* 0024C 8097119C 00280821 */ addu $at, $at, $t0 -/* 00250 809711A0 8C286C58 */ lw $t0, %lo(jtbl_80976C58)($at) -/* 00254 809711A4 01000008 */ jr $t0 +/* 0024C 8097119C 00280821 */ addu $at, $at, $t0 +/* 00250 809711A0 8C286C58 */ lw $t0, %lo(jtbl_80976C58)($at) +/* 00254 809711A4 01000008 */ jr $t0 /* 00258 809711A8 00000000 */ nop glabel L809711AC /* 0025C 809711AC 3C098097 */ lui $t1, %hi(func_80974B80) ## $t1 = 80970000 @@ -136,7 +136,7 @@ glabel L809711AC /* 00264 809711B4 25294B80 */ addiu $t1, $t1, %lo(func_80974B80) ## $t1 = 80974B80 /* 00268 809711B8 254A19F0 */ addiu $t2, $t2, %lo(func_809719F0) ## $t2 = 809719F0 /* 0026C 809711BC AE090198 */ sw $t1, 0x0198($s0) ## 00000198 -/* 00270 809711C0 100001C4 */ beq $zero, $zero, .L809718D4 +/* 00270 809711C0 100001C4 */ beq $zero, $zero, .L809718D4 /* 00274 809711C4 AE0A0194 */ sw $t2, 0x0194($s0) ## 00000194 glabel L809711C8 /* 00278 809711C8 3C0B8097 */ lui $t3, %hi(func_80974EB4) ## $t3 = 80970000 @@ -148,9 +148,9 @@ glabel L809711C8 /* 00290 809711E0 AE0C0194 */ sw $t4, 0x0194($s0) ## 00000194 /* 00294 809711E4 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD /* 00298 809711E8 0C00B58B */ jal Actor_SetScale - + /* 0029C 809711EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 002A0 809711F0 100001B9 */ beq $zero, $zero, .L809718D8 +/* 002A0 809711F0 100001B9 */ beq $zero, $zero, .L809718D8 /* 002A4 809711F4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 glabel L809711F8 /* 002A8 809711F8 3C0D8097 */ lui $t5, %hi(func_8097571C) ## $t5 = 80970000 @@ -167,7 +167,7 @@ glabel L809711F8 /* 002D4 80971224 A6000188 */ sh $zero, 0x0188($s0) ## 00000188 /* 002D8 80971228 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3D4CCCCD /* 002DC 8097122C 0C00B58B */ jal Actor_SetScale - + /* 002E0 80971230 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 002E4 80971234 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF /* 002E8 80971238 241800BC */ addiu $t8, $zero, 0x00BC ## $t8 = 000000BC @@ -177,7 +177,7 @@ glabel L809711F8 /* 002F8 80971248 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 002FC 8097124C A219017C */ sb $t9, 0x017C($s0) ## 0000017C /* 00300 80971250 A202017D */ sb $v0, 0x017D($s0) ## 0000017D -/* 00304 80971254 1000019F */ beq $zero, $zero, .L809718D4 +/* 00304 80971254 1000019F */ beq $zero, $zero, .L809718D4 /* 00308 80971258 A200017B */ sb $zero, 0x017B($s0) ## 0000017B glabel L8097125C /* 0030C 8097125C 3C088097 */ lui $t0, %hi(func_80975494) ## $t0 = 80970000 @@ -191,14 +191,14 @@ glabel L8097125C /* 0032C 8097127C A2000185 */ sb $zero, 0x0185($s0) ## 00000185 /* 00330 80971280 A2000186 */ sb $zero, 0x0186($s0) ## 00000186 /* 00334 80971284 A6000188 */ sh $zero, 0x0188($s0) ## 00000188 -/* 00338 80971288 8FAA0050 */ lw $t2, 0x0050($sp) -/* 0033C 8097128C 2D410007 */ sltiu $at, $t2, 0x0007 -/* 00340 80971290 1020003E */ beq $at, $zero, .L8097138C -/* 00344 80971294 000A5080 */ sll $t2, $t2, 2 +/* 00338 80971288 8FAA0050 */ lw $t2, 0x0050($sp) +/* 0033C 8097128C 2D410007 */ sltiu $at, $t2, 0x0007 +/* 00340 80971290 1020003E */ beq $at, $zero, .L8097138C +/* 00344 80971294 000A5080 */ sll $t2, $t2, 2 /* 00348 80971298 3C018097 */ lui $at, %hi(jtbl_80976CC0) ## $at = 80970000 -/* 0034C 8097129C 002A0821 */ addu $at, $at, $t2 -/* 00350 809712A0 8C2A6CC0 */ lw $t2, %lo(jtbl_80976CC0)($at) -/* 00354 809712A4 01400008 */ jr $t2 +/* 0034C 8097129C 002A0821 */ addu $at, $at, $t2 +/* 00350 809712A0 8C2A6CC0 */ lw $t2, %lo(jtbl_80976CC0)($at) +/* 00354 809712A4 01400008 */ jr $t2 /* 00358 809712A8 00000000 */ nop glabel L809712AC /* 0035C 809712AC 240B0032 */ addiu $t3, $zero, 0x0032 ## $t3 = 00000032 @@ -207,7 +207,7 @@ glabel L809712AC /* 00368 809712B8 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 0036C 809712BC A20B017C */ sb $t3, 0x017C($s0) ## 0000017C /* 00370 809712C0 A202017B */ sb $v0, 0x017B($s0) ## 0000017B -/* 00374 809712C4 10000031 */ beq $zero, $zero, .L8097138C +/* 00374 809712C4 10000031 */ beq $zero, $zero, .L8097138C /* 00378 809712C8 A200017D */ sb $zero, 0x017D($s0) ## 0000017D glabel L809712CC /* 0037C 809712CC 240C0096 */ addiu $t4, $zero, 0x0096 ## $t4 = 00000096 @@ -216,7 +216,7 @@ glabel L809712CC /* 00388 809712D8 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 0038C 809712DC A20C017C */ sb $t4, 0x017C($s0) ## 0000017C /* 00390 809712E0 A200017B */ sb $zero, 0x017B($s0) ## 0000017B -/* 00394 809712E4 10000029 */ beq $zero, $zero, .L8097138C +/* 00394 809712E4 10000029 */ beq $zero, $zero, .L8097138C /* 00398 809712E8 A202017D */ sb $v0, 0x017D($s0) ## 0000017D glabel L809712EC /* 0039C 809712EC 240D00C8 */ addiu $t5, $zero, 0x00C8 ## $t5 = 000000C8 @@ -225,7 +225,7 @@ glabel L809712EC /* 003A8 809712F8 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 003AC 809712FC A20D017C */ sb $t5, 0x017C($s0) ## 0000017C /* 003B0 80971300 A200017B */ sb $zero, 0x017B($s0) ## 0000017B -/* 003B4 80971304 10000021 */ beq $zero, $zero, .L8097138C +/* 003B4 80971304 10000021 */ beq $zero, $zero, .L8097138C /* 003B8 80971308 A200017D */ sb $zero, 0x017D($s0) ## 0000017D glabel L8097130C /* 003BC 8097130C 240E0096 */ addiu $t6, $zero, 0x0096 ## $t6 = 00000096 @@ -234,7 +234,7 @@ glabel L8097130C /* 003C8 80971318 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 003CC 8097131C A20E017C */ sb $t6, 0x017C($s0) ## 0000017C /* 003D0 80971320 A202017B */ sb $v0, 0x017B($s0) ## 0000017B -/* 003D4 80971324 10000019 */ beq $zero, $zero, .L8097138C +/* 003D4 80971324 10000019 */ beq $zero, $zero, .L8097138C /* 003D8 80971328 A200017D */ sb $zero, 0x017D($s0) ## 0000017D glabel L8097132C /* 003DC 8097132C 240F00C8 */ addiu $t7, $zero, 0x00C8 ## $t7 = 000000C8 @@ -243,7 +243,7 @@ glabel L8097132C /* 003E8 80971338 A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 003EC 8097133C A20F017B */ sb $t7, 0x017B($s0) ## 0000017B /* 003F0 80971340 A202017C */ sb $v0, 0x017C($s0) ## 0000017C -/* 003F4 80971344 10000011 */ beq $zero, $zero, .L8097138C +/* 003F4 80971344 10000011 */ beq $zero, $zero, .L8097138C /* 003F8 80971348 A200017D */ sb $zero, 0x017D($s0) ## 0000017D glabel L8097134C /* 003FC 8097134C 241800C8 */ addiu $t8, $zero, 0x00C8 ## $t8 = 000000C8 @@ -253,7 +253,7 @@ glabel L8097134C /* 0040C 8097135C A202017A */ sb $v0, 0x017A($s0) ## 0000017A /* 00410 80971360 A219017C */ sb $t9, 0x017C($s0) ## 0000017C /* 00414 80971364 A218017B */ sb $t8, 0x017B($s0) ## 0000017B -/* 00418 80971368 10000008 */ beq $zero, $zero, .L8097138C +/* 00418 80971368 10000008 */ beq $zero, $zero, .L8097138C /* 0041C 8097136C A202017D */ sb $v0, 0x017D($s0) ## 0000017D glabel L80971370 /* 00420 80971370 240800C8 */ addiu $t0, $zero, 0x00C8 ## $t0 = 000000C8 @@ -268,9 +268,9 @@ glabel L80971370 /* 00440 80971390 A609018C */ sh $t1, 0x018C($s0) ## 0000018C /* 00444 80971394 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 00448 80971398 0C00B58B */ jal Actor_SetScale - + /* 0044C 8097139C 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000 -/* 00450 809713A0 1000014D */ beq $zero, $zero, .L809718D8 +/* 00450 809713A0 1000014D */ beq $zero, $zero, .L809718D8 /* 00454 809713A4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 glabel L809713A8 /* 00458 809713A8 3C0A8097 */ lui $t2, %hi(func_8097587C) ## $t2 = 80970000 @@ -280,13 +280,13 @@ glabel L809713A8 /* 00468 809713B8 256B2E3C */ addiu $t3, $t3, %lo(func_80972E3C) ## $t3 = 80972E3C /* 0046C 809713BC A2020184 */ sb $v0, 0x0184($s0) ## 00000184 /* 00470 809713C0 AE0A0198 */ sw $t2, 0x0198($s0) ## 00000198 -/* 00474 809713C4 10000143 */ beq $zero, $zero, .L809718D4 +/* 00474 809713C4 10000143 */ beq $zero, $zero, .L809718D4 /* 00478 809713C8 AE0B0194 */ sw $t3, 0x0194($s0) ## 00000194 glabel L809713CC /* 0047C 809713CC 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000 /* 00480 809713D0 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD /* 00484 809713D4 0C00B58B */ jal Actor_SetScale - + /* 00488 809713D8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 0048C 809713DC 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF /* 00490 809713E0 3C0C8097 */ lui $t4, %hi(func_80975074) ## $t4 = 80970000 @@ -304,24 +304,24 @@ glabel L809713CC /* 004C0 80971410 A2000184 */ sb $zero, 0x0184($s0) ## 00000184 /* 004C4 80971414 A2000186 */ sb $zero, 0x0186($s0) ## 00000186 /* 004C8 80971418 AE0D0194 */ sw $t5, 0x0194($s0) ## 00000194 -/* 004CC 8097141C 1000012D */ beq $zero, $zero, .L809718D4 +/* 004CC 8097141C 1000012D */ beq $zero, $zero, .L809718D4 /* 004D0 80971420 A600018C */ sh $zero, 0x018C($s0) ## 0000018C glabel L80971424 /* 004D4 80971424 3C0E8016 */ lui $t6, %hi(gSaveContext) /* 004D8 80971428 8DCEE660 */ lw $t6, %lo(gSaveContext)($t6) /* 004DC 8097142C 2401013D */ addiu $at, $zero, 0x013D ## $at = 0000013D /* 004E0 80971430 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 004E4 80971434 15C10006 */ bne $t6, $at, .L80971450 +/* 004E4 80971434 15C10006 */ bne $t6, $at, .L80971450 /* 004E8 80971438 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000 /* 004EC 8097143C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 004F0 80971440 0C00B58B */ jal Actor_SetScale - + /* 004F4 80971444 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000 -/* 004F8 80971448 10000004 */ beq $zero, $zero, .L8097145C +/* 004F8 80971448 10000004 */ beq $zero, $zero, .L8097145C /* 004FC 8097144C 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF .L80971450: /* 00500 80971450 0C00B58B */ jal Actor_SetScale - + /* 00504 80971454 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 0000CCCD /* 00508 80971458 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF .L8097145C: @@ -346,25 +346,25 @@ glabel L80971424 /* 00554 809714A4 A2000186 */ sb $zero, 0x0186($s0) ## 00000186 /* 00558 809714A8 A6000188 */ sh $zero, 0x0188($s0) ## 00000188 /* 0055C 809714AC AE090194 */ sw $t1, 0x0194($s0) ## 00000194 -/* 00560 809714B0 10000108 */ beq $zero, $zero, .L809718D4 +/* 00560 809714B0 10000108 */ beq $zero, $zero, .L809718D4 /* 00564 809714B4 A60A018C */ sh $t2, 0x018C($s0) ## 0000018C glabel L809714B8 /* 00568 809714B8 3C0B8016 */ lui $t3, %hi(gSaveContext) /* 0056C 809714BC 8D6BE660 */ lw $t3, %lo(gSaveContext)($t3) /* 00570 809714C0 240100EE */ addiu $at, $zero, 0x00EE ## $at = 000000EE /* 00574 809714C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00578 809714C8 15610007 */ bne $t3, $at, .L809714E8 +/* 00578 809714C8 15610007 */ bne $t3, $at, .L809714E8 /* 0057C 809714CC 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000 /* 00580 809714D0 3C054019 */ lui $a1, 0x4019 ## $a1 = 40190000 /* 00584 809714D4 34A5999A */ ori $a1, $a1, 0x999A ## $a1 = 4019999A /* 00588 809714D8 0C00B58B */ jal Actor_SetScale - + /* 0058C 809714DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00590 809714E0 10000003 */ beq $zero, $zero, .L809714F0 +/* 00590 809714E0 10000003 */ beq $zero, $zero, .L809714F0 /* 00594 809714E4 00000000 */ nop .L809714E8: /* 00598 809714E8 0C00B58B */ jal Actor_SetScale - + /* 0059C 809714EC 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 0000CCCD .L809714F0: /* 005A0 809714F0 3C0C8097 */ lui $t4, %hi(func_80975074) ## $t4 = 80970000 @@ -386,7 +386,7 @@ glabel L809714B8 /* 005E0 80971530 A20E0184 */ sb $t6, 0x0184($s0) ## 00000184 /* 005E4 80971534 A2000186 */ sb $zero, 0x0186($s0) ## 00000186 /* 005E8 80971538 AE0F0194 */ sw $t7, 0x0194($s0) ## 00000194 -/* 005EC 8097153C 100000E5 */ beq $zero, $zero, .L809718D4 +/* 005EC 8097153C 100000E5 */ beq $zero, $zero, .L809718D4 /* 005F0 80971540 A618018C */ sh $t8, 0x018C($s0) ## 0000018C glabel L80971544 /* 005F4 80971544 3C198097 */ lui $t9, %hi(func_80975A3C) ## $t9 = 80970000 @@ -400,7 +400,7 @@ glabel L80971544 /* 00614 80971564 AE080194 */ sw $t0, 0x0194($s0) ## 00000194 /* 00618 80971568 A6090188 */ sh $t1, 0x0188($s0) ## 00000188 /* 0061C 8097156C A20A0184 */ sb $t2, 0x0184($s0) ## 00000184 -/* 00620 80971570 100000D8 */ beq $zero, $zero, .L809718D4 +/* 00620 80971570 100000D8 */ beq $zero, $zero, .L809718D4 /* 00624 80971574 A2020185 */ sb $v0, 0x0185($s0) ## 00000185 glabel L80971578 /* 00628 80971578 3C0B8097 */ lui $t3, %hi(func_80975A3C) ## $t3 = 80970000 @@ -415,7 +415,7 @@ glabel L80971578 /* 0064C 8097159C A60D0188 */ sh $t5, 0x0188($s0) ## 00000188 /* 00650 809715A0 A20E0184 */ sb $t6, 0x0184($s0) ## 00000184 /* 00654 809715A4 A2000185 */ sb $zero, 0x0185($s0) ## 00000185 -/* 00658 809715A8 100000CA */ beq $zero, $zero, .L809718D4 +/* 00658 809715A8 100000CA */ beq $zero, $zero, .L809718D4 /* 0065C 809715AC A60F018C */ sh $t7, 0x018C($s0) ## 0000018C glabel L809715B0 /* 00660 809715B0 3C188097 */ lui $t8, %hi(func_80975A3C) ## $t8 = 80970000 @@ -428,7 +428,7 @@ glabel L809715B0 /* 0067C 809715CC AE190194 */ sw $t9, 0x0194($s0) ## 00000194 /* 00680 809715D0 A6080188 */ sh $t0, 0x0188($s0) ## 00000188 /* 00684 809715D4 A2090184 */ sb $t1, 0x0184($s0) ## 00000184 -/* 00688 809715D8 100000BE */ beq $zero, $zero, .L809718D4 +/* 00688 809715D8 100000BE */ beq $zero, $zero, .L809718D4 /* 0068C 809715DC A2000185 */ sb $zero, 0x0185($s0) ## 00000185 glabel L809715E0 /* 00690 809715E0 3C0A8097 */ lui $t2, %hi(func_80975BD4) ## $t2 = 80970000 @@ -447,99 +447,99 @@ glabel L809715E0 /* 006C4 80971614 A60C018C */ sh $t4, 0x018C($s0) ## 0000018C /* 006C8 80971618 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3CA3D70A /* 006CC 8097161C 0C00B58B */ jal Actor_SetScale - + /* 006D0 80971620 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 006D4 80971624 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 006D8 80971628 8FA60064 */ lw $a2, 0x0064($sp) +/* 006D8 80971628 8FA60064 */ lw $a2, 0x0064($sp) /* 006DC 8097162C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 006E0 80971630 E7A40010 */ swc1 $f4, 0x0010($sp) +/* 006E0 80971630 E7A40010 */ swc1 $f4, 0x0010($sp) /* 006E4 80971634 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028 /* 006E8 80971638 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24 /* 006EC 8097163C 2407008B */ addiu $a3, $zero, 0x008B ## $a3 = 0000008B -/* 006F0 80971640 E7A60014 */ swc1 $f6, 0x0014($sp) +/* 006F0 80971640 E7A60014 */ swc1 $f6, 0x0014($sp) /* 006F4 80971644 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 006F8 80971648 AFA40040 */ sw $a0, 0x0040($sp) -/* 006FC 8097164C AFA00028 */ sw $zero, 0x0028($sp) -/* 00700 80971650 AFA00024 */ sw $zero, 0x0024($sp) -/* 00704 80971654 AFA00020 */ sw $zero, 0x0020($sp) -/* 00708 80971658 AFA0001C */ sw $zero, 0x001C($sp) +/* 006F8 80971648 AFA40040 */ sw $a0, 0x0040($sp) +/* 006FC 8097164C AFA00028 */ sw $zero, 0x0028($sp) +/* 00700 80971650 AFA00024 */ sw $zero, 0x0024($sp) +/* 00704 80971654 AFA00020 */ sw $zero, 0x0020($sp) +/* 00708 80971658 AFA0001C */ sw $zero, 0x001C($sp) /* 0070C 8097165C 0C00C916 */ jal Actor_SpawnAttached - -/* 00710 80971660 E7A80018 */ swc1 $f8, 0x0018($sp) -/* 00714 80971664 10400005 */ beq $v0, $zero, .L8097167C -/* 00718 80971668 AFA20048 */ sw $v0, 0x0048($sp) + +/* 00710 80971660 E7A80018 */ swc1 $f8, 0x0018($sp) +/* 00714 80971664 10400005 */ beq $v0, $zero, .L8097167C +/* 00718 80971668 AFA20048 */ sw $v0, 0x0048($sp) /* 0071C 8097166C 3C053F19 */ lui $a1, 0x3F19 ## $a1 = 3F190000 /* 00720 80971670 34A5999A */ ori $a1, $a1, 0x999A ## $a1 = 3F19999A /* 00724 80971674 0C00B58B */ jal Actor_SetScale - + /* 00728 80971678 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 .L8097167C: /* 0072C 8097167C C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024 /* 00730 80971680 240D0011 */ addiu $t5, $zero, 0x0011 ## $t5 = 00000011 -/* 00734 80971684 8FA60064 */ lw $a2, 0x0064($sp) -/* 00738 80971688 E7AA0010 */ swc1 $f10, 0x0010($sp) +/* 00734 80971684 8FA60064 */ lw $a2, 0x0064($sp) +/* 00738 80971688 E7AA0010 */ swc1 $f10, 0x0010($sp) /* 0073C 8097168C C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000028 -/* 00740 80971690 8FA40040 */ lw $a0, 0x0040($sp) -/* 00744 80971694 8FA50048 */ lw $a1, 0x0048($sp) -/* 00748 80971698 E7B00014 */ swc1 $f16, 0x0014($sp) +/* 00740 80971690 8FA40040 */ lw $a0, 0x0040($sp) +/* 00744 80971694 8FA50048 */ lw $a1, 0x0048($sp) +/* 00748 80971698 E7B00014 */ swc1 $f16, 0x0014($sp) /* 0074C 8097169C C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C -/* 00750 809716A0 AFAD0028 */ sw $t5, 0x0028($sp) -/* 00754 809716A4 AFA00024 */ sw $zero, 0x0024($sp) -/* 00758 809716A8 AFA00020 */ sw $zero, 0x0020($sp) -/* 0075C 809716AC AFA0001C */ sw $zero, 0x001C($sp) +/* 00750 809716A0 AFAD0028 */ sw $t5, 0x0028($sp) +/* 00754 809716A4 AFA00024 */ sw $zero, 0x0024($sp) +/* 00758 809716A8 AFA00020 */ sw $zero, 0x0020($sp) +/* 0075C 809716AC AFA0001C */ sw $zero, 0x001C($sp) /* 00760 809716B0 2407008B */ addiu $a3, $zero, 0x008B ## $a3 = 0000008B /* 00764 809716B4 0C00C916 */ jal Actor_SpawnAttached - -/* 00768 809716B8 E7B20018 */ swc1 $f18, 0x0018($sp) -/* 0076C 809716BC 10400085 */ beq $v0, $zero, .L809718D4 + +/* 00768 809716B8 E7B20018 */ swc1 $f18, 0x0018($sp) +/* 0076C 809716BC 10400085 */ beq $v0, $zero, .L809718D4 /* 00770 809716C0 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 /* 00774 809716C4 3C053ECC */ lui $a1, 0x3ECC ## $a1 = 3ECC0000 /* 00778 809716C8 0C00B58B */ jal Actor_SetScale - + /* 0077C 809716CC 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3ECCCCCD -/* 00780 809716D0 10000081 */ beq $zero, $zero, .L809718D8 +/* 00780 809716D0 10000081 */ beq $zero, $zero, .L809718D8 /* 00784 809716D4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 glabel L809716D8 -/* 00788 809716D8 0C25C41C */ jal func_80971070 +/* 00788 809716D8 0C25C41C */ jal func_80971070 /* 0078C 809716DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 00790 809716E0 240E000C */ addiu $t6, $zero, 0x000C ## $t6 = 0000000C -/* 00794 809716E4 1000007B */ beq $zero, $zero, .L809718D4 +/* 00794 809716E4 1000007B */ beq $zero, $zero, .L809718D4 /* 00798 809716E8 A20E0186 */ sb $t6, 0x0186($s0) ## 00000186 glabel L809716EC -/* 0079C 809716EC 0C25C41C */ jal func_80971070 +/* 0079C 809716EC 0C25C41C */ jal func_80971070 /* 007A0 809716F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 007A4 809716F4 240F000D */ addiu $t7, $zero, 0x000D ## $t7 = 0000000D -/* 007A8 809716F8 10000076 */ beq $zero, $zero, .L809718D4 +/* 007A8 809716F8 10000076 */ beq $zero, $zero, .L809718D4 /* 007AC 809716FC A20F0186 */ sb $t7, 0x0186($s0) ## 00000186 glabel L80971700 -/* 007B0 80971700 0C25C41C */ jal func_80971070 +/* 007B0 80971700 0C25C41C */ jal func_80971070 /* 007B4 80971704 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 007B8 80971708 2418000B */ addiu $t8, $zero, 0x000B ## $t8 = 0000000B -/* 007BC 8097170C 10000071 */ beq $zero, $zero, .L809718D4 +/* 007BC 8097170C 10000071 */ beq $zero, $zero, .L809718D4 /* 007C0 80971710 A2180186 */ sb $t8, 0x0186($s0) ## 00000186 glabel L80971714 -/* 007C4 80971714 0C25C41C */ jal func_80971070 +/* 007C4 80971714 0C25C41C */ jal func_80971070 /* 007C8 80971718 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 007CC 8097171C 2419000E */ addiu $t9, $zero, 0x000E ## $t9 = 0000000E -/* 007D0 80971720 1000006C */ beq $zero, $zero, .L809718D4 +/* 007D0 80971720 1000006C */ beq $zero, $zero, .L809718D4 /* 007D4 80971724 A2190186 */ sb $t9, 0x0186($s0) ## 00000186 glabel L80971728 -/* 007D8 80971728 0C25C41C */ jal func_80971070 +/* 007D8 80971728 0C25C41C */ jal func_80971070 /* 007DC 8097172C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 007E0 80971730 2408000F */ addiu $t0, $zero, 0x000F ## $t0 = 0000000F -/* 007E4 80971734 10000067 */ beq $zero, $zero, .L809718D4 +/* 007E4 80971734 10000067 */ beq $zero, $zero, .L809718D4 /* 007E8 80971738 A2080186 */ sb $t0, 0x0186($s0) ## 00000186 glabel L8097173C -/* 007EC 8097173C 0C25C41C */ jal func_80971070 +/* 007EC 8097173C 0C25C41C */ jal func_80971070 /* 007F0 80971740 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 007F4 80971744 24090010 */ addiu $t1, $zero, 0x0010 ## $t1 = 00000010 -/* 007F8 80971748 10000062 */ beq $zero, $zero, .L809718D4 +/* 007F8 80971748 10000062 */ beq $zero, $zero, .L809718D4 /* 007FC 8097174C A2090186 */ sb $t1, 0x0186($s0) ## 00000186 glabel L80971750 -/* 00800 80971750 0C25C41C */ jal func_80971070 +/* 00800 80971750 0C25C41C */ jal func_80971070 /* 00804 80971754 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 00808 80971758 240A0061 */ addiu $t2, $zero, 0x0061 ## $t2 = 00000061 -/* 0080C 8097175C 1000005D */ beq $zero, $zero, .L809718D4 +/* 0080C 8097175C 1000005D */ beq $zero, $zero, .L809718D4 /* 00810 80971760 A20A0186 */ sb $t2, 0x0186($s0) ## 00000186 glabel L80971764 /* 00814 80971764 8E0B0004 */ lw $t3, 0x0004($s0) ## 00000004 @@ -558,9 +558,9 @@ glabel L80971774 /* 00844 80971794 A200017B */ sb $zero, 0x017B($s0) ## 0000017B /* 00848 80971798 A20F017C */ sb $t7, 0x017C($s0) ## 0000017C /* 0084C 8097179C A202017D */ sb $v0, 0x017D($s0) ## 0000017D -/* 00850 809717A0 0C01B1D4 */ jal func_8006C750 +/* 00850 809717A0 0C01B1D4 */ jal SkelCurve_Clear /* 00854 809717A4 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C -/* 00858 809717A8 1000004A */ beq $zero, $zero, .L809718D4 +/* 00858 809717A8 1000004A */ beq $zero, $zero, .L809718D4 /* 0085C 809717AC A6000188 */ sh $zero, 0x0188($s0) ## 00000188 glabel L809717B0 /* 00860 809717B0 3C180600 */ lui $t8, 0x0600 ## $t8 = 06000000 @@ -572,10 +572,10 @@ glabel L809717B0 /* 00878 809717C8 AE190174 */ sw $t9, 0x0174($s0) ## 00000174 /* 0087C 809717CC A2080184 */ sb $t0, 0x0184($s0) ## 00000184 /* 00880 809717D0 A2000185 */ sb $zero, 0x0185($s0) ## 00000185 -/* 00884 809717D4 8FA40064 */ lw $a0, 0x0064($sp) -/* 00888 809717D8 0C25C3ED */ jal func_80970FB4 +/* 00884 809717D4 8FA40064 */ lw $a0, 0x0064($sp) +/* 00888 809717D8 0C25C3ED */ jal func_80970FB4 /* 0088C 809717DC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00890 809717E0 1000003D */ beq $zero, $zero, .L809718D8 +/* 00890 809717E0 1000003D */ beq $zero, $zero, .L809718D8 /* 00894 809717E4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 glabel L809717E8 /* 00898 809717E8 3C090600 */ lui $t1, 0x0600 ## $t1 = 06000000 @@ -587,10 +587,10 @@ glabel L809717E8 /* 008B0 80971800 AE0A0174 */ sw $t2, 0x0174($s0) ## 00000174 /* 008B4 80971804 A20B0184 */ sb $t3, 0x0184($s0) ## 00000184 /* 008B8 80971808 A2000185 */ sb $zero, 0x0185($s0) ## 00000185 -/* 008BC 8097180C 8FA40064 */ lw $a0, 0x0064($sp) -/* 008C0 80971810 0C25C3ED */ jal func_80970FB4 +/* 008BC 8097180C 8FA40064 */ lw $a0, 0x0064($sp) +/* 008C0 80971810 0C25C3ED */ jal func_80970FB4 /* 008C4 80971814 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 008C8 80971818 1000002F */ beq $zero, $zero, .L809718D8 +/* 008C8 80971818 1000002F */ beq $zero, $zero, .L809718D8 /* 008CC 8097181C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 glabel L80971820 /* 008D0 80971820 3C0C0600 */ lui $t4, 0x0600 ## $t4 = 06000000 @@ -602,30 +602,30 @@ glabel L80971820 /* 008E8 80971838 AE0D0174 */ sw $t5, 0x0174($s0) ## 00000174 /* 008EC 8097183C A20E0184 */ sb $t6, 0x0184($s0) ## 00000184 /* 008F0 80971840 A2000185 */ sb $zero, 0x0185($s0) ## 00000185 -/* 008F4 80971844 8FA40064 */ lw $a0, 0x0064($sp) -/* 008F8 80971848 0C25C3ED */ jal func_80970FB4 +/* 008F4 80971844 8FA40064 */ lw $a0, 0x0064($sp) +/* 008F8 80971848 0C25C3ED */ jal func_80970FB4 /* 008FC 8097184C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00900 80971850 8FA40064 */ lw $a0, 0x0064($sp) +/* 00900 80971850 8FA40064 */ lw $a0, 0x0064($sp) /* 00904 80971854 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 /* 00908 80971858 24070009 */ addiu $a3, $zero, 0x0009 ## $a3 = 00000009 /* 0090C 8097185C 0C00CDD2 */ jal Actor_ChangeType - + /* 00910 80971860 24851C24 */ addiu $a1, $a0, 0x1C24 ## $a1 = 00001C24 -/* 00914 80971864 8FAF0064 */ lw $t7, 0x0064($sp) +/* 00914 80971864 8FAF0064 */ lw $t7, 0x0064($sp) /* 00918 80971868 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 /* 0091C 8097186C 3C198016 */ lui $t9, %hi(gSaveContext+0xf20) /* 00920 80971870 85F800A4 */ lh $t8, 0x00A4($t7) ## 000000A4 -/* 00924 80971874 57010018 */ bnel $t8, $at, .L809718D8 +/* 00924 80971874 57010018 */ bnel $t8, $at, .L809718D8 /* 00928 80971878 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 /* 0092C 8097187C 9739F580 */ lhu $t9, %lo(gSaveContext+0xf20)($t9) /* 00930 80971880 33280020 */ andi $t0, $t9, 0x0020 ## $t0 = 00000000 -/* 00934 80971884 51000014 */ beql $t0, $zero, .L809718D8 +/* 00934 80971884 51000014 */ beql $t0, $zero, .L809718D8 /* 00938 80971888 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 /* 0093C 8097188C 0C00B55C */ jal Actor_Kill - + /* 00940 80971890 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00944 80971894 1000001B */ beq $zero, $zero, .L80971904 -/* 00948 80971898 8FBF003C */ lw $ra, 0x003C($sp) +/* 00944 80971894 1000001B */ beq $zero, $zero, .L80971904 +/* 00948 80971898 8FBF003C */ lw $ra, 0x003C($sp) glabel L8097189C /* 0094C 8097189C 3C098097 */ lui $t1, %hi(func_8097456C) ## $t1 = 80970000 /* 00950 809718A0 2529456C */ addiu $t1, $t1, %lo(func_8097456C) ## $t1 = 8097456C @@ -633,7 +633,7 @@ glabel L8097189C /* 00958 809718A8 AE000198 */ sw $zero, 0x0198($s0) ## 00000198 /* 0095C 809718AC AE090194 */ sw $t1, 0x0194($s0) ## 00000194 /* 00960 809718B0 A2000184 */ sb $zero, 0x0184($s0) ## 00000184 -/* 00964 809718B4 10000007 */ beq $zero, $zero, .L809718D4 +/* 00964 809718B4 10000007 */ beq $zero, $zero, .L809718D4 /* 00968 809718B8 A60A018C */ sh $t2, 0x018C($s0) ## 0000018C .L809718BC: /* 0096C 809718BC 3C048097 */ lui $a0, %hi(D_809768C4) ## $a0 = 80970000 @@ -641,25 +641,25 @@ glabel L8097189C /* 00974 809718C4 24A568C8 */ addiu $a1, $a1, %lo(D_809768C8) ## $a1 = 809768C8 /* 00978 809718C8 248468C4 */ addiu $a0, $a0, %lo(D_809768C4) ## $a0 = 809768C4 /* 0097C 809718CC 0C0007FC */ jal __assert - + /* 00980 809718D0 24060426 */ addiu $a2, $zero, 0x0426 ## $a2 = 00000426 .L809718D4: /* 00984 809718D4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 .L809718D8: /* 00988 809718D8 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4 /* 0098C 809718DC 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000 -/* 00990 809718E0 44050000 */ mfc1 $a1, $f0 -/* 00994 809718E4 44070000 */ mfc1 $a3, $f0 +/* 00990 809718E0 44050000 */ mfc1 $a1, $f0 +/* 00994 809718E4 44070000 */ mfc1 $a3, $f0 /* 00998 809718E8 0C00AC78 */ jal ActorShape_Init - + /* 0099C 809718EC 00000000 */ nop /* 009A0 809718F0 3C058097 */ lui $a1, %hi(func_80971960) ## $a1 = 80970000 /* 009A4 809718F4 24A51960 */ addiu $a1, $a1, %lo(func_80971960) ## $a1 = 80971960 -/* 009A8 809718F8 0C25C3D4 */ jal func_80970F50 +/* 009A8 809718F8 0C25C3D4 */ jal func_80970F50 /* 009AC 809718FC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 009B0 80971900 8FBF003C */ lw $ra, 0x003C($sp) +/* 009B0 80971900 8FBF003C */ lw $ra, 0x003C($sp) .L80971904: -/* 009B4 80971904 8FB00038 */ lw $s0, 0x0038($sp) +/* 009B4 80971904 8FB00038 */ lw $s0, 0x0038($sp) /* 009B8 80971908 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000 -/* 009BC 8097190C 03E00008 */ jr $ra +/* 009BC 8097190C 03E00008 */ jr $ra /* 009C0 80971910 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80971DFC.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80971DFC.s index 7baf014674..4223934082 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80971DFC.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80971DFC.s @@ -22,10 +22,10 @@ glabel D_80976CE4 .text glabel func_80971DFC /* 00EAC 80971DFC 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00EB0 80971E00 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00EB4 80971E04 AFB00020 */ sw $s0, 0x0020($sp) -/* 00EB8 80971E08 AFA40030 */ sw $a0, 0x0030($sp) -/* 00EBC 80971E0C AFA50034 */ sw $a1, 0x0034($sp) +/* 00EB0 80971E00 AFBF0024 */ sw $ra, 0x0024($sp) +/* 00EB4 80971E04 AFB00020 */ sw $s0, 0x0020($sp) +/* 00EB8 80971E08 AFA40030 */ sw $a0, 0x0030($sp) +/* 00EBC 80971E0C AFA50034 */ sw $a1, 0x0034($sp) /* 00EC0 80971E10 848F001C */ lh $t7, 0x001C($a0) ## 0000001C /* 00EC4 80971E14 00807025 */ or $t6, $a0, $zero ## $t6 = 00000000 /* 00EC8 80971E18 25D0014C */ addiu $s0, $t6, 0x014C ## $s0 = 0000014C @@ -33,27 +33,27 @@ glabel func_80971DFC /* 00ED0 80971E20 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000 /* 00ED4 80971E24 3C070600 */ lui $a3, 0x0600 ## $a3 = 06000000 /* 00ED8 80971E28 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000000 -/* 00EDC 80971E2C AFB8002C */ sw $t8, 0x002C($sp) +/* 00EDC 80971E2C AFB8002C */ sw $t8, 0x002C($sp) /* 00EE0 80971E30 24E70050 */ addiu $a3, $a3, 0x0050 ## $a3 = 06000050 /* 00EE4 80971E34 24C612E8 */ addiu $a2, $a2, 0x12E8 ## $a2 = 060012E8 -/* 00EE8 80971E38 0C01B1DE */ jal func_8006C778 +/* 00EE8 80971E38 0C01B1DE */ jal SkelCurve_Init /* 00EEC 80971E3C 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 00EF0 80971E40 14400006 */ bne $v0, $zero, .L80971E5C +/* 00EF0 80971E40 14400006 */ bne $v0, $zero, .L80971E5C /* 00EF4 80971E44 3C048097 */ lui $a0, %hi(D_809768FC) ## $a0 = 80970000 /* 00EF8 80971E48 3C058097 */ lui $a1, %hi(D_80976900) ## $a1 = 80970000 /* 00EFC 80971E4C 24A56900 */ addiu $a1, $a1, %lo(D_80976900) ## $a1 = 80976900 /* 00F00 80971E50 248468FC */ addiu $a0, $a0, %lo(D_809768FC) ## $a0 = 809768FC /* 00F04 80971E54 0C0007FC */ jal __assert - + /* 00F08 80971E58 24060503 */ addiu $a2, $zero, 0x0503 ## $a2 = 00000503 .L80971E5C: -/* 00F0C 80971E5C 8FA2002C */ lw $v0, 0x002C($sp) +/* 00F0C 80971E5C 8FA2002C */ lw $v0, 0x002C($sp) /* 00F10 80971E60 24010018 */ addiu $at, $zero, 0x0018 ## $at = 00000018 /* 00F14 80971E64 02002025 */ or $a0, $s0, $zero ## $a0 = 0000014C -/* 00F18 80971E68 10410004 */ beq $v0, $at, .L80971E7C +/* 00F18 80971E68 10410004 */ beq $v0, $at, .L80971E7C /* 00F1C 80971E6C 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000 /* 00F20 80971E70 24010019 */ addiu $at, $zero, 0x0019 ## $at = 00000019 -/* 00F24 80971E74 14410022 */ bne $v0, $at, .L80971F00 +/* 00F24 80971E74 14410022 */ bne $v0, $at, .L80971F00 /* 00F28 80971E78 3C038016 */ lui $v1, %hi(gSaveContext) .L80971E7C: /* 00F2C 80971E7C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 @@ -61,54 +61,54 @@ glabel func_80971DFC /* 00F34 80971E84 3C01426C */ lui $at, 0x426C ## $at = 426C0000 /* 00F38 80971E88 44811000 */ mtc1 $at, $f2 ## $f2 = 59.00 /* 00F3C 80971E8C 3C018097 */ lui $at, %hi(D_80976CE4) ## $at = 80970000 -/* 00F40 80971E90 C4246CE4 */ lwc1 $f4, %lo(D_80976CE4)($at) -/* 00F44 80971E94 44060000 */ mfc1 $a2, $f0 -/* 00F48 80971E98 44071000 */ mfc1 $a3, $f2 +/* 00F40 80971E90 C4246CE4 */ lwc1 $f4, %lo(D_80976CE4)($at) +/* 00F44 80971E94 44060000 */ mfc1 $a2, $f0 +/* 00F48 80971E98 44071000 */ mfc1 $a3, $f2 /* 00F4C 80971E9C 24A50050 */ addiu $a1, $a1, 0x0050 ## $a1 = 06000050 -/* 00F50 80971EA0 E7A00010 */ swc1 $f0, 0x0010($sp) -/* 00F54 80971EA4 0C01B225 */ jal func_8006C894 -/* 00F58 80971EA8 E7A40014 */ swc1 $f4, 0x0014($sp) -/* 00F5C 80971EAC 8FA40034 */ lw $a0, 0x0034($sp) -/* 00F60 80971EB0 0C01B231 */ jal func_8006C8C4 +/* 00F50 80971EA0 E7A00010 */ swc1 $f0, 0x0010($sp) +/* 00F54 80971EA4 0C01B225 */ jal SkelCurve_SetAnim +/* 00F58 80971EA8 E7A40014 */ swc1 $f4, 0x0014($sp) +/* 00F5C 80971EAC 8FA40034 */ lw $a0, 0x0034($sp) +/* 00F60 80971EB0 0C01B231 */ jal SkelCurve_Update /* 00F64 80971EB4 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 00F68 80971EB8 8FA40030 */ lw $a0, 0x0030($sp) +/* 00F68 80971EB8 8FA40030 */ lw $a0, 0x0030($sp) /* 00F6C 80971EBC 3C198097 */ lui $t9, %hi(func_80972344) ## $t9 = 80970000 /* 00F70 80971EC0 27392344 */ addiu $t9, $t9, %lo(func_80972344) ## $t9 = 80972344 /* 00F74 80971EC4 AC99019C */ sw $t9, 0x019C($a0) ## 0000019C -/* 00F78 80971EC8 8FA8002C */ lw $t0, 0x002C($sp) +/* 00F78 80971EC8 8FA8002C */ lw $t0, 0x002C($sp) /* 00F7C 80971ECC 24010018 */ addiu $at, $zero, 0x0018 ## $at = 00000018 /* 00F80 80971ED0 3C053DAC */ lui $a1, 0x3DAC ## $a1 = 3DAC0000 -/* 00F84 80971ED4 15010006 */ bne $t0, $at, .L80971EF0 +/* 00F84 80971ED4 15010006 */ bne $t0, $at, .L80971EF0 /* 00F88 80971ED8 00000000 */ nop /* 00F8C 80971EDC 3C053E0F */ lui $a1, 0x3E0F ## $a1 = 3E0F0000 /* 00F90 80971EE0 0C00B58B */ jal Actor_SetScale - + /* 00F94 80971EE4 34A55C29 */ ori $a1, $a1, 0x5C29 ## $a1 = 3E0F5C29 -/* 00F98 80971EE8 10000043 */ beq $zero, $zero, .L80971FF8 -/* 00F9C 80971EEC 8FBF0024 */ lw $ra, 0x0024($sp) +/* 00F98 80971EE8 10000043 */ beq $zero, $zero, .L80971FF8 +/* 00F9C 80971EEC 8FBF0024 */ lw $ra, 0x0024($sp) .L80971EF0: /* 00FA0 80971EF0 0C00B58B */ jal Actor_SetScale - + /* 00FA4 80971EF4 34A50832 */ ori $a1, $a1, 0x0832 ## $a1 = 00000832 -/* 00FA8 80971EF8 1000003F */ beq $zero, $zero, .L80971FF8 -/* 00FAC 80971EFC 8FBF0024 */ lw $ra, 0x0024($sp) +/* 00FA8 80971EF8 1000003F */ beq $zero, $zero, .L80971FF8 +/* 00FAC 80971EFC 8FBF0024 */ lw $ra, 0x0024($sp) .L80971F00: /* 00FB0 80971F00 2463E660 */ addiu $v1, %lo(gSaveContext) /* 00FB4 80971F04 8C621360 */ lw $v0, 0x1360($v1) ## FFFFF9C0 /* 00FB8 80971F08 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005 /* 00FBC 80971F0C 02002025 */ or $a0, $s0, $zero ## $a0 = 0000014C -/* 00FC0 80971F10 1041000B */ beq $v0, $at, .L80971F40 +/* 00FC0 80971F10 1041000B */ beq $v0, $at, .L80971F40 /* 00FC4 80971F14 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000 /* 00FC8 80971F18 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004 -/* 00FCC 80971F1C 50410009 */ beql $v0, $at, .L80971F44 +/* 00FCC 80971F1C 50410009 */ beql $v0, $at, .L80971F44 /* 00FD0 80971F20 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 /* 00FD4 80971F24 8C690000 */ lw $t1, 0x0000($v1) ## FFFFE660 /* 00FD8 80971F28 24010324 */ addiu $at, $zero, 0x0324 ## $at = 00000324 -/* 00FDC 80971F2C 5521001C */ bnel $t1, $at, .L80971FA0 +/* 00FDC 80971F2C 5521001C */ bnel $t1, $at, .L80971FA0 /* 00FE0 80971F30 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 /* 00FE4 80971F34 946A0EEC */ lhu $t2, 0x0EEC($v1) ## FFFFF54C /* 00FE8 80971F38 314B0200 */ andi $t3, $t2, 0x0200 ## $t3 = 00000000 -/* 00FEC 80971F3C 15600017 */ bne $t3, $zero, .L80971F9C +/* 00FEC 80971F3C 15600017 */ bne $t3, $zero, .L80971F9C .L80971F40: /* 00FF0 80971F40 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 .L80971F44: @@ -116,25 +116,25 @@ glabel func_80971DFC /* 00FF8 80971F48 3C01426C */ lui $at, 0x426C ## $at = 426C0000 /* 00FFC 80971F4C 44811000 */ mtc1 $at, $f2 ## $f2 = 59.00 /* 01000 80971F50 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 -/* 01004 80971F54 44060000 */ mfc1 $a2, $f0 -/* 01008 80971F58 44071000 */ mfc1 $a3, $f2 +/* 01004 80971F54 44060000 */ mfc1 $a2, $f0 +/* 01008 80971F58 44071000 */ mfc1 $a3, $f2 /* 0100C 80971F5C 24A50050 */ addiu $a1, $a1, 0x0050 ## $a1 = 06000050 -/* 01010 80971F60 E7A20010 */ swc1 $f2, 0x0010($sp) -/* 01014 80971F64 0C01B225 */ jal func_8006C894 -/* 01018 80971F68 E7A60014 */ swc1 $f6, 0x0014($sp) -/* 0101C 80971F6C 8FA40034 */ lw $a0, 0x0034($sp) -/* 01020 80971F70 0C01B231 */ jal func_8006C8C4 +/* 01010 80971F60 E7A20010 */ swc1 $f2, 0x0010($sp) +/* 01014 80971F64 0C01B225 */ jal SkelCurve_SetAnim +/* 01018 80971F68 E7A60014 */ swc1 $f6, 0x0014($sp) +/* 0101C 80971F6C 8FA40034 */ lw $a0, 0x0034($sp) +/* 01020 80971F70 0C01B231 */ jal SkelCurve_Update /* 01024 80971F74 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 01028 80971F78 8FAD0030 */ lw $t5, 0x0030($sp) +/* 01028 80971F78 8FAD0030 */ lw $t5, 0x0030($sp) /* 0102C 80971F7C 3C0C8097 */ lui $t4, %hi(func_809721D0) ## $t4 = 80970000 /* 01030 80971F80 258C21D0 */ addiu $t4, $t4, %lo(func_809721D0) ## $t4 = 809721D0 /* 01034 80971F84 3C048097 */ lui $a0, %hi(D_80976914) ## $a0 = 80970000 /* 01038 80971F88 24846914 */ addiu $a0, $a0, %lo(D_80976914) ## $a0 = 80976914 /* 0103C 80971F8C 0C00084C */ jal osSyncPrintf - + /* 01040 80971F90 ADAC019C */ sw $t4, 0x019C($t5) ## 0000019C -/* 01044 80971F94 10000018 */ beq $zero, $zero, .L80971FF8 -/* 01048 80971F98 8FBF0024 */ lw $ra, 0x0024($sp) +/* 01044 80971F94 10000018 */ beq $zero, $zero, .L80971FF8 +/* 01048 80971F98 8FBF0024 */ lw $ra, 0x0024($sp) .L80971F9C: /* 0104C 80971F9C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 .L80971FA0: @@ -142,27 +142,27 @@ glabel func_80971DFC /* 01054 80971FA4 3C01426C */ lui $at, 0x426C ## $at = 426C0000 /* 01058 80971FA8 44811000 */ mtc1 $at, $f2 ## $f2 = 59.00 /* 0105C 80971FAC 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000 -/* 01060 80971FB0 44060000 */ mfc1 $a2, $f0 -/* 01064 80971FB4 44071000 */ mfc1 $a3, $f2 +/* 01060 80971FB0 44060000 */ mfc1 $a2, $f0 +/* 01064 80971FB4 44071000 */ mfc1 $a3, $f2 /* 01068 80971FB8 24A50050 */ addiu $a1, $a1, 0x0050 ## $a1 = 06000050 /* 0106C 80971FBC 02002025 */ or $a0, $s0, $zero ## $a0 = 0000014C -/* 01070 80971FC0 E7A00010 */ swc1 $f0, 0x0010($sp) -/* 01074 80971FC4 0C01B225 */ jal func_8006C894 -/* 01078 80971FC8 E7A00014 */ swc1 $f0, 0x0014($sp) -/* 0107C 80971FCC 8FA40034 */ lw $a0, 0x0034($sp) -/* 01080 80971FD0 0C01B231 */ jal func_8006C8C4 +/* 01070 80971FC0 E7A00010 */ swc1 $f0, 0x0010($sp) +/* 01074 80971FC4 0C01B225 */ jal SkelCurve_SetAnim +/* 01078 80971FC8 E7A00014 */ swc1 $f0, 0x0014($sp) +/* 0107C 80971FCC 8FA40034 */ lw $a0, 0x0034($sp) +/* 01080 80971FD0 0C01B231 */ jal SkelCurve_Update /* 01084 80971FD4 02002825 */ or $a1, $s0, $zero ## $a1 = 0000014C -/* 01088 80971FD8 8FB80030 */ lw $t8, 0x0030($sp) +/* 01088 80971FD8 8FB80030 */ lw $t8, 0x0030($sp) /* 0108C 80971FDC 3C0F8097 */ lui $t7, %hi(func_80972008) ## $t7 = 80970000 /* 01090 80971FE0 25EF2008 */ addiu $t7, $t7, %lo(func_80972008) ## $t7 = 80972008 /* 01094 80971FE4 3C048097 */ lui $a0, %hi(D_80976930) ## $a0 = 80970000 /* 01098 80971FE8 24846930 */ addiu $a0, $a0, %lo(D_80976930) ## $a0 = 80976930 /* 0109C 80971FEC 0C00084C */ jal osSyncPrintf - + /* 010A0 80971FF0 AF0F019C */ sw $t7, 0x019C($t8) ## 0000019C -/* 010A4 80971FF4 8FBF0024 */ lw $ra, 0x0024($sp) +/* 010A4 80971FF4 8FBF0024 */ lw $ra, 0x0024($sp) .L80971FF8: -/* 010A8 80971FF8 8FB00020 */ lw $s0, 0x0020($sp) +/* 010A8 80971FF8 8FB00020 */ lw $s0, 0x0020($sp) /* 010AC 80971FFC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 010B0 80972000 03E00008 */ jr $ra +/* 010B0 80972000 03E00008 */ jr $ra /* 010B4 80972004 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972008.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972008.s index 44bea6c809..b57c05b991 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972008.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972008.s @@ -1,32 +1,32 @@ glabel func_80972008 /* 010B8 80972008 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 /* 010BC 8097200C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 010C0 80972010 AFBF001C */ sw $ra, 0x001C($sp) -/* 010C4 80972014 AFA5002C */ sw $a1, 0x002C($sp) +/* 010C0 80972010 AFBF001C */ sw $ra, 0x001C($sp) +/* 010C4 80972014 AFA5002C */ sw $a1, 0x002C($sp) /* 010C8 80972018 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 /* 010CC 8097201C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 010D0 80972020 0C01B129 */ jal Flags_GetEnv -/* 010D4 80972024 AFA60028 */ sw $a2, 0x0028($sp) -/* 010D8 80972028 1040001C */ beq $v0, $zero, .L8097209C -/* 010DC 8097202C 8FA60028 */ lw $a2, 0x0028($sp) +/* 010D0 80972020 0C01B129 */ jal Flags_GetEnv +/* 010D4 80972024 AFA60028 */ sw $a2, 0x0028($sp) +/* 010D8 80972028 1040001C */ beq $v0, $zero, .L8097209C +/* 010DC 8097202C 8FA60028 */ lw $a2, 0x0028($sp) /* 010E0 80972030 84CE018A */ lh $t6, 0x018A($a2) ## 0000018A /* 010E4 80972034 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000 /* 010E8 80972038 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000 -/* 010EC 8097203C 55E00008 */ bnel $t7, $zero, .L80972060 +/* 010EC 8097203C 55E00008 */ bnel $t7, $zero, .L80972060 /* 010F0 80972040 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C -/* 010F4 80972044 0C03CFCF */ jal func_800F3F3C -/* 010F8 80972048 AFA60028 */ sw $a2, 0x0028($sp) -/* 010FC 8097204C 8FA60028 */ lw $a2, 0x0028($sp) +/* 010F4 80972044 0C03CFCF */ jal func_800F3F3C +/* 010F8 80972048 AFA60028 */ sw $a2, 0x0028($sp) +/* 010FC 8097204C 8FA60028 */ lw $a2, 0x0028($sp) /* 01100 80972050 84D8018A */ lh $t8, 0x018A($a2) ## 0000018A /* 01104 80972054 37190002 */ ori $t9, $t8, 0x0002 ## $t9 = 00000002 /* 01108 80972058 A4D9018A */ sh $t9, 0x018A($a2) ## 0000018A /* 0110C 8097205C 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C .L80972060: -/* 01110 80972060 AFA50024 */ sw $a1, 0x0024($sp) -/* 01114 80972064 0C01B231 */ jal func_8006C8C4 -/* 01118 80972068 8FA4002C */ lw $a0, 0x002C($sp) -/* 0111C 8097206C 1040000B */ beq $v0, $zero, .L8097209C -/* 01120 80972070 8FA40024 */ lw $a0, 0x0024($sp) +/* 01110 80972060 AFA50024 */ sw $a1, 0x0024($sp) +/* 01114 80972064 0C01B231 */ jal SkelCurve_Update +/* 01118 80972068 8FA4002C */ lw $a0, 0x002C($sp) +/* 0111C 8097206C 1040000B */ beq $v0, $zero, .L8097209C +/* 01120 80972070 8FA40024 */ lw $a0, 0x0024($sp) /* 01124 80972074 3C01426C */ lui $at, 0x426C ## $at = 426C0000 /* 01128 80972078 44812000 */ mtc1 $at, $f4 ## $f4 = 59.00 /* 0112C 8097207C 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 @@ -34,11 +34,11 @@ glabel func_80972008 /* 01134 80972084 24A50050 */ addiu $a1, $a1, 0x0050 ## $a1 = 06000050 /* 01138 80972088 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000 /* 0113C 8097208C 3C074270 */ lui $a3, 0x4270 ## $a3 = 42700000 -/* 01140 80972090 E7A40010 */ swc1 $f4, 0x0010($sp) -/* 01144 80972094 0C01B225 */ jal func_8006C894 -/* 01148 80972098 E7A60014 */ swc1 $f6, 0x0014($sp) +/* 01140 80972090 E7A40010 */ swc1 $f4, 0x0010($sp) +/* 01144 80972094 0C01B225 */ jal SkelCurve_SetAnim +/* 01148 80972098 E7A60014 */ swc1 $f6, 0x0014($sp) .L8097209C: -/* 0114C 8097209C 8FBF001C */ lw $ra, 0x001C($sp) +/* 0114C 8097209C 8FBF001C */ lw $ra, 0x001C($sp) /* 01150 809720A0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 01154 809720A4 03E00008 */ jr $ra +/* 01154 809720A4 03E00008 */ jr $ra /* 01158 809720A8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972344.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972344.s index 45e2873b72..47b6733015 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972344.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80972344.s @@ -1,17 +1,17 @@ glabel func_80972344 /* 013F4 80972344 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 -/* 013F8 80972348 AFBF001C */ sw $ra, 0x001C($sp) -/* 013FC 8097234C AFA5002C */ sw $a1, 0x002C($sp) -/* 01400 80972350 AFA40028 */ sw $a0, 0x0028($sp) -/* 01404 80972354 0C00BE52 */ jal func_8002F948 +/* 013F8 80972348 AFBF001C */ sw $ra, 0x001C($sp) +/* 013FC 8097234C AFA5002C */ sw $a1, 0x002C($sp) +/* 01400 80972350 AFA40028 */ sw $a0, 0x0028($sp) +/* 01404 80972354 0C00BE52 */ jal func_8002F948 /* 01408 80972358 2405209D */ addiu $a1, $zero, 0x209D ## $a1 = 0000209D -/* 0140C 8097235C 8FA50028 */ lw $a1, 0x0028($sp) -/* 01410 80972360 8FA4002C */ lw $a0, 0x002C($sp) +/* 0140C 8097235C 8FA50028 */ lw $a1, 0x0028($sp) +/* 01410 80972360 8FA4002C */ lw $a0, 0x002C($sp) /* 01414 80972364 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C -/* 01418 80972368 0C01B231 */ jal func_8006C8C4 -/* 0141C 8097236C AFA50024 */ sw $a1, 0x0024($sp) -/* 01420 80972370 10400010 */ beq $v0, $zero, .L809723B4 -/* 01424 80972374 8FA40024 */ lw $a0, 0x0024($sp) +/* 01418 80972368 0C01B231 */ jal SkelCurve_Update +/* 0141C 8097236C AFA50024 */ sw $a1, 0x0024($sp) +/* 01420 80972370 10400010 */ beq $v0, $zero, .L809723B4 +/* 01424 80972374 8FA40024 */ lw $a0, 0x0024($sp) /* 01428 80972378 3C01426C */ lui $at, 0x426C ## $at = 426C0000 /* 0142C 8097237C 44812000 */ mtc1 $at, $f4 ## $f4 = 59.00 /* 01430 80972380 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 @@ -19,16 +19,16 @@ glabel func_80972344 /* 01438 80972388 24A50050 */ addiu $a1, $a1, 0x0050 ## $a1 = 06000050 /* 0143C 8097238C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000 /* 01440 80972390 3C074270 */ lui $a3, 0x4270 ## $a3 = 42700000 -/* 01444 80972394 E7A40010 */ swc1 $f4, 0x0010($sp) -/* 01448 80972398 0C01B225 */ jal func_8006C894 -/* 0144C 8097239C E7A60014 */ swc1 $f6, 0x0014($sp) -/* 01450 809723A0 8FA20028 */ lw $v0, 0x0028($sp) +/* 01444 80972394 E7A40010 */ swc1 $f4, 0x0010($sp) +/* 01448 80972398 0C01B225 */ jal SkelCurve_SetAnim +/* 0144C 8097239C E7A60014 */ swc1 $f6, 0x0014($sp) +/* 01450 809723A0 8FA20028 */ lw $v0, 0x0028($sp) /* 01454 809723A4 3C0E8097 */ lui $t6, %hi(func_80972288) ## $t6 = 80970000 /* 01458 809723A8 25CE2288 */ addiu $t6, $t6, %lo(func_80972288) ## $t6 = 80972288 /* 0145C 809723AC AC4E019C */ sw $t6, 0x019C($v0) ## 0000019C /* 01460 809723B0 A4400188 */ sh $zero, 0x0188($v0) ## 00000188 .L809723B4: -/* 01464 809723B4 8FBF001C */ lw $ra, 0x001C($sp) +/* 01464 809723B4 8FBF001C */ lw $ra, 0x001C($sp) /* 01468 809723B8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 0146C 809723BC 03E00008 */ jr $ra +/* 0146C 809723BC 03E00008 */ jr $ra /* 01470 809723C0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80976404.s b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80976404.s index 0cfda704c2..f873b7b18d 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80976404.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Effect/func_80976404.s @@ -10,66 +10,66 @@ glabel D_80976C44 .text glabel func_80976404 /* 054B4 80976404 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 054B8 80976408 AFBF002C */ sw $ra, 0x002C($sp) -/* 054BC 8097640C AFB00028 */ sw $s0, 0x0028($sp) -/* 054C0 80976410 AFA40058 */ sw $a0, 0x0058($sp) -/* 054C4 80976414 AFA5005C */ sw $a1, 0x005C($sp) +/* 054B8 80976408 AFBF002C */ sw $ra, 0x002C($sp) +/* 054BC 8097640C AFB00028 */ sw $s0, 0x0028($sp) +/* 054C0 80976410 AFA40058 */ sw $a0, 0x0058($sp) +/* 054C4 80976414 AFA5005C */ sw $a1, 0x005C($sp) /* 054C8 80976418 8482001C */ lh $v0, 0x001C($a0) ## 0000001C /* 054CC 8097641C 24010018 */ addiu $at, $zero, 0x0018 ## $at = 00000018 /* 054D0 80976420 8CB00000 */ lw $s0, 0x0000($a1) ## 00000000 /* 054D4 80976424 304200FF */ andi $v0, $v0, 0x00FF ## $v0 = 00000000 -/* 054D8 80976428 1041000F */ beq $v0, $at, .L80976468 +/* 054D8 80976428 1041000F */ beq $v0, $at, .L80976468 /* 054DC 8097642C 24010019 */ addiu $at, $zero, 0x0019 ## $at = 00000019 -/* 054E0 80976430 1041000D */ beq $v0, $at, .L80976468 +/* 054E0 80976430 1041000D */ beq $v0, $at, .L80976468 /* 054E4 80976434 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 054E8 80976438 0C01B129 */ jal Flags_GetEnv +/* 054E8 80976438 0C01B129 */ jal Flags_GetEnv /* 054EC 8097643C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001 -/* 054F0 80976440 14400009 */ bne $v0, $zero, .L80976468 +/* 054F0 80976440 14400009 */ bne $v0, $zero, .L80976468 /* 054F4 80976444 3C028016 */ lui $v0, %hi(gSaveContext) /* 054F8 80976448 2442E660 */ addiu $v0, %lo(gSaveContext) /* 054FC 8097644C 8C581360 */ lw $t8, 0x1360($v0) ## 8015F9C0 -/* 05500 80976450 2B010004 */ slti $at, $t8, 0x0004 -/* 05504 80976454 10200004 */ beq $at, $zero, .L80976468 +/* 05500 80976450 2B010004 */ slti $at, $t8, 0x0004 +/* 05504 80976454 10200004 */ beq $at, $zero, .L80976468 /* 05508 80976458 00000000 */ nop /* 0550C 8097645C 8C590000 */ lw $t9, 0x0000($v0) ## 8015E660 /* 05510 80976460 24010324 */ addiu $at, $zero, 0x0324 ## $at = 00000324 -/* 05514 80976464 17210020 */ bne $t9, $at, .L809764E8 +/* 05514 80976464 17210020 */ bne $t9, $at, .L809764E8 .L80976468: /* 05518 80976468 3C068097 */ lui $a2, %hi(D_80976C30) ## $a2 = 80970000 /* 0551C 8097646C 24C66C30 */ addiu $a2, $a2, %lo(D_80976C30) ## $a2 = 80976C30 /* 05520 80976470 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE0 /* 05524 80976474 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 05528 80976478 0C031AB1 */ jal Graph_OpenDisps +/* 05528 80976478 0C031AB1 */ jal Graph_OpenDisps /* 0552C 8097647C 24070C81 */ addiu $a3, $zero, 0x0C81 ## $a3 = 00000C81 /* 05530 80976480 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0 -/* 05534 80976484 0C024DDD */ jal Gfx_CallSetupDL +/* 05534 80976484 0C024DDD */ jal Gfx_CallSetupDL /* 05538 80976488 24050019 */ addiu $a1, $zero, 0x0019 ## $a1 = 00000019 /* 0553C 8097648C 3C014000 */ lui $at, 0x4000 ## $at = 40000000 /* 05540 80976490 44816000 */ mtc1 $at, $f12 ## $f12 = 2.00 /* 05544 80976494 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0 /* 05548 80976498 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 0554C 8097649C 44066000 */ mfc1 $a2, $f12 -/* 05550 809764A0 0C0342A3 */ jal Matrix_Scale -/* 05554 809764A4 46006386 */ mov.s $f14, $f12 -/* 05558 809764A8 8FA40058 */ lw $a0, 0x0058($sp) +/* 0554C 8097649C 44066000 */ mfc1 $a2, $f12 +/* 05550 809764A0 0C0342A3 */ jal Matrix_Scale +/* 05554 809764A4 46006386 */ mov.s $f14, $f12 +/* 05558 809764A8 8FA40058 */ lw $a0, 0x0058($sp) /* 0555C 809764AC 3C078097 */ lui $a3, %hi(func_80976254) ## $a3 = 80970000 /* 05560 809764B0 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 05564 809764B4 AFA80014 */ sw $t0, 0x0014($sp) +/* 05564 809764B4 AFA80014 */ sw $t0, 0x0014($sp) /* 05568 809764B8 24E76254 */ addiu $a3, $a3, %lo(func_80976254) ## $a3 = 80976254 -/* 0556C 809764BC 8FA5005C */ lw $a1, 0x005C($sp) -/* 05570 809764C0 AFA00010 */ sw $zero, 0x0010($sp) +/* 0556C 809764BC 8FA5005C */ lw $a1, 0x005C($sp) +/* 05570 809764C0 AFA00010 */ sw $zero, 0x0010($sp) /* 05574 809764C4 2486014C */ addiu $a2, $a0, 0x014C ## $a2 = 0000014C -/* 05578 809764C8 0C01B3DB */ jal func_8006CF6C -/* 0557C 809764CC AFA40018 */ sw $a0, 0x0018($sp) +/* 05578 809764C8 0C01B3DB */ jal SkelCurve_Draw +/* 0557C 809764CC AFA40018 */ sw $a0, 0x0018($sp) /* 05580 809764D0 3C068097 */ lui $a2, %hi(D_80976C44) ## $a2 = 80970000 /* 05584 809764D4 24C66C44 */ addiu $a2, $a2, %lo(D_80976C44) ## $a2 = 80976C44 /* 05588 809764D8 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE0 /* 0558C 809764DC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 05590 809764E0 0C031AD5 */ jal Graph_CloseDisps +/* 05590 809764E0 0C031AD5 */ jal Graph_CloseDisps /* 05594 809764E4 24070C90 */ addiu $a3, $zero, 0x0C90 ## $a3 = 00000C90 .L809764E8: -/* 05598 809764E8 8FBF002C */ lw $ra, 0x002C($sp) -/* 0559C 809764EC 8FB00028 */ lw $s0, 0x0028($sp) +/* 05598 809764E8 8FBF002C */ lw $ra, 0x002C($sp) +/* 0559C 809764EC 8FB00028 */ lw $s0, 0x0028($sp) /* 055A0 809764F0 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 055A4 809764F4 03E00008 */ jr $ra +/* 055A4 809764F4 03E00008 */ jr $ra /* 055A8 809764F8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Destroy.s index 24d7eae14b..c1ca375c37 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Destroy.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Destroy.s @@ -1,11 +1,11 @@ glabel DemoTreLgt_Destroy /* 0006C 8099372C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 /* 00070 80993730 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00074 80993734 AFBF0014 */ sw $ra, 0x0014($sp) +/* 00074 80993734 AFBF0014 */ sw $ra, 0x0014($sp) /* 00078 80993738 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 0007C 8099373C 0C01B217 */ jal func_8006C85C +/* 0007C 8099373C 0C01B217 */ jal SkelCurve_Destroy /* 00080 80993740 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C -/* 00084 80993744 8FBF0014 */ lw $ra, 0x0014($sp) +/* 00084 80993744 8FBF0014 */ lw $ra, 0x0014($sp) /* 00088 80993748 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0008C 8099374C 03E00008 */ jr $ra +/* 0008C 8099374C 03E00008 */ jr $ra /* 00090 80993750 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Draw.s b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Draw.s index e35c12af32..30d1f31ffb 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Draw.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Draw.s @@ -1,25 +1,25 @@ glabel DemoTreLgt_Draw /* 005F0 80993CB0 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 005F4 80993CB4 AFBF002C */ sw $ra, 0x002C($sp) -/* 005F8 80993CB8 AFB00028 */ sw $s0, 0x0028($sp) -/* 005FC 80993CBC AFA40058 */ sw $a0, 0x0058($sp) -/* 00600 80993CC0 AFA5005C */ sw $a1, 0x005C($sp) +/* 005F4 80993CB4 AFBF002C */ sw $ra, 0x002C($sp) +/* 005F8 80993CB8 AFB00028 */ sw $s0, 0x0028($sp) +/* 005FC 80993CBC AFA40058 */ sw $a0, 0x0058($sp) +/* 00600 80993CC0 AFA5005C */ sw $a1, 0x005C($sp) /* 00604 80993CC4 8CB00000 */ lw $s0, 0x0000($a1) ## 00000000 /* 00608 80993CC8 3C068099 */ lui $a2, %hi(D_80993E2C) ## $a2 = 80990000 /* 0060C 80993CCC 24C63E2C */ addiu $a2, $a2, %lo(D_80993E2C) ## $a2 = 80993E2C /* 00610 80993CD0 27A4003C */ addiu $a0, $sp, 0x003C ## $a0 = FFFFFFE4 /* 00614 80993CD4 240701CD */ addiu $a3, $zero, 0x01CD ## $a3 = 000001CD -/* 00618 80993CD8 0C031AB1 */ jal Graph_OpenDisps +/* 00618 80993CD8 0C031AB1 */ jal Graph_OpenDisps /* 0061C 80993CDC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00620 80993CE0 8FAF0058 */ lw $t7, 0x0058($sp) +/* 00620 80993CE0 8FAF0058 */ lw $t7, 0x0058($sp) /* 00624 80993CE4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 /* 00628 80993CE8 8DF8016C */ lw $t8, 0x016C($t7) ## 0000016C -/* 0062C 80993CEC 5701001B */ bnel $t8, $at, .L80993D5C -/* 00630 80993CF0 8FBF002C */ lw $ra, 0x002C($sp) -/* 00634 80993CF4 0C024F61 */ jal func_80093D84 +/* 0062C 80993CEC 5701001B */ bnel $t8, $at, .L80993D5C +/* 00630 80993CF0 8FBF002C */ lw $ra, 0x002C($sp) +/* 00634 80993CF4 0C024F61 */ jal func_80093D84 /* 00638 80993CF8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 0063C 80993CFC 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0 -/* 00640 80993D00 8FA40058 */ lw $a0, 0x0058($sp) +/* 00640 80993D00 8FA40058 */ lw $a0, 0x0058($sp) /* 00644 80993D04 3C08FB00 */ lui $t0, 0xFB00 ## $t0 = FB000000 /* 00648 80993D08 24790008 */ addiu $t9, $v1, 0x0008 ## $t9 = 00000008 /* 0064C 80993D0C AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0 @@ -28,23 +28,23 @@ glabel DemoTreLgt_Draw /* 00658 80993D18 AC680000 */ sw $t0, 0x0000($v1) ## 00000000 /* 0065C 80993D1C 3C078099 */ lui $a3, %hi(func_80993B2C) ## $a3 = 80990000 /* 00660 80993D20 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001 -/* 00664 80993D24 AFAA0014 */ sw $t2, 0x0014($sp) +/* 00664 80993D24 AFAA0014 */ sw $t2, 0x0014($sp) /* 00668 80993D28 24E73B2C */ addiu $a3, $a3, %lo(func_80993B2C) ## $a3 = 80993B2C -/* 0066C 80993D2C AFA00010 */ sw $zero, 0x0010($sp) -/* 00670 80993D30 8FA5005C */ lw $a1, 0x005C($sp) -/* 00674 80993D34 AFA40018 */ sw $a0, 0x0018($sp) -/* 00678 80993D38 0C01B3DB */ jal func_8006CF6C +/* 0066C 80993D2C AFA00010 */ sw $zero, 0x0010($sp) +/* 00670 80993D30 8FA5005C */ lw $a1, 0x005C($sp) +/* 00674 80993D34 AFA40018 */ sw $a0, 0x0018($sp) +/* 00678 80993D38 0C01B3DB */ jal SkelCurve_Draw /* 0067C 80993D3C 2486014C */ addiu $a2, $a0, 0x014C ## $a2 = 0000014C /* 00680 80993D40 3C068099 */ lui $a2, %hi(D_80993E40) ## $a2 = 80990000 /* 00684 80993D44 24C63E40 */ addiu $a2, $a2, %lo(D_80993E40) ## $a2 = 80993E40 /* 00688 80993D48 27A4003C */ addiu $a0, $sp, 0x003C ## $a0 = FFFFFFE4 /* 0068C 80993D4C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 00690 80993D50 0C031AD5 */ jal Graph_CloseDisps +/* 00690 80993D50 0C031AD5 */ jal Graph_CloseDisps /* 00694 80993D54 240701DC */ addiu $a3, $zero, 0x01DC ## $a3 = 000001DC -/* 00698 80993D58 8FBF002C */ lw $ra, 0x002C($sp) +/* 00698 80993D58 8FBF002C */ lw $ra, 0x002C($sp) .L80993D5C: -/* 0069C 80993D5C 8FB00028 */ lw $s0, 0x0028($sp) +/* 0069C 80993D5C 8FB00028 */ lw $s0, 0x0028($sp) /* 006A0 80993D60 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 006A4 80993D64 03E00008 */ jr $ra +/* 006A4 80993D64 03E00008 */ jr $ra /* 006A8 80993D68 00000000 */ nop /* 006AC 80993D6C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Init.s b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Init.s index 57551ddcde..923145b315 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Init.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/DemoTreLgt_Init.s @@ -1,30 +1,30 @@ glabel DemoTreLgt_Init /* 00000 809936C0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00004 809936C4 AFB00018 */ sw $s0, 0x0018($sp) +/* 00004 809936C4 AFB00018 */ sw $s0, 0x0018($sp) /* 00008 809936C8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 0000C 809936CC AFBF001C */ sw $ra, 0x001C($sp) -/* 00010 809936D0 AFA50024 */ sw $a1, 0x0024($sp) +/* 0000C 809936CC AFBF001C */ sw $ra, 0x001C($sp) +/* 00010 809936D0 AFA50024 */ sw $a1, 0x0024($sp) /* 00014 809936D4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 /* 00018 809936D8 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000 /* 0001C 809936DC 3C078099 */ lui $a3, %hi(D_80993DB0) ## $a3 = 80990000 -/* 00020 809936E0 8CE73DB0 */ lw $a3, %lo(D_80993DB0)($a3) +/* 00020 809936E0 8CE73DB0 */ lw $a3, %lo(D_80993DB0)($a3) /* 00024 809936E4 24C65EB8 */ addiu $a2, $a2, 0x5EB8 ## $a2 = 06005EB8 -/* 00028 809936E8 0C01B1DE */ jal func_8006C778 +/* 00028 809936E8 0C01B1DE */ jal SkelCurve_Init /* 0002C 809936EC 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C -/* 00030 809936F0 14400003 */ bne $v0, $zero, .L80993700 +/* 00030 809936F0 14400003 */ bne $v0, $zero, .L80993700 /* 00034 809936F4 3C048099 */ lui $a0, %hi(D_80993DC0) ## $a0 = 80990000 /* 00038 809936F8 0C00084C */ jal osSyncPrintf - + /* 0003C 809936FC 24843DC0 */ addiu $a0, $a0, %lo(D_80993DC0) ## $a0 = 80993DC0 .L80993700: /* 00040 80993700 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF /* 00044 80993704 AE020170 */ sw $v0, 0x0170($s0) ## 00000170 /* 00048 80993708 AE020174 */ sw $v0, 0x0174($s0) ## 00000174 /* 0004C 8099370C A2000178 */ sb $zero, 0x0178($s0) ## 00000178 -/* 00050 80993710 0C264DD5 */ jal func_80993754 +/* 00050 80993710 0C264DD5 */ jal func_80993754 /* 00054 80993714 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00058 80993718 8FBF001C */ lw $ra, 0x001C($sp) -/* 0005C 8099371C 8FB00018 */ lw $s0, 0x0018($sp) +/* 00058 80993718 8FBF001C */ lw $ra, 0x001C($sp) +/* 0005C 8099371C 8FB00018 */ lw $s0, 0x0018($sp) /* 00060 80993720 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00064 80993724 03E00008 */ jr $ra +/* 00064 80993724 03E00008 */ jr $ra /* 00068 80993728 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_809937B4.s b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_809937B4.s index d89f71e90c..b3ff684966 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_809937B4.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_809937B4.s @@ -1,38 +1,38 @@ glabel func_809937B4 /* 000F4 809937B4 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 000F8 809937B8 AFBF001C */ sw $ra, 0x001C($sp) -/* 000FC 809937BC AFA40030 */ sw $a0, 0x0030($sp) -/* 00100 809937C0 AFA50034 */ sw $a1, 0x0034($sp) +/* 000F8 809937B8 AFBF001C */ sw $ra, 0x001C($sp) +/* 000FC 809937BC AFA40030 */ sw $a0, 0x0030($sp) +/* 00100 809937C0 AFA50034 */ sw $a1, 0x0034($sp) /* 00104 809937C4 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 /* 00108 809937C8 AC8E016C */ sw $t6, 0x016C($a0) ## 0000016C /* 0010C 809937CC 3C028016 */ lui $v0, %hi(gSaveContext+4) /* 00110 809937D0 8C42E664 */ lw $v0, %lo(gSaveContext+4)($v0) /* 00114 809937D4 3C088099 */ lui $t0, %hi(D_80993D70) ## $t0 = 80990000 /* 00118 809937D8 25083D70 */ addiu $t0, $t0, %lo(D_80993D70) ## $t0 = 80993D70 -/* 0011C 809937DC 0002C900 */ sll $t9, $v0, 4 -/* 00120 809937E0 03281821 */ addu $v1, $t9, $t0 +/* 0011C 809937DC 0002C900 */ sll $t9, $v0, 4 +/* 00120 809937E0 03281821 */ addu $v1, $t9, $t0 /* 00124 809937E4 C4640008 */ lwc1 $f4, 0x0008($v1) ## 00000008 /* 00128 809937E8 C4660004 */ lwc1 $f6, 0x0004($v1) ## 00000004 /* 0012C 809937EC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 /* 00130 809937F0 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00 -/* 00134 809937F4 46062200 */ add.s $f8, $f4, $f6 -/* 00138 809937F8 8FA40030 */ lw $a0, 0x0030($sp) +/* 00134 809937F4 46062200 */ add.s $f8, $f4, $f6 +/* 00138 809937F8 8FA40030 */ lw $a0, 0x0030($sp) /* 0013C 809937FC 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00 /* 00140 80993800 3C058099 */ lui $a1, %hi(D_80993DB0) ## $a1 = 80990000 -/* 00144 80993804 0002C080 */ sll $t8, $v0, 2 -/* 00148 80993808 00B82821 */ addu $a1, $a1, $t8 -/* 0014C 8099380C 44074000 */ mfc1 $a3, $f8 -/* 00150 80993810 44060000 */ mfc1 $a2, $f0 +/* 00144 80993804 0002C080 */ sll $t8, $v0, 2 +/* 00148 80993808 00B82821 */ addu $a1, $a1, $t8 +/* 0014C 8099380C 44074000 */ mfc1 $a3, $f8 +/* 00150 80993810 44060000 */ mfc1 $a2, $f0 /* 00154 80993814 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C -/* 00158 80993818 AFA40020 */ sw $a0, 0x0020($sp) -/* 0015C 8099381C 8CA53DB0 */ lw $a1, %lo(D_80993DB0)($a1) -/* 00160 80993820 E7A00014 */ swc1 $f0, 0x0014($sp) -/* 00164 80993824 0C01B225 */ jal func_8006C894 -/* 00168 80993828 E7AC0010 */ swc1 $f12, 0x0010($sp) -/* 0016C 8099382C 8FA40034 */ lw $a0, 0x0034($sp) -/* 00170 80993830 0C01B231 */ jal func_8006C8C4 -/* 00174 80993834 8FA50020 */ lw $a1, 0x0020($sp) -/* 00178 80993838 8FBF001C */ lw $ra, 0x001C($sp) +/* 00158 80993818 AFA40020 */ sw $a0, 0x0020($sp) +/* 0015C 8099381C 8CA53DB0 */ lw $a1, %lo(D_80993DB0)($a1) +/* 00160 80993820 E7A00014 */ swc1 $f0, 0x0014($sp) +/* 00164 80993824 0C01B225 */ jal SkelCurve_SetAnim +/* 00168 80993828 E7AC0010 */ swc1 $f12, 0x0010($sp) +/* 0016C 8099382C 8FA40034 */ lw $a0, 0x0034($sp) +/* 00170 80993830 0C01B231 */ jal SkelCurve_Update +/* 00174 80993834 8FA50020 */ lw $a1, 0x0020($sp) +/* 00178 80993838 8FBF001C */ lw $ra, 0x001C($sp) /* 0017C 8099383C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 -/* 00180 80993840 03E00008 */ jr $ra +/* 00180 80993840 03E00008 */ jr $ra /* 00184 80993844 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_80993848.s b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_80993848.s index 5583b5f75d..2abe0eae5c 100644 --- a/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_80993848.s +++ b/asm/non_matchings/overlays/actors/ovl_Demo_Tre_Lgt/func_80993848.s @@ -5,76 +5,76 @@ glabel func_80993848 /* 00194 80993854 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8 /* 00198 80993858 3C068099 */ lui $a2, %hi(D_80993D70) ## $a2 = 80990000 /* 0019C 8099385C 24C63D70 */ addiu $a2, $a2, %lo(D_80993D70) ## $a2 = 80993D70 -/* 001A0 80993860 00037100 */ sll $t6, $v1, 4 -/* 001A4 80993864 AFBF0024 */ sw $ra, 0x0024($sp) -/* 001A8 80993868 AFB00020 */ sw $s0, 0x0020($sp) -/* 001AC 8099386C AFA5002C */ sw $a1, 0x002C($sp) -/* 001B0 80993870 00CE7821 */ addu $t7, $a2, $t6 +/* 001A0 80993860 00037100 */ sll $t6, $v1, 4 +/* 001A4 80993864 AFBF0024 */ sw $ra, 0x0024($sp) +/* 001A8 80993868 AFB00020 */ sw $s0, 0x0020($sp) +/* 001AC 8099386C AFA5002C */ sw $a1, 0x002C($sp) +/* 001B0 80993870 00CE7821 */ addu $t7, $a2, $t6 /* 001B4 80993874 C4800164 */ lwc1 $f0, 0x0164($a0) ## 00000164 /* 001B8 80993878 C5E40004 */ lwc1 $f4, 0x0004($t7) ## 00000004 -/* 001BC 8099387C 0003C900 */ sll $t9, $v1, 4 +/* 001BC 8099387C 0003C900 */ sll $t9, $v1, 4 /* 001C0 80993880 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 001C4 80993884 4604003C */ c.lt.s $f0, $f4 +/* 001C4 80993884 4604003C */ c.lt.s $f0, $f4 /* 001C8 80993888 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF /* 001CC 8099388C 3C01437F */ lui $at, 0x437F ## $at = 437F0000 -/* 001D0 80993890 00D91021 */ addu $v0, $a2, $t9 -/* 001D4 80993894 45000004 */ bc1f .L809938A8 +/* 001D0 80993890 00D91021 */ addu $v0, $a2, $t9 +/* 001D4 80993894 45000004 */ bc1f .L809938A8 /* 001D8 80993898 240C00FF */ addiu $t4, $zero, 0x00FF ## $t4 = 000000FF /* 001DC 8099389C 44817000 */ mtc1 $at, $f14 ## $f14 = 255.00 -/* 001E0 809938A0 10000034 */ beq $zero, $zero, .L80993974 +/* 001E0 809938A0 10000034 */ beq $zero, $zero, .L80993974 /* 001E4 809938A4 AC980170 */ sw $t8, 0x0170($a0) ## 00000170 .L809938A8: /* 001E8 809938A8 C4420008 */ lwc1 $f2, 0x0008($v0) ## 00000008 /* 001EC 809938AC C44C0004 */ lwc1 $f12, 0x0004($v0) ## 00000004 /* 001F0 809938B0 3C01437F */ lui $at, 0x437F ## $at = 437F0000 -/* 001F4 809938B4 460C1180 */ add.s $f6, $f2, $f12 -/* 001F8 809938B8 4606003E */ c.le.s $f0, $f6 +/* 001F4 809938B4 460C1180 */ add.s $f6, $f2, $f12 +/* 001F8 809938B8 4606003E */ c.le.s $f0, $f6 /* 001FC 809938BC 00000000 */ nop -/* 00200 809938C0 4502002B */ bc1fl .L80993970 +/* 00200 809938C0 4502002B */ bc1fl .L80993970 /* 00204 809938C4 44817000 */ mtc1 $at, $f14 ## $f14 = 255.00 -/* 00208 809938C8 46006201 */ sub.s $f8, $f12, $f0 +/* 00208 809938C8 46006201 */ sub.s $f8, $f12, $f0 /* 0020C 809938CC 3C01437F */ lui $at, 0x437F ## $at = 437F0000 /* 00210 809938D0 44817000 */ mtc1 $at, $f14 ## $f14 = 255.00 /* 00214 809938D4 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 00218 809938D8 46024283 */ div.s $f10, $f8, $f2 +/* 00218 809938D8 46024283 */ div.s $f10, $f8, $f2 /* 0021C 809938DC 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00220 809938E0 460E5402 */ mul.s $f16, $f10, $f14 -/* 00224 809938E4 460E8480 */ add.s $f18, $f16, $f14 +/* 00220 809938E0 460E5402 */ mul.s $f16, $f10, $f14 +/* 00224 809938E4 460E8480 */ add.s $f18, $f16, $f14 /* 00228 809938E8 4448F800 */ cfc1 $t0, $31 /* 0022C 809938EC 44C9F800 */ ctc1 $t1, $31 /* 00230 809938F0 00000000 */ nop -/* 00234 809938F4 46009124 */ cvt.w.s $f4, $f18 +/* 00234 809938F4 46009124 */ cvt.w.s $f4, $f18 /* 00238 809938F8 4449F800 */ cfc1 $t1, $31 /* 0023C 809938FC 00000000 */ nop /* 00240 80993900 31290078 */ andi $t1, $t1, 0x0078 ## $t1 = 00000000 -/* 00244 80993904 51200013 */ beql $t1, $zero, .L80993954 -/* 00248 80993908 44092000 */ mfc1 $t1, $f4 +/* 00244 80993904 51200013 */ beql $t1, $zero, .L80993954 +/* 00248 80993908 44092000 */ mfc1 $t1, $f4 /* 0024C 8099390C 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00 /* 00250 80993910 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001 -/* 00254 80993914 46049101 */ sub.s $f4, $f18, $f4 +/* 00254 80993914 46049101 */ sub.s $f4, $f18, $f4 /* 00258 80993918 44C9F800 */ ctc1 $t1, $31 /* 0025C 8099391C 00000000 */ nop -/* 00260 80993920 46002124 */ cvt.w.s $f4, $f4 +/* 00260 80993920 46002124 */ cvt.w.s $f4, $f4 /* 00264 80993924 4449F800 */ cfc1 $t1, $31 /* 00268 80993928 00000000 */ nop /* 0026C 8099392C 31290078 */ andi $t1, $t1, 0x0078 ## $t1 = 00000000 -/* 00270 80993930 15200005 */ bne $t1, $zero, .L80993948 +/* 00270 80993930 15200005 */ bne $t1, $zero, .L80993948 /* 00274 80993934 00000000 */ nop -/* 00278 80993938 44092000 */ mfc1 $t1, $f4 +/* 00278 80993938 44092000 */ mfc1 $t1, $f4 /* 0027C 8099393C 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00280 80993940 10000007 */ beq $zero, $zero, .L80993960 +/* 00280 80993940 10000007 */ beq $zero, $zero, .L80993960 /* 00284 80993944 01214825 */ or $t1, $t1, $at ## $t1 = 80000000 .L80993948: -/* 00288 80993948 10000005 */ beq $zero, $zero, .L80993960 +/* 00288 80993948 10000005 */ beq $zero, $zero, .L80993960 /* 0028C 8099394C 2409FFFF */ addiu $t1, $zero, 0xFFFF ## $t1 = FFFFFFFF -/* 00290 80993950 44092000 */ mfc1 $t1, $f4 +/* 00290 80993950 44092000 */ mfc1 $t1, $f4 .L80993954: /* 00294 80993954 00000000 */ nop -/* 00298 80993958 0520FFFB */ bltz $t1, .L80993948 +/* 00298 80993958 0520FFFB */ bltz $t1, .L80993948 /* 0029C 8099395C 00000000 */ nop .L80993960: /* 002A0 80993960 44C8F800 */ ctc1 $t0, $31 -/* 002A4 80993964 10000003 */ beq $zero, $zero, .L80993974 +/* 002A4 80993964 10000003 */ beq $zero, $zero, .L80993974 /* 002A8 80993968 AE090170 */ sw $t1, 0x0170($s0) ## 00000170 /* 002AC 8099396C 44817000 */ mtc1 $at, $f14 ## $f14 = -0.00 .L80993970: @@ -82,108 +82,108 @@ glabel func_80993848 .L80993974: /* 002B4 80993974 8CE20004 */ lw $v0, 0x0004($a3) ## 8015E664 /* 002B8 80993978 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 002BC 8099397C 00025100 */ sll $t2, $v0, 4 -/* 002C0 80993980 00CA5821 */ addu $t3, $a2, $t2 +/* 002BC 8099397C 00025100 */ sll $t2, $v0, 4 +/* 002C0 80993980 00CA5821 */ addu $t3, $a2, $t2 /* 002C4 80993984 C566000C */ lwc1 $f6, 0x000C($t3) ## 0000000C -/* 002C8 80993988 00026900 */ sll $t5, $v0, 4 -/* 002CC 8099398C 00CD7021 */ addu $t6, $a2, $t5 -/* 002D0 80993990 4606003C */ c.lt.s $f0, $f6 +/* 002C8 80993988 00026900 */ sll $t5, $v0, 4 +/* 002CC 8099398C 00CD7021 */ addu $t6, $a2, $t5 +/* 002D0 80993990 4606003C */ c.lt.s $f0, $f6 /* 002D4 80993994 00000000 */ nop -/* 002D8 80993998 45020004 */ bc1fl .L809939AC +/* 002D8 80993998 45020004 */ bc1fl .L809939AC /* 002DC 8099399C 44811000 */ mtc1 $at, $f2 ## $f2 = 10.00 -/* 002E0 809939A0 10000033 */ beq $zero, $zero, .L80993A70 +/* 002E0 809939A0 10000033 */ beq $zero, $zero, .L80993A70 /* 002E4 809939A4 AE0C0174 */ sw $t4, 0x0174($s0) ## 00000174 /* 002E8 809939A8 44811000 */ mtc1 $at, $f2 ## $f2 = 10.00 .L809939AC: /* 002EC 809939AC C5C8000C */ lwc1 $f8, 0x000C($t6) ## 0000000C -/* 002F0 809939B0 00027900 */ sll $t7, $v0, 4 -/* 002F4 809939B4 00CFC021 */ addu $t8, $a2, $t7 -/* 002F8 809939B8 46024280 */ add.s $f10, $f8, $f2 -/* 002FC 809939BC 460A003C */ c.lt.s $f0, $f10 +/* 002F0 809939B0 00027900 */ sll $t7, $v0, 4 +/* 002F4 809939B4 00CFC021 */ addu $t8, $a2, $t7 +/* 002F8 809939B8 46024280 */ add.s $f10, $f8, $f2 +/* 002FC 809939BC 460A003C */ c.lt.s $f0, $f10 /* 00300 809939C0 00000000 */ nop -/* 00304 809939C4 4502002A */ bc1fl .L80993A70 +/* 00304 809939C4 4502002A */ bc1fl .L80993A70 /* 00308 809939C8 AE000174 */ sw $zero, 0x0174($s0) ## 00000174 /* 0030C 809939CC C710000C */ lwc1 $f16, 0x000C($t8) ## 0000010B /* 00310 809939D0 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 /* 00314 809939D4 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000 -/* 00318 809939D8 46008481 */ sub.s $f18, $f16, $f0 -/* 0031C 809939DC 46029103 */ div.s $f4, $f18, $f2 -/* 00320 809939E0 460E2182 */ mul.s $f6, $f4, $f14 -/* 00324 809939E4 460E3200 */ add.s $f8, $f6, $f14 +/* 00318 809939D8 46008481 */ sub.s $f18, $f16, $f0 +/* 0031C 809939DC 46029103 */ div.s $f4, $f18, $f2 +/* 00320 809939E0 460E2182 */ mul.s $f6, $f4, $f14 +/* 00324 809939E4 460E3200 */ add.s $f8, $f6, $f14 /* 00328 809939E8 4459F800 */ cfc1 $t9, $31 /* 0032C 809939EC 44C8F800 */ ctc1 $t0, $31 /* 00330 809939F0 00000000 */ nop -/* 00334 809939F4 460042A4 */ cvt.w.s $f10, $f8 +/* 00334 809939F4 460042A4 */ cvt.w.s $f10, $f8 /* 00338 809939F8 4448F800 */ cfc1 $t0, $31 /* 0033C 809939FC 00000000 */ nop /* 00340 80993A00 31080078 */ andi $t0, $t0, 0x0078 ## $t0 = 00000000 -/* 00344 80993A04 51000013 */ beql $t0, $zero, .L80993A54 -/* 00348 80993A08 44085000 */ mfc1 $t0, $f10 +/* 00344 80993A04 51000013 */ beql $t0, $zero, .L80993A54 +/* 00348 80993A08 44085000 */ mfc1 $t0, $f10 /* 0034C 80993A0C 44815000 */ mtc1 $at, $f10 ## $f10 = 2147483648.00 /* 00350 80993A10 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 00354 80993A14 460A4281 */ sub.s $f10, $f8, $f10 +/* 00354 80993A14 460A4281 */ sub.s $f10, $f8, $f10 /* 00358 80993A18 44C8F800 */ ctc1 $t0, $31 /* 0035C 80993A1C 00000000 */ nop -/* 00360 80993A20 460052A4 */ cvt.w.s $f10, $f10 +/* 00360 80993A20 460052A4 */ cvt.w.s $f10, $f10 /* 00364 80993A24 4448F800 */ cfc1 $t0, $31 /* 00368 80993A28 00000000 */ nop /* 0036C 80993A2C 31080078 */ andi $t0, $t0, 0x0078 ## $t0 = 00000000 -/* 00370 80993A30 15000005 */ bne $t0, $zero, .L80993A48 +/* 00370 80993A30 15000005 */ bne $t0, $zero, .L80993A48 /* 00374 80993A34 00000000 */ nop -/* 00378 80993A38 44085000 */ mfc1 $t0, $f10 +/* 00378 80993A38 44085000 */ mfc1 $t0, $f10 /* 0037C 80993A3C 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 00380 80993A40 10000007 */ beq $zero, $zero, .L80993A60 +/* 00380 80993A40 10000007 */ beq $zero, $zero, .L80993A60 /* 00384 80993A44 01014025 */ or $t0, $t0, $at ## $t0 = 80000000 .L80993A48: -/* 00388 80993A48 10000005 */ beq $zero, $zero, .L80993A60 +/* 00388 80993A48 10000005 */ beq $zero, $zero, .L80993A60 /* 0038C 80993A4C 2408FFFF */ addiu $t0, $zero, 0xFFFF ## $t0 = FFFFFFFF -/* 00390 80993A50 44085000 */ mfc1 $t0, $f10 +/* 00390 80993A50 44085000 */ mfc1 $t0, $f10 .L80993A54: /* 00394 80993A54 00000000 */ nop -/* 00398 80993A58 0500FFFB */ bltz $t0, .L80993A48 +/* 00398 80993A58 0500FFFB */ bltz $t0, .L80993A48 /* 0039C 80993A5C 00000000 */ nop .L80993A60: /* 003A0 80993A60 44D9F800 */ ctc1 $t9, $31 -/* 003A4 80993A64 10000002 */ beq $zero, $zero, .L80993A70 +/* 003A4 80993A64 10000002 */ beq $zero, $zero, .L80993A70 /* 003A8 80993A68 AE080174 */ sw $t0, 0x0174($s0) ## 00000174 /* 003AC 80993A6C AE000174 */ sw $zero, 0x0174($s0) ## 00000174 .L80993A70: /* 003B0 80993A70 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000 /* 003B4 80993A74 44818000 */ mtc1 $at, $f16 ## $f16 = 30.00 /* 003B8 80993A78 00000000 */ nop -/* 003BC 80993A7C 4600803C */ c.lt.s $f16, $f0 +/* 003BC 80993A7C 4600803C */ c.lt.s $f16, $f0 /* 003C0 80993A80 00000000 */ nop -/* 003C4 80993A84 45020011 */ bc1fl .L80993ACC -/* 003C8 80993A88 8FA4002C */ lw $a0, 0x002C($sp) +/* 003C4 80993A84 45020011 */ bc1fl .L80993ACC +/* 003C8 80993A88 8FA4002C */ lw $a0, 0x002C($sp) /* 003CC 80993A8C 92020178 */ lbu $v0, 0x0178($s0) ## 00000178 /* 003D0 80993A90 3C078013 */ lui $a3, %hi(D_801333E0) /* 003D4 80993A94 24E733E0 */ addiu $a3, %lo(D_801333E0) /* 003D8 80993A98 30490001 */ andi $t1, $v0, 0x0001 ## $t1 = 00000000 -/* 003DC 80993A9C 1520000A */ bne $t1, $zero, .L80993AC8 +/* 003DC 80993A9C 1520000A */ bne $t1, $zero, .L80993AC8 /* 003E0 80993AA0 344A0001 */ ori $t2, $v0, 0x0001 ## $t2 = 00000001 /* 003E4 80993AA4 3C0B8013 */ lui $t3, %hi(D_801333E8) /* 003E8 80993AA8 A20A0178 */ sb $t2, 0x0178($s0) ## 00000178 /* 003EC 80993AAC 256B33E8 */ addiu $t3, %lo(D_801333E8) -/* 003F0 80993AB0 AFAB0014 */ sw $t3, 0x0014($sp) -/* 003F4 80993AB4 AFA70010 */ sw $a3, 0x0010($sp) +/* 003F0 80993AB0 AFAB0014 */ sw $t3, 0x0014($sp) +/* 003F4 80993AB4 AFA70010 */ sw $a3, 0x0010($sp) /* 003F8 80993AB8 24042884 */ addiu $a0, $zero, 0x2884 ## $a0 = 00002884 /* 003FC 80993ABC 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4 /* 00400 80993AC0 0C03DCE3 */ jal Audio_PlaySoundGeneral - + /* 00404 80993AC4 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004 .L80993AC8: -/* 00408 80993AC8 8FA4002C */ lw $a0, 0x002C($sp) +/* 00408 80993AC8 8FA4002C */ lw $a0, 0x002C($sp) .L80993ACC: -/* 0040C 80993ACC 0C01B231 */ jal func_8006C8C4 +/* 0040C 80993ACC 0C01B231 */ jal SkelCurve_Update /* 00410 80993AD0 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C -/* 00414 80993AD4 50400004 */ beql $v0, $zero, .L80993AE8 -/* 00418 80993AD8 8FBF0024 */ lw $ra, 0x0024($sp) +/* 00414 80993AD4 50400004 */ beql $v0, $zero, .L80993AE8 +/* 00418 80993AD8 8FBF0024 */ lw $ra, 0x0024($sp) /* 0041C 80993ADC 0C00B55C */ jal Actor_Kill - + /* 00420 80993AE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00424 80993AE4 8FBF0024 */ lw $ra, 0x0024($sp) +/* 00424 80993AE4 8FBF0024 */ lw $ra, 0x0024($sp) .L80993AE8: -/* 00428 80993AE8 8FB00020 */ lw $s0, 0x0020($sp) +/* 00428 80993AE8 8FB00020 */ lw $s0, 0x0020($sp) /* 0042C 80993AEC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000 -/* 00430 80993AF0 03E00008 */ jr $ra +/* 00430 80993AF0 03E00008 */ jr $ra /* 00434 80993AF4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Destroy.s index bd975eac68..f6696d1aee 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Destroy.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Destroy.s @@ -15,25 +15,25 @@ glabel D_80B8CE34 glabel MagicWind_Destroy /* 00150 80B8B250 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 /* 00154 80B8B254 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 00158 80B8B258 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0015C 80B8B25C AFA5001C */ sw $a1, 0x001C($sp) +/* 00158 80B8B258 AFBF0014 */ sw $ra, 0x0014($sp) +/* 0015C 80B8B25C AFA5001C */ sw $a1, 0x001C($sp) /* 00160 80B8B260 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00164 80B8B264 0C01B217 */ jal func_8006C85C +/* 00164 80B8B264 0C01B217 */ jal SkelCurve_Destroy /* 00168 80B8B268 24C5014C */ addiu $a1, $a2, 0x014C ## $a1 = 0000014C -/* 0016C 80B8B26C 0C021DB2 */ jal func_800876C8 -/* 00170 80B8B270 8FA4001C */ lw $a0, 0x001C($sp) +/* 0016C 80B8B26C 0C021DB2 */ jal func_800876C8 +/* 00170 80B8B270 8FA4001C */ lw $a0, 0x001C($sp) /* 00174 80B8B274 3C0480B9 */ lui $a0, %hi(D_80B8CE10) ## $a0 = 80B90000 /* 00178 80B8B278 2484CE10 */ addiu $a0, $a0, %lo(D_80B8CE10) ## $a0 = 80B8CE10 /* 0017C 80B8B27C 0C000B84 */ jal LogUtils_LogThreadId - + /* 00180 80B8B280 240501F9 */ addiu $a1, $zero, 0x01F9 ## $a1 = 000001F9 /* 00184 80B8B284 3C0480B9 */ lui $a0, %hi(D_80B8CE24) ## $a0 = 80B90000 /* 00188 80B8B288 3C0580B9 */ lui $a1, %hi(D_80B8CE34) ## $a1 = 80B90000 /* 0018C 80B8B28C 24A5CE34 */ addiu $a1, $a1, %lo(D_80B8CE34) ## $a1 = 80B8CE34 /* 00190 80B8B290 0C00084C */ jal osSyncPrintf - + /* 00194 80B8B294 2484CE24 */ addiu $a0, $a0, %lo(D_80B8CE24) ## $a0 = 80B8CE24 -/* 00198 80B8B298 8FBF0014 */ lw $ra, 0x0014($sp) +/* 00198 80B8B298 8FBF0014 */ lw $ra, 0x0014($sp) /* 0019C 80B8B29C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 001A0 80B8B2A0 03E00008 */ jr $ra +/* 001A0 80B8B2A0 03E00008 */ jr $ra /* 001A4 80B8B2A4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Draw.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Draw.s index 4f15fe47f0..58c3b6411d 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Draw.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Draw.s @@ -10,48 +10,48 @@ glabel D_80B8CEAC .text glabel MagicWind_Draw /* 006AC 80B8B7AC 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0 -/* 006B0 80B8B7B0 AFBF002C */ sw $ra, 0x002C($sp) -/* 006B4 80B8B7B4 AFB00028 */ sw $s0, 0x0028($sp) -/* 006B8 80B8B7B8 AFA40050 */ sw $a0, 0x0050($sp) -/* 006BC 80B8B7BC AFA50054 */ sw $a1, 0x0054($sp) +/* 006B0 80B8B7B0 AFBF002C */ sw $ra, 0x002C($sp) +/* 006B4 80B8B7B4 AFB00028 */ sw $s0, 0x0028($sp) +/* 006B8 80B8B7B8 AFA40050 */ sw $a0, 0x0050($sp) +/* 006BC 80B8B7BC AFA50054 */ sw $a1, 0x0054($sp) /* 006C0 80B8B7C0 8CB00000 */ lw $s0, 0x0000($a1) ## 00000000 /* 006C4 80B8B7C4 3C0680B9 */ lui $a2, %hi(D_80B8CE98) ## $a2 = 80B90000 /* 006C8 80B8B7C8 24C6CE98 */ addiu $a2, $a2, %lo(D_80B8CE98) ## $a2 = 80B8CE98 /* 006CC 80B8B7CC 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4 /* 006D0 80B8B7D0 24070295 */ addiu $a3, $zero, 0x0295 ## $a3 = 00000295 -/* 006D4 80B8B7D4 0C031AB1 */ jal Graph_OpenDisps +/* 006D4 80B8B7D4 0C031AB1 */ jal Graph_OpenDisps /* 006D8 80B8B7D8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 006DC 80B8B7DC 8FB80050 */ lw $t8, 0x0050($sp) +/* 006DC 80B8B7DC 8FB80050 */ lw $t8, 0x0050($sp) /* 006E0 80B8B7E0 3C0F80B9 */ lui $t7, %hi(func_80B8B3C8) ## $t7 = 80B90000 /* 006E4 80B8B7E4 25EFB3C8 */ addiu $t7, $t7, %lo(func_80B8B3C8) ## $t7 = 80B8B3C8 /* 006E8 80B8B7E8 8F190170 */ lw $t9, 0x0170($t8) ## 00000170 /* 006EC 80B8B7EC 24050019 */ addiu $a1, $zero, 0x0019 ## $a1 = 00000019 -/* 006F0 80B8B7F0 11F9000E */ beq $t7, $t9, .L80B8B82C +/* 006F0 80B8B7F0 11F9000E */ beq $t7, $t9, .L80B8B82C /* 006F4 80B8B7F4 00000000 */ nop -/* 006F8 80B8B7F8 0C024DDD */ jal Gfx_CallSetupDL +/* 006F8 80B8B7F8 0C024DDD */ jal Gfx_CallSetupDL /* 006FC 80B8B7FC 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0 -/* 00700 80B8B800 8FA40050 */ lw $a0, 0x0050($sp) +/* 00700 80B8B800 8FA40050 */ lw $a0, 0x0050($sp) /* 00704 80B8B804 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0 /* 00708 80B8B808 3C0780B9 */ lui $a3, %hi(func_80B8B5F4) ## $a3 = 80B90000 /* 0070C 80B8B80C 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001 -/* 00710 80B8B810 AFA80014 */ sw $t0, 0x0014($sp) +/* 00710 80B8B810 AFA80014 */ sw $t0, 0x0014($sp) /* 00714 80B8B814 24E7B5F4 */ addiu $a3, $a3, %lo(func_80B8B5F4) ## $a3 = 80B8B5F4 -/* 00718 80B8B818 AFA00018 */ sw $zero, 0x0018($sp) -/* 0071C 80B8B81C AFA00010 */ sw $zero, 0x0010($sp) -/* 00720 80B8B820 8FA50054 */ lw $a1, 0x0054($sp) -/* 00724 80B8B824 0C01B3DB */ jal func_8006CF6C +/* 00718 80B8B818 AFA00018 */ sw $zero, 0x0018($sp) +/* 0071C 80B8B81C AFA00010 */ sw $zero, 0x0010($sp) +/* 00720 80B8B820 8FA50054 */ lw $a1, 0x0054($sp) +/* 00724 80B8B824 0C01B3DB */ jal SkelCurve_Draw /* 00728 80B8B828 2486014C */ addiu $a2, $a0, 0x014C ## $a2 = 0000014C .L80B8B82C: /* 0072C 80B8B82C 3C0680B9 */ lui $a2, %hi(D_80B8CEAC) ## $a2 = 80B90000 /* 00730 80B8B830 24C6CEAC */ addiu $a2, $a2, %lo(D_80B8CEAC) ## $a2 = 80B8CEAC /* 00734 80B8B834 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4 /* 00738 80B8B838 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 -/* 0073C 80B8B83C 0C031AD5 */ jal Graph_CloseDisps +/* 0073C 80B8B83C 0C031AD5 */ jal Graph_CloseDisps /* 00740 80B8B840 240702A1 */ addiu $a3, $zero, 0x02A1 ## $a3 = 000002A1 -/* 00744 80B8B844 8FBF002C */ lw $ra, 0x002C($sp) -/* 00748 80B8B848 8FB00028 */ lw $s0, 0x0028($sp) +/* 00744 80B8B844 8FBF002C */ lw $ra, 0x002C($sp) +/* 00748 80B8B848 8FB00028 */ lw $s0, 0x0028($sp) /* 0074C 80B8B84C 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000 -/* 00750 80B8B850 03E00008 */ jr $ra +/* 00750 80B8B850 03E00008 */ jr $ra /* 00754 80B8B854 00000000 */ nop /* 00758 80B8B858 00000000 */ nop /* 0075C 80B8B85C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Init.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Init.s index 7403bb1629..47e68d02c6 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Init.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Init.s @@ -18,9 +18,9 @@ glabel D_80B8CE04 .text glabel MagicWind_Init /* 00008 80B8B108 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 0000C 80B8B10C AFB00020 */ sw $s0, 0x0020($sp) -/* 00010 80B8B110 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00014 80B8B114 AFA5003C */ sw $a1, 0x003C($sp) +/* 0000C 80B8B10C AFB00020 */ sw $s0, 0x0020($sp) +/* 00010 80B8B110 AFBF0024 */ sw $ra, 0x0024($sp) +/* 00014 80B8B114 AFA5003C */ sw $a1, 0x003C($sp) /* 00018 80B8B118 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44 /* 0001C 80B8B11C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 /* 00020 80B8B120 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 @@ -29,46 +29,46 @@ glabel MagicWind_Init /* 0002C 80B8B12C 3C0780B9 */ lui $a3, %hi(D_80B8CD50) ## $a3 = 80B90000 /* 00030 80B8B130 24E7CD50 */ addiu $a3, $a3, %lo(D_80B8CD50) ## $a3 = 80B8CD50 /* 00034 80B8B134 24C6CD90 */ addiu $a2, $a2, %lo(D_80B8CD90) ## $a2 = 80B8CD90 -/* 00038 80B8B138 AFA50028 */ sw $a1, 0x0028($sp) -/* 0003C 80B8B13C 0C01B1DE */ jal func_8006C778 -/* 00040 80B8B140 AFAF0030 */ sw $t7, 0x0030($sp) -/* 00044 80B8B144 14400003 */ bne $v0, $zero, .L80B8B154 +/* 00038 80B8B138 AFA50028 */ sw $a1, 0x0028($sp) +/* 0003C 80B8B13C 0C01B1DE */ jal SkelCurve_Init +/* 00040 80B8B140 AFAF0030 */ sw $t7, 0x0030($sp) +/* 00044 80B8B144 14400003 */ bne $v0, $zero, .L80B8B154 /* 00048 80B8B148 3C0480B9 */ lui $a0, %hi(D_80B8CDB0) ## $a0 = 80B90000 /* 0004C 80B8B14C 0C00084C */ jal osSyncPrintf - + /* 00050 80B8B150 2484CDB0 */ addiu $a0, $a0, %lo(D_80B8CDB0) ## $a0 = 80B8CDB0 .L80B8B154: /* 00054 80B8B154 8602001C */ lh $v0, 0x001C($s0) ## 0000001C /* 00058 80B8B158 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF /* 0005C 80B8B15C A2180003 */ sb $t8, 0x0003($s0) ## 00000003 -/* 00060 80B8B160 10400006 */ beq $v0, $zero, .L80B8B17C +/* 00060 80B8B160 10400006 */ beq $v0, $zero, .L80B8B17C /* 00064 80B8B164 3C014270 */ lui $at, 0x4270 ## $at = 42700000 /* 00068 80B8B168 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 0006C 80B8B16C 10410017 */ beq $v0, $at, .L80B8B1CC -/* 00070 80B8B170 8FA40028 */ lw $a0, 0x0028($sp) -/* 00074 80B8B174 10000032 */ beq $zero, $zero, .L80B8B240 -/* 00078 80B8B178 8FBF0024 */ lw $ra, 0x0024($sp) +/* 0006C 80B8B16C 10410017 */ beq $v0, $at, .L80B8B1CC +/* 00070 80B8B170 8FA40028 */ lw $a0, 0x0028($sp) +/* 00074 80B8B174 10000032 */ beq $zero, $zero, .L80B8B240 +/* 00078 80B8B178 8FBF0024 */ lw $ra, 0x0024($sp) .L80B8B17C: /* 0007C 80B8B17C 44810000 */ mtc1 $at, $f0 ## $f0 = 0.00 /* 00080 80B8B180 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00 /* 00084 80B8B184 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 /* 00088 80B8B188 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00 /* 0008C 80B8B18C 3C0580B9 */ lui $a1, %hi(D_80B8CD50) ## $a1 = 80B90000 -/* 00090 80B8B190 44070000 */ mfc1 $a3, $f0 -/* 00094 80B8B194 44061000 */ mfc1 $a2, $f2 +/* 00090 80B8B190 44070000 */ mfc1 $a3, $f0 +/* 00094 80B8B194 44061000 */ mfc1 $a2, $f2 /* 00098 80B8B198 24A5CD50 */ addiu $a1, $a1, %lo(D_80B8CD50) ## $a1 = 80B8CD50 -/* 0009C 80B8B19C 8FA40028 */ lw $a0, 0x0028($sp) -/* 000A0 80B8B1A0 E7A20010 */ swc1 $f2, 0x0010($sp) -/* 000A4 80B8B1A4 0C01B225 */ jal func_8006C894 -/* 000A8 80B8B1A8 E7A40014 */ swc1 $f4, 0x0014($sp) +/* 0009C 80B8B19C 8FA40028 */ lw $a0, 0x0028($sp) +/* 000A0 80B8B1A0 E7A20010 */ swc1 $f2, 0x0010($sp) +/* 000A4 80B8B1A4 0C01B225 */ jal SkelCurve_SetAnim +/* 000A8 80B8B1A8 E7A40014 */ swc1 $f4, 0x0014($sp) /* 000AC 80B8B1AC 2419001D */ addiu $t9, $zero, 0x001D ## $t9 = 0000001D /* 000B0 80B8B1B0 3C0580B9 */ lui $a1, %hi(func_80B8B3C8) ## $a1 = 80B90000 /* 000B4 80B8B1B4 A619016C */ sh $t9, 0x016C($s0) ## 0000016C /* 000B8 80B8B1B8 24A5B3C8 */ addiu $a1, $a1, %lo(func_80B8B3C8) ## $a1 = 80B8B3C8 -/* 000BC 80B8B1BC 0C2E2C40 */ jal func_80B8B100 +/* 000BC 80B8B1BC 0C2E2C40 */ jal func_80B8B100 /* 000C0 80B8B1C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 000C4 80B8B1C4 1000001E */ beq $zero, $zero, .L80B8B240 -/* 000C8 80B8B1C8 8FBF0024 */ lw $ra, 0x0024($sp) +/* 000C4 80B8B1C4 1000001E */ beq $zero, $zero, .L80B8B240 +/* 000C8 80B8B1C8 8FBF0024 */ lw $ra, 0x0024($sp) .L80B8B1CC: /* 000CC 80B8B1CC 3C014270 */ lui $at, 0x4270 ## $at = 42700000 /* 000D0 80B8B1D0 44810000 */ mtc1 $at, $f0 ## $f0 = 60.00 @@ -76,33 +76,33 @@ glabel MagicWind_Init /* 000D8 80B8B1D8 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 /* 000DC 80B8B1DC 44813000 */ mtc1 $at, $f6 ## $f6 = -1.00 /* 000E0 80B8B1E0 3C0580B9 */ lui $a1, %hi(D_80B8CD50) ## $a1 = 80B90000 -/* 000E4 80B8B1E4 44060000 */ mfc1 $a2, $f0 -/* 000E8 80B8B1E8 44071000 */ mfc1 $a3, $f2 +/* 000E4 80B8B1E4 44060000 */ mfc1 $a2, $f0 +/* 000E8 80B8B1E8 44071000 */ mfc1 $a3, $f2 /* 000EC 80B8B1EC 24A5CD50 */ addiu $a1, $a1, %lo(D_80B8CD50) ## $a1 = 80B8CD50 -/* 000F0 80B8B1F0 E7A00010 */ swc1 $f0, 0x0010($sp) -/* 000F4 80B8B1F4 0C01B225 */ jal func_8006C894 -/* 000F8 80B8B1F8 E7A60014 */ swc1 $f6, 0x0014($sp) +/* 000F0 80B8B1F0 E7A00010 */ swc1 $f0, 0x0010($sp) +/* 000F4 80B8B1F4 0C01B225 */ jal SkelCurve_SetAnim +/* 000F8 80B8B1F8 E7A60014 */ swc1 $f6, 0x0014($sp) /* 000FC 80B8B1FC 3C0580B9 */ lui $a1, %hi(func_80B8B564) ## $a1 = 80B90000 /* 00100 80B8B200 24A5B564 */ addiu $a1, $a1, %lo(func_80B8B564) ## $a1 = 80B8B564 -/* 00104 80B8B204 0C2E2C40 */ jal func_80B8B100 +/* 00104 80B8B204 0C2E2C40 */ jal func_80B8B100 /* 00108 80B8B208 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 /* 0010C 80B8B20C 3C0480B9 */ lui $a0, %hi(D_80B8CDDC) ## $a0 = 80B90000 /* 00110 80B8B210 2484CDDC */ addiu $a0, $a0, %lo(D_80B8CDDC) ## $a0 = 80B8CDDC /* 00114 80B8B214 0C000B84 */ jal LogUtils_LogThreadId - + /* 00118 80B8B218 240501E6 */ addiu $a1, $zero, 0x01E6 ## $a1 = 000001E6 /* 0011C 80B8B21C 3C0480B9 */ lui $a0, %hi(D_80B8CDF0) ## $a0 = 80B90000 /* 00120 80B8B220 3C0580B9 */ lui $a1, %hi(D_80B8CE04) ## $a1 = 80B90000 /* 00124 80B8B224 24A5CE04 */ addiu $a1, $a1, %lo(D_80B8CE04) ## $a1 = 80B8CE04 /* 00128 80B8B228 0C00084C */ jal osSyncPrintf - + /* 0012C 80B8B22C 2484CDF0 */ addiu $a0, $a0, %lo(D_80B8CDF0) ## $a0 = 80B8CDF0 -/* 00130 80B8B230 8FA40030 */ lw $a0, 0x0030($sp) -/* 00134 80B8B234 0C00BDF7 */ jal func_8002F7DC +/* 00130 80B8B230 8FA40030 */ lw $a0, 0x0030($sp) +/* 00134 80B8B234 0C00BDF7 */ jal func_8002F7DC /* 00138 80B8B238 2405087B */ addiu $a1, $zero, 0x087B ## $a1 = 0000087B -/* 0013C 80B8B23C 8FBF0024 */ lw $ra, 0x0024($sp) +/* 0013C 80B8B23C 8FBF0024 */ lw $ra, 0x0024($sp) .L80B8B240: -/* 00140 80B8B240 8FB00020 */ lw $s0, 0x0020($sp) +/* 00140 80B8B240 8FB00020 */ lw $s0, 0x0020($sp) /* 00144 80B8B244 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 00148 80B8B248 03E00008 */ jr $ra +/* 00148 80B8B248 03E00008 */ jr $ra /* 0014C 80B8B24C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B3C8.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B3C8.s index 0de2cb4916..5a99d1112b 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B3C8.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B3C8.s @@ -14,46 +14,46 @@ glabel D_80B8CE64 .text glabel func_80B8B3C8 /* 002C8 80B8B3C8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 002CC 80B8B3CC AFBF0014 */ sw $ra, 0x0014($sp) -/* 002D0 80B8B3D0 AFA50024 */ sw $a1, 0x0024($sp) +/* 002CC 80B8B3CC AFBF0014 */ sw $ra, 0x0014($sp) +/* 002D0 80B8B3D0 AFA50024 */ sw $a1, 0x0024($sp) /* 002D4 80B8B3D4 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44 /* 002D8 80B8B3D8 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 /* 002DC 80B8B3DC 2405021B */ addiu $a1, $zero, 0x021B ## $a1 = 0000021B -/* 002E0 80B8B3E0 AFAF001C */ sw $t7, 0x001C($sp) +/* 002E0 80B8B3E0 AFAF001C */ sw $t7, 0x001C($sp) /* 002E4 80B8B3E4 8482016C */ lh $v0, 0x016C($a0) ## 0000016C -/* 002E8 80B8B3E8 18400003 */ blez $v0, .L80B8B3F8 +/* 002E8 80B8B3E8 18400003 */ blez $v0, .L80B8B3F8 /* 002EC 80B8B3EC 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF -/* 002F0 80B8B3F0 10000019 */ beq $zero, $zero, .L80B8B458 +/* 002F0 80B8B3F0 10000019 */ beq $zero, $zero, .L80B8B458 /* 002F4 80B8B3F4 A498016C */ sh $t8, 0x016C($a0) ## 0000016C .L80B8B3F8: /* 002F8 80B8B3F8 3C0480B9 */ lui $a0, %hi(D_80B8CE3C) ## $a0 = 80B90000 /* 002FC 80B8B3FC 2484CE3C */ addiu $a0, $a0, %lo(D_80B8CE3C) ## $a0 = 80B8CE3C /* 00300 80B8B400 0C000B84 */ jal LogUtils_LogThreadId - -/* 00304 80B8B404 AFA60020 */ sw $a2, 0x0020($sp) + +/* 00304 80B8B404 AFA60020 */ sw $a2, 0x0020($sp) /* 00308 80B8B408 3C0480B9 */ lui $a0, %hi(D_80B8CE50) ## $a0 = 80B90000 /* 0030C 80B8B40C 3C0580B9 */ lui $a1, %hi(D_80B8CE64) ## $a1 = 80B90000 /* 00310 80B8B410 24A5CE64 */ addiu $a1, $a1, %lo(D_80B8CE64) ## $a1 = 80B8CE64 /* 00314 80B8B414 0C00084C */ jal osSyncPrintf - + /* 00318 80B8B418 2484CE50 */ addiu $a0, $a0, %lo(D_80B8CE50) ## $a0 = 80B8CE50 -/* 0031C 80B8B41C 8FA4001C */ lw $a0, 0x001C($sp) -/* 00320 80B8B420 0C00BDF7 */ jal func_8002F7DC +/* 0031C 80B8B41C 8FA4001C */ lw $a0, 0x001C($sp) +/* 00320 80B8B420 0C00BDF7 */ jal func_8002F7DC /* 00324 80B8B424 2405087A */ addiu $a1, $zero, 0x087A ## $a1 = 0000087A /* 00328 80B8B428 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 /* 0032C 80B8B42C 44816000 */ mtc1 $at, $f12 ## $f12 = 1.00 -/* 00330 80B8B430 0C2E2CAA */ jal func_80B8B2A8 +/* 00330 80B8B430 0C2E2CAA */ jal func_80B8B2A8 /* 00334 80B8B434 00000000 */ nop /* 00338 80B8B438 3C0580B9 */ lui $a1, %hi(func_80B8B468) ## $a1 = 80B90000 /* 0033C 80B8B43C 24A5B468 */ addiu $a1, $a1, %lo(func_80B8B468) ## $a1 = 80B8B468 -/* 00340 80B8B440 0C2E2C40 */ jal func_80B8B100 -/* 00344 80B8B444 8FA40020 */ lw $a0, 0x0020($sp) -/* 00348 80B8B448 8FA50020 */ lw $a1, 0x0020($sp) -/* 0034C 80B8B44C 8FA40024 */ lw $a0, 0x0024($sp) -/* 00350 80B8B450 0C01B231 */ jal func_8006C8C4 +/* 00340 80B8B440 0C2E2C40 */ jal func_80B8B100 +/* 00344 80B8B444 8FA40020 */ lw $a0, 0x0020($sp) +/* 00348 80B8B448 8FA50020 */ lw $a1, 0x0020($sp) +/* 0034C 80B8B44C 8FA40024 */ lw $a0, 0x0024($sp) +/* 00350 80B8B450 0C01B231 */ jal SkelCurve_Update /* 00354 80B8B454 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C .L80B8B458: -/* 00358 80B8B458 8FBF0014 */ lw $ra, 0x0014($sp) +/* 00358 80B8B458 8FBF0014 */ lw $ra, 0x0014($sp) /* 0035C 80B8B45C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00360 80B8B460 03E00008 */ jr $ra +/* 00360 80B8B460 03E00008 */ jr $ra /* 00364 80B8B464 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B468.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B468.s index e4c020c9f8..c2721acbe2 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B468.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B468.s @@ -1,21 +1,21 @@ glabel func_80B8B468 /* 00368 80B8B468 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0036C 80B8B46C AFA40018 */ sw $a0, 0x0018($sp) +/* 0036C 80B8B46C AFA40018 */ sw $a0, 0x0018($sp) /* 00370 80B8B470 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00374 80B8B474 8FA50018 */ lw $a1, 0x0018($sp) -/* 00378 80B8B478 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0037C 80B8B47C 0C01B231 */ jal func_8006C8C4 +/* 00374 80B8B474 8FA50018 */ lw $a1, 0x0018($sp) +/* 00378 80B8B478 AFBF0014 */ sw $ra, 0x0014($sp) +/* 0037C 80B8B47C 0C01B231 */ jal SkelCurve_Update /* 00380 80B8B480 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C -/* 00384 80B8B484 10400007 */ beq $v0, $zero, .L80B8B4A4 -/* 00388 80B8B488 8FA40018 */ lw $a0, 0x0018($sp) +/* 00384 80B8B484 10400007 */ beq $v0, $zero, .L80B8B4A4 +/* 00388 80B8B488 8FA40018 */ lw $a0, 0x0018($sp) /* 0038C 80B8B48C 3C0580B9 */ lui $a1, %hi(func_80B8B4B4) ## $a1 = 80B90000 -/* 00390 80B8B490 0C2E2C40 */ jal func_80B8B100 +/* 00390 80B8B490 0C2E2C40 */ jal func_80B8B100 /* 00394 80B8B494 24A5B4B4 */ addiu $a1, $a1, %lo(func_80B8B4B4) ## $a1 = 80B8B4B4 -/* 00398 80B8B498 8FAF0018 */ lw $t7, 0x0018($sp) +/* 00398 80B8B498 8FAF0018 */ lw $t7, 0x0018($sp) /* 0039C 80B8B49C 240E0032 */ addiu $t6, $zero, 0x0032 ## $t6 = 00000032 /* 003A0 80B8B4A0 A5EE016C */ sh $t6, 0x016C($t7) ## 0000016C .L80B8B4A4: -/* 003A4 80B8B4A4 8FBF0014 */ lw $ra, 0x0014($sp) +/* 003A4 80B8B4A4 8FBF0014 */ lw $ra, 0x0014($sp) /* 003A8 80B8B4A8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 003AC 80B8B4AC 03E00008 */ jr $ra +/* 003AC 80B8B4AC 03E00008 */ jr $ra /* 003B0 80B8B4B0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B564.s b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B564.s index 905b777d95..18d7119e87 100644 --- a/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B564.s +++ b/asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B564.s @@ -1,18 +1,18 @@ glabel func_80B8B564 /* 00464 80B8B564 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00468 80B8B568 AFA40018 */ sw $a0, 0x0018($sp) +/* 00468 80B8B568 AFA40018 */ sw $a0, 0x0018($sp) /* 0046C 80B8B56C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 00470 80B8B570 8FA50018 */ lw $a1, 0x0018($sp) -/* 00474 80B8B574 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00478 80B8B578 0C01B231 */ jal func_8006C8C4 +/* 00470 80B8B570 8FA50018 */ lw $a1, 0x0018($sp) +/* 00474 80B8B574 AFBF0014 */ sw $ra, 0x0014($sp) +/* 00478 80B8B578 0C01B231 */ jal SkelCurve_Update /* 0047C 80B8B57C 24A5014C */ addiu $a1, $a1, 0x014C ## $a1 = 0000014C -/* 00480 80B8B580 50400004 */ beql $v0, $zero, .L80B8B594 -/* 00484 80B8B584 8FBF0014 */ lw $ra, 0x0014($sp) +/* 00480 80B8B580 50400004 */ beql $v0, $zero, .L80B8B594 +/* 00484 80B8B584 8FBF0014 */ lw $ra, 0x0014($sp) /* 00488 80B8B588 0C00B55C */ jal Actor_Kill - -/* 0048C 80B8B58C 8FA40018 */ lw $a0, 0x0018($sp) -/* 00490 80B8B590 8FBF0014 */ lw $ra, 0x0014($sp) + +/* 0048C 80B8B58C 8FA40018 */ lw $a0, 0x0018($sp) +/* 00490 80B8B590 8FBF0014 */ lw $ra, 0x0014($sp) .L80B8B594: /* 00494 80B8B594 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00498 80B8B598 03E00008 */ jr $ra +/* 00498 80B8B598 03E00008 */ jr $ra /* 0049C 80B8B59C 00000000 */ nop diff --git a/include/functions.h b/include/functions.h index aa35d73e54..b9d39aec67 100644 --- a/include/functions.h +++ b/include/functions.h @@ -868,9 +868,16 @@ void Flags_UnsetAllEnv(GlobalContext* globalCtx); void Flags_SetEnv(GlobalContext* globalCtx, s16 flag); void Flags_UnsetEnv(GlobalContext* globalCtx, s16 flag); s32 Flags_GetEnv(GlobalContext* globalCtx, s16 flag); -// ? func_8006C510(?); -// ? func_8006C5A8(?); -// ? func_8006CBAC(?); +f32 func_8006C5A8(f32 target, TransformData* transData, s32 refIdx); +void SkelCurve_Clear(SkelAnimeCurve* skelCurve); +s32 SkelCurve_Init(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve, SkelCurveLimbList* limbListSeg, + TransformData* transData); +void SkelCurve_Destroy(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve); +void SkelCurve_SetAnim(SkelAnimeCurve* skelCurve, TransformUpdateIndex* transUpdIdx, f32 arg2, f32 animFinalFrame, + f32 animCurFrame, f32 animSpeed); +s32 SkelCurve_Update(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve); +void SkelCurve_Draw(Actor* actor, GlobalContext* globalCtx, SkelAnimeCurve* skelCurve, + OverrideCurveLimbDraw overrideLimbDraw, PostCurveLimbDraw postLimbDraw, s32 lod, Actor* actor2); // ? func_8006CFC0(?); // ? func_8006D074(?); // ? func_8006D0AC(?); diff --git a/include/z64animation.h b/include/z64animation.h index f18e7d15e8..0fda78aa6b 100755 --- a/include/z64animation.h +++ b/include/z64animation.h @@ -188,4 +188,53 @@ typedef void (*AnimationEntryCallback)(struct GlobalContext*, AnimationEntryType extern u32 link_animetion_segment; +// fcurve_skelanime structs +typedef struct { + /* 0x0000 */ u16 unk_00; // appears to be flags + /* 0x0002 */ s16 unk_02; + /* 0x0004 */ s16 unk_04; + /* 0x0006 */ s16 unk_06; + /* 0x0008 */ f32 unk_08; +} TransformData; // size = 0xC + + +typedef struct { + /* 0x0000 */ u8* refIndex; + /* 0x0004 */ TransformData *transformData; + /* 0x0008 */ s16* copyValues; + /* 0x000C */ s16 unk_0C; + /* 0x000E */ s16 unk_10; +} TransformUpdateIndex; // size 0x10 + +typedef struct { + /* 0x0000 */ u8 firstChildIdx; + /* 0x0001 */ u8 nextLimbIdx; + /* 0x0004 */ Gfx* dList[2]; +} SkelCurveLimb; // size >= 0x8 + +typedef struct { + /* 0x0000 */ SkelCurveLimb** limbs; + /* 0x0004 */ u8 limbCount; +} SkelCurveLimbList; // size = 0x8 + +typedef struct { + /* 0x0000 */ Vec3s scale; + /* 0x0006 */ Vec3s rot; + /* 0x000C */ Vec3s pos; +} LimbTransform; // size = 0x12 + +typedef struct { + /* 0x0000 */ u8 limbCount; + /* 0x0004 */ SkelCurveLimb** limbList; + /* 0x0008 */ TransformUpdateIndex *transUpdIdx; + /* 0x000C */ f32 unk_0C; // seems to be unused + /* 0x0010 */ f32 animFinalFrame; + /* 0x0014 */ f32 animSpeed; + /* 0x0018 */ f32 animCurFrame; + /* 0x001C */ LimbTransform* transforms; +} SkelAnimeCurve; // size = 0x20 + +typedef s32 (*OverrideCurveLimbDraw)(struct GlobalContext* globalCtx, SkelAnimeCurve* skelCuve, s32 limbIndex, struct Actor* actor); +typedef void (*PostCurveLimbDraw)(struct GlobalContext* globalCtx, SkelAnimeCurve* skelCuve, s32 limbIndex, struct Actor* actor); + #endif diff --git a/spec b/spec index a1931f1394..9494d334c3 100644 --- a/spec +++ b/spec @@ -3600,8 +3600,7 @@ endseg beginseg name "ovl_Magic_Wind" include "build/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.o" - include "build/data/overlays/actors/z_magic_wind.data.o" - include "build/data/overlays/actors/z_magic_wind.reloc.o" + include "build/src/overlays/actors/ovl_Magic_Wind/z_magic_wind_reloc.o" endseg beginseg diff --git a/src/code/code_8006C510.c b/src/code/code_8006C510.c index 20fa80747e..8e9f28322a 100644 --- a/src/code/code_8006C510.c +++ b/src/code/code_8006C510.c @@ -1,6 +1,41 @@ #include #include -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8006C510/func_8006C510.s") +f32 func_8006C510(f32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, f32 arg5) { + char pad[0x1C]; + f32 sq = SQ(arg0); + f32 cube = sq * arg0; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8006C510/func_8006C5A8.s") + return (((cube + cube) - sq * 3.0f) + 1.0f) * arg2 + (sq * 3.0f - (cube + cube)) * arg3 + + ((cube - (sq + sq)) + arg0) * arg4 * arg1 + (cube - sq) * arg5 * arg1; +} + +f32 func_8006C5A8(f32 target, TransformData* transData, s32 refIdx) { + s32 i; + s32 j; + + if (target <= transData->unk_02) { + return transData->unk_08; + } + if (target >= transData[refIdx - 1].unk_02) { + return transData[refIdx - 1].unk_08; + } + + for (i = 0;; i++) { + j = i + 1; + if (transData[j].unk_02 > target) { + if (transData[i].unk_00 & 1) { + return transData[i].unk_08; + } else if (transData[i].unk_00 & 2) { + return transData[i].unk_08 + + ((target - (f32)transData[i].unk_02) / ((f32)transData[j].unk_02 - (f32)transData[i].unk_02)) * + (transData[j].unk_08 - transData[i].unk_08); + } else { + f32 diff = (f32)transData[j].unk_02 - (f32)transData[i].unk_02; + return func_8006C510((target - transData[i].unk_02) / ((f32)transData[j].unk_02 - transData[i].unk_02), + diff * (1.0f / 30.0f), transData[i].unk_08, transData[j].unk_08, + transData[i].unk_06, transData[j].unk_04); + } + } + } +} diff --git a/src/code/z_fcurve_data_skelanime.c b/src/code/z_fcurve_data_skelanime.c index 8feea0af9f..c175c3fd22 100644 --- a/src/code/z_fcurve_data_skelanime.c +++ b/src/code/z_fcurve_data_skelanime.c @@ -1,16 +1,188 @@ #include #include -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C750.s") +void SkelCurve_Clear(SkelAnimeCurve* skelCurve) { + skelCurve->limbCount = 0; + skelCurve->limbList = NULL; + skelCurve->transUpdIdx = NULL; + skelCurve->animCurFrame = 0.0f; + skelCurve->animSpeed = 0.0f; + skelCurve->animFinalFrame = 0.0f; + skelCurve->transforms = NULL; + skelCurve->unk_0C = 0.0f; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C778.s") +s32 SkelCurve_Init(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve, SkelCurveLimbList* limbListSeg, + TransformData* transData) { + SkelCurveLimb** limbs; + SkelCurveLimbList* limbList = SEGMENTED_TO_VIRTUAL(limbListSeg); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C85C.s") + skelCurve->limbCount = limbList->limbCount; + skelCurve->limbList = SEGMENTED_TO_VIRTUAL(limbList->limbs); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C894.s") + skelCurve->transforms = ZeldaArena_MallocDebug(sizeof(*skelCurve->transforms) * skelCurve->limbCount, + "../z_fcurve_data_skelanime.c", 125); + if (skelCurve->transforms == NULL) { + __assert("this->now_joint != NULL", "../z_fcurve_data_skelanime.c", 127); + } + do { + skelCurve->animCurFrame = 0.0f; + } while (0); + return 1; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006C8C4.s") +void SkelCurve_Destroy(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve) { + if (skelCurve->transforms != NULL) { + ZeldaArena_FreeDebug(skelCurve->transforms, "../z_fcurve_data_skelanime.c", 146); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CBAC.s") +void SkelCurve_SetAnim(SkelAnimeCurve* skelCurve, TransformUpdateIndex* transUpdIdx, f32 arg2, f32 animFinalFrame, + f32 animCurFrame, f32 animSpeed) { + skelCurve->unk_0C = arg2 - skelCurve->animSpeed; + skelCurve->animFinalFrame = animFinalFrame; + skelCurve->animCurFrame = animCurFrame; + skelCurve->animSpeed = animSpeed; + skelCurve->transUpdIdx = transUpdIdx; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/func_8006CF6C.s") +s32 SkelCurve_Update(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve) { + s16* transforms; + u8* transformRefIdx; + TransformUpdateIndex* transformIndex; + u16* transformCopyValues; + s32 i; + s32 ret; + s32 k; + TransformData* transData; + f32 transformValue; + s32 j; + + ret = 0; + transformIndex = SEGMENTED_TO_VIRTUAL(skelCurve->transUpdIdx); + + transformRefIdx = SEGMENTED_TO_VIRTUAL(transformIndex->refIndex); + transData = SEGMENTED_TO_VIRTUAL(transformIndex->transformData); + transformCopyValues = SEGMENTED_TO_VIRTUAL(transformIndex->copyValues); + transforms = (s16*)skelCurve->transforms; + + skelCurve->animCurFrame += skelCurve->animSpeed * R_UPDATE_RATE * 0.5f; + + if ((skelCurve->animSpeed >= 0.0f && skelCurve->animCurFrame > skelCurve->animFinalFrame) || + (skelCurve->animSpeed < 0.0f && skelCurve->animCurFrame < skelCurve->animFinalFrame)) { + skelCurve->animCurFrame = skelCurve->animFinalFrame; + ret = 1; + } + + for (i = 0; i < skelCurve->limbCount; i++) { + for (j = 0; j < 3; j++) { + for (k = 0; k < 3; k++, transformRefIdx++, transforms++) { + if (*transformRefIdx == 0) { + transformValue = *transformCopyValues; + *transforms = transformValue; + transformCopyValues++; + } else { + transformValue = func_8006C5A8(skelCurve->animCurFrame, transData, *transformRefIdx); + transData += *transformRefIdx; + if (j == 0) { + *transforms = transformValue * 1024.0f; + } else if (j == 1) { + *transforms = transformValue * (32768.0f / 180.0f); + } else { + *transforms = transformValue * 100.0f; + } + } + } + } + } + + return ret; +} + +#ifdef NON_MATCHING +// Very minor stack alloc, lod = 0 gSPMatrix places gfxPtr at stack + 0x4c instead of 0x50 +void SkelCurve_DrawLimb(GlobalContext* globalCtx, s32 limbIndex, SkelAnimeCurve* skelCurve, + OverrideCurveLimbDraw overrideLimbDraw, PostCurveLimbDraw postLimbDraw, s32 lod, Actor* actor) { + SkelCurveLimb* limb = SEGMENTED_TO_VIRTUAL(skelCurve->limbList[limbIndex]); + Gfx* dispRefs[5]; + Vec3f scale; + Vec3s rot; + Vec3f pos; + Gfx* d; + Vec3s* transform; + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + s32 pad; + + Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 279); + Matrix_Push(); + if (overrideLimbDraw == NULL || + (overrideLimbDraw != NULL && overrideLimbDraw(globalCtx, skelCurve, limbIndex, actor))) { + transform = &skelCurve->transforms[limbIndex]; + scale.x = transform->x * (1.0f / 1024.0f); + scale.y = transform->y * (1.0f / 1024.0f); + scale.z = transform->z * (1.0f / 1024.0f); + transform++; + rot.x = transform->x; + rot.y = transform->y; + rot.z = transform->z; + transform++; + pos.x = transform->x; + pos.y = transform->y; + pos.z = transform->z; + Matrix_JointPosition(&pos, &rot); + Matrix_Scale(scale.x, scale.y, scale.z, MTXMODE_APPLY); + if (lod == 0) { + d = limb->dList[0]; + if (d != NULL) { + gSPMatrix(gfxCtx->polyOpa.p++, + Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 321), + G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW); + gSPDisplayList(gfxCtx->polyOpa.p++, d); + } + } else if (lod == 1) { + d = limb->dList[0]; + if (d != NULL) { + gSPMatrix(gfxCtx->polyOpa.p++, + Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 332), + G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW); + gSPDisplayList(gfxCtx->polyOpa.p++, d); + } + d = limb->dList[1]; + if (d != NULL) { + gSPMatrix(gfxCtx->polyXlu.p++, + Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 338), + G_MTX_LOAD | G_MTX_NOPUSH | G_MTX_MODELVIEW); + gSPDisplayList(gfxCtx->polyXlu.p++, d); + } + } else { + // FcSkeletonInfo_draw_child (): Not supported + osSyncPrintf("FcSkeletonInfo_draw_child():未対応\n"); + } + } + + if (postLimbDraw != NULL) { + postLimbDraw(globalCtx, skelCurve, limbIndex, actor); + } + + if (limb->firstChildIdx != LIMB_DONE) { + SkelCurve_DrawLimb(globalCtx, limb->firstChildIdx, skelCurve, overrideLimbDraw, postLimbDraw, lod, actor); + } + + Matrix_Pull(); + + if (limb->nextLimbIdx != LIMB_DONE) { + SkelCurve_DrawLimb(globalCtx, limb->nextLimbIdx, skelCurve, overrideLimbDraw, postLimbDraw, lod, actor); + } + + Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_fcurve_data_skelanime.c", 371); +} +#else +#pragma GLOBAL_ASM("asm/non_matchings/code/z_fcurve_data_skelanime/SkelCurve_DrawLimb.s") +#endif + +void SkelCurve_Draw(Actor* actor, GlobalContext* globalCtx, SkelAnimeCurve* skelCurve, + OverrideCurveLimbDraw overrideLimbDraw, PostCurveLimbDraw postLimbDraw, s32 lod, Actor* actor2) { + if (skelCurve->transforms != NULL) { + SkelCurve_DrawLimb(globalCtx, 0, skelCurve, overrideLimbDraw, postLimbDraw, lod, actor2); + } +} diff --git a/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.c b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.c index 5d8b4b61ea..a096cb8005 100644 --- a/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.c +++ b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.c @@ -15,7 +15,12 @@ void MagicWind_Destroy(Actor* thisx, GlobalContext* globalCtx); void MagicWind_Update(Actor* thisx, GlobalContext* globalCtx); void MagicWind_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void MagicWind_Shrink(MagicWind* this, GlobalContext* globalCtx); +void MagicWind_WaitForTimer(MagicWind* this, GlobalContext* globalCtx); +void MagicWind_FadeOut(MagicWind* this, GlobalContext* globalCtx); +void MagicWind_WaitAtFullSize(MagicWind* this, GlobalContext* globalCtx); +void MagicWind_Grow(MagicWind* this, GlobalContext* globalCtx); + const ActorInit Magic_Wind_InitVars = { ACTOR_MAGIC_WIND, ACTORTYPE_ITEMACTION, @@ -27,27 +32,233 @@ const ActorInit Magic_Wind_InitVars = { (ActorFunc)MagicWind_Update, (ActorFunc)MagicWind_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B100.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Init.s") +#include "z_magic_wind_gfx.c" -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Destroy.s") +u8 sTransformRefIdx[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B2A8.s") +s16 sCopyValues[] = { + 0x0400, 0x0400, 0x0400, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0200, 0x0200, 0x0000, 0x0000, + 0x0000, 0x0000, 0x0000, 0x0000, 0x02CD, 0x02CD, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B3C8.s") +TransformData sTransformData[] = { + { + 0x000C, + 0x0001, + 0x0001, + 0x0001, + 0.0f, + }, + { + 0x0014, + 0x003C, + 0x0000, + 0x0000, + 1.5f, + }, + { + 0x000C, + 0x0001, + 0x0001, + 0x0001, + 0.0f, + }, + { + 0x0014, + 0x003C, + 0x0000, + 0x0000, + 1.0f, + }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B468.s") +TransformUpdateIndex sTransformUpdIdx = { + sTransformRefIdx, sTransformData, sCopyValues, 0x0001, 0x0003C, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B4B4.s") +SkelCurveLimb sRootLimb = { + 0x01, + 0xFF, + { + NULL, + NULL, + }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B500.s") +SkelCurveLimb sInnerCylinder = { + 0xFF, + 0x02, + { + NULL, + sInnerCylinderDList, + }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B564.s") +SkelCurveLimb sOuterCylinder = { + 0xFF, + 0xFF, + { + NULL, + sOuterCylinderDList, + }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Update.s") +SkelCurveLimb* sLimbs[] = { + &sRootLimb, + &sInnerCylinder, + &sOuterCylinder, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/func_80B8B5F4.s") +SkelCurveLimbList sLimbList = { + sLimbs, + 0x03, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Magic_Wind/MagicWind_Draw.s") +u8 sAlphaUpdVals[] = { + 0x00, 0x03, 0x04, 0x07, 0x09, 0x0A, 0x0D, 0x0F, 0x11, 0x12, 0x15, 0x16, 0x19, 0x1B, 0x1C, 0x1F, 0x21, 0x23, +}; + +void MagicWind_SetupAction(MagicWind* this, MagicWindFunc actionFunc) { + this->actionFunc = actionFunc; +} + +void MagicWind_Init(Actor* thisx, GlobalContext* globalCtx) { + MagicWind* this = THIS; + Player* player = PLAYER; + + if (SkelCurve_Init(globalCtx, &this->skelCurve, &sLimbList, &sTransformUpdIdx) == 0) { + // Magic_Wind_Actor_ct (): Construct failed + osSyncPrintf("Magic_Wind_Actor_ct():コンストラクト失敗\n"); + } + this->actor.room = -1; + switch (this->actor.params) { + case 0: + SkelCurve_SetAnim(&this->skelCurve, &sTransformUpdIdx, 0.0f, 60.0f, 0.0f, 1.0f); + this->timer = 29; + MagicWind_SetupAction(this, MagicWind_WaitForTimer); + break; + case 1: + SkelCurve_SetAnim(&this->skelCurve, &sTransformUpdIdx, 60.0f, 0.0f, 60.0f, -1.0f); + MagicWind_SetupAction(this, MagicWind_Shrink); + // "Indicates start" = %s + // Means start + LOG_STRING("表示開始", "../z_magic_wind.c", 486); + func_8002F7DC(player, 0x087B); + break; + } +} + +void MagicWind_Destroy(Actor* thisx, GlobalContext* globalCtx) { + MagicWind* this = THIS; + SkelCurve_Destroy(globalCtx, &this->skelCurve); + func_800876C8(globalCtx); + // wipe out + LOG_STRING("消滅", "../z_magic_wind.c", 505); +} + +void MagicWind_UpdateAlpha(f32 alpha) { + s32 i; + for (i = 0; i < ARRAY_COUNT(sAlphaUpdVals); i++) { + sCylinderVtx[sAlphaUpdVals[i]].n.a = alpha * 255.0f; + } +} + +void MagicWind_WaitForTimer(MagicWind* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + + if (this->timer > 0) { + this->timer--; + return; + } + + // Means start + LOG_STRING("表示開始", "../z_magic_wind.c", 539); + func_8002F7DC(&player->actor, 0x87A); + MagicWind_UpdateAlpha(1.0f); + MagicWind_SetupAction(this, MagicWind_Grow); + SkelCurve_Update(globalCtx, &this->skelCurve); +} + +void MagicWind_Grow(MagicWind* this, GlobalContext* globalCtx) { + if (SkelCurve_Update(globalCtx, &this->skelCurve)) { + MagicWind_SetupAction(this, MagicWind_WaitAtFullSize); + this->timer = 50; + } +} + +void MagicWind_WaitAtFullSize(MagicWind* this, GlobalContext* globalCtx) { + if (this->timer > 0) { + this->timer--; + } else { + MagicWind_SetupAction(this, MagicWind_FadeOut); + this->timer = 30; + } +} + +void MagicWind_FadeOut(MagicWind* this, GlobalContext* globalCtx) { + if (this->timer > 0) { + MagicWind_UpdateAlpha((f32)this->timer * (1.0f / 30.0f)); + this->timer--; + } else { + Actor_Kill(&this->actor); + } +} + +void MagicWind_Shrink(MagicWind* this, GlobalContext* globalCtx) { + if (SkelCurve_Update(globalCtx, &this->skelCurve)) { + Actor_Kill(&this->actor); + } +} + +void MagicWind_Update(Actor* thisx, GlobalContext* globalCtx) { + MagicWind* this = THIS; + if (globalCtx->msgCtx.msgMode == 0xD || globalCtx->msgCtx.msgMode == 0x11) { + Actor_Kill(thisx); + return; + } + + this->actionFunc(this, globalCtx); +} + +s32 MagicWind_OverrideLimbDraw(GlobalContext* globalCtx, SkelAnimeCurve* skelCurve, s32 limbIndex, Actor* thisx) { + MagicWind* this = THIS; + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + Gfx* dispRefs[4]; + + Graph_OpenDisps(dispRefs, globalCtx->state.gfxCtx, "../z_magic_wind.c", 615); + if (limbIndex == 1) { + gSPSegment(gfxCtx->polyXlu.p++, 8, + Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (globalCtx->state.frames * 9) & 0xFF, + 0xFF - ((globalCtx->state.frames * 0xF) & 0xFF), 0x40, 0x40, 1, + (globalCtx->state.frames * 0xF) & 0xFF, + 0xFF - ((globalCtx->state.frames * 0x1E) & 0xFF), 0x40, 0x40)); + + } else if (limbIndex == 2) { + gSPSegment(gfxCtx->polyXlu.p++, 9, + Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (globalCtx->state.frames * 3) & 0xFF, + 0xFF - ((globalCtx->state.frames * 5) & 0xFF), 0x40, 0x40, 1, + (globalCtx->state.frames * 6) & 0xFF, + 0xFF - ((globalCtx->state.frames * 0xA) & 0xFF), 0x40, 0x40)); + } + + Graph_CloseDisps(dispRefs, globalCtx->state.gfxCtx, "../z_magic_wind.c", 646); + return 1; +} + +void MagicWind_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + MagicWind* this = THIS; + GraphicsContext* gfxCtx = globalCtx->state.gfxCtx; + Gfx* dispRefs[4]; + + Graph_OpenDisps(dispRefs, gfxCtx, "../z_magic_wind.c", 661); + if (this->actionFunc != MagicWind_WaitForTimer) { + gfxCtx->polyXlu.p = Gfx_CallSetupDL(gfxCtx->polyXlu.p, 25); + SkelCurve_Draw(thisx, globalCtx, &this->skelCurve, MagicWind_OverrideLimbDraw, NULL, 1, NULL); + } + Graph_CloseDisps(dispRefs, gfxCtx, "../z_magic_wind.c", 673); +} diff --git a/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.h b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.h index 1925398841..0b76e7ac28 100644 --- a/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.h +++ b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind.h @@ -6,9 +6,13 @@ struct MagicWind; +typedef void (*MagicWindFunc)(struct MagicWind* this, GlobalContext* globalCtx); + typedef struct MagicWind { /* 0x0000 */ Actor actor; - /* 0x014C */ char unk_14C[0x28]; + /* 0x014C */ SkelAnimeCurve skelCurve; + /* 0x016C */ s16 timer; + /* 0x0170 */ MagicWindFunc actionFunc; } MagicWind; // size = 0x0174 extern const ActorInit Magic_Wind_InitVars; diff --git a/src/overlays/actors/ovl_Magic_Wind/z_magic_wind_gfx.c b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind_gfx.c new file mode 100644 index 0000000000..eece4ec38f --- /dev/null +++ b/src/overlays/actors/ovl_Magic_Wind/z_magic_wind_gfx.c @@ -0,0 +1,315 @@ +#include + +Vtx sCylinderVtx[] = { + VTX(0, 0, -6000, 1024, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(-4243, 12800, -4243, 1280, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 12800, -6000, 1024, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 0, -4243, 1280, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(0, 0, 6000, 0, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 12800, 4243, 256, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 12800, 6000, 0, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(4243, 0, 4243, 256, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(-6000, 12800, 0, 1536, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-6000, 0, 0, 1536, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 0, -4243, 768, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 12800, -4243, 768, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 12800, 4243, 1792, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 0, 4243, 1792, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(6000, 12800, 0, 512, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(6000, 0, 0, 512, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(0, 12800, 6000, 2048, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 0, 6000, 2048, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + + // 2nd Set + VTX(0, 0, -6000, 1024, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(-4243, 12800, -4243, 1280, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 12800, -6000, 1024, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 0, -4243, 1280, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(0, 0, 6000, 0, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 12800, 4243, 256, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 12800, 6000, 0, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(4243, 0, 4243, 256, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(-6000, 12800, 0, 1536, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-6000, 0, 0, 1536, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 0, -4243, 768, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(4243, 12800, -4243, 768, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 12800, 4243, 1792, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(-4243, 0, 4243, 1792, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(6000, 12800, 0, 512, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(6000, 0, 0, 512, 2048, 0xFF, 0xFF, 0xFF, 0xFF), + VTX(0, 12800, 6000, 2048, 0, 0xFF, 0xFF, 0xFF, 0x00), + VTX(0, 0, 6000, 2048, 2048, 0xFF, 0xFF, 0xFF, 0xFF), +}; + +char sWindEffTexture[] = { + 0x06, 0x19, 0x28, 0x43, 0x66, 0x82, 0xA0, 0xAE, 0xA3, 0x93, 0x76, 0x56, 0x32, 0x12, 0x00, 0x00, 0x03, 0x15, 0x25, + 0x39, 0x57, 0x81, 0xAD, 0xBC, 0xA4, 0x7B, 0x5D, 0x45, 0x33, 0x20, 0x24, 0x38, 0x33, 0x1F, 0x26, 0x4F, 0x71, 0x8C, + 0xB2, 0xC9, 0xC7, 0xAE, 0x87, 0x57, 0x33, 0x24, 0x11, 0x00, 0x00, 0x05, 0x1C, 0x3B, 0x5E, 0x7D, 0x90, 0x93, 0x85, + 0x76, 0x78, 0x81, 0x70, 0x3E, 0x14, 0x01, 0x16, 0x27, 0x33, 0x4F, 0x6C, 0x84, 0x96, 0x9A, 0x9B, 0x8C, 0x70, 0x4F, + 0x27, 0x09, 0x00, 0x00, 0x05, 0x15, 0x29, 0x43, 0x68, 0x96, 0xB9, 0xB7, 0x99, 0x6E, 0x4C, 0x34, 0x2A, 0x20, 0x26, + 0x31, 0x2B, 0x20, 0x2F, 0x4D, 0x66, 0x8F, 0xB5, 0xC0, 0xB4, 0x97, 0x6B, 0x46, 0x31, 0x1E, 0x07, 0x00, 0x00, 0x0C, + 0x27, 0x4C, 0x6B, 0x8C, 0x9E, 0x9A, 0x8B, 0x7A, 0x7A, 0x7C, 0x66, 0x42, 0x1E, 0x0B, 0x27, 0x30, 0x3E, 0x61, 0x7C, + 0x8F, 0x97, 0xA0, 0xA2, 0x87, 0x6F, 0x51, 0x2A, 0x0C, 0x00, 0x00, 0x09, 0x1D, 0x35, 0x59, 0x83, 0xAC, 0xC0, 0xB5, + 0x8E, 0x5E, 0x3E, 0x2E, 0x28, 0x25, 0x24, 0x27, 0x26, 0x28, 0x39, 0x4D, 0x6C, 0xA0, 0xB8, 0xB3, 0xA0, 0x7A, 0x58, + 0x40, 0x2E, 0x13, 0x00, 0x00, 0x06, 0x1B, 0x3B, 0x5D, 0x84, 0xA9, 0xB2, 0xAD, 0x99, 0x8B, 0x8F, 0x87, 0x67, 0x43, + 0x25, 0x1C, 0x2D, 0x3A, 0x4F, 0x73, 0x8D, 0x9D, 0xA8, 0xAB, 0x9F, 0x85, 0x72, 0x5B, 0x36, 0x16, 0x03, 0x00, 0x11, + 0x29, 0x48, 0x72, 0xA0, 0xC6, 0xC7, 0xAC, 0x80, 0x52, 0x36, 0x28, 0x27, 0x23, 0x1B, 0x1E, 0x24, 0x2E, 0x3A, 0x50, + 0x7B, 0xA6, 0xB3, 0xA6, 0x8F, 0x68, 0x4D, 0x39, 0x24, 0x08, 0x00, 0x00, 0x11, 0x2D, 0x4F, 0x73, 0xA2, 0xC1, 0xC8, + 0xBD, 0xAF, 0xB2, 0xB4, 0x95, 0x65, 0x40, 0x2B, 0x25, 0x30, 0x48, 0x5E, 0x7D, 0x96, 0xA9, 0xB4, 0xAC, 0x9B, 0x8A, + 0x79, 0x60, 0x3A, 0x1B, 0x0B, 0x0A, 0x1A, 0x35, 0x5C, 0x8B, 0xBC, 0xD6, 0xC9, 0xA0, 0x73, 0x4D, 0x2F, 0x1E, 0x20, + 0x1D, 0x11, 0x19, 0x28, 0x31, 0x38, 0x53, 0x83, 0xA2, 0xA9, 0x9D, 0x81, 0x5B, 0x42, 0x30, 0x1D, 0x02, 0x00, 0x06, + 0x1D, 0x3C, 0x61, 0x8D, 0xBA, 0xD8, 0xDB, 0xC7, 0xC7, 0xCE, 0xC1, 0x8C, 0x5C, 0x44, 0x35, 0x27, 0x3A, 0x58, 0x6C, + 0x84, 0x9B, 0xAF, 0xB4, 0xAE, 0xA3, 0x91, 0x78, 0x52, 0x2E, 0x17, 0x11, 0x14, 0x26, 0x48, 0x72, 0xA4, 0xD4, 0xDF, + 0xC7, 0x99, 0x72, 0x53, 0x32, 0x1C, 0x1F, 0x1B, 0x19, 0x2A, 0x39, 0x3C, 0x46, 0x63, 0x8A, 0xA0, 0xA3, 0x96, 0x73, + 0x51, 0x3D, 0x30, 0x1C, 0x02, 0x00, 0x10, 0x2A, 0x4D, 0x79, 0xA6, 0xD5, 0xEF, 0xE6, 0xD5, 0xD0, 0xC8, 0xAB, 0x77, + 0x57, 0x4F, 0x3F, 0x2E, 0x44, 0x63, 0x77, 0x87, 0x9F, 0xAD, 0xB3, 0xB7, 0xAF, 0x90, 0x64, 0x39, 0x1C, 0x11, 0x14, + 0x1F, 0x38, 0x5C, 0x8A, 0xBF, 0xE8, 0xE7, 0xC6, 0x9E, 0x7F, 0x64, 0x48, 0x31, 0x2B, 0x31, 0x3F, 0x4C, 0x4E, 0x53, + 0x66, 0x80, 0x96, 0xA4, 0xA3, 0x8E, 0x66, 0x4F, 0x47, 0x3B, 0x1F, 0x06, 0x06, 0x1C, 0x3A, 0x63, 0x93, 0xC2, 0xEF, + 0xFC, 0xED, 0xDD, 0xC2, 0xA4, 0x85, 0x64, 0x5A, 0x5A, 0x43, 0x38, 0x48, 0x66, 0x7A, 0x8A, 0xA0, 0xAA, 0xB2, 0xBC, + 0xAB, 0x78, 0x45, 0x21, 0x10, 0x0D, 0x19, 0x2F, 0x4D, 0x72, 0xA3, 0xD7, 0xF7, 0xED, 0xCC, 0xAE, 0x94, 0x7F, 0x69, + 0x53, 0x52, 0x63, 0x65, 0x5E, 0x5C, 0x69, 0x80, 0x97, 0xA4, 0xAA, 0xA1, 0x80, 0x60, 0x5B, 0x5E, 0x4C, 0x27, 0x0D, + 0x12, 0x2B, 0x4E, 0x7B, 0xAB, 0xDE, 0xFF, 0xFD, 0xEC, 0xD2, 0xA5, 0x7A, 0x69, 0x62, 0x66, 0x61, 0x45, 0x40, 0x4D, + 0x62, 0x79, 0x8D, 0xA3, 0xAB, 0xB3, 0xB0, 0x89, 0x52, 0x28, 0x12, 0x0A, 0x10, 0x25, 0x43, 0x63, 0x8C, 0xBE, 0xEA, + 0xFF, 0xF7, 0xDE, 0xC4, 0xB0, 0x9F, 0x8B, 0x7C, 0x8B, 0x89, 0x6F, 0x62, 0x66, 0x77, 0x8C, 0xA3, 0xB2, 0xAF, 0x99, + 0x73, 0x67, 0x73, 0x72, 0x58, 0x33, 0x1C, 0x23, 0x3D, 0x65, 0x91, 0xC4, 0xF2, 0xFF, 0xF5, 0xDD, 0xBA, 0x8A, 0x66, + 0x6E, 0x79, 0x79, 0x66, 0x4A, 0x47, 0x57, 0x65, 0x7D, 0x95, 0xAA, 0xB5, 0xB3, 0x94, 0x5C, 0x2E, 0x16, 0x0B, 0x0B, + 0x1B, 0x39, 0x59, 0x7D, 0xA6, 0xD5, 0xF9, 0xFF, 0xFF, 0xF5, 0xE0, 0xCC, 0xB8, 0xAC, 0xAB, 0xA9, 0x8D, 0x6F, 0x66, + 0x71, 0x86, 0x9D, 0xAE, 0xBC, 0xAE, 0x8E, 0x76, 0x80, 0x8A, 0x7C, 0x60, 0x44, 0x33, 0x38, 0x52, 0x7B, 0xAA, 0xDD, + 0xFE, 0xFF, 0xE7, 0xC9, 0xA4, 0x7F, 0x76, 0x90, 0x9B, 0x86, 0x6B, 0x52, 0x50, 0x63, 0x76, 0x8B, 0xA1, 0xB9, 0xC0, + 0xAA, 0x75, 0x3A, 0x19, 0x12, 0x12, 0x19, 0x2E, 0x50, 0x75, 0x9B, 0xC1, 0xE7, 0xFF, 0xFF, 0xFF, 0xFF, 0xF5, 0xDF, + 0xCC, 0xC7, 0xB6, 0x9A, 0x7D, 0x67, 0x69, 0x85, 0xA0, 0xB0, 0xC0, 0xC1, 0xA8, 0x8C, 0x87, 0x99, 0x96, 0x7B, 0x65, + 0x5B, 0x52, 0x52, 0x6B, 0x90, 0xC2, 0xEC, 0xFF, 0xFB, 0xDD, 0xBD, 0xA1, 0x90, 0x9B, 0xB2, 0xA9, 0x82, 0x68, 0x61, + 0x5E, 0x6B, 0x81, 0x9E, 0xB4, 0xCA, 0xC4, 0x9D, 0x5C, 0x28, 0x15, 0x1C, 0x27, 0x30, 0x47, 0x6E, 0x96, 0xB8, 0xD7, + 0xF2, 0xFB, 0xF9, 0xFA, 0xFF, 0xF9, 0xE7, 0xD6, 0xBF, 0x9E, 0x7F, 0x67, 0x5D, 0x75, 0xA1, 0xB0, 0xBE, 0xCC, 0xC0, + 0xA3, 0x94, 0x9B, 0xA8, 0x96, 0x78, 0x70, 0x78, 0x73, 0x71, 0x80, 0xA6, 0xD6, 0xF1, 0xF6, 0xF2, 0xDD, 0xC4, 0xB7, + 0xB4, 0xBD, 0xB9, 0xA0, 0x79, 0x6D, 0x6F, 0x6B, 0x6D, 0x87, 0xAC, 0xCA, 0xD5, 0xC0, 0x8E, 0x4F, 0x28, 0x23, 0x31, + 0x3F, 0x4C, 0x69, 0x93, 0xB5, 0xCE, 0xE3, 0xED, 0xEA, 0xE5, 0xE6, 0xEC, 0xF1, 0xE5, 0xCD, 0xAA, 0x8A, 0x6F, 0x5E, + 0x67, 0x8D, 0xB2, 0xB7, 0xC8, 0xD1, 0xBF, 0xA4, 0x99, 0xA1, 0xA4, 0x8E, 0x7D, 0x86, 0x95, 0x8F, 0x87, 0x94, 0xBD, + 0xDF, 0xE6, 0xE7, 0xE9, 0xE1, 0xDD, 0xD6, 0xD0, 0xC8, 0xAC, 0x98, 0x7B, 0x76, 0x75, 0x69, 0x6E, 0x8E, 0xB7, 0xDD, + 0xDB, 0xB9, 0x84, 0x54, 0x39, 0x39, 0x45, 0x53, 0x68, 0x8D, 0xB6, 0xCB, 0xD6, 0xDF, 0xDE, 0xD7, 0xD3, 0xD4, 0xDE, + 0xE2, 0xD7, 0xBD, 0x9F, 0x80, 0x69, 0x6C, 0x87, 0xA3, 0xBA, 0xC4, 0xD4, 0xD6, 0xC2, 0xA9, 0x96, 0x93, 0x90, 0x87, + 0x8D, 0x9E, 0xAA, 0xA0, 0x96, 0xA6, 0xC9, 0xD8, 0xD1, 0xD2, 0xDC, 0xE5, 0xE9, 0xE1, 0xD4, 0xBD, 0xA0, 0x94, 0x82, + 0x77, 0x67, 0x5E, 0x71, 0x95, 0xC7, 0xEB, 0xDC, 0xB0, 0x87, 0x69, 0x54, 0x4E, 0x51, 0x63, 0x84, 0xAE, 0xD0, 0xD1, + 0xD0, 0xD3, 0xCE, 0xC9, 0xC7, 0xC7, 0xCE, 0xD0, 0xC7, 0xAF, 0x96, 0x79, 0x6F, 0x82, 0x9F, 0xB5, 0xC7, 0xD7, 0xE3, + 0xDD, 0xC8, 0xA9, 0x87, 0x76, 0x77, 0x89, 0x9F, 0xB0, 0xB4, 0xA5, 0xA0, 0xB2, 0xC7, 0xC8, 0xB8, 0xBC, 0xCA, 0xD8, + 0xDB, 0xD8, 0xC8, 0xAC, 0x97, 0x86, 0x76, 0x62, 0x51, 0x59, 0x73, 0xA1, 0xDF, 0xF7, 0xD3, 0xA8, 0x95, 0x86, 0x73, + 0x5C, 0x59, 0x71, 0x9F, 0xC8, 0xD3, 0xCA, 0xC9, 0xCA, 0xC2, 0xBA, 0xB8, 0xB7, 0xBA, 0xBF, 0xB7, 0xA3, 0x90, 0x76, + 0x7B, 0x94, 0xAA, 0xC3, 0xD3, 0xE1, 0xF0, 0xE2, 0xC6, 0xA2, 0x73, 0x58, 0x65, 0x8C, 0xAB, 0xB7, 0xB3, 0xA5, 0xA9, + 0xB4, 0xBC, 0xAF, 0xA0, 0xA4, 0xB3, 0xC1, 0xD0, 0xD1, 0xB7, 0x99, 0x85, 0x70, 0x53, 0x40, 0x47, 0x5A, 0x7B, 0xB8, + 0xF6, 0xF6, 0xC8, 0xA3, 0xA0, 0x9F, 0x85, 0x65, 0x63, 0x85, 0xB6, 0xCE, 0xCB, 0xC9, 0xCC, 0xC4, 0xB0, 0xA2, 0xA1, + 0xA4, 0xAA, 0xB2, 0xAD, 0x9D, 0x8E, 0x79, 0x89, 0xA5, 0xBC, 0xCB, 0xCE, 0xDE, 0xF2, 0xDE, 0xBD, 0x96, 0x61, 0x46, + 0x60, 0x8D, 0xAE, 0xB3, 0xAE, 0xAB, 0xB4, 0xB5, 0xAA, 0x90, 0x86, 0x8D, 0xA0, 0xBA, 0xD2, 0xCA, 0xA4, 0x82, 0x70, + 0x5B, 0x36, 0x30, 0x46, 0x5C, 0x8D, 0xD2, 0xFC, 0xEC, 0xC4, 0xA8, 0xA5, 0xA4, 0x8B, 0x71, 0x75, 0x9E, 0xC1, 0xCC, + 0xCA, 0xCD, 0xCD, 0xB6, 0x91, 0x80, 0x85, 0x93, 0xA0, 0xAB, 0xAA, 0x9A, 0x90, 0x85, 0x97, 0xB7, 0xC6, 0xBD, 0xB9, + 0xD6, 0xEB, 0xD8, 0xB4, 0x86, 0x5A, 0x45, 0x62, 0x8D, 0xA6, 0xAB, 0xB2, 0xB9, 0xBF, 0xB3, 0x8E, 0x72, 0x6E, 0x7D, + 0xA2, 0xCA, 0xD0, 0xB5, 0x8E, 0x70, 0x65, 0x50, 0x38, 0x34, 0x43, 0x5D, 0xA0, 0xE0, 0xF4, 0xE6, 0xCA, 0xAE, 0xA3, + 0x9A, 0x8D, 0x83, 0x90, 0xB2, 0xC9, 0xCC, 0xCC, 0xCD, 0xBF, 0x98, 0x6B, 0x5D, 0x6F, 0x85, 0xA1, 0xB2, 0xAC, 0x9B, + 0x95, 0x8F, 0x9F, 0xAE, 0xA5, 0x97, 0xA5, 0xCE, 0xE5, 0xD4, 0xAC, 0x83, 0x63, 0x56, 0x6B, 0x8C, 0x9E, 0xAC, 0xBF, + 0xCA, 0xC3, 0x9F, 0x70, 0x5A, 0x62, 0x86, 0xBF, 0xD7, 0xBD, 0x9A, 0x80, 0x6D, 0x65, 0x54, 0x4C, 0x3F, 0x40, 0x63, + 0xAD, 0xDD, 0xEA, 0xE2, 0xCE, 0xAC, 0x9A, 0x93, 0x90, 0x9A, 0xAF, 0xC1, 0xCC, 0xC8, 0xC8, 0xBF, 0x9E, 0x70, 0x48, + 0x47, 0x63, 0x84, 0xB0, 0xB9, 0xAD, 0x9A, 0x91, 0x8E, 0x8D, 0x7D, 0x6F, 0x76, 0x99, 0xC4, 0xDE, 0xD4, 0xAF, 0x8D, + 0x73, 0x70, 0x7C, 0x91, 0xA2, 0xB7, 0xCB, 0xD0, 0xB0, 0x7F, 0x5A, 0x52, 0x6D, 0xAA, 0xDC, 0xCA, 0xA1, 0x8D, 0x7D, + 0x71, 0x6F, 0x68, 0x5C, 0x40, 0x42, 0x71, 0xB6, 0xD8, 0xE2, 0xDB, 0xC4, 0x9F, 0x95, 0x94, 0x98, 0xB3, 0xC9, 0xC9, + 0xC3, 0xBE, 0xB8, 0xA1, 0x76, 0x4D, 0x33, 0x3D, 0x66, 0x96, 0xC0, 0xB6, 0xA5, 0x97, 0x82, 0x77, 0x60, 0x42, 0x46, + 0x65, 0x91, 0xBD, 0xD5, 0xD9, 0xBD, 0x9E, 0x8D, 0x8B, 0x97, 0xA6, 0xB4, 0xC6, 0xCD, 0xBA, 0x90, 0x66, 0x52, 0x5D, + 0x8C, 0xCB, 0xD7, 0xAD, 0x93, 0x8A, 0x80, 0x76, 0x7B, 0x7B, 0x5B, 0x3C, 0x4A, 0x80, 0xC2, 0xDF, 0xD9, 0xC6, 0xA0, + 0x8E, 0x9A, 0x9E, 0xA4, 0xC7, 0xD4, 0xC2, 0xB7, 0xB0, 0xA2, 0x80, 0x52, 0x34, 0x2E, 0x47, 0x7F, 0xAB, 0xBF, 0xAC, + 0x94, 0x7C, 0x5E, 0x4E, 0x30, 0x1D, 0x35, 0x60, 0x8D, 0xB6, 0xCE, 0xDD, 0xCD, 0xB6, 0xA8, 0xA4, 0xB4, 0xC4, 0xCC, + 0xCD, 0xBC, 0x9A, 0x76, 0x5A, 0x57, 0x73, 0xA8, 0xCA, 0xBF, 0x9E, 0x8F, 0x89, 0x7D, 0x7B, 0x81, 0x71, 0x4A, 0x3B, + 0x58, 0x8D, 0xD0, 0xE1, 0xC9, 0x99, 0x72, 0x87, 0xA9, 0xB0, 0xB3, 0xD1, 0xD2, 0xB7, 0xAC, 0xA2, 0x8C, 0x65, 0x3B, + 0x29, 0x3C, 0x6C, 0x9B, 0xB4, 0xB0, 0x9B, 0x72, 0x4C, 0x38, 0x2A, 0x15, 0x11, 0x33, 0x5D, 0x8A, 0xB3, 0xC7, 0xDB, + 0xE2, 0xD0, 0xBE, 0xB6, 0xCE, 0xDE, 0xD8, 0xC3, 0xA2, 0x81, 0x65, 0x56, 0x5E, 0x85, 0xA5, 0xAD, 0xAE, 0x9B, 0x8D, + 0x86, 0x82, 0x7D, 0x70, 0x51, 0x36, 0x3B, 0x63, 0x99, 0xD0, 0xD1, 0xA1, 0x64, 0x58, 0x89, 0xB7, 0xBD, 0xBA, 0xD0, + 0xC9, 0xB0, 0xA2, 0x95, 0x79, 0x52, 0x2F, 0x2F, 0x5E, 0x91, 0xA5, 0xA9, 0x9A, 0x79, 0x4C, 0x2D, 0x25, 0x1C, 0x0F, + 0x12, 0x30, 0x59, 0x87, 0xAB, 0xBF, 0xDC, 0xF5, 0xE3, 0xC9, 0xC0, 0xE1, 0xE7, 0xD3, 0xB3, 0x8F, 0x71, 0x59, 0x4F, + 0x5E, 0x80, 0x8D, 0x95, 0xA3, 0x97, 0x86, 0x83, 0x85, 0x6F, 0x50, 0x39, 0x26, 0x3B, 0x6F, 0xA2, 0xB9, 0xA0, 0x67, + 0x46, 0x54, 0x8C, 0xB6, 0xB9, 0xC1, 0xD0, 0xBF, 0xA9, 0x99, 0x84, 0x63, 0x42, 0x30, 0x44, 0x79, 0x99, 0x9A, 0x93, + 0x80, 0x58, 0x38, 0x27, 0x23, 0x1A, 0x12, 0x16, 0x25, 0x52, 0x7B, 0x9B, 0xB8, 0xDB, 0xFE, 0xEB, 0xD0, 0xCA, 0xDF, + 0xD6, 0xC4, 0xA4, 0x82, 0x64, 0x4A, 0x42, 0x54, 0x6C, 0x77, 0x86, 0x96, 0x89, 0x79, 0x77, 0x75, 0x5B, 0x39, 0x28, + 0x20, 0x47, 0x7F, 0xA3, 0x8D, 0x5A, 0x3D, 0x45, 0x5C, 0x85, 0xA3, 0xB2, 0xCE, 0xD1, 0xB3, 0xA0, 0x8F, 0x71, 0x4E, + 0x3A, 0x3E, 0x56, 0x7A, 0x83, 0x7C, 0x78, 0x66, 0x4E, 0x3D, 0x2D, 0x20, 0x1A, 0x1C, 0x20, 0x23, 0x45, 0x67, 0x8A, + 0xAF, 0xD3, 0xF6, 0xE7, 0xD7, 0xCD, 0xC8, 0xBC, 0xAE, 0x99, 0x72, 0x56, 0x3A, 0x31, 0x45, 0x58, 0x6C, 0x7B, 0x82, + 0x75, 0x66, 0x62, 0x58, 0x4C, 0x35, 0x24, 0x2D, 0x5E, 0x8B, 0x9D, 0x60, 0x29, 0x2D, 0x4F, 0x5D, 0x70, 0x8D, 0xB5, + 0xDC, 0xC4, 0xA8, 0x9A, 0x83, 0x5D, 0x40, 0x42, 0x4C, 0x59, 0x65, 0x60, 0x5D, 0x60, 0x54, 0x50, 0x47, 0x32, 0x1C, + 0x1A, 0x2D, 0x3E, 0x34, 0x33, 0x51, 0x79, 0xA4, 0xC3, 0xE3, 0xE1, 0xD6, 0xC3, 0xAB, 0x9D, 0x97, 0x8B, 0x62, 0x44, + 0x27, 0x1F, 0x34, 0x49, 0x61, 0x6C, 0x6C, 0x64, 0x5C, 0x50, 0x44, 0x43, 0x43, 0x3A, 0x4A, 0x75, 0x90, 0x8E, 0x48, + 0x17, 0x28, 0x51, 0x50, 0x5A, 0x8C, 0xBC, 0xD3, 0xB3, 0xA0, 0x98, 0x77, 0x50, 0x46, 0x4F, 0x4E, 0x4F, 0x4C, 0x47, + 0x4C, 0x4F, 0x4D, 0x4D, 0x46, 0x32, 0x1B, 0x26, 0x50, 0x66, 0x4A, 0x2A, 0x42, 0x73, 0x9D, 0xB2, 0xD4, 0xD9, 0xCB, + 0xB2, 0x8C, 0x7F, 0x84, 0x7A, 0x52, 0x32, 0x1B, 0x10, 0x23, 0x3B, 0x4C, 0x53, 0x59, 0x5D, 0x5B, 0x48, 0x40, 0x4C, + 0x5D, 0x66, 0x6B, 0x81, 0x8D, 0x80, 0x42, 0x16, 0x24, 0x44, 0x3B, 0x58, 0x94, 0xB3, 0xC1, 0xAA, 0xA2, 0x94, 0x6F, + 0x54, 0x54, 0x56, 0x47, 0x3D, 0x3D, 0x3C, 0x43, 0x45, 0x47, 0x4A, 0x45, 0x36, 0x2D, 0x52, 0x7C, 0x79, 0x53, 0x29, + 0x3F, 0x73, 0x99, 0xAB, 0xC7, 0xCD, 0xBD, 0x98, 0x70, 0x6C, 0x73, 0x6B, 0x47, 0x27, 0x14, 0x08, 0x11, 0x28, 0x32, + 0x39, 0x4D, 0x5D, 0x5A, 0x4F, 0x51, 0x68, 0x8D, 0x8E, 0x80, 0x81, 0x85, 0x71, 0x38, 0x13, 0x1C, 0x2F, 0x33, 0x62, + 0x8F, 0xA6, 0xBD, 0xB0, 0xA8, 0x8C, 0x77, 0x64, 0x5E, 0x56, 0x3F, 0x2F, 0x2E, 0x31, 0x3F, 0x43, 0x45, 0x4D, 0x4E, + 0x50, 0x6B, 0x99, 0x9B, 0x7D, 0x5A, 0x2D, 0x3F, 0x71, 0x9B, 0xAB, 0xBC, 0xC0, 0xA3, 0x80, 0x5D, 0x5E, 0x63, 0x5C, + 0x44, 0x2A, 0x1C, 0x0B, 0x0B, 0x19, 0x21, 0x2D, 0x44, 0x60, 0x63, 0x67, 0x71, 0x97, 0xB4, 0x9D, 0x84, 0x79, 0x73, + 0x5B, 0x21, 0x10, 0x17, 0x24, 0x34, 0x62, 0x86, 0xA3, 0xC2, 0xBD, 0xA8, 0x8D, 0x86, 0x75, 0x6B, 0x58, 0x3C, 0x21, + 0x15, 0x24, 0x42, 0x4C, 0x4E, 0x57, 0x65, 0x8A, 0xC3, 0xCB, 0xAB, 0x84, 0x60, 0x31, 0x3E, 0x6E, 0x98, 0xAD, 0xB3, + 0xB2, 0x8C, 0x71, 0x50, 0x54, 0x5A, 0x58, 0x4D, 0x3E, 0x2F, 0x1E, 0x15, 0x15, 0x1E, 0x2F, 0x45, 0x62, 0x7A, 0x87, + 0xA0, 0xBD, 0xAA, 0x8D, 0x7B, 0x69, 0x52, 0x3C, 0x11, 0x15, 0x1E, 0x1E, 0x32, 0x5B, 0x82, 0xA4, 0xC8, 0xBE, 0xA5, + 0x97, 0x91, 0x83, 0x79, 0x5D, 0x3C, 0x1A, 0x0F, 0x25, 0x4C, 0x60, 0x61, 0x65, 0x8C, 0xCA, 0xF7, 0xDE, 0xB9, 0x8D, + 0x64, 0x36, 0x3B, 0x66, 0x90, 0xAA, 0xA8, 0x9F, 0x81, 0x62, 0x46, 0x50, 0x5A, 0x64, 0x61, 0x52, 0x42, 0x35, 0x25, + 0x19, 0x20, 0x38, 0x4F, 0x68, 0x8D, 0xAC, 0xC3, 0xAB, 0x77, 0x6B, 0x67, 0x4E, 0x30, 0x1D, 0x14, 0x23, 0x25, 0x17, + 0x32, 0x58, 0x7C, 0xA3, 0xC0, 0xB3, 0xA1, 0x9A, 0x97, 0x8D, 0x82, 0x60, 0x3C, 0x1E, 0x1E, 0x39, 0x5C, 0x7A, 0x76, + 0x82, 0xBA, 0xE5, 0xFF, 0xEB, 0xC2, 0x94, 0x68, 0x3D, 0x32, 0x5C, 0x82, 0x9E, 0x9B, 0x8C, 0x69, 0x48, 0x44, 0x56, + 0x6E, 0x81, 0x76, 0x63, 0x57, 0x4A, 0x2F, 0x1F, 0x2A, 0x44, 0x5B, 0x78, 0xA0, 0xC6, 0xAF, 0x72, 0x42, 0x42, 0x44, + 0x2E, 0x11, 0x0A, 0x21, 0x2A, 0x21, 0x13, 0x32, 0x53, 0x79, 0x9A, 0xB0, 0xA5, 0x96, 0x97, 0x9D, 0x91, 0x83, 0x5C, + 0x43, 0x33, 0x39, 0x4F, 0x73, 0x90, 0x90, 0xAC, 0xD3, 0xE6, 0xFF, 0xF4, 0xC4, 0x98, 0x6B, 0x40, 0x28, 0x4F, 0x6F, + 0x8E, 0x8B, 0x6C, 0x39, 0x30, 0x4E, 0x6C, 0x93, 0x9B, 0x87, 0x79, 0x6F, 0x56, 0x31, 0x26, 0x38, 0x51, 0x68, 0x87, + 0xB2, 0xB3, 0x7B, 0x47, 0x1F, 0x19, 0x1E, 0x0F, 0x00, 0x0F, 0x2A, 0x27, 0x16, 0x0B, 0x30, 0x51, 0x77, 0x8C, 0xA0, + 0x98, 0x8E, 0x96, 0xA2, 0x99, 0x7F, 0x5E, 0x54, 0x50, 0x51, 0x61, 0x8A, 0x9E, 0xAE, 0xC8, 0xD9, 0xF0, 0xFF, 0xF9, + 0xC7, 0x93, 0x67, 0x44, 0x1C, 0x3C, 0x60, 0x7F, 0x6E, 0x36, 0x14, 0x35, 0x67, 0x87, 0xA8, 0xA2, 0x9D, 0x96, 0x7A, + 0x4D, 0x2D, 0x2E, 0x45, 0x61, 0x76, 0x96, 0xAA, 0x87, 0x5D, 0x39, 0x12, 0x00, 0x03, 0x00, 0x0D, 0x21, 0x27, 0x19, + 0x08, 0x06, 0x2E, 0x52, 0x71, 0x80, 0x95, 0x91, 0x8F, 0x9A, 0xAA, 0xA0, 0x80, 0x6B, 0x6F, 0x6B, 0x65, 0x70, 0x97, + 0xAB, 0xC3, 0xD4, 0xE9, 0xFE, 0xFF, 0xFB, 0xC2, 0x89, 0x66, 0x44, 0x0D, 0x2B, 0x50, 0x64, 0x38, 0x0F, 0x1D, 0x58, + 0x84, 0x94, 0x9F, 0xA0, 0xB3, 0xA2, 0x69, 0x38, 0x29, 0x39, 0x58, 0x6F, 0x81, 0x9D, 0x95, 0x77, 0x5D, 0x3F, 0x17, + 0x00, 0x00, 0x11, 0x2D, 0x35, 0x17, 0x05, 0x01, 0x06, 0x2F, 0x52, 0x6B, 0x7A, 0x8F, 0x94, 0x99, 0xA4, 0xAF, 0xA3, + 0x8B, 0x80, 0x85, 0x7D, 0x75, 0x7F, 0xA5, 0xBA, 0xD1, 0xE5, 0xFC, 0xFF, 0xFF, 0xF6, 0xBA, 0x8C, 0x6C, 0x39, 0x06, + 0x1C, 0x3B, 0x33, 0x0C, 0x15, 0x42, 0x79, 0x91, 0x8C, 0x95, 0xA9, 0xB8, 0x8F, 0x4F, 0x2F, 0x34, 0x4F, 0x6E, 0x7B, + 0x89, 0x9A, 0x91, 0x81, 0x68, 0x4A, 0x23, 0x06, 0x1A, 0x3B, 0x4D, 0x3D, 0x07, 0x00, 0x05, 0x0B, 0x2E, 0x50, 0x6B, + 0x7B, 0x8F, 0x9A, 0xA5, 0xAB, 0xAD, 0xA8, 0xA2, 0x96, 0x8C, 0x89, 0x81, 0x90, 0xB4, 0xC3, 0xDE, 0xF4, 0xFF, 0xFF, + 0xFF, 0xEF, 0xC0, 0x9E, 0x6B, 0x29, 0x02, 0x11, 0x19, 0x0A, 0x11, 0x34, 0x5B, 0x7F, 0x8C, 0x87, 0x9E, 0xB3, 0xA0, + 0x70, 0x46, 0x3A, 0x51, 0x70, 0x83, 0x85, 0x8B, 0xA1, 0xA1, 0x8F, 0x6E, 0x50, 0x31, 0x29, 0x51, 0x6C, 0x60, 0x33, + 0x08, 0x07, 0x10, 0x12, 0x29, 0x50, 0x73, 0x81, 0x93, 0xA4, 0xA9, 0xA9, 0xAC, 0xB9, 0xB8, 0x98, 0x8C, 0x8C, 0x8D, + 0xA2, 0xB9, 0xC8, 0xE3, 0xF6, 0xFF, 0xFF, 0xF3, 0xF4, 0xD1, 0xA2, 0x5C, 0x17, 0x01, 0x06, 0x02, 0x0D, 0x30, 0x45, + 0x5E, 0x70, 0x81, 0x8E, 0xA8, 0xA9, 0x7F, 0x63, 0x4F, 0x59, 0x7D, 0x97, 0x97, 0x8D, 0x90, 0xB2, 0xB4, 0x91, 0x6C, + 0x58, 0x54, 0x66, 0x8F, 0x89, 0x5E, 0x27, 0x23, 0x24, 0x21, 0x16, 0x29, 0x59, 0x7D, 0x85, 0x97, 0xA8, 0xA0, 0xA4, + 0xB8, 0xCC, 0xBD, 0x93, 0x8C, 0x8C, 0x95, 0xA6, 0xBA, 0xCE, 0xE3, 0xFA, 0xFF, 0xFA, 0xF5, 0xFF, 0xD5, 0x94, 0x48, + 0x0C, 0x00, 0x00, 0x09, 0x2A, 0x44, 0x44, 0x5B, 0x66, 0x81, 0x9B, 0xA4, 0x93, 0x72, 0x67, 0x66, 0x82, 0xAB, 0xB5, + 0xA5, 0x98, 0xA0, 0xBE, 0xB5, 0x8B, 0x6C, 0x6C, 0x8F, 0xAD, 0xB6, 0x8E, 0x5A, 0x2E, 0x4F, 0x49, 0x31, 0x1E, 0x34, + 0x64, 0x82, 0x87, 0x94, 0xA0, 0x99, 0xAD, 0xC8, 0xD1, 0xB9, 0x99, 0x8D, 0x8D, 0x91, 0xA2, 0xB9, 0xD4, 0xEB, 0xFD, + 0xFA, 0xF5, 0xFF, 0xFF, 0xC6, 0x7D, 0x3E, 0x11, 0x05, 0x0D, 0x21, 0x3A, 0x44, 0x44, 0x5C, 0x69, 0x8B, 0xA2, 0x9A, + 0x8B, 0x78, 0x78, 0x85, 0xAA, 0xC7, 0xC0, 0xAF, 0xA8, 0xAD, 0xB7, 0xAA, 0x85, 0x77, 0x94, 0xCE, 0xE1, 0xC0, 0x8F, + 0x65, 0x4F, 0x7B, 0x62, 0x3E, 0x2F, 0x48, 0x6D, 0x7D, 0x81, 0x8F, 0x96, 0x9F, 0xBC, 0xCC, 0xCE, 0xBF, 0xA8, 0x93, + 0x87, 0x89, 0x9E, 0xBA, 0xDC, 0xF2, 0xF4, 0xEC, 0xF5, 0xFF, 0xFA, 0xB0, 0x73, 0x48, 0x30, 0x31, 0x3C, 0x3D, 0x39, + 0x40, 0x47, 0x5E, 0x72, 0x96, 0xA0, 0x98, 0x93, 0x89, 0x90, 0xA4, 0xC0, 0xC8, 0xC2, 0xB8, 0xB4, 0xAD, 0xAA, 0xA2, + 0x8A, 0x97, 0xCC, 0xFC, 0xF6, 0xC4, 0x9D, 0x87, 0x82, 0x94, 0x68, 0x4E, 0x49, 0x5D, 0x72, 0x70, 0x7C, 0x90, 0x9A, + 0xB2, 0xC3, 0xCD, 0xD6, 0xCD, 0xB4, 0x97, 0x83, 0x87, 0xA3, 0xC6, 0xE3, 0xEF, 0xE9, 0xDF, 0xEF, 0xFF, 0xE7, 0xA8, + 0x7F, 0x67, 0x68, 0x70, 0x6B, 0x53, 0x39, 0x3F, 0x49, 0x5E, 0x7F, 0x9B, 0xA0, 0xA2, 0x9F, 0x9A, 0xA9, 0xB3, 0xBD, + 0xBF, 0xBD, 0xBC, 0xB7, 0xA5, 0xA2, 0xA4, 0xA4, 0xCB, 0xFB, 0xFF, 0xFB, 0xD4, 0xBE, 0xB7, 0xAF, 0x97, 0x6C, 0x62, + 0x67, 0x72, 0x76, 0x6D, 0x80, 0x95, 0xAB, 0xC1, 0xCA, 0xD9, 0xE7, 0xD7, 0xB9, 0x9A, 0x87, 0x91, 0xB2, 0xD2, 0xE5, + 0xE7, 0xDB, 0xD1, 0xE7, 0xFE, 0xE0, 0xB4, 0x9D, 0x97, 0xA0, 0x99, 0x7B, 0x5D, 0x3B, 0x3F, 0x4A, 0x63, 0x8E, 0x9F, + 0xAA, 0xAE, 0xA6, 0xA8, 0xB2, 0xAD, 0xB3, 0xB4, 0xB6, 0xBE, 0xB6, 0xA2, 0xA2, 0xB8, 0xD0, 0xFB, 0xFF, 0xFF, 0xFE, + 0xEC, 0xE5, 0xDF, 0xC8, 0x96, 0x78, 0x7D, 0x87, 0x7D, 0x7C, 0x7B, 0x8B, 0x9F, 0xB3, 0xC9, 0xDB, 0xEF, 0xF1, 0xDB, + 0xBA, 0x9F, 0x91, 0xA2, 0xC3, 0xD9, 0xDC, 0xD3, 0xBF, 0xC0, 0xDE, 0xFB, 0xEC, 0xD5, 0xC9, 0xC6, 0xBD, 0xA2, 0x79, + 0x5B, 0x38, 0x3C, 0x54, 0x76, 0x9E, 0xA5, 0xB7, 0xB8, 0xAC, 0xAC, 0xAD, 0xA8, 0xAC, 0xAD, 0xB6, 0xBE, 0xB4, 0xA5, + 0xAF, 0xD7, 0xF0, 0xFF, 0xFF, 0xFF, 0xFB, 0xFC, 0xFF, 0xF3, 0xCA, 0x9E, 0x90, 0x9D, 0x96, 0x81, 0x86, 0x8A, 0x9D, + 0xAA, 0xB7, 0xD4, 0xF2, 0xFF, 0xF5, 0xD9, 0xBA, 0xA4, 0xA1, 0xB7, 0xD5, 0xD6, 0xBD, 0xA6, 0x9F, 0xAF, 0xD0, 0xEF, + 0xFB, 0xFA, 0xED, 0xDF, 0xC1, 0x9B, 0x70, 0x51, 0x32, 0x44, 0x6E, 0x94, 0xA6, 0xA9, 0xBF, 0xC1, 0xB3, 0xAC, 0xA8, + 0xA5, 0xA9, 0xAF, 0xBC, 0xBE, 0xB7, 0xB5, 0xC8, 0xE0, 0xF2, 0xFF, 0xFF, 0xF3, 0xEA, 0xF7, 0xFF, 0xF3, 0xC7, 0xB0, + 0xB0, 0xAB, 0x8A, 0x81, 0x89, 0x91, 0xA2, 0xAC, 0xC6, 0xE5, 0xFF, 0xFF, 0xF7, 0xD9, 0xBD, 0xAD, 0xB3, 0xCC, 0xD8, + 0xB9, 0x86, 0x76, 0x81, 0x9D, 0xBC, 0xDB, 0xF9, 0xFF, 0xF7, 0xE0, 0xBA, 0x8E, 0x65, 0x45, 0x34, 0x61, 0x94, 0xA4, + 0x9F, 0xA6, 0xC4, 0xCC, 0xC0, 0xAF, 0xA9, 0xAA, 0xB2, 0xBE, 0xC0, 0xBF, 0xC2, 0xCB, 0xCD, 0xCC, 0xDE, 0xF3, 0xEA, + 0xD2, 0xD5, 0xE5, 0xF1, 0xEA, 0xC7, 0xC8, 0xC0, 0x9D, 0x79, 0x78, 0x7F, 0x8A, 0x93, 0xA5, 0xD2, 0xF5, 0xFF, 0xFF, + 0xF7, 0xD9, 0xC3, 0xBC, 0xC4, 0xCD, 0xBA, 0x83, 0x52, 0x52, 0x68, 0x85, 0xA4, 0xC9, 0xEB, 0xFB, 0xED, 0xD7, 0xAE, + 0x80, 0x59, 0x40, 0x48, 0x87, 0xA9, 0x93, 0x8F, 0xA5, 0xCE, 0xDE, 0xD0, 0xBA, 0xB3, 0xBA, 0xC7, 0xCB, 0xC2, 0xC3, + 0xCD, 0xCE, 0xB8, 0xB0, 0xC2, 0xCB, 0xBD, 0xB7, 0xC1, 0xD2, 0xE0, 0xE1, 0xCC, 0xCA, 0xAB, 0x84, 0x6C, 0x66, 0x69, + 0x72, 0x80, 0xA1, 0xD5, 0xFF, 0xFF, 0xFF, 0xF6, 0xDD, 0xCE, 0xCA, 0xC2, 0xAC, 0x86, 0x50, 0x2E, 0x36, 0x4F, 0x6E, + 0x94, 0xBD, 0xE1, 0xF3, 0xE1, 0xCC, 0x9F, 0x70, 0x54, 0x50, 0x6E, 0x98, 0x97, 0x7C, 0x89, 0xAD, 0xE0, 0xF0, 0xDC, + 0xCB, 0xC8, 0xD4, 0xD9, 0xD0, 0xC7, 0xC8, 0xC8, 0xB8, 0x9A, 0x93, 0x98, 0x97, 0x9A, 0xA1, 0xB3, 0xC7, 0xD5, 0xDC, + 0xD0, 0xAA, 0x81, 0x6B, 0x5A, 0x51, 0x51, 0x5B, 0x76, 0xA2, 0xD5, 0xFC, 0xFF, 0xFF, 0xF6, 0xE5, 0xD9, 0xC7, 0xA5, + 0x80, 0x58, 0x30, 0x16, 0x1C, 0x36, 0x5C, 0x8A, 0xB8, 0xDC, 0xEC, 0xD9, 0xC0, 0x8D, 0x67, 0x60, 0x6E, 0x86, 0x85, + 0x7A, 0x7B, 0x90, 0xBF, 0xF4, 0xFD, 0xEA, 0xE1, 0xE3, 0xE8, 0xDF, 0xD2, 0xCB, 0xC3, 0xB4, 0x9A, 0x7F, 0x70, 0x6B, + 0x71, 0x83, 0x94, 0xAD, 0xC2, 0xD0, 0xD2, 0xC4, 0x7B, 0x5B, 0x4A, 0x3E, 0x38, 0x3A, 0x4D, 0x73, 0xA4, 0xD1, 0xEF, + 0xFF, 0xFF, 0xF9, 0xEA, 0xD7, 0xAF, 0x85, 0x5E, 0x3C, 0x1F, 0x09, 0x08, 0x25, 0x51, 0x84, 0xB5, 0xD7, 0xE7, 0xD1, + 0xAF, 0x80, 0x67, 0x6E, 0x85, 0x7F, 0x6B, 0x70, 0x89, 0xA6, 0xD9, 0xFF, 0xFF, 0xFB, 0xFA, 0xFB, 0xEF, 0xDD, 0xD4, + 0xCB, 0xB4, 0x98, 0x7F, 0x65, 0x50, 0x50, 0x5D, 0x73, 0x91, 0xAD, 0xC1, 0xCA, 0xC0, 0xA3, 0x58, 0x3F, 0x2F, 0x21, + 0x1B, 0x27, 0x46, 0x76, 0xA4, 0xC6, 0xE3, 0xFF, 0xFF, 0xFB, 0xE8, 0xC4, 0x97, 0x70, 0x4D, 0x2E, 0x15, 0x02, 0x00, + 0x1B, 0x4E, 0x83, 0xB3, 0xD4, 0xDC, 0xC2, 0xA2, 0x7A, 0x6C, 0x7B, 0x87, 0x70, 0x66, 0x78, 0x9B, 0xC4, 0xF1, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xEB, 0xD6, 0xD0, 0xC1, 0xA1, 0x7C, 0x62, 0x48, 0x3D, 0x47, 0x57, 0x73, 0x96, 0xAE, 0xC0, + 0xBF, 0xA6, 0x7B, 0x3F, 0x2D, 0x1F, 0x13, 0x0B, 0x1A, 0x43, 0x76, 0x9F, 0xC1, 0xE3, 0xFF, 0xFF, 0xF7, 0xDB, 0xAE, + 0x84, 0x61, 0x42, 0x26, 0x0F, 0x00, 0x00, 0x17, 0x4D, 0x84, 0xB6, 0xD0, 0xCC, 0xB3, 0x98, 0x79, 0x75, 0x83, 0x82, + 0x73, 0x72, 0x8B, 0xB8, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xE0, 0xC8, 0xC1, 0xAF, 0x89, 0x5B, 0x3F, 0x31, + 0x35, 0x44, 0x5A, 0x7D, 0xA0, 0xB3, 0xBA, 0xAD, 0x86, 0x5C, 0x31, 0x23, 0x19, 0x0D, 0x08, 0x13, 0x40, 0x71, 0x9F, + 0xC9, 0xF3, 0xFF, 0xFF, 0xEF, 0xC8, 0x9A, 0x73, 0x53, 0x39, 0x21, 0x0C, 0x02, 0x06, 0x1C, 0x51, 0x8B, 0xB7, 0xC7, + 0xBC, 0xA2, 0x8E, 0x7F, 0x7C, 0x85, 0x85, 0x84, 0x86, 0xA5, 0xD6, 0xF4, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xCB, + 0xB2, 0xAC, 0x96, 0x66, 0x35, 0x20, 0x25, 0x31, 0x47, 0x67, 0x91, 0xB3, 0xB6, 0xAF, 0x94, 0x69, 0x48, 0x2A, 0x1F, + 0x13, 0x09, 0x08, 0x19, 0x3E, 0x73, 0xAD, 0xE3, 0xFF, 0xFF, 0xFD, 0xDE, 0xB2, 0x87, 0x64, 0x48, 0x32, 0x1F, 0x0C, + 0x08, 0x14, 0x27, 0x5B, 0x8F, 0xB3, 0xBC, 0xAA, 0x8F, 0x87, 0x82, 0x81, 0x86, 0x91, 0x98, 0xA0, 0xC3, 0xEB, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xDD, 0xAD, 0x96, 0x8E, 0x71, 0x3E, 0x17, 0x0F, 0x1D, 0x32, 0x52, 0x7C, 0xAA, 0xC3, + 0xB5, 0xA0, 0x7C, 0x56, 0x3C, 0x28, 0x1C, 0x0B, 0x05, 0x0C, 0x21, 0x45, 0x83, 0xCB, 0xFF, 0xFF, 0xFF, 0xF2, 0xCA, + 0x9B, 0x73, 0x54, 0x3D, 0x2D, 0x1C, 0x10, 0x16, 0x28, 0x3A, 0x64, 0x94, 0xAF, 0xAF, 0x9B, 0x82, 0x82, 0x81, 0x82, + 0x89, 0x9D, 0xAA, 0xBC, 0xDF, 0xFA, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF1, 0xC1, 0x8F, 0x76, 0x69, 0x48, 0x1D, 0x05, + 0x06, 0x1A, 0x3B, 0x65, 0x95, 0xBE, 0xC7, 0xAB, 0x8E, 0x69, 0x46, 0x33, 0x28, 0x15, 0x00, 0x01, 0x13, 0x2F, 0x57, + 0xA1, 0xED, 0xFF, 0xFF, 0xFF, 0xDF, 0xB2, 0x83, 0x60, 0x46, 0x35, 0x27, 0x1D, 0x1C, 0x29, 0x3C, 0x49, 0x6E, 0x97, + 0xA9, 0xA5, 0x8E, 0x79, 0x7A, 0x7B, 0x7C, 0x89, 0xA5, 0xBD, 0xD4, 0xEF, 0xFC, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDB, + 0xA4, 0x77, 0x58, 0x44, 0x25, 0x08, 0x00, 0x02, 0x1E, 0x4A, 0x7C, 0xA9, 0xC7, 0xBC, 0x9D, 0x7C, 0x5A, 0x3B, 0x2F, + 0x27, 0x0C, 0x00, 0x02, 0x1A, 0x3F, 0x73, 0xC3, 0xFE, 0xFF, 0xFF, 0xF4, 0xC9, 0x97, 0x6B, 0x4E, 0x3B, 0x2D, 0x23, + 0x25, 0x2D, 0x3C, 0x48, 0x57, 0x7C, 0x9A, 0xA6, 0x9B, 0x81, 0x71, 0x6D, 0x70, 0x73, 0x85, 0xB2, 0xCE, 0xDC, 0xE5, + 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xEF, 0xBD, 0x8B, 0x62, 0x3E, 0x26, 0x0F, 0x00, 0x00, 0x07, 0x2B, 0x5E, 0x91, 0xB4, + 0xC0, 0xAC, 0x8D, 0x6D, 0x4E, 0x38, 0x32, 0x26, 0x03, 0x00, 0x06, 0x21, 0x52, 0x94, 0xD6, 0xFF, 0xFF, 0xFF, 0xE1, + 0xAE, 0x7B, 0x56, 0x3F, 0x2E, 0x23, 0x24, 0x30, 0x3D, 0x47, 0x50, 0x67, 0x8C, 0xA3, 0xA6, 0x8F, 0x73, 0x64, 0x5E, + 0x65, 0x6D, 0x87, 0xBA, 0xCD, 0xC7, 0xCE, 0xEB, 0xFF, 0xFF, 0xFF, 0xFE, 0xD3, 0xA1, 0x77, 0x4E, 0x2B, 0x13, 0x02, + 0x00, 0x00, 0x10, 0x3A, 0x72, 0x9F, 0xB3, 0xB4, 0x9D, 0x7B, 0x60, 0x4A, 0x43, 0x3E, 0x20, 0x00, 0x00, 0x0A, 0x2A, + 0x66, 0xA4, 0xD9, 0xFF, 0xFF, 0xF4, 0xCB, 0x93, 0x65, 0x45, 0x32, 0x21, 0x1B, 0x28, 0x3A, 0x46, 0x4D, 0x5A, 0x78, + 0x9E, 0xAF, 0xA2, 0x81, 0x64, 0x54, 0x52, 0x5D, 0x6F, 0x8D, 0xB3, 0xB0, 0xA8, 0xBF, 0xE3, 0xFF, 0xFF, 0xFF, 0xE9, + 0xB8, 0x8D, 0x67, 0x3F, 0x1D, 0x07, 0x00, 0x00, 0x02, 0x1D, 0x48, 0x82, 0xA0, 0xAD, 0xAB, 0x8D, 0x6F, 0x59, 0x57, + 0x5A, 0x48, 0x11, 0x00, 0x00, 0x0D, 0x35, 0x72, 0xAA, 0xDE, 0xFF, 0xFF, 0xE0, 0xAC, 0x79, 0x51, 0x34, 0x24, 0x16, + 0x16, 0x2A, 0x3D, 0x47, 0x50, 0x66, 0x8B, 0xAF, 0xB4, 0x9D, 0x71, 0x52, 0x48, 0x45, 0x53, 0x6E, 0x83, 0x8F, 0x87, + 0x8F, 0xB3, 0xD9, 0xFB, 0xFF, 0xF6, 0xCC, 0xA0, 0x7D, 0x5D, 0x32, 0x10, 0x00, 0x00, 0x00, 0x0D, 0x2A, 0x5A, 0x86, + 0x9E, 0xA6, 0x9D, 0x7D, 0x65, 0x62, 0x70, 0x6E, 0x45, 0x00, 0x00, 0x03, 0x15, 0x3D, 0x77, 0xAF, 0xDD, 0xF0, 0xE6, + 0xBA, 0x86, 0x5E, 0x39, 0x23, 0x14, 0x0C, 0x14, 0x2A, 0x3C, 0x46, 0x54, 0x72, 0x9E, 0xB6, 0xAF, 0x8C, 0x63, 0x49, + 0x3A, 0x35, 0x47, 0x5B, 0x61, 0x61, 0x68, 0x7F, 0xA6, 0xD0, 0xE9, 0xED, 0xD7, 0xAC, 0x89, 0x71, 0x4A, 0x21, 0x07, + 0x00, 0x00, 0x05, 0x1A, 0x3A, 0x62, 0x87, 0x9A, 0x97, 0x87, 0x6D, 0x66, 0x76, 0x7D, 0x60, 0x26, 0x00, 0x01, 0x0B, + 0x25, 0x4A, 0x7F, 0xB0, 0xD3, 0xDB, 0xC1, 0x95, 0x6B, 0x49, 0x2A, 0x14, 0x06, 0x07, 0x14, 0x2A, 0x39, 0x46, 0x5E, + 0x83, 0xAD, 0xB7, 0x9F, 0x75, 0x5D, 0x49, 0x2D, 0x29, 0x3B, 0x46, 0x3E, 0x3C, 0x54, 0x76, 0xA0, 0xC1, 0xD5, 0xD7, + 0xBF, 0x9B, 0x7C, 0x5C, 0x31, 0x17, 0x05, 0x00, 0x00, 0x0C, 0x26, 0x45, 0x69, 0x8B, 0x91, 0x8B, 0x78, 0x69, 0x76, + 0x85, 0x6D, 0x30, 0x02, 0x00, 0x09, 0x1A, 0x35, 0x5D, 0x85, 0xA9, 0xC6, 0xBF, 0xA1, 0x80, 0x5E, 0x3D, 0x1F, 0x07, + 0x00, 0x05, 0x16, 0x27, 0x35, 0x4C, 0x6D, 0x99, 0xB9, 0xB2, 0x8A, 0x68, 0x58, 0x42, 0x25, 0x24, 0x39, 0x3C, 0x28, + 0x29, 0x4E, 0x77, 0x98, 0xB5, 0xCC, 0xD0, 0xB7, 0x98, 0x70, 0x40, 0x26, 0x15, 0x05, 0x00, 0x02, 0x14, 0x30, 0x51, + 0x78, 0x8C, 0x8F, 0x86, 0x73, 0x72, 0x82, 0x83, 0x4E, 0x12, 0x00, +}; + +Gfx sInnerCylinderDList[] = { + gsDPPipeSync(), + gsDPSetTextureLUT(G_TT_NONE), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTextureBlock(sWindEffTexture, G_IM_FMT_I, G_IM_SIZ_8b, 64, 64, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, 6, 6, G_TX_NOLOD, G_TX_NOLOD), + gsDPLoadMultiBlock(sWindEffTexture, 0x0100, 1, G_IM_FMT_I, G_IM_SIZ_8b, 64, 64, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, 6, 6, 14, 14), + gsDPSetCombineLERP(TEXEL1, PRIMITIVE, PRIM_LOD_FRAC, TEXEL0, TEXEL1, TEXEL0, PRIM_LOD_FRAC, TEXEL0, PRIMITIVE, + ENVIRONMENT, COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0), + gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2), + gsSPClearGeometryMode(G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR), + gsDPSetPrimColor(0, 0x80, 0xFF, 0xFF, 0xAA, 0xFF), + gsDPSetEnvColor(0x96, 0xFF, 0x00, 0x00), + gsSPDisplayList(0x08000000), + gsSPVertex(&sCylinderVtx[0], 18, 0), + gsSP2Triangles(0, 1, 2, 0, 0, 3, 1, 0), + gsSP2Triangles(4, 5, 6, 0, 4, 7, 5, 0), + gsSP2Triangles(3, 8, 1, 0, 3, 9, 8, 0), + gsSP2Triangles(10, 2, 11, 0, 10, 0, 2, 0), + gsSP2Triangles(9, 12, 8, 0, 9, 13, 12, 0), + gsSP2Triangles(7, 14, 5, 0, 7, 15, 14, 0), + gsSP2Triangles(15, 11, 14, 0, 15, 10, 11, 0), + gsSP2Triangles(13, 16, 12, 0, 13, 17, 16, 0), + gsSPEndDisplayList(), +}; + +Gfx sOuterCylinderDList[] = { + gsDPPipeSync(), + gsDPSetTextureLUT(G_TT_NONE), + gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON), + gsDPLoadTextureBlock(sWindEffTexture, G_IM_FMT_I, G_IM_SIZ_8b, 64, 64, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, 6, 6, G_TX_NOLOD, G_TX_NOLOD), + gsDPLoadMultiBlock(sWindEffTexture, 0x0100, 1, G_IM_FMT_I, G_IM_SIZ_8b, 64, 64, 0, G_TX_NOMIRROR | G_TX_WRAP, + G_TX_NOMIRROR | G_TX_WRAP, 6, 6, 15, 15), + gsDPSetCombineLERP(TEXEL1, PRIMITIVE, PRIM_LOD_FRAC, TEXEL0, TEXEL1, TEXEL0, PRIM_LOD_FRAC, TEXEL0, PRIMITIVE, + ENVIRONMENT, COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0), + gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2), + gsSPClearGeometryMode(G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR), + gsDPSetPrimColor(0, 0x80, 0xFF, 0xFF, 0xAA, 0xFF), + gsDPSetEnvColor(0x00, 0x96, 0x00, 0x00), + gsSPDisplayList(0x09000000), + gsSPVertex(&sCylinderVtx[18], 18, 0), + gsSP2Triangles(0, 1, 2, 0, 0, 3, 1, 0), + gsSP2Triangles(4, 5, 6, 0, 4, 7, 5, 0), + gsSP2Triangles(3, 8, 1, 0, 3, 9, 8, 0), + gsSP2Triangles(10, 2, 11, 0, 10, 0, 2, 0), + gsSP2Triangles(9, 12, 8, 0, 9, 13, 12, 0), + gsSP2Triangles(7, 14, 5, 0, 7, 15, 14, 0), + gsSP2Triangles(15, 11, 14, 0, 15, 10, 11, 0), + gsSP2Triangles(13, 16, 12, 0, 13, 17, 16, 0), + gsSPEndDisplayList(), +};