diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Destroy.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Destroy.s deleted file mode 100644 index f8b6cdf108..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Destroy.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel ObjOshihiki_Destroy -/* 00718 80B9B898 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 0071C 80B9B89C AFA40018 */ sw $a0, 0x0018($sp) -/* 00720 80B9B8A0 8FAE0018 */ lw $t6, 0x0018($sp) -/* 00724 80B9B8A4 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00728 80B9B8A8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000 -/* 0072C 80B9B8AC 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810 -/* 00730 80B9B8B0 0C00FB56 */ jal DynaPolyInfo_Free - ## DynaPolyInfo_delReserve -/* 00734 80B9B8B4 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C -/* 00738 80B9B8B8 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0073C 80B9B8BC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00740 80B9B8C0 03E00008 */ jr $ra -/* 00744 80B9B8C4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Draw.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Draw.s deleted file mode 100644 index 295e85944b..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Draw.s +++ /dev/null @@ -1,178 +0,0 @@ -.rdata -glabel D_80B9CC5C - .asciz "../z_obj_oshihiki.c" - .balign 4 - -glabel D_80B9CC70 - .asciz "../z_obj_oshihiki.c" - .balign 4 - -glabel D_80B9CC84 - .asciz "../z_obj_oshihiki.c" - .balign 4 - -.late_rodata -glabel jtbl_80B9CD1C - .word L80B9C8B8 - .word L80B9C8B8 - .word L80B9C8F8 - .word L80B9C8B8 - .word L80B9C8B8 - .word L80B9C8B8 - .word L80B9C8B8 - .word L80B9C8B8 - .word L80B9C8F8 - .word L80B9C8F8 - .word L80B9C8F8 - .word L80B9C8B8 - -.text -glabel ObjOshihiki_Draw -/* 015E4 80B9C764 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8 -/* 015E8 80B9C768 AFBF001C */ sw $ra, 0x001C($sp) -/* 015EC 80B9C76C AFB00018 */ sw $s0, 0x0018($sp) -/* 015F0 80B9C770 AFA5005C */ sw $a1, 0x005C($sp) -/* 015F4 80B9C774 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000 -/* 015F8 80B9C778 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 015FC 80B9C77C 3C0680BA */ lui $a2, %hi(D_80B9CC5C) ## $a2 = 80BA0000 -/* 01600 80B9C780 24C6CC5C */ addiu $a2, $a2, %lo(D_80B9CC5C) ## $a2 = 80B9CC5C -/* 01604 80B9C784 27A4003C */ addiu $a0, $sp, 0x003C ## $a0 = FFFFFFE4 -/* 01608 80B9C788 24070509 */ addiu $a3, $zero, 0x0509 ## $a3 = 00000509 -/* 0160C 80B9C78C 0C031AB1 */ jal Graph_OpenDisps -/* 01610 80B9C790 AFA5004C */ sw $a1, 0x004C($sp) -/* 01614 80B9C794 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01618 80B9C798 0C2E6FC2 */ jal func_80B9BF08 -/* 0161C 80B9C79C 8FA5005C */ lw $a1, 0x005C($sp) -/* 01620 80B9C7A0 1040000E */ beq $v0, $zero, .L80B9C7DC -/* 01624 80B9C7A4 8FA8004C */ lw $t0, 0x004C($sp) -/* 01628 80B9C7A8 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 0162C 80B9C7AC 44810000 */ mtc1 $at, $f0 ## $f0 = 10.00 -/* 01630 80B9C7B0 C60401C4 */ lwc1 $f4, 0x01C4($s0) ## 000001C4 -/* 01634 80B9C7B4 C60601C8 */ lwc1 $f6, 0x01C8($s0) ## 000001C8 -/* 01638 80B9C7B8 44807000 */ mtc1 $zero, $f14 ## $f14 = 0.00 -/* 0163C 80B9C7BC 46002302 */ mul.s $f12, $f4, $f0 -/* 01640 80B9C7C0 AFA8004C */ sw $t0, 0x004C($sp) -/* 01644 80B9C7C4 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 01648 80B9C7C8 46003202 */ mul.s $f8, $f6, $f0 -/* 0164C 80B9C7CC 44064000 */ mfc1 $a2, $f8 -/* 01650 80B9C7D0 0C034261 */ jal Matrix_Translate -/* 01654 80B9C7D4 00000000 */ nop -/* 01658 80B9C7D8 8FA8004C */ lw $t0, 0x004C($sp) -.L80B9C7DC: -/* 0165C 80B9C7DC 960F0168 */ lhu $t7, 0x0168($s0) ## 00000168 -/* 01660 80B9C7E0 31F8FEFF */ andi $t8, $t7, 0xFEFF ## $t8 = 00000000 -/* 01664 80B9C7E4 A6180168 */ sh $t8, 0x0168($s0) ## 00000168 -/* 01668 80B9C7E8 8FB9005C */ lw $t9, 0x005C($sp) -/* 0166C 80B9C7EC 8F240000 */ lw $a0, 0x0000($t9) ## 00000000 -/* 01670 80B9C7F0 0C024F46 */ jal func_80093D18 -/* 01674 80B9C7F4 AFA8004C */ sw $t0, 0x004C($sp) -/* 01678 80B9C7F8 8FA8004C */ lw $t0, 0x004C($sp) -/* 0167C 80B9C7FC 3C0ADB06 */ lui $t2, 0xDB06 ## $t2 = DB060000 -/* 01680 80B9C800 354A0020 */ ori $t2, $t2, 0x0020 ## $t2 = DB060020 -/* 01684 80B9C804 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0 -/* 01688 80B9C808 3C0E8016 */ lui $t6, %hi(gSegments) -/* 0168C 80B9C80C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000 -/* 01690 80B9C810 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008 -/* 01694 80B9C814 AD0902C0 */ sw $t1, 0x02C0($t0) ## 000002C0 -/* 01698 80B9C818 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000 -/* 0169C 80B9C81C 8E0401CC */ lw $a0, 0x01CC($s0) ## 000001CC -/* 016A0 80B9C820 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF -/* 016A4 80B9C824 3C0ADA38 */ lui $t2, 0xDA38 ## $t2 = DA380000 -/* 016A8 80B9C828 00045900 */ sll $t3, $a0, 4 -/* 016AC 80B9C82C 000B6702 */ srl $t4, $t3, 28 -/* 016B0 80B9C830 000C6880 */ sll $t5, $t4, 2 -/* 016B4 80B9C834 01CD7021 */ addu $t6, $t6, $t5 -/* 016B8 80B9C838 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6) -/* 016BC 80B9C83C 00817824 */ and $t7, $a0, $at -/* 016C0 80B9C840 3C018000 */ lui $at, 0x8000 ## $at = 80000000 -/* 016C4 80B9C844 01CFC021 */ addu $t8, $t6, $t7 -/* 016C8 80B9C848 0301C821 */ addu $t9, $t8, $at -/* 016CC 80B9C84C AC590004 */ sw $t9, 0x0004($v0) ## 00000004 -/* 016D0 80B9C850 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0 -/* 016D4 80B9C854 354A0003 */ ori $t2, $t2, 0x0003 ## $t2 = DA380003 -/* 016D8 80B9C858 3C0580BA */ lui $a1, %hi(D_80B9CC70) ## $a1 = 80BA0000 -/* 016DC 80B9C85C 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008 -/* 016E0 80B9C860 AD0902C0 */ sw $t1, 0x02C0($t0) ## 000002C0 -/* 016E4 80B9C864 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000 -/* 016E8 80B9C868 8FAB005C */ lw $t3, 0x005C($sp) -/* 016EC 80B9C86C 24A5CC70 */ addiu $a1, $a1, %lo(D_80B9CC70) ## $a1 = 80B9CC70 -/* 016F0 80B9C870 2406051C */ addiu $a2, $zero, 0x051C ## $a2 = 0000051C -/* 016F4 80B9C874 8D640000 */ lw $a0, 0x0000($t3) ## 00000000 -/* 016F8 80B9C878 AFA8004C */ sw $t0, 0x004C($sp) -/* 016FC 80B9C87C 0C0346A2 */ jal Matrix_NewMtx -/* 01700 80B9C880 AFA20034 */ sw $v0, 0x0034($sp) -/* 01704 80B9C884 8FA30034 */ lw $v1, 0x0034($sp) -/* 01708 80B9C888 8FA8004C */ lw $t0, 0x004C($sp) -/* 0170C 80B9C88C AC620004 */ sw $v0, 0x0004($v1) ## 00000004 -/* 01710 80B9C890 8FAC005C */ lw $t4, 0x005C($sp) -/* 01714 80B9C894 958D00A4 */ lhu $t5, 0x00A4($t4) ## 000000A4 -/* 01718 80B9C898 2DA1000C */ sltiu $at, $t5, 0x000C -/* 0171C 80B9C89C 10200016 */ beq $at, $zero, .L80B9C8F8 -/* 01720 80B9C8A0 000D6880 */ sll $t5, $t5, 2 -/* 01724 80B9C8A4 3C0180BA */ lui $at, %hi(jtbl_80B9CD1C) ## $at = 80BA0000 -/* 01728 80B9C8A8 002D0821 */ addu $at, $at, $t5 -/* 0172C 80B9C8AC 8C2DCD1C */ lw $t5, %lo(jtbl_80B9CD1C)($at) -/* 01730 80B9C8B0 01A00008 */ jr $t5 -/* 01734 80B9C8B4 00000000 */ nop -glabel L80B9C8B8 -/* 01738 80B9C8B8 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0 -/* 0173C 80B9C8BC 3C0FFB00 */ lui $t7, 0xFB00 ## $t7 = FB000000 -/* 01740 80B9C8C0 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008 -/* 01744 80B9C8C4 AD0E02C0 */ sw $t6, 0x02C0($t0) ## 000002C0 -/* 01748 80B9C8C8 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000 -/* 0174C 80B9C8CC 920B01D1 */ lbu $t3, 0x01D1($s0) ## 000001D1 -/* 01750 80B9C8D0 921901D0 */ lbu $t9, 0x01D0($s0) ## 000001D0 -/* 01754 80B9C8D4 920F01D2 */ lbu $t7, 0x01D2($s0) ## 000001D2 -/* 01758 80B9C8D8 000B6400 */ sll $t4, $t3, 16 -/* 0175C 80B9C8DC 00194E00 */ sll $t1, $t9, 24 -/* 01760 80B9C8E0 012C6825 */ or $t5, $t1, $t4 ## $t5 = 00000000 -/* 01764 80B9C8E4 000FC200 */ sll $t8, $t7, 8 -/* 01768 80B9C8E8 01B8C825 */ or $t9, $t5, $t8 ## $t9 = 00000000 -/* 0176C 80B9C8EC 372A00FF */ ori $t2, $t9, 0x00FF ## $t2 = 000000FF -/* 01770 80B9C8F0 10000014 */ beq $zero, $zero, .L80B9C944 -/* 01774 80B9C8F4 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004 -glabel L80B9C8F8 -.L80B9C8F8: -/* 01778 80B9C8F8 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0 -/* 0177C 80B9C8FC 3C09FB00 */ lui $t1, 0xFB00 ## $t1 = FB000000 -/* 01780 80B9C900 3C038016 */ lui $v1, %hi(gGameInfo) -/* 01784 80B9C904 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008 -/* 01788 80B9C908 AD0B02C0 */ sw $t3, 0x02C0($t0) ## 000002C0 -/* 0178C 80B9C90C AC490000 */ sw $t1, 0x0000($v0) ## 00000000 -/* 01790 80B9C910 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1) -/* 01794 80B9C914 846C1172 */ lh $t4, 0x1172($v1) ## 80161172 -/* 01798 80B9C918 8478116E */ lh $t8, 0x116E($v1) ## 8016116E -/* 0179C 80B9C91C 846B1170 */ lh $t3, 0x1170($v1) ## 80161170 -/* 017A0 80B9C920 318E00FF */ andi $t6, $t4, 0x00FF ## $t6 = 00000000 -/* 017A4 80B9C924 000E7A00 */ sll $t7, $t6, 8 -/* 017A8 80B9C928 0018CE00 */ sll $t9, $t8, 24 -/* 017AC 80B9C92C 316900FF */ andi $t1, $t3, 0x00FF ## $t1 = 00000008 -/* 017B0 80B9C930 00096400 */ sll $t4, $t1, 16 -/* 017B4 80B9C934 01F95025 */ or $t2, $t7, $t9 ## $t2 = FB000000 -/* 017B8 80B9C938 014C7025 */ or $t6, $t2, $t4 ## $t6 = FB000000 -/* 017BC 80B9C93C 35CD00FF */ ori $t5, $t6, 0x00FF ## $t5 = FB0000FF -/* 017C0 80B9C940 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004 -.L80B9C944: -/* 017C4 80B9C944 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0 -/* 017C8 80B9C948 3C190500 */ lui $t9, 0x0500 ## $t9 = 05000000 -/* 017CC 80B9C94C 27394CD0 */ addiu $t9, $t9, 0x4CD0 ## $t9 = 05004CD0 -/* 017D0 80B9C950 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008 -/* 017D4 80B9C954 AD1802C0 */ sw $t8, 0x02C0($t0) ## 000002C0 -/* 017D8 80B9C958 3C0FDE00 */ lui $t7, 0xDE00 ## $t7 = DE000000 -/* 017DC 80B9C95C AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000 -/* 017E0 80B9C960 AC590004 */ sw $t9, 0x0004($v0) ## 00000004 -/* 017E4 80B9C964 8FAB005C */ lw $t3, 0x005C($sp) -/* 017E8 80B9C968 3C0680BA */ lui $a2, %hi(D_80B9CC84) ## $a2 = 80BA0000 -/* 017EC 80B9C96C 24C6CC84 */ addiu $a2, $a2, %lo(D_80B9CC84) ## $a2 = 80B9CC84 -/* 017F0 80B9C970 27A4003C */ addiu $a0, $sp, 0x003C ## $a0 = FFFFFFE4 -/* 017F4 80B9C974 24070536 */ addiu $a3, $zero, 0x0536 ## $a3 = 00000536 -/* 017F8 80B9C978 0C031AD5 */ jal Graph_CloseDisps -/* 017FC 80B9C97C 8D650000 */ lw $a1, 0x0000($t3) ## 00000008 -/* 01800 80B9C980 8FBF001C */ lw $ra, 0x001C($sp) -/* 01804 80B9C984 8FB00018 */ lw $s0, 0x0018($sp) -/* 01808 80B9C988 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000 -/* 0180C 80B9C98C 03E00008 */ jr $ra -/* 01810 80B9C990 00000000 */ nop -/* 01814 80B9C994 00000000 */ nop -/* 01818 80B9C998 00000000 */ nop -/* 0181C 80B9C99C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Init.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Init.s deleted file mode 100644 index 637a6b26ce..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Init.s +++ /dev/null @@ -1,94 +0,0 @@ -.rdata -glabel D_80B9CBD4 - .asciz "(dungeon keep 押し引きブロック)(arg_data 0x%04x)\n" - .balign 4 - -.text -glabel ObjOshihiki_Init -/* 005E8 80B9B768 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 005EC 80B9B76C AFBF001C */ sw $ra, 0x001C($sp) -/* 005F0 80B9B770 AFB00018 */ sw $s0, 0x0018($sp) -/* 005F4 80B9B774 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 005F8 80B9B778 0C2E6D61 */ jal func_80B9B584 -/* 005FC 80B9B77C AFA50024 */ sw $a1, 0x0024($sp) -/* 00600 80B9B780 8602001C */ lh $v0, 0x001C($s0) ## 0000001C -/* 00604 80B9B784 00021203 */ sra $v0, $v0, 8 -/* 00608 80B9B788 304300FF */ andi $v1, $v0, 0x00FF ## $v1 = 00000000 -/* 0060C 80B9B78C 04600025 */ bltz $v1, .L80B9B824 -/* 00610 80B9B790 28610040 */ slti $at, $v1, 0x0040 -/* 00614 80B9B794 10200023 */ beq $at, $zero, .L80B9B824 -/* 00618 80B9B798 8FA40024 */ lw $a0, 0x0024($sp) -/* 0061C 80B9B79C 0C00B2D0 */ jal Flags_GetSwitch - -/* 00620 80B9B7A0 3045003F */ andi $a1, $v0, 0x003F ## $a1 = 00000000 -/* 00624 80B9B7A4 50400011 */ beql $v0, $zero, .L80B9B7EC -/* 00628 80B9B7A8 8602001C */ lh $v0, 0x001C($s0) ## 0000001C -/* 0062C 80B9B7AC 8602001C */ lh $v0, 0x001C($s0) ## 0000001C -/* 00630 80B9B7B0 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001 -/* 00634 80B9B7B4 3042000F */ andi $v0, $v0, 0x000F ## $v0 = 00000000 -/* 00638 80B9B7B8 10400007 */ beq $v0, $zero, .L80B9B7D8 -/* 0063C 80B9B7BC 00000000 */ nop -/* 00640 80B9B7C0 10410005 */ beq $v0, $at, .L80B9B7D8 -/* 00644 80B9B7C4 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002 -/* 00648 80B9B7C8 10410003 */ beq $v0, $at, .L80B9B7D8 -/* 0064C 80B9B7CC 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003 -/* 00650 80B9B7D0 54410015 */ bnel $v0, $at, .L80B9B828 -/* 00654 80B9B7D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9B7D8: -/* 00658 80B9B7D8 0C00B55C */ jal Actor_Kill - -/* 0065C 80B9B7DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00660 80B9B7E0 10000029 */ beq $zero, $zero, .L80B9B888 -/* 00664 80B9B7E4 8FBF001C */ lw $ra, 0x001C($sp) -/* 00668 80B9B7E8 8602001C */ lh $v0, 0x001C($s0) ## 0000001C -.L80B9B7EC: -/* 0066C 80B9B7EC 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004 -/* 00670 80B9B7F0 3042000F */ andi $v0, $v0, 0x000F ## $v0 = 00000000 -/* 00674 80B9B7F4 10410007 */ beq $v0, $at, .L80B9B814 -/* 00678 80B9B7F8 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005 -/* 0067C 80B9B7FC 10410005 */ beq $v0, $at, .L80B9B814 -/* 00680 80B9B800 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006 -/* 00684 80B9B804 10410003 */ beq $v0, $at, .L80B9B814 -/* 00688 80B9B808 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007 -/* 0068C 80B9B80C 54410006 */ bnel $v0, $at, .L80B9B828 -/* 00690 80B9B810 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9B814: -/* 00694 80B9B814 0C00B55C */ jal Actor_Kill - -/* 00698 80B9B818 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0069C 80B9B81C 1000001A */ beq $zero, $zero, .L80B9B888 -/* 006A0 80B9B820 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9B824: -/* 006A4 80B9B824 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9B828: -/* 006A8 80B9B828 0C2E6D7D */ jal func_80B9B5F4 -/* 006AC 80B9B82C 8FA50024 */ lw $a1, 0x0024($sp) -/* 006B0 80B9B830 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006B4 80B9B834 0C2E6D8B */ jal func_80B9B62C -/* 006B8 80B9B838 8FA50024 */ lw $a1, 0x0024($sp) -/* 006BC 80B9B83C 3C0580BA */ lui $a1, %hi(D_80B9CA60) ## $a1 = 80BA0000 -/* 006C0 80B9B840 24A5CA60 */ addiu $a1, $a1, %lo(D_80B9CA60) ## $a1 = 80B9CA60 -/* 006C4 80B9B844 0C01E037 */ jal Actor_ProcessInitChain - -/* 006C8 80B9B848 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006CC 80B9B84C 240E00FF */ addiu $t6, $zero, 0x00FF ## $t6 = 000000FF -/* 006D0 80B9B850 A20E00AE */ sb $t6, 0x00AE($s0) ## 000000AE -/* 006D4 80B9B854 8FA50024 */ lw $a1, 0x0024($sp) -/* 006D8 80B9B858 0C2E6DA3 */ jal func_80B9B68C -/* 006DC 80B9B85C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006E0 80B9B860 0C2E6CB6 */ jal func_80B9B2D8 -/* 006E4 80B9B864 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006E8 80B9B868 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 006EC 80B9B86C 0C2E7044 */ jal func_80B9C110 -/* 006F0 80B9B870 8FA50024 */ lw $a1, 0x0024($sp) -/* 006F4 80B9B874 3C0480BA */ lui $a0, %hi(D_80B9CBD4) ## $a0 = 80BA0000 -/* 006F8 80B9B878 2484CBD4 */ addiu $a0, $a0, %lo(D_80B9CBD4) ## $a0 = 80B9CBD4 -/* 006FC 80B9B87C 0C00084C */ jal osSyncPrintf - -/* 00700 80B9B880 8605001C */ lh $a1, 0x001C($s0) ## 0000001C -/* 00704 80B9B884 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9B888: -/* 00708 80B9B888 8FB00018 */ lw $s0, 0x0018($sp) -/* 0070C 80B9B88C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00710 80B9B890 03E00008 */ jr $ra -/* 00714 80B9B894 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Update.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Update.s deleted file mode 100644 index ae716e38ea..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Update.s +++ /dev/null @@ -1,39 +0,0 @@ -glabel ObjOshihiki_Update -/* 0155C 80B9C6DC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 01560 80B9C6E0 AFBF0014 */ sw $ra, 0x0014($sp) -/* 01564 80B9C6E4 AFA5001C */ sw $a1, 0x001C($sp) -/* 01568 80B9C6E8 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 0156C 80B9C6EC 8482016A */ lh $v0, 0x016A($a0) ## 0000016A -/* 01570 80B9C6F0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000 -/* 01574 80B9C6F4 31D8FF00 */ andi $t8, $t6, 0xFF00 ## $t8 = 00000000 -/* 01578 80B9C6F8 A4980168 */ sh $t8, 0x0168($a0) ## 00000168 -/* 0157C 80B9C6FC 37190100 */ ori $t9, $t8, 0x0100 ## $t9 = 00000100 -/* 01580 80B9C700 18400003 */ blez $v0, .L80B9C710 -/* 01584 80B9C704 A4990168 */ sh $t9, 0x0168($a0) ## 00000168 -/* 01588 80B9C708 2448FFFF */ addiu $t0, $v0, 0xFFFF ## $t0 = FFFFFFFF -/* 0158C 80B9C70C A488016A */ sh $t0, 0x016A($a0) ## 0000016A -.L80B9C710: -/* 01590 80B9C710 84C90158 */ lh $t1, 0x0158($a2) ## 00000158 -/* 01594 80B9C714 A4C90032 */ sh $t1, 0x0032($a2) ## 00000032 -/* 01598 80B9C718 84C40032 */ lh $a0, 0x0032($a2) ## 00000032 -/* 0159C 80B9C71C 0C01DE1C */ jal Math_Sins - ## sins? -/* 015A0 80B9C720 AFA60018 */ sw $a2, 0x0018($sp) -/* 015A4 80B9C724 8FA60018 */ lw $a2, 0x0018($sp) -/* 015A8 80B9C728 E4C0016C */ swc1 $f0, 0x016C($a2) ## 0000016C -/* 015AC 80B9C72C 0C01DE0D */ jal Math_Coss - ## coss? -/* 015B0 80B9C730 84C40032 */ lh $a0, 0x0032($a2) ## 00000032 -/* 015B4 80B9C734 8FA60018 */ lw $a2, 0x0018($sp) -/* 015B8 80B9C738 8CC20164 */ lw $v0, 0x0164($a2) ## 00000164 -/* 015BC 80B9C73C E4C00170 */ swc1 $f0, 0x0170($a2) ## 00000170 -/* 015C0 80B9C740 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 015C4 80B9C744 50400004 */ beql $v0, $zero, .L80B9C758 -/* 015C8 80B9C748 8FBF0014 */ lw $ra, 0x0014($sp) -/* 015CC 80B9C74C 0040F809 */ jalr $ra, $v0 -/* 015D0 80B9C750 8FA5001C */ lw $a1, 0x001C($sp) -/* 015D4 80B9C754 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9C758: -/* 015D8 80B9C758 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 015DC 80B9C75C 03E00008 */ jr $ra -/* 015E0 80B9C760 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B180.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B180.s deleted file mode 100644 index 8338515292..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B180.s +++ /dev/null @@ -1,50 +0,0 @@ -.rdata -glabel D_80B9CAF0 - .asciz "Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n" - .balign 4 - -glabel D_80B9CB30 - .asciz "../z_obj_oshihiki.c" - .balign 4 - -.text -glabel func_80B9B180 -/* 00000 80B9B180 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8 -/* 00004 80B9B184 AFBF0024 */ sw $ra, 0x0024($sp) -/* 00008 80B9B188 AFB00020 */ sw $s0, 0x0020($sp) -/* 0000C 80B9B18C AFA5003C */ sw $a1, 0x003C($sp) -/* 00010 80B9B190 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00014 80B9B194 AFA60040 */ sw $a2, 0x0040($sp) -/* 00018 80B9B198 AFA00030 */ sw $zero, 0x0030($sp) -/* 0001C 80B9B19C 0C010D20 */ jal DynaPolyInfo_SetActorMove - -/* 00020 80B9B1A0 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000 -/* 00024 80B9B1A4 8FA40040 */ lw $a0, 0x0040($sp) -/* 00028 80B9B1A8 0C010620 */ jal DynaPolyInfo_Alloc - -/* 0002C 80B9B1AC 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF8 -/* 00030 80B9B1B0 8FA4003C */ lw $a0, 0x003C($sp) -/* 00034 80B9B1B4 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000 -/* 00038 80B9B1B8 8FA70030 */ lw $a3, 0x0030($sp) -/* 0003C 80B9B1BC 0C00FA9D */ jal DynaPolyInfo_RegisterActor - ## DynaPolyInfo_setActor -/* 00040 80B9B1C0 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810 -/* 00044 80B9B1C4 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 00048 80B9B1C8 1441000A */ bne $v0, $at, .L80B9B1F4 -/* 0004C 80B9B1CC AE02014C */ sw $v0, 0x014C($s0) ## 0000014C -/* 00050 80B9B1D0 860E001C */ lh $t6, 0x001C($s0) ## 0000001C -/* 00054 80B9B1D4 3C0480BA */ lui $a0, %hi(D_80B9CAF0) ## $a0 = 80BA0000 -/* 00058 80B9B1D8 3C0580BA */ lui $a1, %hi(D_80B9CB30) ## $a1 = 80BA0000 -/* 0005C 80B9B1DC 86070000 */ lh $a3, 0x0000($s0) ## 00000000 -/* 00060 80B9B1E0 24A5CB30 */ addiu $a1, $a1, %lo(D_80B9CB30) ## $a1 = 80B9CB30 -/* 00064 80B9B1E4 2484CAF0 */ addiu $a0, $a0, %lo(D_80B9CAF0) ## $a0 = 80B9CAF0 -/* 00068 80B9B1E8 24060118 */ addiu $a2, $zero, 0x0118 ## $a2 = 00000118 -/* 0006C 80B9B1EC 0C00084C */ jal osSyncPrintf - -/* 00070 80B9B1F0 AFAE0010 */ sw $t6, 0x0010($sp) -.L80B9B1F4: -/* 00074 80B9B1F4 8FBF0024 */ lw $ra, 0x0024($sp) -/* 00078 80B9B1F8 8FB00020 */ lw $s0, 0x0020($sp) -/* 0007C 80B9B1FC 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000 -/* 00080 80B9B200 03E00008 */ jr $ra -/* 00084 80B9B204 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B208.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B208.s deleted file mode 100644 index 7592dd4b83..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B208.s +++ /dev/null @@ -1,20 +0,0 @@ -glabel func_80B9B208 -/* 00088 80B9B208 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00 -/* 0008C 80B9B20C C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008 -/* 00090 80B9B210 44877000 */ mtc1 $a3, $f14 ## $f14 = 0.00 -/* 00094 80B9B214 C4A80000 */ lwc1 $f8, 0x0000($a1) ## 00000000 -/* 00098 80B9B218 460C2182 */ mul.s $f6, $f4, $f12 -/* 0009C 80B9B21C 00000000 */ nop -/* 000A0 80B9B220 460E4282 */ mul.s $f10, $f8, $f14 -/* 000A4 80B9B224 460A3400 */ add.s $f16, $f6, $f10 -/* 000A8 80B9B228 E4900000 */ swc1 $f16, 0x0000($a0) ## 00000000 -/* 000AC 80B9B22C C4B20004 */ lwc1 $f18, 0x0004($a1) ## 00000004 -/* 000B0 80B9B230 E4920004 */ swc1 $f18, 0x0004($a0) ## 00000004 -/* 000B4 80B9B234 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008 -/* 000B8 80B9B238 C4A60000 */ lwc1 $f6, 0x0000($a1) ## 00000000 -/* 000BC 80B9B23C 460E2202 */ mul.s $f8, $f4, $f14 -/* 000C0 80B9B240 00000000 */ nop -/* 000C4 80B9B244 460C3282 */ mul.s $f10, $f6, $f12 -/* 000C8 80B9B248 460A4401 */ sub.s $f16, $f8, $f10 -/* 000CC 80B9B24C 03E00008 */ jr $ra -/* 000D0 80B9B250 E4900008 */ swc1 $f16, 0x0008($a0) ## 00000008 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B254.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B254.s deleted file mode 100644 index a7dc4af9ad..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B254.s +++ /dev/null @@ -1,51 +0,0 @@ -.late_rodata -glabel jtbl_80B9CC98 - .word L80B9B2AC - .word L80B9B2AC - .word L80B9B2B4 - .word L80B9B2BC - .word L80B9B2AC - .word L80B9B2AC - .word L80B9B2B4 - .word L80B9B2BC - -.text -glabel func_80B9B254 -/* 000D4 80B9B254 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 000D8 80B9B258 AFBF0014 */ sw $ra, 0x0014($sp) -/* 000DC 80B9B25C 908E01BE */ lbu $t6, 0x01BE($a0) ## 000001BE -/* 000E0 80B9B260 11C00003 */ beq $t6, $zero, .L80B9B270 -/* 000E4 80B9B264 00000000 */ nop -/* 000E8 80B9B268 10000017 */ beq $zero, $zero, .L80B9B2C8 -/* 000EC 80B9B26C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80B9B270: -/* 000F0 80B9B270 0C023C0D */ jal Player_GetStrength -/* 000F4 80B9B274 AFA40018 */ sw $a0, 0x0018($sp) -/* 000F8 80B9B278 8FA40018 */ lw $a0, 0x0018($sp) -/* 000FC 80B9B27C 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000 -/* 00100 80B9B280 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00104 80B9B284 848F001C */ lh $t7, 0x001C($a0) ## 0000001C -/* 00108 80B9B288 31F8000F */ andi $t8, $t7, 0x000F ## $t8 = 00000000 -/* 0010C 80B9B28C 2F010008 */ sltiu $at, $t8, 0x0008 -/* 00110 80B9B290 1020000D */ beq $at, $zero, .L80B9B2C8 -/* 00114 80B9B294 0018C080 */ sll $t8, $t8, 2 -/* 00118 80B9B298 3C0180BA */ lui $at, %hi(jtbl_80B9CC98) ## $at = 80BA0000 -/* 0011C 80B9B29C 00380821 */ addu $at, $at, $t8 -/* 00120 80B9B2A0 8C38CC98 */ lw $t8, %lo(jtbl_80B9CC98)($at) -/* 00124 80B9B2A4 03000008 */ jr $t8 -/* 00128 80B9B2A8 00000000 */ nop -glabel L80B9B2AC -/* 0012C 80B9B2AC 10000006 */ beq $zero, $zero, .L80B9B2C8 -/* 00130 80B9B2B0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -glabel L80B9B2B4 -/* 00134 80B9B2B4 10000004 */ beq $zero, $zero, .L80B9B2C8 -/* 00138 80B9B2B8 0003102A */ slt $v0, $zero, $v1 -glabel L80B9B2BC -/* 0013C 80B9B2BC 28620002 */ slti $v0, $v1, 0x0002 -/* 00140 80B9B2C0 10000001 */ beq $zero, $zero, .L80B9B2C8 -/* 00144 80B9B2C4 38420001 */ xori $v0, $v0, 0x0001 ## $v0 = 00000000 -.L80B9B2C8: -/* 00148 80B9B2C8 8FBF0014 */ lw $ra, 0x0014($sp) -/* 0014C 80B9B2CC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00150 80B9B2D0 03E00008 */ jr $ra -/* 00154 80B9B2D4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B2D8.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B2D8.s deleted file mode 100644 index 3b32913993..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B2D8.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_80B9B2D8 -/* 00158 80B9B2D8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 0015C 80B9B2DC 24050032 */ addiu $a1, $zero, 0x0032 ## $a1 = 00000032 -/* 00160 80B9B2E0 00027080 */ sll $t6, $v0, 2 -/* 00164 80B9B2E4 AC850180 */ sw $a1, 0x0180($a0) ## 00000180 -/* 00168 80B9B2E8 008E1821 */ addu $v1, $a0, $t6 -/* 0016C 80B9B2EC AC650184 */ sw $a1, 0x0184($v1) ## 00000184 -/* 00170 80B9B2F0 AC650188 */ sw $a1, 0x0188($v1) ## 00000188 -/* 00174 80B9B2F4 AC65018C */ sw $a1, 0x018C($v1) ## 0000018C -/* 00178 80B9B2F8 03E00008 */ jr $ra -/* 0017C 80B9B2FC AC650180 */ sw $a1, 0x0180($v1) ## 00000180 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B300.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B300.s deleted file mode 100644 index 52a8c01614..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B300.s +++ /dev/null @@ -1,44 +0,0 @@ -.late_rodata -glabel D_80B9CCB8 - .float 0.001 - -.text -glabel func_80B9B300 -/* 00180 80B9B300 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00184 80B9B304 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00188 80B9B308 848E01BC */ lh $t6, 0x01BC($a0) ## 000001BC -/* 0018C 80B9B30C 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 00190 80B9B310 000E7880 */ sll $t7, $t6, 2 -/* 00194 80B9B314 008FC021 */ addu $t8, $a0, $t7 -/* 00198 80B9B318 8F060180 */ lw $a2, 0x0180($t8) ## 00000180 -/* 0019C 80B9B31C 50C10017 */ beql $a2, $at, .L80B9B37C -/* 001A0 80B9B320 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 001A4 80B9B324 C4840080 */ lwc1 $f4, 0x0080($a0) ## 00000080 -/* 001A8 80B9B328 C4860028 */ lwc1 $f6, 0x0028($a0) ## 00000028 -/* 001AC 80B9B32C 3C0180BA */ lui $at, %hi(D_80B9CCB8) ## $at = 80BA0000 -/* 001B0 80B9B330 C428CCB8 */ lwc1 $f8, %lo(D_80B9CCB8)($at) -/* 001B4 80B9B334 46062001 */ sub.s $f0, $f4, $f6 -/* 001B8 80B9B338 24A407C0 */ addiu $a0, $a1, 0x07C0 ## $a0 = 000007C0 -/* 001BC 80B9B33C 46000005 */ abs.s $f0, $f0 -/* 001C0 80B9B340 4608003C */ c.lt.s $f0, $f8 -/* 001C4 80B9B344 00000000 */ nop -/* 001C8 80B9B348 4502000C */ bc1fl .L80B9B37C -/* 001CC 80B9B34C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 001D0 80B9B350 0C00FAE1 */ jal DynaPolyInfo_GetActor - ## DynaPolyInfo_getActor -/* 001D4 80B9B354 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000 -/* 001D8 80B9B358 50400008 */ beql $v0, $zero, .L80B9B37C -/* 001DC 80B9B35C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 001E0 80B9B360 84590000 */ lh $t9, 0x0000($v0) ## 00000000 -/* 001E4 80B9B364 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF -/* 001E8 80B9B368 57210004 */ bnel $t9, $at, .L80B9B37C -/* 001EC 80B9B36C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 001F0 80B9B370 10000003 */ beq $zero, $zero, .L80B9B380 -/* 001F4 80B9B374 8FBF0014 */ lw $ra, 0x0014($sp) -/* 001F8 80B9B378 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80B9B37C: -/* 001FC 80B9B37C 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9B380: -/* 00200 80B9B380 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00204 80B9B384 03E00008 */ jr $ra -/* 00208 80B9B388 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B38C.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B38C.s deleted file mode 100644 index 82b8298659..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B38C.s +++ /dev/null @@ -1,86 +0,0 @@ -glabel func_80B9B38C -/* 0020C 80B9B38C C4800008 */ lwc1 $f0, 0x0008($a0) ## 00000008 -/* 00210 80B9B390 C4820024 */ lwc1 $f2, 0x0024($a0) ## 00000024 -/* 00214 80B9B394 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00218 80B9B398 4602003C */ c.lt.s $f0, $f2 -/* 0021C 80B9B39C 00000000 */ nop -/* 00220 80B9B3A0 45020014 */ bc1fl .L80B9B3F4 -/* 00224 80B9B3A4 46020281 */ sub.s $f10, $f0, $f2 -/* 00228 80B9B3A8 46001101 */ sub.s $f4, $f2, $f0 -/* 0022C 80B9B3AC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00230 80B9B3B0 44816000 */ mtc1 $at, $f12 ## $f12 = 20.00 -/* 00234 80B9B3B4 00000000 */ nop -/* 00238 80B9B3B8 4604603E */ c.le.s $f12, $f4 -/* 0023C 80B9B3BC 00000000 */ nop -/* 00240 80B9B3C0 4502001B */ bc1fl .L80B9B430 -/* 00244 80B9B3C4 C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -/* 00248 80B9B3C8 460C0180 */ add.s $f6, $f0, $f12 -.L80B9B3CC: -/* 0024C 80B9B3CC E4860008 */ swc1 $f6, 0x0008($a0) ## 00000008 -/* 00250 80B9B3D0 C4800008 */ lwc1 $f0, 0x0008($a0) ## 00000008 -/* 00254 80B9B3D4 46001201 */ sub.s $f8, $f2, $f0 -/* 00258 80B9B3D8 4608603E */ c.le.s $f12, $f8 -/* 0025C 80B9B3DC 00000000 */ nop -/* 00260 80B9B3E0 4503FFFA */ bc1tl .L80B9B3CC -/* 00264 80B9B3E4 460C0180 */ add.s $f6, $f0, $f12 -/* 00268 80B9B3E8 10000011 */ beq $zero, $zero, .L80B9B430 -/* 0026C 80B9B3EC C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -/* 00270 80B9B3F0 46020281 */ sub.s $f10, $f0, $f2 -.L80B9B3F4: -/* 00274 80B9B3F4 44816000 */ mtc1 $at, $f12 ## $f12 = 20.00 -/* 00278 80B9B3F8 00000000 */ nop -/* 0027C 80B9B3FC 460A603E */ c.le.s $f12, $f10 -/* 00280 80B9B400 00000000 */ nop -/* 00284 80B9B404 4502000A */ bc1fl .L80B9B430 -/* 00288 80B9B408 C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -/* 0028C 80B9B40C 460C0401 */ sub.s $f16, $f0, $f12 -.L80B9B410: -/* 00290 80B9B410 E4900008 */ swc1 $f16, 0x0008($a0) ## 00000008 -/* 00294 80B9B414 C4800008 */ lwc1 $f0, 0x0008($a0) ## 00000008 -/* 00298 80B9B418 46020481 */ sub.s $f18, $f0, $f2 -/* 0029C 80B9B41C 4612603E */ c.le.s $f12, $f18 -/* 002A0 80B9B420 00000000 */ nop -/* 002A4 80B9B424 4503FFFA */ bc1tl .L80B9B410 -/* 002A8 80B9B428 460C0401 */ sub.s $f16, $f0, $f12 -/* 002AC 80B9B42C C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -.L80B9B430: -/* 002B0 80B9B430 C482002C */ lwc1 $f2, 0x002C($a0) ## 0000002C -/* 002B4 80B9B434 4602003C */ c.lt.s $f0, $f2 -/* 002B8 80B9B438 00000000 */ nop -/* 002BC 80B9B43C 45020011 */ bc1fl .L80B9B484 -/* 002C0 80B9B440 46020281 */ sub.s $f10, $f0, $f2 -/* 002C4 80B9B444 46001101 */ sub.s $f4, $f2, $f0 -/* 002C8 80B9B448 4604603E */ c.le.s $f12, $f4 -/* 002CC 80B9B44C 00000000 */ nop -/* 002D0 80B9B450 45000018 */ bc1f .L80B9B4B4 -/* 002D4 80B9B454 00000000 */ nop -/* 002D8 80B9B458 460C0180 */ add.s $f6, $f0, $f12 -.L80B9B45C: -/* 002DC 80B9B45C E4860010 */ swc1 $f6, 0x0010($a0) ## 00000010 -/* 002E0 80B9B460 C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -/* 002E4 80B9B464 46001201 */ sub.s $f8, $f2, $f0 -/* 002E8 80B9B468 4608603E */ c.le.s $f12, $f8 -/* 002EC 80B9B46C 00000000 */ nop -/* 002F0 80B9B470 4503FFFA */ bc1tl .L80B9B45C -/* 002F4 80B9B474 460C0180 */ add.s $f6, $f0, $f12 -/* 002F8 80B9B478 03E00008 */ jr $ra -/* 002FC 80B9B47C 00000000 */ nop -.L80B9B480: -/* 00300 80B9B480 46020281 */ sub.s $f10, $f0, $f2 -.L80B9B484: -/* 00304 80B9B484 460A603E */ c.le.s $f12, $f10 -/* 00308 80B9B488 00000000 */ nop -/* 0030C 80B9B48C 45000009 */ bc1f .L80B9B4B4 -/* 00310 80B9B490 00000000 */ nop -/* 00314 80B9B494 460C0401 */ sub.s $f16, $f0, $f12 -.L80B9B498: -/* 00318 80B9B498 E4900010 */ swc1 $f16, 0x0010($a0) ## 00000010 -/* 0031C 80B9B49C C4800010 */ lwc1 $f0, 0x0010($a0) ## 00000010 -/* 00320 80B9B4A0 46020481 */ sub.s $f18, $f0, $f2 -/* 00324 80B9B4A4 4612603E */ c.le.s $f12, $f18 -/* 00328 80B9B4A8 00000000 */ nop -/* 0032C 80B9B4AC 4503FFFA */ bc1tl .L80B9B498 -/* 00330 80B9B4B0 460C0401 */ sub.s $f16, $f0, $f12 -.L80B9B4B4: -/* 00334 80B9B4B4 03E00008 */ jr $ra -/* 00338 80B9B4B8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B4BC.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B4BC.s deleted file mode 100644 index 881d1d47ca..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B4BC.s +++ /dev/null @@ -1,57 +0,0 @@ -glabel func_80B9B4BC -/* 0033C 80B9B4BC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00340 80B9B4C0 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00344 80B9B4C4 14A00003 */ bne $a1, $zero, .L80B9B4D4 -/* 00348 80B9B4C8 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000 -/* 0034C 80B9B4CC 10000029 */ beq $zero, $zero, .L80B9B574 -/* 00350 80B9B4D0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9B4D4: -/* 00354 80B9B4D4 84EE0000 */ lh $t6, 0x0000($a3) ## 00000000 -/* 00358 80B9B4D8 2401012A */ addiu $at, $zero, 0x012A ## $at = 0000012A -/* 0035C 80B9B4DC 55C10025 */ bnel $t6, $at, .L80B9B574 -/* 00360 80B9B4E0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 00364 80B9B4E4 84E2001C */ lh $v0, 0x001C($a3) ## 0000001C -/* 00368 80B9B4E8 24010020 */ addiu $at, $zero, 0x0020 ## $at = 00000020 -/* 0036C 80B9B4EC 00022A03 */ sra $a1, $v0, 8 -/* 00370 80B9B4F0 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000 -/* 00374 80B9B4F4 00052C00 */ sll $a1, $a1, 16 -/* 00378 80B9B4F8 30430033 */ andi $v1, $v0, 0x0033 ## $v1 = 00000001 -/* 0037C 80B9B4FC 10610006 */ beq $v1, $at, .L80B9B518 -/* 00380 80B9B500 00052C03 */ sra $a1, $a1, 16 -/* 00384 80B9B504 24010030 */ addiu $at, $zero, 0x0030 ## $at = 00000030 -/* 00388 80B9B508 5061000F */ beql $v1, $at, .L80B9B548 -/* 0038C 80B9B50C 8488001C */ lh $t0, 0x001C($a0) ## 0000001C -/* 00390 80B9B510 10000018 */ beq $zero, $zero, .L80B9B574 -/* 00394 80B9B514 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9B518: -/* 00398 80B9B518 848F001C */ lh $t7, 0x001C($a0) ## 0000001C -/* 0039C 80B9B51C 000FC203 */ sra $t8, $t7, 8 -/* 003A0 80B9B520 3319003F */ andi $t9, $t8, 0x003F ## $t9 = 00000000 -/* 003A4 80B9B524 54B90013 */ bnel $a1, $t9, .L80B9B574 -/* 003A8 80B9B528 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 003AC 80B9B52C 0C00B2D0 */ jal Flags_GetSwitch - -/* 003B0 80B9B530 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 003B4 80B9B534 5040000F */ beql $v0, $zero, .L80B9B574 -/* 003B8 80B9B538 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 003BC 80B9B53C 1000000D */ beq $zero, $zero, .L80B9B574 -/* 003C0 80B9B540 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 003C4 80B9B544 8488001C */ lh $t0, 0x001C($a0) ## 0000001C -.L80B9B548: -/* 003C8 80B9B548 00084A03 */ sra $t1, $t0, 8 -/* 003CC 80B9B54C 312A003F */ andi $t2, $t1, 0x003F ## $t2 = 00000000 -/* 003D0 80B9B550 54AA0008 */ bnel $a1, $t2, .L80B9B574 -/* 003D4 80B9B554 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 003D8 80B9B558 0C00B2D0 */ jal Flags_GetSwitch - -/* 003DC 80B9B55C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000 -/* 003E0 80B9B560 54400004 */ bnel $v0, $zero, .L80B9B574 -/* 003E4 80B9B564 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -/* 003E8 80B9B568 10000002 */ beq $zero, $zero, .L80B9B574 -/* 003EC 80B9B56C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 003F0 80B9B570 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9B574: -/* 003F4 80B9B574 8FBF0014 */ lw $ra, 0x0014($sp) -/* 003F8 80B9B578 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 003FC 80B9B57C 03E00008 */ jr $ra -/* 00400 80B9B580 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B584.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B584.s deleted file mode 100644 index 45b53a44a1..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B584.s +++ /dev/null @@ -1,54 +0,0 @@ -.rdata -glabel D_80B9CB44 - .asciz "Error : タイプが判別できない(%s %d)(arg_data 0x%04x)\n" - .balign 4 - -glabel D_80B9CB7C - .asciz "../z_obj_oshihiki.c" - .balign 4 - -.late_rodata -glabel jtbl_80B9CCBC - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - .word L80B9B5B8 - -.text -glabel func_80B9B584 -/* 00404 80B9B584 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00408 80B9B588 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0040C 80B9B58C 8487001C */ lh $a3, 0x001C($a0) ## 0000001C -/* 00410 80B9B590 240601BC */ addiu $a2, $zero, 0x01BC ## $a2 = 000001BC -/* 00414 80B9B594 30EE000F */ andi $t6, $a3, 0x000F ## $t6 = 00000000 -/* 00418 80B9B598 2DC10008 */ sltiu $at, $t6, 0x0008 -/* 0041C 80B9B59C 1020000C */ beq $at, $zero, .L80B9B5D0 -/* 00420 80B9B5A0 000E7080 */ sll $t6, $t6, 2 -/* 00424 80B9B5A4 3C0180BA */ lui $at, %hi(jtbl_80B9CCBC) ## $at = 80BA0000 -/* 00428 80B9B5A8 002E0821 */ addu $at, $at, $t6 -/* 0042C 80B9B5AC 8C2ECCBC */ lw $t6, %lo(jtbl_80B9CCBC)($at) -/* 00430 80B9B5B0 01C00008 */ jr $t6 -/* 00434 80B9B5B4 00000000 */ nop -glabel L80B9B5B8 -/* 00438 80B9B5B8 3C060500 */ lui $a2, 0x0500 ## $a2 = 05000000 -/* 0043C 80B9B5BC 24C64E98 */ addiu $a2, $a2, 0x4E98 ## $a2 = 05004E98 -/* 00440 80B9B5C0 0C2E6C60 */ jal func_80B9B180 -/* 00444 80B9B5C4 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001 -/* 00448 80B9B5C8 10000007 */ beq $zero, $zero, .L80B9B5E8 -/* 0044C 80B9B5CC 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9B5D0: -/* 00450 80B9B5D0 3C0480BA */ lui $a0, %hi(D_80B9CB44) ## $a0 = 80BA0000 -/* 00454 80B9B5D4 3C0580BA */ lui $a1, %hi(D_80B9CB7C) ## $a1 = 80BA0000 -/* 00458 80B9B5D8 24A5CB7C */ addiu $a1, $a1, %lo(D_80B9CB7C) ## $a1 = 80B9CB7C -/* 0045C 80B9B5DC 0C00084C */ jal osSyncPrintf - -/* 00460 80B9B5E0 2484CB44 */ addiu $a0, $a0, %lo(D_80B9CB44) ## $a0 = 80B9CB44 -/* 00464 80B9B5E4 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9B5E8: -/* 00468 80B9B5E8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 0046C 80B9B5EC 03E00008 */ jr $ra -/* 00470 80B9B5F0 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B5F4.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B5F4.s deleted file mode 100644 index 0b95b4fdc3..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B5F4.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel func_80B9B5F4 -/* 00474 80B9B5F4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00478 80B9B5F8 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0047C 80B9B5FC AFA5001C */ sw $a1, 0x001C($sp) -/* 00480 80B9B600 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 00484 80B9B604 3C0580BA */ lui $a1, %hi(D_80B9C9C0) ## $a1 = 80BA0000 -/* 00488 80B9B608 31CF000F */ andi $t7, $t6, 0x000F ## $t7 = 00000000 -/* 0048C 80B9B60C 000FC080 */ sll $t8, $t7, 2 -/* 00490 80B9B610 00B82821 */ addu $a1, $a1, $t8 -/* 00494 80B9B614 0C00B58B */ jal Actor_SetScale - -/* 00498 80B9B618 8CA5C9C0 */ lw $a1, %lo(D_80B9C9C0)($a1) -/* 0049C 80B9B61C 8FBF0014 */ lw $ra, 0x0014($sp) -/* 004A0 80B9B620 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 004A4 80B9B624 03E00008 */ jr $ra -/* 004A8 80B9B628 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B62C.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B62C.s deleted file mode 100644 index 5a439a6bab..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B62C.s +++ /dev/null @@ -1,42 +0,0 @@ -.late_rodata -.late_rodata_alignment 4 -glabel jtbl_80B9CCDC - .word L80B9B658 - .word L80B9B658 - .word L80B9B668 - .word L80B9B678 - .word L80B9B658 - .word L80B9B658 - .word L80B9B668 - .word L80B9B678 - -.text -glabel func_80B9B62C -/* 004AC 80B9B62C AFA50004 */ sw $a1, 0x0004($sp) -/* 004B0 80B9B630 848E001C */ lh $t6, 0x001C($a0) ## 0000001C -/* 004B4 80B9B634 31CF000F */ andi $t7, $t6, 0x000F ## $t7 = 00000000 -/* 004B8 80B9B638 2DE10008 */ sltiu $at, $t7, 0x0008 -/* 004BC 80B9B63C 10200011 */ beq $at, $zero, .L80B9B684 -/* 004C0 80B9B640 000F7880 */ sll $t7, $t7, 2 -/* 004C4 80B9B644 3C0180BA */ lui $at, %hi(jtbl_80B9CCDC) ## $at = 80BA0000 -/* 004C8 80B9B648 002F0821 */ addu $at, $at, $t7 -/* 004CC 80B9B64C 8C2FCCDC */ lw $t7, %lo(jtbl_80B9CCDC)($at) -/* 004D0 80B9B650 01E00008 */ jr $t7 -/* 004D4 80B9B654 00000000 */ nop -glabel L80B9B658 -/* 004D8 80B9B658 3C180500 */ lui $t8, 0x0500 ## $t8 = 05000000 -/* 004DC 80B9B65C 27183350 */ addiu $t8, $t8, 0x3350 ## $t8 = 05003350 -/* 004E0 80B9B660 03E00008 */ jr $ra -/* 004E4 80B9B664 AC9801CC */ sw $t8, 0x01CC($a0) ## 000001CC -glabel L80B9B668 -/* 004E8 80B9B668 3C190500 */ lui $t9, 0x0500 ## $t9 = 05000000 -/* 004EC 80B9B66C 27393B50 */ addiu $t9, $t9, 0x3B50 ## $t9 = 05003B50 -/* 004F0 80B9B670 03E00008 */ jr $ra -/* 004F4 80B9B674 AC9901CC */ sw $t9, 0x01CC($a0) ## 000001CC -glabel L80B9B678 -/* 004F8 80B9B678 3C080500 */ lui $t0, 0x0500 ## $t0 = 05000000 -/* 004FC 80B9B67C 25084350 */ addiu $t0, $t0, 0x4350 ## $t0 = 05004350 -/* 00500 80B9B680 AC8801CC */ sw $t0, 0x01CC($a0) ## 000001CC -.L80B9B684: -/* 00504 80B9B684 03E00008 */ jr $ra -/* 00508 80B9B688 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B68C.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B68C.s deleted file mode 100644 index 4533deb23e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B68C.s +++ /dev/null @@ -1,71 +0,0 @@ -.rdata -glabel D_80B9CB90 - .asciz "Error : scene_data_ID が判別できない。(%s %d)\n" - .balign 4 - -glabel D_80B9CBC0 - .asciz "../z_obj_oshihiki.c" - .balign 4 - -.text -glabel func_80B9B68C -/* 0050C 80B9B68C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00510 80B9B690 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00514 80B9B694 8488001C */ lh $t0, 0x001C($a0) ## 0000001C -/* 00518 80B9B698 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 0051C 80B9B69C 3C0280BA */ lui $v0, %hi(D_80B9CA4C) ## $v0 = 80BA0000 -/* 00520 80B9B6A0 00084183 */ sra $t0, $t0, 6 -/* 00524 80B9B6A4 31080003 */ andi $t0, $t0, 0x0003 ## $t0 = 00000000 -/* 00528 80B9B6A8 00084400 */ sll $t0, $t0, 16 -/* 0052C 80B9B6AC 00084403 */ sra $t0, $t0, 16 -/* 00530 80B9B6B0 2442CA4C */ addiu $v0, $v0, %lo(D_80B9CA4C) ## $v0 = 80B9CA4C -/* 00534 80B9B6B4 24040009 */ addiu $a0, $zero, 0x0009 ## $a0 = 00000009 -/* 00538 80B9B6B8 84A600A4 */ lh $a2, 0x00A4($a1) ## 000000A4 -/* 0053C 80B9B6BC 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000 -.L80B9B6C0: -/* 00540 80B9B6C0 844E0000 */ lh $t6, 0x0000($v0) ## 80B9CA4C -/* 00544 80B9B6C4 50CE0005 */ beql $a2, $t6, .L80B9B6DC -/* 00548 80B9B6C8 28610009 */ slti $at, $v1, 0x0009 -/* 0054C 80B9B6CC 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001 -/* 00550 80B9B6D0 1464FFFB */ bne $v1, $a0, .L80B9B6C0 -/* 00554 80B9B6D4 24420002 */ addiu $v0, $v0, 0x0002 ## $v0 = 80B9CA4E -/* 00558 80B9B6D8 28610009 */ slti $at, $v1, 0x0009 -.L80B9B6DC: -/* 0055C 80B9B6DC 1420000F */ bne $at, $zero, .L80B9B71C -/* 00560 80B9B6E0 0003C080 */ sll $t8, $v1, 2 -/* 00564 80B9B6E4 3C0480BA */ lui $a0, %hi(D_80B9CB90) ## $a0 = 80BA0000 -/* 00568 80B9B6E8 3C0580BA */ lui $a1, %hi(D_80B9CBC0) ## $a1 = 80BA0000 -/* 0056C 80B9B6EC 24A5CBC0 */ addiu $a1, $a1, %lo(D_80B9CBC0) ## $a1 = 80B9CBC0 -/* 00570 80B9B6F0 2484CB90 */ addiu $a0, $a0, %lo(D_80B9CB90) ## $a0 = 80B9CB90 -/* 00574 80B9B6F4 24060243 */ addiu $a2, $zero, 0x0243 ## $a2 = 00000243 -/* 00578 80B9B6F8 0C00084C */ jal osSyncPrintf - -/* 0057C 80B9B6FC AFA70018 */ sw $a3, 0x0018($sp) -/* 00580 80B9B700 8FA70018 */ lw $a3, 0x0018($sp) -/* 00584 80B9B704 240300FF */ addiu $v1, $zero, 0x00FF ## $v1 = 000000FF -/* 00588 80B9B708 24E201D0 */ addiu $v0, $a3, 0x01D0 ## $v0 = 000001D0 -/* 0058C 80B9B70C A0430002 */ sb $v1, 0x0002($v0) ## 000001D2 -/* 00590 80B9B710 A0430001 */ sb $v1, 0x0001($v0) ## 000001D1 -/* 00594 80B9B714 10000010 */ beq $zero, $zero, .L80B9B758 -/* 00598 80B9B718 A0430000 */ sb $v1, 0x0000($v0) ## 000001D0 -.L80B9B71C: -/* 0059C 80B9B71C 0303C023 */ subu $t8, $t8, $v1 -/* 005A0 80B9B720 0008C880 */ sll $t9, $t0, 2 -/* 005A4 80B9B724 0328C823 */ subu $t9, $t9, $t0 -/* 005A8 80B9B728 0018C080 */ sll $t8, $t8, 2 -/* 005AC 80B9B72C 3C0A80BA */ lui $t2, %hi(D_80B9C9E0) ## $t2 = 80BA0000 -/* 005B0 80B9B730 254AC9E0 */ addiu $t2, $t2, %lo(D_80B9C9E0) ## $t2 = 80B9C9E0 -/* 005B4 80B9B734 03194821 */ addu $t1, $t8, $t9 -/* 005B8 80B9B738 012A2021 */ addu $a0, $t1, $t2 -/* 005BC 80B9B73C 908B0000 */ lbu $t3, 0x0000($a0) ## 00000000 -/* 005C0 80B9B740 24E201D0 */ addiu $v0, $a3, 0x01D0 ## $v0 = 000001D0 -/* 005C4 80B9B744 A04B0000 */ sb $t3, 0x0000($v0) ## 000001D0 -/* 005C8 80B9B748 908C0001 */ lbu $t4, 0x0001($a0) ## 00000001 -/* 005CC 80B9B74C A04C0001 */ sb $t4, 0x0001($v0) ## 000001D1 -/* 005D0 80B9B750 908D0002 */ lbu $t5, 0x0002($a0) ## 00000002 -/* 005D4 80B9B754 A04D0002 */ sb $t5, 0x0002($v0) ## 000001D2 -.L80B9B758: -/* 005D8 80B9B758 8FBF0014 */ lw $ra, 0x0014($sp) -/* 005DC 80B9B75C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 005E0 80B9B760 03E00008 */ jr $ra -/* 005E4 80B9B764 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B8C8.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B8C8.s deleted file mode 100644 index 5bd979026e..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B8C8.s +++ /dev/null @@ -1,90 +0,0 @@ -glabel func_80B9B8C8 -/* 00748 80B9B8C8 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70 -/* 0074C 80B9B8CC AFBE0050 */ sw $s8, 0x0050($sp) -/* 00750 80B9B8D0 AFB10034 */ sw $s1, 0x0034($sp) -/* 00754 80B9B8D4 F7B60028 */ sdc1 $f22, 0x0028($sp) -/* 00758 80B9B8D8 F7B40020 */ sdc1 $f20, 0x0020($sp) -/* 0075C 80B9B8DC 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 00760 80B9B8E0 AFB7004C */ sw $s7, 0x004C($sp) -/* 00764 80B9B8E4 AFB60048 */ sw $s6, 0x0048($sp) -/* 00768 80B9B8E8 AFB50044 */ sw $s5, 0x0044($sp) -/* 0076C 80B9B8EC AFB40040 */ sw $s4, 0x0040($sp) -/* 00770 80B9B8F0 AFB3003C */ sw $s3, 0x003C($sp) -/* 00774 80B9B8F4 AFB20038 */ sw $s2, 0x0038($sp) -/* 00778 80B9B8F8 AFB00030 */ sw $s0, 0x0030($sp) -/* 0077C 80B9B8FC 3C1180BA */ lui $s1, %hi(D_80B9CA6C) ## $s1 = 80BA0000 -/* 00780 80B9B900 3C1E80BA */ lui $s8, %hi(D_80B9CAA8) ## $s8 = 80BA0000 -/* 00784 80B9B904 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00 -/* 00788 80B9B908 4480B000 */ mtc1 $zero, $f22 ## $f22 = 0.00 -/* 0078C 80B9B90C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00790 80B9B910 AFBF0054 */ sw $ra, 0x0054($sp) -/* 00794 80B9B914 27DECAA8 */ addiu $s8, $s8, %lo(D_80B9CAA8) ## $s8 = 80B9CAA8 -/* 00798 80B9B918 2631CA6C */ addiu $s1, $s1, %lo(D_80B9CA6C) ## $s1 = 80B9CA6C -/* 0079C 80B9B91C 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000 -/* 007A0 80B9B920 24930194 */ addiu $s3, $a0, 0x0194 ## $s3 = 00000194 -/* 007A4 80B9B924 24940180 */ addiu $s4, $a0, 0x0180 ## $s4 = 00000180 -/* 007A8 80B9B928 27B50080 */ addiu $s5, $sp, 0x0080 ## $s5 = FFFFFFF0 -/* 007AC 80B9B92C 24B607C0 */ addiu $s6, $a1, 0x07C0 ## $s6 = 000007C0 -/* 007B0 80B9B930 27B70074 */ addiu $s7, $sp, 0x0074 ## $s7 = FFFFFFE4 -.L80B9B934: -/* 007B4 80B9B934 C6060050 */ lwc1 $f6, 0x0050($s0) ## 00000050 -/* 007B8 80B9B938 C6240000 */ lwc1 $f4, 0x0000($s1) ## 80B9CA6C -/* 007BC 80B9B93C C6300004 */ lwc1 $f16, 0x0004($s1) ## 80B9CA70 -/* 007C0 80B9B940 46143202 */ mul.s $f8, $f6, $f20 -/* 007C4 80B9B944 02A02025 */ or $a0, $s5, $zero ## $a0 = FFFFFFF0 -/* 007C8 80B9B948 02E02825 */ or $a1, $s7, $zero ## $a1 = FFFFFFE4 -/* 007CC 80B9B94C 46082282 */ mul.s $f10, $f4, $f8 -/* 007D0 80B9B950 C6280008 */ lwc1 $f8, 0x0008($s1) ## 80B9CA74 -/* 007D4 80B9B954 E7AA0074 */ swc1 $f10, 0x0074($sp) -/* 007D8 80B9B958 C6120054 */ lwc1 $f18, 0x0054($s0) ## 00000054 -/* 007DC 80B9B95C 46149182 */ mul.s $f6, $f18, $f20 -/* 007E0 80B9B960 00000000 */ nop -/* 007E4 80B9B964 46068102 */ mul.s $f4, $f16, $f6 -/* 007E8 80B9B968 E7A40078 */ swc1 $f4, 0x0078($sp) -/* 007EC 80B9B96C C60A0058 */ lwc1 $f10, 0x0058($s0) ## 00000058 -/* 007F0 80B9B970 46145482 */ mul.s $f18, $f10, $f20 -/* 007F4 80B9B974 00000000 */ nop -/* 007F8 80B9B978 46124402 */ mul.s $f16, $f8, $f18 -/* 007FC 80B9B97C E7B0007C */ swc1 $f16, 0x007C($sp) -/* 00800 80B9B980 8E070170 */ lw $a3, 0x0170($s0) ## 00000170 -/* 00804 80B9B984 0C2E6C82 */ jal func_80B9B208 -/* 00808 80B9B988 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C -/* 0080C 80B9B98C C7A60080 */ lwc1 $f6, 0x0080($sp) -/* 00810 80B9B990 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024 -/* 00814 80B9B994 C7A80084 */ lwc1 $f8, 0x0084($sp) -/* 00818 80B9B998 02C02025 */ or $a0, $s6, $zero ## $a0 = 000007C0 -/* 0081C 80B9B99C 46043280 */ add.s $f10, $f6, $f4 -/* 00820 80B9B9A0 C7A60088 */ lwc1 $f6, 0x0088($sp) -/* 00824 80B9B9A4 02602825 */ or $a1, $s3, $zero ## $a1 = 00000194 -/* 00828 80B9B9A8 02803025 */ or $a2, $s4, $zero ## $a2 = 00000180 -/* 0082C 80B9B9AC E7AA0080 */ swc1 $f10, 0x0080($sp) -/* 00830 80B9B9B0 C6120104 */ lwc1 $f18, 0x0104($s0) ## 00000104 -/* 00834 80B9B9B4 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 00838 80B9B9B8 46124400 */ add.s $f16, $f8, $f18 -/* 0083C 80B9B9BC E7B00084 */ swc1 $f16, 0x0084($sp) -/* 00840 80B9B9C0 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C -/* 00844 80B9B9C4 E7B60014 */ swc1 $f22, 0x0014($sp) -/* 00848 80B9B9C8 AFB50010 */ sw $s5, 0x0010($sp) -/* 0084C 80B9B9CC 46043280 */ add.s $f10, $f6, $f4 -/* 00850 80B9B9D0 0C00F299 */ jal func_8003CA64 -/* 00854 80B9B9D4 E7AA0088 */ swc1 $f10, 0x0088($sp) -/* 00858 80B9B9D8 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 80B9CA78 -/* 0085C 80B9B9DC 26520004 */ addiu $s2, $s2, 0x0004 ## $s2 = 00000004 -/* 00860 80B9B9E0 26730004 */ addiu $s3, $s3, 0x0004 ## $s3 = 00000198 -/* 00864 80B9B9E4 26940004 */ addiu $s4, $s4, 0x0004 ## $s4 = 00000184 -/* 00868 80B9B9E8 163EFFD2 */ bne $s1, $s8, .L80B9B934 -/* 0086C 80B9B9EC E64001A4 */ swc1 $f0, 0x01A4($s2) ## 000001A8 -/* 00870 80B9B9F0 8FBF0054 */ lw $ra, 0x0054($sp) -/* 00874 80B9B9F4 D7B40020 */ ldc1 $f20, 0x0020($sp) -/* 00878 80B9B9F8 D7B60028 */ ldc1 $f22, 0x0028($sp) -/* 0087C 80B9B9FC 8FB00030 */ lw $s0, 0x0030($sp) -/* 00880 80B9BA00 8FB10034 */ lw $s1, 0x0034($sp) -/* 00884 80B9BA04 8FB20038 */ lw $s2, 0x0038($sp) -/* 00888 80B9BA08 8FB3003C */ lw $s3, 0x003C($sp) -/* 0088C 80B9BA0C 8FB40040 */ lw $s4, 0x0040($sp) -/* 00890 80B9BA10 8FB50044 */ lw $s5, 0x0044($sp) -/* 00894 80B9BA14 8FB60048 */ lw $s6, 0x0048($sp) -/* 00898 80B9BA18 8FB7004C */ lw $s7, 0x004C($sp) -/* 0089C 80B9BA1C 8FBE0050 */ lw $s8, 0x0050($sp) -/* 008A0 80B9BA20 03E00008 */ jr $ra -/* 008A4 80B9BA24 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BA28.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BA28.s deleted file mode 100644 index c4c3182758..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BA28.s +++ /dev/null @@ -1,103 +0,0 @@ -.late_rodata -glabel D_80B9CCFC - .float -0.001 - -glabel D_80B9CD00 - .float -0.001 - -.text -glabel func_80B9BA28 -/* 008A8 80B9BA28 24820004 */ addiu $v0, $a0, 0x0004 ## $v0 = 00000004 -/* 008AC 80B9BA2C C44001A8 */ lwc1 $f0, 0x01A8($v0) ## 000001AC -/* 008B0 80B9BA30 C48201A8 */ lwc1 $f2, 0x01A8($a0) ## 000001A8 -/* 008B4 80B9BA34 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000 -/* 008B8 80B9BA38 24050032 */ addiu $a1, $zero, 0x0032 ## $a1 = 00000032 -/* 008BC 80B9BA3C 4600103C */ c.lt.s $f2, $f0 -/* 008C0 80B9BA40 00000000 */ nop -/* 008C4 80B9BA44 45020004 */ bc1fl .L80B9BA58 -/* 008C8 80B9BA48 8C4E0180 */ lw $t6, 0x0180($v0) ## 00000184 -/* 008CC 80B9BA4C 1000000D */ beq $zero, $zero, .L80B9BA84 -/* 008D0 80B9BA50 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -/* 008D4 80B9BA54 8C4E0180 */ lw $t6, 0x0180($v0) ## 00000184 -.L80B9BA58: -/* 008D8 80B9BA58 24050032 */ addiu $a1, $zero, 0x0032 ## $a1 = 00000032 -/* 008DC 80B9BA5C 3C0180BA */ lui $at, %hi(D_80B9CCFC) ## $at = 80BA0000 -/* 008E0 80B9BA60 54AE0009 */ bnel $a1, $t6, .L80B9BA88 -/* 008E4 80B9BA64 00037880 */ sll $t7, $v1, 2 -/* 008E8 80B9BA68 46020101 */ sub.s $f4, $f0, $f2 -/* 008EC 80B9BA6C C42CCCFC */ lwc1 $f12, %lo(D_80B9CCFC)($at) -/* 008F0 80B9BA70 4604603C */ c.lt.s $f12, $f4 -/* 008F4 80B9BA74 00000000 */ nop -/* 008F8 80B9BA78 45020003 */ bc1fl .L80B9BA88 -/* 008FC 80B9BA7C 00037880 */ sll $t7, $v1, 2 -/* 00900 80B9BA80 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001 -.L80B9BA84: -/* 00904 80B9BA84 00037880 */ sll $t7, $v1, 2 -.L80B9BA88: -/* 00908 80B9BA88 008FC021 */ addu $t8, $a0, $t7 -/* 0090C 80B9BA8C C70001A8 */ lwc1 $f0, 0x01A8($t8) ## 000001A8 -/* 00910 80B9BA90 C44201AC */ lwc1 $f2, 0x01AC($v0) ## 000001B0 -/* 00914 80B9BA94 3C0180BA */ lui $at, %hi(D_80B9CD00) ## $at = 80BA0000 -/* 00918 80B9BA98 C42CCD00 */ lwc1 $f12, %lo(D_80B9CD00)($at) -/* 0091C 80B9BA9C 4602003C */ c.lt.s $f0, $f2 -/* 00920 80B9BAA0 00000000 */ nop -/* 00924 80B9BAA4 45020005 */ bc1fl .L80B9BABC -/* 00928 80B9BAA8 8C590184 */ lw $t9, 0x0184($v0) ## 00000188 -/* 0092C 80B9BAAC 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002 -/* 00930 80B9BAB0 1000000B */ beq $zero, $zero, .L80B9BAE0 -/* 00934 80B9BAB4 C48001B0 */ lwc1 $f0, 0x01B0($a0) ## 000001B0 -/* 00938 80B9BAB8 8C590184 */ lw $t9, 0x0184($v0) ## 00000188 -.L80B9BABC: -/* 0093C 80B9BABC 54B90009 */ bnel $a1, $t9, .L80B9BAE4 -/* 00940 80B9BAC0 C44201B0 */ lwc1 $f2, 0x01B0($v0) ## 000001B4 -/* 00944 80B9BAC4 46001181 */ sub.s $f6, $f2, $f0 -/* 00948 80B9BAC8 4606603C */ c.lt.s $f12, $f6 -/* 0094C 80B9BACC 00000000 */ nop -/* 00950 80B9BAD0 45020004 */ bc1fl .L80B9BAE4 -/* 00954 80B9BAD4 C44201B0 */ lwc1 $f2, 0x01B0($v0) ## 000001B4 -/* 00958 80B9BAD8 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002 -/* 0095C 80B9BADC C48001B0 */ lwc1 $f0, 0x01B0($a0) ## 000001B0 -.L80B9BAE0: -/* 00960 80B9BAE0 C44201B0 */ lwc1 $f2, 0x01B0($v0) ## 000001B4 -.L80B9BAE4: -/* 00964 80B9BAE4 4602003C */ c.lt.s $f0, $f2 -/* 00968 80B9BAE8 00000000 */ nop -/* 0096C 80B9BAEC 45020005 */ bc1fl .L80B9BB04 -/* 00970 80B9BAF0 8C480188 */ lw $t0, 0x0188($v0) ## 0000018C -/* 00974 80B9BAF4 24030003 */ addiu $v1, $zero, 0x0003 ## $v1 = 00000003 -/* 00978 80B9BAF8 1000000B */ beq $zero, $zero, .L80B9BB28 -/* 0097C 80B9BAFC C48001B4 */ lwc1 $f0, 0x01B4($a0) ## 000001B4 -/* 00980 80B9BB00 8C480188 */ lw $t0, 0x0188($v0) ## 0000018C -.L80B9BB04: -/* 00984 80B9BB04 54A80009 */ bnel $a1, $t0, .L80B9BB2C -/* 00988 80B9BB08 C44201B4 */ lwc1 $f2, 0x01B4($v0) ## 000001B8 -/* 0098C 80B9BB0C 46001201 */ sub.s $f8, $f2, $f0 -/* 00990 80B9BB10 4608603C */ c.lt.s $f12, $f8 -/* 00994 80B9BB14 00000000 */ nop -/* 00998 80B9BB18 45020004 */ bc1fl .L80B9BB2C -/* 0099C 80B9BB1C C44201B4 */ lwc1 $f2, 0x01B4($v0) ## 000001B8 -/* 009A0 80B9BB20 24030003 */ addiu $v1, $zero, 0x0003 ## $v1 = 00000003 -/* 009A4 80B9BB24 C48001B4 */ lwc1 $f0, 0x01B4($a0) ## 000001B4 -.L80B9BB28: -/* 009A8 80B9BB28 C44201B4 */ lwc1 $f2, 0x01B4($v0) ## 000001B8 -.L80B9BB2C: -/* 009AC 80B9BB2C 4602003C */ c.lt.s $f0, $f2 -/* 009B0 80B9BB30 00000000 */ nop -/* 009B4 80B9BB34 45020004 */ bc1fl .L80B9BB48 -/* 009B8 80B9BB38 8C49018C */ lw $t1, 0x018C($v0) ## 00000190 -/* 009BC 80B9BB3C 03E00008 */ jr $ra -/* 009C0 80B9BB40 24020004 */ addiu $v0, $zero, 0x0004 ## $v0 = 00000004 -.L80B9BB44: -/* 009C4 80B9BB44 8C49018C */ lw $t1, 0x018C($v0) ## 00000190 -.L80B9BB48: -/* 009C8 80B9BB48 14A90007 */ bne $a1, $t1, .L80B9BB68 -/* 009CC 80B9BB4C 00000000 */ nop -/* 009D0 80B9BB50 46001281 */ sub.s $f10, $f2, $f0 -/* 009D4 80B9BB54 460A603C */ c.lt.s $f12, $f10 -/* 009D8 80B9BB58 00000000 */ nop -/* 009DC 80B9BB5C 45000002 */ bc1f .L80B9BB68 -/* 009E0 80B9BB60 00000000 */ nop -/* 009E4 80B9BB64 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004 -.L80B9BB68: -/* 009E8 80B9BB68 03E00008 */ jr $ra -/* 009EC 80B9BB6C 00601025 */ or $v0, $v1, $zero ## $v0 = 00000004 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BB70.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BB70.s deleted file mode 100644 index 105f4f64a4..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BB70.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_80B9BB70 -/* 009F0 80B9BB70 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 009F4 80B9BB74 AFBF001C */ sw $ra, 0x001C($sp) -/* 009F8 80B9BB78 AFB00018 */ sw $s0, 0x0018($sp) -/* 009FC 80B9BB7C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00A00 80B9BB80 0C2E6CB6 */ jal func_80B9B2D8 -/* 00A04 80B9BB84 AFA50024 */ sw $a1, 0x0024($sp) -/* 00A08 80B9BB88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00A0C 80B9BB8C 0C2E6E32 */ jal func_80B9B8C8 -/* 00A10 80B9BB90 8FA50024 */ lw $a1, 0x0024($sp) -/* 00A14 80B9BB94 0C2E6E8A */ jal func_80B9BA28 -/* 00A18 80B9BB98 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00A1C 80B9BB9C A60201BC */ sh $v0, 0x01BC($s0) ## 000001BC -/* 00A20 80B9BBA0 860E01BC */ lh $t6, 0x01BC($s0) ## 000001BC -/* 00A24 80B9BBA4 000E7880 */ sll $t7, $t6, 2 -/* 00A28 80B9BBA8 020FC021 */ addu $t8, $s0, $t7 -/* 00A2C 80B9BBAC C70401A8 */ lwc1 $f4, 0x01A8($t8) ## 000001A8 -/* 00A30 80B9BBB0 E6040080 */ swc1 $f4, 0x0080($s0) ## 00000080 -/* 00A34 80B9BBB4 8FBF001C */ lw $ra, 0x001C($sp) -/* 00A38 80B9BBB8 8FB00018 */ lw $s0, 0x0018($sp) -/* 00A3C 80B9BBBC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00A40 80B9BBC0 03E00008 */ jr $ra -/* 00A44 80B9BBC4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BBC8.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BBC8.s deleted file mode 100644 index 1f0983af38..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BBC8.s +++ /dev/null @@ -1,29 +0,0 @@ -.late_rodata -glabel D_80B9CD04 - .float -0.001 - -.text -glabel func_80B9BBC8 -/* 00A48 80B9BBC8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 00A4C 80B9BBCC AFBF0014 */ sw $ra, 0x0014($sp) -/* 00A50 80B9BBD0 0C2E6EDC */ jal func_80B9BB70 -/* 00A54 80B9BBD4 AFA40018 */ sw $a0, 0x0018($sp) -/* 00A58 80B9BBD8 8FA40018 */ lw $a0, 0x0018($sp) -/* 00A5C 80B9BBDC 3C0180BA */ lui $at, %hi(D_80B9CD04) ## $at = 80BA0000 -/* 00A60 80B9BBE0 C428CD04 */ lwc1 $f8, %lo(D_80B9CD04)($at) -/* 00A64 80B9BBE4 C4800080 */ lwc1 $f0, 0x0080($a0) ## 00000080 -/* 00A68 80B9BBE8 C4840028 */ lwc1 $f4, 0x0028($a0) ## 00000028 -/* 00A6C 80B9BBEC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00A70 80B9BBF0 46040181 */ sub.s $f6, $f0, $f4 -/* 00A74 80B9BBF4 4606403E */ c.le.s $f8, $f6 -/* 00A78 80B9BBF8 00000000 */ nop -/* 00A7C 80B9BBFC 45000004 */ bc1f .L80B9BC10 -/* 00A80 80B9BC00 00000000 */ nop -/* 00A84 80B9BC04 E4800028 */ swc1 $f0, 0x0028($a0) ## 00000028 -/* 00A88 80B9BC08 10000001 */ beq $zero, $zero, .L80B9BC10 -/* 00A8C 80B9BC0C 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9BC10: -/* 00A90 80B9BC10 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00A94 80B9BC14 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 00A98 80B9BC18 03E00008 */ jr $ra -/* 00A9C 80B9BC1C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BC20.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BC20.s deleted file mode 100644 index 8edc722f86..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BC20.s +++ /dev/null @@ -1,60 +0,0 @@ -.rdata -glabel D_80B9CC08 - .asciz "Warning : 押し引きブロック落ちすぎた(%s %d)(arg_data 0x%04x)\n" - .balign 4 - -glabel D_80B9CC48 - .asciz "../z_obj_oshihiki.c" - .balign 4 - -.late_rodata -glabel D_80B9CD08 - .float -31990.0 - -glabel D_80B9CD0C - .float -0.001 - -.text -glabel func_80B9BC20 -/* 00AA0 80B9BC20 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00AA4 80B9BC24 AFBF001C */ sw $ra, 0x001C($sp) -/* 00AA8 80B9BC28 AFB00018 */ sw $s0, 0x0018($sp) -/* 00AAC 80B9BC2C AFA50024 */ sw $a1, 0x0024($sp) -/* 00AB0 80B9BC30 3C0180BA */ lui $at, %hi(D_80B9CD08) ## $at = 80BA0000 -/* 00AB4 80B9BC34 C424CD08 */ lwc1 $f4, %lo(D_80B9CD08)($at) -/* 00AB8 80B9BC38 C4800028 */ lwc1 $f0, 0x0028($a0) ## 00000028 -/* 00ABC 80B9BC3C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00AC0 80B9BC40 3C0480BA */ lui $a0, %hi(D_80B9CC08) ## $a0 = 80BA0000 -/* 00AC4 80B9BC44 4604003E */ c.le.s $f0, $f4 -/* 00AC8 80B9BC48 3C0580BA */ lui $a1, %hi(D_80B9CC48) ## $a1 = 80BA0000 -/* 00ACC 80B9BC4C 24A5CC48 */ addiu $a1, $a1, %lo(D_80B9CC48) ## $a1 = 80B9CC48 -/* 00AD0 80B9BC50 2484CC08 */ addiu $a0, $a0, %lo(D_80B9CC08) ## $a0 = 80B9CC08 -/* 00AD4 80B9BC54 45000007 */ bc1f .L80B9BC74 -/* 00AD8 80B9BC58 24060329 */ addiu $a2, $zero, 0x0329 ## $a2 = 00000329 -/* 00ADC 80B9BC5C 0C00084C */ jal osSyncPrintf - -/* 00AE0 80B9BC60 8607001C */ lh $a3, 0x001C($s0) ## 0000001C -/* 00AE4 80B9BC64 0C00B55C */ jal Actor_Kill - -/* 00AE8 80B9BC68 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 00AEC 80B9BC6C 1000000D */ beq $zero, $zero, .L80B9BCA4 -/* 00AF0 80B9BC70 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80B9BC74: -/* 00AF4 80B9BC74 C6020080 */ lwc1 $f2, 0x0080($s0) ## 00000080 -/* 00AF8 80B9BC78 3C0180BA */ lui $at, %hi(D_80B9CD0C) ## $at = 80BA0000 -/* 00AFC 80B9BC7C C428CD0C */ lwc1 $f8, %lo(D_80B9CD0C)($at) -/* 00B00 80B9BC80 46001181 */ sub.s $f6, $f2, $f0 -/* 00B04 80B9BC84 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00B08 80B9BC88 4606403E */ c.le.s $f8, $f6 -/* 00B0C 80B9BC8C 00000000 */ nop -/* 00B10 80B9BC90 45000004 */ bc1f .L80B9BCA4 -/* 00B14 80B9BC94 00000000 */ nop -/* 00B18 80B9BC98 E6020028 */ swc1 $f2, 0x0028($s0) ## 00000028 -/* 00B1C 80B9BC9C 10000001 */ beq $zero, $zero, .L80B9BCA4 -/* 00B20 80B9BCA0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9BCA4: -/* 00B24 80B9BCA4 8FBF001C */ lw $ra, 0x001C($sp) -/* 00B28 80B9BCA8 8FB00018 */ lw $s0, 0x0018($sp) -/* 00B2C 80B9BCAC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00B30 80B9BCB0 03E00008 */ jr $ra -/* 00B34 80B9BCB4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BCB8.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BCB8.s deleted file mode 100644 index 3b3e4d6374..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BCB8.s +++ /dev/null @@ -1,156 +0,0 @@ -glabel func_80B9BCB8 -/* 00B38 80B9BCB8 27BDFF10 */ addiu $sp, $sp, 0xFF10 ## $sp = FFFFFF10 -/* 00B3C 80B9BCBC F7BC0058 */ sdc1 $f28, 0x0058($sp) -/* 00B40 80B9BCC0 4480E000 */ mtc1 $zero, $f28 ## $f28 = 0.00 -/* 00B44 80B9BCC4 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00 -/* 00B48 80B9BCC8 AFB00068 */ sw $s0, 0x0068($sp) -/* 00B4C 80B9BCCC 00058400 */ sll $s0, $a1, 16 -/* 00B50 80B9BCD0 460CE03E */ c.le.s $f28, $f12 -/* 00B54 80B9BCD4 AFB30074 */ sw $s3, 0x0074($sp) -/* 00B58 80B9BCD8 AFB20070 */ sw $s2, 0x0070($sp) -/* 00B5C 80B9BCDC 00E09025 */ or $s2, $a3, $zero ## $s2 = 00000000 -/* 00B60 80B9BCE0 00809825 */ or $s3, $a0, $zero ## $s3 = 00000000 -/* 00B64 80B9BCE4 00108403 */ sra $s0, $s0, 16 -/* 00B68 80B9BCE8 AFBF008C */ sw $ra, 0x008C($sp) -/* 00B6C 80B9BCEC AFBE0088 */ sw $s8, 0x0088($sp) -/* 00B70 80B9BCF0 AFB70084 */ sw $s7, 0x0084($sp) -/* 00B74 80B9BCF4 AFB60080 */ sw $s6, 0x0080($sp) -/* 00B78 80B9BCF8 AFB5007C */ sw $s5, 0x007C($sp) -/* 00B7C 80B9BCFC AFB40078 */ sw $s4, 0x0078($sp) -/* 00B80 80B9BD00 AFB1006C */ sw $s1, 0x006C($sp) -/* 00B84 80B9BD04 F7BE0060 */ sdc1 $f30, 0x0060($sp) -/* 00B88 80B9BD08 F7BA0050 */ sdc1 $f26, 0x0050($sp) -/* 00B8C 80B9BD0C F7B80048 */ sdc1 $f24, 0x0048($sp) -/* 00B90 80B9BD10 F7B60040 */ sdc1 $f22, 0x0040($sp) -/* 00B94 80B9BD14 F7B40038 */ sdc1 $f20, 0x0038($sp) -/* 00B98 80B9BD18 45000005 */ bc1f .L80B9BD30 -/* 00B9C 80B9BD1C AFA500F4 */ sw $a1, 0x00F4($sp) -/* 00BA0 80B9BD20 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 00BA4 80B9BD24 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00 -/* 00BA8 80B9BD28 10000005 */ beq $zero, $zero, .L80B9BD40 -/* 00BAC 80B9BD2C 3C014396 */ lui $at, 0x4396 ## $at = 43960000 -.L80B9BD30: -/* 00BB0 80B9BD30 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 -/* 00BB4 80B9BD34 44810000 */ mtc1 $at, $f0 ## $f0 = -1.00 -/* 00BB8 80B9BD38 00000000 */ nop -/* 00BBC 80B9BD3C 3C014396 */ lui $at, 0x4396 ## $at = 43960000 -.L80B9BD40: -/* 00BC0 80B9BD40 44812000 */ mtc1 $at, $f4 ## $f4 = 300.00 -/* 00BC4 80B9BD44 C6460050 */ lwc1 $f6, 0x0050($s2) ## 00000050 -/* 00BC8 80B9BD48 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000 -/* 00BCC 80B9BD4C 44815000 */ mtc1 $at, $f10 ## $f10 = 20.00 -/* 00BD0 80B9BD50 46062202 */ mul.s $f8, $f4, $f6 -/* 00BD4 80B9BD54 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 00BD8 80B9BD58 44819000 */ mtc1 $at, $f18 ## $f18 = 0.50 -/* 00BDC 80B9BD5C 00102400 */ sll $a0, $s0, 16 -/* 00BE0 80B9BD60 00042403 */ sra $a0, $a0, 16 -/* 00BE4 80B9BD64 460A4400 */ add.s $f16, $f8, $f10 -/* 00BE8 80B9BD68 46128101 */ sub.s $f4, $f16, $f18 -/* 00BEC 80B9BD6C 46040502 */ mul.s $f20, $f0, $f4 -/* 00BF0 80B9BD70 0C01DE1C */ jal Math_Sins - ## sins? -/* 00BF4 80B9BD74 00000000 */ nop -/* 00BF8 80B9BD78 00102400 */ sll $a0, $s0, 16 -/* 00BFC 80B9BD7C 46000786 */ mov.s $f30, $f0 -/* 00C00 80B9BD80 0C01DE0D */ jal Math_Coss - ## coss? -/* 00C04 80B9BD84 00042403 */ sra $a0, $a0, 16 -/* 00C08 80B9BD88 461EA602 */ mul.s $f24, $f20, $f30 -/* 00C0C 80B9BD8C 3C014120 */ lui $at, 0x4120 ## $at = 41200000 -/* 00C10 80B9BD90 3C1180BA */ lui $s1, %hi(D_80B9CAC8) ## $s1 = 80BA0000 -/* 00C14 80B9BD94 4600A682 */ mul.s $f26, $f20, $f0 -/* 00C18 80B9BD98 3C1080BA */ lui $s0, %hi(D_80B9CAA8) ## $s0 = 80BA0000 -/* 00C1C 80B9BD9C 267407C0 */ addiu $s4, $s3, 0x07C0 ## $s4 = 000007C0 -/* 00C20 80B9BDA0 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00 -/* 00C24 80B9BDA4 46000586 */ mov.s $f22, $f0 -/* 00C28 80B9BDA8 27B300D4 */ addiu $s3, $sp, 0x00D4 ## $s3 = FFFFFFE4 -/* 00C2C 80B9BDAC 2610CAA8 */ addiu $s0, $s0, %lo(D_80B9CAA8) ## $s0 = 80B9CAA8 -/* 00C30 80B9BDB0 2631CAC8 */ addiu $s1, $s1, %lo(D_80B9CAC8) ## $s1 = 80B9CAC8 -/* 00C34 80B9BDB4 27BE00A8 */ addiu $s8, $sp, 0x00A8 ## $s8 = FFFFFFB8 -/* 00C38 80B9BDB8 27B700BC */ addiu $s7, $sp, 0x00BC ## $s7 = FFFFFFCC -/* 00C3C 80B9BDBC 27B600C8 */ addiu $s6, $sp, 0x00C8 ## $s6 = FFFFFFD8 -/* 00C40 80B9BDC0 27B500B0 */ addiu $s5, $sp, 0x00B0 ## $s5 = FFFFFFC0 -.L80B9BDC4: -/* 00C44 80B9BDC4 C6060000 */ lwc1 $f6, 0x0000($s0) ## 80B9CAA8 -/* 00C48 80B9BDC8 C6480050 */ lwc1 $f8, 0x0050($s2) ## 00000050 -/* 00C4C 80B9BDCC C6320000 */ lwc1 $f18, 0x0000($s1) ## 80B9CAC8 -/* 00C50 80B9BDD0 4406F000 */ mfc1 $a2, $f30 -/* 00C54 80B9BDD4 46083282 */ mul.s $f10, $f6, $f8 -/* 00C58 80B9BDD8 C6060004 */ lwc1 $f6, 0x0004($s0) ## 80B9CAAC -/* 00C5C 80B9BDDC 4407B000 */ mfc1 $a3, $f22 -/* 00C60 80B9BDE0 02602025 */ or $a0, $s3, $zero ## $a0 = FFFFFFE4 -/* 00C64 80B9BDE4 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFFC0 -/* 00C68 80B9BDE8 46145402 */ mul.s $f16, $f10, $f20 -/* 00C6C 80B9BDEC 46109100 */ add.s $f4, $f18, $f16 -/* 00C70 80B9BDF0 C6300004 */ lwc1 $f16, 0x0004($s1) ## 80B9CACC -/* 00C74 80B9BDF4 E7A400B0 */ swc1 $f4, 0x00B0($sp) -/* 00C78 80B9BDF8 C6480054 */ lwc1 $f8, 0x0054($s2) ## 00000054 -/* 00C7C 80B9BDFC E7BC00B8 */ swc1 $f28, 0x00B8($sp) -/* 00C80 80B9BE00 46083282 */ mul.s $f10, $f6, $f8 -/* 00C84 80B9BE04 00000000 */ nop -/* 00C88 80B9BE08 46145482 */ mul.s $f18, $f10, $f20 -/* 00C8C 80B9BE0C 46128100 */ add.s $f4, $f16, $f18 -/* 00C90 80B9BE10 0C2E6C82 */ jal func_80B9B208 -/* 00C94 80B9BE14 E7A400B4 */ swc1 $f4, 0x00B4($sp) -/* 00C98 80B9BE18 C7A600D4 */ lwc1 $f6, 0x00D4($sp) -/* 00C9C 80B9BE1C C6480024 */ lwc1 $f8, 0x0024($s2) ## 00000024 -/* 00CA0 80B9BE20 C7B000D8 */ lwc1 $f16, 0x00D8($sp) -/* 00CA4 80B9BE24 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001 -/* 00CA8 80B9BE28 46083280 */ add.s $f10, $f6, $f8 -/* 00CAC 80B9BE2C C7A600DC */ lwc1 $f6, 0x00DC($sp) -/* 00CB0 80B9BE30 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001 -/* 00CB4 80B9BE34 27B800AC */ addiu $t8, $sp, 0x00AC ## $t8 = FFFFFFBC -/* 00CB8 80B9BE38 E7AA00D4 */ swc1 $f10, 0x00D4($sp) -/* 00CBC 80B9BE3C C6520028 */ lwc1 $f18, 0x0028($s2) ## 00000028 -/* 00CC0 80B9BE40 02802025 */ or $a0, $s4, $zero ## $a0 = 000007C0 -/* 00CC4 80B9BE44 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFE4 -/* 00CC8 80B9BE48 46128100 */ add.s $f4, $f16, $f18 -/* 00CCC 80B9BE4C 02C03025 */ or $a2, $s6, $zero ## $a2 = FFFFFFD8 -/* 00CD0 80B9BE50 02E03825 */ or $a3, $s7, $zero ## $a3 = FFFFFFCC -/* 00CD4 80B9BE54 460AC480 */ add.s $f18, $f24, $f10 -/* 00CD8 80B9BE58 E7A400D8 */ swc1 $f4, 0x00D8($sp) -/* 00CDC 80B9BE5C C648002C */ lwc1 $f8, 0x002C($s2) ## 0000002C -/* 00CE0 80B9BE60 E7A400CC */ swc1 $f4, 0x00CC($sp) -/* 00CE4 80B9BE64 E7B200C8 */ swc1 $f18, 0x00C8($sp) -/* 00CE8 80B9BE68 46083400 */ add.s $f16, $f6, $f8 -/* 00CEC 80B9BE6C E7BC002C */ swc1 $f28, 0x002C($sp) -/* 00CF0 80B9BE70 AFB20028 */ sw $s2, 0x0028($sp) -/* 00CF4 80B9BE74 AFB80024 */ sw $t8, 0x0024($sp) -/* 00CF8 80B9BE78 4610D180 */ add.s $f6, $f26, $f16 -/* 00CFC 80B9BE7C E7B000DC */ swc1 $f16, 0x00DC($sp) -/* 00D00 80B9BE80 AFAF0020 */ sw $t7, 0x0020($sp) -/* 00D04 80B9BE84 AFA0001C */ sw $zero, 0x001C($sp) -/* 00D08 80B9BE88 E7A600D0 */ swc1 $f6, 0x00D0($sp) -/* 00D0C 80B9BE8C AFA00018 */ sw $zero, 0x0018($sp) -/* 00D10 80B9BE90 AFAE0014 */ sw $t6, 0x0014($sp) -/* 00D14 80B9BE94 0C00F7E8 */ jal func_8003DFA0 -/* 00D18 80B9BE98 AFBE0010 */ sw $s8, 0x0010($sp) -/* 00D1C 80B9BE9C 10400003 */ beq $v0, $zero, .L80B9BEAC -/* 00D20 80B9BEA0 26100008 */ addiu $s0, $s0, 0x0008 ## $s0 = 80B9CAB0 -/* 00D24 80B9BEA4 10000006 */ beq $zero, $zero, .L80B9BEC0 -/* 00D28 80B9BEA8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9BEAC: -/* 00D2C 80B9BEAC 3C1980BA */ lui $t9, %hi(D_80B9CAC8) ## $t9 = 80BA0000 -/* 00D30 80B9BEB0 2739CAC8 */ addiu $t9, $t9, %lo(D_80B9CAC8) ## $t9 = 80B9CAC8 -/* 00D34 80B9BEB4 1619FFC3 */ bne $s0, $t9, .L80B9BDC4 -/* 00D38 80B9BEB8 26310008 */ addiu $s1, $s1, 0x0008 ## $s1 = 80B9CAD0 -/* 00D3C 80B9BEBC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80B9BEC0: -/* 00D40 80B9BEC0 8FBF008C */ lw $ra, 0x008C($sp) -/* 00D44 80B9BEC4 D7B40038 */ ldc1 $f20, 0x0038($sp) -/* 00D48 80B9BEC8 D7B60040 */ ldc1 $f22, 0x0040($sp) -/* 00D4C 80B9BECC D7B80048 */ ldc1 $f24, 0x0048($sp) -/* 00D50 80B9BED0 D7BA0050 */ ldc1 $f26, 0x0050($sp) -/* 00D54 80B9BED4 D7BC0058 */ ldc1 $f28, 0x0058($sp) -/* 00D58 80B9BED8 D7BE0060 */ ldc1 $f30, 0x0060($sp) -/* 00D5C 80B9BEDC 8FB00068 */ lw $s0, 0x0068($sp) -/* 00D60 80B9BEE0 8FB1006C */ lw $s1, 0x006C($sp) -/* 00D64 80B9BEE4 8FB20070 */ lw $s2, 0x0070($sp) -/* 00D68 80B9BEE8 8FB30074 */ lw $s3, 0x0074($sp) -/* 00D6C 80B9BEEC 8FB40078 */ lw $s4, 0x0078($sp) -/* 00D70 80B9BEF0 8FB5007C */ lw $s5, 0x007C($sp) -/* 00D74 80B9BEF4 8FB60080 */ lw $s6, 0x0080($sp) -/* 00D78 80B9BEF8 8FB70084 */ lw $s7, 0x0084($sp) -/* 00D7C 80B9BEFC 8FBE0088 */ lw $s8, 0x0088($sp) -/* 00D80 80B9BF00 03E00008 */ jr $ra -/* 00D84 80B9BF04 27BD00F0 */ addiu $sp, $sp, 0x00F0 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BF08.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BF08.s deleted file mode 100644 index 1e3c733539..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BF08.s +++ /dev/null @@ -1,65 +0,0 @@ -glabel func_80B9BF08 -/* 00D88 80B9BF08 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00D8C 80B9BF0C AFBF0014 */ sw $ra, 0x0014($sp) -/* 00D90 80B9BF10 AFA50024 */ sw $a1, 0x0024($sp) -/* 00D94 80B9BF14 0C2E6CC0 */ jal func_80B9B300 -/* 00D98 80B9BF18 AFA40020 */ sw $a0, 0x0020($sp) -/* 00D9C 80B9BF1C 1040000F */ beq $v0, $zero, .L80B9BF5C -/* 00DA0 80B9BF20 8FA70020 */ lw $a3, 0x0020($sp) -/* 00DA4 80B9BF24 944E0168 */ lhu $t6, 0x0168($v0) ## 00000168 -/* 00DA8 80B9BF28 8FA40024 */ lw $a0, 0x0024($sp) -/* 00DAC 80B9BF2C 31CF0020 */ andi $t7, $t6, 0x0020 ## $t7 = 00000000 -/* 00DB0 80B9BF30 51E0000B */ beql $t7, $zero, .L80B9BF60 -/* 00DB4 80B9BF34 94F80168 */ lhu $t8, 0x0168($a3) ## 00000168 -/* 00DB8 80B9BF38 84450158 */ lh $a1, 0x0158($v0) ## 00000158 -/* 00DBC 80B9BF3C 8C46017C */ lw $a2, 0x017C($v0) ## 0000017C -/* 00DC0 80B9BF40 AFA70020 */ sw $a3, 0x0020($sp) -/* 00DC4 80B9BF44 0C2E6F2E */ jal func_80B9BCB8 -/* 00DC8 80B9BF48 AFA20018 */ sw $v0, 0x0018($sp) -/* 00DCC 80B9BF4C 8FA30018 */ lw $v1, 0x0018($sp) -/* 00DD0 80B9BF50 14400002 */ bne $v0, $zero, .L80B9BF5C -/* 00DD4 80B9BF54 8FA70020 */ lw $a3, 0x0020($sp) -/* 00DD8 80B9BF58 ACE301C0 */ sw $v1, 0x01C0($a3) ## 000001C0 -.L80B9BF5C: -/* 00DDC 80B9BF5C 94F80168 */ lhu $t8, 0x0168($a3) ## 00000168 -.L80B9BF60: -/* 00DE0 80B9BF60 33190100 */ andi $t9, $t8, 0x0100 ## $t9 = 00000000 -/* 00DE4 80B9BF64 53200020 */ beql $t9, $zero, .L80B9BFE8 -/* 00DE8 80B9BF68 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00DEC 80B9BF6C 8CE201C0 */ lw $v0, 0x01C0($a3) ## 000001C0 -/* 00DF0 80B9BF70 5040001D */ beql $v0, $zero, .L80B9BFE8 -/* 00DF4 80B9BF74 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00DF8 80B9BF78 94430168 */ lhu $v1, 0x0168($v0) ## 00000168 -/* 00DFC 80B9BF7C 30680010 */ andi $t0, $v1, 0x0010 ## $t0 = 00000000 -/* 00E00 80B9BF80 11000015 */ beq $t0, $zero, .L80B9BFD8 -/* 00E04 80B9BF84 30690020 */ andi $t1, $v1, 0x0020 ## $t1 = 00000000 -/* 00E08 80B9BF88 C4440024 */ lwc1 $f4, 0x0024($v0) ## 00000024 -/* 00E0C 80B9BF8C C4460100 */ lwc1 $f6, 0x0100($v0) ## 00000100 -/* 00E10 80B9BF90 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000 -/* 00E14 80B9BF94 46062201 */ sub.s $f8, $f4, $f6 -/* 00E18 80B9BF98 C4E40024 */ lwc1 $f4, 0x0024($a3) ## 00000024 -/* 00E1C 80B9BF9C E4E801C4 */ swc1 $f8, 0x01C4($a3) ## 000001C4 -/* 00E20 80B9BFA0 C4500108 */ lwc1 $f16, 0x0108($v0) ## 00000108 -/* 00E24 80B9BFA4 C44A002C */ lwc1 $f10, 0x002C($v0) ## 0000002C -/* 00E28 80B9BFA8 C4E601C4 */ lwc1 $f6, 0x01C4($a3) ## 000001C4 -/* 00E2C 80B9BFAC 46105481 */ sub.s $f18, $f10, $f16 -/* 00E30 80B9BFB0 C4EA002C */ lwc1 $f10, 0x002C($a3) ## 0000002C -/* 00E34 80B9BFB4 46062200 */ add.s $f8, $f4, $f6 -/* 00E38 80B9BFB8 E4F201C8 */ swc1 $f18, 0x01C8($a3) ## 000001C8 -/* 00E3C 80B9BFBC C4F001C8 */ lwc1 $f16, 0x01C8($a3) ## 000001C8 -/* 00E40 80B9BFC0 E4E80024 */ swc1 $f8, 0x0024($a3) ## 00000024 -/* 00E44 80B9BFC4 46105480 */ add.s $f18, $f10, $f16 -/* 00E48 80B9BFC8 0C2E6CE3 */ jal func_80B9B38C -/* 00E4C 80B9BFCC E4F2002C */ swc1 $f18, 0x002C($a3) ## 0000002C -/* 00E50 80B9BFD0 10000005 */ beq $zero, $zero, .L80B9BFE8 -/* 00E54 80B9BFD4 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001 -.L80B9BFD8: -/* 00E58 80B9BFD8 55200003 */ bnel $t1, $zero, .L80B9BFE8 -/* 00E5C 80B9BFDC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -/* 00E60 80B9BFE0 ACE001C0 */ sw $zero, 0x01C0($a3) ## 000001C0 -/* 00E64 80B9BFE4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000 -.L80B9BFE8: -/* 00E68 80B9BFE8 8FBF0014 */ lw $ra, 0x0014($sp) -/* 00E6C 80B9BFEC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00E70 80B9BFF0 03E00008 */ jr $ra -/* 00E74 80B9BFF4 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BFF8.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BFF8.s deleted file mode 100644 index 68accad73f..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BFF8.s +++ /dev/null @@ -1,14 +0,0 @@ -glabel func_80B9BFF8 -/* 00E78 80B9BFF8 AFA50004 */ sw $a1, 0x0004($sp) -/* 00E7C 80B9BFFC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00E80 80B9C000 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 00E84 80B9C004 3C1880BA */ lui $t8, %hi(func_80B9C02C) ## $t8 = 80BA0000 -/* 00E88 80B9C008 2718C02C */ addiu $t8, $t8, %lo(func_80B9C02C) ## $t8 = 80B9C02C -/* 00E8C 80B9C00C 35CF0002 */ ori $t7, $t6, 0x0002 ## $t7 = 00000002 -/* 00E90 80B9C010 A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 00E94 80B9C014 AC980164 */ sw $t8, 0x0164($a0) ## 00000164 -/* 00E98 80B9C018 E480006C */ swc1 $f0, 0x006C($a0) ## 0000006C -/* 00E9C 80B9C01C E4800064 */ swc1 $f0, 0x0064($a0) ## 00000064 -/* 00EA0 80B9C020 E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060 -/* 00EA4 80B9C024 03E00008 */ jr $ra -/* 00EA8 80B9C028 E480005C */ swc1 $f0, 0x005C($a0) ## 0000005C diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C02C.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C02C.s deleted file mode 100644 index 2fc0cf5de4..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C02C.s +++ /dev/null @@ -1,68 +0,0 @@ -.late_rodata -glabel D_80B9CD10 - .float 0.001 - -.text -glabel func_80B9C02C -/* 00EAC 80B9C02C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 00EB0 80B9C030 AFBF0014 */ sw $ra, 0x0014($sp) -/* 00EB4 80B9C034 AFA50024 */ sw $a1, 0x0024($sp) -/* 00EB8 80B9C038 948F0168 */ lhu $t7, 0x0168($a0) ## 00000168 -/* 00EBC 80B9C03C 8499016A */ lh $t9, 0x016A($a0) ## 0000016A -/* 00EC0 80B9C040 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44 -/* 00EC4 80B9C044 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001 -/* 00EC8 80B9C048 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000 -/* 00ECC 80B9C04C 1F200026 */ bgtz $t9, .L80B9C0E8 -/* 00ED0 80B9C050 A4980168 */ sh $t8, 0x0168($a0) ## 00000168 -/* 00ED4 80B9C054 C4800150 */ lwc1 $f0, 0x0150($a0) ## 00000150 -/* 00ED8 80B9C058 3C0180BA */ lui $at, %hi(D_80B9CD10) ## $at = 80BA0000 -/* 00EDC 80B9C05C C424CD10 */ lwc1 $f4, %lo(D_80B9CD10)($at) -/* 00EE0 80B9C060 46000005 */ abs.s $f0, $f0 -/* 00EE4 80B9C064 4600203C */ c.lt.s $f4, $f0 -/* 00EE8 80B9C068 00000000 */ nop -/* 00EEC 80B9C06C 4502001F */ bc1fl .L80B9C0EC -/* 00EF0 80B9C070 8C6A0680 */ lw $t2, 0x0680($v1) ## 00000680 -/* 00EF4 80B9C074 AFA30018 */ sw $v1, 0x0018($sp) -/* 00EF8 80B9C078 0C2E6C95 */ jal func_80B9B254 -/* 00EFC 80B9C07C AFA70020 */ sw $a3, 0x0020($sp) -/* 00F00 80B9C080 8FA30018 */ lw $v1, 0x0018($sp) -/* 00F04 80B9C084 10400011 */ beq $v0, $zero, .L80B9C0CC -/* 00F08 80B9C088 8FA70020 */ lw $a3, 0x0020($sp) -/* 00F0C 80B9C08C 84E50158 */ lh $a1, 0x0158($a3) ## 00000158 -/* 00F10 80B9C090 8CE60150 */ lw $a2, 0x0150($a3) ## 00000150 -/* 00F14 80B9C094 AFA70020 */ sw $a3, 0x0020($sp) -/* 00F18 80B9C098 AFA30018 */ sw $v1, 0x0018($sp) -/* 00F1C 80B9C09C 0C2E6F2E */ jal func_80B9BCB8 -/* 00F20 80B9C0A0 8FA40024 */ lw $a0, 0x0024($sp) -/* 00F24 80B9C0A4 8FA30018 */ lw $v1, 0x0018($sp) -/* 00F28 80B9C0A8 14400008 */ bne $v0, $zero, .L80B9C0CC -/* 00F2C 80B9C0AC 8FA70020 */ lw $a3, 0x0020($sp) -/* 00F30 80B9C0B0 C4E60150 */ lwc1 $f6, 0x0150($a3) ## 00000150 -/* 00F34 80B9C0B4 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000 -/* 00F38 80B9C0B8 E4E6017C */ swc1 $f6, 0x017C($a3) ## 0000017C -/* 00F3C 80B9C0BC 0C2E70D0 */ jal func_80B9C340 -/* 00F40 80B9C0C0 8FA50024 */ lw $a1, 0x0024($sp) -/* 00F44 80B9C0C4 1000000F */ beq $zero, $zero, .L80B9C104 -/* 00F48 80B9C0C8 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9C0CC: -/* 00F4C 80B9C0CC 8C680680 */ lw $t0, 0x0680($v1) ## 00000680 -/* 00F50 80B9C0D0 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00F54 80B9C0D4 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00 -/* 00F58 80B9C0D8 01014824 */ and $t1, $t0, $at -/* 00F5C 80B9C0DC AC690680 */ sw $t1, 0x0680($v1) ## 00000680 -/* 00F60 80B9C0E0 10000007 */ beq $zero, $zero, .L80B9C100 -/* 00F64 80B9C0E4 E4E80150 */ swc1 $f8, 0x0150($a3) ## 00000150 -.L80B9C0E8: -/* 00F68 80B9C0E8 8C6A0680 */ lw $t2, 0x0680($v1) ## 00000680 -.L80B9C0EC: -/* 00F6C 80B9C0EC 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -/* 00F70 80B9C0F0 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 00F74 80B9C0F4 01415824 */ and $t3, $t2, $at -/* 00F78 80B9C0F8 AC6B0680 */ sw $t3, 0x0680($v1) ## 00000680 -/* 00F7C 80B9C0FC E4EA0150 */ swc1 $f10, 0x0150($a3) ## 00000150 -.L80B9C100: -/* 00F80 80B9C100 8FBF0014 */ lw $ra, 0x0014($sp) -.L80B9C104: -/* 00F84 80B9C104 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 -/* 00F88 80B9C108 03E00008 */ jr $ra -/* 00F8C 80B9C10C 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C110.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C110.s deleted file mode 100644 index 0e20339d73..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C110.s +++ /dev/null @@ -1,16 +0,0 @@ -glabel func_80B9C110 -/* 00F90 80B9C110 AFA50004 */ sw $a1, 0x0004($sp) -/* 00F94 80B9C114 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 00F98 80B9C118 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 00F9C 80B9C11C 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 -/* 00FA0 80B9C120 44812000 */ mtc1 $at, $f4 ## $f4 = -1.00 -/* 00FA4 80B9C124 3C1880BA */ lui $t8, %hi(func_80B9C14C) ## $t8 = 80BA0000 -/* 00FA8 80B9C128 2718C14C */ addiu $t8, $t8, %lo(func_80B9C14C) ## $t8 = 80B9C14C -/* 00FAC 80B9C12C 35CF0008 */ ori $t7, $t6, 0x0008 ## $t7 = 00000008 -/* 00FB0 80B9C130 A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 00FB4 80B9C134 AC980164 */ sw $t8, 0x0164($a0) ## 00000164 -/* 00FB8 80B9C138 E4800064 */ swc1 $f0, 0x0064($a0) ## 00000064 -/* 00FBC 80B9C13C E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060 -/* 00FC0 80B9C140 E480005C */ swc1 $f0, 0x005C($a0) ## 0000005C -/* 00FC4 80B9C144 03E00008 */ jr $ra -/* 00FC8 80B9C148 E484006C */ swc1 $f4, 0x006C($a0) ## 0000006C diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C14C.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C14C.s deleted file mode 100644 index c1dbf67d56..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C14C.s +++ /dev/null @@ -1,144 +0,0 @@ -.late_rodata -glabel D_80B9CD14 - .float 0.001 - -.text -glabel func_80B9C14C -/* 00FCC 80B9C14C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 00FD0 80B9C150 AFBF001C */ sw $ra, 0x001C($sp) -/* 00FD4 80B9C154 AFB10018 */ sw $s1, 0x0018($sp) -/* 00FD8 80B9C158 AFB00014 */ sw $s0, 0x0014($sp) -/* 00FDC 80B9C15C 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44 -/* 00FE0 80B9C160 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 00FE4 80B9C164 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 00FE8 80B9C168 AFAE0028 */ sw $t6, 0x0028($sp) -/* 00FEC 80B9C16C 948F0168 */ lhu $t7, 0x0168($a0) ## 00000168 -/* 00FF0 80B9C170 35F80004 */ ori $t8, $t7, 0x0004 ## $t8 = 00000004 -/* 00FF4 80B9C174 0C00B638 */ jal Actor_MoveForward - -/* 00FF8 80B9C178 A4980168 */ sh $t8, 0x0168($a0) ## 00000168 -/* 00FFC 80B9C17C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01000 80B9C180 0C2E6EF2 */ jal func_80B9BBC8 -/* 01004 80B9C184 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01008 80B9C188 5040004B */ beql $v0, $zero, .L80B9C2B8 -/* 0100C 80B9C18C 860F01BC */ lh $t7, 0x01BC($s0) ## 000001BC -/* 01010 80B9C190 861901BC */ lh $t9, 0x01BC($s0) ## 000001BC -/* 01014 80B9C194 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 01018 80B9C198 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0101C 80B9C19C 00194080 */ sll $t0, $t9, 2 -/* 01020 80B9C1A0 02084821 */ addu $t1, $s0, $t0 -/* 01024 80B9C1A4 8D250180 */ lw $a1, 0x0180($t1) ## 00000180 -/* 01028 80B9C1A8 14A10005 */ bne $a1, $at, .L80B9C1C0 -/* 0102C 80B9C1AC 00000000 */ nop -/* 01030 80B9C1B0 0C2E6FFE */ jal func_80B9BFF8 -/* 01034 80B9C1B4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01038 80B9C1B8 1000005D */ beq $zero, $zero, .L80B9C330 -/* 0103C 80B9C1BC 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9C1C0: -/* 01040 80B9C1C0 0C00FAE1 */ jal DynaPolyInfo_GetActor - ## DynaPolyInfo_getActor -/* 01044 80B9C1C4 262407C0 */ addiu $a0, $s1, 0x07C0 ## $a0 = 000007C0 -/* 01048 80B9C1C8 10400035 */ beq $v0, $zero, .L80B9C2A0 -/* 0104C 80B9C1CC 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 -/* 01050 80B9C1D0 0C010D2A */ jal func_800434A8 -/* 01054 80B9C1D4 AFA20024 */ sw $v0, 0x0024($sp) -/* 01058 80B9C1D8 0C010D4E */ jal func_80043538 -/* 0105C 80B9C1DC 8FA40024 */ lw $a0, 0x0024($sp) -/* 01060 80B9C1E0 860A016A */ lh $t2, 0x016A($s0) ## 0000016A -/* 01064 80B9C1E4 8FA20028 */ lw $v0, 0x0028($sp) -/* 01068 80B9C1E8 5D400027 */ bgtzl $t2, .L80B9C288 -/* 0106C 80B9C1EC 8C4D0680 */ lw $t5, 0x0680($v0) ## 00000680 -/* 01070 80B9C1F0 C6000150 */ lwc1 $f0, 0x0150($s0) ## 00000150 -/* 01074 80B9C1F4 3C0180BA */ lui $at, %hi(D_80B9CD14) ## $at = 80BA0000 -/* 01078 80B9C1F8 C424CD14 */ lwc1 $f4, %lo(D_80B9CD14)($at) -/* 0107C 80B9C1FC 46000005 */ abs.s $f0, $f0 -/* 01080 80B9C200 4600203C */ c.lt.s $f4, $f0 -/* 01084 80B9C204 00000000 */ nop -/* 01088 80B9C208 4502001F */ bc1fl .L80B9C288 -/* 0108C 80B9C20C 8C4D0680 */ lw $t5, 0x0680($v0) ## 00000680 -/* 01090 80B9C210 0C2E6C95 */ jal func_80B9B254 -/* 01094 80B9C214 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01098 80B9C218 10400012 */ beq $v0, $zero, .L80B9C264 -/* 0109C 80B9C21C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 010A0 80B9C220 8FA50024 */ lw $a1, 0x0024($sp) -/* 010A4 80B9C224 0C2E6D2F */ jal func_80B9B4BC -/* 010A8 80B9C228 02203025 */ or $a2, $s1, $zero ## $a2 = 00000000 -/* 010AC 80B9C22C 1040000D */ beq $v0, $zero, .L80B9C264 -/* 010B0 80B9C230 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 010B4 80B9C234 86050158 */ lh $a1, 0x0158($s0) ## 00000158 -/* 010B8 80B9C238 8E060150 */ lw $a2, 0x0150($s0) ## 00000150 -/* 010BC 80B9C23C 0C2E6F2E */ jal func_80B9BCB8 -/* 010C0 80B9C240 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 010C4 80B9C244 14400007 */ bne $v0, $zero, .L80B9C264 -/* 010C8 80B9C248 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 010CC 80B9C24C C6060150 */ lwc1 $f6, 0x0150($s0) ## 00000150 -/* 010D0 80B9C250 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 010D4 80B9C254 0C2E70D0 */ jal func_80B9C340 -/* 010D8 80B9C258 E606017C */ swc1 $f6, 0x017C($s0) ## 0000017C -/* 010DC 80B9C25C 10000034 */ beq $zero, $zero, .L80B9C330 -/* 010E0 80B9C260 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9C264: -/* 010E4 80B9C264 8FA20028 */ lw $v0, 0x0028($sp) -/* 010E8 80B9C268 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 010EC 80B9C26C 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00 -/* 010F0 80B9C270 8C4B0680 */ lw $t3, 0x0680($v0) ## 00000680 -/* 010F4 80B9C274 01616024 */ and $t4, $t3, $at -/* 010F8 80B9C278 AC4C0680 */ sw $t4, 0x0680($v0) ## 00000680 -/* 010FC 80B9C27C 1000002B */ beq $zero, $zero, .L80B9C32C -/* 01100 80B9C280 E6080150 */ swc1 $f8, 0x0150($s0) ## 00000150 -/* 01104 80B9C284 8C4D0680 */ lw $t5, 0x0680($v0) ## 00000680 -.L80B9C288: -/* 01108 80B9C288 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 0110C 80B9C28C 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00 -/* 01110 80B9C290 01A17024 */ and $t6, $t5, $at -/* 01114 80B9C294 AC4E0680 */ sw $t6, 0x0680($v0) ## 00000680 -/* 01118 80B9C298 10000024 */ beq $zero, $zero, .L80B9C32C -/* 0111C 80B9C29C E60A0150 */ swc1 $f10, 0x0150($s0) ## 00000150 -.L80B9C2A0: -/* 01120 80B9C2A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01124 80B9C2A4 0C2E6FFE */ jal func_80B9BFF8 -/* 01128 80B9C2A8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 0112C 80B9C2AC 10000020 */ beq $zero, $zero, .L80B9C330 -/* 01130 80B9C2B0 8FBF001C */ lw $ra, 0x001C($sp) -/* 01134 80B9C2B4 860F01BC */ lh $t7, 0x01BC($s0) ## 000001BC -.L80B9C2B8: -/* 01138 80B9C2B8 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 0113C 80B9C2BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01140 80B9C2C0 000FC080 */ sll $t8, $t7, 2 -/* 01144 80B9C2C4 0218C821 */ addu $t9, $s0, $t8 -/* 01148 80B9C2C8 8F250180 */ lw $a1, 0x0180($t9) ## 00000180 -/* 0114C 80B9C2CC 14A10005 */ bne $a1, $at, .L80B9C2E4 -/* 01150 80B9C2D0 00000000 */ nop -/* 01154 80B9C2D4 0C2E7161 */ jal func_80B9C584 -/* 01158 80B9C2D8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 0115C 80B9C2DC 10000014 */ beq $zero, $zero, .L80B9C330 -/* 01160 80B9C2E0 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9C2E4: -/* 01164 80B9C2E4 0C00FAE1 */ jal DynaPolyInfo_GetActor - ## DynaPolyInfo_getActor -/* 01168 80B9C2E8 262407C0 */ addiu $a0, $s1, 0x07C0 ## $a0 = 000007C0 -/* 0116C 80B9C2EC 1040000C */ beq $v0, $zero, .L80B9C320 -/* 01170 80B9C2F0 00402025 */ or $a0, $v0, $zero ## $a0 = 00000000 -/* 01174 80B9C2F4 8C48015C */ lw $t0, 0x015C($v0) ## 0000015C -/* 01178 80B9C2F8 31090001 */ andi $t1, $t0, 0x0001 ## $t1 = 00000000 -/* 0117C 80B9C2FC 51200009 */ beql $t1, $zero, .L80B9C324 -/* 01180 80B9C300 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01184 80B9C304 0C010D2A */ jal func_800434A8 -/* 01188 80B9C308 AFA20024 */ sw $v0, 0x0024($sp) -/* 0118C 80B9C30C 0C010D4E */ jal func_80043538 -/* 01190 80B9C310 8FA40024 */ lw $a0, 0x0024($sp) -/* 01194 80B9C314 C6100080 */ lwc1 $f16, 0x0080($s0) ## 00000080 -/* 01198 80B9C318 10000004 */ beq $zero, $zero, .L80B9C32C -/* 0119C 80B9C31C E6100028 */ swc1 $f16, 0x0028($s0) ## 00000028 -.L80B9C320: -/* 011A0 80B9C320 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C324: -/* 011A4 80B9C324 0C2E7161 */ jal func_80B9C584 -/* 011A8 80B9C328 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -.L80B9C32C: -/* 011AC 80B9C32C 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9C330: -/* 011B0 80B9C330 8FB00014 */ lw $s0, 0x0014($sp) -/* 011B4 80B9C334 8FB10018 */ lw $s1, 0x0018($sp) -/* 011B8 80B9C338 03E00008 */ jr $ra -/* 011BC 80B9C33C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C340.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C340.s deleted file mode 100644 index 16fab40936..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C340.s +++ /dev/null @@ -1,11 +0,0 @@ -glabel func_80B9C340 -/* 011C0 80B9C340 AFA50004 */ sw $a1, 0x0004($sp) -/* 011C4 80B9C344 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 011C8 80B9C348 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00 -/* 011CC 80B9C34C 3C1880BA */ lui $t8, %hi(func_80B9C368) ## $t8 = 80BA0000 -/* 011D0 80B9C350 2718C368 */ addiu $t8, $t8, %lo(func_80B9C368) ## $t8 = 80B9C368 -/* 011D4 80B9C354 35CF0020 */ ori $t7, $t6, 0x0020 ## $t7 = 00000020 -/* 011D8 80B9C358 A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 011DC 80B9C35C AC980164 */ sw $t8, 0x0164($a0) ## 00000164 -/* 011E0 80B9C360 03E00008 */ jr $ra -/* 011E4 80B9C364 E484006C */ swc1 $f4, 0x006C($a0) ## 0000006C diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C368.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C368.s deleted file mode 100644 index 21f0ae7393..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C368.s +++ /dev/null @@ -1,147 +0,0 @@ -glabel func_80B9C368 -/* 011E8 80B9C368 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0 -/* 011EC 80B9C36C 3C014000 */ lui $at, 0x4000 ## $at = 40000000 -/* 011F0 80B9C370 44811000 */ mtc1 $at, $f2 ## $f2 = 2.00 -/* 011F4 80B9C374 AFBF001C */ sw $ra, 0x001C($sp) -/* 011F8 80B9C378 AFB10018 */ sw $s1, 0x0018($sp) -/* 011FC 80B9C37C AFB00014 */ sw $s0, 0x0014($sp) -/* 01200 80B9C380 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000 -/* 01204 80B9C384 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50 -/* 01208 80B9C388 C4840174 */ lwc1 $f4, 0x0174($a0) ## 00000174 -/* 0120C 80B9C38C 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44 -/* 01210 80B9C390 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 01214 80B9C394 46062200 */ add.s $f8, $f4, $f6 -/* 01218 80B9C398 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 0121C 80B9C39C 35CF0010 */ ori $t7, $t6, 0x0010 ## $t7 = 00000010 -/* 01220 80B9C3A0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 01224 80B9C3A4 E4880174 */ swc1 $f8, 0x0174($a0) ## 00000174 -/* 01228 80B9C3A8 C4800174 */ lwc1 $f0, 0x0174($a0) ## 00000174 -/* 0122C 80B9C3AC A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 01230 80B9C3B0 3C0541A0 */ lui $a1, 0x41A0 ## $a1 = 41A00000 -/* 01234 80B9C3B4 4600103C */ c.lt.s $f2, $f0 -/* 01238 80B9C3B8 00000000 */ nop -/* 0123C 80B9C3BC 45020004 */ bc1fl .L80B9C3D0 -/* 01240 80B9C3C0 E6000174 */ swc1 $f0, 0x0174($s0) ## 00000174 -/* 01244 80B9C3C4 10000002 */ beq $zero, $zero, .L80B9C3D0 -/* 01248 80B9C3C8 E4820174 */ swc1 $f2, 0x0174($a0) ## 00000174 -/* 0124C 80B9C3CC E6000174 */ swc1 $f0, 0x0174($s0) ## 00000174 -.L80B9C3D0: -/* 01250 80B9C3D0 8E060174 */ lw $a2, 0x0174($s0) ## 00000174 -/* 01254 80B9C3D4 AFA30028 */ sw $v1, 0x0028($sp) -/* 01258 80B9C3D8 0C01DE80 */ jal Math_ApproxF - -/* 0125C 80B9C3DC 26040178 */ addiu $a0, $s0, 0x0178 ## $a0 = 00000178 -/* 01260 80B9C3E0 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 01264 80B9C3E4 C60A017C */ lwc1 $f10, 0x017C($s0) ## 0000017C -/* 01268 80B9C3E8 8FA30028 */ lw $v1, 0x0028($sp) -/* 0126C 80B9C3EC 00403025 */ or $a2, $v0, $zero ## $a2 = 00000000 -/* 01270 80B9C3F0 460A603E */ c.le.s $f12, $f10 -/* 01274 80B9C3F4 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 -/* 01278 80B9C3F8 45020006 */ bc1fl .L80B9C414 -/* 0127C 80B9C3FC 44811000 */ mtc1 $at, $f2 ## $f2 = -1.00 -/* 01280 80B9C400 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000 -/* 01284 80B9C404 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00 -/* 01288 80B9C408 10000004 */ beq $zero, $zero, .L80B9C41C -/* 0128C 80B9C40C C6100178 */ lwc1 $f16, 0x0178($s0) ## 00000178 -/* 01290 80B9C410 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00 -.L80B9C414: -/* 01294 80B9C414 00000000 */ nop -/* 01298 80B9C418 C6100178 */ lwc1 $f16, 0x0178($s0) ## 00000178 -.L80B9C41C: -/* 0129C 80B9C41C C604016C */ lwc1 $f4, 0x016C($s0) ## 0000016C -/* 012A0 80B9C420 C6120008 */ lwc1 $f18, 0x0008($s0) ## 00000008 -/* 012A4 80B9C424 46101002 */ mul.s $f0, $f2, $f16 -/* 012A8 80B9C428 C6100170 */ lwc1 $f16, 0x0170($s0) ## 00000170 -/* 012AC 80B9C42C C60A0010 */ lwc1 $f10, 0x0010($s0) ## 00000010 -/* 012B0 80B9C430 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 012B4 80B9C434 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 012B8 80B9C438 46040182 */ mul.s $f6, $f0, $f4 -/* 012BC 80B9C43C 00000000 */ nop -/* 012C0 80B9C440 46100102 */ mul.s $f4, $f0, $f16 -/* 012C4 80B9C444 46069200 */ add.s $f8, $f18, $f6 -/* 012C8 80B9C448 46045480 */ add.s $f18, $f10, $f4 -/* 012CC 80B9C44C E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024 -/* 012D0 80B9C450 E612002C */ swc1 $f18, 0x002C($s0) ## 0000002C -/* 012D4 80B9C454 AFA60020 */ sw $a2, 0x0020($sp) -/* 012D8 80B9C458 0C2E6EF2 */ jal func_80B9BBC8 -/* 012DC 80B9C45C AFA30028 */ sw $v1, 0x0028($sp) -/* 012E0 80B9C460 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 012E4 80B9C464 8FA30028 */ lw $v1, 0x0028($sp) -/* 012E8 80B9C468 14400011 */ bne $v0, $zero, .L80B9C4B0 -/* 012EC 80B9C46C 8FA60020 */ lw $a2, 0x0020($sp) -/* 012F0 80B9C470 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024 -/* 012F4 80B9C474 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C -/* 012F8 80B9C478 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 012FC 80B9C47C E6060008 */ swc1 $f6, 0x0008($s0) ## 00000008 -/* 01300 80B9C480 E6080010 */ swc1 $f8, 0x0010($s0) ## 00000010 -/* 01304 80B9C484 8C780680 */ lw $t8, 0x0680($v1) ## 00000680 -/* 01308 80B9C488 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 0130C 80B9C48C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01310 80B9C490 0301C824 */ and $t9, $t8, $at -/* 01314 80B9C494 AC790680 */ sw $t9, 0x0680($v1) ## 00000680 -/* 01318 80B9C498 E60C0150 */ swc1 $f12, 0x0150($s0) ## 00000150 -/* 0131C 80B9C49C E60C0178 */ swc1 $f12, 0x0178($s0) ## 00000178 -/* 01320 80B9C4A0 0C2E7161 */ jal func_80B9C584 -/* 01324 80B9C4A4 E60C0174 */ swc1 $f12, 0x0174($s0) ## 00000174 -/* 01328 80B9C4A8 1000002F */ beq $zero, $zero, .L80B9C568 -/* 0132C 80B9C4AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C4B0: -/* 01330 80B9C4B0 10C0002C */ beq $a2, $zero, .L80B9C564 -/* 01334 80B9C4B4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000 -/* 01338 80B9C4B8 8E231C44 */ lw $v1, 0x1C44($s1) ## 00001C44 -/* 0133C 80B9C4BC 86050158 */ lh $a1, 0x0158($s0) ## 00000158 -/* 01340 80B9C4C0 8E060150 */ lw $a2, 0x0150($s0) ## 00000150 -/* 01344 80B9C4C4 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 01348 80B9C4C8 0C2E6F2E */ jal func_80B9BCB8 -/* 0134C 80B9C4CC AFA30028 */ sw $v1, 0x0028($sp) -/* 01350 80B9C4D0 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 01354 80B9C4D4 10400007 */ beq $v0, $zero, .L80B9C4F4 -/* 01358 80B9C4D8 8FA30028 */ lw $v1, 0x0028($sp) -/* 0135C 80B9C4DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01360 80B9C4E0 24052835 */ addiu $a1, $zero, 0x2835 ## $a1 = 00002835 -/* 01364 80B9C4E4 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 01368 80B9C4E8 AFA30028 */ sw $v1, 0x0028($sp) -/* 0136C 80B9C4EC 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00 -/* 01370 80B9C4F0 8FA30028 */ lw $v1, 0x0028($sp) -.L80B9C4F4: -/* 01374 80B9C4F4 C6100024 */ lwc1 $f16, 0x0024($s0) ## 00000024 -/* 01378 80B9C4F8 C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C -/* 0137C 80B9C4FC 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 01380 80B9C500 E6100008 */ swc1 $f16, 0x0008($s0) ## 00000008 -/* 01384 80B9C504 E60A0010 */ swc1 $f10, 0x0010($s0) ## 00000010 -/* 01388 80B9C508 8C680680 */ lw $t0, 0x0680($v1) ## 00000680 -/* 0138C 80B9C50C 240A000A */ addiu $t2, $zero, 0x000A ## $t2 = 0000000A -/* 01390 80B9C510 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01394 80B9C514 01014824 */ and $t1, $t0, $at -/* 01398 80B9C518 AC690680 */ sw $t1, 0x0680($v1) ## 00000680 -/* 0139C 80B9C51C 860B01BC */ lh $t3, 0x01BC($s0) ## 000001BC -/* 013A0 80B9C520 E60C0150 */ swc1 $f12, 0x0150($s0) ## 00000150 -/* 013A4 80B9C524 E60C0178 */ swc1 $f12, 0x0178($s0) ## 00000178 -/* 013A8 80B9C528 000B6080 */ sll $t4, $t3, 2 -/* 013AC 80B9C52C E60C0174 */ swc1 $f12, 0x0174($s0) ## 00000174 -/* 013B0 80B9C530 A60A016A */ sh $t2, 0x016A($s0) ## 0000016A -/* 013B4 80B9C534 020C6821 */ addu $t5, $s0, $t4 -/* 013B8 80B9C538 8DAE0180 */ lw $t6, 0x0180($t5) ## 00000180 -/* 013BC 80B9C53C 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 013C0 80B9C540 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 013C4 80B9C544 15C10005 */ bne $t6, $at, .L80B9C55C -/* 013C8 80B9C548 00000000 */ nop -/* 013CC 80B9C54C 0C2E6FFE */ jal func_80B9BFF8 -/* 013D0 80B9C550 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 013D4 80B9C554 10000004 */ beq $zero, $zero, .L80B9C568 -/* 013D8 80B9C558 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C55C: -/* 013DC 80B9C55C 0C2E7044 */ jal func_80B9C110 -/* 013E0 80B9C560 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -.L80B9C564: -/* 013E4 80B9C564 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C568: -/* 013E8 80B9C568 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 013EC 80B9C56C 2405200A */ addiu $a1, $zero, 0x200A ## $a1 = 0000200A -/* 013F0 80B9C570 8FBF001C */ lw $ra, 0x001C($sp) -/* 013F4 80B9C574 8FB00014 */ lw $s0, 0x0014($sp) -/* 013F8 80B9C578 8FB10018 */ lw $s1, 0x0018($sp) -/* 013FC 80B9C57C 03E00008 */ jr $ra -/* 01400 80B9C580 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C584.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C584.s deleted file mode 100644 index 8d58f67eb0..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C584.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_80B9C584 -/* 01404 80B9C584 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8 -/* 01408 80B9C588 AFBF0014 */ sw $ra, 0x0014($sp) -/* 0140C 80B9C58C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00 -/* 01410 80B9C590 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 01414 80B9C594 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000 -/* 01418 80B9C598 44812000 */ mtc1 $at, $f4 ## $f4 = -1.00 -/* 0141C 80B9C59C 35CF0080 */ ori $t7, $t6, 0x0080 ## $t7 = 00000080 -/* 01420 80B9C5A0 A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 01424 80B9C5A4 E4800064 */ swc1 $f0, 0x0064($a0) ## 00000064 -/* 01428 80B9C5A8 E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060 -/* 0142C 80B9C5AC E480005C */ swc1 $f0, 0x005C($a0) ## 0000005C -/* 01430 80B9C5B0 E484006C */ swc1 $f4, 0x006C($a0) ## 0000006C -/* 01434 80B9C5B4 0C2E6EDC */ jal func_80B9BB70 -/* 01438 80B9C5B8 AFA40018 */ sw $a0, 0x0018($sp) -/* 0143C 80B9C5BC 8FA40018 */ lw $a0, 0x0018($sp) -/* 01440 80B9C5C0 3C1880BA */ lui $t8, %hi(func_80B9C5DC) ## $t8 = 80BA0000 -/* 01444 80B9C5C4 2718C5DC */ addiu $t8, $t8, %lo(func_80B9C5DC) ## $t8 = 80B9C5DC -/* 01448 80B9C5C8 AC980164 */ sw $t8, 0x0164($a0) ## 00000164 -/* 0144C 80B9C5CC 8FBF0014 */ lw $ra, 0x0014($sp) -/* 01450 80B9C5D0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000 -/* 01454 80B9C5D4 03E00008 */ jr $ra -/* 01458 80B9C5D8 00000000 */ nop diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C5DC.s b/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C5DC.s deleted file mode 100644 index 0dba58a60d..0000000000 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C5DC.s +++ /dev/null @@ -1,77 +0,0 @@ -.late_rodata -glabel D_80B9CD18 - .float 0.001 - -.text -glabel func_80B9C5DC -/* 0145C 80B9C5DC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0 -/* 01460 80B9C5E0 AFBF001C */ sw $ra, 0x001C($sp) -/* 01464 80B9C5E4 AFB10018 */ sw $s1, 0x0018($sp) -/* 01468 80B9C5E8 AFB00014 */ sw $s0, 0x0014($sp) -/* 0146C 80B9C5EC 948E0168 */ lhu $t6, 0x0168($a0) ## 00000168 -/* 01470 80B9C5F0 C4800150 */ lwc1 $f0, 0x0150($a0) ## 00000150 -/* 01474 80B9C5F4 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44 -/* 01478 80B9C5F8 35CF0040 */ ori $t7, $t6, 0x0040 ## $t7 = 00000040 -/* 0147C 80B9C5FC A48F0168 */ sh $t7, 0x0168($a0) ## 00000168 -/* 01480 80B9C600 3C0180BA */ lui $at, %hi(D_80B9CD18) ## $at = 80BA0000 -/* 01484 80B9C604 C424CD18 */ lwc1 $f4, %lo(D_80B9CD18)($at) -/* 01488 80B9C608 46000005 */ abs.s $f0, $f0 -/* 0148C 80B9C60C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000 -/* 01490 80B9C610 4600203C */ c.lt.s $f4, $f0 -/* 01494 80B9C614 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000 -/* 01498 80B9C618 45000007 */ bc1f .L80B9C638 -/* 0149C 80B9C61C 00000000 */ nop -/* 014A0 80B9C620 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00 -/* 014A4 80B9C624 2401FFEF */ addiu $at, $zero, 0xFFEF ## $at = FFFFFFEF -/* 014A8 80B9C628 E4860150 */ swc1 $f6, 0x0150($a0) ## 00000150 -/* 014AC 80B9C62C 8C580680 */ lw $t8, 0x0680($v0) ## 00000680 -/* 014B0 80B9C630 0301C824 */ and $t9, $t8, $at -/* 014B4 80B9C634 AC590680 */ sw $t9, 0x0680($v0) ## 00000680 -.L80B9C638: -/* 014B8 80B9C638 0C00B638 */ jal Actor_MoveForward - -/* 014BC 80B9C63C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 014C0 80B9C640 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 014C4 80B9C644 0C2E6F08 */ jal func_80B9BC20 -/* 014C8 80B9C648 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 014CC 80B9C64C 5040001F */ beql $v0, $zero, .L80B9C6CC -/* 014D0 80B9C650 8FBF001C */ lw $ra, 0x001C($sp) -/* 014D4 80B9C654 860801BC */ lh $t0, 0x01BC($s0) ## 000001BC -/* 014D8 80B9C658 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032 -/* 014DC 80B9C65C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 014E0 80B9C660 00084880 */ sll $t1, $t0, 2 -/* 014E4 80B9C664 02095021 */ addu $t2, $s0, $t1 -/* 014E8 80B9C668 8D4B0180 */ lw $t3, 0x0180($t2) ## 00000180 -/* 014EC 80B9C66C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 014F0 80B9C670 15610005 */ bne $t3, $at, .L80B9C688 -/* 014F4 80B9C674 00000000 */ nop -/* 014F8 80B9C678 0C2E6FFE */ jal func_80B9BFF8 -/* 014FC 80B9C67C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01500 80B9C680 10000004 */ beq $zero, $zero, .L80B9C694 -/* 01504 80B9C684 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C688: -/* 01508 80B9C688 0C2E7044 */ jal func_80B9C110 -/* 0150C 80B9C68C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000 -/* 01510 80B9C690 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -.L80B9C694: -/* 01514 80B9C694 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 01518 80B9C698 24052835 */ addiu $a1, $zero, 0x2835 ## $a1 = 00002835 -/* 0151C 80B9C69C 860C01BC */ lh $t4, 0x01BC($s0) ## 000001BC -/* 01520 80B9C6A0 262407C0 */ addiu $a0, $s1, 0x07C0 ## $a0 = 000007C0 -/* 01524 80B9C6A4 000C6880 */ sll $t5, $t4, 2 -/* 01528 80B9C6A8 020D1021 */ addu $v0, $s0, $t5 -/* 0152C 80B9C6AC 8C450194 */ lw $a1, 0x0194($v0) ## 00000194 -/* 01530 80B9C6B0 0C0107CD */ jal func_80041F34 -/* 01534 80B9C6B4 8C460180 */ lw $a2, 0x0180($v0) ## 00000180 -/* 01538 80B9C6B8 24450800 */ addiu $a1, $v0, 0x0800 ## $a1 = 00000800 -/* 0153C 80B9C6BC 30A5FFFF */ andi $a1, $a1, 0xFFFF ## $a1 = 00000800 -/* 01540 80B9C6C0 0C00BE0A */ jal Audio_PlayActorSound2 - -/* 01544 80B9C6C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000 -/* 01548 80B9C6C8 8FBF001C */ lw $ra, 0x001C($sp) -.L80B9C6CC: -/* 0154C 80B9C6CC 8FB00014 */ lw $s0, 0x0014($sp) -/* 01550 80B9C6D0 8FB10018 */ lw $s1, 0x0018($sp) -/* 01554 80B9C6D4 03E00008 */ jr $ra -/* 01558 80B9C6D8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000 diff --git a/data/overlays/actors/z_obj_oshihiki.data.s b/data/overlays/actors/z_obj_oshihiki.data.s deleted file mode 100644 index f58d816d9d..0000000000 --- a/data/overlays/actors/z_obj_oshihiki.data.s +++ /dev/null @@ -1,32 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .data - -.balign 16 - -glabel Obj_Oshihiki_InitVars - .word 0x00FF0600, 0x00000010, 0x00030000, 0x000001D4 -.word ObjOshihiki_Init -.word ObjOshihiki_Destroy -.word ObjOshihiki_Update -.word ObjOshihiki_Draw -glabel D_80B9C9C0 - .word 0x3DCCCCCD, 0x3E2AAAAB, 0x3E4CCCCD, 0x3EAAAAAB, 0x3DCCCCCD, 0x3E2AAAAB, 0x3E4CCCCD, 0x3EAAAAAB -glabel D_80B9C9E0 - .word 0x6E56286E, 0x56286E56, 0x286E5628, 0x6A786E68, 0x50140000, 0x00000000, 0x8E635648, 0x76600000, 0x00000000, 0xD29650D2, 0xAA500000, 0x00000000, 0x6690B6B0, 0xA76464A7, 0x64756160, 0xE8D2B0E8, 0xD2B0E8D2, 0xB0E8D2B0, 0x877D5F87, 0x7D5F877D, 0x5F877D5F, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xE8D2B0E8, 0xD2B0E8D2, 0xB0E8D2B0 -glabel D_80B9CA4C - .word 0x00000001, 0x00030004, 0x00050006, 0x0007000A, 0x000B0000 -glabel D_80B9CA60 - .word 0xB0F40708, 0xB0F801F4, 0x30FC05DC -glabel D_80B9CA6C - .word 0x41EFEB85, 0x3F8147AE, 0xC1EFEB85, 0xC1EFEB85, 0x3F8147AE, 0xC1EFEB85, 0xC1EFEB85, 0x3F8147AE, 0x41EFEB85, 0x41EFEB85, 0x3F8147AE, 0x41EFEB85, 0x00000000, 0x3F8147AE, 0x00000000 -glabel D_80B9CAA8 - .word 0xC1F00000, 0x00000000, 0x41F00000, 0x00000000, 0xC1F00000, 0x42700000, 0x41F00000, 0x42700000 -glabel D_80B9CAC8 - .word 0x3F800000, 0x3F800000, 0xBF800000, 0x3F800000, 0x3F800000, 0xBF800000, 0xBF800000, 0xBF800000, 0x00000000, 0x00000000 - diff --git a/data/overlays/actors/z_obj_oshihiki.reloc.s b/data/overlays/actors/z_obj_oshihiki.reloc.s deleted file mode 100644 index 18565daf4a..0000000000 --- a/data/overlays/actors/z_obj_oshihiki.reloc.s +++ /dev/null @@ -1,13 +0,0 @@ -.include "macro.inc" - - # assembler directives - .set noat # allow manual use of $at - .set noreorder # don't insert nops after branches - .set gp=64 # allow use of 64-bit general purpose registers - -.section .rodata - -.balign 16 - -glabel D_80B9CD50 - .incbin "baserom/ovl_Obj_Oshihiki", 0x1BD0, 0x00000280 diff --git a/include/functions.h b/include/functions.h index 6d5a010153..93a4d264be 100644 --- a/include/functions.h +++ b/include/functions.h @@ -597,7 +597,7 @@ s32 func_8003D7A0(CollisionContext*, f32*, Vec3f*, f32, UNK_PTR, u32*, Actor*); // ? func_8003DD6C(?); s32 func_8003DE84(CollisionContext*, Vec3f*, Vec3f*, Vec3f*, CollisionPoly**, u32, u32, u32, u32, u32*); s32 func_8003DF10(CollisionContext*, Vec3f*, Vec3f*, Vec3f*, CollisionPoly**, u32, u32, u32, u32, u32*, Actor*); -// ? func_8003DFA0(?); +s32 func_8003DFA0(CollisionContext*, Vec3f*, Vec3f*, Vec3f*, CollisionPoly**, u32, u32, u32, u32, u32*, Actor*, f32); // ? func_8003E0FC(?); // ? func_8003E188(?); // ? func_8003E214(?); @@ -659,7 +659,7 @@ UNK_TYPE func_80041D4C(CollisionContext*, CollisionPoly*, CollisionPoly*); // ? func_80041DB8(?); // ? func_80041EC8(?); // ? func_80041F10(?); -u16 func_80041F34(CollisionContext*, CollisionPoly*, u8); +u16 func_80041F34(CollisionContext*, CollisionPoly*, u32); s32 func_80041FA0(CollisionContext*, CollisionPoly*, u32); // ? func_80042048(?); // ? func_80042108(?); diff --git a/spec b/spec index b5292b0c79..3f794de03f 100644 --- a/spec +++ b/spec @@ -3540,8 +3540,7 @@ endseg beginseg name "ovl_Obj_Oshihiki" include "build/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.o" - include "build/data/overlays/actors/z_obj_oshihiki.data.o" - include "build/data/overlays/actors/z_obj_oshihiki.reloc.o" + include "build/src/overlays/actors/ovl_Obj_Oshihiki/ovl_Obj_Oshihiki_reloc.o" endseg beginseg diff --git a/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c b/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c index 23326aaddb..509b652ccc 100644 --- a/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c +++ b/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c @@ -38,7 +38,7 @@ const ActorInit En_Zl1_InitVars = { (ActorFunc)EnZl1_Draw, }; -ColliderCylinderInit sCylinderInit = { +static ColliderCylinderInit sCylinderInit = { { COLTYPE_UNK0, 0x00, 0x00, 0x39, 0x20, COLSHAPE_CYLINDER }, { 0x01, { 0x00000000, 0x00, 0x00 }, { 0x00000000, 0x00, 0x00 }, 0x00, 0x00, 0x01 }, { 20, 46, 0, { 0, 0, 0 } }, diff --git a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c index 9ac31ed073..3ebbb5d9e8 100644 --- a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c +++ b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c @@ -5,6 +5,7 @@ */ #include "z_obj_blockstop.h" +#include "overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h" #define FLAGS 0x00000000 @@ -50,8 +51,9 @@ void ObjBlockstop_Update(Actor* thisx, GlobalContext* globalCtx) { &this->actor.floorPoly, 0, 0, 1, 1, &sp48, &this->actor)) { dynaActor = DynaPolyInfo_GetActor(&globalCtx->colCtx, sp48); - if ((dynaActor != NULL) && (dynaActor->actor.id == 0xFF)) { - if (((dynaActor->actor.params & 0x000F) == 3) || ((dynaActor->actor.params & 0x000F) == 7)) { + if ((dynaActor != NULL) && (dynaActor->actor.id == ACTOR_OBJ_OSHIHIKI)) { + if (((dynaActor->actor.params & 0xF) == PUSHBLOCK_HUGE_START_ON) || + ((dynaActor->actor.params & 0xF) == PUSHBLOCK_HUGE_START_OFF)) { func_80078884(NA_SE_SY_CORRECT_CHIME); } else { func_80078884(NA_SE_SY_TRE_BOX_APPEAR); diff --git a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c index 4ac979e121..3cb89a9d49 100644 --- a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c +++ b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c @@ -6,6 +6,7 @@ #include "z_obj_lightswitch.h" #include "vt.h" +#include "overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h" #define FLAGS 0x00000010 @@ -176,10 +177,11 @@ void ObjLightswitch_Init(Actor* thisx, GlobalContext* globalCtx) { this->actor.posRot.rot.x = this->actor.initPosRot.rot.x = this->actor.shape.rot.x; this->actor.posRot.rot.z = this->actor.initPosRot.rot.z = this->actor.shape.rot.z; this->actor.flags |= 0x20; - if (!Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_OBJ_OSHIHIKI, - this->actor.initPosRot.pos.x, this->actor.initPosRot.pos.y, - this->actor.initPosRot.pos.z, 0, this->actor.initPosRot.rot.y, 0, 0xFF00)) { + if (Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_OBJ_OSHIHIKI, + this->actor.initPosRot.pos.x, this->actor.initPosRot.pos.y, this->actor.initPosRot.pos.z, + 0, this->actor.initPosRot.rot.y, 0, (0xFF << 8) | PUSHBLOCK_SMALL_START_ON) == NULL) { osSyncPrintf(VT_COL(RED, WHITE)); + // Push-pull block occurrence failure osSyncPrintf("押引ブロック発生失敗(%s %d)(arg_data 0x%04x)\n", "../z_obj_lightswitch.c", 452, this->actor.params); osSyncPrintf(VT_RST); @@ -191,11 +193,15 @@ void ObjLightswitch_Init(Actor* thisx, GlobalContext* globalCtx) { if (removeSelf) { Actor_Kill(&this->actor); } + // Light switch osSyncPrintf("(光スイッチ)(arg_data 0x%04x)\n", this->actor.params); } void ObjLightswitch_Destroy(Actor* thisx, GlobalContext* globalCtx) { - Collider_DestroyJntSph(globalCtx, &THIS->collider); + GlobalContext* globalCtx2 = globalCtx; + ObjLightswitch* this = THIS; + + Collider_DestroyJntSph(globalCtx2, &this->collider); } void ObjLightswitch_SetupOff(ObjLightswitch* this) { diff --git a/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c b/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c index 796601ba1d..3d884045f7 100644 --- a/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c +++ b/src/overlays/actors/ovl_Obj_Makeoshihiki/z_obj_makeoshihiki.c @@ -1,14 +1,12 @@ /* * File: z_obj_makeoshihiki.c * Overlay: ovl_Obj_Makeoshihiki - * Description: Push Block (Hardcoded) + * Description: Push Block puzzle (Hardcoded) */ #include "z_obj_makeoshihiki.h" - -#include "overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h" - #include "vt.h" +#include "overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h" #define FLAGS 0x00000020 @@ -26,8 +24,8 @@ const ActorInit Obj_Makeoshihiki_InitVars = { typedef struct { /* 0x00 */ Vec3f posVecs[3]; /* 0x24 */ u8 unk_24[3]; - /* 0x27 */ u8 paramVal1; - /* 0x28 */ u8 paramVal2; + /* 0x27 */ u8 color; + /* 0x28 */ u8 type; /* 0x2A */ s16 rotY; } BlockConfig; // size = 0x2C @@ -37,14 +35,14 @@ static BlockConfig sBlocks[] = { 0x00, 0x03, 0xFF, - 0x02, + PUSHBLOCK_LARGE_START_ON, 0x0000 }, { { { -605.0f, -820.0f, -290.0f }, { -365.0f, -905.0f, -290.0f }, { -365.0f, -905.0f, -290.0f } }, 0x00, 0x03, 0x00, 0xFF, - 0x00, + PUSHBLOCK_SMALL_START_ON, 0x0000 } }; @@ -69,7 +67,7 @@ void ObjMakeoshihiki_Init(Actor* thisx, GlobalContext* globalCtx) { if (Actor_SpawnAsChild(&globalCtx->actorCtx, thisx, globalCtx, ACTOR_OBJ_OSHIHIKI, spawnPos->x, spawnPos->y, spawnPos->z, 0, block->rotY, 0, - ((block->paramVal1 << 6) & 0xC0) | (block->paramVal2 & 0xF) | 0xFF00) == NULL) { + ((block->color << 6) & 0xC0) | (block->type & 0xF) | 0xFF00) == NULL) { // Push-pull block failure osSyncPrintf(VT_COL(RED, WHITE)); osSyncPrintf("Error : 押し引きブロック発生失敗(%s %d)\n", "../z_obj_makeoshihiki.c", 194); @@ -78,7 +76,7 @@ void ObjMakeoshihiki_Init(Actor* thisx, GlobalContext* globalCtx) { return; } if (block->unk_24[typeIdx] & 2) { - ((ObjOshihiki*)thisx->child)->unk_1BE = 1; + ((ObjOshihiki*)thisx->child)->cantMove = true; } thisx->posRot.rot.z = thisx->shape.rot.z = 0; osSyncPrintf("(%s)(arg_data %04xF)(angleZ %d)\n", "../z_obj_makeoshihiki.c", thisx->params, @@ -127,7 +125,7 @@ void ObjMakeoshihiki_Draw(Actor* thisx, GlobalContext* globalCtx) { sFlagSwitchFuncs[sFlags[i][1]](globalCtx, (thisx->params >> 8) & 0x3F); if (block->unk_24[i] & 2) { - ((ObjOshihiki*)thisx->child)->unk_1BE = 1; + ((ObjOshihiki*)thisx->child)->cantMove = true; } break; diff --git a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c index b2e53ef817..ec982af166 100644 --- a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c +++ b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c @@ -1,10 +1,11 @@ /* * File: z_obj_oshihiki.c * Overlay: ovl_Obj_Oshihiki - * Description: Movable Block + * Description: Push Block */ #include "z_obj_oshihiki.h" +#include "overlays/actors/ovl_Obj_Switch/z_obj_switch.h" #define FLAGS 0x00000010 @@ -15,7 +16,21 @@ void ObjOshihiki_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjOshihiki_Update(Actor* thisx, GlobalContext* globalCtx); void ObjOshihiki_Draw(Actor* thisx, GlobalContext* globalCtx); -/* +void ObjOshihiki_SetupOnScene(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_OnScene(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_SetupOnActor(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_OnActor(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_SetupPush(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_Push(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_SetupFall(ObjOshihiki* this, GlobalContext* globalCtx); +void ObjOshihiki_Fall(ObjOshihiki* this, GlobalContext* globalCtx); + +extern ColHeader D_05004E98; +extern UNK_TYPE D_05003350; +extern UNK_TYPE D_05003B50; +extern UNK_TYPE D_05004350; +extern Gfx D_05004CD0[]; + const ActorInit Obj_Oshihiki_InitVars = { ACTOR_OBJ_OSHIHIKI, ACTORTYPE_PROP, @@ -27,63 +42,655 @@ const ActorInit Obj_Oshihiki_InitVars = { (ActorFunc)ObjOshihiki_Update, (ActorFunc)ObjOshihiki_Draw, }; -*/ -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B180.s") -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B208.s") +f32 sScales[] = { + (1 / 10.0f), (1 / 6.0f), (1 / 5.0f), (1 / 3.0f), (1 / 10.0f), (1 / 6.0f), (1 / 5.0f), (1 / 3.0f), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B254.s") +Color_RGB8 sColors[][4] = { + { { 110, 86, 40 }, { 110, 86, 40 }, { 110, 86, 40 }, { 110, 86, 40 } }, // deku tree + { { 106, 120, 110 }, { 104, 80, 20 }, { 0, 0, 0 }, { 0, 0, 0 } }, // dodongos cavern + { { 142, 99, 86 }, { 72, 118, 96 }, { 0, 0, 0 }, { 0, 0, 0 } }, // forest temple + { { 210, 150, 80 }, { 210, 170, 80 }, { 0, 0, 0 }, { 0, 0, 0 } }, // fire temple + { { 102, 144, 182 }, { 176, 167, 100 }, { 100, 167, 100 }, { 117, 97, 96 } }, // water temple + { { 232, 210, 176 }, { 232, 210, 176 }, { 232, 210, 176 }, { 232, 210, 176 } }, // spirit temple + { { 135, 125, 95 }, { 135, 125, 95 }, { 135, 125, 95 }, { 135, 125, 95 } }, // shadow temple + { { 255, 255, 255 }, { 255, 255, 255 }, { 255, 255, 255 }, { 255, 255, 255 } }, // ganons castle + { { 232, 210, 176 }, { 232, 210, 176 }, { 232, 210, 176 }, { 232, 210, 176 } }, // gerudo training grounds +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B2D8.s") +s16 sScenes[] = { + SCENE_YDAN, SCENE_DDAN, SCENE_BMORI1, SCENE_HIDAN, SCENE_MIZUSIN, + SCENE_JYASINZOU, SCENE_HAKADAN, SCENE_GANON, SCENE_MEN, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B300.s") +static InitChainEntry sInitChain[] = { + ICHAIN_F32(uncullZoneForward, 1800, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE), + ICHAIN_F32(uncullZoneDownward, 1500, ICHAIN_STOP), +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B38C.s") +// The vertices and center of the bottom face +Vec3f sColCheckPoints[5] = { + { 29.99f, 1.01f, -29.99f }, { -29.99f, 1.01f, -29.99f }, { -29.99f, 1.01f, 29.99f }, + { 29.99f, 1.01f, 29.99f }, { 0.0f, 1.01f, 0.0f }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B4BC.s") +Vec2f sFaceVtx[] = { + { -30.0f, 0.0f }, + { 30.0f, 0.0f }, + { -30.0f, 60.0f }, + { 30.0f, 60.0f }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B584.s") +Vec2f sFaceDirection[] = { + { 1.0f, 1.0f }, + { -1.0f, 1.0f }, + { 1.0f, -1.0f }, + { -1.0f, -1.0f }, +}; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B5F4.s") +void ObjOshihiki_InitDynapoly(ObjOshihiki* this, GlobalContext* globalCtx, ColHeader* collision, + DynaPolyMoveFlag moveFlag) { + s32 pad; + ColHeader* colHeader = NULL; + s32 pad2; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B62C.s") + DynaPolyInfo_SetActorMove(&this->dyna, moveFlag); + DynaPolyInfo_Alloc(collision, &colHeader); + this->dyna.dynaPolyId = + DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B68C.s") + if (this->dyna.dynaPolyId == 50) { + // Warning : move BG registration failure + osSyncPrintf("Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n", "../z_obj_oshihiki.c", 280, + this->dyna.actor.id, this->dyna.actor.params); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Init.s") +void ObjOshihiki_RotateXZ(Vec3f* out, Vec3f* in, f32 sn, f32 cs) { + out->x = (in->z * sn) + (in->x * cs); + out->y = in->y; + out->z = (in->z * cs) - (in->x * sn); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Destroy.s") +s32 ObjOshihiki_StrongEnough(ObjOshihiki* this) { + s32 strength; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9B8C8.s") + if (this->cantMove) { + return 0; + } + strength = Player_GetStrength(); + switch (this->dyna.actor.params & 0xF) { + case PUSHBLOCK_SMALL_START_ON: + case PUSHBLOCK_MEDIUM_START_ON: + case PUSHBLOCK_SMALL_START_OFF: + case PUSHBLOCK_MEDIUM_START_OFF: + return 1; + break; + case PUSHBLOCK_LARGE_START_ON: + case PUSHBLOCK_LARGE_START_OFF: + return strength >= PLAYER_STR_BRACELET; + break; + case PUSHBLOCK_HUGE_START_ON: + case PUSHBLOCK_HUGE_START_OFF: + return strength >= PLAYER_STR_SILVER_G; + break; + } + return 0; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BA28.s") +void ObjOshihiki_ResetFloors(ObjOshihiki* this) { + s32 i; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BB70.s") + for (i = 0; i < ARRAY_COUNT(this->floorBgIds); i++) { + this->floorBgIds[i] = 50; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BBC8.s") +ObjOshihiki* ObjOshihiki_GetBlockUnder(ObjOshihiki* this, GlobalContext* globalCtx) { + DynaPolyActor* dyna; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BC20.s") + if ((this->floorBgIds[this->highestFloor] != 50) && + (fabsf(this->dyna.actor.groundY - this->dyna.actor.posRot.pos.y) < 0.001f)) { + dyna = DynaPolyInfo_GetActor(&globalCtx->colCtx, this->floorBgIds[this->highestFloor]); + if ((dyna != NULL) && (dyna->actor.id == ACTOR_OBJ_OSHIHIKI)) { + return (ObjOshihiki*)dyna; + } + } + return NULL; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BCB8.s") +void ObjOshihiki_UpdateInitPos(ObjOshihiki* this) { + if (this->dyna.actor.initPosRot.pos.x < this->dyna.actor.posRot.pos.x) { + while ((this->dyna.actor.posRot.pos.x - this->dyna.actor.initPosRot.pos.x) >= 20.0f) { + this->dyna.actor.initPosRot.pos.x += 20.0f; + } + } else { + while ((this->dyna.actor.initPosRot.pos.x - this->dyna.actor.posRot.pos.x) >= 20.0f) { + this->dyna.actor.initPosRot.pos.x -= 20.0f; + } + } + if (this->dyna.actor.initPosRot.pos.z < this->dyna.actor.posRot.pos.z) { + while ((this->dyna.actor.posRot.pos.z - this->dyna.actor.initPosRot.pos.z) >= 20.0f) { + this->dyna.actor.initPosRot.pos.z += 20.0f; + } + } else { + while ((this->dyna.actor.initPosRot.pos.z - this->dyna.actor.posRot.pos.z) >= 20.0f) { + this->dyna.actor.initPosRot.pos.z -= 20.0f; + } + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BF08.s") +s32 ObjOshihiki_NoSwitchPress(ObjOshihiki* this, DynaPolyActor* dyna, GlobalContext* globalCtx) { + s16 dynaSwitchFlag; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9BFF8.s") + if (dyna == NULL) { + return 1; + } else if (dyna->actor.id == ACTOR_OBJ_SWITCH) { + dynaSwitchFlag = (dyna->actor.params >> 8) & 0x3F; + switch (dyna->actor.params & 0x33) { + case 0x20: // Normal blue switch + if ((dynaSwitchFlag == ((this->dyna.actor.params >> 8) & 0x3F)) && + Flags_GetSwitch(globalCtx, dynaSwitchFlag)) { + return 0; + } + break; + case 0x30: // Inverse blue switch + if ((dynaSwitchFlag == ((this->dyna.actor.params >> 8) & 0x3F)) && + !Flags_GetSwitch(globalCtx, dynaSwitchFlag)) { + return 0; + } + break; + } + } + return 1; +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C02C.s") +void ObjOshihiki_CheckType(ObjOshihiki* this, GlobalContext* globalCtx) { + switch (this->dyna.actor.params & 0xF) { + case PUSHBLOCK_SMALL_START_ON: + case PUSHBLOCK_MEDIUM_START_ON: + case PUSHBLOCK_LARGE_START_ON: + case PUSHBLOCK_HUGE_START_ON: + case PUSHBLOCK_SMALL_START_OFF: + case PUSHBLOCK_MEDIUM_START_OFF: + case PUSHBLOCK_LARGE_START_OFF: + case PUSHBLOCK_HUGE_START_OFF: + ObjOshihiki_InitDynapoly(this, globalCtx, &D_05004E98, 1); + break; + default: + // Error : type cannot be determined + osSyncPrintf("Error : タイプが判別できない(%s %d)(arg_data 0x%04x)\n", + "../z_obj_oshihiki.c", 444, this->dyna.actor.params); + break; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C110.s") +void ObjOshihiki_SetScale(ObjOshihiki* this, GlobalContext* globalCtx) { + Actor_SetScale(&this->dyna.actor, sScales[this->dyna.actor.params & 0xF]); +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C14C.s") +void ObjOshihiki_SetTexture(ObjOshihiki* this, GlobalContext* globalCtx) { + switch (this->dyna.actor.params & 0xF) { + case PUSHBLOCK_SMALL_START_ON: + case PUSHBLOCK_MEDIUM_START_ON: + case PUSHBLOCK_SMALL_START_OFF: + case PUSHBLOCK_MEDIUM_START_OFF: + this->texture = &D_05003350; + break; + case PUSHBLOCK_LARGE_START_ON: + case PUSHBLOCK_LARGE_START_OFF: + this->texture = &D_05003B50; + break; + case PUSHBLOCK_HUGE_START_ON: + case PUSHBLOCK_HUGE_START_OFF: + this->texture = &D_05004350; + break; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C340.s") +void ObjOshihiki_SetColor(ObjOshihiki* this, GlobalContext* globalCtx) { + Color_RGB8* src; + Color_RGB8* color = &this->color; + s16 paramsColorIdx; + s32 i; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C368.s") + paramsColorIdx = (this->dyna.actor.params >> 6) & 3; -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C584.s") + for (i = 0; i < ARRAY_COUNT(sScenes); i++) { + if (sScenes[i] == globalCtx->sceneNum) { + break; + } + } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/func_80B9C5DC.s") + if (i >= ARRAY_COUNT(sColors)) { + // "Error : scene_data_ID cannot be determined" + osSyncPrintf("Error : scene_data_ID が判別できない。(%s %d)\n", "../z_obj_oshihiki.c", 579); + color->r = color->g = color->b = 255; + } else { + src = &sColors[i][paramsColorIdx]; + color->r = src->r; + color->g = src->g; + color->b = src->b; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Update.s") +void ObjOshihiki_Init(Actor* thisx, GlobalContext* globalCtx2) { + GlobalContext* globalCtx = globalCtx2; + ObjOshihiki* this = THIS; + + ObjOshihiki_CheckType(this, globalCtx); + + if ((((this->dyna.actor.params >> 8) & 0xFF) >= 0) + && (((this->dyna.actor.params >> 8) & 0xFF) <= 0x3F)) { + if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F)) { + switch (this->dyna.actor.params & 0xF) { + case PUSHBLOCK_SMALL_START_ON: + case PUSHBLOCK_MEDIUM_START_ON: + case PUSHBLOCK_LARGE_START_ON: + case PUSHBLOCK_HUGE_START_ON: + Actor_Kill(&this->dyna.actor); + return; + } + } else { + switch (this->dyna.actor.params & 0xF) { + case PUSHBLOCK_SMALL_START_OFF: + case PUSHBLOCK_MEDIUM_START_OFF: + case PUSHBLOCK_LARGE_START_OFF: + case PUSHBLOCK_HUGE_START_OFF: + Actor_Kill(&this->dyna.actor); + return; + } + } + } -#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Oshihiki/ObjOshihiki_Draw.s") + ObjOshihiki_SetScale(this, globalCtx); + ObjOshihiki_SetTexture(this, globalCtx); + Actor_ProcessInitChain(&this->dyna.actor, sInitChain); + this->dyna.actor.colChkInfo.mass = 0xFF; + ObjOshihiki_SetColor(this, globalCtx); + ObjOshihiki_ResetFloors(this); + ObjOshihiki_SetupOnActor(this, globalCtx); + // (dungeon keep push-pull block) + osSyncPrintf("(dungeon keep 押し引きブロック)(arg_data 0x%04x)\n", this->dyna.actor.params); +} + +void ObjOshihiki_Destroy(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + ObjOshihiki* this = THIS; + + DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId); +} + +void ObjOshihiki_SetFloors(ObjOshihiki* this, GlobalContext* globalCtx) { + s32 i; + + for (i = 0; i < 5; i++) { + Vec3f colCheckPoint; + Vec3f colCheckOffset; + CollisionPoly** floorPoly; + s32* floorBgId; + + colCheckOffset.x = sColCheckPoints[i].x * (this->dyna.actor.scale.x * 10.0f); + colCheckOffset.y = sColCheckPoints[i].y * (this->dyna.actor.scale.y * 10.0f); + colCheckOffset.z = sColCheckPoints[i].z * (this->dyna.actor.scale.z * 10.0f); + ObjOshihiki_RotateXZ(&colCheckPoint, &colCheckOffset, this->yawSin, this->yawCos); + colCheckPoint.x += this->dyna.actor.posRot.pos.x; + colCheckPoint.y += this->dyna.actor.pos4.y; + colCheckPoint.z += this->dyna.actor.posRot.pos.z; + + floorPoly = &this->floorPolys[i]; + floorBgId = &this->floorBgIds[i]; + this->floorHeights[i] = + func_8003CA64(&globalCtx->colCtx, floorPoly, floorBgId, &this->dyna.actor, &colCheckPoint, 0.0f); + } +} + +s16 ObjOshihiki_GetHighestFloor(ObjOshihiki* this) { + s16 highestFloor = 0; + s16 temp = 1; + f32 phi_f0 = this->floorHeights[temp]; + + if (phi_f0 > this->floorHeights[highestFloor]) { + highestFloor = temp; + } else if ((this->floorBgIds[temp] == 50) && ((phi_f0 - this->floorHeights[highestFloor]) > -0.001f)) { + highestFloor = temp; + } + if (this->floorHeights[temp + 1] > this->floorHeights[highestFloor]) { + highestFloor = temp + 1; + } else if ((this->floorBgIds[temp + 1] == 50) && + ((this->floorHeights[temp + 1] - this->floorHeights[highestFloor]) > -0.001f)) { + highestFloor = temp + 1; + } + if (this->floorHeights[temp + 2] > this->floorHeights[highestFloor]) { + highestFloor = temp + 2; + } else if ((this->floorBgIds[temp + 2] == 50) && + ((this->floorHeights[temp + 2] - this->floorHeights[highestFloor]) > -0.001f)) { + highestFloor = temp + 2; + } + if (this->floorHeights[temp + 3] > this->floorHeights[highestFloor]) { + highestFloor = temp + 3; + } else if ((this->floorBgIds[temp + 3] == 50) && + ((this->floorHeights[temp + 3] - this->floorHeights[highestFloor]) > -0.001f)) { + highestFloor = temp + 3; + } + return highestFloor; +} + +void ObjOshihiki_SetGround(ObjOshihiki* this, GlobalContext* globalCtx) { + ObjOshihiki_ResetFloors(this); + ObjOshihiki_SetFloors(this, globalCtx); + this->highestFloor = ObjOshihiki_GetHighestFloor(this); + this->dyna.actor.groundY = this->floorHeights[this->highestFloor]; +} + +s32 ObjOshihiki_CheckFloor(ObjOshihiki* this, GlobalContext* globalCtx) { + ObjOshihiki_SetGround(this, globalCtx); + + if ((this->dyna.actor.groundY - this->dyna.actor.posRot.pos.y) >= -0.001f) { + this->dyna.actor.posRot.pos.y = this->dyna.actor.groundY; + return 1; + } + + return 0; +} + +s32 ObjOshihiki_CheckGround(ObjOshihiki* this, GlobalContext* globalCtx) { + if (this->dyna.actor.posRot.pos.y <= -31990.0f) { + // Warning : Push-pull block fell too much + osSyncPrintf("Warning : 押し引きブロック落ちすぎた(%s %d)(arg_data 0x%04x)\n", "../z_obj_oshihiki.c", 809, + this->dyna.actor.params); + Actor_Kill(&this->dyna.actor); + return 0; + } + if ((this->dyna.actor.groundY - this->dyna.actor.posRot.pos.y) >= -0.001f) { + this->dyna.actor.posRot.pos.y = this->dyna.actor.groundY; + return 1; + } + return 0; +} + +s32 ObjOshihiki_CheckWall(GlobalContext* globalCtx, s16 angle, f32 direction, ObjOshihiki* this) { + f32 maxDist = ((direction >= 0.0f) ? 1.0f : -1.0f) * (300.0f * this->dyna.actor.scale.x + 20.0f - 0.5f); + f32 sn = Math_Sins(angle); + f32 cs = Math_Coss(angle); + s32 i; + + for (i = 0; i < 4; i++) { + Vec3f faceVtx; + Vec3f faceVtxNext; + Vec3f posResult; + Vec3f faceVtxOffset; + u32 bgId; + CollisionPoly* outPoly; + + faceVtxOffset.x = (sFaceVtx[i].x * this->dyna.actor.scale.x * 10.0f) + sFaceDirection[i].x; + faceVtxOffset.y = (sFaceVtx[i].y * this->dyna.actor.scale.y * 10.0f) + sFaceDirection[i].y; + faceVtxOffset.z = 0.0f; + ObjOshihiki_RotateXZ(&faceVtx, &faceVtxOffset, sn, cs); + faceVtx.x += this->dyna.actor.posRot.pos.x; + faceVtx.y += this->dyna.actor.posRot.pos.y; + faceVtx.z += this->dyna.actor.posRot.pos.z; + faceVtxNext.x = faceVtx.x + maxDist * sn; + faceVtxNext.y = faceVtx.y; + faceVtxNext.z = faceVtx.z + maxDist * cs; + if (func_8003DFA0(&globalCtx->colCtx, &faceVtx, &faceVtxNext, &posResult, &outPoly, 1, 0, 0, 1, &bgId, + &this->dyna.actor, 0.0f)) { + return 1; + } + } + return 0; +} + +s32 ObjOshihiki_MoveWithBlockUnder(ObjOshihiki* this, GlobalContext* globalCtx) { + s32 pad; + ObjOshihiki* blockUnder = ObjOshihiki_GetBlockUnder(this, globalCtx); + + if ((blockUnder != NULL) && (blockUnder->stateFlags & PUSHBLOCK_SETUP_PUSH) && + !ObjOshihiki_CheckWall(globalCtx, blockUnder->dyna.unk_158, blockUnder->direction, this)) { + this->blockUnder = blockUnder; + } + + if ((this->stateFlags & PUSHBLOCK_MOVE_UNDER) && (this->blockUnder != NULL)) { + if (this->blockUnder->stateFlags & PUSHBLOCK_PUSH) { + this->underDistX = this->blockUnder->dyna.actor.posRot.pos.x - this->blockUnder->dyna.actor.pos4.x; + this->underDistZ = this->blockUnder->dyna.actor.posRot.pos.z - this->blockUnder->dyna.actor.pos4.z; + this->dyna.actor.posRot.pos.x += this->underDistX; + this->dyna.actor.posRot.pos.z += this->underDistZ; + ObjOshihiki_UpdateInitPos(this); + return 1; + } else if (!(this->blockUnder->stateFlags & PUSHBLOCK_SETUP_PUSH)) { + this->blockUnder = NULL; + } + } + return 0; +} + +void ObjOshihiki_SetupOnScene(ObjOshihiki* this, GlobalContext* globalCtx) { + this->stateFlags |= PUSHBLOCK_SETUP_ON_SCENE; + this->actionFunc = ObjOshihiki_OnScene; + this->dyna.actor.gravity = 0.0f; + this->dyna.actor.velocity.x = this->dyna.actor.velocity.y = this->dyna.actor.velocity.z = 0.0f; +} + +void ObjOshihiki_OnScene(ObjOshihiki* this, GlobalContext* globalCtx) { + s32 pad; + Player* player = PLAYER; + + this->stateFlags |= PUSHBLOCK_ON_SCENE; + if ((this->timer <= 0) && (fabsf(this->dyna.unk_150) > 0.001f)) { + if (ObjOshihiki_StrongEnough(this) && + !ObjOshihiki_CheckWall(globalCtx, this->dyna.unk_158, this->dyna.unk_150, this)) { + this->direction = this->dyna.unk_150; + ObjOshihiki_SetupPush(this, globalCtx); + } else { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } + } else { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } +} + +void ObjOshihiki_SetupOnActor(ObjOshihiki* this, GlobalContext* globalCtx) { + this->stateFlags |= PUSHBLOCK_SETUP_ON_ACTOR; + this->actionFunc = ObjOshihiki_OnActor; + this->dyna.actor.velocity.z = 0.0f; + this->dyna.actor.velocity.y = 0.0f; + this->dyna.actor.velocity.x = 0.0f; + this->dyna.actor.gravity = -1.0f; +} + +void ObjOshihiki_OnActor(ObjOshihiki* this, GlobalContext* globalCtx) { + s32 bgId; + Player* player = PLAYER; + DynaPolyActor* dynaActor; + + this->stateFlags |= PUSHBLOCK_ON_ACTOR; + Actor_MoveForward(&this->dyna.actor); + + if (ObjOshihiki_CheckFloor(this, globalCtx)) { + bgId = this->floorBgIds[this->highestFloor]; + if (bgId == 50) { + ObjOshihiki_SetupOnScene(this, globalCtx); + } else { + dynaActor = DynaPolyInfo_GetActor(&globalCtx->colCtx, bgId); + if (dynaActor != NULL) { + func_800434A8(dynaActor); + func_80043538(dynaActor); + + if ((this->timer <= 0) && (fabsf(this->dyna.unk_150) > 0.001f)) { + if (ObjOshihiki_StrongEnough(this) && ObjOshihiki_NoSwitchPress(this, dynaActor, globalCtx) && + !ObjOshihiki_CheckWall(globalCtx, this->dyna.unk_158, this->dyna.unk_150, this)) { + + this->direction = this->dyna.unk_150; + ObjOshihiki_SetupPush(this, globalCtx); + } else { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } + } else { + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + } + } else { + ObjOshihiki_SetupOnScene(this, globalCtx); + } + } + } else { + bgId = this->floorBgIds[this->highestFloor]; + if (bgId == 50) { + ObjOshihiki_SetupFall(this, globalCtx); + } else { + dynaActor = DynaPolyInfo_GetActor(&globalCtx->colCtx, bgId); + + if ((dynaActor != NULL) && (dynaActor->unk_15C & 1)) { + func_800434A8(dynaActor); + func_80043538(dynaActor); + this->dyna.actor.posRot.pos.y = this->dyna.actor.groundY; + } else { + ObjOshihiki_SetupFall(this, globalCtx); + } + } + } +} + +void ObjOshihiki_SetupPush(ObjOshihiki* this, GlobalContext* globalCtx) { + this->stateFlags |= PUSHBLOCK_SETUP_PUSH; + this->actionFunc = ObjOshihiki_Push; + this->dyna.actor.gravity = 0.0f; +} + +void ObjOshihiki_Push(ObjOshihiki* this, GlobalContext* globalCtx) { + Actor* thisx = &this->dyna.actor; + Player* player = PLAYER; + f32 pushDistSigned; + s32 stopFlag; + + this->pushSpeed += 0.5f; + this->stateFlags |= PUSHBLOCK_PUSH; + this->pushSpeed = CLAMP_MAX(this->pushSpeed, 2.0f); + stopFlag = Math_ApproxF(&this->pushDist, 20.0f, this->pushSpeed); + pushDistSigned = ((this->direction >= 0.0f) ? 1.0f : -1.0f) * this->pushDist; + thisx->posRot.pos.x = thisx->initPosRot.pos.x + (pushDistSigned * this->yawSin); + thisx->posRot.pos.z = thisx->initPosRot.pos.z + (pushDistSigned * this->yawCos); + + if (!ObjOshihiki_CheckFloor(this, globalCtx)) { + thisx->initPosRot.pos.x = thisx->posRot.pos.x; + thisx->initPosRot.pos.z = thisx->posRot.pos.z; + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + this->pushDist = 0.0f; + this->pushSpeed = 0.0f; + ObjOshihiki_SetupFall(this, globalCtx); + } else if (stopFlag) { + player = PLAYER; + if (ObjOshihiki_CheckWall(globalCtx, this->dyna.unk_158, this->dyna.unk_150, this)) { + Audio_PlayActorSound2(thisx, NA_SE_EV_BLOCK_BOUND); + } + + thisx->initPosRot.pos.x = thisx->posRot.pos.x; + thisx->initPosRot.pos.z = thisx->posRot.pos.z; + player->stateFlags2 &= ~0x10; + this->dyna.unk_150 = 0.0f; + this->pushDist = 0.0f; + this->pushSpeed = 0.0f; + this->timer = 10; + if (this->floorBgIds[this->highestFloor] == 50) { + ObjOshihiki_SetupOnScene(this, globalCtx); + } else { + ObjOshihiki_SetupOnActor(this, globalCtx); + } + } + Audio_PlayActorSound2(thisx, NA_SE_EV_ROCK_SLIDE - SFX_FLAG); +} + +void ObjOshihiki_SetupFall(ObjOshihiki* this, GlobalContext* globalCtx) { + this->stateFlags |= PUSHBLOCK_SETUP_FALL; + this->dyna.actor.velocity.x = this->dyna.actor.velocity.y = this->dyna.actor.velocity.z = 0.0f; + this->dyna.actor.gravity = -1.0f; + ObjOshihiki_SetGround(this, globalCtx); + this->actionFunc = ObjOshihiki_Fall; +} + +void ObjOshihiki_Fall(ObjOshihiki* this, GlobalContext* globalCtx) { + Player* player = PLAYER; + + this->stateFlags |= PUSHBLOCK_FALL; + if (fabsf(this->dyna.unk_150) > 0.001f) { + this->dyna.unk_150 = 0.0f; + player->stateFlags2 &= ~0x10; + } + Actor_MoveForward(&this->dyna.actor); + if (ObjOshihiki_CheckGround(this, globalCtx)) { + if (this->floorBgIds[this->highestFloor] == 50) { + ObjOshihiki_SetupOnScene(this, globalCtx); + } else { + ObjOshihiki_SetupOnActor(this, globalCtx); + } + Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_BLOCK_BOUND); + Audio_PlayActorSound2(&this->dyna.actor, func_80041F34(&globalCtx->colCtx, this->floorPolys[this->highestFloor], + this->floorBgIds[this->highestFloor]) + + SFX_FLAG); + } +} + +void ObjOshihiki_Update(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + ObjOshihiki* this = THIS; + + this->stateFlags &= + ~(PUSHBLOCK_SETUP_FALL | PUSHBLOCK_FALL | PUSHBLOCK_SETUP_PUSH | PUSHBLOCK_PUSH | PUSHBLOCK_SETUP_ON_ACTOR | + PUSHBLOCK_ON_ACTOR | PUSHBLOCK_SETUP_ON_SCENE | PUSHBLOCK_ON_SCENE); + this->stateFlags |= PUSHBLOCK_MOVE_UNDER; + + if (this->timer > 0) { + this->timer--; + } + + this->dyna.actor.posRot.rot.y = this->dyna.unk_158; + + this->yawSin = Math_Sins(this->dyna.actor.posRot.rot.y); + this->yawCos = Math_Coss(this->dyna.actor.posRot.rot.y); + + if (this->actionFunc != NULL) { + this->actionFunc(this, globalCtx); + } +} + +void ObjOshihiki_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; + ObjOshihiki* this = THIS; + + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_obj_oshihiki.c", 1289); + if (ObjOshihiki_MoveWithBlockUnder(this, globalCtx)) { + Matrix_Translate(this->underDistX * 10.0f, 0.0f, this->underDistZ * 10.0f, 1); + } + this->stateFlags &= ~PUSHBLOCK_MOVE_UNDER; + func_80093D18(globalCtx->state.gfxCtx); + gSPSegment(oGfxCtx->polyOpa.p++, 0x08, SEGMENTED_TO_VIRTUAL(this->texture)); + + gSPMatrix(oGfxCtx->polyOpa.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_oshihiki.c", 1308), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + + switch (globalCtx->sceneNum) { + case SCENE_YDAN: + case SCENE_DDAN: + case SCENE_BMORI1: + case SCENE_HIDAN: + case SCENE_MIZUSIN: + case SCENE_JYASINZOU: + case SCENE_HAKADAN: + case SCENE_MEN: + gDPSetEnvColor(oGfxCtx->polyOpa.p++, this->color.r, this->color.g, this->color.b, 255); + break; + default: + gDPSetEnvColor(oGfxCtx->polyOpa.p++, mREG(13), mREG(14), mREG(15), 255); + break; + } + + gSPDisplayList(oGfxCtx->polyOpa.p++, &D_05004CD0); + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_obj_oshihiki.c", 1334); +} diff --git a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h index 14677efb0b..0655964fac 100644 --- a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h +++ b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.h @@ -6,11 +6,49 @@ struct ObjOshihiki; +typedef enum { + /* 0 */ PUSHBLOCK_SMALL_START_ON, + /* 1 */ PUSHBLOCK_MEDIUM_START_ON, + /* 2 */ PUSHBLOCK_LARGE_START_ON, + /* 3 */ PUSHBLOCK_HUGE_START_ON, + /* 4 */ PUSHBLOCK_SMALL_START_OFF, + /* 5 */ PUSHBLOCK_MEDIUM_START_OFF, + /* 6 */ PUSHBLOCK_LARGE_START_OFF, + /* 7 */ PUSHBLOCK_HUGE_START_OFF +} PushBlockType; + +#define PUSHBLOCK_ON_SCENE (1 << 0) +#define PUSHBLOCK_SETUP_ON_SCENE (1 << 1) +#define PUSHBLOCK_ON_ACTOR (1 << 2) +#define PUSHBLOCK_SETUP_ON_ACTOR (1 << 3) +#define PUSHBLOCK_PUSH (1 << 4) +#define PUSHBLOCK_SETUP_PUSH (1 << 5) +#define PUSHBLOCK_FALL (1 << 6) +#define PUSHBLOCK_SETUP_FALL (1 << 7) +#define PUSHBLOCK_MOVE_UNDER (1 << 8) + +typedef void (*ObjOshihikiActionFunc)(struct ObjOshihiki*, GlobalContext*); + typedef struct ObjOshihiki { /* 0x0000 */ DynaPolyActor dyna; - /* 0x0164 */ char unk_164[0x5A]; - /* 0x01BE */ u8 unk_1BE; - /* 0x01BF */ char unk_1BF[0x15]; + /* 0x0164 */ ObjOshihikiActionFunc actionFunc; + /* 0x0168 */ u16 stateFlags; + /* 0x016A */ s16 timer; + /* 0x016C */ f32 yawSin; + /* 0x0170 */ f32 yawCos; + /* 0x0174 */ f32 pushSpeed; + /* 0x0178 */ f32 pushDist; + /* 0x017C */ f32 direction; + /* 0x0180 */ s32 floorBgIds[5]; + /* 0x0194 */ CollisionPoly* floorPolys[5]; + /* 0x01A8 */ f32 floorHeights[5]; + /* 0x01BC */ s16 highestFloor; + /* 0x01BE */ u8 cantMove; + /* 0x01C0 */ struct ObjOshihiki* blockUnder; + /* 0x01C4 */ f32 underDistX; + /* 0x01C8 */ f32 underDistZ; + /* 0x01CC */ void* texture; + /* 0x01D0 */ Color_RGB8 color; } ObjOshihiki; // size = 0x01D4 extern const ActorInit Obj_Oshihiki_InitVars; diff --git a/undefined_syms.txt b/undefined_syms.txt index cb88d48742..51f5566428 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -1015,6 +1015,13 @@ D_06003128 = 0x06003128; D_060042AC = 0x060042AC; D_060059B0 = 0x060059B0; +// z_obj_oshijiki +D_05004E98 = 0x05004E98; +D_05003350 = 0x05003350; +D_05003B50 = 0x05003B50; +D_05004350 = 0x05004350; +D_05004CD0 = 0x05004CD0; + // z_en_goroiwa D_0400D340 = 0x0400D340;