1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Decompiled ovl_En_Rd (1 nonmatching) (#390)

* Initial progress

* Broken but almost

* Final attempt at the last function

* Fixing struct def

* PR updates

* PR stuff

* baby commit

* PR comments

* Error handling
This commit is contained in:
Ethan Roseman 2020-09-26 21:16:28 -04:00 committed by GitHub
parent bdbd79296e
commit 08bf25fca7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
41 changed files with 1077 additions and 2678 deletions

View File

@ -1,19 +0,0 @@
glabel EnRd_Destroy
/* 001F0 80AE25F0 3C028016 */ lui $v0, %hi(gSaveContext)
/* 001F4 80AE25F4 2442E660 */ addiu $v0, %lo(gSaveContext)
/* 001F8 80AE25F8 844E1422 */ lh $t6, 0x1422($v0) ## 8015FA82
/* 001FC 80AE25FC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00200 80AE2600 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00204 80AE2604 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00208 80AE2608 11C00002 */ beq $t6, $zero, .L80AE2614
/* 0020C 80AE260C 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00210 80AE2610 A4401422 */ sh $zero, 0x1422($v0) ## 8015FA82
.L80AE2614:
/* 00214 80AE2614 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00218 80AE2618 0C0170EB */ jal Collider_DestroyCylinder
/* 0021C 80AE261C 24C50320 */ addiu $a1, $a2, 0x0320 ## $a1 = 00000320
/* 00220 80AE2620 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00224 80AE2624 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00228 80AE2628 03E00008 */ jr $ra
/* 0022C 80AE262C 00000000 */ nop

View File

@ -1,155 +0,0 @@
.rdata
glabel D_80AE4970
.asciz "../z_en_rd.c"
.balign 4
glabel D_80AE4980
.asciz "../z_en_rd.c"
.balign 4
.text
glabel EnRd_Draw
/* 02268 80AE4668 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 0226C 80AE466C AFBF0034 */ sw $ra, 0x0034($sp)
/* 02270 80AE4670 AFB20030 */ sw $s2, 0x0030($sp)
/* 02274 80AE4674 AFB1002C */ sw $s1, 0x002C($sp)
/* 02278 80AE4678 AFB00028 */ sw $s0, 0x0028($sp)
/* 0227C 80AE467C 8C980024 */ lw $t8, 0x0024($a0) ## 00000024
/* 02280 80AE4680 27AE0064 */ addiu $t6, $sp, 0x0064 ## $t6 = FFFFFFEC
/* 02284 80AE4684 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 02288 80AE4688 ADD80000 */ sw $t8, 0x0000($t6) ## FFFFFFEC
/* 0228C 80AE468C 8C8F0028 */ lw $t7, 0x0028($a0) ## 00000028
/* 02290 80AE4690 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 02294 80AE4694 3C0680AE */ lui $a2, %hi(D_80AE4970) ## $a2 = 80AE0000
/* 02298 80AE4698 ADCF0004 */ sw $t7, 0x0004($t6) ## FFFFFFF0
/* 0229C 80AE469C 8C98002C */ lw $t8, 0x002C($a0) ## 0000002C
/* 022A0 80AE46A0 27A40050 */ addiu $a0, $sp, 0x0050 ## $a0 = FFFFFFD8
/* 022A4 80AE46A4 24C64970 */ addiu $a2, $a2, %lo(D_80AE4970) ## $a2 = 80AE4970
/* 022A8 80AE46A8 ADD80008 */ sw $t8, 0x0008($t6) ## FFFFFFF4
/* 022AC 80AE46AC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 022B0 80AE46B0 2407068F */ addiu $a3, $zero, 0x068F ## $a3 = 0000068F
/* 022B4 80AE46B4 0C031AB1 */ jal Graph_OpenDisps
/* 022B8 80AE46B8 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 022BC 80AE46BC 86190314 */ lh $t9, 0x0314($s0) ## 00000314
/* 022C0 80AE46C0 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
/* 022C4 80AE46C4 17210044 */ bne $t9, $at, .L80AE47D8
/* 022C8 80AE46C8 00000000 */ nop
/* 022CC 80AE46CC 0C024F46 */ jal func_80093D18
/* 022D0 80AE46D0 8E440000 */ lw $a0, 0x0000($s2) ## 00000000
/* 022D4 80AE46D4 8E2302C0 */ lw $v1, 0x02C0($s1) ## 000002C0
/* 022D8 80AE46D8 3C09FB00 */ lui $t1, 0xFB00 ## $t1 = FB000000
/* 022DC 80AE46DC 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
/* 022E0 80AE46E0 24680008 */ addiu $t0, $v1, 0x0008 ## $t0 = 00000008
/* 022E4 80AE46E4 AE2802C0 */ sw $t0, 0x02C0($s1) ## 000002C0
/* 022E8 80AE46E8 AC690000 */ sw $t1, 0x0000($v1) ## 00000000
/* 022EC 80AE46EC 860A0314 */ lh $t2, 0x0314($s0) ## 00000314
/* 022F0 80AE46F0 3C0E8011 */ lui $t6, %hi(D_80116280+0x10)
/* 022F4 80AE46F4 25CE6290 */ addiu $t6, %lo(D_80116280+0x10)
/* 022F8 80AE46F8 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000000
/* 022FC 80AE46FC AC6B0004 */ sw $t3, 0x0004($v1) ## 00000004
/* 02300 80AE4700 8E2302C0 */ lw $v1, 0x02C0($s1) ## 000002C0
/* 02304 80AE4704 35AD0020 */ ori $t5, $t5, 0x0020 ## $t5 = DB060020
/* 02308 80AE4708 3C0F80AE */ lui $t7, %hi(func_80AE44C4) ## $t7 = 80AE0000
/* 0230C 80AE470C 246C0008 */ addiu $t4, $v1, 0x0008 ## $t4 = 00000008
/* 02310 80AE4710 AE2C02C0 */ sw $t4, 0x02C0($s1) ## 000002C0
/* 02314 80AE4714 AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004
/* 02318 80AE4718 AC6D0000 */ sw $t5, 0x0000($v1) ## 00000000
/* 0231C 80AE471C 9207018A */ lbu $a3, 0x018A($s0) ## 0000018A
/* 02320 80AE4720 8E0601A8 */ lw $a2, 0x01A8($s0) ## 000001A8
/* 02324 80AE4724 8E05018C */ lw $a1, 0x018C($s0) ## 0000018C
/* 02328 80AE4728 3C1880AE */ lui $t8, %hi(func_80AE4520) ## $t8 = 80AE0000
/* 0232C 80AE472C 27184520 */ addiu $t8, $t8, %lo(func_80AE4520) ## $t8 = 80AE4520
/* 02330 80AE4730 25EF44C4 */ addiu $t7, $t7, %lo(func_80AE44C4) ## $t7 = 80AE44C4
/* 02334 80AE4734 AFAF0010 */ sw $t7, 0x0010($sp)
/* 02338 80AE4738 AFB80014 */ sw $t8, 0x0014($sp)
/* 0233C 80AE473C AFB00018 */ sw $s0, 0x0018($sp)
/* 02340 80AE4740 8E3902C0 */ lw $t9, 0x02C0($s1) ## 000002C0
/* 02344 80AE4744 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 02348 80AE4748 0C0289CF */ jal SkelAnime_DrawSV2
/* 0234C 80AE474C AFB9001C */ sw $t9, 0x001C($sp)
/* 02350 80AE4750 3C0580AE */ lui $a1, %hi(D_80AE4958) ## $a1 = 80AE0000
/* 02354 80AE4754 AE2202C0 */ sw $v0, 0x02C0($s1) ## 000002C0
/* 02358 80AE4758 24A54958 */ addiu $a1, $a1, %lo(D_80AE4958) ## $a1 = 80AE4958
/* 0235C 80AE475C 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFEC
/* 02360 80AE4760 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 02364 80AE4764 0C00CF0C */ jal func_80033C30
/* 02368 80AE4768 02403825 */ or $a3, $s2, $zero ## $a3 = 00000000
/* 0236C 80AE476C 9208031A */ lbu $t0, 0x031A($s0) ## 0000031A
/* 02370 80AE4770 1100003F */ beq $t0, $zero, .L80AE4870
/* 02374 80AE4774 00000000 */ nop
/* 02378 80AE4778 920B031A */ lbu $t3, 0x031A($s0) ## 0000031A
/* 0237C 80AE477C 92090114 */ lbu $t1, 0x0114($s0) ## 00000114
/* 02380 80AE4780 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 02384 80AE4784 256CFFFF */ addiu $t4, $t3, 0xFFFF ## $t4 = FFFFFFFF
/* 02388 80AE4788 318300FF */ andi $v1, $t4, 0x00FF ## $v1 = 000000FF
/* 0238C 80AE478C 306D0003 */ andi $t5, $v1, 0x0003 ## $t5 = 00000003
/* 02390 80AE4790 252A0001 */ addiu $t2, $t1, 0x0001 ## $t2 = 00000001
/* 02394 80AE4794 A20A0114 */ sb $t2, 0x0114($s0) ## 00000114
/* 02398 80AE4798 15A00035 */ bne $t5, $zero, .L80AE4870
/* 0239C 80AE479C A20C031A */ sb $t4, 0x031A($s0) ## 0000031A
/* 023A0 80AE47A0 00031083 */ sra $v0, $v1, 2
/* 023A4 80AE47A4 00027080 */ sll $t6, $v0, 2
/* 023A8 80AE47A8 01C27023 */ subu $t6, $t6, $v0
/* 023AC 80AE47AC 000E7040 */ sll $t6, $t6, 1
/* 023B0 80AE47B0 020E3021 */ addu $a2, $s0, $t6
/* 023B4 80AE47B4 24C6014C */ addiu $a2, $a2, 0x014C ## $a2 = 0000014C
/* 023B8 80AE47B8 AFA20018 */ sw $v0, 0x0018($sp)
/* 023BC 80AE47BC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 023C0 80AE47C0 2407004B */ addiu $a3, $zero, 0x004B ## $a3 = 0000004B
/* 023C4 80AE47C4 AFA00010 */ sw $zero, 0x0010($sp)
/* 023C8 80AE47C8 0C00A953 */ jal func_8002A54C
/* 023CC 80AE47CC AFA00014 */ sw $zero, 0x0014($sp)
/* 023D0 80AE47D0 10000027 */ beq $zero, $zero, .L80AE4870
/* 023D4 80AE47D4 00000000 */ nop
.L80AE47D8:
/* 023D8 80AE47D8 0C024F61 */ jal func_80093D84
/* 023DC 80AE47DC 8E440000 */ lw $a0, 0x0000($s2) ## 00000000
/* 023E0 80AE47E0 8E2302D0 */ lw $v1, 0x02D0($s1) ## 000002D0
/* 023E4 80AE47E4 3C18FB00 */ lui $t8, 0xFB00 ## $t8 = FB000000
/* 023E8 80AE47E8 3C0ADB06 */ lui $t2, 0xDB06 ## $t2 = DB060000
/* 023EC 80AE47EC 246F0008 */ addiu $t7, $v1, 0x0008 ## $t7 = 00000008
/* 023F0 80AE47F0 AE2F02D0 */ sw $t7, 0x02D0($s1) ## 000002D0
/* 023F4 80AE47F4 AC780000 */ sw $t8, 0x0000($v1) ## 00000000
/* 023F8 80AE47F8 86190314 */ lh $t9, 0x0314($s0) ## 00000314
/* 023FC 80AE47FC 3C0B8011 */ lui $t3, %hi(D_80116280)
/* 02400 80AE4800 256B6280 */ addiu $t3, %lo(D_80116280)
/* 02404 80AE4804 332800FF */ andi $t0, $t9, 0x00FF ## $t0 = 00000000
/* 02408 80AE4808 AC680004 */ sw $t0, 0x0004($v1) ## 00000004
/* 0240C 80AE480C 8E2302D0 */ lw $v1, 0x02D0($s1) ## 000002D0
/* 02410 80AE4810 354A0020 */ ori $t2, $t2, 0x0020 ## $t2 = DB060020
/* 02414 80AE4814 3C0C80AE */ lui $t4, %hi(func_80AE44C4) ## $t4 = 80AE0000
/* 02418 80AE4818 24690008 */ addiu $t1, $v1, 0x0008 ## $t1 = 00000008
/* 0241C 80AE481C AE2902D0 */ sw $t1, 0x02D0($s1) ## 000002D0
/* 02420 80AE4820 AC6B0004 */ sw $t3, 0x0004($v1) ## 00000004
/* 02424 80AE4824 AC6A0000 */ sw $t2, 0x0000($v1) ## 00000000
/* 02428 80AE4828 9207018A */ lbu $a3, 0x018A($s0) ## 0000018A
/* 0242C 80AE482C 8E0601A8 */ lw $a2, 0x01A8($s0) ## 000001A8
/* 02430 80AE4830 8E05018C */ lw $a1, 0x018C($s0) ## 0000018C
/* 02434 80AE4834 258C44C4 */ addiu $t4, $t4, %lo(func_80AE44C4) ## $t4 = 80AE44C4
/* 02438 80AE4838 AFAC0010 */ sw $t4, 0x0010($sp)
/* 0243C 80AE483C AFB00018 */ sw $s0, 0x0018($sp)
/* 02440 80AE4840 AFA00014 */ sw $zero, 0x0014($sp)
/* 02444 80AE4844 8E2D02D0 */ lw $t5, 0x02D0($s1) ## 000002D0
/* 02448 80AE4848 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 0244C 80AE484C 0C0289CF */ jal SkelAnime_DrawSV2
/* 02450 80AE4850 AFAD001C */ sw $t5, 0x001C($sp)
/* 02454 80AE4854 AE2202D0 */ sw $v0, 0x02D0($s1) ## 000002D0
/* 02458 80AE4858 3C0580AE */ lui $a1, %hi(D_80AE4958) ## $a1 = 80AE0000
/* 0245C 80AE485C 24A54958 */ addiu $a1, $a1, %lo(D_80AE4958) ## $a1 = 80AE4958
/* 02460 80AE4860 92060315 */ lbu $a2, 0x0315($s0) ## 00000315
/* 02464 80AE4864 27A40064 */ addiu $a0, $sp, 0x0064 ## $a0 = FFFFFFEC
/* 02468 80AE4868 0C00CF0C */ jal func_80033C30
/* 0246C 80AE486C 02403825 */ or $a3, $s2, $zero ## $a3 = 00000000
.L80AE4870:
/* 02470 80AE4870 3C0680AE */ lui $a2, %hi(D_80AE4980) ## $a2 = 80AE0000
/* 02474 80AE4874 24C64980 */ addiu $a2, $a2, %lo(D_80AE4980) ## $a2 = 80AE4980
/* 02478 80AE4878 27A40050 */ addiu $a0, $sp, 0x0050 ## $a0 = FFFFFFD8
/* 0247C 80AE487C 8E450000 */ lw $a1, 0x0000($s2) ## 00000000
/* 02480 80AE4880 0C031AD5 */ jal Graph_CloseDisps
/* 02484 80AE4884 240706C7 */ addiu $a3, $zero, 0x06C7 ## $a3 = 000006C7
/* 02488 80AE4888 8FBF0034 */ lw $ra, 0x0034($sp)
/* 0248C 80AE488C 8FB00028 */ lw $s0, 0x0028($sp)
/* 02490 80AE4890 8FB1002C */ lw $s1, 0x002C($sp)
/* 02494 80AE4894 8FB20030 */ lw $s2, 0x0030($sp)
/* 02498 80AE4898 03E00008 */ jr $ra
/* 0249C 80AE489C 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View File

@ -1,135 +0,0 @@
glabel EnRd_Init
/* 00008 80AE2408 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 0000C 80AE240C AFA50044 */ sw $a1, 0x0044($sp)
/* 00010 80AE2410 AFBF002C */ sw $ra, 0x002C($sp)
/* 00014 80AE2414 AFB00028 */ sw $s0, 0x0028($sp)
/* 00018 80AE2418 3C0580AE */ lui $a1, %hi(D_80AE490C) ## $a1 = 80AE0000
/* 0001C 80AE241C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00020 80AE2420 0C01E037 */ jal Actor_ProcessInitChain
/* 00024 80AE2424 24A5490C */ addiu $a1, $a1, %lo(D_80AE490C) ## $a1 = 80AE490C
/* 00028 80AE2428 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 0002C 80AE242C 3C0E80AE */ lui $t6, %hi(D_80AE48EC) ## $t6 = 80AE0000
/* 00030 80AE2430 25CE48EC */ addiu $t6, $t6, %lo(D_80AE48EC) ## $t6 = 80AE48EC
/* 00034 80AE2434 44050000 */ mfc1 $a1, $f0
/* 00038 80AE2438 44070000 */ mfc1 $a3, $f0
/* 0003C 80AE243C A200001F */ sb $zero, 0x001F($s0) ## 0000001F
/* 00040 80AE2440 AE0E0098 */ sw $t6, 0x0098($s0) ## 00000098
/* 00044 80AE2444 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 00048 80AE2448 0C00AC78 */ jal ActorShape_Init
/* 0004C 80AE244C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00050 80AE2450 8E180028 */ lw $t8, 0x0028($s0) ## 00000028
/* 00054 80AE2454 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 00058 80AE2458 8E190024 */ lw $t9, 0x0024($s0) ## 00000024
/* 0005C 80AE245C AE18003C */ sw $t8, 0x003C($s0) ## 0000003C
/* 00060 80AE2460 C604003C */ lwc1 $f4, 0x003C($s0) ## 0000003C
/* 00064 80AE2464 44813000 */ mtc1 $at, $f6 ## $f6 = 50.00
/* 00068 80AE2468 A600030E */ sh $zero, 0x030E($s0) ## 0000030E
/* 0006C 80AE246C 860F030E */ lh $t7, 0x030E($s0) ## 0000030E
/* 00070 80AE2470 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 00074 80AE2474 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00078 80AE2478 46062200 */ add.s $f8, $f4, $f6
/* 0007C 80AE247C AE190038 */ sw $t9, 0x0038($s0) ## 00000038
/* 00080 80AE2480 8E19002C */ lw $t9, 0x002C($s0) ## 0000002C
/* 00084 80AE2484 240A00FF */ addiu $t2, $zero, 0x00FF ## $t2 = 000000FF
/* 00088 80AE2488 A60F0310 */ sh $t7, 0x0310($s0) ## 00000310
/* 0008C 80AE248C 318DFF00 */ andi $t5, $t4, 0xFF00 ## $t5 = 00000000
/* 00090 80AE2490 240800FE */ addiu $t0, $zero, 0x00FE ## $t0 = 000000FE
/* 00094 80AE2494 24090008 */ addiu $t1, $zero, 0x0008 ## $t1 = 00000008
/* 00098 80AE2498 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 000000FF
/* 0009C 80AE249C 000D7203 */ sra $t6, $t5, 8
/* 000A0 80AE24A0 304F0080 */ andi $t7, $v0, 0x0080 ## $t7 = 00000000
/* 000A4 80AE24A4 E608003C */ swc1 $f8, 0x003C($s0) ## 0000003C
/* 000A8 80AE24A8 A20800AE */ sb $t0, 0x00AE($s0) ## 000000AE
/* 000AC 80AE24AC A20900AF */ sb $t1, 0x00AF($s0) ## 000000AF
/* 000B0 80AE24B0 A60B0314 */ sh $t3, 0x0314($s0) ## 00000314
/* 000B4 80AE24B4 A20A031D */ sb $t2, 0x031D($s0) ## 0000031D
/* 000B8 80AE24B8 A60E0312 */ sh $t6, 0x0312($s0) ## 00000312
/* 000BC 80AE24BC 11E00004 */ beq $t7, $zero, .L80AE24D0
/* 000C0 80AE24C0 AE190040 */ sw $t9, 0x0040($s0) ## 00000040
/* 000C4 80AE24C4 3458FF00 */ ori $t8, $v0, 0xFF00 ## $t8 = 0000FF00
/* 000C8 80AE24C8 10000003 */ beq $zero, $zero, .L80AE24D8
/* 000CC 80AE24CC A618001C */ sh $t8, 0x001C($s0) ## 0000001C
.L80AE24D0:
/* 000D0 80AE24D0 305900FF */ andi $t9, $v0, 0x00FF ## $t9 = 00000000
/* 000D4 80AE24D4 A619001C */ sh $t9, 0x001C($s0) ## 0000001C
.L80AE24D8:
/* 000D8 80AE24D8 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 000DC 80AE24DC 8FA40044 */ lw $a0, 0x0044($sp)
/* 000E0 80AE24E0 26050188 */ addiu $a1, $s0, 0x0188 ## $a1 = 00000188
/* 000E4 80AE24E4 2901FFFF */ slti $at, $t0, 0xFFFF
/* 000E8 80AE24E8 14200012 */ bne $at, $zero, .L80AE2534
/* 000EC 80AE24EC 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
/* 000F0 80AE24F0 26050188 */ addiu $a1, $s0, 0x0188 ## $a1 = 00000188
/* 000F4 80AE24F4 3C060601 */ lui $a2, 0x0601 ## $a2 = 06010000
/* 000F8 80AE24F8 3C070601 */ lui $a3, 0x0601 ## $a3 = 06010000
/* 000FC 80AE24FC 260901CC */ addiu $t1, $s0, 0x01CC ## $t1 = 000001CC
/* 00100 80AE2500 260A0268 */ addiu $t2, $s0, 0x0268 ## $t2 = 00000268
/* 00104 80AE2504 240B001A */ addiu $t3, $zero, 0x001A ## $t3 = 0000001A
/* 00108 80AE2508 AFAB0018 */ sw $t3, 0x0018($sp)
/* 0010C 80AE250C AFAA0014 */ sw $t2, 0x0014($sp)
/* 00110 80AE2510 AFA90010 */ sw $t1, 0x0010($sp)
/* 00114 80AE2514 24E787D0 */ addiu $a3, $a3, 0x87D0 ## $a3 = 060087D0
/* 00118 80AE2518 24C6E778 */ addiu $a2, $a2, 0xE778 ## $a2 = 0600E778
/* 0011C 80AE251C AFA50038 */ sw $a1, 0x0038($sp)
/* 00120 80AE2520 0C0291BE */ jal SkelAnime_InitSV
/* 00124 80AE2524 8FA40044 */ lw $a0, 0x0044($sp)
/* 00128 80AE2528 240C002A */ addiu $t4, $zero, 0x002A ## $t4 = 0000002A
/* 0012C 80AE252C 1000000E */ beq $zero, $zero, .L80AE2568
/* 00130 80AE2530 A20C0117 */ sb $t4, 0x0117($s0) ## 00000117
.L80AE2534:
/* 00134 80AE2534 3C070601 */ lui $a3, 0x0601 ## $a3 = 06010000
/* 00138 80AE2538 260D01CC */ addiu $t5, $s0, 0x01CC ## $t5 = 000001CC
/* 0013C 80AE253C 260E0268 */ addiu $t6, $s0, 0x0268 ## $t6 = 00000268
/* 00140 80AE2540 240F001A */ addiu $t7, $zero, 0x001A ## $t7 = 0000001A
/* 00144 80AE2544 AFAF0018 */ sw $t7, 0x0018($sp)
/* 00148 80AE2548 AFAE0014 */ sw $t6, 0x0014($sp)
/* 0014C 80AE254C AFAD0010 */ sw $t5, 0x0010($sp)
/* 00150 80AE2550 24E787D0 */ addiu $a3, $a3, 0x87D0 ## $a3 = 060087D0
/* 00154 80AE2554 24C63DD8 */ addiu $a2, $a2, 0x3DD8 ## $a2 = 00003DD8
/* 00158 80AE2558 0C0291BE */ jal SkelAnime_InitSV
/* 0015C 80AE255C AFA50038 */ sw $a1, 0x0038($sp)
/* 00160 80AE2560 2418002D */ addiu $t8, $zero, 0x002D ## $t8 = 0000002D
/* 00164 80AE2564 A2180117 */ sb $t8, 0x0117($s0) ## 00000117
.L80AE2568:
/* 00168 80AE2568 26050320 */ addiu $a1, $s0, 0x0320 ## $a1 = 00000320
/* 0016C 80AE256C AFA50034 */ sw $a1, 0x0034($sp)
/* 00170 80AE2570 0C0170D9 */ jal Collider_InitCylinder
/* 00174 80AE2574 8FA40044 */ lw $a0, 0x0044($sp)
/* 00178 80AE2578 3C0780AE */ lui $a3, %hi(D_80AE48C0) ## $a3 = 80AE0000
/* 0017C 80AE257C 8FA50034 */ lw $a1, 0x0034($sp)
/* 00180 80AE2580 24E748C0 */ addiu $a3, $a3, %lo(D_80AE48C0) ## $a3 = 80AE48C0
/* 00184 80AE2584 8FA40044 */ lw $a0, 0x0044($sp)
/* 00188 80AE2588 0C01712B */ jal Collider_SetCylinder
/* 0018C 80AE258C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00190 80AE2590 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 00194 80AE2594 2B21FFFE */ slti $at, $t9, 0xFFFE
/* 00198 80AE2598 14200005 */ bne $at, $zero, .L80AE25B0
/* 0019C 80AE259C 00000000 */ nop
/* 001A0 80AE25A0 0C2B89A7 */ jal func_80AE269C
/* 001A4 80AE25A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 001A8 80AE25A8 10000003 */ beq $zero, $zero, .L80AE25B8
/* 001AC 80AE25AC 00000000 */ nop
.L80AE25B0:
/* 001B0 80AE25B0 0C2B8A5C */ jal func_80AE2970
/* 001B4 80AE25B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80AE25B8:
/* 001B8 80AE25B8 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 001BC 80AE25BC 8FA40038 */ lw $a0, 0x0038($sp)
/* 001C0 80AE25C0 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 001C4 80AE25C4 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 001C8 80AE25C8 55010005 */ bnel $t0, $at, .L80AE25E0
/* 001CC 80AE25CC 8FBF002C */ lw $ra, 0x002C($sp)
/* 001D0 80AE25D0 8E090004 */ lw $t1, 0x0004($s0) ## 00000004
/* 001D4 80AE25D4 352A0080 */ ori $t2, $t1, 0x0080 ## $t2 = 00000080
/* 001D8 80AE25D8 AE0A0004 */ sw $t2, 0x0004($s0) ## 00000004
/* 001DC 80AE25DC 8FBF002C */ lw $ra, 0x002C($sp)
.L80AE25E0:
/* 001E0 80AE25E0 8FB00028 */ lw $s0, 0x0028($sp)
/* 001E4 80AE25E4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 001E8 80AE25E8 03E00008 */ jr $ra
/* 001EC 80AE25EC 00000000 */ nop

View File

@ -1,138 +0,0 @@
glabel EnRd_Update
/* 01EDC 80AE42DC 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 01EE0 80AE42E0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01EE4 80AE42E4 AFB00020 */ sw $s0, 0x0020($sp)
/* 01EE8 80AE42E8 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44
/* 01EEC 80AE42EC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01EF0 80AE42F0 AFA50044 */ sw $a1, 0x0044($sp)
/* 01EF4 80AE42F4 0C2B9045 */ jal func_80AE4114
/* 01EF8 80AE42F8 AFAE0034 */ sw $t6, 0x0034($sp)
/* 01EFC 80AE42FC 3C028016 */ lui $v0, %hi(gSaveContext)
/* 01F00 80AE4300 2442E660 */ addiu $v0, %lo(gSaveContext)
/* 01F04 80AE4304 844F1422 */ lh $t7, 0x1422($v0) ## 8015FA82
/* 01F08 80AE4308 51E00006 */ beql $t7, $zero, .L80AE4324
/* 01F0C 80AE430C 9202031C */ lbu $v0, 0x031C($s0) ## 0000031C
/* 01F10 80AE4310 92180318 */ lbu $t8, 0x0318($s0) ## 00000318
/* 01F14 80AE4314 57000003 */ bnel $t8, $zero, .L80AE4324
/* 01F18 80AE4318 9202031C */ lbu $v0, 0x031C($s0) ## 0000031C
/* 01F1C 80AE431C A4401422 */ sh $zero, 0x1422($v0) ## 8015FA82
/* 01F20 80AE4320 9202031C */ lbu $v0, 0x031C($s0) ## 0000031C
.L80AE4324:
/* 01F24 80AE4324 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
/* 01F28 80AE4328 50410038 */ beql $v0, $at, .L80AE440C
/* 01F2C 80AE432C 8E0B0028 */ lw $t3, 0x0028($s0) ## 00000028
/* 01F30 80AE4330 9219031B */ lbu $t9, 0x031B($s0) ## 0000031B
/* 01F34 80AE4334 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
/* 01F38 80AE4338 17210003 */ bne $t9, $at, .L80AE4348
/* 01F3C 80AE433C 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
/* 01F40 80AE4340 50410032 */ beql $v0, $at, .L80AE440C
/* 01F44 80AE4344 8E0B0028 */ lw $t3, 0x0028($s0) ## 00000028
.L80AE4348:
/* 01F48 80AE4348 92020306 */ lbu $v0, 0x0306($s0) ## 00000306
/* 01F4C 80AE434C 10400002 */ beq $v0, $zero, .L80AE4358
/* 01F50 80AE4350 2448FFFF */ addiu $t0, $v0, 0xFFFF ## $t0 = 8015E65F
/* 01F54 80AE4354 A2080306 */ sb $t0, 0x0306($s0) ## 00000306
.L80AE4358:
/* 01F58 80AE4358 8E190308 */ lw $t9, 0x0308($s0) ## 00000308
/* 01F5C 80AE435C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01F60 80AE4360 8FA50044 */ lw $a1, 0x0044($sp)
/* 01F64 80AE4364 0320F809 */ jalr $ra, $t9
/* 01F68 80AE4368 00000000 */ nop
/* 01F6C 80AE436C 9202031B */ lbu $v0, 0x031B($s0) ## 0000031B
/* 01F70 80AE4370 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 01F74 80AE4374 5041000B */ beql $v0, $at, .L80AE43A4
/* 01F78 80AE4378 860900B4 */ lh $t1, 0x00B4($s0) ## 000000B4
/* 01F7C 80AE437C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01F80 80AE4380 C6060068 */ lwc1 $f6, 0x0068($s0) ## 00000068
/* 01F84 80AE4384 46062032 */ c.eq.s $f4, $f6
/* 01F88 80AE4388 00000000 */ nop
/* 01F8C 80AE438C 45030005 */ bc1tl .L80AE43A4
/* 01F90 80AE4390 860900B4 */ lh $t1, 0x00B4($s0) ## 000000B4
/* 01F94 80AE4394 0C00B638 */ jal Actor_MoveForward
/* 01F98 80AE4398 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01F9C 80AE439C 9202031B */ lbu $v0, 0x031B($s0) ## 0000031B
/* 01FA0 80AE43A0 860900B4 */ lh $t1, 0x00B4($s0) ## 000000B4
.L80AE43A4:
/* 01FA4 80AE43A4 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 01FA8 80AE43A8 55200013 */ bnel $t1, $zero, .L80AE43F8
/* 01FAC 80AE43AC 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
/* 01FB0 80AE43B0 50410011 */ beql $v0, $at, .L80AE43F8
/* 01FB4 80AE43B4 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
/* 01FB8 80AE43B8 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
/* 01FBC 80AE43BC C60A0068 */ lwc1 $f10, 0x0068($s0) ## 00000068
/* 01FC0 80AE43C0 8FA40044 */ lw $a0, 0x0044($sp)
/* 01FC4 80AE43C4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01FC8 80AE43C8 460A4032 */ c.eq.s $f8, $f10
/* 01FCC 80AE43CC 3C0641F0 */ lui $a2, 0x41F0 ## $a2 = 41F00000
/* 01FD0 80AE43D0 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
/* 01FD4 80AE43D4 3C01420C */ lui $at, 0x420C ## $at = 420C0000
/* 01FD8 80AE43D8 45010006 */ bc1t .L80AE43F4
/* 01FDC 80AE43DC 240A001D */ addiu $t2, $zero, 0x001D ## $t2 = 0000001D
/* 01FE0 80AE43E0 44818000 */ mtc1 $at, $f16 ## $f16 = 35.00
/* 01FE4 80AE43E4 AFAA0014 */ sw $t2, 0x0014($sp)
/* 01FE8 80AE43E8 0C00B92D */ jal func_8002E4B4
/* 01FEC 80AE43EC E7B00010 */ swc1 $f16, 0x0010($sp)
/* 01FF0 80AE43F0 9202031B */ lbu $v0, 0x031B($s0) ## 0000031B
.L80AE43F4:
/* 01FF4 80AE43F4 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
.L80AE43F8:
/* 01FF8 80AE43F8 14410003 */ bne $v0, $at, .L80AE4408
/* 01FFC 80AE43FC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02000 80AE4400 0C2B8FE7 */ jal func_80AE3F9C
/* 02004 80AE4404 8FA50044 */ lw $a1, 0x0044($sp)
.L80AE4408:
/* 02008 80AE4408 8E0B0028 */ lw $t3, 0x0028($s0) ## 00000028
.L80AE440C:
/* 0200C 80AE440C 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 02010 80AE4410 8E0C0024 */ lw $t4, 0x0024($s0) ## 00000024
/* 02014 80AE4414 AE0B003C */ sw $t3, 0x003C($s0) ## 0000003C
/* 02018 80AE4418 C612003C */ lwc1 $f18, 0x003C($s0) ## 0000003C
/* 0201C 80AE441C 44812000 */ mtc1 $at, $f4 ## $f4 = 50.00
/* 02020 80AE4420 920D00AF */ lbu $t5, 0x00AF($s0) ## 000000AF
/* 02024 80AE4424 AE0C0038 */ sw $t4, 0x0038($s0) ## 00000038
/* 02028 80AE4428 46049180 */ add.s $f6, $f18, $f4
/* 0202C 80AE442C 8E0C002C */ lw $t4, 0x002C($s0) ## 0000002C
/* 02030 80AE4430 E606003C */ swc1 $f6, 0x003C($s0) ## 0000003C
/* 02034 80AE4434 19A0001E */ blez $t5, .L80AE44B0
/* 02038 80AE4438 AE0C0040 */ sw $t4, 0x0040($s0) ## 00000040
/* 0203C 80AE443C 920E031B */ lbu $t6, 0x031B($s0) ## 0000031B
/* 02040 80AE4440 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 02044 80AE4444 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 02048 80AE4448 11C10019 */ beq $t6, $at, .L80AE44B0
/* 0204C 80AE444C 26050320 */ addiu $a1, $s0, 0x0320 ## $a1 = 00000320
/* 02050 80AE4450 0C0189B7 */ jal Collider_CylinderUpdate
/* 02054 80AE4454 AFA50028 */ sw $a1, 0x0028($sp)
/* 02058 80AE4458 8FA40044 */ lw $a0, 0x0044($sp)
/* 0205C 80AE445C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 02060 80AE4460 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 02064 80AE4464 00812821 */ addu $a1, $a0, $at
/* 02068 80AE4468 AFA5002C */ sw $a1, 0x002C($sp)
/* 0206C 80AE446C 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOT
/* 02070 80AE4470 8FA60028 */ lw $a2, 0x0028($sp)
/* 02074 80AE4474 9218031B */ lbu $t8, 0x031B($s0) ## 0000031B
/* 02078 80AE4478 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
/* 0207C 80AE447C 8FA5002C */ lw $a1, 0x002C($sp)
/* 02080 80AE4480 17010008 */ bne $t8, $at, .L80AE44A4
/* 02084 80AE4484 8FA20034 */ lw $v0, 0x0034($sp)
/* 02088 80AE4488 80480844 */ lb $t0, 0x0844($v0) ## 00000844
/* 0208C 80AE448C 51000009 */ beql $t0, $zero, .L80AE44B4
/* 02090 80AE4490 8FBF0024 */ lw $ra, 0x0024($sp)
/* 02094 80AE4494 9219031D */ lbu $t9, 0x031D($s0) ## 0000031D
/* 02098 80AE4498 90490845 */ lbu $t1, 0x0845($v0) ## 00000845
/* 0209C 80AE449C 53290005 */ beql $t9, $t1, .L80AE44B4
/* 020A0 80AE44A0 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE44A4:
/* 020A4 80AE44A4 8FA40044 */ lw $a0, 0x0044($sp)
/* 020A8 80AE44A8 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 020AC 80AE44AC 8FA60028 */ lw $a2, 0x0028($sp)
.L80AE44B0:
/* 020B0 80AE44B0 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE44B4:
/* 020B4 80AE44B4 8FB00020 */ lw $s0, 0x0020($sp)
/* 020B8 80AE44B8 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 020BC 80AE44BC 03E00008 */ jr $ra
/* 020C0 80AE44C0 00000000 */ nop

View File

@ -1,3 +0,0 @@
glabel func_80AE2400
/* 00000 80AE2400 03E00008 */ jr $ra
/* 00004 80AE2404 AC850308 */ sw $a1, 0x0308($a0) ## 00000308

View File

@ -1,35 +0,0 @@
glabel func_80AE2630
/* 00230 80AE2630 8C821C5C */ lw $v0, 0x1C5C($a0) ## 00001C5C
/* 00234 80AE2634 24030090 */ addiu $v1, $zero, 0x0090 ## $v1 = 00000090
/* 00238 80AE2638 10400016 */ beq $v0, $zero, .L80AE2694
/* 0023C 80AE263C 00000000 */ nop
/* 00240 80AE2640 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
.L80AE2644:
/* 00244 80AE2644 146E0006 */ bne $v1, $t6, .L80AE2660
/* 00248 80AE2648 00000000 */ nop
/* 0024C 80AE264C 10450004 */ beq $v0, $a1, .L80AE2660
/* 00250 80AE2650 00000000 */ nop
/* 00254 80AE2654 844F001C */ lh $t7, 0x001C($v0) ## 0000001C
/* 00258 80AE2658 05E10003 */ bgez $t7, .L80AE2668
/* 0025C 80AE265C 00000000 */ nop
.L80AE2660:
/* 00260 80AE2660 1000000A */ beq $zero, $zero, .L80AE268C
/* 00264 80AE2664 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
.L80AE2668:
/* 00268 80AE2668 50C00004 */ beql $a2, $zero, .L80AE267C
/* 0026C 80AE266C 8C580118 */ lw $t8, 0x0118($v0) ## 00000118
/* 00270 80AE2670 10000005 */ beq $zero, $zero, .L80AE2688
/* 00274 80AE2674 AC450118 */ sw $a1, 0x0118($v0) ## 00000118
/* 00278 80AE2678 8C580118 */ lw $t8, 0x0118($v0) ## 00000118
.L80AE267C:
/* 0027C 80AE267C 54B80003 */ bnel $a1, $t8, .L80AE268C
/* 00280 80AE2680 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
/* 00284 80AE2684 AC400118 */ sw $zero, 0x0118($v0) ## 00000118
.L80AE2688:
/* 00288 80AE2688 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
.L80AE268C:
/* 0028C 80AE268C 5440FFED */ bnel $v0, $zero, .L80AE2644
/* 00290 80AE2690 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
.L80AE2694:
/* 00294 80AE2694 03E00008 */ jr $ra
/* 00298 80AE2698 00000000 */ nop

View File

@ -1,46 +0,0 @@
glabel func_80AE269C
/* 0029C 80AE269C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 002A0 80AE26A0 AFBF001C */ sw $ra, 0x001C($sp)
/* 002A4 80AE26A4 AFB00018 */ sw $s0, 0x0018($sp)
/* 002A8 80AE26A8 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 002AC 80AE26AC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 002B0 80AE26B0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 002B4 80AE26B4 11C10008 */ beq $t6, $at, .L80AE26D8
/* 002B8 80AE26B8 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 002BC 80AE26BC 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 002C0 80AE26C0 24A587D0 */ addiu $a1, $a1, 0x87D0 ## $a1 = 060087D0
/* 002C4 80AE26C4 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 002C8 80AE26C8 0C0294D3 */ jal SkelAnime_ChangeAnimTransitionRepeat
/* 002CC 80AE26CC 3C06C0C0 */ lui $a2, 0xC0C0 ## $a2 = C0C00000
/* 002D0 80AE26D0 10000004 */ beq $zero, $zero, .L80AE26E4
/* 002D4 80AE26D4 00000000 */ nop
.L80AE26D8:
/* 002D8 80AE26D8 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 002DC 80AE26DC 0C0294BE */ jal SkelAnime_ChangeAnimDefaultRepeat
/* 002E0 80AE26E0 24A55D98 */ addiu $a1, $a1, 0x5D98 ## $a1 = 00005D98
.L80AE26E4:
/* 002E4 80AE26E4 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 002E8 80AE26E8 A200031B */ sb $zero, 0x031B($s0) ## 0000031B
/* 002EC 80AE26EC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 002F0 80AE26F0 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
/* 002F4 80AE26F4 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 002F8 80AE26F8 44814000 */ mtc1 $at, $f8 ## $f8 = 5.00
/* 002FC 80AE26FC 46040182 */ mul.s $f6, $f0, $f4
/* 00300 80AE2700 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 00304 80AE2704 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
/* 00308 80AE2708 3C0580AE */ lui $a1, %hi(func_80AE2744) ## $a1 = 80AE0000
/* 0030C 80AE270C 24A52744 */ addiu $a1, $a1, %lo(func_80AE2744) ## $a1 = 80AE2744
/* 00310 80AE2710 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00314 80AE2714 E6120068 */ swc1 $f18, 0x0068($s0) ## 00000068
/* 00318 80AE2718 46083280 */ add.s $f10, $f6, $f8
/* 0031C 80AE271C A6190032 */ sh $t9, 0x0032($s0) ## 00000032
/* 00320 80AE2720 4600540D */ trunc.w.s $f16, $f10
/* 00324 80AE2724 44188000 */ mfc1 $t8, $f16
/* 00328 80AE2728 0C2B8900 */ jal func_80AE2400
/* 0032C 80AE272C A618030C */ sh $t8, 0x030C($s0) ## 0000030C
/* 00330 80AE2730 8FBF001C */ lw $ra, 0x001C($sp)
/* 00334 80AE2734 8FB00018 */ lw $s0, 0x0018($sp)
/* 00338 80AE2738 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 0033C 80AE273C 03E00008 */ jr $ra
/* 00340 80AE2740 00000000 */ nop

View File

@ -1,156 +0,0 @@
glabel func_80AE2744
/* 00344 80AE2744 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00348 80AE2748 AFB00020 */ sw $s0, 0x0020($sp)
/* 0034C 80AE274C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00350 80AE2750 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00354 80AE2754 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 00358 80AE2758 AFA50034 */ sw $a1, 0x0034($sp)
/* 0035C 80AE275C 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00360 80AE2760 AFA4002C */ sw $a0, 0x002C($sp)
/* 00364 80AE2764 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 00368 80AE2768 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 0036C 80AE276C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00370 80AE2770 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 00374 80AE2774 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00378 80AE2778 AFA00010 */ sw $zero, 0x0010($sp)
/* 0037C 80AE277C 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 00380 80AE2780 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00384 80AE2784 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00388 80AE2788 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 0038C 80AE278C 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00390 80AE2790 AFA00010 */ sw $zero, 0x0010($sp)
/* 00394 80AE2794 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
/* 00398 80AE2798 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 0039C 80AE279C 55C1001C */ bnel $t6, $at, .L80AE2810
/* 003A0 80AE27A0 860F030C */ lh $t7, 0x030C($s0) ## 0000030C
/* 003A4 80AE27A4 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 003A8 80AE27A8 C60601A0 */ lwc1 $f6, 0x01A0($s0) ## 000001A0
/* 003AC 80AE27AC 46062032 */ c.eq.s $f4, $f6
/* 003B0 80AE27B0 00000000 */ nop
/* 003B4 80AE27B4 45020016 */ bc1fl .L80AE2810
/* 003B8 80AE27B8 860F030C */ lh $t7, 0x030C($s0) ## 0000030C
/* 003BC 80AE27BC 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 003C0 80AE27C0 00000000 */ nop
/* 003C4 80AE27C4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 003C8 80AE27C8 44814000 */ mtc1 $at, $f8 ## $f8 = 0.50
/* 003CC 80AE27CC 8FA4002C */ lw $a0, 0x002C($sp)
/* 003D0 80AE27D0 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 003D4 80AE27D4 4600403E */ c.le.s $f8, $f0
/* 003D8 80AE27D8 00000000 */ nop
/* 003DC 80AE27DC 45000007 */ bc1f .L80AE27FC
/* 003E0 80AE27E0 00000000 */ nop
/* 003E4 80AE27E4 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 003E8 80AE27E8 24A55D98 */ addiu $a1, $a1, 0x5D98 ## $a1 = 06005D98
/* 003EC 80AE27EC 0C0294BE */ jal SkelAnime_ChangeAnimDefaultRepeat
/* 003F0 80AE27F0 8FA4002C */ lw $a0, 0x002C($sp)
/* 003F4 80AE27F4 10000018 */ beq $zero, $zero, .L80AE2858
/* 003F8 80AE27F8 8E0A0118 */ lw $t2, 0x0118($s0) ## 00000118
.L80AE27FC:
/* 003FC 80AE27FC 0C0294BE */ jal SkelAnime_ChangeAnimDefaultRepeat
/* 00400 80AE2800 24A557AC */ addiu $a1, $a1, 0x57AC ## $a1 = 000057AC
/* 00404 80AE2804 10000014 */ beq $zero, $zero, .L80AE2858
/* 00408 80AE2808 8E0A0118 */ lw $t2, 0x0118($s0) ## 00000118
/* 0040C 80AE280C 860F030C */ lh $t7, 0x030C($s0) ## 0000030C
.L80AE2810:
/* 00410 80AE2810 25F8FFFF */ addiu $t8, $t7, 0xFFFF ## $t8 = FFFFFFFF
/* 00414 80AE2814 A618030C */ sh $t8, 0x030C($s0) ## 0000030C
/* 00418 80AE2818 8619030C */ lh $t9, 0x030C($s0) ## 0000030C
/* 0041C 80AE281C 5720000E */ bnel $t9, $zero, .L80AE2858
/* 00420 80AE2820 8E0A0118 */ lw $t2, 0x0118($s0) ## 00000118
/* 00424 80AE2824 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00428 80AE2828 00000000 */ nop
/* 0042C 80AE282C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00430 80AE2830 44811000 */ mtc1 $at, $f2 ## $f2 = 10.00
/* 00434 80AE2834 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 00438 80AE2838 46020282 */ mul.s $f10, $f0, $f2
/* 0043C 80AE283C E60401A0 */ swc1 $f4, 0x01A0($s0) ## 000001A0
/* 00440 80AE2840 46025400 */ add.s $f16, $f10, $f2
/* 00444 80AE2844 4600848D */ trunc.w.s $f18, $f16
/* 00448 80AE2848 44099000 */ mfc1 $t1, $f18
/* 0044C 80AE284C 00000000 */ nop
/* 00450 80AE2850 A609030C */ sh $t1, 0x030C($s0) ## 0000030C
/* 00454 80AE2854 8E0A0118 */ lw $t2, 0x0118($s0) ## 00000118
.L80AE2858:
/* 00458 80AE2858 51400011 */ beql $t2, $zero, .L80AE28A0
/* 0045C 80AE285C 920D0305 */ lbu $t5, 0x0305($s0) ## 00000305
/* 00460 80AE2860 920B0305 */ lbu $t3, 0x0305($s0) ## 00000305
/* 00464 80AE2864 55600034 */ bnel $t3, $zero, .L80AE2938
/* 00468 80AE2868 8FB90034 */ lw $t9, 0x0034($sp)
/* 0046C 80AE286C 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 00470 80AE2870 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00474 80AE2874 11810005 */ beq $t4, $at, .L80AE288C
/* 00478 80AE2878 00000000 */ nop
/* 0047C 80AE287C 0C2B8C77 */ jal func_80AE31DC
/* 00480 80AE2880 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00484 80AE2884 1000002C */ beq $zero, $zero, .L80AE2938
/* 00488 80AE2888 8FB90034 */ lw $t9, 0x0034($sp)
.L80AE288C:
/* 0048C 80AE288C 0C2B8E4B */ jal func_80AE392C
/* 00490 80AE2890 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00494 80AE2894 10000028 */ beq $zero, $zero, .L80AE2938
/* 00498 80AE2898 8FB90034 */ lw $t9, 0x0034($sp)
/* 0049C 80AE289C 920D0305 */ lbu $t5, 0x0305($s0) ## 00000305
.L80AE28A0:
/* 004A0 80AE28A0 51A0000C */ beql $t5, $zero, .L80AE28D4
/* 004A4 80AE28A4 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 004A8 80AE28A8 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
/* 004AC 80AE28AC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 004B0 80AE28B0 11C10005 */ beq $t6, $at, .L80AE28C8
/* 004B4 80AE28B4 00000000 */ nop
/* 004B8 80AE28B8 0C2B8DEF */ jal func_80AE37BC
/* 004BC 80AE28BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 004C0 80AE28C0 10000004 */ beq $zero, $zero, .L80AE28D4
/* 004C4 80AE28C4 3C014316 */ lui $at, 0x4316 ## $at = 43160000
.L80AE28C8:
/* 004C8 80AE28C8 0C2B8E4B */ jal func_80AE392C
/* 004CC 80AE28CC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 004D0 80AE28D0 3C014316 */ lui $at, 0x4316 ## $at = 43160000
.L80AE28D4:
/* 004D4 80AE28D4 44813000 */ mtc1 $at, $f6 ## $f6 = 150.00
/* 004D8 80AE28D8 C6080090 */ lwc1 $f8, 0x0090($s0) ## 00000090
/* 004DC 80AE28DC A2000305 */ sb $zero, 0x0305($s0) ## 00000305
/* 004E0 80AE28E0 4606403E */ c.le.s $f8, $f6
/* 004E4 80AE28E4 00000000 */ nop
/* 004E8 80AE28E8 45020013 */ bc1fl .L80AE2938
/* 004EC 80AE28EC 8FB90034 */ lw $t9, 0x0034($sp)
/* 004F0 80AE28F0 0C00B779 */ jal func_8002DDE4
/* 004F4 80AE28F4 8FA40034 */ lw $a0, 0x0034($sp)
/* 004F8 80AE28F8 5040000F */ beql $v0, $zero, .L80AE2938
/* 004FC 80AE28FC 8FB90034 */ lw $t9, 0x0034($sp)
/* 00500 80AE2900 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
/* 00504 80AE2904 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00508 80AE2908 11E10008 */ beq $t7, $at, .L80AE292C
/* 0050C 80AE290C 00000000 */ nop
/* 00510 80AE2910 92180305 */ lbu $t8, 0x0305($s0) ## 00000305
/* 00514 80AE2914 17000005 */ bne $t8, $zero, .L80AE292C
/* 00518 80AE2918 00000000 */ nop
/* 0051C 80AE291C 0C2B8DEF */ jal func_80AE37BC
/* 00520 80AE2920 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00524 80AE2924 10000004 */ beq $zero, $zero, .L80AE2938
/* 00528 80AE2928 8FB90034 */ lw $t9, 0x0034($sp)
.L80AE292C:
/* 0052C 80AE292C 0C2B8E4B */ jal func_80AE392C
/* 00530 80AE2930 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00534 80AE2934 8FB90034 */ lw $t9, 0x0034($sp)
.L80AE2938:
/* 00538 80AE2938 3C080001 */ lui $t0, 0x0001 ## $t0 = 00010000
/* 0053C 80AE293C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00540 80AE2940 01194021 */ addu $t0, $t0, $t9
/* 00544 80AE2944 8D081DE4 */ lw $t0, 0x1DE4($t0) ## 00011DE4
/* 00548 80AE2948 3109005F */ andi $t1, $t0, 0x005F ## $t1 = 00000000
/* 0054C 80AE294C 55200004 */ bnel $t1, $zero, .L80AE2960
/* 00550 80AE2950 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00554 80AE2954 0C00BE0A */ jal Audio_PlayActorSound2
/* 00558 80AE2958 240538E4 */ addiu $a1, $zero, 0x38E4 ## $a1 = 000038E4
/* 0055C 80AE295C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE2960:
/* 00560 80AE2960 8FB00020 */ lw $s0, 0x0020($sp)
/* 00564 80AE2964 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00568 80AE2968 03E00008 */ jr $ra
/* 0056C 80AE296C 00000000 */ nop

View File

@ -1,43 +0,0 @@
glabel func_80AE2970
/* 00570 80AE2970 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00574 80AE2974 AFB00028 */ sw $s0, 0x0028($sp)
/* 00578 80AE2978 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0057C 80AE297C AFBF002C */ sw $ra, 0x002C($sp)
/* 00580 80AE2980 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 00584 80AE2984 0C028800 */ jal SkelAnime_GetFrameCount
/* 00588 80AE2988 248487D0 */ addiu $a0, $a0, 0x87D0 ## $a0 = 060087D0
/* 0058C 80AE298C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00590 80AE2990 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 00594 80AE2994 3C01C0C0 */ lui $at, 0xC0C0 ## $at = C0C00000
/* 00598 80AE2998 468021A0 */ cvt.s.w $f6, $f4
/* 0059C 80AE299C 44814000 */ mtc1 $at, $f8 ## $f8 = -6.00
/* 005A0 80AE29A0 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 005A4 80AE29A4 44060000 */ mfc1 $a2, $f0
/* 005A8 80AE29A8 44070000 */ mfc1 $a3, $f0
/* 005AC 80AE29AC 24A587D0 */ addiu $a1, $a1, 0x87D0 ## $a1 = 060087D0
/* 005B0 80AE29B0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 005B4 80AE29B4 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 005B8 80AE29B8 AFA00014 */ sw $zero, 0x0014($sp)
/* 005BC 80AE29BC 0C029468 */ jal SkelAnime_ChangeAnim
/* 005C0 80AE29C0 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 005C4 80AE29C4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 005C8 80AE29C8 240E000B */ addiu $t6, $zero, 0x000B ## $t6 = 0000000B
/* 005CC 80AE29CC 240F0006 */ addiu $t7, $zero, 0x0006 ## $t7 = 00000006
/* 005D0 80AE29D0 2418C000 */ addiu $t8, $zero, 0xC000 ## $t8 = FFFFC000
/* 005D4 80AE29D4 3C0580AE */ lui $a1, %hi(func_80AE2A10) ## $a1 = 80AE0000
/* 005D8 80AE29D8 A20E031B */ sb $t6, 0x031B($s0) ## 0000031B
/* 005DC 80AE29DC A60F030C */ sh $t7, 0x030C($s0) ## 0000030C
/* 005E0 80AE29E0 A61800B4 */ sh $t8, 0x00B4($s0) ## 000000B4
/* 005E4 80AE29E4 24A52A10 */ addiu $a1, $a1, %lo(func_80AE2A10) ## $a1 = 80AE2A10
/* 005E8 80AE29E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 005EC 80AE29EC E600006C */ swc1 $f0, 0x006C($s0) ## 0000006C
/* 005F0 80AE29F0 E60000BC */ swc1 $f0, 0x00BC($s0) ## 000000BC
/* 005F4 80AE29F4 0C2B8900 */ jal func_80AE2400
/* 005F8 80AE29F8 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
/* 005FC 80AE29FC 8FBF002C */ lw $ra, 0x002C($sp)
/* 00600 80AE2A00 8FB00028 */ lw $s0, 0x0028($sp)
/* 00604 80AE2A04 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00608 80AE2A08 03E00008 */ jr $ra
/* 0060C 80AE2A0C 00000000 */ nop

View File

@ -1,119 +0,0 @@
.late_rodata
glabel D_80AE4990
.float 0.3
glabel D_80AE4994
.float 0.3
glabel D_80AE4998
.float 0.3
.text
glabel func_80AE2A10
/* 00610 80AE2A10 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00614 80AE2A14 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00618 80AE2A18 AFB00020 */ sw $s0, 0x0020($sp)
/* 0061C 80AE2A1C AFA5002C */ sw $a1, 0x002C($sp)
/* 00620 80AE2A20 848E00B4 */ lh $t6, 0x00B4($a0) ## 000000B4
/* 00624 80AE2A24 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00628 80AE2A28 2401C000 */ addiu $at, $zero, 0xC000 ## $at = FFFFC000
/* 0062C 80AE2A2C 11C1001A */ beq $t6, $at, .L80AE2A98
/* 00630 80AE2A30 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
/* 00634 80AE2A34 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00638 80AE2A38 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 0063C 80AE2A3C 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 00640 80AE2A40 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00644 80AE2A44 AFA00010 */ sw $zero, 0x0010($sp)
/* 00648 80AE2A48 3C0180AE */ lui $at, %hi(D_80AE4990) ## $at = 80AE0000
/* 0064C 80AE2A4C C4224990 */ lwc1 $f2, %lo(D_80AE4990)($at)
/* 00650 80AE2A50 8E05000C */ lw $a1, 0x000C($s0) ## 0000000C
/* 00654 80AE2A54 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
/* 00658 80AE2A58 44061000 */ mfc1 $a2, $f2
/* 0065C 80AE2A5C 3C074000 */ lui $a3, 0x4000 ## $a3 = 40000000
/* 00660 80AE2A60 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 00664 80AE2A64 E7A20010 */ swc1 $f2, 0x0010($sp)
/* 00668 80AE2A68 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 0066C 80AE2A6C 3C01C060 */ lui $at, 0xC060 ## $at = C0600000
/* 00670 80AE2A70 46040032 */ c.eq.s $f0, $f4
/* 00674 80AE2A74 00000000 */ nop
/* 00678 80AE2A78 45020041 */ bc1fl .L80AE2B80
/* 0067C 80AE2A7C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00680 80AE2A80 44813000 */ mtc1 $at, $f6 ## $f6 = -3.50
/* 00684 80AE2A84 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00688 80AE2A88 0C2B89A7 */ jal func_80AE269C
/* 0068C 80AE2A8C E606006C */ swc1 $f6, 0x006C($s0) ## 0000006C
/* 00690 80AE2A90 1000003B */ beq $zero, $zero, .L80AE2B80
/* 00694 80AE2A94 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE2A98:
/* 00698 80AE2A98 C600000C */ lwc1 $f0, 0x000C($s0) ## 0000000C
/* 0069C 80AE2A9C C6080028 */ lwc1 $f8, 0x0028($s0) ## 00000028
/* 006A0 80AE2AA0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 006A4 80AE2AA4 46080032 */ c.eq.s $f0, $f8
/* 006A8 80AE2AA8 00000000 */ nop
/* 006AC 80AE2AAC 45000004 */ bc1f .L80AE2AC0
/* 006B0 80AE2AB0 00000000 */ nop
/* 006B4 80AE2AB4 0C00BE0A */ jal Audio_PlayActorSound2
/* 006B8 80AE2AB8 240538E4 */ addiu $a1, $zero, 0x38E4 ## $a1 = 000038E4
/* 006BC 80AE2ABC C600000C */ lwc1 $f0, 0x000C($s0) ## 0000000C
.L80AE2AC0:
/* 006C0 80AE2AC0 3C0180AE */ lui $at, %hi(D_80AE4994) ## $at = 80AE0000
/* 006C4 80AE2AC4 C4224994 */ lwc1 $f2, %lo(D_80AE4994)($at)
/* 006C8 80AE2AC8 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 006CC 80AE2ACC 44815000 */ mtc1 $at, $f10 ## $f10 = 50.00
/* 006D0 80AE2AD0 44061000 */ mfc1 $a2, $f2
/* 006D4 80AE2AD4 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
/* 006D8 80AE2AD8 460A0400 */ add.s $f16, $f0, $f10
/* 006DC 80AE2ADC 3C074000 */ lui $a3, 0x4000 ## $a3 = 40000000
/* 006E0 80AE2AE0 E7A20010 */ swc1 $f2, 0x0010($sp)
/* 006E4 80AE2AE4 44058000 */ mfc1 $a1, $f16
/* 006E8 80AE2AE8 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 006EC 80AE2AEC 00000000 */ nop
/* 006F0 80AE2AF0 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 006F4 80AE2AF4 3C0180AE */ lui $at, %hi(D_80AE4998) ## $at = 80AE0000
/* 006F8 80AE2AF8 C4224998 */ lwc1 $f2, %lo(D_80AE4998)($at)
/* 006FC 80AE2AFC 460C0032 */ c.eq.s $f0, $f12
/* 00700 80AE2B00 00000000 */ nop
/* 00704 80AE2B04 4502001E */ bc1fl .L80AE2B80
/* 00708 80AE2B08 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0070C 80AE2B0C 8602030C */ lh $v0, 0x030C($s0) ## 0000030C
/* 00710 80AE2B10 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 00714 80AE2B14 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
/* 00718 80AE2B18 1040000A */ beq $v0, $zero, .L80AE2B44
/* 0071C 80AE2B1C 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
/* 00720 80AE2B20 A60F030C */ sh $t7, 0x030C($s0) ## 0000030C
/* 00724 80AE2B24 44061000 */ mfc1 $a2, $f2
/* 00728 80AE2B28 E7A20010 */ swc1 $f2, 0x0010($sp)
/* 0072C 80AE2B2C 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 00730 80AE2B30 3C0540C0 */ lui $a1, 0x40C0 ## $a1 = 40C00000
/* 00734 80AE2B34 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 00738 80AE2B38 3C073F80 */ lui $a3, 0x3F80 ## $a3 = 3F800000
/* 0073C 80AE2B3C 10000010 */ beq $zero, $zero, .L80AE2B80
/* 00740 80AE2B40 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE2B44:
/* 00744 80AE2B44 44056000 */ mfc1 $a1, $f12
/* 00748 80AE2B48 44061000 */ mfc1 $a2, $f2
/* 0074C 80AE2B4C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 00750 80AE2B50 E7A20010 */ swc1 $f2, 0x0010($sp)
/* 00754 80AE2B54 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 00758 80AE2B58 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 0075C 80AE2B5C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00760 80AE2B60 46120032 */ c.eq.s $f0, $f18
/* 00764 80AE2B64 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00768 80AE2B68 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 0076C 80AE2B6C 45020004 */ bc1fl .L80AE2B80
/* 00770 80AE2B70 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00774 80AE2B74 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00778 80AE2B78 AFA00010 */ sw $zero, 0x0010($sp)
/* 0077C 80AE2B7C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE2B80:
/* 00780 80AE2B80 8FB00020 */ lw $s0, 0x0020($sp)
/* 00784 80AE2B84 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00788 80AE2B88 03E00008 */ jr $ra
/* 0078C 80AE2B8C 00000000 */ nop

View File

@ -1,43 +0,0 @@
.late_rodata
glabel D_80AE499C
.float 0.4
.text
glabel func_80AE2B90
/* 00790 80AE2B90 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00794 80AE2B94 AFA40028 */ sw $a0, 0x0028($sp)
/* 00798 80AE2B98 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0079C 80AE2B9C 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 007A0 80AE2BA0 AFA5002C */ sw $a1, 0x002C($sp)
/* 007A4 80AE2BA4 0C028800 */ jal SkelAnime_GetFrameCount
/* 007A8 80AE2BA8 2484EFDC */ addiu $a0, $a0, 0xEFDC ## $a0 = 0600EFDC
/* 007AC 80AE2BAC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 007B0 80AE2BB0 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 007B4 80AE2BB4 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 007B8 80AE2BB8 468021A0 */ cvt.s.w $f6, $f4
/* 007BC 80AE2BBC 8FA40028 */ lw $a0, 0x0028($sp)
/* 007C0 80AE2BC0 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 007C4 80AE2BC4 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 007C8 80AE2BC8 AFAE0014 */ sw $t6, 0x0014($sp)
/* 007CC 80AE2BCC 24A5EFDC */ addiu $a1, $a1, 0xEFDC ## $a1 = 0600EFDC
/* 007D0 80AE2BD0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 007D4 80AE2BD4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 007D8 80AE2BD8 3C074080 */ lui $a3, 0x4080 ## $a3 = 40800000
/* 007DC 80AE2BDC E7A80018 */ swc1 $f8, 0x0018($sp)
/* 007E0 80AE2BE0 0C029468 */ jal SkelAnime_ChangeAnim
/* 007E4 80AE2BE4 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 007E8 80AE2BE8 8FA40028 */ lw $a0, 0x0028($sp)
/* 007EC 80AE2BEC 3C0180AE */ lui $at, %hi(D_80AE499C) ## $at = 80AE0000
/* 007F0 80AE2BF0 C42A499C */ lwc1 $f10, %lo(D_80AE499C)($at)
/* 007F4 80AE2BF4 240F0004 */ addiu $t7, $zero, 0x0004 ## $t7 = 00000004
/* 007F8 80AE2BF8 3C0580AE */ lui $a1, %hi(func_80AE2C1C) ## $a1 = 80AE0000
/* 007FC 80AE2BFC 24A52C1C */ addiu $a1, $a1, %lo(func_80AE2C1C) ## $a1 = 80AE2C1C
/* 00800 80AE2C00 A08F031B */ sb $t7, 0x031B($a0) ## 0000031B
/* 00804 80AE2C04 0C2B8900 */ jal func_80AE2400
/* 00808 80AE2C08 E48A0068 */ swc1 $f10, 0x0068($a0) ## 00000068
/* 0080C 80AE2C0C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00810 80AE2C10 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00814 80AE2C14 03E00008 */ jr $ra
/* 00818 80AE2C18 00000000 */ nop

View File

@ -1,226 +0,0 @@
glabel func_80AE2C1C
/* 0081C 80AE2C1C 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 00820 80AE2C20 3C0F80AE */ lui $t7, %hi(D_80AE4918) ## $t7 = 80AE0000
/* 00824 80AE2C24 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00828 80AE2C28 AFB00020 */ sw $s0, 0x0020($sp)
/* 0082C 80AE2C2C AFA50054 */ sw $a1, 0x0054($sp)
/* 00830 80AE2C30 25EF4918 */ addiu $t7, $t7, %lo(D_80AE4918) ## $t7 = 80AE4918
/* 00834 80AE2C34 8DF90000 */ lw $t9, 0x0000($t7) ## 80AE4918
/* 00838 80AE2C38 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFF4
/* 0083C 80AE2C3C 8DF80004 */ lw $t8, 0x0004($t7) ## 80AE491C
/* 00840 80AE2C40 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 00844 80AE2C44 8DF90008 */ lw $t9, 0x0008($t7) ## 80AE4920
/* 00848 80AE2C48 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 0084C 80AE2C4C 3C0880AE */ lui $t0, %hi(D_80AE4924) ## $t0 = 80AE0000
/* 00850 80AE2C50 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 00854 80AE2C54 3C0980AE */ lui $t1, %hi(D_80AE4928) ## $t1 = 80AE0000
/* 00858 80AE2C58 8D084924 */ lw $t0, %lo(D_80AE4924)($t0)
/* 0085C 80AE2C5C 8D294928 */ lw $t1, %lo(D_80AE4928)($t1)
/* 00860 80AE2C60 8FAA0054 */ lw $t2, 0x0054($sp)
/* 00864 80AE2C64 AFA80040 */ sw $t0, 0x0040($sp)
/* 00868 80AE2C68 AFA9003C */ sw $t1, 0x003C($sp)
/* 0086C 80AE2C6C 8D4B1C44 */ lw $t3, 0x1C44($t2) ## 00001C44
/* 00870 80AE2C70 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00874 80AE2C74 248400B6 */ addiu $a0, $a0, 0x00B6 ## $a0 = 000000B6
/* 00878 80AE2C78 AFAB0038 */ sw $t3, 0x0038($sp)
/* 0087C 80AE2C7C 848C0000 */ lh $t4, 0x0000($a0) ## 000000B6
/* 00880 80AE2C80 8485FFD4 */ lh $a1, -0x002C($a0) ## 0000008A
/* 00884 80AE2C84 848E0258 */ lh $t6, 0x0258($a0) ## 0000030E
/* 00888 80AE2C88 8498025A */ lh $t8, 0x025A($a0) ## 00000310
/* 0088C 80AE2C8C 00AC6823 */ subu $t5, $a1, $t4
/* 00890 80AE2C90 01AE7823 */ subu $t7, $t5, $t6
/* 00894 80AE2C94 01F8C823 */ subu $t9, $t7, $t8
/* 00898 80AE2C98 A7B90032 */ sh $t9, 0x0032($sp)
/* 0089C 80AE2C9C C484FFB2 */ lwc1 $f4, -0x004E($a0) ## 00000068
/* 008A0 80AE2CA0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 008A4 80AE2CA4 240700FA */ addiu $a3, $zero, 0x00FA ## $a3 = 000000FA
/* 008A8 80AE2CA8 E48400EE */ swc1 $f4, 0x00EE($a0) ## 000001A4
/* 008AC 80AE2CAC 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 008B0 80AE2CB0 AFA00010 */ sw $zero, 0x0010($sp)
/* 008B4 80AE2CB4 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 008B8 80AE2CB8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 008BC 80AE2CBC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 008C0 80AE2CC0 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 008C4 80AE2CC4 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 008C8 80AE2CC8 AFA00010 */ sw $zero, 0x0010($sp)
/* 008CC 80AE2CCC 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 008D0 80AE2CD0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 008D4 80AE2CD4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 008D8 80AE2CD8 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 008DC 80AE2CDC 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 008E0 80AE2CE0 AFA00010 */ sw $zero, 0x0010($sp)
/* 008E4 80AE2CE4 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6
/* 008E8 80AE2CE8 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 008EC 80AE2CEC 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 008F0 80AE2CF0 A6080032 */ sh $t0, 0x0032($s0) ## 00000032
/* 008F4 80AE2CF4 8FA40038 */ lw $a0, 0x0038($sp)
/* 008F8 80AE2CF8 0C00B6DB */ jal func_8002DB6C
/* 008FC 80AE2CFC 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
/* 00900 80AE2D00 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 00904 80AE2D04 44813000 */ mtc1 $at, $f6 ## $f6 = 150.00
/* 00908 80AE2D08 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0090C 80AE2D0C 4600303E */ c.le.s $f6, $f0
/* 00910 80AE2D10 00000000 */ nop
/* 00914 80AE2D14 45020004 */ bc1fl .L80AE2D28
/* 00918 80AE2D18 87A30032 */ lh $v1, 0x0032($sp)
/* 0091C 80AE2D1C 0C2B8BD4 */ jal func_80AE2F50
/* 00920 80AE2D20 8FA50054 */ lw $a1, 0x0054($sp)
/* 00924 80AE2D24 87A30032 */ lh $v1, 0x0032($sp)
.L80AE2D28:
/* 00928 80AE2D28 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0092C 80AE2D2C 04600003 */ bltz $v1, .L80AE2D3C
/* 00930 80AE2D30 00031023 */ subu $v0, $zero, $v1
/* 00934 80AE2D34 10000001 */ beq $zero, $zero, .L80AE2D3C
/* 00938 80AE2D38 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
.L80AE2D3C:
/* 0093C 80AE2D3C 28411554 */ slti $at, $v0, 0x1554
/* 00940 80AE2D40 50200032 */ beql $at, $zero, .L80AE2E0C
/* 00944 80AE2D44 92020307 */ lbu $v0, 0x0307($s0) ## 00000307
/* 00948 80AE2D48 0C00B6D2 */ jal func_8002DB48
/* 0094C 80AE2D4C 8FA50038 */ lw $a1, 0x0038($sp)
/* 00950 80AE2D50 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 00954 80AE2D54 44814000 */ mtc1 $at, $f8 ## $f8 = 150.00
/* 00958 80AE2D58 8FA90038 */ lw $t1, 0x0038($sp)
/* 0095C 80AE2D5C 4608003E */ c.le.s $f0, $f8
/* 00960 80AE2D60 00000000 */ nop
/* 00964 80AE2D64 45020029 */ bc1fl .L80AE2E0C
/* 00968 80AE2D68 92020307 */ lbu $v0, 0x0307($s0) ## 00000307
/* 0096C 80AE2D6C 8D2A067C */ lw $t2, 0x067C($t1) ## 0000067C
/* 00970 80AE2D70 3C01002C */ lui $at, 0x002C ## $at = 002C0000
/* 00974 80AE2D74 34216080 */ ori $at, $at, 0x6080 ## $at = 002C6080
/* 00978 80AE2D78 01415824 */ and $t3, $t2, $at
/* 0097C 80AE2D7C 15600020 */ bne $t3, $zero, .L80AE2E00
/* 00980 80AE2D80 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00984 80AE2D84 8D2C0680 */ lw $t4, 0x0680($t1) ## 00000680
/* 00988 80AE2D88 318D0080 */ andi $t5, $t4, 0x0080 ## $t5 = 00000000
/* 0098C 80AE2D8C 15A0001C */ bne $t5, $zero, .L80AE2E00
/* 00990 80AE2D90 00000000 */ nop
/* 00994 80AE2D94 920E0306 */ lbu $t6, 0x0306($s0) ## 00000306
/* 00998 80AE2D98 55C0001C */ bnel $t6, $zero, .L80AE2E0C
/* 0099C 80AE2D9C 92020307 */ lbu $v0, 0x0307($s0) ## 00000307
/* 009A0 80AE2DA0 860F0312 */ lh $t7, 0x0312($s0) ## 00000312
/* 009A4 80AE2DA4 24190028 */ addiu $t9, $zero, 0x0028 ## $t9 = 00000028
/* 009A8 80AE2DA8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 009AC 80AE2DAC 31F80080 */ andi $t8, $t7, 0x0080 ## $t8 = 00000000
/* 009B0 80AE2DB0 5700000D */ bnel $t8, $zero, .L80AE2DE8
/* 009B4 80AE2DB4 240B003C */ addiu $t3, $zero, 0x003C ## $t3 = 0000003C
/* 009B8 80AE2DB8 A5390110 */ sh $t9, 0x0110($t1) ## 00000110
/* 009BC 80AE2DBC 0C023BAB */ jal func_8008EEAC
/* 009C0 80AE2DC0 8FA40054 */ lw $a0, 0x0054($sp)
/* 009C4 80AE2DC4 8FA80054 */ lw $t0, 0x0054($sp)
/* 009C8 80AE2DC8 240500FF */ addiu $a1, $zero, 0x00FF ## $a1 = 000000FF
/* 009CC 80AE2DCC 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014
/* 009D0 80AE2DD0 8D0A1C44 */ lw $t2, 0x1C44($t0) ## 00001C44
/* 009D4 80AE2DD4 24070096 */ addiu $a3, $zero, 0x0096 ## $a3 = 00000096
/* 009D8 80AE2DD8 AD500684 */ sw $s0, 0x0684($t2) ## 00000684
/* 009DC 80AE2DDC 0C02A800 */ jal func_800AA000
/* 009E0 80AE2DE0 C60C0090 */ lwc1 $f12, 0x0090($s0) ## 00000090
/* 009E4 80AE2DE4 240B003C */ addiu $t3, $zero, 0x003C ## $t3 = 0000003C
.L80AE2DE8:
/* 009E8 80AE2DE8 A20B0306 */ sb $t3, 0x0306($s0) ## 00000306
/* 009EC 80AE2DEC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 009F0 80AE2DF0 0C00BE0A */ jal Audio_PlayActorSound2
/* 009F4 80AE2DF4 240538E5 */ addiu $a1, $zero, 0x38E5 ## $a1 = 000038E5
/* 009F8 80AE2DF8 10000004 */ beq $zero, $zero, .L80AE2E0C
/* 009FC 80AE2DFC 92020307 */ lbu $v0, 0x0307($s0) ## 00000307
.L80AE2E00:
/* 00A00 80AE2E00 0C2B8BD4 */ jal func_80AE2F50
/* 00A04 80AE2E04 8FA50054 */ lw $a1, 0x0054($sp)
/* 00A08 80AE2E08 92020307 */ lbu $v0, 0x0307($s0) ## 00000307
.L80AE2E0C:
/* 00A0C 80AE2E0C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A10 80AE2E10 10400003 */ beq $v0, $zero, .L80AE2E20
/* 00A14 80AE2E14 244CFFFF */ addiu $t4, $v0, 0xFFFF ## $t4 = FFFFFFFF
/* 00A18 80AE2E18 A20C0307 */ sb $t4, 0x0307($s0) ## 00000307
/* 00A1C 80AE2E1C 318200FF */ andi $v0, $t4, 0x00FF ## $v0 = 000000FF
.L80AE2E20:
/* 00A20 80AE2E20 54400021 */ bnel $v0, $zero, .L80AE2EA8
/* 00A24 80AE2E24 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00A28 80AE2E28 0C00B6D2 */ jal func_8002DB48
/* 00A2C 80AE2E2C 8FA50038 */ lw $a1, 0x0038($sp)
/* 00A30 80AE2E30 3C014234 */ lui $at, 0x4234 ## $at = 42340000
/* 00A34 80AE2E34 44815000 */ mtc1 $at, $f10 ## $f10 = 45.00
/* 00A38 80AE2E38 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A3C 80AE2E3C 460A003E */ c.le.s $f0, $f10
/* 00A40 80AE2E40 00000000 */ nop
/* 00A44 80AE2E44 45020018 */ bc1fl .L80AE2EA8
/* 00A48 80AE2E48 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00A4C 80AE2E4C 0C00B821 */ jal func_8002E084
/* 00A50 80AE2E50 240538E3 */ addiu $a1, $zero, 0x38E3 ## $a1 = 000038E3
/* 00A54 80AE2E54 10400013 */ beq $v0, $zero, .L80AE2EA4
/* 00A58 80AE2E58 8FA40054 */ lw $a0, 0x0054($sp)
/* 00A5C 80AE2E5C 8FAD0038 */ lw $t5, 0x0038($sp)
/* 00A60 80AE2E60 3C190001 */ lui $t9, 0x0001 ## $t9 = 00010000
/* 00A64 80AE2E64 0324C821 */ addu $t9, $t9, $a0
/* 00A68 80AE2E68 A5A00110 */ sh $zero, 0x0110($t5) ## 00000110
/* 00A6C 80AE2E6C 8F391D4C */ lw $t9, 0x1D4C($t9) ## 00011D4C
/* 00A70 80AE2E70 8FA50038 */ lw $a1, 0x0038($sp)
/* 00A74 80AE2E74 0320F809 */ jalr $ra, $t9
/* 00A78 80AE2E78 00000000 */ nop
/* 00A7C 80AE2E7C 50400015 */ beql $v0, $zero, .L80AE2ED4
/* 00A80 80AE2E80 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00A84 80AE2E84 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004
/* 00A88 80AE2E88 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 00A8C 80AE2E8C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A90 80AE2E90 01C17824 */ and $t7, $t6, $at
/* 00A94 80AE2E94 0C2B8CFC */ jal func_80AE33F0
/* 00A98 80AE2E98 AE0F0004 */ sw $t7, 0x0004($s0) ## 00000004
/* 00A9C 80AE2E9C 1000000D */ beq $zero, $zero, .L80AE2ED4
/* 00AA0 80AE2EA0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
.L80AE2EA4:
/* 00AA4 80AE2EA4 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
.L80AE2EA8:
/* 00AA8 80AE2EA8 5B00000A */ blezl $t8, .L80AE2ED4
/* 00AAC 80AE2EAC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00AB0 80AE2EB0 8E090118 */ lw $t1, 0x0118($s0) ## 00000118
/* 00AB4 80AE2EB4 51200006 */ beql $t1, $zero, .L80AE2ED0
/* 00AB8 80AE2EB8 A2000305 */ sb $zero, 0x0305($s0) ## 00000305
/* 00ABC 80AE2EBC 0C2B8C77 */ jal func_80AE31DC
/* 00AC0 80AE2EC0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00AC4 80AE2EC4 10000003 */ beq $zero, $zero, .L80AE2ED4
/* 00AC8 80AE2EC8 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00ACC 80AE2ECC A2000305 */ sb $zero, 0x0305($s0) ## 00000305
.L80AE2ED0:
/* 00AD0 80AE2ED0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
.L80AE2ED4:
/* 00AD4 80AE2ED4 44818000 */ mtc1 $at, $f16 ## $f16 = 10.00
/* 00AD8 80AE2ED8 C60001A0 */ lwc1 $f0, 0x01A0($s0) ## 000001A0
/* 00ADC 80AE2EDC 3C0141B0 */ lui $at, 0x41B0 ## $at = 41B00000
/* 00AE0 80AE2EE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00AE4 80AE2EE4 46008032 */ c.eq.s $f16, $f0
/* 00AE8 80AE2EE8 00000000 */ nop
/* 00AEC 80AE2EEC 45010008 */ bc1t .L80AE2F10
/* 00AF0 80AE2EF0 00000000 */ nop
/* 00AF4 80AE2EF4 44819000 */ mtc1 $at, $f18 ## $f18 = 22.00
/* 00AF8 80AE2EF8 8FA80054 */ lw $t0, 0x0054($sp)
/* 00AFC 80AE2EFC 3C0A0001 */ lui $t2, 0x0001 ## $t2 = 00010000
/* 00B00 80AE2F00 46009032 */ c.eq.s $f18, $f0
/* 00B04 80AE2F04 01485021 */ addu $t2, $t2, $t0
/* 00B08 80AE2F08 45020006 */ bc1fl .L80AE2F24
/* 00B0C 80AE2F0C 8D4A1DE4 */ lw $t2, 0x1DE4($t2) ## 00011DE4
.L80AE2F10:
/* 00B10 80AE2F10 0C00BE0A */ jal Audio_PlayActorSound2
/* 00B14 80AE2F14 2405382E */ addiu $a1, $zero, 0x382E ## $a1 = 0000382E
/* 00B18 80AE2F18 10000009 */ beq $zero, $zero, .L80AE2F40
/* 00B1C 80AE2F1C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00B20 80AE2F20 8D4A1DE4 */ lw $t2, 0x1DE4($t2) ## 00001DE4
.L80AE2F24:
/* 00B24 80AE2F24 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00B28 80AE2F28 314B005F */ andi $t3, $t2, 0x005F ## $t3 = 00000000
/* 00B2C 80AE2F2C 55600004 */ bnel $t3, $zero, .L80AE2F40
/* 00B30 80AE2F30 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00B34 80AE2F34 0C00BE0A */ jal Audio_PlayActorSound2
/* 00B38 80AE2F38 240538E4 */ addiu $a1, $zero, 0x38E4 ## $a1 = 000038E4
/* 00B3C 80AE2F3C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE2F40:
/* 00B40 80AE2F40 8FB00020 */ lw $s0, 0x0020($sp)
/* 00B44 80AE2F44 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
/* 00B48 80AE2F48 03E00008 */ jr $ra
/* 00B4C 80AE2F4C 00000000 */ nop

View File

@ -1,35 +0,0 @@
glabel func_80AE2F50
/* 00B50 80AE2F50 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00B54 80AE2F54 AFA40028 */ sw $a0, 0x0028($sp)
/* 00B58 80AE2F58 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00B5C 80AE2F5C 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 00B60 80AE2F60 AFA5002C */ sw $a1, 0x002C($sp)
/* 00B64 80AE2F64 0C028800 */ jal SkelAnime_GetFrameCount
/* 00B68 80AE2F68 2484EFDC */ addiu $a0, $a0, 0xEFDC ## $a0 = 0600EFDC
/* 00B6C 80AE2F6C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00B70 80AE2F70 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 00B74 80AE2F74 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00B78 80AE2F78 468021A0 */ cvt.s.w $f6, $f4
/* 00B7C 80AE2F7C 8FA40028 */ lw $a0, 0x0028($sp)
/* 00B80 80AE2F80 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 00B84 80AE2F84 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00B88 80AE2F88 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00B8C 80AE2F8C 24A5EFDC */ addiu $a1, $a1, 0xEFDC ## $a1 = 0600EFDC
/* 00B90 80AE2F90 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00B94 80AE2F94 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 00B98 80AE2F98 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00B9C 80AE2F9C E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00BA0 80AE2FA0 0C029468 */ jal SkelAnime_ChangeAnim
/* 00BA4 80AE2FA4 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 00BA8 80AE2FA8 8FA40028 */ lw $a0, 0x0028($sp)
/* 00BAC 80AE2FAC 240F0002 */ addiu $t7, $zero, 0x0002 ## $t7 = 00000002
/* 00BB0 80AE2FB0 3C0580AE */ lui $a1, %hi(func_80AE2FD0) ## $a1 = 80AE0000
/* 00BB4 80AE2FB4 24A52FD0 */ addiu $a1, $a1, %lo(func_80AE2FD0) ## $a1 = 80AE2FD0
/* 00BB8 80AE2FB8 0C2B8900 */ jal func_80AE2400
/* 00BBC 80AE2FBC A08F031B */ sb $t7, 0x031B($a0) ## 0000031B
/* 00BC0 80AE2FC0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00BC4 80AE2FC4 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00BC8 80AE2FC8 03E00008 */ jr $ra
/* 00BCC 80AE2FCC 00000000 */ nop

View File

@ -1,148 +0,0 @@
glabel func_80AE2FD0
/* 00BD0 80AE2FD0 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00BD4 80AE2FD4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00BD8 80AE2FD8 AFB00020 */ sw $s0, 0x0020($sp)
/* 00BDC 80AE2FDC AFA5003C */ sw $a1, 0x003C($sp)
/* 00BE0 80AE2FE0 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44
/* 00BE4 80AE2FE4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00BE8 80AE2FE8 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
/* 00BEC 80AE2FEC AFA50028 */ sw $a1, 0x0028($sp)
/* 00BF0 80AE2FF0 0C00B6B0 */ jal func_8002DAC0
/* 00BF4 80AE2FF4 AFAF0034 */ sw $t7, 0x0034($sp)
/* 00BF8 80AE2FF8 A7A2002E */ sh $v0, 0x002E($sp)
/* 00BFC 80AE2FFC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C00 80AE3000 0C00B6DB */ jal func_8002DB6C
/* 00C04 80AE3004 8FA50028 */ lw $a1, 0x0028($sp)
/* 00C08 80AE3008 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 00C0C 80AE300C 44812000 */ mtc1 $at, $f4 ## $f4 = 5.00
/* 00C10 80AE3010 87A5002E */ lh $a1, 0x002E($sp)
/* 00C14 80AE3014 240701C2 */ addiu $a3, $zero, 0x01C2 ## $a3 = 000001C2
/* 00C18 80AE3018 4600203E */ c.le.s $f4, $f0
/* 00C1C 80AE301C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 00C20 80AE3020 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00C24 80AE3024 45020008 */ bc1fl .L80AE3048
/* 00C28 80AE3028 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 00C2C 80AE302C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 00C30 80AE3030 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00C34 80AE3034 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00C38 80AE3038 AFA00010 */ sw $zero, 0x0010($sp)
/* 00C3C 80AE303C 10000014 */ beq $zero, $zero, .L80AE3090
/* 00C40 80AE3040 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 00C44 80AE3044 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
.L80AE3048:
/* 00C48 80AE3048 86050016 */ lh $a1, 0x0016($s0) ## 00000016
/* 00C4C 80AE304C 240701C2 */ addiu $a3, $zero, 0x01C2 ## $a3 = 000001C2
/* 00C50 80AE3050 E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
/* 00C54 80AE3054 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00C58 80AE3058 AFA00010 */ sw $zero, 0x0010($sp)
/* 00C5C 80AE305C 5440000C */ bnel $v0, $zero, .L80AE3090
/* 00C60 80AE3060 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 00C64 80AE3064 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00C68 80AE3068 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00C6C 80AE306C 13010005 */ beq $t8, $at, .L80AE3084
/* 00C70 80AE3070 00000000 */ nop
/* 00C74 80AE3074 0C2B89A7 */ jal func_80AE269C
/* 00C78 80AE3078 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C7C 80AE307C 10000004 */ beq $zero, $zero, .L80AE3090
/* 00C80 80AE3080 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
.L80AE3084:
/* 00C84 80AE3084 0C2B8E75 */ jal func_80AE39D4
/* 00C88 80AE3088 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C8C 80AE308C 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
.L80AE3090:
/* 00C90 80AE3090 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00C94 80AE3094 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00C98 80AE3098 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 00C9C 80AE309C 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00CA0 80AE30A0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00CA4 80AE30A4 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 00CA8 80AE30A8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00CAC 80AE30AC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00CB0 80AE30B0 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 00CB4 80AE30B4 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00CB8 80AE30B8 AFA00010 */ sw $zero, 0x0010($sp)
/* 00CBC 80AE30BC 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
/* 00CC0 80AE30C0 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 00CC4 80AE30C4 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00CC8 80AE30C8 A6190032 */ sh $t9, 0x0032($s0) ## 00000032
/* 00CCC 80AE30CC 8FA40034 */ lw $a0, 0x0034($sp)
/* 00CD0 80AE30D0 3C01002C */ lui $at, 0x002C ## $at = 002C0000
/* 00CD4 80AE30D4 34216080 */ ori $at, $at, 0x6080 ## $at = 002C6080
/* 00CD8 80AE30D8 8C88067C */ lw $t0, 0x067C($a0) ## 0000067C
/* 00CDC 80AE30DC 01014824 */ and $t1, $t0, $at
/* 00CE0 80AE30E0 55200014 */ bnel $t1, $zero, .L80AE3134
/* 00CE4 80AE30E4 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 00CE8 80AE30E8 8C8A0680 */ lw $t2, 0x0680($a0) ## 00000680
/* 00CEC 80AE30EC 314B0080 */ andi $t3, $t2, 0x0080 ## $t3 = 00000000
/* 00CF0 80AE30F0 55600010 */ bnel $t3, $zero, .L80AE3134
/* 00CF4 80AE30F4 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 00CF8 80AE30F8 0C00B6DB */ jal func_8002DB6C
/* 00CFC 80AE30FC 8FA50028 */ lw $a1, 0x0028($sp)
/* 00D00 80AE3100 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 00D04 80AE3104 44814000 */ mtc1 $at, $f8 ## $f8 = 150.00
/* 00D08 80AE3108 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D0C 80AE310C 4608003C */ c.lt.s $f0, $f8
/* 00D10 80AE3110 00000000 */ nop
/* 00D14 80AE3114 45020007 */ bc1fl .L80AE3134
/* 00D18 80AE3118 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
/* 00D1C 80AE311C A200001F */ sb $zero, 0x001F($s0) ## 0000001F
/* 00D20 80AE3120 0C2B8AE4 */ jal func_80AE2B90
/* 00D24 80AE3124 8FA5003C */ lw $a1, 0x003C($sp)
/* 00D28 80AE3128 1000000D */ beq $zero, $zero, .L80AE3160
/* 00D2C 80AE312C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00D30 80AE3130 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
.L80AE3134:
/* 00D34 80AE3134 5980000A */ blezl $t4, .L80AE3160
/* 00D38 80AE3138 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00D3C 80AE313C 8E0D0118 */ lw $t5, 0x0118($s0) ## 00000118
/* 00D40 80AE3140 51A00006 */ beql $t5, $zero, .L80AE315C
/* 00D44 80AE3144 A2000305 */ sb $zero, 0x0305($s0) ## 00000305
/* 00D48 80AE3148 0C2B8C77 */ jal func_80AE31DC
/* 00D4C 80AE314C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D50 80AE3150 10000003 */ beq $zero, $zero, .L80AE3160
/* 00D54 80AE3154 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00D58 80AE3158 A2000305 */ sb $zero, 0x0305($s0) ## 00000305
.L80AE315C:
/* 00D5C 80AE315C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
.L80AE3160:
/* 00D60 80AE3160 44815000 */ mtc1 $at, $f10 ## $f10 = 10.00
/* 00D64 80AE3164 C60001A0 */ lwc1 $f0, 0x01A0($s0) ## 000001A0
/* 00D68 80AE3168 3C0141B0 */ lui $at, 0x41B0 ## $at = 41B00000
/* 00D6C 80AE316C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D70 80AE3170 46005032 */ c.eq.s $f10, $f0
/* 00D74 80AE3174 00000000 */ nop
/* 00D78 80AE3178 45010008 */ bc1t .L80AE319C
/* 00D7C 80AE317C 00000000 */ nop
/* 00D80 80AE3180 44818000 */ mtc1 $at, $f16 ## $f16 = 22.00
/* 00D84 80AE3184 8FAE003C */ lw $t6, 0x003C($sp)
/* 00D88 80AE3188 3C0F0001 */ lui $t7, 0x0001 ## $t7 = 00010000
/* 00D8C 80AE318C 46008032 */ c.eq.s $f16, $f0
/* 00D90 80AE3190 01EE7821 */ addu $t7, $t7, $t6
/* 00D94 80AE3194 45020006 */ bc1fl .L80AE31B0
/* 00D98 80AE3198 8DEF1DE4 */ lw $t7, 0x1DE4($t7) ## 00011DE4
.L80AE319C:
/* 00D9C 80AE319C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00DA0 80AE31A0 2405382E */ addiu $a1, $zero, 0x382E ## $a1 = 0000382E
/* 00DA4 80AE31A4 10000009 */ beq $zero, $zero, .L80AE31CC
/* 00DA8 80AE31A8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00DAC 80AE31AC 8DEF1DE4 */ lw $t7, 0x1DE4($t7) ## 00001DE4
.L80AE31B0:
/* 00DB0 80AE31B0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00DB4 80AE31B4 31F8005F */ andi $t8, $t7, 0x005F ## $t8 = 00000000
/* 00DB8 80AE31B8 57000004 */ bnel $t8, $zero, .L80AE31CC
/* 00DBC 80AE31BC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00DC0 80AE31C0 0C00BE0A */ jal Audio_PlayActorSound2
/* 00DC4 80AE31C4 240538E4 */ addiu $a1, $zero, 0x38E4 ## $a1 = 000038E4
/* 00DC8 80AE31C8 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE31CC:
/* 00DCC 80AE31CC 8FB00020 */ lw $s0, 0x0020($sp)
/* 00DD0 80AE31D0 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00DD4 80AE31D4 03E00008 */ jr $ra
/* 00DD8 80AE31D8 00000000 */ nop

View File

@ -1,36 +0,0 @@
glabel func_80AE31DC
/* 00DDC 80AE31DC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00DE0 80AE31E0 AFA40028 */ sw $a0, 0x0028($sp)
/* 00DE4 80AE31E4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00DE8 80AE31E8 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 00DEC 80AE31EC 0C028800 */ jal SkelAnime_GetFrameCount
/* 00DF0 80AE31F0 2484EFDC */ addiu $a0, $a0, 0xEFDC ## $a0 = 0600EFDC
/* 00DF4 80AE31F4 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00DF8 80AE31F8 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 00DFC 80AE31FC 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 00E00 80AE3200 468021A0 */ cvt.s.w $f6, $f4
/* 00E04 80AE3204 8FA40028 */ lw $a0, 0x0028($sp)
/* 00E08 80AE3208 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 00E0C 80AE320C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00E10 80AE3210 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00E14 80AE3214 24A5EFDC */ addiu $a1, $a1, 0xEFDC ## $a1 = 0600EFDC
/* 00E18 80AE3218 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00E1C 80AE321C 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 00E20 80AE3220 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00E24 80AE3224 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00E28 80AE3228 0C029468 */ jal SkelAnime_ChangeAnim
/* 00E2C 80AE322C 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 00E30 80AE3230 8FA40028 */ lw $a0, 0x0028($sp)
/* 00E34 80AE3234 240F0003 */ addiu $t7, $zero, 0x0003 ## $t7 = 00000003
/* 00E38 80AE3238 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 00E3C 80AE323C 3C0580AE */ lui $a1, %hi(func_80AE3260) ## $a1 = 80AE0000
/* 00E40 80AE3240 24A53260 */ addiu $a1, $a1, %lo(func_80AE3260) ## $a1 = 80AE3260
/* 00E44 80AE3244 A08F031B */ sb $t7, 0x031B($a0) ## 0000031B
/* 00E48 80AE3248 0C2B8900 */ jal func_80AE2400
/* 00E4C 80AE324C A0980305 */ sb $t8, 0x0305($a0) ## 00000305
/* 00E50 80AE3250 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00E54 80AE3254 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00E58 80AE3258 03E00008 */ jr $ra
/* 00E5C 80AE325C 00000000 */ nop

View File

@ -1,121 +0,0 @@
.late_rodata
glabel D_80AE49A0
.float 0.4
.text
glabel func_80AE3260
/* 00E60 80AE3260 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00E64 80AE3264 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00E68 80AE3268 AFB00020 */ sw $s0, 0x0020($sp)
/* 00E6C 80AE326C AFA50044 */ sw $a1, 0x0044($sp)
/* 00E70 80AE3270 8C820118 */ lw $v0, 0x0118($a0) ## 00000118
/* 00E74 80AE3274 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00E78 80AE3278 8FA50044 */ lw $a1, 0x0044($sp)
/* 00E7C 80AE327C 10400036 */ beq $v0, $zero, .L80AE3358
/* 00E80 80AE3280 00000000 */ nop
/* 00E84 80AE3284 8C4F0024 */ lw $t7, 0x0024($v0) ## 00000024
/* 00E88 80AE3288 27A5002C */ addiu $a1, $sp, 0x002C ## $a1 = FFFFFFEC
/* 00E8C 80AE328C ACAF0000 */ sw $t7, 0x0000($a1) ## FFFFFFEC
/* 00E90 80AE3290 8C4E0028 */ lw $t6, 0x0028($v0) ## 00000028
/* 00E94 80AE3294 ACAE0004 */ sw $t6, 0x0004($a1) ## FFFFFFF0
/* 00E98 80AE3298 8C4F002C */ lw $t7, 0x002C($v0) ## 0000002C
/* 00E9C 80AE329C 0C00B6B0 */ jal func_8002DAC0
/* 00EA0 80AE32A0 ACAF0008 */ sw $t7, 0x0008($a1) ## FFFFFFF4
/* 00EA4 80AE32A4 00022C00 */ sll $a1, $v0, 16
/* 00EA8 80AE32A8 00052C03 */ sra $a1, $a1, 16
/* 00EAC 80AE32AC 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 00EB0 80AE32B0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00EB4 80AE32B4 240700FA */ addiu $a3, $zero, 0x00FA ## $a3 = 000000FA
/* 00EB8 80AE32B8 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00EBC 80AE32BC AFA00010 */ sw $zero, 0x0010($sp)
/* 00EC0 80AE32C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00EC4 80AE32C4 0C00B6DB */ jal func_8002DB6C
/* 00EC8 80AE32C8 27A5002C */ addiu $a1, $sp, 0x002C ## $a1 = FFFFFFEC
/* 00ECC 80AE32CC 3C014234 */ lui $at, 0x4234 ## $at = 42340000
/* 00ED0 80AE32D0 44812000 */ mtc1 $at, $f4 ## $f4 = 45.00
/* 00ED4 80AE32D4 3C0180AE */ lui $at, %hi(D_80AE49A0) ## $at = 80AE0000
/* 00ED8 80AE32D8 4600203E */ c.le.s $f4, $f0
/* 00EDC 80AE32DC 00000000 */ nop
/* 00EE0 80AE32E0 45020005 */ bc1fl .L80AE32F8
/* 00EE4 80AE32E4 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00EE8 80AE32E8 C42649A0 */ lwc1 $f6, %lo(D_80AE49A0)($at)
/* 00EEC 80AE32EC 1000000C */ beq $zero, $zero, .L80AE3320
/* 00EF0 80AE32F0 E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
/* 00EF4 80AE32F4 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
.L80AE32F8:
/* 00EF8 80AE32F8 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
/* 00EFC 80AE32FC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00F00 80AE3300 13010005 */ beq $t8, $at, .L80AE3318
/* 00F04 80AE3304 E6080068 */ swc1 $f8, 0x0068($s0) ## 00000068
/* 00F08 80AE3308 0C2B89A7 */ jal func_80AE269C
/* 00F0C 80AE330C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F10 80AE3310 10000004 */ beq $zero, $zero, .L80AE3324
/* 00F14 80AE3314 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
.L80AE3318:
/* 00F18 80AE3318 0C2B8E75 */ jal func_80AE39D4
/* 00F1C 80AE331C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80AE3320:
/* 00F20 80AE3320 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
.L80AE3324:
/* 00F24 80AE3324 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00F28 80AE3328 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00F2C 80AE332C 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 00F30 80AE3330 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00F34 80AE3334 AFA00010 */ sw $zero, 0x0010($sp)
/* 00F38 80AE3338 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 00F3C 80AE333C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00F40 80AE3340 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00F44 80AE3344 24070064 */ addiu $a3, $zero, 0x0064 ## $a3 = 00000064
/* 00F48 80AE3348 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00F4C 80AE334C AFA00010 */ sw $zero, 0x0010($sp)
/* 00F50 80AE3350 10000004 */ beq $zero, $zero, .L80AE3364
/* 00F54 80AE3354 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
.L80AE3358:
/* 00F58 80AE3358 0C2B8AE4 */ jal func_80AE2B90
/* 00F5C 80AE335C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F60 80AE3360 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
.L80AE3364:
/* 00F64 80AE3364 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 00F68 80AE3368 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00F6C 80AE336C A6190032 */ sh $t9, 0x0032($s0) ## 00000032
/* 00F70 80AE3370 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00F74 80AE3374 44815000 */ mtc1 $at, $f10 ## $f10 = 10.00
/* 00F78 80AE3378 C60001A0 */ lwc1 $f0, 0x01A0($s0) ## 000001A0
/* 00F7C 80AE337C 3C0141B0 */ lui $at, 0x41B0 ## $at = 41B00000
/* 00F80 80AE3380 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F84 80AE3384 46005032 */ c.eq.s $f10, $f0
/* 00F88 80AE3388 00000000 */ nop
/* 00F8C 80AE338C 45010008 */ bc1t .L80AE33B0
/* 00F90 80AE3390 00000000 */ nop
/* 00F94 80AE3394 44818000 */ mtc1 $at, $f16 ## $f16 = 22.00
/* 00F98 80AE3398 8FA80044 */ lw $t0, 0x0044($sp)
/* 00F9C 80AE339C 3C090001 */ lui $t1, 0x0001 ## $t1 = 00010000
/* 00FA0 80AE33A0 46008032 */ c.eq.s $f16, $f0
/* 00FA4 80AE33A4 01284821 */ addu $t1, $t1, $t0
/* 00FA8 80AE33A8 45020006 */ bc1fl .L80AE33C4
/* 00FAC 80AE33AC 8D291DE4 */ lw $t1, 0x1DE4($t1) ## 00011DE4
.L80AE33B0:
/* 00FB0 80AE33B0 0C00BE0A */ jal Audio_PlayActorSound2
/* 00FB4 80AE33B4 2405382E */ addiu $a1, $zero, 0x382E ## $a1 = 0000382E
/* 00FB8 80AE33B8 10000009 */ beq $zero, $zero, .L80AE33E0
/* 00FBC 80AE33BC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00FC0 80AE33C0 8D291DE4 */ lw $t1, 0x1DE4($t1) ## 00001DE4
.L80AE33C4:
/* 00FC4 80AE33C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00FC8 80AE33C8 312A005F */ andi $t2, $t1, 0x005F ## $t2 = 00000000
/* 00FCC 80AE33CC 55400004 */ bnel $t2, $zero, .L80AE33E0
/* 00FD0 80AE33D0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00FD4 80AE33D4 0C00BE0A */ jal Audio_PlayActorSound2
/* 00FD8 80AE33D8 240538E4 */ addiu $a1, $zero, 0x38E4 ## $a1 = 000038E4
/* 00FDC 80AE33DC 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE33E0:
/* 00FE0 80AE33E0 8FB00020 */ lw $s0, 0x0020($sp)
/* 00FE4 80AE33E4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00FE8 80AE33E8 03E00008 */ jr $ra
/* 00FEC 80AE33EC 00000000 */ nop

View File

@ -1,26 +0,0 @@
glabel func_80AE33F0
/* 00FF0 80AE33F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00FF4 80AE33F4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00FF8 80AE33F8 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00FFC 80AE33FC 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 01000 80AE3400 24A54ADC */ addiu $a1, $a1, 0x4ADC ## $a1 = 06004ADC
/* 01004 80AE3404 AFA60018 */ sw $a2, 0x0018($sp)
/* 01008 80AE3408 0C02947A */ jal SkelAnime_ChangeAnimDefaultStop
/* 0100C 80AE340C 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01010 80AE3410 8FA40018 */ lw $a0, 0x0018($sp)
/* 01014 80AE3414 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01018 80AE3418 300E00FF */ andi $t6, $zero, 0x00FF ## $t6 = 00000000
/* 0101C 80AE341C 240F00C8 */ addiu $t7, $zero, 0x00C8 ## $t7 = 000000C8
/* 01020 80AE3420 24180008 */ addiu $t8, $zero, 0x0008 ## $t8 = 00000008
/* 01024 80AE3424 3C0580AE */ lui $a1, %hi(func_80AE3454) ## $a1 = 80AE0000
/* 01028 80AE3428 24A53454 */ addiu $a1, $a1, %lo(func_80AE3454) ## $a1 = 80AE3454
/* 0102C 80AE342C A48E030C */ sh $t6, 0x030C($a0) ## 0000030C
/* 01030 80AE3430 A0800304 */ sb $zero, 0x0304($a0) ## 00000304
/* 01034 80AE3434 A08F0319 */ sb $t7, 0x0319($a0) ## 00000319
/* 01038 80AE3438 A098031B */ sb $t8, 0x031B($a0) ## 0000031B
/* 0103C 80AE343C 0C2B8900 */ jal func_80AE2400
/* 01040 80AE3440 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 01044 80AE3444 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01048 80AE3448 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0104C 80AE344C 03E00008 */ jr $ra
/* 01050 80AE3450 00000000 */ nop

View File

@ -1,255 +0,0 @@
.late_rodata
glabel jtbl_80AE49A4
.word L80AE3508
.word L80AE34B4
.word L80AE3538
.word L80AE3724
.word L80AE3754
.text
glabel func_80AE3454
/* 01054 80AE3454 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 01058 80AE3458 AFB00028 */ sw $s0, 0x0028($sp)
/* 0105C 80AE345C AFBF002C */ sw $ra, 0x002C($sp)
/* 01060 80AE3460 AFA5004C */ sw $a1, 0x004C($sp)
/* 01064 80AE3464 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44
/* 01068 80AE3468 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0106C 80AE346C 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01070 80AE3470 AFA40034 */ sw $a0, 0x0034($sp)
/* 01074 80AE3474 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01078 80AE3478 AFAF0040 */ sw $t7, 0x0040($sp)
/* 0107C 80AE347C 50400005 */ beql $v0, $zero, .L80AE3494
/* 01080 80AE3480 92080304 */ lbu $t0, 0x0304($s0) ## 00000304
/* 01084 80AE3484 92180304 */ lbu $t8, 0x0304($s0) ## 00000304
/* 01088 80AE3488 27190001 */ addiu $t9, $t8, 0x0001 ## $t9 = 00000001
/* 0108C 80AE348C A2190304 */ sb $t9, 0x0304($s0) ## 00000304
/* 01090 80AE3490 92080304 */ lbu $t0, 0x0304($s0) ## 00000304
.L80AE3494:
/* 01094 80AE3494 2D010005 */ sltiu $at, $t0, 0x0005
/* 01098 80AE3498 102000C3 */ beq $at, $zero, .L80AE37A8
/* 0109C 80AE349C 00084080 */ sll $t0, $t0, 2
/* 010A0 80AE34A0 3C0180AE */ lui $at, %hi(jtbl_80AE49A4) ## $at = 80AE0000
/* 010A4 80AE34A4 00280821 */ addu $at, $at, $t0
/* 010A8 80AE34A8 8C2849A4 */ lw $t0, %lo(jtbl_80AE49A4)($at)
/* 010AC 80AE34AC 01000008 */ jr $t0
/* 010B0 80AE34B0 00000000 */ nop
glabel L80AE34B4
/* 010B4 80AE34B4 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 010B8 80AE34B8 24A54268 */ addiu $a1, $a1, 0x4268 ## $a1 = 06004268
/* 010BC 80AE34BC 0C0294BE */ jal SkelAnime_ChangeAnimDefaultRepeat
/* 010C0 80AE34C0 8FA40034 */ lw $a0, 0x0034($sp)
/* 010C4 80AE34C4 92090304 */ lbu $t1, 0x0304($s0) ## 00000304
/* 010C8 80AE34C8 8FA4004C */ lw $a0, 0x004C($sp)
/* 010CC 80AE34CC 3C190001 */ lui $t9, 0x0001 ## $t9 = 00010000
/* 010D0 80AE34D0 252A0001 */ addiu $t2, $t1, 0x0001 ## $t2 = 00000001
/* 010D4 80AE34D4 A20A0304 */ sb $t2, 0x0304($s0) ## 00000304
/* 010D8 80AE34D8 0324C821 */ addu $t9, $t9, $a0
/* 010DC 80AE34DC 8F391D58 */ lw $t9, 0x1D58($t9) ## 00011D58
/* 010E0 80AE34E0 2405FFF8 */ addiu $a1, $zero, 0xFFF8 ## $a1 = FFFFFFF8
/* 010E4 80AE34E4 0320F809 */ jalr $ra, $t9
/* 010E8 80AE34E8 00000000 */ nop
/* 010EC 80AE34EC C60C0090 */ lwc1 $f12, 0x0090($s0) ## 00000090
/* 010F0 80AE34F0 240500FF */ addiu $a1, $zero, 0x00FF ## $a1 = 000000FF
/* 010F4 80AE34F4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 010F8 80AE34F8 0C02A800 */ jal func_800AA000
/* 010FC 80AE34FC 2407000C */ addiu $a3, $zero, 0x000C ## $a3 = 0000000C
/* 01100 80AE3500 240B0014 */ addiu $t3, $zero, 0x0014 ## $t3 = 00000014
/* 01104 80AE3504 A20B0319 */ sb $t3, 0x0319($s0) ## 00000319
glabel L80AE3508
/* 01108 80AE3508 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 0110C 80AE350C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01110 80AE3510 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01114 80AE3514 240705DC */ addiu $a3, $zero, 0x05DC ## $a3 = 000005DC
/* 01118 80AE3518 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 0111C 80AE351C AFA00010 */ sw $zero, 0x0010($sp)
/* 01120 80AE3520 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 01124 80AE3524 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01128 80AE3528 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 0112C 80AE352C 240705DC */ addiu $a3, $zero, 0x05DC ## $a3 = 000005DC
/* 01130 80AE3530 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 01134 80AE3534 AFA00010 */ sw $zero, 0x0010($sp)
glabel L80AE3538
/* 01138 80AE3538 8FAC0040 */ lw $t4, 0x0040($sp)
/* 0113C 80AE353C 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 01140 80AE3540 3C0A8016 */ lui $t2, %hi(gSaveContext+4)
/* 01144 80AE3544 8D8D0680 */ lw $t5, 0x0680($t4) ## 00000680
/* 01148 80AE3548 31AE0080 */ andi $t6, $t5, 0x0080 ## $t6 = 00000000
/* 0114C 80AE354C 15C00016 */ bne $t6, $zero, .L80AE35A8
/* 01150 80AE3550 00000000 */ nop
/* 01154 80AE3554 0C028800 */ jal SkelAnime_GetFrameCount
/* 01158 80AE3558 248446F8 */ addiu $a0, $a0, 0x46F8 ## $a0 = 060046F8
/* 0115C 80AE355C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 01160 80AE3560 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 01164 80AE3564 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 01168 80AE3568 468021A0 */ cvt.s.w $f6, $f4
/* 0116C 80AE356C 240F0003 */ addiu $t7, $zero, 0x0003 ## $t7 = 00000003
/* 01170 80AE3570 44070000 */ mfc1 $a3, $f0
/* 01174 80AE3574 AFAF0014 */ sw $t7, 0x0014($sp)
/* 01178 80AE3578 24A546F8 */ addiu $a1, $a1, 0x46F8 ## $a1 = 060046F8
/* 0117C 80AE357C 8FA40034 */ lw $a0, 0x0034($sp)
/* 01180 80AE3580 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01184 80AE3584 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01188 80AE3588 0C029468 */ jal SkelAnime_ChangeAnim
/* 0118C 80AE358C E7A00018 */ swc1 $f0, 0x0018($sp)
/* 01190 80AE3590 92180304 */ lbu $t8, 0x0304($s0) ## 00000304
/* 01194 80AE3594 24090004 */ addiu $t1, $zero, 0x0004 ## $t1 = 00000004
/* 01198 80AE3598 A209031B */ sb $t1, 0x031B($s0) ## 0000031B
/* 0119C 80AE359C 27080001 */ addiu $t0, $t8, 0x0001 ## $t0 = 00000001
/* 011A0 80AE35A0 10000081 */ beq $zero, $zero, .L80AE37A8
/* 011A4 80AE35A4 A2080304 */ sb $t0, 0x0304($s0) ## 00000304
.L80AE35A8:
/* 011A8 80AE35A8 8D4AE664 */ lw $t2, %lo(gSaveContext+4)($t2)
/* 011AC 80AE35AC 3C05C4BB */ lui $a1, 0xC4BB ## $a1 = C4BB0000
/* 011B0 80AE35B0 34A58000 */ ori $a1, $a1, 0x8000 ## $a1 = C4BB8000
/* 011B4 80AE35B4 11400006 */ beq $t2, $zero, .L80AE35D0
/* 011B8 80AE35B8 260400BC */ addiu $a0, $s0, 0x00BC ## $a0 = 000000BC
/* 011BC 80AE35BC 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
/* 011C0 80AE35C0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 011C4 80AE35C4 3C074316 */ lui $a3, 0x4316 ## $a3 = 43160000
/* 011C8 80AE35C8 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 011CC 80AE35CC E7A80010 */ swc1 $f8, 0x0010($sp)
.L80AE35D0:
/* 011D0 80AE35D0 8FB90040 */ lw $t9, 0x0040($sp)
/* 011D4 80AE35D4 0C01DE1C */ jal Math_Sins
## sins?
/* 011D8 80AE35D8 872400B6 */ lh $a0, 0x00B6($t9) ## 000000B6
/* 011DC 80AE35DC 3C01C1C8 */ lui $at, 0xC1C8 ## $at = C1C80000
/* 011E0 80AE35E0 44815000 */ mtc1 $at, $f10 ## $f10 = -25.00
/* 011E4 80AE35E4 8FAB0040 */ lw $t3, 0x0040($sp)
/* 011E8 80AE35E8 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 011EC 80AE35EC 460A0402 */ mul.s $f16, $f0, $f10
/* 011F0 80AE35F0 C5720024 */ lwc1 $f18, 0x0024($t3) ## 00000024
/* 011F4 80AE35F4 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
/* 011F8 80AE35F8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 011FC 80AE35FC 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 01200 80AE3600 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01204 80AE3604 46128100 */ add.s $f4, $f16, $f18
/* 01208 80AE3608 44052000 */ mfc1 $a1, $f4
/* 0120C 80AE360C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 01210 80AE3610 00000000 */ nop
/* 01214 80AE3614 8FAC0040 */ lw $t4, 0x0040($sp)
/* 01218 80AE3618 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
/* 0121C 80AE361C 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
/* 01220 80AE3620 8D850028 */ lw $a1, 0x0028($t4) ## 00000028
/* 01224 80AE3624 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01228 80AE3628 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 0122C 80AE362C 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 01230 80AE3630 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 01234 80AE3634 8FAD0040 */ lw $t5, 0x0040($sp)
/* 01238 80AE3638 0C01DE0D */ jal Math_Coss
## coss?
/* 0123C 80AE363C 85A400B6 */ lh $a0, 0x00B6($t5) ## 000000B6
/* 01240 80AE3640 3C01C1C8 */ lui $at, 0xC1C8 ## $at = C1C80000
/* 01244 80AE3644 44815000 */ mtc1 $at, $f10 ## $f10 = -25.00
/* 01248 80AE3648 8FAE0040 */ lw $t6, 0x0040($sp)
/* 0124C 80AE364C 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01250 80AE3650 460A0402 */ mul.s $f16, $f0, $f10
/* 01254 80AE3654 C5D2002C */ lwc1 $f18, 0x002C($t6) ## 0000002C
/* 01258 80AE3658 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
/* 0125C 80AE365C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01260 80AE3660 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 01264 80AE3664 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01268 80AE3668 46128100 */ add.s $f4, $f16, $f18
/* 0126C 80AE366C 44052000 */ mfc1 $a1, $f4
/* 01270 80AE3670 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 01274 80AE3674 00000000 */ nop
/* 01278 80AE3678 8FAF0040 */ lw $t7, 0x0040($sp)
/* 0127C 80AE367C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 01280 80AE3680 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01284 80AE3684 85E500B6 */ lh $a1, 0x00B6($t7) ## 000000B6
/* 01288 80AE3688 AFA00010 */ sw $zero, 0x0010($sp)
/* 0128C 80AE368C 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 01290 80AE3690 24071770 */ addiu $a3, $zero, 0x1770 ## $a3 = 00001770
/* 01294 80AE3694 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
/* 01298 80AE3698 C60A01A0 */ lwc1 $f10, 0x01A0($s0) ## 000001A0
/* 0129C 80AE369C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 012A0 80AE36A0 460A4032 */ c.eq.s $f8, $f10
/* 012A4 80AE36A4 00000000 */ nop
/* 012A8 80AE36A8 45020004 */ bc1fl .L80AE36BC
/* 012AC 80AE36AC 92180319 */ lbu $t8, 0x0319($s0) ## 00000319
/* 012B0 80AE36B0 0C00BE0A */ jal Audio_PlayActorSound2
/* 012B4 80AE36B4 240538E8 */ addiu $a1, $zero, 0x38E8 ## $a1 = 000038E8
/* 012B8 80AE36B8 92180319 */ lbu $t8, 0x0319($s0) ## 00000319
.L80AE36BC:
/* 012BC 80AE36BC 2708FFFF */ addiu $t0, $t8, 0xFFFF ## $t0 = FFFFFFFF
/* 012C0 80AE36C0 310900FF */ andi $t1, $t0, 0x00FF ## $t1 = 000000FF
/* 012C4 80AE36C4 15200038 */ bne $t1, $zero, .L80AE37A8
/* 012C8 80AE36C8 A2080319 */ sb $t0, 0x0319($s0) ## 00000319
/* 012CC 80AE36CC 8FA4004C */ lw $a0, 0x004C($sp)
/* 012D0 80AE36D0 3C190001 */ lui $t9, 0x0001 ## $t9 = 00010000
/* 012D4 80AE36D4 2405FFF8 */ addiu $a1, $zero, 0xFFF8 ## $a1 = FFFFFFF8
/* 012D8 80AE36D8 0324C821 */ addu $t9, $t9, $a0
/* 012DC 80AE36DC 8F391D58 */ lw $t9, 0x1D58($t9) ## 00011D58
/* 012E0 80AE36E0 0320F809 */ jalr $ra, $t9
/* 012E4 80AE36E4 00000000 */ nop
/* 012E8 80AE36E8 C60C0090 */ lwc1 $f12, 0x0090($s0) ## 00000090
/* 012EC 80AE36EC 240500F0 */ addiu $a1, $zero, 0x00F0 ## $a1 = 000000F0
/* 012F0 80AE36F0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 012F4 80AE36F4 0C02A800 */ jal func_800AA000
/* 012F8 80AE36F8 2407000C */ addiu $a3, $zero, 0x000C ## $a3 = 0000000C
/* 012FC 80AE36FC 240A0014 */ addiu $t2, $zero, 0x0014 ## $t2 = 00000014
/* 01300 80AE3700 A20A0319 */ sb $t2, 0x0319($s0) ## 00000319
/* 01304 80AE3704 8FA40040 */ lw $a0, 0x0040($sp)
/* 01308 80AE3708 8C8C0678 */ lw $t4, 0x0678($a0) ## 00000678
/* 0130C 80AE370C 95850092 */ lhu $a1, 0x0092($t4) ## 00000092
/* 01310 80AE3710 24A56805 */ addiu $a1, $a1, 0x6805 ## $a1 = 00006805
/* 01314 80AE3714 0C00BDF7 */ jal func_8002F7DC
/* 01318 80AE3718 30A5FFFF */ andi $a1, $a1, 0xFFFF ## $a1 = 00006805
/* 0131C 80AE371C 10000023 */ beq $zero, $zero, .L80AE37AC
/* 01320 80AE3720 8FBF002C */ lw $ra, 0x002C($sp)
glabel L80AE3724
/* 01324 80AE3724 3C0D8016 */ lui $t5, %hi(gSaveContext+4)
/* 01328 80AE3728 8DADE664 */ lw $t5, %lo(gSaveContext+4)($t5)
/* 0132C 80AE372C 260400BC */ addiu $a0, $s0, 0x00BC ## $a0 = 000000BC
/* 01330 80AE3730 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 01334 80AE3734 11A0001C */ beq $t5, $zero, .L80AE37A8
/* 01338 80AE3738 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0133C 80AE373C 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00
/* 01340 80AE3740 3C0743C8 */ lui $a3, 0x43C8 ## $a3 = 43C80000
/* 01344 80AE3744 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 01348 80AE3748 E7B00010 */ swc1 $f16, 0x0010($sp)
/* 0134C 80AE374C 10000017 */ beq $zero, $zero, .L80AE37AC
/* 01350 80AE3750 8FBF002C */ lw $ra, 0x002C($sp)
glabel L80AE3754
/* 01354 80AE3754 3C0E8016 */ lui $t6, %hi(gSaveContext+4)
/* 01358 80AE3758 8DCEE664 */ lw $t6, %lo(gSaveContext+4)($t6)
/* 0135C 80AE375C 260400BC */ addiu $a0, $s0, 0x00BC ## $a0 = 000000BC
/* 01360 80AE3760 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 01364 80AE3764 11C00005 */ beq $t6, $zero, .L80AE377C
/* 01368 80AE3768 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0136C 80AE376C 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 01370 80AE3770 3C0743C8 */ lui $a3, 0x43C8 ## $a3 = 43C80000
/* 01374 80AE3774 0C01E0C4 */ jal Math_SmoothScaleMaxMinF
/* 01378 80AE3778 E7B20010 */ swc1 $f18, 0x0010($sp)
.L80AE377C:
/* 0137C 80AE377C 8E0F0004 */ lw $t7, 0x0004($s0) ## 00000004
/* 01380 80AE3780 2408000A */ addiu $t0, $zero, 0x000A ## $t0 = 0000000A
/* 01384 80AE3784 2409000F */ addiu $t1, $zero, 0x000F ## $t1 = 0000000F
/* 01388 80AE3788 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
/* 0138C 80AE378C A200001F */ sb $zero, 0x001F($s0) ## 0000001F
/* 01390 80AE3790 AE180004 */ sw $t8, 0x0004($s0) ## 00000004
/* 01394 80AE3794 A2080306 */ sb $t0, 0x0306($s0) ## 00000306
/* 01398 80AE3798 A2090307 */ sb $t1, 0x0307($s0) ## 00000307
/* 0139C 80AE379C 8FA5004C */ lw $a1, 0x004C($sp)
/* 013A0 80AE37A0 0C2B8AE4 */ jal func_80AE2B90
/* 013A4 80AE37A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80AE37A8:
/* 013A8 80AE37A8 8FBF002C */ lw $ra, 0x002C($sp)
.L80AE37AC:
/* 013AC 80AE37AC 8FB00028 */ lw $s0, 0x0028($sp)
/* 013B0 80AE37B0 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 013B4 80AE37B4 03E00008 */ jr $ra
/* 013B8 80AE37B8 00000000 */ nop

View File

@ -1,33 +0,0 @@
glabel func_80AE37BC
/* 013BC 80AE37BC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 013C0 80AE37C0 AFA40028 */ sw $a0, 0x0028($sp)
/* 013C4 80AE37C4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 013C8 80AE37C8 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 013CC 80AE37CC 0C028800 */ jal SkelAnime_GetFrameCount
/* 013D0 80AE37D0 24844F94 */ addiu $a0, $a0, 0x4F94 ## $a0 = 06004F94
/* 013D4 80AE37D4 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 013D8 80AE37D8 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 013DC 80AE37DC 8FA40028 */ lw $a0, 0x0028($sp)
/* 013E0 80AE37E0 468021A0 */ cvt.s.w $f6, $f4
/* 013E4 80AE37E4 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 013E8 80AE37E8 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 013EC 80AE37EC 44060000 */ mfc1 $a2, $f0
/* 013F0 80AE37F0 44070000 */ mfc1 $a3, $f0
/* 013F4 80AE37F4 AFAE0014 */ sw $t6, 0x0014($sp)
/* 013F8 80AE37F8 24A54F94 */ addiu $a1, $a1, 0x4F94 ## $a1 = 06004F94
/* 013FC 80AE37FC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01400 80AE3800 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01404 80AE3804 0C029468 */ jal SkelAnime_ChangeAnim
/* 01408 80AE3808 E7A00018 */ swc1 $f0, 0x0018($sp)
/* 0140C 80AE380C 8FA40028 */ lw $a0, 0x0028($sp)
/* 01410 80AE3810 240F0007 */ addiu $t7, $zero, 0x0007 ## $t7 = 00000007
/* 01414 80AE3814 3C0580AE */ lui $a1, %hi(func_80AE3834) ## $a1 = 80AE0000
/* 01418 80AE3818 24A53834 */ addiu $a1, $a1, %lo(func_80AE3834) ## $a1 = 80AE3834
/* 0141C 80AE381C 0C2B8900 */ jal func_80AE2400
/* 01420 80AE3820 A08F031B */ sb $t7, 0x031B($a0) ## 0000031B
/* 01424 80AE3824 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01428 80AE3828 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 0142C 80AE382C 03E00008 */ jr $ra
/* 01430 80AE3830 00000000 */ nop

View File

@ -1,68 +0,0 @@
glabel func_80AE3834
/* 01434 80AE3834 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 01438 80AE3838 3C0F80AE */ lui $t7, %hi(D_80AE492C) ## $t7 = 80AE0000
/* 0143C 80AE383C AFBF001C */ sw $ra, 0x001C($sp)
/* 01440 80AE3840 AFB00018 */ sw $s0, 0x0018($sp)
/* 01444 80AE3844 AFA50044 */ sw $a1, 0x0044($sp)
/* 01448 80AE3848 25EF492C */ addiu $t7, $t7, %lo(D_80AE492C) ## $t7 = 80AE492C
/* 0144C 80AE384C 8DF90000 */ lw $t9, 0x0000($t7) ## 80AE492C
/* 01450 80AE3850 27AE0034 */ addiu $t6, $sp, 0x0034 ## $t6 = FFFFFFF4
/* 01454 80AE3854 8DF80004 */ lw $t8, 0x0004($t7) ## 80AE4930
/* 01458 80AE3858 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 0145C 80AE385C 8DF90008 */ lw $t9, 0x0008($t7) ## 80AE4934
/* 01460 80AE3860 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 01464 80AE3864 3C0980AE */ lui $t1, %hi(D_80AE4938) ## $t1 = 80AE0000
/* 01468 80AE3868 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 0146C 80AE386C 3C0A80AE */ lui $t2, %hi(D_80AE493C) ## $t2 = 80AE0000
/* 01470 80AE3870 8D294938 */ lw $t1, %lo(D_80AE4938)($t1)
/* 01474 80AE3874 8D4A493C */ lw $t2, %lo(D_80AE493C)($t2)
/* 01478 80AE3878 8FAB0044 */ lw $t3, 0x0044($sp)
/* 0147C 80AE387C AFA90030 */ sw $t1, 0x0030($sp)
/* 01480 80AE3880 AFAA002C */ sw $t2, 0x002C($sp)
/* 01484 80AE3884 848D00B6 */ lh $t5, 0x00B6($a0) ## 000000B6
/* 01488 80AE3888 848C008A */ lh $t4, 0x008A($a0) ## 0000008A
/* 0148C 80AE388C 848F030E */ lh $t7, 0x030E($a0) ## 0000030E
/* 01490 80AE3890 84990310 */ lh $t9, 0x0310($a0) ## 00000310
/* 01494 80AE3894 018D7023 */ subu $t6, $t4, $t5
/* 01498 80AE3898 01CFC023 */ subu $t8, $t6, $t7
/* 0149C 80AE389C 03191023 */ subu $v0, $t8, $t9
/* 014A0 80AE38A0 00021400 */ sll $v0, $v0, 16
/* 014A4 80AE38A4 00021403 */ sra $v0, $v0, 16
/* 014A8 80AE38A8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 014AC 80AE38AC 04400003 */ bltz $v0, .L80AE38BC
/* 014B0 80AE38B0 8D681C44 */ lw $t0, 0x1C44($t3) ## 00001C44
/* 014B4 80AE38B4 10000002 */ beq $zero, $zero, .L80AE38C0
/* 014B8 80AE38B8 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
.L80AE38BC:
/* 014BC 80AE38BC 00021823 */ subu $v1, $zero, $v0
.L80AE38C0:
/* 014C0 80AE38C0 28612008 */ slti $at, $v1, 0x2008
/* 014C4 80AE38C4 50200015 */ beql $at, $zero, .L80AE391C
/* 014C8 80AE38C8 8FBF001C */ lw $ra, 0x001C($sp)
/* 014CC 80AE38CC 86090312 */ lh $t1, 0x0312($s0) ## 00000312
/* 014D0 80AE38D0 240B003C */ addiu $t3, $zero, 0x003C ## $t3 = 0000003C
/* 014D4 80AE38D4 240500FF */ addiu $a1, $zero, 0x00FF ## $a1 = 000000FF
/* 014D8 80AE38D8 312A0080 */ andi $t2, $t1, 0x0080 ## $t2 = 00000000
/* 014DC 80AE38DC 15400008 */ bne $t2, $zero, .L80AE3900
/* 014E0 80AE38E0 24060014 */ addiu $a2, $zero, 0x0014 ## $a2 = 00000014
/* 014E4 80AE38E4 A50B0110 */ sh $t3, 0x0110($t0) ## 00000110
/* 014E8 80AE38E8 C60C0090 */ lwc1 $f12, 0x0090($s0) ## 00000090
/* 014EC 80AE38EC 0C02A800 */ jal func_800AA000
/* 014F0 80AE38F0 24070096 */ addiu $a3, $zero, 0x0096 ## $a3 = 00000096
/* 014F4 80AE38F4 8FA40044 */ lw $a0, 0x0044($sp)
/* 014F8 80AE38F8 0C023BAB */ jal func_8008EEAC
/* 014FC 80AE38FC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
.L80AE3900:
/* 01500 80AE3900 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01504 80AE3904 0C00BE0A */ jal Audio_PlayActorSound2
/* 01508 80AE3908 240538E5 */ addiu $a1, $zero, 0x38E5 ## $a1 = 000038E5
/* 0150C 80AE390C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01510 80AE3910 0C2B8AE4 */ jal func_80AE2B90
/* 01514 80AE3914 8FA50044 */ lw $a1, 0x0044($sp)
/* 01518 80AE3918 8FBF001C */ lw $ra, 0x001C($sp)
.L80AE391C:
/* 0151C 80AE391C 8FB00018 */ lw $s0, 0x0018($sp)
/* 01520 80AE3920 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 01524 80AE3924 03E00008 */ jr $ra
/* 01528 80AE3928 00000000 */ nop

View File

@ -1,20 +0,0 @@
glabel func_80AE392C
/* 0152C 80AE392C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01530 80AE3930 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01534 80AE3934 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 01538 80AE3938 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 0153C 80AE393C 24A58040 */ addiu $a1, $a1, 0x8040 ## $a1 = 06008040
/* 01540 80AE3940 AFA70018 */ sw $a3, 0x0018($sp)
/* 01544 80AE3944 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01548 80AE3948 0C029490 */ jal SkelAnime_ChangeAnimTransitionStop
/* 0154C 80AE394C 3C06C080 */ lui $a2, 0xC080 ## $a2 = C0800000
/* 01550 80AE3950 8FA40018 */ lw $a0, 0x0018($sp)
/* 01554 80AE3954 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
/* 01558 80AE3958 3C0580AE */ lui $a1, %hi(func_80AE3978) ## $a1 = 80AE0000
/* 0155C 80AE395C 24A53978 */ addiu $a1, $a1, %lo(func_80AE3978) ## $a1 = 80AE3978
/* 01560 80AE3960 0C2B8900 */ jal func_80AE2400
/* 01564 80AE3964 A08E031B */ sb $t6, 0x031B($a0) ## 0000031B
/* 01568 80AE3968 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0156C 80AE396C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01570 80AE3970 03E00008 */ jr $ra
/* 01574 80AE3974 00000000 */ nop

View File

@ -1,28 +0,0 @@
glabel func_80AE3978
/* 01578 80AE3978 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0157C 80AE397C AFA5001C */ sw $a1, 0x001C($sp)
/* 01580 80AE3980 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
/* 01584 80AE3984 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01588 80AE3988 AFA40018 */ sw $a0, 0x0018($sp)
/* 0158C 80AE398C AFA50018 */ sw $a1, 0x0018($sp)
/* 01590 80AE3990 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01594 80AE3994 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01598 80AE3998 1040000A */ beq $v0, $zero, .L80AE39C4
/* 0159C 80AE399C 8FA50018 */ lw $a1, 0x0018($sp)
/* 015A0 80AE39A0 8CAE0118 */ lw $t6, 0x0118($a1) ## 00000118
/* 015A4 80AE39A4 11C00005 */ beq $t6, $zero, .L80AE39BC
/* 015A8 80AE39A8 00000000 */ nop
/* 015AC 80AE39AC 0C2B8C77 */ jal func_80AE31DC
/* 015B0 80AE39B0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 015B4 80AE39B4 10000004 */ beq $zero, $zero, .L80AE39C8
/* 015B8 80AE39B8 8FBF0014 */ lw $ra, 0x0014($sp)
.L80AE39BC:
/* 015BC 80AE39BC 0C2B8DEF */ jal func_80AE37BC
/* 015C0 80AE39C0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
.L80AE39C4:
/* 015C4 80AE39C4 8FBF0014 */ lw $ra, 0x0014($sp)
.L80AE39C8:
/* 015C8 80AE39C8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 015CC 80AE39CC 03E00008 */ jr $ra
/* 015D0 80AE39D0 00000000 */ nop

View File

@ -1,35 +0,0 @@
glabel func_80AE39D4
/* 015D4 80AE39D4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 015D8 80AE39D8 AFA40028 */ sw $a0, 0x0028($sp)
/* 015DC 80AE39DC AFBF0024 */ sw $ra, 0x0024($sp)
/* 015E0 80AE39E0 3C040601 */ lui $a0, 0x0601 ## $a0 = 06010000
/* 015E4 80AE39E4 0C028800 */ jal SkelAnime_GetFrameCount
/* 015E8 80AE39E8 24848040 */ addiu $a0, $a0, 0x8040 ## $a0 = 06008040
/* 015EC 80AE39EC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 015F0 80AE39F0 3C01C080 */ lui $at, 0xC080 ## $at = C0800000
/* 015F4 80AE39F4 44814000 */ mtc1 $at, $f8 ## $f8 = -4.00
/* 015F8 80AE39F8 46802120 */ cvt.s.w $f4, $f4
/* 015FC 80AE39FC 8FA40028 */ lw $a0, 0x0028($sp)
/* 01600 80AE3A00 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01604 80AE3A04 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 01608 80AE3A08 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 0160C 80AE3A0C AFAE0014 */ sw $t6, 0x0014($sp)
/* 01610 80AE3A10 44072000 */ mfc1 $a3, $f4
/* 01614 80AE3A14 24A58040 */ addiu $a1, $a1, 0x8040 ## $a1 = 06008040
/* 01618 80AE3A18 3C06BF80 */ lui $a2, 0xBF80 ## $a2 = BF800000
/* 0161C 80AE3A1C E7A80018 */ swc1 $f8, 0x0018($sp)
/* 01620 80AE3A20 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 01624 80AE3A24 0C029468 */ jal SkelAnime_ChangeAnim
/* 01628 80AE3A28 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 0162C 80AE3A2C 8FA40028 */ lw $a0, 0x0028($sp)
/* 01630 80AE3A30 240F0006 */ addiu $t7, $zero, 0x0006 ## $t7 = 00000006
/* 01634 80AE3A34 3C0580AE */ lui $a1, %hi(func_80AE3A54) ## $a1 = 80AE0000
/* 01638 80AE3A38 24A53A54 */ addiu $a1, $a1, %lo(func_80AE3A54) ## $a1 = 80AE3A54
/* 0163C 80AE3A3C 0C2B8900 */ jal func_80AE2400
/* 01640 80AE3A40 A08F031B */ sb $t7, 0x031B($a0) ## 0000031B
/* 01644 80AE3A44 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01648 80AE3A48 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 0164C 80AE3A4C 03E00008 */ jr $ra
/* 01650 80AE3A50 00000000 */ nop

View File

@ -1,17 +0,0 @@
glabel func_80AE3A54
/* 01654 80AE3A54 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01658 80AE3A58 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0165C 80AE3A5C AFA40018 */ sw $a0, 0x0018($sp)
/* 01660 80AE3A60 AFA5001C */ sw $a1, 0x001C($sp)
/* 01664 80AE3A64 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01668 80AE3A68 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 0166C 80AE3A6C 50400004 */ beql $v0, $zero, .L80AE3A80
/* 01670 80AE3A70 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01674 80AE3A74 0C2B89A7 */ jal func_80AE269C
/* 01678 80AE3A78 8FA40018 */ lw $a0, 0x0018($sp)
/* 0167C 80AE3A7C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80AE3A80:
/* 01680 80AE3A80 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01684 80AE3A84 03E00008 */ jr $ra
/* 01688 80AE3A88 00000000 */ nop

View File

@ -1,38 +0,0 @@
glabel func_80AE3A8C
/* 0168C 80AE3A8C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01690 80AE3A90 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01694 80AE3A94 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 01698 80AE3A98 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 0169C 80AE3A9C 24A574F0 */ addiu $a1, $a1, 0x74F0 ## $a1 = 060074F0
/* 016A0 80AE3AA0 AFA70018 */ sw $a3, 0x0018($sp)
/* 016A4 80AE3AA4 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 016A8 80AE3AA8 0C029490 */ jal SkelAnime_ChangeAnimTransitionStop
/* 016AC 80AE3AAC 3C06C0C0 */ lui $a2, 0xC0C0 ## $a2 = C0C00000
/* 016B0 80AE3AB0 8FA70018 */ lw $a3, 0x0018($sp)
/* 016B4 80AE3AB4 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 016B8 80AE3AB8 94EE0088 */ lhu $t6, 0x0088($a3) ## 00000088
/* 016BC 80AE3ABC 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 016C0 80AE3AC0 51E00005 */ beql $t7, $zero, .L80AE3AD8
/* 016C4 80AE3AC4 8CF80004 */ lw $t8, 0x0004($a3) ## 00000004
/* 016C8 80AE3AC8 44812000 */ mtc1 $at, $f4 ## $f4 = -2.00
/* 016CC 80AE3ACC 00000000 */ nop
/* 016D0 80AE3AD0 E4E40068 */ swc1 $f4, 0x0068($a3) ## 00000068
/* 016D4 80AE3AD4 8CF80004 */ lw $t8, 0x0004($a3) ## 00000004
.L80AE3AD8:
/* 016D8 80AE3AD8 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 016DC 80AE3ADC 240538E6 */ addiu $a1, $zero, 0x38E6 ## $a1 = 000038E6
/* 016E0 80AE3AE0 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
/* 016E4 80AE3AE4 ACF90004 */ sw $t9, 0x0004($a3) ## 00000004
/* 016E8 80AE3AE8 0C00BE0A */ jal Audio_PlayActorSound2
/* 016EC 80AE3AEC AFA70018 */ sw $a3, 0x0018($sp)
/* 016F0 80AE3AF0 8FA40018 */ lw $a0, 0x0018($sp)
/* 016F4 80AE3AF4 24080009 */ addiu $t0, $zero, 0x0009 ## $t0 = 00000009
/* 016F8 80AE3AF8 3C0580AE */ lui $a1, %hi(func_80AE3B18) ## $a1 = 80AE0000
/* 016FC 80AE3AFC 24A53B18 */ addiu $a1, $a1, %lo(func_80AE3B18) ## $a1 = 80AE3B18
/* 01700 80AE3B00 0C2B8900 */ jal func_80AE2400
/* 01704 80AE3B04 A088031B */ sb $t0, 0x031B($a0) ## 0000031B
/* 01708 80AE3B08 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0170C 80AE3B0C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01710 80AE3B10 03E00008 */ jr $ra
/* 01714 80AE3B14 00000000 */ nop

View File

@ -1,80 +0,0 @@
.late_rodata
glabel D_80AE49B8
.float 0.15
.text
glabel func_80AE3B18
/* 01718 80AE3B18 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 0171C 80AE3B1C AFBF0024 */ sw $ra, 0x0024($sp)
/* 01720 80AE3B20 AFB00020 */ sw $s0, 0x0020($sp)
/* 01724 80AE3B24 AFA50034 */ sw $a1, 0x0034($sp)
/* 01728 80AE3B28 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44
/* 0172C 80AE3B2C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01730 80AE3B30 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01734 80AE3B34 AFAF002C */ sw $t7, 0x002C($sp)
/* 01738 80AE3B38 C4800068 */ lwc1 $f0, 0x0068($a0) ## 00000068
/* 0173C 80AE3B3C 3C0180AE */ lui $at, %hi(D_80AE49B8) ## $at = 80AE0000
/* 01740 80AE3B40 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01744 80AE3B44 4604003C */ c.lt.s $f0, $f4
/* 01748 80AE3B48 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 0174C 80AE3B4C 45020005 */ bc1fl .L80AE3B64
/* 01750 80AE3B50 8618008A */ lh $t8, 0x008A($s0) ## 0000008A
/* 01754 80AE3B54 C42649B8 */ lwc1 $f6, %lo(D_80AE49B8)($at)
/* 01758 80AE3B58 46060200 */ add.s $f8, $f0, $f6
/* 0175C 80AE3B5C E4880068 */ swc1 $f8, 0x0068($a0) ## 00000068
/* 01760 80AE3B60 8618008A */ lh $t8, 0x008A($s0) ## 0000008A
.L80AE3B64:
/* 01764 80AE3B64 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 01768 80AE3B68 2407012C */ addiu $a3, $zero, 0x012C ## $a3 = 0000012C
/* 0176C 80AE3B6C A6180032 */ sh $t8, 0x0032($s0) ## 00000032
/* 01770 80AE3B70 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 01774 80AE3B74 AFA00010 */ sw $zero, 0x0010($sp)
/* 01778 80AE3B78 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 0177C 80AE3B7C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01780 80AE3B80 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01784 80AE3B84 2407012C */ addiu $a3, $zero, 0x012C ## $a3 = 0000012C
/* 01788 80AE3B88 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 0178C 80AE3B8C AFA00010 */ sw $zero, 0x0010($sp)
/* 01790 80AE3B90 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01794 80AE3B94 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 01798 80AE3B98 5040001D */ beql $v0, $zero, .L80AE3C10
/* 0179C 80AE3B9C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 017A0 80AE3BA0 8E080118 */ lw $t0, 0x0118($s0) ## 00000118
/* 017A4 80AE3BA4 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
/* 017A8 80AE3BA8 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
/* 017AC 80AE3BAC 11000005 */ beq $t0, $zero, .L80AE3BC4
/* 017B0 80AE3BB0 A6190032 */ sh $t9, 0x0032($s0) ## 00000032
/* 017B4 80AE3BB4 0C2B8C77 */ jal func_80AE31DC
/* 017B8 80AE3BB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 017BC 80AE3BBC 10000012 */ beq $zero, $zero, .L80AE3C08
/* 017C0 80AE3BC0 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
.L80AE3BC4:
/* 017C4 80AE3BC4 0C00B6DB */ jal func_8002DB6C
/* 017C8 80AE3BC8 8FA4002C */ lw $a0, 0x002C($sp)
/* 017CC 80AE3BCC 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 017D0 80AE3BD0 44815000 */ mtc1 $at, $f10 ## $f10 = 150.00
/* 017D4 80AE3BD4 8FA50034 */ lw $a1, 0x0034($sp)
/* 017D8 80AE3BD8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 017DC 80AE3BDC 4600503E */ c.le.s $f10, $f0
/* 017E0 80AE3BE0 00000000 */ nop
/* 017E4 80AE3BE4 45000005 */ bc1f .L80AE3BFC
/* 017E8 80AE3BE8 00000000 */ nop
/* 017EC 80AE3BEC 0C2B8BD4 */ jal func_80AE2F50
/* 017F0 80AE3BF0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 017F4 80AE3BF4 10000004 */ beq $zero, $zero, .L80AE3C08
/* 017F8 80AE3BF8 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
.L80AE3BFC:
/* 017FC 80AE3BFC 0C2B8AE4 */ jal func_80AE2B90
/* 01800 80AE3C00 8FA50034 */ lw $a1, 0x0034($sp)
/* 01804 80AE3C04 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
.L80AE3C08:
/* 01808 80AE3C08 A209031D */ sb $t1, 0x031D($s0) ## 0000031D
/* 0180C 80AE3C0C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3C10:
/* 01810 80AE3C10 8FB00020 */ lw $s0, 0x0020($sp)
/* 01814 80AE3C14 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 01818 80AE3C18 03E00008 */ jr $ra
/* 0181C 80AE3C1C 00000000 */ nop

View File

@ -1,32 +0,0 @@
glabel func_80AE3C20
/* 01820 80AE3C20 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01824 80AE3C24 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01828 80AE3C28 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 0182C 80AE3C2C 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 01830 80AE3C30 24A56E88 */ addiu $a1, $a1, 0x6E88 ## $a1 = 06006E88
/* 01834 80AE3C34 AFA70018 */ sw $a3, 0x0018($sp)
/* 01838 80AE3C38 24840188 */ addiu $a0, $a0, 0x0188 ## $a0 = 00000188
/* 0183C 80AE3C3C 0C029490 */ jal SkelAnime_ChangeAnimTransitionStop
/* 01840 80AE3C40 3C06BF80 */ lui $a2, 0xBF80 ## $a2 = BF800000
/* 01844 80AE3C44 8FA40018 */ lw $a0, 0x0018($sp)
/* 01848 80AE3C48 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 0184C 80AE3C4C 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 01850 80AE3C50 8C980004 */ lw $t8, 0x0004($a0) ## 00000004
/* 01854 80AE3C54 240E000A */ addiu $t6, $zero, 0x000A ## $t6 = 0000000A
/* 01858 80AE3C58 240F012C */ addiu $t7, $zero, 0x012C ## $t7 = 0000012C
/* 0185C 80AE3C5C 0301C824 */ and $t9, $t8, $at
/* 01860 80AE3C60 240538E7 */ addiu $a1, $zero, 0x38E7 ## $a1 = 000038E7
/* 01864 80AE3C64 A08E031B */ sb $t6, 0x031B($a0) ## 0000031B
/* 01868 80AE3C68 A48F030C */ sh $t7, 0x030C($a0) ## 0000030C
/* 0186C 80AE3C6C AC990004 */ sw $t9, 0x0004($a0) ## 00000004
/* 01870 80AE3C70 0C00BE0A */ jal Audio_PlayActorSound2
/* 01874 80AE3C74 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 01878 80AE3C78 3C0580AE */ lui $a1, %hi(func_80AE3C98) ## $a1 = 80AE0000
/* 0187C 80AE3C7C 8FA40018 */ lw $a0, 0x0018($sp)
/* 01880 80AE3C80 0C2B8900 */ jal func_80AE2400
/* 01884 80AE3C84 24A53C98 */ addiu $a1, $a1, %lo(func_80AE3C98) ## $a1 = 80AE3C98
/* 01888 80AE3C88 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0188C 80AE3C8C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01890 80AE3C90 03E00008 */ jr $ra
/* 01894 80AE3C94 00000000 */ nop

View File

@ -1,106 +0,0 @@
.late_rodata
glabel D_80AE49BC
.float 7.5e-5
.text
glabel func_80AE3C98
/* 01898 80AE3C98 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0189C 80AE3C9C AFBF0024 */ sw $ra, 0x0024($sp)
/* 018A0 80AE3CA0 AFB00020 */ sw $s0, 0x0020($sp)
/* 018A4 80AE3CA4 AFA5002C */ sw $a1, 0x002C($sp)
/* 018A8 80AE3CA8 908E0002 */ lbu $t6, 0x0002($a0) ## 00000002
/* 018AC 80AE3CAC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 018B0 80AE3CB0 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
/* 018B4 80AE3CB4 11C10005 */ beq $t6, $at, .L80AE3CCC
/* 018B8 80AE3CB8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 018BC 80AE3CBC 24A51C24 */ addiu $a1, $a1, 0x1C24 ## $a1 = 00001C24
/* 018C0 80AE3CC0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 018C4 80AE3CC4 0C00CDD2 */ jal Actor_ChangeType
/* 018C8 80AE3CC8 24070006 */ addiu $a3, $zero, 0x0006 ## $a3 = 00000006
.L80AE3CCC:
/* 018CC 80AE3CCC 2604030E */ addiu $a0, $s0, 0x030E ## $a0 = 0000030E
/* 018D0 80AE3CD0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 018D4 80AE3CD4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 018D8 80AE3CD8 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 018DC 80AE3CDC 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 018E0 80AE3CE0 AFA00010 */ sw $zero, 0x0010($sp)
/* 018E4 80AE3CE4 26040310 */ addiu $a0, $s0, 0x0310 ## $a0 = 00000310
/* 018E8 80AE3CE8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 018EC 80AE3CEC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 018F0 80AE3CF0 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 018F4 80AE3CF4 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 018F8 80AE3CF8 AFA00010 */ sw $zero, 0x0010($sp)
/* 018FC 80AE3CFC 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 01900 80AE3D00 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
/* 01904 80AE3D04 50400027 */ beql $v0, $zero, .L80AE3DA4
/* 01908 80AE3D08 C60A01A0 */ lwc1 $f10, 0x01A0($s0) ## 000001A0
/* 0190C 80AE3D0C 8602030C */ lh $v0, 0x030C($s0) ## 0000030C
/* 01910 80AE3D10 14400021 */ bne $v0, $zero, .L80AE3D98
/* 01914 80AE3D14 2459FFFF */ addiu $t9, $v0, 0xFFFF ## $t9 = FFFFFFFF
/* 01918 80AE3D18 86050312 */ lh $a1, 0x0312($s0) ## 00000312
/* 0191C 80AE3D1C 8FA4002C */ lw $a0, 0x002C($sp)
/* 01920 80AE3D20 0C00B2D0 */ jal Flags_GetSwitch
/* 01924 80AE3D24 30A5007F */ andi $a1, $a1, 0x007F ## $a1 = 00000000
/* 01928 80AE3D28 54400006 */ bnel $v0, $zero, .L80AE3D44
/* 0192C 80AE3D2C 86020314 */ lh $v0, 0x0314($s0) ## 00000314
/* 01930 80AE3D30 86050312 */ lh $a1, 0x0312($s0) ## 00000312
/* 01934 80AE3D34 8FA4002C */ lw $a0, 0x002C($sp)
/* 01938 80AE3D38 0C00B2DD */ jal Flags_SetSwitch
/* 0193C 80AE3D3C 30A5007F */ andi $a1, $a1, 0x007F ## $a1 = 00000000
/* 01940 80AE3D40 86020314 */ lh $v0, 0x0314($s0) ## 00000314
.L80AE3D44:
/* 01944 80AE3D44 240100B4 */ addiu $at, $zero, 0x00B4 ## $at = 000000B4
/* 01948 80AE3D48 1040000F */ beq $v0, $zero, .L80AE3D88
/* 0194C 80AE3D4C 00000000 */ nop
/* 01950 80AE3D50 14410005 */ bne $v0, $at, .L80AE3D68
/* 01954 80AE3D54 8FA4002C */ lw $a0, 0x002C($sp)
/* 01958 80AE3D58 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 0195C 80AE3D5C 0C2B898C */ jal func_80AE2630
/* 01960 80AE3D60 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01964 80AE3D64 86020314 */ lh $v0, 0x0314($s0) ## 00000314
.L80AE3D68:
/* 01968 80AE3D68 3C0180AE */ lui $at, %hi(D_80AE49BC) ## $at = 80AE0000
/* 0196C 80AE3D6C C42649BC */ lwc1 $f6, %lo(D_80AE49BC)($at)
/* 01970 80AE3D70 C6040054 */ lwc1 $f4, 0x0054($s0) ## 00000054
/* 01974 80AE3D74 2458FFFB */ addiu $t8, $v0, 0xFFFB ## $t8 = FFFFFFFB
/* 01978 80AE3D78 A6180314 */ sh $t8, 0x0314($s0) ## 00000314
/* 0197C 80AE3D7C 46062201 */ sub.s $f8, $f4, $f6
/* 01980 80AE3D80 10000013 */ beq $zero, $zero, .L80AE3DD0
/* 01984 80AE3D84 E6080054 */ swc1 $f8, 0x0054($s0) ## 00000054
.L80AE3D88:
/* 01988 80AE3D88 0C00B55C */ jal Actor_Kill
/* 0198C 80AE3D8C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01990 80AE3D90 10000010 */ beq $zero, $zero, .L80AE3DD4
/* 01994 80AE3D94 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3D98:
/* 01998 80AE3D98 1000000D */ beq $zero, $zero, .L80AE3DD0
/* 0199C 80AE3D9C A619030C */ sh $t9, 0x030C($s0) ## 0000030C
/* 019A0 80AE3DA0 C60A01A0 */ lwc1 $f10, 0x01A0($s0) ## 000001A0
.L80AE3DA4:
/* 019A4 80AE3DA4 24010021 */ addiu $at, $zero, 0x0021 ## $at = 00000021
/* 019A8 80AE3DA8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 019AC 80AE3DAC 4600540D */ trunc.w.s $f16, $f10
/* 019B0 80AE3DB0 44028000 */ mfc1 $v0, $f16
/* 019B4 80AE3DB4 00000000 */ nop
/* 019B8 80AE3DB8 10410003 */ beq $v0, $at, .L80AE3DC8
/* 019BC 80AE3DBC 24010028 */ addiu $at, $zero, 0x0028 ## $at = 00000028
/* 019C0 80AE3DC0 54410004 */ bnel $v0, $at, .L80AE3DD4
/* 019C4 80AE3DC4 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3DC8:
/* 019C8 80AE3DC8 0C00BE0A */ jal Audio_PlayActorSound2
/* 019CC 80AE3DCC 2405387A */ addiu $a1, $zero, 0x387A ## $a1 = 0000387A
.L80AE3DD0:
/* 019D0 80AE3DD0 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3DD4:
/* 019D4 80AE3DD4 8FB00020 */ lw $s0, 0x0020($sp)
/* 019D8 80AE3DD8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 019DC 80AE3DDC 03E00008 */ jr $ra
/* 019E0 80AE3DE0 00000000 */ nop

View File

@ -1,64 +0,0 @@
glabel func_80AE3DE4
/* 019E4 80AE3DE4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 019E8 80AE3DE8 AFBF0024 */ sw $ra, 0x0024($sp)
/* 019EC 80AE3DEC AFB00020 */ sw $s0, 0x0020($sp)
/* 019F0 80AE3DF0 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 019F4 80AE3DF4 848E00B6 */ lh $t6, 0x00B6($a0) ## 000000B6
/* 019F8 80AE3DF8 24020001 */ addiu $v0, $zero, 0x0001 ## $v0 = 00000001
/* 019FC 80AE3DFC A082031B */ sb $v0, 0x031B($a0) ## 0000031B
/* 01A00 80AE3E00 3C0F8016 */ lui $t7, %hi(gSaveContext+0x1422)
/* 01A04 80AE3E04 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 01A08 80AE3E08 A48E0032 */ sh $t6, 0x0032($a0) ## 00000032
/* 01A0C 80AE3E0C 85EFFA82 */ lh $t7, %lo(gSaveContext+0x1422)($t7)
/* 01A10 80AE3E10 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01A14 80AE3E14 24180258 */ addiu $t8, $zero, 0x0258 ## $t8 = 00000258
/* 01A18 80AE3E18 11E0000D */ beq $t7, $zero, .L80AE3E50
/* 01A1C 80AE3E1C 24053836 */ addiu $a1, $zero, 0x3836 ## $a1 = 00003836
/* 01A20 80AE3E20 A0820318 */ sb $v0, 0x0318($a0) ## 00000318
/* 01A24 80AE3E24 0C00BE0A */ jal Audio_PlayActorSound2
/* 01A28 80AE3E28 A4980316 */ sh $t8, 0x0316($a0) ## 00000316
/* 01A2C 80AE3E2C 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF
/* 01A30 80AE3E30 AFB90010 */ sw $t9, 0x0010($sp)
/* 01A34 80AE3E34 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A38 80AE3E38 24058000 */ addiu $a1, $zero, 0x8000 ## $a1 = FFFF8000
/* 01A3C 80AE3E3C 240680C8 */ addiu $a2, $zero, 0x80C8 ## $a2 = FFFF80C8
/* 01A40 80AE3E40 0C00D09B */ jal func_8003426C
/* 01A44 80AE3E44 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01A48 80AE3E48 10000017 */ beq $zero, $zero, .L80AE3EA8
/* 01A4C 80AE3E4C 00000000 */ nop
.L80AE3E50:
/* 01A50 80AE3E50 9208031C */ lbu $t0, 0x031C($s0) ## 0000031C
/* 01A54 80AE3E54 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01A58 80AE3E58 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01A5C 80AE3E5C 15010009 */ bne $t0, $at, .L80AE3E84
/* 01A60 80AE3E60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A64 80AE3E64 24090050 */ addiu $t1, $zero, 0x0050 ## $t1 = 00000050
/* 01A68 80AE3E68 AFA90010 */ sw $t1, 0x0010($sp)
/* 01A6C 80AE3E6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A70 80AE3E70 240600C8 */ addiu $a2, $zero, 0x00C8 ## $a2 = 000000C8
/* 01A74 80AE3E74 0C00D09B */ jal func_8003426C
/* 01A78 80AE3E78 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01A7C 80AE3E7C 1000000A */ beq $zero, $zero, .L80AE3EA8
/* 01A80 80AE3E80 00000000 */ nop
.L80AE3E84:
/* 01A84 80AE3E84 0C00BE0A */ jal Audio_PlayActorSound2
/* 01A88 80AE3E88 24053836 */ addiu $a1, $zero, 0x3836 ## $a1 = 00003836
/* 01A8C 80AE3E8C 240A0050 */ addiu $t2, $zero, 0x0050 ## $t2 = 00000050
/* 01A90 80AE3E90 AFAA0010 */ sw $t2, 0x0010($sp)
/* 01A94 80AE3E94 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01A98 80AE3E98 24058000 */ addiu $a1, $zero, 0x8000 ## $a1 = FFFF8000
/* 01A9C 80AE3E9C 240600C8 */ addiu $a2, $zero, 0x00C8 ## $a2 = 000000C8
/* 01AA0 80AE3EA0 0C00D09B */ jal func_8003426C
/* 01AA4 80AE3EA4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
.L80AE3EA8:
/* 01AA8 80AE3EA8 3C0580AE */ lui $a1, %hi(func_80AE3ECC) ## $a1 = 80AE0000
/* 01AAC 80AE3EAC 24A53ECC */ addiu $a1, $a1, %lo(func_80AE3ECC) ## $a1 = 80AE3ECC
/* 01AB0 80AE3EB0 0C2B8900 */ jal func_80AE2400
/* 01AB4 80AE3EB4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01AB8 80AE3EB8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01ABC 80AE3EBC 8FB00020 */ lw $s0, 0x0020($sp)
/* 01AC0 80AE3EC0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01AC4 80AE3EC4 03E00008 */ jr $ra
/* 01AC8 80AE3EC8 00000000 */ nop

View File

@ -1,59 +0,0 @@
glabel func_80AE3ECC
/* 01ACC 80AE3ECC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01AD0 80AE3ED0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01AD4 80AE3ED4 AFB00020 */ sw $s0, 0x0020($sp)
/* 01AD8 80AE3ED8 AFA5002C */ sw $a1, 0x002C($sp)
/* 01ADC 80AE3EDC 908E0318 */ lbu $t6, 0x0318($a0) ## 00000318
/* 01AE0 80AE3EE0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01AE4 80AE3EE4 51C00014 */ beql $t6, $zero, .L80AE3F38
/* 01AE8 80AE3EE8 92190114 */ lbu $t9, 0x0114($s0) ## 00000114
/* 01AEC 80AE3EEC 84820316 */ lh $v0, 0x0316($a0) ## 00000316
/* 01AF0 80AE3EF0 10400010 */ beq $v0, $zero, .L80AE3F34
/* 01AF4 80AE3EF4 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
/* 01AF8 80AE3EF8 A48F0316 */ sh $t7, 0x0316($a0) ## 00000316
/* 01AFC 80AE3EFC 84820316 */ lh $v0, 0x0316($a0) ## 00000316
/* 01B00 80AE3F00 24058000 */ addiu $a1, $zero, 0x8000 ## $a1 = FFFF8000
/* 01B04 80AE3F04 240600C8 */ addiu $a2, $zero, 0x00C8 ## $a2 = 000000C8
/* 01B08 80AE3F08 284100FF */ slti $at, $v0, 0x00FF
/* 01B0C 80AE3F0C 14200005 */ bne $at, $zero, .L80AE3F24
/* 01B10 80AE3F10 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01B14 80AE3F14 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF
/* 01B18 80AE3F18 0C00D09B */ jal func_8003426C
/* 01B1C 80AE3F1C AFB80010 */ sw $t8, 0x0010($sp)
/* 01B20 80AE3F20 86020316 */ lh $v0, 0x0316($s0) ## 00000316
.L80AE3F24:
/* 01B24 80AE3F24 14400003 */ bne $v0, $zero, .L80AE3F34
/* 01B28 80AE3F28 3C018016 */ lui $at, %hi(gSaveContext+0x1422)
/* 01B2C 80AE3F2C A2000318 */ sb $zero, 0x0318($s0) ## 00000318
/* 01B30 80AE3F30 A420FA82 */ sh $zero, %lo(gSaveContext+0x1422)($at)
.L80AE3F34:
/* 01B34 80AE3F34 92190114 */ lbu $t9, 0x0114($s0) ## 00000114
.L80AE3F38:
/* 01B38 80AE3F38 57200014 */ bnel $t9, $zero, .L80AE3F8C
/* 01B3C 80AE3F3C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01B40 80AE3F40 920800AF */ lbu $t0, 0x00AF($s0) ## 000000AF
/* 01B44 80AE3F44 8FA4002C */ lw $a0, 0x002C($sp)
/* 01B48 80AE3F48 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01B4C 80AE3F4C 1500000C */ bne $t0, $zero, .L80AE3F80
/* 01B50 80AE3F50 00000000 */ nop
/* 01B54 80AE3F54 0C2B898C */ jal func_80AE2630
/* 01B58 80AE3F58 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01B5C 80AE3F5C 0C2B8F08 */ jal func_80AE3C20
/* 01B60 80AE3F60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B64 80AE3F64 8FA4002C */ lw $a0, 0x002C($sp)
/* 01B68 80AE3F68 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01B6C 80AE3F6C 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
/* 01B70 80AE3F70 0C007E50 */ jal Item_DropCollectibleRandom
/* 01B74 80AE3F74 24070090 */ addiu $a3, $zero, 0x0090 ## $a3 = 00000090
/* 01B78 80AE3F78 10000004 */ beq $zero, $zero, .L80AE3F8C
/* 01B7C 80AE3F7C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3F80:
/* 01B80 80AE3F80 0C2B8EA3 */ jal func_80AE3A8C
/* 01B84 80AE3F84 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01B88 80AE3F88 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE3F8C:
/* 01B8C 80AE3F8C 8FB00020 */ lw $s0, 0x0020($sp)
/* 01B90 80AE3F90 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01B94 80AE3F94 03E00008 */ jr $ra
/* 01B98 80AE3F98 00000000 */ nop

View File

@ -1,128 +0,0 @@
glabel func_80AE4114
/* 01D14 80AE4114 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 01D18 80AE4118 3C0F8016 */ lui $t7, %hi(gSaveContext+0x1422)
/* 01D1C 80AE411C 85EFFA82 */ lh $t7, %lo(gSaveContext+0x1422)($t7)
/* 01D20 80AE4120 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01D24 80AE4124 AFB00020 */ sw $s0, 0x0020($sp)
/* 01D28 80AE4128 AFA50034 */ sw $a1, 0x0034($sp)
/* 01D2C 80AE412C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01D30 80AE4130 11E00013 */ beq $t7, $zero, .L80AE4180
/* 01D34 80AE4134 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44
/* 01D38 80AE4138 849800B4 */ lh $t8, 0x00B4($a0) ## 000000B4
/* 01D3C 80AE413C 57000011 */ bnel $t8, $zero, .L80AE4184
/* 01D40 80AE4140 92020331 */ lbu $v0, 0x0331($s0) ## 00000331
/* 01D44 80AE4144 90990318 */ lbu $t9, 0x0318($a0) ## 00000318
/* 01D48 80AE4148 5720000E */ bnel $t9, $zero, .L80AE4184
/* 01D4C 80AE414C 92020331 */ lbu $v0, 0x0331($s0) ## 00000331
/* 01D50 80AE4150 9082031B */ lbu $v0, 0x031B($a0) ## 0000031B
/* 01D54 80AE4154 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
/* 01D58 80AE4158 10410009 */ beq $v0, $at, .L80AE4180
/* 01D5C 80AE415C 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 01D60 80AE4160 10410007 */ beq $v0, $at, .L80AE4180
/* 01D64 80AE4164 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 01D68 80AE4168 50410006 */ beql $v0, $at, .L80AE4184
/* 01D6C 80AE416C 92020331 */ lbu $v0, 0x0331($s0) ## 00000331
/* 01D70 80AE4170 0C2B8F79 */ jal func_80AE3DE4
/* 01D74 80AE4174 00000000 */ nop
/* 01D78 80AE4178 10000054 */ beq $zero, $zero, .L80AE42CC
/* 01D7C 80AE417C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE4180:
/* 01D80 80AE4180 92020331 */ lbu $v0, 0x0331($s0) ## 00000331
.L80AE4184:
/* 01D84 80AE4184 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
/* 01D88 80AE4188 30480002 */ andi $t0, $v0, 0x0002 ## $t0 = 00000000
/* 01D8C 80AE418C 1100004E */ beq $t0, $zero, .L80AE42C8
/* 01D90 80AE4190 3049FFFD */ andi $t1, $v0, 0xFFFD ## $t1 = 00000000
/* 01D94 80AE4194 920B031B */ lbu $t3, 0x031B($s0) ## 0000031B
/* 01D98 80AE4198 920A00B1 */ lbu $t2, 0x00B1($s0) ## 000000B1
/* 01D9C 80AE419C A2090331 */ sb $t1, 0x0331($s0) ## 00000331
/* 01DA0 80AE41A0 11610049 */ beq $t3, $at, .L80AE42C8
/* 01DA4 80AE41A4 A20A031C */ sb $t2, 0x031C($s0) ## 0000031C
/* 01DA8 80AE41A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01DAC 80AE41AC 26050338 */ addiu $a1, $s0, 0x0338 ## $a1 = 00000338
/* 01DB0 80AE41B0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01DB4 80AE41B4 0C00D594 */ jal func_80035650
/* 01DB8 80AE41B8 AFA30028 */ sw $v1, 0x0028($sp)
/* 01DBC 80AE41BC 8FA30028 */ lw $v1, 0x0028($sp)
/* 01DC0 80AE41C0 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 01DC4 80AE41C4 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
/* 01DC8 80AE41C8 806C0844 */ lb $t4, 0x0844($v1) ## 00000844
/* 01DCC 80AE41CC 51800004 */ beql $t4, $zero, .L80AE41E0
/* 01DD0 80AE41D0 9202031C */ lbu $v0, 0x031C($s0) ## 0000031C
/* 01DD4 80AE41D4 906D0845 */ lbu $t5, 0x0845($v1) ## 00000845
/* 01DD8 80AE41D8 A20D031D */ sb $t5, 0x031D($s0) ## 0000031D
/* 01DDC 80AE41DC 9202031C */ lbu $v0, 0x031C($s0) ## 0000031C
.L80AE41E0:
/* 01DE0 80AE41E0 5040003A */ beql $v0, $zero, .L80AE42CC
/* 01DE4 80AE41E4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01DE8 80AE41E8 50410038 */ beql $v0, $at, .L80AE42CC
/* 01DEC 80AE41EC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01DF0 80AE41F0 10820003 */ beq $a0, $v0, .L80AE4200
/* 01DF4 80AE41F4 2401000D */ addiu $at, $zero, 0x000D ## $at = 0000000D
/* 01DF8 80AE41F8 5441000B */ bnel $v0, $at, .L80AE4228
/* 01DFC 80AE41FC 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
.L80AE4200:
/* 01E00 80AE4200 920E031B */ lbu $t6, 0x031B($s0) ## 0000031B
/* 01E04 80AE4204 508E0008 */ beql $a0, $t6, .L80AE4228
/* 01E08 80AE4208 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
/* 01E0C 80AE420C 0C00D58A */ jal Actor_ApplyDamage
/* 01E10 80AE4210 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01E14 80AE4214 0C2B8F79 */ jal func_80AE3DE4
/* 01E18 80AE4218 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01E1C 80AE421C 1000002B */ beq $zero, $zero, .L80AE42CC
/* 01E20 80AE4220 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01E24 80AE4224 2401000E */ addiu $at, $zero, 0x000E ## $at = 0000000E
.L80AE4228:
/* 01E28 80AE4228 A2000318 */ sb $zero, 0x0318($s0) ## 00000318
/* 01E2C 80AE422C 1441000B */ bne $v0, $at, .L80AE425C
/* 01E30 80AE4230 A6000316 */ sh $zero, 0x0316($s0) ## 00000316
/* 01E34 80AE4234 240F0050 */ addiu $t7, $zero, 0x0050 ## $t7 = 00000050
/* 01E38 80AE4238 AFAF0010 */ sw $t7, 0x0010($sp)
/* 01E3C 80AE423C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01E40 80AE4240 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
/* 01E44 80AE4244 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 01E48 80AE4248 0C00D09B */ jal func_8003426C
/* 01E4C 80AE424C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01E50 80AE4250 24180028 */ addiu $t8, $zero, 0x0028 ## $t8 = 00000028
/* 01E54 80AE4254 10000008 */ beq $zero, $zero, .L80AE4278
/* 01E58 80AE4258 A218031A */ sb $t8, 0x031A($s0) ## 0000031A
.L80AE425C:
/* 01E5C 80AE425C 24190008 */ addiu $t9, $zero, 0x0008 ## $t9 = 00000008
/* 01E60 80AE4260 AFB90010 */ sw $t9, 0x0010($sp)
/* 01E64 80AE4264 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01E68 80AE4268 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
/* 01E6C 80AE426C 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 01E70 80AE4270 0C00D09B */ jal func_8003426C
/* 01E74 80AE4274 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
.L80AE4278:
/* 01E78 80AE4278 0C00D58A */ jal Actor_ApplyDamage
/* 01E7C 80AE427C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01E80 80AE4280 920800AF */ lbu $t0, 0x00AF($s0) ## 000000AF
/* 01E84 80AE4284 8FA40034 */ lw $a0, 0x0034($sp)
/* 01E88 80AE4288 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01E8C 80AE428C 1500000C */ bne $t0, $zero, .L80AE42C0
/* 01E90 80AE4290 00000000 */ nop
/* 01E94 80AE4294 0C2B898C */ jal func_80AE2630
/* 01E98 80AE4298 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01E9C 80AE429C 0C2B8F08 */ jal func_80AE3C20
/* 01EA0 80AE42A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01EA4 80AE42A4 8FA40034 */ lw $a0, 0x0034($sp)
/* 01EA8 80AE42A8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01EAC 80AE42AC 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
/* 01EB0 80AE42B0 0C007E50 */ jal Item_DropCollectibleRandom
/* 01EB4 80AE42B4 24070090 */ addiu $a3, $zero, 0x0090 ## $a3 = 00000090
/* 01EB8 80AE42B8 10000004 */ beq $zero, $zero, .L80AE42CC
/* 01EBC 80AE42BC 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE42C0:
/* 01EC0 80AE42C0 0C2B8EA3 */ jal func_80AE3A8C
/* 01EC4 80AE42C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80AE42C8:
/* 01EC8 80AE42C8 8FBF0024 */ lw $ra, 0x0024($sp)
.L80AE42CC:
/* 01ECC 80AE42CC 8FB00020 */ lw $s0, 0x0020($sp)
/* 01ED0 80AE42D0 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 01ED4 80AE42D4 03E00008 */ jr $ra
/* 01ED8 80AE42D8 00000000 */ nop

View File

@ -1,26 +0,0 @@
glabel func_80AE44C4
/* 020C4 80AE44C4 24010017 */ addiu $at, $zero, 0x0017 ## $at = 00000017
/* 020C8 80AE44C8 AFA40000 */ sw $a0, 0x0000($sp)
/* 020CC 80AE44CC AFA60008 */ sw $a2, 0x0008($sp)
/* 020D0 80AE44D0 14A10009 */ bne $a1, $at, .L80AE44F8
/* 020D4 80AE44D4 AFA7000C */ sw $a3, 0x000C($sp)
/* 020D8 80AE44D8 8FA20010 */ lw $v0, 0x0010($sp)
/* 020DC 80AE44DC 8FAF0014 */ lw $t7, 0x0014($sp)
/* 020E0 80AE44E0 844E0002 */ lh $t6, 0x0002($v0) ## 00000002
/* 020E4 80AE44E4 85F8030E */ lh $t8, 0x030E($t7) ## 0000030E
/* 020E8 80AE44E8 01D8C821 */ addu $t9, $t6, $t8
/* 020EC 80AE44EC A4590002 */ sh $t9, 0x0002($v0) ## 00000002
/* 020F0 80AE44F0 03E00008 */ jr $ra
/* 020F4 80AE44F4 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
.L80AE44F8:
/* 020F8 80AE44F8 2401000C */ addiu $at, $zero, 0x000C ## $at = 0000000C
/* 020FC 80AE44FC 14A10006 */ bne $a1, $at, .L80AE4518
/* 02100 80AE4500 8FA20010 */ lw $v0, 0x0010($sp)
/* 02104 80AE4504 8FA90014 */ lw $t1, 0x0014($sp)
/* 02108 80AE4508 84480002 */ lh $t0, 0x0002($v0) ## 00000002
/* 0210C 80AE450C 852A0310 */ lh $t2, 0x0310($t1) ## 00000310
/* 02110 80AE4510 010A5821 */ addu $t3, $t0, $t2
/* 02114 80AE4514 A44B0002 */ sh $t3, 0x0002($v0) ## 00000002
.L80AE4518:
/* 02118 80AE4518 03E00008 */ jr $ra
/* 0211C 80AE451C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000

View File

@ -1,128 +0,0 @@
.late_rodata
.late_rodata_alignment 8
glabel jtbl_80AE49C0
.word L80AE45B4
.word L80AE45F8
.word L80AE45F8
.word L80AE45E4
.word L80AE45F8
.word L80AE45F4
.word L80AE45F8
.word L80AE45F8
.word L80AE45DC
.word L80AE45F8
.word L80AE45EC
.word L80AE45F8
.word L80AE45F8
.word L80AE45CC
.word L80AE45F8
.word L80AE45F8
.word L80AE45F8
.word L80AE45C4
.word L80AE45F8
.word L80AE45F8
.word L80AE45F8
.word L80AE45BC
.word L80AE45F8
.word L80AE45AC
.word L80AE45D4
.text
glabel func_80AE4520
/* 02120 80AE4520 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 02124 80AE4524 3C0E80AE */ lui $t6, %hi(D_80AE4940) ## $t6 = 80AE0000
/* 02128 80AE4528 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0212C 80AE452C AFA40038 */ sw $a0, 0x0038($sp)
/* 02130 80AE4530 AFA60040 */ sw $a2, 0x0040($sp)
/* 02134 80AE4534 AFA70044 */ sw $a3, 0x0044($sp)
/* 02138 80AE4538 25CE4940 */ addiu $t6, $t6, %lo(D_80AE4940) ## $t6 = 80AE4940
/* 0213C 80AE453C 8DD80000 */ lw $t8, 0x0000($t6) ## 80AE4940
/* 02140 80AE4540 8FA60048 */ lw $a2, 0x0048($sp)
/* 02144 80AE4544 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFF4
/* 02148 80AE4548 AC980000 */ sw $t8, 0x0000($a0) ## FFFFFFF4
/* 0214C 80AE454C 8DCF0004 */ lw $t7, 0x0004($t6) ## 80AE4944
/* 02150 80AE4550 24ABFFFF */ addiu $t3, $a1, 0xFFFF ## $t3 = FFFFFFFF
/* 02154 80AE4554 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF
/* 02158 80AE4558 AC8F0004 */ sw $t7, 0x0004($a0) ## FFFFFFF8
/* 0215C 80AE455C 8DD80008 */ lw $t8, 0x0008($t6) ## 80AE4948
/* 02160 80AE4560 2D610019 */ sltiu $at, $t3, 0x0019
/* 02164 80AE4564 AC980008 */ sw $t8, 0x0008($a0) ## FFFFFFFC
/* 02168 80AE4568 90D9031A */ lbu $t9, 0x031A($a2) ## 0000031A
/* 0216C 80AE456C 17200008 */ bne $t9, $zero, .L80AE4590
/* 02170 80AE4570 00000000 */ nop
/* 02174 80AE4574 90C80114 */ lbu $t0, 0x0114($a2) ## 00000114
/* 02178 80AE4578 51000038 */ beql $t0, $zero, .L80AE465C
/* 0217C 80AE457C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 02180 80AE4580 94C90112 */ lhu $t1, 0x0112($a2) ## 00000112
/* 02184 80AE4584 312A4000 */ andi $t2, $t1, 0x4000 ## $t2 = 00000000
/* 02188 80AE4588 51400034 */ beql $t2, $zero, .L80AE465C
/* 0218C 80AE458C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80AE4590:
/* 02190 80AE4590 10200019 */ beq $at, $zero, .L80AE45F8
/* 02194 80AE4594 000B5880 */ sll $t3, $t3, 2
/* 02198 80AE4598 3C0180AE */ lui $at, %hi(jtbl_80AE49C0) ## $at = 80AE0000
/* 0219C 80AE459C 002B0821 */ addu $at, $at, $t3
/* 021A0 80AE45A0 8C2B49C0 */ lw $t3, %lo(jtbl_80AE49C0)($at)
/* 021A4 80AE45A4 01600008 */ jr $t3
/* 021A8 80AE45A8 00000000 */ nop
glabel L80AE45AC
/* 021AC 80AE45AC 10000012 */ beq $zero, $zero, .L80AE45F8
/* 021B0 80AE45B0 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
glabel L80AE45B4
/* 021B4 80AE45B4 10000010 */ beq $zero, $zero, .L80AE45F8
/* 021B8 80AE45B8 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
glabel L80AE45BC
/* 021BC 80AE45BC 1000000E */ beq $zero, $zero, .L80AE45F8
/* 021C0 80AE45C0 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002
glabel L80AE45C4
/* 021C4 80AE45C4 1000000C */ beq $zero, $zero, .L80AE45F8
/* 021C8 80AE45C8 24030003 */ addiu $v1, $zero, 0x0003 ## $v1 = 00000003
glabel L80AE45CC
/* 021CC 80AE45CC 1000000A */ beq $zero, $zero, .L80AE45F8
/* 021D0 80AE45D0 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004
glabel L80AE45D4
/* 021D4 80AE45D4 10000008 */ beq $zero, $zero, .L80AE45F8
/* 021D8 80AE45D8 24030005 */ addiu $v1, $zero, 0x0005 ## $v1 = 00000005
glabel L80AE45DC
/* 021DC 80AE45DC 10000006 */ beq $zero, $zero, .L80AE45F8
/* 021E0 80AE45E0 24030006 */ addiu $v1, $zero, 0x0006 ## $v1 = 00000006
glabel L80AE45E4
/* 021E4 80AE45E4 10000004 */ beq $zero, $zero, .L80AE45F8
/* 021E8 80AE45E8 24030007 */ addiu $v1, $zero, 0x0007 ## $v1 = 00000007
glabel L80AE45EC
/* 021EC 80AE45EC 10000002 */ beq $zero, $zero, .L80AE45F8
/* 021F0 80AE45F0 24030008 */ addiu $v1, $zero, 0x0008 ## $v1 = 00000008
glabel L80AE45F4
/* 021F4 80AE45F4 24030009 */ addiu $v1, $zero, 0x0009 ## $v1 = 00000009
glabel L80AE45F8
.L80AE45F8:
/* 021F8 80AE45F8 04600017 */ bltz $v1, .L80AE4658
/* 021FC 80AE45FC 27A50018 */ addiu $a1, $sp, 0x0018 ## $a1 = FFFFFFE0
/* 02200 80AE4600 0C0346BD */ jal Matrix_MultVec3f
/* 02204 80AE4604 AFA30024 */ sw $v1, 0x0024($sp)
/* 02208 80AE4608 C7A40018 */ lwc1 $f4, 0x0018($sp)
/* 0220C 80AE460C 8FA30024 */ lw $v1, 0x0024($sp)
/* 02210 80AE4610 8FA60048 */ lw $a2, 0x0048($sp)
/* 02214 80AE4614 4600218D */ trunc.w.s $f6, $f4
/* 02218 80AE4618 00036080 */ sll $t4, $v1, 2
/* 0221C 80AE461C 01836023 */ subu $t4, $t4, $v1
/* 02220 80AE4620 000C6040 */ sll $t4, $t4, 1
/* 02224 80AE4624 440E3000 */ mfc1 $t6, $f6
/* 02228 80AE4628 00CC1021 */ addu $v0, $a2, $t4
/* 0222C 80AE462C A44E014C */ sh $t6, 0x014C($v0) ## 0000014C
/* 02230 80AE4630 C7A8001C */ lwc1 $f8, 0x001C($sp)
/* 02234 80AE4634 4600428D */ trunc.w.s $f10, $f8
/* 02238 80AE4638 44185000 */ mfc1 $t8, $f10
/* 0223C 80AE463C 00000000 */ nop
/* 02240 80AE4640 A458014E */ sh $t8, 0x014E($v0) ## 0000014E
/* 02244 80AE4644 C7B00020 */ lwc1 $f16, 0x0020($sp)
/* 02248 80AE4648 4600848D */ trunc.w.s $f18, $f16
/* 0224C 80AE464C 44089000 */ mfc1 $t0, $f18
/* 02250 80AE4650 00000000 */ nop
/* 02254 80AE4654 A4480150 */ sh $t0, 0x0150($v0) ## 00000150
.L80AE4658:
/* 02258 80AE4658 8FBF0014 */ lw $ra, 0x0014($sp)
.L80AE465C:
/* 0225C 80AE465C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 02260 80AE4660 03E00008 */ jr $ra
/* 02264 80AE4664 00000000 */ nop

View File

@ -1,40 +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_Rd_InitVars
.word 0x00900500, 0x00000415, 0x00980000, 0x0000036C
.word EnRd_Init
.word EnRd_Destroy
.word EnRd_Update
.word EnRd_Draw
glabel D_80AE48C0
.word 0x00000909, 0x10010000, 0x01000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00050100, 0x00140046, 0x00000000, 0x00000000
glabel D_80AE48EC
.word 0x00F20000, 0x0000F210, 0xF1F2F400, 0x00000000, 0x00E460D3, 0x0000F1F4, 0xF2F2F8F4, 0x0000F400
glabel D_80AE490C
.word 0xB04C07D0, 0xC850000A, 0x386CF254
glabel D_80AE4918
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80AE4924
.word 0xC8C8FFFF
glabel D_80AE4928
.word 0x0000FF00
glabel D_80AE492C
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80AE4938
.word 0xC8C8FFFF
glabel D_80AE493C
.word 0x0000FF00
glabel D_80AE4940
.word 0x43960000, 0x00000000, 0x00000000, 0x43960000, 0x00000000, 0x00000000
glabel D_80AE4958
.word 0x3E800000, 0x3E800000, 0x3E800000, 0x00000000, 0x00000000, 0x00000000

View File

@ -328,6 +328,7 @@ void func_8002D9A4(Actor* actor, f32 arg1);
s16 func_8002DA78(Actor* actorA, Actor* actorB);
s16 func_8002DAC0(Actor* actor, Vec3f* arg1);
f32 func_8002DB48(Actor* actorA, Actor* actorB);
f32 func_8002DB6C(Actor* actor, Vec3f* arg1);
s16 func_8002DAE0(Actor* actorA, Actor* actorB);
s16 func_8002DB28(Actor* actor, Vec3f* arg1);
f32 func_8002DB8C(Actor* actorA, Actor* actorB);

5
spec
View File

@ -2977,8 +2977,11 @@ endseg
beginseg
name "ovl_En_Rd"
include "build/src/overlays/actors/ovl_En_Rd/z_en_rd.o"
include "build/data/overlays/actors/z_en_rd.data.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_En_Rd/ovl_En_Rd_reloc.o"
#else
include "build/data/overlays/actors/z_en_rd.reloc.o"
#endif
endseg
beginseg

View File

@ -9,7 +9,27 @@ void EnRd_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnRd_Update(Actor* thisx, GlobalContext* globalCtx);
void EnRd_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
void func_80AE269C(EnRd* this);
void func_80AE2744(EnRd* this, GlobalContext* globalCtx);
void func_80AE2970(EnRd* this);
void func_80AE2A10(EnRd* this, GlobalContext* globalCtx);
void func_80AE2C1C(EnRd* this, GlobalContext* globalCtx);
void func_80AE2F50(EnRd* this, GlobalContext* globalCtx);
void func_80AE2FD0(EnRd* this, GlobalContext* globalCtx);
void func_80AE31DC(EnRd* this);
void func_80AE3260(EnRd* this, GlobalContext* globalCtx);
void func_80AE33F0(EnRd* this);
void func_80AE392C(EnRd* this);
void func_80AE39D4(EnRd* this);
void func_80AE3454(EnRd* this, GlobalContext* globalCtx);
void func_80AE37BC(EnRd* this);
void func_80AE3834(EnRd* this, GlobalContext* globalCtx);
void func_80AE3978(EnRd* this, GlobalContext* globalCtx);
void func_80AE3A54(EnRd* this, GlobalContext* globalCtx);
void func_80AE3B18(EnRd* this, GlobalContext* globalCtx);
void func_80AE3C98(EnRd* this, GlobalContext* globalCtx);
void func_80AE3ECC(EnRd* this, GlobalContext* globalCtx);
const ActorInit En_Rd_InitVars = {
ACTOR_EN_RD,
ACTORTYPE_ENEMY,
@ -21,71 +41,871 @@ const ActorInit En_Rd_InitVars = {
(ActorFunc)EnRd_Update,
(ActorFunc)EnRd_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2400.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/EnRd_Init.s")
static ColliderCylinderInit sCylinderInit = {
{ COLTYPE_UNK0, 0x00, 0x09, 0x09, 0x10, COLSHAPE_CYLINDER },
{ 0x01, { 0x00000000, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x05, 0x01 },
{ 20, 70, 0, { 0, 0, 0 } },
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/EnRd_Destroy.s")
static DamageTable sDamageTable = {
0x00, 0xF2, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x10, 0xF1, 0xF2, 0xF4, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0xE4, 0x60, 0xD3, 0x00, 0x00, 0xF1, 0xF4, 0xF2, 0xF2, 0xF8, 0xF4, 0x00, 0x00, 0xF4, 0x00,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2630.s")
static InitChainEntry sInitChain[] = {
ICHAIN_F32(unk_4C, 2000, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_CONTINUE),
ICHAIN_F32_DIV1000(gravity, -3500, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE269C.s")
static Vec3f D_80AE4918 = { 0.0f, 0.0f, 0.0f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2744.s")
// I'm guessing these are primitive and environment colors that go unused
static Color_RGBA8_n D_80AE4924 = { 200, 200, 255, 255 };
static Color_RGBA8_n D_80AE4928 = { 0, 0, 255, 0 };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2970.s")
static Vec3f D_80AE492C = { 0.0f, 0.0f, 0.0f };
static Color_RGBA8_n D_80AE4938 = { 200, 200, 255, 255 };
static Color_RGBA8_n D_80AE493C = { 0, 0, 255, 0 };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2A10.s")
static Vec3f D_80AE4940 = { 300.0f, 0.0f, 0.0f };
static Vec3f D_80AE494C = { 300.0f, 0.0f, 0.0f };
static Vec3f D_80AE4958 = { 0.25f, 0.25f, 0.25f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2B90.s")
extern SkeletonHeader D_06003DD8;
extern AnimationHeader D_06004268;
extern AnimationHeader D_060046F8;
extern AnimationHeader D_06004ADC;
extern AnimationHeader D_06004F94;
extern AnimationHeader D_060057AC;
extern AnimationHeader D_06005D98;
extern AnimationHeader D_06006E88;
extern AnimationHeader D_060074F0;
extern AnimationHeader D_06008040;
extern AnimationHeader D_060087D0;
extern SkeletonHeader D_0600E778;
extern AnimationHeader D_0600EFDC;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2C1C.s")
void EnRd_SetupAction(EnRd* this, EnRdActionFunc actionFunc) {
this->actionFunc = actionFunc;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2F50.s")
void EnRd_Init(Actor* thisx, GlobalContext* globalCtx) {
EnRd* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE2FD0.s")
Actor_ProcessInitChain(thisx, sInitChain);
thisx->unk_1F = 0;
thisx->colChkInfo.damageTable = &sDamageTable;
ActorShape_Init(&thisx->shape, 0.0f, NULL, 0.0f);
this->unk_310 = this->unk_30E = 0;
thisx->posRot2.pos = thisx->posRot.pos;
thisx->posRot2.pos.y += 50.0f;
thisx->colChkInfo.mass = 0xFE;
thisx->colChkInfo.health = 8;
this->unk_314 = this->unk_31D = 0xFF;
this->unk_312 = (thisx->params & 0xFF00) >> 8;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE31DC.s")
if (thisx->params & 0x80) {
thisx->params |= 0xFF00;
} else {
thisx->params &= 0xFF;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3260.s")
if (thisx->params >= -1) {
SkelAnime_InitSV(globalCtx, &this->skelAnime, &D_0600E778, &D_060087D0, this->limbDrawTable,
this->transitionDrawTable, 26);
thisx->naviEnemyId = 42;
} else {
SkelAnime_InitSV(globalCtx, &this->skelAnime, &D_06003DD8, &D_060087D0, this->limbDrawTable,
this->transitionDrawTable, 26);
thisx->naviEnemyId = 45;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE33F0.s")
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, thisx, &sCylinderInit);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3454.s")
if (thisx->params >= -2) {
func_80AE269C(this);
} else {
func_80AE2970(this);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE37BC.s")
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3834.s")
if (thisx->params == 3) {
thisx->flags |= 0x80;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE392C.s")
void EnRd_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnRd* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3978.s")
if (gSaveContext.unk_1422 != 0) {
gSaveContext.unk_1422 = 0;
}
Collider_DestroyCylinder(globalCtx, &this->collider);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE39D4.s")
void func_80AE2630(GlobalContext* globalCtx, Actor* thisx, s32 arg2) {
Actor* enemyIt = globalCtx->actorCtx.actorList[ACTORTYPE_ENEMY].first;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3A54.s")
while (enemyIt != NULL) {
if ((enemyIt->id != ACTOR_EN_RD) || (enemyIt == thisx) || (enemyIt->params < 0)) {
enemyIt = enemyIt->next;
continue;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3A8C.s")
if (arg2 != 0) {
enemyIt->parent = thisx;
} else if (enemyIt->parent == thisx) {
enemyIt->parent = NULL;
}
enemyIt = enemyIt->next;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3B18.s")
void func_80AE269C(EnRd* this) {
if (this->actor.params != 2) {
SkelAnime_ChangeAnimTransitionRepeat(&this->skelAnime, &D_060087D0, -6.0f);
} else {
SkelAnime_ChangeAnimDefaultRepeat(&this->skelAnime, &D_06005D98);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3C20.s")
this->unk_31B = 0;
this->unk_30C = (Math_Rand_ZeroOne() * 10.0f) + 5.0f;
this->actor.speedXZ = 0.0f;
this->actor.posRot.rot.y = this->actor.shape.rot.y;
EnRd_SetupAction(this, func_80AE2744);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3C98.s")
void func_80AE2744(EnRd* this, GlobalContext* globalCtx) {
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x64, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x64, 0);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3DE4.s")
if ((this->actor.params == 2) && (0.0f == this->skelAnime.animCurrentFrame)) {
if (Math_Rand_ZeroOne() >= 0.5f) {
SkelAnime_ChangeAnimDefaultRepeat(&this->skelAnime, &D_06005D98);
} else {
SkelAnime_ChangeAnimDefaultRepeat(&this->skelAnime, &D_060057AC);
}
} else {
this->unk_30C--;
if (this->unk_30C == 0) {
this->unk_30C = (Math_Rand_ZeroOne() * 10.0f) + 10.0f;
this->skelAnime.animCurrentFrame = 0.0f;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3ECC.s")
if (this->actor.parent != NULL) {
if (this->unk_305 == 0) {
if (this->actor.params != 2) {
func_80AE31DC(this);
} else {
func_80AE392C(this);
}
}
} else {
if (this->unk_305 != 0) {
if (this->actor.params != 2) {
func_80AE37BC(this);
} else {
func_80AE392C(this);
}
}
this->unk_305 = 0;
if ((this->actor.xzDistFromLink <= 150.0f) && func_8002DDE4(globalCtx)) {
if ((this->actor.params != 2) && (this->unk_305 == 0)) {
func_80AE37BC(this);
} else {
func_80AE392C(this);
}
}
}
if ((globalCtx->gameplayFrames & 95) == 0) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_CRY);
}
}
void func_80AE2970(EnRd* this) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_060087D0, 0, 0, SkelAnime_GetFrameCount(&D_060087D0.genericHeader), 0,
-6.0f);
this->unk_31B = 0xB;
this->unk_30C = 6;
this->actor.shape.rot.x = -0x4000;
this->actor.gravity = 0.0f;
this->actor.shape.unk_08 = 0.0f;
this->actor.speedXZ = 0.0f;
EnRd_SetupAction(this, func_80AE2A10);
}
// Rising out of coffin
void func_80AE2A10(EnRd* this, GlobalContext* globalCtx) {
if (this->actor.shape.rot.x != -0x4000) {
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.x, 0, 1, 0x7D0, 0);
if (Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.y, this->actor.initPosRot.pos.y, 0.3f, 2.0f, 0.3f) ==
0.0f) {
this->actor.gravity = -3.5f;
func_80AE269C(this);
}
} else {
if (this->actor.posRot.pos.y == this->actor.initPosRot.pos.y) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_CRY);
}
if (Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.y, this->actor.initPosRot.pos.y + 50.0f, 0.3f, 2.0f,
0.3f) == 0.0f) {
if (this->unk_30C != 0) {
this->unk_30C--;
Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 6.0f, 0.3f, 1.0f, 0.3f);
} else if (Math_SmoothScaleMaxMinF(&this->actor.speedXZ, 0.0f, 0.3f, 1.0f, 0.3f) == 0.0f) {
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.x, 0, 1, 0x7D0, 0);
}
}
}
}
void func_80AE2B90(EnRd* this, GlobalContext* globalCtx) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_0600EFDC, 1.0f, 4.0f, SkelAnime_GetFrameCount(&D_0600EFDC.genericHeader),
1, -4.0f);
this->actor.speedXZ = 0.4f;
this->unk_31B = 4;
EnRd_SetupAction(this, func_80AE2C1C);
}
void func_80AE2C1C(EnRd* this, GlobalContext* globalCtx) {
Vec3f sp44 = D_80AE4918;
Color_RGBA8_n sp40 = D_80AE4924;
Color_RGBA8_n sp3C = D_80AE4928;
Player* player = PLAYER;
s32 pad;
s16 sp32 = this->actor.yawTowardsLink - this->actor.shape.rot.y - this->unk_30E - this->unk_310;
this->skelAnime.animPlaybackSpeed = this->actor.speedXZ;
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, this->actor.yawTowardsLink, 1, 0xFA, 0);
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x64, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x64, 0);
this->actor.posRot.rot.y = this->actor.shape.rot.y;
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
if (func_8002DB6C(&player->actor, &this->actor.initPosRot.pos) >= 150.0f) {
func_80AE2F50(this, globalCtx);
}
if ((ABS(sp32) < 0x1554) && (func_8002DB48(&this->actor, &player->actor) <= 150.0f)) {
if (!(player->stateFlags1 & 0x2C6080) && !(player->stateFlags2 & 0x80)) {
if (this->unk_306 == 0) {
if (!(this->unk_312 & 0x80)) {
player->actor.freezeTimer = 40;
func_8008EEAC(globalCtx, &this->actor);
PLAYER->unk_684 = &this->actor;
func_800AA000(this->actor.xzDistFromLink, 0xFF, 0x14, 0x96);
}
this->unk_306 = 0x3C;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_AIM);
}
} else {
func_80AE2F50(this, globalCtx);
}
}
DECR(this->unk_307);
if ((this->unk_307 == 0) && (func_8002DB48(&this->actor, &player->actor) <= 45.0f) &&
(func_8002E084(&this->actor, 0x38E3))) {
player->actor.freezeTimer = 0;
if (globalCtx->grabPlayer(globalCtx, &player->actor) != 0) {
this->actor.flags &= ~1;
func_80AE33F0(this);
}
} else if (this->actor.params > 0) {
if (this->actor.parent != NULL) {
func_80AE31DC(this);
} else {
this->unk_305 = 0;
}
}
if ((this->skelAnime.animCurrentFrame == 10.0f) || (this->skelAnime.animCurrentFrame == 22.0f)) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_RIZA_WALK);
} else if ((globalCtx->gameplayFrames & 95) == 0) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_CRY);
}
}
void func_80AE2F50(EnRd* this, GlobalContext* globalCtx) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_0600EFDC, 0.5f, 0, SkelAnime_GetFrameCount(&D_0600EFDC.genericHeader), 1,
-4.0f);
this->unk_31B = 2;
EnRd_SetupAction(this, func_80AE2FD0);
}
void func_80AE2FD0(EnRd* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s32 pad;
s16 targetY = func_8002DAC0(&this->actor, &this->actor.initPosRot.pos);
if (func_8002DB6C(&this->actor, &this->actor.initPosRot.pos) >= 5.0f) {
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, targetY, 1, 0x1C2, 0);
} else {
this->actor.speedXZ = 0.0f;
if (Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, this->actor.initPosRot.rot.y, 1, 0x1C2, 0) == 0) {
if (this->actor.params != 2) {
func_80AE269C(this);
} else {
func_80AE39D4(this);
}
}
}
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x64, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x64, 0);
this->actor.posRot.rot.y = this->actor.shape.rot.y;
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
if (!(player->stateFlags1 & 0x2C6080) && !(player->stateFlags2 & 0x80) &&
(func_8002DB6C(&player->actor, &this->actor.initPosRot.pos) < 150.0f)) {
this->actor.unk_1F = 0;
func_80AE2B90(this, globalCtx);
} else if (this->actor.params > 0) {
if (this->actor.parent != NULL) {
func_80AE31DC(this);
} else {
this->unk_305 = 0;
}
}
if (this->skelAnime.animCurrentFrame == 10.0f || this->skelAnime.animCurrentFrame == 22.0f) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_RIZA_WALK);
} else if ((globalCtx->gameplayFrames & 95) == 0) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_CRY);
}
}
void func_80AE31DC(EnRd* this) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_0600EFDC, 0.5f, 0, SkelAnime_GetFrameCount(&D_0600EFDC.genericHeader), 1,
-4.0f);
this->unk_31B = 3;
this->unk_305 = 1;
EnRd_SetupAction(this, func_80AE3260);
}
void func_80AE3260(EnRd* this, GlobalContext* globalCtx) {
if (this->actor.parent != NULL) {
s32 pad;
s16 targetY;
Vec3f thisPos = this->actor.parent->posRot.pos;
targetY = func_8002DAC0(&this->actor, &thisPos);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, targetY, 1, 0xFA, 0);
if (func_8002DB6C(&this->actor, &thisPos) >= 45.0f) {
this->actor.speedXZ = 0.4f;
} else {
this->actor.speedXZ = 0.0f;
if (this->actor.params != 2) {
func_80AE269C(this);
} else {
func_80AE39D4(this);
}
}
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x64, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x64, 0);
} else {
func_80AE2B90(this, globalCtx);
}
this->actor.posRot.rot.y = this->actor.shape.rot.y;
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
if (this->skelAnime.animCurrentFrame == 10.0f || this->skelAnime.animCurrentFrame == 22.0f) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_RIZA_WALK);
} else if ((globalCtx->gameplayFrames & 95) == 0) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_CRY);
}
}
void func_80AE33F0(EnRd* this) {
SkelAnime_ChangeAnimDefaultStop(&this->skelAnime, &D_06004ADC);
this->unk_30C = this->unk_304 = 0;
this->unk_319 = 0xC8;
this->unk_31B = 8;
this->actor.speedXZ = 0.0f;
EnRd_SetupAction(this, func_80AE3454);
}
void func_80AE3454(EnRd* this, GlobalContext* globalCtx) {
s32 pad;
Player* player = PLAYER;
if (SkelAnime_FrameUpdateMatrix(&this->skelAnime)) {
this->unk_304++;
}
switch (this->unk_304) {
case 1:
SkelAnime_ChangeAnimDefaultRepeat(&this->skelAnime, &D_06004268);
this->unk_304++;
globalCtx->damagePlayer(globalCtx, -8);
func_800AA000(this->actor.xzDistFromLink, 0xFF, 1, 0xC);
this->unk_319 = 0x14;
case 0:
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x5DC, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x5DC, 0);
case 2:
if (!(player->stateFlags2 & 0x80)) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_060046F8, 0.5f, 0.0f,
SkelAnime_GetFrameCount(&D_060046F8.genericHeader), 3, 0.0f);
this->unk_304++;
this->unk_31B = 4;
return;
}
if (LINK_IS_CHILD) {
Math_SmoothScaleMaxMinF(&this->actor.shape.unk_08, -1500.0f, 1.0f, 150.0f, 0.0f);
}
Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.x,
(Math_Sins(player->actor.shape.rot.y) * -25.0f) + player->actor.posRot.pos.x, 1.0f,
10.0f, 0.0f);
Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.y, player->actor.posRot.pos.y, 1.0f, 10.0f, 0.0f);
Math_SmoothScaleMaxMinF(&this->actor.posRot.pos.z,
(Math_Coss(player->actor.shape.rot.y) * -25.0f) + player->actor.posRot.pos.z, 1.0f,
10.0f, 0.0f);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, player->actor.shape.rot.y, 1, 0x1770, 0);
if (this->skelAnime.animCurrentFrame == 0.0f) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_ATTACK);
}
this->unk_319--;
if (this->unk_319 == 0) {
globalCtx->damagePlayer(globalCtx, -8);
func_800AA000(this->actor.xzDistFromLink, 0xF0, 1, 0xC);
this->unk_319 = 0x14;
func_8002F7DC(&player->actor, NA_SE_VO_LI_DAMAGE_S + player->ageProperties->unk_92);
}
break;
case 3:
if (LINK_IS_CHILD) {
Math_SmoothScaleMaxMinF(&this->actor.shape.unk_08, 0, 1.0f, 400.0f, 0.0f);
}
break;
case 4:
if (LINK_IS_CHILD) {
Math_SmoothScaleMaxMinF(&this->actor.shape.unk_08, 0, 1.0f, 400.0f, 0.0f);
}
this->actor.unk_1F = 0;
this->actor.flags |= 1;
this->unk_306 = 0xA;
this->unk_307 = 0xF;
func_80AE2B90(this, globalCtx);
break;
}
}
void func_80AE37BC(EnRd* this) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_06004F94, 0.0f, 0.0f, SkelAnime_GetFrameCount(&D_06004F94.genericHeader),
2, 0.0f);
this->unk_31B = 7;
EnRd_SetupAction(this, func_80AE3834);
}
void func_80AE3834(EnRd* this, GlobalContext* globalCtx) {
Vec3f sp34 = D_80AE492C;
Color_RGBA8_n sp30 = D_80AE4938;
Color_RGBA8_n sp2C = D_80AE493C;
Player* player = PLAYER;
s16 temp_v0 = this->actor.yawTowardsLink - this->actor.shape.rot.y - this->unk_30E - this->unk_310;
if (ABS(temp_v0) < 0x2008) {
if (!(this->unk_312 & 0x80)) {
player->actor.freezeTimer = 60;
func_800AA000(this->actor.xzDistFromLink, 0xFF, 0x14, 0x96);
func_8008EEAC(globalCtx, &this->actor);
}
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_AIM);
func_80AE2B90(this, globalCtx);
}
}
void func_80AE392C(EnRd* this) {
SkelAnime_ChangeAnimTransitionStop(&this->skelAnime, &D_06008040, -4.0f);
this->unk_31B = 5;
EnRd_SetupAction(this, func_80AE3978);
}
void func_80AE3978(EnRd* this, GlobalContext* globalCtx) {
if (SkelAnime_FrameUpdateMatrix(&this->skelAnime)) {
if (this->actor.parent != NULL) {
func_80AE31DC(this);
} else {
func_80AE37BC(this);
}
}
}
void func_80AE39D4(EnRd* this) {
SkelAnime_ChangeAnim(&this->skelAnime, &D_06008040, -1.0f, SkelAnime_GetFrameCount(&D_06008040.genericHeader), 0.0f,
2, -4.0f);
this->unk_31B = 6;
EnRd_SetupAction(this, func_80AE3A54);
}
void func_80AE3A54(EnRd* this, GlobalContext* globalCtx) {
if (SkelAnime_FrameUpdateMatrix(&this->skelAnime)) {
func_80AE269C(this);
}
}
void func_80AE3A8C(EnRd* this) {
SkelAnime_ChangeAnimTransitionStop(&this->skelAnime, &D_060074F0, -6.0f);
if (this->actor.bgCheckFlags & 1) {
this->actor.speedXZ = -2.0f;
}
this->actor.flags |= 1;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_DAMAGE);
this->unk_31B = 9;
EnRd_SetupAction(this, func_80AE3B18);
}
void func_80AE3B18(EnRd* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
if (this->actor.speedXZ < 0.0f) {
this->actor.speedXZ += 0.15f;
}
this->actor.posRot.rot.y = this->actor.yawTowardsLink;
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x12C, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x12C, 0);
if (SkelAnime_FrameUpdateMatrix(&this->skelAnime)) {
this->actor.posRot.rot.y = this->actor.shape.rot.y;
if (this->actor.parent != NULL) {
func_80AE31DC(this);
} else if (func_8002DB6C(&player->actor, &this->actor.initPosRot.pos) >= 150.0f) {
func_80AE2F50(this, globalCtx);
} else {
func_80AE2B90(this, globalCtx);
}
this->unk_31D = 0xFF;
}
}
void func_80AE3C20(EnRd* this) {
SkelAnime_ChangeAnimTransitionStop(&this->skelAnime, &D_06006E88, -1.0f);
this->unk_31B = 0xA;
this->unk_30C = 0x12C;
this->actor.flags &= ~1;
this->actor.speedXZ = 0.0f;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_REDEAD_DEAD);
EnRd_SetupAction(this, func_80AE3C98);
}
void func_80AE3C98(EnRd* this, GlobalContext* globalCtx) {
if (this->actor.type != ACTORTYPE_PROP) {
Actor_ChangeType(globalCtx, &globalCtx->actorCtx, &this->actor, ACTORTYPE_PROP);
}
Math_SmoothScaleMaxMinS(&this->unk_30E, 0, 1, 0x7D0, 0);
Math_SmoothScaleMaxMinS(&this->unk_310, 0, 1, 0x7D0, 0);
if (SkelAnime_FrameUpdateMatrix(&this->skelAnime)) {
if (this->unk_30C == 0) {
if (!Flags_GetSwitch(globalCtx, this->unk_312 & 0x7F)) {
Flags_SetSwitch(globalCtx, this->unk_312 & 0x7F);
}
if (this->unk_314 != 0) {
if (this->unk_314 == 0xB4) {
func_80AE2630(globalCtx, &this->actor, 0);
}
this->actor.scale.y -= 0.000075f;
this->unk_314 -= 5;
} else {
Actor_Kill(&this->actor);
}
} else {
this->unk_30C--;
}
} else if (((s32)this->skelAnime.animCurrentFrame == 33) || ((s32)this->skelAnime.animCurrentFrame == 40)) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_RIZA_DOWN);
}
}
void func_80AE3DE4(EnRd* this) {
this->unk_31B = 1;
this->actor.speedXZ = 0.0f;
this->actor.posRot.rot.y = this->actor.shape.rot.y;
if (gSaveContext.unk_1422 != 0) {
this->unk_318 = 1;
this->unk_316 = 0x258;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_LIGHT_ARROW_HIT);
func_8003426C(&this->actor, -0x8000, -0x7F38, 0, 0xFF);
} else if (this->unk_31C == 1) {
func_8003426C(&this->actor, 0, 0xC8, 0, 0x50);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_LIGHT_ARROW_HIT);
func_8003426C(&this->actor, -0x8000, 0xC8, 0, 0x50);
}
EnRd_SetupAction(this, func_80AE3ECC);
}
void func_80AE3ECC(EnRd* this, GlobalContext* globalCtx) {
if ((this->unk_318 != 0) && (this->unk_316 != 0)) {
this->unk_316--;
if (this->unk_316 >= 0xFF) {
func_8003426C(&this->actor, -0x8000, 0xC8, 0, 0xFF);
}
if (this->unk_316 == 0) {
this->unk_318 = 0;
gSaveContext.unk_1422 = 0;
}
}
if (this->actor.dmgEffectTimer == 0) {
if (this->actor.colChkInfo.health == 0) {
func_80AE2630(globalCtx, &this->actor, 1);
func_80AE3C20(this);
Item_DropCollectibleRandom(globalCtx, &this->actor, &this->actor.posRot.pos, 0x90);
} else {
func_80AE3A8C(this);
}
}
}
// Regalloc..I can get the score lower by using permuter suggestions, but they all seem silly
#ifdef NON_MATCHING
void func_80AE3F9C(EnRd* this, GlobalContext* globalCtx) {
s16 unk_310;
s16 shapeRotY;
s16 yawTowardsLink;
s16 new_var;
s16 temp_v0;
s16 phi_a3;
s16 phi_v0;
unk_310 = this->unk_310;
shapeRotY = this->actor.shape.rot.y;
yawTowardsLink = this->actor.yawTowardsLink;
new_var = unk_310 + shapeRotY;
temp_v0 = yawTowardsLink - new_var;
phi_a3 = CLAMP(temp_v0, -500, 500);
temp_v0 -= this->unk_30E;
phi_v0 = CLAMP(temp_v0, -500, 500);
if ((s16)(yawTowardsLink - shapeRotY) >= 0) {
this->unk_310 += ABS(phi_a3);
this->unk_30E += ABS(phi_v0);
} else {
this->unk_310 -= ABS(phi_a3);
this->unk_30E -= ABS(phi_v0);
}
this->unk_310 = CLAMP(this->unk_310, -18783, 18783);
this->unk_30E = CLAMP(this->unk_30E, -9583, 9583);
}
#else
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE3F9C.s")
#endif
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE4114.s")
void func_80AE4114(EnRd* this, GlobalContext* globalCtx) {
s32 pad;
Player* player = PLAYER;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/EnRd_Update.s")
if ((gSaveContext.unk_1422 != 0) && (this->actor.shape.rot.x == 0) && (this->unk_318 == 0) &&
(this->unk_31B != 9) && (this->unk_31B != 0xA) && (this->unk_31B != 1)) {
func_80AE3DE4(this);
return;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE44C4.s")
if (this->collider.base.acFlags & 2) {
this->collider.base.acFlags &= ~2;
this->unk_31C = this->actor.colChkInfo.damageEffect;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/func_80AE4520.s")
if (this->unk_31B != 11) {
func_80035650(&this->actor, &this->collider.body, 1);
if (player->unk_844 != 0) {
this->unk_31D = player->unk_845;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Rd/EnRd_Draw.s")
if ((this->unk_31C != 0) && (this->unk_31C != 6)) {
if (((this->unk_31C == 1) || (this->unk_31C == 13)) && (this->unk_31B != 1)) {
Actor_ApplyDamage(&this->actor);
func_80AE3DE4(this);
return;
}
this->unk_318 = 0;
this->unk_316 = 0;
if (this->unk_31C == 0xE) {
func_8003426C(&this->actor, 0x4000, 0xFF, 0, 0x50);
this->unk_31A = 0x28;
} else {
func_8003426C(&this->actor, 0x4000, 0xFF, 0, 8);
}
Actor_ApplyDamage(&this->actor);
if (this->actor.colChkInfo.health == 0) {
func_80AE2630(globalCtx, &this->actor, 1);
func_80AE3C20(this);
Item_DropCollectibleRandom(globalCtx, 0, &this->actor.posRot.pos, 0x90);
} else {
func_80AE3A8C(this);
}
}
}
}
}
void EnRd_Update(Actor* thisx, GlobalContext* globalCtx) {
EnRd* this = THIS;
CollisionCheckContext* colChkCtx = &globalCtx->colChkCtx;
Player* player = PLAYER;
ColliderCylinder* collider = &this->collider;
func_80AE4114(this, globalCtx);
if (gSaveContext.unk_1422 != 0 && this->unk_318 == 0) {
gSaveContext.unk_1422 = 0;
}
if (this->unk_31C != 6 && ((this->unk_31B != 11) || (this->unk_31C != 14))) {
if (this->unk_306 != 0) {
this->unk_306--;
}
this->actionFunc(this, globalCtx);
if (this->unk_31B != 8 && this->actor.speedXZ != 0.0f) {
Actor_MoveForward(&this->actor);
}
if ((this->actor.shape.rot.x == 0) && (this->unk_31B != 8) && (this->actor.speedXZ != 0.0f)) {
func_8002E4B4(globalCtx, &this->actor, 30.0f, 20.0f, 35.0f, 0x1D);
}
if (this->unk_31B == 7) {
func_80AE3F9C(this, globalCtx);
}
}
this->actor.posRot2.pos = this->actor.posRot.pos;
this->actor.posRot2.pos.y += 50.0f;
if ((this->actor.colChkInfo.health > 0) && (this->unk_31B != 8)) {
Collider_CylinderUpdate(&this->actor, collider);
CollisionCheck_SetOC(globalCtx, colChkCtx, &collider->base);
if ((this->unk_31B != 9) || ((player->unk_844 != 0) && (player->unk_845 != this->unk_31D))) {
CollisionCheck_SetAC(globalCtx, colChkCtx, &collider->base);
}
}
}
s32 EnRd_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx,
Gfx** gfx) {
EnRd* this = THIS;
if (limbIndex == 23) {
rot->y += this->unk_30E;
} else if (limbIndex == 12) {
rot->y += this->unk_310;
}
return 0;
}
void EnRd_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx, Gfx** gfx) {
Vec3f sp2C = D_80AE4940;
EnRd* this = THIS;
s32 idx = -1;
Vec3f destPos;
if ((this->unk_31A != 0) || ((this->actor.dmgEffectTimer != 0) && (this->actor.dmgEffectParams & 0x4000))) {
switch (limbIndex - 1) {
case 23:
idx = 0;
break;
case 0:
idx = 1;
break;
case 21:
idx = 2;
break;
case 17:
idx = 3;
break;
case 13:
idx = 4;
break;
case 24:
idx = 5;
break;
case 8:
idx = 6;
break;
case 3:
idx = 7;
break;
case 10:
idx = 8;
break;
case 5:
idx = 9;
break;
}
if (idx >= 0) {
Matrix_MultVec3f(&sp2C, &destPos);
this->unkFire[idx].x = destPos.x;
this->unkFire[idx].y = destPos.y;
this->unkFire[idx].z = destPos.z;
}
}
}
void EnRd_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnRd* this = THIS;
s32 pad;
Vec3f thisPos = this->actor.posRot.pos;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_rd.c", 1679);
if (this->unk_314 == 0xFF) {
func_80093D18(globalCtx->state.gfxCtx);
gDPSetEnvColor(oGfxCtx->polyOpa.p++, 0, 0, 0, this->unk_314);
gSPSegment(oGfxCtx->polyOpa.p++, 8, &D_80116280[2]);
oGfxCtx->polyOpa.p = SkelAnime_DrawSV2(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl,
this->skelAnime.dListCount, EnRd_OverrideLimbDraw, EnRd_PostLimbDraw,
&this->actor, oGfxCtx->polyOpa.p);
func_80033C30(&thisPos, &D_80AE4958, 255, globalCtx);
if (this->unk_31A != 0) {
this->actor.dmgEffectTimer++;
THIS->unk_31A--;
if (this->unk_31A % 4 == 0) {
func_8002A54C(globalCtx, &this->actor, &this->unkFire[this->unk_31A >> 2], 0x4B, 0, 0,
(this->unk_31A >> 2));
}
}
} else {
func_80093D84(globalCtx->state.gfxCtx);
gDPSetEnvColor(oGfxCtx->polyXlu.p++, 0, 0, 0, this->unk_314);
gSPSegment(oGfxCtx->polyXlu.p++, 8, &D_80116280[0]);
oGfxCtx->polyXlu.p = SkelAnime_DrawSV2(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl,
this->skelAnime.dListCount, EnRd_OverrideLimbDraw, NULL, &this->actor,
oGfxCtx->polyXlu.p);
func_80033C30(&thisPos, &D_80AE4958, this->unk_314, globalCtx);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_rd.c", 1735);
}

