mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-04 15:04:31 +00:00
Oshihiki (#441)
* Darkmeiro decompilation Bg_Gnd_Darkmeiro decompiled, matched, and documented. * give this a shot * fix conflict * one more try * could be useful * whoops * matching * format * document and format * .s files * cleanup and macros in block-related actors * fixed a few more things, also an error I cso an error I caught in another file.
This commit is contained in:
parent
695552f0b8
commit
93fc51e9b6
41 changed files with 715 additions and 1956 deletions
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
|
@ -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
|
||||
|
|
@ -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
|
|
@ -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(?);
|
||||
|
|
3
spec
3
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
|
||||
|
|
|
@ -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 } },
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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) {
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue