mirror of
https://github.com/zeldaret/oot.git
synced 2025-05-10 11:03:46 +00:00
ovl_Obj_Switch OK and documented (#372)
* ovl_Obj_Switch OK * Documentation & Cleanup * Remove unneeded prototypes, use documentation comments format, add struct offsets * Got rid of symbols not referenced by code, at the costly price of warnings * review 2 * remove asm * review 2 Co-authored-by: fig <fig02srl@gmail.com>
This commit is contained in:
parent
7b10ecad4c
commit
3cfafb2574
49 changed files with 767 additions and 2071 deletions
|
@ -1,48 +0,0 @@
|
|||
glabel ObjSwitch_Destroy
|
||||
/* 00794 80B9D9A4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00798 80B9D9A8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0079C 80B9D9AC AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 007A0 80B9D9B0 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 007A4 80B9D9B4 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 007A8 80B9D9B8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 007AC 80B9D9BC 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 007B0 80B9D9C0 10400003 */ beq $v0, $zero, .L80B9D9D0
|
||||
/* 007B4 80B9D9C4 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 007B8 80B9D9C8 54410009 */ bnel $v0, $at, .L80B9D9F0
|
||||
/* 007BC 80B9D9CC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
.L80B9D9D0:
|
||||
/* 007C0 80B9D9D0 8CE6014C */ lw $a2, 0x014C($a3) ## 0000014C
|
||||
/* 007C4 80B9D9D4 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 007C8 80B9D9D8 0C00FB56 */ jal DynaPolyInfo_Free
|
||||
## DynaPolyInfo_delReserve
|
||||
/* 007CC 80B9D9DC 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
|
||||
/* 007D0 80B9D9E0 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 007D4 80B9D9E4 84E2001C */ lh $v0, 0x001C($a3) ## 0000001C
|
||||
/* 007D8 80B9D9E8 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 007DC 80B9D9EC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
.L80B9D9F0:
|
||||
/* 007E0 80B9D9F0 1041000B */ beq $v0, $at, .L80B9DA20
|
||||
/* 007E4 80B9D9F4 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 007E8 80B9D9F8 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 007EC 80B9D9FC 10410008 */ beq $v0, $at, .L80B9DA20
|
||||
/* 007F0 80B9DA00 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 007F4 80B9DA04 1041000A */ beq $v0, $at, .L80B9DA30
|
||||
/* 007F8 80B9DA08 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 007FC 80B9DA0C 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 00800 80B9DA10 10410007 */ beq $v0, $at, .L80B9DA30
|
||||
/* 00804 80B9DA14 00000000 */ nop
|
||||
/* 00808 80B9DA18 10000008 */ beq $zero, $zero, .L80B9DA3C
|
||||
/* 0080C 80B9DA1C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DA20:
|
||||
/* 00810 80B9DA20 0C017232 */ jal Collider_DestroyTris
|
||||
/* 00814 80B9DA24 24E50180 */ addiu $a1, $a3, 0x0180 ## $a1 = 00000180
|
||||
/* 00818 80B9DA28 10000004 */ beq $zero, $zero, .L80B9DA3C
|
||||
/* 0081C 80B9DA2C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DA30:
|
||||
/* 00820 80B9DA30 0C016F32 */ jal Collider_DestroyJntSph
|
||||
/* 00824 80B9DA34 24E50180 */ addiu $a1, $a3, 0x0180 ## $a1 = 00000180
|
||||
/* 00828 80B9DA38 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DA3C:
|
||||
/* 0082C 80B9DA3C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00830 80B9DA40 03E00008 */ jr $ra
|
||||
/* 00834 80B9DA44 00000000 */ nop
|
|
@ -1,18 +0,0 @@
|
|||
glabel ObjSwitch_Draw
|
||||
/* 019AC 80B9EBBC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 019B0 80B9EBC0 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 019B4 80B9EBC4 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 019B8 80B9EBC8 3C1980BA */ lui $t9, %hi(D_80B9EDE8) ## $t9 = 80BA0000
|
||||
/* 019BC 80B9EBCC 31CF0007 */ andi $t7, $t6, 0x0007 ## $t7 = 00000000
|
||||
/* 019C0 80B9EBD0 000FC080 */ sll $t8, $t7, 2
|
||||
/* 019C4 80B9EBD4 0338C821 */ addu $t9, $t9, $t8
|
||||
/* 019C8 80B9EBD8 8F39EDE8 */ lw $t9, %lo(D_80B9EDE8)($t9)
|
||||
/* 019CC 80B9EBDC 0320F809 */ jalr $ra, $t9
|
||||
/* 019D0 80B9EBE0 00000000 */ nop
|
||||
/* 019D4 80B9EBE4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 019D8 80B9EBE8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 019DC 80B9EBEC 03E00008 */ jr $ra
|
||||
/* 019E0 80B9EBF0 00000000 */ nop
|
||||
/* 019E4 80B9EBF4 00000000 */ nop
|
||||
/* 019E8 80B9EBF8 00000000 */ nop
|
||||
/* 019EC 80B9EBFC 00000000 */ nop
|
|
@ -1,235 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B9EE54
|
||||
.asciz "\x1b[31m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EE5C
|
||||
.asciz "Error : 氷発生失敗 (%s %d)\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EE78
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EE8C
|
||||
.asciz "\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EE90
|
||||
.asciz "(Dungeon switch)(arg_data 0x%04x)\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel ObjSwitch_Init
|
||||
/* 004B4 80B9D6C4 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 004B8 80B9D6C8 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 004BC 80B9D6CC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 004C0 80B9D6D0 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 004C4 80B9D6D4 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 004C8 80B9D6D8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 004CC 80B9D6DC 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 004D0 80B9D6E0 00052A03 */ sra $a1, $a1, 8
|
||||
/* 004D4 80B9D6E4 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 004D8 80B9D6E8 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 004DC 80B9D6EC AFA20030 */ sw $v0, 0x0030($sp)
|
||||
/* 004E0 80B9D6F0 8603001C */ lh $v1, 0x001C($s0) ## 0000001C
|
||||
/* 004E4 80B9D6F4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 004E8 80B9D6F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004EC 80B9D6FC 30630007 */ andi $v1, $v1, 0x0007 ## $v1 = 00000000
|
||||
/* 004F0 80B9D700 10600002 */ beq $v1, $zero, .L80B9D70C
|
||||
/* 004F4 80B9D704 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 004F8 80B9D708 14610006 */ bne $v1, $at, .L80B9D724
|
||||
.L80B9D70C:
|
||||
/* 004FC 80B9D70C 3C060500 */ lui $a2, 0x0500 ## $a2 = 05000000
|
||||
/* 00500 80B9D710 24C65FB8 */ addiu $a2, $a2, 0x5FB8 ## $a2 = 05005FB8
|
||||
/* 00504 80B9D714 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 00508 80B9D718 0C2E74A5 */ jal func_80B9D294
|
||||
/* 0050C 80B9D71C AFA3002C */ sw $v1, 0x002C($sp)
|
||||
/* 00510 80B9D720 8FA3002C */ lw $v1, 0x002C($sp)
|
||||
.L80B9D724:
|
||||
/* 00514 80B9D724 3C0580BA */ lui $a1, %hi(D_80B9ED78) ## $a1 = 80BA0000
|
||||
/* 00518 80B9D728 24A5ED78 */ addiu $a1, $a1, %lo(D_80B9ED78) ## $a1 = 80B9ED78
|
||||
/* 0051C 80B9D72C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00520 80B9D730 0C01E037 */ jal Actor_ProcessInitChain
|
||||
|
||||
/* 00524 80B9D734 AFA3002C */ sw $v1, 0x002C($sp)
|
||||
/* 00528 80B9D738 8FA3002C */ lw $v1, 0x002C($sp)
|
||||
/* 0052C 80B9D73C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00530 80B9D740 3C0F80BA */ lui $t7, %hi(D_80B9EC20) ## $t7 = 80BA0000
|
||||
/* 00534 80B9D744 10600003 */ beq $v1, $zero, .L80B9D754
|
||||
/* 00538 80B9D748 00037080 */ sll $t6, $v1, 2
|
||||
/* 0053C 80B9D74C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00540 80B9D750 14610005 */ bne $v1, $at, .L80B9D768
|
||||
.L80B9D754:
|
||||
/* 00544 80B9D754 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 00548 80B9D758 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
|
||||
/* 0054C 80B9D75C C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C
|
||||
/* 00550 80B9D760 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00554 80B9D764 E6080028 */ swc1 $f8, 0x0028($s0) ## 00000028
|
||||
.L80B9D768:
|
||||
/* 00558 80B9D768 25EFEC20 */ addiu $t7, $t7, %lo(D_80B9EC20) ## $t7 = 80B9EC20
|
||||
/* 0055C 80B9D76C 01CF3821 */ addu $a3, $t6, $t7
|
||||
/* 00560 80B9D770 8CE50000 */ lw $a1, 0x0000($a3) ## 00000000
|
||||
/* 00564 80B9D774 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 00568 80B9D778 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 0056C 80B9D77C 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
/* 00570 80B9D780 3C1880BA */ lui $t8, %hi(D_80B9EC24) ## $t8 = 80BA0000
|
||||
/* 00574 80B9D784 2718EC24 */ addiu $t8, $t8, %lo(D_80B9EC24) ## $t8 = 80B9EC24
|
||||
/* 00578 80B9D788 14F80009 */ bne $a3, $t8, .L80B9D7B0
|
||||
/* 0057C 80B9D78C 3C1980BA */ lui $t9, %hi(D_80B9EC28) ## $t9 = 80BA0000
|
||||
/* 00580 80B9D790 3C0680BA */ lui $a2, %hi(D_80B9ECAC) ## $a2 = 80BA0000
|
||||
/* 00584 80B9D794 24C6ECAC */ addiu $a2, $a2, %lo(D_80B9ECAC) ## $a2 = 80B9ECAC
|
||||
/* 00588 80B9D798 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0058C 80B9D79C 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 00590 80B9D7A0 0C2E74EE */ jal func_80B9D3B8
|
||||
/* 00594 80B9D7A4 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 00598 80B9D7A8 10000018 */ beq $zero, $zero, .L80B9D80C
|
||||
/* 0059C 80B9D7AC 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
.L80B9D7B0:
|
||||
/* 005A0 80B9D7B0 2739EC28 */ addiu $t9, $t9, %lo(D_80B9EC28) ## $t9 = FFFFEC28
|
||||
/* 005A4 80B9D7B4 14F90009 */ bne $a3, $t9, .L80B9D7DC
|
||||
/* 005A8 80B9D7B8 3C0880BA */ lui $t0, %hi(D_80B9EC2C) ## $t0 = 80BA0000
|
||||
/* 005AC 80B9D7BC 3C0680BA */ lui $a2, %hi(D_80B9ED34) ## $a2 = 80BA0000
|
||||
/* 005B0 80B9D7C0 24C6ED34 */ addiu $a2, $a2, %lo(D_80B9ED34) ## $a2 = 80B9ED34
|
||||
/* 005B4 80B9D7C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 005B8 80B9D7C8 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 005BC 80B9D7CC 0C2E74EE */ jal func_80B9D3B8
|
||||
/* 005C0 80B9D7D0 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 005C4 80B9D7D4 1000000D */ beq $zero, $zero, .L80B9D80C
|
||||
/* 005C8 80B9D7D8 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
.L80B9D7DC:
|
||||
/* 005CC 80B9D7DC 2508EC2C */ addiu $t0, $t0, %lo(D_80B9EC2C) ## $t0 = FFFFEC2C
|
||||
/* 005D0 80B9D7E0 10E80003 */ beq $a3, $t0, .L80B9D7F0
|
||||
/* 005D4 80B9D7E4 3C0980BA */ lui $t1, %hi(D_80B9EC30) ## $t1 = 80BA0000
|
||||
/* 005D8 80B9D7E8 2529EC30 */ addiu $t1, $t1, %lo(D_80B9EC30) ## $t1 = 80B9EC30
|
||||
/* 005DC 80B9D7EC 14E90007 */ bne $a3, $t1, .L80B9D80C
|
||||
.L80B9D7F0:
|
||||
/* 005E0 80B9D7F0 3C0680BA */ lui $a2, %hi(D_80B9ED68) ## $a2 = 80BA0000
|
||||
/* 005E4 80B9D7F4 24C6ED68 */ addiu $a2, $a2, %lo(D_80B9ED68) ## $a2 = 80B9ED68
|
||||
/* 005E8 80B9D7F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 005EC 80B9D7FC 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 005F0 80B9D800 0C2E74C7 */ jal func_80B9D31C
|
||||
/* 005F4 80B9D804 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 005F8 80B9D808 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
.L80B9D80C:
|
||||
/* 005FC 80B9D80C 3C0A80BA */ lui $t2, %hi(D_80B9EC30) ## $t2 = 80BA0000
|
||||
/* 00600 80B9D810 254AEC30 */ addiu $t2, $t2, %lo(D_80B9EC30) ## $t2 = 80B9EC30
|
||||
/* 00604 80B9D814 14EA0006 */ bne $a3, $t2, .L80B9D830
|
||||
/* 00608 80B9D818 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0060C 80B9D81C 8E0B0004 */ lw $t3, 0x0004($s0) ## 00000004
|
||||
/* 00610 80B9D820 240D0004 */ addiu $t5, $zero, 0x0004 ## $t5 = 00000004
|
||||
/* 00614 80B9D824 A20D001F */ sb $t5, 0x001F($s0) ## 0000001F
|
||||
/* 00618 80B9D828 356C0001 */ ori $t4, $t3, 0x0001 ## $t4 = 00000001
|
||||
/* 0061C 80B9D82C AE0C0004 */ sw $t4, 0x0004($s0) ## 00000004
|
||||
.L80B9D830:
|
||||
/* 00620 80B9D830 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
|
||||
/* 00624 80B9D834 240E00FF */ addiu $t6, $zero, 0x00FF ## $t6 = 000000FF
|
||||
/* 00628 80B9D838 A20E00AE */ sb $t6, 0x00AE($s0) ## 000000AE
|
||||
/* 0062C 80B9D83C 000FC1C3 */ sra $t8, $t7, 7
|
||||
/* 00630 80B9D840 33190001 */ andi $t9, $t8, 0x0001 ## $t9 = 00000000
|
||||
/* 00634 80B9D844 13200016 */ beq $t9, $zero, .L80B9D8A0
|
||||
/* 00638 80B9D848 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 0063C 80B9D84C 0C2E7536 */ jal func_80B9D4D8
|
||||
/* 00640 80B9D850 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 00644 80B9D854 14400012 */ bne $v0, $zero, .L80B9D8A0
|
||||
/* 00648 80B9D858 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
/* 0064C 80B9D85C 3C0480BA */ lui $a0, %hi(D_80B9EE54) ## $a0 = 80BA0000
|
||||
/* 00650 80B9D860 2484EE54 */ addiu $a0, $a0, %lo(D_80B9EE54) ## $a0 = 80B9EE54
|
||||
/* 00654 80B9D864 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00658 80B9D868 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 0065C 80B9D86C 3C0480BA */ lui $a0, %hi(D_80B9EE5C) ## $a0 = 80BA0000
|
||||
/* 00660 80B9D870 3C0580BA */ lui $a1, %hi(D_80B9EE78) ## $a1 = 80BA0000
|
||||
/* 00664 80B9D874 24A5EE78 */ addiu $a1, $a1, %lo(D_80B9EE78) ## $a1 = 80B9EE78
|
||||
/* 00668 80B9D878 2484EE5C */ addiu $a0, $a0, %lo(D_80B9EE5C) ## $a0 = 80B9EE5C
|
||||
/* 0066C 80B9D87C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00670 80B9D880 240602DC */ addiu $a2, $zero, 0x02DC ## $a2 = 000002DC
|
||||
/* 00674 80B9D884 3C0480BA */ lui $a0, %hi(D_80B9EE8C) ## $a0 = 80BA0000
|
||||
/* 00678 80B9D888 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0067C 80B9D88C 2484EE8C */ addiu $a0, $a0, %lo(D_80B9EE8C) ## $a0 = 80B9EE8C
|
||||
/* 00680 80B9D890 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 00684 80B9D894 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
/* 00688 80B9D898 3109FF7F */ andi $t1, $t0, 0xFF7F ## $t1 = 00000000
|
||||
/* 0068C 80B9D89C A609001C */ sh $t1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D8A0:
|
||||
/* 00690 80B9D8A0 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00694 80B9D8A4 3C0C80BA */ lui $t4, %hi(D_80B9EC20) ## $t4 = 80BA0000
|
||||
/* 00698 80B9D8A8 258CEC20 */ addiu $t4, $t4, %lo(D_80B9EC20) ## $t4 = 80B9EC20
|
||||
/* 0069C 80B9D8AC 000551C3 */ sra $t2, $a1, 7
|
||||
/* 006A0 80B9D8B0 314B0001 */ andi $t3, $t2, 0x0001 ## $t3 = 00000000
|
||||
/* 006A4 80B9D8B4 11600005 */ beq $t3, $zero, .L80B9D8CC
|
||||
/* 006A8 80B9D8B8 00000000 */ nop
|
||||
/* 006AC 80B9D8BC 0C2E77E3 */ jal func_80B9DF8C
|
||||
/* 006B0 80B9D8C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 006B4 80B9D8C4 1000002F */ beq $zero, $zero, .L80B9D984
|
||||
/* 006B8 80B9D8C8 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D8CC:
|
||||
/* 006BC 80B9D8CC 10EC0004 */ beq $a3, $t4, .L80B9D8E0
|
||||
/* 006C0 80B9D8D0 3C0D80BA */ lui $t5, %hi(D_80B9EC24) ## $t5 = 80BA0000
|
||||
/* 006C4 80B9D8D4 25ADEC24 */ addiu $t5, $t5, %lo(D_80B9EC24) ## $t5 = 80B9EC24
|
||||
/* 006C8 80B9D8D8 14ED000C */ bne $a3, $t5, .L80B9D90C
|
||||
/* 006CC 80B9D8DC 3C0F80BA */ lui $t7, %hi(D_80B9EC28) ## $t7 = 80BA0000
|
||||
.L80B9D8E0:
|
||||
/* 006D0 80B9D8E0 8FAE0030 */ lw $t6, 0x0030($sp)
|
||||
/* 006D4 80B9D8E4 11C00005 */ beq $t6, $zero, .L80B9D8FC
|
||||
/* 006D8 80B9D8E8 00000000 */ nop
|
||||
/* 006DC 80B9D8EC 0C2E772C */ jal func_80B9DCB0
|
||||
/* 006E0 80B9D8F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 006E4 80B9D8F4 10000003 */ beq $zero, $zero, .L80B9D904
|
||||
/* 006E8 80B9D8F8 00000000 */ nop
|
||||
.L80B9D8FC:
|
||||
/* 006EC 80B9D8FC 0C2E7692 */ jal func_80B9DA48
|
||||
/* 006F0 80B9D900 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9D904:
|
||||
/* 006F4 80B9D904 1000001F */ beq $zero, $zero, .L80B9D984
|
||||
/* 006F8 80B9D908 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D90C:
|
||||
/* 006FC 80B9D90C 25EFEC28 */ addiu $t7, $t7, %lo(D_80B9EC28) ## $t7 = FFFFEC28
|
||||
/* 00700 80B9D910 14EF000C */ bne $a3, $t7, .L80B9D944
|
||||
/* 00704 80B9D914 3C1980BA */ lui $t9, %hi(D_80B9EC2C) ## $t9 = 80BA0000
|
||||
/* 00708 80B9D918 8FB80030 */ lw $t8, 0x0030($sp)
|
||||
/* 0070C 80B9D91C 13000005 */ beq $t8, $zero, .L80B9D934
|
||||
/* 00710 80B9D920 00000000 */ nop
|
||||
/* 00714 80B9D924 0C2E7840 */ jal func_80B9E100
|
||||
/* 00718 80B9D928 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0071C 80B9D92C 10000003 */ beq $zero, $zero, .L80B9D93C
|
||||
/* 00720 80B9D930 00000000 */ nop
|
||||
.L80B9D934:
|
||||
/* 00724 80B9D934 0C2E77FC */ jal func_80B9DFF0
|
||||
/* 00728 80B9D938 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9D93C:
|
||||
/* 0072C 80B9D93C 10000011 */ beq $zero, $zero, .L80B9D984
|
||||
/* 00730 80B9D940 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D944:
|
||||
/* 00734 80B9D944 2739EC2C */ addiu $t9, $t9, %lo(D_80B9EC2C) ## $t9 = FFFFEC2C
|
||||
/* 00738 80B9D948 10F90004 */ beq $a3, $t9, .L80B9D95C
|
||||
/* 0073C 80B9D94C 3C0880BA */ lui $t0, %hi(D_80B9EC30) ## $t0 = 80BA0000
|
||||
/* 00740 80B9D950 2508EC30 */ addiu $t0, $t0, %lo(D_80B9EC30) ## $t0 = 80B9EC30
|
||||
/* 00744 80B9D954 14E8000B */ bne $a3, $t0, .L80B9D984
|
||||
/* 00748 80B9D958 00000000 */ nop
|
||||
.L80B9D95C:
|
||||
/* 0074C 80B9D95C 8FA90030 */ lw $t1, 0x0030($sp)
|
||||
/* 00750 80B9D960 11200005 */ beq $t1, $zero, .L80B9D978
|
||||
/* 00754 80B9D964 00000000 */ nop
|
||||
/* 00758 80B9D968 0C2E791F */ jal func_80B9E47C
|
||||
/* 0075C 80B9D96C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00760 80B9D970 10000004 */ beq $zero, $zero, .L80B9D984
|
||||
/* 00764 80B9D974 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D978:
|
||||
/* 00768 80B9D978 0C2E78A0 */ jal func_80B9E280
|
||||
/* 0076C 80B9D97C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00770 80B9D980 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L80B9D984:
|
||||
/* 00774 80B9D984 3C0480BA */ lui $a0, %hi(D_80B9EE90) ## $a0 = 80BA0000
|
||||
/* 00778 80B9D988 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0077C 80B9D98C 2484EE90 */ addiu $a0, $a0, %lo(D_80B9EE90) ## $a0 = 80B9EE90
|
||||
/* 00780 80B9D990 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00784 80B9D994 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00788 80B9D998 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 0078C 80B9D99C 03E00008 */ jr $ra
|
||||
/* 00790 80B9D9A0 00000000 */ nop
|
|
@ -1,102 +0,0 @@
|
|||
.late_rodata
|
||||
glabel jtbl_80B9EF80
|
||||
.word L80B9E684
|
||||
.word L80B9E684
|
||||
.word L80B9E690
|
||||
.word L80B9E6C0
|
||||
.word L80B9E6C0
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
|
||||
.text
|
||||
glabel ObjSwitch_Update
|
||||
/* 013FC 80B9E60C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 01400 80B9E610 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 01404 80B9E614 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 01408 80B9E618 84820168 */ lh $v0, 0x0168($a0) ## 00000168
|
||||
/* 0140C 80B9E61C 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 01410 80B9E620 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 01414 80B9E624 18400002 */ blez $v0, .L80B9E630
|
||||
/* 01418 80B9E628 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 0141C 80B9E62C A48E0168 */ sh $t6, 0x0168($a0) ## 00000168
|
||||
.L80B9E630:
|
||||
/* 01420 80B9E630 84E2016C */ lh $v0, 0x016C($a3) ## 0000016C
|
||||
/* 01424 80B9E634 18400002 */ blez $v0, .L80B9E640
|
||||
/* 01428 80B9E638 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 0142C 80B9E63C A4EF016C */ sh $t7, 0x016C($a3) ## 0000016C
|
||||
.L80B9E640:
|
||||
/* 01430 80B9E640 AFA70020 */ sw $a3, 0x0020($sp)
|
||||
/* 01434 80B9E644 8CF90164 */ lw $t9, 0x0164($a3) ## 00000164
|
||||
/* 01438 80B9E648 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
|
||||
/* 0143C 80B9E64C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 01440 80B9E650 0320F809 */ jalr $ra, $t9
|
||||
/* 01444 80B9E654 00000000 */ nop
|
||||
/* 01448 80B9E658 8FA70020 */ lw $a3, 0x0020($sp)
|
||||
/* 0144C 80B9E65C 84F8001C */ lh $t8, 0x001C($a3) ## 0000001C
|
||||
/* 01450 80B9E660 33080007 */ andi $t0, $t8, 0x0007 ## $t0 = 00000000
|
||||
/* 01454 80B9E664 2D010005 */ sltiu $at, $t0, 0x0005
|
||||
/* 01458 80B9E668 10200032 */ beq $at, $zero, .L80B9E734
|
||||
/* 0145C 80B9E66C 00084080 */ sll $t0, $t0, 2
|
||||
/* 01460 80B9E670 3C0180BA */ lui $at, %hi(jtbl_80B9EF80) ## $at = 80BA0000
|
||||
/* 01464 80B9E674 00280821 */ addu $at, $at, $t0
|
||||
/* 01468 80B9E678 8C28EF80 */ lw $t0, %lo(jtbl_80B9EF80)($at)
|
||||
/* 0146C 80B9E67C 01000008 */ jr $t0
|
||||
/* 01470 80B9E680 00000000 */ nop
|
||||
glabel L80B9E684
|
||||
/* 01474 80B9E684 90E90160 */ lbu $t1, 0x0160($a3) ## 00000160
|
||||
/* 01478 80B9E688 1000002A */ beq $zero, $zero, .L80B9E734
|
||||
/* 0147C 80B9E68C A0E9017F */ sb $t1, 0x017F($a3) ## 0000017F
|
||||
glabel L80B9E690
|
||||
/* 01480 80B9E690 90E20191 */ lbu $v0, 0x0191($a3) ## 00000191
|
||||
/* 01484 80B9E694 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 01488 80B9E698 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 0148C 80B9E69C 304AFFFD */ andi $t2, $v0, 0xFFFD ## $t2 = 00000000
|
||||
/* 01490 80B9E6A0 A0EA0191 */ sb $t2, 0x0191($a3) ## 00000191
|
||||
/* 01494 80B9E6A4 02012821 */ addu $a1, $s0, $at
|
||||
/* 01498 80B9E6A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0149C 80B9E6AC 24E60180 */ addiu $a2, $a3, 0x0180 ## $a2 = 00000180
|
||||
/* 014A0 80B9E6B0 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 014A4 80B9E6B4 A0E2017F */ sb $v0, 0x017F($a3) ## 0000017F
|
||||
/* 014A8 80B9E6B8 1000001F */ beq $zero, $zero, .L80B9E738
|
||||
/* 014AC 80B9E6BC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
glabel L80B9E6C0
|
||||
/* 014B0 80B9E6C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014B4 80B9E6C4 0C023A62 */ jal Player_InCsMode
|
||||
/* 014B8 80B9E6C8 AFA70020 */ sw $a3, 0x0020($sp)
|
||||
/* 014BC 80B9E6CC 14400005 */ bne $v0, $zero, .L80B9E6E4
|
||||
/* 014C0 80B9E6D0 8FA70020 */ lw $a3, 0x0020($sp)
|
||||
/* 014C4 80B9E6D4 84E2016A */ lh $v0, 0x016A($a3) ## 0000016A
|
||||
/* 014C8 80B9E6D8 18400002 */ blez $v0, .L80B9E6E4
|
||||
/* 014CC 80B9E6DC 244BFFFF */ addiu $t3, $v0, 0xFFFF ## $t3 = FFFFFFFF
|
||||
/* 014D0 80B9E6E0 A4EB016A */ sh $t3, 0x016A($a3) ## 0000016A
|
||||
.L80B9E6E4:
|
||||
/* 014D4 80B9E6E4 90E20191 */ lbu $v0, 0x0191($a3) ## 00000191
|
||||
/* 014D8 80B9E6E8 84ED016A */ lh $t5, 0x016A($a3) ## 0000016A
|
||||
/* 014DC 80B9E6EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014E0 80B9E6F0 304CFFFD */ andi $t4, $v0, 0xFFFD ## $t4 = 00000000
|
||||
/* 014E4 80B9E6F4 A0EC0191 */ sb $t4, 0x0191($a3) ## 00000191
|
||||
/* 014E8 80B9E6F8 1DA00008 */ bgtz $t5, .L80B9E71C
|
||||
/* 014EC 80B9E6FC A0E2017F */ sb $v0, 0x017F($a3) ## 0000017F
|
||||
/* 014F0 80B9E700 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 014F4 80B9E704 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 014F8 80B9E708 02012821 */ addu $a1, $s0, $at
|
||||
/* 014FC 80B9E70C 24E60180 */ addiu $a2, $a3, 0x0180 ## $a2 = 00000180
|
||||
/* 01500 80B9E710 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 01504 80B9E714 AFA70020 */ sw $a3, 0x0020($sp)
|
||||
/* 01508 80B9E718 8FA70020 */ lw $a3, 0x0020($sp)
|
||||
.L80B9E71C:
|
||||
/* 0150C 80B9E71C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 01510 80B9E720 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 01514 80B9E724 02012821 */ addu $a1, $s0, $at
|
||||
/* 01518 80B9E728 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0151C 80B9E72C 0C017713 */ jal CollisionCheck_SetOC
|
||||
## CollisionCheck_setOT
|
||||
/* 01520 80B9E730 24E60180 */ addiu $a2, $a3, 0x0180 ## $a2 = 00000180
|
||||
.L80B9E734:
|
||||
/* 01524 80B9E734 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E738:
|
||||
/* 01528 80B9E738 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0152C 80B9E73C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 01530 80B9E740 03E00008 */ jr $ra
|
||||
/* 01534 80B9E744 00000000 */ nop
|
|
@ -1,36 +0,0 @@
|
|||
glabel func_80B9D210
|
||||
/* 00000 80B9D210 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00004 80B9D214 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00008 80B9D218 AFA40020 */ sw $a0, 0x0020($sp)
|
||||
/* 0000C 80B9D21C AFA60028 */ sw $a2, 0x0028($sp)
|
||||
/* 00010 80B9D220 87A4002A */ lh $a0, 0x002A($sp)
|
||||
/* 00014 80B9D224 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 00018 80B9D228 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 0001C 80B9D22C 87A4002A */ lh $a0, 0x002A($sp)
|
||||
/* 00020 80B9D230 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 00024 80B9D234 E7A0001C */ swc1 $f0, 0x001C($sp)
|
||||
/* 00028 80B9D238 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 0002C 80B9D23C C7A2001C */ lwc1 $f2, 0x001C($sp)
|
||||
/* 00030 80B9D240 8FA20020 */ lw $v0, 0x0020($sp)
|
||||
/* 00034 80B9D244 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
|
||||
/* 00038 80B9D248 C4A80000 */ lwc1 $f8, 0x0000($a1) ## 00000000
|
||||
/* 0003C 80B9D24C 46022182 */ mul.s $f6, $f4, $f2
|
||||
/* 00040 80B9D250 00000000 */ nop
|
||||
/* 00044 80B9D254 46004282 */ mul.s $f10, $f8, $f0
|
||||
/* 00048 80B9D258 460A3400 */ add.s $f16, $f6, $f10
|
||||
/* 0004C 80B9D25C E4500000 */ swc1 $f16, 0x0000($v0) ## 00000000
|
||||
/* 00050 80B9D260 C4B20004 */ lwc1 $f18, 0x0004($a1) ## 00000004
|
||||
/* 00054 80B9D264 E4520004 */ swc1 $f18, 0x0004($v0) ## 00000004
|
||||
/* 00058 80B9D268 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
|
||||
/* 0005C 80B9D26C C4A60000 */ lwc1 $f6, 0x0000($a1) ## 00000000
|
||||
/* 00060 80B9D270 46002202 */ mul.s $f8, $f4, $f0
|
||||
/* 00064 80B9D274 00000000 */ nop
|
||||
/* 00068 80B9D278 46023282 */ mul.s $f10, $f6, $f2
|
||||
/* 0006C 80B9D27C 460A4401 */ sub.s $f16, $f8, $f10
|
||||
/* 00070 80B9D280 E4500008 */ swc1 $f16, 0x0008($v0) ## 00000008
|
||||
/* 00074 80B9D284 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00078 80B9D288 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 0007C 80B9D28C 03E00008 */ jr $ra
|
||||
/* 00080 80B9D290 00000000 */ nop
|
|
@ -1,50 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B9EE00
|
||||
.asciz "Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EE40
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80B9D294
|
||||
/* 00084 80B9D294 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00088 80B9D298 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 0008C 80B9D29C AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00090 80B9D2A0 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00094 80B9D2A4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00098 80B9D2A8 AFA60040 */ sw $a2, 0x0040($sp)
|
||||
/* 0009C 80B9D2AC AFA00030 */ sw $zero, 0x0030($sp)
|
||||
/* 000A0 80B9D2B0 0C010D20 */ jal DynaPolyInfo_SetActorMove
|
||||
|
||||
/* 000A4 80B9D2B4 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000
|
||||
/* 000A8 80B9D2B8 8FA40040 */ lw $a0, 0x0040($sp)
|
||||
/* 000AC 80B9D2BC 0C010620 */ jal DynaPolyInfo_Alloc
|
||||
|
||||
/* 000B0 80B9D2C0 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF8
|
||||
/* 000B4 80B9D2C4 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 000B8 80B9D2C8 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 000BC 80B9D2CC 8FA70030 */ lw $a3, 0x0030($sp)
|
||||
/* 000C0 80B9D2D0 0C00FA9D */ jal DynaPolyInfo_RegisterActor
|
||||
## DynaPolyInfo_setActor
|
||||
/* 000C4 80B9D2D4 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
|
||||
/* 000C8 80B9D2D8 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
|
||||
/* 000CC 80B9D2DC 1441000A */ bne $v0, $at, .L80B9D308
|
||||
/* 000D0 80B9D2E0 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
|
||||
/* 000D4 80B9D2E4 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 000D8 80B9D2E8 3C0480BA */ lui $a0, %hi(D_80B9EE00) ## $a0 = 80BA0000
|
||||
/* 000DC 80B9D2EC 3C0580BA */ lui $a1, %hi(D_80B9EE40) ## $a1 = 80BA0000
|
||||
/* 000E0 80B9D2F0 86070000 */ lh $a3, 0x0000($s0) ## 00000000
|
||||
/* 000E4 80B9D2F4 24A5EE40 */ addiu $a1, $a1, %lo(D_80B9EE40) ## $a1 = 80B9EE40
|
||||
/* 000E8 80B9D2F8 2484EE00 */ addiu $a0, $a0, %lo(D_80B9EE00) ## $a0 = 80B9EE00
|
||||
/* 000EC 80B9D2FC 24060213 */ addiu $a2, $zero, 0x0213 ## $a2 = 00000213
|
||||
/* 000F0 80B9D300 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 000F4 80B9D304 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
.L80B9D308:
|
||||
/* 000F8 80B9D308 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 000FC 80B9D30C 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00100 80B9D310 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00104 80B9D314 03E00008 */ jr $ra
|
||||
/* 00108 80B9D318 00000000 */ nop
|
|
@ -1,40 +0,0 @@
|
|||
glabel func_80B9D31C
|
||||
/* 0010C 80B9D31C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 00110 80B9D320 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00114 80B9D324 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00118 80B9D328 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 0011C 80B9D32C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00120 80B9D330 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00124 80B9D334 26050180 */ addiu $a1, $s0, 0x0180 ## $a1 = 00000180
|
||||
/* 00128 80B9D338 AFA60038 */ sw $a2, 0x0038($sp)
|
||||
/* 0012C 80B9D33C 0C016EFE */ jal Collider_InitJntSph
|
||||
/* 00130 80B9D340 AFA50028 */ sw $a1, 0x0028($sp)
|
||||
/* 00134 80B9D344 260E01A0 */ addiu $t6, $s0, 0x01A0 ## $t6 = 000001A0
|
||||
/* 00138 80B9D348 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 0013C 80B9D34C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 00140 80B9D350 8FA50028 */ lw $a1, 0x0028($sp)
|
||||
/* 00144 80B9D354 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00148 80B9D358 0C017014 */ jal Collider_SetJntSph
|
||||
/* 0014C 80B9D35C 8FA70038 */ lw $a3, 0x0038($sp)
|
||||
/* 00150 80B9D360 C60400BC */ lwc1 $f4, 0x00BC($s0) ## 000000BC
|
||||
/* 00154 80B9D364 C6060054 */ lwc1 $f6, 0x0054($s0) ## 00000054
|
||||
/* 00158 80B9D368 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 0015C 80B9D36C C60C0024 */ lwc1 $f12, 0x0024($s0) ## 00000024
|
||||
/* 00160 80B9D370 46062202 */ mul.s $f8, $f4, $f6
|
||||
/* 00164 80B9D374 8E06002C */ lw $a2, 0x002C($s0) ## 0000002C
|
||||
/* 00168 80B9D378 260700B4 */ addiu $a3, $s0, 0x00B4 ## $a3 = 000000B4
|
||||
/* 0016C 80B9D37C 0C0345A5 */ jal func_800D1694
|
||||
/* 00170 80B9D380 46085380 */ add.s $f14, $f10, $f8
|
||||
/* 00174 80B9D384 C60C0050 */ lwc1 $f12, 0x0050($s0) ## 00000050
|
||||
/* 00178 80B9D388 C60E0054 */ lwc1 $f14, 0x0054($s0) ## 00000054
|
||||
/* 0017C 80B9D38C 8E060058 */ lw $a2, 0x0058($s0) ## 00000058
|
||||
/* 00180 80B9D390 0C0342A3 */ jal Matrix_Scale
|
||||
/* 00184 80B9D394 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 00188 80B9D398 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
|
||||
/* 0018C 80B9D39C 0C018A29 */ jal func_800628A4
|
||||
/* 00190 80B9D3A0 8FA50028 */ lw $a1, 0x0028($sp)
|
||||
/* 00194 80B9D3A4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00198 80B9D3A8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0019C 80B9D3AC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 001A0 80B9D3B0 03E00008 */ jr $ra
|
||||
/* 001A4 80B9D3B4 00000000 */ nop
|
|
@ -1,76 +0,0 @@
|
|||
glabel func_80B9D3B8
|
||||
/* 001A8 80B9D3B8 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
|
||||
/* 001AC 80B9D3BC AFB50034 */ sw $s5, 0x0034($sp)
|
||||
/* 001B0 80B9D3C0 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000
|
||||
/* 001B4 80B9D3C4 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 001B8 80B9D3C8 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 001BC 80B9D3CC 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 001C0 80B9D3D0 AFBF0044 */ sw $ra, 0x0044($sp)
|
||||
/* 001C4 80B9D3D4 AFB60038 */ sw $s6, 0x0038($sp)
|
||||
/* 001C8 80B9D3D8 26A50180 */ addiu $a1, $s5, 0x0180 ## $a1 = 00000180
|
||||
/* 001CC 80B9D3DC 00C0B025 */ or $s6, $a2, $zero ## $s6 = 00000000
|
||||
/* 001D0 80B9D3E0 AFBE0040 */ sw $s8, 0x0040($sp)
|
||||
/* 001D4 80B9D3E4 AFB7003C */ sw $s7, 0x003C($sp)
|
||||
/* 001D8 80B9D3E8 AFB40030 */ sw $s4, 0x0030($sp)
|
||||
/* 001DC 80B9D3EC AFB3002C */ sw $s3, 0x002C($sp)
|
||||
/* 001E0 80B9D3F0 AFB20028 */ sw $s2, 0x0028($sp)
|
||||
/* 001E4 80B9D3F4 AFB10024 */ sw $s1, 0x0024($sp)
|
||||
/* 001E8 80B9D3F8 0C0171F8 */ jal Collider_InitTris
|
||||
/* 001EC 80B9D3FC AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 001F0 80B9D400 26AE01A0 */ addiu $t6, $s5, 0x01A0 ## $t6 = 000001A0
|
||||
/* 001F4 80B9D404 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 001F8 80B9D408 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 001FC 80B9D40C 8FA50054 */ lw $a1, 0x0054($sp)
|
||||
/* 00200 80B9D410 02A03025 */ or $a2, $s5, $zero ## $a2 = 00000000
|
||||
/* 00204 80B9D414 0C0172EB */ jal Collider_SetTris
|
||||
/* 00208 80B9D418 02C03825 */ or $a3, $s6, $zero ## $a3 = 00000000
|
||||
/* 0020C 80B9D41C 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
|
||||
/* 00210 80B9D420 26B30024 */ addiu $s3, $s5, 0x0024 ## $s3 = 00000024
|
||||
/* 00214 80B9D424 27BE0064 */ addiu $s8, $sp, 0x0064 ## $s8 = FFFFFFDC
|
||||
/* 00218 80B9D428 27B70058 */ addiu $s7, $sp, 0x0058 ## $s7 = FFFFFFD0
|
||||
/* 0021C 80B9D42C 27B4007C */ addiu $s4, $sp, 0x007C ## $s4 = FFFFFFF4
|
||||
/* 00220 80B9D430 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
|
||||
.L80B9D434:
|
||||
/* 00224 80B9D434 27B00058 */ addiu $s0, $sp, 0x0058 ## $s0 = FFFFFFD0
|
||||
.L80B9D438:
|
||||
/* 00228 80B9D438 8ECF000C */ lw $t7, 0x000C($s6) ## 0000000C
|
||||
/* 0022C 80B9D43C 0012C100 */ sll $t8, $s2, 4
|
||||
/* 00230 80B9D440 0312C023 */ subu $t8, $t8, $s2
|
||||
/* 00234 80B9D444 0018C080 */ sll $t8, $t8, 2
|
||||
/* 00238 80B9D448 01F8C821 */ addu $t9, $t7, $t8
|
||||
/* 0023C 80B9D44C 03312821 */ addu $a1, $t9, $s1
|
||||
/* 00240 80B9D450 24A50018 */ addiu $a1, $a1, 0x0018 ## $a1 = 00000018
|
||||
/* 00244 80B9D454 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFD0
|
||||
/* 00248 80B9D458 0C2E7484 */ jal func_80B9D210
|
||||
/* 0024C 80B9D45C 86A60016 */ lh $a2, 0x0016($s5) ## 00000016
|
||||
/* 00250 80B9D460 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFD0
|
||||
/* 00254 80B9D464 02602825 */ or $a1, $s3, $zero ## $a1 = 00000024
|
||||
/* 00258 80B9D468 0C01DFA7 */ jal Math_Vec3f_Sum
|
||||
## Vec3f_Add
|
||||
/* 0025C 80B9D46C 02003025 */ or $a2, $s0, $zero ## $a2 = FFFFFFD0
|
||||
/* 00260 80B9D470 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFFDC
|
||||
/* 00264 80B9D474 1614FFF0 */ bne $s0, $s4, .L80B9D438
|
||||
/* 00268 80B9D478 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
|
||||
/* 0026C 80B9D47C 27A80070 */ addiu $t0, $sp, 0x0070 ## $t0 = FFFFFFE8
|
||||
/* 00270 80B9D480 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 00274 80B9D484 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00278 80B9D488 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
|
||||
/* 0027C 80B9D48C 02E03025 */ or $a2, $s7, $zero ## $a2 = FFFFFFD0
|
||||
/* 00280 80B9D490 0C0189E8 */ jal func_800627A0
|
||||
/* 00284 80B9D494 03C03825 */ or $a3, $s8, $zero ## $a3 = FFFFFFDC
|
||||
/* 00288 80B9D498 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000001
|
||||
/* 0028C 80B9D49C 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00290 80B9D4A0 5641FFE4 */ bnel $s2, $at, .L80B9D434
|
||||
/* 00294 80B9D4A4 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
|
||||
/* 00298 80B9D4A8 8FBF0044 */ lw $ra, 0x0044($sp)
|
||||
/* 0029C 80B9D4AC 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 002A0 80B9D4B0 8FB10024 */ lw $s1, 0x0024($sp)
|
||||
/* 002A4 80B9D4B4 8FB20028 */ lw $s2, 0x0028($sp)
|
||||
/* 002A8 80B9D4B8 8FB3002C */ lw $s3, 0x002C($sp)
|
||||
/* 002AC 80B9D4BC 8FB40030 */ lw $s4, 0x0030($sp)
|
||||
/* 002B0 80B9D4C0 8FB50034 */ lw $s5, 0x0034($sp)
|
||||
/* 002B4 80B9D4C4 8FB60038 */ lw $s6, 0x0038($sp)
|
||||
/* 002B8 80B9D4C8 8FB7003C */ lw $s7, 0x003C($sp)
|
||||
/* 002BC 80B9D4CC 8FBE0040 */ lw $s8, 0x0040($sp)
|
||||
/* 002C0 80B9D4D0 03E00008 */ jr $ra
|
||||
/* 002C4 80B9D4D4 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000
|
|
@ -1,31 +0,0 @@
|
|||
glabel func_80B9D4D8
|
||||
/* 002C8 80B9D4D8 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 002CC 80B9D4DC 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 002D0 80B9D4E0 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
|
||||
/* 002D4 80B9D4E4 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 002D8 80B9D4E8 AFA40038 */ sw $a0, 0x0038($sp)
|
||||
/* 002DC 80B9D4EC C4A40024 */ lwc1 $f4, 0x0024($a1) ## 00000024
|
||||
/* 002E0 80B9D4F0 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24
|
||||
/* 002E4 80B9D4F4 2407011E */ addiu $a3, $zero, 0x011E ## $a3 = 0000011E
|
||||
/* 002E8 80B9D4F8 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 002EC 80B9D4FC C4A60028 */ lwc1 $f6, 0x0028($a1) ## 00000028
|
||||
/* 002F0 80B9D500 E7A60014 */ swc1 $f6, 0x0014($sp)
|
||||
/* 002F4 80B9D504 C4A8002C */ lwc1 $f8, 0x002C($a1) ## 0000002C
|
||||
/* 002F8 80B9D508 E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 002FC 80B9D50C 84AE0030 */ lh $t6, 0x0030($a1) ## 00000030
|
||||
/* 00300 80B9D510 AFAE001C */ sw $t6, 0x001C($sp)
|
||||
/* 00304 80B9D514 84AF0032 */ lh $t7, 0x0032($a1) ## 00000032
|
||||
/* 00308 80B9D518 AFAF0020 */ sw $t7, 0x0020($sp)
|
||||
/* 0030C 80B9D51C 84B80034 */ lh $t8, 0x0034($a1) ## 00000034
|
||||
/* 00310 80B9D520 AFB80024 */ sw $t8, 0x0024($sp)
|
||||
/* 00314 80B9D524 84B9001C */ lh $t9, 0x001C($a1) ## 0000001C
|
||||
/* 00318 80B9D528 00194203 */ sra $t0, $t9, 8
|
||||
/* 0031C 80B9D52C 3109003F */ andi $t1, $t0, 0x003F ## $t1 = 00000000
|
||||
/* 00320 80B9D530 00095200 */ sll $t2, $t1, 8
|
||||
/* 00324 80B9D534 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00328 80B9D538 AFAA0028 */ sw $t2, 0x0028($sp)
|
||||
/* 0032C 80B9D53C 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 00330 80B9D540 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00334 80B9D544 03E00008 */ jr $ra
|
||||
/* 00338 80B9D548 00000000 */ nop
|
|
@ -1,51 +0,0 @@
|
|||
glabel func_80B9D54C
|
||||
/* 0033C 80B9D54C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00340 80B9D550 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00344 80B9D554 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00348 80B9D558 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0034C 80B9D55C AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00350 80B9D560 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00354 80B9D564 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00358 80B9D568 00052A03 */ sra $a1, $a1, 8
|
||||
/* 0035C 80B9D56C 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00360 80B9D570 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00364 80B9D574 50400004 */ beql $v0, $zero, .L80B9D588
|
||||
/* 00368 80B9D578 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 0036C 80B9D57C 10000019 */ beq $zero, $zero, .L80B9D5E4
|
||||
/* 00370 80B9D580 A200016E */ sb $zero, 0x016E($s0) ## 0000016E
|
||||
/* 00374 80B9D584 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
.L80B9D588:
|
||||
/* 00378 80B9D588 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 0037C 80B9D58C 00021903 */ sra $v1, $v0, 4
|
||||
/* 00380 80B9D590 30630007 */ andi $v1, $v1, 0x0007 ## $v1 = 00000000
|
||||
/* 00384 80B9D594 00022A03 */ sra $a1, $v0, 8
|
||||
/* 00388 80B9D598 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 0038C 80B9D59C 0C00B2DD */ jal Flags_SetSwitch
|
||||
|
||||
/* 00390 80B9D5A0 AFA30020 */ sw $v1, 0x0020($sp)
|
||||
/* 00394 80B9D5A4 8FA30020 */ lw $v1, 0x0020($sp)
|
||||
/* 00398 80B9D5A8 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 0039C 80B9D5AC 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 003A0 80B9D5B0 10600003 */ beq $v1, $zero, .L80B9D5C0
|
||||
/* 003A4 80B9D5B4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 003A8 80B9D5B8 14610005 */ bne $v1, $at, .L80B9D5D0
|
||||
/* 003AC 80B9D5BC 24064807 */ addiu $a2, $zero, 0x4807 ## $a2 = 00004807
|
||||
.L80B9D5C0:
|
||||
/* 003B0 80B9D5C0 0C0201AF */ jal func_800806BC
|
||||
/* 003B4 80B9D5C4 24064802 */ addiu $a2, $zero, 0x4802 ## $a2 = 00004802
|
||||
/* 003B8 80B9D5C8 10000005 */ beq $zero, $zero, .L80B9D5E0
|
||||
/* 003BC 80B9D5CC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
.L80B9D5D0:
|
||||
/* 003C0 80B9D5D0 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 003C4 80B9D5D4 0C0201AF */ jal func_800806BC
|
||||
/* 003C8 80B9D5D8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 003CC 80B9D5DC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
.L80B9D5E0:
|
||||
/* 003D0 80B9D5E0 A20E016E */ sb $t6, 0x016E($s0) ## 0000016E
|
||||
.L80B9D5E4:
|
||||
/* 003D4 80B9D5E4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 003D8 80B9D5E8 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 003DC 80B9D5EC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 003E0 80B9D5F0 03E00008 */ jr $ra
|
||||
/* 003E4 80B9D5F4 00000000 */ nop
|
|
@ -1,39 +0,0 @@
|
|||
glabel func_80B9D5F8
|
||||
/* 003E8 80B9D5F8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 003EC 80B9D5FC AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 003F0 80B9D600 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 003F4 80B9D604 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 003F8 80B9D608 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 003FC 80B9D60C A080016E */ sb $zero, 0x016E($a0) ## 0000016E
|
||||
/* 00400 80B9D610 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00404 80B9D614 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00408 80B9D618 00052A03 */ sra $a1, $a1, 8
|
||||
/* 0040C 80B9D61C 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00410 80B9D620 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00414 80B9D624 50400012 */ beql $v0, $zero, .L80B9D670
|
||||
/* 00418 80B9D628 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 0041C 80B9D62C 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00420 80B9D630 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00424 80B9D634 00052A03 */ sra $a1, $a1, 8
|
||||
/* 00428 80B9D638 0C00B2ED */ jal Flags_UnsetSwitch
|
||||
|
||||
/* 0042C 80B9D63C 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00430 80B9D640 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00434 80B9D644 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00438 80B9D648 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 0043C 80B9D64C 000E7903 */ sra $t7, $t6, 4
|
||||
/* 00440 80B9D650 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 00444 80B9D654 17010005 */ bne $t8, $at, .L80B9D66C
|
||||
/* 00448 80B9D658 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 0044C 80B9D65C 0C0201AF */ jal func_800806BC
|
||||
/* 00450 80B9D660 24064807 */ addiu $a2, $zero, 0x4807 ## $a2 = 00004807
|
||||
/* 00454 80B9D664 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
|
||||
/* 00458 80B9D668 A219016E */ sb $t9, 0x016E($s0) ## 0000016E
|
||||
.L80B9D66C:
|
||||
/* 0045C 80B9D66C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9D670:
|
||||
/* 00460 80B9D670 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00464 80B9D674 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00468 80B9D678 03E00008 */ jr $ra
|
||||
/* 0046C 80B9D67C 00000000 */ nop
|
|
@ -1,18 +0,0 @@
|
|||
glabel func_80B9D680
|
||||
/* 00470 80B9D680 908E0178 */ lbu $t6, 0x0178($a0) ## 00000178
|
||||
/* 00474 80B9D684 90990179 */ lbu $t9, 0x0179($a0) ## 00000179
|
||||
/* 00478 80B9D688 908A017A */ lbu $t2, 0x017A($a0) ## 0000017A
|
||||
/* 0047C 80B9D68C 908D017B */ lbu $t5, 0x017B($a0) ## 0000017B
|
||||
/* 00480 80B9D690 25CFFFFF */ addiu $t7, $t6, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 00484 80B9D694 31F8007F */ andi $t8, $t7, 0x007F ## $t8 = 0000007F
|
||||
/* 00488 80B9D698 27280001 */ addiu $t0, $t9, 0x0001 ## $t0 = 00000001
|
||||
/* 0048C 80B9D69C 254B0001 */ addiu $t3, $t2, 0x0001 ## $t3 = 00000001
|
||||
/* 00490 80B9D6A0 25AEFFFF */ addiu $t6, $t5, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00494 80B9D6A4 3109007F */ andi $t1, $t0, 0x007F ## $t1 = 00000001
|
||||
/* 00498 80B9D6A8 316C007F */ andi $t4, $t3, 0x007F ## $t4 = 00000001
|
||||
/* 0049C 80B9D6AC 31CF007F */ andi $t7, $t6, 0x007F ## $t7 = 0000007F
|
||||
/* 004A0 80B9D6B0 A0980178 */ sb $t8, 0x0178($a0) ## 00000178
|
||||
/* 004A4 80B9D6B4 A0890179 */ sb $t1, 0x0179($a0) ## 00000179
|
||||
/* 004A8 80B9D6B8 A08C017A */ sb $t4, 0x017A($a0) ## 0000017A
|
||||
/* 004AC 80B9D6BC 03E00008 */ jr $ra
|
||||
/* 004B0 80B9D6C0 A08F017B */ sb $t7, 0x017B($a0) ## 0000017B
|
|
@ -1,13 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80B9EF68
|
||||
.word 0x3E28F5C3
|
||||
|
||||
.text
|
||||
glabel func_80B9DA48
|
||||
/* 00838 80B9DA48 3C0180BA */ lui $at, %hi(D_80B9EF68) ## $at = 80BA0000
|
||||
/* 0083C 80B9DA4C C424EF68 */ lwc1 $f4, %lo(D_80B9EF68)($at)
|
||||
/* 00840 80B9DA50 3C0E80BA */ lui $t6, %hi(func_80B9DA64) ## $t6 = 80BA0000
|
||||
/* 00844 80B9DA54 25CEDA64 */ addiu $t6, $t6, %lo(func_80B9DA64) ## $t6 = 80B9DA64
|
||||
/* 00848 80B9DA58 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 0084C 80B9DA5C 03E00008 */ jr $ra
|
||||
/* 00850 80B9DA60 E4840054 */ swc1 $f4, 0x0054($a0) ## 00000054
|
|
@ -1,103 +0,0 @@
|
|||
glabel func_80B9DA64
|
||||
/* 00854 80B9DA64 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00858 80B9DA68 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0085C 80B9DA6C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00860 80B9DA70 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00864 80B9DA74 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 00868 80B9DA78 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 0086C 80B9DA7C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00870 80B9DA80 306E0007 */ andi $t6, $v1, 0x0007 ## $t6 = 00000000
|
||||
/* 00874 80B9DA84 14CE0016 */ bne $a2, $t6, .L80B9DAE0
|
||||
/* 00878 80B9DA88 00031103 */ sra $v0, $v1, 4
|
||||
/* 0087C 80B9DA8C 908F0191 */ lbu $t7, 0x0191($a0) ## 00000191
|
||||
/* 00880 80B9DA90 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00884 80B9DA94 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 00888 80B9DA98 31F80002 */ andi $t8, $t7, 0x0002 ## $t8 = 00000000
|
||||
/* 0088C 80B9DA9C 5300000B */ beql $t8, $zero, .L80B9DACC
|
||||
/* 00890 80B9DAA0 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00894 80B9DAA4 0C2E76F6 */ jal func_80B9DBD8
|
||||
/* 00898 80B9DAA8 00000000 */ nop
|
||||
/* 0089C 80B9DAAC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 008A0 80B9DAB0 0C2E7553 */ jal func_80B9D54C
|
||||
/* 008A4 80B9DAB4 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 008A8 80B9DAB8 92190191 */ lbu $t9, 0x0191($s0) ## 00000191
|
||||
/* 008AC 80B9DABC 3328FFFD */ andi $t0, $t9, 0xFFFD ## $t0 = 00000000
|
||||
/* 008B0 80B9DAC0 10000040 */ beq $zero, $zero, .L80B9DBC4
|
||||
/* 008B4 80B9DAC4 A2080191 */ sb $t0, 0x0191($s0) ## 00000191
|
||||
/* 008B8 80B9DAC8 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
.L80B9DACC:
|
||||
/* 008BC 80B9DACC 26060180 */ addiu $a2, $s0, 0x0180 ## $a2 = 00000180
|
||||
/* 008C0 80B9DAD0 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 008C4 80B9DAD4 00812821 */ addu $a1, $a0, $at
|
||||
/* 008C8 80B9DAD8 1000003B */ beq $zero, $zero, .L80B9DBC8
|
||||
/* 008CC 80B9DADC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DAE0:
|
||||
/* 008D0 80B9DAE0 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 008D4 80B9DAE4 10400009 */ beq $v0, $zero, .L80B9DB0C
|
||||
/* 008D8 80B9DAE8 00000000 */ nop
|
||||
/* 008DC 80B9DAEC 10460012 */ beq $v0, $a2, .L80B9DB38
|
||||
/* 008E0 80B9DAF0 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 008E4 80B9DAF4 1041001F */ beq $v0, $at, .L80B9DB74
|
||||
/* 008E8 80B9DAF8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 008EC 80B9DAFC 10410028 */ beq $v0, $at, .L80B9DBA0
|
||||
/* 008F0 80B9DB00 00000000 */ nop
|
||||
/* 008F4 80B9DB04 10000030 */ beq $zero, $zero, .L80B9DBC8
|
||||
/* 008F8 80B9DB08 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DB0C:
|
||||
/* 008FC 80B9DB0C 0C010D5B */ jal func_8004356C
|
||||
/* 00900 80B9DB10 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00904 80B9DB14 5040002C */ beql $v0, $zero, .L80B9DBC8
|
||||
/* 00908 80B9DB18 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 0090C 80B9DB1C 0C2E76F6 */ jal func_80B9DBD8
|
||||
/* 00910 80B9DB20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00914 80B9DB24 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00918 80B9DB28 0C2E7553 */ jal func_80B9D54C
|
||||
/* 0091C 80B9DB2C 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00920 80B9DB30 10000025 */ beq $zero, $zero, .L80B9DBC8
|
||||
/* 00924 80B9DB34 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DB38:
|
||||
/* 00928 80B9DB38 920A0160 */ lbu $t2, 0x0160($s0) ## 00000160
|
||||
/* 0092C 80B9DB3C 314B0002 */ andi $t3, $t2, 0x0002 ## $t3 = 00000000
|
||||
/* 00930 80B9DB40 51600021 */ beql $t3, $zero, .L80B9DBC8
|
||||
/* 00934 80B9DB44 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00938 80B9DB48 920C017F */ lbu $t4, 0x017F($s0) ## 0000017F
|
||||
/* 0093C 80B9DB4C 318D0002 */ andi $t5, $t4, 0x0002 ## $t5 = 00000000
|
||||
/* 00940 80B9DB50 55A0001D */ bnel $t5, $zero, .L80B9DBC8
|
||||
/* 00944 80B9DB54 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00948 80B9DB58 0C2E76F6 */ jal func_80B9DBD8
|
||||
/* 0094C 80B9DB5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00950 80B9DB60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00954 80B9DB64 0C2E7553 */ jal func_80B9D54C
|
||||
/* 00958 80B9DB68 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 0095C 80B9DB6C 10000016 */ beq $zero, $zero, .L80B9DBC8
|
||||
/* 00960 80B9DB70 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DB74:
|
||||
/* 00964 80B9DB74 0C010D6D */ jal func_800435B4
|
||||
/* 00968 80B9DB78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0096C 80B9DB7C 50400012 */ beql $v0, $zero, .L80B9DBC8
|
||||
/* 00970 80B9DB80 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00974 80B9DB84 0C2E76F6 */ jal func_80B9DBD8
|
||||
/* 00978 80B9DB88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0097C 80B9DB8C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00980 80B9DB90 0C2E7553 */ jal func_80B9D54C
|
||||
/* 00984 80B9DB94 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00988 80B9DB98 1000000B */ beq $zero, $zero, .L80B9DBC8
|
||||
/* 0098C 80B9DB9C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DBA0:
|
||||
/* 00990 80B9DBA0 0C010D6D */ jal func_800435B4
|
||||
/* 00994 80B9DBA4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00998 80B9DBA8 50400007 */ beql $v0, $zero, .L80B9DBC8
|
||||
/* 0099C 80B9DBAC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 009A0 80B9DBB0 0C2E76F6 */ jal func_80B9DBD8
|
||||
/* 009A4 80B9DBB4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 009A8 80B9DBB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 009AC 80B9DBBC 0C2E757E */ jal func_80B9D5F8
|
||||
/* 009B0 80B9DBC0 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
.L80B9DBC4:
|
||||
/* 009B4 80B9DBC4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DBC8:
|
||||
/* 009B8 80B9DBC8 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 009BC 80B9DBCC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 009C0 80B9DBD0 03E00008 */ jr $ra
|
||||
/* 009C4 80B9DBD4 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9DBD8
|
||||
/* 009C8 80B9DBD8 3C0E80BA */ lui $t6, %hi(func_80B9DBF0) ## $t6 = 80BA0000
|
||||
/* 009CC 80B9DBDC 25CEDBF0 */ addiu $t6, $t6, %lo(func_80B9DBF0) ## $t6 = 80B9DBF0
|
||||
/* 009D0 80B9DBE0 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 009D4 80B9DBE4 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 009D8 80B9DBE8 03E00008 */ jr $ra
|
||||
/* 009DC 80B9DBEC A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,60 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80B9EF6C
|
||||
.word 0x3D4AC083
|
||||
glabel D_80B9EF70
|
||||
.word 0x3C872B02
|
||||
|
||||
.text
|
||||
glabel func_80B9DBF0
|
||||
/* 009E0 80B9DBF0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 009E4 80B9DBF4 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 009E8 80B9DBF8 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 009EC 80B9DBFC AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 009F0 80B9DC00 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 009F4 80B9DC04 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 009F8 80B9DC08 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 009FC 80B9DC0C 000E7903 */ sra $t7, $t6, 4
|
||||
/* 00A00 80B9DC10 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 00A04 80B9DC14 1301000B */ beq $t8, $at, .L80B9DC44
|
||||
/* 00A08 80B9DC18 00000000 */ nop
|
||||
/* 00A0C 80B9DC1C 9099016E */ lbu $t9, 0x016E($a0) ## 0000016E
|
||||
/* 00A10 80B9DC20 13200008 */ beq $t9, $zero, .L80B9DC44
|
||||
/* 00A14 80B9DC24 00000000 */ nop
|
||||
/* 00A18 80B9DC28 0C016C66 */ jal func_8005B198
|
||||
/* 00A1C 80B9DC2C 00000000 */ nop
|
||||
/* 00A20 80B9DC30 92080002 */ lbu $t0, 0x0002($s0) ## 00000002
|
||||
/* 00A24 80B9DC34 10480003 */ beq $v0, $t0, .L80B9DC44
|
||||
/* 00A28 80B9DC38 00000000 */ nop
|
||||
/* 00A2C 80B9DC3C 8609016C */ lh $t1, 0x016C($s0) ## 0000016C
|
||||
/* 00A30 80B9DC40 1D200016 */ bgtz $t1, .L80B9DC9C
|
||||
.L80B9DC44:
|
||||
/* 00A34 80B9DC44 3C0180BA */ lui $at, %hi(D_80B9EF6C) ## $at = 80BA0000
|
||||
/* 00A38 80B9DC48 C426EF6C */ lwc1 $f6, %lo(D_80B9EF6C)($at)
|
||||
/* 00A3C 80B9DC4C C6040054 */ lwc1 $f4, 0x0054($s0) ## 00000054
|
||||
/* 00A40 80B9DC50 3C0180BA */ lui $at, %hi(D_80B9EF70) ## $at = 80BA0000
|
||||
/* 00A44 80B9DC54 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 00A48 80B9DC58 E6080054 */ swc1 $f8, 0x0054($s0) ## 00000054
|
||||
/* 00A4C 80B9DC5C C6100054 */ lwc1 $f16, 0x0054($s0) ## 00000054
|
||||
/* 00A50 80B9DC60 C42AEF70 */ lwc1 $f10, %lo(D_80B9EF70)($at)
|
||||
/* 00A54 80B9DC64 460A803E */ c.le.s $f16, $f10
|
||||
/* 00A58 80B9DC68 00000000 */ nop
|
||||
/* 00A5C 80B9DC6C 4502000C */ bc1fl .L80B9DCA0
|
||||
/* 00A60 80B9DC70 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00A64 80B9DC74 0C2E772C */ jal func_80B9DCB0
|
||||
/* 00A68 80B9DC78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A6C 80B9DC7C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A70 80B9DC80 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00A74 80B9DC84 24052815 */ addiu $a1, $zero, 0x2815 ## $a1 = 00002815
|
||||
/* 00A78 80B9DC88 C60C008C */ lwc1 $f12, 0x008C($s0) ## 0000008C
|
||||
/* 00A7C 80B9DC8C 24050078 */ addiu $a1, $zero, 0x0078 ## $a1 = 00000078
|
||||
/* 00A80 80B9DC90 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014
|
||||
/* 00A84 80B9DC94 0C02A800 */ jal func_800AA000
|
||||
/* 00A88 80B9DC98 2407000A */ addiu $a3, $zero, 0x000A ## $a3 = 0000000A
|
||||
.L80B9DC9C:
|
||||
/* 00A8C 80B9DC9C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DCA0:
|
||||
/* 00A90 80B9DCA0 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00A94 80B9DCA4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00A98 80B9DCA8 03E00008 */ jr $ra
|
||||
/* 00A9C 80B9DCAC 00000000 */ nop
|
|
@ -1,15 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80B9EF74
|
||||
.word 0x3C872B02
|
||||
|
||||
.text
|
||||
glabel func_80B9DCB0
|
||||
/* 00AA0 80B9DCB0 3C0180BA */ lui $at, %hi(D_80B9EF74) ## $at = 80BA0000
|
||||
/* 00AA4 80B9DCB4 C424EF74 */ lwc1 $f4, %lo(D_80B9EF74)($at)
|
||||
/* 00AA8 80B9DCB8 3C0F80BA */ lui $t7, %hi(func_80B9DCD4) ## $t7 = 80BA0000
|
||||
/* 00AAC 80B9DCBC 240E0006 */ addiu $t6, $zero, 0x0006 ## $t6 = 00000006
|
||||
/* 00AB0 80B9DCC0 25EFDCD4 */ addiu $t7, $t7, %lo(func_80B9DCD4) ## $t7 = 80B9DCD4
|
||||
/* 00AB4 80B9DCC4 A48E0168 */ sh $t6, 0x0168($a0) ## 00000168
|
||||
/* 00AB8 80B9DCC8 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164
|
||||
/* 00ABC 80B9DCCC 03E00008 */ jr $ra
|
||||
/* 00AC0 80B9DCD0 E4840054 */ swc1 $f4, 0x0054($a0) ## 00000054
|
|
@ -1,92 +0,0 @@
|
|||
glabel func_80B9DCD4
|
||||
/* 00AC4 80B9DCD4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00AC8 80B9DCD8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00ACC 80B9DCDC AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00AD0 80B9DCE0 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 00AD4 80B9DCE4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 00AD8 80B9DCE8 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00ADC 80B9DCEC 00031103 */ sra $v0, $v1, 4
|
||||
/* 00AE0 80B9DCF0 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 00AE4 80B9DCF4 1040000B */ beq $v0, $zero, .L80B9DD24
|
||||
/* 00AE8 80B9DCF8 00032A03 */ sra $a1, $v1, 8
|
||||
/* 00AEC 80B9DCFC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00AF0 80B9DD00 10410011 */ beq $v0, $at, .L80B9DD48
|
||||
/* 00AF4 80B9DD04 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00AF8 80B9DD08 1041001F */ beq $v0, $at, .L80B9DD88
|
||||
/* 00AFC 80B9DD0C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00B00 80B9DD10 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 00B04 80B9DD14 1041001C */ beq $v0, $at, .L80B9DD88
|
||||
/* 00B08 80B9DD18 00000000 */ nop
|
||||
/* 00B0C 80B9DD1C 1000003D */ beq $zero, $zero, .L80B9DE14
|
||||
/* 00B10 80B9DD20 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DD24:
|
||||
/* 00B14 80B9DD24 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00B18 80B9DD28 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00B1C 80B9DD2C AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00B20 80B9DD30 14400037 */ bne $v0, $zero, .L80B9DE10
|
||||
/* 00B24 80B9DD34 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00B28 80B9DD38 0C2E7788 */ jal func_80B9DE20
|
||||
/* 00B2C 80B9DD3C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00B30 80B9DD40 10000034 */ beq $zero, $zero, .L80B9DE14
|
||||
/* 00B34 80B9DD44 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DD48:
|
||||
/* 00B38 80B9DD48 90CE0160 */ lbu $t6, 0x0160($a2) ## 00000160
|
||||
/* 00B3C 80B9DD4C 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 00B40 80B9DD50 51E00030 */ beql $t7, $zero, .L80B9DE14
|
||||
/* 00B44 80B9DD54 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00B48 80B9DD58 90D8017F */ lbu $t8, 0x017F($a2) ## 0000017F
|
||||
/* 00B4C 80B9DD5C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00B50 80B9DD60 33190002 */ andi $t9, $t8, 0x0002 ## $t9 = 00000000
|
||||
/* 00B54 80B9DD64 5720002B */ bnel $t9, $zero, .L80B9DE14
|
||||
/* 00B58 80B9DD68 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00B5C 80B9DD6C 0C2E7788 */ jal func_80B9DE20
|
||||
/* 00B60 80B9DD70 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00B64 80B9DD74 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00B68 80B9DD78 0C2E757E */ jal func_80B9D5F8
|
||||
/* 00B6C 80B9DD7C 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00B70 80B9DD80 10000024 */ beq $zero, $zero, .L80B9DE14
|
||||
/* 00B74 80B9DD84 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DD88:
|
||||
/* 00B78 80B9DD88 0C010D6D */ jal func_800435B4
|
||||
/* 00B7C 80B9DD8C AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00B80 80B9DD90 1440001D */ bne $v0, $zero, .L80B9DE08
|
||||
/* 00B84 80B9DD94 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00B88 80B9DD98 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00B8C 80B9DD9C 0C023A62 */ jal Player_InCsMode
|
||||
/* 00B90 80B9DDA0 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00B94 80B9DDA4 14400018 */ bne $v0, $zero, .L80B9DE08
|
||||
/* 00B98 80B9DDA8 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00B9C 80B9DDAC 84C80168 */ lh $t0, 0x0168($a2) ## 00000168
|
||||
/* 00BA0 80B9DDB0 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00BA4 80B9DDB4 5D000017 */ bgtzl $t0, .L80B9DE14
|
||||
/* 00BA8 80B9DDB8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00BAC 80B9DDBC 0C2E7788 */ jal func_80B9DE20
|
||||
/* 00BB0 80B9DDC0 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00BB4 80B9DDC4 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00BB8 80B9DDC8 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00BBC 80B9DDCC 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00BC0 80B9DDD0 84C9001C */ lh $t1, 0x001C($a2) ## 0000001C
|
||||
/* 00BC4 80B9DDD4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00BC8 80B9DDD8 00095103 */ sra $t2, $t1, 4
|
||||
/* 00BCC 80B9DDDC 314B0007 */ andi $t3, $t2, 0x0007 ## $t3 = 00000000
|
||||
/* 00BD0 80B9DDE0 15610005 */ bne $t3, $at, .L80B9DDF8
|
||||
/* 00BD4 80B9DDE4 00000000 */ nop
|
||||
/* 00BD8 80B9DDE8 0C2E757E */ jal func_80B9D5F8
|
||||
/* 00BDC 80B9DDEC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00BE0 80B9DDF0 10000008 */ beq $zero, $zero, .L80B9DE14
|
||||
/* 00BE4 80B9DDF4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DDF8:
|
||||
/* 00BE8 80B9DDF8 0C2E7553 */ jal func_80B9D54C
|
||||
/* 00BEC 80B9DDFC 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00BF0 80B9DE00 10000004 */ beq $zero, $zero, .L80B9DE14
|
||||
/* 00BF4 80B9DE04 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DE08:
|
||||
/* 00BF8 80B9DE08 240C0006 */ addiu $t4, $zero, 0x0006 ## $t4 = 00000006
|
||||
/* 00BFC 80B9DE0C A4CC0168 */ sh $t4, 0x0168($a2) ## 00000168
|
||||
.L80B9DE10:
|
||||
/* 00C00 80B9DE10 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DE14:
|
||||
/* 00C04 80B9DE14 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00C08 80B9DE18 03E00008 */ jr $ra
|
||||
/* 00C0C 80B9DE1C 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9DE20
|
||||
/* 00C10 80B9DE20 3C0E80BA */ lui $t6, %hi(func_80B9DE38) ## $t6 = 80BA0000
|
||||
/* 00C14 80B9DE24 25CEDE38 */ addiu $t6, $t6, %lo(func_80B9DE38) ## $t6 = 80B9DE38
|
||||
/* 00C18 80B9DE28 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 00C1C 80B9DE2C AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 00C20 80B9DE30 03E00008 */ jr $ra
|
||||
/* 00C24 80B9DE34 A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,70 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80B9EF78
|
||||
.word 0x3D4AC083
|
||||
glabel D_80B9EF7C
|
||||
.word 0x3E28F5C3
|
||||
|
||||
.text
|
||||
glabel func_80B9DE38
|
||||
/* 00C28 80B9DE38 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00C2C 80B9DE3C AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00C30 80B9DE40 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00C34 80B9DE44 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00C38 80B9DE48 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 00C3C 80B9DE4C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00C40 80B9DE50 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00C44 80B9DE54 00031903 */ sra $v1, $v1, 4
|
||||
/* 00C48 80B9DE58 30630007 */ andi $v1, $v1, 0x0007 ## $v1 = 00000000
|
||||
/* 00C4C 80B9DE5C 00031C00 */ sll $v1, $v1, 16
|
||||
/* 00C50 80B9DE60 00031C03 */ sra $v1, $v1, 16
|
||||
/* 00C54 80B9DE64 10610003 */ beq $v1, $at, .L80B9DE74
|
||||
/* 00C58 80B9DE68 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 00C5C 80B9DE6C 1461000C */ bne $v1, $at, .L80B9DEA0
|
||||
/* 00C60 80B9DE70 00000000 */ nop
|
||||
.L80B9DE74:
|
||||
/* 00C64 80B9DE74 920E016E */ lbu $t6, 0x016E($s0) ## 0000016E
|
||||
/* 00C68 80B9DE78 11C00009 */ beq $t6, $zero, .L80B9DEA0
|
||||
/* 00C6C 80B9DE7C 00000000 */ nop
|
||||
/* 00C70 80B9DE80 0C016C66 */ jal func_8005B198
|
||||
/* 00C74 80B9DE84 A7A30026 */ sh $v1, 0x0026($sp)
|
||||
/* 00C78 80B9DE88 920F0002 */ lbu $t7, 0x0002($s0) ## 00000002
|
||||
/* 00C7C 80B9DE8C 87A30026 */ lh $v1, 0x0026($sp)
|
||||
/* 00C80 80B9DE90 104F0003 */ beq $v0, $t7, .L80B9DEA0
|
||||
/* 00C84 80B9DE94 00000000 */ nop
|
||||
/* 00C88 80B9DE98 8618016C */ lh $t8, 0x016C($s0) ## 0000016C
|
||||
/* 00C8C 80B9DE9C 1F00001A */ bgtz $t8, .L80B9DF08
|
||||
.L80B9DEA0:
|
||||
/* 00C90 80B9DEA0 3C0180BA */ lui $at, %hi(D_80B9EF78) ## $at = 80BA0000
|
||||
/* 00C94 80B9DEA4 C426EF78 */ lwc1 $f6, %lo(D_80B9EF78)($at)
|
||||
/* 00C98 80B9DEA8 C6040054 */ lwc1 $f4, 0x0054($s0) ## 00000054
|
||||
/* 00C9C 80B9DEAC 3C0180BA */ lui $at, %hi(D_80B9EF7C) ## $at = 80BA0000
|
||||
/* 00CA0 80B9DEB0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00CA4 80B9DEB4 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00CA8 80B9DEB8 E6080054 */ swc1 $f8, 0x0054($s0) ## 00000054
|
||||
/* 00CAC 80B9DEBC C430EF7C */ lwc1 $f16, %lo(D_80B9EF7C)($at)
|
||||
/* 00CB0 80B9DEC0 C60A0054 */ lwc1 $f10, 0x0054($s0) ## 00000054
|
||||
/* 00CB4 80B9DEC4 460A803E */ c.le.s $f16, $f10
|
||||
/* 00CB8 80B9DEC8 00000000 */ nop
|
||||
/* 00CBC 80B9DECC 4502000F */ bc1fl .L80B9DF0C
|
||||
/* 00CC0 80B9DED0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00CC4 80B9DED4 0C2E7692 */ jal func_80B9DA48
|
||||
/* 00CC8 80B9DED8 A7A30026 */ sh $v1, 0x0026($sp)
|
||||
/* 00CCC 80B9DEDC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00CD0 80B9DEE0 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00CD4 80B9DEE4 24052815 */ addiu $a1, $zero, 0x2815 ## $a1 = 00002815
|
||||
/* 00CD8 80B9DEE8 87A30026 */ lh $v1, 0x0026($sp)
|
||||
/* 00CDC 80B9DEEC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00CE0 80B9DEF0 24050078 */ addiu $a1, $zero, 0x0078 ## $a1 = 00000078
|
||||
/* 00CE4 80B9DEF4 14610004 */ bne $v1, $at, .L80B9DF08
|
||||
/* 00CE8 80B9DEF8 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014
|
||||
/* 00CEC 80B9DEFC C60C008C */ lwc1 $f12, 0x008C($s0) ## 0000008C
|
||||
/* 00CF0 80B9DF00 0C02A800 */ jal func_800AA000
|
||||
/* 00CF4 80B9DF04 2407000A */ addiu $a3, $zero, 0x000A ## $a3 = 0000000A
|
||||
.L80B9DF08:
|
||||
/* 00CF8 80B9DF08 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9DF0C:
|
||||
/* 00CFC 80B9DF0C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00D00 80B9DF10 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00D04 80B9DF14 03E00008 */ jr $ra
|
||||
/* 00D08 80B9DF18 00000000 */ nop
|
|
@ -1,32 +0,0 @@
|
|||
glabel func_80B9DF1C
|
||||
/* 00D0C 80B9DF1C 908E0191 */ lbu $t6, 0x0191($a0) ## 00000191
|
||||
/* 00D10 80B9DF20 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 00D14 80B9DF24 51E00017 */ beql $t7, $zero, .L80B9DF84
|
||||
/* 00D18 80B9DF28 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00D1C 80B9DF2C 9098017F */ lbu $t8, 0x017F($a0) ## 0000017F
|
||||
/* 00D20 80B9DF30 33190002 */ andi $t9, $t8, 0x0002 ## $t9 = 00000000
|
||||
/* 00D24 80B9DF34 57200013 */ bnel $t9, $zero, .L80B9DF84
|
||||
/* 00D28 80B9DF38 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00D2C 80B9DF3C 8C820188 */ lw $v0, 0x0188($a0) ## 00000188
|
||||
/* 00D30 80B9DF40 50400010 */ beql $v0, $zero, .L80B9DF84
|
||||
/* 00D34 80B9DF44 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00D38 80B9DF48 84480032 */ lh $t0, 0x0032($v0) ## 00000032
|
||||
/* 00D3C 80B9DF4C 848900B6 */ lh $t1, 0x00B6($a0) ## 000000B6
|
||||
/* 00D40 80B9DF50 01091823 */ subu $v1, $t0, $t1
|
||||
/* 00D44 80B9DF54 00031C00 */ sll $v1, $v1, 16
|
||||
/* 00D48 80B9DF58 00031C03 */ sra $v1, $v1, 16
|
||||
/* 00D4C 80B9DF5C 04600003 */ bltz $v1, .L80B9DF6C
|
||||
/* 00D50 80B9DF60 00031023 */ subu $v0, $zero, $v1
|
||||
/* 00D54 80B9DF64 10000001 */ beq $zero, $zero, .L80B9DF6C
|
||||
/* 00D58 80B9DF68 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
.L80B9DF6C:
|
||||
/* 00D5C 80B9DF6C 28415001 */ slti $at, $v0, 0x5001
|
||||
/* 00D60 80B9DF70 54200004 */ bnel $at, $zero, .L80B9DF84
|
||||
/* 00D64 80B9DF74 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00D68 80B9DF78 03E00008 */ jr $ra
|
||||
/* 00D6C 80B9DF7C 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80B9DF80:
|
||||
/* 00D70 80B9DF80 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80B9DF84:
|
||||
/* 00D74 80B9DF84 03E00008 */ jr $ra
|
||||
/* 00D78 80B9DF88 00000000 */ nop
|
|
@ -1,5 +0,0 @@
|
|||
glabel func_80B9DF8C
|
||||
/* 00D7C 80B9DF8C 3C0E80BA */ lui $t6, %hi(func_80B9DF9C) ## $t6 = 80BA0000
|
||||
/* 00D80 80B9DF90 25CEDF9C */ addiu $t6, $t6, %lo(func_80B9DF9C) ## $t6 = 80B9DF9C
|
||||
/* 00D84 80B9DF94 03E00008 */ jr $ra
|
||||
/* 00D88 80B9DF98 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
|
@ -1,25 +0,0 @@
|
|||
glabel func_80B9DF9C
|
||||
/* 00D8C 80B9DF9C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00D90 80B9DFA0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 00D94 80B9DFA4 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00D98 80B9DFA8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00D9C 80B9DFAC 84C5001C */ lh $a1, 0x001C($a2) ## 0000001C
|
||||
/* 00DA0 80B9DFB0 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00DA4 80B9DFB4 00052A03 */ sra $a1, $a1, 8
|
||||
/* 00DA8 80B9DFB8 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00DAC 80B9DFBC 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00DB0 80B9DFC0 10400005 */ beq $v0, $zero, .L80B9DFD8
|
||||
/* 00DB4 80B9DFC4 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00DB8 80B9DFC8 0C2E7840 */ jal func_80B9E100
|
||||
/* 00DBC 80B9DFCC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00DC0 80B9DFD0 10000004 */ beq $zero, $zero, .L80B9DFE4
|
||||
/* 00DC4 80B9DFD4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DFD8:
|
||||
/* 00DC8 80B9DFD8 0C2E77FC */ jal func_80B9DFF0
|
||||
/* 00DCC 80B9DFDC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00DD0 80B9DFE0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9DFE4:
|
||||
/* 00DD4 80B9DFE4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00DD8 80B9DFE8 03E00008 */ jr $ra
|
||||
/* 00DDC 80B9DFEC 00000000 */ nop
|
|
@ -1,6 +0,0 @@
|
|||
glabel func_80B9DFF0
|
||||
/* 00DE0 80B9DFF0 3C0E80BA */ lui $t6, %hi(func_80B9E004) ## $t6 = 80BA0000
|
||||
/* 00DE4 80B9DFF4 25CEE004 */ addiu $t6, $t6, %lo(func_80B9E004) ## $t6 = 80B9E004
|
||||
/* 00DE8 80B9DFF8 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 00DEC 80B9DFFC 03E00008 */ jr $ra
|
||||
/* 00DF0 80B9E000 A4800170 */ sh $zero, 0x0170($a0) ## 00000170
|
|
@ -1,29 +0,0 @@
|
|||
glabel func_80B9E004
|
||||
/* 00DF4 80B9E004 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00DF8 80B9E008 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00DFC 80B9E00C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00E00 80B9E010 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00E04 80B9E014 0C2E77C7 */ jal func_80B9DF1C
|
||||
/* 00E08 80B9E018 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00E0C 80B9E01C 14400006 */ bne $v0, $zero, .L80B9E038
|
||||
/* 00E10 80B9E020 00000000 */ nop
|
||||
/* 00E14 80B9E024 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00E18 80B9E028 000E79C3 */ sra $t7, $t6, 7
|
||||
/* 00E1C 80B9E02C 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
|
||||
/* 00E20 80B9E030 5300000A */ beql $t8, $zero, .L80B9E05C
|
||||
/* 00E24 80B9E034 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E038:
|
||||
/* 00E28 80B9E038 0C2E781B */ jal func_80B9E06C
|
||||
/* 00E2C 80B9E03C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00E30 80B9E040 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00E34 80B9E044 0C2E7553 */ jal func_80B9D54C
|
||||
/* 00E38 80B9E048 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00E3C 80B9E04C 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
|
||||
/* 00E40 80B9E050 3328FF7F */ andi $t0, $t9, 0xFF7F ## $t0 = 00000000
|
||||
/* 00E44 80B9E054 A608001C */ sh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 00E48 80B9E058 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E05C:
|
||||
/* 00E4C 80B9E05C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00E50 80B9E060 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00E54 80B9E064 03E00008 */ jr $ra
|
||||
/* 00E58 80B9E068 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9E06C
|
||||
/* 00E5C 80B9E06C 3C0E80BA */ lui $t6, %hi(func_80B9E084) ## $t6 = 80BA0000
|
||||
/* 00E60 80B9E070 25CEE084 */ addiu $t6, $t6, %lo(func_80B9E084) ## $t6 = 80B9E084
|
||||
/* 00E64 80B9E074 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 00E68 80B9E078 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 00E6C 80B9E07C 03E00008 */ jr $ra
|
||||
/* 00E70 80B9E080 A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,35 +0,0 @@
|
|||
glabel func_80B9E084
|
||||
/* 00E74 80B9E084 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00E78 80B9E088 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00E7C 80B9E08C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00E80 80B9E090 908E016E */ lbu $t6, 0x016E($a0) ## 0000016E
|
||||
/* 00E84 80B9E094 51C0000B */ beql $t6, $zero, .L80B9E0C4
|
||||
/* 00E88 80B9E098 84990170 */ lh $t9, 0x0170($a0) ## 00000170
|
||||
/* 00E8C 80B9E09C 0C016C66 */ jal func_8005B198
|
||||
/* 00E90 80B9E0A0 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00E94 80B9E0A4 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00E98 80B9E0A8 908F0002 */ lbu $t7, 0x0002($a0) ## 00000002
|
||||
/* 00E9C 80B9E0AC 504F0005 */ beql $v0, $t7, .L80B9E0C4
|
||||
/* 00EA0 80B9E0B0 84990170 */ lh $t9, 0x0170($a0) ## 00000170
|
||||
/* 00EA4 80B9E0B4 8498016C */ lh $t8, 0x016C($a0) ## 0000016C
|
||||
/* 00EA8 80B9E0B8 5F00000E */ bgtzl $t8, .L80B9E0F4
|
||||
/* 00EAC 80B9E0BC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00EB0 80B9E0C0 84990170 */ lh $t9, 0x0170($a0) ## 00000170
|
||||
.L80B9E0C4:
|
||||
/* 00EB4 80B9E0C4 27280001 */ addiu $t0, $t9, 0x0001 ## $t0 = 00000001
|
||||
/* 00EB8 80B9E0C8 A4880170 */ sh $t0, 0x0170($a0) ## 00000170
|
||||
/* 00EBC 80B9E0CC 84890170 */ lh $t1, 0x0170($a0) ## 00000170
|
||||
/* 00EC0 80B9E0D0 29210003 */ slti $at, $t1, 0x0003
|
||||
/* 00EC4 80B9E0D4 54200007 */ bnel $at, $zero, .L80B9E0F4
|
||||
/* 00EC8 80B9E0D8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00ECC 80B9E0DC 0C2E7840 */ jal func_80B9E100
|
||||
/* 00ED0 80B9E0E0 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00ED4 80B9E0E4 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00ED8 80B9E0E8 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00EDC 80B9E0EC 24052815 */ addiu $a1, $zero, 0x2815 ## $a1 = 00002815
|
||||
/* 00EE0 80B9E0F0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9E0F4:
|
||||
/* 00EE4 80B9E0F4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00EE8 80B9E0F8 03E00008 */ jr $ra
|
||||
/* 00EEC 80B9E0FC 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9E100
|
||||
/* 00EF0 80B9E100 3C0E80BA */ lui $t6, %hi(func_80B9E118) ## $t6 = 80BA0000
|
||||
/* 00EF4 80B9E104 25CEE118 */ addiu $t6, $t6, %lo(func_80B9E118) ## $t6 = 80B9E118
|
||||
/* 00EF8 80B9E108 240F0003 */ addiu $t7, $zero, 0x0003 ## $t7 = 00000003
|
||||
/* 00EFC 80B9E10C AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 00F00 80B9E110 03E00008 */ jr $ra
|
||||
/* 00F04 80B9E114 A48F0170 */ sh $t7, 0x0170($a0) ## 00000170
|
|
@ -1,55 +0,0 @@
|
|||
glabel func_80B9E118
|
||||
/* 00F08 80B9E118 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00F0C 80B9E11C AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00F10 80B9E120 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00F14 80B9E124 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00F18 80B9E128 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 00F1C 80B9E12C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00F20 80B9E130 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00F24 80B9E134 00031103 */ sra $v0, $v1, 4
|
||||
/* 00F28 80B9E138 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 00F2C 80B9E13C 10400006 */ beq $v0, $zero, .L80B9E158
|
||||
/* 00F30 80B9E140 00032A03 */ sra $a1, $v1, 8
|
||||
/* 00F34 80B9E144 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00F38 80B9E148 1041000D */ beq $v0, $at, .L80B9E180
|
||||
/* 00F3C 80B9E14C 00000000 */ nop
|
||||
/* 00F40 80B9E150 1000001D */ beq $zero, $zero, .L80B9E1C8
|
||||
/* 00F44 80B9E154 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E158:
|
||||
/* 00F48 80B9E158 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00F4C 80B9E15C 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 00F50 80B9E160 54400019 */ bnel $v0, $zero, .L80B9E1C8
|
||||
/* 00F54 80B9E164 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00F58 80B9E168 0C2E7876 */ jal func_80B9E1D8
|
||||
/* 00F5C 80B9E16C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F60 80B9E170 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00F64 80B9E174 31CFFF7F */ andi $t7, $t6, 0xFF7F ## $t7 = 00000000
|
||||
/* 00F68 80B9E178 10000012 */ beq $zero, $zero, .L80B9E1C4
|
||||
/* 00F6C 80B9E17C A60F001C */ sh $t7, 0x001C($s0) ## 0000001C
|
||||
.L80B9E180:
|
||||
/* 00F70 80B9E180 0C2E77C7 */ jal func_80B9DF1C
|
||||
/* 00F74 80B9E184 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F78 80B9E188 14400006 */ bne $v0, $zero, .L80B9E1A4
|
||||
/* 00F7C 80B9E18C 00000000 */ nop
|
||||
/* 00F80 80B9E190 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
|
||||
/* 00F84 80B9E194 0018C9C3 */ sra $t9, $t8, 7
|
||||
/* 00F88 80B9E198 33280001 */ andi $t0, $t9, 0x0001 ## $t0 = 00000000
|
||||
/* 00F8C 80B9E19C 5100000A */ beql $t0, $zero, .L80B9E1C8
|
||||
/* 00F90 80B9E1A0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E1A4:
|
||||
/* 00F94 80B9E1A4 0C2E7876 */ jal func_80B9E1D8
|
||||
/* 00F98 80B9E1A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F9C 80B9E1AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00FA0 80B9E1B0 0C2E757E */ jal func_80B9D5F8
|
||||
/* 00FA4 80B9E1B4 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00FA8 80B9E1B8 8609001C */ lh $t1, 0x001C($s0) ## 0000001C
|
||||
/* 00FAC 80B9E1BC 312AFF7F */ andi $t2, $t1, 0xFF7F ## $t2 = 00000000
|
||||
/* 00FB0 80B9E1C0 A60A001C */ sh $t2, 0x001C($s0) ## 0000001C
|
||||
.L80B9E1C4:
|
||||
/* 00FB4 80B9E1C4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E1C8:
|
||||
/* 00FB8 80B9E1C8 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00FBC 80B9E1CC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00FC0 80B9E1D0 03E00008 */ jr $ra
|
||||
/* 00FC4 80B9E1D4 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9E1D8
|
||||
/* 00FC8 80B9E1D8 3C0E80BA */ lui $t6, %hi(func_80B9E1F0) ## $t6 = 80BA0000
|
||||
/* 00FCC 80B9E1DC 25CEE1F0 */ addiu $t6, $t6, %lo(func_80B9E1F0) ## $t6 = 80B9E1F0
|
||||
/* 00FD0 80B9E1E0 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 00FD4 80B9E1E4 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 00FD8 80B9E1E8 03E00008 */ jr $ra
|
||||
/* 00FDC 80B9E1EC A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,40 +0,0 @@
|
|||
glabel func_80B9E1F0
|
||||
/* 00FE0 80B9E1F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00FE4 80B9E1F4 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00FE8 80B9E1F8 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00FEC 80B9E1FC 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 00FF0 80B9E200 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00FF4 80B9E204 000E7903 */ sra $t7, $t6, 4
|
||||
/* 00FF8 80B9E208 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 00FFC 80B9E20C 5701000E */ bnel $t8, $at, .L80B9E248
|
||||
/* 01000 80B9E210 848A0170 */ lh $t2, 0x0170($a0) ## 00000170
|
||||
/* 01004 80B9E214 9099016E */ lbu $t9, 0x016E($a0) ## 0000016E
|
||||
/* 01008 80B9E218 5320000B */ beql $t9, $zero, .L80B9E248
|
||||
/* 0100C 80B9E21C 848A0170 */ lh $t2, 0x0170($a0) ## 00000170
|
||||
/* 01010 80B9E220 0C016C66 */ jal func_8005B198
|
||||
/* 01014 80B9E224 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 01018 80B9E228 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 0101C 80B9E22C 90880002 */ lbu $t0, 0x0002($a0) ## 00000002
|
||||
/* 01020 80B9E230 50480005 */ beql $v0, $t0, .L80B9E248
|
||||
/* 01024 80B9E234 848A0170 */ lh $t2, 0x0170($a0) ## 00000170
|
||||
/* 01028 80B9E238 8489016C */ lh $t1, 0x016C($a0) ## 0000016C
|
||||
/* 0102C 80B9E23C 5D20000D */ bgtzl $t1, .L80B9E274
|
||||
/* 01030 80B9E240 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01034 80B9E244 848A0170 */ lh $t2, 0x0170($a0) ## 00000170
|
||||
.L80B9E248:
|
||||
/* 01038 80B9E248 254BFFFF */ addiu $t3, $t2, 0xFFFF ## $t3 = FFFFFFFF
|
||||
/* 0103C 80B9E24C A48B0170 */ sh $t3, 0x0170($a0) ## 00000170
|
||||
/* 01040 80B9E250 848C0170 */ lh $t4, 0x0170($a0) ## 00000170
|
||||
/* 01044 80B9E254 5D800007 */ bgtzl $t4, .L80B9E274
|
||||
/* 01048 80B9E258 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0104C 80B9E25C 0C2E77FC */ jal func_80B9DFF0
|
||||
/* 01050 80B9E260 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 01054 80B9E264 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 01058 80B9E268 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 0105C 80B9E26C 24052815 */ addiu $a1, $zero, 0x2815 ## $a1 = 00002815
|
||||
/* 01060 80B9E270 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80B9E274:
|
||||
/* 01064 80B9E274 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 01068 80B9E278 03E00008 */ jr $ra
|
||||
/* 0106C 80B9E27C 00000000 */ nop
|
|
@ -1,11 +0,0 @@
|
|||
glabel func_80B9E280
|
||||
/* 01070 80B9E280 3C0E0501 */ lui $t6, 0x0501 ## $t6 = 05010000
|
||||
/* 01074 80B9E284 3C0F80BA */ lui $t7, %hi(func_80B9E2A8) ## $t7 = 80BA0000
|
||||
/* 01078 80B9E288 25CE44B0 */ addiu $t6, $t6, 0x44B0 ## $t6 = 050144B0
|
||||
/* 0107C 80B9E28C 25EFE2A8 */ addiu $t7, $t7, %lo(func_80B9E2A8) ## $t7 = 80B9E2A8
|
||||
/* 01080 80B9E290 A080017C */ sb $zero, 0x017C($a0) ## 0000017C
|
||||
/* 01084 80B9E294 A080017D */ sb $zero, 0x017D($a0) ## 0000017D
|
||||
/* 01088 80B9E298 A080017E */ sb $zero, 0x017E($a0) ## 0000017E
|
||||
/* 0108C 80B9E29C AC8E0174 */ sw $t6, 0x0174($a0) ## 00000174
|
||||
/* 01090 80B9E2A0 03E00008 */ jr $ra
|
||||
/* 01094 80B9E2A4 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164
|
|
@ -1,87 +0,0 @@
|
|||
glabel func_80B9E2A8
|
||||
/* 01098 80B9E2A8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0109C 80B9E2AC AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 010A0 80B9E2B0 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 010A4 80B9E2B4 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 010A8 80B9E2B8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 010AC 80B9E2BC 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 010B0 80B9E2C0 00031103 */ sra $v0, $v1, 4
|
||||
/* 010B4 80B9E2C4 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 010B8 80B9E2C8 10400007 */ beq $v0, $zero, .L80B9E2E8
|
||||
/* 010BC 80B9E2CC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 010C0 80B9E2D0 1041002A */ beq $v0, $at, .L80B9E37C
|
||||
/* 010C4 80B9E2D4 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 010C8 80B9E2D8 50410013 */ beql $v0, $at, .L80B9E328
|
||||
/* 010CC 80B9E2DC 92080191 */ lbu $t0, 0x0191($s0) ## 00000191
|
||||
/* 010D0 80B9E2E0 1000003A */ beq $zero, $zero, .L80B9E3CC
|
||||
/* 010D4 80B9E2E4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E2E8:
|
||||
/* 010D8 80B9E2E8 920E0191 */ lbu $t6, 0x0191($s0) ## 00000191
|
||||
/* 010DC 80B9E2EC 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 010E0 80B9E2F0 51E00036 */ beql $t7, $zero, .L80B9E3CC
|
||||
/* 010E4 80B9E2F4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 010E8 80B9E2F8 8618016A */ lh $t8, 0x016A($s0) ## 0000016A
|
||||
/* 010EC 80B9E2FC 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
|
||||
/* 010F0 80B9E300 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 010F4 80B9E304 1F000030 */ bgtz $t8, .L80B9E3C8
|
||||
/* 010F8 80B9E308 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
|
||||
/* 010FC 80B9E30C 0C2E7553 */ jal func_80B9D54C
|
||||
/* 01100 80B9E310 A619016A */ sh $t9, 0x016A($s0) ## 0000016A
|
||||
/* 01104 80B9E314 0C2E78F7 */ jal func_80B9E3DC
|
||||
/* 01108 80B9E318 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0110C 80B9E31C 1000002B */ beq $zero, $zero, .L80B9E3CC
|
||||
/* 01110 80B9E320 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 01114 80B9E324 92080191 */ lbu $t0, 0x0191($s0) ## 00000191
|
||||
.L80B9E328:
|
||||
/* 01118 80B9E328 00032A03 */ sra $a1, $v1, 8
|
||||
/* 0111C 80B9E32C 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 01120 80B9E330 31090002 */ andi $t1, $t0, 0x0002 ## $t1 = 00000000
|
||||
/* 01124 80B9E334 11200004 */ beq $t1, $zero, .L80B9E348
|
||||
/* 01128 80B9E338 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 0112C 80B9E33C 860A016A */ lh $t2, 0x016A($s0) ## 0000016A
|
||||
/* 01130 80B9E340 59400006 */ blezl $t2, .L80B9E35C
|
||||
/* 01134 80B9E344 240B000A */ addiu $t3, $zero, 0x000A ## $t3 = 0000000A
|
||||
.L80B9E348:
|
||||
/* 01138 80B9E348 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 0113C 80B9E34C AFA60024 */ sw $a2, 0x0024($sp)
|
||||
/* 01140 80B9E350 1040001D */ beq $v0, $zero, .L80B9E3C8
|
||||
/* 01144 80B9E354 8FA60024 */ lw $a2, 0x0024($sp)
|
||||
/* 01148 80B9E358 240B000A */ addiu $t3, $zero, 0x000A ## $t3 = 0000000A
|
||||
.L80B9E35C:
|
||||
/* 0114C 80B9E35C A60B016A */ sh $t3, 0x016A($s0) ## 0000016A
|
||||
/* 01150 80B9E360 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01154 80B9E364 0C2E7553 */ jal func_80B9D54C
|
||||
/* 01158 80B9E368 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
|
||||
/* 0115C 80B9E36C 0C2E78F7 */ jal func_80B9E3DC
|
||||
/* 01160 80B9E370 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01164 80B9E374 10000015 */ beq $zero, $zero, .L80B9E3CC
|
||||
/* 01168 80B9E378 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E37C:
|
||||
/* 0116C 80B9E37C 920C0191 */ lbu $t4, 0x0191($s0) ## 00000191
|
||||
/* 01170 80B9E380 318D0002 */ andi $t5, $t4, 0x0002 ## $t5 = 00000000
|
||||
/* 01174 80B9E384 11A0000E */ beq $t5, $zero, .L80B9E3C0
|
||||
/* 01178 80B9E388 00000000 */ nop
|
||||
/* 0117C 80B9E38C 920E017F */ lbu $t6, 0x017F($s0) ## 0000017F
|
||||
/* 01180 80B9E390 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 01184 80B9E394 15E0000A */ bne $t7, $zero, .L80B9E3C0
|
||||
/* 01188 80B9E398 00000000 */ nop
|
||||
/* 0118C 80B9E39C 8618016A */ lh $t8, 0x016A($s0) ## 0000016A
|
||||
/* 01190 80B9E3A0 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
|
||||
/* 01194 80B9E3A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01198 80B9E3A8 1F000005 */ bgtz $t8, .L80B9E3C0
|
||||
/* 0119C 80B9E3AC 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
|
||||
/* 011A0 80B9E3B0 0C2E7553 */ jal func_80B9D54C
|
||||
/* 011A4 80B9E3B4 A619016A */ sh $t9, 0x016A($s0) ## 0000016A
|
||||
/* 011A8 80B9E3B8 0C2E78F7 */ jal func_80B9E3DC
|
||||
/* 011AC 80B9E3BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9E3C0:
|
||||
/* 011B0 80B9E3C0 0C2E75A0 */ jal func_80B9D680
|
||||
/* 011B4 80B9E3C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9E3C8:
|
||||
/* 011B8 80B9E3C8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E3CC:
|
||||
/* 011BC 80B9E3CC 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 011C0 80B9E3D0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 011C4 80B9E3D4 03E00008 */ jr $ra
|
||||
/* 011C8 80B9E3D8 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9E3DC
|
||||
/* 011CC 80B9E3DC 3C0E80BA */ lui $t6, %hi(func_80B9E3F4) ## $t6 = 80BA0000
|
||||
/* 011D0 80B9E3E0 25CEE3F4 */ addiu $t6, $t6, %lo(func_80B9E3F4) ## $t6 = 80B9E3F4
|
||||
/* 011D4 80B9E3E4 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 011D8 80B9E3E8 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 011DC 80B9E3EC 03E00008 */ jr $ra
|
||||
/* 011E0 80B9E3F0 A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,39 +0,0 @@
|
|||
glabel func_80B9E3F4
|
||||
/* 011E4 80B9E3F4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 011E8 80B9E3F8 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 011EC 80B9E3FC AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 011F0 80B9E400 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 011F4 80B9E404 908E016E */ lbu $t6, 0x016E($a0) ## 0000016E
|
||||
/* 011F8 80B9E408 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 011FC 80B9E40C 11C00009 */ beq $t6, $zero, .L80B9E434
|
||||
/* 01200 80B9E410 00000000 */ nop
|
||||
/* 01204 80B9E414 0C016C66 */ jal func_8005B198
|
||||
/* 01208 80B9E418 00000000 */ nop
|
||||
/* 0120C 80B9E41C 920F0002 */ lbu $t7, 0x0002($s0) ## 00000002
|
||||
/* 01210 80B9E420 104F0004 */ beq $v0, $t7, .L80B9E434
|
||||
/* 01214 80B9E424 00000000 */ nop
|
||||
/* 01218 80B9E428 8618016C */ lh $t8, 0x016C($s0) ## 0000016C
|
||||
/* 0121C 80B9E42C 5F00000F */ bgtzl $t8, .L80B9E46C
|
||||
/* 01220 80B9E430 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E434:
|
||||
/* 01224 80B9E434 0C2E791F */ jal func_80B9E47C
|
||||
/* 01228 80B9E438 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0122C 80B9E43C 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
|
||||
/* 01230 80B9E440 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 01234 80B9E444 00194103 */ sra $t0, $t9, 4
|
||||
/* 01238 80B9E448 31090007 */ andi $t1, $t0, 0x0007 ## $t1 = 00000000
|
||||
/* 0123C 80B9E44C 55210004 */ bnel $t1, $at, .L80B9E460
|
||||
/* 01240 80B9E450 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01244 80B9E454 0C2E75A0 */ jal func_80B9D680
|
||||
/* 01248 80B9E458 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0124C 80B9E45C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9E460:
|
||||
/* 01250 80B9E460 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 01254 80B9E464 240528BA */ addiu $a1, $zero, 0x28BA ## $a1 = 000028BA
|
||||
/* 01258 80B9E468 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E46C:
|
||||
/* 0125C 80B9E46C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 01260 80B9E470 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 01264 80B9E474 03E00008 */ jr $ra
|
||||
/* 01268 80B9E478 00000000 */ nop
|
|
@ -1,12 +0,0 @@
|
|||
glabel func_80B9E47C
|
||||
/* 0126C 80B9E47C 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF
|
||||
/* 01270 80B9E480 3C0E0501 */ lui $t6, 0x0501 ## $t6 = 05010000
|
||||
/* 01274 80B9E484 3C0F80BA */ lui $t7, %hi(func_80B9E4A8) ## $t7 = 80BA0000
|
||||
/* 01278 80B9E488 25CE4CB0 */ addiu $t6, $t6, 0x4CB0 ## $t6 = 05014CB0
|
||||
/* 0127C 80B9E48C 25EFE4A8 */ addiu $t7, $t7, %lo(func_80B9E4A8) ## $t7 = 80B9E4A8
|
||||
/* 01280 80B9E490 A082017C */ sb $v0, 0x017C($a0) ## 0000017C
|
||||
/* 01284 80B9E494 A082017D */ sb $v0, 0x017D($a0) ## 0000017D
|
||||
/* 01288 80B9E498 A082017E */ sb $v0, 0x017E($a0) ## 0000017E
|
||||
/* 0128C 80B9E49C AC8E0174 */ sw $t6, 0x0174($a0) ## 00000174
|
||||
/* 01290 80B9E4A0 03E00008 */ jr $ra
|
||||
/* 01294 80B9E4A4 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164
|
|
@ -1,54 +0,0 @@
|
|||
glabel func_80B9E4A8
|
||||
/* 01298 80B9E4A8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0129C 80B9E4AC AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 012A0 80B9E4B0 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 012A4 80B9E4B4 8483001C */ lh $v1, 0x001C($a0) ## 0000001C
|
||||
/* 012A8 80B9E4B8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 012AC 80B9E4BC 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 012B0 80B9E4C0 00031103 */ sra $v0, $v1, 4
|
||||
/* 012B4 80B9E4C4 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
|
||||
/* 012B8 80B9E4C8 10400004 */ beq $v0, $zero, .L80B9E4DC
|
||||
/* 012BC 80B9E4CC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 012C0 80B9E4D0 1041000C */ beq $v0, $at, .L80B9E504
|
||||
/* 012C4 80B9E4D4 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 012C8 80B9E4D8 1441001D */ bne $v0, $at, .L80B9E550
|
||||
.L80B9E4DC:
|
||||
/* 012CC 80B9E4DC 00032A03 */ sra $a1, $v1, 8
|
||||
/* 012D0 80B9E4E0 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 012D4 80B9E4E4 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 012D8 80B9E4E8 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 012DC 80B9E4EC 14400018 */ bne $v0, $zero, .L80B9E550
|
||||
/* 012E0 80B9E4F0 00000000 */ nop
|
||||
/* 012E4 80B9E4F4 0C2E795B */ jal func_80B9E56C
|
||||
/* 012E8 80B9E4F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 012EC 80B9E4FC 10000014 */ beq $zero, $zero, .L80B9E550
|
||||
/* 012F0 80B9E500 00000000 */ nop
|
||||
.L80B9E504:
|
||||
/* 012F4 80B9E504 920E0191 */ lbu $t6, 0x0191($s0) ## 00000191
|
||||
/* 012F8 80B9E508 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 012FC 80B9E50C 11E00010 */ beq $t7, $zero, .L80B9E550
|
||||
/* 01300 80B9E510 00000000 */ nop
|
||||
/* 01304 80B9E514 9218017F */ lbu $t8, 0x017F($s0) ## 0000017F
|
||||
/* 01308 80B9E518 33190002 */ andi $t9, $t8, 0x0002 ## $t9 = 00000000
|
||||
/* 0130C 80B9E51C 1720000C */ bne $t9, $zero, .L80B9E550
|
||||
/* 01310 80B9E520 00000000 */ nop
|
||||
/* 01314 80B9E524 8608016A */ lh $t0, 0x016A($s0) ## 0000016A
|
||||
/* 01318 80B9E528 2409000A */ addiu $t1, $zero, 0x000A ## $t1 = 0000000A
|
||||
/* 0131C 80B9E52C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01320 80B9E530 1D000007 */ bgtz $t0, .L80B9E550
|
||||
/* 01324 80B9E534 00000000 */ nop
|
||||
/* 01328 80B9E538 A609016A */ sh $t1, 0x016A($s0) ## 0000016A
|
||||
/* 0132C 80B9E53C 0C2E795B */ jal func_80B9E56C
|
||||
/* 01330 80B9E540 AFA60024 */ sw $a2, 0x0024($sp)
|
||||
/* 01334 80B9E544 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 01338 80B9E548 0C2E757E */ jal func_80B9D5F8
|
||||
/* 0133C 80B9E54C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80B9E550:
|
||||
/* 01340 80B9E550 0C2E75A0 */ jal func_80B9D680
|
||||
/* 01344 80B9E554 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01348 80B9E558 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 0134C 80B9E55C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 01350 80B9E560 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 01354 80B9E564 03E00008 */ jr $ra
|
||||
/* 01358 80B9E568 00000000 */ nop
|
|
@ -1,7 +0,0 @@
|
|||
glabel func_80B9E56C
|
||||
/* 0135C 80B9E56C 3C0E80BA */ lui $t6, %hi(func_80B9E584) ## $t6 = 80BA0000
|
||||
/* 01360 80B9E570 25CEE584 */ addiu $t6, $t6, %lo(func_80B9E584) ## $t6 = 80B9E584
|
||||
/* 01364 80B9E574 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 01368 80B9E578 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
|
||||
/* 0136C 80B9E57C 03E00008 */ jr $ra
|
||||
/* 01370 80B9E580 A48F016C */ sh $t7, 0x016C($a0) ## 0000016C
|
|
@ -1,38 +0,0 @@
|
|||
glabel func_80B9E584
|
||||
/* 01374 80B9E584 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 01378 80B9E588 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0137C 80B9E58C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 01380 80B9E590 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 01384 80B9E594 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 01388 80B9E598 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 0138C 80B9E59C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01390 80B9E5A0 000E7903 */ sra $t7, $t6, 4
|
||||
/* 01394 80B9E5A4 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 01398 80B9E5A8 1701000C */ bne $t8, $at, .L80B9E5DC
|
||||
/* 0139C 80B9E5AC 00000000 */ nop
|
||||
/* 013A0 80B9E5B0 9099016E */ lbu $t9, 0x016E($a0) ## 0000016E
|
||||
/* 013A4 80B9E5B4 13200009 */ beq $t9, $zero, .L80B9E5DC
|
||||
/* 013A8 80B9E5B8 00000000 */ nop
|
||||
/* 013AC 80B9E5BC 0C016C66 */ jal func_8005B198
|
||||
/* 013B0 80B9E5C0 00000000 */ nop
|
||||
/* 013B4 80B9E5C4 92080002 */ lbu $t0, 0x0002($s0) ## 00000002
|
||||
/* 013B8 80B9E5C8 10480004 */ beq $v0, $t0, .L80B9E5DC
|
||||
/* 013BC 80B9E5CC 00000000 */ nop
|
||||
/* 013C0 80B9E5D0 8609016C */ lh $t1, 0x016C($s0) ## 0000016C
|
||||
/* 013C4 80B9E5D4 5D200009 */ bgtzl $t1, .L80B9E5FC
|
||||
/* 013C8 80B9E5D8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E5DC:
|
||||
/* 013CC 80B9E5DC 0C2E78A0 */ jal func_80B9E280
|
||||
/* 013D0 80B9E5E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 013D4 80B9E5E4 0C2E75A0 */ jal func_80B9D680
|
||||
/* 013D8 80B9E5E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 013DC 80B9E5EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 013E0 80B9E5F0 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 013E4 80B9E5F4 240528BA */ addiu $a1, $zero, 0x28BA ## $a1 = 000028BA
|
||||
/* 013E8 80B9E5F8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80B9E5FC:
|
||||
/* 013EC 80B9E5FC 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 013F0 80B9E600 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 013F4 80B9E604 03E00008 */ jr $ra
|
||||
/* 013F8 80B9E608 00000000 */ nop
|
|
@ -1,18 +0,0 @@
|
|||
glabel func_80B9E748
|
||||
/* 01538 80B9E748 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0153C 80B9E74C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01540 80B9E750 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 01544 80B9E754 84EE001C */ lh $t6, 0x001C($a3) ## 0000001C
|
||||
/* 01548 80B9E758 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 0154C 80B9E75C 3C0580BA */ lui $a1, %hi(D_80B9ED88) ## $a1 = 80BA0000
|
||||
/* 01550 80B9E760 000E7903 */ sra $t7, $t6, 4
|
||||
/* 01554 80B9E764 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 01558 80B9E768 0018C880 */ sll $t9, $t8, 2
|
||||
/* 0155C 80B9E76C 00B92821 */ addu $a1, $a1, $t9
|
||||
/* 01560 80B9E770 0C00D498 */ jal Gfx_DrawDListOpa
|
||||
|
||||
/* 01564 80B9E774 8CA5ED88 */ lw $a1, %lo(D_80B9ED88)($a1)
|
||||
/* 01568 80B9E778 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0156C 80B9E77C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 01570 80B9E780 03E00008 */ jr $ra
|
||||
/* 01574 80B9E784 00000000 */ nop
|
|
@ -1,13 +0,0 @@
|
|||
glabel func_80B9E788
|
||||
/* 01578 80B9E788 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0157C 80B9E78C AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 01580 80B9E790 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 01584 80B9E794 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01588 80B9E798 3C050500 */ lui $a1, 0x0500 ## $a1 = 05000000
|
||||
/* 0158C 80B9E79C 0C00D498 */ jal Gfx_DrawDListOpa
|
||||
|
||||
/* 01590 80B9E7A0 24A55AD0 */ addiu $a1, $a1, 0x5AD0 ## $a1 = 05005AD0
|
||||
/* 01594 80B9E7A4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01598 80B9E7A8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0159C 80B9E7AC 03E00008 */ jr $ra
|
||||
/* 015A0 80B9E7B0 00000000 */ nop
|
|
@ -1,99 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B9EEB4
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EEC8
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EEDC
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80B9E7B4
|
||||
/* 015A4 80B9E7B4 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 015A8 80B9E7B8 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 015AC 80B9E7BC AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 015B0 80B9E7C0 AFA40050 */ sw $a0, 0x0050($sp)
|
||||
/* 015B4 80B9E7C4 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 015B8 80B9E7C8 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
|
||||
/* 015BC 80B9E7CC 3C0680BA */ lui $a2, %hi(D_80B9EEB4) ## $a2 = 80BA0000
|
||||
/* 015C0 80B9E7D0 24C6EEB4 */ addiu $a2, $a2, %lo(D_80B9EEB4) ## $a2 = 80B9EEB4
|
||||
/* 015C4 80B9E7D4 000FC103 */ sra $t8, $t7, 4
|
||||
/* 015C8 80B9E7D8 33190007 */ andi $t9, $t8, 0x0007 ## $t9 = 00000000
|
||||
/* 015CC 80B9E7DC AFB90048 */ sw $t9, 0x0048($sp)
|
||||
/* 015D0 80B9E7E0 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 015D4 80B9E7E4 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4
|
||||
/* 015D8 80B9E7E8 240705B3 */ addiu $a3, $zero, 0x05B3 ## $a3 = 000005B3
|
||||
/* 015DC 80B9E7EC 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 015E0 80B9E7F0 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 015E4 80B9E7F4 8FA90054 */ lw $t1, 0x0054($sp)
|
||||
/* 015E8 80B9E7F8 0C024F46 */ jal func_80093D18
|
||||
/* 015EC 80B9E7FC 8D240000 */ lw $a0, 0x0000($t1) ## 00000000
|
||||
/* 015F0 80B9E800 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 015F4 80B9E804 3C0BDA38 */ lui $t3, 0xDA38 ## $t3 = DA380000
|
||||
/* 015F8 80B9E808 356B0003 */ ori $t3, $t3, 0x0003 ## $t3 = DA380003
|
||||
/* 015FC 80B9E80C 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
|
||||
/* 01600 80B9E810 AE0A02C0 */ sw $t2, 0x02C0($s0) ## 000002C0
|
||||
/* 01604 80B9E814 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 01608 80B9E818 8FAC0054 */ lw $t4, 0x0054($sp)
|
||||
/* 0160C 80B9E81C 3C0580BA */ lui $a1, %hi(D_80B9EEC8) ## $a1 = 80BA0000
|
||||
/* 01610 80B9E820 24A5EEC8 */ addiu $a1, $a1, %lo(D_80B9EEC8) ## $a1 = 80B9EEC8
|
||||
/* 01614 80B9E824 8D840000 */ lw $a0, 0x0000($t4) ## 00000000
|
||||
/* 01618 80B9E828 240605B6 */ addiu $a2, $zero, 0x05B6 ## $a2 = 000005B6
|
||||
/* 0161C 80B9E82C 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01620 80B9E830 AFA20030 */ sw $v0, 0x0030($sp)
|
||||
/* 01624 80B9E834 8FA30030 */ lw $v1, 0x0030($sp)
|
||||
/* 01628 80B9E838 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
|
||||
/* 0162C 80B9E83C 35CE0020 */ ori $t6, $t6, 0x0020 ## $t6 = DB060020
|
||||
/* 01630 80B9E840 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 01634 80B9E844 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 01638 80B9E848 8FA50048 */ lw $a1, 0x0048($sp)
|
||||
/* 0163C 80B9E84C 3C0480BA */ lui $a0, %hi(D_80B9ED98) ## $a0 = 80BA0000
|
||||
/* 01640 80B9E850 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 01644 80B9E854 AE0D02C0 */ sw $t5, 0x02C0($s0) ## 000002C0
|
||||
/* 01648 80B9E858 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 0164C 80B9E85C 8FB80050 */ lw $t8, 0x0050($sp)
|
||||
/* 01650 80B9E860 00057900 */ sll $t7, $a1, 4
|
||||
/* 01654 80B9E864 3C0E8016 */ lui $t6, %hi(gSegments)
|
||||
/* 01658 80B9E868 87190170 */ lh $t9, 0x0170($t8) ## 00000170
|
||||
/* 0165C 80B9E86C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 01660 80B9E870 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 01664 80B9E874 00194080 */ sll $t0, $t9, 2
|
||||
/* 01668 80B9E878 01E84821 */ addu $t1, $t7, $t0
|
||||
/* 0166C 80B9E87C 00892021 */ addu $a0, $a0, $t1
|
||||
/* 01670 80B9E880 8C84ED98 */ lw $a0, %lo(D_80B9ED98)($a0)
|
||||
/* 01674 80B9E884 3C08DE00 */ lui $t0, 0xDE00 ## $t0 = DE000000
|
||||
/* 01678 80B9E888 00054880 */ sll $t1, $a1, 2
|
||||
/* 0167C 80B9E88C 00045900 */ sll $t3, $a0, 4
|
||||
/* 01680 80B9E890 000B6702 */ srl $t4, $t3, 28
|
||||
/* 01684 80B9E894 000C6880 */ sll $t5, $t4, 2
|
||||
/* 01688 80B9E898 01CD7021 */ addu $t6, $t6, $t5
|
||||
/* 0168C 80B9E89C 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
|
||||
/* 01690 80B9E8A0 00815024 */ and $t2, $a0, $at
|
||||
/* 01694 80B9E8A4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01698 80B9E8A8 014EC021 */ addu $t8, $t2, $t6
|
||||
/* 0169C 80B9E8AC 0301C821 */ addu $t9, $t8, $at
|
||||
/* 016A0 80B9E8B0 AC590004 */ sw $t9, 0x0004($v0) ## 00000004
|
||||
/* 016A4 80B9E8B4 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 016A8 80B9E8B8 3C0B80BA */ lui $t3, %hi(D_80B9EDB8) ## $t3 = 80BA0000
|
||||
/* 016AC 80B9E8BC 01695821 */ addu $t3, $t3, $t1
|
||||
/* 016B0 80B9E8C0 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
|
||||
/* 016B4 80B9E8C4 AE0F02C0 */ sw $t7, 0x02C0($s0) ## 000002C0
|
||||
/* 016B8 80B9E8C8 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
|
||||
/* 016BC 80B9E8CC 8D6BEDB8 */ lw $t3, %lo(D_80B9EDB8)($t3)
|
||||
/* 016C0 80B9E8D0 3C0680BA */ lui $a2, %hi(D_80B9EEDC) ## $a2 = 80BA0000
|
||||
/* 016C4 80B9E8D4 24C6EEDC */ addiu $a2, $a2, %lo(D_80B9EEDC) ## $a2 = 80B9EEDC
|
||||
/* 016C8 80B9E8D8 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
|
||||
/* 016CC 80B9E8DC 8FAC0054 */ lw $t4, 0x0054($sp)
|
||||
/* 016D0 80B9E8E0 27A40034 */ addiu $a0, $sp, 0x0034 ## $a0 = FFFFFFE4
|
||||
/* 016D4 80B9E8E4 240705BF */ addiu $a3, $zero, 0x05BF ## $a3 = 000005BF
|
||||
/* 016D8 80B9E8E8 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 016DC 80B9E8EC 8D850000 */ lw $a1, 0x0000($t4) ## 00000000
|
||||
/* 016E0 80B9E8F0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 016E4 80B9E8F4 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 016E8 80B9E8F8 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 016EC 80B9E8FC 03E00008 */ jr $ra
|
||||
/* 016F0 80B9E900 00000000 */ nop
|
|
@ -1,202 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B9EEF0
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EF04
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EF18
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EF2C
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EF40
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B9EF54
|
||||
.asciz "../z_obj_switch.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80B9E904
|
||||
/* 016F4 80B9E904 27BDFF60 */ addiu $sp, $sp, 0xFF60 ## $sp = FFFFFF60
|
||||
/* 016F8 80B9E908 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 016FC 80B9E90C AFB10038 */ sw $s1, 0x0038($sp)
|
||||
/* 01700 80B9E910 AFB00034 */ sw $s0, 0x0034($sp)
|
||||
/* 01704 80B9E914 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 01708 80B9E918 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0170C 80B9E91C 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 01710 80B9E920 000E7903 */ sra $t7, $t6, 4
|
||||
/* 01714 80B9E924 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
|
||||
/* 01718 80B9E928 AFB80094 */ sw $t8, 0x0094($sp)
|
||||
/* 0171C 80B9E92C 0C00BB60 */ jal func_8002ED80
|
||||
/* 01720 80B9E930 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 01724 80B9E934 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 01728 80B9E938 3C0680BA */ lui $a2, %hi(D_80B9EEF0) ## $a2 = 80BA0000
|
||||
/* 0172C 80B9E93C 24C6EEF0 */ addiu $a2, $a2, %lo(D_80B9EEF0) ## $a2 = 80B9EEF0
|
||||
/* 01730 80B9E940 27A40080 */ addiu $a0, $sp, 0x0080 ## $a0 = FFFFFFE0
|
||||
/* 01734 80B9E944 240705D6 */ addiu $a3, $zero, 0x05D6 ## $a3 = 000005D6
|
||||
/* 01738 80B9E948 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 0173C 80B9E94C AFA50090 */ sw $a1, 0x0090($sp)
|
||||
/* 01740 80B9E950 0C024F61 */ jal func_80093D84
|
||||
/* 01744 80B9E954 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 01748 80B9E958 8FA70090 */ lw $a3, 0x0090($sp)
|
||||
/* 0174C 80B9E95C 3C0ADA38 */ lui $t2, 0xDA38 ## $t2 = DA380000
|
||||
/* 01750 80B9E960 354A0003 */ ori $t2, $t2, 0x0003 ## $t2 = DA380003
|
||||
/* 01754 80B9E964 8CE202D0 */ lw $v0, 0x02D0($a3) ## 000002D0
|
||||
/* 01758 80B9E968 3C0580BA */ lui $a1, %hi(D_80B9EF04) ## $a1 = 80BA0000
|
||||
/* 0175C 80B9E96C 24A5EF04 */ addiu $a1, $a1, %lo(D_80B9EF04) ## $a1 = 80B9EF04
|
||||
/* 01760 80B9E970 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 01764 80B9E974 ACF902D0 */ sw $t9, 0x02D0($a3) ## 000002D0
|
||||
/* 01768 80B9E978 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 0176C 80B9E97C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 01770 80B9E980 240605D9 */ addiu $a2, $zero, 0x05D9 ## $a2 = 000005D9
|
||||
/* 01774 80B9E984 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01778 80B9E988 AFA2007C */ sw $v0, 0x007C($sp)
|
||||
/* 0177C 80B9E98C 8FA3007C */ lw $v1, 0x007C($sp)
|
||||
/* 01780 80B9E990 3C0DDE00 */ lui $t5, 0xDE00 ## $t5 = DE000000
|
||||
/* 01784 80B9E994 3C0E80BA */ lui $t6, %hi(D_80B9EDC0) ## $t6 = 80BA0000
|
||||
/* 01788 80B9E998 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 0178C 80B9E99C 8FAB0090 */ lw $t3, 0x0090($sp)
|
||||
/* 01790 80B9E9A0 25CEEDC0 */ addiu $t6, $t6, %lo(D_80B9EDC0) ## $t6 = 80B9EDC0
|
||||
/* 01794 80B9E9A4 3C0680BA */ lui $a2, %hi(D_80B9EF18) ## $a2 = 80BA0000
|
||||
/* 01798 80B9E9A8 8D6202D0 */ lw $v0, 0x02D0($t3) ## 000002D0
|
||||
/* 0179C 80B9E9AC 24C6EF18 */ addiu $a2, $a2, %lo(D_80B9EF18) ## $a2 = 80B9EF18
|
||||
/* 017A0 80B9E9B0 27A40080 */ addiu $a0, $sp, 0x0080 ## $a0 = FFFFFFE0
|
||||
/* 017A4 80B9E9B4 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 017A8 80B9E9B8 AD6C02D0 */ sw $t4, 0x02D0($t3) ## 000002D0
|
||||
/* 017AC 80B9E9BC AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
/* 017B0 80B9E9C0 8FA80094 */ lw $t0, 0x0094($sp)
|
||||
/* 017B4 80B9E9C4 240705DE */ addiu $a3, $zero, 0x05DE ## $a3 = 000005DE
|
||||
/* 017B8 80B9E9C8 00084080 */ sll $t0, $t0, 2
|
||||
/* 017BC 80B9E9CC 010E4821 */ addu $t1, $t0, $t6
|
||||
/* 017C0 80B9E9D0 8D2F0000 */ lw $t7, 0x0000($t1) ## 00000000
|
||||
/* 017C4 80B9E9D4 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
|
||||
/* 017C8 80B9E9D8 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 017CC 80B9E9DC AFA90048 */ sw $t1, 0x0048($sp)
|
||||
/* 017D0 80B9E9E0 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 017D4 80B9E9E4 AFA8004C */ sw $t0, 0x004C($sp)
|
||||
/* 017D8 80B9E9E8 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 017DC 80B9E9EC 3C0680BA */ lui $a2, %hi(D_80B9EF2C) ## $a2 = 80BA0000
|
||||
/* 017E0 80B9E9F0 24C6EF2C */ addiu $a2, $a2, %lo(D_80B9EF2C) ## $a2 = 80B9EF2C
|
||||
/* 017E4 80B9E9F4 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFC4
|
||||
/* 017E8 80B9E9F8 240705E3 */ addiu $a3, $zero, 0x05E3 ## $a3 = 000005E3
|
||||
/* 017EC 80B9E9FC 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 017F0 80B9EA00 AFA50074 */ sw $a1, 0x0074($sp)
|
||||
/* 017F4 80B9EA04 0C024F46 */ jal func_80093D18
|
||||
/* 017F8 80B9EA08 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 017FC 80B9EA0C 8FA80074 */ lw $t0, 0x0074($sp)
|
||||
/* 01800 80B9EA10 3C19DA38 */ lui $t9, 0xDA38 ## $t9 = DA380000
|
||||
/* 01804 80B9EA14 37390003 */ ori $t9, $t9, 0x0003 ## $t9 = DA380003
|
||||
/* 01808 80B9EA18 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
/* 0180C 80B9EA1C 3C0580BA */ lui $a1, %hi(D_80B9EF40) ## $a1 = 80BA0000
|
||||
/* 01810 80B9EA20 24A5EF40 */ addiu $a1, $a1, %lo(D_80B9EF40) ## $a1 = 80B9EF40
|
||||
/* 01814 80B9EA24 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
|
||||
/* 01818 80B9EA28 AD1802C0 */ sw $t8, 0x02C0($t0) ## 000002C0
|
||||
/* 0181C 80B9EA2C AC590000 */ sw $t9, 0x0000($v0) ## 00000000
|
||||
/* 01820 80B9EA30 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 01824 80B9EA34 240605E7 */ addiu $a2, $zero, 0x05E7 ## $a2 = 000005E7
|
||||
/* 01828 80B9EA38 AFA80074 */ sw $t0, 0x0074($sp)
|
||||
/* 0182C 80B9EA3C 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01830 80B9EA40 AFA20060 */ sw $v0, 0x0060($sp)
|
||||
/* 01834 80B9EA44 8FA30060 */ lw $v1, 0x0060($sp)
|
||||
/* 01838 80B9EA48 8FA80074 */ lw $t0, 0x0074($sp)
|
||||
/* 0183C 80B9EA4C 3C0C80BA */ lui $t4, %hi(D_80B9EDC4) ## $t4 = 80BA0000
|
||||
/* 01840 80B9EA50 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 01844 80B9EA54 8FAA0048 */ lw $t2, 0x0048($sp)
|
||||
/* 01848 80B9EA58 258CEDC4 */ addiu $t4, $t4, %lo(D_80B9EDC4) ## $t4 = 80B9EDC4
|
||||
/* 0184C 80B9EA5C 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
|
||||
/* 01850 80B9EA60 554C0015 */ bnel $t2, $t4, .L80B9EAB8
|
||||
/* 01854 80B9EA64 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
/* 01858 80B9EA68 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
/* 0185C 80B9EA6C 35AD0024 */ ori $t5, $t5, 0x0024 ## $t5 = DB060024
|
||||
/* 01860 80B9EA70 3C198016 */ lui $t9, %hi(gSegments)
|
||||
/* 01864 80B9EA74 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
|
||||
/* 01868 80B9EA78 AD0B02C0 */ sw $t3, 0x02C0($t0) ## 000002C0
|
||||
/* 0186C 80B9EA7C AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
/* 01870 80B9EA80 8E040174 */ lw $a0, 0x0174($s0) ## 00000174
|
||||
/* 01874 80B9EA84 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 01878 80B9EA88 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 0187C 80B9EA8C 00047100 */ sll $t6, $a0, 4
|
||||
/* 01880 80B9EA90 000E7F02 */ srl $t7, $t6, 28
|
||||
/* 01884 80B9EA94 000FC080 */ sll $t8, $t7, 2
|
||||
/* 01888 80B9EA98 0338C821 */ addu $t9, $t9, $t8
|
||||
/* 0188C 80B9EA9C 8F396FA8 */ lw $t9, %lo(gSegments)($t9)
|
||||
/* 01890 80B9EAA0 00815024 */ and $t2, $a0, $at
|
||||
/* 01894 80B9EAA4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01898 80B9EAA8 032A6021 */ addu $t4, $t9, $t2
|
||||
/* 0189C 80B9EAAC 01815821 */ addu $t3, $t4, $at
|
||||
/* 018A0 80B9EAB0 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
|
||||
/* 018A4 80B9EAB4 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
.L80B9EAB8:
|
||||
/* 018A8 80B9EAB8 3C0EFB00 */ lui $t6, 0xFB00 ## $t6 = FB000000
|
||||
/* 018AC 80B9EABC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 018B0 80B9EAC0 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 018B4 80B9EAC4 AD0D02C0 */ sw $t5, 0x02C0($t0) ## 000002C0
|
||||
/* 018B8 80B9EAC8 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 018BC 80B9EACC 9218017C */ lbu $t8, 0x017C($s0) ## 0000017C
|
||||
/* 018C0 80B9EAD0 920C017D */ lbu $t4, 0x017D($s0) ## 0000017D
|
||||
/* 018C4 80B9EAD4 920F017E */ lbu $t7, 0x017E($s0) ## 0000017E
|
||||
/* 018C8 80B9EAD8 0018CE00 */ sll $t9, $t8, 24
|
||||
/* 018CC 80B9EADC 000C5C00 */ sll $t3, $t4, 16
|
||||
/* 018D0 80B9EAE0 032B6825 */ or $t5, $t9, $t3 ## $t5 = 80160008
|
||||
/* 018D4 80B9EAE4 000FC200 */ sll $t8, $t7, 8
|
||||
/* 018D8 80B9EAE8 01B85025 */ or $t2, $t5, $t8 ## $t2 = 80160008
|
||||
/* 018DC 80B9EAEC 354C0080 */ ori $t4, $t2, 0x0080 ## $t4 = 80160088
|
||||
/* 018E0 80B9EAF0 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
|
||||
/* 018E4 80B9EAF4 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
/* 018E8 80B9EAF8 3C0BDB06 */ lui $t3, 0xDB06 ## $t3 = DB060000
|
||||
/* 018EC 80B9EAFC 356B0020 */ ori $t3, $t3, 0x0020 ## $t3 = DB060020
|
||||
/* 018F0 80B9EB00 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 018F4 80B9EB04 AD1902C0 */ sw $t9, 0x02C0($t0) ## 000002C0
|
||||
/* 018F8 80B9EB08 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 018FC 80B9EB0C 92070179 */ lbu $a3, 0x0179($s0) ## 00000179
|
||||
/* 01900 80B9EB10 92060178 */ lbu $a2, 0x0178($s0) ## 00000178
|
||||
/* 01904 80B9EB14 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 01908 80B9EB18 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
|
||||
/* 0190C 80B9EB1C 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
|
||||
/* 01910 80B9EB20 240E0020 */ addiu $t6, $zero, 0x0020 ## $t6 = 00000020
|
||||
/* 01914 80B9EB24 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 01918 80B9EB28 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 0191C 80B9EB2C AFAD0018 */ sw $t5, 0x0018($sp)
|
||||
/* 01920 80B9EB30 9218017A */ lbu $t8, 0x017A($s0) ## 0000017A
|
||||
/* 01924 80B9EB34 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
|
||||
/* 01928 80B9EB38 240C0020 */ addiu $t4, $zero, 0x0020 ## $t4 = 00000020
|
||||
/* 0192C 80B9EB3C AFB8001C */ sw $t8, 0x001C($sp)
|
||||
/* 01930 80B9EB40 920A017B */ lbu $t2, 0x017B($s0) ## 0000017B
|
||||
/* 01934 80B9EB44 AFA80074 */ sw $t0, 0x0074($sp)
|
||||
/* 01938 80B9EB48 AFB90028 */ sw $t9, 0x0028($sp)
|
||||
/* 0193C 80B9EB4C AFAC0024 */ sw $t4, 0x0024($sp)
|
||||
/* 01940 80B9EB50 AFA20054 */ sw $v0, 0x0054($sp)
|
||||
/* 01944 80B9EB54 0C0253D0 */ jal Gfx_TwoTexScroll
|
||||
/* 01948 80B9EB58 AFAA0020 */ sw $t2, 0x0020($sp)
|
||||
/* 0194C 80B9EB5C 8FA30054 */ lw $v1, 0x0054($sp)
|
||||
/* 01950 80B9EB60 8FA80074 */ lw $t0, 0x0074($sp)
|
||||
/* 01954 80B9EB64 3C0EDE00 */ lui $t6, 0xDE00 ## $t6 = DE000000
|
||||
/* 01958 80B9EB68 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 0195C 80B9EB6C 8D0202C0 */ lw $v0, 0x02C0($t0) ## 000002C0
|
||||
/* 01960 80B9EB70 3C0D80BA */ lui $t5, %hi(D_80B9EDD4) ## $t5 = 80BA0000
|
||||
/* 01964 80B9EB74 3C0680BA */ lui $a2, %hi(D_80B9EF54) ## $a2 = 80BA0000
|
||||
/* 01968 80B9EB78 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
|
||||
/* 0196C 80B9EB7C AD0B02C0 */ sw $t3, 0x02C0($t0) ## 000002C0
|
||||
/* 01970 80B9EB80 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 01974 80B9EB84 8FAF004C */ lw $t7, 0x004C($sp)
|
||||
/* 01978 80B9EB88 24C6EF54 */ addiu $a2, $a2, %lo(D_80B9EF54) ## $a2 = 80B9EF54
|
||||
/* 0197C 80B9EB8C 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFC4
|
||||
/* 01980 80B9EB90 01AF6821 */ addu $t5, $t5, $t7
|
||||
/* 01984 80B9EB94 8DADEDD4 */ lw $t5, %lo(D_80B9EDD4)($t5)
|
||||
/* 01988 80B9EB98 240705FD */ addiu $a3, $zero, 0x05FD ## $a3 = 000005FD
|
||||
/* 0198C 80B9EB9C AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
|
||||
/* 01990 80B9EBA0 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 01994 80B9EBA4 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 01998 80B9EBA8 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 0199C 80B9EBAC 8FB00034 */ lw $s0, 0x0034($sp)
|
||||
/* 019A0 80B9EBB0 8FB10038 */ lw $s1, 0x0038($sp)
|
||||
/* 019A4 80B9EBB4 03E00008 */ jr $ra
|
||||
/* 019A8 80B9EBB8 27BD00A0 */ addiu $sp, $sp, 0x00A0 ## $sp = 00000000
|
|
@ -1,64 +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_Switch_InitVars
|
||||
.word 0x012A0000, 0x00000010, 0x00030000, 0x00000258
|
||||
.word ObjSwitch_Init
|
||||
.word ObjSwitch_Destroy
|
||||
.word ObjSwitch_Update
|
||||
.word ObjSwitch_Draw
|
||||
glabel D_80B9EC20
|
||||
.word 0x41200000
|
||||
glabel D_80B9EC24
|
||||
.word 0x41200000
|
||||
glabel D_80B9EC28
|
||||
.word 0x00000000
|
||||
glabel D_80B9EC2C
|
||||
.word 0x41F00000
|
||||
glabel D_80B9EC30
|
||||
.word 0x41F00000
|
||||
glabel D_80B9EC34
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0x40000040, 0x00000000, 0x00010000, 0xC1A00000, 0x41980000, 0xC1A00000, 0xC1A00000, 0x41980000, 0x41A00000, 0x41A00000, 0x41980000, 0x41A00000, 0x00000000, 0x00000000, 0x00000000, 0x40000040, 0x00000000, 0x00010000, 0x41A00000, 0x41980000, 0x41A00000, 0x41A00000, 0x41980000, 0xC1A00000, 0xC1A00000, 0x41980000, 0xC1A00000
|
||||
glabel D_80B9ECAC
|
||||
.word 0x0A000900, 0x00020000, 0x00000002
|
||||
.word D_80B9EC34
|
||||
glabel D_80B9ECBC
|
||||
.word 0x04000000, 0x00000000, 0x00000000, 0x0001F824, 0x00000000, 0x00010000, 0x00000000, 0x41B80000, 0x41080000, 0xC1B80000, 0x00000000, 0x41080000, 0x00000000, 0xC1B80000, 0x41080000, 0x00000000, 0x00000000, 0x00000000, 0x0001F824, 0x00000000, 0x00010000, 0x00000000, 0x41B80000, 0x41080000, 0x00000000, 0xC1B80000, 0x41080000, 0x41B80000, 0x00000000, 0x41080000
|
||||
glabel D_80B9ED34
|
||||
.word 0x0A000900, 0x00020000, 0x00000002
|
||||
.word D_80B9ECBC
|
||||
glabel D_80B9ED44
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0xEFC1FFFE, 0x00000000, 0x00010100, 0x00000000, 0x012C0000, 0x00140064
|
||||
glabel D_80B9ED68
|
||||
.word 0x09000939, 0x20000000, 0x00000001
|
||||
.word D_80B9ED44
|
||||
glabel D_80B9ED78
|
||||
.word 0xC8500064, 0xB0F407D0, 0xB0F80190, 0x30FC07D0
|
||||
glabel D_80B9ED88
|
||||
.word 0x05005800, 0x05006170, 0x05005D50, 0x05005D50
|
||||
glabel D_80B9ED98
|
||||
.word 0x0500A8A0, 0x050098A0, 0x0500A0A0, 0x050090A0, 0x0500B0A0, 0x0500B8A0, 0x0500C0A0, 0x0500C0A0
|
||||
glabel D_80B9EDB8
|
||||
.word 0x05006610, 0x05006810
|
||||
glabel D_80B9EDC0
|
||||
.word 0x05006E60
|
||||
glabel D_80B9EDC4
|
||||
.word 0x05007488, 0x00000000, 0x00000000, 0x05006E60
|
||||
glabel D_80B9EDD4
|
||||
.word 0x05006D10, 0x05007340, 0x00000000, 0x00000000, 0x05006D10
|
||||
glabel D_80B9EDE8
|
||||
.word func_80B9E748
|
||||
.word func_80B9E788
|
||||
.word func_80B9E7B4
|
||||
.word func_80B9E904
|
||||
.word func_80B9E904
|
||||
.word 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_80B9EFA0
|
||||
.incbin "baserom/ovl_Obj_Switch", 0x1D90, 0x00000310
|
3
spec
3
spec
|
@ -3520,8 +3520,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_Obj_Switch"
|
||||
include "build/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.o"
|
||||
include "build/data/overlays/actors/z_obj_switch.data.o"
|
||||
include "build/data/overlays/actors/z_obj_switch.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_Obj_Switch/ovl_Obj_Switch_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -5,17 +5,58 @@
|
|||
*/
|
||||
|
||||
#include "z_obj_switch.h"
|
||||
#include "vt.h"
|
||||
|
||||
#define FLAGS 0x00000010
|
||||
|
||||
#define THIS ((ObjSwitch*)thisx)
|
||||
|
||||
// type: (this->dyna.actor.params & 7)
|
||||
// subtype: (this->dyna.actor.params >> 4 & 7)
|
||||
// switch flag: (this->dyna.actor.params >> 8 & 0x3F)
|
||||
// frozen: this->dyna.actor.params >> 7 & 1
|
||||
|
||||
void ObjSwitch_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void ObjSwitch_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void ObjSwitch_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void ObjSwitch_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
void ObjSwitch_FloorUpInit(ObjSwitch* this);
|
||||
void ObjSwitch_FloorUp(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_FloorPressInit(ObjSwitch* this);
|
||||
void ObjSwitch_FloorPress(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_FloorDownInit(ObjSwitch* this);
|
||||
void ObjSwitch_FloorDown(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_FloorReleaseInit(ObjSwitch* this);
|
||||
void ObjSwitch_FloorRelease(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
|
||||
void ObjSwitch_EyeFrozenInit(ObjSwitch* this);
|
||||
void ObjSwitch_EyeInit(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_EyeOpenInit(ObjSwitch* this);
|
||||
void ObjSwitch_EyeOpen(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_EyeClosingInit(ObjSwitch* this);
|
||||
void ObjSwitch_EyeClosing(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_EyeClosedInit(ObjSwitch* this);
|
||||
void ObjSwitch_EyeClosed(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_EyeOpeningInit(ObjSwitch* this);
|
||||
void ObjSwitch_EyeOpening(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
|
||||
void ObjSwitch_CrystalOffInit(ObjSwitch* this);
|
||||
void ObjSwitch_CrystalOff(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_CrystalTurnOnInit(ObjSwitch* this);
|
||||
void ObjSwitch_CrystalTurnOn(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_CrystalOnInit(ObjSwitch* this);
|
||||
void ObjSwitch_CrystalOn(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
void ObjSwitch_CrystalTurnOffInit(ObjSwitch* this);
|
||||
void ObjSwitch_CrystalTurnOff(ObjSwitch* this, GlobalContext* globalCtx);
|
||||
|
||||
extern Gfx D_05005AD0[]; // floor switch, rusty
|
||||
extern ColHeader D_05005FB8;
|
||||
|
||||
// rgba16 32x32 textures
|
||||
extern UNK_TYPE D_050144B0[]; // red plasma/cloud
|
||||
extern UNK_TYPE D_05014CB0[]; // blue plasma/cloud
|
||||
|
||||
const ActorInit Obj_Switch_InitVars = {
|
||||
ACTOR_OBJ_SWITCH,
|
||||
ACTORTYPE_SWITCH,
|
||||
|
@ -27,89 +68,692 @@ const ActorInit Obj_Switch_InitVars = {
|
|||
(ActorFunc)ObjSwitch_Update,
|
||||
(ActorFunc)ObjSwitch_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D210.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D294.s")
|
||||
static f32 sHeights[] = { 10, 10, 0, 30, 30 };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D31C.s")
|
||||
static ColliderTrisItemInit D_80B9EC34[2] = {
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x40000040, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
|
||||
{ { { -20.0f, 19.0f, -20.0f }, { -20.0f, 19.0f, 20.0f }, { 20.0f, 19.0f, 20.0f } } },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x40000040, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
|
||||
{ { { 20.0f, 19.0f, 20.0f }, { 20.0f, 19.0f, -20.0f }, { -20.0f, 19.0f, -20.0f } } },
|
||||
},
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D3B8.s")
|
||||
static ColliderTrisInit sRustyFloorTrisInit = {
|
||||
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
|
||||
2,
|
||||
D_80B9EC34,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D4D8.s")
|
||||
static ColliderTrisItemInit D_80B9ECBC[2] = {
|
||||
{
|
||||
{ 0x04, { 0x00000000, 0x00, 0x00 }, { 0x0001F824, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
|
||||
{ { { 0.0f, 23.0f, 8.5f }, { -23.0f, 0.0f, 8.5f }, { 0.0f, -23.0f, 8.5f } } },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x0001F824, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
|
||||
{ { { 0.0f, 23.0f, 8.5f }, { 0.0f, -23.0f, 8.5f }, { 23.0f, 0.0f, 8.5f } } },
|
||||
},
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D54C.s")
|
||||
static ColliderTrisInit trisColliderEye = {
|
||||
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
|
||||
2,
|
||||
D_80B9ECBC,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D5F8.s")
|
||||
static ColliderJntSphItemInit D_80B9ED44[1] = {
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0xEFC1FFFE, 0x00, 0x00 }, 0x00, 0x01, 0x01 },
|
||||
{ 0, { { 0, 300, 0 }, 20 }, 100 },
|
||||
},
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9D680.s")
|
||||
static ColliderJntSphInit sCyrstalJntSphereInit = {
|
||||
{ COLTYPE_METAL_SHIELD, 0x00, 0x09, 0x39, 0x20, COLSHAPE_JNTSPH },
|
||||
1,
|
||||
D_80B9ED44,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/ObjSwitch_Init.s")
|
||||
static InitChainEntry sInitChain[] = {
|
||||
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneForward, 2000, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneScale, 400, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneDownward, 2000, ICHAIN_STOP),
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/ObjSwitch_Destroy.s")
|
||||
void ObjSwitch_RotateY(Vec3f* dest, Vec3f* src, s16 angle) {
|
||||
f32 s = Math_Sins(angle);
|
||||
f32 c = Math_Coss(angle);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DA48.s")
|
||||
dest->x = src->z * s + src->x * c;
|
||||
dest->y = src->y;
|
||||
dest->z = src->z * c - src->x * s;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DA64.s")
|
||||
void ObjSwitch_InitDynapoly(ObjSwitch* this, GlobalContext* globalCtx, ColHeader* collision,
|
||||
DynaPolyMoveFlag moveFlag) {
|
||||
s32 pad;
|
||||
ColHeader* colHeader = NULL;
|
||||
s32 pad2;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DBD8.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_Switch/func_80B9DBF0.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_switch.c", 531,
|
||||
this->dyna.actor.id, this->dyna.actor.params);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DCB0.s")
|
||||
void ObjSwitch_InitJntSphCollider(ObjSwitch* this, GlobalContext* globalCtx, ColliderJntSphInit* colliderJntSphInit) {
|
||||
ColliderJntSph* colliderJntSph = &this->jntSph.col;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DCD4.s")
|
||||
Collider_InitJntSph(globalCtx, colliderJntSph);
|
||||
Collider_SetJntSph(globalCtx, colliderJntSph, &this->dyna.actor, colliderJntSphInit, this->jntSph.items);
|
||||
func_800D1694(this->dyna.actor.posRot.pos.x,
|
||||
this->dyna.actor.posRot.pos.y + this->dyna.actor.shape.unk_08 * this->dyna.actor.scale.y,
|
||||
this->dyna.actor.posRot.pos.z, &this->dyna.actor.shape.rot);
|
||||
Matrix_Scale(this->dyna.actor.scale.x, this->dyna.actor.scale.y, this->dyna.actor.scale.z, MTXMODE_APPLY);
|
||||
func_800628A4(0, colliderJntSph);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DE20.s")
|
||||
void ObjSwitch_InitTrisCollider(ObjSwitch* this, GlobalContext* globalCtx, ColliderTrisInit* colliderTrisInit) {
|
||||
ColliderTris* colliderTris = &this->tris.col;
|
||||
s32 i;
|
||||
s32 j;
|
||||
Vec3f pos[3];
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DE38.s")
|
||||
Collider_InitTris(globalCtx, colliderTris);
|
||||
Collider_SetTris(globalCtx, colliderTris, &this->dyna.actor, colliderTrisInit, this->tris.items);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DF1C.s")
|
||||
for (i = 0; i < 2; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
ObjSwitch_RotateY(&pos[j], &colliderTrisInit->list[i].dim.vtx[j], this->dyna.actor.initPosRot.rot.y);
|
||||
Math_Vec3f_Sum(&pos[j], &this->dyna.actor.posRot.pos, &pos[j]);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DF8C.s")
|
||||
func_800627A0(colliderTris, i, &pos[0], &pos[1], &pos[2]);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DF9C.s")
|
||||
Actor* ObjSwitch_SpawnIce(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
Actor* thisx = &this->dyna.actor;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9DFF0.s")
|
||||
return Actor_SpawnAsChild(&globalCtx->actorCtx, thisx, globalCtx, ACTOR_OBJ_ICE_POLY, thisx->posRot.pos.x,
|
||||
thisx->posRot.pos.y, thisx->posRot.pos.z, thisx->posRot.rot.x, thisx->posRot.rot.y,
|
||||
thisx->posRot.rot.z, (this->dyna.actor.params >> 8 & 0x3F) << 8);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E004.s")
|
||||
void ObjSwitch_SetOn(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
s32 pad;
|
||||
s32 subType;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E06C.s")
|
||||
if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
this->cooldownOn = false;
|
||||
} else {
|
||||
subType = (this->dyna.actor.params >> 4 & 7);
|
||||
Flags_SetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F));
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E084.s")
|
||||
if (subType == 0 || subType == 4) {
|
||||
func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_CORRECT_CHIME);
|
||||
} else {
|
||||
func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E100.s")
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E118.s")
|
||||
void ObjSwitch_SetOff(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
this->cooldownOn = false;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E1D8.s")
|
||||
if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
Flags_UnsetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F));
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E1F0.s")
|
||||
if ((this->dyna.actor.params >> 4 & 7) == 1) {
|
||||
func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR);
|
||||
this->cooldownOn = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E280.s")
|
||||
void ObjSwitch_UpdateTwoTexScrollXY(ObjSwitch* this) {
|
||||
this->x1TexScroll = (this->x1TexScroll - 1) & 0x7F;
|
||||
this->y1TexScroll = (this->y1TexScroll + 1) & 0x7F;
|
||||
this->x2TexScroll = (this->x2TexScroll + 1) & 0x7F;
|
||||
this->y2TexScroll = (this->y2TexScroll - 1) & 0x7F;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E2A8.s")
|
||||
void ObjSwitch_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
ObjSwitch* this = THIS;
|
||||
s32 switchFlagSet;
|
||||
s32 type;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E3DC.s")
|
||||
switchFlagSet = Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F));
|
||||
type = (this->dyna.actor.params & 7);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E3F4.s")
|
||||
if (type == OBJSWITCH_TYPE_FLOOR || type == OBJSWITCH_TYPE_FLOOR_RUSTY) {
|
||||
ObjSwitch_InitDynapoly(this, globalCtx, &D_05005FB8, 1);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E47C.s")
|
||||
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E4A8.s")
|
||||
if (type == OBJSWITCH_TYPE_FLOOR || type == OBJSWITCH_TYPE_FLOOR_RUSTY) {
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.initPosRot.pos.y + 1.0f;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E56C.s")
|
||||
Actor_SetHeight(&this->dyna.actor, sHeights[type]);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E584.s")
|
||||
if (type == OBJSWITCH_TYPE_FLOOR_RUSTY) {
|
||||
ObjSwitch_InitTrisCollider(this, globalCtx, &sRustyFloorTrisInit);
|
||||
} else if (type == OBJSWITCH_TYPE_EYE) {
|
||||
ObjSwitch_InitTrisCollider(this, globalCtx, &trisColliderEye);
|
||||
} else if (type == OBJSWITCH_TYPE_CRYSTAL || type == OBJSWITCH_TYPE_CRYSTAL_TARGETABLE) {
|
||||
ObjSwitch_InitJntSphCollider(this, globalCtx, &sCyrstalJntSphereInit);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/ObjSwitch_Update.s")
|
||||
if (type == OBJSWITCH_TYPE_CRYSTAL_TARGETABLE) {
|
||||
this->dyna.actor.flags |= 1;
|
||||
this->dyna.actor.unk_1F = 4;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E748.s")
|
||||
this->dyna.actor.colChkInfo.mass = 0xFF;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E788.s")
|
||||
if ((this->dyna.actor.params >> 7 & 1) && (ObjSwitch_SpawnIce(this, globalCtx) == NULL)) {
|
||||
osSyncPrintf(VT_FGCOL(RED));
|
||||
osSyncPrintf("Error : 氷発生失敗 (%s %d)\n", "../z_obj_switch.c", 732);
|
||||
osSyncPrintf(VT_RST);
|
||||
this->dyna.actor.params &= ~0x80;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E7B4.s")
|
||||
if (this->dyna.actor.params >> 7 & 1) {
|
||||
ObjSwitch_EyeFrozenInit(this);
|
||||
} else if (type == OBJSWITCH_TYPE_FLOOR || type == OBJSWITCH_TYPE_FLOOR_RUSTY) {
|
||||
if (switchFlagSet) {
|
||||
ObjSwitch_FloorDownInit(this);
|
||||
} else {
|
||||
ObjSwitch_FloorUpInit(this);
|
||||
}
|
||||
} else if (type == OBJSWITCH_TYPE_EYE) {
|
||||
if (switchFlagSet) {
|
||||
ObjSwitch_EyeClosedInit(this);
|
||||
} else {
|
||||
ObjSwitch_EyeOpenInit(this);
|
||||
}
|
||||
} else if (type == OBJSWITCH_TYPE_CRYSTAL || type == OBJSWITCH_TYPE_CRYSTAL_TARGETABLE) {
|
||||
if (switchFlagSet) {
|
||||
ObjSwitch_CrystalOnInit(this);
|
||||
} else {
|
||||
ObjSwitch_CrystalOffInit(this);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/func_80B9E904.s")
|
||||
osSyncPrintf("(Dungeon switch)(arg_data 0x%04x)\n", this->dyna.actor.params);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Obj_Switch/ObjSwitch_Draw.s")
|
||||
void ObjSwitch_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
ObjSwitch* this = THIS;
|
||||
|
||||
switch ((this->dyna.actor.params & 7)) {
|
||||
case OBJSWITCH_TYPE_FLOOR:
|
||||
case OBJSWITCH_TYPE_FLOOR_RUSTY:
|
||||
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
break;
|
||||
}
|
||||
|
||||
switch ((this->dyna.actor.params & 7)) {
|
||||
case OBJSWITCH_TYPE_FLOOR_RUSTY:
|
||||
case OBJSWITCH_TYPE_EYE:
|
||||
Collider_DestroyTris(globalCtx, &this->tris.col);
|
||||
break;
|
||||
case OBJSWITCH_TYPE_CRYSTAL:
|
||||
case OBJSWITCH_TYPE_CRYSTAL_TARGETABLE:
|
||||
Collider_DestroyJntSph(globalCtx, &this->jntSph.col);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorUpInit(ObjSwitch* this) {
|
||||
this->dyna.actor.scale.y = 33.0f / 200.0f;
|
||||
this->actionFunc = ObjSwitch_FloorUp;
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorUp(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if ((this->dyna.actor.params & 7) == OBJSWITCH_TYPE_FLOOR_RUSTY) {
|
||||
if (this->tris.col.base.acFlags & 2) {
|
||||
ObjSwitch_FloorPressInit(this);
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
this->tris.col.base.acFlags &= ~2;
|
||||
} else {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->tris.col.base);
|
||||
}
|
||||
} else {
|
||||
switch ((this->dyna.actor.params >> 4 & 7)) {
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_0:
|
||||
if (func_8004356C(&this->dyna)) {
|
||||
ObjSwitch_FloorPressInit(this);
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_1:
|
||||
if ((this->dyna.unk_160 & 2) && !(this->unk_17F & 2)) {
|
||||
ObjSwitch_FloorPressInit(this);
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_2:
|
||||
if (func_800435B4(&this->dyna)) {
|
||||
ObjSwitch_FloorPressInit(this);
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_3:
|
||||
if (func_800435B4(&this->dyna)) {
|
||||
ObjSwitch_FloorPressInit(this);
|
||||
ObjSwitch_SetOff(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorPressInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_FloorPress;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorPress(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if ((this->dyna.actor.params >> 4 & 7) == OBJSWITCH_SUBTYPE_FLOOR_3 || !this->cooldownOn ||
|
||||
func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
this->dyna.actor.scale.y -= 99.0f / 2000.0f;
|
||||
if (this->dyna.actor.scale.y <= 33.0f / 2000.0f) {
|
||||
ObjSwitch_FloorDownInit(this);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_FOOT_SWITCH);
|
||||
func_800AA000(this->dyna.actor.xyzDistFromLinkSq, 120, 20, 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorDownInit(ObjSwitch* this) {
|
||||
this->dyna.actor.scale.y = 33.0f / 2000.0f;
|
||||
this->releaseTimer = 6;
|
||||
this->actionFunc = ObjSwitch_FloorDown;
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorDown(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
switch ((this->dyna.actor.params >> 4 & 7)) {
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_0:
|
||||
if (!Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
ObjSwitch_FloorReleaseInit(this);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_1:
|
||||
if ((this->dyna.unk_160 & 2) && !(this->unk_17F & 2)) {
|
||||
ObjSwitch_FloorReleaseInit(this);
|
||||
ObjSwitch_SetOff(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_2:
|
||||
case OBJSWITCH_SUBTYPE_FLOOR_3:
|
||||
if (!func_800435B4(&this->dyna) && !Player_InCsMode(globalCtx)) {
|
||||
if (this->releaseTimer <= 0) {
|
||||
ObjSwitch_FloorReleaseInit(this);
|
||||
if ((this->dyna.actor.params >> 4 & 7) == OBJSWITCH_SUBTYPE_FLOOR_2) {
|
||||
ObjSwitch_SetOff(this, globalCtx);
|
||||
} else {
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this->releaseTimer = 6;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorReleaseInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_FloorRelease;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_FloorRelease(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
s16 subType = (this->dyna.actor.params >> 4 & 7);
|
||||
|
||||
if (((subType != OBJSWITCH_SUBTYPE_FLOOR_1) && (subType != OBJSWITCH_SUBTYPE_FLOOR_3)) || !this->cooldownOn ||
|
||||
func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
this->dyna.actor.scale.y += 99.0f / 2000.0f;
|
||||
if (this->dyna.actor.scale.y >= 33.0f / 200.0f) {
|
||||
ObjSwitch_FloorUpInit(this);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_FOOT_SWITCH);
|
||||
if (subType == OBJSWITCH_SUBTYPE_FLOOR_1) {
|
||||
func_800AA000(this->dyna.actor.xyzDistFromLinkSq, 120, 20, 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
s32 ObjSwitch_EyeIsHit(ObjSwitch* this) {
|
||||
Actor* collidingActor;
|
||||
s16 yawDiff;
|
||||
|
||||
if ((this->tris.col.base.acFlags & 2) && !(this->unk_17F & 2)) {
|
||||
collidingActor = this->tris.col.base.ac;
|
||||
if (collidingActor != NULL) {
|
||||
yawDiff = collidingActor->posRot.rot.y - this->dyna.actor.shape.rot.y;
|
||||
if (ABS(yawDiff) > 0x5000) {
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeFrozenInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_EyeInit;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeInit(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
ObjSwitch_EyeClosedInit(this);
|
||||
} else {
|
||||
ObjSwitch_EyeOpenInit(this);
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeOpenInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_EyeOpen;
|
||||
this->eyeTexIndex = 0;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeOpen(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if (ObjSwitch_EyeIsHit(this) || (this->dyna.actor.params >> 7 & 1)) {
|
||||
ObjSwitch_EyeClosingInit(this);
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
this->dyna.actor.params &= ~0x80;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeClosingInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_EyeClosing;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeClosing(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if (!this->cooldownOn || func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
this->eyeTexIndex++;
|
||||
if (this->eyeTexIndex >= 3) {
|
||||
ObjSwitch_EyeClosedInit(this);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_FOOT_SWITCH);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeClosedInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_EyeClosed;
|
||||
this->eyeTexIndex = 3;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeClosed(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
switch ((this->dyna.actor.params >> 4 & 7)) {
|
||||
case OBJSWITCH_SUBTYPE_EYE_0:
|
||||
if (!Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
ObjSwitch_EyeOpeningInit(this);
|
||||
this->dyna.actor.params &= ~0x80;
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_EYE_1:
|
||||
if (ObjSwitch_EyeIsHit(this) || (this->dyna.actor.params >> 7 & 1)) {
|
||||
ObjSwitch_EyeOpeningInit(this);
|
||||
ObjSwitch_SetOff(this, globalCtx);
|
||||
this->dyna.actor.params &= ~0x80;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeOpeningInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_EyeOpening;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_EyeOpening(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if ((this->dyna.actor.params >> 4 & 7) != OBJSWITCH_SUBTYPE_EYE_1 || !this->cooldownOn ||
|
||||
func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
this->eyeTexIndex--;
|
||||
if (this->eyeTexIndex <= 0) {
|
||||
ObjSwitch_EyeOpenInit(this);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_FOOT_SWITCH);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalOffInit(ObjSwitch* this) {
|
||||
this->crystalColor.r = 0;
|
||||
this->crystalColor.g = 0;
|
||||
this->crystalColor.b = 0;
|
||||
this->crystalSubtype1texture = D_050144B0;
|
||||
this->actionFunc = ObjSwitch_CrystalOff;
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalOff(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
switch ((this->dyna.actor.params >> 4 & 7)) {
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_0:
|
||||
if ((this->jntSph.col.base.acFlags & 2) && this->disableAcTimer <= 0) {
|
||||
this->disableAcTimer = 10;
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
ObjSwitch_CrystalTurnOnInit(this);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_4:
|
||||
if (((this->jntSph.col.base.acFlags & 2) && this->disableAcTimer <= 0) ||
|
||||
Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
this->disableAcTimer = 10;
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
ObjSwitch_CrystalTurnOnInit(this);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_1:
|
||||
if ((this->jntSph.col.base.acFlags & 2) && !(this->unk_17F & 2) && this->disableAcTimer <= 0) {
|
||||
this->disableAcTimer = 10;
|
||||
ObjSwitch_SetOn(this, globalCtx);
|
||||
ObjSwitch_CrystalTurnOnInit(this);
|
||||
}
|
||||
ObjSwitch_UpdateTwoTexScrollXY(this);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalTurnOnInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_CrystalTurnOn;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalTurnOn(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if (!this->cooldownOn || func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
ObjSwitch_CrystalOnInit(this);
|
||||
if ((this->dyna.actor.params >> 4 & 7) == OBJSWITCH_SUBTYPE_CRYSTAL_1) {
|
||||
ObjSwitch_UpdateTwoTexScrollXY(this);
|
||||
}
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_DIAMOND_SWITCH);
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalOnInit(ObjSwitch* this) {
|
||||
this->crystalColor.r = 255;
|
||||
this->crystalColor.g = 255;
|
||||
this->crystalColor.b = 255;
|
||||
this->crystalSubtype1texture = D_05014CB0;
|
||||
this->actionFunc = ObjSwitch_CrystalOn;
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalOn(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
switch ((this->dyna.actor.params >> 4 & 7)) {
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_0:
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_4:
|
||||
if (!Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F))) {
|
||||
ObjSwitch_CrystalTurnOffInit(this);
|
||||
}
|
||||
break;
|
||||
case OBJSWITCH_SUBTYPE_CRYSTAL_1:
|
||||
if ((this->jntSph.col.base.acFlags & 2) && !(this->unk_17F & 2) && this->disableAcTimer <= 0) {
|
||||
this->disableAcTimer = 10;
|
||||
globalCtx = globalCtx;
|
||||
ObjSwitch_CrystalTurnOffInit(this);
|
||||
ObjSwitch_SetOff(this, globalCtx);
|
||||
}
|
||||
break;
|
||||
}
|
||||
ObjSwitch_UpdateTwoTexScrollXY(this);
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalTurnOffInit(ObjSwitch* this) {
|
||||
this->actionFunc = ObjSwitch_CrystalTurnOff;
|
||||
this->cooldownTimer = 100;
|
||||
}
|
||||
|
||||
void ObjSwitch_CrystalTurnOff(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
if ((this->dyna.actor.params >> 4 & 7) != OBJSWITCH_SUBTYPE_CRYSTAL_1 || !this->cooldownOn ||
|
||||
func_8005B198() == this->dyna.actor.type || this->cooldownTimer <= 0) {
|
||||
ObjSwitch_CrystalOffInit(this);
|
||||
ObjSwitch_UpdateTwoTexScrollXY(this);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_DIAMOND_SWITCH);
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
ObjSwitch* this = THIS;
|
||||
|
||||
if (this->releaseTimer > 0) {
|
||||
this->releaseTimer--;
|
||||
}
|
||||
if (this->cooldownTimer > 0) {
|
||||
this->cooldownTimer--;
|
||||
}
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
|
||||
switch ((this->dyna.actor.params & 7)) {
|
||||
case OBJSWITCH_TYPE_FLOOR:
|
||||
case OBJSWITCH_TYPE_FLOOR_RUSTY:
|
||||
this->unk_17F = this->dyna.unk_160;
|
||||
break;
|
||||
case OBJSWITCH_TYPE_EYE:
|
||||
this->unk_17F = this->tris.col.base.acFlags;
|
||||
this->tris.col.base.acFlags &= ~2;
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->tris.col.base);
|
||||
break;
|
||||
case OBJSWITCH_TYPE_CRYSTAL:
|
||||
case OBJSWITCH_TYPE_CRYSTAL_TARGETABLE:
|
||||
if (!Player_InCsMode(globalCtx) && this->disableAcTimer > 0) {
|
||||
this->disableAcTimer--;
|
||||
}
|
||||
this->unk_17F = this->jntSph.col.base.acFlags;
|
||||
this->jntSph.col.base.acFlags &= ~2;
|
||||
if (this->disableAcTimer <= 0) {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->jntSph.col.base);
|
||||
}
|
||||
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->jntSph.col.base);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void ObjSwitch_DrawFloor(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
static Gfx* floorDlists[] = { 0x05005800, 0x05006170, 0x05005D50, 0x05005D50 };
|
||||
|
||||
Gfx_DrawDListOpa(globalCtx, floorDlists[(this->dyna.actor.params >> 4 & 7)]);
|
||||
}
|
||||
|
||||
void ObjSwitch_DrawFloorRusty(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
Gfx_DrawDListOpa(globalCtx, D_05005AD0);
|
||||
}
|
||||
|
||||
static UNK_PTR sEyeTextures[][4] = {
|
||||
// rgba16 32x32 textures
|
||||
// yellow eye
|
||||
{
|
||||
0x0500A8A0, // open
|
||||
0x050098A0, // almost open
|
||||
0x0500A0A0, // almost closed
|
||||
0x050090A0, // closed
|
||||
},
|
||||
// silver eye
|
||||
{
|
||||
0x0500B0A0, // open
|
||||
0x0500B8A0, // half-closed
|
||||
0x0500C0A0, // closed
|
||||
0x0500C0A0, // closed
|
||||
},
|
||||
};
|
||||
|
||||
void ObjSwitch_DrawEye(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
static Gfx* eyeDlists[] = { 0x05006610, 0x05006810 };
|
||||
s32 pad;
|
||||
s32 subType = (this->dyna.actor.params >> 4 & 7);
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1459);
|
||||
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1462),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(sEyeTextures[subType][this->eyeTexIndex]));
|
||||
gSPDisplayList(POLY_OPA_DISP++, eyeDlists[subType]);
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1471);
|
||||
}
|
||||
|
||||
void ObjSwitch_DrawCrystal(ObjSwitch* this, GlobalContext* globalCtx) {
|
||||
static Gfx* xluDLists[] = { 0x05006E60, 0x05007488, NULL, NULL, 0x05006E60 };
|
||||
static Gfx* opaDLists[] = { 0x05006D10, 0x05007340, NULL, NULL, 0x05006D10 };
|
||||
s32 pad1;
|
||||
s32 pad2;
|
||||
s32 subType;
|
||||
|
||||
subType = (this->dyna.actor.params >> 4 & 7);
|
||||
func_8002ED80(&this->dyna.actor, globalCtx, 0);
|
||||
|
||||
if (1) {}
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1494);
|
||||
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_switch.c", 0x5D9),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(POLY_XLU_DISP++, xluDLists[subType]);
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1502);
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1507);
|
||||
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1511),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
if (subType == OBJSWITCH_SUBTYPE_CRYSTAL_1) {
|
||||
gSPSegment(POLY_OPA_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(this->crystalSubtype1texture));
|
||||
}
|
||||
|
||||
gDPSetEnvColor(POLY_OPA_DISP++, this->crystalColor.r, this->crystalColor.g, this->crystalColor.b, 128);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08,
|
||||
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, this->x1TexScroll, this->y1TexScroll, 0x20, 0x20, 1,
|
||||
this->x2TexScroll, this->y2TexScroll, 0x20, 0x20));
|
||||
gSPDisplayList(POLY_OPA_DISP++, opaDLists[subType]);
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_obj_switch.c", 1533);
|
||||
}
|
||||
|
||||
static ObjSwitchActionFunc sDrawFuncs[] = {
|
||||
ObjSwitch_DrawFloor, ObjSwitch_DrawFloorRusty, ObjSwitch_DrawEye, ObjSwitch_DrawCrystal, ObjSwitch_DrawCrystal,
|
||||
};
|
||||
|
||||
void ObjSwitch_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
ObjSwitch* this = THIS;
|
||||
|
||||
sDrawFuncs[(this->dyna.actor.params & 7)](this, globalCtx);
|
||||
}
|
||||
|
|
|
@ -6,9 +6,63 @@
|
|||
|
||||
struct ObjSwitch;
|
||||
|
||||
typedef void (*ObjSwitchActionFunc)(struct ObjSwitch*, GlobalContext*);
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OBJSWITCH_TYPE_FLOOR,
|
||||
/* 1 */ OBJSWITCH_TYPE_FLOOR_RUSTY,
|
||||
/* 2 */ OBJSWITCH_TYPE_EYE,
|
||||
/* 3 */ OBJSWITCH_TYPE_CRYSTAL,
|
||||
/* 4 */ OBJSWITCH_TYPE_CRYSTAL_TARGETABLE
|
||||
} ObjSwitchType;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OBJSWITCH_SUBTYPE_FLOOR_0,
|
||||
/* 1 */ OBJSWITCH_SUBTYPE_FLOOR_1,
|
||||
/* 2 */ OBJSWITCH_SUBTYPE_FLOOR_2,
|
||||
/* 3 */ OBJSWITCH_SUBTYPE_FLOOR_3
|
||||
} ObjSwitchSubTypeFloor;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OBJSWITCH_SUBTYPE_EYE_0,
|
||||
/* 1 */ OBJSWITCH_SUBTYPE_EYE_1
|
||||
} ObjSwitchSubTypeEye;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ OBJSWITCH_SUBTYPE_CRYSTAL_0,
|
||||
/* 1 */ OBJSWITCH_SUBTYPE_CRYSTAL_1,
|
||||
/* 4 */ OBJSWITCH_SUBTYPE_CRYSTAL_4 = 4
|
||||
} ObjSwitchSubTypeCrystal;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ ColliderJntSph col;
|
||||
/* 0x20 */ ColliderJntSphItem items[2];
|
||||
} ObjSwitchJntSph;
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ ColliderTris col;
|
||||
/* 0x20 */ ColliderTrisItem items[2];
|
||||
} ObjSwitchTris;
|
||||
|
||||
typedef struct ObjSwitch {
|
||||
/* 0x0000 */ DynaPolyActor dyna;
|
||||
/* 0x0164 */ char unk_164[0xF4];
|
||||
/* 0x0164 */ ObjSwitchActionFunc actionFunc;
|
||||
/* 0x0168 */ s16 releaseTimer; // used for SUBTYPE_FLOOR_2 and SUBTYPE_FLOOR_3
|
||||
/* 0x016A */ s16 disableAcTimer;
|
||||
/* 0x016C */ s16 cooldownTimer;
|
||||
/* 0x016E */ u8 cooldownOn;
|
||||
/* 0x0170 */ s16 eyeTexIndex;
|
||||
/* 0x0174 */ UNK_PTR crystalSubtype1texture;
|
||||
/* 0x0178 */ u8 x1TexScroll;
|
||||
/* 0x0179 */ u8 y1TexScroll;
|
||||
/* 0x017A */ u8 x2TexScroll;
|
||||
/* 0x017B */ u8 y2TexScroll;
|
||||
/* 0x017C */ Color_RGB8 crystalColor;
|
||||
/* 0x017F */ u8 unk_17F; // used for different purposes between floor and eye switch
|
||||
union {
|
||||
/* 0x0180 */ ObjSwitchJntSph jntSph;
|
||||
/* 0x0180 */ ObjSwitchTris tris;
|
||||
};
|
||||
} ObjSwitch; // size = 0x0258
|
||||
|
||||
extern const ActorInit Obj_Switch_InitVars;
|
||||
|
|
|
@ -812,6 +812,28 @@ D_06005810 = 0x06005810;
|
|||
D_06000180 = 0x06000180;
|
||||
D_06000360 = 0x06000360;
|
||||
|
||||
// z_obj_switch
|
||||
D_05005800 = 0x05005800;
|
||||
D_05005AD0 = 0x05005AD0;
|
||||
D_05005D50 = 0x05005D50;
|
||||
D_05005FB8 = 0x05005FB8;
|
||||
D_05006170 = 0x05006170;
|
||||
D_05006610 = 0x05006610;
|
||||
D_05006810 = 0x05006810;
|
||||
D_05006D10 = 0x05006D10;
|
||||
D_05006E60 = 0x05006E60;
|
||||
D_05007340 = 0x05007340;
|
||||
D_05007488 = 0x05007488;
|
||||
D_050090A0 = 0x050090A0;
|
||||
D_050098A0 = 0x050098A0;
|
||||
D_0500A0A0 = 0x0500A0A0;
|
||||
D_0500A8A0 = 0x0500A8A0;
|
||||
D_0500B0A0 = 0x0500B0A0;
|
||||
D_0500B8A0 = 0x0500B8A0;
|
||||
D_0500C0A0 = 0x0500C0A0;
|
||||
D_050144B0 = 0x050144B0;
|
||||
D_05014CB0 = 0x05014CB0;
|
||||
|
||||
// z_obj_lightswitch
|
||||
D_06000260 = 0x06000260;
|
||||
D_06000398 = 0x06000398;
|
||||
|
|
Loading…
Add table
Reference in a new issue