1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-27 07:07:09 +00:00

ovl_En_Brob OK (#708)

* ovl_En_Brob OK

* Review changes
This commit is contained in:
Emill 2021-02-28 16:43:25 +01:00 committed by GitHub
parent 2b70c84307
commit 80d0b2785d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
22 changed files with 280 additions and 1168 deletions

View file

@ -1,26 +0,0 @@
glabel EnBrob_Destroy
/* 00274 809CAD84 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00278 809CAD88 AFA40018 */ sw $a0, 0x0018($sp)
/* 0027C 809CAD8C 8FAE0018 */ lw $t6, 0x0018($sp)
/* 00280 809CAD90 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00284 809CAD94 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00288 809CAD98 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 0028C 809CAD9C 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 00290 809CADA0 AFA7001C */ sw $a3, 0x001C($sp)
/* 00294 809CADA4 0C00FB56 */ jal DynaPoly_DeleteBgActor
## DynaPoly_DeleteBgActor
/* 00298 809CADA8 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 0029C 809CADAC 8FA50018 */ lw $a1, 0x0018($sp)
/* 002A0 809CADB0 8FA4001C */ lw $a0, 0x001C($sp)
/* 002A4 809CADB4 0C0170EB */ jal Collider_DestroyCylinder
/* 002A8 809CADB8 24A50228 */ addiu $a1, $a1, 0x0228 ## $a1 = 00000228
/* 002AC 809CADBC 8FA50018 */ lw $a1, 0x0018($sp)
/* 002B0 809CADC0 8FA4001C */ lw $a0, 0x001C($sp)
/* 002B4 809CADC4 0C0170EB */ jal Collider_DestroyCylinder
/* 002B8 809CADC8 24A50274 */ addiu $a1, $a1, 0x0274 ## $a1 = 00000274
/* 002BC 809CADCC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 002C0 809CADD0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 002C4 809CADD4 03E00008 */ jr $ra
/* 002C8 809CADD8 00000000 */ nop

View file

@ -1,33 +0,0 @@
glabel EnBrob_Draw
/* 00ED0 809CB9E0 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00ED4 809CB9E4 AFB00028 */ sw $s0, 0x0028($sp)
/* 00ED8 809CB9E8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00EDC 809CB9EC AFBF002C */ sw $ra, 0x002C($sp)
/* 00EE0 809CB9F0 AFA50034 */ sw $a1, 0x0034($sp)
/* 00EE4 809CB9F4 0C024F46 */ jal func_80093D18
/* 00EE8 809CB9F8 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000
/* 00EEC 809CB9FC 860F01AE */ lh $t7, 0x01AE($s0) ## 000001AE
/* 00EF0 809CBA00 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 00EF4 809CBA04 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00EF8 809CBA08 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 00EFC 809CBA0C 44066000 */ mfc1 $a2, $f12
/* 00F00 809CBA10 0C034261 */ jal Matrix_Translate
/* 00F04 809CBA14 468023A0 */ cvt.s.w $f14, $f4
/* 00F08 809CBA18 8E050168 */ lw $a1, 0x0168($s0) ## 00000168
/* 00F0C 809CBA1C 8E060184 */ lw $a2, 0x0184($s0) ## 00000184
/* 00F10 809CBA20 92070166 */ lbu $a3, 0x0166($s0) ## 00000166
/* 00F14 809CBA24 3C18809D */ lui $t8, %hi(func_809CB90C) ## $t8 = 809D0000
/* 00F18 809CBA28 2718B90C */ addiu $t8, $t8, %lo(func_809CB90C) ## $t8 = 809CB90C
/* 00F1C 809CBA2C AFB80014 */ sw $t8, 0x0014($sp)
/* 00F20 809CBA30 AFB00018 */ sw $s0, 0x0018($sp)
/* 00F24 809CBA34 AFA00010 */ sw $zero, 0x0010($sp)
/* 00F28 809CBA38 0C0286B2 */ jal SkelAnime_DrawFlexOpa
/* 00F2C 809CBA3C 8FA40034 */ lw $a0, 0x0034($sp)
/* 00F30 809CBA40 8FBF002C */ lw $ra, 0x002C($sp)
/* 00F34 809CBA44 8FB00028 */ lw $s0, 0x0028($sp)
/* 00F38 809CBA48 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00F3C 809CBA4C 03E00008 */ jr $ra
/* 00F40 809CBA50 00000000 */ nop
/* 00F44 809CBA54 00000000 */ nop
/* 00F48 809CBA58 00000000 */ nop
/* 00F4C 809CBA5C 00000000 */ nop

View file

@ -1,178 +0,0 @@
.late_rodata
glabel D_809CBAC0
.float 0.033333335
glabel D_809CBAC4
.float 0.06666667
glabel D_809CBAC8
.float 12000.0
.text
glabel EnBrob_Init
/* 00000 809CAB10 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00004 809CAB14 AFB00024 */ sw $s0, 0x0024($sp)
/* 00008 809CAB18 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0000C 809CAB1C AFB10028 */ sw $s1, 0x0028($sp)
/* 00010 809CAB20 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00014 809CAB24 AFBF002C */ sw $ra, 0x002C($sp)
/* 00018 809CAB28 260E01B0 */ addiu $t6, $s0, 0x01B0 ## $t6 = 000001B0
/* 0001C 809CAB2C 260F01EC */ addiu $t7, $s0, 0x01EC ## $t7 = 000001EC
/* 00020 809CAB30 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00024 809CAB34 3C060600 */ lui $a2, %hi(D_060015D8) ## $a2 = 06000000
/* 00028 809CAB38 3C070600 */ lui $a3, %hi(D_06001750) ## $a3 = 06000000
/* 0002C 809CAB3C 2418000A */ addiu $t8, $zero, 0x000A ## $t8 = 0000000A
/* 00030 809CAB40 AFA00034 */ sw $zero, 0x0034($sp)
/* 00034 809CAB44 AFB80018 */ sw $t8, 0x0018($sp)
/* 00038 809CAB48 24E71750 */ addiu $a3, $a3, %lo(D_06001750) ## $a3 = 06001750
/* 0003C 809CAB4C 24C615D8 */ addiu $a2, $a2, %lo(D_060015D8) ## $a2 = 060015D8
/* 00040 809CAB50 26050164 */ addiu $a1, $s0, 0x0164 ## $a1 = 00000164
/* 00044 809CAB54 AFAF0014 */ sw $t7, 0x0014($sp)
/* 00048 809CAB58 0C0291BE */ jal SkelAnime_InitFlex
/* 0004C 809CAB5C AFAE0010 */ sw $t6, 0x0010($sp)
/* 00050 809CAB60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00054 809CAB64 0C010D20 */ jal DynaPolyActor_Init
/* 00058 809CAB68 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 0005C 809CAB6C 3C040600 */ lui $a0, %hi(D_06001A70) ## $a0 = 06000000
/* 00060 809CAB70 24841A70 */ addiu $a0, $a0, %lo(D_06001A70) ## $a0 = 06001A70
/* 00064 809CAB74 0C010620 */ jal CollisionHeader_GetVirtual
/* 00068 809CAB78 27A50034 */ addiu $a1, $sp, 0x0034 ## $a1 = FFFFFFF4
/* 0006C 809CAB7C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00070 809CAB80 26250810 */ addiu $a1, $s1, 0x0810 ## $a1 = 00000810
/* 00074 809CAB84 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00078 809CAB88 0C00FA9D */ jal DynaPoly_SetBgActor
## DynaPoly_SetBgActor
/* 0007C 809CAB8C 8FA70034 */ lw $a3, 0x0034($sp)
/* 00080 809CAB90 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 00084 809CAB94 26050228 */ addiu $a1, $s0, 0x0228 ## $a1 = 00000228
/* 00088 809CAB98 AFA50030 */ sw $a1, 0x0030($sp)
/* 0008C 809CAB9C 0C0170D9 */ jal Collider_InitCylinder
/* 00090 809CABA0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00094 809CABA4 3C07809D */ lui $a3, %hi(D_809CBA80) ## $a3 = 809D0000
/* 00098 809CABA8 8FA50030 */ lw $a1, 0x0030($sp)
/* 0009C 809CABAC 24E7BA80 */ addiu $a3, $a3, %lo(D_809CBA80) ## $a3 = 809CBA80
/* 000A0 809CABB0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 000A4 809CABB4 0C01712B */ jal Collider_SetCylinder
/* 000A8 809CABB8 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000AC 809CABBC 26050274 */ addiu $a1, $s0, 0x0274 ## $a1 = 00000274
/* 000B0 809CABC0 AFA50030 */ sw $a1, 0x0030($sp)
/* 000B4 809CABC4 0C0170D9 */ jal Collider_InitCylinder
/* 000B8 809CABC8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 000BC 809CABCC 3C07809D */ lui $a3, %hi(D_809CBA80) ## $a3 = 809D0000
/* 000C0 809CABD0 8FA50030 */ lw $a1, 0x0030($sp)
/* 000C4 809CABD4 24E7BA80 */ addiu $a3, $a3, %lo(D_809CBA80) ## $a3 = 809CBA80
/* 000C8 809CABD8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 000CC 809CABDC 0C01712B */ jal Collider_SetCylinder
/* 000D0 809CABE0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000D4 809CABE4 3C06809D */ lui $a2, %hi(D_809CBAAC) ## $a2 = 809D0000
/* 000D8 809CABE8 24C6BAAC */ addiu $a2, $a2, %lo(D_809CBAAC) ## $a2 = 809CBAAC
/* 000DC 809CABEC 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
/* 000E0 809CABF0 0C0187B5 */ jal CollisionCheck_SetInfo
/* 000E4 809CABF4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 000E8 809CABF8 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 000EC 809CABFC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000F0 809CAC00 3C053BA3 */ lui $a1, 0x3BA3 ## $a1 = 3BA30000
/* 000F4 809CAC04 00194203 */ sra $t0, $t9, 8
/* 000F8 809CAC08 310900FF */ andi $t1, $t0, 0x00FF ## $t1 = 00000000
/* 000FC 809CAC0C 15200016 */ bne $t1, $zero, .L809CAC68
/* 00100 809CAC10 00000000 */ nop
/* 00104 809CAC14 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 00108 809CAC18 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 0010C 809CAC1C 0C00B58B */ jal Actor_SetScale
/* 00110 809CAC20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00114 809CAC24 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
/* 00118 809CAC28 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
/* 0011C 809CAC2C 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000000
/* 00120 809CAC30 A60B001C */ sh $t3, 0x001C($s0) ## 0000001C
/* 00124 809CAC34 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00128 809CAC38 1041001D */ beq $v0, $at, .L809CACB0
/* 0012C 809CAC3C 304C00FF */ andi $t4, $v0, 0x00FF ## $t4 = 00000000
/* 00130 809CAC40 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00
/* 00134 809CAC44 3C01809D */ lui $at, %hi(D_809CBAC0) ## $at = 809D0000
/* 00138 809CAC48 C428BAC0 */ lwc1 $f8, %lo(D_809CBAC0)($at)
/* 0013C 809CAC4C 468021A0 */ cvt.s.w $f6, $f4
/* 00140 809CAC50 C6100054 */ lwc1 $f16, 0x0054($s0) ## 00000054
/* 00144 809CAC54 46083282 */ mul.s $f10, $f6, $f8
/* 00148 809CAC58 00000000 */ nop
/* 0014C 809CAC5C 460A8482 */ mul.s $f18, $f16, $f10
/* 00150 809CAC60 10000013 */ beq $zero, $zero, .L809CACB0
/* 00154 809CAC64 E6120054 */ swc1 $f18, 0x0054($s0) ## 00000054
.L809CAC68:
/* 00158 809CAC68 0C00B58B */ jal Actor_SetScale
/* 0015C 809CAC6C 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 0000D70A
/* 00160 809CAC70 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
/* 00164 809CAC74 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
/* 00168 809CAC78 31AE00FF */ andi $t6, $t5, 0x00FF ## $t6 = 00000000
/* 0016C 809CAC7C A60E001C */ sh $t6, 0x001C($s0) ## 0000001C
/* 00170 809CAC80 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00174 809CAC84 1041000A */ beq $v0, $at, .L809CACB0
/* 00178 809CAC88 304F00FF */ andi $t7, $v0, 0x00FF ## $t7 = 00000000
/* 0017C 809CAC8C 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 00180 809CAC90 3C01809D */ lui $at, %hi(D_809CBAC4) ## $at = 809D0000
/* 00184 809CAC94 C428BAC4 */ lwc1 $f8, %lo(D_809CBAC4)($at)
/* 00188 809CAC98 468021A0 */ cvt.s.w $f6, $f4
/* 0018C 809CAC9C C60A0054 */ lwc1 $f10, 0x0054($s0) ## 00000054
/* 00190 809CACA0 46083402 */ mul.s $f16, $f6, $f8
/* 00194 809CACA4 00000000 */ nop
/* 00198 809CACA8 46105482 */ mul.s $f18, $f10, $f16
/* 0019C 809CACAC E6120054 */ swc1 $f18, 0x0054($s0) ## 00000054
.L809CACB0:
/* 001A0 809CACB0 86180268 */ lh $t8, 0x0268($s0) ## 00000268
/* 001A4 809CACB4 C6080050 */ lwc1 $f8, 0x0050($s0) ## 00000050
/* 001A8 809CACB8 860B02B4 */ lh $t3, 0x02B4($s0) ## 000002B4
/* 001AC 809CACBC 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00
/* 001B0 809CACC0 3C01809D */ lui $at, %hi(D_809CBAC8) ## $at = 809D0000
/* 001B4 809CACC4 C6120054 */ lwc1 $f18, 0x0054($s0) ## 00000054
/* 001B8 809CACC8 468021A0 */ cvt.s.w $f6, $f4
/* 001BC 809CACCC 860E02B6 */ lh $t6, 0x02B6($s0) ## 000002B6
/* 001C0 809CACD0 861902B8 */ lh $t9, 0x02B8($s0) ## 000002B8
/* 001C4 809CACD4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 001C8 809CACD8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 001CC 809CACDC 46083282 */ mul.s $f10, $f6, $f8
/* 001D0 809CACE0 4600540D */ trunc.w.s $f16, $f10
/* 001D4 809CACE4 448B5000 */ mtc1 $t3, $f10 ## $f10 = 0.00
/* 001D8 809CACE8 44088000 */ mfc1 $t0, $f16
/* 001DC 809CACEC 46805420 */ cvt.s.w $f16, $f10
/* 001E0 809CACF0 A6080268 */ sh $t0, 0x0268($s0) ## 00000268
/* 001E4 809CACF4 C424BAC8 */ lwc1 $f4, %lo(D_809CBAC8)($at)
/* 001E8 809CACF8 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 001EC 809CACFC A600026C */ sh $zero, 0x026C($s0) ## 0000026C
/* 001F0 809CAD00 46049182 */ mul.s $f6, $f18, $f4
/* 001F4 809CAD04 C6120050 */ lwc1 $f18, 0x0050($s0) ## 00000050
/* 001F8 809CAD08 AE0001A8 */ sw $zero, 0x01A8($s0) ## 000001A8
/* 001FC 809CAD0C 46128102 */ mul.s $f4, $f16, $f18
/* 00200 809CAD10 C6100054 */ lwc1 $f16, 0x0054($s0) ## 00000054
/* 00204 809CAD14 4600320D */ trunc.w.s $f8, $f6
/* 00208 809CAD18 4600218D */ trunc.w.s $f6, $f4
/* 0020C 809CAD1C 440A4000 */ mfc1 $t2, $f8
/* 00210 809CAD20 448E4000 */ mtc1 $t6, $f8 ## $f8 = 0.00
/* 00214 809CAD24 440D3000 */ mfc1 $t5, $f6
/* 00218 809CAD28 468042A0 */ cvt.s.w $f10, $f8
/* 0021C 809CAD2C 44993000 */ mtc1 $t9, $f6 ## $f6 = 0.00
/* 00220 809CAD30 A60A026A */ sh $t2, 0x026A($s0) ## 0000026A
/* 00224 809CAD34 8E0A0004 */ lw $t2, 0x0004($s0) ## 00000004
/* 00228 809CAD38 A60D02B4 */ sh $t5, 0x02B4($s0) ## 000002B4
/* 0022C 809CAD3C 46803220 */ cvt.s.w $f8, $f6
/* 00230 809CAD40 46105482 */ mul.s $f18, $f10, $f16
/* 00234 809CAD44 C60A0054 */ lwc1 $f10, 0x0054($s0) ## 00000054
/* 00238 809CAD48 01415824 */ and $t3, $t2, $at
/* 0023C 809CAD4C AE0B0004 */ sw $t3, 0x0004($s0) ## 00000004
/* 00240 809CAD50 460A4402 */ mul.s $f16, $f8, $f10
/* 00244 809CAD54 4600910D */ trunc.w.s $f4, $f18
/* 00248 809CAD58 4600848D */ trunc.w.s $f18, $f16
/* 0024C 809CAD5C 44182000 */ mfc1 $t8, $f4
/* 00250 809CAD60 44099000 */ mfc1 $t1, $f18
/* 00254 809CAD64 A61802B6 */ sh $t8, 0x02B6($s0) ## 000002B6
/* 00258 809CAD68 0C272B77 */ jal func_809CADDC
/* 0025C 809CAD6C A60902B8 */ sh $t1, 0x02B8($s0) ## 000002B8
/* 00260 809CAD70 8FBF002C */ lw $ra, 0x002C($sp)
/* 00264 809CAD74 8FB00024 */ lw $s0, 0x0024($sp)
/* 00268 809CAD78 8FB10028 */ lw $s1, 0x0028($sp)
/* 0026C 809CAD7C 03E00008 */ jr $ra
/* 00270 809CAD80 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000

View file

@ -1,188 +0,0 @@
glabel EnBrob_Update
/* 00B60 809CB670 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
/* 00B64 809CB674 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00B68 809CB678 AFB10020 */ sw $s1, 0x0020($sp)
/* 00B6C 809CB67C AFB0001C */ sw $s0, 0x001C($sp)
/* 00B70 809CB680 908E0239 */ lbu $t6, 0x0239($a0) ## 00000239
/* 00B74 809CB684 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00B78 809CB688 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00B7C 809CB68C 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
/* 00B80 809CB690 000FC02B */ sltu $t8, $zero, $t7
/* 00B84 809CB694 AFB8003C */ sw $t8, 0x003C($sp)
/* 00B88 809CB698 90990285 */ lbu $t9, 0x0285($a0) ## 00000285
/* 00B8C 809CB69C 33280002 */ andi $t0, $t9, 0x0002 ## $t0 = 00000000
/* 00B90 809CB6A0 0008482B */ sltu $t1, $zero, $t0
/* 00B94 809CB6A4 13000006 */ beq $t8, $zero, .L809CB6C0
/* 00B98 809CB6A8 AFA90040 */ sw $t1, 0x0040($sp)
/* 00B9C 809CB6AC 8C8A0264 */ lw $t2, 0x0264($a0) ## 00000264
/* 00BA0 809CB6B0 8D4B0000 */ lw $t3, 0x0000($t2) ## 00000000
/* 00BA4 809CB6B4 316C0010 */ andi $t4, $t3, 0x0010 ## $t4 = 00000000
/* 00BA8 809CB6B8 55800009 */ bnel $t4, $zero, .L809CB6E0
/* 00BAC 809CB6BC 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L809CB6C0:
/* 00BB0 809CB6C0 8FAD0040 */ lw $t5, 0x0040($sp)
/* 00BB4 809CB6C4 51A00018 */ beql $t5, $zero, .L809CB728
/* 00BB8 809CB6C8 92040238 */ lbu $a0, 0x0238($s0) ## 00000238
/* 00BBC 809CB6CC 8E0E02B0 */ lw $t6, 0x02B0($s0) ## 000002B0
/* 00BC0 809CB6D0 8DCF0000 */ lw $t7, 0x0000($t6) ## 00000000
/* 00BC4 809CB6D4 31F90010 */ andi $t9, $t7, 0x0010 ## $t9 = 00000000
/* 00BC8 809CB6D8 13200012 */ beq $t9, $zero, .L809CB724
/* 00BCC 809CB6DC 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L809CB6E0:
/* 00BD0 809CB6E0 02001025 */ or $v0, $s0, $zero ## $v0 = 00000000
/* 00BD4 809CB6E4 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 00BD8 809CB6E8 2405FFFD */ addiu $a1, $zero, 0xFFFD ## $a1 = FFFFFFFD
/* 00BDC 809CB6EC 2404FFF9 */ addiu $a0, $zero, 0xFFF9 ## $a0 = FFFFFFF9
.L809CB6F0:
/* 00BE0 809CB6F0 90480238 */ lbu $t0, 0x0238($v0) ## 00000238
/* 00BE4 809CB6F4 90580239 */ lbu $t8, 0x0239($v0) ## 00000239
/* 00BE8 809CB6F8 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001
/* 00BEC 809CB6FC 01044824 */ and $t1, $t0, $a0
/* 00BF0 809CB700 03055024 */ and $t2, $t8, $a1
/* 00BF4 809CB704 2442004C */ addiu $v0, $v0, 0x004C ## $v0 = 0000004C
/* 00BF8 809CB708 A04901EC */ sb $t1, 0x01EC($v0) ## 00000238
/* 00BFC 809CB70C 1466FFF8 */ bne $v1, $a2, .L809CB6F0
/* 00C00 809CB710 A04A01ED */ sb $t2, 0x01ED($v0) ## 00000239
/* 00C04 809CB714 0C272BBD */ jal func_809CAEF4
/* 00C08 809CB718 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C0C 809CB71C 1000003F */ beq $zero, $zero, .L809CB81C
/* 00C10 809CB720 8E1901A8 */ lw $t9, 0x01A8($s0) ## 000001A8
.L809CB724:
/* 00C14 809CB724 92040238 */ lbu $a0, 0x0238($s0) ## 00000238
.L809CB728:
/* 00C18 809CB728 308B0002 */ andi $t3, $a0, 0x0002 ## $t3 = 00000000
/* 00C1C 809CB72C 55600015 */ bnel $t3, $zero, .L809CB784
/* 00C20 809CB730 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
/* 00C24 809CB734 920C0284 */ lbu $t4, 0x0284($s0) ## 00000284
/* 00C28 809CB738 8FAE003C */ lw $t6, 0x003C($sp)
/* 00C2C 809CB73C 318D0002 */ andi $t5, $t4, 0x0002 ## $t5 = 00000000
/* 00C30 809CB740 55A00010 */ bnel $t5, $zero, .L809CB784
/* 00C34 809CB744 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
/* 00C38 809CB748 11C00006 */ beq $t6, $zero, .L809CB764
/* 00C3C 809CB74C 8FA90040 */ lw $t1, 0x0040($sp)
/* 00C40 809CB750 8E0F0264 */ lw $t7, 0x0264($s0) ## 00000264
/* 00C44 809CB754 8DF90000 */ lw $t9, 0x0000($t7) ## 00000000
/* 00C48 809CB758 33280100 */ andi $t0, $t9, 0x0100 ## $t0 = 00000000
/* 00C4C 809CB75C 55000009 */ bnel $t0, $zero, .L809CB784
/* 00C50 809CB760 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
.L809CB764:
/* 00C54 809CB764 5120002D */ beql $t1, $zero, .L809CB81C
/* 00C58 809CB768 8E1901A8 */ lw $t9, 0x01A8($s0) ## 000001A8
/* 00C5C 809CB76C 8E1802B0 */ lw $t8, 0x02B0($s0) ## 000002B0
/* 00C60 809CB770 8F0A0000 */ lw $t2, 0x0000($t8) ## 00000000
/* 00C64 809CB774 314B0100 */ andi $t3, $t2, 0x0100 ## $t3 = 00000000
/* 00C68 809CB778 51600028 */ beql $t3, $zero, .L809CB81C
/* 00C6C 809CB77C 8E1901A8 */ lw $t9, 0x01A8($s0) ## 000001A8
/* 00C70 809CB780 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
.L809CB784:
/* 00C74 809CB784 3C03809D */ lui $v1, %hi(func_809CB114) ## $v1 = 809D0000
/* 00C78 809CB788 2463B114 */ addiu $v1, $v1, %lo(func_809CB114) ## $v1 = 809CB114
/* 00C7C 809CB78C 14620010 */ bne $v1, $v0, .L809CB7D0
/* 00C80 809CB790 308C0004 */ andi $t4, $a0, 0x0004 ## $t4 = 00000000
/* 00C84 809CB794 1580000E */ bne $t4, $zero, .L809CB7D0
/* 00C88 809CB798 00000000 */ nop
/* 00C8C 809CB79C 920D0284 */ lbu $t5, 0x0284($s0) ## 00000284
/* 00C90 809CB7A0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00C94 809CB7A4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00C98 809CB7A8 31AE0004 */ andi $t6, $t5, 0x0004 ## $t6 = 00000000
/* 00C9C 809CB7AC 15C00008 */ bne $t6, $zero, .L809CB7D0
/* 00CA0 809CB7B0 3C0640A0 */ lui $a2, 0x40A0 ## $a2 = 40A00000
/* 00CA4 809CB7B4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00CA8 809CB7B8 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00
/* 00CAC 809CB7BC 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
/* 00CB0 809CB7C0 0C00BDC7 */ jal func_8002F71C
/* 00CB4 809CB7C4 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 00CB8 809CB7C8 10000006 */ beq $zero, $zero, .L809CB7E4
/* 00CBC 809CB7CC 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L809CB7D0:
/* 00CC0 809CB7D0 50620004 */ beql $v1, $v0, .L809CB7E4
/* 00CC4 809CB7D4 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
/* 00CC8 809CB7D8 0C272C02 */ jal func_809CB008
/* 00CCC 809CB7DC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00CD0 809CB7E0 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
.L809CB7E4:
/* 00CD4 809CB7E4 02001025 */ or $v0, $s0, $zero ## $v0 = 00000000
/* 00CD8 809CB7E8 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 00CDC 809CB7EC 2405FFFD */ addiu $a1, $zero, 0xFFFD ## $a1 = FFFFFFFD
/* 00CE0 809CB7F0 2404FFF9 */ addiu $a0, $zero, 0xFFF9 ## $a0 = FFFFFFF9
.L809CB7F4:
/* 00CE4 809CB7F4 904F0238 */ lbu $t7, 0x0238($v0) ## 00000238
/* 00CE8 809CB7F8 90480239 */ lbu $t0, 0x0239($v0) ## 00000239
/* 00CEC 809CB7FC 24630001 */ addiu $v1, $v1, 0x0001 ## $v1 = 00000001
/* 00CF0 809CB800 01E4C824 */ and $t9, $t7, $a0
/* 00CF4 809CB804 01054824 */ and $t1, $t0, $a1
/* 00CF8 809CB808 2442004C */ addiu $v0, $v0, 0x004C ## $v0 = 0000004C
/* 00CFC 809CB80C A05901EC */ sb $t9, 0x01EC($v0) ## 00000238
/* 00D00 809CB810 1466FFF8 */ bne $v1, $a2, .L809CB7F4
/* 00D04 809CB814 A04901ED */ sb $t1, 0x01ED($v0) ## 00000239
/* 00D08 809CB818 8E1901A8 */ lw $t9, 0x01A8($s0) ## 000001A8
.L809CB81C:
/* 00D0C 809CB81C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D10 809CB820 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00D14 809CB824 0320F809 */ jalr $ra, $t9
/* 00D18 809CB828 00000000 */ nop
/* 00D1C 809CB82C 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
/* 00D20 809CB830 3C18809D */ lui $t8, %hi(func_809CB054) ## $t8 = 809D0000
/* 00D24 809CB834 2718B054 */ addiu $t8, $t8, %lo(func_809CB054) ## $t8 = 809CB054
/* 00D28 809CB838 1302002F */ beq $t8, $v0, .L809CB8F8
/* 00D2C 809CB83C 3C0A809D */ lui $t2, %hi(func_809CB354) ## $t2 = 809D0000
/* 00D30 809CB840 254AB354 */ addiu $t2, $t2, %lo(func_809CB354) ## $t2 = 809CB354
/* 00D34 809CB844 1142002C */ beq $t2, $v0, .L809CB8F8
/* 00D38 809CB848 3C0B809D */ lui $t3, %hi(func_809CB2B8) ## $t3 = 809D0000
/* 00D3C 809CB84C 256BB2B8 */ addiu $t3, $t3, %lo(func_809CB2B8) ## $t3 = 809CB2B8
/* 00D40 809CB850 1162001C */ beq $t3, $v0, .L809CB8C4
/* 00D44 809CB854 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00D48 809CB858 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00D4C 809CB85C 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00D50 809CB860 3C03809D */ lui $v1, %hi(func_809CB114) ## $v1 = 809D0000
/* 00D54 809CB864 2463B114 */ addiu $v1, $v1, %lo(func_809CB114) ## $v1 = 809CB114
/* 00D58 809CB868 02212821 */ addu $a1, $s1, $at
/* 00D5C 809CB86C 26060228 */ addiu $a2, $s0, 0x0228 ## $a2 = 00000228
/* 00D60 809CB870 AFA6002C */ sw $a2, 0x002C($sp)
/* 00D64 809CB874 AFA50034 */ sw $a1, 0x0034($sp)
/* 00D68 809CB878 0C0175E7 */ jal CollisionCheck_SetAT
## CollisionCheck_setAT
/* 00D6C 809CB87C AFA30038 */ sw $v1, 0x0038($sp)
/* 00D70 809CB880 26060274 */ addiu $a2, $s0, 0x0274 ## $a2 = 00000274
/* 00D74 809CB884 AFA60030 */ sw $a2, 0x0030($sp)
/* 00D78 809CB888 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00D7C 809CB88C 0C0175E7 */ jal CollisionCheck_SetAT
## CollisionCheck_setAT
/* 00D80 809CB890 8FA50034 */ lw $a1, 0x0034($sp)
/* 00D84 809CB894 8FA30038 */ lw $v1, 0x0038($sp)
/* 00D88 809CB898 8E0C01A8 */ lw $t4, 0x01A8($s0) ## 000001A8
/* 00D8C 809CB89C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00D90 809CB8A0 8FA50034 */ lw $a1, 0x0034($sp)
/* 00D94 809CB8A4 506C0008 */ beql $v1, $t4, .L809CB8C8
/* 00D98 809CB8A8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00D9C 809CB8AC 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00DA0 809CB8B0 8FA6002C */ lw $a2, 0x002C($sp)
/* 00DA4 809CB8B4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00DA8 809CB8B8 8FA50034 */ lw $a1, 0x0034($sp)
/* 00DAC 809CB8BC 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00DB0 809CB8C0 8FA60030 */ lw $a2, 0x0030($sp)
.L809CB8C4:
/* 00DB4 809CB8C4 3C010001 */ lui $at, 0x0001 ## $at = 00010000
.L809CB8C8:
/* 00DB8 809CB8C8 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00DBC 809CB8CC 02212821 */ addu $a1, $s1, $at
/* 00DC0 809CB8D0 260D0274 */ addiu $t5, $s0, 0x0274 ## $t5 = 00000274
/* 00DC4 809CB8D4 AFAD0030 */ sw $t5, 0x0030($sp)
/* 00DC8 809CB8D8 AFA50034 */ sw $a1, 0x0034($sp)
/* 00DCC 809CB8DC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00DD0 809CB8E0 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 00DD4 809CB8E4 26060228 */ addiu $a2, $s0, 0x0228 ## $a2 = 00000228
/* 00DD8 809CB8E8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00DDC 809CB8EC 8FA50034 */ lw $a1, 0x0034($sp)
/* 00DE0 809CB8F0 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 00DE4 809CB8F4 8FA60030 */ lw $a2, 0x0030($sp)
.L809CB8F8:
/* 00DE8 809CB8F8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00DEC 809CB8FC 8FB0001C */ lw $s0, 0x001C($sp)
/* 00DF0 809CB900 8FB10020 */ lw $s1, 0x0020($sp)
/* 00DF4 809CB904 03E00008 */ jr $ra
/* 00DF8 809CB908 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000

View file

@ -1,29 +0,0 @@
glabel func_809CADDC
/* 002CC 809CADDC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 002D0 809CADE0 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 002D4 809CADE4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 002D8 809CADE8 AFA5001C */ sw $a1, 0x001C($sp)
/* 002DC 809CADEC 8CE6014C */ lw $a2, 0x014C($a3) ## 0000014C
/* 002E0 809CADF0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 002E4 809CADF4 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 002E8 809CADF8 0C00FB14 */ jal func_8003EC50
/* 002EC 809CADFC AFA70018 */ sw $a3, 0x0018($sp)
/* 002F0 809CAE00 8FA70018 */ lw $a3, 0x0018($sp)
/* 002F4 809CAE04 3C0F809D */ lui $t7, %hi(func_809CB2B8) ## $t7 = 809D0000
/* 002F8 809CAE08 25EFB2B8 */ addiu $t7, $t7, %lo(func_809CB2B8) ## $t7 = 809CB2B8
/* 002FC 809CAE0C 8CF801A8 */ lw $t8, 0x01A8($a3) ## 000001A8
/* 00300 809CAE10 3C08809D */ lui $t0, %hi(func_809CB054) ## $t0 = 809D0000
/* 00304 809CAE14 241900C8 */ addiu $t9, $zero, 0x00C8 ## $t9 = 000000C8
/* 00308 809CAE18 15F80003 */ bne $t7, $t8, .L809CAE28
/* 0030C 809CAE1C 2508B054 */ addiu $t0, $t0, %lo(func_809CB054) ## $t0 = 809CB054
/* 00310 809CAE20 10000002 */ beq $zero, $zero, .L809CAE2C
/* 00314 809CAE24 A4F901AC */ sh $t9, 0x01AC($a3) ## 000001AC
.L809CAE28:
/* 00318 809CAE28 A4E001AC */ sh $zero, 0x01AC($a3) ## 000001AC
.L809CAE2C:
/* 0031C 809CAE2C A4E001AE */ sh $zero, 0x01AE($a3) ## 000001AE
/* 00320 809CAE30 ACE801A8 */ sw $t0, 0x01A8($a3) ## 000001A8
/* 00324 809CAE34 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00328 809CAE38 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0032C 809CAE3C 03E00008 */ jr $ra
/* 00330 809CAE40 00000000 */ nop

View file

@ -1,24 +0,0 @@
glabel func_809CAE44
/* 00334 809CAE44 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00338 809CAE48 AFA5001C */ sw $a1, 0x001C($sp)
/* 0033C 809CAE4C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00340 809CAE50 AFA40018 */ sw $a0, 0x0018($sp)
/* 00344 809CAE54 3C050600 */ lui $a1, %hi(D_06001750) ## $a1 = 06000000
/* 00348 809CAE58 24A51750 */ addiu $a1, $a1, %lo(D_06001750) ## $a1 = 06001750
/* 0034C 809CAE5C 0C02947A */ jal Animation_PlayOnce
/* 00350 809CAE60 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 00354 809CAE64 8FA4001C */ lw $a0, 0x001C($sp)
/* 00358 809CAE68 8FAE0018 */ lw $t6, 0x0018($sp)
/* 0035C 809CAE6C 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 00360 809CAE70 0C00FAFE */ jal func_8003EBF8
/* 00364 809CAE74 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 00368 809CAE78 8FA20018 */ lw $v0, 0x0018($sp)
/* 0036C 809CAE7C 3C18809D */ lui $t8, %hi(func_809CB114) ## $t8 = 809D0000
/* 00370 809CAE80 240F03E8 */ addiu $t7, $zero, 0x03E8 ## $t7 = 000003E8
/* 00374 809CAE84 2718B114 */ addiu $t8, $t8, %lo(func_809CB114) ## $t8 = 809CB114
/* 00378 809CAE88 A44F01AE */ sh $t7, 0x01AE($v0) ## 000001AE
/* 0037C 809CAE8C AC5801A8 */ sw $t8, 0x01A8($v0) ## 000001A8
/* 00380 809CAE90 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00384 809CAE94 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00388 809CAE98 03E00008 */ jr $ra
/* 0038C 809CAE9C 00000000 */ nop

View file

@ -1,22 +0,0 @@
glabel func_809CAEA0
/* 00390 809CAEA0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00394 809CAEA4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00398 809CAEA8 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 0039C 809CAEAC 3C050600 */ lui $a1, %hi(D_06001958) ## $a1 = 06000000
/* 003A0 809CAEB0 24A51958 */ addiu $a1, $a1, %lo(D_06001958) ## $a1 = 06001958
/* 003A4 809CAEB4 AFA70018 */ sw $a3, 0x0018($sp)
/* 003A8 809CAEB8 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 003AC 809CAEBC 0C0294D3 */ jal Animation_MorphToLoop
/* 003B0 809CAEC0 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000
/* 003B4 809CAEC4 8FA70018 */ lw $a3, 0x0018($sp)
/* 003B8 809CAEC8 3C18809D */ lui $t8, %hi(func_809CB218) ## $t8 = 809D0000
/* 003BC 809CAECC 240E1F40 */ addiu $t6, $zero, 0x1F40 ## $t6 = 00001F40
/* 003C0 809CAED0 240F04B0 */ addiu $t7, $zero, 0x04B0 ## $t7 = 000004B0
/* 003C4 809CAED4 2718B218 */ addiu $t8, $t8, %lo(func_809CB218) ## $t8 = 809CB218
/* 003C8 809CAED8 A4EE01AE */ sh $t6, 0x01AE($a3) ## 000001AE
/* 003CC 809CAEDC A4EF01AC */ sh $t7, 0x01AC($a3) ## 000001AC
/* 003D0 809CAEE0 ACF801A8 */ sw $t8, 0x01A8($a3) ## 000001A8
/* 003D4 809CAEE4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 003D8 809CAEE8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 003DC 809CAEEC 03E00008 */ jr $ra
/* 003E0 809CAEF0 00000000 */ nop

View file

@ -1,39 +0,0 @@
glabel func_809CAEF4
/* 003E4 809CAEF4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 003E8 809CAEF8 AFB00020 */ sw $s0, 0x0020($sp)
/* 003EC 809CAEFC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 003F0 809CAF00 AFBF0024 */ sw $ra, 0x0024($sp)
/* 003F4 809CAF04 3C050600 */ lui $a1, %hi(D_06000290) ## $a1 = 06000000
/* 003F8 809CAF08 24A50290 */ addiu $a1, $a1, %lo(D_06000290) ## $a1 = 06000290
/* 003FC 809CAF0C 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 00400 809CAF10 0C029490 */ jal Animation_MorphToPlayOnce
/* 00404 809CAF14 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000
/* 00408 809CAF18 860E01AE */ lh $t6, 0x01AE($s0) ## 000001AE
/* 0040C 809CAF1C 3C0142FA */ lui $at, 0x42FA ## $at = 42FA0000
/* 00410 809CAF20 44814000 */ mtc1 $at, $f8 ## $f8 = 125.00
/* 00414 809CAF24 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00
/* 00418 809CAF28 24190050 */ addiu $t9, $zero, 0x0050 ## $t9 = 00000050
/* 0041C 809CAF2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00420 809CAF30 468021A0 */ cvt.s.w $f6, $f4
/* 00424 809CAF34 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00428 809CAF38 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 0042C 809CAF3C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00430 809CAF40 46083281 */ sub.s $f10, $f6, $f8
/* 00434 809CAF44 4600540D */ trunc.w.s $f16, $f10
/* 00438 809CAF48 44188000 */ mfc1 $t8, $f16
/* 0043C 809CAF4C 00000000 */ nop
/* 00440 809CAF50 A61801AE */ sh $t8, 0x01AE($s0) ## 000001AE
/* 00444 809CAF54 0C00D09B */ jal Actor_SetColorFilter
/* 00448 809CAF58 AFB90010 */ sw $t9, 0x0010($sp)
/* 0044C 809CAF5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00450 809CAF60 0C00BE0A */ jal Audio_PlayActorSound2
/* 00454 809CAF64 2405389E */ addiu $a1, $zero, 0x389E ## $a1 = 0000389E
/* 00458 809CAF68 3C08809D */ lui $t0, %hi(func_809CB2B8) ## $t0 = 809D0000
/* 0045C 809CAF6C 2508B2B8 */ addiu $t0, $t0, %lo(func_809CB2B8) ## $t0 = 809CB2B8
/* 00460 809CAF70 AE0801A8 */ sw $t0, 0x01A8($s0) ## 000001A8
/* 00464 809CAF74 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00468 809CAF78 8FB00020 */ lw $s0, 0x0020($sp)
/* 0046C 809CAF7C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00470 809CAF80 03E00008 */ jr $ra
/* 00474 809CAF84 00000000 */ nop

View file

@ -1,35 +0,0 @@
glabel func_809CAF88
/* 00478 809CAF88 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0047C 809CAF8C AFA40028 */ sw $a0, 0x0028($sp)
/* 00480 809CAF90 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00484 809CAF94 3C040600 */ lui $a0, %hi(D_06001750) ## $a0 = 06000000
/* 00488 809CAF98 0C028800 */ jal Animation_GetLastFrame
/* 0048C 809CAF9C 24841750 */ addiu $a0, $a0, %lo(D_06001750) ## $a0 = 06001750
/* 00490 809CAFA0 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00494 809CAFA4 3C01C0A0 */ lui $at, 0xC0A0 ## $at = C0A00000
/* 00498 809CAFA8 44814000 */ mtc1 $at, $f8 ## $f8 = -5.00
/* 0049C 809CAFAC 46802120 */ cvt.s.w $f4, $f4
/* 004A0 809CAFB0 8FA40028 */ lw $a0, 0x0028($sp)
/* 004A4 809CAFB4 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 004A8 809CAFB8 3C050600 */ lui $a1, %hi(D_06001750) ## $a1 = 06000000
/* 004AC 809CAFBC 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 004B0 809CAFC0 AFAE0014 */ sw $t6, 0x0014($sp)
/* 004B4 809CAFC4 44072000 */ mfc1 $a3, $f4
/* 004B8 809CAFC8 24A51750 */ addiu $a1, $a1, %lo(D_06001750) ## $a1 = 06001750
/* 004BC 809CAFCC 3C06BF80 */ lui $a2, 0xBF80 ## $a2 = BF800000
/* 004C0 809CAFD0 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 004C4 809CAFD4 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 004C8 809CAFD8 0C029468 */ jal Animation_Change
/* 004CC 809CAFDC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 004D0 809CAFE0 8FA20028 */ lw $v0, 0x0028($sp)
/* 004D4 809CAFE4 3C18809D */ lui $t8, %hi(func_809CB354) ## $t8 = 809D0000
/* 004D8 809CAFE8 240F203A */ addiu $t7, $zero, 0x203A ## $t7 = 0000203A
/* 004DC 809CAFEC 2718B354 */ addiu $t8, $t8, %lo(func_809CB354) ## $t8 = 809CB354
/* 004E0 809CAFF0 A44F01AE */ sh $t7, 0x01AE($v0) ## 000001AE
/* 004E4 809CAFF4 AC5801A8 */ sw $t8, 0x01A8($v0) ## 000001A8
/* 004E8 809CAFF8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 004EC 809CAFFC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 004F0 809CB000 03E00008 */ jr $ra
/* 004F4 809CB004 00000000 */ nop

View file

@ -1,20 +0,0 @@
glabel func_809CB008
/* 004F8 809CB008 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 004FC 809CB00C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00500 809CB010 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 00504 809CB014 3C050600 */ lui $a1, %hi(D_06001678) ## $a1 = 06000000
/* 00508 809CB018 24A51678 */ addiu $a1, $a1, %lo(D_06001678) ## $a1 = 06001678
/* 0050C 809CB01C AFA70018 */ sw $a3, 0x0018($sp)
/* 00510 809CB020 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 00514 809CB024 0C0294D3 */ jal Animation_MorphToLoop
/* 00518 809CB028 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000
/* 0051C 809CB02C 8FA70018 */ lw $a3, 0x0018($sp)
/* 00520 809CB030 3C0F809D */ lui $t7, %hi(func_809CB458) ## $t7 = 809D0000
/* 00524 809CB034 240E000A */ addiu $t6, $zero, 0x000A ## $t6 = 0000000A
/* 00528 809CB038 25EFB458 */ addiu $t7, $t7, %lo(func_809CB458) ## $t7 = 809CB458
/* 0052C 809CB03C A4EE01AC */ sh $t6, 0x01AC($a3) ## 000001AC
/* 00530 809CB040 ACEF01A8 */ sw $t7, 0x01A8($a3) ## 000001A8
/* 00534 809CB044 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00538 809CB048 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0053C 809CB04C 03E00008 */ jr $ra
/* 00540 809CB050 00000000 */ nop

View file

@ -1,54 +0,0 @@
glabel func_809CB054
/* 00544 809CB054 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00548 809CB058 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0054C 809CB05C AFB00020 */ sw $s0, 0x0020($sp)
/* 00550 809CB060 AFA5002C */ sw $a1, 0x002C($sp)
/* 00554 809CB064 848201AC */ lh $v0, 0x01AC($a0) ## 000001AC
/* 00558 809CB068 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0055C 809CB06C 10400003 */ beq $v0, $zero, .L809CB07C
/* 00560 809CB070 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00564 809CB074 A48E01AC */ sh $t6, 0x01AC($a0) ## 000001AC
/* 00568 809CB078 848201AC */ lh $v0, 0x01AC($a0) ## 000001AC
.L809CB07C:
/* 0056C 809CB07C 1440001D */ bne $v0, $zero, .L809CB0F4
/* 00570 809CB080 28410051 */ slti $at, $v0, 0x0051
/* 00574 809CB084 0C010D5B */ jal func_8004356C
/* 00578 809CB088 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0057C 809CB08C 1040000E */ beq $v0, $zero, .L809CB0C8
/* 00580 809CB090 3C014396 */ lui $at, 0x4396 ## $at = 43960000
/* 00584 809CB094 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00588 809CB098 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00
/* 0058C 809CB09C 8607008A */ lh $a3, 0x008A($s0) ## 0000008A
/* 00590 809CB0A0 8FA4002C */ lw $a0, 0x002C($sp)
/* 00594 809CB0A4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00598 809CB0A8 3C0640A0 */ lui $a2, 0x40A0 ## $a2 = 40A00000
/* 0059C 809CB0AC 0C00BDC7 */ jal func_8002F71C
/* 005A0 809CB0B0 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 005A4 809CB0B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 005A8 809CB0B8 0C272B91 */ jal func_809CAE44
/* 005AC 809CB0BC 8FA5002C */ lw $a1, 0x002C($sp)
/* 005B0 809CB0C0 10000010 */ beq $zero, $zero, .L809CB104
/* 005B4 809CB0C4 8FBF0024 */ lw $ra, 0x0024($sp)
.L809CB0C8:
/* 005B8 809CB0C8 C6060090 */ lwc1 $f6, 0x0090($s0) ## 00000090
/* 005BC 809CB0CC 44814000 */ mtc1 $at, $f8 ## $f8 = 0.00
/* 005C0 809CB0D0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 005C4 809CB0D4 4608303C */ c.lt.s $f6, $f8
/* 005C8 809CB0D8 00000000 */ nop
/* 005CC 809CB0DC 45020009 */ bc1fl .L809CB104
/* 005D0 809CB0E0 8FBF0024 */ lw $ra, 0x0024($sp)
/* 005D4 809CB0E4 0C272B91 */ jal func_809CAE44
/* 005D8 809CB0E8 8FA5002C */ lw $a1, 0x002C($sp)
/* 005DC 809CB0EC 10000005 */ beq $zero, $zero, .L809CB104
/* 005E0 809CB0F0 8FBF0024 */ lw $ra, 0x0024($sp)
.L809CB0F4:
/* 005E4 809CB0F4 14200002 */ bne $at, $zero, .L809CB100
/* 005E8 809CB0F8 240F0050 */ addiu $t7, $zero, 0x0050 ## $t7 = 00000050
/* 005EC 809CB0FC A20F0114 */ sb $t7, 0x0114($s0) ## 00000114
.L809CB100:
/* 005F0 809CB100 8FBF0024 */ lw $ra, 0x0024($sp)
.L809CB104:
/* 005F4 809CB104 8FB00020 */ lw $s0, 0x0020($sp)
/* 005F8 809CB108 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 005FC 809CB10C 03E00008 */ jr $ra
/* 00600 809CB110 00000000 */ nop

View file

@ -1,72 +0,0 @@
glabel func_809CB114
/* 00604 809CB114 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00608 809CB118 AFA5001C */ sw $a1, 0x001C($sp)
/* 0060C 809CB11C 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
/* 00610 809CB120 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00614 809CB124 AFA40018 */ sw $a0, 0x0018($sp)
/* 00618 809CB128 AFA50018 */ sw $a1, 0x0018($sp)
/* 0061C 809CB12C 0C02927F */ jal SkelAnime_Update
/* 00620 809CB130 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 00624 809CB134 10400005 */ beq $v0, $zero, .L809CB14C
/* 00628 809CB138 8FA50018 */ lw $a1, 0x0018($sp)
/* 0062C 809CB13C 0C272BA8 */ jal func_809CAEA0
/* 00630 809CB140 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00634 809CB144 10000031 */ beq $zero, $zero, .L809CB20C
/* 00638 809CB148 8FBF0014 */ lw $ra, 0x0014($sp)
.L809CB14C:
/* 0063C 809CB14C 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 00640 809CB150 C4A0017C */ lwc1 $f0, 0x017C($a1) ## 0000017C
/* 00644 809CB154 44812000 */ mtc1 $at, $f4 ## $f4 = 8.00
/* 00648 809CB158 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 0064C 809CB15C 4604003C */ c.lt.s $f0, $f4
/* 00650 809CB160 00000000 */ nop
/* 00654 809CB164 4502000D */ bc1fl .L809CB19C
/* 00658 809CB168 44812000 */ mtc1 $at, $f4 ## $f4 = 12.00
/* 0065C 809CB16C 84AE01AE */ lh $t6, 0x01AE($a1) ## 000001AE
/* 00660 809CB170 3C01447A */ lui $at, 0x447A ## $at = 447A0000
/* 00664 809CB174 44815000 */ mtc1 $at, $f10 ## $f10 = 1000.00
/* 00668 809CB178 448E3000 */ mtc1 $t6, $f6 ## $f6 = 0.00
/* 0066C 809CB17C 00000000 */ nop
/* 00670 809CB180 46803220 */ cvt.s.w $f8, $f6
/* 00674 809CB184 460A4400 */ add.s $f16, $f8, $f10
/* 00678 809CB188 4600848D */ trunc.w.s $f18, $f16
/* 0067C 809CB18C 44189000 */ mfc1 $t8, $f18
/* 00680 809CB190 1000001D */ beq $zero, $zero, .L809CB208
/* 00684 809CB194 A4B801AE */ sh $t8, 0x01AE($a1) ## 000001AE
/* 00688 809CB198 44812000 */ mtc1 $at, $f4 ## $f4 = 1000.00
.L809CB19C:
/* 0068C 809CB19C 00000000 */ nop
/* 00690 809CB1A0 4604003C */ c.lt.s $f0, $f4
/* 00694 809CB1A4 00000000 */ nop
/* 00698 809CB1A8 4502000D */ bc1fl .L809CB1E0
/* 0069C 809CB1AC 84AA01AE */ lh $t2, 0x01AE($a1) ## 000001AE
/* 006A0 809CB1B0 84B901AE */ lh $t9, 0x01AE($a1) ## 000001AE
/* 006A4 809CB1B4 3C01437A */ lui $at, 0x437A ## $at = 437A0000
/* 006A8 809CB1B8 44815000 */ mtc1 $at, $f10 ## $f10 = 250.00
/* 006AC 809CB1BC 44993000 */ mtc1 $t9, $f6 ## $f6 = 0.00
/* 006B0 809CB1C0 00000000 */ nop
/* 006B4 809CB1C4 46803220 */ cvt.s.w $f8, $f6
/* 006B8 809CB1C8 460A4400 */ add.s $f16, $f8, $f10
/* 006BC 809CB1CC 4600848D */ trunc.w.s $f18, $f16
/* 006C0 809CB1D0 44099000 */ mfc1 $t1, $f18
/* 006C4 809CB1D4 1000000C */ beq $zero, $zero, .L809CB208
/* 006C8 809CB1D8 A4A901AE */ sh $t1, 0x01AE($a1) ## 000001AE
/* 006CC 809CB1DC 84AA01AE */ lh $t2, 0x01AE($a1) ## 000001AE
.L809CB1E0:
/* 006D0 809CB1E0 3C01437A */ lui $at, 0x437A ## $at = 437A0000
/* 006D4 809CB1E4 44814000 */ mtc1 $at, $f8 ## $f8 = 250.00
/* 006D8 809CB1E8 448A2000 */ mtc1 $t2, $f4 ## $f4 = 0.00
/* 006DC 809CB1EC 00000000 */ nop
/* 006E0 809CB1F0 468021A0 */ cvt.s.w $f6, $f4
/* 006E4 809CB1F4 46083281 */ sub.s $f10, $f6, $f8
/* 006E8 809CB1F8 4600540D */ trunc.w.s $f16, $f10
/* 006EC 809CB1FC 440C8000 */ mfc1 $t4, $f16
/* 006F0 809CB200 00000000 */ nop
/* 006F4 809CB204 A4AC01AE */ sh $t4, 0x01AE($a1) ## 000001AE
.L809CB208:
/* 006F8 809CB208 8FBF0014 */ lw $ra, 0x0014($sp)
.L809CB20C:
/* 006FC 809CB20C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00700 809CB210 03E00008 */ jr $ra
/* 00704 809CB214 00000000 */ nop

View file

@ -1,47 +0,0 @@
glabel func_809CB218
/* 00708 809CB218 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0070C 809CB21C AFB00018 */ sw $s0, 0x0018($sp)
/* 00710 809CB220 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00714 809CB224 AFBF001C */ sw $ra, 0x001C($sp)
/* 00718 809CB228 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 0071C 809CB22C AFA5002C */ sw $a1, 0x002C($sp)
/* 00720 809CB230 0C02927F */ jal SkelAnime_Update
/* 00724 809CB234 AFA40024 */ sw $a0, 0x0024($sp)
/* 00728 809CB238 8FA40024 */ lw $a0, 0x0024($sp)
/* 0072C 809CB23C 0C0295B2 */ jal Animation_OnFrame
/* 00730 809CB240 3C0540C0 */ lui $a1, 0x40C0 ## $a1 = 40C00000
/* 00734 809CB244 14400004 */ bne $v0, $zero, .L809CB258
/* 00738 809CB248 8FA40024 */ lw $a0, 0x0024($sp)
/* 0073C 809CB24C 0C0295B2 */ jal Animation_OnFrame
/* 00740 809CB250 3C054170 */ lui $a1, 0x4170 ## $a1 = 41700000
/* 00744 809CB254 10400003 */ beq $v0, $zero, .L809CB264
.L809CB258:
/* 00748 809CB258 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0074C 809CB25C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00750 809CB260 2405394A */ addiu $a1, $zero, 0x394A ## $a1 = 0000394A
.L809CB264:
/* 00754 809CB264 860201AC */ lh $v0, 0x01AC($s0) ## 000001AC
/* 00758 809CB268 3C0143FA */ lui $at, 0x43FA ## $at = 43FA0000
/* 0075C 809CB26C 10400003 */ beq $v0, $zero, .L809CB27C
/* 00760 809CB270 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00764 809CB274 A60E01AC */ sh $t6, 0x01AC($s0) ## 000001AC
/* 00768 809CB278 860201AC */ lh $v0, 0x01AC($s0) ## 000001AC
.L809CB27C:
/* 0076C 809CB27C 5440000A */ bnel $v0, $zero, .L809CB2A8
/* 00770 809CB280 8FBF001C */ lw $ra, 0x001C($sp)
/* 00774 809CB284 44812000 */ mtc1 $at, $f4 ## $f4 = 500.00
/* 00778 809CB288 C6060090 */ lwc1 $f6, 0x0090($s0) ## 00000090
/* 0077C 809CB28C 4606203C */ c.lt.s $f4, $f6
/* 00780 809CB290 00000000 */ nop
/* 00784 809CB294 45020004 */ bc1fl .L809CB2A8
/* 00788 809CB298 8FBF001C */ lw $ra, 0x001C($sp)
/* 0078C 809CB29C 0C272BE2 */ jal func_809CAF88
/* 00790 809CB2A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00794 809CB2A4 8FBF001C */ lw $ra, 0x001C($sp)
.L809CB2A8:
/* 00798 809CB2A8 8FB00018 */ lw $s0, 0x0018($sp)
/* 0079C 809CB2AC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 007A0 809CB2B0 03E00008 */ jr $ra
/* 007A4 809CB2B4 00000000 */ nop

View file

@ -1,49 +0,0 @@
.late_rodata
glabel D_809CBACC
.float 1250.0
.text
glabel func_809CB2B8
/* 007A8 809CB2B8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 007AC 809CB2BC AFBF0014 */ sw $ra, 0x0014($sp)
/* 007B0 809CB2C0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 007B4 809CB2C4 AFA5001C */ sw $a1, 0x001C($sp)
/* 007B8 809CB2C8 AFA60018 */ sw $a2, 0x0018($sp)
/* 007BC 809CB2CC 0C02927F */ jal SkelAnime_Update
/* 007C0 809CB2D0 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 007C4 809CB2D4 10400007 */ beq $v0, $zero, .L809CB2F4
/* 007C8 809CB2D8 8FA60018 */ lw $a2, 0x0018($sp)
/* 007CC 809CB2DC 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
/* 007D0 809CB2E0 8FA5001C */ lw $a1, 0x001C($sp)
/* 007D4 809CB2E4 0C272B77 */ jal func_809CADDC
/* 007D8 809CB2E8 AFA60018 */ sw $a2, 0x0018($sp)
/* 007DC 809CB2EC 10000013 */ beq $zero, $zero, .L809CB33C
/* 007E0 809CB2F0 8FA60018 */ lw $a2, 0x0018($sp)
.L809CB2F4:
/* 007E4 809CB2F4 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 007E8 809CB2F8 44813000 */ mtc1 $at, $f6 ## $f6 = 8.00
/* 007EC 809CB2FC C4C4017C */ lwc1 $f4, 0x017C($a2) ## 0000017C
/* 007F0 809CB300 4606203C */ c.lt.s $f4, $f6
/* 007F4 809CB304 00000000 */ nop
/* 007F8 809CB308 4502000D */ bc1fl .L809CB340
/* 007FC 809CB30C 24190050 */ addiu $t9, $zero, 0x0050 ## $t9 = 00000050
/* 00800 809CB310 84CE01AE */ lh $t6, 0x01AE($a2) ## 000001AE
/* 00804 809CB314 3C01809D */ lui $at, %hi(D_809CBACC) ## $at = 809D0000
/* 00808 809CB318 C430BACC */ lwc1 $f16, %lo(D_809CBACC)($at)
/* 0080C 809CB31C 448E4000 */ mtc1 $t6, $f8 ## $f8 = 0.00
/* 00810 809CB320 00000000 */ nop
/* 00814 809CB324 468042A0 */ cvt.s.w $f10, $f8
/* 00818 809CB328 46105481 */ sub.s $f18, $f10, $f16
/* 0081C 809CB32C 4600910D */ trunc.w.s $f4, $f18
/* 00820 809CB330 44182000 */ mfc1 $t8, $f4
/* 00824 809CB334 00000000 */ nop
/* 00828 809CB338 A4D801AE */ sh $t8, 0x01AE($a2) ## 000001AE
.L809CB33C:
/* 0082C 809CB33C 24190050 */ addiu $t9, $zero, 0x0050 ## $t9 = 00000050
.L809CB340:
/* 00830 809CB340 A0D90114 */ sb $t9, 0x0114($a2) ## 00000114
/* 00834 809CB344 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00838 809CB348 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0083C 809CB34C 03E00008 */ jr $ra
/* 00840 809CB350 00000000 */ nop

View file

@ -1,72 +0,0 @@
glabel func_809CB354
/* 00844 809CB354 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00848 809CB358 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0084C 809CB35C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00850 809CB360 AFA5001C */ sw $a1, 0x001C($sp)
/* 00854 809CB364 AFA60018 */ sw $a2, 0x0018($sp)
/* 00858 809CB368 0C02927F */ jal SkelAnime_Update
/* 0085C 809CB36C 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
/* 00860 809CB370 10400006 */ beq $v0, $zero, .L809CB38C
/* 00864 809CB374 8FA60018 */ lw $a2, 0x0018($sp)
/* 00868 809CB378 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
/* 0086C 809CB37C 0C272B77 */ jal func_809CADDC
/* 00870 809CB380 8FA5001C */ lw $a1, 0x001C($sp)
/* 00874 809CB384 10000031 */ beq $zero, $zero, .L809CB44C
/* 00878 809CB388 8FBF0014 */ lw $ra, 0x0014($sp)
.L809CB38C:
/* 0087C 809CB38C 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 00880 809CB390 C4C0017C */ lwc1 $f0, 0x017C($a2) ## 0000017C
/* 00884 809CB394 44812000 */ mtc1 $at, $f4 ## $f4 = 8.00
/* 00888 809CB398 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 0088C 809CB39C 4604003C */ c.lt.s $f0, $f4
/* 00890 809CB3A0 00000000 */ nop
/* 00894 809CB3A4 4502000D */ bc1fl .L809CB3DC
/* 00898 809CB3A8 44812000 */ mtc1 $at, $f4 ## $f4 = 12.00
/* 0089C 809CB3AC 84CE01AE */ lh $t6, 0x01AE($a2) ## 000001AE
/* 008A0 809CB3B0 3C01447A */ lui $at, 0x447A ## $at = 447A0000
/* 008A4 809CB3B4 44815000 */ mtc1 $at, $f10 ## $f10 = 1000.00
/* 008A8 809CB3B8 448E3000 */ mtc1 $t6, $f6 ## $f6 = 0.00
/* 008AC 809CB3BC 00000000 */ nop
/* 008B0 809CB3C0 46803220 */ cvt.s.w $f8, $f6
/* 008B4 809CB3C4 460A4401 */ sub.s $f16, $f8, $f10
/* 008B8 809CB3C8 4600848D */ trunc.w.s $f18, $f16
/* 008BC 809CB3CC 44189000 */ mfc1 $t8, $f18
/* 008C0 809CB3D0 1000001D */ beq $zero, $zero, .L809CB448
/* 008C4 809CB3D4 A4D801AE */ sh $t8, 0x01AE($a2) ## 000001AE
/* 008C8 809CB3D8 44812000 */ mtc1 $at, $f4 ## $f4 = 1000.00
.L809CB3DC:
/* 008CC 809CB3DC 00000000 */ nop
/* 008D0 809CB3E0 4604003C */ c.lt.s $f0, $f4
/* 008D4 809CB3E4 00000000 */ nop
/* 008D8 809CB3E8 4502000D */ bc1fl .L809CB420
/* 008DC 809CB3EC 84CA01AE */ lh $t2, 0x01AE($a2) ## 000001AE
/* 008E0 809CB3F0 84D901AE */ lh $t9, 0x01AE($a2) ## 000001AE
/* 008E4 809CB3F4 3C01437A */ lui $at, 0x437A ## $at = 437A0000
/* 008E8 809CB3F8 44815000 */ mtc1 $at, $f10 ## $f10 = 250.00
/* 008EC 809CB3FC 44993000 */ mtc1 $t9, $f6 ## $f6 = 0.00
/* 008F0 809CB400 00000000 */ nop
/* 008F4 809CB404 46803220 */ cvt.s.w $f8, $f6
/* 008F8 809CB408 460A4401 */ sub.s $f16, $f8, $f10
/* 008FC 809CB40C 4600848D */ trunc.w.s $f18, $f16
/* 00900 809CB410 44099000 */ mfc1 $t1, $f18
/* 00904 809CB414 1000000C */ beq $zero, $zero, .L809CB448
/* 00908 809CB418 A4C901AE */ sh $t1, 0x01AE($a2) ## 000001AE
/* 0090C 809CB41C 84CA01AE */ lh $t2, 0x01AE($a2) ## 000001AE
.L809CB420:
/* 00910 809CB420 3C01437A */ lui $at, 0x437A ## $at = 437A0000
/* 00914 809CB424 44814000 */ mtc1 $at, $f8 ## $f8 = 250.00
/* 00918 809CB428 448A2000 */ mtc1 $t2, $f4 ## $f4 = 0.00
/* 0091C 809CB42C 00000000 */ nop
/* 00920 809CB430 468021A0 */ cvt.s.w $f6, $f4
/* 00924 809CB434 46083280 */ add.s $f10, $f6, $f8
/* 00928 809CB438 4600540D */ trunc.w.s $f16, $f10
/* 0092C 809CB43C 440C8000 */ mfc1 $t4, $f16
/* 00930 809CB440 00000000 */ nop
/* 00934 809CB444 A4CC01AE */ sh $t4, 0x01AE($a2) ## 000001AE
.L809CB448:
/* 00938 809CB448 8FBF0014 */ lw $ra, 0x0014($sp)
.L809CB44C:
/* 0093C 809CB44C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00940 809CB450 03E00008 */ jr $ra
/* 00944 809CB454 00000000 */ nop

View file

@ -1,155 +0,0 @@
.late_rodata
glabel D_809CBAD0
.float 5500.0
glabel D_809CBAD4
.float 5500.0
glabel D_809CBAD8
.float 15000.0
.text
glabel func_809CB458
/* 00948 809CB458 27BDFF68 */ addiu $sp, $sp, 0xFF68 ## $sp = FFFFFF68
/* 0094C 809CB45C AFB1005C */ sw $s1, 0x005C($sp)
/* 00950 809CB460 AFB00058 */ sw $s0, 0x0058($sp)
/* 00954 809CB464 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 00958 809CB468 AFBF0074 */ sw $ra, 0x0074($sp)
/* 0095C 809CB46C AFB60070 */ sw $s6, 0x0070($sp)
/* 00960 809CB470 24900164 */ addiu $s0, $a0, 0x0164 ## $s0 = 00000164
/* 00964 809CB474 00A0B025 */ or $s6, $a1, $zero ## $s6 = 00000000
/* 00968 809CB478 AFB5006C */ sw $s5, 0x006C($sp)
/* 0096C 809CB47C AFB40068 */ sw $s4, 0x0068($sp)
/* 00970 809CB480 AFB30064 */ sw $s3, 0x0064($sp)
/* 00974 809CB484 AFB20060 */ sw $s2, 0x0060($sp)
/* 00978 809CB488 F7BE0050 */ sdc1 $f30, 0x0050($sp)
/* 0097C 809CB48C F7BC0048 */ sdc1 $f28, 0x0048($sp)
/* 00980 809CB490 F7BA0040 */ sdc1 $f26, 0x0040($sp)
/* 00984 809CB494 F7B80038 */ sdc1 $f24, 0x0038($sp)
/* 00988 809CB498 F7B60030 */ sdc1 $f22, 0x0030($sp)
/* 0098C 809CB49C F7B40028 */ sdc1 $f20, 0x0028($sp)
/* 00990 809CB4A0 0C02927F */ jal SkelAnime_Update
/* 00994 809CB4A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000164
/* 00998 809CB4A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000164
/* 0099C 809CB4AC 0C0295B2 */ jal Animation_OnFrame
/* 009A0 809CB4B0 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 009A4 809CB4B4 10400005 */ beq $v0, $zero, .L809CB4CC
/* 009A8 809CB4B8 3C0F0001 */ lui $t7, 0x0001 ## $t7 = 00010000
/* 009AC 809CB4BC 862201AC */ lh $v0, 0x01AC($s1) ## 000001AC
/* 009B0 809CB4C0 10400002 */ beq $v0, $zero, .L809CB4CC
/* 009B4 809CB4C4 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 009B8 809CB4C8 A62E01AC */ sh $t6, 0x01AC($s1) ## 000001AC
.L809CB4CC:
/* 009BC 809CB4CC 01F67821 */ addu $t7, $t7, $s6
/* 009C0 809CB4D0 8DEF1DE4 */ lw $t7, 0x1DE4($t7) ## 00011DE4
/* 009C4 809CB4D4 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 009C8 809CB4D8 24150004 */ addiu $s5, $zero, 0x0004 ## $s5 = 00000004
/* 009CC 809CB4DC 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 009D0 809CB4E0 13000008 */ beq $t8, $zero, .L809CB504
/* 009D4 809CB4E4 3C14809D */ lui $s4, %hi(D_809CBAB8) ## $s4 = 809D0000
/* 009D8 809CB4E8 3C01809D */ lui $at, %hi(D_809CBAD0) ## $at = 809D0000
/* 009DC 809CB4EC C426BAD0 */ lwc1 $f6, %lo(D_809CBAD0)($at)
/* 009E0 809CB4F0 C6240050 */ lwc1 $f4, 0x0050($s1) ## 00000050
/* 009E4 809CB4F4 4480B000 */ mtc1 $zero, $f22 ## $f22 = 0.00
/* 009E8 809CB4F8 46062002 */ mul.s $f0, $f4, $f6
/* 009EC 809CB4FC 10000007 */ beq $zero, $zero, .L809CB51C
/* 009F0 809CB500 3C014780 */ lui $at, 0x4780 ## $at = 47800000
.L809CB504:
/* 009F4 809CB504 3C01809D */ lui $at, %hi(D_809CBAD4) ## $at = 809D0000
/* 009F8 809CB508 C42ABAD4 */ lwc1 $f10, %lo(D_809CBAD4)($at)
/* 009FC 809CB50C C6280050 */ lwc1 $f8, 0x0050($s1) ## 00000050
/* 00A00 809CB510 460A4002 */ mul.s $f0, $f8, $f10
/* 00A04 809CB514 46000586 */ mov.s $f22, $f0
/* 00A08 809CB518 3C014780 */ lui $at, 0x4780 ## $at = 47800000
.L809CB51C:
/* 00A0C 809CB51C 4481F000 */ mtc1 $at, $f30 ## $f30 = 65536.00
/* 00A10 809CB520 3C0145FA */ lui $at, 0x45FA ## $at = 45FA0000
/* 00A14 809CB524 4481E000 */ mtc1 $at, $f28 ## $f28 = 8000.00
/* 00A18 809CB528 3C01447A */ lui $at, 0x447A ## $at = 447A0000
/* 00A1C 809CB52C 4481D000 */ mtc1 $at, $f26 ## $f26 = 1000.00
/* 00A20 809CB530 3C01809D */ lui $at, %hi(D_809CBAD8) ## $at = 809D0000
/* 00A24 809CB534 3C13809D */ lui $s3, %hi(D_809CBAB4) ## $s3 = 809D0000
/* 00A28 809CB538 46000506 */ mov.s $f20, $f0
/* 00A2C 809CB53C 2673BAB4 */ addiu $s3, $s3, %lo(D_809CBAB4) ## $s3 = 809CBAB4
/* 00A30 809CB540 C438BAD8 */ lwc1 $f24, %lo(D_809CBAD8)($at)
/* 00A34 809CB544 2694BAB8 */ addiu $s4, $s4, %lo(D_809CBAB8) ## $s4 = 809CBAB8
/* 00A38 809CB548 27B2008C */ addiu $s2, $sp, 0x008C ## $s2 = FFFFFFF4
.L809CB54C:
/* 00A3C 809CB54C 06010004 */ bgez $s0, .L809CB560
/* 00A40 809CB550 32190001 */ andi $t9, $s0, 0x0001 ## $t9 = 00000000
/* 00A44 809CB554 13200002 */ beq $t9, $zero, .L809CB560
/* 00A48 809CB558 00000000 */ nop
/* 00A4C 809CB55C 2739FFFE */ addiu $t9, $t9, 0xFFFE ## $t9 = FFFFFFFE
.L809CB560:
/* 00A50 809CB560 53200009 */ beql $t9, $zero, .L809CB588
/* 00A54 809CB564 C6280024 */ lwc1 $f8, 0x0024($s1) ## 00000024
/* 00A58 809CB568 C6300024 */ lwc1 $f16, 0x0024($s1) ## 00000024
/* 00A5C 809CB56C 46168480 */ add.s $f18, $f16, $f22
/* 00A60 809CB570 E7B2008C */ swc1 $f18, 0x008C($sp)
/* 00A64 809CB574 C624002C */ lwc1 $f4, 0x002C($s1) ## 0000002C
/* 00A68 809CB578 46142180 */ add.s $f6, $f4, $f20
/* 00A6C 809CB57C 10000009 */ beq $zero, $zero, .L809CB5A4
/* 00A70 809CB580 E7A60094 */ swc1 $f6, 0x0094($sp)
/* 00A74 809CB584 C6280024 */ lwc1 $f8, 0x0024($s1) ## 00000024
.L809CB588:
/* 00A78 809CB588 46144280 */ add.s $f10, $f8, $f20
/* 00A7C 809CB58C 4600A507 */ neg.s $f20, $f20
/* 00A80 809CB590 E7AA008C */ swc1 $f10, 0x008C($sp)
/* 00A84 809CB594 C630002C */ lwc1 $f16, 0x002C($s1) ## 0000002C
/* 00A88 809CB598 46168480 */ add.s $f18, $f16, $f22
/* 00A8C 809CB59C 4600B587 */ neg.s $f22, $f22
/* 00A90 809CB5A0 E7B20094 */ swc1 $f18, 0x0094($sp)
.L809CB5A4:
/* 00A94 809CB5A4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00A98 809CB5A8 00000000 */ nop
/* 00A9C 809CB5AC 46180102 */ mul.s $f4, $f0, $f24
/* 00AA0 809CB5B0 C6280054 */ lwc1 $f8, 0x0054($s1) ## 00000054
/* 00AA4 809CB5B4 C6300028 */ lwc1 $f16, 0x0028($s1) ## 00000028
/* 00AA8 809CB5B8 461A2180 */ add.s $f6, $f4, $f26
/* 00AAC 809CB5BC 46083282 */ mul.s $f10, $f6, $f8
/* 00AB0 809CB5C0 46105480 */ add.s $f18, $f10, $f16
/* 00AB4 809CB5C4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00AB8 809CB5C8 E7B20090 */ swc1 $f18, 0x0090($sp)
/* 00ABC 809CB5CC C6240054 */ lwc1 $f4, 0x0054($s1) ## 00000054
/* 00AC0 809CB5D0 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 00AC4 809CB5D4 AFAC001C */ sw $t4, 0x001C($sp)
/* 00AC8 809CB5D8 461C2182 */ mul.s $f6, $f4, $f28
/* 00ACC 809CB5DC AFB50018 */ sw $s5, 0x0018($sp)
/* 00AD0 809CB5E0 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 00AD4 809CB5E4 461E0282 */ mul.s $f10, $f0, $f30
/* 00AD8 809CB5E8 02402825 */ or $a1, $s2, $zero ## $a1 = FFFFFFF4
/* 00ADC 809CB5EC 02603025 */ or $a2, $s3, $zero ## $a2 = 809CBAB4
/* 00AE0 809CB5F0 02803825 */ or $a3, $s4, $zero ## $a3 = 809CBAB8
/* 00AE4 809CB5F4 4600320D */ trunc.w.s $f8, $f6
/* 00AE8 809CB5F8 4600540D */ trunc.w.s $f16, $f10
/* 00AEC 809CB5FC 44094000 */ mfc1 $t1, $f8
/* 00AF0 809CB600 440B8000 */ mfc1 $t3, $f16
/* 00AF4 809CB604 AFA90010 */ sw $t1, 0x0010($sp)
/* 00AF8 809CB608 0C00A568 */ jal EffectSsLightning_Spawn
/* 00AFC 809CB60C AFAB0014 */ sw $t3, 0x0014($sp)
/* 00B00 809CB610 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 00B04 809CB614 1615FFCD */ bne $s0, $s5, .L809CB54C
/* 00B08 809CB618 00000000 */ nop
/* 00B0C 809CB61C 862D01AC */ lh $t5, 0x01AC($s1) ## 000001AC
/* 00B10 809CB620 55A00004 */ bnel $t5, $zero, .L809CB634
/* 00B14 809CB624 8FBF0074 */ lw $ra, 0x0074($sp)
/* 00B18 809CB628 0C272BA8 */ jal func_809CAEA0
/* 00B1C 809CB62C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00B20 809CB630 8FBF0074 */ lw $ra, 0x0074($sp)
.L809CB634:
/* 00B24 809CB634 D7B40028 */ ldc1 $f20, 0x0028($sp)
/* 00B28 809CB638 D7B60030 */ ldc1 $f22, 0x0030($sp)
/* 00B2C 809CB63C D7B80038 */ ldc1 $f24, 0x0038($sp)
/* 00B30 809CB640 D7BA0040 */ ldc1 $f26, 0x0040($sp)
/* 00B34 809CB644 D7BC0048 */ ldc1 $f28, 0x0048($sp)
/* 00B38 809CB648 D7BE0050 */ ldc1 $f30, 0x0050($sp)
/* 00B3C 809CB64C 8FB00058 */ lw $s0, 0x0058($sp)
/* 00B40 809CB650 8FB1005C */ lw $s1, 0x005C($sp)
/* 00B44 809CB654 8FB20060 */ lw $s2, 0x0060($sp)
/* 00B48 809CB658 8FB30064 */ lw $s3, 0x0064($sp)
/* 00B4C 809CB65C 8FB40068 */ lw $s4, 0x0068($sp)
/* 00B50 809CB660 8FB5006C */ lw $s5, 0x006C($sp)
/* 00B54 809CB664 8FB60070 */ lw $s6, 0x0070($sp)
/* 00B58 809CB668 03E00008 */ jr $ra
/* 00B5C 809CB66C 27BD0098 */ addiu $sp, $sp, 0x0098 ## $sp = 00000000

View file

@ -1,56 +0,0 @@
glabel func_809CB90C
/* 00DFC 809CB90C 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
/* 00E00 809CB910 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00E04 809CB914 AFA40060 */ sw $a0, 0x0060($sp)
/* 00E08 809CB918 AFA50064 */ sw $a1, 0x0064($sp)
/* 00E0C 809CB91C AFA60068 */ sw $a2, 0x0068($sp)
/* 00E10 809CB920 AFA7006C */ sw $a3, 0x006C($sp)
/* 00E14 809CB924 0C034236 */ jal Matrix_Get
/* 00E18 809CB928 27A4001C */ addiu $a0, $sp, 0x001C ## $a0 = FFFFFFBC
/* 00E1C 809CB92C 8FA20064 */ lw $v0, 0x0064($sp)
/* 00E20 809CB930 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00E24 809CB934 C7A4004C */ lwc1 $f4, 0x004C($sp)
/* 00E28 809CB938 54410011 */ bnel $v0, $at, .L809CB980
/* 00E2C 809CB93C 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 00E30 809CB940 4600218D */ trunc.w.s $f6, $f4
/* 00E34 809CB944 8FA20070 */ lw $v0, 0x0070($sp)
/* 00E38 809CB948 440F3000 */ mfc1 $t7, $f6
/* 00E3C 809CB94C 00000000 */ nop
/* 00E40 809CB950 A44F026E */ sh $t7, 0x026E($v0) ## 0000026E
/* 00E44 809CB954 C7A80050 */ lwc1 $f8, 0x0050($sp)
/* 00E48 809CB958 4600428D */ trunc.w.s $f10, $f8
/* 00E4C 809CB95C 44195000 */ mfc1 $t9, $f10
/* 00E50 809CB960 00000000 */ nop
/* 00E54 809CB964 A4590270 */ sh $t9, 0x0270($v0) ## 00000270
/* 00E58 809CB968 C7B00054 */ lwc1 $f16, 0x0054($sp)
/* 00E5C 809CB96C 4600848D */ trunc.w.s $f18, $f16
/* 00E60 809CB970 44099000 */ mfc1 $t1, $f18
/* 00E64 809CB974 10000016 */ beq $zero, $zero, .L809CB9D0
/* 00E68 809CB978 A4490272 */ sh $t1, 0x0272($v0) ## 00000272
/* 00E6C 809CB97C 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
.L809CB980:
/* 00E70 809CB980 14410013 */ bne $v0, $at, .L809CB9D0
/* 00E74 809CB984 C7A4004C */ lwc1 $f4, 0x004C($sp)
/* 00E78 809CB988 4600218D */ trunc.w.s $f6, $f4
/* 00E7C 809CB98C 8FA20070 */ lw $v0, 0x0070($sp)
/* 00E80 809CB990 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000
/* 00E84 809CB994 44815000 */ mtc1 $at, $f10 ## $f10 = 7.00
/* 00E88 809CB998 440B3000 */ mfc1 $t3, $f6
/* 00E8C 809CB99C 00000000 */ nop
/* 00E90 809CB9A0 A44B02BA */ sh $t3, 0x02BA($v0) ## 000002BA
/* 00E94 809CB9A4 C7A80050 */ lwc1 $f8, 0x0050($sp)
/* 00E98 809CB9A8 460A4400 */ add.s $f16, $f8, $f10
/* 00E9C 809CB9AC 4600848D */ trunc.w.s $f18, $f16
/* 00EA0 809CB9B0 440D9000 */ mfc1 $t5, $f18
/* 00EA4 809CB9B4 00000000 */ nop
/* 00EA8 809CB9B8 A44D02BC */ sh $t5, 0x02BC($v0) ## 000002BC
/* 00EAC 809CB9BC C7A40054 */ lwc1 $f4, 0x0054($sp)
/* 00EB0 809CB9C0 4600218D */ trunc.w.s $f6, $f4
/* 00EB4 809CB9C4 440F3000 */ mfc1 $t7, $f6
/* 00EB8 809CB9C8 00000000 */ nop
/* 00EBC 809CB9CC A44F02BE */ sh $t7, 0x02BE($v0) ## 000002BE
.L809CB9D0:
/* 00EC0 809CB9D0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00EC4 809CB9D4 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
/* 00EC8 809CB9D8 03E00008 */ jr $ra
/* 00ECC 809CB9DC 00000000 */ nop

View file

@ -1,26 +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_Brob_InitVars
.word 0x00B60500, 0x00000005, 0x00AC0000, 0x000002C0
.word EnBrob_Init
.word EnBrob_Destroy
.word EnBrob_Update
.word EnBrob_Draw
glabel D_809CBA80
.word 0x00110939, 0x10010000, 0x01000000, 0xFFCFFFFF, 0x03080000, 0xFFCFFFFF, 0x01000000, 0x19010100, 0x1F402AF8, 0xEC780000, 0x00000000
glabel D_809CBAAC
.word 0x0000003C, 0x0078FF00
glabel D_809CBAB4
.word 0xFFFFFFFF
glabel D_809CBAB8
.word 0xC8FFFFFF, 0x00000000

View file

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_809CBAE0
.incbin "baserom/ovl_En_Brob", 0xFD0, 0x00000120

3
spec
View file

@ -1978,8 +1978,7 @@ endseg
beginseg
name "ovl_En_Brob"
include "build/src/overlays/actors/ovl_En_Brob/z_en_brob.o"
include "build/data/overlays/actors/z_en_brob.data.o"
include "build/data/overlays/actors/z_en_brob.reloc.o"
include "build/src/overlays/actors/ovl_En_Brob/ovl_En_Brob_reloc.o"
endseg
beginseg

View file

@ -15,14 +15,21 @@ void EnBrob_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnBrob_Update(Actor* thisx, GlobalContext* globalCtx);
void EnBrob_Draw(Actor* thisx, GlobalContext* globalCtx);
extern UNK_TYPE D_06000290;
extern UNK_TYPE D_060015D8;
extern UNK_TYPE D_06001678;
extern UNK_TYPE D_06001750;
extern UNK_TYPE D_06001958;
extern UNK_TYPE D_06001A70;
void func_809CADDC(EnBrob* this, GlobalContext* globalCtx);
void func_809CB054(EnBrob* this, GlobalContext* globalCtx);
void func_809CB114(EnBrob* this, GlobalContext* globalCtx);
void func_809CB218(EnBrob* this, GlobalContext* globalCtx);
void func_809CB2B8(EnBrob* this, GlobalContext* globalCtx);
void func_809CB354(EnBrob* this, GlobalContext* globalCtx);
void func_809CB458(EnBrob* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000290;
extern FlexSkeletonHeader D_060015D8;
extern AnimationHeader D_06001678;
extern AnimationHeader D_06001750;
extern AnimationHeader D_06001958;
extern CollisionHeader D_06001A70;
/*
const ActorInit En_Brob_InitVars = {
ACTOR_EN_BROB,
ACTORCAT_ENEMY,
@ -35,7 +42,7 @@ const ActorInit En_Brob_InitVars = {
(ActorFunc)EnBrob_Draw,
};
static ColliderCylinderInit D_809CBA80 = {
static ColliderCylinderInit sCylinderInit = {
{
COLTYPE_HIT0,
AT_ON | AT_TYPE_ENEMY,
@ -54,37 +61,273 @@ static ColliderCylinderInit D_809CBA80 = {
},
{ 8000, 11000, -5000, { 0, 0, 0 } },
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/EnBrob_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/EnBrob_Destroy.s")
static CollisionCheckInfoInit sColChkInfoInit = { 0, 60, 120, MASS_IMMOVABLE };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CADDC.s")
void EnBrob_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
EnBrob* this = THIS;
CollisionHeader* colHeader = NULL;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CAE44.s")
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060015D8, &D_06001750, this->jointTable, this->morphTable, 10);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_06001A70, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
Collider_InitCylinder(globalCtx, &this->colliders[0]);
Collider_SetCylinder(globalCtx, &this->colliders[0], &this->dyna.actor, &sCylinderInit);
Collider_InitCylinder(globalCtx, &this->colliders[1]);
Collider_SetCylinder(globalCtx, &this->colliders[1], &this->dyna.actor, &sCylinderInit);
CollisionCheck_SetInfo(&thisx->colChkInfo, NULL, &sColChkInfoInit);
if (((thisx->params >> 8) & 0xFF) == 0) {
Actor_SetScale(&this->dyna.actor, 0.01f);
thisx->params &= 0xFF;
if (thisx->params != 0xFF) {
thisx->scale.y *= (thisx->params & 0xFF) * (1.0f / 30.0f);
}
} else {
Actor_SetScale(&this->dyna.actor, 0.005f);
thisx->params &= 0xFF;
if (thisx->params != 0xFF) {
thisx->scale.y *= (thisx->params & 0xFF) * (2.0f / 30.0f);
}
}
this->colliders[0].dim.radius *= thisx->scale.x;
this->colliders[0].dim.height = thisx->scale.y * 12000.0f;
this->colliders[0].dim.yShift = 0;
this->colliders[1].dim.radius *= thisx->scale.x;
this->colliders[1].dim.height *= thisx->scale.y;
this->colliders[1].dim.yShift *= thisx->scale.y;
this->actionFunc = NULL;
thisx->flags &= ~1;
func_809CADDC(this, globalCtx);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CAEA0.s")
void EnBrob_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnBrob* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CAEF4.s")
DynaPoly_DeleteBgActor(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
Collider_DestroyCylinder(globalCtx, &this->colliders[0]);
Collider_DestroyCylinder(globalCtx, &this->colliders[1]);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CAF88.s")
void func_809CADDC(EnBrob* this, GlobalContext* globalCtx) {
func_8003EC50(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
this->timer = this->actionFunc == func_809CB2B8 ? 200 : 0;
this->unk_1AE = 0;
this->actionFunc = func_809CB054;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB008.s")
void func_809CAE44(EnBrob* this, GlobalContext* globalCtx) {
Animation_PlayOnce(&this->skelAnime, &D_06001750);
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
this->unk_1AE = 1000;
this->actionFunc = func_809CB114;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB054.s")
void func_809CAEA0(EnBrob* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06001958, -5.0f);
this->unk_1AE = 8000;
this->timer = 1200;
this->actionFunc = func_809CB218;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB114.s")
void func_809CAEF4(EnBrob* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06000290, -5.0f);
this->unk_1AE -= 125.0f;
Actor_SetColorFilter(&this->dyna.actor, 0, 0xFF, 0, 0x50);
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EN_GOMA_JR_FREEZE);
this->actionFunc = func_809CB2B8;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB218.s")
void func_809CAF88(EnBrob* this) {
Animation_Change(&this->skelAnime, &D_06001750, -1.0f, Animation_GetLastFrame(&D_06001750), 0.0f, ANIMMODE_ONCE, -5.0f);
this->unk_1AE = 8250;
this->actionFunc = func_809CB354;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB2B8.s")
void func_809CB008(EnBrob* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06001678, -5.0f);
this->timer = 10;
this->actionFunc = func_809CB458;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB354.s")
void func_809CB054(EnBrob* this, GlobalContext* globalCtx) {
if (this->timer != 0) {
this->timer--;
}
if (this->timer == 0) {
if (func_8004356C(&this->dyna) != 0) {
func_8002F71C(globalCtx, &this->dyna.actor, 5.0f, this->dyna.actor.yawTowardsPlayer, 1.0f);
func_809CAE44(this, globalCtx);
} else if (this->dyna.actor.xzDistToPlayer < 300.0f) {
func_809CAE44(this, globalCtx);
}
} else if (this->timer >= 81) {
this->dyna.actor.colorFilterTimer = 80;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB458.s")
void func_809CB114(EnBrob* this, GlobalContext* globalCtx) {
f32 curFrame;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/EnBrob_Update.s")
if (SkelAnime_Update(&this->skelAnime)) {
func_809CAEA0(this);
} else {
curFrame = this->skelAnime.curFrame;
if (curFrame < 8.0f) {
this->unk_1AE += 1000.0f;
} else if (curFrame < 12.0f) {
this->unk_1AE += 250.0f;
} else {
this->unk_1AE -= 250.0f;
}
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/func_809CB90C.s")
void func_809CB218(EnBrob* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelAnime);
if (Animation_OnFrame(&this->skelAnime, 6.0f) || Animation_OnFrame(&this->skelAnime, 15.0f)) {
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EN_BROB_WAVE);
}
if (this->timer != 0) {
this->timer--;
}
if ((this->timer == 0) && (this->dyna.actor.xzDistToPlayer > 500.0f)) {
func_809CAF88(this);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Brob/EnBrob_Draw.s")
void func_809CB2B8(EnBrob* this, GlobalContext* globalCtx) {
if (SkelAnime_Update(&this->skelAnime)) {
func_809CADDC(this, globalCtx);
} else if (this->skelAnime.curFrame < 8.0f) {
this->unk_1AE -= 1250.0f;
}
this->dyna.actor.colorFilterTimer = 0x50;
}
void func_809CB354(EnBrob* this, GlobalContext* globalCtx) {
f32 curFrame;
if (SkelAnime_Update(&this->skelAnime)) {
func_809CADDC(this, globalCtx);
} else {
curFrame = this->skelAnime.curFrame;
if (curFrame < 8.0f) {
this->unk_1AE -= 1000.0f;
} else if (curFrame < 12.0f) {
this->unk_1AE -= 250.0f;
} else {
this->unk_1AE += 250.0f;
}
}
}
void func_809CB458(EnBrob* this, GlobalContext* globalCtx) {
Vec3f pos;
f32 dist1;
f32 dist2;
s32 i;
SkelAnime_Update(&this->skelAnime);
if (Animation_OnFrame(&this->skelAnime, 0) && (this->timer != 0)) {
this->timer--;
}
dist1 = globalCtx->gameplayFrames % 2 ? 0.0f : this->dyna.actor.scale.x * 5500.0f;
dist2 = this->dyna.actor.scale.x * 5500.0f;
for (i = 0; i < 4; i++) {
static Color_RGBA8 primColor = { 255, 255, 255, 255 };
static Color_RGBA8 envColor = { 200, 255, 255, 255 };
if (i % 2) {
pos.x = this->dyna.actor.world.pos.x + dist1;
pos.z = this->dyna.actor.world.pos.z + dist2;
} else {
pos.x = this->dyna.actor.world.pos.x + dist2;
pos.z = this->dyna.actor.world.pos.z + dist1;
dist1 = -dist1;
dist2 = -dist2;
}
pos.y = (((Rand_ZeroOne() * 15000.0f) + 1000.0f) * this->dyna.actor.scale.y) + this->dyna.actor.world.pos.y;
EffectSsLightning_Spawn(globalCtx, &pos, &primColor, &envColor,
this->dyna.actor.scale.y * 8000.0f, Rand_ZeroOne() * 65536.0f, 4, 1);
}
if (this->timer == 0) {
func_809CAEA0(this);
}
}
void EnBrob_Update(Actor* thisx, GlobalContext* globalCtx2) {
GlobalContext* globalCtx = globalCtx2;
EnBrob* this = THIS;
s32 i;
s32 acHits[2];
acHits[0] = (this->colliders[0].base.acFlags & AC_HIT) != 0;
acHits[1] = (this->colliders[1].base.acFlags & AC_HIT) != 0;
if ((acHits[0] && (this->colliders[0].info.acHitInfo->toucher.dmgFlags & 0x10)) ||
(acHits[1] && (this->colliders[1].info.acHitInfo->toucher.dmgFlags & 0x10))) {
for (i = 0; i < 2; i++) {
this->colliders[i].base.atFlags &= ~(AT_HIT | AT_BOUNCED);
this->colliders[i].base.acFlags &= ~AC_HIT;
}
func_809CAEF4(this);
} else if ((this->colliders[0].base.atFlags & AT_HIT) || (this->colliders[1].base.atFlags & AT_HIT) ||
(acHits[0] && (this->colliders[0].info.acHitInfo->toucher.dmgFlags & 0x100)) ||
(acHits[1] && (this->colliders[1].info.acHitInfo->toucher.dmgFlags & 0x100))) {
if (this->actionFunc == func_809CB114 && !(this->colliders[0].base.atFlags & AT_BOUNCED) && !(this->colliders[1].base.atFlags & AT_BOUNCED)) {
func_8002F71C(globalCtx, &this->dyna.actor, 5.0f, this->dyna.actor.yawTowardsPlayer, 1.0f);
} else if (this->actionFunc != func_809CB114) {
func_809CB008(this);
}
for (i = 0; i < 2; i++) {
this->colliders[i].base.atFlags &= ~(AT_HIT | AT_BOUNCED);
this->colliders[i].base.acFlags &= ~AC_HIT;
}
}
this->actionFunc(this, globalCtx);
if (this->actionFunc != func_809CB054 && this->actionFunc != func_809CB354) {
if (this->actionFunc != func_809CB2B8) {
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->colliders[0].base);
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->colliders[1].base);
if (this->actionFunc != func_809CB114) {
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->colliders[0].base);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->colliders[1].base);
}
}
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->colliders[0].base);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->colliders[1].base);
}
}
void EnBrob_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
EnBrob* this = THIS;
MtxF mtx;
Matrix_Get(&mtx);
if (limbIndex == 3) {
this->colliders[0].dim.pos.x = mtx.wx;
this->colliders[0].dim.pos.y = mtx.wy;
this->colliders[0].dim.pos.z = mtx.wz;
} else if (limbIndex == 8) {
this->colliders[1].dim.pos.x = mtx.wx;
this->colliders[1].dim.pos.y = (mtx.wy + 7.0f);
this->colliders[1].dim.pos.z = mtx.wz;
}
}
void EnBrob_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnBrob* this = THIS;
func_80093D18(globalCtx->state.gfxCtx);
Matrix_Translate(0.0f, this->unk_1AE, 0.0f, MTXMODE_APPLY);
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, this->skelAnime.dListCount,
NULL, EnBrob_PostLimbDraw, this);
}

View file

@ -6,9 +6,17 @@
struct EnBrob;
typedef void (*EnBrobActionFunc)(struct EnBrob* this, GlobalContext* globalCtx);
typedef struct EnBrob {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x174];
/* 0x0000 */ DynaPolyActor dyna;
/* 0x0164 */ SkelAnime skelAnime;
/* 0x01A8 */ EnBrobActionFunc actionFunc;
/* 0x01AC */ s16 timer;
/* 0x01AE */ s16 unk_1AE;
/* 0x01B0 */ Vec3s jointTable[10];
/* 0x01EC */ Vec3s morphTable[10];
/* 0x0228 */ ColliderCylinder colliders[2];
} EnBrob; // size = 0x02C0
extern const ActorInit En_Brob_InitVars;