mirror of
https://github.com/zeldaret/oot.git
synced 2024-09-21 04:24:43 +00:00
ovl_en_mm2 OK (#636)
* decompiled ovl_en_mm2 * resolved conflicts * add back huta * review suggestions * review 2 suggestions Co-authored-by: Fig02 <fig02srl@gmail.com>
This commit is contained in:
parent
cce6880bc0
commit
7eaf57be59
@ -1,12 +0,0 @@
|
||||
glabel EnMm2_Destroy
|
||||
/* 003AC 80AAF1FC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 003B0 80AAF200 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 003B4 80AAF204 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 003B8 80AAF208 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 003BC 80AAF20C 0C0170EB */ jal Collider_DestroyCylinder
|
||||
|
||||
/* 003C0 80AAF210 24C50194 */ addiu $a1, $a2, 0x0194 ## $a1 = 00000194
|
||||
/* 003C4 80AAF214 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 003C8 80AAF218 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 003CC 80AAF21C 03E00008 */ jr $ra
|
||||
/* 003D0 80AAF220 00000000 */ nop
|
@ -1,75 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80AAFBE8
|
||||
.asciz "../z_en_mm2.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80AAFBF8
|
||||
.asciz "../z_en_mm2.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel EnMm2_Draw
|
||||
/* 00A88 80AAF8D8 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 00A8C 80AAF8DC AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 00A90 80AAF8E0 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 00A94 80AAF8E4 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 00A98 80AAF8E8 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 00A9C 80AAF8EC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00AA0 80AAF8F0 3C0680AB */ lui $a2, %hi(D_80AAFBE8) ## $a2 = 80AB0000
|
||||
/* 00AA4 80AAF8F4 24C6FBE8 */ addiu $a2, $a2, %lo(D_80AAFBE8) ## $a2 = 80AAFBE8
|
||||
/* 00AA8 80AAF8F8 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
|
||||
/* 00AAC 80AAF8FC 2407027A */ addiu $a3, $zero, 0x027A ## $a3 = 0000027A
|
||||
/* 00AB0 80AAF900 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 00AB4 80AAF904 AFA50048 */ sw $a1, 0x0048($sp)
|
||||
/* 00AB8 80AAF908 8FAF0054 */ lw $t7, 0x0054($sp)
|
||||
/* 00ABC 80AAF90C 0C024F46 */ jal func_80093D18
|
||||
/* 00AC0 80AAF910 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
|
||||
/* 00AC4 80AAF914 8FA50048 */ lw $a1, 0x0048($sp)
|
||||
/* 00AC8 80AAF918 3C19DB06 */ lui $t9, 0xDB06 ## $t9 = DB060000
|
||||
/* 00ACC 80AAF91C 37390020 */ ori $t9, $t9, 0x0020 ## $t9 = DB060020
|
||||
/* 00AD0 80AAF920 8CA302C0 */ lw $v1, 0x02C0($a1) ## 000002C0
|
||||
/* 00AD4 80AAF924 3C0480AB */ lui $a0, %hi(D_80AAFB60) ## $a0 = 80AB0000
|
||||
/* 00AD8 80AAF928 3C0E8016 */ lui $t6, %hi(gSegments)
|
||||
/* 00ADC 80AAF92C 24780008 */ addiu $t8, $v1, 0x0008 ## $t8 = 00000008
|
||||
/* 00AE0 80AAF930 ACB802C0 */ sw $t8, 0x02C0($a1) ## 000002C0
|
||||
/* 00AE4 80AAF934 AC790000 */ sw $t9, 0x0000($v1) ## 00000000
|
||||
/* 00AE8 80AAF938 8E0801E0 */ lw $t0, 0x01E0($s0) ## 000001E0
|
||||
/* 00AEC 80AAF93C 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 00AF0 80AAF940 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 00AF4 80AAF944 00084880 */ sll $t1, $t0, 2
|
||||
/* 00AF8 80AAF948 00892021 */ addu $a0, $a0, $t1
|
||||
/* 00AFC 80AAF94C 8C84FB60 */ lw $a0, %lo(D_80AAFB60)($a0)
|
||||
/* 00B00 80AAF950 3C0880AB */ lui $t0, %hi(func_80AAFA60) ## $t0 = 80AB0000
|
||||
/* 00B04 80AAF954 3C1980AB */ lui $t9, %hi(func_80AAF9D8) ## $t9 = 80AB0000
|
||||
/* 00B08 80AAF958 00045900 */ sll $t3, $a0, 4
|
||||
/* 00B0C 80AAF95C 000B6702 */ srl $t4, $t3, 28
|
||||
/* 00B10 80AAF960 000C6880 */ sll $t5, $t4, 2
|
||||
/* 00B14 80AAF964 01CD7021 */ addu $t6, $t6, $t5
|
||||
/* 00B18 80AAF968 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
|
||||
/* 00B1C 80AAF96C 00815024 */ and $t2, $a0, $at
|
||||
/* 00B20 80AAF970 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 00B24 80AAF974 014E7821 */ addu $t7, $t2, $t6
|
||||
/* 00B28 80AAF978 01E1C021 */ addu $t8, $t7, $at
|
||||
/* 00B2C 80AAF97C AC780004 */ sw $t8, 0x0004($v1) ## 00000004
|
||||
/* 00B30 80AAF980 9207014E */ lbu $a3, 0x014E($s0) ## 0000014E
|
||||
/* 00B34 80AAF984 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C
|
||||
/* 00B38 80AAF988 8E050150 */ lw $a1, 0x0150($s0) ## 00000150
|
||||
/* 00B3C 80AAF98C 2739F9D8 */ addiu $t9, $t9, %lo(func_80AAF9D8) ## $t9 = 80AAF9D8
|
||||
/* 00B40 80AAF990 2508FA60 */ addiu $t0, $t0, %lo(func_80AAFA60) ## $t0 = 80AAFA60
|
||||
/* 00B44 80AAF994 AFA80014 */ sw $t0, 0x0014($sp)
|
||||
/* 00B48 80AAF998 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00B4C 80AAF99C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00B50 80AAF9A0 0C0286B2 */ jal SkelAnime_DrawFlexOpa
|
||||
/* 00B54 80AAF9A4 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00B58 80AAF9A8 8FA90054 */ lw $t1, 0x0054($sp)
|
||||
/* 00B5C 80AAF9AC 3C0680AB */ lui $a2, %hi(D_80AAFBF8) ## $a2 = 80AB0000
|
||||
/* 00B60 80AAF9B0 24C6FBF8 */ addiu $a2, $a2, %lo(D_80AAFBF8) ## $a2 = 80AAFBF8
|
||||
/* 00B64 80AAF9B4 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
|
||||
/* 00B68 80AAF9B8 2407028E */ addiu $a3, $zero, 0x028E ## $a3 = 0000028E
|
||||
/* 00B6C 80AAF9BC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 00B70 80AAF9C0 8D250000 */ lw $a1, 0x0000($t1) ## 00000000
|
||||
/* 00B74 80AAF9C4 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00B78 80AAF9C8 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 00B7C 80AAF9CC 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 00B80 80AAF9D0 03E00008 */ jr $ra
|
||||
/* 00B84 80AAF9D4 00000000 */ nop
|
@ -1,133 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80AAFB80
|
||||
.asciz "\x1b[36m マラソン 開始されていない \n\x1b[m\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel EnMm2_Init
|
||||
/* 001EC 80AAF03C 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 001F0 80AAF040 AFA50044 */ sw $a1, 0x0044($sp)
|
||||
/* 001F4 80AAF044 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 001F8 80AAF048 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 001FC 80AAF04C 3C0580AB */ lui $a1, %hi(D_80AAFB5C) ## $a1 = 80AB0000
|
||||
/* 00200 80AAF050 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00204 80AAF054 0C01E037 */ jal Actor_ProcessInitChain
|
||||
|
||||
/* 00208 80AAF058 24A5FB5C */ addiu $a1, $a1, %lo(D_80AAFB5C) ## $a1 = 80AAFB5C
|
||||
/* 0020C 80AAF05C 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
|
||||
/* 00210 80AAF060 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
|
||||
/* 00214 80AAF064 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00218 80AAF068 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
|
||||
/* 0021C 80AAF06C 0C00AC78 */ jal ActorShape_Init
|
||||
|
||||
/* 00220 80AAF070 3C0741A8 */ lui $a3, 0x41A8 ## $a3 = 41A80000
|
||||
/* 00224 80AAF074 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
|
||||
/* 00228 80AAF078 3C060600 */ lui $a2, %hi(D_06005E18) ## $a2 = 06000000
|
||||
/* 0022C 80AAF07C 260E01FC */ addiu $t6, $s0, 0x01FC ## $t6 = 000001FC
|
||||
/* 00230 80AAF080 260F025C */ addiu $t7, $s0, 0x025C ## $t7 = 0000025C
|
||||
/* 00234 80AAF084 24180010 */ addiu $t8, $zero, 0x0010 ## $t8 = 00000010
|
||||
/* 00238 80AAF088 AFB80018 */ sw $t8, 0x0018($sp)
|
||||
/* 0023C 80AAF08C AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 00240 80AAF090 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 00244 80AAF094 24C65E18 */ addiu $a2, $a2, %lo(D_06005E18) ## $a2 = 06005E18
|
||||
/* 00248 80AAF098 AFA50030 */ sw $a1, 0x0030($sp)
|
||||
/* 0024C 80AAF09C 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 00250 80AAF0A0 0C0291BE */ jal SkelAnime_InitFlex
|
||||
/* 00254 80AAF0A4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00258 80AAF0A8 3C0380AB */ lui $v1, %hi(D_80AAFAEC) ## $v1 = 80AB0000
|
||||
/* 0025C 80AAF0AC 2463FAEC */ addiu $v1, $v1, %lo(D_80AAFAEC) ## $v1 = 80AAFAEC
|
||||
/* 00260 80AAF0B0 0C028800 */ jal Animation_GetLastFrame
|
||||
|
||||
/* 00264 80AAF0B4 8C640020 */ lw $a0, 0x0020($v1) ## 80AAFB0C
|
||||
/* 00268 80AAF0B8 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
|
||||
/* 0026C 80AAF0BC 3C0380AB */ lui $v1, %hi(D_80AAFAEC) ## $v1 = 80AB0000
|
||||
/* 00270 80AAF0C0 2463FAEC */ addiu $v1, $v1, %lo(D_80AAFAEC) ## $v1 = 80AAFAEC
|
||||
/* 00274 80AAF0C4 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 00278 80AAF0C8 90790028 */ lbu $t9, 0x0028($v1) ## 80AAFB14
|
||||
/* 0027C 80AAF0CC C468002C */ lwc1 $f8, 0x002C($v1) ## 80AAFB18
|
||||
/* 00280 80AAF0D0 8C650020 */ lw $a1, 0x0020($v1) ## 80AAFB0C
|
||||
/* 00284 80AAF0D4 8FA40030 */ lw $a0, 0x0030($sp)
|
||||
/* 00288 80AAF0D8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
|
||||
/* 0028C 80AAF0DC E7A60010 */ swc1 $f6, 0x0010($sp)
|
||||
/* 00290 80AAF0E0 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 00294 80AAF0E4 AFB90014 */ sw $t9, 0x0014($sp)
|
||||
/* 00298 80AAF0E8 0C029468 */ jal Animation_Change
|
||||
|
||||
/* 0029C 80AAF0EC E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 002A0 80AAF0F0 24080002 */ addiu $t0, $zero, 0x0002 ## $t0 = 00000002
|
||||
/* 002A4 80AAF0F4 AE0801F8 */ sw $t0, 0x01F8($s0) ## 000001F8
|
||||
/* 002A8 80AAF0F8 26050194 */ addiu $a1, $s0, 0x0194 ## $a1 = 00000194
|
||||
/* 002AC 80AAF0FC AFA50030 */ sw $a1, 0x0030($sp)
|
||||
/* 002B0 80AAF100 0C0170D9 */ jal Collider_InitCylinder
|
||||
|
||||
/* 002B4 80AAF104 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 002B8 80AAF108 3C0780AB */ lui $a3, %hi(D_80AAFAC0) ## $a3 = 80AB0000
|
||||
/* 002BC 80AAF10C 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 002C0 80AAF110 24E7FAC0 */ addiu $a3, $a3, %lo(D_80AAFAC0) ## $a3 = 80AAFAC0
|
||||
/* 002C4 80AAF114 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 002C8 80AAF118 0C01712B */ jal Collider_SetCylinder
|
||||
|
||||
/* 002CC 80AAF11C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 002D0 80AAF120 960B01F4 */ lhu $t3, 0x01F4($s0) ## 000001F4
|
||||
/* 002D4 80AAF124 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
|
||||
/* 002D8 80AAF128 44815000 */ mtc1 $at, $f10 ## $f10 = -1.00
|
||||
/* 002DC 80AAF12C 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
|
||||
/* 002E0 80AAF130 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
|
||||
/* 002E4 80AAF134 240A0006 */ addiu $t2, $zero, 0x0006 ## $t2 = 00000006
|
||||
/* 002E8 80AAF138 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 002EC 80AAF13C 356C0001 */ ori $t4, $t3, 0x0001 ## $t4 = 00000001
|
||||
/* 002F0 80AAF140 A20900AE */ sb $t1, 0x00AE($s0) ## 000000AE
|
||||
/* 002F4 80AAF144 AE0001E0 */ sw $zero, 0x01E0($s0) ## 000001E0
|
||||
/* 002F8 80AAF148 A20A001F */ sb $t2, 0x001F($s0) ## 0000001F
|
||||
/* 002FC 80AAF14C A60C01F4 */ sh $t4, 0x01F4($s0) ## 000001F4
|
||||
/* 00300 80AAF150 15A10005 */ bne $t5, $at, .L80AAF168
|
||||
/* 00304 80AAF154 E60A006C */ swc1 $f10, 0x006C($s0) ## 0000006C
|
||||
/* 00308 80AAF158 3C0E80AB */ lui $t6, %hi(func_80AAF668) ## $t6 = 80AB0000
|
||||
/* 0030C 80AAF15C 25CEF668 */ addiu $t6, $t6, %lo(func_80AAF668) ## $t6 = 80AAF668
|
||||
/* 00310 80AAF160 10000007 */ beq $zero, $zero, .L80AAF180
|
||||
/* 00314 80AAF164 AE0E0190 */ sw $t6, 0x0190($s0) ## 00000190
|
||||
.L80AAF168:
|
||||
/* 00318 80AAF168 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0031C 80AAF16C 0C2ABBDC */ jal func_80AAEF70
|
||||
/* 00320 80AAF170 8FA50044 */ lw $a1, 0x0044($sp)
|
||||
/* 00324 80AAF174 3C0F80AB */ lui $t7, %hi(func_80AAF57C) ## $t7 = 80AB0000
|
||||
/* 00328 80AAF178 25EFF57C */ addiu $t7, $t7, %lo(func_80AAF57C) ## $t7 = 80AAF57C
|
||||
/* 0032C 80AAF17C AE0F0190 */ sw $t7, 0x0190($s0) ## 00000190
|
||||
.L80AAF180:
|
||||
/* 00330 80AAF180 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 00334 80AAF184 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 00338 80AAF188 8C580004 */ lw $t8, 0x0004($v0) ## 8015E664
|
||||
/* 0033C 80AAF18C 53000006 */ beql $t8, $zero, .L80AAF1A8
|
||||
/* 00340 80AAF190 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
|
||||
/* 00344 80AAF194 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00348 80AAF198 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0034C 80AAF19C 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 00350 80AAF1A0 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 00354 80AAF1A4 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
|
||||
.L80AAF1A8:
|
||||
/* 00358 80AAF1A8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 0035C 80AAF1AC 5721000F */ bnel $t9, $at, .L80AAF1EC
|
||||
/* 00360 80AAF1B0 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00364 80AAF1B4 94480F26 */ lhu $t0, 0x0F26($v0) ## 8015F586
|
||||
/* 00368 80AAF1B8 3C0480AB */ lui $a0, %hi(D_80AAFB80) ## $a0 = 80AB0000
|
||||
/* 0036C 80AAF1BC 31098000 */ andi $t1, $t0, 0x8000 ## $t1 = 00000000
|
||||
/* 00370 80AAF1C0 11200005 */ beq $t1, $zero, .L80AAF1D8
|
||||
/* 00374 80AAF1C4 00000000 */ nop
|
||||
/* 00378 80AAF1C8 944A13FC */ lhu $t2, 0x13FC($v0) ## 8015FA5C
|
||||
/* 0037C 80AAF1CC 314B0001 */ andi $t3, $t2, 0x0001 ## $t3 = 00000000
|
||||
/* 00380 80AAF1D0 55600006 */ bnel $t3, $zero, .L80AAF1EC
|
||||
/* 00384 80AAF1D4 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
.L80AAF1D8:
|
||||
/* 00388 80AAF1D8 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0038C 80AAF1DC 2484FB80 */ addiu $a0, $a0, %lo(D_80AAFB80) ## $a0 = 80AAFB80
|
||||
/* 00390 80AAF1E0 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00394 80AAF1E4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00398 80AAF1E8 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
.L80AAF1EC:
|
||||
/* 0039C 80AAF1EC 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 003A0 80AAF1F0 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 003A4 80AAF1F4 03E00008 */ jr $ra
|
||||
/* 003A8 80AAF1F8 00000000 */ nop
|
@ -1,92 +0,0 @@
|
||||
glabel EnMm2_Update
|
||||
/* 00940 80AAF790 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 00944 80AAF794 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 00948 80AAF798 AFB10028 */ sw $s1, 0x0028($sp)
|
||||
/* 0094C 80AAF79C AFB00024 */ sw $s0, 0x0024($sp)
|
||||
/* 00950 80AAF7A0 948E01F4 */ lhu $t6, 0x01F4($a0) ## 000001F4
|
||||
/* 00954 80AAF7A4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00958 80AAF7A8 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 0095C 80AAF7AC 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
|
||||
/* 00960 80AAF7B0 11E0000E */ beq $t7, $zero, .L80AAF7EC
|
||||
/* 00964 80AAF7B4 260401E8 */ addiu $a0, $s0, 0x01E8 ## $a0 = 000001E8
|
||||
/* 00968 80AAF7B8 8E190038 */ lw $t9, 0x0038($s0) ## 00000038
|
||||
/* 0096C 80AAF7BC 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00970 80AAF7C0 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00974 80AAF7C4 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00978 80AAF7C8 8E18003C */ lw $t8, 0x003C($s0) ## 0000003C
|
||||
/* 0097C 80AAF7CC 260601E8 */ addiu $a2, $s0, 0x01E8 ## $a2 = 000001E8
|
||||
/* 00980 80AAF7D0 260701EE */ addiu $a3, $s0, 0x01EE ## $a3 = 000001EE
|
||||
/* 00984 80AAF7D4 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 00988 80AAF7D8 8E190040 */ lw $t9, 0x0040($s0) ## 00000040
|
||||
/* 0098C 80AAF7DC 0C00E0A4 */ jal func_80038290
|
||||
/* 00990 80AAF7E0 AFB90018 */ sw $t9, 0x0018($sp)
|
||||
/* 00994 80AAF7E4 1000001D */ beq $zero, $zero, .L80AAF85C
|
||||
/* 00998 80AAF7E8 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
|
||||
.L80AAF7EC:
|
||||
/* 0099C 80AAF7EC 24080064 */ addiu $t0, $zero, 0x0064 ## $t0 = 00000064
|
||||
/* 009A0 80AAF7F0 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 009A4 80AAF7F4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 009A8 80AAF7F8 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
|
||||
/* 009AC 80AAF7FC 0C01E1A7 */ jal Math_SmoothStepToS
|
||||
|
||||
/* 009B0 80AAF800 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
|
||||
/* 009B4 80AAF804 24090064 */ addiu $t1, $zero, 0x0064 ## $t1 = 00000064
|
||||
/* 009B8 80AAF808 AFA90010 */ sw $t1, 0x0010($sp)
|
||||
/* 009BC 80AAF80C 260401EA */ addiu $a0, $s0, 0x01EA ## $a0 = 000001EA
|
||||
/* 009C0 80AAF810 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 009C4 80AAF814 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
|
||||
/* 009C8 80AAF818 0C01E1A7 */ jal Math_SmoothStepToS
|
||||
|
||||
/* 009CC 80AAF81C 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
|
||||
/* 009D0 80AAF820 240A0064 */ addiu $t2, $zero, 0x0064 ## $t2 = 00000064
|
||||
/* 009D4 80AAF824 AFAA0010 */ sw $t2, 0x0010($sp)
|
||||
/* 009D8 80AAF828 260401EE */ addiu $a0, $s0, 0x01EE ## $a0 = 000001EE
|
||||
/* 009DC 80AAF82C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 009E0 80AAF830 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
|
||||
/* 009E4 80AAF834 0C01E1A7 */ jal Math_SmoothStepToS
|
||||
|
||||
/* 009E8 80AAF838 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
|
||||
/* 009EC 80AAF83C 240B0064 */ addiu $t3, $zero, 0x0064 ## $t3 = 00000064
|
||||
/* 009F0 80AAF840 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 009F4 80AAF844 260401F0 */ addiu $a0, $s0, 0x01F0 ## $a0 = 000001F0
|
||||
/* 009F8 80AAF848 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 009FC 80AAF84C 24060006 */ addiu $a2, $zero, 0x0006 ## $a2 = 00000006
|
||||
/* 00A00 80AAF850 0C01E1A7 */ jal Math_SmoothStepToS
|
||||
|
||||
/* 00A04 80AAF854 24071838 */ addiu $a3, $zero, 0x1838 ## $a3 = 00001838
|
||||
/* 00A08 80AAF858 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
|
||||
.L80AAF85C:
|
||||
/* 00A0C 80AAF85C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A10 80AAF860 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 00A14 80AAF864 0320F809 */ jalr $ra, $t9
|
||||
/* 00A18 80AAF868 00000000 */ nop
|
||||
/* 00A1C 80AAF86C 26060194 */ addiu $a2, $s0, 0x0194 ## $a2 = 00000194
|
||||
/* 00A20 80AAF870 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000194
|
||||
/* 00A24 80AAF874 AFA60034 */ sw $a2, 0x0034($sp)
|
||||
/* 00A28 80AAF878 0C0189B7 */ jal Collider_UpdateCylinder
|
||||
|
||||
/* 00A2C 80AAF87C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A30 80AAF880 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00A34 80AAF884 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 00A38 80AAF888 8FA60034 */ lw $a2, 0x0034($sp)
|
||||
/* 00A3C 80AAF88C 02212821 */ addu $a1, $s1, $at
|
||||
/* 00A40 80AAF890 0C017713 */ jal CollisionCheck_SetOC
|
||||
## CollisionCheck_setOC
|
||||
/* 00A44 80AAF894 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A48 80AAF898 0C00B638 */ jal Actor_MoveForward
|
||||
|
||||
/* 00A4C 80AAF89C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A50 80AAF8A0 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00A54 80AAF8A4 240C0004 */ addiu $t4, $zero, 0x0004 ## $t4 = 00000004
|
||||
/* 00A58 80AAF8A8 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 00A5C 80AAF8AC 44060000 */ mfc1 $a2, $f0
|
||||
/* 00A60 80AAF8B0 44070000 */ mfc1 $a3, $f0
|
||||
/* 00A64 80AAF8B4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A68 80AAF8B8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00A6C 80AAF8BC 0C00B92D */ jal Actor_UpdateBgCheckInfo
|
||||
/* 00A70 80AAF8C0 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00A74 80AAF8C4 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00A78 80AAF8C8 8FB00024 */ lw $s0, 0x0024($sp)
|
||||
/* 00A7C 80AAF8CC 8FB10028 */ lw $s1, 0x0028($sp)
|
||||
/* 00A80 80AAF8D0 03E00008 */ jr $ra
|
||||
/* 00A84 80AAF8D4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
@ -1,82 +0,0 @@
|
||||
glabel func_80AAEE50
|
||||
/* 00000 80AAEE50 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00004 80AAEE54 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00008 80AAEE58 AFA40038 */ sw $a0, 0x0038($sp)
|
||||
/* 0000C 80AAEE5C AFA60040 */ sw $a2, 0x0040($sp)
|
||||
/* 00010 80AAEE60 8CC20000 */ lw $v0, 0x0000($a2) ## 00000000
|
||||
/* 00014 80AAEE64 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
|
||||
/* 00018 80AAEE68 00057900 */ sll $t7, $a1, 4
|
||||
/* 0001C 80AAEE6C 04400003 */ bltz $v0, .L80AAEE7C
|
||||
/* 00020 80AAEE70 3C1880AB */ lui $t8, %hi(D_80AAFAEC) ## $t8 = 80AB0000
|
||||
/* 00024 80AAEE74 14A20005 */ bne $a1, $v0, .L80AAEE8C
|
||||
/* 00028 80AAEE78 0005C900 */ sll $t9, $a1, 4
|
||||
.L80AAEE7C:
|
||||
/* 0002C 80AAEE7C 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 00030 80AAEE80 2718FAEC */ addiu $t8, $t8, %lo(D_80AAFAEC) ## $t8 = 80AAFAEC
|
||||
/* 00034 80AAEE84 10000005 */ beq $zero, $zero, .L80AAEE9C
|
||||
/* 00038 80AAEE88 01F81821 */ addu $v1, $t7, $t8
|
||||
.L80AAEE8C:
|
||||
/* 0003C 80AAEE8C 3C0880AB */ lui $t0, %hi(D_80AAFAEC) ## $t0 = 80AB0000
|
||||
/* 00040 80AAEE90 2508FAEC */ addiu $t0, $t0, %lo(D_80AAFAEC) ## $t0 = 80AAFAEC
|
||||
/* 00044 80AAEE94 03281821 */ addu $v1, $t9, $t0
|
||||
/* 00048 80AAEE98 C460000C */ lwc1 $f0, 0x000C($v1) ## 0000000C
|
||||
.L80AAEE9C:
|
||||
/* 0004C 80AAEE9C C4640004 */ lwc1 $f4, 0x0004($v1) ## 00000004
|
||||
/* 00050 80AAEEA0 4604303E */ c.le.s $f6, $f4
|
||||
/* 00054 80AAEEA4 00000000 */ nop
|
||||
/* 00058 80AAEEA8 45020017 */ bc1fl .L80AAEF08
|
||||
/* 0005C 80AAEEAC 8C640000 */ lw $a0, 0x0000($v1) ## 00000000
|
||||
/* 00060 80AAEEB0 8C640000 */ lw $a0, 0x0000($v1) ## 00000000
|
||||
/* 00064 80AAEEB4 AFA3002C */ sw $v1, 0x002C($sp)
|
||||
/* 00068 80AAEEB8 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 0006C 80AAEEBC 0C028800 */ jal Animation_GetLastFrame
|
||||
|
||||
/* 00070 80AAEEC0 E7A00034 */ swc1 $f0, 0x0034($sp)
|
||||
/* 00074 80AAEEC4 44824000 */ mtc1 $v0, $f8 ## $f8 = 0.00
|
||||
/* 00078 80AAEEC8 8FA3002C */ lw $v1, 0x002C($sp)
|
||||
/* 0007C 80AAEECC C7A00034 */ lwc1 $f0, 0x0034($sp)
|
||||
/* 00080 80AAEED0 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 00084 80AAEED4 8FA40038 */ lw $a0, 0x0038($sp)
|
||||
/* 00088 80AAEED8 90690008 */ lbu $t1, 0x0008($v1) ## 00000008
|
||||
/* 0008C 80AAEEDC 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 00090 80AAEEE0 8C650000 */ lw $a1, 0x0000($v1) ## 00000000
|
||||
/* 00094 80AAEEE4 8C660004 */ lw $a2, 0x0004($v1) ## 00000004
|
||||
/* 00098 80AAEEE8 E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
/* 0009C 80AAEEEC E7A00018 */ swc1 $f0, 0x0018($sp)
|
||||
/* 000A0 80AAEEF0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 000A4 80AAEEF4 0C029468 */ jal Animation_Change
|
||||
|
||||
/* 000A8 80AAEEF8 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 000AC 80AAEEFC 10000016 */ beq $zero, $zero, .L80AAEF58
|
||||
/* 000B0 80AAEF00 8FAB003C */ lw $t3, 0x003C($sp)
|
||||
/* 000B4 80AAEF04 8C640000 */ lw $a0, 0x0000($v1) ## 00000000
|
||||
.L80AAEF08:
|
||||
/* 000B8 80AAEF08 AFA3002C */ sw $v1, 0x002C($sp)
|
||||
/* 000BC 80AAEF0C AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 000C0 80AAEF10 0C028800 */ jal Animation_GetLastFrame
|
||||
|
||||
/* 000C4 80AAEF14 E7A00034 */ swc1 $f0, 0x0034($sp)
|
||||
/* 000C8 80AAEF18 44828000 */ mtc1 $v0, $f16 ## $f16 = 0.00
|
||||
/* 000CC 80AAEF1C 8FA3002C */ lw $v1, 0x002C($sp)
|
||||
/* 000D0 80AAEF20 C7A00034 */ lwc1 $f0, 0x0034($sp)
|
||||
/* 000D4 80AAEF24 46808420 */ cvt.s.w $f16, $f16
|
||||
/* 000D8 80AAEF28 8FA40038 */ lw $a0, 0x0038($sp)
|
||||
/* 000DC 80AAEF2C 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
|
||||
/* 000E0 80AAEF30 906A0008 */ lbu $t2, 0x0008($v1) ## 00000008
|
||||
/* 000E4 80AAEF34 8C650000 */ lw $a1, 0x0000($v1) ## 00000000
|
||||
/* 000E8 80AAEF38 8C660004 */ lw $a2, 0x0004($v1) ## 00000004
|
||||
/* 000EC 80AAEF3C 44078000 */ mfc1 $a3, $f16
|
||||
/* 000F0 80AAEF40 E7A00018 */ swc1 $f0, 0x0018($sp)
|
||||
/* 000F4 80AAEF44 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 000F8 80AAEF48 AFAA0014 */ sw $t2, 0x0014($sp)
|
||||
/* 000FC 80AAEF4C 0C029468 */ jal Animation_Change
|
||||
|
||||
/* 00100 80AAEF50 E7B20010 */ swc1 $f18, 0x0010($sp)
|
||||
/* 00104 80AAEF54 8FAB003C */ lw $t3, 0x003C($sp)
|
||||
.L80AAEF58:
|
||||
/* 00108 80AAEF58 8FAC0040 */ lw $t4, 0x0040($sp)
|
||||
/* 0010C 80AAEF5C AD8B0000 */ sw $t3, 0x0000($t4) ## 00000000
|
||||
/* 00110 80AAEF60 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00114 80AAEF64 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00118 80AAEF68 03E00008 */ jr $ra
|
||||
/* 0011C 80AAEF6C 00000000 */ nop
|
@ -1,62 +0,0 @@
|
||||
glabel func_80AAEF70
|
||||
/* 00120 80AAEF70 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 00124 80AAEF74 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 00128 80AAEF78 944E0EE6 */ lhu $t6, 0x0EE6($v0) ## 8015F546
|
||||
/* 0012C 80AAEF7C 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
|
||||
/* 00130 80AAEF80 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 00134 80AAEF84 31CF000F */ andi $t7, $t6, 0x000F ## $t7 = 00000000
|
||||
/* 00138 80AAEF88 11E10003 */ beq $t7, $at, .L80AAEF98
|
||||
/* 0013C 80AAEF8C 24186086 */ addiu $t8, $zero, 0x6086 ## $t8 = 00006086
|
||||
/* 00140 80AAEF90 03E00008 */ jr $ra
|
||||
/* 00144 80AAEF94 A498010E */ sh $t8, 0x010E($a0) ## 0000010E
|
||||
.L80AAEF98:
|
||||
/* 00148 80AAEF98 94590F26 */ lhu $t9, 0x0F26($v0) ## 8015F586
|
||||
/* 0014C 80AAEF9C 33288000 */ andi $t0, $t9, 0x8000 ## $t0 = 00000000
|
||||
/* 00150 80AAEFA0 51000018 */ beql $t0, $zero, .L80AAF004
|
||||
/* 00154 80AAEFA4 845913D2 */ lh $t9, 0x13D2($v0) ## 8015FA32
|
||||
/* 00158 80AAEFA8 944913FC */ lhu $t1, 0x13FC($v0) ## 8015FA5C
|
||||
/* 0015C 80AAEFAC 240B6082 */ addiu $t3, $zero, 0x6082 ## $t3 = 00006082
|
||||
/* 00160 80AAEFB0 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
|
||||
/* 00164 80AAEFB4 51400004 */ beql $t2, $zero, .L80AAEFC8
|
||||
/* 00168 80AAEFB8 844C13D2 */ lh $t4, 0x13D2($v0) ## 8015FA32
|
||||
/* 0016C 80AAEFBC 03E00008 */ jr $ra
|
||||
/* 00170 80AAEFC0 A48B010E */ sh $t3, 0x010E($a0) ## 0000010E
|
||||
.L80AAEFC4:
|
||||
/* 00174 80AAEFC4 844C13D2 */ lh $t4, 0x13D2($v0) ## 8015FA32
|
||||
.L80AAEFC8:
|
||||
/* 00178 80AAEFC8 240D6076 */ addiu $t5, $zero, 0x6076 ## $t5 = 00006076
|
||||
/* 0017C 80AAEFCC 51800004 */ beql $t4, $zero, .L80AAEFE0
|
||||
/* 00180 80AAEFD0 8C4E0EC8 */ lw $t6, 0x0EC8($v0) ## 8015F528
|
||||
/* 00184 80AAEFD4 03E00008 */ jr $ra
|
||||
/* 00188 80AAEFD8 A48D010E */ sh $t5, 0x010E($a0) ## 0000010E
|
||||
.L80AAEFDC:
|
||||
/* 0018C 80AAEFDC 8C4E0EC8 */ lw $t6, 0x0EC8($v0) ## 8015F528
|
||||
.L80AAEFE0:
|
||||
/* 00190 80AAEFE0 2401009E */ addiu $at, $zero, 0x009E ## $at = 0000009E
|
||||
/* 00194 80AAEFE4 240F607E */ addiu $t7, $zero, 0x607E ## $t7 = 0000607E
|
||||
/* 00198 80AAEFE8 15C10003 */ bne $t6, $at, .L80AAEFF8
|
||||
/* 0019C 80AAEFEC 24186081 */ addiu $t8, $zero, 0x6081 ## $t8 = 00006081
|
||||
/* 001A0 80AAEFF0 03E00008 */ jr $ra
|
||||
/* 001A4 80AAEFF4 A48F010E */ sh $t7, 0x010E($a0) ## 0000010E
|
||||
.L80AAEFF8:
|
||||
/* 001A8 80AAEFF8 03E00008 */ jr $ra
|
||||
/* 001AC 80AAEFFC A498010E */ sh $t8, 0x010E($a0) ## 0000010E
|
||||
.L80AAF000:
|
||||
/* 001B0 80AAF000 845913D2 */ lh $t9, 0x13D2($v0) ## 8015FA32
|
||||
.L80AAF004:
|
||||
/* 001B4 80AAF004 24086076 */ addiu $t0, $zero, 0x6076 ## $t0 = 00006076
|
||||
/* 001B8 80AAF008 2409607D */ addiu $t1, $zero, 0x607D ## $t1 = 0000607D
|
||||
/* 001BC 80AAF00C 53200004 */ beql $t9, $zero, .L80AAF020
|
||||
/* 001C0 80AAF010 A489010E */ sh $t1, 0x010E($a0) ## 0000010E
|
||||
/* 001C4 80AAF014 03E00008 */ jr $ra
|
||||
/* 001C8 80AAF018 A488010E */ sh $t0, 0x010E($a0) ## 0000010E
|
||||
.L80AAF01C:
|
||||
/* 001CC 80AAF01C A489010E */ sh $t1, 0x010E($a0) ## 0000010E
|
||||
.L80AAF020:
|
||||
/* 001D0 80AAF020 944A13FC */ lhu $t2, 0x13FC($v0) ## 8015FA5C
|
||||
/* 001D4 80AAF024 240C009E */ addiu $t4, $zero, 0x009E ## $t4 = 0000009E
|
||||
/* 001D8 80AAF028 AC4C0EC8 */ sw $t4, 0x0EC8($v0) ## 8015F528
|
||||
/* 001DC 80AAF02C 314BFFFE */ andi $t3, $t2, 0xFFFE ## $t3 = 00000000
|
||||
/* 001E0 80AAF030 A44B13FC */ sh $t3, 0x13FC($v0) ## 8015FA5C
|
||||
/* 001E4 80AAF034 03E00008 */ jr $ra
|
||||
/* 001E8 80AAF038 00000000 */ nop
|
@ -1,43 +0,0 @@
|
||||
glabel func_80AAF224
|
||||
/* 003D4 80AAF224 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 003D8 80AAF228 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 003DC 80AAF22C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 003E0 80AAF230 AFA60020 */ sw $a2, 0x0020($sp)
|
||||
/* 003E4 80AAF234 0C00BC65 */ jal func_8002F194
|
||||
/* 003E8 80AAF238 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 003EC 80AAF23C 10400005 */ beq $v0, $zero, .L80AAF254
|
||||
/* 003F0 80AAF240 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 003F4 80AAF244 8FAE0020 */ lw $t6, 0x0020($sp)
|
||||
/* 003F8 80AAF248 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
|
||||
/* 003FC 80AAF24C 10000017 */ beq $zero, $zero, .L80AAF2AC
|
||||
/* 00400 80AAF250 AC8E0190 */ sw $t6, 0x0190($a0) ## 00000190
|
||||
.L80AAF254:
|
||||
/* 00404 80AAF254 848F008A */ lh $t7, 0x008A($a0) ## 0000008A
|
||||
/* 00408 80AAF258 849800B6 */ lh $t8, 0x00B6($a0) ## 000000B6
|
||||
/* 0040C 80AAF25C 01F81023 */ subu $v0, $t7, $t8
|
||||
/* 00410 80AAF260 00021400 */ sll $v0, $v0, 16
|
||||
/* 00414 80AAF264 00021403 */ sra $v0, $v0, 16
|
||||
/* 00418 80AAF268 04400003 */ bltz $v0, .L80AAF278
|
||||
/* 0041C 80AAF26C 00021823 */ subu $v1, $zero, $v0
|
||||
/* 00420 80AAF270 10000001 */ beq $zero, $zero, .L80AAF278
|
||||
/* 00424 80AAF274 00401825 */ or $v1, $v0, $zero ## $v1 = 00000001
|
||||
.L80AAF278:
|
||||
/* 00428 80AAF278 28614301 */ slti $at, $v1, 0x4301
|
||||
/* 0042C 80AAF27C 1020000A */ beq $at, $zero, .L80AAF2A8
|
||||
/* 00430 80AAF280 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
|
||||
/* 00434 80AAF284 44810000 */ mtc1 $at, $f0 ## $f0 = 100.00
|
||||
/* 00438 80AAF288 C4840090 */ lwc1 $f4, 0x0090($a0) ## 00000090
|
||||
/* 0043C 80AAF28C 4600203C */ c.lt.s $f4, $f0
|
||||
/* 00440 80AAF290 00000000 */ nop
|
||||
/* 00444 80AAF294 45020005 */ bc1fl .L80AAF2AC
|
||||
/* 00448 80AAF298 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 0044C 80AAF29C 44060000 */ mfc1 $a2, $f0
|
||||
/* 00450 80AAF2A0 0C00BCB3 */ jal func_8002F2CC
|
||||
/* 00454 80AAF2A4 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
.L80AAF2A8:
|
||||
/* 00458 80AAF2A8 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80AAF2AC:
|
||||
/* 0045C 80AAF2AC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00460 80AAF2B0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00464 80AAF2B4 03E00008 */ jr $ra
|
||||
/* 00468 80AAF2B8 00000000 */ nop
|
@ -1,34 +0,0 @@
|
||||
glabel func_80AAF2BC
|
||||
/* 0046C 80AAF2BC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00470 80AAF2C0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00474 80AAF2C4 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00478 80AAF2C8 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 0047C 80AAF2CC 848E01F6 */ lh $t6, 0x01F6($a0) ## 000001F6
|
||||
/* 00480 80AAF2D0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00484 80AAF2D4 29C1003D */ slti $at, $t6, 0x003D
|
||||
/* 00488 80AAF2D8 14200003 */ bne $at, $zero, .L80AAF2E8
|
||||
/* 0048C 80AAF2DC 00000000 */ nop
|
||||
/* 00490 80AAF2E0 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00494 80AAF2E4 00000000 */ nop
|
||||
.L80AAF2E8:
|
||||
/* 00498 80AAF2E8 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 0049C 80AAF2EC 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 004A0 80AAF2F0 860F01F6 */ lh $t7, 0x01F6($s0) ## 000001F6
|
||||
/* 004A4 80AAF2F4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 004A8 80AAF2F8 3C063F19 */ lui $a2, 0x3F19 ## $a2 = 3F190000
|
||||
/* 004AC 80AAF2FC 25F80001 */ addiu $t8, $t7, 0x0001 ## $t8 = 00000001
|
||||
/* 004B0 80AAF300 A61801F6 */ sh $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 004B4 80AAF304 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3F19999A
|
||||
/* 004B8 80AAF308 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
|
||||
/* 004BC 80AAF30C 3C054120 */ lui $a1, 0x4120 ## $a1 = 41200000
|
||||
/* 004C0 80AAF310 3C074000 */ lui $a3, 0x4000 ## $a3 = 40000000
|
||||
/* 004C4 80AAF314 0C01E0C4 */ jal Math_SmoothStepToF
|
||||
|
||||
/* 004C8 80AAF318 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 004CC 80AAF31C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 004D0 80AAF320 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 004D4 80AAF324 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 004D8 80AAF328 03E00008 */ jr $ra
|
||||
/* 004DC 80AAF32C 00000000 */ nop
|
@ -1,40 +0,0 @@
|
||||
glabel func_80AAF330
|
||||
/* 004E0 80AAF330 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 004E4 80AAF334 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 004E8 80AAF338 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 004EC 80AAF33C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 004F0 80AAF340 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 004F4 80AAF344 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 004F8 80AAF348 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 004FC 80AAF34C 10400018 */ beq $v0, $zero, .L80AAF3B0
|
||||
/* 00500 80AAF350 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00504 80AAF354 3C0E80AB */ lui $t6, %hi(func_80AAF2BC) ## $t6 = 80AB0000
|
||||
/* 00508 80AAF358 25CEF2BC */ addiu $t6, $t6, %lo(func_80AAF2BC) ## $t6 = 80AAF2BC
|
||||
/* 0050C 80AAF35C ACEE0190 */ sw $t6, 0x0190($a3) ## 00000190
|
||||
/* 00510 80AAF360 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 00514 80AAF364 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
|
||||
/* 00518 80AAF368 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 0051C 80AAF36C 0C2ABB94 */ jal func_80AAEE50
|
||||
/* 00520 80AAF370 24E601F8 */ addiu $a2, $a3, 0x01F8 ## $a2 = 000001F8
|
||||
/* 00524 80AAF374 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00528 80AAF378 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
|
||||
/* 0052C 80AAF37C 94F801F4 */ lhu $t8, 0x01F4($a3) ## 000001F4
|
||||
/* 00530 80AAF380 ACEF01E0 */ sw $t7, 0x01E0($a3) ## 000001E0
|
||||
/* 00534 80AAF384 33190002 */ andi $t9, $t8, 0x0002 ## $t9 = 00000000
|
||||
/* 00538 80AAF388 17200003 */ bne $t9, $zero, .L80AAF398
|
||||
/* 0053C 80AAF38C 00000000 */ nop
|
||||
/* 00540 80AAF390 0C041B33 */ jal func_80106CCC
|
||||
/* 00544 80AAF394 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
.L80AAF398:
|
||||
/* 00548 80AAF398 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 0054C 80AAF39C 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 00550 80AAF3A0 944813FC */ lhu $t0, 0x13FC($v0) ## 8015FA5C
|
||||
/* 00554 80AAF3A4 A44013D2 */ sh $zero, 0x13D2($v0) ## 8015FA32
|
||||
/* 00558 80AAF3A8 3109FFFE */ andi $t1, $t0, 0xFFFE ## $t1 = 00000000
|
||||
/* 0055C 80AAF3AC A44913FC */ sh $t1, 0x13FC($v0) ## 8015FA5C
|
||||
.L80AAF3B0:
|
||||
/* 00560 80AAF3B0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00564 80AAF3B4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00568 80AAF3B8 03E00008 */ jr $ra
|
||||
/* 0056C 80AAF3BC 00000000 */ nop
|
@ -1,123 +0,0 @@
|
||||
glabel func_80AAF3C0
|
||||
/* 00570 80AAF3C0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00574 80AAF3C4 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00578 80AAF3C8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0057C 80AAF3CC AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00580 80AAF3D0 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00584 80AAF3D4 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 00588 80AAF3D8 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 0058C 80AAF3DC 9603010E */ lhu $v1, 0x010E($s0) ## 0000010E
|
||||
/* 00590 80AAF3E0 2401607D */ addiu $at, $zero, 0x607D ## $at = 0000607D
|
||||
/* 00594 80AAF3E4 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00598 80AAF3E8 10610007 */ beq $v1, $at, .L80AAF408
|
||||
/* 0059C 80AAF3EC 2401607E */ addiu $at, $zero, 0x607E ## $at = 0000607E
|
||||
/* 005A0 80AAF3F0 10610005 */ beq $v1, $at, .L80AAF408
|
||||
/* 005A4 80AAF3F4 24016081 */ addiu $at, $zero, 0x6081 ## $at = 00006081
|
||||
/* 005A8 80AAF3F8 10610031 */ beq $v1, $at, .L80AAF4C0
|
||||
/* 005AC 80AAF3FC 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 005B0 80AAF400 10000046 */ beq $zero, $zero, .L80AAF51C
|
||||
/* 005B4 80AAF404 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
.L80AAF408:
|
||||
/* 005B8 80AAF408 0C042F6F */ jal func_8010BDBC
|
||||
/* 005BC 80AAF40C 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 005C0 80AAF410 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 005C4 80AAF414 54410055 */ bnel $v0, $at, .L80AAF56C
|
||||
/* 005C8 80AAF418 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 005CC 80AAF41C 0C041AF2 */ jal func_80106BC8
|
||||
/* 005D0 80AAF420 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 005D4 80AAF424 10400050 */ beq $v0, $zero, .L80AAF568
|
||||
/* 005D8 80AAF428 8FAE0024 */ lw $t6, 0x0024($sp)
|
||||
/* 005DC 80AAF42C 3C030001 */ lui $v1, 0x0001 ## $v1 = 00010000
|
||||
/* 005E0 80AAF430 006E1821 */ addu $v1, $v1, $t6
|
||||
/* 005E4 80AAF434 906304BD */ lbu $v1, 0x04BD($v1) ## 000104BD
|
||||
/* 005E8 80AAF438 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 005EC 80AAF43C 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 005F0 80AAF440 10600005 */ beq $v1, $zero, .L80AAF458
|
||||
/* 005F4 80AAF444 00000000 */ nop
|
||||
/* 005F8 80AAF448 1061000D */ beq $v1, $at, .L80AAF480
|
||||
/* 005FC 80AAF44C 3C038016 */ lui $v1, %hi(gSaveContext)
|
||||
/* 00600 80AAF450 10000012 */ beq $zero, $zero, .L80AAF49C
|
||||
/* 00604 80AAF454 2463E660 */ addiu $v1, %lo(gSaveContext)
|
||||
.L80AAF458:
|
||||
/* 00608 80AAF458 0C042DC8 */ jal func_8010B720
|
||||
/* 0060C 80AAF45C 2405607F */ addiu $a1, $zero, 0x607F ## $a1 = 0000607F
|
||||
/* 00610 80AAF460 3C038016 */ lui $v1, %hi(gSaveContext)
|
||||
/* 00614 80AAF464 240F607F */ addiu $t7, $zero, 0x607F ## $t7 = 0000607F
|
||||
/* 00618 80AAF468 2463E660 */ addiu $v1, %lo(gSaveContext)
|
||||
/* 0061C 80AAF46C A60F010E */ sh $t7, 0x010E($s0) ## 0000010E
|
||||
/* 00620 80AAF470 947813FC */ lhu $t8, 0x13FC($v1) ## 8015FA5C
|
||||
/* 00624 80AAF474 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
|
||||
/* 00628 80AAF478 10000008 */ beq $zero, $zero, .L80AAF49C
|
||||
/* 0062C 80AAF47C A47913FC */ sh $t9, 0x13FC($v1) ## 8015FA5C
|
||||
.L80AAF480:
|
||||
/* 00630 80AAF480 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00634 80AAF484 0C042DC8 */ jal func_8010B720
|
||||
/* 00638 80AAF488 24056080 */ addiu $a1, $zero, 0x6080 ## $a1 = 00006080
|
||||
/* 0063C 80AAF48C 24086080 */ addiu $t0, $zero, 0x6080 ## $t0 = 00006080
|
||||
/* 00640 80AAF490 3C038016 */ lui $v1, %hi(gSaveContext)
|
||||
/* 00644 80AAF494 A608010E */ sh $t0, 0x010E($s0) ## 0000010E
|
||||
/* 00648 80AAF498 2463E660 */ addiu $v1, %lo(gSaveContext)
|
||||
.L80AAF49C:
|
||||
/* 0064C 80AAF49C 960201F4 */ lhu $v0, 0x01F4($s0) ## 000001F4
|
||||
/* 00650 80AAF4A0 30490004 */ andi $t1, $v0, 0x0004 ## $t1 = 00000000
|
||||
/* 00654 80AAF4A4 11200030 */ beq $t1, $zero, .L80AAF568
|
||||
/* 00658 80AAF4A8 304AFFFB */ andi $t2, $v0, 0xFFFB ## $t2 = 00000000
|
||||
/* 0065C 80AAF4AC A60A01F4 */ sh $t2, 0x01F4($s0) ## 000001F4
|
||||
/* 00660 80AAF4B0 8C6B0EC8 */ lw $t3, 0x0EC8($v1) ## 8015F528
|
||||
/* 00664 80AAF4B4 256C0001 */ addiu $t4, $t3, 0x0001 ## $t4 = 00000001
|
||||
/* 00668 80AAF4B8 1000002B */ beq $zero, $zero, .L80AAF568
|
||||
/* 0066C 80AAF4BC AC6C0EC8 */ sw $t4, 0x0EC8($v1) ## 8015F528
|
||||
.L80AAF4C0:
|
||||
/* 00670 80AAF4C0 0C042F6F */ jal func_8010BDBC
|
||||
/* 00674 80AAF4C4 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00678 80AAF4C8 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 0067C 80AAF4CC 54410027 */ bnel $v0, $at, .L80AAF56C
|
||||
/* 00680 80AAF4D0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00684 80AAF4D4 0C041AF2 */ jal func_80106BC8
|
||||
/* 00688 80AAF4D8 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 0068C 80AAF4DC 50400023 */ beql $v0, $zero, .L80AAF56C
|
||||
/* 00690 80AAF4E0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00694 80AAF4E4 960D01F4 */ lhu $t5, 0x01F4($s0) ## 000001F4
|
||||
/* 00698 80AAF4E8 3C038016 */ lui $v1, %hi(gSaveContext)
|
||||
/* 0069C 80AAF4EC 2463E660 */ addiu $v1, %lo(gSaveContext)
|
||||
/* 006A0 80AAF4F0 35AE0004 */ ori $t6, $t5, 0x0004 ## $t6 = 00000004
|
||||
/* 006A4 80AAF4F4 A60E01F4 */ sh $t6, 0x01F4($s0) ## 000001F4
|
||||
/* 006A8 80AAF4F8 8C6F0EC8 */ lw $t7, 0x0EC8($v1) ## 8015F528
|
||||
/* 006AC 80AAF4FC 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 006B0 80AAF500 2405607E */ addiu $a1, $zero, 0x607E ## $a1 = 0000607E
|
||||
/* 006B4 80AAF504 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
|
||||
/* 006B8 80AAF508 0C042DC8 */ jal func_8010B720
|
||||
/* 006BC 80AAF50C AC780EC8 */ sw $t8, 0x0EC8($v1) ## 8015F528
|
||||
/* 006C0 80AAF510 2419607E */ addiu $t9, $zero, 0x607E ## $t9 = 0000607E
|
||||
/* 006C4 80AAF514 10000014 */ beq $zero, $zero, .L80AAF568
|
||||
/* 006C8 80AAF518 A619010E */ sh $t9, 0x010E($s0) ## 0000010E
|
||||
.L80AAF51C:
|
||||
/* 006CC 80AAF51C 0C00BCCD */ jal func_8002F334
|
||||
/* 006D0 80AAF520 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 006D4 80AAF524 50400011 */ beql $v0, $zero, .L80AAF56C
|
||||
/* 006D8 80AAF528 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 006DC 80AAF52C 9608010E */ lhu $t0, 0x010E($s0) ## 0000010E
|
||||
/* 006E0 80AAF530 2401607F */ addiu $at, $zero, 0x607F ## $at = 0000607F
|
||||
/* 006E4 80AAF534 3C0A80AB */ lui $t2, %hi(func_80AAF57C) ## $t2 = 80AB0000
|
||||
/* 006E8 80AAF538 15010007 */ bne $t0, $at, .L80AAF558
|
||||
/* 006EC 80AAF53C 254AF57C */ addiu $t2, $t2, %lo(func_80AAF57C) ## $t2 = 80AAF57C
|
||||
/* 006F0 80AAF540 0C0222A8 */ jal func_80088AA0
|
||||
/* 006F4 80AAF544 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
|
||||
/* 006F8 80AAF548 3C0980AB */ lui $t1, %hi(func_80AAF57C) ## $t1 = 80AB0000
|
||||
/* 006FC 80AAF54C 2529F57C */ addiu $t1, $t1, %lo(func_80AAF57C) ## $t1 = 80AAF57C
|
||||
/* 00700 80AAF550 10000002 */ beq $zero, $zero, .L80AAF55C
|
||||
/* 00704 80AAF554 AE090190 */ sw $t1, 0x0190($s0) ## 00000190
|
||||
.L80AAF558:
|
||||
/* 00708 80AAF558 AE0A0190 */ sw $t2, 0x0190($s0) ## 00000190
|
||||
.L80AAF55C:
|
||||
/* 0070C 80AAF55C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00710 80AAF560 0C2ABBDC */ jal func_80AAEF70
|
||||
/* 00714 80AAF564 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
.L80AAF568:
|
||||
/* 00718 80AAF568 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80AAF56C:
|
||||
/* 0071C 80AAF56C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00720 80AAF570 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00724 80AAF574 03E00008 */ jr $ra
|
||||
/* 00728 80AAF578 00000000 */ nop
|
@ -1,31 +0,0 @@
|
||||
glabel func_80AAF57C
|
||||
/* 0072C 80AAF57C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00730 80AAF580 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00734 80AAF584 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00738 80AAF588 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 0073C 80AAF58C 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 00740 80AAF590 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00744 80AAF594 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00748 80AAF598 0C2ABBDC */ jal func_80AAEF70
|
||||
/* 0074C 80AAF59C 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00750 80AAF5A0 3C0680AB */ lui $a2, %hi(func_80AAF3C0) ## $a2 = 80AB0000
|
||||
/* 00754 80AAF5A4 24C6F3C0 */ addiu $a2, $a2, %lo(func_80AAF3C0) ## $a2 = 80AAF3C0
|
||||
/* 00758 80AAF5A8 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 0075C 80AAF5AC 0C2ABC89 */ jal func_80AAF224
|
||||
/* 00760 80AAF5B0 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00764 80AAF5B4 10400009 */ beq $v0, $zero, .L80AAF5DC
|
||||
/* 00768 80AAF5B8 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 0076C 80AAF5BC 95CF010E */ lhu $t7, 0x010E($t6) ## 0000010E
|
||||
/* 00770 80AAF5C0 2401607D */ addiu $at, $zero, 0x607D ## $at = 0000607D
|
||||
/* 00774 80AAF5C4 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 00778 80AAF5C8 15E10004 */ bne $t7, $at, .L80AAF5DC
|
||||
/* 0077C 80AAF5CC 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 00780 80AAF5D0 94580F26 */ lhu $t8, 0x0F26($v0) ## 8015F586
|
||||
/* 00784 80AAF5D4 37198000 */ ori $t9, $t8, 0x8000 ## $t9 = 00008000
|
||||
/* 00788 80AAF5D8 A4590F26 */ sh $t9, 0x0F26($v0) ## 8015F586
|
||||
.L80AAF5DC:
|
||||
/* 0078C 80AAF5DC 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00790 80AAF5E0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00794 80AAF5E4 03E00008 */ jr $ra
|
||||
/* 00798 80AAF5E8 00000000 */ nop
|
@ -1,35 +0,0 @@
|
||||
glabel func_80AAF5EC
|
||||
/* 0079C 80AAF5EC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 007A0 80AAF5F0 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 007A4 80AAF5F4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 007A8 80AAF5F8 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 007AC 80AAF5FC AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 007B0 80AAF600 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 007B4 80AAF604 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 007B8 80AAF608 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 007BC 80AAF60C 0C042F6F */ jal func_8010BDBC
|
||||
/* 007C0 80AAF610 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 007C4 80AAF614 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 007C8 80AAF618 5441000F */ bnel $v0, $at, .L80AAF658
|
||||
/* 007CC 80AAF61C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 007D0 80AAF620 0C041AF2 */ jal func_80106BC8
|
||||
/* 007D4 80AAF624 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 007D8 80AAF628 1040000A */ beq $v0, $zero, .L80AAF654
|
||||
/* 007DC 80AAF62C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 007E0 80AAF630 960E01F4 */ lhu $t6, 0x01F4($s0) ## 000001F4
|
||||
/* 007E4 80AAF634 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
|
||||
/* 007E8 80AAF638 260601F8 */ addiu $a2, $s0, 0x01F8 ## $a2 = 000001F8
|
||||
/* 007EC 80AAF63C 31CFFFFE */ andi $t7, $t6, 0xFFFE ## $t7 = 00000000
|
||||
/* 007F0 80AAF640 0C2ABB94 */ jal func_80AAEE50
|
||||
/* 007F4 80AAF644 A60F01F4 */ sh $t7, 0x01F4($s0) ## 000001F4
|
||||
/* 007F8 80AAF648 3C1880AB */ lui $t8, %hi(func_80AAF330) ## $t8 = 80AB0000
|
||||
/* 007FC 80AAF64C 2718F330 */ addiu $t8, $t8, %lo(func_80AAF330) ## $t8 = 80AAF330
|
||||
/* 00800 80AAF650 AE180190 */ sw $t8, 0x0190($s0) ## 00000190
|
||||
.L80AAF654:
|
||||
/* 00804 80AAF654 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80AAF658:
|
||||
/* 00808 80AAF658 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0080C 80AAF65C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00810 80AAF660 03E00008 */ jr $ra
|
||||
/* 00814 80AAF664 00000000 */ nop
|
@ -1,93 +0,0 @@
|
||||
.rdata
|
||||
glabel D_80AAFBA8
|
||||
.asciz "../z_en_mm2.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80AAFBB8
|
||||
.asciz "((z_common_data.event_inf[1]) & (0x0001)) = %x\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80AAF668
|
||||
/* 00818 80AAF668 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0081C 80AAF66C AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00820 80AAF670 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00824 80AAF674 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00828 80AAF678 240EC180 */ addiu $t6, $zero, 0xC180 ## $t6 = FFFFC180
|
||||
/* 0082C 80AAF67C A48E0032 */ sh $t6, 0x0032($a0) ## 00000032
|
||||
/* 00830 80AAF680 848F0032 */ lh $t7, 0x0032($a0) ## 00000032
|
||||
/* 00834 80AAF684 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00838 80AAF688 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 0083C 80AAF68C 0C02927F */ jal SkelAnime_Update
|
||||
|
||||
/* 00840 80AAF690 A48FFF6A */ sh $t7, -0x0096($a0) ## 000000B6
|
||||
/* 00844 80AAF694 3C078016 */ lui $a3, %hi(gSaveContext)
|
||||
/* 00848 80AAF698 24E7E660 */ addiu $a3, %lo(gSaveContext)
|
||||
/* 0084C 80AAF69C 84E313D4 */ lh $v1, 0x13D4($a3) ## 8015FA34
|
||||
/* 00850 80AAF6A0 8CF80EC8 */ lw $t8, 0x0EC8($a3) ## 8015F528
|
||||
/* 00854 80AAF6A4 3C0680AB */ lui $a2, %hi(func_80AAF5EC) ## $a2 = 80AB0000
|
||||
/* 00858 80AAF6A8 24C6F5EC */ addiu $a2, $a2, %lo(func_80AAF5EC) ## $a2 = 80AAF5EC
|
||||
/* 0085C 80AAF6AC 0078082A */ slt $at, $v1, $t8
|
||||
/* 00860 80AAF6B0 10200004 */ beq $at, $zero, .L80AAF6C4
|
||||
/* 00864 80AAF6B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00868 80AAF6B8 24196085 */ addiu $t9, $zero, 0x6085 ## $t9 = 00006085
|
||||
/* 0086C 80AAF6BC 10000003 */ beq $zero, $zero, .L80AAF6CC
|
||||
/* 00870 80AAF6C0 A619010E */ sh $t9, 0x010E($s0) ## 0000010E
|
||||
.L80AAF6C4:
|
||||
/* 00874 80AAF6C4 24086084 */ addiu $t0, $zero, 0x6084 ## $t0 = 00006084
|
||||
/* 00878 80AAF6C8 A608010E */ sh $t0, 0x010E($s0) ## 0000010E
|
||||
.L80AAF6CC:
|
||||
/* 0087C 80AAF6CC 0C2ABC89 */ jal func_80AAF224
|
||||
/* 00880 80AAF6D0 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00884 80AAF6D4 3C078016 */ lui $a3, %hi(gSaveContext)
|
||||
/* 00888 80AAF6D8 1040000B */ beq $v0, $zero, .L80AAF708
|
||||
/* 0088C 80AAF6DC 24E7E660 */ addiu $a3, %lo(gSaveContext)
|
||||
/* 00890 80AAF6E0 A60001F6 */ sh $zero, 0x01F6($s0) ## 000001F6
|
||||
/* 00894 80AAF6E4 84E213D4 */ lh $v0, 0x13D4($a3) ## 8015FA34
|
||||
/* 00898 80AAF6E8 8CE90EC8 */ lw $t1, 0x0EC8($a3) ## 8015F528
|
||||
/* 0089C 80AAF6EC 00021C00 */ sll $v1, $v0, 16
|
||||
/* 008A0 80AAF6F0 00031C03 */ sra $v1, $v1, 16
|
||||
/* 008A4 80AAF6F4 0069082A */ slt $at, $v1, $t1
|
||||
/* 008A8 80AAF6F8 50200021 */ beql $at, $zero, .L80AAF780
|
||||
/* 008AC 80AAF6FC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 008B0 80AAF700 1000001E */ beq $zero, $zero, .L80AAF77C
|
||||
/* 008B4 80AAF704 ACE20EC8 */ sw $v0, 0x0EC8($a3) ## 8015F528
|
||||
.L80AAF708:
|
||||
/* 008B8 80AAF708 3C0480AB */ lui $a0, %hi(D_80AAFBA8) ## $a0 = 80AB0000
|
||||
/* 008BC 80AAF70C 2484FBA8 */ addiu $a0, $a0, %lo(D_80AAFBA8) ## $a0 = 80AAFBA8
|
||||
/* 008C0 80AAF710 0C000B84 */ jal LogUtils_LogThreadId
|
||||
|
||||
/* 008C4 80AAF714 2405021D */ addiu $a1, $zero, 0x021D ## $a1 = 0000021D
|
||||
/* 008C8 80AAF718 3C078016 */ lui $a3, %hi(gSaveContext)
|
||||
/* 008CC 80AAF71C 24E7E660 */ addiu $a3, %lo(gSaveContext)
|
||||
/* 008D0 80AAF720 94E513FC */ lhu $a1, 0x13FC($a3) ## 8015FA5C
|
||||
/* 008D4 80AAF724 3C0480AB */ lui $a0, %hi(D_80AAFBB8) ## $a0 = 80AB0000
|
||||
/* 008D8 80AAF728 2484FBB8 */ addiu $a0, $a0, %lo(D_80AAFBB8) ## $a0 = 80AAFBB8
|
||||
/* 008DC 80AAF72C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 008E0 80AAF730 30A50001 */ andi $a1, $a1, 0x0001 ## $a1 = 00000000
|
||||
/* 008E4 80AAF734 3C078016 */ lui $a3, %hi(gSaveContext)
|
||||
/* 008E8 80AAF738 24E7E660 */ addiu $a3, %lo(gSaveContext)
|
||||
/* 008EC 80AAF73C 94EA13FC */ lhu $t2, 0x13FC($a3) ## 8015FA5C
|
||||
/* 008F0 80AAF740 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 008F4 80AAF744 314B0001 */ andi $t3, $t2, 0x0001 ## $t3 = 00000000
|
||||
/* 008F8 80AAF748 5560000D */ bnel $t3, $zero, .L80AAF780
|
||||
/* 008FC 80AAF74C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00900 80AAF750 960C01F4 */ lhu $t4, 0x01F4($s0) ## 000001F4
|
||||
/* 00904 80AAF754 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
|
||||
/* 00908 80AAF758 260601F8 */ addiu $a2, $s0, 0x01F8 ## $a2 = 000001F8
|
||||
/* 0090C 80AAF75C 358E0002 */ ori $t6, $t4, 0x0002 ## $t6 = 00000002
|
||||
/* 00910 80AAF760 A60E01F4 */ sh $t6, 0x01F4($s0) ## 000001F4
|
||||
/* 00914 80AAF764 31CFFFFE */ andi $t7, $t6, 0xFFFE ## $t7 = 00000002
|
||||
/* 00918 80AAF768 0C2ABB94 */ jal func_80AAEE50
|
||||
/* 0091C 80AAF76C A60F01F4 */ sh $t7, 0x01F4($s0) ## 000001F4
|
||||
/* 00920 80AAF770 3C1880AB */ lui $t8, %hi(func_80AAF330) ## $t8 = 80AB0000
|
||||
/* 00924 80AAF774 2718F330 */ addiu $t8, $t8, %lo(func_80AAF330) ## $t8 = 80AAF330
|
||||
/* 00928 80AAF778 AE180190 */ sw $t8, 0x0190($s0) ## 00000190
|
||||
.L80AAF77C:
|
||||
/* 0092C 80AAF77C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80AAF780:
|
||||
/* 00930 80AAF780 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00934 80AAF784 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00938 80AAF788 03E00008 */ jr $ra
|
||||
/* 0093C 80AAF78C 00000000 */ nop
|
@ -1,37 +0,0 @@
|
||||
glabel func_80AAF9D8
|
||||
/* 00B88 80AAF9D8 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 00B8C 80AAF9DC AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 00B90 80AAF9E0 AFA60008 */ sw $a2, 0x0008($sp)
|
||||
/* 00B94 80AAF9E4 10A10006 */ beq $a1, $at, .L80AAFA00
|
||||
/* 00B98 80AAF9E8 AFA7000C */ sw $a3, 0x000C($sp)
|
||||
/* 00B9C 80AAF9EC 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
|
||||
/* 00BA0 80AAF9F0 10A1000F */ beq $a1, $at, .L80AAFA30
|
||||
/* 00BA4 80AAF9F4 8FA20014 */ lw $v0, 0x0014($sp)
|
||||
/* 00BA8 80AAF9F8 03E00008 */ jr $ra
|
||||
/* 00BAC 80AAF9FC 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L80AAFA00:
|
||||
/* 00BB0 80AAFA00 8FA20014 */ lw $v0, 0x0014($sp)
|
||||
/* 00BB4 80AAFA04 8FA30010 */ lw $v1, 0x0010($sp)
|
||||
/* 00BB8 80AAFA08 844F01F0 */ lh $t7, 0x01F0($v0) ## 000001F0
|
||||
/* 00BBC 80AAFA0C 846E0000 */ lh $t6, 0x0000($v1) ## 00000000
|
||||
/* 00BC0 80AAFA10 84790002 */ lh $t9, 0x0002($v1) ## 00000002
|
||||
/* 00BC4 80AAFA14 01CFC021 */ addu $t8, $t6, $t7
|
||||
/* 00BC8 80AAFA18 A4780000 */ sh $t8, 0x0000($v1) ## 00000000
|
||||
/* 00BCC 80AAFA1C 844801EE */ lh $t0, 0x01EE($v0) ## 000001EE
|
||||
/* 00BD0 80AAFA20 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
/* 00BD4 80AAFA24 03284823 */ subu $t1, $t9, $t0
|
||||
/* 00BD8 80AAFA28 03E00008 */ jr $ra
|
||||
/* 00BDC 80AAFA2C A4690002 */ sh $t1, 0x0002($v1) ## 00000002
|
||||
.L80AAFA30:
|
||||
/* 00BE0 80AAFA30 8FA30010 */ lw $v1, 0x0010($sp)
|
||||
/* 00BE4 80AAFA34 844B01EA */ lh $t3, 0x01EA($v0) ## 000001EA
|
||||
/* 00BE8 80AAFA38 846A0000 */ lh $t2, 0x0000($v1) ## 00000000
|
||||
/* 00BEC 80AAFA3C 846D0004 */ lh $t5, 0x0004($v1) ## 00000004
|
||||
/* 00BF0 80AAFA40 014B6021 */ addu $t4, $t2, $t3
|
||||
/* 00BF4 80AAFA44 A46C0000 */ sh $t4, 0x0000($v1) ## 00000000
|
||||
/* 00BF8 80AAFA48 844E01E8 */ lh $t6, 0x01E8($v0) ## 000001E8
|
||||
/* 00BFC 80AAFA4C 01AE7821 */ addu $t7, $t5, $t6
|
||||
/* 00C00 80AAFA50 25F80FA0 */ addiu $t8, $t7, 0x0FA0 ## $t8 = 00000FA0
|
||||
/* 00C04 80AAFA54 A4780004 */ sh $t8, 0x0004($v1) ## 00000004
|
||||
/* 00C08 80AAFA58 03E00008 */ jr $ra
|
||||
/* 00C0C 80AAFA5C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
@ -1,18 +0,0 @@
|
||||
glabel func_80AAFA60
|
||||
/* 00C10 80AAFA60 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00C14 80AAFA64 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
|
||||
/* 00C18 80AAFA68 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00C1C 80AAFA6C AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00C20 80AAFA70 AFA60020 */ sw $a2, 0x0020($sp)
|
||||
/* 00C24 80AAFA74 14A10006 */ bne $a1, $at, .L80AAFA90
|
||||
/* 00C28 80AAFA78 AFA70024 */ sw $a3, 0x0024($sp)
|
||||
/* 00C2C 80AAFA7C 8FA50028 */ lw $a1, 0x0028($sp)
|
||||
/* 00C30 80AAFA80 3C0480AB */ lui $a0, %hi(D_80AAFB68) ## $a0 = 80AB0000
|
||||
/* 00C34 80AAFA84 2484FB68 */ addiu $a0, $a0, %lo(D_80AAFB68) ## $a0 = 80AAFB68
|
||||
/* 00C38 80AAFA88 0C0346BD */ jal Matrix_MultVec3f
|
||||
/* 00C3C 80AAFA8C 24A50038 */ addiu $a1, $a1, 0x0038 ## $a1 = 00000038
|
||||
.L80AAFA90:
|
||||
/* 00C40 80AAFA90 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00C44 80AAFA94 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00C48 80AAFA98 03E00008 */ jr $ra
|
||||
/* 00C4C 80AAFA9C 00000000 */ nop
|
@ -1,28 +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_Mm2_InitVars
|
||||
.word 0x01D40400, 0x00000019, 0x013C0000, 0x000002BC
|
||||
.word EnMm2_Init
|
||||
.word EnMm2_Destroy
|
||||
.word EnMm2_Update
|
||||
.word EnMm2_Draw
|
||||
glabel D_80AAFAC0
|
||||
.word 0x0A000939, 0x10010000, 0x00000000, 0x00000000, 0x00000000, 0x00000004, 0x00000000, 0x00010100, 0x0012003F, 0x00000000, 0x00000000
|
||||
glabel D_80AAFAEC
|
||||
.word 0x06000718, 0x3F800000, 0x00000000, 0xC0E00000, 0x06006940, 0xBF800000, 0x02000000, 0xC0E00000, 0x06006C50, 0x3F800000, 0x00000000, 0xC0E00000, 0x06006940, 0x3F800000, 0x02000000, 0xC0E00000, 0x06000468, 0x3F800000, 0x00000000, 0xC0E00000, 0x060073A0, 0x3F800000, 0x00000000, 0xC1400000, 0x06008060, 0x3F800000, 0x00000000, 0xC1400000
|
||||
glabel D_80AAFB5C
|
||||
.word 0x30F40FA0
|
||||
glabel D_80AAFB60
|
||||
.word 0x06000E30, 0x06000C30
|
||||
glabel D_80AAFB68
|
||||
.word 0x43480000, 0x44480000, 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_80AAFC10
|
||||
.incbin "baserom/ovl_En_Mm2", 0xDC0, 0x00000110
|
7
spec
7
spec
@ -2680,8 +2680,7 @@ endseg
|
||||
beginseg
|
||||
name "ovl_En_Mm2"
|
||||
include "build/src/overlays/actors/ovl_En_Mm2/z_en_mm2.o"
|
||||
include "build/data/overlays/actors/z_en_mm2.data.o"
|
||||
include "build/data/overlays/actors/z_en_mm2.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Mm2/ovl_En_Mm2_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
@ -8221,7 +8220,7 @@ beginseg
|
||||
name "syotes2_scene"
|
||||
romalign 0x1000
|
||||
include "build/assets/scenes/test_levels/syotes2/syotes2_scene.o"
|
||||
number 2
|
||||
number 2
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
@ -10238,4 +10237,4 @@ beginseg
|
||||
name "softsprite_matrix_static"
|
||||
romalign 0x1000
|
||||
include "build/baserom/softsprite_matrix_static.o"
|
||||
endseg
|
||||
endseg
|
||||
|
@ -1,4 +1,5 @@
|
||||
#include "z_en_mm2.h"
|
||||
#include "vt.h"
|
||||
|
||||
#define FLAGS 0x00000019
|
||||
|
||||
@ -8,10 +9,14 @@ void EnMm2_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnMm2_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnMm2_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnMm2_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
void func_80AAF3C0(EnMm2* this, GlobalContext* globalCtx);
|
||||
void func_80AAF57C(EnMm2* this, GlobalContext* globalCtx);
|
||||
void func_80AAF668(EnMm2* this, GlobalContext* globalCtx);
|
||||
s32 EnMm2_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* pos, Vec3s* rot, void* thisx);
|
||||
void EnMm2_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx);
|
||||
|
||||
extern UNK_TYPE D_06005E18;
|
||||
extern FlexSkeletonHeader D_06005E18;
|
||||
|
||||
/*
|
||||
const ActorInit En_Mm2_InitVars = {
|
||||
ACTOR_EN_MM2,
|
||||
ACTORCAT_NPC,
|
||||
@ -24,7 +29,7 @@ const ActorInit En_Mm2_InitVars = {
|
||||
(ActorFunc)EnMm2_Draw,
|
||||
};
|
||||
|
||||
static ColliderCylinderInit D_80AAFAC0 = {
|
||||
static ColliderCylinderInit sCylinderInit = {
|
||||
{
|
||||
COLTYPE_NONE,
|
||||
AT_NONE,
|
||||
@ -43,33 +48,282 @@ static ColliderCylinderInit D_80AAFAC0 = {
|
||||
},
|
||||
{ 18, 63, 0, { 0, 0, 0 } },
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAEE50.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAEF70.s")
|
||||
typedef struct {
|
||||
/* 0x00 */ AnimationHeader* animation;
|
||||
/* 0x04 */ f32 playSpeed;
|
||||
/* 0x08 */ u8 mode;
|
||||
/* 0x0C */ f32 morphFrames;
|
||||
} Mm2AnimationEntry; // size = 0x10
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/EnMm2_Init.s")
|
||||
static Mm2AnimationEntry sAnimations[] = {
|
||||
{ 0x06000718, 1.0f, 0, -7.0f }, { 0x06006940, -1.0f, 2, -7.0f }, { 0x06006C50, 1.0f, 0, -7.0f },
|
||||
{ 0x06006940, 1.0f, 2, -7.0f }, { 0x06000468, 1.0f, 0, -7.0f }, { 0x060073A0, 1.0f, 0, -12.0f },
|
||||
{ 0x06008060, 1.0f, 0, -12.0f },
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/EnMm2_Destroy.s")
|
||||
static InitChainEntry sInitChain[] = {
|
||||
ICHAIN_F32(uncullZoneForward, 4000, ICHAIN_STOP),
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF224.s")
|
||||
void EnMm2_ChangeAnimation(EnMm2* this, s32 animationIndex, s32* previousAnimation) {
|
||||
f32 phi_f0;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF2BC.s")
|
||||
if ((*previousAnimation < 0) || (animationIndex == *previousAnimation)) {
|
||||
phi_f0 = 0.0f;
|
||||
} else {
|
||||
phi_f0 = sAnimations[animationIndex].morphFrames;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF330.s")
|
||||
if (sAnimations[animationIndex].playSpeed >= 0.0f) {
|
||||
Animation_Change(&this->skelAnime, sAnimations[animationIndex].animation, sAnimations[animationIndex].playSpeed,
|
||||
0.0f, (f32)Animation_GetLastFrame(sAnimations[animationIndex].animation),
|
||||
sAnimations[animationIndex].mode, phi_f0);
|
||||
} else {
|
||||
Animation_Change(&this->skelAnime, sAnimations[animationIndex].animation, sAnimations[animationIndex].playSpeed,
|
||||
(f32)Animation_GetLastFrame(sAnimations[animationIndex].animation), 0.0f,
|
||||
sAnimations[animationIndex].mode, phi_f0);
|
||||
}
|
||||
*previousAnimation = animationIndex;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF3C0.s")
|
||||
void func_80AAEF70(EnMm2* this, GlobalContext* globalCtx) {
|
||||
if ((gSaveContext.eventChkInf[9] & 0xF) != 0xF) {
|
||||
this->actor.textId = 0x6086;
|
||||
} else if (gSaveContext.infTable[23] & 0x8000) {
|
||||
if (gSaveContext.eventInf[1] & 1) {
|
||||
this->actor.textId = 0x6082;
|
||||
} else if (gSaveContext.timer2State != 0) {
|
||||
this->actor.textId = 0x6076;
|
||||
} else if (HIGH_SCORE(HS_MARATHON) == 158) {
|
||||
this->actor.textId = 0x607E;
|
||||
} else {
|
||||
this->actor.textId = 0x6081;
|
||||
}
|
||||
} else if (gSaveContext.timer2State) {
|
||||
this->actor.textId = 0x6076;
|
||||
} else {
|
||||
this->actor.textId = 0x607D;
|
||||
gSaveContext.eventInf[1] &= ~1;
|
||||
HIGH_SCORE(HS_MARATHON) = 158;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF57C.s")
|
||||
void EnMm2_Init(Actor* thisx, GlobalContext* globalCtx2) {
|
||||
EnMm2* this = THIS;
|
||||
GlobalContext* globalCtx = globalCtx2;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF5EC.s")
|
||||
Actor_ProcessInitChain(&this->actor, sInitChain);
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 21.0f);
|
||||
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06005E18, NULL, this->jointTable, this->morphTable, 16);
|
||||
Animation_Change(&this->skelAnime, sAnimations[2].animation, 1.0f, 0.0f,
|
||||
Animation_GetLastFrame(sAnimations[2].animation), sAnimations[2].mode, sAnimations[2].morphFrames);
|
||||
this->previousAnimation = 2;
|
||||
Collider_InitCylinder(globalCtx, &this->collider);
|
||||
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
|
||||
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
|
||||
this->unk_1E0 = 0;
|
||||
this->actor.targetMode = 6;
|
||||
this->unk_1F4 |= 1;
|
||||
this->actor.gravity = -1.0f;
|
||||
if (this->actor.params == 1) {
|
||||
this->actionFunc = func_80AAF668;
|
||||
} else {
|
||||
func_80AAEF70(this, globalCtx);
|
||||
this->actionFunc = func_80AAF57C;
|
||||
}
|
||||
if (LINK_IS_CHILD) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
if (this->actor.params == 1) {
|
||||
if (!(gSaveContext.infTable[23] & 0x8000) || !(gSaveContext.eventInf[1] & 1)) {
|
||||
osSyncPrintf(VT_FGCOL(CYAN) " マラソン 開始されていない \n" VT_RST "\n");
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF668.s")
|
||||
void EnMm2_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnMm2* this = THIS;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/EnMm2_Update.s")
|
||||
Collider_DestroyCylinder(globalCtx, &this->collider);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/EnMm2_Draw.s")
|
||||
s32 func_80AAF224(EnMm2* this, GlobalContext* globalCtx, EnMm2ActionFunc actionFunc) {
|
||||
s16 yawDiff;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAF9D8.s")
|
||||
if (func_8002F194(&this->actor, globalCtx)) {
|
||||
this->actionFunc = actionFunc;
|
||||
return 1;
|
||||
}
|
||||
yawDiff = this->actor.yawTowardsPlayer - this->actor.shape.rot.y;
|
||||
if ((ABS(yawDiff) < 0x4301) && (this->actor.xzDistToPlayer < 100.0f)) {
|
||||
func_8002F2CC(&this->actor, globalCtx, 100.0f);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Mm2/func_80AAFA60.s")
|
||||
void func_80AAF2BC(EnMm2* this, GlobalContext* globalCtx) {
|
||||
if (this->unk_1F6 >= 61) {
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
this->unk_1F6++;
|
||||
Math_SmoothStepToF(&this->actor.speedXZ, 10.0f, 0.6f, 2.0f, 0.0f);
|
||||
}
|
||||
|
||||
void func_80AAF330(EnMm2* this, GlobalContext* globalCtx) {
|
||||
if (SkelAnime_Update(&this->skelAnime)) {
|
||||
this->actionFunc = func_80AAF2BC;
|
||||
EnMm2_ChangeAnimation(this, 0, &this->previousAnimation);
|
||||
this->unk_1E0 = 1;
|
||||
if (!(this->unk_1F4 & 2)) {
|
||||
func_80106CCC(globalCtx);
|
||||
}
|
||||
gSaveContext.timer2State = 0;
|
||||
gSaveContext.eventInf[1] &= ~1;
|
||||
}
|
||||
}
|
||||
|
||||
void func_80AAF3C0(EnMm2* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
switch (this->actor.textId) {
|
||||
case 0x607D:
|
||||
case 0x607E:
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == 4) && (func_80106BC8(globalCtx))) {
|
||||
switch (globalCtx->msgCtx.choiceIndex) {
|
||||
case 0:
|
||||
func_8010B720(globalCtx, 0x607F);
|
||||
this->actor.textId = 0x607F;
|
||||
gSaveContext.eventInf[1] |= 1;
|
||||
break;
|
||||
case 1:
|
||||
func_8010B720(globalCtx, 0x6080);
|
||||
this->actor.textId = 0x6080;
|
||||
break;
|
||||
};
|
||||
if (this->unk_1F4 & 4) {
|
||||
if (1) {}
|
||||
this->unk_1F4 &= ~4;
|
||||
HIGH_SCORE(HS_MARATHON) += 1;
|
||||
}
|
||||
}
|
||||
return;
|
||||
case 0x6081:
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && (func_80106BC8(globalCtx))) {
|
||||
this->unk_1F4 |= 4;
|
||||
HIGH_SCORE(HS_MARATHON) -= 1;
|
||||
func_8010B720(globalCtx, 0x607E);
|
||||
this->actor.textId = 0x607E;
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (func_8002F334(&this->actor, globalCtx)) {
|
||||
if (this->actor.textId == 0x607F) {
|
||||
func_80088AA0(0);
|
||||
this->actionFunc = func_80AAF57C;
|
||||
} else {
|
||||
this->actionFunc = func_80AAF57C;
|
||||
}
|
||||
this->actionFunc = func_80AAF57C;
|
||||
func_80AAEF70(this, globalCtx);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80AAF57C(EnMm2* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
func_80AAEF70(this, globalCtx);
|
||||
if ((func_80AAF224(this, globalCtx, func_80AAF3C0)) && (this->actor.textId == 0x607D)) {
|
||||
gSaveContext.infTable[23] |= 0x8000;
|
||||
}
|
||||
}
|
||||
|
||||
void func_80AAF5EC(EnMm2* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && (func_80106BC8(globalCtx))) {
|
||||
this->unk_1F4 &= ~1;
|
||||
EnMm2_ChangeAnimation(this, 3, &this->previousAnimation);
|
||||
this->actionFunc = func_80AAF330;
|
||||
}
|
||||
}
|
||||
|
||||
void func_80AAF668(EnMm2* this, GlobalContext* globalCtx) {
|
||||
this->actor.world.rot.y = -0x3E80;
|
||||
this->actor.shape.rot.y = this->actor.world.rot.y;
|
||||
SkelAnime_Update(&this->skelAnime);
|
||||
if (((void)0, gSaveContext.timer2Value) < HIGH_SCORE(HS_MARATHON)) {
|
||||
this->actor.textId = 0x6085;
|
||||
} else {
|
||||
this->actor.textId = 0x6084;
|
||||
}
|
||||
if (func_80AAF224(this, globalCtx, func_80AAF5EC)) {
|
||||
this->unk_1F6 = 0;
|
||||
if (((void)0, gSaveContext.timer2Value) < HIGH_SCORE(HS_MARATHON)) {
|
||||
HIGH_SCORE(HS_MARATHON) = gSaveContext.timer2Value;
|
||||
}
|
||||
} else {
|
||||
LOG_HEX("((z_common_data.event_inf[1]) & (0x0001))", gSaveContext.eventInf[1] & 1, "../z_en_mm2.c", 541);
|
||||
if (!(gSaveContext.eventInf[1] & 1)) {
|
||||
this->unk_1F4 |= 2;
|
||||
this->unk_1F4 &= ~1;
|
||||
EnMm2_ChangeAnimation(this, 3, &this->previousAnimation);
|
||||
this->actionFunc = func_80AAF330;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnMm2_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnMm2* this = THIS;
|
||||
s32 pad;
|
||||
|
||||
if (this->unk_1F4 & 1) {
|
||||
func_80038290(globalCtx, &this->actor, &this->unk_1E8, &this->unk_1EE, this->actor.focus.pos);
|
||||
} else {
|
||||
Math_SmoothStepToS(&this->unk_1E8.x, 0, 6, 6200, 100);
|
||||
Math_SmoothStepToS(&this->unk_1E8.y, 0, 6, 6200, 100);
|
||||
Math_SmoothStepToS(&this->unk_1EE.x, 0, 6, 6200, 100);
|
||||
Math_SmoothStepToS(&this->unk_1EE.y, 0, 6, 6200, 100);
|
||||
}
|
||||
this->actionFunc(this, globalCtx);
|
||||
Collider_UpdateCylinder(&this->actor, &this->collider);
|
||||
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
Actor_MoveForward(&this->actor);
|
||||
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4);
|
||||
}
|
||||
|
||||
void EnMm2_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
static UNK_PTR D_80AAFB60[] = { 0x06000E30, 0x06000C30 };
|
||||
EnMm2* this = THIS;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_mm2.c", 634);
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(D_80AAFB60[this->unk_1E0]));
|
||||
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, this->skelAnime.dListCount,
|
||||
EnMm2_OverrideLimbDraw, EnMm2_PostLimbDraw, this);
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_mm2.c", 654);
|
||||
}
|
||||
|
||||
s32 EnMm2_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* pos, Vec3s* rot, void* thisx) {
|
||||
EnMm2* this = THIS;
|
||||
|
||||
switch (limbIndex) {
|
||||
case 8:
|
||||
rot->x += this->unk_1EE.y;
|
||||
rot->y -= this->unk_1EE.x;
|
||||
break;
|
||||
case 15:
|
||||
rot->x += this->unk_1E8.y;
|
||||
rot->z += this->unk_1E8.x + 0xFA0;
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnMm2_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
|
||||
static Vec3f D_80AAFB68 = { 200.0f, 800.0f, 0.0f };
|
||||
EnMm2* this = THIS;
|
||||
|
||||
if (limbIndex == 15) {
|
||||
Matrix_MultVec3f(&D_80AAFB68, &this->actor.focus.pos);
|
||||
}
|
||||
}
|
||||
|
@ -6,9 +6,22 @@
|
||||
|
||||
struct EnMm2;
|
||||
|
||||
typedef void (*EnMm2ActionFunc)(struct EnMm2*, GlobalContext*);
|
||||
|
||||
typedef struct EnMm2 {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x170];
|
||||
/* 0x014C */ SkelAnime skelAnime;
|
||||
/* 0x0190 */ EnMm2ActionFunc actionFunc;
|
||||
/* 0x0194 */ ColliderCylinder collider;
|
||||
/* 0x01E0 */ s32 unk_1E0;
|
||||
/* 0x01E4 */ char unk_1E4[0x4];
|
||||
/* 0x01E8 */ Vec3s unk_1E8;
|
||||
/* 0x01EE */ Vec3s unk_1EE;
|
||||
/* 0x01F4 */ u16 unk_1F4;
|
||||
/* 0x01F6 */ s16 unk_1F6;
|
||||
/* 0x01F8 */ s32 previousAnimation;
|
||||
/* 0x01FC */ Vec3s jointTable[16];
|
||||
/* 0x025C */ Vec3s morphTable[16];
|
||||
} EnMm2; // size = 0x02BC
|
||||
|
||||
extern const ActorInit En_Mm2_InitVars;
|
||||
|
Loading…
Reference in New Issue
Block a user