View File

@ -6,9 +6,32 @@
struct EnRd;
typedef void (*EnRdActionFunc)(struct EnRd*, GlobalContext*);
typedef struct EnRd {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x220];
/* 0x014C */ Vec3s unkFire[10];
/* 0x0188 */ SkelAnime skelAnime;
/* 0x01CC */ Vec3s limbDrawTable[26];
/* 0x0268 */ Vec3s transitionDrawTable[26];
/* 0x0304 */ u8 unk_304;
/* 0x0305 */ u8 unk_305;
/* 0x0306 */ u8 unk_306;
/* 0x0307 */ u8 unk_307;
/* 0x0308 */ EnRdActionFunc actionFunc;
/* 0x030C */ s16 unk_30C;
/* 0x030E */ s16 unk_30E;
/* 0x0310 */ s16 unk_310;
/* 0x0312 */ s16 unk_312;
/* 0x0314 */ s16 unk_314;
/* 0x0316 */ s16 unk_316;
/* 0x0318 */ u8 unk_318;
/* 0x0319 */ u8 unk_319;
/* 0x031A */ u8 unk_31A;
/* 0x031B */ u8 unk_31B;
/* 0x031C */ u8 unk_31C;
/* 0x031D */ u8 unk_31D;
/* 0x0320 */ ColliderCylinder collider;
} EnRd; // size = 0x036C
extern const ActorInit En_Rd_InitVars;

