mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-23 13:59:40 +00:00
z_en_fd, z_en_fd_fire, and z_en_fw (#415)
* EnFd OK * decompile En_Fd_Fire, document some of En_Fd * fw wip * match a few more of ovl_en_fw, properly organize data * Ovl_En_Fw OK * Documentation, formatting. * change Color_RGBA8_n to Color_RGBA8 * PR updates * fix errors with merge * review * dunno why jenkins failed * review Co-authored-by: fig <fig02srl@gmail.com>
This commit is contained in:
parent
4beeedd116
commit
e983d2b72b
@ -1,11 +0,0 @@
|
||||
glabel EnFd_Destroy
|
||||
/* 00C28 80A0C2E8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00C2C 80A0C2EC 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 00C30 80A0C2F0 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00C34 80A0C2F4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00C38 80A0C2F8 0C016F32 */ jal Collider_DestroyJntSph
|
||||
/* 00C3C 80A0C2FC 24C50194 */ addiu $a1, $a2, 0x0194 ## $a1 = 00000194
|
||||
/* 00C40 80A0C300 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00C44 80A0C304 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00C48 80A0C308 03E00008 */ jr $ra
|
||||
/* 00C4C 80A0C30C 00000000 */ nop
|
@ -1,279 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80A0E120
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0E130
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
.late_rodata
|
||||
glabel D_80A0E1D8
|
||||
.float 0.9
|
||||
|
||||
.text
|
||||
glabel EnFd_Draw
|
||||
/* 0195C 80A0D01C 27BDFF60 */ addiu $sp, $sp, 0xFF60 ## $sp = FFFFFF60
|
||||
/* 01960 80A0D020 3C0F80A1 */ lui $t7, %hi(D_80A0E0D0) ## $t7 = 80A10000
|
||||
/* 01964 80A0D024 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 01968 80A0D028 AFB10038 */ sw $s1, 0x0038($sp)
|
||||
/* 0196C 80A0D02C AFB00034 */ sw $s0, 0x0034($sp)
|
||||
/* 01970 80A0D030 AFA500A4 */ sw $a1, 0x00A4($sp)
|
||||
/* 01974 80A0D034 25EFE0D0 */ addiu $t7, $t7, %lo(D_80A0E0D0) ## $t7 = 80A0E0D0
|
||||
/* 01978 80A0D038 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0E0D0
|
||||
/* 0197C 80A0D03C 27AE008C */ addiu $t6, $sp, 0x008C ## $t6 = FFFFFFEC
|
||||
/* 01980 80A0D040 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0E0D4
|
||||
/* 01984 80A0D044 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFEC
|
||||
/* 01988 80A0D048 8DF90008 */ lw $t9, 0x0008($t7) ## 80A0E0D8
|
||||
/* 0198C 80A0D04C 3C0980A1 */ lui $t1, %hi(D_80A0E0DC) ## $t1 = 80A10000
|
||||
/* 01990 80A0D050 2529E0DC */ addiu $t1, $t1, %lo(D_80A0E0DC) ## $t1 = 80A0E0DC
|
||||
/* 01994 80A0D054 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF0
|
||||
/* 01998 80A0D058 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF4
|
||||
/* 0199C 80A0D05C 8D2B0000 */ lw $t3, 0x0000($t1) ## 80A0E0DC
|
||||
/* 019A0 80A0D060 27A80080 */ addiu $t0, $sp, 0x0080 ## $t0 = FFFFFFE0
|
||||
/* 019A4 80A0D064 8D2A0004 */ lw $t2, 0x0004($t1) ## 80A0E0E0
|
||||
/* 019A8 80A0D068 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE0
|
||||
/* 019AC 80A0D06C 8D2B0008 */ lw $t3, 0x0008($t1) ## 80A0E0E4
|
||||
/* 019B0 80A0D070 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE4
|
||||
/* 019B4 80A0D074 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 019B8 80A0D078 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFE8
|
||||
/* 019BC 80A0D07C 8FAC00A4 */ lw $t4, 0x00A4($sp)
|
||||
/* 019C0 80A0D080 3C0680A1 */ lui $a2, %hi(D_80A0E120) ## $a2 = 80A10000
|
||||
/* 019C4 80A0D084 24C6E120 */ addiu $a2, $a2, %lo(D_80A0E120) ## $a2 = 80A0E120
|
||||
/* 019C8 80A0D088 8D8D009C */ lw $t5, 0x009C($t4) ## 0000009C
|
||||
/* 019CC 80A0D08C 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFC4
|
||||
/* 019D0 80A0D090 240706D7 */ addiu $a3, $zero, 0x06D7 ## $a3 = 000006D7
|
||||
/* 019D4 80A0D094 AFAD007C */ sw $t5, 0x007C($sp)
|
||||
/* 019D8 80A0D098 8D850000 */ lw $a1, 0x0000($t4) ## 00000000
|
||||
/* 019DC 80A0D09C 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 019E0 80A0D0A0 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 019E4 80A0D0A4 0C034213 */ jal Matrix_Push
|
||||
/* 019E8 80A0D0A8 00000000 */ nop
|
||||
/* 019EC 80A0D0AC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 019F0 80A0D0B0 0C2836D1 */ jal func_80A0DB44
|
||||
/* 019F4 80A0D0B4 8FA500A4 */ lw $a1, 0x00A4($sp)
|
||||
/* 019F8 80A0D0B8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 019FC 80A0D0BC 0C2835CC */ jal func_80A0D730
|
||||
/* 01A00 80A0D0C0 8FA500A4 */ lw $a1, 0x00A4($sp)
|
||||
/* 01A04 80A0D0C4 0C034221 */ jal Matrix_Pull
|
||||
/* 01A08 80A0D0C8 00000000 */ nop
|
||||
/* 01A0C 80A0D0CC 8E2F0190 */ lw $t7, 0x0190($s1) ## 00000190
|
||||
/* 01A10 80A0D0D0 3C0E80A1 */ lui $t6, %hi(func_80A0C310) ## $t6 = 80A10000
|
||||
/* 01A14 80A0D0D4 25CEC310 */ addiu $t6, $t6, %lo(func_80A0C310) ## $t6 = 80A0C310
|
||||
/* 01A18 80A0D0D8 11CF00C0 */ beq $t6, $t7, .L80A0D3DC
|
||||
/* 01A1C 80A0D0DC 3C0180A1 */ lui $at, %hi(D_80A0E1D8) ## $at = 80A10000
|
||||
/* 01A20 80A0D0E0 C62404CC */ lwc1 $f4, 0x04CC($s1) ## 000004CC
|
||||
/* 01A24 80A0D0E4 C426E1D8 */ lwc1 $f6, %lo(D_80A0E1D8)($at)
|
||||
/* 01A28 80A0D0E8 8FB800A4 */ lw $t8, 0x00A4($sp)
|
||||
/* 01A2C 80A0D0EC 4606203C */ c.lt.s $f4, $f6
|
||||
/* 01A30 80A0D0F0 00000000 */ nop
|
||||
/* 01A34 80A0D0F4 450300BA */ bc1tl .L80A0D3E0
|
||||
/* 01A38 80A0D0F8 8FA800A4 */ lw $t0, 0x00A4($sp)
|
||||
/* 01A3C 80A0D0FC 0C024F61 */ jal func_80093D84
|
||||
/* 01A40 80A0D100 8F040000 */ lw $a0, 0x0000($t8) ## 00000000
|
||||
/* 01A44 80A0D104 922200AF */ lbu $v0, 0x00AF($s1) ## 000000AF
|
||||
/* 01A48 80A0D108 3C08FA00 */ lui $t0, 0xFA00 ## $t0 = FA000000
|
||||
/* 01A4C 80A0D10C 35080080 */ ori $t0, $t0, 0x0080 ## $t0 = FA000080
|
||||
/* 01A50 80A0D110 2442FFFF */ addiu $v0, $v0, 0xFFFF ## $v0 = FFFFFFFF
|
||||
/* 01A54 80A0D114 04410003 */ bgez $v0, .L80A0D124
|
||||
/* 01A58 80A0D118 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 01A5C 80A0D11C 10000007 */ beq $zero, $zero, .L80A0D13C
|
||||
/* 01A60 80A0D120 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
.L80A0D124:
|
||||
/* 01A64 80A0D124 28410018 */ slti $at, $v0, 0x0018
|
||||
/* 01A68 80A0D128 14200003 */ bne $at, $zero, .L80A0D138
|
||||
/* 01A6C 80A0D12C 00401825 */ or $v1, $v0, $zero ## $v1 = FFFFFFFF
|
||||
/* 01A70 80A0D130 10000001 */ beq $zero, $zero, .L80A0D138
|
||||
/* 01A74 80A0D134 24030017 */ addiu $v1, $zero, 0x0017 ## $v1 = 00000017
|
||||
.L80A0D138:
|
||||
/* 01A78 80A0D138 00602825 */ or $a1, $v1, $zero ## $a1 = 00000017
|
||||
.L80A0D13C:
|
||||
/* 01A7C 80A0D13C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01A80 80A0D140 27A9008C */ addiu $t1, $sp, 0x008C ## $t1 = FFFFFFEC
|
||||
/* 01A84 80A0D144 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 01A88 80A0D148 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000007
|
||||
/* 01A8C 80A0D14C AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0
|
||||
/* 01A90 80A0D150 AC480000 */ sw $t0, 0x0000($v0) ## FFFFFFFF
|
||||
/* 01A94 80A0D154 C62804CC */ lwc1 $f8, 0x04CC($s1) ## 000004CC
|
||||
/* 01A98 80A0D158 00402025 */ or $a0, $v0, $zero ## $a0 = FFFFFFFF
|
||||
/* 01A9C 80A0D15C 04A10003 */ bgez $a1, .L80A0D16C
|
||||
/* 01AA0 80A0D160 000530C3 */ sra $a2, $a1, 3
|
||||
/* 01AA4 80A0D164 24A10007 */ addiu $at, $a1, 0x0007 ## $at = 0000001E
|
||||
/* 01AA8 80A0D168 000130C3 */ sra $a2, $at, 3
|
||||
.L80A0D16C:
|
||||
/* 01AAC 80A0D16C 00063080 */ sll $a2, $a2, 2
|
||||
/* 01AB0 80A0D170 00C91821 */ addu $v1, $a2, $t1
|
||||
/* 01AB4 80A0D174 906B0002 */ lbu $t3, 0x0002($v1) ## 00000019
|
||||
/* 01AB8 80A0D178 906E0000 */ lbu $t6, 0x0000($v1) ## 00000017
|
||||
/* 01ABC 80A0D17C 90680001 */ lbu $t0, 0x0001($v1) ## 00000018
|
||||
/* 01AC0 80A0D180 000B6A00 */ sll $t5, $t3, 8
|
||||
/* 01AC4 80A0D184 444BF800 */ cfc1 $t3, $31
|
||||
/* 01AC8 80A0D188 44CCF800 */ ctc1 $t4, $31
|
||||
/* 01ACC 80A0D18C 000E7E00 */ sll $t7, $t6, 24
|
||||
/* 01AD0 80A0D190 01AFC025 */ or $t8, $t5, $t7 ## $t8 = 00000000
|
||||
/* 01AD4 80A0D194 460042A4 */ cvt.w.s $f10, $f8
|
||||
/* 01AD8 80A0D198 00084C00 */ sll $t1, $t0, 16
|
||||
/* 01ADC 80A0D19C 03095025 */ or $t2, $t8, $t1 ## $t2 = FFFFFFEC
|
||||
/* 01AE0 80A0D1A0 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 01AE4 80A0D1A4 444CF800 */ cfc1 $t4, $31
|
||||
/* 01AE8 80A0D1A8 27B80080 */ addiu $t8, $sp, 0x0080 ## $t8 = FFFFFFE0
|
||||
/* 01AEC 80A0D1AC 3C08FB00 */ lui $t0, 0xFB00 ## $t0 = FB000000
|
||||
/* 01AF0 80A0D1B0 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000
|
||||
/* 01AF4 80A0D1B4 11800012 */ beq $t4, $zero, .L80A0D200
|
||||
/* 01AF8 80A0D1B8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 01AFC 80A0D1BC 44815000 */ mtc1 $at, $f10 ## $f10 = 2147483648.00
|
||||
/* 01B00 80A0D1C0 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 01B04 80A0D1C4 460A4281 */ sub.s $f10, $f8, $f10
|
||||
/* 01B08 80A0D1C8 44CCF800 */ ctc1 $t4, $31
|
||||
/* 01B0C 80A0D1CC 00000000 */ nop
|
||||
/* 01B10 80A0D1D0 460052A4 */ cvt.w.s $f10, $f10
|
||||
/* 01B14 80A0D1D4 444CF800 */ cfc1 $t4, $31
|
||||
/* 01B18 80A0D1D8 00000000 */ nop
|
||||
/* 01B1C 80A0D1DC 318C0078 */ andi $t4, $t4, 0x0078 ## $t4 = 00000000
|
||||
/* 01B20 80A0D1E0 15800005 */ bne $t4, $zero, .L80A0D1F8
|
||||
/* 01B24 80A0D1E4 00000000 */ nop
|
||||
/* 01B28 80A0D1E8 440C5000 */ mfc1 $t4, $f10
|
||||
/* 01B2C 80A0D1EC 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01B30 80A0D1F0 10000007 */ beq $zero, $zero, .L80A0D210
|
||||
/* 01B34 80A0D1F4 01816025 */ or $t4, $t4, $at ## $t4 = 80000000
|
||||
.L80A0D1F8:
|
||||
/* 01B38 80A0D1F8 10000005 */ beq $zero, $zero, .L80A0D210
|
||||
/* 01B3C 80A0D1FC 240CFFFF */ addiu $t4, $zero, 0xFFFF ## $t4 = FFFFFFFF
|
||||
.L80A0D200:
|
||||
/* 01B40 80A0D200 440C5000 */ mfc1 $t4, $f10
|
||||
/* 01B44 80A0D204 00000000 */ nop
|
||||
/* 01B48 80A0D208 0580FFFB */ bltz $t4, .L80A0D1F8
|
||||
/* 01B4C 80A0D20C 00000000 */ nop
|
||||
.L80A0D210:
|
||||
/* 01B50 80A0D210 01807025 */ or $t6, $t4, $zero ## $t6 = FFFFFFFF
|
||||
/* 01B54 80A0D214 31CD00FF */ andi $t5, $t6, 0x00FF ## $t5 = 000000FF
|
||||
/* 01B58 80A0D218 014D7825 */ or $t7, $t2, $t5 ## $t7 = FFFFFFFF
|
||||
/* 01B5C 80A0D21C AC8F0004 */ sw $t7, 0x0004($a0) ## 00000003
|
||||
/* 01B60 80A0D220 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0
|
||||
/* 01B64 80A0D224 44CBF800 */ ctc1 $t3, $31
|
||||
/* 01B68 80A0D228 00D81821 */ addu $v1, $a2, $t8
|
||||
/* 01B6C 80A0D22C 24990008 */ addiu $t9, $a0, 0x0008 ## $t9 = 00000007
|
||||
/* 01B70 80A0D230 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0
|
||||
/* 01B74 80A0D234 AC880000 */ sw $t0, 0x0000($a0) ## FFFFFFFF
|
||||
/* 01B78 80A0D238 906B0002 */ lbu $t3, 0x0002($v1) ## 00000019
|
||||
/* 01B7C 80A0D23C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 01B80 80A0D240 C63004CC */ lwc1 $f16, 0x04CC($s1) ## 000004CC
|
||||
/* 01B84 80A0D244 000B6200 */ sll $t4, $t3, 8
|
||||
/* 01B88 80A0D248 444BF800 */ cfc1 $t3, $31
|
||||
/* 01B8C 80A0D24C 44CEF800 */ ctc1 $t6, $31
|
||||
/* 01B90 80A0D250 90680001 */ lbu $t0, 0x0001($v1) ## 00000018
|
||||
/* 01B94 80A0D254 906A0000 */ lbu $t2, 0x0000($v1) ## 00000017
|
||||
/* 01B98 80A0D258 460084A4 */ cvt.w.s $f18, $f16
|
||||
/* 01B9C 80A0D25C 0008C400 */ sll $t8, $t0, 16
|
||||
/* 01BA0 80A0D260 000A6E00 */ sll $t5, $t2, 24
|
||||
/* 01BA4 80A0D264 018D7825 */ or $t7, $t4, $t5 ## $t7 = FFFFFFFF
|
||||
/* 01BA8 80A0D268 444EF800 */ cfc1 $t6, $31
|
||||
/* 01BAC 80A0D26C 3C08DB06 */ lui $t0, 0xDB06 ## $t0 = DB060000
|
||||
/* 01BB0 80A0D270 01F84825 */ or $t1, $t7, $t8 ## $t1 = FFFFFFFF
|
||||
/* 01BB4 80A0D274 31CE0078 */ andi $t6, $t6, 0x0078 ## $t6 = 00000000
|
||||
/* 01BB8 80A0D278 11C00013 */ beq $t6, $zero, .L80A0D2C8
|
||||
/* 01BBC 80A0D27C 35080020 */ ori $t0, $t0, 0x0020 ## $t0 = DB060020
|
||||
/* 01BC0 80A0D280 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 01BC4 80A0D284 44819000 */ mtc1 $at, $f18 ## $f18 = 2147483648.00
|
||||
/* 01BC8 80A0D288 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 01BCC 80A0D28C 46128481 */ sub.s $f18, $f16, $f18
|
||||
/* 01BD0 80A0D290 44CEF800 */ ctc1 $t6, $31
|
||||
/* 01BD4 80A0D294 00000000 */ nop
|
||||
/* 01BD8 80A0D298 460094A4 */ cvt.w.s $f18, $f18
|
||||
/* 01BDC 80A0D29C 444EF800 */ cfc1 $t6, $31
|
||||
/* 01BE0 80A0D2A0 00000000 */ nop
|
||||
/* 01BE4 80A0D2A4 31CE0078 */ andi $t6, $t6, 0x0078 ## $t6 = 00000000
|
||||
/* 01BE8 80A0D2A8 15C00005 */ bne $t6, $zero, .L80A0D2C0
|
||||
/* 01BEC 80A0D2AC 00000000 */ nop
|
||||
/* 01BF0 80A0D2B0 440E9000 */ mfc1 $t6, $f18
|
||||
/* 01BF4 80A0D2B4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01BF8 80A0D2B8 10000007 */ beq $zero, $zero, .L80A0D2D8
|
||||
/* 01BFC 80A0D2BC 01C17025 */ or $t6, $t6, $at ## $t6 = 80000000
|
||||
.L80A0D2C0:
|
||||
/* 01C00 80A0D2C0 10000005 */ beq $zero, $zero, .L80A0D2D8
|
||||
/* 01C04 80A0D2C4 240EFFFF */ addiu $t6, $zero, 0xFFFF ## $t6 = FFFFFFFF
|
||||
.L80A0D2C8:
|
||||
/* 01C08 80A0D2C8 440E9000 */ mfc1 $t6, $f18
|
||||
/* 01C0C 80A0D2CC 00000000 */ nop
|
||||
/* 01C10 80A0D2D0 05C0FFFB */ bltz $t6, .L80A0D2C0
|
||||
/* 01C14 80A0D2D4 00000000 */ nop
|
||||
.L80A0D2D8:
|
||||
/* 01C18 80A0D2D8 01C05025 */ or $t2, $t6, $zero ## $t2 = FFFFFFFF
|
||||
/* 01C1C 80A0D2DC 314C00FF */ andi $t4, $t2, 0x00FF ## $t4 = 000000FF
|
||||
/* 01C20 80A0D2E0 012C6825 */ or $t5, $t1, $t4 ## $t5 = FFFFFFFF
|
||||
/* 01C24 80A0D2E4 AC8D0004 */ sw $t5, 0x0004($a0) ## 00000003
|
||||
/* 01C28 80A0D2E8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01C2C 80A0D2EC 44CBF800 */ ctc1 $t3, $31
|
||||
/* 01C30 80A0D2F0 240D00FF */ addiu $t5, $zero, 0x00FF ## $t5 = 000000FF
|
||||
/* 01C34 80A0D2F4 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000007
|
||||
/* 01C38 80A0D2F8 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0
|
||||
/* 01C3C 80A0D2FC AC480000 */ sw $t0, 0x0000($v0) ## FFFFFFFF
|
||||
/* 01C40 80A0D300 8FAF00A4 */ lw $t7, 0x00A4($sp)
|
||||
/* 01C44 80A0D304 8FAA007C */ lw $t2, 0x007C($sp)
|
||||
/* 01C48 80A0D308 24080008 */ addiu $t0, $zero, 0x0008 ## $t0 = 00000008
|
||||
/* 01C4C 80A0D30C 8DE40000 */ lw $a0, 0x0000($t7) ## FFFFFFFF
|
||||
/* 01C50 80A0D310 000A4880 */ sll $t1, $t2, 2
|
||||
/* 01C54 80A0D314 012A4823 */ subu $t1, $t1, $t2
|
||||
/* 01C58 80A0D318 00094840 */ sll $t1, $t1, 1
|
||||
/* 01C5C 80A0D31C 312C00FF */ andi $t4, $t1, 0x00FF ## $t4 = 000000FF
|
||||
/* 01C60 80A0D320 01ACC823 */ subu $t9, $t5, $t4
|
||||
/* 01C64 80A0D324 240F0040 */ addiu $t7, $zero, 0x0040 ## $t7 = 00000040
|
||||
/* 01C68 80A0D328 240B0040 */ addiu $t3, $zero, 0x0040 ## $t3 = 00000040
|
||||
/* 01C6C 80A0D32C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 01C70 80A0D330 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
|
||||
/* 01C74 80A0D334 AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 01C78 80A0D338 AFAE0018 */ sw $t6, 0x0018($sp)
|
||||
/* 01C7C 80A0D33C AFAB0014 */ sw $t3, 0x0014($sp)
|
||||
/* 01C80 80A0D340 AFAF0028 */ sw $t7, 0x0028($sp)
|
||||
/* 01C84 80A0D344 AFB90020 */ sw $t9, 0x0020($sp)
|
||||
/* 01C88 80A0D348 AFA80024 */ sw $t0, 0x0024($sp)
|
||||
/* 01C8C 80A0D34C AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 01C90 80A0D350 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 01C94 80A0D354 0C0253D0 */ jal Gfx_TwoTexScroll
|
||||
/* 01C98 80A0D358 AFA20058 */ sw $v0, 0x0058($sp)
|
||||
/* 01C9C 80A0D35C 8FA30058 */ lw $v1, 0x0058($sp)
|
||||
/* 01CA0 80A0D360 3C0BE700 */ lui $t3, 0xE700 ## $t3 = E7000000
|
||||
/* 01CA4 80A0D364 3C0ADB06 */ lui $t2, 0xDB06 ## $t2 = DB060000
|
||||
/* 01CA8 80A0D368 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 01CAC 80A0D36C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01CB0 80A0D370 3C098011 */ lui $t1, %hi(D_80116280)
|
||||
/* 01CB4 80A0D374 25296280 */ addiu $t1, %lo(D_80116280)
|
||||
/* 01CB8 80A0D378 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
|
||||
/* 01CBC 80A0D37C AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
|
||||
/* 01CC0 80A0D380 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 01CC4 80A0D384 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 01CC8 80A0D388 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01CCC 80A0D38C 354A0024 */ ori $t2, $t2, 0x0024 ## $t2 = DB060024
|
||||
/* 01CD0 80A0D390 3C0D80A1 */ lui $t5, %hi(func_80A0CCB8) ## $t5 = 80A10000
|
||||
/* 01CD4 80A0D394 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 01CD8 80A0D398 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
|
||||
/* 01CDC 80A0D39C AC490004 */ sw $t1, 0x0004($v0) ## 00000004
|
||||
/* 01CE0 80A0D3A0 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 01CE4 80A0D3A4 9227014E */ lbu $a3, 0x014E($s1) ## 0000014E
|
||||
/* 01CE8 80A0D3A8 8E26016C */ lw $a2, 0x016C($s1) ## 0000016C
|
||||
/* 01CEC 80A0D3AC 8E250150 */ lw $a1, 0x0150($s1) ## 00000150
|
||||
/* 01CF0 80A0D3B0 3C0C80A1 */ lui $t4, %hi(func_80A0CCF0) ## $t4 = 80A10000
|
||||
/* 01CF4 80A0D3B4 258CCCF0 */ addiu $t4, $t4, %lo(func_80A0CCF0) ## $t4 = 80A0CCF0
|
||||
/* 01CF8 80A0D3B8 25ADCCB8 */ addiu $t5, $t5, %lo(func_80A0CCB8) ## $t5 = 80A0CCB8
|
||||
/* 01CFC 80A0D3BC AFAD0010 */ sw $t5, 0x0010($sp)
|
||||
/* 01D00 80A0D3C0 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 01D04 80A0D3C4 AFB10018 */ sw $s1, 0x0018($sp)
|
||||
/* 01D08 80A0D3C8 8E1902D0 */ lw $t9, 0x02D0($s0) ## 000002D0
|
||||
/* 01D0C 80A0D3CC 8FA400A4 */ lw $a0, 0x00A4($sp)
|
||||
/* 01D10 80A0D3D0 0C0289CF */ jal SkelAnime_DrawFlex
|
||||
/* 01D14 80A0D3D4 AFB9001C */ sw $t9, 0x001C($sp)
|
||||
/* 01D18 80A0D3D8 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0
|
||||
.L80A0D3DC:
|
||||
/* 01D1C 80A0D3DC 8FA800A4 */ lw $t0, 0x00A4($sp)
|
||||
.L80A0D3E0:
|
||||
/* 01D20 80A0D3E0 3C0680A1 */ lui $a2, %hi(D_80A0E130) ## $a2 = 80A10000
|
||||
/* 01D24 80A0D3E4 24C6E130 */ addiu $a2, $a2, %lo(D_80A0E130) ## $a2 = 80A0E130
|
||||
/* 01D28 80A0D3E8 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFC4
|
||||
/* 01D2C 80A0D3EC 2407071E */ addiu $a3, $zero, 0x071E ## $a3 = 0000071E
|
||||
/* 01D30 80A0D3F0 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 01D34 80A0D3F4 8D050000 */ lw $a1, 0x0000($t0) ## 00000000
|
||||
/* 01D38 80A0D3F8 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 01D3C 80A0D3FC 8FB00034 */ lw $s0, 0x0034($sp)
|
||||
/* 01D40 80A0D400 8FB10038 */ lw $s1, 0x0038($sp)
|
||||
/* 01D44 80A0D404 03E00008 */ jr $ra
|
||||
/* 01D48 80A0D408 27BD00A0 */ addiu $sp, $sp, 0x00A0 ## $sp = 00000000
|
@ -1,85 +0,0 @@
|
||||
glabel EnFd_Init
|
||||
/* 00AEC 80A0C1AC 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 00AF0 80A0C1B0 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 00AF4 80A0C1B4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00AF8 80A0C1B8 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 00AFC 80A0C1BC AFA50044 */ sw $a1, 0x0044($sp)
|
||||
/* 00B00 80A0C1C0 260E04DC */ addiu $t6, $s0, 0x04DC ## $t6 = 000004DC
|
||||
/* 00B04 80A0C1C4 260F057E */ addiu $t7, $s0, 0x057E ## $t7 = 0000057E
|
||||
/* 00B08 80A0C1C8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00B0C 80A0C1CC 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
|
||||
/* 00B10 80A0C1D0 2418001B */ addiu $t8, $zero, 0x001B ## $t8 = 0000001B
|
||||
/* 00B14 80A0C1D4 AFB80018 */ sw $t8, 0x0018($sp)
|
||||
/* 00B18 80A0C1D8 24C65810 */ addiu $a2, $a2, 0x5810 ## $a2 = 06005810
|
||||
/* 00B1C 80A0C1DC 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
|
||||
/* 00B20 80A0C1E0 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 00B24 80A0C1E4 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 00B28 80A0C1E8 0C0291BE */ jal SkelAnime_InitFlex
|
||||
/* 00B2C 80A0C1EC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00B30 80A0C1F0 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
|
||||
/* 00B34 80A0C1F4 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
|
||||
/* 00B38 80A0C1F8 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00B3C 80A0C1FC 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
|
||||
/* 00B40 80A0C200 0C00AC78 */ jal ActorShape_Init
|
||||
|
||||
/* 00B44 80A0C204 3C074200 */ lui $a3, 0x4200 ## $a3 = 42000000
|
||||
/* 00B48 80A0C208 26050194 */ addiu $a1, $s0, 0x0194 ## $a1 = 00000194
|
||||
/* 00B4C 80A0C20C AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 00B50 80A0C210 0C016EFE */ jal Collider_InitJntSph
|
||||
/* 00B54 80A0C214 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 00B58 80A0C218 3C0780A1 */ lui $a3, %hi(D_80A0DFD0) ## $a3 = 80A10000
|
||||
/* 00B5C 80A0C21C 261901B4 */ addiu $t9, $s0, 0x01B4 ## $t9 = 000001B4
|
||||
/* 00B60 80A0C220 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 00B64 80A0C224 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00B68 80A0C228 24E7DFD0 */ addiu $a3, $a3, %lo(D_80A0DFD0) ## $a3 = 80A0DFD0
|
||||
/* 00B6C 80A0C22C 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 00B70 80A0C230 0C017014 */ jal Collider_SetJntSph
|
||||
/* 00B74 80A0C234 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00B78 80A0C238 0C016C80 */ jal DamageTable_Get
|
||||
|
||||
/* 00B7C 80A0C23C 2404000F */ addiu $a0, $zero, 0x000F ## $a0 = 0000000F
|
||||
/* 00B80 80A0C240 3C0680A1 */ lui $a2, %hi(D_80A0DFE0) ## $a2 = 80A10000
|
||||
/* 00B84 80A0C244 24C6DFE0 */ addiu $a2, $a2, %lo(D_80A0DFE0) ## $a2 = 80A0DFE0
|
||||
/* 00B88 80A0C248 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
|
||||
/* 00B8C 80A0C24C 0C0187BF */ jal func_80061EFC
|
||||
/* 00B90 80A0C250 00402825 */ or $a1, $v0, $zero ## $a1 = 00000000
|
||||
/* 00B94 80A0C254 8E080004 */ lw $t0, 0x0004($s0) ## 00000004
|
||||
/* 00B98 80A0C258 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
|
||||
/* 00B9C 80A0C25C 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
|
||||
/* 00BA0 80A0C260 01014824 */ and $t1, $t0, $at
|
||||
/* 00BA4 80A0C264 3C010100 */ lui $at, 0x0100 ## $at = 01000000
|
||||
/* 00BA8 80A0C268 AE090004 */ sw $t1, 0x0004($s0) ## 00000004
|
||||
/* 00BAC 80A0C26C 01215825 */ or $t3, $t1, $at ## $t3 = 01000000
|
||||
/* 00BB0 80A0C270 AE0B0004 */ sw $t3, 0x0004($s0) ## 00000004
|
||||
/* 00BB4 80A0C274 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
|
||||
/* 00BB8 80A0C278 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 00BBC 80A0C27C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00BC0 80A0C280 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
|
||||
/* 00BC4 80A0C284 44812000 */ mtc1 $at, $f4 ## $f4 = -1.00
|
||||
/* 00BC8 80A0C288 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 00BCC 80A0C28C A60C04BC */ sh $t4, 0x04BC($s0) ## 000004BC
|
||||
/* 00BD0 80A0C290 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00BD4 80A0C294 E604006C */ swc1 $f4, 0x006C($s0) ## 0000006C
|
||||
/* 00BD8 80A0C298 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00BDC 80A0C29C 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50
|
||||
/* 00BE0 80A0C2A0 3C1880A1 */ lui $t8, %hi(func_80A0C310) ## $t8 = 80A10000
|
||||
/* 00BE4 80A0C2A4 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 00BE8 80A0C2A8 4606003C */ c.lt.s $f0, $f6
|
||||
/* 00BEC 80A0C2AC 240DFFFF */ addiu $t5, $zero, 0xFFFF ## $t5 = FFFFFFFF
|
||||
/* 00BF0 80A0C2B0 240F0022 */ addiu $t7, $zero, 0x0022 ## $t7 = 00000022
|
||||
/* 00BF4 80A0C2B4 2718C310 */ addiu $t8, $t8, %lo(func_80A0C310) ## $t8 = 80A0C310
|
||||
/* 00BF8 80A0C2B8 45020004 */ bc1fl .L80A0C2CC
|
||||
/* 00BFC 80A0C2BC A60E04BA */ sh $t6, 0x04BA($s0) ## 000004BA
|
||||
/* 00C00 80A0C2C0 10000002 */ beq $zero, $zero, .L80A0C2CC
|
||||
/* 00C04 80A0C2C4 A60D04BA */ sh $t5, 0x04BA($s0) ## 000004BA
|
||||
/* 00C08 80A0C2C8 A60E04BA */ sh $t6, 0x04BA($s0) ## 000004BA
|
||||
.L80A0C2CC:
|
||||
/* 00C0C 80A0C2CC A20F0117 */ sb $t7, 0x0117($s0) ## 00000117
|
||||
/* 00C10 80A0C2D0 AE180190 */ sw $t8, 0x0190($s0) ## 00000190
|
||||
/* 00C14 80A0C2D4 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00C18 80A0C2D8 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 00C1C 80A0C2DC 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 00C20 80A0C2E0 03E00008 */ jr $ra
|
||||
/* 00C24 80A0C2E4 00000000 */ nop
|
@ -1,145 +0,0 @@
|
||||
glabel EnFd_Update
|
||||
/* 013FC 80A0CABC 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 01400 80A0CAC0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 01404 80A0CAC4 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 01408 80A0CAC8 AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 0140C 80A0CACC 848E04BC */ lh $t6, 0x04BC($a0) ## 000004BC
|
||||
/* 01410 80A0CAD0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01414 80A0CAD4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 01418 80A0CAD8 11C00004 */ beq $t6, $zero, .L80A0CAEC
|
||||
/* 0141C 80A0CADC 00000000 */ nop
|
||||
/* 01420 80A0CAE0 0C03D6B3 */ jal func_800F5ACC
|
||||
/* 01424 80A0CAE4 24040038 */ addiu $a0, $zero, 0x0038 ## $a0 = 00000038
|
||||
/* 01428 80A0CAE8 A60004BC */ sh $zero, 0x04BC($s0) ## 000004BC
|
||||
.L80A0CAEC:
|
||||
/* 0142C 80A0CAEC 3C0F80A1 */ lui $t7, %hi(func_80A0C310) ## $t7 = 80A10000
|
||||
/* 01430 80A0CAF0 25EFC310 */ addiu $t7, $t7, %lo(func_80A0C310) ## $t7 = 80A0C310
|
||||
/* 01434 80A0CAF4 AFAF0034 */ sw $t7, 0x0034($sp)
|
||||
/* 01438 80A0CAF8 8E180190 */ lw $t8, 0x0190($s0) ## 00000190
|
||||
/* 0143C 80A0CAFC 51F80007 */ beql $t7, $t8, .L80A0CB1C
|
||||
/* 01440 80A0CB00 8E190004 */ lw $t9, 0x0004($s0) ## 00000004
|
||||
/* 01444 80A0CB04 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 01448 80A0CB08 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 0144C 80A0CB0C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01450 80A0CB10 0C282E36 */ jal func_80A0B8D8
|
||||
/* 01454 80A0CB14 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 01458 80A0CB18 8E190004 */ lw $t9, 0x0004($s0) ## 00000004
|
||||
.L80A0CB1C:
|
||||
/* 0145C 80A0CB1C 24012000 */ addiu $at, $zero, 0x2000 ## $at = 00002000
|
||||
/* 01460 80A0CB20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01464 80A0CB24 33282000 */ andi $t0, $t9, 0x2000 ## $t0 = 00000000
|
||||
/* 01468 80A0CB28 55010018 */ bnel $t0, $at, .L80A0CB8C
|
||||
/* 0146C 80A0CB2C 8E0F0190 */ lw $t7, 0x0190($s0) ## 00000190
|
||||
/* 01470 80A0CB30 0C282DB0 */ jal func_80A0B6C0
|
||||
/* 01474 80A0CB34 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 01478 80A0CB38 1040000E */ beq $v0, $zero, .L80A0CB74
|
||||
/* 0147C 80A0CB3C 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
|
||||
/* 01480 80A0CB40 8E090004 */ lw $t1, 0x0004($s0) ## 00000004
|
||||
/* 01484 80A0CB44 240B001E */ addiu $t3, $zero, 0x001E ## $t3 = 0000001E
|
||||
/* 01488 80A0CB48 A60B04C2 */ sh $t3, 0x04C2($s0) ## 000004C2
|
||||
/* 0148C 80A0CB4C 01215024 */ and $t2, $t1, $at
|
||||
/* 01490 80A0CB50 AE0A0004 */ sw $t2, 0x0004($s0) ## 00000004
|
||||
/* 01494 80A0CB54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01498 80A0CB58 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 0149C 80A0CB5C 2405397A */ addiu $a1, $zero, 0x397A ## $a1 = 0000397A
|
||||
/* 014A0 80A0CB60 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 014A4 80A0CB64 0C00CB1F */ jal func_80032C7C
|
||||
/* 014A8 80A0CB68 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 014AC 80A0CB6C 1000000D */ beq $zero, $zero, .L80A0CBA4
|
||||
/* 014B0 80A0CB70 00000000 */ nop
|
||||
.L80A0CB74:
|
||||
/* 014B4 80A0CB74 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
|
||||
/* 014B8 80A0CB78 2401DFFF */ addiu $at, $zero, 0xDFFF ## $at = FFFFDFFF
|
||||
/* 014BC 80A0CB7C 01816824 */ and $t5, $t4, $at
|
||||
/* 014C0 80A0CB80 10000008 */ beq $zero, $zero, .L80A0CBA4
|
||||
/* 014C4 80A0CB84 AE0D0004 */ sw $t5, 0x0004($s0) ## 00000004
|
||||
/* 014C8 80A0CB88 8E0F0190 */ lw $t7, 0x0190($s0) ## 00000190
|
||||
.L80A0CB8C:
|
||||
/* 014CC 80A0CB8C 3C0E80A1 */ lui $t6, %hi(func_80A0CA44) ## $t6 = 80A10000
|
||||
/* 014D0 80A0CB90 25CECA44 */ addiu $t6, $t6, %lo(func_80A0CA44) ## $t6 = 80A0CA44
|
||||
/* 014D4 80A0CB94 11CF0003 */ beq $t6, $t7, .L80A0CBA4
|
||||
/* 014D8 80A0CB98 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014DC 80A0CB9C 0C282EB8 */ jal func_80A0BAE0
|
||||
/* 014E0 80A0CBA0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
.L80A0CBA4:
|
||||
/* 014E4 80A0CBA4 0C00B638 */ jal Actor_MoveForward
|
||||
|
||||
/* 014E8 80A0CBA8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014EC 80A0CBAC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 014F0 80A0CBB0 24180004 */ addiu $t8, $zero, 0x0004 ## $t8 = 00000004
|
||||
/* 014F4 80A0CBB4 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 014F8 80A0CBB8 44060000 */ mfc1 $a2, $f0
|
||||
/* 014FC 80A0CBBC 44070000 */ mfc1 $a3, $f0
|
||||
/* 01500 80A0CBC0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 01504 80A0CBC4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 01508 80A0CBC8 0C00B92D */ jal func_8002E4B4
|
||||
/* 0150C 80A0CBCC E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 01510 80A0CBD0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01514 80A0CBD4 0C283028 */ jal func_80A0C0A0
|
||||
/* 01518 80A0CBD8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 0151C 80A0CBDC 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
|
||||
/* 01520 80A0CBE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01524 80A0CBE4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 01528 80A0CBE8 0320F809 */ jalr $ra, $t9
|
||||
/* 0152C 80A0CBEC 00000000 */ nop
|
||||
/* 01530 80A0CBF0 0C283585 */ jal func_80A0D614
|
||||
/* 01534 80A0CBF4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01538 80A0CBF8 0C28353F */ jal func_80A0D4FC
|
||||
/* 0153C 80A0CBFC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01540 80A0CC00 8E030190 */ lw $v1, 0x0190($s0) ## 00000190
|
||||
/* 01544 80A0CC04 8FA80034 */ lw $t0, 0x0034($sp)
|
||||
/* 01548 80A0CC08 3C0980A1 */ lui $t1, %hi(func_80A0C3A0) ## $t1 = 80A10000
|
||||
/* 0154C 80A0CC0C 2529C3A0 */ addiu $t1, $t1, %lo(func_80A0C3A0) ## $t1 = 80A0C3A0
|
||||
/* 01550 80A0CC10 51030025 */ beql $t0, $v1, .L80A0CCA8
|
||||
/* 01554 80A0CC14 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 01558 80A0CC18 11230022 */ beq $t1, $v1, .L80A0CCA4
|
||||
/* 0155C 80A0CC1C 3C0A80A1 */ lui $t2, %hi(func_80A0CA44) ## $t2 = 80A10000
|
||||
/* 01560 80A0CC20 254ACA44 */ addiu $t2, $t2, %lo(func_80A0CA44) ## $t2 = 80A0CA44
|
||||
/* 01564 80A0CC24 51430020 */ beql $t2, $v1, .L80A0CCA8
|
||||
/* 01568 80A0CC28 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 0156C 80A0CC2C 860B04C4 */ lh $t3, 0x04C4($s0) ## 000004C4
|
||||
/* 01570 80A0CC30 5560000B */ bnel $t3, $zero, .L80A0CC60
|
||||
/* 01574 80A0CC34 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 01578 80A0CC38 860C04C2 */ lh $t4, 0x04C2($s0) ## 000004C2
|
||||
/* 0157C 80A0CC3C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 01580 80A0CC40 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 01584 80A0CC44 15800005 */ bne $t4, $zero, .L80A0CC5C
|
||||
/* 01588 80A0CC48 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 0158C 80A0CC4C 02212821 */ addu $a1, $s1, $at
|
||||
/* 01590 80A0CC50 0C0175E7 */ jal CollisionCheck_SetAT
|
||||
## CollisionCheck_setAT
|
||||
/* 01594 80A0CC54 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
|
||||
/* 01598 80A0CC58 8E030190 */ lw $v1, 0x0190($s0) ## 00000190
|
||||
.L80A0CC5C:
|
||||
/* 0159C 80A0CC5C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
.L80A0CC60:
|
||||
/* 015A0 80A0CC60 3C0D80A1 */ lui $t5, %hi(func_80A0C7EC) ## $t5 = 80A10000
|
||||
/* 015A4 80A0CC64 25ADC7EC */ addiu $t5, $t5, %lo(func_80A0C7EC) ## $t5 = 80A0C7EC
|
||||
/* 015A8 80A0CC68 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 015AC 80A0CC6C 02212821 */ addu $a1, $s1, $at
|
||||
/* 015B0 80A0CC70 11A30004 */ beq $t5, $v1, .L80A0CC84
|
||||
/* 015B4 80A0CC74 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
|
||||
/* 015B8 80A0CC78 3C0E80A1 */ lui $t6, %hi(func_80A0C5D0) ## $t6 = 80A10000
|
||||
/* 015BC 80A0CC7C 25CEC5D0 */ addiu $t6, $t6, %lo(func_80A0C5D0) ## $t6 = 80A0C5D0
|
||||
/* 015C0 80A0CC80 15C30006 */ bne $t6, $v1, .L80A0CC9C
|
||||
.L80A0CC84:
|
||||
/* 015C4 80A0CC84 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 015C8 80A0CC88 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 015CC 80A0CC8C 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 015D0 80A0CC90 AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 015D4 80A0CC94 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 015D8 80A0CC98 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
.L80A0CC9C:
|
||||
/* 015DC 80A0CC9C 0C017713 */ jal CollisionCheck_SetOC
|
||||
## CollisionCheck_setOT
|
||||
/* 015E0 80A0CCA0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
.L80A0CCA4:
|
||||
/* 015E4 80A0CCA4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0CCA8:
|
||||
/* 015E8 80A0CCA8 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 015EC 80A0CCAC 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 015F0 80A0CCB0 03E00008 */ jr $ra
|
||||
/* 015F4 80A0CCB4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
@ -1,70 +0,0 @@
|
||||
glabel func_80A0B6C0
|
||||
/* 00000 80A0B6C0 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 00004 80A0B6C4 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 00008 80A0B6C8 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 0000C 80A0B6CC 848E04C2 */ lh $t6, 0x04C2($a0) ## 000004C2
|
||||
/* 00010 80A0B6D0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00014 80A0B6D4 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 00018 80A0B6D8 51C00004 */ beql $t6, $zero, .L80A0B6EC
|
||||
/* 0001C 80A0B6DC C60404D0 */ lwc1 $f4, 0x04D0($s0) ## 000004D0
|
||||
/* 00020 80A0B6E0 10000030 */ beq $zero, $zero, .L80A0B7A4
|
||||
/* 00024 80A0B6E4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00028 80A0B6E8 C60404D0 */ lwc1 $f4, 0x04D0($s0) ## 000004D0
|
||||
.L80A0B6EC:
|
||||
/* 0002C 80A0B6EC 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24
|
||||
/* 00030 80A0B6F0 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00034 80A0B6F4 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00038 80A0B6F8 C60604D4 */ lwc1 $f6, 0x04D4($s0) ## 000004D4
|
||||
/* 0003C 80A0B6FC 240700AB */ addiu $a3, $zero, 0x00AB ## $a3 = 000000AB
|
||||
/* 00040 80A0B700 E7A60014 */ swc1 $f6, 0x0014($sp)
|
||||
/* 00044 80A0B704 C60804D8 */ lwc1 $f8, 0x04D8($s0) ## 000004D8
|
||||
/* 00048 80A0B708 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 0004C 80A0B70C E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 00050 80A0B710 860F00B6 */ lh $t7, 0x00B6($s0) ## 000000B6
|
||||
/* 00054 80A0B714 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 00058 80A0B718 AFAF0020 */ sw $t7, 0x0020($sp)
|
||||
/* 0005C 80A0B71C 861804BA */ lh $t8, 0x04BA($s0) ## 000004BA
|
||||
/* 00060 80A0B720 AFA60044 */ sw $a2, 0x0044($sp)
|
||||
/* 00064 80A0B724 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00068 80A0B728 AFB80028 */ sw $t8, 0x0028($sp)
|
||||
/* 0006C 80A0B72C 54400004 */ bnel $v0, $zero, .L80A0B740
|
||||
/* 00070 80A0B730 921900AF */ lbu $t9, 0x00AF($s0) ## 000000AF
|
||||
/* 00074 80A0B734 1000001B */ beq $zero, $zero, .L80A0B7A4
|
||||
/* 00078 80A0B738 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 0007C 80A0B73C 921900AF */ lbu $t9, 0x00AF($s0) ## 000000AF
|
||||
.L80A0B740:
|
||||
/* 00080 80A0B740 8E09011C */ lw $t1, 0x011C($s0) ## 0000011C
|
||||
/* 00084 80A0B744 240B0008 */ addiu $t3, $zero, 0x0008 ## $t3 = 00000008
|
||||
/* 00088 80A0B748 07210004 */ bgez $t9, .L80A0B75C
|
||||
/* 0008C 80A0B74C 33280007 */ andi $t0, $t9, 0x0007 ## $t0 = 00000000
|
||||
/* 00090 80A0B750 11000002 */ beq $t0, $zero, .L80A0B75C
|
||||
/* 00094 80A0B754 00000000 */ nop
|
||||
/* 00098 80A0B758 2508FFF8 */ addiu $t0, $t0, 0xFFF8 ## $t0 = FFFFFFF8
|
||||
.L80A0B75C:
|
||||
/* 0009C 80A0B75C A12800AF */ sb $t0, 0x00AF($t1) ## 000000AF
|
||||
/* 000A0 80A0B760 8E02011C */ lw $v0, 0x011C($s0) ## 0000011C
|
||||
/* 000A4 80A0B764 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 000A8 80A0B768 904A00AF */ lbu $t2, 0x00AF($v0) ## 000000AF
|
||||
/* 000AC 80A0B76C 55400003 */ bnel $t2, $zero, .L80A0B77C
|
||||
/* 000B0 80A0B770 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
|
||||
/* 000B4 80A0B774 A04B00AF */ sb $t3, 0x00AF($v0) ## 000000AF
|
||||
/* 000B8 80A0B778 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
|
||||
.L80A0B77C:
|
||||
/* 000BC 80A0B77C 24012000 */ addiu $at, $zero, 0x2000 ## $at = 00002000
|
||||
/* 000C0 80A0B780 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 000C4 80A0B784 318D2000 */ andi $t5, $t4, 0x2000 ## $t5 = 00000000
|
||||
/* 000C8 80A0B788 55A10004 */ bnel $t5, $at, .L80A0B79C
|
||||
/* 000CC 80A0B78C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 000D0 80A0B790 0C00B781 */ jal func_8002DE04
|
||||
/* 000D4 80A0B794 8E06011C */ lw $a2, 0x011C($s0) ## 0000011C
|
||||
/* 000D8 80A0B798 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
.L80A0B79C:
|
||||
/* 000DC 80A0B79C A20E04B4 */ sb $t6, 0x04B4($s0) ## 000004B4
|
||||
/* 000E0 80A0B7A0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A0B7A4:
|
||||
/* 000E4 80A0B7A4 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 000E8 80A0B7A8 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 000EC 80A0B7AC 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 000F0 80A0B7B0 03E00008 */ jr $ra
|
||||
/* 000F4 80A0B7B4 00000000 */ nop
|
@ -1,81 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1A0
|
||||
.word 0x43360B61
|
||||
|
||||
.text
|
||||
glabel func_80A0B7B8
|
||||
/* 000F8 80A0B7B8 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98
|
||||
/* 000FC 80A0B7BC AFB20054 */ sw $s2, 0x0054($sp)
|
||||
/* 00100 80A0B7C0 00069400 */ sll $s2, $a2, 16
|
||||
/* 00104 80A0B7C4 AFA70074 */ sw $a3, 0x0074($sp)
|
||||
/* 00108 80A0B7C8 00073C00 */ sll $a3, $a3, 16
|
||||
/* 0010C 80A0B7CC 00129403 */ sra $s2, $s2, 16
|
||||
/* 00110 80A0B7D0 AFB30058 */ sw $s3, 0x0058($sp)
|
||||
/* 00114 80A0B7D4 AFB10050 */ sw $s1, 0x0050($sp)
|
||||
/* 00118 80A0B7D8 AFB0004C */ sw $s0, 0x004C($sp)
|
||||
/* 0011C 80A0B7DC 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 00120 80A0B7E0 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000
|
||||
/* 00124 80A0B7E4 00073C03 */ sra $a3, $a3, 16
|
||||
/* 00128 80A0B7E8 AFBF0064 */ sw $ra, 0x0064($sp)
|
||||
/* 0012C 80A0B7EC AFB50060 */ sw $s5, 0x0060($sp)
|
||||
/* 00130 80A0B7F0 AFB4005C */ sw $s4, 0x005C($sp)
|
||||
/* 00134 80A0B7F4 F7B80040 */ sdc1 $f24, 0x0040($sp)
|
||||
/* 00138 80A0B7F8 F7B60038 */ sdc1 $f22, 0x0038($sp)
|
||||
/* 0013C 80A0B7FC F7B40030 */ sdc1 $f20, 0x0030($sp)
|
||||
/* 00140 80A0B800 AFA60070 */ sw $a2, 0x0070($sp)
|
||||
/* 00144 80A0B804 1A400028 */ blez $s2, .L80A0B8A8
|
||||
/* 00148 80A0B808 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 0014C 80A0B80C 3C0180A1 */ lui $at, %hi(D_80A0E1A0) ## $at = 80A10000
|
||||
/* 00150 80A0B810 44922000 */ mtc1 $s2, $f4 ## $f4 = 0.00
|
||||
/* 00154 80A0B814 C438E1A0 */ lwc1 $f24, %lo(D_80A0E1A0)($at)
|
||||
/* 00158 80A0B818 3C0143B4 */ lui $at, 0x43B4 ## $at = 43B40000
|
||||
/* 0015C 80A0B81C 4481B000 */ mtc1 $at, $f22 ## $f22 = 360.00
|
||||
/* 00160 80A0B820 24B41C24 */ addiu $s4, $a1, 0x1C24 ## $s4 = 00001C24
|
||||
/* 00164 80A0B824 0007ABC0 */ sll $s5, $a3, 15
|
||||
/* 00168 80A0B828 46802520 */ cvt.s.w $f20, $f4
|
||||
/* 0016C 80A0B82C 44903000 */ mtc1 $s0, $f6 ## $f6 = 0.00
|
||||
.L80A0B830:
|
||||
/* 00170 80A0B830 8628008A */ lh $t0, 0x008A($s1) ## 0000008A
|
||||
/* 00174 80A0B834 02B04825 */ or $t1, $s5, $s0 ## $t1 = 00000000
|
||||
/* 00178 80A0B838 46803220 */ cvt.s.w $f8, $f6
|
||||
/* 0017C 80A0B83C C6260024 */ lwc1 $f6, 0x0024($s1) ## 00000024
|
||||
/* 00180 80A0B840 02802025 */ or $a0, $s4, $zero ## $a0 = 00001C24
|
||||
/* 00184 80A0B844 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 00188 80A0B848 E7A60010 */ swc1 $f6, 0x0010($sp)
|
||||
/* 0018C 80A0B84C 02603025 */ or $a2, $s3, $zero ## $a2 = 00000000
|
||||
/* 00190 80A0B850 46164282 */ mul.s $f10, $f8, $f22
|
||||
/* 00194 80A0B854 C6280028 */ lwc1 $f8, 0x0028($s1) ## 00000028
|
||||
/* 00198 80A0B858 240700A3 */ addiu $a3, $zero, 0x00A3 ## $a3 = 000000A3
|
||||
/* 0019C 80A0B85C E7A80014 */ swc1 $f8, 0x0014($sp)
|
||||
/* 001A0 80A0B860 46145403 */ div.s $f16, $f10, $f20
|
||||
/* 001A4 80A0B864 C62A002C */ lwc1 $f10, 0x002C($s1) ## 0000002C
|
||||
/* 001A8 80A0B868 AFA90028 */ sw $t1, 0x0028($sp)
|
||||
/* 001AC 80A0B86C AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 001B0 80A0B870 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 001B4 80A0B874 E7AA0018 */ swc1 $f10, 0x0018($sp)
|
||||
/* 001B8 80A0B878 46188482 */ mul.s $f18, $f16, $f24
|
||||
/* 001BC 80A0B87C 4600910D */ trunc.w.s $f4, $f18
|
||||
/* 001C0 80A0B880 44192000 */ mfc1 $t9, $f4
|
||||
/* 001C4 80A0B884 00000000 */ nop
|
||||
/* 001C8 80A0B888 03281021 */ addu $v0, $t9, $t0
|
||||
/* 001CC 80A0B88C 00021400 */ sll $v0, $v0, 16
|
||||
/* 001D0 80A0B890 00021403 */ sra $v0, $v0, 16
|
||||
/* 001D4 80A0B894 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 001D8 80A0B898 AFA20020 */ sw $v0, 0x0020($sp)
|
||||
/* 001DC 80A0B89C 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 001E0 80A0B8A0 5612FFE3 */ bnel $s0, $s2, .L80A0B830
|
||||
/* 001E4 80A0B8A4 44903000 */ mtc1 $s0, $f6 ## $f6 = 0.00
|
||||
.L80A0B8A8:
|
||||
/* 001E8 80A0B8A8 8FBF0064 */ lw $ra, 0x0064($sp)
|
||||
/* 001EC 80A0B8AC D7B40030 */ ldc1 $f20, 0x0030($sp)
|
||||
/* 001F0 80A0B8B0 D7B60038 */ ldc1 $f22, 0x0038($sp)
|
||||
/* 001F4 80A0B8B4 D7B80040 */ ldc1 $f24, 0x0040($sp)
|
||||
/* 001F8 80A0B8B8 8FB0004C */ lw $s0, 0x004C($sp)
|
||||
/* 001FC 80A0B8BC 8FB10050 */ lw $s1, 0x0050($sp)
|
||||
/* 00200 80A0B8C0 8FB20054 */ lw $s2, 0x0054($sp)
|
||||
/* 00204 80A0B8C4 8FB30058 */ lw $s3, 0x0058($sp)
|
||||
/* 00208 80A0B8C8 8FB4005C */ lw $s4, 0x005C($sp)
|
||||
/* 0020C 80A0B8CC 8FB50060 */ lw $s5, 0x0060($sp)
|
||||
/* 00210 80A0B8D0 03E00008 */ jr $ra
|
||||
/* 00214 80A0B8D4 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000
|
@ -1,111 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1A4
|
||||
.float 0.2
|
||||
|
||||
glabel D_80A0E1A8
|
||||
.float 0.3
|
||||
|
||||
glabel D_80A0E1AC
|
||||
.float 0.6
|
||||
|
||||
glabel D_80A0E1B0
|
||||
.float 0.2
|
||||
|
||||
.text
|
||||
glabel func_80A0B8D8
|
||||
/* 00218 80A0B8D8 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 0021C 80A0B8DC 3C0F80A1 */ lui $t7, %hi(D_80A0E064) ## $t7 = 80A10000
|
||||
/* 00220 80A0B8E0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00224 80A0B8E4 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 00228 80A0B8E8 25EFE064 */ addiu $t7, $t7, %lo(D_80A0E064) ## $t7 = 80A0E064
|
||||
/* 0022C 80A0B8EC 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0E064
|
||||
/* 00230 80A0B8F0 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFF4
|
||||
/* 00234 80A0B8F4 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0E068
|
||||
/* 00238 80A0B8F8 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
|
||||
/* 0023C 80A0B8FC 8DF90008 */ lw $t9, 0x0008($t7) ## 80A0E06C
|
||||
/* 00240 80A0B900 3C0980A1 */ lui $t1, %hi(D_80A0E070) ## $t1 = 80A10000
|
||||
/* 00244 80A0B904 2529E070 */ addiu $t1, $t1, %lo(D_80A0E070) ## $t1 = 80A0E070
|
||||
/* 00248 80A0B908 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
|
||||
/* 0024C 80A0B90C ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
|
||||
/* 00250 80A0B910 8D2B0000 */ lw $t3, 0x0000($t1) ## 80A0E070
|
||||
/* 00254 80A0B914 27A80038 */ addiu $t0, $sp, 0x0038 ## $t0 = FFFFFFE8
|
||||
/* 00258 80A0B918 8D2A0004 */ lw $t2, 0x0004($t1) ## 80A0E074
|
||||
/* 0025C 80A0B91C AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
|
||||
/* 00260 80A0B920 8D2B0008 */ lw $t3, 0x0008($t1) ## 80A0E078
|
||||
/* 00264 80A0B924 3C0D80A1 */ lui $t5, %hi(D_80A0E07C) ## $t5 = 80A10000
|
||||
/* 00268 80A0B928 25ADE07C */ addiu $t5, $t5, %lo(D_80A0E07C) ## $t5 = 80A0E07C
|
||||
/* 0026C 80A0B92C AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
|
||||
/* 00270 80A0B930 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
|
||||
/* 00274 80A0B934 8DAF0000 */ lw $t7, 0x0000($t5) ## 80A0E07C
|
||||
/* 00278 80A0B938 27AC002C */ addiu $t4, $sp, 0x002C ## $t4 = FFFFFFDC
|
||||
/* 0027C 80A0B93C 8DAE0004 */ lw $t6, 0x0004($t5) ## 80A0E080
|
||||
/* 00280 80A0B940 AD8F0000 */ sw $t7, 0x0000($t4) ## FFFFFFDC
|
||||
/* 00284 80A0B944 8DAF0008 */ lw $t7, 0x0008($t5) ## 80A0E084
|
||||
/* 00288 80A0B948 AD8E0004 */ sw $t6, 0x0004($t4) ## FFFFFFE0
|
||||
/* 0028C 80A0B94C 3C1880A1 */ lui $t8, %hi(func_80A0C7EC) ## $t8 = 80A10000
|
||||
/* 00290 80A0B950 AD8F0008 */ sw $t7, 0x0008($t4) ## FFFFFFE4
|
||||
/* 00294 80A0B954 8C820190 */ lw $v0, 0x0190($a0) ## 00000190
|
||||
/* 00298 80A0B958 2718C7EC */ addiu $t8, $t8, %lo(func_80A0C7EC) ## $t8 = 80A0C7EC
|
||||
/* 0029C 80A0B95C 3C1980A1 */ lui $t9, %hi(func_80A0C5D0) ## $t9 = 80A10000
|
||||
/* 002A0 80A0B960 13020003 */ beq $t8, $v0, .L80A0B970
|
||||
/* 002A4 80A0B964 2739C5D0 */ addiu $t9, $t9, %lo(func_80A0C5D0) ## $t9 = 80A0C5D0
|
||||
/* 002A8 80A0B968 57220033 */ bnel $t9, $v0, .L80A0BA38
|
||||
/* 002AC 80A0B96C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0B970:
|
||||
/* 002B0 80A0B970 C4840024 */ lwc1 $f4, 0x0024($a0) ## 00000024
|
||||
/* 002B4 80A0B974 3C014080 */ lui $at, 0x4080 ## $at = 40800000
|
||||
/* 002B8 80A0B978 44814000 */ mtc1 $at, $f8 ## $f8 = 4.00
|
||||
/* 002BC 80A0B97C E7A40044 */ swc1 $f4, 0x0044($sp)
|
||||
/* 002C0 80A0B980 C4860080 */ lwc1 $f6, 0x0080($a0) ## 00000080
|
||||
/* 002C4 80A0B984 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 002C8 80A0B988 E7AA0048 */ swc1 $f10, 0x0048($sp)
|
||||
/* 002CC 80A0B98C C490002C */ lwc1 $f16, 0x002C($a0) ## 0000002C
|
||||
/* 002D0 80A0B990 AFA40050 */ sw $a0, 0x0050($sp)
|
||||
/* 002D4 80A0B994 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002D8 80A0B998 E7B0004C */ swc1 $f16, 0x004C($sp)
|
||||
/* 002DC 80A0B99C 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 002E0 80A0B9A0 44819000 */ mtc1 $at, $f18 ## $f18 = 0.50
|
||||
/* 002E4 80A0B9A4 00000000 */ nop
|
||||
/* 002E8 80A0B9A8 46120081 */ sub.s $f2, $f0, $f18
|
||||
/* 002EC 80A0B9AC 46021100 */ add.s $f4, $f2, $f2
|
||||
/* 002F0 80A0B9B0 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002F4 80A0B9B4 E7A4002C */ swc1 $f4, 0x002C($sp)
|
||||
/* 002F8 80A0B9B8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 002FC 80A0B9BC 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50
|
||||
/* 00300 80A0B9C0 3C0180A1 */ lui $at, %hi(D_80A0E1A4) ## $at = 80A10000
|
||||
/* 00304 80A0B9C4 C42AE1A4 */ lwc1 $f10, %lo(D_80A0E1A4)($at)
|
||||
/* 00308 80A0B9C8 46060201 */ sub.s $f8, $f0, $f6
|
||||
/* 0030C 80A0B9CC 3C0180A1 */ lui $at, %hi(D_80A0E1A8) ## $at = 80A10000
|
||||
/* 00310 80A0B9D0 C432E1A8 */ lwc1 $f18, %lo(D_80A0E1A8)($at)
|
||||
/* 00314 80A0B9D4 460A4402 */ mul.s $f16, $f8, $f10
|
||||
/* 00318 80A0B9D8 46128100 */ add.s $f4, $f16, $f18
|
||||
/* 0031C 80A0B9DC 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00320 80A0B9E0 E7A40030 */ swc1 $f4, 0x0030($sp)
|
||||
/* 00324 80A0B9E4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00328 80A0B9E8 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50
|
||||
/* 0032C 80A0B9EC 3C0180A1 */ lui $at, %hi(D_80A0E1AC) ## $at = 80A10000
|
||||
/* 00330 80A0B9F0 C42AE1AC */ lwc1 $f10, %lo(D_80A0E1AC)($at)
|
||||
/* 00334 80A0B9F4 46060081 */ sub.s $f2, $f0, $f6
|
||||
/* 00338 80A0B9F8 3C0180A1 */ lui $at, %hi(D_80A0E1B0) ## $at = 80A10000
|
||||
/* 0033C 80A0B9FC C430E1B0 */ lwc1 $f16, %lo(D_80A0E1B0)($at)
|
||||
/* 00340 80A0BA00 27A8002C */ addiu $t0, $sp, 0x002C ## $t0 = FFFFFFDC
|
||||
/* 00344 80A0BA04 46021200 */ add.s $f8, $f2, $f2
|
||||
/* 00348 80A0BA08 24090008 */ addiu $t1, $zero, 0x0008 ## $t1 = 00000008
|
||||
/* 0034C 80A0BA0C 8FA40050 */ lw $a0, 0x0050($sp)
|
||||
/* 00350 80A0BA10 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 00354 80A0BA14 E7A80034 */ swc1 $f8, 0x0034($sp)
|
||||
/* 00358 80A0BA18 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 0035C 80A0BA1C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 00360 80A0BA20 27A60044 */ addiu $a2, $sp, 0x0044 ## $a2 = FFFFFFF4
|
||||
/* 00364 80A0BA24 27A70038 */ addiu $a3, $sp, 0x0038 ## $a3 = FFFFFFE8
|
||||
/* 00368 80A0BA28 E7AA0018 */ swc1 $f10, 0x0018($sp)
|
||||
/* 0036C 80A0BA2C 0C283503 */ jal func_80A0D40C
|
||||
/* 00370 80A0BA30 E7B0001C */ swc1 $f16, 0x001C($sp)
|
||||
/* 00374 80A0BA34 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0BA38:
|
||||
/* 00378 80A0BA38 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 0037C 80A0BA3C 03E00008 */ jr $ra
|
||||
/* 00380 80A0BA40 00000000 */ nop
|
@ -1,44 +0,0 @@
|
||||
glabel func_80A0BA44
|
||||
/* 00384 80A0BA44 8C820190 */ lw $v0, 0x0190($a0) ## 00000190
|
||||
/* 00388 80A0BA48 3C0E80A1 */ lui $t6, %hi(func_80A0C310) ## $t6 = 80A10000
|
||||
/* 0038C 80A0BA4C 25CEC310 */ addiu $t6, $t6, %lo(func_80A0C310) ## $t6 = 80A0C310
|
||||
/* 00390 80A0BA50 11C2000A */ beq $t6, $v0, .L80A0BA7C
|
||||
/* 00394 80A0BA54 3C0F80A1 */ lui $t7, %hi(func_80A0C3A0) ## $t7 = 80A10000
|
||||
/* 00398 80A0BA58 25EFC3A0 */ addiu $t7, $t7, %lo(func_80A0C3A0) ## $t7 = 80A0C3A0
|
||||
/* 0039C 80A0BA5C 11E20007 */ beq $t7, $v0, .L80A0BA7C
|
||||
/* 003A0 80A0BA60 3C1880A1 */ lui $t8, %hi(func_80A0C474) ## $t8 = 80A10000
|
||||
/* 003A4 80A0BA64 2718C474 */ addiu $t8, $t8, %lo(func_80A0C474) ## $t8 = 80A0C474
|
||||
/* 003A8 80A0BA68 13020004 */ beq $t8, $v0, .L80A0BA7C
|
||||
/* 003AC 80A0BA6C 3C1980A1 */ lui $t9, %hi(func_80A0CA44) ## $t9 = 80A10000
|
||||
/* 003B0 80A0BA70 2739CA44 */ addiu $t9, $t9, %lo(func_80A0CA44) ## $t9 = 80A0CA44
|
||||
/* 003B4 80A0BA74 57220004 */ bnel $t9, $v0, .L80A0BA88
|
||||
/* 003B8 80A0BA78 90A81C26 */ lbu $t0, 0x1C26($a1) ## 00001C26
|
||||
.L80A0BA7C:
|
||||
/* 003BC 80A0BA7C 03E00008 */ jr $ra
|
||||
/* 003C0 80A0BA80 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BA84:
|
||||
/* 003C4 80A0BA84 90A81C26 */ lbu $t0, 0x1C26($a1) ## 00001C26
|
||||
.L80A0BA88:
|
||||
/* 003C8 80A0BA88 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 003CC 80A0BA8C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 003D0 80A0BA90 11000011 */ beq $t0, $zero, .L80A0BAD8
|
||||
/* 003D4 80A0BA94 00000000 */ nop
|
||||
/* 003D8 80A0BA98 C4840090 */ lwc1 $f4, 0x0090($a0) ## 00000090
|
||||
/* 003DC 80A0BA9C 44813000 */ mtc1 $at, $f6 ## $f6 = 300.00
|
||||
/* 003E0 80A0BAA0 3C014270 */ lui $at, 0x4270 ## $at = 42700000
|
||||
/* 003E4 80A0BAA4 4606203C */ c.lt.s $f4, $f6
|
||||
/* 003E8 80A0BAA8 00000000 */ nop
|
||||
/* 003EC 80A0BAAC 4500000A */ bc1f .L80A0BAD8
|
||||
/* 003F0 80A0BAB0 00000000 */ nop
|
||||
/* 003F4 80A0BAB4 C4880094 */ lwc1 $f8, 0x0094($a0) ## 00000094
|
||||
/* 003F8 80A0BAB8 44815000 */ mtc1 $at, $f10 ## $f10 = 60.00
|
||||
/* 003FC 80A0BABC 00000000 */ nop
|
||||
/* 00400 80A0BAC0 460A403C */ c.lt.s $f8, $f10
|
||||
/* 00404 80A0BAC4 00000000 */ nop
|
||||
/* 00408 80A0BAC8 45000003 */ bc1f .L80A0BAD8
|
||||
/* 0040C 80A0BACC 00000000 */ nop
|
||||
/* 00410 80A0BAD0 03E00008 */ jr $ra
|
||||
/* 00414 80A0BAD4 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A0BAD8:
|
||||
/* 00418 80A0BAD8 03E00008 */ jr $ra
|
||||
/* 0041C 80A0BADC 00000000 */ nop
|
@ -1,113 +0,0 @@
|
||||
glabel func_80A0BAE0
|
||||
/* 00420 80A0BAE0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 00424 80A0BAE4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00428 80A0BAE8 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 0042C 80A0BAEC AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 00430 80A0BAF0 908201A5 */ lbu $v0, 0x01A5($a0) ## 000001A5
|
||||
/* 00434 80A0BAF4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00438 80A0BAF8 8CA61C44 */ lw $a2, 0x1C44($a1) ## 00001C44
|
||||
/* 0043C 80A0BAFC 304F0002 */ andi $t7, $v0, 0x0002 ## $t7 = 00000000
|
||||
/* 00440 80A0BB00 55E00007 */ bnel $t7, $zero, .L80A0BB20
|
||||
/* 00444 80A0BB04 861904C2 */ lh $t9, 0x04C2($s0) ## 000004C2
|
||||
/* 00448 80A0BB08 0C282E91 */ jal func_80A0BA44
|
||||
/* 0044C 80A0BB0C AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 00450 80A0BB10 10400027 */ beq $v0, $zero, .L80A0BBB0
|
||||
/* 00454 80A0BB14 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
/* 00458 80A0BB18 920201A5 */ lbu $v0, 0x01A5($s0) ## 000001A5
|
||||
/* 0045C 80A0BB1C 861904C2 */ lh $t9, 0x04C2($s0) ## 000004C2
|
||||
.L80A0BB20:
|
||||
/* 00460 80A0BB20 3058FFFD */ andi $t8, $v0, 0xFFFD ## $t8 = 00000000
|
||||
/* 00464 80A0BB24 A21801A5 */ sb $t8, 0x01A5($s0) ## 000001A5
|
||||
/* 00468 80A0BB28 53200004 */ beql $t9, $zero, .L80A0BB3C
|
||||
/* 0046C 80A0BB2C 8E0201B0 */ lw $v0, 0x01B0($s0) ## 000001B0
|
||||
/* 00470 80A0BB30 1000004A */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 00474 80A0BB34 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00478 80A0BB38 8E0201B0 */ lw $v0, 0x01B0($s0) ## 000001B0
|
||||
.L80A0BB3C:
|
||||
/* 0047C 80A0BB3C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00480 80A0BB40 8C430024 */ lw $v1, 0x0024($v0) ## 00000024
|
||||
/* 00484 80A0BB44 10600007 */ beq $v1, $zero, .L80A0BB64
|
||||
/* 00488 80A0BB48 00000000 */ nop
|
||||
/* 0048C 80A0BB4C 8C680000 */ lw $t0, 0x0000($v1) ## 00000000
|
||||
/* 00490 80A0BB50 31090080 */ andi $t1, $t0, 0x0080 ## $t1 = 00000000
|
||||
/* 00494 80A0BB54 11200003 */ beq $t1, $zero, .L80A0BB64
|
||||
/* 00498 80A0BB58 00000000 */ nop
|
||||
/* 0049C 80A0BB5C 1000003F */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 004A0 80A0BB60 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BB64:
|
||||
/* 004A4 80A0BB64 0C282DB0 */ jal func_80A0B6C0
|
||||
/* 004A8 80A0BB68 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 004AC 80A0BB6C 14400003 */ bne $v0, $zero, .L80A0BB7C
|
||||
/* 004B0 80A0BB70 240A001E */ addiu $t2, $zero, 0x001E ## $t2 = 0000001E
|
||||
/* 004B4 80A0BB74 10000039 */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 004B8 80A0BB78 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BB7C:
|
||||
/* 004BC 80A0BB7C 8E0B0004 */ lw $t3, 0x0004($s0) ## 00000004
|
||||
/* 004C0 80A0BB80 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
|
||||
/* 004C4 80A0BB84 A60A04C2 */ sh $t2, 0x04C2($s0) ## 000004C2
|
||||
/* 004C8 80A0BB88 01616024 */ and $t4, $t3, $at
|
||||
/* 004CC 80A0BB8C AE0C0004 */ sw $t4, 0x0004($s0) ## 00000004
|
||||
/* 004D0 80A0BB90 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004D4 80A0BB94 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 004D8 80A0BB98 2405397A */ addiu $a1, $zero, 0x397A ## $a1 = 0000397A
|
||||
/* 004DC 80A0BB9C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 004E0 80A0BBA0 0C00CB1F */ jal func_80032C7C
|
||||
/* 004E4 80A0BBA4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 004E8 80A0BBA8 1000002C */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 004EC 80A0BBAC 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A0BBB0:
|
||||
/* 004F0 80A0BBB0 860204C4 */ lh $v0, 0x04C4($s0) ## 000004C4
|
||||
/* 004F4 80A0BBB4 14400003 */ bne $v0, $zero, .L80A0BBC4
|
||||
/* 004F8 80A0BBB8 244DFFFF */ addiu $t5, $v0, 0xFFFF ## $t5 = 00000000
|
||||
/* 004FC 80A0BBBC 10000003 */ beq $zero, $zero, .L80A0BBCC
|
||||
/* 00500 80A0BBC0 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A0BBC4:
|
||||
/* 00504 80A0BBC4 A60D04C4 */ sh $t5, 0x04C4($s0) ## 000004C4
|
||||
/* 00508 80A0BBC8 860304C4 */ lh $v1, 0x04C4($s0) ## 000004C4
|
||||
.L80A0BBCC:
|
||||
/* 0050C 80A0BBCC 54600023 */ bnel $v1, $zero, .L80A0BC5C
|
||||
/* 00510 80A0BBD0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00514 80A0BBD4 920201A4 */ lbu $v0, 0x01A4($s0) ## 000001A4
|
||||
/* 00518 80A0BBD8 304F0002 */ andi $t7, $v0, 0x0002 ## $t7 = 00000000
|
||||
/* 0051C 80A0BBDC 51E0001F */ beql $t7, $zero, .L80A0BC5C
|
||||
/* 00520 80A0BBE0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00524 80A0BBE4 861804C2 */ lh $t8, 0x04C2($s0) ## 000004C2
|
||||
/* 00528 80A0BBE8 304EFFFD */ andi $t6, $v0, 0xFFFD ## $t6 = 00000000
|
||||
/* 0052C 80A0BBEC A20E01A4 */ sb $t6, 0x01A4($s0) ## 000001A4
|
||||
/* 00530 80A0BBF0 53000004 */ beql $t8, $zero, .L80A0BC04
|
||||
/* 00534 80A0BBF4 921901A4 */ lbu $t9, 0x01A4($s0) ## 000001A4
|
||||
/* 00538 80A0BBF8 10000018 */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 0053C 80A0BBFC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00540 80A0BC00 921901A4 */ lbu $t9, 0x01A4($s0) ## 000001A4
|
||||
.L80A0BC04:
|
||||
/* 00544 80A0BC04 2409001E */ addiu $t1, $zero, 0x001E ## $t1 = 0000001E
|
||||
/* 00548 80A0BC08 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 0054C 80A0BC0C 33280004 */ andi $t0, $t9, 0x0004 ## $t0 = 00000000
|
||||
/* 00550 80A0BC10 11000003 */ beq $t0, $zero, .L80A0BC20
|
||||
/* 00554 80A0BC14 2405083E */ addiu $a1, $zero, 0x083E ## $a1 = 0000083E
|
||||
/* 00558 80A0BC18 10000010 */ beq $zero, $zero, .L80A0BC5C
|
||||
/* 0055C 80A0BC1C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BC20:
|
||||
/* 00560 80A0BC20 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00564 80A0BC24 A60904C4 */ sh $t1, 0x04C4($s0) ## 000004C4
|
||||
/* 00568 80A0BC28 3C014000 */ lui $at, 0x4000 ## $at = 40000000
|
||||
/* 0056C 80A0BC2C 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00
|
||||
/* 00570 80A0BC30 C6040068 */ lwc1 $f4, 0x0068($s0) ## 00000068
|
||||
/* 00574 80A0BC34 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
|
||||
/* 00578 80A0BC38 44815000 */ mtc1 $at, $f10 ## $f10 = 6.00
|
||||
/* 0057C 80A0BC3C 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00580 80A0BC40 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
|
||||
/* 00584 80A0BC44 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 00588 80A0BC48 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 0058C 80A0BC4C 44064000 */ mfc1 $a2, $f8
|
||||
/* 00590 80A0BC50 0C00BDC7 */ jal func_8002F71C
|
||||
/* 00594 80A0BC54 E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
/* 00598 80A0BC58 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BC5C:
|
||||
/* 0059C 80A0BC5C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 005A0 80A0BC60 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 005A4 80A0BC64 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 005A8 80A0BC68 03E00008 */ jr $ra
|
||||
/* 005AC 80A0BC6C 00000000 */ nop
|
@ -1,73 +0,0 @@
|
||||
glabel func_80A0BC70
|
||||
/* 005B0 80A0BC70 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
|
||||
/* 005B4 80A0BC74 AFA40058 */ sw $a0, 0x0058($sp)
|
||||
/* 005B8 80A0BC78 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 005BC 80A0BC7C 24840024 */ addiu $a0, $a0, 0x0024 ## $a0 = 00000024
|
||||
/* 005C0 80A0BC80 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 005C4 80A0BC84 AFA60060 */ sw $a2, 0x0060($sp)
|
||||
/* 005C8 80A0BC88 AFA50030 */ sw $a1, 0x0030($sp)
|
||||
/* 005CC 80A0BC8C 0C01DFE4 */ jal Math_Vec3f_DistXYZ
|
||||
|
||||
/* 005D0 80A0BC90 AFA40034 */ sw $a0, 0x0034($sp)
|
||||
/* 005D4 80A0BC94 3C0143C8 */ lui $at, 0x43C8 ## $at = 43C80000
|
||||
/* 005D8 80A0BC98 44812000 */ mtc1 $at, $f4 ## $f4 = 400.00
|
||||
/* 005DC 80A0BC9C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 005E0 80A0BCA0 4600203C */ c.lt.s $f4, $f0
|
||||
/* 005E4 80A0BCA4 00000000 */ nop
|
||||
/* 005E8 80A0BCA8 45000003 */ bc1f .L80A0BCB8
|
||||
/* 005EC 80A0BCAC 00000000 */ nop
|
||||
/* 005F0 80A0BCB0 1000002D */ beq $zero, $zero, .L80A0BD68
|
||||
/* 005F4 80A0BCB4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BCB8:
|
||||
/* 005F8 80A0BCB8 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 005FC 80A0BCBC 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 00600 80A0BCC0 8FAE0058 */ lw $t6, 0x0058($sp)
|
||||
/* 00604 80A0BCC4 44823000 */ mtc1 $v0, $f6 ## $f6 = 0.00
|
||||
/* 00608 80A0BCC8 8FA40060 */ lw $a0, 0x0060($sp)
|
||||
/* 0060C 80A0BCCC 85CF00B6 */ lh $t7, 0x00B6($t6) ## 000000B6
|
||||
/* 00610 80A0BCD0 46803220 */ cvt.s.w $f8, $f6
|
||||
/* 00614 80A0BCD4 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 00618 80A0BCD8 448F5000 */ mtc1 $t7, $f10 ## $f10 = 0.00
|
||||
/* 0061C 80A0BCDC 8FA60030 */ lw $a2, 0x0030($sp)
|
||||
/* 00620 80A0BCE0 27A70044 */ addiu $a3, $sp, 0x0044 ## $a3 = FFFFFFEC
|
||||
/* 00624 80A0BCE4 46805420 */ cvt.s.w $f16, $f10
|
||||
/* 00628 80A0BCE8 27B90054 */ addiu $t9, $sp, 0x0054 ## $t9 = FFFFFFFC
|
||||
/* 0062C 80A0BCEC 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 00630 80A0BCF0 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
|
||||
/* 00634 80A0BCF4 27AA0050 */ addiu $t2, $sp, 0x0050 ## $t2 = FFFFFFF8
|
||||
/* 00638 80A0BCF8 248407C0 */ addiu $a0, $a0, 0x07C0 ## $a0 = 000007C0
|
||||
/* 0063C 80A0BCFC 46104481 */ sub.s $f18, $f8, $f16
|
||||
/* 00640 80A0BD00 4600910D */ trunc.w.s $f4, $f18
|
||||
/* 00644 80A0BD04 44032000 */ mfc1 $v1, $f4
|
||||
/* 00648 80A0BD08 00000000 */ nop
|
||||
/* 0064C 80A0BD0C 00031C00 */ sll $v1, $v1, 16
|
||||
/* 00650 80A0BD10 00031C03 */ sra $v1, $v1, 16
|
||||
/* 00654 80A0BD14 04600003 */ bltz $v1, .L80A0BD24
|
||||
/* 00658 80A0BD18 00031023 */ subu $v0, $zero, $v1
|
||||
/* 0065C 80A0BD1C 10000001 */ beq $zero, $zero, .L80A0BD24
|
||||
/* 00660 80A0BD20 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
.L80A0BD24:
|
||||
/* 00664 80A0BD24 28411C71 */ slti $at, $v0, 0x1C71
|
||||
/* 00668 80A0BD28 54200004 */ bnel $at, $zero, .L80A0BD3C
|
||||
/* 0066C 80A0BD2C AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00670 80A0BD30 1000000D */ beq $zero, $zero, .L80A0BD68
|
||||
/* 00674 80A0BD34 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00678 80A0BD38 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
.L80A0BD3C:
|
||||
/* 0067C 80A0BD3C AFA80014 */ sw $t0, 0x0014($sp)
|
||||
/* 00680 80A0BD40 AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 00684 80A0BD44 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00688 80A0BD48 AFA90020 */ sw $t1, 0x0020($sp)
|
||||
/* 0068C 80A0BD4C 0C00F7A1 */ jal func_8003DE84
|
||||
/* 00690 80A0BD50 AFAA0024 */ sw $t2, 0x0024($sp)
|
||||
/* 00694 80A0BD54 50400004 */ beql $v0, $zero, .L80A0BD68
|
||||
/* 00698 80A0BD58 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 0069C 80A0BD5C 10000002 */ beq $zero, $zero, .L80A0BD68
|
||||
/* 006A0 80A0BD60 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 006A4 80A0BD64 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A0BD68:
|
||||
/* 006A8 80A0BD68 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 006AC 80A0BD6C 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
|
||||
/* 006B0 80A0BD70 03E00008 */ jr $ra
|
||||
/* 006B4 80A0BD74 00000000 */ nop
|
@ -1,56 +0,0 @@
|
||||
glabel func_80A0BD78
|
||||
/* 006B8 80A0BD78 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 006BC 80A0BD7C AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 006C0 80A0BD80 AFB40028 */ sw $s4, 0x0028($sp)
|
||||
/* 006C4 80A0BD84 AFB30024 */ sw $s3, 0x0024($sp)
|
||||
/* 006C8 80A0BD88 AFB20020 */ sw $s2, 0x0020($sp)
|
||||
/* 006CC 80A0BD8C AFB1001C */ sw $s1, 0x001C($sp)
|
||||
/* 006D0 80A0BD90 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 006D4 80A0BD94 8CB01C4C */ lw $s0, 0x1C4C($a1) ## 00001C4C
|
||||
/* 006D8 80A0BD98 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 006DC 80A0BD9C 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
|
||||
/* 006E0 80A0BDA0 1200001B */ beq $s0, $zero, .L80A0BE10
|
||||
/* 006E4 80A0BDA4 24140001 */ addiu $s4, $zero, 0x0001 ## $s4 = 00000001
|
||||
/* 006E8 80A0BDA8 24130010 */ addiu $s3, $zero, 0x0010 ## $s3 = 00000010
|
||||
/* 006EC 80A0BDAC 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
.L80A0BDB0:
|
||||
/* 006F0 80A0BDB0 15C00004 */ bne $t6, $zero, .L80A0BDC4
|
||||
/* 006F4 80A0BDB4 00000000 */ nop
|
||||
/* 006F8 80A0BDB8 8E0F0118 */ lw $t7, 0x0118($s0) ## 00000118
|
||||
/* 006FC 80A0BDBC 51E00004 */ beql $t7, $zero, .L80A0BDD0
|
||||
/* 00700 80A0BDC0 86180000 */ lh $t8, 0x0000($s0) ## 00000000
|
||||
.L80A0BDC4:
|
||||
/* 00704 80A0BDC4 10000010 */ beq $zero, $zero, .L80A0BE08
|
||||
/* 00708 80A0BDC8 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
|
||||
/* 0070C 80A0BDCC 86180000 */ lh $t8, 0x0000($s0) ## 00000000
|
||||
.L80A0BDD0:
|
||||
/* 00710 80A0BDD0 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
|
||||
/* 00714 80A0BDD4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00718 80A0BDD8 12780003 */ beq $s3, $t8, .L80A0BDE8
|
||||
/* 0071C 80A0BDDC 00000000 */ nop
|
||||
/* 00720 80A0BDE0 10000009 */ beq $zero, $zero, .L80A0BE08
|
||||
/* 00724 80A0BDE4 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
|
||||
.L80A0BDE8:
|
||||
/* 00728 80A0BDE8 0C282F1C */ jal func_80A0BC70
|
||||
/* 0072C 80A0BDEC 02203025 */ or $a2, $s1, $zero ## $a2 = 00000000
|
||||
/* 00730 80A0BDF0 10540003 */ beq $v0, $s4, .L80A0BE00
|
||||
/* 00734 80A0BDF4 00000000 */ nop
|
||||
/* 00738 80A0BDF8 10000003 */ beq $zero, $zero, .L80A0BE08
|
||||
/* 0073C 80A0BDFC 8E100124 */ lw $s0, 0x0124($s0) ## 00000124
|
||||
.L80A0BE00:
|
||||
/* 00740 80A0BE00 10000004 */ beq $zero, $zero, .L80A0BE14
|
||||
/* 00744 80A0BE04 02001025 */ or $v0, $s0, $zero ## $v0 = 00000000
|
||||
.L80A0BE08:
|
||||
/* 00748 80A0BE08 5600FFE9 */ bnel $s0, $zero, .L80A0BDB0
|
||||
/* 0074C 80A0BE0C 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
.L80A0BE10:
|
||||
/* 00750 80A0BE10 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BE14:
|
||||
/* 00754 80A0BE14 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00758 80A0BE18 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0075C 80A0BE1C 8FB1001C */ lw $s1, 0x001C($sp)
|
||||
/* 00760 80A0BE20 8FB20020 */ lw $s2, 0x0020($sp)
|
||||
/* 00764 80A0BE24 8FB30024 */ lw $s3, 0x0024($sp)
|
||||
/* 00768 80A0BE28 8FB40028 */ lw $s4, 0x0028($sp)
|
||||
/* 0076C 80A0BE2C 03E00008 */ jr $ra
|
||||
/* 00770 80A0BE30 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
@ -1,33 +0,0 @@
|
||||
glabel func_80A0BE34
|
||||
/* 00774 80A0BE34 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00778 80A0BE38 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0077C 80A0BE3C AFA40020 */ sw $a0, 0x0020($sp)
|
||||
/* 00780 80A0BE40 0C282F5E */ jal func_80A0BD78
|
||||
/* 00784 80A0BE44 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00788 80A0BE48 8FA40020 */ lw $a0, 0x0020($sp)
|
||||
/* 0078C 80A0BE4C 10400003 */ beq $v0, $zero, .L80A0BE5C
|
||||
/* 00790 80A0BE50 8FA60024 */ lw $a2, 0x0024($sp)
|
||||
/* 00794 80A0BE54 1000000F */ beq $zero, $zero, .L80A0BE94
|
||||
/* 00798 80A0BE58 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A0BE5C:
|
||||
/* 0079C 80A0BE5C 848E04C4 */ lh $t6, 0x04C4($a0) ## 000004C4
|
||||
/* 007A0 80A0BE60 51C00004 */ beql $t6, $zero, .L80A0BE74
|
||||
/* 007A4 80A0BE64 8CC51C44 */ lw $a1, 0x1C44($a2) ## 00001C44
|
||||
/* 007A8 80A0BE68 10000009 */ beq $zero, $zero, .L80A0BE90
|
||||
/* 007AC 80A0BE6C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 007B0 80A0BE70 8CC51C44 */ lw $a1, 0x1C44($a2) ## 00001C44
|
||||
.L80A0BE74:
|
||||
/* 007B4 80A0BE74 0C282F1C */ jal func_80A0BC70
|
||||
/* 007B8 80A0BE78 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 007BC 80A0BE7C 14400003 */ bne $v0, $zero, .L80A0BE8C
|
||||
/* 007C0 80A0BE80 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 007C4 80A0BE84 10000002 */ beq $zero, $zero, .L80A0BE90
|
||||
/* 007C8 80A0BE88 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0BE8C:
|
||||
/* 007CC 80A0BE8C 00A01025 */ or $v0, $a1, $zero ## $v0 = 00000000
|
||||
.L80A0BE90:
|
||||
/* 007D0 80A0BE90 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A0BE94:
|
||||
/* 007D4 80A0BE94 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 007D8 80A0BE98 03E00008 */ jr $ra
|
||||
/* 007DC 80A0BE9C 00000000 */ nop
|
@ -1,55 +0,0 @@
|
||||
glabel func_80A0BEA0
|
||||
/* 007E0 80A0BEA0 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 007E4 80A0BEA4 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 007E8 80A0BEA8 AFA40038 */ sw $a0, 0x0038($sp)
|
||||
/* 007EC 80A0BEAC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 007F0 80A0BEB0 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 007F4 80A0BEB4 24A40008 */ addiu $a0, $a1, 0x0008 ## $a0 = 00000008
|
||||
/* 007F8 80A0BEB8 AFA60040 */ sw $a2, 0x0040($sp)
|
||||
/* 007FC 80A0BEBC AFA70044 */ sw $a3, 0x0044($sp)
|
||||
/* 00800 80A0BEC0 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 00804 80A0BEC4 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 00808 80A0BEC8 87AE0046 */ lh $t6, 0x0046($sp)
|
||||
/* 0080C 80A0BECC 24011554 */ addiu $at, $zero, 0x1554 ## $at = 00001554
|
||||
/* 00810 80A0BED0 01C10019 */ multu $t6, $at
|
||||
/* 00814 80A0BED4 00007812 */ mflo $t7
|
||||
/* 00818 80A0BED8 004F1821 */ addu $v1, $v0, $t7
|
||||
/* 0081C 80A0BEDC 00032400 */ sll $a0, $v1, 16
|
||||
/* 00820 80A0BEE0 A7A30036 */ sh $v1, 0x0036($sp)
|
||||
/* 00824 80A0BEE4 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 00828 80A0BEE8 00042403 */ sra $a0, $a0, 16
|
||||
/* 0082C 80A0BEEC C7A40040 */ lwc1 $f4, 0x0040($sp)
|
||||
/* 00830 80A0BEF0 C6080008 */ lwc1 $f8, 0x0008($s0) ## 00000008
|
||||
/* 00834 80A0BEF4 87A40036 */ lh $a0, 0x0036($sp)
|
||||
/* 00838 80A0BEF8 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 0083C 80A0BEFC 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 00840 80A0BF00 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 00844 80A0BF04 E7AA0028 */ swc1 $f10, 0x0028($sp)
|
||||
/* 00848 80A0BF08 C7B00040 */ lwc1 $f16, 0x0040($sp)
|
||||
/* 0084C 80A0BF0C C6040010 */ lwc1 $f4, 0x0010($s0) ## 00000010
|
||||
/* 00850 80A0BF10 C7A80028 */ lwc1 $f8, 0x0028($sp)
|
||||
/* 00854 80A0BF14 46100482 */ mul.s $f18, $f0, $f16
|
||||
/* 00858 80A0BF18 27B80028 */ addiu $t8, $sp, 0x0028 ## $t8 = FFFFFFF0
|
||||
/* 0085C 80A0BF1C 8FA20038 */ lw $v0, 0x0038($sp)
|
||||
/* 00860 80A0BF20 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00864 80A0BF24 E7A60030 */ swc1 $f6, 0x0030($sp)
|
||||
/* 00868 80A0BF28 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
|
||||
/* 0086C 80A0BF2C 460A4401 */ sub.s $f16, $f8, $f10
|
||||
/* 00870 80A0BF30 E7B00028 */ swc1 $f16, 0x0028($sp)
|
||||
/* 00874 80A0BF34 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
|
||||
/* 00878 80A0BF38 46123101 */ sub.s $f4, $f6, $f18
|
||||
/* 0087C 80A0BF3C E7A40030 */ swc1 $f4, 0x0030($sp)
|
||||
/* 00880 80A0BF40 8F080000 */ lw $t0, 0x0000($t8) ## FFFFFFF0
|
||||
/* 00884 80A0BF44 AC480000 */ sw $t0, 0x0000($v0) ## 00000000
|
||||
/* 00888 80A0BF48 8F190004 */ lw $t9, 0x0004($t8) ## FFFFFFF4
|
||||
/* 0088C 80A0BF4C AC590004 */ sw $t9, 0x0004($v0) ## 00000004
|
||||
/* 00890 80A0BF50 8F080008 */ lw $t0, 0x0008($t8) ## FFFFFFF8
|
||||
/* 00894 80A0BF54 AC480008 */ sw $t0, 0x0008($v0) ## 00000008
|
||||
/* 00898 80A0BF58 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 0089C 80A0BF5C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 008A0 80A0BF60 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 008A4 80A0BF64 03E00008 */ jr $ra
|
||||
/* 008A8 80A0BF68 00000000 */ nop
|
@ -1,85 +0,0 @@
|
||||
glabel func_80A0BF6C
|
||||
/* 008AC 80A0BF6C 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
|
||||
/* 008B0 80A0BF70 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00
|
||||
/* 008B4 80A0BF74 AFB10030 */ sw $s1, 0x0030($sp)
|
||||
/* 008B8 80A0BF78 AFB0002C */ sw $s0, 0x002C($sp)
|
||||
/* 008BC 80A0BF7C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 008C0 80A0BF80 00E08825 */ or $s1, $a3, $zero ## $s1 = 00000000
|
||||
/* 008C4 80A0BF84 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 008C8 80A0BF88 AFA50064 */ sw $a1, 0x0064($sp)
|
||||
/* 008CC 80A0BF8C 44066000 */ mfc1 $a2, $f12
|
||||
/* 008D0 80A0BF90 84E70000 */ lh $a3, 0x0000($a3) ## 00000000
|
||||
/* 008D4 80A0BF94 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 008D8 80A0BF98 0C282FA8 */ jal func_80A0BEA0
|
||||
/* 008DC 80A0BF9C 27A40040 */ addiu $a0, $sp, 0x0040 ## $a0 = FFFFFFE0
|
||||
/* 008E0 80A0BFA0 C7A40040 */ lwc1 $f4, 0x0040($sp)
|
||||
/* 008E4 80A0BFA4 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024
|
||||
/* 008E8 80A0BFA8 C7B00048 */ lwc1 $f16, 0x0048($sp)
|
||||
/* 008EC 80A0BFAC 8FA40064 */ lw $a0, 0x0064($sp)
|
||||
/* 008F0 80A0BFB0 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 008F4 80A0BFB4 27AE005C */ addiu $t6, $sp, 0x005C ## $t6 = FFFFFFFC
|
||||
/* 008F8 80A0BFB8 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
|
||||
/* 008FC 80A0BFBC 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00900 80A0BFC0 E7A80040 */ swc1 $f8, 0x0040($sp)
|
||||
/* 00904 80A0BFC4 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 00908 80A0BFC8 27B90058 */ addiu $t9, $sp, 0x0058 ## $t9 = FFFFFFF8
|
||||
/* 0090C 80A0BFCC 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
|
||||
/* 00910 80A0BFD0 E7AA0044 */ swc1 $f10, 0x0044($sp)
|
||||
/* 00914 80A0BFD4 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
|
||||
/* 00918 80A0BFD8 AFB90024 */ sw $t9, 0x0024($sp)
|
||||
/* 0091C 80A0BFDC AFB80020 */ sw $t8, 0x0020($sp)
|
||||
/* 00920 80A0BFE0 46128100 */ add.s $f4, $f16, $f18
|
||||
/* 00924 80A0BFE4 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00928 80A0BFE8 AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 0092C 80A0BFEC AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 00930 80A0BFF0 E7A40048 */ swc1 $f4, 0x0048($sp)
|
||||
/* 00934 80A0BFF4 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 00938 80A0BFF8 27A60040 */ addiu $a2, $sp, 0x0040 ## $a2 = FFFFFFE0
|
||||
/* 0093C 80A0BFFC 27A7004C */ addiu $a3, $sp, 0x004C ## $a3 = FFFFFFEC
|
||||
/* 00940 80A0C000 0C00F7A1 */ jal func_8003DE84
|
||||
/* 00944 80A0C004 248407C0 */ addiu $a0, $a0, 0x07C0 ## $a0 = 000007C0
|
||||
/* 00948 80A0C008 50400007 */ beql $v0, $zero, .L80A0C028
|
||||
/* 0094C 80A0C00C 860A04C0 */ lh $t2, 0x04C0($s0) ## 000004C0
|
||||
/* 00950 80A0C010 86280000 */ lh $t0, 0x0000($s1) ## 00000000
|
||||
/* 00954 80A0C014 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 00958 80A0C018 00084823 */ subu $t1, $zero, $t0
|
||||
/* 0095C 80A0C01C 1000001B */ beq $zero, $zero, .L80A0C08C
|
||||
/* 00960 80A0C020 A6290000 */ sh $t1, 0x0000($s1) ## 00000000
|
||||
/* 00964 80A0C024 860A04C0 */ lh $t2, 0x04C0($s0) ## 000004C0
|
||||
.L80A0C028:
|
||||
/* 00968 80A0C028 1540000A */ bne $t2, $zero, .L80A0C054
|
||||
/* 0096C 80A0C02C 00000000 */ nop
|
||||
/* 00970 80A0C030 860204BE */ lh $v0, 0x04BE($s0) ## 000004BE
|
||||
/* 00974 80A0C034 14400003 */ bne $v0, $zero, .L80A0C044
|
||||
/* 00978 80A0C038 244BFFFF */ addiu $t3, $v0, 0xFFFF ## $t3 = 00000000
|
||||
/* 0097C 80A0C03C 10000003 */ beq $zero, $zero, .L80A0C04C
|
||||
/* 00980 80A0C040 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A0C044:
|
||||
/* 00984 80A0C044 A60B04BE */ sh $t3, 0x04BE($s0) ## 000004BE
|
||||
/* 00988 80A0C048 860304BE */ lh $v1, 0x04BE($s0) ## 000004BE
|
||||
.L80A0C04C:
|
||||
/* 0098C 80A0C04C 10600003 */ beq $v1, $zero, .L80A0C05C
|
||||
/* 00990 80A0C050 00000000 */ nop
|
||||
.L80A0C054:
|
||||
/* 00994 80A0C054 1000000D */ beq $zero, $zero, .L80A0C08C
|
||||
/* 00998 80A0C058 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0C05C:
|
||||
/* 0099C 80A0C05C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 009A0 80A0C060 00000000 */ nop
|
||||
/* 009A4 80A0C064 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 009A8 80A0C068 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50
|
||||
/* 009AC 80A0C06C 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 009B0 80A0C070 4600303C */ c.lt.s $f6, $f0
|
||||
/* 009B4 80A0C074 00000000 */ nop
|
||||
/* 009B8 80A0C078 45000004 */ bc1f .L80A0C08C
|
||||
/* 009BC 80A0C07C 00000000 */ nop
|
||||
/* 009C0 80A0C080 862C0000 */ lh $t4, 0x0000($s1) ## 00000000
|
||||
/* 009C4 80A0C084 000C6823 */ subu $t5, $zero, $t4
|
||||
/* 009C8 80A0C088 A62D0000 */ sh $t5, 0x0000($s1) ## 00000000
|
||||
.L80A0C08C:
|
||||
/* 009CC 80A0C08C 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 009D0 80A0C090 8FB0002C */ lw $s0, 0x002C($sp)
|
||||
/* 009D4 80A0C094 8FB10030 */ lw $s1, 0x0030($sp)
|
||||
/* 009D8 80A0C098 03E00008 */ jr $ra
|
||||
/* 009DC 80A0C09C 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
|
@ -1,79 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1B4
|
||||
.float 0.9
|
||||
|
||||
.text
|
||||
glabel func_80A0C0A0
|
||||
/* 009E0 80A0C0A0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 009E4 80A0C0A4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 009E8 80A0C0A8 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 009EC 80A0C0AC AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 009F0 80A0C0B0 848E04C2 */ lh $t6, 0x04C2($a0) ## 000004C2
|
||||
/* 009F4 80A0C0B4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 009F8 80A0C0B8 248404CC */ addiu $a0, $a0, 0x04CC ## $a0 = 000004CC
|
||||
/* 009FC 80A0C0BC 11C00036 */ beq $t6, $zero, .L80A0C198
|
||||
/* 00A00 80A0C0C0 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 00A04 80A0C0C4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00A08 80A0C0C8 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 00A0C 80A0C0CC 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
|
||||
/* 00A10 80A0C0D0 44050000 */ mfc1 $a1, $f0
|
||||
/* 00A14 80A0C0D4 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00A18 80A0C0D8 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00A1C 80A0C0DC 444FF800 */ cfc1 $t7, $31
|
||||
/* 00A20 80A0C0E0 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00A24 80A0C0E4 44D8F800 */ ctc1 $t8, $31
|
||||
/* 00A28 80A0C0E8 C60004CC */ lwc1 $f0, 0x04CC($s0) ## 000004CC
|
||||
/* 00A2C 80A0C0EC 3C1980A1 */ lui $t9, %hi(func_80A0CA44) ## $t9 = 80A10000
|
||||
/* 00A30 80A0C0F0 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 00A34 80A0C0F4 46000124 */ cvt.w.s $f4, $f0
|
||||
/* 00A38 80A0C0F8 2739CA44 */ addiu $t9, $t9, %lo(func_80A0CA44) ## $t9 = 80A0CA44
|
||||
/* 00A3C 80A0C0FC 4458F800 */ cfc1 $t8, $31
|
||||
/* 00A40 80A0C100 00000000 */ nop
|
||||
/* 00A44 80A0C104 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000
|
||||
/* 00A48 80A0C108 53000013 */ beql $t8, $zero, .L80A0C158
|
||||
/* 00A4C 80A0C10C 44182000 */ mfc1 $t8, $f4
|
||||
/* 00A50 80A0C110 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00
|
||||
/* 00A54 80A0C114 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00A58 80A0C118 46040101 */ sub.s $f4, $f0, $f4
|
||||
/* 00A5C 80A0C11C 44D8F800 */ ctc1 $t8, $31
|
||||
/* 00A60 80A0C120 00000000 */ nop
|
||||
/* 00A64 80A0C124 46002124 */ cvt.w.s $f4, $f4
|
||||
/* 00A68 80A0C128 4458F800 */ cfc1 $t8, $31
|
||||
/* 00A6C 80A0C12C 00000000 */ nop
|
||||
/* 00A70 80A0C130 33180078 */ andi $t8, $t8, 0x0078 ## $t8 = 00000000
|
||||
/* 00A74 80A0C134 17000005 */ bne $t8, $zero, .L80A0C14C
|
||||
/* 00A78 80A0C138 00000000 */ nop
|
||||
/* 00A7C 80A0C13C 44182000 */ mfc1 $t8, $f4
|
||||
/* 00A80 80A0C140 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 00A84 80A0C144 10000007 */ beq $zero, $zero, .L80A0C164
|
||||
/* 00A88 80A0C148 0301C025 */ or $t8, $t8, $at ## $t8 = 80000000
|
||||
.L80A0C14C:
|
||||
/* 00A8C 80A0C14C 10000005 */ beq $zero, $zero, .L80A0C164
|
||||
/* 00A90 80A0C150 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 00A94 80A0C154 44182000 */ mfc1 $t8, $f4
|
||||
.L80A0C158:
|
||||
/* 00A98 80A0C158 00000000 */ nop
|
||||
/* 00A9C 80A0C15C 0700FFFB */ bltz $t8, .L80A0C14C
|
||||
/* 00AA0 80A0C160 00000000 */ nop
|
||||
.L80A0C164:
|
||||
/* 00AA4 80A0C164 A21800C8 */ sb $t8, 0x00C8($s0) ## 000000C8
|
||||
/* 00AA8 80A0C168 3C0180A1 */ lui $at, %hi(D_80A0E1B4) ## $at = 80A10000
|
||||
/* 00AAC 80A0C16C 44CFF800 */ ctc1 $t7, $31
|
||||
/* 00AB0 80A0C170 C426E1B4 */ lwc1 $f6, %lo(D_80A0E1B4)($at)
|
||||
/* 00AB4 80A0C174 4600303E */ c.le.s $f6, $f0
|
||||
/* 00AB8 80A0C178 00000000 */ nop
|
||||
/* 00ABC 80A0C17C 45030007 */ bc1tl .L80A0C19C
|
||||
/* 00AC0 80A0C180 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00AC4 80A0C184 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 00AC8 80A0C188 A60004C2 */ sh $zero, 0x04C2($s0) ## 000004C2
|
||||
/* 00ACC 80A0C18C A60004BE */ sh $zero, 0x04BE($s0) ## 000004BE
|
||||
/* 00AD0 80A0C190 AE190190 */ sw $t9, 0x0190($s0) ## 00000190
|
||||
/* 00AD4 80A0C194 E6080068 */ swc1 $f8, 0x0068($s0) ## 00000068
|
||||
.L80A0C198:
|
||||
/* 00AD8 80A0C198 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0C19C:
|
||||
/* 00ADC 80A0C19C 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00AE0 80A0C1A0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00AE4 80A0C1A4 03E00008 */ jr $ra
|
||||
/* 00AE8 80A0C1A8 00000000 */ nop
|
@ -1,38 +0,0 @@
|
||||
glabel func_80A0C310
|
||||
/* 00C50 80A0C310 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00C54 80A0C314 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00C58 80A0C318 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00C5C 80A0C31C 8C8F0008 */ lw $t7, 0x0008($a0) ## 00000008
|
||||
/* 00C60 80A0C320 3C01437F */ lui $at, 0x437F ## $at = 437F0000
|
||||
/* 00C64 80A0C324 8C8E000C */ lw $t6, 0x000C($a0) ## 0000000C
|
||||
/* 00C68 80A0C328 AC8F0024 */ sw $t7, 0x0024($a0) ## 00000024
|
||||
/* 00C6C 80A0C32C 8C8F0010 */ lw $t7, 0x0010($a0) ## 00000010
|
||||
/* 00C70 80A0C330 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00C74 80A0C334 44813000 */ mtc1 $at, $f6 ## $f6 = 255.00
|
||||
/* 00C78 80A0C338 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF
|
||||
/* 00C7C 80A0C33C 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00C80 80A0C340 A480001C */ sh $zero, 0x001C($a0) ## 0000001C
|
||||
/* 00C84 80A0C344 A09800C8 */ sb $t8, 0x00C8($a0) ## 000000C8
|
||||
/* 00C88 80A0C348 A08004B4 */ sb $zero, 0x04B4($a0) ## 000004B4
|
||||
/* 00C8C 80A0C34C 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 00C90 80A0C350 AC8E0028 */ sw $t6, 0x0028($a0) ## 00000028
|
||||
/* 00C94 80A0C354 AC8F002C */ sw $t7, 0x002C($a0) ## 0000002C
|
||||
/* 00C98 80A0C358 E4840054 */ swc1 $f4, 0x0054($a0) ## 00000054
|
||||
/* 00C9C 80A0C35C E48604CC */ swc1 $f6, 0x04CC($a0) ## 000004CC
|
||||
/* 00CA0 80A0C360 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 00CA4 80A0C364 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 00CA8 80A0C368 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00CAC 80A0C36C 0C00D3B0 */ jal func_80034EC0
|
||||
/* 00CB0 80A0C370 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 00CB4 80A0C374 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00CB8 80A0C378 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00CBC 80A0C37C 24053981 */ addiu $a1, $zero, 0x3981 ## $a1 = 00003981
|
||||
/* 00CC0 80A0C380 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00CC4 80A0C384 3C1980A1 */ lui $t9, %hi(func_80A0C3A0) ## $t9 = 80A10000
|
||||
/* 00CC8 80A0C388 2739C3A0 */ addiu $t9, $t9, %lo(func_80A0C3A0) ## $t9 = 80A0C3A0
|
||||
/* 00CCC 80A0C38C ACF90190 */ sw $t9, 0x0190($a3) ## 00000190
|
||||
/* 00CD0 80A0C390 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00CD4 80A0C394 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00CD8 80A0C398 03E00008 */ jr $ra
|
||||
/* 00CDC 80A0C39C 00000000 */ nop
|
@ -1,64 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1B8
|
||||
.float 0.01
|
||||
|
||||
glabel D_80A0E1BC
|
||||
.float 0.01
|
||||
|
||||
.text
|
||||
glabel func_80A0C3A0
|
||||
/* 00CE0 80A0C3A0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00CE4 80A0C3A4 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00CE8 80A0C3A8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00CEC 80A0C3AC AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00CF0 80A0C3B0 8CE5015C */ lw $a1, 0x015C($a3) ## 0000015C
|
||||
/* 00CF4 80A0C3B4 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00CF8 80A0C3B8 AFA4001C */ sw $a0, 0x001C($sp)
|
||||
/* 00CFC 80A0C3BC 0C0295B2 */ jal func_800A56C8
|
||||
/* 00D00 80A0C3C0 AFA70020 */ sw $a3, 0x0020($sp)
|
||||
/* 00D04 80A0C3C4 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00D08 80A0C3C8 1040001A */ beq $v0, $zero, .L80A0C434
|
||||
/* 00D0C 80A0C3CC 8FA70020 */ lw $a3, 0x0020($sp)
|
||||
/* 00D10 80A0C3D0 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
|
||||
/* 00D14 80A0C3D4 44812000 */ mtc1 $at, $f4 ## $f4 = 6.00
|
||||
/* 00D18 80A0C3D8 3C0180A1 */ lui $at, %hi(D_80A0E1B8) ## $at = 80A10000
|
||||
/* 00D1C 80A0C3DC 84EE0032 */ lh $t6, 0x0032($a3) ## 00000032
|
||||
/* 00D20 80A0C3E0 E4E40060 */ swc1 $f4, 0x0060($a3) ## 00000060
|
||||
/* 00D24 80A0C3E4 C426E1B8 */ lwc1 $f6, %lo(D_80A0E1B8)($at)
|
||||
/* 00D28 80A0C3E8 8CF80004 */ lw $t8, 0x0004($a3) ## 00000004
|
||||
/* 00D2C 80A0C3EC 3C014100 */ lui $at, 0x4100 ## $at = 41000000
|
||||
/* 00D30 80A0C3F0 44814000 */ mtc1 $at, $f8 ## $f8 = 8.00
|
||||
/* 00D34 80A0C3F4 39CF8000 */ xori $t7, $t6, 0x8000 ## $t7 = FFFF8000
|
||||
/* 00D38 80A0C3F8 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
|
||||
/* 00D3C 80A0C3FC A4EF0032 */ sh $t7, 0x0032($a3) ## 00000032
|
||||
/* 00D40 80A0C400 ACF90004 */ sw $t9, 0x0004($a3) ## 00000004
|
||||
/* 00D44 80A0C404 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 00D48 80A0C408 E4E60054 */ swc1 $f6, 0x0054($a3) ## 00000054
|
||||
/* 00D4C 80A0C40C E4E80068 */ swc1 $f8, 0x0068($a3) ## 00000068
|
||||
/* 00D50 80A0C410 AFA70020 */ sw $a3, 0x0020($sp)
|
||||
/* 00D54 80A0C414 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 00D58 80A0C418 0C00D3B0 */ jal func_80034EC0
|
||||
/* 00D5C 80A0C41C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 00D60 80A0C420 8FA70020 */ lw $a3, 0x0020($sp)
|
||||
/* 00D64 80A0C424 3C0880A1 */ lui $t0, %hi(func_80A0C474) ## $t0 = 80A10000
|
||||
/* 00D68 80A0C428 2508C474 */ addiu $t0, $t0, %lo(func_80A0C474) ## $t0 = 80A0C474
|
||||
/* 00D6C 80A0C42C 1000000D */ beq $zero, $zero, .L80A0C464
|
||||
/* 00D70 80A0C430 ACE80190 */ sw $t0, 0x0190($a3) ## 00000190
|
||||
.L80A0C434:
|
||||
/* 00D74 80A0C434 3C0180A1 */ lui $at, %hi(D_80A0E1BC) ## $at = 80A10000
|
||||
/* 00D78 80A0C438 C42AE1BC */ lwc1 $f10, %lo(D_80A0E1BC)($at)
|
||||
/* 00D7C 80A0C43C C4F00160 */ lwc1 $f16, 0x0160($a3) ## 00000160
|
||||
/* 00D80 80A0C440 C4E40164 */ lwc1 $f4, 0x0164($a3) ## 00000164
|
||||
/* 00D84 80A0C444 84E900B6 */ lh $t1, 0x00B6($a3) ## 000000B6
|
||||
/* 00D88 80A0C448 46105483 */ div.s $f18, $f10, $f16
|
||||
/* 00D8C 80A0C44C 252A2000 */ addiu $t2, $t1, 0x2000 ## $t2 = 00002000
|
||||
/* 00D90 80A0C450 A4EA00B6 */ sh $t2, 0x00B6($a3) ## 000000B6
|
||||
/* 00D94 80A0C454 84EB00B6 */ lh $t3, 0x00B6($a3) ## 000000B6
|
||||
/* 00D98 80A0C458 A4EB0032 */ sh $t3, 0x0032($a3) ## 00000032
|
||||
/* 00D9C 80A0C45C 46122182 */ mul.s $f6, $f4, $f18
|
||||
/* 00DA0 80A0C460 E4E60054 */ swc1 $f6, 0x0054($a3) ## 00000054
|
||||
.L80A0C464:
|
||||
/* 00DA4 80A0C464 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00DA8 80A0C468 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00DAC 80A0C46C 03E00008 */ jr $ra
|
||||
/* 00DB0 80A0C470 00000000 */ nop
|
@ -1,33 +0,0 @@
|
||||
glabel func_80A0C474
|
||||
/* 00DB4 80A0C474 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00DB8 80A0C478 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00DBC 80A0C47C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00DC0 80A0C480 948E0088 */ lhu $t6, 0x0088($a0) ## 00000088
|
||||
/* 00DC4 80A0C484 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00DC8 80A0C488 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
|
||||
/* 00DCC 80A0C48C 51E00015 */ beql $t7, $zero, .L80A0C4E4
|
||||
/* 00DD0 80A0C490 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00DD4 80A0C494 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00DD8 80A0C498 C4840060 */ lwc1 $f4, 0x0060($a0) ## 00000060
|
||||
/* 00DDC 80A0C49C 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 00DE0 80A0C4A0 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 00DE4 80A0C4A4 4604003C */ c.lt.s $f0, $f4
|
||||
/* 00DE8 80A0C4A8 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
|
||||
/* 00DEC 80A0C4AC 4503000D */ bc1tl .L80A0C4E4
|
||||
/* 00DF0 80A0C4B0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00DF4 80A0C4B4 849800B6 */ lh $t8, 0x00B6($a0) ## 000000B6
|
||||
/* 00DF8 80A0C4B8 E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060
|
||||
/* 00DFC 80A0C4BC E4800068 */ swc1 $f0, 0x0068($a0) ## 00000068
|
||||
/* 00E00 80A0C4C0 A4980032 */ sh $t8, 0x0032($a0) ## 00000032
|
||||
/* 00E04 80A0C4C4 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 00E08 80A0C4C8 0C00D3B0 */ jal func_80034EC0
|
||||
/* 00E0C 80A0C4CC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00E10 80A0C4D0 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00E14 80A0C4D4 3C1980A1 */ lui $t9, %hi(func_80A0C4F0) ## $t9 = 80A10000
|
||||
/* 00E18 80A0C4D8 2739C4F0 */ addiu $t9, $t9, %lo(func_80A0C4F0) ## $t9 = 80A0C4F0
|
||||
/* 00E1C 80A0C4DC ACF90190 */ sw $t9, 0x0190($a3) ## 00000190
|
||||
/* 00E20 80A0C4E0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A0C4E4:
|
||||
/* 00E24 80A0C4E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00E28 80A0C4E8 03E00008 */ jr $ra
|
||||
/* 00E2C 80A0C4EC 00000000 */ nop
|
@ -1,66 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1C0
|
||||
.word 0x4622F983
|
||||
|
||||
.text
|
||||
glabel func_80A0C4F0
|
||||
/* 00E30 80A0C4F0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 00E34 80A0C4F4 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
|
||||
/* 00E38 80A0C4F8 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00E3C 80A0C4FC 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00E40 80A0C500 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00E44 80A0C504 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00E48 80A0C508 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00E4C 80A0C50C AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00E50 80A0C510 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00E54 80A0C514 44050000 */ mfc1 $a1, $f0
|
||||
/* 00E58 80A0C518 44070000 */ mfc1 $a3, $f0
|
||||
/* 00E5C 80A0C51C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 00E60 80A0C520 24840168 */ addiu $a0, $a0, 0x0168 ## $a0 = 00000168
|
||||
/* 00E64 80A0C524 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00E68 80A0C528 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00E6C 80A0C52C 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 00E70 80A0C530 8E05015C */ lw $a1, 0x015C($s0) ## 0000015C
|
||||
/* 00E74 80A0C534 0C0295B2 */ jal func_800A56C8
|
||||
/* 00E78 80A0C538 AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 00E7C 80A0C53C 1040001F */ beq $v0, $zero, .L80A0C5BC
|
||||
/* 00E80 80A0C540 2404003C */ addiu $a0, $zero, 0x003C ## $a0 = 0000003C
|
||||
/* 00E84 80A0C544 0C01DF64 */ jal Math_Rand_S16Offset
|
||||
|
||||
/* 00E88 80A0C548 2405005A */ addiu $a1, $zero, 0x005A ## $a1 = 0000005A
|
||||
/* 00E8C 80A0C54C A60204BE */ sh $v0, 0x04BE($s0) ## 000004BE
|
||||
/* 00E90 80A0C550 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 00E94 80A0C554 0C01DFE4 */ jal Math_Vec3f_DistXYZ
|
||||
|
||||
/* 00E98 80A0C558 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
|
||||
/* 00E9C 80A0C55C 44060000 */ mfc1 $a2, $f0
|
||||
/* 00EA0 80A0C560 E60004C8 */ swc1 $f0, 0x04C8($s0) ## 000004C8
|
||||
/* 00EA4 80A0C564 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFF4
|
||||
/* 00EA8 80A0C568 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00EAC 80A0C56C 0C282FA8 */ jal func_80A0BEA0
|
||||
/* 00EB0 80A0C570 860704BA */ lh $a3, 0x04BA($s0) ## 000004BA
|
||||
/* 00EB4 80A0C574 C7AC002C */ lwc1 $f12, 0x002C($sp)
|
||||
/* 00EB8 80A0C578 0C03F494 */ jal Math_atan2f
|
||||
/* 00EBC 80A0C57C C7AE0034 */ lwc1 $f14, 0x0034($sp)
|
||||
/* 00EC0 80A0C580 3C0180A1 */ lui $at, %hi(D_80A0E1C0) ## $at = 80A10000
|
||||
/* 00EC4 80A0C584 C426E1C0 */ lwc1 $f6, %lo(D_80A0E1C0)($at)
|
||||
/* 00EC8 80A0C588 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 00ECC 80A0C58C 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 00ED0 80A0C590 46060202 */ mul.s $f8, $f0, $f6
|
||||
/* 00ED4 80A0C594 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 00ED8 80A0C598 4600428D */ trunc.w.s $f10, $f8
|
||||
/* 00EDC 80A0C59C 440F5000 */ mfc1 $t7, $f10
|
||||
/* 00EE0 80A0C5A0 00000000 */ nop
|
||||
/* 00EE4 80A0C5A4 A60F0032 */ sh $t7, 0x0032($s0) ## 00000032
|
||||
/* 00EE8 80A0C5A8 0C00D3B0 */ jal func_80034EC0
|
||||
/* 00EEC 80A0C5AC 8FA40028 */ lw $a0, 0x0028($sp)
|
||||
/* 00EF0 80A0C5B0 3C1880A1 */ lui $t8, %hi(func_80A0C5D0) ## $t8 = 80A10000
|
||||
/* 00EF4 80A0C5B4 2718C5D0 */ addiu $t8, $t8, %lo(func_80A0C5D0) ## $t8 = 80A0C5D0
|
||||
/* 00EF8 80A0C5B8 AE180190 */ sw $t8, 0x0190($s0) ## 00000190
|
||||
.L80A0C5BC:
|
||||
/* 00EFC 80A0C5BC 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00F00 80A0C5C0 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00F04 80A0C5C4 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00F08 80A0C5C8 03E00008 */ jr $ra
|
||||
/* 00F0C 80A0C5CC 00000000 */ nop
|
@ -1,149 +0,0 @@
|
||||
glabel func_80A0C5D0
|
||||
/* 00F10 80A0C5D0 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00F14 80A0C5D4 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00F18 80A0C5D8 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00F1C 80A0C5DC AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00F20 80A0C5E0 848E04BE */ lh $t6, 0x04BE($a0) ## 000004BE
|
||||
/* 00F24 80A0C5E4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00F28 80A0C5E8 2405317E */ addiu $a1, $zero, 0x317E ## $a1 = 0000317E
|
||||
/* 00F2C 80A0C5EC 29C1001F */ slti $at, $t6, 0x001F
|
||||
/* 00F30 80A0C5F0 10200008 */ beq $at, $zero, .L80A0C614
|
||||
/* 00F34 80A0C5F4 00000000 */ nop
|
||||
/* 00F38 80A0C5F8 848F04C2 */ lh $t7, 0x04C2($a0) ## 000004C2
|
||||
/* 00F3C 80A0C5FC 15E00005 */ bne $t7, $zero, .L80A0C614
|
||||
/* 00F40 80A0C600 00000000 */ nop
|
||||
/* 00F44 80A0C604 0C00BE5D */ jal func_8002F974
|
||||
/* 00F48 80A0C608 24053183 */ addiu $a1, $zero, 0x3183 ## $a1 = 00003183
|
||||
/* 00F4C 80A0C60C 10000004 */ beq $zero, $zero, .L80A0C620
|
||||
/* 00F50 80A0C610 860204BE */ lh $v0, 0x04BE($s0) ## 000004BE
|
||||
.L80A0C614:
|
||||
/* 00F54 80A0C614 0C00BE5D */ jal func_8002F974
|
||||
/* 00F58 80A0C618 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F5C 80A0C61C 860204BE */ lh $v0, 0x04BE($s0) ## 000004BE
|
||||
.L80A0C620:
|
||||
/* 00F60 80A0C620 14400003 */ bne $v0, $zero, .L80A0C630
|
||||
/* 00F64 80A0C624 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 00F68 80A0C628 10000004 */ beq $zero, $zero, .L80A0C63C
|
||||
/* 00F6C 80A0C62C 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A0C630:
|
||||
/* 00F70 80A0C630 A61804BE */ sh $t8, 0x04BE($s0) ## 000004BE
|
||||
/* 00F74 80A0C634 860204BE */ lh $v0, 0x04BE($s0) ## 000004BE
|
||||
/* 00F78 80A0C638 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
|
||||
.L80A0C63C:
|
||||
/* 00F7C 80A0C63C 50600020 */ beql $v1, $zero, .L80A0C6C0
|
||||
/* 00F80 80A0C640 860C0032 */ lh $t4, 0x0032($s0) ## 00000032
|
||||
/* 00F84 80A0C644 860804BA */ lh $t0, 0x04BA($s0) ## 000004BA
|
||||
/* 00F88 80A0C648 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
|
||||
/* 00F8C 80A0C64C 2401001E */ addiu $at, $zero, 0x001E ## $at = 0000001E
|
||||
/* 00F90 80A0C650 00084B40 */ sll $t1, $t0, 13
|
||||
/* 00F94 80A0C654 03295021 */ addu $t2, $t9, $t1
|
||||
/* 00F98 80A0C658 1441005F */ bne $v0, $at, .L80A0C7D8
|
||||
/* 00F9C 80A0C65C A60A00B6 */ sh $t2, 0x00B6($s0) ## 000000B6
|
||||
/* 00FA0 80A0C660 860B04C2 */ lh $t3, 0x04C2($s0) ## 000004C2
|
||||
/* 00FA4 80A0C664 3C014320 */ lui $at, 0x4320 ## $at = 43200000
|
||||
/* 00FA8 80A0C668 5560005C */ bnel $t3, $zero, .L80A0C7DC
|
||||
/* 00FAC 80A0C66C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00FB0 80A0C670 44812000 */ mtc1 $at, $f4 ## $f4 = 160.00
|
||||
/* 00FB4 80A0C674 C6060090 */ lwc1 $f6, 0x0090($s0) ## 00000090
|
||||
/* 00FB8 80A0C678 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00FBC 80A0C67C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00FC0 80A0C680 4606203C */ c.lt.s $f4, $f6
|
||||
/* 00FC4 80A0C684 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 00FC8 80A0C688 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00FCC 80A0C68C 45000007 */ bc1f .L80A0C6AC
|
||||
/* 00FD0 80A0C690 00000000 */ nop
|
||||
/* 00FD4 80A0C694 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00FD8 80A0C698 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 00FDC 80A0C69C 0C282DEE */ jal func_80A0B7B8
|
||||
/* 00FE0 80A0C6A0 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00FE4 80A0C6A4 1000004D */ beq $zero, $zero, .L80A0C7DC
|
||||
/* 00FE8 80A0C6A8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80A0C6AC:
|
||||
/* 00FEC 80A0C6AC 0C282DEE */ jal func_80A0B7B8
|
||||
/* 00FF0 80A0C6B0 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 00FF4 80A0C6B4 10000049 */ beq $zero, $zero, .L80A0C7DC
|
||||
/* 00FF8 80A0C6B8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00FFC 80A0C6BC 860C0032 */ lh $t4, 0x0032($s0) ## 00000032
|
||||
.L80A0C6C0:
|
||||
/* 01000 80A0C6C0 860D00B6 */ lh $t5, 0x00B6($s0) ## 000000B6
|
||||
/* 01004 80A0C6C4 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
|
||||
/* 01008 80A0C6C8 448C4000 */ mtc1 $t4, $f8 ## $f8 = 0.00
|
||||
/* 0100C 80A0C6CC 448D5000 */ mtc1 $t5, $f10 ## $f10 = 0.00
|
||||
/* 01010 80A0C6D0 3C063F19 */ lui $a2, 0x3F19 ## $a2 = 3F190000
|
||||
/* 01014 80A0C6D4 468040A0 */ cvt.s.w $f2, $f8
|
||||
/* 01018 80A0C6D8 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3F19999A
|
||||
/* 0101C 80A0C6DC 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFF4
|
||||
/* 01020 80A0C6E0 3C074600 */ lui $a3, 0x4600 ## $a3 = 46000000
|
||||
/* 01024 80A0C6E4 E7B2002C */ swc1 $f18, 0x002C($sp)
|
||||
/* 01028 80A0C6E8 46805420 */ cvt.s.w $f16, $f10
|
||||
/* 0102C 80A0C6EC 46101081 */ sub.s $f2, $f2, $f16
|
||||
/* 01030 80A0C6F0 46001005 */ abs.s $f0, $f2
|
||||
/* 01034 80A0C6F4 46001083 */ div.s $f2, $f2, $f0
|
||||
/* 01038 80A0C6F8 44050000 */ mfc1 $a1, $f0
|
||||
/* 0103C 80A0C6FC 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 01040 80A0C700 E7A20034 */ swc1 $f2, 0x0034($sp)
|
||||
/* 01044 80A0C704 C7A20034 */ lwc1 $f2, 0x0034($sp)
|
||||
/* 01048 80A0C708 C7A4002C */ lwc1 $f4, 0x002C($sp)
|
||||
/* 0104C 80A0C70C 26040008 */ addiu $a0, $s0, 0x0008 ## $a0 = 00000008
|
||||
/* 01050 80A0C710 46022182 */ mul.s $f6, $f4, $f2
|
||||
/* 01054 80A0C714 4600320D */ trunc.w.s $f8, $f6
|
||||
/* 01058 80A0C718 E7A6002C */ swc1 $f6, 0x002C($sp)
|
||||
/* 0105C 80A0C71C 860E00B6 */ lh $t6, 0x00B6($s0) ## 000000B6
|
||||
/* 01060 80A0C720 44194000 */ mfc1 $t9, $f8
|
||||
/* 01064 80A0C724 00000000 */ nop
|
||||
/* 01068 80A0C728 01D94821 */ addu $t1, $t6, $t9
|
||||
/* 0106C 80A0C72C A60900B6 */ sh $t1, 0x00B6($s0) ## 000000B6
|
||||
/* 01070 80A0C730 C7A0002C */ lwc1 $f0, 0x002C($sp)
|
||||
/* 01074 80A0C734 46000005 */ abs.s $f0, $f0
|
||||
/* 01078 80A0C738 4600028D */ trunc.w.s $f10, $f0
|
||||
/* 0107C 80A0C73C E7A0002C */ swc1 $f0, 0x002C($sp)
|
||||
/* 01080 80A0C740 440B5000 */ mfc1 $t3, $f10
|
||||
/* 01084 80A0C744 00000000 */ nop
|
||||
/* 01088 80A0C748 2961012D */ slti $at, $t3, 0x012D
|
||||
/* 0108C 80A0C74C 50200004 */ beql $at, $zero, .L80A0C760
|
||||
/* 01090 80A0C750 860D0032 */ lh $t5, 0x0032($s0) ## 00000032
|
||||
/* 01094 80A0C754 860C0032 */ lh $t4, 0x0032($s0) ## 00000032
|
||||
/* 01098 80A0C758 A60C00B6 */ sh $t4, 0x00B6($s0) ## 000000B6
|
||||
/* 0109C 80A0C75C 860D0032 */ lh $t5, 0x0032($s0) ## 00000032
|
||||
.L80A0C760:
|
||||
/* 010A0 80A0C760 860F00B6 */ lh $t7, 0x00B6($s0) ## 000000B6
|
||||
/* 010A4 80A0C764 55AF001D */ bnel $t5, $t7, .L80A0C7DC
|
||||
/* 010A8 80A0C768 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 010AC 80A0C76C 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 010B0 80A0C770 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
|
||||
/* 010B4 80A0C774 861804BA */ lh $t8, 0x04BA($s0) ## 000004BA
|
||||
/* 010B8 80A0C778 A60204B6 */ sh $v0, 0x04B6($s0) ## 000004B6
|
||||
/* 010BC 80A0C77C 3408FFFF */ ori $t0, $zero, 0xFFFF ## $t0 = 0000FFFF
|
||||
/* 010C0 80A0C780 07030004 */ bgezl $t8, .L80A0C794
|
||||
/* 010C4 80A0C784 A60004B8 */ sh $zero, 0x04B8($s0) ## 000004B8
|
||||
/* 010C8 80A0C788 10000002 */ beq $zero, $zero, .L80A0C794
|
||||
/* 010CC 80A0C78C A60804B8 */ sh $t0, 0x04B8($s0) ## 000004B8
|
||||
/* 010D0 80A0C790 A60004B8 */ sh $zero, 0x04B8($s0) ## 000004B8
|
||||
.L80A0C794:
|
||||
/* 010D4 80A0C794 8FAE003C */ lw $t6, 0x003C($sp)
|
||||
/* 010D8 80A0C798 2404001E */ addiu $a0, $zero, 0x001E ## $a0 = 0000001E
|
||||
/* 010DC 80A0C79C 24050078 */ addiu $a1, $zero, 0x0078 ## $a1 = 00000078
|
||||
/* 010E0 80A0C7A0 8DD9009C */ lw $t9, 0x009C($t6) ## 0000009C
|
||||
/* 010E4 80A0C7A4 33290007 */ andi $t1, $t9, 0x0007 ## $t1 = 00000000
|
||||
/* 010E8 80A0C7A8 252A0002 */ addiu $t2, $t1, 0x0002 ## $t2 = 00000002
|
||||
/* 010EC 80A0C7AC 0C01DF64 */ jal Math_Rand_S16Offset
|
||||
|
||||
/* 010F0 80A0C7B0 A60A04C0 */ sh $t2, 0x04C0($s0) ## 000004C0
|
||||
/* 010F4 80A0C7B4 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 010F8 80A0C7B8 A60204BE */ sh $v0, 0x04BE($s0) ## 000004BE
|
||||
/* 010FC 80A0C7BC 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 01100 80A0C7C0 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 01104 80A0C7C4 0C00D3B0 */ jal func_80034EC0
|
||||
/* 01108 80A0C7C8 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
|
||||
/* 0110C 80A0C7CC 3C0B80A1 */ lui $t3, %hi(func_80A0C7EC) ## $t3 = 80A10000
|
||||
/* 01110 80A0C7D0 256BC7EC */ addiu $t3, $t3, %lo(func_80A0C7EC) ## $t3 = 80A0C7EC
|
||||
/* 01114 80A0C7D4 AE0B0190 */ sw $t3, 0x0190($s0) ## 00000190
|
||||
.L80A0C7D8:
|
||||
/* 01118 80A0C7D8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80A0C7DC:
|
||||
/* 0111C 80A0C7DC 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 01120 80A0C7E0 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 01124 80A0C7E4 03E00008 */ jr $ra
|
||||
/* 01128 80A0C7E8 00000000 */ nop
|
@ -1,173 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1C4
|
||||
.word 0x4622F983
|
||||
|
||||
.text
|
||||
glabel func_80A0C7EC
|
||||
/* 0112C 80A0C7EC 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
|
||||
/* 01130 80A0C7F0 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 01134 80A0C7F4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01138 80A0C7F8 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 0113C 80A0C7FC AFA5004C */ sw $a1, 0x004C($sp)
|
||||
/* 01140 80A0C800 8E0604C8 */ lw $a2, 0x04C8($s0) ## 000004C8
|
||||
/* 01144 80A0C804 0C282FDB */ jal func_80A0BF6C
|
||||
/* 01148 80A0C808 260704BA */ addiu $a3, $s0, 0x04BA ## $a3 = 000004BA
|
||||
/* 0114C 80A0C80C 10400014 */ beq $v0, $zero, .L80A0C860
|
||||
/* 01150 80A0C810 26040008 */ addiu $a0, $s0, 0x0008 ## $a0 = 00000008
|
||||
/* 01154 80A0C814 860E04C2 */ lh $t6, 0x04C2($s0) ## 000004C2
|
||||
/* 01158 80A0C818 3C0580A1 */ lui $a1, %hi(D_80A0DFEC) ## $a1 = 80A10000
|
||||
/* 0115C 80A0C81C 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
|
||||
/* 01160 80A0C820 15C0000F */ bne $t6, $zero, .L80A0C860
|
||||
/* 01164 80A0C824 24A5DFEC */ addiu $a1, $a1, %lo(D_80A0DFEC) ## $a1 = 80A0DFEC
|
||||
/* 01168 80A0C828 860F0032 */ lh $t7, 0x0032($s0) ## 00000032
|
||||
/* 0116C 80A0C82C 44812000 */ mtc1 $at, $f4 ## $f4 = 6.00
|
||||
/* 01170 80A0C830 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
|
||||
/* 01174 80A0C834 39F88000 */ xori $t8, $t7, 0x8000 ## $t8 = FFFF8000
|
||||
/* 01178 80A0C838 A6180032 */ sh $t8, 0x0032($s0) ## 00000032
|
||||
/* 0117C 80A0C83C 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 01180 80A0C840 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 01184 80A0C844 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
|
||||
/* 01188 80A0C848 0C00D3B0 */ jal func_80034EC0
|
||||
/* 0118C 80A0C84C E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
|
||||
/* 01190 80A0C850 3C1980A1 */ lui $t9, %hi(func_80A0C474) ## $t9 = 80A10000
|
||||
/* 01194 80A0C854 2739C474 */ addiu $t9, $t9, %lo(func_80A0C474) ## $t9 = 80A0C474
|
||||
/* 01198 80A0C858 10000075 */ beq $zero, $zero, .L80A0CA30
|
||||
/* 0119C 80A0C85C AE190190 */ sw $t9, 0x0190($s0) ## 00000190
|
||||
.L80A0C860:
|
||||
/* 011A0 80A0C860 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
|
||||
/* 011A4 80A0C864 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 011A8 80A0C868 AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 011AC 80A0C86C 860804B6 */ lh $t0, 0x04B6($s0) ## 000004B6
|
||||
/* 011B0 80A0C870 860904BA */ lh $t1, 0x04BA($s0) ## 000004BA
|
||||
/* 011B4 80A0C874 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 011B8 80A0C878 00481823 */ subu $v1, $v0, $t0
|
||||
/* 011BC 80A0C87C 00031C00 */ sll $v1, $v1, 16
|
||||
/* 011C0 80A0C880 1920000A */ blez $t1, .L80A0C8AC
|
||||
/* 011C4 80A0C884 00031C03 */ sra $v1, $v1, 16
|
||||
/* 011C8 80A0C888 960B04B8 */ lhu $t3, 0x04B8($s0) ## 000004B8
|
||||
/* 011CC 80A0C88C 306AFFFF */ andi $t2, $v1, 0xFFFF ## $t2 = 00000000
|
||||
/* 011D0 80A0C890 014B082A */ slt $at, $t2, $t3
|
||||
/* 011D4 80A0C894 5020000E */ beql $at, $zero, .L80A0C8D0
|
||||
/* 011D8 80A0C898 860804C0 */ lh $t0, 0x04C0($s0) ## 000004C0
|
||||
/* 011DC 80A0C89C 860C04C0 */ lh $t4, 0x04C0($s0) ## 000004C0
|
||||
/* 011E0 80A0C8A0 258DFFFF */ addiu $t5, $t4, 0xFFFF ## $t5 = FFFFFFFF
|
||||
/* 011E4 80A0C8A4 10000009 */ beq $zero, $zero, .L80A0C8CC
|
||||
/* 011E8 80A0C8A8 A60D04C0 */ sh $t5, 0x04C0($s0) ## 000004C0
|
||||
.L80A0C8AC:
|
||||
/* 011EC 80A0C8AC 960E04B8 */ lhu $t6, 0x04B8($s0) ## 000004B8
|
||||
/* 011F0 80A0C8B0 306FFFFF */ andi $t7, $v1, 0xFFFF ## $t7 = 00000000
|
||||
/* 011F4 80A0C8B4 01CF082A */ slt $at, $t6, $t7
|
||||
/* 011F8 80A0C8B8 50200005 */ beql $at, $zero, .L80A0C8D0
|
||||
/* 011FC 80A0C8BC 860804C0 */ lh $t0, 0x04C0($s0) ## 000004C0
|
||||
/* 01200 80A0C8C0 861804C0 */ lh $t8, 0x04C0($s0) ## 000004C0
|
||||
/* 01204 80A0C8C4 2719FFFF */ addiu $t9, $t8, 0xFFFF ## $t9 = FFFFFFFF
|
||||
/* 01208 80A0C8C8 A61904C0 */ sh $t9, 0x04C0($s0) ## 000004C0
|
||||
.L80A0C8CC:
|
||||
/* 0120C 80A0C8CC 860804C0 */ lh $t0, 0x04C0($s0) ## 000004C0
|
||||
.L80A0C8D0:
|
||||
/* 01210 80A0C8D0 05030003 */ bgezl $t0, .L80A0C8E0
|
||||
/* 01214 80A0C8D4 A60304B8 */ sh $v1, 0x04B8($s0) ## 000004B8
|
||||
/* 01218 80A0C8D8 A60004C0 */ sh $zero, 0x04C0($s0) ## 000004C0
|
||||
/* 0121C 80A0C8DC A60304B8 */ sh $v1, 0x04B8($s0) ## 000004B8
|
||||
.L80A0C8E0:
|
||||
/* 01220 80A0C8E0 0C282F8D */ jal func_80A0BE34
|
||||
/* 01224 80A0C8E4 8FA5004C */ lw $a1, 0x004C($sp)
|
||||
/* 01228 80A0C8E8 10400009 */ beq $v0, $zero, .L80A0C910
|
||||
/* 0122C 80A0C8EC 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 01230 80A0C8F0 860904C2 */ lh $t1, 0x04C2($s0) ## 000004C2
|
||||
/* 01234 80A0C8F4 8FA40028 */ lw $a0, 0x0028($sp)
|
||||
/* 01238 80A0C8F8 55200006 */ bnel $t1, $zero, .L80A0C914
|
||||
/* 0123C 80A0C8FC 44811000 */ mtc1 $at, $f2 ## $f2 = 200.00
|
||||
/* 01240 80A0C900 0C01DFE4 */ jal Math_Vec3f_DistXYZ
|
||||
|
||||
/* 01244 80A0C904 24450024 */ addiu $a1, $v0, 0x0024 ## $a1 = 00000024
|
||||
/* 01248 80A0C908 10000003 */ beq $zero, $zero, .L80A0C918
|
||||
/* 0124C 80A0C90C 46000086 */ mov.s $f2, $f0
|
||||
.L80A0C910:
|
||||
/* 01250 80A0C910 44811000 */ mtc1 $at, $f2 ## $f2 = 0.00
|
||||
.L80A0C914:
|
||||
/* 01254 80A0C914 00000000 */ nop
|
||||
.L80A0C918:
|
||||
/* 01258 80A0C918 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 0125C 80A0C91C 44051000 */ mfc1 $a1, $f2
|
||||
/* 01260 80A0C920 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 01264 80A0C924 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 01268 80A0C928 260404C8 */ addiu $a0, $s0, 0x04C8 ## $a0 = 000004C8
|
||||
/* 0126C 80A0C92C 3C0742C8 */ lui $a3, 0x42C8 ## $a3 = 42C80000
|
||||
/* 01270 80A0C930 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 01274 80A0C934 E7A80010 */ swc1 $f8, 0x0010($sp)
|
||||
/* 01278 80A0C938 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8
|
||||
/* 0127C 80A0C93C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 01280 80A0C940 8E0604C8 */ lw $a2, 0x04C8($s0) ## 000004C8
|
||||
/* 01284 80A0C944 0C282FA8 */ jal func_80A0BEA0
|
||||
/* 01288 80A0C948 860704BA */ lh $a3, 0x04BA($s0) ## 000004BA
|
||||
/* 0128C 80A0C94C C7AC0030 */ lwc1 $f12, 0x0030($sp)
|
||||
/* 01290 80A0C950 0C03F494 */ jal Math_atan2f
|
||||
/* 01294 80A0C954 C7AE0038 */ lwc1 $f14, 0x0038($sp)
|
||||
/* 01298 80A0C958 3C0180A1 */ lui $at, %hi(D_80A0E1C4) ## $at = 80A10000
|
||||
/* 0129C 80A0C95C C42AE1C4 */ lwc1 $f10, %lo(D_80A0E1C4)($at)
|
||||
/* 012A0 80A0C960 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001
|
||||
/* 012A4 80A0C964 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 012A8 80A0C968 460A0402 */ mul.s $f16, $f0, $f10
|
||||
/* 012AC 80A0C96C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
|
||||
/* 012B0 80A0C970 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 012B4 80A0C974 24070FA0 */ addiu $a3, $zero, 0x0FA0 ## $a3 = 00000FA0
|
||||
/* 012B8 80A0C978 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 012BC 80A0C97C 44059000 */ mfc1 $a1, $f18
|
||||
/* 012C0 80A0C980 00000000 */ nop
|
||||
/* 012C4 80A0C984 00052C00 */ sll $a1, $a1, 16
|
||||
/* 012C8 80A0C988 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 012CC 80A0C98C 00052C03 */ sra $a1, $a1, 16
|
||||
/* 012D0 80A0C990 8A0D00B4 */ lwl $t5, 0x00B4($s0) ## 000000B4
|
||||
/* 012D4 80A0C994 9A0D00B7 */ lwr $t5, 0x00B7($s0) ## 000000B7
|
||||
/* 012D8 80A0C998 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 012DC 80A0C99C 2405317D */ addiu $a1, $zero, 0x317D ## $a1 = 0000317D
|
||||
/* 012E0 80A0C9A0 AA0D0030 */ swl $t5, 0x0030($s0) ## 00000030
|
||||
/* 012E4 80A0C9A4 BA0D0033 */ swr $t5, 0x0033($s0) ## 00000033
|
||||
/* 012E8 80A0C9A8 960D00B8 */ lhu $t5, 0x00B8($s0) ## 000000B8
|
||||
/* 012EC 80A0C9AC 0C00BE5D */ jal func_8002F974
|
||||
/* 012F0 80A0C9B0 A60D0034 */ sh $t5, 0x0034($s0) ## 00000034
|
||||
/* 012F4 80A0C9B4 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
|
||||
/* 012F8 80A0C9B8 44812000 */ mtc1 $at, $f4 ## $f4 = 6.00
|
||||
/* 012FC 80A0C9BC C6000164 */ lwc1 $f0, 0x0164($s0) ## 00000164
|
||||
/* 01300 80A0C9C0 3C014150 */ lui $at, 0x4150 ## $at = 41500000
|
||||
/* 01304 80A0C9C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01308 80A0C9C8 46002032 */ c.eq.s $f4, $f0
|
||||
/* 0130C 80A0C9CC 00000000 */ nop
|
||||
/* 01310 80A0C9D0 4501000D */ bc1t .L80A0CA08
|
||||
/* 01314 80A0C9D4 00000000 */ nop
|
||||
/* 01318 80A0C9D8 44813000 */ mtc1 $at, $f6 ## $f6 = 13.00
|
||||
/* 0131C 80A0C9DC 3C0141E0 */ lui $at, 0x41E0 ## $at = 41E00000
|
||||
/* 01320 80A0C9E0 46003032 */ c.eq.s $f6, $f0
|
||||
/* 01324 80A0C9E4 00000000 */ nop
|
||||
/* 01328 80A0C9E8 45010007 */ bc1t .L80A0CA08
|
||||
/* 0132C 80A0C9EC 00000000 */ nop
|
||||
/* 01330 80A0C9F0 44814000 */ mtc1 $at, $f8 ## $f8 = 28.00
|
||||
/* 01334 80A0C9F4 00000000 */ nop
|
||||
/* 01338 80A0C9F8 46004032 */ c.eq.s $f8, $f0
|
||||
/* 0133C 80A0C9FC 00000000 */ nop
|
||||
/* 01340 80A0CA00 45020004 */ bc1fl .L80A0CA14
|
||||
/* 01344 80A0CA04 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
|
||||
.L80A0CA08:
|
||||
/* 01348 80A0CA08 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 0134C 80A0CA0C 2405397C */ addiu $a1, $zero, 0x397C ## $a1 = 0000397C
|
||||
/* 01350 80A0CA10 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
|
||||
.L80A0CA14:
|
||||
/* 01354 80A0CA14 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 01358 80A0CA18 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 0135C 80A0CA1C 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
|
||||
/* 01360 80A0CA20 3C054100 */ lui $a1, 0x4100 ## $a1 = 41000000
|
||||
/* 01364 80A0CA24 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
|
||||
/* 01368 80A0CA28 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 0136C 80A0CA2C E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
.L80A0CA30:
|
||||
/* 01370 80A0CA30 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 01374 80A0CA34 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 01378 80A0CA38 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
|
||||
/* 0137C 80A0CA3C 03E00008 */ jr $ra
|
||||
/* 01380 80A0CA40 00000000 */ nop
|
@ -1,36 +0,0 @@
|
||||
glabel func_80A0CA44
|
||||
/* 01384 80A0CA44 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 01388 80A0CA48 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0138C 80A0CA4C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 01390 80A0CA50 848204BE */ lh $v0, 0x04BE($a0) ## 000004BE
|
||||
/* 01394 80A0CA54 10400009 */ beq $v0, $zero, .L80A0CA7C
|
||||
/* 01398 80A0CA58 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 0139C 80A0CA5C A48E04BE */ sh $t6, 0x04BE($a0) ## 000004BE
|
||||
/* 013A0 80A0CA60 848F04BE */ lh $t7, 0x04BE($a0) ## 000004BE
|
||||
/* 013A4 80A0CA64 55E00012 */ bnel $t7, $zero, .L80A0CAB0
|
||||
/* 013A8 80A0CA68 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 013AC 80A0CA6C 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 013B0 80A0CA70 00000000 */ nop
|
||||
/* 013B4 80A0CA74 1000000E */ beq $zero, $zero, .L80A0CAB0
|
||||
/* 013B8 80A0CA78 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A0CA7C:
|
||||
/* 013BC 80A0CA7C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 013C0 80A0CA80 3C1980A1 */ lui $t9, %hi(func_80A0C310) ## $t9 = 80A10000
|
||||
/* 013C4 80A0CA84 2739C310 */ addiu $t9, $t9, %lo(func_80A0C310) ## $t9 = 80A0C310
|
||||
/* 013C8 80A0CA88 30588000 */ andi $t8, $v0, 0x8000 ## $t8 = 00000000
|
||||
/* 013CC 80A0CA8C 13000003 */ beq $t8, $zero, .L80A0CA9C
|
||||
/* 013D0 80A0CA90 30484000 */ andi $t0, $v0, 0x4000 ## $t0 = 00000000
|
||||
/* 013D4 80A0CA94 10000005 */ beq $zero, $zero, .L80A0CAAC
|
||||
/* 013D8 80A0CA98 AC990190 */ sw $t9, 0x0190($a0) ## 00000190
|
||||
.L80A0CA9C:
|
||||
/* 013DC 80A0CA9C 11000003 */ beq $t0, $zero, .L80A0CAAC
|
||||
/* 013E0 80A0CAA0 2409001E */ addiu $t1, $zero, 0x001E ## $t1 = 0000001E
|
||||
/* 013E4 80A0CAA4 A480001C */ sh $zero, 0x001C($a0) ## 0000001C
|
||||
/* 013E8 80A0CAA8 A48904BE */ sh $t1, 0x04BE($a0) ## 000004BE
|
||||
.L80A0CAAC:
|
||||
/* 013EC 80A0CAAC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A0CAB0:
|
||||
/* 013F0 80A0CAB0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 013F4 80A0CAB4 03E00008 */ jr $ra
|
||||
/* 013F8 80A0CAB8 00000000 */ nop
|
@ -1,17 +0,0 @@
|
||||
glabel func_80A0CCB8
|
||||
/* 015F8 80A0CCB8 8FAE0014 */ lw $t6, 0x0014($sp)
|
||||
/* 015FC 80A0CCBC AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 01600 80A0CCC0 AFA7000C */ sw $a3, 0x000C($sp)
|
||||
/* 01604 80A0CCC4 85CF04C2 */ lh $t7, 0x04C2($t6) ## 000004C2
|
||||
/* 01608 80A0CCC8 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
|
||||
/* 0160C 80A0CCCC 11E00006 */ beq $t7, $zero, .L80A0CCE8
|
||||
/* 01610 80A0CCD0 00000000 */ nop
|
||||
/* 01614 80A0CCD4 10A10003 */ beq $a1, $at, .L80A0CCE4
|
||||
/* 01618 80A0CCD8 24010015 */ addiu $at, $zero, 0x0015 ## $at = 00000015
|
||||
/* 0161C 80A0CCDC 14A10002 */ bne $a1, $at, .L80A0CCE8
|
||||
/* 01620 80A0CCE0 00000000 */ nop
|
||||
.L80A0CCE4:
|
||||
/* 01624 80A0CCE4 ACC00000 */ sw $zero, 0x0000($a2) ## 00000000
|
||||
.L80A0CCE8:
|
||||
/* 01628 80A0CCE8 03E00008 */ jr $ra
|
||||
/* 0162C 80A0CCEC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
@ -1,229 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1C8
|
||||
.float 0.6
|
||||
|
||||
glabel D_80A0E1CC
|
||||
.float 0.2
|
||||
|
||||
glabel D_80A0E1D0
|
||||
.float 0.4
|
||||
|
||||
glabel D_80A0E1D4
|
||||
.word 0x3BC49BA6
|
||||
|
||||
.text
|
||||
glabel func_80A0CCF0
|
||||
/* 01630 80A0CCF0 27BDFF30 */ addiu $sp, $sp, 0xFF30 ## $sp = FFFFFF30
|
||||
/* 01634 80A0CCF4 3C0F80A1 */ lui $t7, %hi(D_80A0E088) ## $t7 = 80A10000
|
||||
/* 01638 80A0CCF8 AFBF0074 */ sw $ra, 0x0074($sp)
|
||||
/* 0163C 80A0CCFC AFB70070 */ sw $s7, 0x0070($sp)
|
||||
/* 01640 80A0CD00 AFB6006C */ sw $s6, 0x006C($sp)
|
||||
/* 01644 80A0CD04 AFB50068 */ sw $s5, 0x0068($sp)
|
||||
/* 01648 80A0CD08 AFB40064 */ sw $s4, 0x0064($sp)
|
||||
/* 0164C 80A0CD0C AFB30060 */ sw $s3, 0x0060($sp)
|
||||
/* 01650 80A0CD10 AFB2005C */ sw $s2, 0x005C($sp)
|
||||
/* 01654 80A0CD14 AFB10058 */ sw $s1, 0x0058($sp)
|
||||
/* 01658 80A0CD18 AFB00054 */ sw $s0, 0x0054($sp)
|
||||
/* 0165C 80A0CD1C F7BE0048 */ sdc1 $f30, 0x0048($sp)
|
||||
/* 01660 80A0CD20 F7BC0040 */ sdc1 $f28, 0x0040($sp)
|
||||
/* 01664 80A0CD24 F7BA0038 */ sdc1 $f26, 0x0038($sp)
|
||||
/* 01668 80A0CD28 F7B80030 */ sdc1 $f24, 0x0030($sp)
|
||||
/* 0166C 80A0CD2C F7B60028 */ sdc1 $f22, 0x0028($sp)
|
||||
/* 01670 80A0CD30 F7B40020 */ sdc1 $f20, 0x0020($sp)
|
||||
/* 01674 80A0CD34 AFA600D8 */ sw $a2, 0x00D8($sp)
|
||||
/* 01678 80A0CD38 AFA700DC */ sw $a3, 0x00DC($sp)
|
||||
/* 0167C 80A0CD3C 25EFE088 */ addiu $t7, $t7, %lo(D_80A0E088) ## $t7 = 80A0E088
|
||||
/* 01680 80A0CD40 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0E088
|
||||
/* 01684 80A0CD44 27AE00C0 */ addiu $t6, $sp, 0x00C0 ## $t6 = FFFFFFF0
|
||||
/* 01688 80A0CD48 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0E08C
|
||||
/* 0168C 80A0CD4C ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF0
|
||||
/* 01690 80A0CD50 8DF90008 */ lw $t9, 0x0008($t7) ## 80A0E090
|
||||
/* 01694 80A0CD54 3C0980A1 */ lui $t1, %hi(D_80A0E094) ## $t1 = 80A10000
|
||||
/* 01698 80A0CD58 2529E094 */ addiu $t1, $t1, %lo(D_80A0E094) ## $t1 = 80A0E094
|
||||
/* 0169C 80A0CD5C ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF4
|
||||
/* 016A0 80A0CD60 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF8
|
||||
/* 016A4 80A0CD64 8D2B0000 */ lw $t3, 0x0000($t1) ## 80A0E094
|
||||
/* 016A8 80A0CD68 27A800B4 */ addiu $t0, $sp, 0x00B4 ## $t0 = FFFFFFE4
|
||||
/* 016AC 80A0CD6C 8D2A0004 */ lw $t2, 0x0004($t1) ## 80A0E098
|
||||
/* 016B0 80A0CD70 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE4
|
||||
/* 016B4 80A0CD74 8D2B0008 */ lw $t3, 0x0008($t1) ## 80A0E09C
|
||||
/* 016B8 80A0CD78 3C0C80A1 */ lui $t4, %hi(D_80A0E0A0) ## $t4 = 80A10000
|
||||
/* 016BC 80A0CD7C 258CE0A0 */ addiu $t4, $t4, %lo(D_80A0E0A0) ## $t4 = 80A0E0A0
|
||||
/* 016C0 80A0CD80 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE8
|
||||
/* 016C4 80A0CD84 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFEC
|
||||
/* 016C8 80A0CD88 8D8E0000 */ lw $t6, 0x0000($t4) ## 80A0E0A0
|
||||
/* 016CC 80A0CD8C 27B400A8 */ addiu $s4, $sp, 0x00A8 ## $s4 = FFFFFFD8
|
||||
/* 016D0 80A0CD90 3C0F80A1 */ lui $t7, %hi(D_80A0E0AC) ## $t7 = 80A10000
|
||||
/* 016D4 80A0CD94 AE8E0000 */ sw $t6, 0x0000($s4) ## FFFFFFD8
|
||||
/* 016D8 80A0CD98 8D8D0004 */ lw $t5, 0x0004($t4) ## 80A0E0A4
|
||||
/* 016DC 80A0CD9C 25EFE0AC */ addiu $t7, $t7, %lo(D_80A0E0AC) ## $t7 = 80A0E0AC
|
||||
/* 016E0 80A0CDA0 27B2009C */ addiu $s2, $sp, 0x009C ## $s2 = FFFFFFCC
|
||||
/* 016E4 80A0CDA4 AE8D0004 */ sw $t5, 0x0004($s4) ## FFFFFFDC
|
||||
/* 016E8 80A0CDA8 8D8E0008 */ lw $t6, 0x0008($t4) ## 80A0E0A8
|
||||
/* 016EC 80A0CDAC 3C0880A1 */ lui $t0, %hi(D_80A0E0B8) ## $t0 = 80A10000
|
||||
/* 016F0 80A0CDB0 2508E0B8 */ addiu $t0, $t0, %lo(D_80A0E0B8) ## $t0 = 80A0E0B8
|
||||
/* 016F4 80A0CDB4 AE8E0008 */ sw $t6, 0x0008($s4) ## FFFFFFE0
|
||||
/* 016F8 80A0CDB8 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0E0AC
|
||||
/* 016FC 80A0CDBC 27B60090 */ addiu $s6, $sp, 0x0090 ## $s6 = FFFFFFC0
|
||||
/* 01700 80A0CDC0 3C0B80A1 */ lui $t3, %hi(D_80A0E0C4) ## $t3 = 80A10000
|
||||
/* 01704 80A0CDC4 AE590000 */ sw $t9, 0x0000($s2) ## FFFFFFCC
|
||||
/* 01708 80A0CDC8 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0E0B0
|
||||
/* 0170C 80A0CDCC 256BE0C4 */ addiu $t3, $t3, %lo(D_80A0E0C4) ## $t3 = 80A0E0C4
|
||||
/* 01710 80A0CDD0 27B70084 */ addiu $s7, $sp, 0x0084 ## $s7 = FFFFFFB4
|
||||
/* 01714 80A0CDD4 AE580004 */ sw $t8, 0x0004($s2) ## FFFFFFD0
|
||||
/* 01718 80A0CDD8 8DF90008 */ lw $t9, 0x0008($t7) ## 80A0E0B4
|
||||
/* 0171C 80A0CDDC 24010015 */ addiu $at, $zero, 0x0015 ## $at = 00000015
|
||||
/* 01720 80A0CDE0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01724 80A0CDE4 AE590008 */ sw $t9, 0x0008($s2) ## FFFFFFD4
|
||||
/* 01728 80A0CDE8 8D0A0000 */ lw $t2, 0x0000($t0) ## 80A0E0B8
|
||||
/* 0172C 80A0CDEC 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000
|
||||
/* 01730 80A0CDF0 AECA0000 */ sw $t2, 0x0000($s6) ## FFFFFFC0
|
||||
/* 01734 80A0CDF4 8D090004 */ lw $t1, 0x0004($t0) ## 80A0E0BC
|
||||
/* 01738 80A0CDF8 AEC90004 */ sw $t1, 0x0004($s6) ## FFFFFFC4
|
||||
/* 0173C 80A0CDFC 8D0A0008 */ lw $t2, 0x0008($t0) ## 80A0E0C0
|
||||
/* 01740 80A0CE00 AECA0008 */ sw $t2, 0x0008($s6) ## FFFFFFC8
|
||||
/* 01744 80A0CE04 8D6D0000 */ lw $t5, 0x0000($t3) ## 80A0E0C4
|
||||
/* 01748 80A0CE08 AEED0000 */ sw $t5, 0x0000($s7) ## FFFFFFB4
|
||||
/* 0174C 80A0CE0C 8D6C0004 */ lw $t4, 0x0004($t3) ## 80A0E0C8
|
||||
/* 01750 80A0CE10 AEEC0004 */ sw $t4, 0x0004($s7) ## FFFFFFB8
|
||||
/* 01754 80A0CE14 8D6D0008 */ lw $t5, 0x0008($t3) ## 80A0E0CC
|
||||
/* 01758 80A0CE18 14A10005 */ bne $a1, $at, .L80A0CE30
|
||||
/* 0175C 80A0CE1C AEED0008 */ sw $t5, 0x0008($s7) ## FFFFFFBC
|
||||
/* 01760 80A0CE20 8FB500E0 */ lw $s5, 0x00E0($sp)
|
||||
/* 01764 80A0CE24 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFD8
|
||||
/* 01768 80A0CE28 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 0176C 80A0CE2C 26A504D0 */ addiu $a1, $s5, 0x04D0 ## $a1 = 000004D0
|
||||
.L80A0CE30:
|
||||
/* 01770 80A0CE30 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
|
||||
/* 01774 80A0CE34 16610004 */ bne $s3, $at, .L80A0CE48
|
||||
/* 01778 80A0CE38 8FB500E0 */ lw $s5, 0x00E0($sp)
|
||||
/* 0177C 80A0CE3C 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFD8
|
||||
/* 01780 80A0CE40 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 01784 80A0CE44 26A50038 */ addiu $a1, $s5, 0x0038 ## $a1 = 00000038
|
||||
.L80A0CE48:
|
||||
/* 01788 80A0CE48 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 0178C 80A0CE4C 1261001B */ beq $s3, $at, .L80A0CEBC
|
||||
/* 01790 80A0CE50 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 01794 80A0CE54 12610019 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 01798 80A0CE58 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 0179C 80A0CE5C 12610017 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017A0 80A0CE60 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
|
||||
/* 017A4 80A0CE64 12610015 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017A8 80A0CE68 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
|
||||
/* 017AC 80A0CE6C 12610013 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017B0 80A0CE70 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
|
||||
/* 017B4 80A0CE74 12610011 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017B8 80A0CE78 24010011 */ addiu $at, $zero, 0x0011 ## $at = 00000011
|
||||
/* 017BC 80A0CE7C 1261000F */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017C0 80A0CE80 24010012 */ addiu $at, $zero, 0x0012 ## $at = 00000012
|
||||
/* 017C4 80A0CE84 1261000D */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017C8 80A0CE88 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014
|
||||
/* 017CC 80A0CE8C 1261000B */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017D0 80A0CE90 24010016 */ addiu $at, $zero, 0x0016 ## $at = 00000016
|
||||
/* 017D4 80A0CE94 12610009 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017D8 80A0CE98 24010017 */ addiu $at, $zero, 0x0017 ## $at = 00000017
|
||||
/* 017DC 80A0CE9C 12610007 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017E0 80A0CEA0 24010018 */ addiu $at, $zero, 0x0018 ## $at = 00000018
|
||||
/* 017E4 80A0CEA4 12610005 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017E8 80A0CEA8 24010019 */ addiu $at, $zero, 0x0019 ## $at = 00000019
|
||||
/* 017EC 80A0CEAC 12610003 */ beq $s3, $at, .L80A0CEBC
|
||||
/* 017F0 80A0CEB0 2401001A */ addiu $at, $zero, 0x001A ## $at = 0000001A
|
||||
/* 017F4 80A0CEB4 56610046 */ bnel $s3, $at, .L80A0CFD0
|
||||
/* 017F8 80A0CEB8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
.L80A0CEBC:
|
||||
/* 017FC 80A0CEBC 8E0E009C */ lw $t6, 0x009C($s0) ## 0000009C
|
||||
/* 01800 80A0CEC0 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 01804 80A0CEC4 3C0180A1 */ lui $at, %hi(D_80A0E1C8) ## $at = 80A10000
|
||||
/* 01808 80A0CEC8 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
|
||||
/* 0180C 80A0CECC 51E00040 */ beql $t7, $zero, .L80A0CFD0
|
||||
/* 01810 80A0CED0 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 01814 80A0CED4 C43EE1C8 */ lwc1 $f30, %lo(D_80A0E1C8)($at)
|
||||
/* 01818 80A0CED8 3C0180A1 */ lui $at, %hi(D_80A0E1CC) ## $at = 80A10000
|
||||
/* 0181C 80A0CEDC C43CE1CC */ lwc1 $f28, %lo(D_80A0E1CC)($at)
|
||||
/* 01820 80A0CEE0 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 01824 80A0CEE4 4481D000 */ mtc1 $at, $f26 ## $f26 = 40.00
|
||||
/* 01828 80A0CEE8 3C0180A1 */ lui $at, %hi(D_80A0E1D0) ## $at = 80A10000
|
||||
/* 0182C 80A0CEEC C438E1D0 */ lwc1 $f24, %lo(D_80A0E1D0)($at)
|
||||
/* 01830 80A0CEF0 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 01834 80A0CEF4 4481B000 */ mtc1 $at, $f22 ## $f22 = 20.00
|
||||
/* 01838 80A0CEF8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 0183C 80A0CEFC 4481A000 */ mtc1 $at, $f20 ## $f20 = 0.50
|
||||
/* 01840 80A0CF00 24110001 */ addiu $s1, $zero, 0x0001 ## $s1 = 00000001
|
||||
/* 01844 80A0CF04 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFD8
|
||||
.L80A0CF08:
|
||||
/* 01848 80A0CF08 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 0184C 80A0CF0C 02402825 */ or $a1, $s2, $zero ## $a1 = FFFFFFCC
|
||||
/* 01850 80A0CF10 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01854 80A0CF14 00000000 */ nop
|
||||
/* 01858 80A0CF18 46140181 */ sub.s $f6, $f0, $f20
|
||||
/* 0185C 80A0CF1C C7A4009C */ lwc1 $f4, 0x009C($sp)
|
||||
/* 01860 80A0CF20 46163202 */ mul.s $f8, $f6, $f22
|
||||
/* 01864 80A0CF24 46082280 */ add.s $f10, $f4, $f8
|
||||
/* 01868 80A0CF28 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0186C 80A0CF2C E7AA009C */ swc1 $f10, 0x009C($sp)
|
||||
/* 01870 80A0CF30 46140481 */ sub.s $f18, $f0, $f20
|
||||
/* 01874 80A0CF34 C7B000A0 */ lwc1 $f16, 0x00A0($sp)
|
||||
/* 01878 80A0CF38 461A9182 */ mul.s $f6, $f18, $f26
|
||||
/* 0187C 80A0CF3C 46068100 */ add.s $f4, $f16, $f6
|
||||
/* 01880 80A0CF40 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01884 80A0CF44 E7A400A0 */ swc1 $f4, 0x00A0($sp)
|
||||
/* 01888 80A0CF48 46140281 */ sub.s $f10, $f0, $f20
|
||||
/* 0188C 80A0CF4C C7A800A4 */ lwc1 $f8, 0x00A4($sp)
|
||||
/* 01890 80A0CF50 46165482 */ mul.s $f18, $f10, $f22
|
||||
/* 01894 80A0CF54 46124400 */ add.s $f16, $f8, $f18
|
||||
/* 01898 80A0CF58 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0189C 80A0CF5C E7B000A4 */ swc1 $f16, 0x00A4($sp)
|
||||
/* 018A0 80A0CF60 46140181 */ sub.s $f6, $f0, $f20
|
||||
/* 018A4 80A0CF64 46183102 */ mul.s $f4, $f6, $f24
|
||||
/* 018A8 80A0CF68 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 018AC 80A0CF6C E7A40090 */ swc1 $f4, 0x0090($sp)
|
||||
/* 018B0 80A0CF70 46140281 */ sub.s $f10, $f0, $f20
|
||||
/* 018B4 80A0CF74 461C5202 */ mul.s $f8, $f10, $f28
|
||||
/* 018B8 80A0CF78 461E4480 */ add.s $f18, $f8, $f30
|
||||
/* 018BC 80A0CF7C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 018C0 80A0CF80 E7B20094 */ swc1 $f18, 0x0094($sp)
|
||||
/* 018C4 80A0CF84 46140401 */ sub.s $f16, $f0, $f20
|
||||
/* 018C8 80A0CF88 3C0180A1 */ lui $at, %hi(D_80A0E1D4) ## $at = 80A10000
|
||||
/* 018CC 80A0CF8C C424E1D4 */ lwc1 $f4, %lo(D_80A0E1D4)($at)
|
||||
/* 018D0 80A0CF90 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
|
||||
/* 018D4 80A0CF94 46188182 */ mul.s $f6, $f16, $f24
|
||||
/* 018D8 80A0CF98 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
|
||||
/* 018DC 80A0CF9C 24050002 */ addiu $a1, $zero, 0x0002 ## $a1 = 00000002
|
||||
/* 018E0 80A0CFA0 02403025 */ or $a2, $s2, $zero ## $a2 = FFFFFFCC
|
||||
/* 018E4 80A0CFA4 02E03825 */ or $a3, $s7, $zero ## $a3 = FFFFFFB4
|
||||
/* 018E8 80A0CFA8 AFB60010 */ sw $s6, 0x0010($sp)
|
||||
/* 018EC 80A0CFAC AFA00014 */ sw $zero, 0x0014($sp)
|
||||
/* 018F0 80A0CFB0 E7A60098 */ swc1 $f6, 0x0098($sp)
|
||||
/* 018F4 80A0CFB4 E7A40018 */ swc1 $f4, 0x0018($sp)
|
||||
/* 018F8 80A0CFB8 0C283503 */ jal func_80A0D40C
|
||||
/* 018FC 80A0CFBC E7AA001C */ swc1 $f10, 0x001C($sp)
|
||||
/* 01900 80A0CFC0 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 01904 80A0CFC4 5611FFD0 */ bnel $s0, $s1, .L80A0CF08
|
||||
/* 01908 80A0CFC8 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFD8
|
||||
/* 0190C 80A0CFCC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
.L80A0CFD0:
|
||||
/* 01910 80A0CFD0 0C018A29 */ jal func_800628A4
|
||||
/* 01914 80A0CFD4 26A50194 */ addiu $a1, $s5, 0x0194 ## $a1 = 00000194
|
||||
/* 01918 80A0CFD8 8FBF0074 */ lw $ra, 0x0074($sp)
|
||||
/* 0191C 80A0CFDC D7B40020 */ ldc1 $f20, 0x0020($sp)
|
||||
/* 01920 80A0CFE0 D7B60028 */ ldc1 $f22, 0x0028($sp)
|
||||
/* 01924 80A0CFE4 D7B80030 */ ldc1 $f24, 0x0030($sp)
|
||||
/* 01928 80A0CFE8 D7BA0038 */ ldc1 $f26, 0x0038($sp)
|
||||
/* 0192C 80A0CFEC D7BC0040 */ ldc1 $f28, 0x0040($sp)
|
||||
/* 01930 80A0CFF0 D7BE0048 */ ldc1 $f30, 0x0048($sp)
|
||||
/* 01934 80A0CFF4 8FB00054 */ lw $s0, 0x0054($sp)
|
||||
/* 01938 80A0CFF8 8FB10058 */ lw $s1, 0x0058($sp)
|
||||
/* 0193C 80A0CFFC 8FB2005C */ lw $s2, 0x005C($sp)
|
||||
/* 01940 80A0D000 8FB30060 */ lw $s3, 0x0060($sp)
|
||||
/* 01944 80A0D004 8FB40064 */ lw $s4, 0x0064($sp)
|
||||
/* 01948 80A0D008 8FB50068 */ lw $s5, 0x0068($sp)
|
||||
/* 0194C 80A0D00C 8FB6006C */ lw $s6, 0x006C($sp)
|
||||
/* 01950 80A0D010 8FB70070 */ lw $s7, 0x0070($sp)
|
||||
/* 01954 80A0D014 03E00008 */ jr $ra
|
||||
/* 01958 80A0D018 27BD00D0 */ addiu $sp, $sp, 0x00D0 ## $sp = 00000000
|
@ -1,65 +0,0 @@
|
||||
glabel func_80A0D40C
|
||||
/* 01D4C 80A0D40C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 01D50 80A0D410 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 01D54 80A0D414 30A500FF */ andi $a1, $a1, 0x00FF ## $a1 = 00000000
|
||||
/* 01D58 80A0D418 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01D5C 80A0D41C 24830620 */ addiu $v1, $a0, 0x0620 ## $v1 = 00000620
|
||||
/* 01D60 80A0D420 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0D424:
|
||||
/* 01D64 80A0D424 906E0000 */ lbu $t6, 0x0000($v1) ## 00000620
|
||||
/* 01D68 80A0D428 24420001 */ addiu $v0, $v0, 0x0001 ## $v0 = 00000001
|
||||
/* 01D6C 80A0D42C 00021400 */ sll $v0, $v0, 16
|
||||
/* 01D70 80A0D430 15C0002B */ bne $t6, $zero, .L80A0D4E0
|
||||
/* 01D74 80A0D434 00021403 */ sra $v0, $v0, 16
|
||||
/* 01D78 80A0D438 C7A40038 */ lwc1 $f4, 0x0038($sp)
|
||||
/* 01D7C 80A0D43C 30AE00FF */ andi $t6, $a1, 0x00FF ## $t6 = 00000000
|
||||
/* 01D80 80A0D440 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 01D84 80A0D444 E4640004 */ swc1 $f4, 0x0004($v1) ## 00000624
|
||||
/* 01D88 80A0D448 C7A6003C */ lwc1 $f6, 0x003C($sp)
|
||||
/* 01D8C 80A0D44C 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF
|
||||
/* 01D90 80A0D450 E4660008 */ swc1 $f6, 0x0008($v1) ## 00000628
|
||||
/* 01D94 80A0D454 93B80037 */ lbu $t8, 0x0037($sp)
|
||||
/* 01D98 80A0D458 A0650000 */ sb $a1, 0x0000($v1) ## 00000620
|
||||
/* 01D9C 80A0D45C A0780001 */ sb $t8, 0x0001($v1) ## 00000621
|
||||
/* 01DA0 80A0D460 A0780002 */ sb $t8, 0x0002($v1) ## 00000622
|
||||
/* 01DA4 80A0D464 8CC80000 */ lw $t0, 0x0000($a2) ## 00000000
|
||||
/* 01DA8 80A0D468 AC680014 */ sw $t0, 0x0014($v1) ## 00000634
|
||||
/* 01DAC 80A0D46C 8CD90004 */ lw $t9, 0x0004($a2) ## 00000004
|
||||
/* 01DB0 80A0D470 AC790018 */ sw $t9, 0x0018($v1) ## 00000638
|
||||
/* 01DB4 80A0D474 8CC80008 */ lw $t0, 0x0008($a2) ## 00000008
|
||||
/* 01DB8 80A0D478 AC68001C */ sw $t0, 0x001C($v1) ## 0000063C
|
||||
/* 01DBC 80A0D47C 8FA90030 */ lw $t1, 0x0030($sp)
|
||||
/* 01DC0 80A0D480 8D2B0000 */ lw $t3, 0x0000($t1) ## 00000000
|
||||
/* 01DC4 80A0D484 AC6B002C */ sw $t3, 0x002C($v1) ## 0000064C
|
||||
/* 01DC8 80A0D488 8D2A0004 */ lw $t2, 0x0004($t1) ## 00000004
|
||||
/* 01DCC 80A0D48C AC6A0030 */ sw $t2, 0x0030($v1) ## 00000650
|
||||
/* 01DD0 80A0D490 8D2B0008 */ lw $t3, 0x0008($t1) ## 00000008
|
||||
/* 01DD4 80A0D494 AC6B0034 */ sw $t3, 0x0034($v1) ## 00000654
|
||||
/* 01DD8 80A0D498 8CED0000 */ lw $t5, 0x0000($a3) ## 00000000
|
||||
/* 01DDC 80A0D49C AC6D0020 */ sw $t5, 0x0020($v1) ## 00000640
|
||||
/* 01DE0 80A0D4A0 8CEC0004 */ lw $t4, 0x0004($a3) ## 00000004
|
||||
/* 01DE4 80A0D4A4 AC6C0024 */ sw $t4, 0x0024($v1) ## 00000644
|
||||
/* 01DE8 80A0D4A8 8CED0008 */ lw $t5, 0x0008($a3) ## 00000008
|
||||
/* 01DEC 80A0D4AC 15C1000F */ bne $t6, $at, .L80A0D4EC
|
||||
/* 01DF0 80A0D4B0 AC6D0028 */ sw $t5, 0x0028($v1) ## 00000648
|
||||
/* 01DF4 80A0D4B4 A06F000F */ sb $t7, 0x000F($v1) ## 0000062F
|
||||
/* 01DF8 80A0D4B8 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01DFC 80A0D4BC AFA3001C */ sw $v1, 0x001C($sp)
|
||||
/* 01E00 80A0D4C0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 01E04 80A0D4C4 44814000 */ mtc1 $at, $f8 ## $f8 = 10.00
|
||||
/* 01E08 80A0D4C8 8FA3001C */ lw $v1, 0x001C($sp)
|
||||
/* 01E0C 80A0D4CC 46080282 */ mul.s $f10, $f0, $f8
|
||||
/* 01E10 80A0D4D0 4600540D */ trunc.w.s $f16, $f10
|
||||
/* 01E14 80A0D4D4 44098000 */ mfc1 $t1, $f16
|
||||
/* 01E18 80A0D4D8 10000004 */ beq $zero, $zero, .L80A0D4EC
|
||||
/* 01E1C 80A0D4DC A0690001 */ sb $t1, 0x0001($v1) ## 00000001
|
||||
.L80A0D4E0:
|
||||
/* 01E20 80A0D4E0 284100C8 */ slti $at, $v0, 0x00C8
|
||||
/* 01E24 80A0D4E4 1420FFCF */ bne $at, $zero, .L80A0D424
|
||||
/* 01E28 80A0D4E8 24630038 */ addiu $v1, $v1, 0x0038 ## $v1 = 00000038
|
||||
.L80A0D4EC:
|
||||
/* 01E2C 80A0D4EC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01E30 80A0D4F0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 01E34 80A0D4F4 03E00008 */ jr $ra
|
||||
/* 01E38 80A0D4F8 00000000 */ nop
|
@ -1,84 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0E1DC
|
||||
.float 0.2
|
||||
|
||||
glabel D_80A0E1E0
|
||||
.float 0.4
|
||||
|
||||
.text
|
||||
glabel func_80A0D4FC
|
||||
/* 01E3C 80A0D4FC 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 01E40 80A0D500 F7B60020 */ sdc1 $f22, 0x0020($sp)
|
||||
/* 01E44 80A0D504 3C0180A1 */ lui $at, %hi(D_80A0E1DC) ## $at = 80A10000
|
||||
/* 01E48 80A0D508 C436E1DC */ lwc1 $f22, %lo(D_80A0E1DC)($at)
|
||||
/* 01E4C 80A0D50C AFB20030 */ sw $s2, 0x0030($sp)
|
||||
/* 01E50 80A0D510 AFB1002C */ sw $s1, 0x002C($sp)
|
||||
/* 01E54 80A0D514 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 01E58 80A0D518 F7B40018 */ sdc1 $f20, 0x0018($sp)
|
||||
/* 01E5C 80A0D51C 3C0180A1 */ lui $at, %hi(D_80A0E1E0) ## $at = 80A10000
|
||||
/* 01E60 80A0D520 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 01E64 80A0D524 24900620 */ addiu $s0, $a0, 0x0620 ## $s0 = 00000620
|
||||
/* 01E68 80A0D528 C434E1E0 */ lwc1 $f20, %lo(D_80A0E1E0)($at)
|
||||
/* 01E6C 80A0D52C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
|
||||
/* 01E70 80A0D530 24120001 */ addiu $s2, $zero, 0x0001 ## $s2 = 00000001
|
||||
.L80A0D534:
|
||||
/* 01E74 80A0D534 920E0000 */ lbu $t6, 0x0000($s0) ## 00000620
|
||||
/* 01E78 80A0D538 564E0029 */ bnel $s2, $t6, .L80A0D5E0
|
||||
/* 01E7C 80A0D53C 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
|
||||
/* 01E80 80A0D540 920F0001 */ lbu $t7, 0x0001($s0) ## 00000621
|
||||
/* 01E84 80A0D544 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 01E88 80A0D548 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 000000FF
|
||||
/* 01E8C 80A0D54C 17200002 */ bne $t9, $zero, .L80A0D558
|
||||
/* 01E90 80A0D550 A2180001 */ sb $t8, 0x0001($s0) ## 00000621
|
||||
/* 01E94 80A0D554 A2000000 */ sb $zero, 0x0000($s0) ## 00000620
|
||||
.L80A0D558:
|
||||
/* 01E98 80A0D558 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01E9C 80A0D55C 00000000 */ nop
|
||||
/* 01EA0 80A0D560 46140102 */ mul.s $f4, $f0, $f20
|
||||
/* 01EA4 80A0D564 46162181 */ sub.s $f6, $f4, $f22
|
||||
/* 01EA8 80A0D568 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01EAC 80A0D56C E606002C */ swc1 $f6, 0x002C($s0) ## 0000064C
|
||||
/* 01EB0 80A0D570 C60C0020 */ lwc1 $f12, 0x0020($s0) ## 00000640
|
||||
/* 01EB4 80A0D574 C60A0014 */ lwc1 $f10, 0x0014($s0) ## 00000634
|
||||
/* 01EB8 80A0D578 46140202 */ mul.s $f8, $f0, $f20
|
||||
/* 01EBC 80A0D57C C60E0024 */ lwc1 $f14, 0x0024($s0) ## 00000644
|
||||
/* 01EC0 80A0D580 460C5480 */ add.s $f18, $f10, $f12
|
||||
/* 01EC4 80A0D584 C6040018 */ lwc1 $f4, 0x0018($s0) ## 00000638
|
||||
/* 01EC8 80A0D588 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000648
|
||||
/* 01ECC 80A0D58C E6120014 */ swc1 $f18, 0x0014($s0) ## 00000634
|
||||
/* 01ED0 80A0D590 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000064C
|
||||
/* 01ED4 80A0D594 460E2180 */ add.s $f6, $f4, $f14
|
||||
/* 01ED8 80A0D598 46164081 */ sub.s $f2, $f8, $f22
|
||||
/* 01EDC 80A0D59C C608001C */ lwc1 $f8, 0x001C($s0) ## 0000063C
|
||||
/* 01EE0 80A0D5A0 E6060018 */ swc1 $f6, 0x0018($s0) ## 00000638
|
||||
/* 01EE4 80A0D5A4 46126100 */ add.s $f4, $f12, $f18
|
||||
/* 01EE8 80A0D5A8 C6060030 */ lwc1 $f6, 0x0030($s0) ## 00000650
|
||||
/* 01EEC 80A0D5AC C6120004 */ lwc1 $f18, 0x0004($s0) ## 00000624
|
||||
/* 01EF0 80A0D5B0 46104280 */ add.s $f10, $f8, $f16
|
||||
/* 01EF4 80A0D5B4 E6040020 */ swc1 $f4, 0x0020($s0) ## 00000640
|
||||
/* 01EF8 80A0D5B8 C6040008 */ lwc1 $f4, 0x0008($s0) ## 00000628
|
||||
/* 01EFC 80A0D5BC 46067200 */ add.s $f8, $f14, $f6
|
||||
/* 01F00 80A0D5C0 E60A001C */ swc1 $f10, 0x001C($s0) ## 0000063C
|
||||
/* 01F04 80A0D5C4 E6020034 */ swc1 $f2, 0x0034($s0) ## 00000654
|
||||
/* 01F08 80A0D5C8 46028280 */ add.s $f10, $f16, $f2
|
||||
/* 01F0C 80A0D5CC E6080024 */ swc1 $f8, 0x0024($s0) ## 00000644
|
||||
/* 01F10 80A0D5D0 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 01F14 80A0D5D4 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000648
|
||||
/* 01F18 80A0D5D8 E6060004 */ swc1 $f6, 0x0004($s0) ## 00000624
|
||||
/* 01F1C 80A0D5DC 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000002
|
||||
.L80A0D5E0:
|
||||
/* 01F20 80A0D5E0 00118C00 */ sll $s1, $s1, 16
|
||||
/* 01F24 80A0D5E4 00118C03 */ sra $s1, $s1, 16
|
||||
/* 01F28 80A0D5E8 2A2100C8 */ slti $at, $s1, 0x00C8
|
||||
/* 01F2C 80A0D5EC 1420FFD1 */ bne $at, $zero, .L80A0D534
|
||||
/* 01F30 80A0D5F0 26100038 */ addiu $s0, $s0, 0x0038 ## $s0 = 00000658
|
||||
/* 01F34 80A0D5F4 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 01F38 80A0D5F8 D7B40018 */ ldc1 $f20, 0x0018($sp)
|
||||
/* 01F3C 80A0D5FC D7B60020 */ ldc1 $f22, 0x0020($sp)
|
||||
/* 01F40 80A0D600 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 01F44 80A0D604 8FB1002C */ lw $s1, 0x002C($sp)
|
||||
/* 01F48 80A0D608 8FB20030 */ lw $s2, 0x0030($sp)
|
||||
/* 01F4C 80A0D60C 03E00008 */ jr $ra
|
||||
/* 01F50 80A0D610 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
@ -1,76 +0,0 @@
|
||||
glabel func_80A0D614
|
||||
/* 01F54 80A0D614 3C0E80A1 */ lui $t6, %hi(D_80A0E0E8) ## $t6 = 80A10000
|
||||
/* 01F58 80A0D618 25CEE0E8 */ addiu $t6, $t6, %lo(D_80A0E0E8) ## $t6 = 80A0E0E8
|
||||
/* 01F5C 80A0D61C 8DD80000 */ lw $t8, 0x0000($t6) ## 80A0E0E8
|
||||
/* 01F60 80A0D620 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 01F64 80A0D624 27A60008 */ addiu $a2, $sp, 0x0008 ## $a2 = FFFFFFE8
|
||||
/* 01F68 80A0D628 ACD80000 */ sw $t8, 0x0000($a2) ## FFFFFFE8
|
||||
/* 01F6C 80A0D62C 8DCF0004 */ lw $t7, 0x0004($t6) ## 80A0E0EC
|
||||
/* 01F70 80A0D630 24820620 */ addiu $v0, $a0, 0x0620 ## $v0 = 00000620
|
||||
/* 01F74 80A0D634 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
/* 01F78 80A0D638 ACCF0004 */ sw $t7, 0x0004($a2) ## FFFFFFEC
|
||||
/* 01F7C 80A0D63C 8DD80008 */ lw $t8, 0x0008($t6) ## 80A0E0F0
|
||||
/* 01F80 80A0D640 24070002 */ addiu $a3, $zero, 0x0002 ## $a3 = 00000002
|
||||
/* 01F84 80A0D644 ACD80008 */ sw $t8, 0x0008($a2) ## FFFFFFF0
|
||||
/* 01F88 80A0D648 8DCF000C */ lw $t7, 0x000C($t6) ## 80A0E0F4
|
||||
/* 01F8C 80A0D64C ACCF000C */ sw $t7, 0x000C($a2) ## FFFFFFF4
|
||||
.L80A0D650:
|
||||
/* 01F90 80A0D650 90590000 */ lbu $t9, 0x0000($v0) ## 00000620
|
||||
/* 01F94 80A0D654 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001
|
||||
/* 01F98 80A0D658 00031C00 */ sll $v1, $v1, 16
|
||||
/* 01F9C 80A0D65C 14F9002F */ bne $a3, $t9, .L80A0D71C
|
||||
/* 01FA0 80A0D660 00031C03 */ sra $v1, $v1, 16
|
||||
/* 01FA4 80A0D664 C4400020 */ lwc1 $f0, 0x0020($v0) ## 00000640
|
||||
/* 01FA8 80A0D668 C4440014 */ lwc1 $f4, 0x0014($v0) ## 00000634
|
||||
/* 01FAC 80A0D66C C4420024 */ lwc1 $f2, 0x0024($v0) ## 00000644
|
||||
/* 01FB0 80A0D670 C4480018 */ lwc1 $f8, 0x0018($v0) ## 00000638
|
||||
/* 01FB4 80A0D674 C44C0028 */ lwc1 $f12, 0x0028($v0) ## 00000648
|
||||
/* 01FB8 80A0D678 C450001C */ lwc1 $f16, 0x001C($v0) ## 0000063C
|
||||
/* 01FBC 80A0D67C 46002180 */ add.s $f6, $f4, $f0
|
||||
/* 01FC0 80A0D680 90480001 */ lbu $t0, 0x0001($v0) ## 00000621
|
||||
/* 01FC4 80A0D684 C444002C */ lwc1 $f4, 0x002C($v0) ## 0000064C
|
||||
/* 01FC8 80A0D688 46024280 */ add.s $f10, $f8, $f2
|
||||
/* 01FCC 80A0D68C C4480030 */ lwc1 $f8, 0x0030($v0) ## 00000650
|
||||
/* 01FD0 80A0D690 E4460014 */ swc1 $f6, 0x0014($v0) ## 00000634
|
||||
/* 01FD4 80A0D694 460C8480 */ add.s $f18, $f16, $f12
|
||||
/* 01FD8 80A0D698 C4500034 */ lwc1 $f16, 0x0034($v0) ## 00000654
|
||||
/* 01FDC 80A0D69C E44A0018 */ swc1 $f10, 0x0018($v0) ## 00000638
|
||||
/* 01FE0 80A0D6A0 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 01FE4 80A0D6A4 E452001C */ swc1 $f18, 0x001C($v0) ## 0000063C
|
||||
/* 01FE8 80A0D6A8 25090001 */ addiu $t1, $t0, 0x0001 ## $t1 = 00000001
|
||||
/* 01FEC 80A0D6AC 46081280 */ add.s $f10, $f2, $f8
|
||||
/* 01FF0 80A0D6B0 312A00FF */ andi $t2, $t1, 0x00FF ## $t2 = 00000001
|
||||
/* 01FF4 80A0D6B4 A0490001 */ sb $t1, 0x0001($v0) ## 00000621
|
||||
/* 01FF8 80A0D6B8 46106480 */ add.s $f18, $f12, $f16
|
||||
/* 01FFC 80A0D6BC E4460020 */ swc1 $f6, 0x0020($v0) ## 00000640
|
||||
/* 02000 80A0D6C0 E44A0024 */ swc1 $f10, 0x0024($v0) ## 00000644
|
||||
/* 02004 80A0D6C4 9045000F */ lbu $a1, 0x000F($v0) ## 0000062F
|
||||
/* 02008 80A0D6C8 E4520028 */ swc1 $f18, 0x0028($v0) ## 00000648
|
||||
/* 0200C 80A0D6CC 05410004 */ bgez $t2, .L80A0D6E0
|
||||
/* 02010 80A0D6D0 314B0003 */ andi $t3, $t2, 0x0003 ## $t3 = 00000001
|
||||
/* 02014 80A0D6D4 11600002 */ beq $t3, $zero, .L80A0D6E0
|
||||
/* 02018 80A0D6D8 00000000 */ nop
|
||||
/* 0201C 80A0D6DC 256BFFFC */ addiu $t3, $t3, 0xFFFC ## $t3 = FFFFFFFD
|
||||
.L80A0D6E0:
|
||||
/* 02020 80A0D6E0 000B6080 */ sll $t4, $t3, 2
|
||||
/* 02024 80A0D6E4 00CC2021 */ addu $a0, $a2, $t4
|
||||
/* 02028 80A0D6E8 908D0000 */ lbu $t5, 0x0000($a0) ## 00000000
|
||||
/* 0202C 80A0D6EC 28A1001F */ slti $at, $a1, 0x001F
|
||||
/* 02030 80A0D6F0 24B8FFE2 */ addiu $t8, $a1, 0xFFE2 ## $t8 = FFFFFFE2
|
||||
/* 02034 80A0D6F4 A04D000C */ sb $t5, 0x000C($v0) ## 0000062C
|
||||
/* 02038 80A0D6F8 908E0001 */ lbu $t6, 0x0001($a0) ## 00000001
|
||||
/* 0203C 80A0D6FC A04E000D */ sb $t6, 0x000D($v0) ## 0000062D
|
||||
/* 02040 80A0D700 908F0002 */ lbu $t7, 0x0002($a0) ## 00000002
|
||||
/* 02044 80A0D704 14200003 */ bne $at, $zero, .L80A0D714
|
||||
/* 02048 80A0D708 A04F000E */ sb $t7, 0x000E($v0) ## 0000062E
|
||||
/* 0204C 80A0D70C 10000003 */ beq $zero, $zero, .L80A0D71C
|
||||
/* 02050 80A0D710 A058000F */ sb $t8, 0x000F($v0) ## 0000062F
|
||||
.L80A0D714:
|
||||
/* 02054 80A0D714 A040000F */ sb $zero, 0x000F($v0) ## 0000062F
|
||||
/* 02058 80A0D718 A0400000 */ sb $zero, 0x0000($v0) ## 00000620
|
||||
.L80A0D71C:
|
||||
/* 0205C 80A0D71C 286100C8 */ slti $at, $v1, 0x00C8
|
||||
/* 02060 80A0D720 1420FFCB */ bne $at, $zero, .L80A0D650
|
||||
/* 02064 80A0D724 24420038 */ addiu $v0, $v0, 0x0038 ## $v0 = 00000658
|
||||
/* 02068 80A0D728 03E00008 */ jr $ra
|
||||
/* 0206C 80A0D72C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
@ -1,287 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80A0E140
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0E150
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0E160
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80A0D730
|
||||
/* 02070 80A0D730 27BDFF50 */ addiu $sp, $sp, 0xFF50 ## $sp = FFFFFF50
|
||||
/* 02074 80A0D734 AFBF005C */ sw $ra, 0x005C($sp)
|
||||
/* 02078 80A0D738 AFBE0058 */ sw $s8, 0x0058($sp)
|
||||
/* 0207C 80A0D73C AFB70054 */ sw $s7, 0x0054($sp)
|
||||
/* 02080 80A0D740 AFB60050 */ sw $s6, 0x0050($sp)
|
||||
/* 02084 80A0D744 AFB5004C */ sw $s5, 0x004C($sp)
|
||||
/* 02088 80A0D748 AFB40048 */ sw $s4, 0x0048($sp)
|
||||
/* 0208C 80A0D74C AFB30044 */ sw $s3, 0x0044($sp)
|
||||
/* 02090 80A0D750 AFB20040 */ sw $s2, 0x0040($sp)
|
||||
/* 02094 80A0D754 AFB1003C */ sw $s1, 0x003C($sp)
|
||||
/* 02098 80A0D758 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 0209C 80A0D75C F7BA0030 */ sdc1 $f26, 0x0030($sp)
|
||||
/* 020A0 80A0D760 F7B80028 */ sdc1 $f24, 0x0028($sp)
|
||||
/* 020A4 80A0D764 F7B60020 */ sdc1 $f22, 0x0020($sp)
|
||||
/* 020A8 80A0D768 F7B40018 */ sdc1 $f20, 0x0018($sp)
|
||||
/* 020AC 80A0D76C AFA500B4 */ sw $a1, 0x00B4($sp)
|
||||
/* 020B0 80A0D770 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 020B4 80A0D774 0080B825 */ or $s7, $a0, $zero ## $s7 = 00000000
|
||||
/* 020B8 80A0D778 24920620 */ addiu $s2, $a0, 0x0620 ## $s2 = 00000620
|
||||
/* 020BC 80A0D77C 3C0680A1 */ lui $a2, %hi(D_80A0E140) ## $a2 = 80A10000
|
||||
/* 020C0 80A0D780 24C6E140 */ addiu $a2, $a2, %lo(D_80A0E140) ## $a2 = 80A0E140
|
||||
/* 020C4 80A0D784 27A40090 */ addiu $a0, $sp, 0x0090 ## $a0 = FFFFFFE0
|
||||
/* 020C8 80A0D788 240707B1 */ addiu $a3, $zero, 0x07B1 ## $a3 = 000007B1
|
||||
/* 020CC 80A0D78C 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 020D0 80A0D790 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 020D4 80A0D794 8FAF00B4 */ lw $t7, 0x00B4($sp)
|
||||
/* 020D8 80A0D798 0000F025 */ or $s8, $zero, $zero ## $s8 = 00000000
|
||||
/* 020DC 80A0D79C 0C024F61 */ jal func_80093D84
|
||||
/* 020E0 80A0D7A0 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
|
||||
/* 020E4 80A0D7A4 3C014100 */ lui $at, 0x4100 ## $at = 41000000
|
||||
/* 020E8 80A0D7A8 4481D000 */ mtc1 $at, $f26 ## $f26 = 8.00
|
||||
/* 020EC 80A0D7AC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 020F0 80A0D7B0 4481C000 */ mtc1 $at, $f24 ## $f24 = 1.00
|
||||
/* 020F4 80A0D7B4 3C01437F */ lui $at, 0x437F ## $at = 437F0000
|
||||
/* 020F8 80A0D7B8 4481B000 */ mtc1 $at, $f22 ## $f22 = 255.00
|
||||
/* 020FC 80A0D7BC 4481A000 */ mtc1 $at, $f20 ## $f20 = 255.00
|
||||
/* 02100 80A0D7C0 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
|
||||
/* 02104 80A0D7C4 3C16DE00 */ lui $s6, 0xDE00 ## $s6 = DE000000
|
||||
.L80A0D7C8:
|
||||
/* 02108 80A0D7C8 92580000 */ lbu $t8, 0x0000($s2) ## 00000620
|
||||
/* 0210C 80A0D7CC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 02110 80A0D7D0 8FB300B4 */ lw $s3, 0x00B4($sp)
|
||||
/* 02114 80A0D7D4 170100BE */ bne $t8, $at, .L80A0DAD0
|
||||
/* 02118 80A0D7D8 3C150600 */ lui $s5, 0x0600 ## $s5 = 06000000
|
||||
/* 0211C 80A0D7DC 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 02120 80A0D7E0 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
|
||||
/* 02124 80A0D7E4 02619821 */ addu $s3, $s3, $at
|
||||
/* 02128 80A0D7E8 17C00039 */ bne $s8, $zero, .L80A0D8D0
|
||||
/* 0212C 80A0D7EC 26B57938 */ addiu $s5, $s5, 0x7938 ## $s5 = 06007938
|
||||
/* 02130 80A0D7F0 3C110600 */ lui $s1, 0x0600 ## $s1 = 06000000
|
||||
/* 02134 80A0D7F4 26317928 */ addiu $s1, $s1, 0x7928 ## $s1 = 06007928
|
||||
/* 02138 80A0D7F8 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0
|
||||
/* 0213C 80A0D7FC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 02140 80A0D800 0C024DDD */ jal Gfx_CallSetupDL
|
||||
/* 02144 80A0D804 241E0001 */ addiu $s8, $zero, 0x0001 ## $s8 = 00000001
|
||||
/* 02148 80A0D808 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 0214C 80A0D80C 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 02150 80A0D810 AE1902D0 */ sw $t9, 0x02D0($s0) ## 000002D0
|
||||
/* 02154 80A0D814 AC510004 */ sw $s1, 0x0004($v0) ## 00000004
|
||||
/* 02158 80A0D818 AC560000 */ sw $s6, 0x0000($v0) ## 00000000
|
||||
/* 0215C 80A0D81C 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0
|
||||
/* 02160 80A0D820 3C09FB00 */ lui $t1, 0xFB00 ## $t1 = FB000000
|
||||
/* 02164 80A0D824 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001
|
||||
/* 02168 80A0D828 24680008 */ addiu $t0, $v1, 0x0008 ## $t0 = 00000008
|
||||
/* 0216C 80A0D82C AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
|
||||
/* 02170 80A0D830 AC690000 */ sw $t1, 0x0000($v1) ## 00000000
|
||||
/* 02174 80A0D834 C6E404CC */ lwc1 $f4, 0x04CC($s7) ## 000004CC
|
||||
/* 02178 80A0D838 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 0217C 80A0D83C 46142183 */ div.s $f6, $f4, $f20
|
||||
/* 02180 80A0D840 46163202 */ mul.s $f8, $f6, $f22
|
||||
/* 02184 80A0D844 444AF800 */ cfc1 $t2, $31
|
||||
/* 02188 80A0D848 44CBF800 */ ctc1 $t3, $31
|
||||
/* 0218C 80A0D84C 00000000 */ nop
|
||||
/* 02190 80A0D850 460042A4 */ cvt.w.s $f10, $f8
|
||||
/* 02194 80A0D854 444BF800 */ cfc1 $t3, $31
|
||||
/* 02198 80A0D858 00000000 */ nop
|
||||
/* 0219C 80A0D85C 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000
|
||||
/* 021A0 80A0D860 51600013 */ beql $t3, $zero, .L80A0D8B0
|
||||
/* 021A4 80A0D864 440B5000 */ mfc1 $t3, $f10
|
||||
/* 021A8 80A0D868 44815000 */ mtc1 $at, $f10 ## $f10 = 2147483648.00
|
||||
/* 021AC 80A0D86C 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001
|
||||
/* 021B0 80A0D870 460A4281 */ sub.s $f10, $f8, $f10
|
||||
/* 021B4 80A0D874 44CBF800 */ ctc1 $t3, $31
|
||||
/* 021B8 80A0D878 00000000 */ nop
|
||||
/* 021BC 80A0D87C 460052A4 */ cvt.w.s $f10, $f10
|
||||
/* 021C0 80A0D880 444BF800 */ cfc1 $t3, $31
|
||||
/* 021C4 80A0D884 00000000 */ nop
|
||||
/* 021C8 80A0D888 316B0078 */ andi $t3, $t3, 0x0078 ## $t3 = 00000000
|
||||
/* 021CC 80A0D88C 15600005 */ bne $t3, $zero, .L80A0D8A4
|
||||
/* 021D0 80A0D890 00000000 */ nop
|
||||
/* 021D4 80A0D894 440B5000 */ mfc1 $t3, $f10
|
||||
/* 021D8 80A0D898 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 021DC 80A0D89C 10000007 */ beq $zero, $zero, .L80A0D8BC
|
||||
/* 021E0 80A0D8A0 01615825 */ or $t3, $t3, $at ## $t3 = 80000000
|
||||
.L80A0D8A4:
|
||||
/* 021E4 80A0D8A4 10000005 */ beq $zero, $zero, .L80A0D8BC
|
||||
/* 021E8 80A0D8A8 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF
|
||||
/* 021EC 80A0D8AC 440B5000 */ mfc1 $t3, $f10
|
||||
.L80A0D8B0:
|
||||
/* 021F0 80A0D8B0 00000000 */ nop
|
||||
/* 021F4 80A0D8B4 0560FFFB */ bltz $t3, .L80A0D8A4
|
||||
/* 021F8 80A0D8B8 00000000 */ nop
|
||||
.L80A0D8BC:
|
||||
/* 021FC 80A0D8BC 316D00FF */ andi $t5, $t3, 0x00FF ## $t5 = 000000FF
|
||||
/* 02200 80A0D8C0 3C01FF0A */ lui $at, 0xFF0A ## $at = FF0A0000
|
||||
/* 02204 80A0D8C4 44CAF800 */ ctc1 $t2, $31
|
||||
/* 02208 80A0D8C8 01A17025 */ or $t6, $t5, $at ## $t6 = FF0A00FF
|
||||
/* 0220C 80A0D8CC AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004
|
||||
.L80A0D8D0:
|
||||
/* 02210 80A0D8D0 8E0302D0 */ lw $v1, 0x02D0($s0) ## 000002D0
|
||||
/* 02214 80A0D8D4 3C18FA00 */ lui $t8, 0xFA00 ## $t8 = FA000000
|
||||
/* 02218 80A0D8D8 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 0221C 80A0D8DC 246F0008 */ addiu $t7, $v1, 0x0008 ## $t7 = 00000008
|
||||
/* 02220 80A0D8E0 AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
|
||||
/* 02224 80A0D8E4 AC780000 */ sw $t8, 0x0000($v1) ## 00000000
|
||||
/* 02228 80A0D8E8 C6F004CC */ lwc1 $f16, 0x04CC($s7) ## 000004CC
|
||||
/* 0222C 80A0D8EC 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 02230 80A0D8F0 3C0DE700 */ lui $t5, 0xE700 ## $t5 = E7000000
|
||||
/* 02234 80A0D8F4 46148483 */ div.s $f18, $f16, $f20
|
||||
/* 02238 80A0D8F8 46169102 */ mul.s $f4, $f18, $f22
|
||||
/* 0223C 80A0D8FC 4459F800 */ cfc1 $t9, $31
|
||||
/* 02240 80A0D900 44C8F800 */ ctc1 $t0, $31
|
||||
/* 02244 80A0D904 00000000 */ nop
|
||||
/* 02248 80A0D908 460021A4 */ cvt.w.s $f6, $f4
|
||||
/* 0224C 80A0D90C 4448F800 */ cfc1 $t0, $31
|
||||
/* 02250 80A0D910 00000000 */ nop
|
||||
/* 02254 80A0D914 31080078 */ andi $t0, $t0, 0x0078 ## $t0 = 00000000
|
||||
/* 02258 80A0D918 51000013 */ beql $t0, $zero, .L80A0D968
|
||||
/* 0225C 80A0D91C 44083000 */ mfc1 $t0, $f6
|
||||
/* 02260 80A0D920 44813000 */ mtc1 $at, $f6 ## $f6 = 2147483648.00
|
||||
/* 02264 80A0D924 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 02268 80A0D928 46062181 */ sub.s $f6, $f4, $f6
|
||||
/* 0226C 80A0D92C 44C8F800 */ ctc1 $t0, $31
|
||||
/* 02270 80A0D930 00000000 */ nop
|
||||
/* 02274 80A0D934 460031A4 */ cvt.w.s $f6, $f6
|
||||
/* 02278 80A0D938 4448F800 */ cfc1 $t0, $31
|
||||
/* 0227C 80A0D93C 00000000 */ nop
|
||||
/* 02280 80A0D940 31080078 */ andi $t0, $t0, 0x0078 ## $t0 = 00000000
|
||||
/* 02284 80A0D944 15000005 */ bne $t0, $zero, .L80A0D95C
|
||||
/* 02288 80A0D948 00000000 */ nop
|
||||
/* 0228C 80A0D94C 44083000 */ mfc1 $t0, $f6
|
||||
/* 02290 80A0D950 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 02294 80A0D954 10000007 */ beq $zero, $zero, .L80A0D974
|
||||
/* 02298 80A0D958 01014025 */ or $t0, $t0, $at ## $t0 = 80000000
|
||||
.L80A0D95C:
|
||||
/* 0229C 80A0D95C 10000005 */ beq $zero, $zero, .L80A0D974
|
||||
/* 022A0 80A0D960 2408FFFF */ addiu $t0, $zero, 0xFFFF ## $t0 = FFFFFFFF
|
||||
/* 022A4 80A0D964 44083000 */ mfc1 $t0, $f6
|
||||
.L80A0D968:
|
||||
/* 022A8 80A0D968 00000000 */ nop
|
||||
/* 022AC 80A0D96C 0500FFFB */ bltz $t0, .L80A0D95C
|
||||
/* 022B0 80A0D970 00000000 */ nop
|
||||
.L80A0D974:
|
||||
/* 022B4 80A0D974 310A00FF */ andi $t2, $t0, 0x00FF ## $t2 = 000000FF
|
||||
/* 022B8 80A0D978 3C01FFFF */ lui $at, 0xFFFF ## $at = FFFF0000
|
||||
/* 022BC 80A0D97C 01415825 */ or $t3, $t2, $at ## $t3 = FFFF00FF
|
||||
/* 022C0 80A0D980 AC6B0004 */ sw $t3, 0x0004($v1) ## 00000004
|
||||
/* 022C4 80A0D984 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 022C8 80A0D988 44D9F800 */ ctc1 $t9, $31
|
||||
/* 022CC 80A0D98C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 022D0 80A0D990 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 022D4 80A0D994 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
|
||||
/* 022D8 80A0D998 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 022DC 80A0D99C AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
/* 022E0 80A0D9A0 8E46001C */ lw $a2, 0x001C($s2) ## 0000063C
|
||||
/* 022E4 80A0D9A4 C64E0018 */ lwc1 $f14, 0x0018($s2) ## 00000638
|
||||
/* 022E8 80A0D9A8 0C034261 */ jal Matrix_Translate
|
||||
/* 022EC 80A0D9AC C64C0014 */ lwc1 $f12, 0x0014($s2) ## 00000634
|
||||
/* 022F0 80A0D9B0 0C0347F5 */ jal func_800D1FD4
|
||||
/* 022F4 80A0D9B4 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 022F8 80A0D9B8 C64C0004 */ lwc1 $f12, 0x0004($s2) ## 00000624
|
||||
/* 022FC 80A0D9BC 4406C000 */ mfc1 $a2, $f24
|
||||
/* 02300 80A0D9C0 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 02304 80A0D9C4 0C0342A3 */ jal Matrix_Scale
|
||||
/* 02308 80A0D9C8 46006386 */ mov.s $f14, $f12
|
||||
/* 0230C 80A0D9CC 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 02310 80A0D9D0 3C0FDA38 */ lui $t7, 0xDA38 ## $t7 = DA380000
|
||||
/* 02314 80A0D9D4 35EF0003 */ ori $t7, $t7, 0x0003 ## $t7 = DA380003
|
||||
/* 02318 80A0D9D8 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 0231C 80A0D9DC AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
|
||||
/* 02320 80A0D9E0 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
|
||||
/* 02324 80A0D9E4 8FB800B4 */ lw $t8, 0x00B4($sp)
|
||||
/* 02328 80A0D9E8 3C0580A1 */ lui $a1, %hi(D_80A0E150) ## $a1 = 80A10000
|
||||
/* 0232C 80A0D9EC 24A5E150 */ addiu $a1, $a1, %lo(D_80A0E150) ## $a1 = 80A0E150
|
||||
/* 02330 80A0D9F0 240607D6 */ addiu $a2, $zero, 0x07D6 ## $a2 = 000007D6
|
||||
/* 02334 80A0D9F4 00408825 */ or $s1, $v0, $zero ## $s1 = 00000000
|
||||
/* 02338 80A0D9F8 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 0233C 80A0D9FC 8F040000 */ lw $a0, 0x0000($t8) ## 00000000
|
||||
/* 02340 80A0DA00 AE220004 */ sw $v0, 0x0004($s1) ## 00000004
|
||||
/* 02344 80A0DA04 92590001 */ lbu $t9, 0x0001($s2) ## 00000621
|
||||
/* 02348 80A0DA08 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 0234C 80A0DA0C 44994000 */ mtc1 $t9, $f8 ## $f8 = 0.00
|
||||
/* 02350 80A0DA10 07210004 */ bgez $t9, .L80A0DA24
|
||||
/* 02354 80A0DA14 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 02358 80A0DA18 44818000 */ mtc1 $at, $f16 ## $f16 = 4294967296.00
|
||||
/* 0235C 80A0DA1C 00000000 */ nop
|
||||
/* 02360 80A0DA20 46105280 */ add.s $f10, $f10, $f16
|
||||
.L80A0DA24:
|
||||
/* 02364 80A0DA24 92480002 */ lbu $t0, 0x0002($s2) ## 00000622
|
||||
/* 02368 80A0DA28 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 0236C 80A0DA2C 44889000 */ mtc1 $t0, $f18 ## $f18 = 0.00
|
||||
/* 02370 80A0DA30 05010004 */ bgez $t0, .L80A0DA44
|
||||
/* 02374 80A0DA34 46809120 */ cvt.s.w $f4, $f18
|
||||
/* 02378 80A0DA38 44813000 */ mtc1 $at, $f6 ## $f6 = 4294967296.00
|
||||
/* 0237C 80A0DA3C 00000000 */ nop
|
||||
/* 02380 80A0DA40 46062100 */ add.s $f4, $f4, $f6
|
||||
.L80A0DA44:
|
||||
/* 02384 80A0DA44 4604D203 */ div.s $f8, $f26, $f4
|
||||
/* 02388 80A0DA48 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 0238C 80A0DA4C 3C0BDB06 */ lui $t3, 0xDB06 ## $t3 = DB060000
|
||||
/* 02390 80A0DA50 356B0020 */ ori $t3, $t3, 0x0020 ## $t3 = DB060020
|
||||
/* 02394 80A0DA54 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
|
||||
/* 02398 80A0DA58 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0
|
||||
/* 0239C 80A0DA5C 3C0480A1 */ lui $a0, %hi(D_80A0E0F8) ## $a0 = 80A10000
|
||||
/* 023A0 80A0DA60 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 023A4 80A0DA64 3C198016 */ lui $t9, %hi(gSegments)
|
||||
/* 023A8 80A0DA68 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 023AC 80A0DA6C 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 023B0 80A0DA70 46085402 */ mul.s $f16, $f10, $f8
|
||||
/* 023B4 80A0DA74 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 023B8 80A0DA78 44059000 */ mfc1 $a1, $f18
|
||||
/* 023BC 80A0DA7C 00000000 */ nop
|
||||
/* 023C0 80A0DA80 00052C00 */ sll $a1, $a1, 16
|
||||
/* 023C4 80A0DA84 00052C03 */ sra $a1, $a1, 16
|
||||
/* 023C8 80A0DA88 00056080 */ sll $t4, $a1, 2
|
||||
/* 023CC 80A0DA8C 008C2021 */ addu $a0, $a0, $t4
|
||||
/* 023D0 80A0DA90 8C84E0F8 */ lw $a0, %lo(D_80A0E0F8)($a0)
|
||||
/* 023D4 80A0DA94 00047100 */ sll $t6, $a0, 4
|
||||
/* 023D8 80A0DA98 000E7F02 */ srl $t7, $t6, 28
|
||||
/* 023DC 80A0DA9C 000FC080 */ sll $t8, $t7, 2
|
||||
/* 023E0 80A0DAA0 0338C821 */ addu $t9, $t9, $t8
|
||||
/* 023E4 80A0DAA4 8F396FA8 */ lw $t9, %lo(gSegments)($t9)
|
||||
/* 023E8 80A0DAA8 00816824 */ and $t5, $a0, $at
|
||||
/* 023EC 80A0DAAC 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 023F0 80A0DAB0 01B94021 */ addu $t0, $t5, $t9
|
||||
/* 023F4 80A0DAB4 01014821 */ addu $t1, $t0, $at
|
||||
/* 023F8 80A0DAB8 AC490004 */ sw $t1, 0x0004($v0) ## 00000004
|
||||
/* 023FC 80A0DABC 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 02400 80A0DAC0 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
|
||||
/* 02404 80A0DAC4 AE0A02D0 */ sw $t2, 0x02D0($s0) ## 000002D0
|
||||
/* 02408 80A0DAC8 AC550004 */ sw $s5, 0x0004($v0) ## 00000004
|
||||
/* 0240C 80A0DACC AC560000 */ sw $s6, 0x0000($v0) ## 00000000
|
||||
.L80A0DAD0:
|
||||
/* 02410 80A0DAD0 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
|
||||
/* 02414 80A0DAD4 0014A400 */ sll $s4, $s4, 16
|
||||
/* 02418 80A0DAD8 0014A403 */ sra $s4, $s4, 16
|
||||
/* 0241C 80A0DADC 2A8100C8 */ slti $at, $s4, 0x00C8
|
||||
/* 02420 80A0DAE0 1420FF39 */ bne $at, $zero, .L80A0D7C8
|
||||
/* 02424 80A0DAE4 26520038 */ addiu $s2, $s2, 0x0038 ## $s2 = 00000658
|
||||
/* 02428 80A0DAE8 8FAB00B4 */ lw $t3, 0x00B4($sp)
|
||||
/* 0242C 80A0DAEC 3C0680A1 */ lui $a2, %hi(D_80A0E160) ## $a2 = 80A10000
|
||||
/* 02430 80A0DAF0 24C6E160 */ addiu $a2, $a2, %lo(D_80A0E160) ## $a2 = 80A0E160
|
||||
/* 02434 80A0DAF4 27A40090 */ addiu $a0, $sp, 0x0090 ## $a0 = FFFFFFE0
|
||||
/* 02438 80A0DAF8 240707E4 */ addiu $a3, $zero, 0x07E4 ## $a3 = 000007E4
|
||||
/* 0243C 80A0DAFC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 02440 80A0DB00 8D650000 */ lw $a1, 0x0000($t3) ## DB060020
|
||||
/* 02444 80A0DB04 8FBF005C */ lw $ra, 0x005C($sp)
|
||||
/* 02448 80A0DB08 D7B40018 */ ldc1 $f20, 0x0018($sp)
|
||||
/* 0244C 80A0DB0C D7B60020 */ ldc1 $f22, 0x0020($sp)
|
||||
/* 02450 80A0DB10 D7B80028 */ ldc1 $f24, 0x0028($sp)
|
||||
/* 02454 80A0DB14 D7BA0030 */ ldc1 $f26, 0x0030($sp)
|
||||
/* 02458 80A0DB18 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 0245C 80A0DB1C 8FB1003C */ lw $s1, 0x003C($sp)
|
||||
/* 02460 80A0DB20 8FB20040 */ lw $s2, 0x0040($sp)
|
||||
/* 02464 80A0DB24 8FB30044 */ lw $s3, 0x0044($sp)
|
||||
/* 02468 80A0DB28 8FB40048 */ lw $s4, 0x0048($sp)
|
||||
/* 0246C 80A0DB2C 8FB5004C */ lw $s5, 0x004C($sp)
|
||||
/* 02470 80A0DB30 8FB60050 */ lw $s6, 0x0050($sp)
|
||||
/* 02474 80A0DB34 8FB70054 */ lw $s7, 0x0054($sp)
|
||||
/* 02478 80A0DB38 8FBE0058 */ lw $s8, 0x0058($sp)
|
||||
/* 0247C 80A0DB3C 03E00008 */ jr $ra
|
||||
/* 02480 80A0DB40 27BD00B0 */ addiu $sp, $sp, 0x00B0 ## $sp = 00000000
|
@ -1,197 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80A0E170
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0E180
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0E190
|
||||
.asciz "../z_en_fd.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80A0DB44
|
||||
/* 02484 80A0DB44 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70
|
||||
/* 02488 80A0DB48 AFB5003C */ sw $s5, 0x003C($sp)
|
||||
/* 0248C 80A0DB4C 00A0A825 */ or $s5, $a1, $zero ## $s5 = 00000000
|
||||
/* 02490 80A0DB50 AFBF004C */ sw $ra, 0x004C($sp)
|
||||
/* 02494 80A0DB54 AFBE0048 */ sw $s8, 0x0048($sp)
|
||||
/* 02498 80A0DB58 AFB70044 */ sw $s7, 0x0044($sp)
|
||||
/* 0249C 80A0DB5C AFB60040 */ sw $s6, 0x0040($sp)
|
||||
/* 024A0 80A0DB60 AFB40038 */ sw $s4, 0x0038($sp)
|
||||
/* 024A4 80A0DB64 AFB30034 */ sw $s3, 0x0034($sp)
|
||||
/* 024A8 80A0DB68 AFB20030 */ sw $s2, 0x0030($sp)
|
||||
/* 024AC 80A0DB6C AFB1002C */ sw $s1, 0x002C($sp)
|
||||
/* 024B0 80A0DB70 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 024B4 80A0DB74 F7B60020 */ sdc1 $f22, 0x0020($sp)
|
||||
/* 024B8 80A0DB78 F7B40018 */ sdc1 $f20, 0x0018($sp)
|
||||
/* 024BC 80A0DB7C AFA40090 */ sw $a0, 0x0090($sp)
|
||||
/* 024C0 80A0DB80 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 024C4 80A0DB84 24900620 */ addiu $s0, $a0, 0x0620 ## $s0 = 00000620
|
||||
/* 024C8 80A0DB88 3C0680A1 */ lui $a2, %hi(D_80A0E170) ## $a2 = 80A10000
|
||||
/* 024CC 80A0DB8C 24C6E170 */ addiu $a2, $a2, %lo(D_80A0E170) ## $a2 = 80A0E170
|
||||
/* 024D0 80A0DB90 27A40074 */ addiu $a0, $sp, 0x0074 ## $a0 = FFFFFFE4
|
||||
/* 024D4 80A0DB94 240707F2 */ addiu $a3, $zero, 0x07F2 ## $a3 = 000007F2
|
||||
/* 024D8 80A0DB98 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 024DC 80A0DB9C 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
|
||||
/* 024E0 80A0DBA0 0000F025 */ or $s8, $zero, $zero ## $s8 = 00000000
|
||||
/* 024E4 80A0DBA4 0C024F61 */ jal func_80093D84
|
||||
/* 024E8 80A0DBA8 8EA40000 */ lw $a0, 0x0000($s5) ## 00000000
|
||||
/* 024EC 80A0DBAC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 024F0 80A0DBB0 4481B000 */ mtc1 $at, $f22 ## $f22 = 1.00
|
||||
/* 024F4 80A0DBB4 3C01437F */ lui $at, 0x437F ## $at = 437F0000
|
||||
/* 024F8 80A0DBB8 4481A000 */ mtc1 $at, $f20 ## $f20 = 255.00
|
||||
/* 024FC 80A0DBBC 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
|
||||
/* 02500 80A0DBC0 3C17DE00 */ lui $s7, 0xDE00 ## $s7 = DE000000
|
||||
.L80A0DBC4:
|
||||
/* 02504 80A0DBC4 920E0000 */ lbu $t6, 0x0000($s0) ## 00000620
|
||||
/* 02508 80A0DBC8 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 0250C 80A0DBCC 3C160600 */ lui $s6, 0x0600 ## $s6 = 06000000
|
||||
/* 02510 80A0DBD0 15C10070 */ bne $t6, $at, .L80A0DD94
|
||||
/* 02514 80A0DBD4 26D67A78 */ addiu $s6, $s6, 0x7A78 ## $s6 = 06007A78
|
||||
/* 02518 80A0DBD8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 0251C 80A0DBDC 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
|
||||
/* 02520 80A0DBE0 17C0000B */ bne $s8, $zero, .L80A0DC10
|
||||
/* 02524 80A0DBE4 02A19821 */ addu $s3, $s5, $at
|
||||
/* 02528 80A0DBE8 3C110600 */ lui $s1, 0x0600 ## $s1 = 06000000
|
||||
/* 0252C 80A0DBEC 263179F8 */ addiu $s1, $s1, 0x79F8 ## $s1 = 060079F8
|
||||
/* 02530 80A0DBF0 8EA40000 */ lw $a0, 0x0000($s5) ## 00000000
|
||||
/* 02534 80A0DBF4 0C024F61 */ jal func_80093D84
|
||||
/* 02538 80A0DBF8 241E0001 */ addiu $s8, $zero, 0x0001 ## $s8 = 00000001
|
||||
/* 0253C 80A0DBFC 8E4202D0 */ lw $v0, 0x02D0($s2) ## 000002D0
|
||||
/* 02540 80A0DC00 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
|
||||
/* 02544 80A0DC04 AE4F02D0 */ sw $t7, 0x02D0($s2) ## 000002D0
|
||||
/* 02548 80A0DC08 AC510004 */ sw $s1, 0x0004($v0) ## 00000004
|
||||
/* 0254C 80A0DC0C AC570000 */ sw $s7, 0x0000($v0) ## 00000000
|
||||
.L80A0DC10:
|
||||
/* 02550 80A0DC10 8E4302D0 */ lw $v1, 0x02D0($s2) ## 000002D0
|
||||
/* 02554 80A0DC14 3C19FA00 */ lui $t9, 0xFA00 ## $t9 = FA000000
|
||||
/* 02558 80A0DC18 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 0255C 80A0DC1C 24780008 */ addiu $t8, $v1, 0x0008 ## $t8 = 00000008
|
||||
/* 02560 80A0DC20 AE5802D0 */ sw $t8, 0x02D0($s2) ## 000002D0
|
||||
/* 02564 80A0DC24 AC790000 */ sw $t9, 0x0000($v1) ## 00000000
|
||||
/* 02568 80A0DC28 9209000C */ lbu $t1, 0x000C($s0) ## 0000062C
|
||||
/* 0256C 80A0DC2C 920C000D */ lbu $t4, 0x000D($s0) ## 0000062D
|
||||
/* 02570 80A0DC30 9218000E */ lbu $t8, 0x000E($s0) ## 0000062E
|
||||
/* 02574 80A0DC34 00095600 */ sll $t2, $t1, 24
|
||||
/* 02578 80A0DC38 9209000F */ lbu $t1, 0x000F($s0) ## 0000062F
|
||||
/* 0257C 80A0DC3C 000C6C00 */ sll $t5, $t4, 16
|
||||
/* 02580 80A0DC40 014D7025 */ or $t6, $t2, $t5 ## $t6 = 00000000
|
||||
/* 02584 80A0DC44 44892000 */ mtc1 $t1, $f4 ## $f4 = 0.00
|
||||
/* 02588 80A0DC48 0018CA00 */ sll $t9, $t8, 8
|
||||
/* 0258C 80A0DC4C 01D94025 */ or $t0, $t6, $t9 ## $t0 = FA000000
|
||||
/* 02590 80A0DC50 8FAB0090 */ lw $t3, 0x0090($sp)
|
||||
/* 02594 80A0DC54 05210005 */ bgez $t1, .L80A0DC6C
|
||||
/* 02598 80A0DC58 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 0259C 80A0DC5C 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 025A0 80A0DC60 44814000 */ mtc1 $at, $f8 ## $f8 = 4294967296.00
|
||||
/* 025A4 80A0DC64 00000000 */ nop
|
||||
/* 025A8 80A0DC68 46083180 */ add.s $f6, $f6, $f8
|
||||
.L80A0DC6C:
|
||||
/* 025AC 80A0DC6C C56A04CC */ lwc1 $f10, 0x04CC($t3) ## 000004CC
|
||||
/* 025B0 80A0DC70 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
|
||||
/* 025B4 80A0DC74 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
|
||||
/* 025B8 80A0DC78 46145403 */ div.s $f16, $f10, $f20
|
||||
/* 025BC 80A0DC7C 46103482 */ mul.s $f18, $f6, $f16
|
||||
/* 025C0 80A0DC80 444CF800 */ cfc1 $t4, $31
|
||||
/* 025C4 80A0DC84 44CAF800 */ ctc1 $t2, $31
|
||||
/* 025C8 80A0DC88 00000000 */ nop
|
||||
/* 025CC 80A0DC8C 46009124 */ cvt.w.s $f4, $f18
|
||||
/* 025D0 80A0DC90 444AF800 */ cfc1 $t2, $31
|
||||
/* 025D4 80A0DC94 00000000 */ nop
|
||||
/* 025D8 80A0DC98 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000
|
||||
/* 025DC 80A0DC9C 51400013 */ beql $t2, $zero, .L80A0DCEC
|
||||
/* 025E0 80A0DCA0 440A2000 */ mfc1 $t2, $f4
|
||||
/* 025E4 80A0DCA4 44812000 */ mtc1 $at, $f4 ## $f4 = 2147483648.00
|
||||
/* 025E8 80A0DCA8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
|
||||
/* 025EC 80A0DCAC 46049101 */ sub.s $f4, $f18, $f4
|
||||
/* 025F0 80A0DCB0 44CAF800 */ ctc1 $t2, $31
|
||||
/* 025F4 80A0DCB4 00000000 */ nop
|
||||
/* 025F8 80A0DCB8 46002124 */ cvt.w.s $f4, $f4
|
||||
/* 025FC 80A0DCBC 444AF800 */ cfc1 $t2, $31
|
||||
/* 02600 80A0DCC0 00000000 */ nop
|
||||
/* 02604 80A0DCC4 314A0078 */ andi $t2, $t2, 0x0078 ## $t2 = 00000000
|
||||
/* 02608 80A0DCC8 15400005 */ bne $t2, $zero, .L80A0DCE0
|
||||
/* 0260C 80A0DCCC 00000000 */ nop
|
||||
/* 02610 80A0DCD0 440A2000 */ mfc1 $t2, $f4
|
||||
/* 02614 80A0DCD4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 02618 80A0DCD8 10000007 */ beq $zero, $zero, .L80A0DCF8
|
||||
/* 0261C 80A0DCDC 01415025 */ or $t2, $t2, $at ## $t2 = 80000000
|
||||
.L80A0DCE0:
|
||||
/* 02620 80A0DCE0 10000005 */ beq $zero, $zero, .L80A0DCF8
|
||||
/* 02624 80A0DCE4 240AFFFF */ addiu $t2, $zero, 0xFFFF ## $t2 = FFFFFFFF
|
||||
/* 02628 80A0DCE8 440A2000 */ mfc1 $t2, $f4
|
||||
.L80A0DCEC:
|
||||
/* 0262C 80A0DCEC 00000000 */ nop
|
||||
/* 02630 80A0DCF0 0540FFFB */ bltz $t2, .L80A0DCE0
|
||||
/* 02634 80A0DCF4 00000000 */ nop
|
||||
.L80A0DCF8:
|
||||
/* 02638 80A0DCF8 314F00FF */ andi $t7, $t2, 0x00FF ## $t7 = 000000FF
|
||||
/* 0263C 80A0DCFC 010FC025 */ or $t8, $t0, $t7 ## $t8 = FA0000FF
|
||||
/* 02640 80A0DD00 AC780004 */ sw $t8, 0x0004($v1) ## 00000004
|
||||
/* 02644 80A0DD04 8E4202D0 */ lw $v0, 0x02D0($s2) ## 000002D0
|
||||
/* 02648 80A0DD08 3C19E700 */ lui $t9, 0xE700 ## $t9 = E7000000
|
||||
/* 0264C 80A0DD0C 44CCF800 */ ctc1 $t4, $31
|
||||
/* 02650 80A0DD10 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 02654 80A0DD14 AE4E02D0 */ sw $t6, 0x02D0($s2) ## 000002D0
|
||||
/* 02658 80A0DD18 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 0265C 80A0DD1C AC590000 */ sw $t9, 0x0000($v0) ## 00000000
|
||||
/* 02660 80A0DD20 8E06001C */ lw $a2, 0x001C($s0) ## 0000063C
|
||||
/* 02664 80A0DD24 C60E0018 */ lwc1 $f14, 0x0018($s0) ## 00000638
|
||||
/* 02668 80A0DD28 0C034261 */ jal Matrix_Translate
|
||||
/* 0266C 80A0DD2C C60C0014 */ lwc1 $f12, 0x0014($s0) ## 00000634
|
||||
/* 02670 80A0DD30 0C0347F5 */ jal func_800D1FD4
|
||||
/* 02674 80A0DD34 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 02678 80A0DD38 C60C0004 */ lwc1 $f12, 0x0004($s0) ## 00000624
|
||||
/* 0267C 80A0DD3C 4406B000 */ mfc1 $a2, $f22
|
||||
/* 02680 80A0DD40 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 02684 80A0DD44 0C0342A3 */ jal Matrix_Scale
|
||||
/* 02688 80A0DD48 46006386 */ mov.s $f14, $f12
|
||||
/* 0268C 80A0DD4C 8E4202D0 */ lw $v0, 0x02D0($s2) ## 000002D0
|
||||
/* 02690 80A0DD50 3C0BDA38 */ lui $t3, 0xDA38 ## $t3 = DA380000
|
||||
/* 02694 80A0DD54 356B0003 */ ori $t3, $t3, 0x0003 ## $t3 = DA380003
|
||||
/* 02698 80A0DD58 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
|
||||
/* 0269C 80A0DD5C AE4902D0 */ sw $t1, 0x02D0($s2) ## 000002D0
|
||||
/* 026A0 80A0DD60 3C0580A1 */ lui $a1, %hi(D_80A0E180) ## $a1 = 80A10000
|
||||
/* 026A4 80A0DD64 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 026A8 80A0DD68 8EA40000 */ lw $a0, 0x0000($s5) ## 00000000
|
||||
/* 026AC 80A0DD6C 24A5E180 */ addiu $a1, $a1, %lo(D_80A0E180) ## $a1 = 80A0E180
|
||||
/* 026B0 80A0DD70 24060810 */ addiu $a2, $zero, 0x0810 ## $a2 = 00000810
|
||||
/* 026B4 80A0DD74 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 026B8 80A0DD78 00408825 */ or $s1, $v0, $zero ## $s1 = 00000000
|
||||
/* 026BC 80A0DD7C AE220004 */ sw $v0, 0x0004($s1) ## 00000004
|
||||
/* 026C0 80A0DD80 8E4202D0 */ lw $v0, 0x02D0($s2) ## 000002D0
|
||||
/* 026C4 80A0DD84 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 026C8 80A0DD88 AE4C02D0 */ sw $t4, 0x02D0($s2) ## 000002D0
|
||||
/* 026CC 80A0DD8C AC560004 */ sw $s6, 0x0004($v0) ## 00000004
|
||||
/* 026D0 80A0DD90 AC570000 */ sw $s7, 0x0000($v0) ## 00000000
|
||||
.L80A0DD94:
|
||||
/* 026D4 80A0DD94 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
|
||||
/* 026D8 80A0DD98 0014A400 */ sll $s4, $s4, 16
|
||||
/* 026DC 80A0DD9C 0014A403 */ sra $s4, $s4, 16
|
||||
/* 026E0 80A0DDA0 2A8100C8 */ slti $at, $s4, 0x00C8
|
||||
/* 026E4 80A0DDA4 1420FF87 */ bne $at, $zero, .L80A0DBC4
|
||||
/* 026E8 80A0DDA8 26100038 */ addiu $s0, $s0, 0x0038 ## $s0 = 00000658
|
||||
/* 026EC 80A0DDAC 3C0680A1 */ lui $a2, %hi(D_80A0E190) ## $a2 = 80A10000
|
||||
/* 026F0 80A0DDB0 24C6E190 */ addiu $a2, $a2, %lo(D_80A0E190) ## $a2 = 80A0E190
|
||||
/* 026F4 80A0DDB4 27A40074 */ addiu $a0, $sp, 0x0074 ## $a0 = FFFFFFE4
|
||||
/* 026F8 80A0DDB8 8EA50000 */ lw $a1, 0x0000($s5) ## 00000000
|
||||
/* 026FC 80A0DDBC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 02700 80A0DDC0 24070817 */ addiu $a3, $zero, 0x0817 ## $a3 = 00000817
|
||||
/* 02704 80A0DDC4 8FBF004C */ lw $ra, 0x004C($sp)
|
||||
/* 02708 80A0DDC8 D7B40018 */ ldc1 $f20, 0x0018($sp)
|
||||
/* 0270C 80A0DDCC D7B60020 */ ldc1 $f22, 0x0020($sp)
|
||||
/* 02710 80A0DDD0 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 02714 80A0DDD4 8FB1002C */ lw $s1, 0x002C($sp)
|
||||
/* 02718 80A0DDD8 8FB20030 */ lw $s2, 0x0030($sp)
|
||||
/* 0271C 80A0DDDC 8FB30034 */ lw $s3, 0x0034($sp)
|
||||
/* 02720 80A0DDE0 8FB40038 */ lw $s4, 0x0038($sp)
|
||||
/* 02724 80A0DDE4 8FB5003C */ lw $s5, 0x003C($sp)
|
||||
/* 02728 80A0DDE8 8FB60040 */ lw $s6, 0x0040($sp)
|
||||
/* 0272C 80A0DDEC 8FB70044 */ lw $s7, 0x0044($sp)
|
||||
/* 02730 80A0DDF0 8FBE0048 */ lw $s8, 0x0048($sp)
|
||||
/* 02734 80A0DDF4 03E00008 */ jr $ra
|
||||
/* 02738 80A0DDF8 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000
|
||||
/* 0273C 80A0DDFC 00000000 */ nop
|
@ -1,12 +0,0 @@
|
||||
glabel EnFdFire_Destroy
|
||||
/* 00234 80A0E6E4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00238 80A0E6E8 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 0023C 80A0E6EC AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00240 80A0E6F0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00244 80A0E6F4 0C0170EB */ jal Collider_DestroyCylinder
|
||||
|
||||
/* 00248 80A0E6F8 24C50150 */ addiu $a1, $a2, 0x0150 ## $a1 = 00000150
|
||||
/* 0024C 80A0E6FC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00250 80A0E700 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00254 80A0E704 03E00008 */ jr $ra
|
||||
/* 00258 80A0E708 00000000 */ nop
|
@ -1,303 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80A0F0F0
|
||||
.asciz "../z_en_fd_fire.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0F104
|
||||
.asciz "../z_en_fd_fire.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A0F118
|
||||
.asciz "../z_en_fd_fire.c"
|
||||
.balign 4
|
||||
|
||||
.late_rodata
|
||||
glabel D_80A0F138
|
||||
.float 9.58738019108e-05
|
||||
|
||||
glabel D_80A0F13C
|
||||
.word 0x3C8EFA35
|
||||
glabel D_80A0F140
|
||||
.float 0.001
|
||||
|
||||
glabel D_80A0F144
|
||||
.float 0.1
|
||||
|
||||
glabel D_80A0F148
|
||||
.word 0xBE199999, 0x00000000
|
||||
|
||||
.text
|
||||
glabel EnFdFire_Draw
|
||||
/* 00730 80A0EBE0 27BDFF40 */ addiu $sp, $sp, 0xFF40 ## $sp = FFFFFF40
|
||||
/* 00734 80A0EBE4 3C0F80A1 */ lui $t7, %hi(D_80A0F0C4) ## $t7 = 80A10000
|
||||
/* 00738 80A0EBE8 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 0073C 80A0EBEC AFB10038 */ sw $s1, 0x0038($sp)
|
||||
/* 00740 80A0EBF0 AFB00034 */ sw $s0, 0x0034($sp)
|
||||
/* 00744 80A0EBF4 AFA400C0 */ sw $a0, 0x00C0($sp)
|
||||
/* 00748 80A0EBF8 25EFF0C4 */ addiu $t7, $t7, %lo(D_80A0F0C4) ## $t7 = 80A0F0C4
|
||||
/* 0074C 80A0EBFC 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0F0C4
|
||||
/* 00750 80A0EC00 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0F0C8
|
||||
/* 00754 80A0EC04 27AE00B8 */ addiu $t6, $sp, 0x00B8 ## $t6 = FFFFFFF8
|
||||
/* 00758 80A0EC08 3C0980A1 */ lui $t1, %hi(D_80A0F0CC) ## $t1 = 80A10000
|
||||
/* 0075C 80A0EC0C 2529F0CC */ addiu $t1, $t1, %lo(D_80A0F0CC) ## $t1 = 80A0F0CC
|
||||
/* 00760 80A0EC10 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF8
|
||||
/* 00764 80A0EC14 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFFC
|
||||
/* 00768 80A0EC18 8D2A0004 */ lw $t2, 0x0004($t1) ## 80A0F0D0
|
||||
/* 0076C 80A0EC1C 8D2B0000 */ lw $t3, 0x0000($t1) ## 80A0F0CC
|
||||
/* 00770 80A0EC20 27A800B0 */ addiu $t0, $sp, 0x00B0 ## $t0 = FFFFFFF0
|
||||
/* 00774 80A0EC24 3C0D80A1 */ lui $t5, %hi(D_80A0F0D4) ## $t5 = 80A10000
|
||||
/* 00778 80A0EC28 25ADF0D4 */ addiu $t5, $t5, %lo(D_80A0F0D4) ## $t5 = 80A0F0D4
|
||||
/* 0077C 80A0EC2C AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFF4
|
||||
/* 00780 80A0EC30 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFF0
|
||||
/* 00784 80A0EC34 8DAF0000 */ lw $t7, 0x0000($t5) ## 80A0F0D4
|
||||
/* 00788 80A0EC38 27AC009C */ addiu $t4, $sp, 0x009C ## $t4 = FFFFFFDC
|
||||
/* 0078C 80A0EC3C 8DAE0004 */ lw $t6, 0x0004($t5) ## 80A0F0D8
|
||||
/* 00790 80A0EC40 AD8F0000 */ sw $t7, 0x0000($t4) ## FFFFFFDC
|
||||
/* 00794 80A0EC44 8DAF0008 */ lw $t7, 0x0008($t5) ## 80A0F0DC
|
||||
/* 00798 80A0EC48 3C1980A1 */ lui $t9, %hi(D_80A0F0E0) ## $t9 = 80A10000
|
||||
/* 0079C 80A0EC4C 2739F0E0 */ addiu $t9, $t9, %lo(D_80A0F0E0) ## $t9 = 80A0F0E0
|
||||
/* 007A0 80A0EC50 AD8E0004 */ sw $t6, 0x0004($t4) ## FFFFFFE0
|
||||
/* 007A4 80A0EC54 AD8F0008 */ sw $t7, 0x0008($t4) ## FFFFFFE4
|
||||
/* 007A8 80A0EC58 8F290000 */ lw $t1, 0x0000($t9) ## 80A0F0E0
|
||||
/* 007AC 80A0EC5C 27B80090 */ addiu $t8, $sp, 0x0090 ## $t8 = FFFFFFD0
|
||||
/* 007B0 80A0EC60 8F280004 */ lw $t0, 0x0004($t9) ## 80A0F0E4
|
||||
/* 007B4 80A0EC64 AF090000 */ sw $t1, 0x0000($t8) ## FFFFFFD0
|
||||
/* 007B8 80A0EC68 8F290008 */ lw $t1, 0x0008($t9) ## 80A0F0E8
|
||||
/* 007BC 80A0EC6C 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 007C0 80A0EC70 AF080004 */ sw $t0, 0x0004($t8) ## FFFFFFD4
|
||||
/* 007C4 80A0EC74 AF090008 */ sw $t1, 0x0008($t8) ## FFFFFFD8
|
||||
/* 007C8 80A0EC78 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 007CC 80A0EC7C 3C0680A1 */ lui $a2, %hi(D_80A0F0F0) ## $a2 = 80A10000
|
||||
/* 007D0 80A0EC80 24C6F0F0 */ addiu $a2, $a2, %lo(D_80A0F0F0) ## $a2 = 80A0F0F0
|
||||
/* 007D4 80A0EC84 27A4006C */ addiu $a0, $sp, 0x006C ## $a0 = FFFFFFAC
|
||||
/* 007D8 80A0EC88 2407023C */ addiu $a3, $zero, 0x023C ## $a3 = 0000023C
|
||||
/* 007DC 80A0EC8C 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 007E0 80A0EC90 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 007E4 80A0EC94 8FA200C0 */ lw $v0, 0x00C0($sp)
|
||||
/* 007E8 80A0EC98 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 007EC 80A0EC9C C44C0024 */ lwc1 $f12, 0x0024($v0) ## 00000024
|
||||
/* 007F0 80A0ECA0 C44E0028 */ lwc1 $f14, 0x0028($v0) ## 00000028
|
||||
/* 007F4 80A0ECA4 0C034261 */ jal Matrix_Translate
|
||||
/* 007F8 80A0ECA8 8C46002C */ lw $a2, 0x002C($v0) ## 0000002C
|
||||
/* 007FC 80A0ECAC 8FA500C0 */ lw $a1, 0x00C0($sp)
|
||||
/* 00800 80A0ECB0 27A4009C */ addiu $a0, $sp, 0x009C ## $a0 = FFFFFFDC
|
||||
/* 00804 80A0ECB4 24A5005C */ addiu $a1, $a1, 0x005C ## $a1 = 0000005C
|
||||
/* 00808 80A0ECB8 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 0080C 80A0ECBC AFA50048 */ sw $a1, 0x0048($sp)
|
||||
/* 00810 80A0ECC0 A7A20052 */ sh $v0, 0x0052($sp)
|
||||
/* 00814 80A0ECC4 862A07A0 */ lh $t2, 0x07A0($s1) ## 000007A0
|
||||
/* 00818 80A0ECC8 000A5880 */ sll $t3, $t2, 2
|
||||
/* 0081C 80A0ECCC 022B6021 */ addu $t4, $s1, $t3
|
||||
/* 00820 80A0ECD0 0C016A7D */ jal func_8005A9F4
|
||||
/* 00824 80A0ECD4 8D840790 */ lw $a0, 0x0790($t4) ## 00000790
|
||||
/* 00828 80A0ECD8 87AD0052 */ lh $t5, 0x0052($sp)
|
||||
/* 0082C 80A0ECDC 01A21823 */ subu $v1, $t5, $v0
|
||||
/* 00830 80A0ECE0 00032400 */ sll $a0, $v1, 16
|
||||
/* 00834 80A0ECE4 A7A3008E */ sh $v1, 0x008E($sp)
|
||||
/* 00838 80A0ECE8 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 0083C 80A0ECEC 00042403 */ sra $a0, $a0, 16
|
||||
/* 00840 80A0ECF0 46000005 */ abs.s $f0, $f0
|
||||
/* 00844 80A0ECF4 87A4008E */ lh $a0, 0x008E($sp)
|
||||
/* 00848 80A0ECF8 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 0084C 80A0ECFC E7A00084 */ swc1 $f0, 0x0084($sp)
|
||||
/* 00850 80A0ED00 E7A00088 */ swc1 $f0, 0x0088($sp)
|
||||
/* 00854 80A0ED04 27A4009C */ addiu $a0, $sp, 0x009C ## $a0 = FFFFFFDC
|
||||
/* 00858 80A0ED08 0C01E00A */ jal Math_Vec3f_DistXZ
|
||||
|
||||
/* 0085C 80A0ED0C 8FA50048 */ lw $a1, 0x0048($sp)
|
||||
/* 00860 80A0ED10 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
|
||||
/* 00864 80A0ED14 44812000 */ mtc1 $at, $f4 ## $f4 = 1.50
|
||||
/* 00868 80A0ED18 00000000 */ nop
|
||||
/* 0086C 80A0ED1C 46040183 */ div.s $f6, $f0, $f4
|
||||
/* 00870 80A0ED20 E7A60080 */ swc1 $f6, 0x0080($sp)
|
||||
/* 00874 80A0ED24 862E07A0 */ lh $t6, 0x07A0($s1) ## 000007A0
|
||||
/* 00878 80A0ED28 000E7880 */ sll $t7, $t6, 2
|
||||
/* 0087C 80A0ED2C 022FC021 */ addu $t8, $s1, $t7
|
||||
/* 00880 80A0ED30 0C016A7D */ jal func_8005A9F4
|
||||
/* 00884 80A0ED34 8F040790 */ lw $a0, 0x0790($t8) ## 00000790
|
||||
/* 00888 80A0ED38 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
|
||||
/* 0088C 80A0ED3C 0041C821 */ addu $t9, $v0, $at
|
||||
/* 00890 80A0ED40 00194400 */ sll $t0, $t9, 16
|
||||
/* 00894 80A0ED44 00084C03 */ sra $t1, $t0, 16
|
||||
/* 00898 80A0ED48 44894000 */ mtc1 $t1, $f8 ## $f8 = 0.00
|
||||
/* 0089C 80A0ED4C 3C0180A1 */ lui $at, %hi(D_80A0F138) ## $at = 80A10000
|
||||
/* 008A0 80A0ED50 C430F138 */ lwc1 $f16, %lo(D_80A0F138)($at)
|
||||
/* 008A4 80A0ED54 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 008A8 80A0ED58 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 008AC 80A0ED5C 46105302 */ mul.s $f12, $f10, $f16
|
||||
/* 008B0 80A0ED60 0C034348 */ jal Matrix_RotateY
|
||||
/* 008B4 80A0ED64 00000000 */ nop
|
||||
/* 008B8 80A0ED68 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
|
||||
/* 008BC 80A0ED6C 44812000 */ mtc1 $at, $f4 ## $f4 = -10.00
|
||||
/* 008C0 80A0ED70 C7B20088 */ lwc1 $f18, 0x0088($sp)
|
||||
/* 008C4 80A0ED74 C7A80080 */ lwc1 $f8, 0x0080($sp)
|
||||
/* 008C8 80A0ED78 3C0180A1 */ lui $at, %hi(D_80A0F13C) ## $at = 80A10000
|
||||
/* 008CC 80A0ED7C 46049182 */ mul.s $f6, $f18, $f4
|
||||
/* 008D0 80A0ED80 C430F13C */ lwc1 $f16, %lo(D_80A0F13C)($at)
|
||||
/* 008D4 80A0ED84 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 008D8 80A0ED88 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 008DC 80A0ED8C 00000000 */ nop
|
||||
/* 008E0 80A0ED90 46105302 */ mul.s $f12, $f10, $f16
|
||||
/* 008E4 80A0ED94 0C0343B5 */ jal Matrix_RotateZ
|
||||
/* 008E8 80A0ED98 00000000 */ nop
|
||||
/* 008EC 80A0ED9C 8FAA00C0 */ lw $t2, 0x00C0($sp)
|
||||
/* 008F0 80A0EDA0 3C0180A1 */ lui $at, %hi(D_80A0F140) ## $at = 80A10000
|
||||
/* 008F4 80A0EDA4 C424F140 */ lwc1 $f4, %lo(D_80A0F140)($at)
|
||||
/* 008F8 80A0EDA8 C55201A0 */ lwc1 $f18, 0x01A0($t2) ## 000001A0
|
||||
/* 008FC 80A0EDAC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 00900 80A0EDB0 46049382 */ mul.s $f14, $f18, $f4
|
||||
/* 00904 80A0EDB4 44067000 */ mfc1 $a2, $f14
|
||||
/* 00908 80A0EDB8 E7AE00A4 */ swc1 $f14, 0x00A4($sp)
|
||||
/* 0090C 80A0EDBC E7AE00A0 */ swc1 $f14, 0x00A0($sp)
|
||||
/* 00910 80A0EDC0 E7AE009C */ swc1 $f14, 0x009C($sp)
|
||||
/* 00914 80A0EDC4 0C0342A3 */ jal Matrix_Scale
|
||||
/* 00918 80A0EDC8 46007306 */ mov.s $f12, $f14
|
||||
/* 0091C 80A0EDCC 3C0180A1 */ lui $at, %hi(D_80A0F144) ## $at = 80A10000
|
||||
/* 00920 80A0EDD0 C420F144 */ lwc1 $f0, %lo(D_80A0F144)($at)
|
||||
/* 00924 80A0EDD4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 00928 80A0EDD8 44816000 */ mtc1 $at, $f12 ## $f12 = 1.00
|
||||
/* 0092C 80A0EDDC 3C0180A1 */ lui $at, %hi(D_80A0F148) ## $at = 80A10000
|
||||
/* 00930 80A0EDE0 C7A20084 */ lwc1 $f2, 0x0084($sp)
|
||||
/* 00934 80A0EDE4 C428F148 */ lwc1 $f8, %lo(D_80A0F148)($at)
|
||||
/* 00938 80A0EDE8 C7B00080 */ lwc1 $f16, 0x0080($sp)
|
||||
/* 0093C 80A0EDEC 46024282 */ mul.s $f10, $f8, $f2
|
||||
/* 00940 80A0EDF0 00000000 */ nop
|
||||
/* 00944 80A0EDF4 46105482 */ mul.s $f18, $f10, $f16
|
||||
/* 00948 80A0EDF8 460C9080 */ add.s $f2, $f18, $f12
|
||||
/* 0094C 80A0EDFC 4600103C */ c.lt.s $f2, $f0
|
||||
/* 00950 80A0EE00 E7A20084 */ swc1 $f2, 0x0084($sp)
|
||||
/* 00954 80A0EE04 45000002 */ bc1f .L80A0EE10
|
||||
/* 00958 80A0EE08 00000000 */ nop
|
||||
/* 0095C 80A0EE0C E7A00084 */ swc1 $f0, 0x0084($sp)
|
||||
.L80A0EE10:
|
||||
/* 00960 80A0EE10 C7AE0084 */ lwc1 $f14, 0x0084($sp)
|
||||
/* 00964 80A0EE14 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 00968 80A0EE18 460E6103 */ div.s $f4, $f12, $f14
|
||||
/* 0096C 80A0EE1C 44062000 */ mfc1 $a2, $f4
|
||||
/* 00970 80A0EE20 0C0342A3 */ jal Matrix_Scale
|
||||
/* 00974 80A0EE24 00000000 */ nop
|
||||
/* 00978 80A0EE28 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 0097C 80A0EE2C 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000
|
||||
/* 00980 80A0EE30 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003
|
||||
/* 00984 80A0EE34 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
|
||||
/* 00988 80A0EE38 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
|
||||
/* 0098C 80A0EE3C AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
|
||||
/* 00990 80A0EE40 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 00994 80A0EE44 3C0580A1 */ lui $a1, %hi(D_80A0F104) ## $a1 = 80A10000
|
||||
/* 00998 80A0EE48 24A5F104 */ addiu $a1, $a1, %lo(D_80A0F104) ## $a1 = 80A0F104
|
||||
/* 0099C 80A0EE4C 2406026F */ addiu $a2, $zero, 0x026F ## $a2 = 0000026F
|
||||
/* 009A0 80A0EE50 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 009A4 80A0EE54 AFA20068 */ sw $v0, 0x0068($sp)
|
||||
/* 009A8 80A0EE58 8FA30068 */ lw $v1, 0x0068($sp)
|
||||
/* 009AC 80A0EE5C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 009B0 80A0EE60 0C024F61 */ jal func_80093D84
|
||||
/* 009B4 80A0EE64 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 009B8 80A0EE68 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 009BC 80A0EE6C 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
|
||||
/* 009C0 80A0EE70 35CE0020 */ ori $t6, $t6, 0x0020 ## $t6 = DB060020
|
||||
/* 009C4 80A0EE74 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 009C8 80A0EE78 AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
|
||||
/* 009CC 80A0EE7C AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 009D0 80A0EE80 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 009D4 80A0EE84 8FA900C0 */ lw $t1, 0x00C0($sp)
|
||||
/* 009D8 80A0EE88 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
|
||||
/* 009DC 80A0EE8C 24180040 */ addiu $t8, $zero, 0x0040 ## $t8 = 00000040
|
||||
/* 009E0 80A0EE90 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
|
||||
/* 009E4 80A0EE94 AFB90018 */ sw $t9, 0x0018($sp)
|
||||
/* 009E8 80A0EE98 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 009EC 80A0EE9C AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 009F0 80A0EEA0 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 009F4 80A0EEA4 8E28009C */ lw $t0, 0x009C($s1) ## 0000009C
|
||||
/* 009F8 80A0EEA8 852A01A8 */ lh $t2, 0x01A8($t1) ## 000001A8
|
||||
/* 009FC 80A0EEAC 240D0080 */ addiu $t5, $zero, 0x0080 ## $t5 = 00000080
|
||||
/* 00A00 80A0EEB0 240C0020 */ addiu $t4, $zero, 0x0020 ## $t4 = 00000020
|
||||
/* 00A04 80A0EEB4 010A0019 */ multu $t0, $t2
|
||||
/* 00A08 80A0EEB8 AFAC0024 */ sw $t4, 0x0024($sp)
|
||||
/* 00A0C 80A0EEBC AFAD0028 */ sw $t5, 0x0028($sp)
|
||||
/* 00A10 80A0EEC0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00A14 80A0EEC4 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 00A18 80A0EEC8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00A1C 80A0EECC AFA20064 */ sw $v0, 0x0064($sp)
|
||||
/* 00A20 80A0EED0 00005812 */ mflo $t3
|
||||
/* 00A24 80A0EED4 AFAB0020 */ sw $t3, 0x0020($sp)
|
||||
/* 00A28 80A0EED8 0C0253D0 */ jal Gfx_TwoTexScroll
|
||||
/* 00A2C 80A0EEDC 00000000 */ nop
|
||||
/* 00A30 80A0EEE0 8FA30064 */ lw $v1, 0x0064($sp)
|
||||
/* 00A34 80A0EEE4 3C0FFA00 */ lui $t7, 0xFA00 ## $t7 = FA000000
|
||||
/* 00A38 80A0EEE8 35EF8080 */ ori $t7, $t7, 0x8080 ## $t7 = FA008080
|
||||
/* 00A3C 80A0EEEC AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 00A40 80A0EEF0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 00A44 80A0EEF4 27AB00B8 */ addiu $t3, $sp, 0x00B8 ## $t3 = FFFFFFF8
|
||||
/* 00A48 80A0EEF8 3C0680A1 */ lui $a2, %hi(D_80A0F118) ## $a2 = 80A10000
|
||||
/* 00A4C 80A0EEFC 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 00A50 80A0EF00 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
|
||||
/* 00A54 80A0EF04 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
|
||||
/* 00A58 80A0EF08 8FB800C0 */ lw $t8, 0x00C0($sp)
|
||||
/* 00A5C 80A0EF0C 24C6F118 */ addiu $a2, $a2, %lo(D_80A0F118) ## $a2 = 80A0F118
|
||||
/* 00A60 80A0EF10 27A4006C */ addiu $a0, $sp, 0x006C ## $a0 = FFFFFFAC
|
||||
/* 00A64 80A0EF14 8719001C */ lh $t9, 0x001C($t8) ## 0000001C
|
||||
/* 00A68 80A0EF18 240702A0 */ addiu $a3, $zero, 0x02A0 ## $a3 = 000002A0
|
||||
/* 00A6C 80A0EF1C 33298000 */ andi $t1, $t9, 0x8000 ## $t1 = 00000000
|
||||
/* 00A70 80A0EF20 000943C3 */ sra $t0, $t1, 15
|
||||
/* 00A74 80A0EF24 00085080 */ sll $t2, $t0, 2
|
||||
/* 00A78 80A0EF28 014B1821 */ addu $v1, $t2, $t3
|
||||
/* 00A7C 80A0EF2C 906F0000 */ lbu $t7, 0x0000($v1) ## 00000000
|
||||
/* 00A80 80A0EF30 906D0003 */ lbu $t5, 0x0003($v1) ## 00000003
|
||||
/* 00A84 80A0EF34 90680001 */ lbu $t0, 0x0001($v1) ## 00000001
|
||||
/* 00A88 80A0EF38 906E0002 */ lbu $t6, 0x0002($v1) ## 00000002
|
||||
/* 00A8C 80A0EF3C 000FC600 */ sll $t8, $t7, 24
|
||||
/* 00A90 80A0EF40 01B8C825 */ or $t9, $t5, $t8 ## $t9 = 00000000
|
||||
/* 00A94 80A0EF44 00085400 */ sll $t2, $t0, 16
|
||||
/* 00A98 80A0EF48 032A5825 */ or $t3, $t9, $t2 ## $t3 = 00000000
|
||||
/* 00A9C 80A0EF4C 000E7A00 */ sll $t7, $t6, 8
|
||||
/* 00AA0 80A0EF50 016F6825 */ or $t5, $t3, $t7 ## $t5 = FA008080
|
||||
/* 00AA4 80A0EF54 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
|
||||
/* 00AA8 80A0EF58 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 00AAC 80A0EF5C 3C09FB00 */ lui $t1, 0xFB00 ## $t1 = FB000000
|
||||
/* 00AB0 80A0EF60 27AB00B0 */ addiu $t3, $sp, 0x00B0 ## $t3 = FFFFFFF0
|
||||
/* 00AB4 80A0EF64 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
|
||||
/* 00AB8 80A0EF68 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
|
||||
/* 00ABC 80A0EF6C AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
/* 00AC0 80A0EF70 8FA800C0 */ lw $t0, 0x00C0($sp)
|
||||
/* 00AC4 80A0EF74 8519001C */ lh $t9, 0x001C($t0) ## 0000001C
|
||||
/* 00AC8 80A0EF78 332A8000 */ andi $t2, $t9, 0x8000 ## $t2 = 00000000
|
||||
/* 00ACC 80A0EF7C 000A63C3 */ sra $t4, $t2, 15
|
||||
/* 00AD0 80A0EF80 000C7080 */ sll $t6, $t4, 2
|
||||
/* 00AD4 80A0EF84 01CB1821 */ addu $v1, $t6, $t3
|
||||
/* 00AD8 80A0EF88 90690000 */ lbu $t1, 0x0000($v1) ## 00000000
|
||||
/* 00ADC 80A0EF8C 906D0003 */ lbu $t5, 0x0003($v1) ## 00000003
|
||||
/* 00AE0 80A0EF90 906C0001 */ lbu $t4, 0x0001($v1) ## 00000001
|
||||
/* 00AE4 80A0EF94 90780002 */ lbu $t8, 0x0002($v1) ## 00000002
|
||||
/* 00AE8 80A0EF98 00094600 */ sll $t0, $t1, 24
|
||||
/* 00AEC 80A0EF9C 01A8C825 */ or $t9, $t5, $t0 ## $t9 = FA008080
|
||||
/* 00AF0 80A0EFA0 000C7400 */ sll $t6, $t4, 16
|
||||
/* 00AF4 80A0EFA4 032E5825 */ or $t3, $t9, $t6 ## $t3 = FA008088
|
||||
/* 00AF8 80A0EFA8 00184A00 */ sll $t1, $t8, 8
|
||||
/* 00AFC 80A0EFAC 01696825 */ or $t5, $t3, $t1 ## $t5 = FB008088
|
||||
/* 00B00 80A0EFB0 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
|
||||
/* 00B04 80A0EFB4 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 00B08 80A0EFB8 3C0AE700 */ lui $t2, 0xE700 ## $t2 = E7000000
|
||||
/* 00B0C 80A0EFBC 3C0E0405 */ lui $t6, 0x0405 ## $t6 = 04050000
|
||||
/* 00B10 80A0EFC0 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
|
||||
/* 00B14 80A0EFC4 AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
|
||||
/* 00B18 80A0EFC8 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 00B1C 80A0EFCC AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 00B20 80A0EFD0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 00B24 80A0EFD4 25CED4E0 */ addiu $t6, $t6, 0xD4E0 ## $t6 = 0404D4E0
|
||||
/* 00B28 80A0EFD8 3C19DE00 */ lui $t9, 0xDE00 ## $t9 = DE000000
|
||||
/* 00B2C 80A0EFDC 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 00B30 80A0EFE0 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
|
||||
/* 00B34 80A0EFE4 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
|
||||
/* 00B38 80A0EFE8 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
|
||||
/* 00B3C 80A0EFEC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 00B40 80A0EFF0 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 00B44 80A0EFF4 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 00B48 80A0EFF8 8FB00034 */ lw $s0, 0x0034($sp)
|
||||
/* 00B4C 80A0EFFC 8FB10038 */ lw $s1, 0x0038($sp)
|
||||
/* 00B50 80A0F000 03E00008 */ jr $ra
|
||||
/* 00B54 80A0F004 27BD00C0 */ addiu $sp, $sp, 0x00C0 ## $sp = 00000000
|
||||
/* 00B58 80A0F008 00000000 */ nop
|
||||
/* 00B5C 80A0F00C 00000000 */ nop
|
@ -1,77 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0F12C
|
||||
.word 0xBF19999A
|
||||
|
||||
.text
|
||||
glabel EnFdFire_Init
|
||||
/* 0012C 80A0E5DC 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 00130 80A0E5E0 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00134 80A0E5E4 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00138 80A0E5E8 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 0013C 80A0E5EC 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44
|
||||
/* 00140 80A0E5F0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00144 80A0E5F4 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
|
||||
/* 00148 80A0E5F8 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
|
||||
/* 0014C 80A0E5FC 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00150 80A0E600 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
|
||||
/* 00154 80A0E604 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
|
||||
/* 00158 80A0E608 0C00AC78 */ jal ActorShape_Init
|
||||
|
||||
/* 0015C 80A0E60C AFAF0024 */ sw $t7, 0x0024($sp)
|
||||
/* 00160 80A0E610 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
|
||||
/* 00164 80A0E614 AFA50020 */ sw $a1, 0x0020($sp)
|
||||
/* 00168 80A0E618 0C0170D9 */ jal Collider_InitCylinder
|
||||
|
||||
/* 0016C 80A0E61C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 00170 80A0E620 3C0780A1 */ lui $a3, %hi(D_80A0F030) ## $a3 = 80A10000
|
||||
/* 00174 80A0E624 8FA50020 */ lw $a1, 0x0020($sp)
|
||||
/* 00178 80A0E628 24E7F030 */ addiu $a3, $a3, %lo(D_80A0F030) ## $a3 = 80A0F030
|
||||
/* 0017C 80A0E62C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 00180 80A0E630 0C01712B */ jal Collider_SetCylinder
|
||||
|
||||
/* 00184 80A0E634 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00188 80A0E638 3C0580A1 */ lui $a1, %hi(D_80A0F068) ## $a1 = 80A10000
|
||||
/* 0018C 80A0E63C 3C0680A1 */ lui $a2, %hi(D_80A0F05C) ## $a2 = 80A10000
|
||||
/* 00190 80A0E640 24C6F05C */ addiu $a2, $a2, %lo(D_80A0F05C) ## $a2 = 80A0F05C
|
||||
/* 00194 80A0E644 24A5F068 */ addiu $a1, $a1, %lo(D_80A0F068) ## $a1 = 80A0F068
|
||||
/* 00198 80A0E648 0C0187BF */ jal func_80061EFC
|
||||
/* 0019C 80A0E64C 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
|
||||
/* 001A0 80A0E650 8E180004 */ lw $t8, 0x0004($s0) ## 00000004
|
||||
/* 001A4 80A0E654 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
|
||||
/* 001A8 80A0E658 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 001AC 80A0E65C 0301C824 */ and $t9, $t8, $at
|
||||
/* 001B0 80A0E660 AE190004 */ sw $t9, 0x0004($s0) ## 00000004
|
||||
/* 001B4 80A0E664 3C0180A1 */ lui $at, %hi(D_80A0F12C) ## $at = 80A10000
|
||||
/* 001B8 80A0E668 C424F12C */ lwc1 $f4, %lo(D_80A0F12C)($at)
|
||||
/* 001BC 80A0E66C 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
|
||||
/* 001C0 80A0E670 44813000 */ mtc1 $at, $f6 ## $f6 = 5.00
|
||||
/* 001C4 80A0E674 3C014140 */ lui $at, 0x4140 ## $at = 41400000
|
||||
/* 001C8 80A0E678 44814000 */ mtc1 $at, $f8 ## $f8 = 12.00
|
||||
/* 001CC 80A0E67C E604006C */ swc1 $f4, 0x006C($s0) ## 0000006C
|
||||
/* 001D0 80A0E680 E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
|
||||
/* 001D4 80A0E684 E6080060 */ swc1 $f8, 0x0060($s0) ## 00000060
|
||||
/* 001D8 80A0E688 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 001DC 80A0E68C 0C01DFE4 */ jal Math_Vec3f_DistXYZ
|
||||
|
||||
/* 001E0 80A0E690 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 001E4 80A0E694 3C014040 */ lui $at, 0x4040 ## $at = 40400000
|
||||
/* 001E8 80A0E698 44815000 */ mtc1 $at, $f10 ## $f10 = 3.00
|
||||
/* 001EC 80A0E69C 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
|
||||
/* 001F0 80A0E6A0 44816000 */ mtc1 $at, $f12 ## $f12 = 5.00
|
||||
/* 001F4 80A0E6A4 E600019C */ swc1 $f0, 0x019C($s0) ## 0000019C
|
||||
/* 001F8 80A0E6A8 0C00CFBE */ jal Math_Rand_ZeroFloat
|
||||
|
||||
/* 001FC 80A0E6AC E60A01A0 */ swc1 $f10, 0x01A0($s0) ## 000001A0
|
||||
/* 00200 80A0E6B0 4600040D */ trunc.w.s $f16, $f0
|
||||
/* 00204 80A0E6B4 3C0D80A1 */ lui $t5, %hi(func_80A0E70C) ## $t5 = 80A10000
|
||||
/* 00208 80A0E6B8 25ADE70C */ addiu $t5, $t5, %lo(func_80A0E70C) ## $t5 = 80A0E70C
|
||||
/* 0020C 80A0E6BC AE0D014C */ sw $t5, 0x014C($s0) ## 0000014C
|
||||
/* 00210 80A0E6C0 440B8000 */ mfc1 $t3, $f16
|
||||
/* 00214 80A0E6C4 00000000 */ nop
|
||||
/* 00218 80A0E6C8 256CFFE7 */ addiu $t4, $t3, 0xFFE7 ## $t4 = FFFFFFE7
|
||||
/* 0021C 80A0E6CC A60C01A8 */ sh $t4, 0x01A8($s0) ## 000001A8
|
||||
/* 00220 80A0E6D0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00224 80A0E6D4 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00228 80A0E6D8 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 0022C 80A0E6DC 03E00008 */ jr $ra
|
||||
/* 00230 80A0E6E0 00000000 */ nop
|
@ -1,69 +0,0 @@
|
||||
glabel EnFdFire_Update
|
||||
/* 00638 80A0EAE8 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 0063C 80A0EAEC 3C0E80A1 */ lui $t6, %hi(func_80A0EA34) ## $t6 = 80A10000
|
||||
/* 00640 80A0EAF0 25CEEA34 */ addiu $t6, $t6, %lo(func_80A0EA34) ## $t6 = 80A0EA34
|
||||
/* 00644 80A0EAF4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00648 80A0EAF8 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 0064C 80A0EAFC AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00650 80A0EB00 AFAE002C */ sw $t6, 0x002C($sp)
|
||||
/* 00654 80A0EB04 8C8F014C */ lw $t7, 0x014C($a0) ## 0000014C
|
||||
/* 00658 80A0EB08 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0065C 80A0EB0C 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00660 80A0EB10 11CF000B */ beq $t6, $t7, .L80A0EB40
|
||||
/* 00664 80A0EB14 00000000 */ nop
|
||||
/* 00668 80A0EB18 8C980118 */ lw $t8, 0x0118($a0) ## 00000118
|
||||
/* 0066C 80A0EB1C 8F190130 */ lw $t9, 0x0130($t8) ## 00000130
|
||||
/* 00670 80A0EB20 53200006 */ beql $t9, $zero, .L80A0EB3C
|
||||
/* 00674 80A0EB24 8FA8002C */ lw $t0, 0x002C($sp)
|
||||
/* 00678 80A0EB28 0C28395E */ jal func_80A0E578
|
||||
/* 0067C 80A0EB2C 00000000 */ nop
|
||||
/* 00680 80A0EB30 10400003 */ beq $v0, $zero, .L80A0EB40
|
||||
/* 00684 80A0EB34 00000000 */ nop
|
||||
/* 00688 80A0EB38 8FA8002C */ lw $t0, 0x002C($sp)
|
||||
.L80A0EB3C:
|
||||
/* 0068C 80A0EB3C AE08014C */ sw $t0, 0x014C($s0) ## 0000014C
|
||||
.L80A0EB40:
|
||||
/* 00690 80A0EB40 0C00B5FB */ jal func_8002D7EC
|
||||
/* 00694 80A0EB44 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00698 80A0EB48 8E19014C */ lw $t9, 0x014C($s0) ## 0000014C
|
||||
/* 0069C 80A0EB4C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 006A0 80A0EB50 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 006A4 80A0EB54 0320F809 */ jalr $ra, $t9
|
||||
/* 006A8 80A0EB58 00000000 */ nop
|
||||
/* 006AC 80A0EB5C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 006B0 80A0EB60 24090005 */ addiu $t1, $zero, 0x0005 ## $t1 = 00000005
|
||||
/* 006B4 80A0EB64 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 006B8 80A0EB68 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 006BC 80A0EB6C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 006C0 80A0EB70 3C064140 */ lui $a2, 0x4140 ## $a2 = 41400000
|
||||
/* 006C4 80A0EB74 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
|
||||
/* 006C8 80A0EB78 0C00B92D */ jal func_8002E4B4
|
||||
/* 006CC 80A0EB7C E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 006D0 80A0EB80 8FAA002C */ lw $t2, 0x002C($sp)
|
||||
/* 006D4 80A0EB84 8E0B014C */ lw $t3, 0x014C($s0) ## 0000014C
|
||||
/* 006D8 80A0EB88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 006DC 80A0EB8C 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
|
||||
/* 006E0 80A0EB90 514B000F */ beql $t2, $t3, .L80A0EBD0
|
||||
/* 006E4 80A0EB94 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 006E8 80A0EB98 0C0189B7 */ jal Collider_CylinderUpdate
|
||||
|
||||
/* 006EC 80A0EB9C AFA50028 */ sw $a1, 0x0028($sp)
|
||||
/* 006F0 80A0EBA0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 006F4 80A0EBA4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 006F8 80A0EBA8 02212821 */ addu $a1, $s1, $at
|
||||
/* 006FC 80A0EBAC AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00700 80A0EBB0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00704 80A0EBB4 0C0175E7 */ jal CollisionCheck_SetAT
|
||||
## CollisionCheck_setAT
|
||||
/* 00708 80A0EBB8 8FA60028 */ lw $a2, 0x0028($sp)
|
||||
/* 0070C 80A0EBBC 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
/* 00710 80A0EBC0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00714 80A0EBC4 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 00718 80A0EBC8 8FA60028 */ lw $a2, 0x0028($sp)
|
||||
/* 0071C 80A0EBCC 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0EBD0:
|
||||
/* 00720 80A0EBD0 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00724 80A0EBD4 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00728 80A0EBD8 03E00008 */ jr $ra
|
||||
/* 0072C 80A0EBDC 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
@ -1,54 +0,0 @@
|
||||
glabel func_80A0E4B0
|
||||
/* 00000 80A0E4B0 C4A40000 */ lwc1 $f4, 0x0000($a1) ## 00000000
|
||||
/* 00004 80A0E4B4 C4860024 */ lwc1 $f6, 0x0024($a0) ## 00000024
|
||||
/* 00008 80A0E4B8 C4A80004 */ lwc1 $f8, 0x0004($a1) ## 00000004
|
||||
/* 0000C 80A0E4BC C48A0028 */ lwc1 $f10, 0x0028($a0) ## 00000028
|
||||
/* 00010 80A0E4C0 46062081 */ sub.s $f2, $f4, $f6
|
||||
/* 00014 80A0E4C4 C486002C */ lwc1 $f6, 0x002C($a0) ## 0000002C
|
||||
/* 00018 80A0E4C8 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
|
||||
/* 0001C 80A0E4CC 460A4301 */ sub.s $f12, $f8, $f10
|
||||
/* 00020 80A0E4D0 46021202 */ mul.s $f8, $f2, $f2
|
||||
/* 00024 80A0E4D4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00028 80A0E4D8 46062381 */ sub.s $f14, $f4, $f6
|
||||
/* 0002C 80A0E4DC 460C6282 */ mul.s $f10, $f12, $f12
|
||||
/* 00030 80A0E4E0 460A4100 */ add.s $f4, $f8, $f10
|
||||
/* 00034 80A0E4E4 460E7182 */ mul.s $f6, $f14, $f14
|
||||
/* 00038 80A0E4E8 C4880068 */ lwc1 $f8, 0x0068($a0) ## 00000068
|
||||
/* 0003C 80A0E4EC E7A80000 */ swc1 $f8, 0x0000($sp)
|
||||
/* 00040 80A0E4F0 C7AA0000 */ lwc1 $f10, 0x0000($sp)
|
||||
/* 00044 80A0E4F4 46062000 */ add.s $f0, $f4, $f6
|
||||
/* 00048 80A0E4F8 46000404 */ sqrt.s $f16, $f0
|
||||
/* 0004C 80A0E4FC 46005005 */ abs.s $f0, $f10
|
||||
/* 00050 80A0E500 46008485 */ abs.s $f18, $f16
|
||||
/* 00054 80A0E504 4612003C */ c.lt.s $f0, $f18
|
||||
/* 00058 80A0E508 00000000 */ nop
|
||||
/* 0005C 80A0E50C 4502000A */ bc1fl .L80A0E538
|
||||
/* 00060 80A0E510 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00064 80A0E514 46101103 */ div.s $f4, $f2, $f16
|
||||
/* 00068 80A0E518 46107203 */ div.s $f8, $f14, $f16
|
||||
/* 0006C 80A0E51C 460A2182 */ mul.s $f6, $f4, $f10
|
||||
/* 00070 80A0E520 E486005C */ swc1 $f6, 0x005C($a0) ## 0000005C
|
||||
/* 00074 80A0E524 C7A40000 */ lwc1 $f4, 0x0000($sp)
|
||||
/* 00078 80A0E528 46044282 */ mul.s $f10, $f8, $f4
|
||||
/* 0007C 80A0E52C 10000005 */ beq $zero, $zero, .L80A0E544
|
||||
/* 00080 80A0E530 E48A0064 */ swc1 $f10, 0x0064($a0) ## 00000064
|
||||
/* 00084 80A0E534 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
.L80A0E538:
|
||||
/* 00088 80A0E538 00000000 */ nop
|
||||
/* 0008C 80A0E53C E480005C */ swc1 $f0, 0x005C($a0) ## 0000005C
|
||||
/* 00090 80A0E540 E4800064 */ swc1 $f0, 0x0064($a0) ## 00000064
|
||||
.L80A0E544:
|
||||
/* 00094 80A0E544 C4860060 */ lwc1 $f6, 0x0060($a0) ## 00000060
|
||||
/* 00098 80A0E548 C488006C */ lwc1 $f8, 0x006C($a0) ## 0000006C
|
||||
/* 0009C 80A0E54C C4800070 */ lwc1 $f0, 0x0070($a0) ## 00000070
|
||||
/* 000A0 80A0E550 46083100 */ add.s $f4, $f6, $f8
|
||||
/* 000A4 80A0E554 E4840060 */ swc1 $f4, 0x0060($a0) ## 00000060
|
||||
/* 000A8 80A0E558 C48A0060 */ lwc1 $f10, 0x0060($a0) ## 00000060
|
||||
/* 000AC 80A0E55C 460A003E */ c.le.s $f0, $f10
|
||||
/* 000B0 80A0E560 00000000 */ nop
|
||||
/* 000B4 80A0E564 45010002 */ bc1t .L80A0E570
|
||||
/* 000B8 80A0E568 00000000 */ nop
|
||||
/* 000BC 80A0E56C E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060
|
||||
.L80A0E570:
|
||||
/* 000C0 80A0E570 03E00008 */ jr $ra
|
||||
/* 000C4 80A0E574 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
@ -1,30 +0,0 @@
|
||||
glabel func_80A0E578
|
||||
/* 000C8 80A0E578 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 000CC 80A0E57C 8C8F014C */ lw $t7, 0x014C($a0) ## 0000014C
|
||||
/* 000D0 80A0E580 3C0E80A1 */ lui $t6, %hi(func_80A0EA34) ## $t6 = 80A10000
|
||||
/* 000D4 80A0E584 25CEEA34 */ addiu $t6, $t6, %lo(func_80A0EA34) ## $t6 = 80A0EA34
|
||||
/* 000D8 80A0E588 55CF0004 */ bnel $t6, $t7, .L80A0E59C
|
||||
/* 000DC 80A0E58C 90830161 */ lbu $v1, 0x0161($a0) ## 00000161
|
||||
/* 000E0 80A0E590 03E00008 */ jr $ra
|
||||
/* 000E4 80A0E594 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A0E598:
|
||||
/* 000E8 80A0E598 90830161 */ lbu $v1, 0x0161($a0) ## 00000161
|
||||
.L80A0E59C:
|
||||
/* 000EC 80A0E59C 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 000F0 80A0E5A0 30780002 */ andi $t8, $v1, 0x0002 ## $t8 = 00000000
|
||||
/* 000F4 80A0E5A4 13000003 */ beq $t8, $zero, .L80A0E5B4
|
||||
/* 000F8 80A0E5A8 3079FFFD */ andi $t9, $v1, 0xFFFD ## $t9 = 00000000
|
||||
/* 000FC 80A0E5AC 03E00008 */ jr $ra
|
||||
/* 00100 80A0E5B0 A0990161 */ sb $t9, 0x0161($a0) ## 00000161
|
||||
.L80A0E5B4:
|
||||
/* 00104 80A0E5B4 90830163 */ lbu $v1, 0x0163($a0) ## 00000163
|
||||
/* 00108 80A0E5B8 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 0010C 80A0E5BC 30680001 */ andi $t0, $v1, 0x0001 ## $t0 = 00000000
|
||||
/* 00110 80A0E5C0 11000004 */ beq $t0, $zero, .L80A0E5D4
|
||||
/* 00114 80A0E5C4 3069FFFE */ andi $t1, $v1, 0xFFFE ## $t1 = 00000000
|
||||
/* 00118 80A0E5C8 A0890163 */ sb $t1, 0x0163($a0) ## 00000163
|
||||
/* 0011C 80A0E5CC 03E00008 */ jr $ra
|
||||
/* 00120 80A0E5D0 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A0E5D4:
|
||||
/* 00124 80A0E5D4 03E00008 */ jr $ra
|
||||
/* 00128 80A0E5D8 00000000 */ nop
|
@ -1,85 +0,0 @@
|
||||
glabel func_80A0E70C
|
||||
/* 0025C 80A0E70C 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 00260 80A0E710 3C0F80A1 */ lui $t7, %hi(D_80A0F088) ## $t7 = 80A10000
|
||||
/* 00264 80A0E714 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00268 80A0E718 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 0026C 80A0E71C AFA50044 */ sw $a1, 0x0044($sp)
|
||||
/* 00270 80A0E720 25EFF088 */ addiu $t7, $t7, %lo(D_80A0F088) ## $t7 = 80A0F088
|
||||
/* 00274 80A0E724 8DF90000 */ lw $t9, 0x0000($t7) ## 80A0F088
|
||||
/* 00278 80A0E728 27AE0034 */ addiu $t6, $sp, 0x0034 ## $t6 = FFFFFFF4
|
||||
/* 0027C 80A0E72C 8DF80004 */ lw $t8, 0x0004($t7) ## 80A0F08C
|
||||
/* 00280 80A0E730 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
|
||||
/* 00284 80A0E734 8DF90008 */ lw $t9, 0x0008($t7) ## 80A0F090
|
||||
/* 00288 80A0E738 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
|
||||
/* 0028C 80A0E73C 27A80028 */ addiu $t0, $sp, 0x0028 ## $t0 = FFFFFFE8
|
||||
/* 00290 80A0E740 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
|
||||
/* 00294 80A0E744 8C890118 */ lw $t1, 0x0118($a0) ## 00000118
|
||||
/* 00298 80A0E748 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0029C 80A0E74C 8D2B0024 */ lw $t3, 0x0024($t1) ## 00000024
|
||||
/* 002A0 80A0E750 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
|
||||
/* 002A4 80A0E754 8D2A0028 */ lw $t2, 0x0028($t1) ## 00000028
|
||||
/* 002A8 80A0E758 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
|
||||
/* 002AC 80A0E75C 8D2B002C */ lw $t3, 0x002C($t1) ## 0000002C
|
||||
/* 002B0 80A0E760 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
|
||||
/* 002B4 80A0E764 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 002B8 80A0E768 84840032 */ lh $a0, 0x0032($a0) ## 00000032
|
||||
/* 002BC 80A0E76C C606019C */ lwc1 $f6, 0x019C($s0) ## 0000019C
|
||||
/* 002C0 80A0E770 C7A40028 */ lwc1 $f4, 0x0028($sp)
|
||||
/* 002C4 80A0E774 46003202 */ mul.s $f8, $f6, $f0
|
||||
/* 002C8 80A0E778 46082280 */ add.s $f10, $f4, $f8
|
||||
/* 002CC 80A0E77C E7AA0028 */ swc1 $f10, 0x0028($sp)
|
||||
/* 002D0 80A0E780 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 002D4 80A0E784 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 002D8 80A0E788 C612019C */ lwc1 $f18, 0x019C($s0) ## 0000019C
|
||||
/* 002DC 80A0E78C C7B00030 */ lwc1 $f16, 0x0030($sp)
|
||||
/* 002E0 80A0E790 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 002E4 80A0E794 46009182 */ mul.s $f6, $f18, $f0
|
||||
/* 002E8 80A0E798 27A50028 */ addiu $a1, $sp, 0x0028 ## $a1 = FFFFFFE8
|
||||
/* 002EC 80A0E79C 46068100 */ add.s $f4, $f16, $f6
|
||||
/* 002F0 80A0E7A0 0C28392C */ jal func_80A0E4B0
|
||||
/* 002F4 80A0E7A4 E7A40030 */ swc1 $f4, 0x0030($sp)
|
||||
/* 002F8 80A0E7A8 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088
|
||||
/* 002FC 80A0E7AC 318D0001 */ andi $t5, $t4, 0x0001 ## $t5 = 00000000
|
||||
/* 00300 80A0E7B0 51A00021 */ beql $t5, $zero, .L80A0E838
|
||||
/* 00304 80A0E7B4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00308 80A0E7B8 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 0030C 80A0E7BC C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060
|
||||
/* 00310 80A0E7C0 27AE0034 */ addiu $t6, $sp, 0x0034 ## $t6 = FFFFFFF4
|
||||
/* 00314 80A0E7C4 4608003C */ c.lt.s $f0, $f8
|
||||
/* 00318 80A0E7C8 00000000 */ nop
|
||||
/* 0031C 80A0E7CC 4503001A */ bc1tl .L80A0E838
|
||||
/* 00320 80A0E7D0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00324 80A0E7D4 8DD80000 */ lw $t8, 0x0000($t6) ## FFFFFFF4
|
||||
/* 00328 80A0E7D8 96190088 */ lhu $t9, 0x0088($s0) ## 00000088
|
||||
/* 0032C 80A0E7DC 8609001C */ lh $t1, 0x001C($s0) ## 0000001C
|
||||
/* 00330 80A0E7E0 AE18005C */ sw $t8, 0x005C($s0) ## 0000005C
|
||||
/* 00334 80A0E7E4 8DCF0004 */ lw $t7, 0x0004($t6) ## FFFFFFF8
|
||||
/* 00338 80A0E7E8 3328FFFE */ andi $t0, $t9, 0xFFFE ## $t0 = 00000000
|
||||
/* 0033C 80A0E7EC 312A8000 */ andi $t2, $t1, 0x8000 ## $t2 = 00000000
|
||||
/* 00340 80A0E7F0 AE0F0060 */ sw $t7, 0x0060($s0) ## 00000060
|
||||
/* 00344 80A0E7F4 8DD80008 */ lw $t8, 0x0008($t6) ## FFFFFFFC
|
||||
/* 00348 80A0E7F8 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
|
||||
/* 0034C 80A0E7FC A6080088 */ sh $t0, 0x0088($s0) ## 00000088
|
||||
/* 00350 80A0E800 11400007 */ beq $t2, $zero, .L80A0E820
|
||||
/* 00354 80A0E804 AE180064 */ sw $t8, 0x0064($s0) ## 00000064
|
||||
/* 00358 80A0E808 3C0C80A1 */ lui $t4, %hi(func_80A0E884) ## $t4 = 80A10000
|
||||
/* 0035C 80A0E80C 240B00C8 */ addiu $t3, $zero, 0x00C8 ## $t3 = 000000C8
|
||||
/* 00360 80A0E810 258CE884 */ addiu $t4, $t4, %lo(func_80A0E884) ## $t4 = 80A0E884
|
||||
/* 00364 80A0E814 A60B01A6 */ sh $t3, 0x01A6($s0) ## 000001A6
|
||||
/* 00368 80A0E818 10000006 */ beq $zero, $zero, .L80A0E834
|
||||
/* 0036C 80A0E81C AE0C014C */ sw $t4, 0x014C($s0) ## 0000014C
|
||||
.L80A0E820:
|
||||
/* 00370 80A0E820 3C0E80A1 */ lui $t6, %hi(func_80A0E848) ## $t6 = 80A10000
|
||||
/* 00374 80A0E824 240D012C */ addiu $t5, $zero, 0x012C ## $t5 = 0000012C
|
||||
/* 00378 80A0E828 25CEE848 */ addiu $t6, $t6, %lo(func_80A0E848) ## $t6 = 80A0E848
|
||||
/* 0037C 80A0E82C A60D01A6 */ sh $t5, 0x01A6($s0) ## 000001A6
|
||||
/* 00380 80A0E830 AE0E014C */ sw $t6, 0x014C($s0) ## 0000014C
|
||||
.L80A0E834:
|
||||
/* 00384 80A0E834 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80A0E838:
|
||||
/* 00388 80A0E838 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0038C 80A0E83C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 00390 80A0E840 03E00008 */ jr $ra
|
||||
/* 00394 80A0E844 00000000 */ nop
|
@ -1,19 +0,0 @@
|
||||
glabel func_80A0E848
|
||||
/* 00398 80A0E848 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 0039C 80A0E84C 848201A6 */ lh $v0, 0x01A6($a0) ## 000001A6
|
||||
/* 003A0 80A0E850 3C0F80A1 */ lui $t7, %hi(func_80A0EA34) ## $t7 = 80A10000
|
||||
/* 003A4 80A0E854 25EFEA34 */ addiu $t7, $t7, %lo(func_80A0EA34) ## $t7 = 80A0EA34
|
||||
/* 003A8 80A0E858 14400003 */ bne $v0, $zero, .L80A0E868
|
||||
/* 003AC 80A0E85C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 003B0 80A0E860 10000003 */ beq $zero, $zero, .L80A0E870
|
||||
/* 003B4 80A0E864 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A0E868:
|
||||
/* 003B8 80A0E868 A48E01A6 */ sh $t6, 0x01A6($a0) ## 000001A6
|
||||
/* 003BC 80A0E86C 848301A6 */ lh $v1, 0x01A6($a0) ## 000001A6
|
||||
.L80A0E870:
|
||||
/* 003C0 80A0E870 14600002 */ bne $v1, $zero, .L80A0E87C
|
||||
/* 003C4 80A0E874 00000000 */ nop
|
||||
/* 003C8 80A0E878 AC8F014C */ sw $t7, 0x014C($a0) ## 0000014C
|
||||
.L80A0E87C:
|
||||
/* 003CC 80A0E87C 03E00008 */ jr $ra
|
||||
/* 003D0 80A0E880 00000000 */ nop
|
@ -1,125 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0F130
|
||||
.float 0.1
|
||||
|
||||
.text
|
||||
glabel func_80A0E884
|
||||
/* 003D4 80A0E884 27BDFF80 */ addiu $sp, $sp, 0xFF80 ## $sp = FFFFFF80
|
||||
/* 003D8 80A0E888 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 003DC 80A0E88C 3C0E80A1 */ lui $t6, %hi(D_80A0F094) ## $t6 = 80A10000
|
||||
/* 003E0 80A0E890 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 003E4 80A0E894 27A7004C */ addiu $a3, $sp, 0x004C ## $a3 = FFFFFFCC
|
||||
/* 003E8 80A0E898 25CEF094 */ addiu $t6, $t6, %lo(D_80A0F094) ## $t6 = 80A0F094
|
||||
/* 003EC 80A0E89C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 003F0 80A0E8A0 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
|
||||
/* 003F4 80A0E8A4 25C80030 */ addiu $t0, $t6, 0x0030 ## $t0 = 80A0F0C4
|
||||
/* 003F8 80A0E8A8 00E0C825 */ or $t9, $a3, $zero ## $t9 = FFFFFFCC
|
||||
.L80A0E8AC:
|
||||
/* 003FC 80A0E8AC 8DD80000 */ lw $t8, 0x0000($t6) ## 80A0F094
|
||||
/* 00400 80A0E8B0 25CE000C */ addiu $t6, $t6, 0x000C ## $t6 = 80A0F0A0
|
||||
/* 00404 80A0E8B4 2739000C */ addiu $t9, $t9, 0x000C ## $t9 = FFFFFFD8
|
||||
/* 00408 80A0E8B8 AF38FFF4 */ sw $t8, -0x000C($t9) ## FFFFFFCC
|
||||
/* 0040C 80A0E8BC 8DCFFFF8 */ lw $t7, -0x0008($t6) ## 80A0F098
|
||||
/* 00410 80A0E8C0 AF2FFFF8 */ sw $t7, -0x0008($t9) ## FFFFFFD0
|
||||
/* 00414 80A0E8C4 8DD8FFFC */ lw $t8, -0x0004($t6) ## 80A0F09C
|
||||
/* 00418 80A0E8C8 15C8FFF8 */ bne $t6, $t0, .L80A0E8AC
|
||||
/* 0041C 80A0E8CC AF38FFFC */ sw $t8, -0x0004($t9) ## FFFFFFD4
|
||||
/* 00420 80A0E8D0 8CA9009C */ lw $t1, 0x009C($a1) ## 0000009C
|
||||
/* 00424 80A0E8D4 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
|
||||
/* 00428 80A0E8D8 860B001C */ lh $t3, 0x001C($s0) ## 0000001C
|
||||
/* 0042C 80A0E8DC 0121001B */ divu $zero, $t1, $at
|
||||
/* 00430 80A0E8E0 00005012 */ mflo $t2
|
||||
/* 00434 80A0E8E4 316C7FFF */ andi $t4, $t3, 0x7FFF ## $t4 = 00000000
|
||||
/* 00438 80A0E8E8 014C1821 */ addu $v1, $t2, $t4
|
||||
/* 0043C 80A0E8EC 2401000C */ addiu $at, $zero, 0x000C ## $at = 0000000C
|
||||
/* 00440 80A0E8F0 0061001B */ divu $zero, $v1, $at
|
||||
/* 00444 80A0E8F4 8C4E0024 */ lw $t6, 0x0024($v0) ## 00000024
|
||||
/* 00448 80A0E8F8 27AD0040 */ addiu $t5, $sp, 0x0040 ## $t5 = FFFFFFC0
|
||||
/* 0044C 80A0E8FC 00001810 */ mfhi $v1
|
||||
/* 00450 80A0E900 ADAE0000 */ sw $t6, 0x0000($t5) ## FFFFFFC0
|
||||
/* 00454 80A0E904 8C480028 */ lw $t0, 0x0028($v0) ## 00000028
|
||||
/* 00458 80A0E908 00031C00 */ sll $v1, $v1, 16
|
||||
/* 0045C 80A0E90C 00031C03 */ sra $v1, $v1, 16
|
||||
/* 00460 80A0E910 ADA80004 */ sw $t0, 0x0004($t5) ## FFFFFFC4
|
||||
/* 00464 80A0E914 8C4E002C */ lw $t6, 0x002C($v0) ## 0000002C
|
||||
/* 00468 80A0E918 0003C880 */ sll $t9, $v1, 2
|
||||
/* 0046C 80A0E91C 00F93021 */ addu $a2, $a3, $t9
|
||||
/* 00470 80A0E920 ADAE0008 */ sw $t6, 0x0008($t5) ## FFFFFFC8
|
||||
/* 00474 80A0E924 C4CC0000 */ lwc1 $f12, 0x0000($a2) ## 00000000
|
||||
/* 00478 80A0E928 0C0400A4 */ jal sinf
|
||||
|
||||
/* 0047C 80A0E92C AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 00480 80A0E930 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
|
||||
/* 00484 80A0E934 44813000 */ mtc1 $at, $f6 ## $f6 = 120.00
|
||||
/* 00488 80A0E938 C7A40040 */ lwc1 $f4, 0x0040($sp)
|
||||
/* 0048C 80A0E93C 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
/* 00490 80A0E940 46003202 */ mul.s $f8, $f6, $f0
|
||||
/* 00494 80A0E944 46082280 */ add.s $f10, $f4, $f8
|
||||
/* 00498 80A0E948 E7AA0040 */ swc1 $f10, 0x0040($sp)
|
||||
/* 0049C 80A0E94C 0C041184 */ jal cosf
|
||||
|
||||
/* 004A0 80A0E950 C4CC0000 */ lwc1 $f12, 0x0000($a2) ## 00000000
|
||||
/* 004A4 80A0E954 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
|
||||
/* 004A8 80A0E958 44819000 */ mtc1 $at, $f18 ## $f18 = 120.00
|
||||
/* 004AC 80A0E95C C7B00048 */ lwc1 $f16, 0x0048($sp)
|
||||
/* 004B0 80A0E960 3C1880A1 */ lui $t8, %hi(func_80A0EA34) ## $t8 = 80A10000
|
||||
/* 004B4 80A0E964 46009182 */ mul.s $f6, $f18, $f0
|
||||
/* 004B8 80A0E968 2718EA34 */ addiu $t8, $t8, %lo(func_80A0EA34) ## $t8 = 80A0EA34
|
||||
/* 004BC 80A0E96C 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 004C0 80A0E970 46068100 */ add.s $f4, $f16, $f6
|
||||
/* 004C4 80A0E974 E7A40048 */ swc1 $f4, 0x0048($sp)
|
||||
/* 004C8 80A0E978 860201A6 */ lh $v0, 0x01A6($s0) ## 000001A6
|
||||
/* 004CC 80A0E97C 14400003 */ bne $v0, $zero, .L80A0E98C
|
||||
/* 004D0 80A0E980 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 004D4 80A0E984 10000003 */ beq $zero, $zero, .L80A0E994
|
||||
/* 004D8 80A0E988 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A0E98C:
|
||||
/* 004DC 80A0E98C A60F01A6 */ sh $t7, 0x01A6($s0) ## 000001A6
|
||||
/* 004E0 80A0E990 860301A6 */ lh $v1, 0x01A6($s0) ## 000001A6
|
||||
.L80A0E994:
|
||||
/* 004E4 80A0E994 14600003 */ bne $v1, $zero, .L80A0E9A4
|
||||
/* 004E8 80A0E998 00000000 */ nop
|
||||
/* 004EC 80A0E99C 10000020 */ beq $zero, $zero, .L80A0EA20
|
||||
/* 004F0 80A0E9A0 AE18014C */ sw $t8, 0x014C($s0) ## 0000014C
|
||||
.L80A0E9A4:
|
||||
/* 004F4 80A0E9A4 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 004F8 80A0E9A8 27A50040 */ addiu $a1, $sp, 0x0040 ## $a1 = FFFFFFC0
|
||||
/* 004FC 80A0E9AC 00022C00 */ sll $a1, $v0, 16
|
||||
/* 00500 80A0E9B0 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
|
||||
/* 00504 80A0E9B4 AFA90010 */ sw $t1, 0x0010($sp)
|
||||
/* 00508 80A0E9B8 00052C03 */ sra $a1, $a1, 16
|
||||
/* 0050C 80A0E9BC 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032
|
||||
/* 00510 80A0E9C0 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00514 80A0E9C4 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 00518 80A0E9C8 24070FA0 */ addiu $a3, $zero, 0x0FA0 ## $a3 = 00000FA0
|
||||
/* 0051C 80A0E9CC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00520 80A0E9D0 3C063ECC */ lui $a2, 0x3ECC ## $a2 = 3ECC0000
|
||||
/* 00524 80A0E9D4 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3ECCCCCD
|
||||
/* 00528 80A0E9D8 44050000 */ mfc1 $a1, $f0
|
||||
/* 0052C 80A0E9DC 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
|
||||
/* 00530 80A0E9E0 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
|
||||
/* 00534 80A0E9E4 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00538 80A0E9E8 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 0053C 80A0E9EC 3C0180A1 */ lui $at, %hi(D_80A0F130) ## $at = 80A10000
|
||||
/* 00540 80A0E9F0 C42AF130 */ lwc1 $f10, %lo(D_80A0F130)($at)
|
||||
/* 00544 80A0E9F4 C6080068 */ lwc1 $f8, 0x0068($s0) ## 00000068
|
||||
/* 00548 80A0E9F8 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
|
||||
/* 0054C 80A0E9FC 460A403C */ c.lt.s $f8, $f10
|
||||
/* 00550 80A0EA00 00000000 */ nop
|
||||
/* 00554 80A0EA04 45000004 */ bc1f .L80A0EA18
|
||||
/* 00558 80A0EA08 00000000 */ nop
|
||||
/* 0055C 80A0EA0C 44819000 */ mtc1 $at, $f18 ## $f18 = 5.00
|
||||
/* 00560 80A0EA10 00000000 */ nop
|
||||
/* 00564 80A0EA14 E6120068 */ swc1 $f18, 0x0068($s0) ## 00000068
|
||||
.L80A0EA18:
|
||||
/* 00568 80A0EA18 0C00B61A */ jal func_8002D868
|
||||
/* 0056C 80A0EA1C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80A0EA20:
|
||||
/* 00570 80A0EA20 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00574 80A0EA24 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00578 80A0EA28 27BD0080 */ addiu $sp, $sp, 0x0080 ## $sp = 00000000
|
||||
/* 0057C 80A0EA2C 03E00008 */ jr $ra
|
||||
/* 00580 80A0EA30 00000000 */ nop
|
@ -1,55 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A0F134
|
||||
.float 0.01
|
||||
|
||||
.text
|
||||
glabel func_80A0EA34
|
||||
/* 00584 80A0EA34 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00588 80A0EA38 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 0058C 80A0EA3C AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00590 80A0EA40 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00594 80A0EA44 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00598 80A0EA48 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 0059C 80A0EA4C 3C063F19 */ lui $a2, 0x3F19 ## $a2 = 3F190000
|
||||
/* 005A0 80A0EA50 44050000 */ mfc1 $a1, $f0
|
||||
/* 005A4 80A0EA54 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3F19999A
|
||||
/* 005A8 80A0EA58 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068
|
||||
/* 005AC 80A0EA5C 3C074110 */ lui $a3, 0x4110 ## $a3 = 41100000
|
||||
/* 005B0 80A0EA60 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 005B4 80A0EA64 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 005B8 80A0EA68 0C00B61A */ jal func_8002D868
|
||||
/* 005BC 80A0EA6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 005C0 80A0EA70 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 005C4 80A0EA74 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 005C8 80A0EA78 3C073DCC */ lui $a3, 0x3DCC ## $a3 = 3DCC0000
|
||||
/* 005CC 80A0EA7C 44050000 */ mfc1 $a1, $f0
|
||||
/* 005D0 80A0EA80 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3DCCCCCD
|
||||
/* 005D4 80A0EA84 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 005D8 80A0EA88 260401A0 */ addiu $a0, $s0, 0x01A0 ## $a0 = 000001A0
|
||||
/* 005DC 80A0EA8C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 005E0 80A0EA90 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 005E4 80A0EA94 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 005E8 80A0EA98 44812000 */ mtc1 $at, $f4 ## $f4 = 20.00
|
||||
/* 005EC 80A0EA9C 3C014040 */ lui $at, 0x4040 ## $at = 40400000
|
||||
/* 005F0 80A0EAA0 44813000 */ mtc1 $at, $f6 ## $f6 = 3.00
|
||||
/* 005F4 80A0EAA4 C60001A0 */ lwc1 $f0, 0x01A0($s0) ## 000001A0
|
||||
/* 005F8 80A0EAA8 3C0180A1 */ lui $at, %hi(D_80A0F134) ## $at = 80A10000
|
||||
/* 005FC 80A0EAAC 46060203 */ div.s $f8, $f0, $f6
|
||||
/* 00600 80A0EAB0 46082282 */ mul.s $f10, $f4, $f8
|
||||
/* 00604 80A0EAB4 E60A00C4 */ swc1 $f10, 0x00C4($s0) ## 000000C4
|
||||
/* 00608 80A0EAB8 C430F134 */ lwc1 $f16, %lo(D_80A0F134)($at)
|
||||
/* 0060C 80A0EABC 4600803C */ c.lt.s $f16, $f0
|
||||
/* 00610 80A0EAC0 00000000 */ nop
|
||||
/* 00614 80A0EAC4 45030004 */ bc1tl .L80A0EAD8
|
||||
/* 00618 80A0EAC8 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 0061C 80A0EACC 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00620 80A0EAD0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00624 80A0EAD4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A0EAD8:
|
||||
/* 00628 80A0EAD8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0062C 80A0EADC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00630 80A0EAE0 03E00008 */ jr $ra
|
||||
/* 00634 80A0EAE4 00000000 */ nop
|
@ -1,11 +0,0 @@
|
||||
glabel EnFw_Destroy
|
||||
/* 006A8 80A1EC48 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 006AC 80A1EC4C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 006B0 80A1EC50 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 006B4 80A1EC54 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 006B8 80A1EC58 0C016F32 */ jal Collider_DestroyJntSph
|
||||
/* 006BC 80A1EC5C 24C50194 */ addiu $a1, $a2, 0x0194 ## $a1 = 00000194
|
||||
/* 006C0 80A1EC60 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 006C4 80A1EC64 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 006C8 80A1EC68 03E00008 */ jr $ra
|
||||
/* 006CC 80A1EC6C 00000000 */ nop
|
@ -1,34 +0,0 @@
|
||||
glabel EnFw_Draw
|
||||
/* 01040 80A1F5E0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 01044 80A1F5E4 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 01048 80A1F5E8 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 0104C 80A1F5EC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01050 80A1F5F0 0C287DC2 */ jal func_80A1F708
|
||||
/* 01054 80A1F5F4 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 01058 80A1F5F8 0C034213 */ jal Matrix_Push
|
||||
/* 0105C 80A1F5FC 00000000 */ nop
|
||||
/* 01060 80A1F600 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01064 80A1F604 0C287E05 */ jal func_80A1F814
|
||||
/* 01068 80A1F608 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 0106C 80A1F60C 0C034221 */ jal Matrix_Pull
|
||||
/* 01070 80A1F610 00000000 */ nop
|
||||
/* 01074 80A1F614 8FAE0034 */ lw $t6, 0x0034($sp)
|
||||
/* 01078 80A1F618 0C024F46 */ jal func_80093D18
|
||||
/* 0107C 80A1F61C 8DC40000 */ lw $a0, 0x0000($t6) ## 00000000
|
||||
/* 01080 80A1F620 8E050150 */ lw $a1, 0x0150($s0) ## 00000150
|
||||
/* 01084 80A1F624 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C
|
||||
/* 01088 80A1F628 9207014E */ lbu $a3, 0x014E($s0) ## 0000014E
|
||||
/* 0108C 80A1F62C 3C0F80A2 */ lui $t7, %hi(func_80A1F52C) ## $t7 = 80A20000
|
||||
/* 01090 80A1F630 3C1880A2 */ lui $t8, %hi(func_80A1F544) ## $t8 = 80A20000
|
||||
/* 01094 80A1F634 2718F544 */ addiu $t8, $t8, %lo(func_80A1F544) ## $t8 = 80A1F544
|
||||
/* 01098 80A1F638 25EFF52C */ addiu $t7, $t7, %lo(func_80A1F52C) ## $t7 = 80A1F52C
|
||||
/* 0109C 80A1F63C AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 010A0 80A1F640 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 010A4 80A1F644 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 010A8 80A1F648 0C0286B2 */ jal SkelAnime_DrawFlexOpa
|
||||
/* 010AC 80A1F64C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 010B0 80A1F650 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 010B4 80A1F654 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 010B8 80A1F658 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 010BC 80A1F65C 03E00008 */ jr $ra
|
||||
/* 010C0 80A1F660 00000000 */ nop
|
@ -1,70 +0,0 @@
|
||||
glabel EnFw_Init
|
||||
/* 005A0 80A1EB40 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 005A4 80A1EB44 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 005A8 80A1EB48 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 005AC 80A1EB4C AFA50044 */ sw $a1, 0x0044($sp)
|
||||
/* 005B0 80A1EB50 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 005B4 80A1EB54 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 005B8 80A1EB58 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
|
||||
/* 005BC 80A1EB5C 260E021C */ addiu $t6, $s0, 0x021C ## $t6 = 0000021C
|
||||
/* 005C0 80A1EB60 260F025E */ addiu $t7, $s0, 0x025E ## $t7 = 0000025E
|
||||
/* 005C4 80A1EB64 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
|
||||
/* 005C8 80A1EB68 2418000B */ addiu $t8, $zero, 0x000B ## $t8 = 0000000B
|
||||
/* 005CC 80A1EB6C AFB80018 */ sw $t8, 0x0018($sp)
|
||||
/* 005D0 80A1EB70 24C67C30 */ addiu $a2, $a2, 0x7C30 ## $a2 = 06007C30
|
||||
/* 005D4 80A1EB74 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 005D8 80A1EB78 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 005DC 80A1EB7C AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 005E0 80A1EB80 0C0291BE */ jal SkelAnime_InitFlex
|
||||
/* 005E4 80A1EB84 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 005E8 80A1EB88 3C0580A2 */ lui $a1, %hi(D_80A1FBA0) ## $a1 = 80A20000
|
||||
/* 005EC 80A1EB8C 24A5FBA0 */ addiu $a1, $a1, %lo(D_80A1FBA0) ## $a1 = 80A1FBA0
|
||||
/* 005F0 80A1EB90 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 005F4 80A1EB94 0C00D3B0 */ jal func_80034EC0
|
||||
/* 005F8 80A1EB98 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 005FC 80A1EB9C 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
|
||||
/* 00600 80A1EBA0 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
|
||||
/* 00604 80A1EBA4 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00608 80A1EBA8 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
|
||||
/* 0060C 80A1EBAC 0C00AC78 */ jal ActorShape_Init
|
||||
|
||||
/* 00610 80A1EBB0 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
|
||||
/* 00614 80A1EBB4 26050194 */ addiu $a1, $s0, 0x0194 ## $a1 = 00000194
|
||||
/* 00618 80A1EBB8 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 0061C 80A1EBBC 0C016EFE */ jal Collider_InitJntSph
|
||||
/* 00620 80A1EBC0 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 00624 80A1EBC4 3C0780A2 */ lui $a3, %hi(D_80A1FB84) ## $a3 = 80A20000
|
||||
/* 00628 80A1EBC8 261901B4 */ addiu $t9, $s0, 0x01B4 ## $t9 = 000001B4
|
||||
/* 0062C 80A1EBCC 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 00630 80A1EBD0 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00634 80A1EBD4 24E7FB84 */ addiu $a3, $a3, %lo(D_80A1FB84) ## $a3 = 80A1FB84
|
||||
/* 00638 80A1EBD8 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 0063C 80A1EBDC 0C017014 */ jal Collider_SetJntSph
|
||||
/* 00640 80A1EBE0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00644 80A1EBE4 0C016C80 */ jal DamageTable_Get
|
||||
|
||||
/* 00648 80A1EBE8 24040010 */ addiu $a0, $zero, 0x0010 ## $a0 = 00000010
|
||||
/* 0064C 80A1EBEC 3C0680A2 */ lui $a2, %hi(D_80A1FB94) ## $a2 = 80A20000
|
||||
/* 00650 80A1EBF0 24C6FB94 */ addiu $a2, $a2, %lo(D_80A1FB94) ## $a2 = 80A1FB94
|
||||
/* 00654 80A1EBF4 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
|
||||
/* 00658 80A1EBF8 0C0187BF */ jal func_80061EFC
|
||||
/* 0065C 80A1EBFC 00402825 */ or $a1, $v0, $zero ## $a1 = 00000000
|
||||
/* 00660 80A1EC00 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
|
||||
/* 00664 80A1EC04 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
|
||||
/* 00668 80A1EC08 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 0066C 80A1EC0C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00670 80A1EC10 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 00674 80A1EC14 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
|
||||
/* 00678 80A1EC18 44812000 */ mtc1 $at, $f4 ## $f4 = -1.00
|
||||
/* 0067C 80A1EC1C 3C0A80A2 */ lui $t2, %hi(func_80A1EC70) ## $t2 = 80A20000
|
||||
/* 00680 80A1EC20 254AEC70 */ addiu $t2, $t2, %lo(func_80A1EC70) ## $t2 = 80A1EC70
|
||||
/* 00684 80A1EC24 00084823 */ subu $t1, $zero, $t0
|
||||
/* 00688 80A1EC28 A6090202 */ sh $t1, 0x0202($s0) ## 00000202
|
||||
/* 0068C 80A1EC2C AE0A0190 */ sw $t2, 0x0190($s0) ## 00000190
|
||||
/* 00690 80A1EC30 E604006C */ swc1 $f4, 0x006C($s0) ## 0000006C
|
||||
/* 00694 80A1EC34 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00698 80A1EC38 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 0069C 80A1EC3C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 006A0 80A1EC40 03E00008 */ jr $ra
|
||||
/* 006A4 80A1EC44 00000000 */ nop
|
@ -1,64 +0,0 @@
|
||||
glabel EnFw_Update
|
||||
/* 00EAC 80A1F44C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00EB0 80A1F450 AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00EB4 80A1F454 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00EB8 80A1F458 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00EBC 80A1F45C AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 00EC0 80A1F460 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00EC4 80A1F464 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00EC8 80A1F468 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00ECC 80A1F46C 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004
|
||||
/* 00ED0 80A1F470 24012000 */ addiu $at, $zero, 0x2000 ## $at = 00002000
|
||||
/* 00ED4 80A1F474 31CF2000 */ andi $t7, $t6, 0x2000 ## $t7 = 00000000
|
||||
/* 00ED8 80A1F478 51E10028 */ beql $t7, $at, .L80A1F51C
|
||||
/* 00EDC 80A1F47C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00EE0 80A1F480 0C00B638 */ jal Actor_MoveForward
|
||||
|
||||
/* 00EE4 80A1F484 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00EE8 80A1F488 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00EEC 80A1F48C 24180005 */ addiu $t8, $zero, 0x0005 ## $t8 = 00000005
|
||||
/* 00EF0 80A1F490 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 00EF4 80A1F494 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00EF8 80A1F498 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00EFC 80A1F49C 3C064120 */ lui $a2, 0x4120 ## $a2 = 41200000
|
||||
/* 00F00 80A1F4A0 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
|
||||
/* 00F04 80A1F4A4 0C00B92D */ jal func_8002E4B4
|
||||
/* 00F08 80A1F4A8 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00F0C 80A1F4AC 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
|
||||
/* 00F10 80A1F4B0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F14 80A1F4B4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 00F18 80A1F4B8 0320F809 */ jalr $ra, $t9
|
||||
/* 00F1C 80A1F4BC 00000000 */ nop
|
||||
/* 00F20 80A1F4C0 86080208 */ lh $t0, 0x0208($s0) ## 00000208
|
||||
/* 00F24 80A1F4C4 5500000F */ bnel $t0, $zero, .L80A1F504
|
||||
/* 00F28 80A1F4C8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00F2C 80A1F4CC 8609020A */ lh $t1, 0x020A($s0) ## 0000020A
|
||||
/* 00F30 80A1F4D0 5520000C */ bnel $t1, $zero, .L80A1F504
|
||||
/* 00F34 80A1F4D4 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00F38 80A1F4D8 8E0B0190 */ lw $t3, 0x0190($s0) ## 00000190
|
||||
/* 00F3C 80A1F4DC 3C0A80A2 */ lui $t2, %hi(func_80A1ECD4) ## $t2 = 80A20000
|
||||
/* 00F40 80A1F4E0 254AECD4 */ addiu $t2, $t2, %lo(func_80A1ECD4) ## $t2 = 80A1ECD4
|
||||
/* 00F44 80A1F4E4 154B0006 */ bne $t2, $t3, .L80A1F500
|
||||
/* 00F48 80A1F4E8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00F4C 80A1F4EC 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00F50 80A1F4F0 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 00F54 80A1F4F4 02212821 */ addu $a1, $s1, $at
|
||||
/* 00F58 80A1F4F8 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 00F5C 80A1F4FC 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
|
||||
.L80A1F500:
|
||||
/* 00F60 80A1F500 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
.L80A1F504:
|
||||
/* 00F64 80A1F504 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 00F68 80A1F508 02212821 */ addu $a1, $s1, $at
|
||||
/* 00F6C 80A1F50C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00F70 80A1F510 0C017713 */ jal CollisionCheck_SetOC
|
||||
## CollisionCheck_setOT
|
||||
/* 00F74 80A1F514 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
|
||||
/* 00F78 80A1F518 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A1F51C:
|
||||
/* 00F7C 80A1F51C 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00F80 80A1F520 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00F84 80A1F524 03E00008 */ jr $ra
|
||||
/* 00F88 80A1F528 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
@ -1,57 +0,0 @@
|
||||
glabel func_80A1E5A0
|
||||
/* 00000 80A1E5A0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00004 80A1E5A4 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00008 80A1E5A8 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 0000C 80A1E5AC AFA60020 */ sw $a2, 0x0020($sp)
|
||||
/* 00010 80A1E5B0 948E0088 */ lhu $t6, 0x0088($a0) ## 00000088
|
||||
/* 00014 80A1E5B4 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 00018 80A1E5B8 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
|
||||
/* 0001C 80A1E5BC 11E00008 */ beq $t7, $zero, .L80A1E5E0
|
||||
/* 00020 80A1E5C0 00000000 */ nop
|
||||
/* 00024 80A1E5C4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00028 80A1E5C8 C4860060 */ lwc1 $f6, 0x0060($a0) ## 00000060
|
||||
/* 0002C 80A1E5CC 2405387B */ addiu $a1, $zero, 0x387B ## $a1 = 0000387B
|
||||
/* 00030 80A1E5D0 4606203C */ c.lt.s $f4, $f6
|
||||
/* 00034 80A1E5D4 00000000 */ nop
|
||||
/* 00038 80A1E5D8 45020004 */ bc1fl .L80A1E5EC
|
||||
/* 0003C 80A1E5DC AFA40018 */ sw $a0, 0x0018($sp)
|
||||
.L80A1E5E0:
|
||||
/* 00040 80A1E5E0 1000001D */ beq $zero, $zero, .L80A1E658
|
||||
/* 00044 80A1E5E4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00048 80A1E5E8 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
.L80A1E5EC:
|
||||
/* 0004C 80A1E5EC 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00050 80A1E5F0 AFA6001C */ sw $a2, 0x001C($sp)
|
||||
/* 00054 80A1E5F4 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00058 80A1E5F8 8FA6001C */ lw $a2, 0x001C($sp)
|
||||
/* 0005C 80A1E5FC 84980204 */ lh $t8, 0x0204($a0) ## 00000204
|
||||
/* 00060 80A1E600 2719FFFF */ addiu $t9, $t8, 0xFFFF ## $t9 = FFFFFFFF
|
||||
/* 00064 80A1E604 A4990204 */ sh $t9, 0x0204($a0) ## 00000204
|
||||
/* 00068 80A1E608 84830204 */ lh $v1, 0x0204($a0) ## 00000204
|
||||
/* 0006C 80A1E60C 5C60000A */ bgtzl $v1, .L80A1E638
|
||||
/* 00070 80A1E610 44835000 */ mtc1 $v1, $f10 ## $f10 = 0.00
|
||||
/* 00074 80A1E614 14600005 */ bne $v1, $zero, .L80A1E62C
|
||||
/* 00078 80A1E618 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 0007C 80A1E61C 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 00080 80A1E620 A4800204 */ sh $zero, 0x0204($a0) ## 00000204
|
||||
/* 00084 80A1E624 1000000C */ beq $zero, $zero, .L80A1E658
|
||||
/* 00088 80A1E628 E4880060 */ swc1 $f8, 0x0060($a0) ## 00000060
|
||||
.L80A1E62C:
|
||||
/* 0008C 80A1E62C A4860204 */ sh $a2, 0x0204($a0) ## 00000204
|
||||
/* 00090 80A1E630 84830204 */ lh $v1, 0x0204($a0) ## 00000204
|
||||
/* 00094 80A1E634 44835000 */ mtc1 $v1, $f10 ## $f10 = 0.00
|
||||
.L80A1E638:
|
||||
/* 00098 80A1E638 44869000 */ mtc1 $a2, $f18 ## $f18 = 0.00
|
||||
/* 0009C 80A1E63C C7A80020 */ lwc1 $f8, 0x0020($sp)
|
||||
/* 000A0 80A1E640 46805420 */ cvt.s.w $f16, $f10
|
||||
/* 000A4 80A1E644 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 000A8 80A1E648 46809120 */ cvt.s.w $f4, $f18
|
||||
/* 000AC 80A1E64C 46048183 */ div.s $f6, $f16, $f4
|
||||
/* 000B0 80A1E650 46064282 */ mul.s $f10, $f8, $f6
|
||||
/* 000B4 80A1E654 E48A0060 */ swc1 $f10, 0x0060($a0) ## 00000060
|
||||
.L80A1E658:
|
||||
/* 000B8 80A1E658 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 000BC 80A1E65C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 000C0 80A1E660 03E00008 */ jr $ra
|
||||
/* 000C4 80A1E664 00000000 */ nop
|
@ -1,67 +0,0 @@
|
||||
glabel func_80A1E668
|
||||
/* 000C8 80A1E668 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 000CC 80A1E66C AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 000D0 80A1E670 AFA40050 */ sw $a0, 0x0050($sp)
|
||||
/* 000D4 80A1E674 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 000D8 80A1E678 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 000DC 80A1E67C 44812000 */ mtc1 $at, $f4 ## $f4 = 300.00
|
||||
/* 000E0 80A1E680 C4860090 */ lwc1 $f6, 0x0090($a0) ## 00000090
|
||||
/* 000E4 80A1E684 8CA81C44 */ lw $t0, 0x1C44($a1) ## 00001C44
|
||||
/* 000E8 80A1E688 8FB80050 */ lw $t8, 0x0050($sp)
|
||||
/* 000EC 80A1E68C 4606203C */ c.lt.s $f4, $f6
|
||||
/* 000F0 80A1E690 00000000 */ nop
|
||||
/* 000F4 80A1E694 45020004 */ bc1fl .L80A1E6A8
|
||||
/* 000F8 80A1E698 8719008A */ lh $t9, 0x008A($t8) ## 0000008A
|
||||
/* 000FC 80A1E69C 1000002C */ beq $zero, $zero, .L80A1E750
|
||||
/* 00100 80A1E6A0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00104 80A1E6A4 8719008A */ lh $t9, 0x008A($t8) ## 0000008A
|
||||
.L80A1E6A8:
|
||||
/* 00108 80A1E6A8 870900B6 */ lh $t1, 0x00B6($t8) ## 000000B6
|
||||
/* 0010C 80A1E6AC 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00110 80A1E6B0 44994000 */ mtc1 $t9, $f8 ## $f8 = 0.00
|
||||
/* 00114 80A1E6B4 44898000 */ mtc1 $t1, $f16 ## $f16 = 0.00
|
||||
/* 00118 80A1E6B8 8FA50050 */ lw $a1, 0x0050($sp)
|
||||
/* 0011C 80A1E6BC 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 00120 80A1E6C0 25060024 */ addiu $a2, $t0, 0x0024 ## $a2 = 00000024
|
||||
/* 00124 80A1E6C4 27A70038 */ addiu $a3, $sp, 0x0038 ## $a3 = FFFFFFE8
|
||||
/* 00128 80A1E6C8 27AB0048 */ addiu $t3, $sp, 0x0048 ## $t3 = FFFFFFF8
|
||||
/* 0012C 80A1E6CC 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 00130 80A1E6D0 468084A0 */ cvt.s.w $f18, $f16
|
||||
/* 00134 80A1E6D4 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
|
||||
/* 00138 80A1E6D8 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFF4
|
||||
/* 0013C 80A1E6DC 248407C0 */ addiu $a0, $a0, 0x07C0 ## $a0 = 000007C0
|
||||
/* 00140 80A1E6E0 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 00144 80A1E6E4 46125101 */ sub.s $f4, $f10, $f18
|
||||
/* 00148 80A1E6E8 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 0014C 80A1E6EC 44023000 */ mfc1 $v0, $f6
|
||||
/* 00150 80A1E6F0 00000000 */ nop
|
||||
/* 00154 80A1E6F4 00021400 */ sll $v0, $v0, 16
|
||||
/* 00158 80A1E6F8 00021403 */ sra $v0, $v0, 16
|
||||
/* 0015C 80A1E6FC 04400003 */ bltz $v0, .L80A1E70C
|
||||
/* 00160 80A1E700 00021823 */ subu $v1, $zero, $v0
|
||||
/* 00164 80A1E704 10000001 */ beq $zero, $zero, .L80A1E70C
|
||||
/* 00168 80A1E708 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
|
||||
.L80A1E70C:
|
||||
/* 0016C 80A1E70C 28611C71 */ slti $at, $v1, 0x1C71
|
||||
/* 00170 80A1E710 54200004 */ bnel $at, $zero, .L80A1E724
|
||||
/* 00174 80A1E714 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 00178 80A1E718 1000000D */ beq $zero, $zero, .L80A1E750
|
||||
/* 0017C 80A1E71C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00180 80A1E720 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
.L80A1E724:
|
||||
/* 00184 80A1E724 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 00188 80A1E728 AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 0018C 80A1E72C AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00190 80A1E730 AFAD0020 */ sw $t5, 0x0020($sp)
|
||||
/* 00194 80A1E734 0C00F7A1 */ jal func_8003DE84
|
||||
/* 00198 80A1E738 AFAE0024 */ sw $t6, 0x0024($sp)
|
||||
/* 0019C 80A1E73C 50400004 */ beql $v0, $zero, .L80A1E750
|
||||
/* 001A0 80A1E740 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 001A4 80A1E744 10000002 */ beq $zero, $zero, .L80A1E750
|
||||
/* 001A8 80A1E748 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 001AC 80A1E74C 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A1E750:
|
||||
/* 001B0 80A1E750 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 001B4 80A1E754 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 001B8 80A1E758 03E00008 */ jr $ra
|
||||
/* 001BC 80A1E75C 00000000 */ nop
|
@ -1,58 +0,0 @@
|
||||
glabel func_80A1E760
|
||||
/* 001C0 80A1E760 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 001C4 80A1E764 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 001C8 80A1E768 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 001CC 80A1E76C AFA40038 */ sw $a0, 0x0038($sp)
|
||||
/* 001D0 80A1E770 AFA60040 */ sw $a2, 0x0040($sp)
|
||||
/* 001D4 80A1E774 AFA70044 */ sw $a3, 0x0044($sp)
|
||||
/* 001D8 80A1E778 8CA40118 */ lw $a0, 0x0118($a1) ## 00000118
|
||||
/* 001DC 80A1E77C 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 001E0 80A1E780 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 001E4 80A1E784 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 001E8 80A1E788 24840008 */ addiu $a0, $a0, 0x0008 ## $a0 = 00000008
|
||||
/* 001EC 80A1E78C 87AE0046 */ lh $t6, 0x0046($sp)
|
||||
/* 001F0 80A1E790 24011554 */ addiu $at, $zero, 0x1554 ## $at = 00001554
|
||||
/* 001F4 80A1E794 01C10019 */ multu $t6, $at
|
||||
/* 001F8 80A1E798 00007812 */ mflo $t7
|
||||
/* 001FC 80A1E79C 004F1821 */ addu $v1, $v0, $t7
|
||||
/* 00200 80A1E7A0 00032400 */ sll $a0, $v1, 16
|
||||
/* 00204 80A1E7A4 A7A30036 */ sh $v1, 0x0036($sp)
|
||||
/* 00208 80A1E7A8 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 0020C 80A1E7AC 00042403 */ sra $a0, $a0, 16
|
||||
/* 00210 80A1E7B0 C7A40040 */ lwc1 $f4, 0x0040($sp)
|
||||
/* 00214 80A1E7B4 8E180118 */ lw $t8, 0x0118($s0) ## 00000118
|
||||
/* 00218 80A1E7B8 87A40036 */ lh $a0, 0x0036($sp)
|
||||
/* 0021C 80A1E7BC 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 00220 80A1E7C0 C7080008 */ lwc1 $f8, 0x0008($t8) ## 00000008
|
||||
/* 00224 80A1E7C4 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 00228 80A1E7C8 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 0022C 80A1E7CC E7AA0028 */ swc1 $f10, 0x0028($sp)
|
||||
/* 00230 80A1E7D0 C7B00040 */ lwc1 $f16, 0x0040($sp)
|
||||
/* 00234 80A1E7D4 8E190118 */ lw $t9, 0x0118($s0) ## 00000118
|
||||
/* 00238 80A1E7D8 C7A80028 */ lwc1 $f8, 0x0028($sp)
|
||||
/* 0023C 80A1E7DC 46100482 */ mul.s $f18, $f0, $f16
|
||||
/* 00240 80A1E7E0 C7240010 */ lwc1 $f4, 0x0010($t9) ## 00000010
|
||||
/* 00244 80A1E7E4 27A80028 */ addiu $t0, $sp, 0x0028 ## $t0 = FFFFFFF0
|
||||
/* 00248 80A1E7E8 8FA20038 */ lw $v0, 0x0038($sp)
|
||||
/* 0024C 80A1E7EC 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00250 80A1E7F0 E7A60030 */ swc1 $f6, 0x0030($sp)
|
||||
/* 00254 80A1E7F4 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
|
||||
/* 00258 80A1E7F8 460A4401 */ sub.s $f16, $f8, $f10
|
||||
/* 0025C 80A1E7FC E7B00028 */ swc1 $f16, 0x0028($sp)
|
||||
/* 00260 80A1E800 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
|
||||
/* 00264 80A1E804 46123101 */ sub.s $f4, $f6, $f18
|
||||
/* 00268 80A1E808 E7A40030 */ swc1 $f4, 0x0030($sp)
|
||||
/* 0026C 80A1E80C 8D0A0000 */ lw $t2, 0x0000($t0) ## FFFFFFF0
|
||||
/* 00270 80A1E810 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 00274 80A1E814 8D090004 */ lw $t1, 0x0004($t0) ## FFFFFFF4
|
||||
/* 00278 80A1E818 AC490004 */ sw $t1, 0x0004($v0) ## 00000004
|
||||
/* 0027C 80A1E81C 8D0A0008 */ lw $t2, 0x0008($t0) ## FFFFFFF8
|
||||
/* 00280 80A1E820 AC4A0008 */ sw $t2, 0x0008($v0) ## 00000008
|
||||
/* 00284 80A1E824 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00288 80A1E828 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0028C 80A1E82C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00290 80A1E830 03E00008 */ jr $ra
|
||||
/* 00294 80A1E834 00000000 */ nop
|
@ -1,55 +0,0 @@
|
||||
glabel func_80A1E838
|
||||
/* 00298 80A1E838 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0029C 80A1E83C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 002A0 80A1E840 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 002A4 80A1E844 908E01A5 */ lbu $t6, 0x01A5($a0) ## 000001A5
|
||||
/* 002A8 80A1E848 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 002AC 80A1E84C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 002B0 80A1E850 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 002B4 80A1E854 11E00024 */ beq $t7, $zero, .L80A1E8E8
|
||||
/* 002B8 80A1E858 00000000 */ nop
|
||||
/* 002BC 80A1E85C 8C8201B0 */ lw $v0, 0x01B0($a0) ## 000001B0
|
||||
/* 002C0 80A1E860 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
|
||||
/* 002C4 80A1E864 8C580024 */ lw $t8, 0x0024($v0) ## 00000024
|
||||
/* 002C8 80A1E868 8F190000 */ lw $t9, 0x0000($t8) ## 00000000
|
||||
/* 002CC 80A1E86C 33280080 */ andi $t0, $t9, 0x0080 ## $t0 = 00000000
|
||||
/* 002D0 80A1E870 51000004 */ beql $t0, $zero, .L80A1E884
|
||||
/* 002D4 80A1E874 A0C00200 */ sb $zero, 0x0200($a2) ## 00000200
|
||||
/* 002D8 80A1E878 10000002 */ beq $zero, $zero, .L80A1E884
|
||||
/* 002DC 80A1E87C A0890200 */ sb $t1, 0x0200($a0) ## 00000200
|
||||
/* 002E0 80A1E880 A0C00200 */ sb $zero, 0x0200($a2) ## 00000200
|
||||
.L80A1E884:
|
||||
/* 002E4 80A1E884 90CA01A5 */ lbu $t2, 0x01A5($a2) ## 000001A5
|
||||
/* 002E8 80A1E888 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 002EC 80A1E88C 314BFFFD */ andi $t3, $t2, 0xFFFD ## $t3 = 00000000
|
||||
/* 002F0 80A1E890 A0CB01A5 */ sb $t3, 0x01A5($a2) ## 000001A5
|
||||
/* 002F4 80A1E894 0C00D58A */ jal Actor_ApplyDamage
|
||||
|
||||
/* 002F8 80A1E898 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 002FC 80A1E89C 1C400010 */ bgtz $v0, .L80A1E8E0
|
||||
/* 00300 80A1E8A0 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 00304 80A1E8A4 8CC20118 */ lw $v0, 0x0118($a2) ## 00000118
|
||||
/* 00308 80A1E8A8 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 0030C 80A1E8AC 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
|
||||
/* 00310 80A1E8B0 904300AF */ lbu $v1, 0x00AF($v0) ## 000000AF
|
||||
/* 00314 80A1E8B4 28610009 */ slti $at, $v1, 0x0009
|
||||
/* 00318 80A1E8B8 10200007 */ beq $at, $zero, .L80A1E8D8
|
||||
/* 0031C 80A1E8BC 246DFFF8 */ addiu $t5, $v1, 0xFFF8 ## $t5 = FFFFFFF8
|
||||
/* 00320 80A1E8C0 0C00CB1F */ jal func_80032C7C
|
||||
/* 00324 80A1E8C4 AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00328 80A1E8C8 8FA60018 */ lw $a2, 0x0018($sp)
|
||||
/* 0032C 80A1E8CC 8CCC0118 */ lw $t4, 0x0118($a2) ## 00000118
|
||||
/* 00330 80A1E8D0 10000002 */ beq $zero, $zero, .L80A1E8DC
|
||||
/* 00334 80A1E8D4 A18000AF */ sb $zero, 0x00AF($t4) ## 000000AF
|
||||
.L80A1E8D8:
|
||||
/* 00338 80A1E8D8 A04D00AF */ sb $t5, 0x00AF($v0) ## 000000AF
|
||||
.L80A1E8DC:
|
||||
/* 0033C 80A1E8DC A4C00212 */ sh $zero, 0x0212($a2) ## 00000212
|
||||
.L80A1E8E0:
|
||||
/* 00340 80A1E8E0 10000001 */ beq $zero, $zero, .L80A1E8E8
|
||||
/* 00344 80A1E8E4 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
.L80A1E8E8:
|
||||
/* 00348 80A1E8E8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0034C 80A1E8EC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00350 80A1E8F0 03E00008 */ jr $ra
|
||||
/* 00354 80A1E8F4 00000000 */ nop
|
@ -1,155 +0,0 @@
|
||||
glabel func_80A1E8F8
|
||||
/* 00358 80A1E8F8 27BDFF58 */ addiu $sp, $sp, 0xFF58 ## $sp = FFFFFF58
|
||||
/* 0035C 80A1E8FC 3C0E80A2 */ lui $t6, %hi(D_80A1FBE8) ## $t6 = 80A20000
|
||||
/* 00360 80A1E900 AFBF0074 */ sw $ra, 0x0074($sp)
|
||||
/* 00364 80A1E904 AFB70070 */ sw $s7, 0x0070($sp)
|
||||
/* 00368 80A1E908 AFB6006C */ sw $s6, 0x006C($sp)
|
||||
/* 0036C 80A1E90C AFB50068 */ sw $s5, 0x0068($sp)
|
||||
/* 00370 80A1E910 AFB40064 */ sw $s4, 0x0064($sp)
|
||||
/* 00374 80A1E914 AFB30060 */ sw $s3, 0x0060($sp)
|
||||
/* 00378 80A1E918 AFB2005C */ sw $s2, 0x005C($sp)
|
||||
/* 0037C 80A1E91C AFB10058 */ sw $s1, 0x0058($sp)
|
||||
/* 00380 80A1E920 AFB00054 */ sw $s0, 0x0054($sp)
|
||||
/* 00384 80A1E924 F7BE0048 */ sdc1 $f30, 0x0048($sp)
|
||||
/* 00388 80A1E928 F7BC0040 */ sdc1 $f28, 0x0040($sp)
|
||||
/* 0038C 80A1E92C F7BA0038 */ sdc1 $f26, 0x0038($sp)
|
||||
/* 00390 80A1E930 F7B80030 */ sdc1 $f24, 0x0030($sp)
|
||||
/* 00394 80A1E934 F7B60028 */ sdc1 $f22, 0x0028($sp)
|
||||
/* 00398 80A1E938 F7B40020 */ sdc1 $f20, 0x0020($sp)
|
||||
/* 0039C 80A1E93C AFA500AC */ sw $a1, 0x00AC($sp)
|
||||
/* 003A0 80A1E940 25CEFBE8 */ addiu $t6, $t6, %lo(D_80A1FBE8) ## $t6 = 80A1FBE8
|
||||
/* 003A4 80A1E944 8DD80000 */ lw $t8, 0x0000($t6) ## 80A1FBE8
|
||||
/* 003A8 80A1E948 27B4009C */ addiu $s4, $sp, 0x009C ## $s4 = FFFFFFF4
|
||||
/* 003AC 80A1E94C 3C1980A2 */ lui $t9, %hi(D_80A1FBF4) ## $t9 = 80A20000
|
||||
/* 003B0 80A1E950 AE980000 */ sw $t8, 0x0000($s4) ## FFFFFFF4
|
||||
/* 003B4 80A1E954 8DCF0004 */ lw $t7, 0x0004($t6) ## 80A1FBEC
|
||||
/* 003B8 80A1E958 2739FBF4 */ addiu $t9, $t9, %lo(D_80A1FBF4) ## $t9 = 80A1FBF4
|
||||
/* 003BC 80A1E95C 27B60090 */ addiu $s6, $sp, 0x0090 ## $s6 = FFFFFFE8
|
||||
/* 003C0 80A1E960 AE8F0004 */ sw $t7, 0x0004($s4) ## FFFFFFF8
|
||||
/* 003C4 80A1E964 8DD80008 */ lw $t8, 0x0008($t6) ## 80A1FBF0
|
||||
/* 003C8 80A1E968 3C0A80A2 */ lui $t2, %hi(D_80A1FC00) ## $t2 = 80A20000
|
||||
/* 003CC 80A1E96C 254AFC00 */ addiu $t2, $t2, %lo(D_80A1FC00) ## $t2 = 80A1FC00
|
||||
/* 003D0 80A1E970 AE980008 */ sw $t8, 0x0008($s4) ## FFFFFFFC
|
||||
/* 003D4 80A1E974 8F290000 */ lw $t1, 0x0000($t9) ## 80A1FBF4
|
||||
/* 003D8 80A1E978 27B70084 */ addiu $s7, $sp, 0x0084 ## $s7 = FFFFFFDC
|
||||
/* 003DC 80A1E97C 3C014000 */ lui $at, 0x4000 ## $at = 40000000
|
||||
/* 003E0 80A1E980 AEC90000 */ sw $t1, 0x0000($s6) ## FFFFFFE8
|
||||
/* 003E4 80A1E984 8F280004 */ lw $t0, 0x0004($t9) ## 80A1FBF8
|
||||
/* 003E8 80A1E988 44813000 */ mtc1 $at, $f6 ## $f6 = 2.00
|
||||
/* 003EC 80A1E98C 4486E000 */ mtc1 $a2, $f28 ## $f28 = 0.00
|
||||
/* 003F0 80A1E990 AEC80004 */ sw $t0, 0x0004($s6) ## FFFFFFEC
|
||||
/* 003F4 80A1E994 8F290008 */ lw $t1, 0x0008($t9) ## 80A1FBFC
|
||||
/* 003F8 80A1E998 4487F000 */ mtc1 $a3, $f30 ## $f30 = 0.00
|
||||
/* 003FC 80A1E99C 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 00400 80A1E9A0 AEC90008 */ sw $t1, 0x0008($s6) ## FFFFFFF0
|
||||
/* 00404 80A1E9A4 8D4C0000 */ lw $t4, 0x0000($t2) ## 80A1FC00
|
||||
/* 00408 80A1E9A8 30B500FF */ andi $s5, $a1, 0x00FF ## $s5 = 00000000
|
||||
/* 0040C 80A1E9AC AEEC0000 */ sw $t4, 0x0000($s7) ## FFFFFFDC
|
||||
/* 00410 80A1E9B0 8D4B0004 */ lw $t3, 0x0004($t2) ## 80A1FC04
|
||||
/* 00414 80A1E9B4 AEEB0004 */ sw $t3, 0x0004($s7) ## FFFFFFE0
|
||||
/* 00418 80A1E9B8 8D4C0008 */ lw $t4, 0x0008($t2) ## 80A1FC08
|
||||
/* 0041C 80A1E9BC AEEC0008 */ sw $t4, 0x0008($s7) ## FFFFFFE4
|
||||
/* 00420 80A1E9C0 8C8E0024 */ lw $t6, 0x0024($a0) ## 00000024
|
||||
/* 00424 80A1E9C4 AE8E0000 */ sw $t6, 0x0000($s4) ## FFFFFFF4
|
||||
/* 00428 80A1E9C8 8C8D0028 */ lw $t5, 0x0028($a0) ## 00000028
|
||||
/* 0042C 80A1E9CC AE8D0004 */ sw $t5, 0x0004($s4) ## FFFFFFF8
|
||||
/* 00430 80A1E9D0 8C8E002C */ lw $t6, 0x002C($a0) ## 0000002C
|
||||
/* 00434 80A1E9D4 AE8E0008 */ sw $t6, 0x0008($s4) ## FFFFFFFC
|
||||
/* 00438 80A1E9D8 C4840080 */ lwc1 $f4, 0x0080($a0) ## 00000080
|
||||
/* 0043C 80A1E9DC 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00440 80A1E9E0 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00444 80A1E9E4 E7A800A0 */ swc1 $f8, 0x00A0($sp)
|
||||
/* 00448 80A1E9E8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 0044C 80A1E9EC 4481C000 */ mtc1 $at, $f24 ## $f24 = 0.50
|
||||
/* 00450 80A1E9F0 3C014780 */ lui $at, 0x4780 ## $at = 47800000
|
||||
/* 00454 80A1E9F4 44818000 */ mtc1 $at, $f16 ## $f16 = 65536.00
|
||||
/* 00458 80A1E9F8 46180281 */ sub.s $f10, $f0, $f24
|
||||
/* 0045C 80A1E9FC 8FA200B8 */ lw $v0, 0x00B8($sp)
|
||||
/* 00460 80A1EA00 3C180001 */ lui $t8, 0x0001 ## $t8 = 00010000
|
||||
/* 00464 80A1EA04 C7BA00C4 */ lwc1 $f26, 0x00C4($sp)
|
||||
/* 00468 80A1EA08 46105482 */ mul.s $f18, $f10, $f16
|
||||
/* 0046C 80A1EA0C C7B600BC */ lwc1 $f22, 0x00BC($sp)
|
||||
/* 00470 80A1EA10 C7B400C0 */ lwc1 $f20, 0x00C0($sp)
|
||||
/* 00474 80A1EA14 00409025 */ or $s2, $v0, $zero ## $s2 = 00000000
|
||||
/* 00478 80A1EA18 4600910D */ trunc.w.s $f4, $f18
|
||||
/* 0047C 80A1EA1C 44102000 */ mfc1 $s0, $f4
|
||||
/* 00480 80A1EA20 00000000 */ nop
|
||||
/* 00484 80A1EA24 00108400 */ sll $s0, $s0, 16
|
||||
/* 00488 80A1EA28 04400033 */ bltz $v0, .L80A1EAF8
|
||||
/* 0048C 80A1EA2C 00108403 */ sra $s0, $s0, 16
|
||||
/* 00490 80A1EA30 0302001A */ div $zero, $t8, $v0
|
||||
/* 00494 80A1EA34 00009812 */ mflo $s3
|
||||
/* 00498 80A1EA38 00139C00 */ sll $s3, $s3, 16
|
||||
/* 0049C 80A1EA3C 00139C03 */ sra $s3, $s3, 16
|
||||
/* 004A0 80A1EA40 14400002 */ bne $v0, $zero, .L80A1EA4C
|
||||
/* 004A4 80A1EA44 00000000 */ nop
|
||||
/* 004A8 80A1EA48 0007000D */ break 7
|
||||
.L80A1EA4C:
|
||||
/* 004AC 80A1EA4C 2401FFFF */ addiu $at, $zero, 0xFFFF ## $at = FFFFFFFF
|
||||
/* 004B0 80A1EA50 14410004 */ bne $v0, $at, .L80A1EA64
|
||||
/* 004B4 80A1EA54 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 004B8 80A1EA58 17010002 */ bne $t8, $at, .L80A1EA64
|
||||
/* 004BC 80A1EA5C 00000000 */ nop
|
||||
/* 004C0 80A1EA60 0006000D */ break 6
|
||||
.L80A1EA64:
|
||||
/* 004C4 80A1EA64 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 004C8 80A1EA68 00000000 */ nop
|
||||
/* 004CC 80A1EA6C 46180181 */ sub.s $f6, $f0, $f24
|
||||
/* 004D0 80A1EA70 E7BA0088 */ swc1 $f26, 0x0088($sp)
|
||||
/* 004D4 80A1EA74 46143202 */ mul.s $f8, $f6, $f20
|
||||
/* 004D8 80A1EA78 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 004DC 80A1EA7C E7A80084 */ swc1 $f8, 0x0084($sp)
|
||||
/* 004E0 80A1EA80 46180281 */ sub.s $f10, $f0, $f24
|
||||
/* 004E4 80A1EA84 00102400 */ sll $a0, $s0, 16
|
||||
/* 004E8 80A1EA88 00042403 */ sra $a0, $a0, 16
|
||||
/* 004EC 80A1EA8C 46145402 */ mul.s $f16, $f10, $f20
|
||||
/* 004F0 80A1EA90 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 004F4 80A1EA94 E7B0008C */ swc1 $f16, 0x008C($sp)
|
||||
/* 004F8 80A1EA98 46160482 */ mul.s $f18, $f0, $f22
|
||||
/* 004FC 80A1EA9C C6240024 */ lwc1 $f4, 0x0024($s1) ## 00000024
|
||||
/* 00500 80A1EAA0 00102400 */ sll $a0, $s0, 16
|
||||
/* 00504 80A1EAA4 00042403 */ sra $a0, $a0, 16
|
||||
/* 00508 80A1EAA8 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 0050C 80A1EAAC 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 00510 80A1EAB0 E7A6009C */ swc1 $f6, 0x009C($sp)
|
||||
/* 00514 80A1EAB4 46160202 */ mul.s $f8, $f0, $f22
|
||||
/* 00518 80A1EAB8 C62A002C */ lwc1 $f10, 0x002C($s1) ## 0000002C
|
||||
/* 0051C 80A1EABC E7BE0018 */ swc1 $f30, 0x0018($sp)
|
||||
/* 00520 80A1EAC0 E7BC0014 */ swc1 $f28, 0x0014($sp)
|
||||
/* 00524 80A1EAC4 AFB50010 */ sw $s5, 0x0010($sp)
|
||||
/* 00528 80A1EAC8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 0052C 80A1EACC 02802825 */ or $a1, $s4, $zero ## $a1 = FFFFFFF4
|
||||
/* 00530 80A1EAD0 460A4400 */ add.s $f16, $f8, $f10
|
||||
/* 00534 80A1EAD4 02C03025 */ or $a2, $s6, $zero ## $a2 = FFFFFFE8
|
||||
/* 00538 80A1EAD8 02E03825 */ or $a3, $s7, $zero ## $a3 = FFFFFFDC
|
||||
/* 0053C 80A1EADC 0C287D99 */ jal func_80A1F664
|
||||
/* 00540 80A1EAE0 E7B000A4 */ swc1 $f16, 0x00A4($sp)
|
||||
/* 00544 80A1EAE4 02138021 */ addu $s0, $s0, $s3
|
||||
/* 00548 80A1EAE8 00108400 */ sll $s0, $s0, 16
|
||||
/* 0054C 80A1EAEC 2652FFFF */ addiu $s2, $s2, 0xFFFF ## $s2 = FFFFFFFF
|
||||
/* 00550 80A1EAF0 0641FFDC */ bgez $s2, .L80A1EA64
|
||||
/* 00554 80A1EAF4 00108403 */ sra $s0, $s0, 16
|
||||
.L80A1EAF8:
|
||||
/* 00558 80A1EAF8 8FBF0074 */ lw $ra, 0x0074($sp)
|
||||
/* 0055C 80A1EAFC D7B40020 */ ldc1 $f20, 0x0020($sp)
|
||||
/* 00560 80A1EB00 D7B60028 */ ldc1 $f22, 0x0028($sp)
|
||||
/* 00564 80A1EB04 D7B80030 */ ldc1 $f24, 0x0030($sp)
|
||||
/* 00568 80A1EB08 D7BA0038 */ ldc1 $f26, 0x0038($sp)
|
||||
/* 0056C 80A1EB0C D7BC0040 */ ldc1 $f28, 0x0040($sp)
|
||||
/* 00570 80A1EB10 D7BE0048 */ ldc1 $f30, 0x0048($sp)
|
||||
/* 00574 80A1EB14 8FB00054 */ lw $s0, 0x0054($sp)
|
||||
/* 00578 80A1EB18 8FB10058 */ lw $s1, 0x0058($sp)
|
||||
/* 0057C 80A1EB1C 8FB2005C */ lw $s2, 0x005C($sp)
|
||||
/* 00580 80A1EB20 8FB30060 */ lw $s3, 0x0060($sp)
|
||||
/* 00584 80A1EB24 8FB40064 */ lw $s4, 0x0064($sp)
|
||||
/* 00588 80A1EB28 8FB50068 */ lw $s5, 0x0068($sp)
|
||||
/* 0058C 80A1EB2C 8FB6006C */ lw $s6, 0x006C($sp)
|
||||
/* 00590 80A1EB30 8FB70070 */ lw $s7, 0x0070($sp)
|
||||
/* 00594 80A1EB34 27BD00A8 */ addiu $sp, $sp, 0x00A8 ## $sp = 00000000
|
||||
/* 00598 80A1EB38 03E00008 */ jr $ra
|
||||
/* 0059C 80A1EB3C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
@ -1,29 +0,0 @@
|
||||
glabel func_80A1EC70
|
||||
/* 006D0 80A1EC70 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 006D4 80A1EC74 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 006D8 80A1EC78 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 006DC 80A1EC7C 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
|
||||
/* 006E0 80A1EC80 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 006E4 80A1EC84 0C287968 */ jal func_80A1E5A0
|
||||
/* 006E8 80A1EC88 3C064100 */ lui $a2, 0x4100 ## $a2 = 41000000
|
||||
/* 006EC 80A1EC8C 1040000D */ beq $v0, $zero, .L80A1ECC4
|
||||
/* 006F0 80A1EC90 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 006F4 80A1EC94 84EE0204 */ lh $t6, 0x0204($a3) ## 00000204
|
||||
/* 006F8 80A1EC98 2404012C */ addiu $a0, $zero, 0x012C ## $a0 = 0000012C
|
||||
/* 006FC 80A1EC9C 24050096 */ addiu $a1, $zero, 0x0096 ## $a1 = 00000096
|
||||
/* 00700 80A1ECA0 55C00009 */ bnel $t6, $zero, .L80A1ECC8
|
||||
/* 00704 80A1ECA4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00708 80A1ECA8 0C01DF64 */ jal Math_Rand_S16Offset
|
||||
|
||||
/* 0070C 80A1ECAC AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 00710 80A1ECB0 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00714 80A1ECB4 3C0F80A2 */ lui $t7, %hi(func_80A1ECD4) ## $t7 = 80A20000
|
||||
/* 00718 80A1ECB8 25EFECD4 */ addiu $t7, $t7, %lo(func_80A1ECD4) ## $t7 = 80A1ECD4
|
||||
/* 0071C 80A1ECBC A4E20212 */ sh $v0, 0x0212($a3) ## 00000212
|
||||
/* 00720 80A1ECC0 ACEF0190 */ sw $t7, 0x0190($a3) ## 00000190
|
||||
.L80A1ECC4:
|
||||
/* 00724 80A1ECC4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80A1ECC8:
|
||||
/* 00728 80A1ECC8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0072C 80A1ECCC 03E00008 */ jr $ra
|
||||
/* 00730 80A1ECD0 00000000 */ nop
|
@ -1,432 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A1FC70
|
||||
.float 0.9
|
||||
|
||||
glabel D_80A1FC74
|
||||
.word 0x45AAA000
|
||||
glabel D_80A1FC78
|
||||
.word 0x4622F983
|
||||
glabel D_80A1FC7C
|
||||
.float 0.2
|
||||
|
||||
glabel D_80A1FC80
|
||||
.float 0.3
|
||||
|
||||
.text
|
||||
glabel func_80A1ECD4
|
||||
/* 00734 80A1ECD4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 00738 80A1ECD8 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
|
||||
/* 0073C 80A1ECDC 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98
|
||||
/* 00740 80A1ECE0 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00744 80A1ECE4 AFB00030 */ sw $s0, 0x0030($sp)
|
||||
/* 00748 80A1ECE8 AFA5006C */ sw $a1, 0x006C($sp)
|
||||
/* 0074C 80A1ECEC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00750 80A1ECF0 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 00754 80A1ECF4 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00758 80A1ECF8 44050000 */ mfc1 $a1, $f0
|
||||
/* 0075C 80A1ECFC 44070000 */ mfc1 $a3, $f0
|
||||
/* 00760 80A1ED00 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 00764 80A1ED04 24840168 */ addiu $a0, $a0, 0x0168 ## $a0 = 00000168
|
||||
/* 00768 80A1ED08 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 0076C 80A1ED0C E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00770 80A1ED10 8E0F0154 */ lw $t7, 0x0154($s0) ## 00000154
|
||||
/* 00774 80A1ED14 3C0E0600 */ lui $t6, 0x0600 ## $t6 = 06000000
|
||||
/* 00778 80A1ED18 25CE6CF8 */ addiu $t6, $t6, 0x6CF8 ## $t6 = 06006CF8
|
||||
/* 0077C 80A1ED1C 15CF0012 */ bne $t6, $t7, .L80A1ED68
|
||||
/* 00780 80A1ED20 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 00784 80A1ED24 8E05015C */ lw $a1, 0x015C($s0) ## 0000015C
|
||||
/* 00788 80A1ED28 0C0295B2 */ jal func_800A56C8
|
||||
/* 0078C 80A1ED2C AFA4003C */ sw $a0, 0x003C($sp)
|
||||
/* 00790 80A1ED30 54400159 */ bnel $v0, $zero, .L80A1F298
|
||||
/* 00794 80A1ED34 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 00798 80A1ED38 8E050118 */ lw $a1, 0x0118($s0) ## 00000118
|
||||
/* 0079C 80A1ED3C 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 007A0 80A1ED40 0C01DFE4 */ jal Math_Vec3f_DistXYZ
|
||||
|
||||
/* 007A4 80A1ED44 24A50024 */ addiu $a1, $a1, 0x0024 ## $a1 = 00000024
|
||||
/* 007A8 80A1ED48 E6000218 */ swc1 $f0, 0x0218($s0) ## 00000218
|
||||
/* 007AC 80A1ED4C 3C0580A2 */ lui $a1, %hi(D_80A1FBA0) ## $a1 = 80A20000
|
||||
/* 007B0 80A1ED50 24A5FBA0 */ addiu $a1, $a1, %lo(D_80A1FBA0) ## $a1 = 80A1FBA0
|
||||
/* 007B4 80A1ED54 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 007B8 80A1ED58 0C00D3B0 */ jal func_80034EC0
|
||||
/* 007BC 80A1ED5C 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
|
||||
/* 007C0 80A1ED60 1000014D */ beq $zero, $zero, .L80A1F298
|
||||
/* 007C4 80A1ED64 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80A1ED68:
|
||||
/* 007C8 80A1ED68 86180208 */ lh $t8, 0x0208($s0) ## 00000208
|
||||
/* 007CC 80A1ED6C 57000023 */ bnel $t8, $zero, .L80A1EDFC
|
||||
/* 007D0 80A1ED70 860D020A */ lh $t5, 0x020A($s0) ## 0000020A
|
||||
/* 007D4 80A1ED74 8619020A */ lh $t9, 0x020A($s0) ## 0000020A
|
||||
/* 007D8 80A1ED78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 007DC 80A1ED7C 5720001F */ bnel $t9, $zero, .L80A1EDFC
|
||||
/* 007E0 80A1ED80 860D020A */ lh $t5, 0x020A($s0) ## 0000020A
|
||||
/* 007E4 80A1ED84 0C287A0E */ jal func_80A1E838
|
||||
/* 007E8 80A1ED88 8FA5006C */ lw $a1, 0x006C($sp)
|
||||
/* 007EC 80A1ED8C 5040001B */ beql $v0, $zero, .L80A1EDFC
|
||||
/* 007F0 80A1ED90 860D020A */ lh $t5, 0x020A($s0) ## 0000020A
|
||||
/* 007F4 80A1ED94 8E080118 */ lw $t0, 0x0118($s0) ## 00000118
|
||||
/* 007F8 80A1ED98 24053980 */ addiu $a1, $zero, 0x3980 ## $a1 = 00003980
|
||||
/* 007FC 80A1ED9C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00800 80A1EDA0 910900AF */ lbu $t1, 0x00AF($t0) ## 000000AF
|
||||
/* 00804 80A1EDA4 1920000D */ blez $t1, .L80A1EDDC
|
||||
/* 00808 80A1EDA8 00000000 */ nop
|
||||
/* 0080C 80A1EDAC 920A0200 */ lbu $t2, 0x0200($s0) ## 00000200
|
||||
/* 00810 80A1EDB0 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
|
||||
/* 00814 80A1EDB4 15400004 */ bne $t2, $zero, .L80A1EDC8
|
||||
/* 00818 80A1EDB8 00000000 */ nop
|
||||
/* 0081C 80A1EDBC 44813000 */ mtc1 $at, $f6 ## $f6 = 6.00
|
||||
/* 00820 80A1EDC0 00000000 */ nop
|
||||
/* 00824 80A1EDC4 E6060060 */ swc1 $f6, 0x0060($s0) ## 00000060
|
||||
.L80A1EDC8:
|
||||
/* 00828 80A1EDC8 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 0082C 80A1EDCC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00830 80A1EDD0 240B0014 */ addiu $t3, $zero, 0x0014 ## $t3 = 00000014
|
||||
/* 00834 80A1EDD4 10000005 */ beq $zero, $zero, .L80A1EDEC
|
||||
/* 00838 80A1EDD8 A60B0208 */ sh $t3, 0x0208($s0) ## 00000208
|
||||
.L80A1EDDC:
|
||||
/* 0083C 80A1EDDC 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00840 80A1EDE0 24053980 */ addiu $a1, $zero, 0x3980 ## $a1 = 00003980
|
||||
/* 00844 80A1EDE4 240C0006 */ addiu $t4, $zero, 0x0006 ## $t4 = 00000006
|
||||
/* 00848 80A1EDE8 A60C020A */ sh $t4, 0x020A($s0) ## 0000020A
|
||||
.L80A1EDEC:
|
||||
/* 0084C 80A1EDEC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00850 80A1EDF0 00000000 */ nop
|
||||
/* 00854 80A1EDF4 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
|
||||
/* 00858 80A1EDF8 860D020A */ lh $t5, 0x020A($s0) ## 0000020A
|
||||
.L80A1EDFC:
|
||||
/* 0085C 80A1EDFC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00860 80A1EE00 26040050 */ addiu $a0, $s0, 0x0050 ## $a0 = 00000050
|
||||
/* 00864 80A1EE04 11A00038 */ beq $t5, $zero, .L80A1EEE8
|
||||
/* 00868 80A1EE08 3C053CCC */ lui $a1, 0x3CCC ## $a1 = 3CCC0000
|
||||
/* 0086C 80A1EE0C E6000168 */ swc1 $f0, 0x0168($s0) ## 00000168
|
||||
/* 00870 80A1EE10 3C063DA3 */ lui $a2, 0x3DA3 ## $a2 = 3DA30000
|
||||
/* 00874 80A1EE14 3C073F19 */ lui $a3, 0x3F19 ## $a3 = 3F190000
|
||||
/* 00878 80A1EE18 34E7999A */ ori $a3, $a3, 0x999A ## $a3 = 3F19999A
|
||||
/* 0087C 80A1EE1C 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3DA3D70A
|
||||
/* 00880 80A1EE20 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00884 80A1EE24 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00888 80A1EE28 34A5CCCC */ ori $a1, $a1, 0xCCCC ## $a1 = 3CCCCCCC
|
||||
/* 0088C 80A1EE2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00890 80A1EE30 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 00894 80A1EE34 8E050050 */ lw $a1, 0x0050($s0) ## 00000050
|
||||
/* 00898 80A1EE38 920E0114 */ lbu $t6, 0x0114($s0) ## 00000114
|
||||
/* 0089C 80A1EE3C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 008A0 80A1EE40 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
|
||||
/* 008A4 80A1EE44 15C00008 */ bne $t6, $zero, .L80A1EE68
|
||||
/* 008A8 80A1EE48 240600C8 */ addiu $a2, $zero, 0x00C8 ## $a2 = 000000C8
|
||||
/* 008AC 80A1EE4C 860F020A */ lh $t7, 0x020A($s0) ## 0000020A
|
||||
/* 008B0 80A1EE50 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 008B4 80A1EE54 0C00D09B */ jal func_8003426C
|
||||
/* 008B8 80A1EE58 AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 008BC 80A1EE5C 8618020A */ lh $t8, 0x020A($s0) ## 0000020A
|
||||
/* 008C0 80A1EE60 2719FFFF */ addiu $t9, $t8, 0xFFFF ## $t9 = FFFFFFFF
|
||||
/* 008C4 80A1EE64 A619020A */ sh $t9, 0x020A($s0) ## 0000020A
|
||||
.L80A1EE68:
|
||||
/* 008C8 80A1EE68 8608020A */ lh $t0, 0x020A($s0) ## 0000020A
|
||||
/* 008CC 80A1EE6C 8FA5006C */ lw $a1, 0x006C($sp)
|
||||
/* 008D0 80A1EE70 24060010 */ addiu $a2, $zero, 0x0010 ## $a2 = 00000010
|
||||
/* 008D4 80A1EE74 15000107 */ bne $t0, $zero, .L80A1F294
|
||||
/* 008D8 80A1EE78 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24
|
||||
/* 008DC 80A1EE7C C60801F8 */ lwc1 $f8, 0x01F8($s0) ## 000001F8
|
||||
/* 008E0 80A1EE80 8E0701F4 */ lw $a3, 0x01F4($s0) ## 000001F4
|
||||
/* 008E4 80A1EE84 24090600 */ addiu $t1, $zero, 0x0600 ## $t1 = 00000600
|
||||
/* 008E8 80A1EE88 E7A80010 */ swc1 $f8, 0x0010($sp)
|
||||
/* 008EC 80A1EE8C C60A01FC */ lwc1 $f10, 0x01FC($s0) ## 000001FC
|
||||
/* 008F0 80A1EE90 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 008F4 80A1EE94 AFA90020 */ sw $t1, 0x0020($sp)
|
||||
/* 008F8 80A1EE98 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 008FC 80A1EE9C AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 00900 80A1EEA0 0C00C7D4 */ jal Actor_Spawn
|
||||
## ActorSpawn
|
||||
/* 00904 80A1EEA4 E7AA0014 */ swc1 $f10, 0x0014($sp)
|
||||
/* 00908 80A1EEA8 50400003 */ beql $v0, $zero, .L80A1EEB8
|
||||
/* 0090C 80A1EEAC 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
|
||||
/* 00910 80A1EEB0 A44001F8 */ sh $zero, 0x01F8($v0) ## 000001F8
|
||||
/* 00914 80A1EEB4 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
|
||||
.L80A1EEB8:
|
||||
/* 00918 80A1EEB8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 0091C 80A1EEBC 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
|
||||
/* 00920 80A1EEC0 844A001C */ lh $t2, 0x001C($v0) ## 0000001C
|
||||
/* 00924 80A1EEC4 240700A0 */ addiu $a3, $zero, 0x00A0 ## $a3 = 000000A0
|
||||
/* 00928 80A1EEC8 354B4000 */ ori $t3, $t2, 0x4000 ## $t3 = 00004000
|
||||
/* 0092C 80A1EECC A44B001C */ sh $t3, 0x001C($v0) ## 0000001C
|
||||
/* 00930 80A1EED0 0C007E50 */ jal Item_DropCollectibleRandom
|
||||
|
||||
/* 00934 80A1EED4 8FA4006C */ lw $a0, 0x006C($sp)
|
||||
/* 00938 80A1EED8 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 0093C 80A1EEDC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00940 80A1EEE0 100000ED */ beq $zero, $zero, .L80A1F298
|
||||
/* 00944 80A1EEE4 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80A1EEE8:
|
||||
/* 00948 80A1EEE8 960C0088 */ lhu $t4, 0x0088($s0) ## 00000088
|
||||
/* 0094C 80A1EEEC 86020208 */ lh $v0, 0x0208($s0) ## 00000208
|
||||
/* 00950 80A1EEF0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00954 80A1EEF4 318D0001 */ andi $t5, $t4, 0x0001 ## $t5 = 00000000
|
||||
/* 00958 80A1EEF8 11A00006 */ beq $t5, $zero, .L80A1EF14
|
||||
/* 0095C 80A1EEFC 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
|
||||
/* 00960 80A1EF00 C6100060 */ lwc1 $f16, 0x0060($s0) ## 00000060
|
||||
/* 00964 80A1EF04 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 00968 80A1EF08 4610003C */ c.lt.s $f0, $f16
|
||||
/* 0096C 80A1EF0C 00000000 */ nop
|
||||
/* 00970 80A1EF10 45000006 */ bc1f .L80A1EF2C
|
||||
.L80A1EF14:
|
||||
/* 00974 80A1EF14 240600C8 */ addiu $a2, $zero, 0x00C8 ## $a2 = 000000C8
|
||||
/* 00978 80A1EF18 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 0097C 80A1EF1C 0C00D09B */ jal func_8003426C
|
||||
/* 00980 80A1EF20 AFA20010 */ sw $v0, 0x0010($sp)
|
||||
/* 00984 80A1EF24 100000DC */ beq $zero, $zero, .L80A1F298
|
||||
/* 00988 80A1EF28 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80A1EF2C:
|
||||
/* 0098C 80A1EF2C 10400002 */ beq $v0, $zero, .L80A1EF38
|
||||
/* 00990 80A1EF30 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00994 80A1EF34 A60E0208 */ sh $t6, 0x0208($s0) ## 00000208
|
||||
.L80A1EF38:
|
||||
/* 00998 80A1EF38 44811000 */ mtc1 $at, $f2 ## $f2 = 0.00
|
||||
/* 0099C 80A1EF3C C6120218 */ lwc1 $f18, 0x0218($s0) ## 00000218
|
||||
/* 009A0 80A1EF40 3C0180A2 */ lui $at, %hi(D_80A1FC70) ## $at = 80A20000
|
||||
/* 009A4 80A1EF44 C426FC70 */ lwc1 $f6, %lo(D_80A1FC70)($at)
|
||||
/* 009A8 80A1EF48 46121101 */ sub.s $f4, $f2, $f18
|
||||
/* 009AC 80A1EF4C 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 009B0 80A1EF50 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 009B4 80A1EF54 26040218 */ addiu $a0, $s0, 0x0218 ## $a0 = 00000218
|
||||
/* 009B8 80A1EF58 4606203C */ c.lt.s $f4, $f6
|
||||
/* 009BC 80A1EF5C 3C0742C8 */ lui $a3, 0x42C8 ## $a3 = 42C80000
|
||||
/* 009C0 80A1EF60 45020010 */ bc1fl .L80A1EFA4
|
||||
/* 009C4 80A1EF64 44051000 */ mfc1 $a1, $f2
|
||||
/* 009C8 80A1EF68 86030212 */ lh $v1, 0x0212($s0) ## 00000212
|
||||
/* 009CC 80A1EF6C 3C1880A2 */ lui $t8, %hi(func_80A1F2A8) ## $t8 = 80A20000
|
||||
/* 009D0 80A1EF70 2718F2A8 */ addiu $t8, $t8, %lo(func_80A1F2A8) ## $t8 = 80A1F2A8
|
||||
/* 009D4 80A1EF74 14600003 */ bne $v1, $zero, .L80A1EF84
|
||||
/* 009D8 80A1EF78 246FFFFF */ addiu $t7, $v1, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 009DC 80A1EF7C 10000003 */ beq $zero, $zero, .L80A1EF8C
|
||||
/* 009E0 80A1EF80 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A1EF84:
|
||||
/* 009E4 80A1EF84 A60F0212 */ sh $t7, 0x0212($s0) ## 00000212
|
||||
/* 009E8 80A1EF88 86020212 */ lh $v0, 0x0212($s0) ## 00000212
|
||||
.L80A1EF8C:
|
||||
/* 009EC 80A1EF8C 54400005 */ bnel $v0, $zero, .L80A1EFA4
|
||||
/* 009F0 80A1EF90 44051000 */ mfc1 $a1, $f2
|
||||
/* 009F4 80A1EF94 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
|
||||
/* 009F8 80A1EF98 100000BE */ beq $zero, $zero, .L80A1F294
|
||||
/* 009FC 80A1EF9C AE180190 */ sw $t8, 0x0190($s0) ## 00000190
|
||||
/* 00A00 80A1EFA0 44051000 */ mfc1 $a1, $f2
|
||||
.L80A1EFA4:
|
||||
/* 00A04 80A1EFA4 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00A08 80A1EFA8 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00A0C 80A1EFAC 86190214 */ lh $t9, 0x0214($s0) ## 00000214
|
||||
/* 00A10 80A1EFB0 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00A14 80A1EFB4 27A40048 */ addiu $a0, $sp, 0x0048 ## $a0 = FFFFFFE0
|
||||
/* 00A18 80A1EFB8 13200029 */ beq $t9, $zero, .L80A1F060
|
||||
/* 00A1C 80A1EFBC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00A20 80A1EFC0 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00A24 80A1EFC4 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
|
||||
/* 00A28 80A1EFC8 AFA4003C */ sw $a0, 0x003C($sp)
|
||||
/* 00A2C 80A1EFCC 44050000 */ mfc1 $a1, $f0
|
||||
/* 00A30 80A1EFD0 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 00A34 80A1EFD4 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
|
||||
/* 00A38 80A1EFD8 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00A3C 80A1EFDC E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00A40 80A1EFE0 86080032 */ lh $t0, 0x0032($s0) ## 00000032
|
||||
/* 00A44 80A1EFE4 860C00B6 */ lh $t4, 0x00B6($s0) ## 000000B6
|
||||
/* 00A48 80A1EFE8 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
|
||||
/* 00A4C 80A1EFEC 39098000 */ xori $t1, $t0, 0x8000 ## $t1 = FFFF8000
|
||||
/* 00A50 80A1EFF0 00095400 */ sll $t2, $t1, 16
|
||||
/* 00A54 80A1EFF4 000A5C03 */ sra $t3, $t2, 16
|
||||
/* 00A58 80A1EFF8 448B4000 */ mtc1 $t3, $f8 ## $f8 = 0.00
|
||||
/* 00A5C 80A1EFFC 448C5000 */ mtc1 $t4, $f10 ## $f10 = 0.00
|
||||
/* 00A60 80A1F000 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00A64 80A1F004 468040A0 */ cvt.s.w $f2, $f8
|
||||
/* 00A68 80A1F008 3C07461C */ lui $a3, 0x461C ## $a3 = 461C0000
|
||||
/* 00A6C 80A1F00C 34E74000 */ ori $a3, $a3, 0x4000 ## $a3 = 461C4000
|
||||
/* 00A70 80A1F010 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 00A74 80A1F014 27A4005C */ addiu $a0, $sp, 0x005C ## $a0 = FFFFFFF4
|
||||
/* 00A78 80A1F018 46805420 */ cvt.s.w $f16, $f10
|
||||
/* 00A7C 80A1F01C 44051000 */ mfc1 $a1, $f2
|
||||
/* 00A80 80A1F020 E7B20010 */ swc1 $f18, 0x0010($sp)
|
||||
/* 00A84 80A1F024 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00A88 80A1F028 E7B0005C */ swc1 $f16, 0x005C($sp)
|
||||
/* 00A8C 80A1F02C C7A4005C */ lwc1 $f4, 0x005C($sp)
|
||||
/* 00A90 80A1F030 3C0180A2 */ lui $at, %hi(D_80A1FC74) ## $at = 80A20000
|
||||
/* 00A94 80A1F034 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 00A98 80A1F038 440E3000 */ mfc1 $t6, $f6
|
||||
/* 00A9C 80A1F03C 00000000 */ nop
|
||||
/* 00AA0 80A1F040 A60E00B6 */ sh $t6, 0x00B6($s0) ## 000000B6
|
||||
/* 00AA4 80A1F044 C428FC74 */ lwc1 $f8, %lo(D_80A1FC74)($at)
|
||||
/* 00AA8 80A1F048 4600403C */ c.lt.s $f8, $f0
|
||||
/* 00AAC 80A1F04C 00000000 */ nop
|
||||
/* 00AB0 80A1F050 45030091 */ bc1tl .L80A1F298
|
||||
/* 00AB4 80A1F054 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 00AB8 80A1F058 10000017 */ beq $zero, $zero, .L80A1F0B8
|
||||
/* 00ABC 80A1F05C A6000214 */ sh $zero, 0x0214($s0) ## 00000214
|
||||
.L80A1F060:
|
||||
/* 00AC0 80A1F060 8E060218 */ lw $a2, 0x0218($s0) ## 00000218
|
||||
/* 00AC4 80A1F064 0C2879D8 */ jal func_80A1E760
|
||||
/* 00AC8 80A1F068 86070202 */ lh $a3, 0x0202($s0) ## 00000202
|
||||
/* 00ACC 80A1F06C C7AC0048 */ lwc1 $f12, 0x0048($sp)
|
||||
/* 00AD0 80A1F070 0C03F494 */ jal Math_atan2f
|
||||
/* 00AD4 80A1F074 C7AE0050 */ lwc1 $f14, 0x0050($sp)
|
||||
/* 00AD8 80A1F078 3C0180A2 */ lui $at, %hi(D_80A1FC78) ## $at = 80A20000
|
||||
/* 00ADC 80A1F07C C42AFC78 */ lwc1 $f10, %lo(D_80A1FC78)($at)
|
||||
/* 00AE0 80A1F080 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00AE4 80A1F084 AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 00AE8 80A1F088 460A0402 */ mul.s $f16, $f0, $f10
|
||||
/* 00AEC 80A1F08C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
|
||||
/* 00AF0 80A1F090 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 00AF4 80A1F094 24070FA0 */ addiu $a3, $zero, 0x0FA0 ## $a3 = 00000FA0
|
||||
/* 00AF8 80A1F098 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 00AFC 80A1F09C 44059000 */ mfc1 $a1, $f18
|
||||
/* 00B00 80A1F0A0 00000000 */ nop
|
||||
/* 00B04 80A1F0A4 00052C00 */ sll $a1, $a1, 16
|
||||
/* 00B08 80A1F0A8 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 00B0C 80A1F0AC 00052C03 */ sra $a1, $a1, 16
|
||||
/* 00B10 80A1F0B0 26190068 */ addiu $t9, $s0, 0x0068 ## $t9 = 00000068
|
||||
/* 00B14 80A1F0B4 AFB9003C */ sw $t9, 0x003C($sp)
|
||||
.L80A1F0B8:
|
||||
/* 00B18 80A1F0B8 8A0900B4 */ lwl $t1, 0x00B4($s0) ## 000000B4
|
||||
/* 00B1C 80A1F0BC 9A0900B7 */ lwr $t1, 0x00B7($s0) ## 000000B7
|
||||
/* 00B20 80A1F0C0 860A020E */ lh $t2, 0x020E($s0) ## 0000020E
|
||||
/* 00B24 80A1F0C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00B28 80A1F0C8 AA090030 */ swl $t1, 0x0030($s0) ## 00000030
|
||||
/* 00B2C 80A1F0CC BA090033 */ swr $t1, 0x0033($s0) ## 00000033
|
||||
/* 00B30 80A1F0D0 960900B8 */ lhu $t1, 0x00B8($s0) ## 000000B8
|
||||
/* 00B34 80A1F0D4 1540000A */ bne $t2, $zero, .L80A1F100
|
||||
/* 00B38 80A1F0D8 A6090034 */ sh $t1, 0x0034($s0) ## 00000034
|
||||
/* 00B3C 80A1F0DC 0C28799A */ jal func_80A1E668
|
||||
/* 00B40 80A1F0E0 8FA5006C */ lw $a1, 0x006C($sp)
|
||||
/* 00B44 80A1F0E4 10400006 */ beq $v0, $zero, .L80A1F100
|
||||
/* 00B48 80A1F0E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00B4C 80A1F0EC 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00B50 80A1F0F0 2405398B */ addiu $a1, $zero, 0x398B ## $a1 = 0000398B
|
||||
/* 00B54 80A1F0F4 24020008 */ addiu $v0, $zero, 0x0008 ## $v0 = 00000008
|
||||
/* 00B58 80A1F0F8 A6020210 */ sh $v0, 0x0210($s0) ## 00000210
|
||||
/* 00B5C 80A1F0FC A602020E */ sh $v0, 0x020E($s0) ## 0000020E
|
||||
.L80A1F100:
|
||||
/* 00B60 80A1F100 860B020E */ lh $t3, 0x020E($s0) ## 0000020E
|
||||
/* 00B64 80A1F104 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00B68 80A1F108 3C0540C0 */ lui $a1, 0x40C0 ## $a1 = 40C00000
|
||||
/* 00B6C 80A1F10C 1160003E */ beq $t3, $zero, .L80A1F208
|
||||
/* 00B70 80A1F110 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00B74 80A1F114 86030210 */ lh $v1, 0x0210($s0) ## 00000210
|
||||
/* 00B78 80A1F118 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00B7C 80A1F11C 14600003 */ bne $v1, $zero, .L80A1F12C
|
||||
/* 00B80 80A1F120 246CFFFF */ addiu $t4, $v1, 0xFFFF ## $t4 = FFFFFFFF
|
||||
/* 00B84 80A1F124 10000003 */ beq $zero, $zero, .L80A1F134
|
||||
/* 00B88 80A1F128 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80A1F12C:
|
||||
/* 00B8C 80A1F12C A60C0210 */ sh $t4, 0x0210($s0) ## 00000210
|
||||
/* 00B90 80A1F130 86020210 */ lh $v0, 0x0210($s0) ## 00000210
|
||||
.L80A1F134:
|
||||
/* 00B94 80A1F134 54400006 */ bnel $v0, $zero, .L80A1F150
|
||||
/* 00B98 80A1F138 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00B9C 80A1F13C 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00BA0 80A1F140 24053982 */ addiu $a1, $zero, 0x3982 ## $a1 = 00003982
|
||||
/* 00BA4 80A1F144 240D0004 */ addiu $t5, $zero, 0x0004 ## $t5 = 00000004
|
||||
/* 00BA8 80A1F148 A60D0210 */ sh $t5, 0x0210($s0) ## 00000210
|
||||
/* 00BAC 80A1F14C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
.L80A1F150:
|
||||
/* 00BB0 80A1F150 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
|
||||
/* 00BB4 80A1F154 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
|
||||
/* 00BB8 80A1F158 44050000 */ mfc1 $a1, $f0
|
||||
/* 00BBC 80A1F15C 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00BC0 80A1F160 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
|
||||
/* 00BC4 80A1F164 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00BC8 80A1F168 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00BCC 80A1F16C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00BD0 80A1F170 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00BD4 80A1F174 E6040168 */ swc1 $f4, 0x0168($s0) ## 00000168
|
||||
/* 00BD8 80A1F178 3C0180A2 */ lui $at, %hi(D_80A1FC7C) ## $at = 80A20000
|
||||
/* 00BDC 80A1F17C C422FC7C */ lwc1 $f2, %lo(D_80A1FC7C)($at)
|
||||
/* 00BE0 80A1F180 3C014100 */ lui $at, 0x4100 ## $at = 41000000
|
||||
/* 00BE4 80A1F184 44813000 */ mtc1 $at, $f6 ## $f6 = 8.00
|
||||
/* 00BE8 80A1F188 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 00BEC 80A1F18C 44814000 */ mtc1 $at, $f8 ## $f8 = 20.00
|
||||
/* 00BF0 80A1F190 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00BF4 80A1F194 44815000 */ mtc1 $at, $f10 ## $f10 = 0.50
|
||||
/* 00BF8 80A1F198 3C0180A2 */ lui $at, %hi(D_80A1FC80) ## $at = 80A20000
|
||||
/* 00BFC 80A1F19C C424FC80 */ lwc1 $f4, %lo(D_80A1FC80)($at)
|
||||
/* 00C00 80A1F1A0 460A0401 */ sub.s $f16, $f0, $f10
|
||||
/* 00C04 80A1F1A4 E7A60014 */ swc1 $f6, 0x0014($sp)
|
||||
/* 00C08 80A1F1A8 3C063E23 */ lui $a2, 0x3E23 ## $a2 = 3E230000
|
||||
/* 00C0C 80A1F1AC 240E0003 */ addiu $t6, $zero, 0x0003 ## $t6 = 00000003
|
||||
/* 00C10 80A1F1B0 46028482 */ mul.s $f18, $f16, $f2
|
||||
/* 00C14 80A1F1B4 44071000 */ mfc1 $a3, $f2
|
||||
/* 00C18 80A1F1B8 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 00C1C 80A1F1BC 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3E23D70A
|
||||
/* 00C20 80A1F1C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C24 80A1F1C4 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008
|
||||
/* 00C28 80A1F1C8 E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 00C2C 80A1F1CC 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00C30 80A1F1D0 0C287A3E */ jal func_80A1E8F8
|
||||
/* 00C34 80A1F1D4 E7A6001C */ swc1 $f6, 0x001C($sp)
|
||||
/* 00C38 80A1F1D8 860F020E */ lh $t7, 0x020E($s0) ## 0000020E
|
||||
/* 00C3C 80A1F1DC 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 00C40 80A1F1E0 A618020E */ sh $t8, 0x020E($s0) ## 0000020E
|
||||
/* 00C44 80A1F1E4 8619020E */ lh $t9, 0x020E($s0) ## 0000020E
|
||||
/* 00C48 80A1F1E8 5720002B */ bnel $t9, $zero, .L80A1F298
|
||||
/* 00C4C 80A1F1EC 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 00C50 80A1F1F0 86090202 */ lh $t1, 0x0202($s0) ## 00000202
|
||||
/* 00C54 80A1F1F4 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 00C58 80A1F1F8 A6080214 */ sh $t0, 0x0214($s0) ## 00000214
|
||||
/* 00C5C 80A1F1FC 00095023 */ subu $t2, $zero, $t1
|
||||
/* 00C60 80A1F200 10000024 */ beq $zero, $zero, .L80A1F294
|
||||
/* 00C64 80A1F204 A60A0202 */ sh $t2, 0x0202($s0) ## 00000202
|
||||
.L80A1F208:
|
||||
/* 00C68 80A1F208 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 00C6C 80A1F20C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 0000CCCD
|
||||
/* 00C70 80A1F210 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
|
||||
/* 00C74 80A1F214 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00C78 80A1F218 E7A80010 */ swc1 $f8, 0x0010($sp)
|
||||
/* 00C7C 80A1F21C C60A0164 */ lwc1 $f10, 0x0164($s0) ## 00000164
|
||||
/* 00C80 80A1F220 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00C84 80A1F224 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C88 80A1F228 4600540D */ trunc.w.s $f16, $f10
|
||||
/* 00C8C 80A1F22C 44028000 */ mfc1 $v0, $f16
|
||||
/* 00C90 80A1F230 00000000 */ nop
|
||||
/* 00C94 80A1F234 00021400 */ sll $v0, $v0, 16
|
||||
/* 00C98 80A1F238 00021403 */ sra $v0, $v0, 16
|
||||
/* 00C9C 80A1F23C 10410003 */ beq $v0, $at, .L80A1F24C
|
||||
/* 00CA0 80A1F240 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 00CA4 80A1F244 54410014 */ bnel $v0, $at, .L80A1F298
|
||||
/* 00CA8 80A1F248 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80A1F24C:
|
||||
/* 00CAC 80A1F24C 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00CB0 80A1F250 2405397F */ addiu $a1, $zero, 0x397F ## $a1 = 0000397F
|
||||
/* 00CB4 80A1F254 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 00CB8 80A1F258 44812000 */ mtc1 $at, $f4 ## $f4 = 20.00
|
||||
/* 00CBC 80A1F25C 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
|
||||
/* 00CC0 80A1F260 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
|
||||
/* 00CC4 80A1F264 3C063E23 */ lui $a2, 0x3E23 ## $a2 = 3E230000
|
||||
/* 00CC8 80A1F268 3C073DCC */ lui $a3, 0x3DCC ## $a3 = 3DCC0000
|
||||
/* 00CCC 80A1F26C 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 00CD0 80A1F270 AFAC0010 */ sw $t4, 0x0010($sp)
|
||||
/* 00CD4 80A1F274 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3DCCCCCD
|
||||
/* 00CD8 80A1F278 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3E23D70A
|
||||
/* 00CDC 80A1F27C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00CE0 80A1F280 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008
|
||||
/* 00CE4 80A1F284 E7A40018 */ swc1 $f4, 0x0018($sp)
|
||||
/* 00CE8 80A1F288 E7B20014 */ swc1 $f18, 0x0014($sp)
|
||||
/* 00CEC 80A1F28C 0C287A3E */ jal func_80A1E8F8
|
||||
/* 00CF0 80A1F290 E7A6001C */ swc1 $f6, 0x001C($sp)
|
||||
.L80A1F294:
|
||||
/* 00CF4 80A1F294 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80A1F298:
|
||||
/* 00CF8 80A1F298 8FB00030 */ lw $s0, 0x0030($sp)
|
||||
/* 00CFC 80A1F29C 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000
|
||||
/* 00D00 80A1F2A0 03E00008 */ jr $ra
|
||||
/* 00D04 80A1F2A4 00000000 */ nop
|
@ -1,67 +0,0 @@
|
||||
glabel func_80A1F2A8
|
||||
/* 00D08 80A1F2A8 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00D0C 80A1F2AC AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00D10 80A1F2B0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00D14 80A1F2B4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00D18 80A1F2B8 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00D1C 80A1F2BC 8E050118 */ lw $a1, 0x0118($s0) ## 00000118
|
||||
/* 00D20 80A1F2C0 24840024 */ addiu $a0, $a0, 0x0024 ## $a0 = 00000024
|
||||
/* 00D24 80A1F2C4 AFA4002C */ sw $a0, 0x002C($sp)
|
||||
/* 00D28 80A1F2C8 0C01E01A */ jal Math_Vec3f_Yaw
|
||||
|
||||
/* 00D2C 80A1F2CC 24A50008 */ addiu $a1, $a1, 0x0008 ## $a1 = 00000008
|
||||
/* 00D30 80A1F2D0 00022C00 */ sll $a1, $v0, 16
|
||||
/* 00D34 80A1F2D4 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 00D38 80A1F2D8 A7A20036 */ sh $v0, 0x0036($sp)
|
||||
/* 00D3C 80A1F2DC AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 00D40 80A1F2E0 00052C03 */ sra $a1, $a1, 16
|
||||
/* 00D44 80A1F2E4 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
|
||||
/* 00D48 80A1F2E8 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 00D4C 80A1F2EC 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 00D50 80A1F2F0 24070FA0 */ addiu $a3, $zero, 0x0FA0 ## $a3 = 00000FA0
|
||||
/* 00D54 80A1F2F4 87AF0036 */ lh $t7, 0x0036($sp)
|
||||
/* 00D58 80A1F2F8 861800B6 */ lh $t8, 0x00B6($s0) ## 000000B6
|
||||
/* 00D5C 80A1F2FC 01F81823 */ subu $v1, $t7, $t8
|
||||
/* 00D60 80A1F300 04600003 */ bltz $v1, .L80A1F310
|
||||
/* 00D64 80A1F304 00031023 */ subu $v0, $zero, $v1
|
||||
/* 00D68 80A1F308 10000001 */ beq $zero, $zero, .L80A1F310
|
||||
/* 00D6C 80A1F30C 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
.L80A1F310:
|
||||
/* 00D70 80A1F310 28410065 */ slti $at, $v0, 0x0065
|
||||
/* 00D74 80A1F314 5020001D */ beql $at, $zero, .L80A1F38C
|
||||
/* 00D78 80A1F318 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00D7C 80A1F31C 8A0800B4 */ lwl $t0, 0x00B4($s0) ## 000000B4
|
||||
/* 00D80 80A1F320 9A0800B7 */ lwr $t0, 0x00B7($s0) ## 000000B7
|
||||
/* 00D84 80A1F324 3C014160 */ lui $at, 0x4160 ## $at = 41600000
|
||||
/* 00D88 80A1F328 44812000 */ mtc1 $at, $f4 ## $f4 = 14.00
|
||||
/* 00D8C 80A1F32C AA080030 */ swl $t0, 0x0030($s0) ## 00000030
|
||||
/* 00D90 80A1F330 BA080033 */ swr $t0, 0x0033($s0) ## 00000033
|
||||
/* 00D94 80A1F334 960800B8 */ lhu $t0, 0x00B8($s0) ## 000000B8
|
||||
/* 00D98 80A1F338 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
|
||||
/* 00D9C 80A1F33C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00DA0 80A1F340 A6080034 */ sh $t0, 0x0034($s0) ## 00000034
|
||||
/* 00DA4 80A1F344 8FA9002C */ lw $t1, 0x002C($sp)
|
||||
/* 00DA8 80A1F348 2405386C */ addiu $a1, $zero, 0x386C ## $a1 = 0000386C
|
||||
/* 00DAC 80A1F34C 8D2B0000 */ lw $t3, 0x0000($t1) ## 00000000
|
||||
/* 00DB0 80A1F350 AE0B0008 */ sw $t3, 0x0008($s0) ## 00000008
|
||||
/* 00DB4 80A1F354 8D2A0004 */ lw $t2, 0x0004($t1) ## 00000004
|
||||
/* 00DB8 80A1F358 AE0A000C */ sw $t2, 0x000C($s0) ## 0000000C
|
||||
/* 00DBC 80A1F35C 8D2B0008 */ lw $t3, 0x0008($t1) ## 00000008
|
||||
/* 00DC0 80A1F360 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00DC4 80A1F364 AE0B0010 */ sw $t3, 0x0010($s0) ## 00000010
|
||||
/* 00DC8 80A1F368 3C0580A2 */ lui $a1, %hi(D_80A1FBA0) ## $a1 = 80A20000
|
||||
/* 00DCC 80A1F36C 24A5FBA0 */ addiu $a1, $a1, %lo(D_80A1FBA0) ## $a1 = 80A1FBA0
|
||||
/* 00DD0 80A1F370 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 00DD4 80A1F374 0C00D3B0 */ jal func_80034EC0
|
||||
/* 00DD8 80A1F378 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 00DDC 80A1F37C 3C0C80A2 */ lui $t4, %hi(func_80A1F39C) ## $t4 = 80A20000
|
||||
/* 00DE0 80A1F380 258CF39C */ addiu $t4, $t4, %lo(func_80A1F39C) ## $t4 = 80A1F39C
|
||||
/* 00DE4 80A1F384 AE0C0190 */ sw $t4, 0x0190($s0) ## 00000190
|
||||
/* 00DE8 80A1F388 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A1F38C:
|
||||
/* 00DEC 80A1F38C 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00DF0 80A1F390 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00DF4 80A1F394 03E00008 */ jr $ra
|
||||
/* 00DF8 80A1F398 00000000 */ nop
|
@ -1,51 +0,0 @@
|
||||
glabel func_80A1F39C
|
||||
/* 00DFC 80A1F39C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00E00 80A1F3A0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00E04 80A1F3A4 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00E08 80A1F3A8 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00E0C 80A1F3AC 948E0088 */ lhu $t6, 0x0088($a0) ## 00000088
|
||||
/* 00E10 80A1F3B0 3C063F19 */ lui $a2, 0x3F19 ## $a2 = 3F190000
|
||||
/* 00E14 80A1F3B4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00E18 80A1F3B8 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
|
||||
/* 00E1C 80A1F3BC 11E0000E */ beq $t7, $zero, .L80A1F3F8
|
||||
/* 00E20 80A1F3C0 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3F19999A
|
||||
/* 00E24 80A1F3C4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00E28 80A1F3C8 C4860060 */ lwc1 $f6, 0x0060($a0) ## 00000060
|
||||
/* 00E2C 80A1F3CC 4604303E */ c.le.s $f6, $f4
|
||||
/* 00E30 80A1F3D0 00000000 */ nop
|
||||
/* 00E34 80A1F3D4 45020009 */ bc1fl .L80A1F3FC
|
||||
/* 00E38 80A1F3D8 8E080118 */ lw $t0, 0x0118($s0) ## 00000118
|
||||
/* 00E3C 80A1F3DC 8C820118 */ lw $v0, 0x0118($a0) ## 00000118
|
||||
/* 00E40 80A1F3E0 8458001C */ lh $t8, 0x001C($v0) ## 0000001C
|
||||
/* 00E44 80A1F3E4 37198000 */ ori $t9, $t8, 0x8000 ## $t9 = 00008000
|
||||
/* 00E48 80A1F3E8 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00E4C 80A1F3EC A459001C */ sh $t9, 0x001C($v0) ## 0000001C
|
||||
/* 00E50 80A1F3F0 10000012 */ beq $zero, $zero, .L80A1F43C
|
||||
/* 00E54 80A1F3F4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A1F3F8:
|
||||
/* 00E58 80A1F3F8 8E080118 */ lw $t0, 0x0118($s0) ## 00000118
|
||||
.L80A1F3FC:
|
||||
/* 00E5C 80A1F3FC 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 00E60 80A1F400 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 00E64 80A1F404 8D050008 */ lw $a1, 0x0008($t0) ## 00000008
|
||||
/* 00E68 80A1F408 3C074100 */ lui $a3, 0x4100 ## $a3 = 41000000
|
||||
/* 00E6C 80A1F40C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00E70 80A1F410 E7A80010 */ swc1 $f8, 0x0010($sp)
|
||||
/* 00E74 80A1F414 8E090118 */ lw $t1, 0x0118($s0) ## 00000118
|
||||
/* 00E78 80A1F418 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
|
||||
/* 00E7C 80A1F41C 3C063F19 */ lui $a2, 0x3F19 ## $a2 = 3F190000
|
||||
/* 00E80 80A1F420 8D250010 */ lw $a1, 0x0010($t1) ## 00000010
|
||||
/* 00E84 80A1F424 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3F19999A
|
||||
/* 00E88 80A1F428 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
|
||||
/* 00E8C 80A1F42C 3C074100 */ lui $a3, 0x4100 ## $a3 = 41000000
|
||||
/* 00E90 80A1F430 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
|
||||
|
||||
/* 00E94 80A1F434 E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
/* 00E98 80A1F438 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80A1F43C:
|
||||
/* 00E9C 80A1F43C 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00EA0 80A1F440 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00EA4 80A1F444 03E00008 */ jr $ra
|
||||
/* 00EA8 80A1F448 00000000 */ nop
|
@ -1,7 +0,0 @@
|
||||
glabel func_80A1F52C
|
||||
/* 00F8C 80A1F52C AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 00F90 80A1F530 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 00F94 80A1F534 AFA60008 */ sw $a2, 0x0008($sp)
|
||||
/* 00F98 80A1F538 AFA7000C */ sw $a3, 0x000C($sp)
|
||||
/* 00F9C 80A1F53C 03E00008 */ jr $ra
|
||||
/* 00FA0 80A1F540 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
@ -1,42 +0,0 @@
|
||||
glabel func_80A1F544
|
||||
/* 00FA4 80A1F544 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00FA8 80A1F548 3C0E80A2 */ lui $t6, %hi(D_80A1FC0C) ## $t6 = 80A20000
|
||||
/* 00FAC 80A1F54C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00FB0 80A1F550 AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 00FB4 80A1F554 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00FB8 80A1F558 AFA60030 */ sw $a2, 0x0030($sp)
|
||||
/* 00FBC 80A1F55C AFA70034 */ sw $a3, 0x0034($sp)
|
||||
/* 00FC0 80A1F560 25CEFC0C */ addiu $t6, $t6, %lo(D_80A1FC0C) ## $t6 = 80A1FC0C
|
||||
/* 00FC4 80A1F564 8DD80000 */ lw $t8, 0x0000($t6) ## 80A1FC0C
|
||||
/* 00FC8 80A1F568 27A40018 */ addiu $a0, $sp, 0x0018 ## $a0 = FFFFFFF0
|
||||
/* 00FCC 80A1F56C 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00FD0 80A1F570 AC980000 */ sw $t8, 0x0000($a0) ## FFFFFFF0
|
||||
/* 00FD4 80A1F574 8DCF0004 */ lw $t7, 0x0004($t6) ## 80A1FC10
|
||||
/* 00FD8 80A1F578 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 00FDC 80A1F57C AC8F0004 */ sw $t7, 0x0004($a0) ## FFFFFFF4
|
||||
/* 00FE0 80A1F580 8DD80008 */ lw $t8, 0x0008($t6) ## 80A1FC14
|
||||
/* 00FE4 80A1F584 14A10007 */ bne $a1, $at, .L80A1F5A4
|
||||
/* 00FE8 80A1F588 AC980008 */ sw $t8, 0x0008($a0) ## FFFFFFF8
|
||||
/* 00FEC 80A1F58C 8FA50038 */ lw $a1, 0x0038($sp)
|
||||
/* 00FF0 80A1F590 AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 00FF4 80A1F594 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 00FF8 80A1F598 24A501F4 */ addiu $a1, $a1, 0x01F4 ## $a1 = 000001F4
|
||||
/* 00FFC 80A1F59C 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
/* 01000 80A1F5A0 27A40018 */ addiu $a0, $sp, 0x0018 ## $a0 = FFFFFFF0
|
||||
.L80A1F5A4:
|
||||
/* 01004 80A1F5A4 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 01008 80A1F5A8 14C10005 */ bne $a2, $at, .L80A1F5C0
|
||||
/* 0100C 80A1F5AC 8FA50038 */ lw $a1, 0x0038($sp)
|
||||
/* 01010 80A1F5B0 24A50038 */ addiu $a1, $a1, 0x0038 ## $a1 = 00000038
|
||||
/* 01014 80A1F5B4 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 01018 80A1F5B8 AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 0101C 80A1F5BC 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
.L80A1F5C0:
|
||||
/* 01020 80A1F5C0 8FA50038 */ lw $a1, 0x0038($sp)
|
||||
/* 01024 80A1F5C4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 01028 80A1F5C8 0C018A29 */ jal func_800628A4
|
||||
/* 0102C 80A1F5CC 24A50194 */ addiu $a1, $a1, 0x0194 ## $a1 = 00000194
|
||||
/* 01030 80A1F5D0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01034 80A1F5D4 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 01038 80A1F5D8 03E00008 */ jr $ra
|
||||
/* 0103C 80A1F5DC 00000000 */ nop
|
@ -1,44 +0,0 @@
|
||||
glabel func_80A1F664
|
||||
/* 010C4 80A1F664 248202A0 */ addiu $v0, $a0, 0x02A0 ## $v0 = 000002A0
|
||||
/* 010C8 80A1F668 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
|
||||
/* 010CC 80A1F66C 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
.L80A1F670:
|
||||
/* 010D0 80A1F670 904E0000 */ lbu $t6, 0x0000($v0) ## 000002A0
|
||||
/* 010D4 80A1F674 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001
|
||||
/* 010D8 80A1F678 00031C00 */ sll $v1, $v1, 16
|
||||
/* 010DC 80A1F67C 108E001D */ beq $a0, $t6, .L80A1F6F4
|
||||
/* 010E0 80A1F680 00031C03 */ sra $v1, $v1, 16
|
||||
/* 010E4 80A1F684 C7A40014 */ lwc1 $f4, 0x0014($sp)
|
||||
/* 010E8 80A1F688 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
|
||||
/* 010EC 80A1F68C E4440004 */ swc1 $f4, 0x0004($v0) ## 000002A4
|
||||
/* 010F0 80A1F690 C7A60018 */ lwc1 $f6, 0x0018($sp)
|
||||
/* 010F4 80A1F694 E4460008 */ swc1 $f6, 0x0008($v0) ## 000002A8
|
||||
/* 010F8 80A1F698 93B80013 */ lbu $t8, 0x0013($sp)
|
||||
/* 010FC 80A1F69C A0590000 */ sb $t9, 0x0000($v0) ## 000002A0
|
||||
/* 01100 80A1F6A0 A0580001 */ sb $t8, 0x0001($v0) ## 000002A1
|
||||
/* 01104 80A1F6A4 A0580002 */ sb $t8, 0x0002($v0) ## 000002A2
|
||||
/* 01108 80A1F6A8 8CA90000 */ lw $t1, 0x0000($a1) ## 00000000
|
||||
/* 0110C 80A1F6AC AC490014 */ sw $t1, 0x0014($v0) ## 000002B4
|
||||
/* 01110 80A1F6B0 8CA80004 */ lw $t0, 0x0004($a1) ## 00000004
|
||||
/* 01114 80A1F6B4 AC480018 */ sw $t0, 0x0018($v0) ## 000002B8
|
||||
/* 01118 80A1F6B8 8CA90008 */ lw $t1, 0x0008($a1) ## 00000008
|
||||
/* 0111C 80A1F6BC AC49001C */ sw $t1, 0x001C($v0) ## 000002BC
|
||||
/* 01120 80A1F6C0 8CEB0000 */ lw $t3, 0x0000($a3) ## 00000000
|
||||
/* 01124 80A1F6C4 AC4B002C */ sw $t3, 0x002C($v0) ## 000002CC
|
||||
/* 01128 80A1F6C8 8CEA0004 */ lw $t2, 0x0004($a3) ## 00000004
|
||||
/* 0112C 80A1F6CC AC4A0030 */ sw $t2, 0x0030($v0) ## 000002D0
|
||||
/* 01130 80A1F6D0 8CEB0008 */ lw $t3, 0x0008($a3) ## 00000008
|
||||
/* 01134 80A1F6D4 AC4B0034 */ sw $t3, 0x0034($v0) ## 000002D4
|
||||
/* 01138 80A1F6D8 8CCD0000 */ lw $t5, 0x0000($a2) ## 00000000
|
||||
/* 0113C 80A1F6DC AC4D0020 */ sw $t5, 0x0020($v0) ## 000002C0
|
||||
/* 01140 80A1F6E0 8CCC0004 */ lw $t4, 0x0004($a2) ## 00000004
|
||||
/* 01144 80A1F6E4 AC4C0024 */ sw $t4, 0x0024($v0) ## 000002C4
|
||||
/* 01148 80A1F6E8 8CCD0008 */ lw $t5, 0x0008($a2) ## 00000008
|
||||
/* 0114C 80A1F6EC 03E00008 */ jr $ra
|
||||
/* 01150 80A1F6F0 AC4D0028 */ sw $t5, 0x0028($v0) ## 000002C8
|
||||
.L80A1F6F4:
|
||||
/* 01154 80A1F6F4 28610014 */ slti $at, $v1, 0x0014
|
||||
/* 01158 80A1F6F8 1420FFDD */ bne $at, $zero, .L80A1F670
|
||||
/* 0115C 80A1F6FC 24420038 */ addiu $v0, $v0, 0x0038 ## $v0 = 000002D8
|
||||
/* 01160 80A1F700 03E00008 */ jr $ra
|
||||
/* 01164 80A1F704 00000000 */ nop
|
@ -1,81 +0,0 @@
|
||||
.late_rodata
|
||||
glabel D_80A1FC84
|
||||
.float 0.2
|
||||
|
||||
glabel D_80A1FC88
|
||||
.float 0.4
|
||||
|
||||
.text
|
||||
glabel func_80A1F708
|
||||
/* 01168 80A1F708 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 0116C 80A1F70C F7B60018 */ sdc1 $f22, 0x0018($sp)
|
||||
/* 01170 80A1F710 3C0180A2 */ lui $at, %hi(D_80A1FC84) ## $at = 80A20000
|
||||
/* 01174 80A1F714 C436FC84 */ lwc1 $f22, %lo(D_80A1FC84)($at)
|
||||
/* 01178 80A1F718 AFB10028 */ sw $s1, 0x0028($sp)
|
||||
/* 0117C 80A1F71C AFB00024 */ sw $s0, 0x0024($sp)
|
||||
/* 01180 80A1F720 F7B40010 */ sdc1 $f20, 0x0010($sp)
|
||||
/* 01184 80A1F724 3C0180A2 */ lui $at, %hi(D_80A1FC88) ## $at = 80A20000
|
||||
/* 01188 80A1F728 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 0118C 80A1F72C 249002A0 */ addiu $s0, $a0, 0x02A0 ## $s0 = 000002A0
|
||||
/* 01190 80A1F730 C434FC88 */ lwc1 $f20, %lo(D_80A1FC88)($at)
|
||||
/* 01194 80A1F734 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
|
||||
.L80A1F738:
|
||||
/* 01198 80A1F738 920E0000 */ lbu $t6, 0x0000($s0) ## 000002A0
|
||||
/* 0119C 80A1F73C 51C00029 */ beql $t6, $zero, .L80A1F7E4
|
||||
/* 011A0 80A1F740 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
|
||||
/* 011A4 80A1F744 920F0001 */ lbu $t7, 0x0001($s0) ## 000002A1
|
||||
/* 011A8 80A1F748 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 011AC 80A1F74C 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 000000FF
|
||||
/* 011B0 80A1F750 17200002 */ bne $t9, $zero, .L80A1F75C
|
||||
/* 011B4 80A1F754 A2180001 */ sb $t8, 0x0001($s0) ## 000002A1
|
||||
/* 011B8 80A1F758 A2000000 */ sb $zero, 0x0000($s0) ## 000002A0
|
||||
.L80A1F75C:
|
||||
/* 011BC 80A1F75C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 011C0 80A1F760 00000000 */ nop
|
||||
/* 011C4 80A1F764 46140102 */ mul.s $f4, $f0, $f20
|
||||
/* 011C8 80A1F768 46162181 */ sub.s $f6, $f4, $f22
|
||||
/* 011CC 80A1F76C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 011D0 80A1F770 E606002C */ swc1 $f6, 0x002C($s0) ## 000002CC
|
||||
/* 011D4 80A1F774 C60C0020 */ lwc1 $f12, 0x0020($s0) ## 000002C0
|
||||
/* 011D8 80A1F778 C60A0014 */ lwc1 $f10, 0x0014($s0) ## 000002B4
|
||||
/* 011DC 80A1F77C 46140202 */ mul.s $f8, $f0, $f20
|
||||
/* 011E0 80A1F780 C60E0024 */ lwc1 $f14, 0x0024($s0) ## 000002C4
|
||||
/* 011E4 80A1F784 460C5480 */ add.s $f18, $f10, $f12
|
||||
/* 011E8 80A1F788 C6040018 */ lwc1 $f4, 0x0018($s0) ## 000002B8
|
||||
/* 011EC 80A1F78C C6100028 */ lwc1 $f16, 0x0028($s0) ## 000002C8
|
||||
/* 011F0 80A1F790 E6120014 */ swc1 $f18, 0x0014($s0) ## 000002B4
|
||||
/* 011F4 80A1F794 C612002C */ lwc1 $f18, 0x002C($s0) ## 000002CC
|
||||
/* 011F8 80A1F798 460E2180 */ add.s $f6, $f4, $f14
|
||||
/* 011FC 80A1F79C 46164081 */ sub.s $f2, $f8, $f22
|
||||
/* 01200 80A1F7A0 C608001C */ lwc1 $f8, 0x001C($s0) ## 000002BC
|
||||
/* 01204 80A1F7A4 E6060018 */ swc1 $f6, 0x0018($s0) ## 000002B8
|
||||
/* 01208 80A1F7A8 46126100 */ add.s $f4, $f12, $f18
|
||||
/* 0120C 80A1F7AC C6060030 */ lwc1 $f6, 0x0030($s0) ## 000002D0
|
||||
/* 01210 80A1F7B0 C6120004 */ lwc1 $f18, 0x0004($s0) ## 000002A4
|
||||
/* 01214 80A1F7B4 46104280 */ add.s $f10, $f8, $f16
|
||||
/* 01218 80A1F7B8 E6040020 */ swc1 $f4, 0x0020($s0) ## 000002C0
|
||||
/* 0121C 80A1F7BC C6040008 */ lwc1 $f4, 0x0008($s0) ## 000002A8
|
||||
/* 01220 80A1F7C0 46067200 */ add.s $f8, $f14, $f6
|
||||
/* 01224 80A1F7C4 E60A001C */ swc1 $f10, 0x001C($s0) ## 000002BC
|
||||
/* 01228 80A1F7C8 E6020034 */ swc1 $f2, 0x0034($s0) ## 000002D4
|
||||
/* 0122C 80A1F7CC 46028280 */ add.s $f10, $f16, $f2
|
||||
/* 01230 80A1F7D0 E6080024 */ swc1 $f8, 0x0024($s0) ## 000002C4
|
||||
/* 01234 80A1F7D4 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 01238 80A1F7D8 E60A0028 */ swc1 $f10, 0x0028($s0) ## 000002C8
|
||||
/* 0123C 80A1F7DC E6060004 */ swc1 $f6, 0x0004($s0) ## 000002A4
|
||||
/* 01240 80A1F7E0 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000002
|
||||
.L80A1F7E4:
|
||||
/* 01244 80A1F7E4 00118C00 */ sll $s1, $s1, 16
|
||||
/* 01248 80A1F7E8 00118C03 */ sra $s1, $s1, 16
|
||||
/* 0124C 80A1F7EC 2A210014 */ slti $at, $s1, 0x0014
|
||||
/* 01250 80A1F7F0 1420FFD1 */ bne $at, $zero, .L80A1F738
|
||||
/* 01254 80A1F7F4 26100038 */ addiu $s0, $s0, 0x0038 ## $s0 = 000002D8
|
||||
/* 01258 80A1F7F8 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 0125C 80A1F7FC D7B40010 */ ldc1 $f20, 0x0010($sp)
|
||||
/* 01260 80A1F800 D7B60018 */ ldc1 $f22, 0x0018($sp)
|
||||
/* 01264 80A1F804 8FB00024 */ lw $s0, 0x0024($sp)
|
||||
/* 01268 80A1F808 8FB10028 */ lw $s1, 0x0028($sp)
|
||||
/* 0126C 80A1F80C 03E00008 */ jr $ra
|
||||
/* 01270 80A1F810 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
@ -1,225 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80A1FC40
|
||||
.asciz "../z_en_fw.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A1FC50
|
||||
.asciz "../z_en_fw.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80A1FC60
|
||||
.asciz "../z_en_fw.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80A1F814
|
||||
/* 01274 80A1F814 27BDFF58 */ addiu $sp, $sp, 0xFF58 ## $sp = FFFFFF58
|
||||
/* 01278 80A1F818 AFBE0050 */ sw $s8, 0x0050($sp)
|
||||
/* 0127C 80A1F81C 00A0F025 */ or $s8, $a1, $zero ## $s8 = 00000000
|
||||
/* 01280 80A1F820 AFBF0054 */ sw $ra, 0x0054($sp)
|
||||
/* 01284 80A1F824 AFB7004C */ sw $s7, 0x004C($sp)
|
||||
/* 01288 80A1F828 AFB60048 */ sw $s6, 0x0048($sp)
|
||||
/* 0128C 80A1F82C AFB50044 */ sw $s5, 0x0044($sp)
|
||||
/* 01290 80A1F830 AFB40040 */ sw $s4, 0x0040($sp)
|
||||
/* 01294 80A1F834 AFB3003C */ sw $s3, 0x003C($sp)
|
||||
/* 01298 80A1F838 AFB20038 */ sw $s2, 0x0038($sp)
|
||||
/* 0129C 80A1F83C AFB10034 */ sw $s1, 0x0034($sp)
|
||||
/* 012A0 80A1F840 AFB00030 */ sw $s0, 0x0030($sp)
|
||||
/* 012A4 80A1F844 F7B80028 */ sdc1 $f24, 0x0028($sp)
|
||||
/* 012A8 80A1F848 F7B60020 */ sdc1 $f22, 0x0020($sp)
|
||||
/* 012AC 80A1F84C F7B40018 */ sdc1 $f20, 0x0018($sp)
|
||||
/* 012B0 80A1F850 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 012B4 80A1F854 249202A0 */ addiu $s2, $a0, 0x02A0 ## $s2 = 000002A0
|
||||
/* 012B8 80A1F858 3C0680A2 */ lui $a2, %hi(D_80A1FC40) ## $a2 = 80A20000
|
||||
/* 012BC 80A1F85C 24C6FC40 */ addiu $a2, $a2, %lo(D_80A1FC40) ## $a2 = 80A1FC40
|
||||
/* 012C0 80A1F860 27A40088 */ addiu $a0, $sp, 0x0088 ## $a0 = FFFFFFE0
|
||||
/* 012C4 80A1F864 240704A7 */ addiu $a3, $zero, 0x04A7 ## $a3 = 000004A7
|
||||
/* 012C8 80A1F868 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 012CC 80A1F86C 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 012D0 80A1F870 0000B825 */ or $s7, $zero, $zero ## $s7 = 00000000
|
||||
/* 012D4 80A1F874 0C024F61 */ jal func_80093D84
|
||||
/* 012D8 80A1F878 8FC40000 */ lw $a0, 0x0000($s8) ## 00000000
|
||||
/* 012DC 80A1F87C 3C014100 */ lui $at, 0x4100 ## $at = 41000000
|
||||
/* 012E0 80A1F880 4481C000 */ mtc1 $at, $f24 ## $f24 = 8.00
|
||||
/* 012E4 80A1F884 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 012E8 80A1F888 4481B000 */ mtc1 $at, $f22 ## $f22 = 1.00
|
||||
/* 012EC 80A1F88C 3C01437F */ lui $at, 0x437F ## $at = 437F0000
|
||||
/* 012F0 80A1F890 4481A000 */ mtc1 $at, $f20 ## $f20 = 255.00
|
||||
/* 012F4 80A1F894 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
|
||||
/* 012F8 80A1F898 3C16DE00 */ lui $s6, 0xDE00 ## $s6 = DE000000
|
||||
.L80A1F89C:
|
||||
/* 012FC 80A1F89C 924E0000 */ lbu $t6, 0x0000($s2) ## 000002A0
|
||||
/* 01300 80A1F8A0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 01304 80A1F8A4 34211DA0 */ ori $at, $at, 0x1DA0 ## $at = 00011DA0
|
||||
/* 01308 80A1F8A8 11C0008A */ beq $t6, $zero, .L80A1FAD4
|
||||
/* 0130C 80A1F8AC 03C19821 */ addu $s3, $s8, $at
|
||||
/* 01310 80A1F8B0 3C150600 */ lui $s5, 0x0600 ## $s5 = 06000000
|
||||
/* 01314 80A1F8B4 16E00014 */ bne $s7, $zero, .L80A1F908
|
||||
/* 01318 80A1F8B8 26B57938 */ addiu $s5, $s5, 0x7938 ## $s5 = 06007938
|
||||
/* 0131C 80A1F8BC 3C110600 */ lui $s1, 0x0600 ## $s1 = 06000000
|
||||
/* 01320 80A1F8C0 26317928 */ addiu $s1, $s1, 0x7928 ## $s1 = 06007928
|
||||
/* 01324 80A1F8C4 8E0402D0 */ lw $a0, 0x02D0($s0) ## 000002D0
|
||||
/* 01328 80A1F8C8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 0132C 80A1F8CC 0C024DDD */ jal Gfx_CallSetupDL
|
||||
/* 01330 80A1F8D0 24170001 */ addiu $s7, $zero, 0x0001 ## $s7 = 00000001
|
||||
/* 01334 80A1F8D4 AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01338 80A1F8D8 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
|
||||
/* 0133C 80A1F8DC AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
|
||||
/* 01340 80A1F8E0 AC510004 */ sw $s1, 0x0004($v0) ## 00000004
|
||||
/* 01344 80A1F8E4 AC560000 */ sw $s6, 0x0000($v0) ## 00000000
|
||||
/* 01348 80A1F8E8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 0134C 80A1F8EC 3C08643C */ lui $t0, 0x643C ## $t0 = 643C0000
|
||||
/* 01350 80A1F8F0 35081400 */ ori $t0, $t0, 0x1400 ## $t0 = 643C1400
|
||||
/* 01354 80A1F8F4 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
|
||||
/* 01358 80A1F8F8 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
|
||||
/* 0135C 80A1F8FC 3C19FB00 */ lui $t9, 0xFB00 ## $t9 = FB000000
|
||||
/* 01360 80A1F900 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
|
||||
/* 01364 80A1F904 AC480004 */ sw $t0, 0x0004($v0) ## 00000004
|
||||
.L80A1F908:
|
||||
/* 01368 80A1F908 92490001 */ lbu $t1, 0x0001($s2) ## 000002A1
|
||||
/* 0136C 80A1F90C 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 01370 80A1F910 44892000 */ mtc1 $t1, $f4 ## $f4 = 0.00
|
||||
/* 01374 80A1F914 05210004 */ bgez $t1, .L80A1F928
|
||||
/* 01378 80A1F918 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 0137C 80A1F91C 44814000 */ mtc1 $at, $f8 ## $f8 = 4294967296.00
|
||||
/* 01380 80A1F920 00000000 */ nop
|
||||
/* 01384 80A1F924 46083180 */ add.s $f6, $f6, $f8
|
||||
.L80A1F928:
|
||||
/* 01388 80A1F928 924A0002 */ lbu $t2, 0x0002($s2) ## 000002A2
|
||||
/* 0138C 80A1F92C 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 01390 80A1F930 448A5000 */ mtc1 $t2, $f10 ## $f10 = 0.00
|
||||
/* 01394 80A1F934 05410004 */ bgez $t2, .L80A1F948
|
||||
/* 01398 80A1F938 46805420 */ cvt.s.w $f16, $f10
|
||||
/* 0139C 80A1F93C 44819000 */ mtc1 $at, $f18 ## $f18 = 4294967296.00
|
||||
/* 013A0 80A1F940 00000000 */ nop
|
||||
/* 013A4 80A1F944 46128400 */ add.s $f16, $f16, $f18
|
||||
.L80A1F948:
|
||||
/* 013A8 80A1F948 4610A103 */ div.s $f4, $f20, $f16
|
||||
/* 013AC 80A1F94C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 013B0 80A1F950 3C01AA82 */ lui $at, 0xAA82 ## $at = AA820000
|
||||
/* 013B4 80A1F954 34215A00 */ ori $at, $at, 0x5A00 ## $at = AA825A00
|
||||
/* 013B8 80A1F958 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 013BC 80A1F95C AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
|
||||
/* 013C0 80A1F960 3C0DFA00 */ lui $t5, 0xFA00 ## $t5 = FA000000
|
||||
/* 013C4 80A1F964 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
/* 013C8 80A1F968 3C19E700 */ lui $t9, 0xE700 ## $t9 = E7000000
|
||||
/* 013CC 80A1F96C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 013D0 80A1F970 46043202 */ mul.s $f8, $f6, $f4
|
||||
/* 013D4 80A1F974 4600428D */ trunc.w.s $f10, $f8
|
||||
/* 013D8 80A1F978 44045000 */ mfc1 $a0, $f10
|
||||
/* 013DC 80A1F97C 00000000 */ nop
|
||||
/* 013E0 80A1F980 00042400 */ sll $a0, $a0, 16
|
||||
/* 013E4 80A1F984 00042403 */ sra $a0, $a0, 16
|
||||
/* 013E8 80A1F988 308E00FF */ andi $t6, $a0, 0x00FF ## $t6 = 00000000
|
||||
/* 013EC 80A1F98C 01C17825 */ or $t7, $t6, $at ## $t7 = AA825A00
|
||||
/* 013F0 80A1F990 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
|
||||
/* 013F4 80A1F994 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 013F8 80A1F998 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
|
||||
/* 013FC 80A1F99C AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
|
||||
/* 01400 80A1F9A0 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 01404 80A1F9A4 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
|
||||
/* 01408 80A1F9A8 8E46001C */ lw $a2, 0x001C($s2) ## 000002BC
|
||||
/* 0140C 80A1F9AC C64E0018 */ lwc1 $f14, 0x0018($s2) ## 000002B8
|
||||
/* 01410 80A1F9B0 0C034261 */ jal Matrix_Translate
|
||||
/* 01414 80A1F9B4 C64C0014 */ lwc1 $f12, 0x0014($s2) ## 000002B4
|
||||
/* 01418 80A1F9B8 0C0347F5 */ jal func_800D1FD4
|
||||
/* 0141C 80A1F9BC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 01420 80A1F9C0 C64C0004 */ lwc1 $f12, 0x0004($s2) ## 000002A4
|
||||
/* 01424 80A1F9C4 4406B000 */ mfc1 $a2, $f22
|
||||
/* 01428 80A1F9C8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
|
||||
/* 0142C 80A1F9CC 0C0342A3 */ jal Matrix_Scale
|
||||
/* 01430 80A1F9D0 46006386 */ mov.s $f14, $f12
|
||||
/* 01434 80A1F9D4 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01438 80A1F9D8 3C09DA38 */ lui $t1, 0xDA38 ## $t1 = DA380000
|
||||
/* 0143C 80A1F9DC 35290003 */ ori $t1, $t1, 0x0003 ## $t1 = DA380003
|
||||
/* 01440 80A1F9E0 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
|
||||
/* 01444 80A1F9E4 AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
|
||||
/* 01448 80A1F9E8 3C0580A2 */ lui $a1, %hi(D_80A1FC50) ## $a1 = 80A20000
|
||||
/* 0144C 80A1F9EC AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
/* 01450 80A1F9F0 8FC40000 */ lw $a0, 0x0000($s8) ## 00000000
|
||||
/* 01454 80A1F9F4 24A5FC50 */ addiu $a1, $a1, %lo(D_80A1FC50) ## $a1 = 80A1FC50
|
||||
/* 01458 80A1F9F8 240604CD */ addiu $a2, $zero, 0x04CD ## $a2 = 000004CD
|
||||
/* 0145C 80A1F9FC 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01460 80A1FA00 00408825 */ or $s1, $v0, $zero ## $s1 = 00000000
|
||||
/* 01464 80A1FA04 AE220004 */ sw $v0, 0x0004($s1) ## 00000004
|
||||
/* 01468 80A1FA08 924A0001 */ lbu $t2, 0x0001($s2) ## 000002A1
|
||||
/* 0146C 80A1FA0C 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 01470 80A1FA10 448A9000 */ mtc1 $t2, $f18 ## $f18 = 0.00
|
||||
/* 01474 80A1FA14 05410004 */ bgez $t2, .L80A1FA28
|
||||
/* 01478 80A1FA18 46809420 */ cvt.s.w $f16, $f18
|
||||
/* 0147C 80A1FA1C 44813000 */ mtc1 $at, $f6 ## $f6 = 4294967296.00
|
||||
/* 01480 80A1FA20 00000000 */ nop
|
||||
/* 01484 80A1FA24 46068400 */ add.s $f16, $f16, $f6
|
||||
.L80A1FA28:
|
||||
/* 01488 80A1FA28 924B0002 */ lbu $t3, 0x0002($s2) ## 000002A2
|
||||
/* 0148C 80A1FA2C 3C014F80 */ lui $at, 0x4F80 ## $at = 4F800000
|
||||
/* 01490 80A1FA30 448B2000 */ mtc1 $t3, $f4 ## $f4 = 0.00
|
||||
/* 01494 80A1FA34 05610004 */ bgez $t3, .L80A1FA48
|
||||
/* 01498 80A1FA38 46802220 */ cvt.s.w $f8, $f4
|
||||
/* 0149C 80A1FA3C 44815000 */ mtc1 $at, $f10 ## $f10 = 4294967296.00
|
||||
/* 014A0 80A1FA40 00000000 */ nop
|
||||
/* 014A4 80A1FA44 460A4200 */ add.s $f8, $f8, $f10
|
||||
.L80A1FA48:
|
||||
/* 014A8 80A1FA48 4608C483 */ div.s $f18, $f24, $f8
|
||||
/* 014AC 80A1FA4C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 014B0 80A1FA50 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
|
||||
/* 014B4 80A1FA54 35CE0020 */ ori $t6, $t6, 0x0020 ## $t6 = DB060020
|
||||
/* 014B8 80A1FA58 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 014BC 80A1FA5C AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
|
||||
/* 014C0 80A1FA60 3C0480A2 */ lui $a0, %hi(D_80A1FC18) ## $a0 = 80A20000
|
||||
/* 014C4 80A1FA64 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 014C8 80A1FA68 3C0A8016 */ lui $t2, %hi(gSegments)
|
||||
/* 014CC 80A1FA6C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 014D0 80A1FA70 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 014D4 80A1FA74 46128182 */ mul.s $f6, $f16, $f18
|
||||
/* 014D8 80A1FA78 4600310D */ trunc.w.s $f4, $f6
|
||||
/* 014DC 80A1FA7C 44052000 */ mfc1 $a1, $f4
|
||||
/* 014E0 80A1FA80 00000000 */ nop
|
||||
/* 014E4 80A1FA84 00052C00 */ sll $a1, $a1, 16
|
||||
/* 014E8 80A1FA88 00052C03 */ sra $a1, $a1, 16
|
||||
/* 014EC 80A1FA8C 00057880 */ sll $t7, $a1, 2
|
||||
/* 014F0 80A1FA90 008F2021 */ addu $a0, $a0, $t7
|
||||
/* 014F4 80A1FA94 8C84FC18 */ lw $a0, %lo(D_80A1FC18)($a0)
|
||||
/* 014F8 80A1FA98 0004C900 */ sll $t9, $a0, 4
|
||||
/* 014FC 80A1FA9C 00194702 */ srl $t0, $t9, 28
|
||||
/* 01500 80A1FAA0 00084880 */ sll $t1, $t0, 2
|
||||
/* 01504 80A1FAA4 01495021 */ addu $t2, $t2, $t1
|
||||
/* 01508 80A1FAA8 8D4A6FA8 */ lw $t2, %lo(gSegments)($t2)
|
||||
/* 0150C 80A1FAAC 0081C024 */ and $t8, $a0, $at
|
||||
/* 01510 80A1FAB0 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01514 80A1FAB4 030A5821 */ addu $t3, $t8, $t2
|
||||
/* 01518 80A1FAB8 01616021 */ addu $t4, $t3, $at
|
||||
/* 0151C 80A1FABC AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
|
||||
/* 01520 80A1FAC0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01524 80A1FAC4 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 01528 80A1FAC8 AE0D02D0 */ sw $t5, 0x02D0($s0) ## 000002D0
|
||||
/* 0152C 80A1FACC AC550004 */ sw $s5, 0x0004($v0) ## 00000004
|
||||
/* 01530 80A1FAD0 AC560000 */ sw $s6, 0x0000($v0) ## 00000000
|
||||
.L80A1FAD4:
|
||||
/* 01534 80A1FAD4 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
|
||||
/* 01538 80A1FAD8 0014A400 */ sll $s4, $s4, 16
|
||||
/* 0153C 80A1FADC 0014A403 */ sra $s4, $s4, 16
|
||||
/* 01540 80A1FAE0 2A810014 */ slti $at, $s4, 0x0014
|
||||
/* 01544 80A1FAE4 1420FF6D */ bne $at, $zero, .L80A1F89C
|
||||
/* 01548 80A1FAE8 26520038 */ addiu $s2, $s2, 0x0038 ## $s2 = 000002D8
|
||||
/* 0154C 80A1FAEC 3C0680A2 */ lui $a2, %hi(D_80A1FC60) ## $a2 = 80A20000
|
||||
/* 01550 80A1FAF0 24C6FC60 */ addiu $a2, $a2, %lo(D_80A1FC60) ## $a2 = 80A1FC60
|
||||
/* 01554 80A1FAF4 27A40088 */ addiu $a0, $sp, 0x0088 ## $a0 = FFFFFFE0
|
||||
/* 01558 80A1FAF8 8FC50000 */ lw $a1, 0x0000($s8) ## 00000000
|
||||
/* 0155C 80A1FAFC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 01560 80A1FB00 240704DB */ addiu $a3, $zero, 0x04DB ## $a3 = 000004DB
|
||||
/* 01564 80A1FB04 8FBF0054 */ lw $ra, 0x0054($sp)
|
||||
/* 01568 80A1FB08 D7B40018 */ ldc1 $f20, 0x0018($sp)
|
||||
/* 0156C 80A1FB0C D7B60020 */ ldc1 $f22, 0x0020($sp)
|
||||
/* 01570 80A1FB10 D7B80028 */ ldc1 $f24, 0x0028($sp)
|
||||
/* 01574 80A1FB14 8FB00030 */ lw $s0, 0x0030($sp)
|
||||
/* 01578 80A1FB18 8FB10034 */ lw $s1, 0x0034($sp)
|
||||
/* 0157C 80A1FB1C 8FB20038 */ lw $s2, 0x0038($sp)
|
||||
/* 01580 80A1FB20 8FB3003C */ lw $s3, 0x003C($sp)
|
||||
/* 01584 80A1FB24 8FB40040 */ lw $s4, 0x0040($sp)
|
||||
/* 01588 80A1FB28 8FB50044 */ lw $s5, 0x0044($sp)
|
||||
/* 0158C 80A1FB2C 8FB60048 */ lw $s6, 0x0048($sp)
|
||||
/* 01590 80A1FB30 8FB7004C */ lw $s7, 0x004C($sp)
|
||||
/* 01594 80A1FB34 8FBE0050 */ lw $s8, 0x0050($sp)
|
||||
/* 01598 80A1FB38 03E00008 */ jr $ra
|
||||
/* 0159C 80A1FB3C 27BD00A8 */ addiu $sp, $sp, 0x00A8 ## $sp = 00000000
|
@ -1,53 +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 En_Fd_InitVars
|
||||
.word 0x00990500, 0x00000215, 0x009E0000, 0x000031E0
|
||||
.word EnFd_Init
|
||||
.word EnFd_Destroy
|
||||
.word EnFd_Update
|
||||
.word EnFd_Draw
|
||||
glabel D_80A0DE20
|
||||
.word 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040088, 0x00000000, 0x01050100, 0x15000640, 0x00000000, 0x0005012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x0C000640, 0x00000000, 0x00050190, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x0E000320, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x0F000640, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x100007D0, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x11000320, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x12000640, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x130007D0, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x04000898, 0x00000000, 0x00040190, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x04001388, 0x00000000, 0x0004012C, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x08000898, 0x00000000, 0x00040190, 0x00000000, 0xFFCFFFFF, 0x01040000, 0x00040008, 0x00000000, 0x01010100, 0x08001388, 0x00000000, 0x0004012C
|
||||
glabel D_80A0DFD0
|
||||
.word 0x0A110939, 0x10000000, 0x0000000C
|
||||
.word D_80A0DE20
|
||||
glabel D_80A0DFE0
|
||||
.word 0x18000002, 0x00190019, 0xFF000000
|
||||
glabel D_80A0DFEC
|
||||
.word 0x060010B4, 0x3F800000, 0x00000000, 0xBF800000, 0x03000000, 0x00000000, 0x06005C64, 0x3F800000, 0x00000000, 0xBF800000, 0x03000000, 0xC1200000, 0x06006044, 0x00000000, 0x00000000, 0xBF800000, 0x03000000, 0xC1200000, 0x06006A18, 0x3F800000, 0x00000000, 0xBF800000, 0x01000000, 0xC1200000, 0x06006B64, 0x00000000, 0x00000000, 0xBF800000, 0x03000000, 0xC1200000
|
||||
glabel D_80A0E064
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E070
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E07C
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E088
|
||||
.word 0x45D48000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E094
|
||||
.word 0x45D48000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E0A0
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E0AC
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E0B8
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E0C4
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0E0D0
|
||||
.word 0xFFFFC8FF, 0xC8C8C8FF, 0xFFFF00FF
|
||||
glabel D_80A0E0DC
|
||||
.word 0x00FF00FF, 0x0000FFFF, 0xFF0000FF
|
||||
glabel D_80A0E0E8
|
||||
.word 0xFF800000, 0xFF000000, 0xFFFF0000, 0xFF000000
|
||||
glabel D_80A0E0F8
|
||||
.word 0x040539B0, 0x040535B0, 0x040531B0, 0x04052DB0, 0x040529B0, 0x040525B0, 0x040521B0, 0x04051DB0, 0x00000000, 0x00000000
|
||||
|
@ -1,13 +0,0 @@
|
||||
.include "macro.inc"
|
||||
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
.set gp=64 # allow use of 64-bit general purpose registers
|
||||
|
||||
.section .rodata
|
||||
|
||||
.balign 16
|
||||
|
||||
glabel D_80A0E1F0
|
||||
.incbin "baserom/ovl_En_Fd", 0x2B30, 0x000002C0
|
@ -1,36 +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 En_Fd_Fire_InitVars
|
||||
.word 0x00A30500, 0x00000015, 0x00030000, 0x000001AC
|
||||
.word EnFdFire_Init
|
||||
.word EnFdFire_Destroy
|
||||
.word EnFdFire_Update
|
||||
.word EnFdFire_Draw
|
||||
glabel D_80A0F030
|
||||
.word 0x0A110939, 0x10010000, 0x00000000, 0xFFCFFFFF, 0x01080000, 0x0D840008, 0x00000000, 0x01010100, 0x000C002E, 0x00000000, 0x00000000
|
||||
glabel D_80A0F05C
|
||||
.word 0x01000000, 0x00000000, 0xFF000000
|
||||
glabel D_80A0F068
|
||||
.word 0x00000002, 0x00000000, 0x00000000, 0x00000000, 0x00000400, 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0F088
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0F094
|
||||
.word 0x00000000, 0x43520000, 0x42700000, 0x43870000, 0x42F00000, 0x43A50000, 0x43340000, 0x41F00000, 0x43700000, 0x42B40000, 0x43960000, 0x43160000
|
||||
glabel D_80A0F0C4
|
||||
.word 0xFFFF00FF, 0xFFFFFFFF
|
||||
glabel D_80A0F0CC
|
||||
.word 0xFF0A00FF, 0x000AFFFF
|
||||
glabel D_80A0F0D4
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A0F0E0
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000
|
||||
|
@ -1,13 +0,0 @@
|
||||
.include "macro.inc"
|
||||
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
.set gp=64 # allow use of 64-bit general purpose registers
|
||||
|
||||
.section .rodata
|
||||
|
||||
.balign 16
|
||||
|
||||
glabel D_80A0F150
|
||||
.incbin "baserom/ovl_En_Fd_Fire", 0xCA0, 0x00000110
|
@ -1,37 +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 En_Fw_InitVars
|
||||
.word 0x00AB0500, 0x00000215, 0x009E0000, 0x00000700
|
||||
.word EnFw_Init
|
||||
.word EnFw_Destroy
|
||||
.word EnFw_Update
|
||||
.word EnFw_Draw
|
||||
glabel D_80A1FB60
|
||||
.word 0x00000000, 0x00000000, 0x00040000, 0xFFCFFFFE, 0x00000000, 0x00050100, 0x020004B0, 0x00000000, 0x00100064
|
||||
glabel D_80A1FB84
|
||||
.word 0x06110939, 0x10000000, 0x00000001
|
||||
.word D_80A1FB60
|
||||
glabel D_80A1FB94
|
||||
.word 0x08000002, 0x00190019, 0xFF000000
|
||||
glabel D_80A1FBA0
|
||||
.word 0x06006CF8, 0x00000000, 0x00000000, 0xBF800000, 0x03000000, 0x00000000, 0x06007CD0, 0x3F800000, 0x00000000, 0xBF800000, 0x03000000, 0xC1000000, 0x06007DC8, 0x3F800000, 0x00000000, 0xBF800000, 0x01000000, 0xC1000000
|
||||
glabel D_80A1FBE8
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A1FBF4
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A1FC00
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A1FC0C
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80A1FC18
|
||||
.word 0x040539B0, 0x040535B0, 0x040531B0, 0x04052DB0, 0x040529B0, 0x040525B0, 0x040521B0, 0x04051DB0, 0x00000000, 0x00000000
|
||||
|
@ -1,13 +0,0 @@
|
||||
.include "macro.inc"
|
||||
|
||||
# assembler directives
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
.set gp=64 # allow use of 64-bit general purpose registers
|
||||
|
||||
.section .rodata
|
||||
|
||||
.balign 16
|
||||
|
||||
glabel D_80A1FC90
|
||||
.incbin "baserom/ovl_En_Fw", 0x16F0, 0x00000130
|
9
spec
9
spec
@ -2260,15 +2260,13 @@ endseg
|
||||
beginseg
|
||||
name "ovl_En_Fd"
|
||||
include "build/src/overlays/actors/ovl_En_Fd/z_en_fd.o"
|
||||
include "build/data/overlays/actors/z_en_fd.data.o"
|
||||
include "build/data/overlays/actors/z_en_fd.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Fd/ovl_En_Fd_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
name "ovl_En_Fd_Fire"
|
||||
include "build/src/overlays/actors/ovl_En_Fd_Fire/z_en_fd_fire.o"
|
||||
include "build/data/overlays/actors/z_en_fd_fire.data.o"
|
||||
include "build/data/overlays/actors/z_en_fd_fire.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Fd_Fire/ovl_En_Fd_Fire_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
@ -2321,8 +2319,7 @@ endseg
|
||||
beginseg
|
||||
name "ovl_En_Fw"
|
||||
include "build/src/overlays/actors/ovl_En_Fw/z_en_fw.o"
|
||||
include "build/data/overlays/actors/z_en_fw.data.o"
|
||||
include "build/data/overlays/actors/z_en_fw.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Fw/ovl_En_Fw_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
@ -4,12 +4,32 @@
|
||||
|
||||
#define THIS ((EnFd*)thisx)
|
||||
|
||||
#define FLG_COREDEAD (0x4000)
|
||||
#define FLG_COREDONE (0x8000)
|
||||
|
||||
void EnFd_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFd_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFd_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFd_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFd_Run(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_SpinAndSpawnFire(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_Reappear(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_SpinAndGrow(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_JumpToGround(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_WaitForCore(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_UpdateFlames(EnFd* this);
|
||||
void EnFd_UpdateDots(EnFd* this);
|
||||
void EnFd_AddEffect(EnFd*, u8, Vec3f*, Vec3f*, Vec3f*, u8, f32, f32);
|
||||
void EnFd_DrawDots(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_DrawFlames(EnFd* this, GlobalContext* globalCtx);
|
||||
void EnFd_Land(EnFd* this, GlobalContext* globalCtx);
|
||||
|
||||
extern Gfx D_060079F8[];
|
||||
extern Gfx D_06007A78[];
|
||||
extern Gfx D_06007928[];
|
||||
extern Gfx D_06007938[];
|
||||
extern FlexSkeletonHeader D_06005810;
|
||||
|
||||
/*
|
||||
const ActorInit En_Fd_InitVars = {
|
||||
ACTOR_EN_FD,
|
||||
ACTORTYPE_ENEMY,
|
||||
@ -21,61 +41,802 @@ const ActorInit En_Fd_InitVars = {
|
||||
(ActorFunc)EnFd_Update,
|
||||
(ActorFunc)EnFd_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0B6C0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0B7B8.s")
|
||||
static ColliderJntSphItemInit sJntSphItemsInit[12] = {
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040088, 0x00, 0x00 }, 0x01, 0x05, 0x01 },
|
||||
{ 21, { { 1600, 0, 0 }, 5 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 12, { { 1600, 0, 0 }, 5 }, 400 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 14, { { 800, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 15, { { 1600, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 16, { { 2000, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 17, { { 800, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 18, { { 1600, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 19, { { 2000, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 4, { { 2200, 0, 0 }, 4 }, 400 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 4, { { 5000, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 8, { { 2200, 0, 0 }, 4 }, 400 },
|
||||
},
|
||||
{
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x04 }, { 0x00040008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 8, { { 5000, 0, 0 }, 4 }, 300 },
|
||||
},
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0B8D8.s")
|
||||
static ColliderJntSphInit sJntSphInit = {
|
||||
{ COLTYPE_UNK10, 0x11, 0x09, 0x39, 0x10, COLSHAPE_JNTSPH },
|
||||
12,
|
||||
sJntSphItemsInit,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BA44.s")
|
||||
static CollisionCheckInfoInit2 sColChkInit = { 24, 2, 25, 25, 0xFF };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BAE0.s")
|
||||
static struct_80034EC0_Entry sAnimations[] = {
|
||||
{ 0x060010B4, 1.0f, 0.0f, -1.0f, 0x03, 0.0f }, { 0x06005C64, 1.0f, 0.0f, -1.0f, 0x03, -10.0f },
|
||||
{ 0x06006044, 0.0f, 0.0f, -1.0f, 0x03, -10.0f }, { 0x06006A18, 1.0f, 0.0f, -1.0f, 0x01, -10.0f },
|
||||
{ 0x06006B64, 0.0f, 0.0f, -1.0f, 0x03, -10.0f },
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BC70.s")
|
||||
s32 EnFd_SpawnCore(EnFd* this, GlobalContext* globalCtx) {
|
||||
if (this->invincibilityTimer != 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BD78.s")
|
||||
if (Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_FW, this->corePos.x, this->corePos.y,
|
||||
this->corePos.z, 0, this->actor.shape.rot.y, 0, this->runDir) == NULL) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BE34.s")
|
||||
this->actor.child->colChkInfo.health = this->actor.colChkInfo.health % 8;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BEA0.s")
|
||||
if (this->actor.child->colChkInfo.health == 0) {
|
||||
this->actor.child->colChkInfo.health = 8;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0BF6C.s")
|
||||
if ((this->actor.flags & 0x2000) == 0x2000) {
|
||||
func_8002DE04(globalCtx, &this->actor, this->actor.child);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C0A0.s")
|
||||
this->coreActive = true;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/EnFd_Init.s")
|
||||
return true;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/EnFd_Destroy.s")
|
||||
void EnFd_SpawnChildFire(EnFd* this, GlobalContext* globalCtx, s16 fireCnt, s16 color) {
|
||||
s32 i;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C310.s")
|
||||
for (i = 0; i < fireCnt; i++) {
|
||||
s16 angle = (s16)((((i * 360.0f) / fireCnt) * (0x10000 / 360.0f))) + this->actor.yawTowardsLink;
|
||||
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_FD_FIRE, this->actor.posRot.pos.x,
|
||||
this->actor.posRot.pos.y, this->actor.posRot.pos.z, 0, angle, 0, (color << 0xF) | i);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C3A0.s")
|
||||
void EnFd_SpawnDot(EnFd* this, GlobalContext* globalCtx) {
|
||||
Vec3f pos = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f velocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f accel = { 0.0f, 0.0f, 0.0f };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C474.s")
|
||||
if (this->actionFunc == EnFd_Run || this->actionFunc == EnFd_SpinAndSpawnFire) {
|
||||
pos.x = this->actor.posRot.pos.x;
|
||||
pos.y = this->actor.groundY + 4.0f;
|
||||
pos.z = this->actor.posRot.pos.z;
|
||||
accel.x = (Math_Rand_ZeroOne() - 0.5f) * 2.0f;
|
||||
accel.y = ((Math_Rand_ZeroOne() - 0.5f) * 0.2f) + 0.3f;
|
||||
accel.z = (Math_Rand_ZeroOne() - 0.5f) * 2.0f;
|
||||
EnFd_AddEffect(this, FD_EFFECT_FLAME, &pos, &velocity, &accel, 8, 0.6f, 0.2f);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C4F0.s")
|
||||
/**
|
||||
* Checks to see if the hammer effect is active, and if it should be applied
|
||||
*/
|
||||
s32 EnFd_CheckHammer(EnFd* this, GlobalContext* globalCtx) {
|
||||
if (this->actionFunc == EnFd_Reappear || this->actionFunc == EnFd_SpinAndGrow ||
|
||||
this->actionFunc == EnFd_JumpToGround || this->actionFunc == EnFd_WaitForCore) {
|
||||
return false;
|
||||
} else if (globalCtx->actorCtx.unk_02 != 0 && this->actor.xzDistFromLink < 300.0f &&
|
||||
this->actor.yDistFromLink < 60.0f) {
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C5D0.s")
|
||||
s32 EnFd_ColliderCheck(EnFd* this, GlobalContext* globalCtx) {
|
||||
Player* player = PLAYER;
|
||||
ColliderBody* body;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0C7EC.s")
|
||||
if (this->collider.base.acFlags & 2 || EnFd_CheckHammer(this, globalCtx)) {
|
||||
this->collider.base.acFlags &= ~2;
|
||||
if (this->invincibilityTimer != 0) {
|
||||
return false;
|
||||
}
|
||||
body = &this->collider.list[0].body;
|
||||
if (body->acHitItem != NULL && (body->acHitItem->toucher.flags & 0x80)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0CA44.s")
|
||||
if (!EnFd_SpawnCore(this, globalCtx)) {
|
||||
return false;
|
||||
}
|
||||
this->invincibilityTimer = 30;
|
||||
this->actor.flags &= ~1;
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_DAMAGE);
|
||||
func_80032C7C(globalCtx, &this->actor);
|
||||
return true;
|
||||
} else if (DECR(this->attackTimer) == 0 && this->collider.base.atFlags & 2) {
|
||||
this->collider.base.atFlags &= ~2;
|
||||
if (this->invincibilityTimer != 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/EnFd_Update.s")
|
||||
if (this->collider.base.atFlags & 4) {
|
||||
return false;
|
||||
}
|
||||
this->attackTimer = 30;
|
||||
Audio_PlayActorSound2(&player->actor, NA_SE_PL_BODY_HIT);
|
||||
func_8002F71C(globalCtx, &this->actor, this->actor.speedXZ + 2.0f, this->actor.yawTowardsLink, 6.0f);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0CCB8.s")
|
||||
/**
|
||||
* Determines if `actor` is within an acceptable range for `this` to be able to "see" `actor`
|
||||
* `actor` must be within 400 units of `this`, `actor` must be within +/- 40 degrees facing angle
|
||||
* towards `actor`, and there must not be a collision poly between `this` and `actor`
|
||||
*/
|
||||
s32 EnFd_CanSeeActor(EnFd* this, Actor* actor, GlobalContext* globalCtx) {
|
||||
CollisionPoly** colPoly;
|
||||
u32 bgId;
|
||||
Vec3f colPoint;
|
||||
s16 angle;
|
||||
s32 pad;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0CCF0.s")
|
||||
// Check to see if `actor` is within 400 units of `this`
|
||||
if (Math_Vec3f_DistXYZ(&this->actor.posRot.pos, &actor->posRot.pos) > 400.0f) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/EnFd_Draw.s")
|
||||
// Check to see if the angle between this facing angle and `actor` is withing ~40 degrees
|
||||
angle = (f32)Math_Vec3f_Yaw(&this->actor.posRot.pos, &actor->posRot.pos) - this->actor.shape.rot.y;
|
||||
if (ABS(angle) >= 0x1C71) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0D40C.s")
|
||||
// check to see if the line between `this` and `actor` does not intersect a collision poly
|
||||
if (func_8003DE84(&globalCtx->colCtx, &this->actor.posRot.pos, &actor->posRot.pos, &colPoint, &colPoly, 1, 0, 0, 1,
|
||||
&bgId)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0D4FC.s")
|
||||
return true;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0D614.s")
|
||||
Actor* EnFd_FindBomb(EnFd* this, GlobalContext* globalCtx) {
|
||||
Actor* actor = globalCtx->actorCtx.actorList[ACTORTYPE_EXPLOSIVES].first;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0D730.s")
|
||||
while (actor != NULL) {
|
||||
if (actor->params != 0 || actor->parent != NULL) {
|
||||
actor = actor->next;
|
||||
continue;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd/func_80A0DB44.s")
|
||||
if (actor->id != ACTOR_EN_BOM) {
|
||||
actor = actor->next;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (EnFd_CanSeeActor(this, actor, globalCtx) != 1) {
|
||||
actor = actor->next;
|
||||
continue;
|
||||
}
|
||||
|
||||
return actor;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Actor* EnFd_FindPotentialTheat(EnFd* this, GlobalContext* globalCtx) {
|
||||
Player* player;
|
||||
Actor* bomb = EnFd_FindBomb(this, globalCtx);
|
||||
|
||||
if (bomb != NULL) {
|
||||
return bomb;
|
||||
}
|
||||
|
||||
if (this->attackTimer != 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
player = PLAYER;
|
||||
if (!EnFd_CanSeeActor(this, &player->actor, globalCtx)) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return &player->actor;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates a delta in `dst` for the position from `this`'s current position to the next
|
||||
* position in a circle formed by `radius` with center at `this`'s initial position.
|
||||
*/
|
||||
Vec3f* EnFd_GetPosAdjAroundCircle(Vec3f* dst, EnFd* this, f32 radius, s16 dir) {
|
||||
s16 angle;
|
||||
Vec3f newPos;
|
||||
|
||||
angle = Math_Vec3f_Yaw(&this->actor.initPosRot.pos, &this->actor.posRot.pos) + (dir * 0x1554); // ~30 degrees
|
||||
newPos.x = (Math_Sins(angle) * radius) + this->actor.initPosRot.pos.x;
|
||||
newPos.z = (Math_Coss(angle) * radius) + this->actor.initPosRot.pos.z;
|
||||
newPos.x -= this->actor.posRot.pos.x;
|
||||
newPos.z -= this->actor.posRot.pos.z;
|
||||
*dst = newPos;
|
||||
return dst;
|
||||
}
|
||||
|
||||
s32 EnFd_ShouldStopRunning(EnFd* this, GlobalContext* globalCtx, f32 radius, s16* runDir) {
|
||||
CollisionPoly* poly;
|
||||
u32 bgId;
|
||||
Vec3f colPoint;
|
||||
Vec3f pos;
|
||||
|
||||
// Check to see if the next position on the rotation around the circle
|
||||
// will result in a background collision
|
||||
EnFd_GetPosAdjAroundCircle(&pos, this, radius, *runDir);
|
||||
|
||||
pos.x += this->actor.posRot.pos.x;
|
||||
pos.y = this->actor.posRot.pos.y;
|
||||
pos.z += this->actor.posRot.pos.z;
|
||||
|
||||
if (func_8003DE84(&globalCtx->colCtx, &this->actor.posRot.pos, &pos, &colPoint, &poly, 1, 0, 0, 1, &bgId)) {
|
||||
*runDir = -*runDir;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (this->circlesToComplete != 0 || DECR(this->spinTimer) != 0) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (Math_Rand_ZeroOne() > 0.5f) {
|
||||
*runDir = -*runDir;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
void EnFd_Fade(EnFd* this, GlobalContext* globalCtx) {
|
||||
if (this->invincibilityTimer != 0) {
|
||||
Math_SmoothScaleMaxMinF(&this->fadeAlpha, 0.0f, 0.3f, 10.0f, 0.0f);
|
||||
this->actor.shape.unk_14 = this->fadeAlpha;
|
||||
if (!(this->fadeAlpha >= 0.9f)) {
|
||||
this->invincibilityTimer = 0;
|
||||
this->spinTimer = 0;
|
||||
this->actionFunc = EnFd_WaitForCore;
|
||||
this->actor.speedXZ = 0.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFd* this = THIS;
|
||||
|
||||
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06005810, NULL, this->limbDrawTable, this->transitionDrawTable,
|
||||
27);
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 32.0f);
|
||||
Collider_InitJntSph(globalCtx, &this->collider);
|
||||
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colSphs);
|
||||
func_80061EFC(&this->actor.colChkInfo, DamageTable_Get(0xF), &sColChkInit);
|
||||
this->actor.flags &= ~1;
|
||||
this->actor.flags |= 0x1000000;
|
||||
Actor_SetScale(&this->actor, 0.01f);
|
||||
this->firstUpdateFlag = true;
|
||||
this->actor.gravity = -1.0f;
|
||||
this->runDir = Math_Rand_ZeroOne() < 0.5f ? -1 : 1;
|
||||
this->actor.naviEnemyId = 0x22;
|
||||
this->actionFunc = EnFd_Reappear;
|
||||
}
|
||||
|
||||
void EnFd_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFd* this = THIS;
|
||||
|
||||
Collider_DestroyJntSph(globalCtx, &this->collider);
|
||||
}
|
||||
|
||||
void EnFd_Reappear(EnFd* this, GlobalContext* globalCtx) {
|
||||
this->actor.posRot.pos = this->actor.initPosRot.pos;
|
||||
this->actor.params = 0;
|
||||
this->actor.shape.unk_14 = 0xFF;
|
||||
this->coreActive = false;
|
||||
this->actor.scale.y = 0.0f;
|
||||
this->fadeAlpha = 255.0f;
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 0);
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_LAUGH);
|
||||
this->actionFunc = EnFd_SpinAndGrow;
|
||||
}
|
||||
|
||||
void EnFd_SpinAndGrow(EnFd* this, GlobalContext* globalCtx) {
|
||||
if (func_800A56C8(&this->skelAnime, this->skelAnime.animFrameCount)) {
|
||||
this->actor.velocity.y = 6.0f;
|
||||
this->actor.scale.y = 0.01f;
|
||||
this->actor.posRot.rot.y ^= 0x8000;
|
||||
this->actor.flags |= 1;
|
||||
this->actor.speedXZ = 8.0f;
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 1);
|
||||
this->actionFunc = EnFd_JumpToGround;
|
||||
} else {
|
||||
this->actor.scale.y = this->skelAnime.animCurrentFrame * (0.01f / this->skelAnime.totalFrames);
|
||||
this->actor.shape.rot.y += 0x2000;
|
||||
this->actor.posRot.rot.y = this->actor.shape.rot.y;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_JumpToGround(EnFd* this, GlobalContext* globalCtx) {
|
||||
if ((this->actor.bgCheckFlags & 1) && !(this->actor.velocity.y > 0.0f)) {
|
||||
this->actor.velocity.y = 0.0f;
|
||||
this->actor.speedXZ = 0.0f;
|
||||
this->actor.posRot.rot.y = this->actor.shape.rot.y;
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 2);
|
||||
this->actionFunc = EnFd_Land;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_Land(EnFd* this, GlobalContext* globalCtx) {
|
||||
Vec3f adjPos;
|
||||
|
||||
Math_SmoothScaleMaxMinF(&this->skelAnime.animPlaybackSpeed, 1.0f, 0.1f, 1.0f, 0.0f);
|
||||
if (func_800A56C8(&this->skelAnime, this->skelAnime.animFrameCount)) {
|
||||
this->spinTimer = Math_Rand_S16Offset(60, 90);
|
||||
this->runRadius = Math_Vec3f_DistXYZ(&this->actor.posRot.pos, &this->actor.initPosRot.pos);
|
||||
EnFd_GetPosAdjAroundCircle(&adjPos, this, this->runRadius, this->runDir);
|
||||
this->actor.posRot.rot.y = Math_atan2f(adjPos.x, adjPos.z) * (0x8000 / M_PI);
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 4);
|
||||
this->actionFunc = EnFd_SpinAndSpawnFire;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_SpinAndSpawnFire(EnFd* this, GlobalContext* globalCtx) {
|
||||
f32 deceleration;
|
||||
f32 tgtSpeed;
|
||||
f32 rotSpeed;
|
||||
|
||||
if ((this->spinTimer < 31) && (this->invincibilityTimer == 0)) {
|
||||
func_8002F974(&this->actor, NA_SE_EN_FLAME_FIRE_ATTACK - SFX_FLAG);
|
||||
} else {
|
||||
func_8002F974(&this->actor, NA_SE_EN_FLAME_ROLL - SFX_FLAG);
|
||||
}
|
||||
|
||||
if (DECR(this->spinTimer) != 0) {
|
||||
this->actor.shape.rot.y += (this->runDir * 0x2000);
|
||||
if (this->spinTimer == 30 && this->invincibilityTimer == 0) {
|
||||
if (this->actor.xzDistFromLink > 160.0f) {
|
||||
// orange flames
|
||||
EnFd_SpawnChildFire(this, globalCtx, 8, 0);
|
||||
} else {
|
||||
// blue flames
|
||||
EnFd_SpawnChildFire(this, globalCtx, 8, 1);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// slow shape rotation down to meet `this` rotation within ~1.66 degrees
|
||||
deceleration = this->actor.posRot.rot.y;
|
||||
deceleration -= this->actor.shape.rot.y;
|
||||
rotSpeed = 0.0f;
|
||||
tgtSpeed = fabsf(deceleration);
|
||||
deceleration /= tgtSpeed;
|
||||
Math_SmoothScaleMaxF(&rotSpeed, tgtSpeed, 0.6f, 0x2000);
|
||||
rotSpeed *= deceleration;
|
||||
this->actor.shape.rot.y += (s16)rotSpeed;
|
||||
rotSpeed = fabsf(rotSpeed);
|
||||
if ((s32)rotSpeed <= 300) {
|
||||
// ~1.6 degrees
|
||||
this->actor.shape.rot.y = this->actor.posRot.rot.y;
|
||||
}
|
||||
|
||||
if (this->actor.shape.rot.y == this->actor.posRot.rot.y) {
|
||||
this->initYawToInitPos = Math_Vec3f_Yaw(&this->actor.initPosRot.pos, &this->actor.posRot.pos);
|
||||
this->curYawToInitPos = this->runDir < 0 ? 0xFFFF : 0;
|
||||
this->circlesToComplete = (globalCtx->state.frames & 7) + 2;
|
||||
this->spinTimer = Math_Rand_S16Offset(30, 120);
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 3);
|
||||
this->actionFunc = EnFd_Run;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Run around in a circle with the center being the initial position, and
|
||||
* the radius being the distance from the initial postion to the nearest
|
||||
* threat (bomb or player).
|
||||
*/
|
||||
void EnFd_Run(EnFd* this, GlobalContext* globalCtx) {
|
||||
Actor* potentialThreat;
|
||||
s16 yawToYawTarget;
|
||||
f32 runRadiusTarget;
|
||||
Vec3f adjPos;
|
||||
|
||||
if (EnFd_ShouldStopRunning(this, globalCtx, this->runRadius, &this->runDir)) {
|
||||
if (this->invincibilityTimer == 0) {
|
||||
this->actor.posRot.rot.y ^= 0x8000;
|
||||
this->actor.velocity.y = 6.0f;
|
||||
this->actor.speedXZ = 0.0f;
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 1);
|
||||
this->actionFunc = EnFd_JumpToGround;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
yawToYawTarget = Math_Vec3f_Yaw(&this->actor.initPosRot.pos, &this->actor.posRot.pos) - this->initYawToInitPos;
|
||||
if (this->runDir > 0) {
|
||||
if ((u16)this->curYawToInitPos > (u16)(yawToYawTarget)) {
|
||||
this->circlesToComplete--;
|
||||
}
|
||||
} else if ((u16)this->curYawToInitPos < (u16)(yawToYawTarget)) {
|
||||
this->circlesToComplete--;
|
||||
}
|
||||
|
||||
if (this->circlesToComplete < 0) {
|
||||
this->circlesToComplete = 0;
|
||||
}
|
||||
this->curYawToInitPos = yawToYawTarget;
|
||||
|
||||
// If there is a bomb out, or if the player exists, set radius to
|
||||
// the distance to that threat, otherwise default to 200.
|
||||
potentialThreat = EnFd_FindPotentialTheat(this, globalCtx);
|
||||
if ((potentialThreat != NULL) && (this->invincibilityTimer == 0)) {
|
||||
runRadiusTarget = Math_Vec3f_DistXYZ(&this->actor.initPosRot.pos, &potentialThreat->posRot.pos);
|
||||
} else {
|
||||
runRadiusTarget = 200.0f;
|
||||
}
|
||||
Math_SmoothScaleMaxMinF(&this->runRadius, runRadiusTarget, 0.3f, 100.0f, 0.0f);
|
||||
EnFd_GetPosAdjAroundCircle(&adjPos, this, this->runRadius, this->runDir);
|
||||
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, Math_atan2f(adjPos.x, adjPos.z) * (0x8000 / M_PI), 4, 0xFA0, 1);
|
||||
this->actor.posRot.rot = this->actor.shape.rot;
|
||||
func_8002F974(&this->actor, NA_SE_EN_FLAME_RUN - SFX_FLAG);
|
||||
if (this->skelAnime.animCurrentFrame == 6.0f || this->skelAnime.animCurrentFrame == 13.0f ||
|
||||
this->skelAnime.animCurrentFrame == 28.0f) {
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_KICK);
|
||||
}
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 8.0f, 0.1f, 1.0f, 0.0f);
|
||||
}
|
||||
|
||||
/**
|
||||
* En_Fw will set `this` params when it is done with it's action.
|
||||
* It will set FLG_COREDONE when the core has returned to `this`'s initial
|
||||
* position, and FLG_COREDEAD when there is no health left
|
||||
*/
|
||||
void EnFd_WaitForCore(EnFd* this, GlobalContext* globalCtx) {
|
||||
if (this->spinTimer != 0) {
|
||||
this->spinTimer--;
|
||||
if (this->spinTimer == 0) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
} else if (this->actor.params & FLG_COREDONE) {
|
||||
this->actionFunc = EnFd_Reappear;
|
||||
} else if (this->actor.params & FLG_COREDEAD) {
|
||||
this->actor.params = 0;
|
||||
this->spinTimer = 30;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFd* this = THIS;
|
||||
s32 pad;
|
||||
|
||||
if (this->firstUpdateFlag) {
|
||||
func_800F5ACC(0x38);
|
||||
this->firstUpdateFlag = false;
|
||||
}
|
||||
|
||||
if (this->actionFunc != EnFd_Reappear) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
EnFd_SpawnDot(this, globalCtx);
|
||||
}
|
||||
|
||||
if ((this->actor.flags & 0x2000) == 0x2000) {
|
||||
// has been hookshoted
|
||||
if (EnFd_SpawnCore(this, globalCtx)) {
|
||||
this->actor.flags &= ~1;
|
||||
this->invincibilityTimer = 30;
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_DAMAGE);
|
||||
func_80032C7C(globalCtx, &this->actor);
|
||||
} else {
|
||||
this->actor.flags &= ~0x2000;
|
||||
}
|
||||
} else if (this->actionFunc != EnFd_WaitForCore) {
|
||||
EnFd_ColliderCheck(this, globalCtx);
|
||||
}
|
||||
Actor_MoveForward(&this->actor);
|
||||
func_8002E4B4(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4);
|
||||
EnFd_Fade(this, globalCtx);
|
||||
this->actionFunc(this, globalCtx);
|
||||
EnFd_UpdateDots(this);
|
||||
EnFd_UpdateFlames(this);
|
||||
if (this->actionFunc != EnFd_Reappear && this->actionFunc != EnFd_SpinAndGrow &&
|
||||
this->actionFunc != EnFd_WaitForCore) {
|
||||
if (this->attackTimer == 0 && this->invincibilityTimer == 0) {
|
||||
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
|
||||
if ((this->actionFunc == EnFd_Run) || (this->actionFunc == EnFd_SpinAndSpawnFire)) {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
}
|
||||
|
||||
s32 EnFd_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, void* thisx,
|
||||
Gfx** gfxP) {
|
||||
EnFd* this = THIS;
|
||||
|
||||
if (this->invincibilityTimer != 0) {
|
||||
switch (limbIndex) {
|
||||
case 13:
|
||||
case 21:
|
||||
*dList = NULL;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnFd_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx, Gfx** gfxP) {
|
||||
EnFd* this = THIS;
|
||||
Vec3f unused0 = { 6800.0f, 0.0f, 0.0f };
|
||||
Vec3f unused1 = { 6800.0f, 0.0f, 0.0f };
|
||||
Vec3f initialPos = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f pos = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f accel = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f velocity = { 0.0f, 0.0f, 0.0f };
|
||||
s32 i;
|
||||
|
||||
if (limbIndex == 21) {
|
||||
Matrix_MultVec3f(&initialPos, &this->corePos);
|
||||
}
|
||||
|
||||
if (limbIndex == 13) {
|
||||
Matrix_MultVec3f(&initialPos, &this->actor.posRot2.pos);
|
||||
}
|
||||
|
||||
if (limbIndex == 3 || limbIndex == 6 || limbIndex == 7 || limbIndex == 10 || limbIndex == 14 || limbIndex == 15 ||
|
||||
limbIndex == 17 || limbIndex == 18 || limbIndex == 20 || limbIndex == 22 || limbIndex == 23 ||
|
||||
limbIndex == 24 || limbIndex == 25 || limbIndex == 26) {
|
||||
if ((globalCtx->state.frames % 2) != 0) {
|
||||
for (i = 0; i < 1; i++) {
|
||||
Matrix_MultVec3f(&initialPos, &pos);
|
||||
pos.x += (Math_Rand_ZeroOne() - 0.5f) * 20.0f;
|
||||
pos.y += (Math_Rand_ZeroOne() - 0.5f) * 40.0f;
|
||||
pos.z += (Math_Rand_ZeroOne() - 0.5f) * 20.0f;
|
||||
accel.x = (Math_Rand_ZeroOne() - 0.5f) * 0.4f;
|
||||
accel.y = ((Math_Rand_ZeroOne() - 0.5f) * 0.2f) + 0.6f;
|
||||
accel.z = (Math_Rand_ZeroOne() - 0.5f) * 0.4f;
|
||||
EnFd_AddEffect(this, FD_EFFECT_DOT, &pos, &velocity, &accel, 0, 0.006f, 0.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func_800628A4(limbIndex, &this->collider);
|
||||
}
|
||||
|
||||
void EnFd_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFd* this = THIS;
|
||||
s32 clampedHealth;
|
||||
Color_RGBA8 primColors[] = {
|
||||
{ 255, 255, 200, 255 },
|
||||
{ 200, 200, 200, 255 },
|
||||
{ 255, 255, 0, 255 },
|
||||
};
|
||||
Color_RGBA8 envColors[] = {
|
||||
{ 0, 255, 0, 255 },
|
||||
{ 0, 0, 255, 255 },
|
||||
{ 255, 0, 0, 255 },
|
||||
};
|
||||
u32 frames;
|
||||
s32 pad;
|
||||
|
||||
frames = globalCtx->state.frames;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 1751);
|
||||
|
||||
Matrix_Push();
|
||||
EnFd_DrawDots(this, globalCtx);
|
||||
EnFd_DrawFlames(this, globalCtx);
|
||||
Matrix_Pull();
|
||||
if (this->actionFunc != EnFd_Reappear && !(this->fadeAlpha < 0.9f)) {
|
||||
if (1) {}
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
clampedHealth = CLAMP(thisx->colChkInfo.health - 1, 0, 23);
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 0, 128, primColors[clampedHealth / 8].r, primColors[clampedHealth / 8].g,
|
||||
primColors[clampedHealth / 8].b, (u8)this->fadeAlpha);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, envColors[clampedHealth / 8].r, envColors[clampedHealth / 8].g,
|
||||
envColors[clampedHealth / 8].b, (u8)this->fadeAlpha);
|
||||
gSPSegment(
|
||||
POLY_XLU_DISP++, 0x8,
|
||||
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0, 0xFF - (u8)(frames * 6), 8, 0x40));
|
||||
gDPPipeSync(POLY_XLU_DISP++);
|
||||
gSPSegment(POLY_XLU_DISP++, 0x9, D_80116280);
|
||||
|
||||
POLY_XLU_DISP = SkelAnime_DrawFlex(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl,
|
||||
this->skelAnime.dListCount, EnFd_OverrideLimbDraw, EnFd_PostLimbDraw, this,
|
||||
POLY_XLU_DISP);
|
||||
}
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 1822);
|
||||
}
|
||||
|
||||
void EnFd_AddEffect(EnFd* this, u8 type, Vec3f* pos, Vec3f* velocity, Vec3f* accel, u8 timer, f32 scale,
|
||||
f32 scaleStep) {
|
||||
EnFdEffect* eff = this->effects;
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type != FD_EFFECT_NONE) {
|
||||
continue;
|
||||
}
|
||||
eff->scale = scale;
|
||||
eff->scaleStep = scaleStep;
|
||||
eff->initialTimer = eff->timer = timer;
|
||||
eff->type = type;
|
||||
eff->pos = *pos;
|
||||
eff->accel = *accel;
|
||||
eff->velocity = *velocity;
|
||||
if (eff->type == FD_EFFECT_DOT) {
|
||||
eff->color.a = 255;
|
||||
eff->timer = (s16)(Math_Rand_ZeroOne() * 10.0f);
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_UpdateFlames(EnFd* this) {
|
||||
s16 i;
|
||||
EnFdEffect* eff = this->effects;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type == FD_EFFECT_FLAME) {
|
||||
eff->timer--;
|
||||
if (eff->timer == 0) {
|
||||
eff->type = FD_EFFECT_NONE;
|
||||
}
|
||||
eff->accel.x = (Math_Rand_ZeroOne() * 0.4f) - 0.2f;
|
||||
eff->accel.z = (Math_Rand_ZeroOne() * 0.4f) - 0.2f;
|
||||
eff->pos.x += eff->velocity.x;
|
||||
eff->pos.y += eff->velocity.y;
|
||||
eff->pos.z += eff->velocity.z;
|
||||
eff->velocity.x += eff->accel.x;
|
||||
eff->velocity.y += eff->accel.y;
|
||||
eff->velocity.z += eff->accel.z;
|
||||
eff->scale += eff->scaleStep;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_UpdateDots(EnFd* this) {
|
||||
EnFdEffect* eff = this->effects;
|
||||
s16 i;
|
||||
Color_RGBA8 dotColors[] = {
|
||||
{ 255, 128, 0, 0 },
|
||||
{ 255, 0, 0, 0 },
|
||||
{ 255, 255, 0, 0 },
|
||||
{ 255, 0, 0, 0 },
|
||||
};
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type == FD_EFFECT_DOT) {
|
||||
eff->pos.x += eff->velocity.x;
|
||||
eff->pos.y += eff->velocity.y;
|
||||
eff->pos.z += eff->velocity.z;
|
||||
eff->timer++;
|
||||
eff->velocity.x += eff->accel.x;
|
||||
eff->velocity.y += eff->accel.y;
|
||||
eff->velocity.z += eff->accel.z;
|
||||
|
||||
eff->color.r = dotColors[eff->timer % 4].r;
|
||||
eff->color.g = dotColors[eff->timer % 4].g;
|
||||
eff->color.b = dotColors[eff->timer % 4].b;
|
||||
if (eff->color.a > 30) {
|
||||
eff->color.a -= 30;
|
||||
} else {
|
||||
eff->color.a = 0;
|
||||
eff->type = FD_EFFECT_NONE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFd_DrawFlames(EnFd* this, GlobalContext* globalCtx) {
|
||||
static Gfx* D_80A0E0F8[] = {
|
||||
0x040539B0, 0x040535B0, 0x040531B0, 0x04052DB0, 0x040529B0, 0x040525B0, 0x040521B0, 0x04051DB0,
|
||||
};
|
||||
s32 firstDone;
|
||||
s16 i;
|
||||
s16 idx;
|
||||
EnFdEffect* eff = this->effects;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 1969);
|
||||
firstDone = false;
|
||||
if (1) {}
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type == FD_EFFECT_FLAME) {
|
||||
if (!firstDone) {
|
||||
POLY_XLU_DISP = Gfx_CallSetupDL(POLY_XLU_DISP, 0);
|
||||
gSPDisplayList(POLY_XLU_DISP++, D_06007928);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, 255, 10, 0, (u8)((this->fadeAlpha / 255.0f) * 255));
|
||||
firstDone = true;
|
||||
}
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 0, (u8)((this->fadeAlpha / 255.0f) * 255));
|
||||
gDPPipeSync(POLY_XLU_DISP++);
|
||||
Matrix_Translate(eff->pos.x, eff->pos.y, eff->pos.z, MTXMODE_NEW);
|
||||
func_800D1FD4(&globalCtx->mf_11DA0);
|
||||
Matrix_Scale(eff->scale, eff->scale, 1.0f, MTXMODE_APPLY);
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_fd.c", 2006),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
idx = eff->timer * (8.0f / eff->initialTimer);
|
||||
gSPSegment(POLY_XLU_DISP++, 0x8, SEGMENTED_TO_VIRTUAL(D_80A0E0F8[idx]));
|
||||
gSPDisplayList(POLY_XLU_DISP++, D_06007938);
|
||||
}
|
||||
}
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 2020);
|
||||
}
|
||||
|
||||
void EnFd_DrawDots(EnFd* this, GlobalContext* globalCtx) {
|
||||
s16 i;
|
||||
s16 firstDone;
|
||||
EnFdEffect* eff = this->effects;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 2034);
|
||||
|
||||
firstDone = false;
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type == FD_EFFECT_DOT) {
|
||||
if (!firstDone) {
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
gSPDisplayList(POLY_XLU_DISP++, D_060079F8);
|
||||
firstDone = true;
|
||||
}
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, eff->color.r, eff->color.g, eff->color.b,
|
||||
(u8)(eff->color.a * (this->fadeAlpha / 255.0f)));
|
||||
gDPPipeSync(POLY_XLU_DISP++);
|
||||
if (1) {}
|
||||
Matrix_Translate(eff->pos.x, eff->pos.y, eff->pos.z, MTXMODE_NEW);
|
||||
func_800D1FD4(&globalCtx->mf_11DA0);
|
||||
Matrix_Scale(eff->scale, eff->scale, 1.0f, MTXMODE_APPLY);
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_fd.c", 2064),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(POLY_XLU_DISP++, D_06007A78);
|
||||
}
|
||||
}
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fd.c", 2071);
|
||||
}
|
||||
|
@ -6,9 +6,48 @@
|
||||
|
||||
struct EnFd;
|
||||
|
||||
typedef void (*EnFdActionFunc)(struct EnFd* this, GlobalContext* globalCtx);
|
||||
|
||||
typedef enum {
|
||||
FD_EFFECT_NONE,
|
||||
FD_EFFECT_FLAME,
|
||||
FD_EFFECT_DOT
|
||||
} FDEffectType;
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ u8 type;
|
||||
/* 0x0001 */ u8 timer;
|
||||
/* 0x0002 */ u8 initialTimer;
|
||||
/* 0x0004 */ f32 scale;
|
||||
/* 0x0008 */ f32 scaleStep;
|
||||
/* 0x000C */ Color_RGBA8 color;
|
||||
/* 0x0010 */ char unk_10[4];
|
||||
/* 0x0014 */ Vec3f pos;
|
||||
/* 0x0020 */ Vec3f velocity;
|
||||
/* 0x002C */ Vec3f accel;
|
||||
} EnFdEffect; // size = 0x38
|
||||
|
||||
typedef struct EnFd {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x3094];
|
||||
/* 0x014C */ SkelAnime skelAnime;
|
||||
/* 0x0190 */ EnFdActionFunc actionFunc;
|
||||
/* 0x0194 */ ColliderJntSph collider;
|
||||
/* 0x01B4 */ ColliderJntSphItem colSphs[12];
|
||||
/* 0x04B4 */ u8 coreActive;
|
||||
/* 0x04B6 */ s16 initYawToInitPos;
|
||||
/* 0x04B8 */ s16 curYawToInitPos;
|
||||
/* 0x04BA */ s16 runDir;
|
||||
/* 0x04BC */ s16 firstUpdateFlag;
|
||||
/* 0x04BE */ s16 spinTimer;
|
||||
/* 0x04C0 */ s16 circlesToComplete;
|
||||
/* 0x04C2 */ s16 invincibilityTimer;
|
||||
/* 0x04C4 */ s16 attackTimer;
|
||||
/* 0x04C8 */ f32 runRadius;
|
||||
/* 0x04CC */ f32 fadeAlpha;
|
||||
/* 0x04D0 */ Vec3f corePos;
|
||||
/* 0x04DC */ Vec3s limbDrawTable[27];
|
||||
/* 0x057E */ Vec3s transitionDrawTable[27];
|
||||
/* 0x0620 */ EnFdEffect effects[200];
|
||||
} EnFd; // size = 0x31E0
|
||||
|
||||
extern const ActorInit En_Fd_InitVars;
|
||||
|
@ -8,8 +8,13 @@ void EnFdFire_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFdFire_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFdFire_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFdFire_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFdFire_Disappear(EnFdFire* this, GlobalContext* globalCtx);
|
||||
void func_80A0E70C(EnFdFire* this, GlobalContext* globalCtx);
|
||||
void EnFdFire_DanceTowardsPlayer(EnFdFire* this, GlobalContext* globalCtx);
|
||||
void EnFdFire_WaitToDie(EnFdFire* this, GlobalContext* globalCtx);
|
||||
|
||||
extern Gfx D_0404D4E0[];
|
||||
|
||||
/*
|
||||
const ActorInit En_Fd_Fire_InitVars = {
|
||||
ACTOR_EN_FD_FIRE,
|
||||
ACTORTYPE_ENEMY,
|
||||
@ -21,23 +26,220 @@ const ActorInit En_Fd_Fire_InitVars = {
|
||||
(ActorFunc)EnFdFire_Update,
|
||||
(ActorFunc)EnFdFire_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0E4B0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0E578.s")
|
||||
static ColliderCylinderInit sCylinderInit = {
|
||||
{ COLTYPE_UNK10, 0x11, 0x09, 0x39, 0x10, COLSHAPE_CYLINDER },
|
||||
{ 0x00, { 0xFFCFFFFF, 0x01, 0x08 }, { 0x0D840008, 0x00, 0x00 }, 0x01, 0x01, 0x01 },
|
||||
{ 12, 46, 0, { 0, 0, 0 } },
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/EnFdFire_Init.s")
|
||||
static CollisionCheckInfoInit2 sColChkInit = { 1, 0, 0, 0, 0xFF };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/EnFdFire_Destroy.s")
|
||||
static DamageTable sDamageTable = { {
|
||||
0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
} };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0E70C.s")
|
||||
void EnFdFire_UpdatePos(EnFdFire* this, Vec3f* targetPos) {
|
||||
f32 dist;
|
||||
f32 xDiff = targetPos->x - this->actor.posRot.pos.x;
|
||||
f32 yDiff = targetPos->y - this->actor.posRot.pos.y;
|
||||
f32 zDiff = targetPos->z - this->actor.posRot.pos.z;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0E848.s")
|
||||
dist = sqrtf(SQ(xDiff) + SQ(yDiff) + SQ(zDiff));
|
||||
if (fabsf(dist) > fabsf(this->actor.speedXZ)) {
|
||||
this->actor.velocity.x = (xDiff / dist) * this->actor.speedXZ;
|
||||
this->actor.velocity.z = (zDiff / dist) * this->actor.speedXZ;
|
||||
} else {
|
||||
this->actor.velocity.x = 0.0f;
|
||||
this->actor.velocity.z = 0.0f;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0E884.s")
|
||||
this->actor.velocity.y += this->actor.gravity;
|
||||
if (!(this->actor.minVelocityY <= this->actor.velocity.y)) {
|
||||
this->actor.velocity.y = this->actor.minVelocityY;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/func_80A0EA34.s")
|
||||
s32 EnFdFire_CheckCollider(EnFdFire* this, GlobalContext* globalCtx) {
|
||||
if (this->actionFunc == EnFdFire_Disappear) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/EnFdFire_Update.s")
|
||||
if (this->collider.base.acFlags & 2) {
|
||||
this->collider.base.acFlags &= ~2;
|
||||
return true;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fd_Fire/EnFdFire_Draw.s")
|
||||
if (this->collider.base.maskB & 1) {
|
||||
this->collider.base.maskB &= ~1;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void EnFdFire_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFdFire* this = THIS;
|
||||
s32 pad;
|
||||
Player* player = PLAYER;
|
||||
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 20.0f);
|
||||
Collider_InitCylinder(globalCtx, &this->collider);
|
||||
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
|
||||
func_80061EFC(&this->actor.colChkInfo, &sDamageTable, &sColChkInit);
|
||||
this->actor.flags &= ~1;
|
||||
this->actor.gravity = -0.6f;
|
||||
this->actor.speedXZ = 5.0f;
|
||||
this->actor.velocity.y = 12.0f;
|
||||
this->spawnRadius = Math_Vec3f_DistXYZ(&this->actor.posRot.pos, &player->actor.posRot.pos);
|
||||
this->scale = 3.0f;
|
||||
this->tile2Y = (s16)Math_Rand_ZeroFloat(5.0f) - 25;
|
||||
this->actionFunc = func_80A0E70C;
|
||||
}
|
||||
|
||||
void EnFdFire_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFdFire* this = THIS;
|
||||
|
||||
Collider_DestroyCylinder(globalCtx, &this->collider);
|
||||
}
|
||||
|
||||
void func_80A0E70C(EnFdFire* this, GlobalContext* globalCtx) {
|
||||
Vec3f velocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f targetPos = this->actor.parent->posRot.pos;
|
||||
|
||||
targetPos.x += this->spawnRadius * Math_Sins(this->actor.posRot.rot.y);
|
||||
targetPos.z += this->spawnRadius * Math_Coss(this->actor.posRot.rot.y);
|
||||
EnFdFire_UpdatePos(this, &targetPos);
|
||||
if (this->actor.bgCheckFlags & 1 && (!(this->actor.velocity.y > 0.0f))) {
|
||||
this->actor.velocity = velocity;
|
||||
this->actor.speedXZ = 0.0f;
|
||||
this->actor.bgCheckFlags &= ~1;
|
||||
if (this->actor.params & 0x8000) {
|
||||
this->deathTimer = 200;
|
||||
this->actionFunc = EnFdFire_DanceTowardsPlayer;
|
||||
} else {
|
||||
this->deathTimer = 300;
|
||||
this->actionFunc = EnFdFire_WaitToDie;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFdFire_WaitToDie(EnFdFire* this, GlobalContext* globalCtx) {
|
||||
if (DECR(this->deathTimer) == 0) {
|
||||
this->actionFunc = EnFdFire_Disappear;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFdFire_DanceTowardsPlayer(EnFdFire* this, GlobalContext* globalCtx) {
|
||||
Player* player = PLAYER;
|
||||
f32 angles[] = {
|
||||
0.0f, 210.0f, 60.0f, 270.0f, 120.0f, 330.0f, 180.0f, 30.0f, 240.0f, 90.0f, 300.0f, 150.0f,
|
||||
};
|
||||
Vec3f pos;
|
||||
s16 idx;
|
||||
|
||||
idx = ((globalCtx->state.frames / 10) + (this->actor.params & 0x7FFF)) % ARRAY_COUNT(angles);
|
||||
pos = player->actor.posRot.pos;
|
||||
pos.x += 120.0f * sinf(angles[idx]);
|
||||
pos.z += 120.0f * cosf(angles[idx]);
|
||||
|
||||
if (DECR(this->deathTimer) == 0) {
|
||||
this->actionFunc = EnFdFire_Disappear;
|
||||
} else {
|
||||
Math_SmoothScaleMaxMinS(&this->actor.posRot.rot.y, Math_Vec3f_Yaw(&this->actor.posRot.pos, &pos), 8, 0xFA0, 1);
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.4f, 1.0f, 0.0f);
|
||||
if (this->actor.speedXZ < 0.1f) {
|
||||
this->actor.speedXZ = 5.0f;
|
||||
}
|
||||
func_8002D868(&this->actor);
|
||||
}
|
||||
}
|
||||
|
||||
void EnFdFire_Disappear(EnFdFire* this, GlobalContext* globalCtx) {
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.6f, 9.0f, 0.0f);
|
||||
func_8002D868(&this->actor);
|
||||
Math_SmoothScaleMaxMinF(&this->scale, 0.0f, 0.3f, 0.1f, 0.0f);
|
||||
this->actor.shape.unk_10 = 20.0f;
|
||||
this->actor.shape.unk_10 *= (this->scale / 3.0f);
|
||||
if (!(this->scale > 0.01f)) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
}
|
||||
|
||||
void EnFdFire_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFdFire* this = THIS;
|
||||
s32 pad;
|
||||
|
||||
if (this->actionFunc != EnFdFire_Disappear) {
|
||||
if ((this->actor.parent->update == NULL) || EnFdFire_CheckCollider(this, globalCtx)) {
|
||||
this->actionFunc = EnFdFire_Disappear;
|
||||
}
|
||||
}
|
||||
|
||||
func_8002D7EC(&this->actor);
|
||||
this->actionFunc(this, globalCtx);
|
||||
func_8002E4B4(globalCtx, &this->actor, 12.0f, 10.0f, 0.0f, 5);
|
||||
|
||||
if (this->actionFunc != EnFdFire_Disappear) {
|
||||
Collider_CylinderUpdate(&this->actor, &this->collider);
|
||||
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
}
|
||||
|
||||
void EnFdFire_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
Color_RGBA8 primColors[] = {
|
||||
{ 255, 255, 0, 255 },
|
||||
{ 255, 255, 255, 255 },
|
||||
};
|
||||
Color_RGBA8 envColors[] = {
|
||||
{ 255, 10, 0, 255 },
|
||||
{ 0, 10, 255, 255 },
|
||||
};
|
||||
s32 pad;
|
||||
EnFdFire* this = THIS;
|
||||
Vec3f scale = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f sp90 = { 0.0f, 0.0f, 0.0f };
|
||||
s16 sp8E;
|
||||
f32 sp88;
|
||||
f32 sp84;
|
||||
f32 sp80;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_fd_fire.c", 572);
|
||||
|
||||
Matrix_Translate(this->actor.posRot.pos.x, this->actor.posRot.pos.y, this->actor.posRot.pos.z, MTXMODE_NEW);
|
||||
sp8E = Math_Vec3f_Yaw(&scale, &this->actor.velocity) - func_8005A9F4(ACTIVE_CAM);
|
||||
sp84 = fabsf(Math_Coss(sp8E));
|
||||
sp88 = Math_Sins(sp8E);
|
||||
sp80 = Math_Vec3f_DistXZ(&scale, &this->actor.velocity) / 1.5f;
|
||||
if (1) {}
|
||||
if (1) {}
|
||||
if (1) {}
|
||||
Matrix_RotateY((s16)(func_8005A9F4(ACTIVE_CAM) + 0x8000) * (M_PI / 0x8000), MTXMODE_APPLY);
|
||||
Matrix_RotateZ(((sp88 * -10.0f) * sp80) * (M_PI / 180.0f), MTXMODE_APPLY);
|
||||
scale.x = scale.y = scale.z = this->scale * 0.001f;
|
||||
Matrix_Scale(scale.x, scale.y, scale.z, MTXMODE_APPLY);
|
||||
sp84 = sp80 * ((0.01f * -15.0f) * sp84) + 1.0f;
|
||||
if (sp84 < 0.1f) {
|
||||
sp84 = 0.1f;
|
||||
}
|
||||
Matrix_Scale(1.0f, sp84, 1.0f / sp84, MTXMODE_APPLY);
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_fd_fire.c", 623),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
gSPSegment(POLY_XLU_DISP++, 0x8,
|
||||
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0,
|
||||
globalCtx->state.frames * this->tile2Y, 0x20, 0x80));
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 128, 128, primColors[((this->actor.params & 0x8000) >> 0xF)].r,
|
||||
primColors[((this->actor.params & 0x8000) >> 0xF)].g,
|
||||
primColors[((this->actor.params & 0x8000) >> 0xF)].b,
|
||||
primColors[((this->actor.params & 0x8000) >> 0xF)].a);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, envColors[((this->actor.params & 0x8000) >> 0xF)].r,
|
||||
envColors[((this->actor.params & 0x8000) >> 0xF)].g,
|
||||
envColors[((this->actor.params & 0x8000) >> 0xF)].b,
|
||||
envColors[((this->actor.params & 0x8000) >> 0xF)].a);
|
||||
gDPPipeSync(POLY_XLU_DISP++);
|
||||
gSPDisplayList(POLY_XLU_DISP++, &D_0404D4E0);
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fd_fire.c", 672);
|
||||
}
|
||||
|
@ -6,9 +6,17 @@
|
||||
|
||||
struct EnFdFire;
|
||||
|
||||
typedef void (*EnFdFireActionFunc)(struct EnFdFire* this, GlobalContext* globalCtx);
|
||||
|
||||
typedef struct EnFdFire {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x60];
|
||||
/* 0x014C */ EnFdFireActionFunc actionFunc;
|
||||
/* 0x0150 */ ColliderCylinder collider;
|
||||
/* 0x019C */ f32 spawnRadius;
|
||||
/* 0x01A0 */ f32 scale;
|
||||
/* 0x01A4 */ char unk_1A4[0x2];
|
||||
/* 0x01A6 */ s16 deathTimer;
|
||||
/* 0x01A8 */ s16 tile2Y;
|
||||
} EnFdFire; // size = 0x01AC
|
||||
|
||||
extern const ActorInit En_Fd_Fire_InitVars;
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "z_en_fw.h"
|
||||
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
|
||||
|
||||
#define FLAGS 0x00000215
|
||||
|
||||
@ -8,8 +9,15 @@ void EnFw_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFw_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFw_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFw_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnFw_UpdateDust(EnFw* this);
|
||||
void EnFw_DrawDust(EnFw* this, GlobalContext* globalCtx);
|
||||
void EnFw_AddDust(EnFw* this, Vec3f* initialPos, Vec3f* initialSpeed, Vec3f* accel, u8 initialTimer, f32 scale,
|
||||
f32 scaleStep);
|
||||
void EnFw_Bounce(EnFw* this, GlobalContext* globalCtx);
|
||||
void EnFw_Run(EnFw* this, GlobalContext* globalCtx);
|
||||
void EnFw_JumpToParentInitPos(EnFw* this, GlobalContext* globalCtx);
|
||||
void EnFw_TurnToParentInitPos(EnFw* this, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
const ActorInit En_Fw_InitVars = {
|
||||
ACTOR_EN_FW,
|
||||
ACTORTYPE_ENEMY,
|
||||
@ -21,39 +29,442 @@ const ActorInit En_Fw_InitVars = {
|
||||
(ActorFunc)EnFw_Update,
|
||||
(ActorFunc)EnFw_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1E5A0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1E668.s")
|
||||
static ColliderJntSphItemInit sJntSphItemsInit[1] = {
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x04 }, { 0xFFCFFFFE, 0x00, 0x00 }, 0x00, 0x05, 0x01 },
|
||||
{ 2, { { 1200, 0, 0 }, 16 }, 100 },
|
||||
},
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1E760.s")
|
||||
static ColliderJntSphInit sJntSphInit = {
|
||||
{ COLTYPE_UNK6, 0x11, 0x09, 0x39, 0x10, COLSHAPE_JNTSPH },
|
||||
1,
|
||||
sJntSphItemsInit,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1E838.s")
|
||||
static CollisionCheckInfoInit2 D_80A1FB94 = { 8, 2, 25, 25, 0xFF };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1E8F8.s")
|
||||
static struct_80034EC0_Entry D_80A1FBA0[] = {
|
||||
{ 0x06006CF8, 0.0f, 0.0f, -1.0f, 0x03, 0.0f },
|
||||
{ 0x06007CD0, 1.0f, 0.0f, -1.0f, 0x03, -8.0f },
|
||||
{ 0x06007DC8, 1.0f, 0.0f, -1.0f, 0x01, -8.0f },
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/EnFw_Init.s")
|
||||
extern FlexSkeletonHeader D_06007C30;
|
||||
extern Gfx D_06007928[];
|
||||
extern Gfx D_06007938[];
|
||||
extern AnimationHeader D_06006CF8;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/EnFw_Destroy.s")
|
||||
s32 EnFw_DoBounce(EnFw* this, s32 totalBounces, f32 yVelocity) {
|
||||
s16 temp_v1;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1EC70.s")
|
||||
if (!(this->actor.bgCheckFlags & 1) || (this->actor.velocity.y > 0.0f)) {
|
||||
// not on the ground or moving upwards.
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1ECD4.s")
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_M_GND);
|
||||
this->bounceCnt--;
|
||||
if (this->bounceCnt <= 0) {
|
||||
if (this->bounceCnt == 0) {
|
||||
this->bounceCnt = 0;
|
||||
this->actor.velocity.y = 0.0f;
|
||||
return true;
|
||||
}
|
||||
this->bounceCnt = totalBounces;
|
||||
}
|
||||
this->actor.velocity.y = yVelocity;
|
||||
this->actor.velocity.y *= ((f32)this->bounceCnt / totalBounces);
|
||||
return 1;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F2A8.s")
|
||||
s32 EnFw_PlayerInRange(EnFw* this, GlobalContext* globalCtx) {
|
||||
Player* player = PLAYER;
|
||||
CollisionPoly* poly;
|
||||
u32 bgId;
|
||||
Vec3f collisionPos;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F39C.s")
|
||||
if (this->actor.xzDistFromLink > 300.0f) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/EnFw_Update.s")
|
||||
if (ABS((s16)((f32)this->actor.yawTowardsLink - (f32)this->actor.shape.rot.y)) > 0x1C70) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F52C.s")
|
||||
if (func_8003DE84(&globalCtx->colCtx, &this->actor.posRot.pos, &player->actor.posRot.pos, &collisionPos, &poly, 1,
|
||||
0, 0, 1, &bgId)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F544.s")
|
||||
return true;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/EnFw_Draw.s")
|
||||
Vec3f* EnFw_GetPosAdjAroundCircle(Vec3f* dst, EnFw* this, f32 radius, s16 dir) {
|
||||
s16 angle;
|
||||
Vec3f posAdj;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F664.s")
|
||||
// increase rotation around circle ~30 degrees.
|
||||
angle = Math_Vec3f_Yaw(&this->actor.parent->initPosRot.pos, &this->actor.posRot.pos) + (dir * 0x1554);
|
||||
posAdj.x = (Math_Sins(angle) * radius) + this->actor.parent->initPosRot.pos.x;
|
||||
posAdj.z = (Math_Coss(angle) * radius) + this->actor.parent->initPosRot.pos.z;
|
||||
posAdj.x -= this->actor.posRot.pos.x;
|
||||
posAdj.z -= this->actor.posRot.pos.z;
|
||||
*dst = posAdj;
|
||||
return dst;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F708.s")
|
||||
s32 EnFw_CheckCollider(EnFw* this, GlobalContext* globalCtx) {
|
||||
ColliderBody* body;
|
||||
s32 phi_return;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Fw/func_80A1F814.s")
|
||||
if (this->collider.base.acFlags & 2) {
|
||||
body = &this->collider.list[0].body;
|
||||
if (body->acHitItem->toucher.flags & 0x80) {
|
||||
this->lastDmgHook = true;
|
||||
} else {
|
||||
this->lastDmgHook = false;
|
||||
}
|
||||
this->collider.base.acFlags &= ~2;
|
||||
if (Actor_ApplyDamage(&this->actor) <= 0) {
|
||||
if (this->actor.parent->colChkInfo.health <= 8) {
|
||||
func_80032C7C(globalCtx, &this->actor);
|
||||
this->actor.parent->colChkInfo.health = 0;
|
||||
} else {
|
||||
this->actor.parent->colChkInfo.health -= 8;
|
||||
}
|
||||
this->returnToParentTimer = 0;
|
||||
}
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
s32 EnFw_SpawnDust(EnFw* this, u8 timer, f32 scale, f32 scaleStep, s32 dustCnt, f32 radius, f32 xzAccel, f32 yAccel) {
|
||||
Vec3f pos = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f velocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f accel = { 0.0f, 0.0f, 0.0f };
|
||||
s16 angle;
|
||||
s32 i;
|
||||
|
||||
pos = this->actor.posRot.pos;
|
||||
pos.y = this->actor.groundY + 2.0f;
|
||||
angle = ((Math_Rand_ZeroOne() - 0.5f) * 0x10000);
|
||||
i = dustCnt;
|
||||
while (i >= 0) {
|
||||
accel.x = (Math_Rand_ZeroOne() - 0.5f) * xzAccel;
|
||||
accel.y = yAccel;
|
||||
accel.z = (Math_Rand_ZeroOne() - 0.5f) * xzAccel;
|
||||
pos.x = (Math_Sins(angle) * radius) + this->actor.posRot.pos.x;
|
||||
pos.z = (Math_Coss(angle) * radius) + this->actor.posRot.pos.z;
|
||||
EnFw_AddDust(this, &pos, &velocity, &accel, timer, scale, scaleStep);
|
||||
angle += (s16)(0x10000 / dustCnt);
|
||||
i--;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnFw_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFw* this = THIS;
|
||||
|
||||
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06007C30, NULL, this->limbDrawTable, this->transitionDrawTable,
|
||||
11);
|
||||
func_80034EC0(&this->skelAnime, D_80A1FBA0, 0);
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 20.0f);
|
||||
Collider_InitJntSph(globalCtx, &this->collider);
|
||||
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->sphs);
|
||||
func_80061EFC(&this->actor.colChkInfo, DamageTable_Get(0x10), &D_80A1FB94);
|
||||
Actor_SetScale(&this->actor, 0.01f);
|
||||
this->runDirection = -this->actor.params;
|
||||
this->actionFunc = EnFw_Bounce;
|
||||
this->actor.gravity = -1.0f;
|
||||
}
|
||||
|
||||
void EnFw_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFw* this = THIS;
|
||||
Collider_DestroyJntSph(globalCtx, &this->collider);
|
||||
}
|
||||
|
||||
void EnFw_Bounce(EnFw* this, GlobalContext* globalCtx) {
|
||||
if (EnFw_DoBounce(this, 3, 8.0f) && this->bounceCnt == 0) {
|
||||
this->returnToParentTimer = Math_Rand_S16Offset(300, 150);
|
||||
this->actionFunc = EnFw_Run;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_Run(EnFw* this, GlobalContext* globalCtx) {
|
||||
f32 tmpAngle;
|
||||
s16 phi_v0;
|
||||
f32 facingDir;
|
||||
EnBom* bomb;
|
||||
Actor* flareDancer;
|
||||
|
||||
Math_SmoothScaleMaxMinF(&this->skelAnime.animPlaybackSpeed, 1.0f, 0.1f, 1.0f, 0.0f);
|
||||
if (this->skelAnime.animation == &D_06006CF8) {
|
||||
if (func_800A56C8(&this->skelAnime, this->skelAnime.animFrameCount) == 0) {
|
||||
this->runRadius = Math_Vec3f_DistXYZ(&this->actor.posRot.pos, &this->actor.parent->posRot.pos);
|
||||
func_80034EC0(&this->skelAnime, D_80A1FBA0, 2);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (this->damageTimer == 0 && this->explosionTimer == 0 && EnFw_CheckCollider(this, globalCtx)) {
|
||||
if (this->actor.parent->colChkInfo.health > 0) {
|
||||
if (!this->lastDmgHook) {
|
||||
this->actor.velocity.y = 6.0f;
|
||||
}
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_MAN_DAMAGE);
|
||||
this->damageTimer = 20;
|
||||
} else {
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_MAN_DAMAGE);
|
||||
this->explosionTimer = 6;
|
||||
}
|
||||
this->actor.speedXZ = 0.0f;
|
||||
}
|
||||
|
||||
if (this->explosionTimer != 0) {
|
||||
this->skelAnime.animPlaybackSpeed = 0.0f;
|
||||
Math_SmoothScaleMaxMinF(&this->actor.scale.x, 0.024999999f, 0.08f, 0.6f, 0.0f);
|
||||
Actor_SetScale(&this->actor, this->actor.scale.x);
|
||||
if (this->actor.dmgEffectTimer == 0) {
|
||||
func_8003426C(&this->actor, 0x4000, 0xC8, 0, this->explosionTimer);
|
||||
this->explosionTimer--;
|
||||
}
|
||||
|
||||
if (this->explosionTimer == 0) {
|
||||
bomb = (EnBom*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_BOM, this->bompPos.x, this->bompPos.y,
|
||||
this->bompPos.z, 0, 0, 0x600, 0);
|
||||
if (bomb != NULL) {
|
||||
bomb->timer = 0;
|
||||
}
|
||||
flareDancer = this->actor.parent;
|
||||
flareDancer->params |= 0x4000;
|
||||
Item_DropCollectibleRandom(globalCtx, NULL, &this->actor.posRot.pos, 0xA0);
|
||||
Actor_Kill(&this->actor);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
if (!(this->actor.bgCheckFlags & 1) || this->actor.velocity.y > 0.0f) {
|
||||
func_8003426C(&this->actor, 0x4000, 0xC8, 0, this->damageTimer);
|
||||
return;
|
||||
}
|
||||
DECR(this->damageTimer);
|
||||
if ((200.0f - this->runRadius) < 0.9f) {
|
||||
if (DECR(this->returnToParentTimer) == 0) {
|
||||
this->actor.speedXZ = 0.0f;
|
||||
this->actionFunc = EnFw_TurnToParentInitPos;
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
// Run outwards until the radius of the run circle is 200
|
||||
Math_SmoothScaleMaxMinF(&this->runRadius, 200.0f, 0.3f, 100.0f, 0.0f);
|
||||
|
||||
if (this->turnAround) {
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.1f, 1.0f, 0.0f);
|
||||
tmpAngle = (s16)(this->actor.posRot.rot.y ^ 0x8000);
|
||||
facingDir = this->actor.shape.rot.y;
|
||||
tmpAngle = Math_SmoothScaleMaxMinF(&facingDir, tmpAngle, 0.1f, 10000.0f, 0.0f);
|
||||
this->actor.shape.rot.y = facingDir;
|
||||
if (tmpAngle > 0x1554) {
|
||||
return;
|
||||
}
|
||||
this->turnAround = false;
|
||||
} else {
|
||||
Vec3f sp48;
|
||||
EnFw_GetPosAdjAroundCircle(&sp48, this, this->runRadius, this->runDirection);
|
||||
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, (Math_atan2f(sp48.x, sp48.z) * (0x8000 / M_PI)), 4, 0xFA0,
|
||||
1);
|
||||
}
|
||||
|
||||
this->actor.posRot.rot = this->actor.shape.rot;
|
||||
|
||||
if (this->slideTimer == 0 && EnFw_PlayerInRange(this, globalCtx)) {
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_MAN_SURP);
|
||||
this->slideSfxTimer = 8;
|
||||
this->slideTimer = 8;
|
||||
}
|
||||
|
||||
if (this->slideTimer != 0) {
|
||||
if (DECR(this->slideSfxTimer) == 0) {
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_MAN_SLIDE);
|
||||
this->slideSfxTimer = 4;
|
||||
}
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.1f, 1.0f, 0.0f);
|
||||
this->skelAnime.animPlaybackSpeed = 0.0f;
|
||||
EnFw_SpawnDust(this, 8, 0.16f, 0.2f, 3, 8.0f, 20.0f, ((Math_Rand_ZeroOne() - 0.5f) * 0.2f) + 0.3f);
|
||||
this->slideTimer--;
|
||||
if (this->slideTimer == 0) {
|
||||
this->turnAround = true;
|
||||
this->runDirection = -this->runDirection;
|
||||
}
|
||||
} else {
|
||||
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 6.0f, 0.1f, 1.0f, 0.0f);
|
||||
phi_v0 = this->skelAnime.animCurrentFrame;
|
||||
if (phi_v0 == 1 || phi_v0 == 4) {
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_FLAME_MAN_RUN);
|
||||
EnFw_SpawnDust(this, 8, 0.16f, 0.1f, 1, 0.0f, 20.0f, 0.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_TurnToParentInitPos(EnFw* this, GlobalContext* globalCtx) {
|
||||
s16 angleToParentInit;
|
||||
|
||||
angleToParentInit = Math_Vec3f_Yaw(&this->actor.posRot.pos, &this->actor.parent->initPosRot.pos);
|
||||
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, angleToParentInit, 4, 0xFA0, 1);
|
||||
if (ABS(angleToParentInit - this->actor.shape.rot.y) < 0x65) {
|
||||
// angle to parent init pos is ~0.5 degrees
|
||||
this->actor.posRot.rot = this->actor.shape.rot;
|
||||
this->actor.velocity.y = 14.0f;
|
||||
this->actor.initPosRot.pos = this->actor.posRot.pos;
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_EN_STAL_JUMP);
|
||||
func_80034EC0(&this->skelAnime, D_80A1FBA0, 1);
|
||||
this->actionFunc = EnFw_JumpToParentInitPos;
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_JumpToParentInitPos(EnFw* this, GlobalContext* globalCtx) {
|
||||
if (this->actor.bgCheckFlags & 1 && this->actor.velocity.y <= 0.0f) {
|
||||
this->actor.parent->params |= 0x8000;
|
||||
Actor_Kill(&this->actor);
|
||||
} else {
|
||||
Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.x, this->actor.parent->initPosRot.pos.x, 0.6f, 8.0f, 0.0f);
|
||||
Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.z, this->actor.parent->initPosRot.pos.z, 0.6f, 8.0f, 0.0f);
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFw* this = THIS;
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
if ((this->actor.flags & 0x2000) != 0x2000) {
|
||||
// not attached to hookshot.
|
||||
Actor_MoveForward(&this->actor);
|
||||
func_8002E4B4(globalCtx, &this->actor, 10.0f, 20.0f, 0.0f, 5);
|
||||
this->actionFunc(this, globalCtx);
|
||||
if (this->damageTimer == 0 && this->explosionTimer == 0 && this->actionFunc == EnFw_Run) {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
}
|
||||
|
||||
s32 EnFw_OverrideLimbDraw(GlobalContext* globalContext, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
|
||||
void* thisx) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnFw_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
|
||||
EnFw* this = THIS;
|
||||
Vec3f zeroVec = { 0.0f, 0.0f, 0.0f };
|
||||
|
||||
if (limbIndex == 2) {
|
||||
// body
|
||||
Matrix_MultVec3f(&zeroVec, &this->bompPos);
|
||||
}
|
||||
|
||||
if (limbIndex == 3) {
|
||||
// head
|
||||
Matrix_MultVec3f(&zeroVec, &this->actor.posRot2.pos);
|
||||
}
|
||||
|
||||
func_800628A4(limbIndex, &this->collider);
|
||||
}
|
||||
|
||||
void EnFw_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnFw* this = THIS;
|
||||
|
||||
EnFw_UpdateDust(this);
|
||||
Matrix_Push();
|
||||
EnFw_DrawDust(this, globalCtx);
|
||||
Matrix_Pull();
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl, this->skelAnime.dListCount,
|
||||
EnFw_OverrideLimbDraw, EnFw_PostLimbDraw, this);
|
||||
}
|
||||
|
||||
void EnFw_AddDust(EnFw* this, Vec3f* initialPos, Vec3f* initialSpeed, Vec3f* accel, u8 initialTimer, f32 scale,
|
||||
f32 scaleStep) {
|
||||
EnFwEffect* eff = this->effects;
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type != 1) {
|
||||
eff->scale = scale;
|
||||
eff->scaleStep = scaleStep;
|
||||
eff->initialTimer = eff->timer = initialTimer;
|
||||
eff->type = 1;
|
||||
eff->pos = *initialPos;
|
||||
eff->accel = *accel;
|
||||
eff->velocity = *initialSpeed;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_UpdateDust(EnFw* this) {
|
||||
EnFwEffect* eff = this->effects;
|
||||
s16 i;
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type != 0) {
|
||||
if ((--eff->timer) == 0) {
|
||||
eff->type = 0;
|
||||
}
|
||||
eff->accel.x = (Math_Rand_ZeroOne() * 0.4f) - 0.2f;
|
||||
eff->accel.z = (Math_Rand_ZeroOne() * 0.4f) - 0.2f;
|
||||
eff->pos.x += eff->velocity.x;
|
||||
eff->pos.y += eff->velocity.y;
|
||||
eff->pos.z += eff->velocity.z;
|
||||
eff->velocity.x += eff->accel.x;
|
||||
eff->velocity.y += eff->accel.y;
|
||||
eff->velocity.z += eff->accel.z;
|
||||
eff->scale += eff->scaleStep;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnFw_DrawDust(EnFw* this, GlobalContext* globalCtx) {
|
||||
static Gfx* D_80A1FC18[] = {
|
||||
0x040539B0, 0x040535B0, 0x040531B0, 0x04052DB0, 0x040529B0, 0x040525B0, 0x040521B0, 0x04051DB0,
|
||||
};
|
||||
EnFwEffect* eff = this->effects;
|
||||
s16 firstDone;
|
||||
s16 alpha;
|
||||
s16 i;
|
||||
s16 idx;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_fw.c", 1191);
|
||||
|
||||
firstDone = false;
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
if (1) {}
|
||||
|
||||
for (i = 0; i < ARRAY_COUNT(this->effects); i++, eff++) {
|
||||
if (eff->type != 0) {
|
||||
if (!firstDone) {
|
||||
POLY_XLU_DISP = Gfx_CallSetupDL(POLY_XLU_DISP, 0U);
|
||||
gSPDisplayList(POLY_XLU_DISP++, D_06007928);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, 100, 60, 20, 0);
|
||||
firstDone = true;
|
||||
}
|
||||
|
||||
alpha = eff->timer * (255.0f / eff->initialTimer);
|
||||
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 170, 130, 90, alpha);
|
||||
gDPPipeSync(POLY_XLU_DISP++);
|
||||
Matrix_Translate(eff->pos.x, eff->pos.y, eff->pos.z, MTXMODE_NEW);
|
||||
func_800D1FD4(&globalCtx->mf_11DA0);
|
||||
Matrix_Scale(eff->scale, eff->scale, 1.0f, MTXMODE_APPLY);
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_fw.c", 1229),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
idx = eff->timer * (8.0f / eff->initialTimer);
|
||||
gSPSegment(POLY_XLU_DISP++, 0x8, SEGMENTED_TO_VIRTUAL(D_80A1FC18[idx]));
|
||||
gSPDisplayList(POLY_XLU_DISP++, &D_06007938);
|
||||
}
|
||||
}
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fw.c", 1243);
|
||||
}
|
||||
|
@ -6,9 +6,43 @@
|
||||
|
||||
struct EnFw;
|
||||
|
||||
typedef void (*EnFwActionFunc)(struct EnFw* this, GlobalContext* globalCtx);
|
||||
|
||||
typedef struct {
|
||||
/* 0x0000 */ u8 type;
|
||||
/* 0x0001 */ u8 timer;
|
||||
/* 0x0002 */ u8 initialTimer;
|
||||
/* 0x0004 */ f32 scale;
|
||||
/* 0x0008 */ f32 scaleStep;
|
||||
/* 0x000C */ Color_RGBA8 color;
|
||||
/* 0x0010 */ char unk_10[4];
|
||||
/* 0x0014 */ Vec3f pos;
|
||||
/* 0x0020 */ Vec3f velocity;
|
||||
/* 0x002C */ Vec3f accel;
|
||||
} EnFwEffect;
|
||||
|
||||
typedef struct EnFw {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x5B4];
|
||||
/* 0x014C */ SkelAnime skelAnime;
|
||||
/* 0x0190 */ EnFwActionFunc actionFunc;
|
||||
/* 0x0194 */ ColliderJntSph collider;
|
||||
/* 0x01B4 */ ColliderJntSphItem sphs[1];
|
||||
/* 0x01F4 */ Vec3f bompPos;
|
||||
/* 0x0200 */ u8 lastDmgHook;
|
||||
/* 0x0202 */ s16 runDirection;
|
||||
/* 0x0204 */ s16 bounceCnt;
|
||||
/* 0x0206 */ char unk_206[0x2];
|
||||
/* 0x0208 */ s16 damageTimer;
|
||||
/* 0x020A */ s16 explosionTimer;
|
||||
/* 0x020C */ char unk_20C[0x2];
|
||||
/* 0x020E */ s16 slideTimer;
|
||||
/* 0x0210 */ s16 slideSfxTimer;
|
||||
/* 0x0212 */ s16 returnToParentTimer;
|
||||
/* 0x0214 */ s16 turnAround;
|
||||
/* 0x0218 */ f32 runRadius;
|
||||
/* 0x021C */ Vec3s limbDrawTable[11];
|
||||
/* 0x025E */ Vec3s transitionDrawTable[11];
|
||||
/* 0x02A0 */ EnFwEffect effects[20];
|
||||
} EnFw; // size = 0x0700
|
||||
|
||||
extern const ActorInit En_Fw_InitVars;
|
||||
|
@ -741,7 +741,7 @@ void EnSt_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
s32 pad;
|
||||
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 14.0f);
|
||||
SkelAnime_Init(globalCtx, &this->skelAnime, &D_06005298, NULL, this->limbDrawTable, this->transDrawTable, 30);
|
||||
SkelAnime_Init(globalCtx, &this->skelAnime, &D_06005298, NULL, this->limbDrawTable, this->transitionDrawTable, 30);
|
||||
func_80034EC0(&this->skelAnime, sAnimations, 0);
|
||||
this->blureIdx = EnSt_CreateBlureEffect(globalCtx);
|
||||
EnSt_InitColliders(this, globalCtx);
|
||||
|
@ -44,7 +44,7 @@ typedef struct EnSt {
|
||||
/* 0x040C */ f32 groundYOffset;
|
||||
/* 0x0410 */ s16 swayAngle;
|
||||
/* 0x0412 */ Vec3s limbDrawTable[30];
|
||||
/* 0x04C6 */ Vec3s transDrawTable[30];
|
||||
/* 0x04C6 */ Vec3s transitionDrawTable[30];
|
||||
} EnSt; // size = 0x057C
|
||||
|
||||
extern const ActorInit En_St_InitVars;
|
||||
|
@ -1521,6 +1521,20 @@ D_06000498 = 0x06000498;
|
||||
// z_bg_menkuri_eye
|
||||
D_06002D20 = 0x06002D20;
|
||||
|
||||
// z_en_fd
|
||||
D_060079F8 = 0x060079F8;
|
||||
D_06007A78 = 0x06007A78;
|
||||
D_06007928 = 0x06007928;
|
||||
D_06007938 = 0x06007938;
|
||||
D_06005810 = 0x06005810;
|
||||
|
||||
// z_en_fd_fire
|
||||
D_0404D4E0 = 0x0404D4E0;
|
||||
|
||||
// z_en_fw
|
||||
D_06007C30 = 0x06007C30;
|
||||
D_06006CF8 = 0x06006CF8;
|
||||
|
||||
// z_en_gm
|
||||
D_060002B8 = 0x060002B8;
|
||||
D_0600FEF0 = 0x0600FEF0;
|
||||
|
Loading…
Reference in New Issue
Block a user