177
tools/assist.py Executable file
View File

@ -0,0 +1,177 @@
#!/usr/bin/python3
import argparse
from collections import OrderedDict
import os
import re
import pickle
import sys
script_dir = os.path.dirname(os.path.realpath(__file__))
root_dir = script_dir + "/../"
asm_dir = root_dir + "asm/non_matchings/overlays/actors"
build_dir = root_dir + "build/"
def read_rom():
with open("baserom.z64", "rb") as f:
return f.read()
def find_dir(query):
for root, dirs, files in os.walk(asm_dir):
for d in dirs:
if d == query:
return os.path.join(root, d)
return None
def get_all_s_files():
ret = set()
for root, dirs, files in os.walk(asm_dir):
for f in files:
if f.endswith(".s"):
ret.add(f[:-2])
return ret
def get_symbol_bytes(offsets, func):
if func not in offsets or "start" not in offsets[func] or "end" not in offsets[func]:
return None
start = offsets[func]["start"]
end = offsets[func]["end"]
return list(rom_bytes[start:end])
def parse_map(fname):
ram_offset = None
cur_file = "<no file>"
syms = {}
prev_sym = None
prev_line = ""
with open(fname) as f:
for line in f:
if "load address" in line:
if "noload" in line or "noload" in prev_line:
ram_offset = None
continue
ram = int(line[16 : 16 + 18], 0)
rom = int(line[59 : 59 + 18], 0)
ram_offset = ram - rom
continue
prev_line = line
if (
ram_offset is None
or "=" in line
or "*fill*" in line
or " 0x" not in line
):
continue
ram = int(line[16 : 16 + 18], 0)
rom = ram - ram_offset
fn = line.split()[-1]
if "0x" in fn:
ram_offset = None
elif "/" in fn:
cur_file = fn
else:
syms[fn] = (rom, cur_file, prev_sym, ram)
prev_sym = fn
return syms
def get_map_offsets(syms):
offsets = {}
for sym in syms:
prev_sym = syms[sym][2]
if sym not in offsets:
offsets[sym] = {}
if prev_sym not in offsets:
offsets[prev_sym] = {}
offsets[sym]["start"] = syms[sym][0]
offsets[prev_sym]["end"] = syms[sym][0]
return offsets
def diff_syms(qb, tb):
if len(tb) < 8:
return 0
if len(qb) > len(tb):
larger = qb
smaller = tb
else:
larger = tb
smaller = qb
len_ratio = len(smaller) / len(larger)
n_bytes = len(smaller)
matches = 0
for i in range(0, n_bytes, 4):
if smaller[i] == larger[i]:
matches += 4
return (matches / n_bytes) * len_ratio
def get_matches(query):
query_bytes = get_symbol_bytes(map_offsets, query)
if query_bytes is None:
sys.exit("Symbol '" + query + "' not found")
ret = {}
for symbol in map_offsets:
if symbol is not None and query != symbol:
target_bytes = get_symbol_bytes(map_offsets, symbol)
if target_bytes is not None:
score = diff_syms(query_bytes, target_bytes)
if score >= args.threshold:
ret[symbol] = score
return OrderedDict(sorted(ret.items(), key=lambda kv: kv[1], reverse=True))
def do_query(query):
matches = get_matches(query)
num_matches = len(matches)
if num_matches == 0:
print(query + " - found no matches")
return
i = 0
more_str = ":"
if args.num_out < num_matches:
more_str = " (showing only " + str(args.num_out) + "):"
print(query + " - found " + str(num_matches) + " matches total" + more_str)
for match in matches:
if i == args.num_out:
break
match_str = "{:.2f} - {}".format(matches[match], match)
if match not in s_files:
match_str += " (decompiled)"
print(match_str)
i += 1
print()
parser = argparse.ArgumentParser(description="Tools to assist with decomp")
parser.add_argument("query", help="function or file")
parser.add_argument("--threshold", help="score threshold between 0 and 1 (higher is more restrictive)", type=float, default=0.95, required=False)
parser.add_argument("--num-out", help="number of functions to display", type=int, default=10, required=False)
args = parser.parse_args()
rom_bytes = read_rom()
map_syms = parse_map(build_dir + "z64.map")
map_offsets = get_map_offsets(map_syms)
s_files = get_all_s_files()
query_dir = find_dir(args.query)
if query_dir is not None:
files = os.listdir(query_dir)
for f_name in files:
do_query(f_name[:-2])
else:
do_query(args.query)

View File

@ -9,3 +9,4 @@ OPEN_DISPS = "void"
CLOSE_DISPS = "void"
ABS = "int"
SQ = "int"
CLAMP = "int"

View File

@ -500,6 +500,21 @@ D_06007564 = 0x06007564;
D_06001F10 = 0x06001F10;
D_06000B70 = 0x06000B70;
// z_en_rd
D_06004268 = 0x06004268;
D_060046F8 = 0x060046F8;
D_06004ADC = 0x06004ADC;
D_06004F94 = 0x06004F94;
D_060057AC = 0x060057AC;
D_06005D98 = 0x06005D98;
D_06006E88 = 0x06006E88;
D_060074F0 = 0x060074F0;
D_06008040 = 0x06008040;
D_060087D0 = 0x060087D0;
D_0600E778 = 0x0600E778;
D_0600EFDC = 0x0600EFDC;
D_06003DD8 = 0x06003DD8;
// z_eff_ss_extra
D_06000DC0 = 0x06000DC0;