1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-28 19:25:27 +00:00

Match the remaining function in Boss_Tw (#930)

This commit is contained in:
Roman971 2021-08-30 03:03:20 +02:00 committed by GitHub
parent 37871e555f
commit ead672acc8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 18 additions and 950 deletions

View file

@ -1,917 +0,0 @@
.late_rodata
glabel D_8094AFF8
.float 1.99000000954
glabel jtbl_8094AFFC
.word L8093FDC0
.word L8093FE58
.word L809400CC
.word L809402FC
.word L80940690
glabel D_8094B010
.word 0x43838000
.text
glabel BossTw_TwinrovaDeathCS
/* 06D14 8093F9E4 27BDFF20 */ addiu $sp, $sp, 0xFF20 ## $sp = FFFFFF20
/* 06D18 8093F9E8 AFB20044 */ sw $s2, 0x0044($sp)
/* 06D1C 8093F9EC AFBF004C */ sw $ra, 0x004C($sp)
/* 06D20 8093F9F0 AFB30048 */ sw $s3, 0x0048($sp)
/* 06D24 8093F9F4 AFB10040 */ sw $s1, 0x0040($sp)
/* 06D28 8093F9F8 AFB0003C */ sw $s0, 0x003C($sp)
/* 06D2C 8093F9FC F7B40030 */ sdc1 $f20, 0x0030($sp)
/* 06D30 8093FA00 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44
/* 06D34 8093FA04 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
/* 06D38 8093FA08 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000
/* 06D3C 8093FA0C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 06D40 8093FA10 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 06D44 8093FA14 0C030129 */ jal Gameplay_GetCamera
/* 06D48 8093FA18 AFAE00CC */ sw $t6, 0x00CC($sp)
/* 06D4C 8093FA1C 26500568 */ addiu $s0, $s2, 0x0568 ## $s0 = 00000568
/* 06D50 8093FA20 AFA200C8 */ sw $v0, 0x00C8($sp)
/* 06D54 8093FA24 0C02927F */ jal SkelAnime_Update
/* 06D58 8093FA28 02002025 */ or $a0, $s0, $zero ## $a0 = 00000568
/* 06D5C 8093FA2C 864F0160 */ lh $t7, 0x0160($s2) ## 00000160
/* 06D60 8093FA30 240800FF */ addiu $t0, $zero, 0x00FF ## $t0 = 000000FF
/* 06D64 8093FA34 264401B4 */ addiu $a0, $s2, 0x01B4 ## $a0 = 000001B4
/* 06D68 8093FA38 25F80014 */ addiu $t8, $t7, 0x0014 ## $t8 = 00000014
/* 06D6C 8093FA3C A6580160 */ sh $t8, 0x0160($s2) ## 00000160
/* 06D70 8093FA40 86590160 */ lh $t9, 0x0160($s2) ## 00000160
/* 06D74 8093FA44 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 06D78 8093FA48 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 06D7C 8093FA4C 2B210100 */ slti $at, $t9, 0x0100
/* 06D80 8093FA50 14200002 */ bne $at, $zero, .L8093FA5C
/* 06D84 8093FA54 3C073D4C */ lui $a3, 0x3D4C ## $a3 = 3D4C0000
/* 06D88 8093FA58 A6480160 */ sh $t0, 0x0160($s2) ## 00000160
.L8093FA5C:
/* 06D8C 8093FA5C 0C01E107 */ jal Math_ApproachF
/* 06D90 8093FA60 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3D4CCCCD
/* 06D94 8093FA64 86420440 */ lh $v0, 0x0440($s2) ## 00000440
/* 06D98 8093FA68 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 06D9C 8093FA6C A24905F8 */ sb $t1, 0x05F8($s2) ## 000005F8
/* 06DA0 8093FA70 10400005 */ beq $v0, $zero, .L8093FA88
/* 06DA4 8093FA74 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 06DA8 8093FA78 504100C9 */ beql $v0, $at, .L8093FDA0
/* 06DAC 8093FA7C 964F05FA */ lhu $t7, 0x05FA($s2) ## 000005FA
/* 06DB0 8093FA80 100000C7 */ beq $zero, $zero, .L8093FDA0
/* 06DB4 8093FA84 964F05FA */ lhu $t7, 0x05FA($s2) ## 000005FA
.L8093FA88:
/* 06DB8 8093FA88 86420150 */ lh $v0, 0x0150($s2) ## 00000150
/* 06DBC 8093FA8C 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
/* 06DC0 8093FA90 02002025 */ or $a0, $s0, $zero ## $a0 = 00000568
/* 06DC4 8093FA94 14410005 */ bne $v0, $at, .L8093FAAC
/* 06DC8 8093FA98 3C050602 */ lui $a1, %hi(object_tw_Anim_0216DC) ## $a1 = 06020000
/* 06DCC 8093FA9C 24A516DC */ addiu $a1, $a1, %lo(object_tw_Anim_0216DC) ## $a1 = 060216DC
/* 06DD0 8093FAA0 0C029490 */ jal Animation_MorphToPlayOnce
/* 06DD4 8093FAA4 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
/* 06DD8 8093FAA8 86420150 */ lh $v0, 0x0150($s2) ## 00000150
.L8093FAAC:
/* 06DDC 8093FAAC 2841000F */ slti $at, $v0, 0x000F
/* 06DE0 8093FAB0 14200007 */ bne $at, $zero, .L8093FAD0
/* 06DE4 8093FAB4 26440028 */ addiu $a0, $s2, 0x0028 ## $a0 = 00000028
/* 06DE8 8093FAB8 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
/* 06DEC 8093FABC 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
/* 06DF0 8093FAC0 3C0543C8 */ lui $a1, 0x43C8 ## $a1 = 43C80000
/* 06DF4 8093FAC4 0C01E107 */ jal Math_ApproachF
/* 06DF8 8093FAC8 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 06DFC 8093FACC 86420150 */ lh $v0, 0x0150($s2) ## 00000150
.L8093FAD0:
/* 06E00 8093FAD0 28410037 */ slti $at, $v0, 0x0037
/* 06E04 8093FAD4 142000AE */ bne $at, $zero, .L8093FD90
/* 06E08 8093FAD8 240AFFFF */ addiu $t2, $zero, 0xFFFF ## $t2 = FFFFFFFF
/* 06E0C 8093FADC 24010037 */ addiu $at, $zero, 0x0037 ## $at = 00000037
/* 06E10 8093FAE0 14410005 */ bne $v0, $at, .L8093FAF8
/* 06E14 8093FAE4 240B0005 */ addiu $t3, $zero, 0x0005 ## $t3 = 00000005
/* 06E18 8093FAE8 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 06E1C 8093FAEC 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 06E20 8093FAF0 00330821 */ addu $at, $at, $s3
/* 06E24 8093FAF4 E4240AFC */ swc1 $f4, 0x0AFC($at) ## 00010AFC
.L8093FAF8:
/* 06E28 8093FAF8 3C018095 */ lui $at, %hi(sEnvType) ## $at = 80950000
/* 06E2C 8093FAFC A02AC840 */ sb $t2, %lo(sEnvType)($at)
/* 06E30 8093FB00 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 06E34 8093FB04 00330821 */ addu $at, $at, $s3
/* 06E38 8093FB08 A02B0AE2 */ sb $t3, 0x0AE2($at) ## 00010AE2
/* 06E3C 8093FB0C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 06E40 8093FB10 00330821 */ addu $at, $at, $s3
/* 06E44 8093FB14 A0200AE1 */ sb $zero, 0x0AE1($at) ## 00010AE1
/* 06E48 8093FB18 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 06E4C 8093FB1C 34210AFC */ ori $at, $at, 0x0AFC ## $at = 00010AFC
/* 06E50 8093FB20 3C073C75 */ lui $a3, 0x3C75 ## $a3 = 3C750000
/* 06E54 8093FB24 34E7C28F */ ori $a3, $a3, 0xC28F ## $a3 = 3C75C28F
/* 06E58 8093FB28 02612021 */ addu $a0, $s3, $at
/* 06E5C 8093FB2C 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 06E60 8093FB30 0C01E107 */ jal Math_ApproachF
/* 06E64 8093FB34 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 06E68 8093FB38 3C053983 */ lui $a1, 0x3983 ## $a1 = 39830000
/* 06E6C 8093FB3C 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 06E70 8093FB40 3C073851 */ lui $a3, 0x3851 ## $a3 = 38510000
/* 06E74 8093FB44 34E7B717 */ ori $a3, $a3, 0xB717 ## $a3 = 3851B717
/* 06E78 8093FB48 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 06E7C 8093FB4C 34A5126E */ ori $a1, $a1, 0x126E ## $a1 = 3983126E
/* 06E80 8093FB50 0C01E107 */ jal Math_ApproachF
/* 06E84 8093FB54 26440050 */ addiu $a0, $s2, 0x0050 ## $a0 = 00000050
/* 06E88 8093FB58 C6400068 */ lwc1 $f0, 0x0068($s2) ## 00000068
/* 06E8C 8093FB5C C64801B8 */ lwc1 $f8, 0x01B8($s2) ## 000001B8
/* 06E90 8093FB60 3C014780 */ lui $at, 0x4780 ## $at = 47800000
/* 06E94 8093FB64 4600018D */ trunc.w.s $f6, $f0
/* 06E98 8093FB68 44816000 */ mtc1 $at, $f12 ## $f12 = 65536.00
/* 06E9C 8093FB6C 864C00B6 */ lh $t4, 0x00B6($s2) ## 000000B6
/* 06EA0 8093FB70 46004280 */ add.s $f10, $f8, $f0
/* 06EA4 8093FB74 44183000 */ mfc1 $t8, $f6
/* 06EA8 8093FB78 E64A01B8 */ swc1 $f10, 0x01B8($s2) ## 000001B8
/* 06EAC 8093FB7C C64201B8 */ lwc1 $f2, 0x01B8($s2) ## 000001B8
/* 06EB0 8093FB80 0198C821 */ addu $t9, $t4, $t8
/* 06EB4 8093FB84 A65900B6 */ sh $t9, 0x00B6($s2) ## 000000B6
/* 06EB8 8093FB88 4602603C */ c.lt.s $f12, $f2
/* 06EBC 8093FB8C 00000000 */ nop
/* 06EC0 8093FB90 45020007 */ bc1fl .L8093FBB0
/* 06EC4 8093FB94 26440068 */ addiu $a0, $s2, 0x0068 ## $a0 = 00000068
/* 06EC8 8093FB98 460C1401 */ sub.s $f16, $f2, $f12
/* 06ECC 8093FB9C 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 06ED0 8093FBA0 24053921 */ addiu $a1, $zero, 0x3921 ## $a1 = 00003921
/* 06ED4 8093FBA4 0C00BE0A */ jal Audio_PlayActorSound2
/* 06ED8 8093FBA8 E65001B8 */ swc1 $f16, 0x01B8($s2) ## 000001B8
/* 06EDC 8093FBAC 26440068 */ addiu $a0, $s2, 0x0068 ## $a0 = 00000068
.L8093FBB0:
/* 06EE0 8093FBB0 3C054640 */ lui $a1, 0x4640 ## $a1 = 46400000
/* 06EE4 8093FBB4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 06EE8 8093FBB8 0C01E107 */ jal Math_ApproachF
/* 06EEC 8093FBBC 3C074380 */ lui $a3, 0x4380 ## $a3 = 43800000
/* 06EF0 8093FBC0 86480150 */ lh $t0, 0x0150($s2) ## 00000150
/* 06EF4 8093FBC4 24010087 */ addiu $at, $zero, 0x0087 ## $at = 00000087
/* 06EF8 8093FBC8 27A900A4 */ addiu $t1, $sp, 0x00A4 ## $t1 = FFFFFFC4
/* 06EFC 8093FBCC 15010070 */ bne $t0, $at, .L8093FD90
/* 06F00 8093FBD0 3C0A8095 */ lui $t2, %hi(D_8094A8E8) ## $t2 = 80950000
/* 06F04 8093FBD4 254AA8E8 */ addiu $t2, $t2, %lo(D_8094A8E8) ## $t2 = 8094A8E8
/* 06F08 8093FBD8 8D4D0000 */ lw $t5, 0x0000($t2) ## 8094A8E8
/* 06F0C 8093FBDC 8D4B0004 */ lw $t3, 0x0004($t2) ## 8094A8EC
/* 06F10 8093FBE0 2404390D */ addiu $a0, $zero, 0x390D ## $a0 = 0000390D
/* 06F14 8093FBE4 AD2D0000 */ sw $t5, 0x0000($t1) ## FFFFFFC4
/* 06F18 8093FBE8 8D4D0008 */ lw $t5, 0x0008($t2) ## 8094A8F0
/* 06F1C 8093FBEC AD2B0004 */ sw $t3, 0x0004($t1) ## FFFFFFC8
/* 06F20 8093FBF0 0C01E221 */ jal func_80078884
/* 06F24 8093FBF4 AD2D0008 */ sw $t5, 0x0008($t1) ## FFFFFFCC
/* 06F28 8093FBF8 264E0024 */ addiu $t6, $s2, 0x0024 ## $t6 = 00000024
/* 06F2C 8093FBFC AFAE0064 */ sw $t6, 0x0064($sp)
/* 06F30 8093FC00 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 06F34 8093FC04 27B100BC */ addiu $s1, $sp, 0x00BC ## $s1 = FFFFFFDC
/* 06F38 8093FC08 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
.L8093FC0C:
/* 06F3C 8093FC0C 44816000 */ mtc1 $at, $f12 ## $f12 = 5.00
/* 06F40 8093FC10 0C00CFC8 */ jal Rand_CenteredFloat
/* 06F44 8093FC14 00000000 */ nop
/* 06F48 8093FC18 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 06F4C 8093FC1C 44816000 */ mtc1 $at, $f12 ## $f12 = 5.00
/* 06F50 8093FC20 0C00CFC8 */ jal Rand_CenteredFloat
/* 06F54 8093FC24 E7A000B0 */ swc1 $f0, 0x00B0($sp)
/* 06F58 8093FC28 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 06F5C 8093FC2C 44816000 */ mtc1 $at, $f12 ## $f12 = 5.00
/* 06F60 8093FC30 0C00CFC8 */ jal Rand_CenteredFloat
/* 06F64 8093FC34 E7A000B4 */ swc1 $f0, 0x00B4($sp)
/* 06F68 8093FC38 8FAF0064 */ lw $t7, 0x0064($sp)
/* 06F6C 8093FC3C E7A000B8 */ swc1 $f0, 0x00B8($sp)
/* 06F70 8093FC40 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 06F74 8093FC44 8DF80000 */ lw $t8, 0x0000($t7) ## 00000000
/* 06F78 8093FC48 44816000 */ mtc1 $at, $f12 ## $f12 = 2.00
/* 06F7C 8093FC4C AE380000 */ sw $t8, 0x0000($s1) ## FFFFFFDC
/* 06F80 8093FC50 8DEC0004 */ lw $t4, 0x0004($t7) ## 00000004
/* 06F84 8093FC54 AE2C0004 */ sw $t4, 0x0004($s1) ## FFFFFFE0
/* 06F88 8093FC58 8DF80008 */ lw $t8, 0x0008($t7) ## 00000008
/* 06F8C 8093FC5C AE380008 */ sw $t8, 0x0008($s1) ## FFFFFFE4
/* 06F90 8093FC60 C7B200BC */ lwc1 $f18, 0x00BC($sp)
/* 06F94 8093FC64 C7A400B0 */ lwc1 $f4, 0x00B0($sp)
/* 06F98 8093FC68 C7A800C0 */ lwc1 $f8, 0x00C0($sp)
/* 06F9C 8093FC6C C7AA00B4 */ lwc1 $f10, 0x00B4($sp)
/* 06FA0 8093FC70 46049180 */ add.s $f6, $f18, $f4
/* 06FA4 8093FC74 C7B200C4 */ lwc1 $f18, 0x00C4($sp)
/* 06FA8 8093FC78 460A4400 */ add.s $f16, $f8, $f10
/* 06FAC 8093FC7C E7A600BC */ swc1 $f6, 0x00BC($sp)
/* 06FB0 8093FC80 46009100 */ add.s $f4, $f18, $f0
/* 06FB4 8093FC84 E7B000C0 */ swc1 $f16, 0x00C0($sp)
/* 06FB8 8093FC88 0C00CFBE */ jal Rand_ZeroFloat
/* 06FBC 8093FC8C E7A400C4 */ swc1 $f4, 0x00C4($sp)
/* 06FC0 8093FC90 3C018095 */ lui $at, %hi(D_8094AFF8) ## $at = 80950000
/* 06FC4 8093FC94 C42CAFF8 */ lwc1 $f12, %lo(D_8094AFF8)($at)
/* 06FC8 8093FC98 0C00CFBE */ jal Rand_ZeroFloat
/* 06FCC 8093FC9C 46000506 */ mov.s $f20, $f0
/* 06FD0 8093FCA0 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 06FD4 8093FCA4 4600028D */ trunc.w.s $f10, $f0
/* 06FD8 8093FCA8 44813000 */ mtc1 $at, $f6 ## $f6 = 5.00
/* 06FDC 8093FCAC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 06FE0 8093FCB0 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFDC
/* 06FE4 8093FCB4 4606A200 */ add.s $f8, $f20, $f6
/* 06FE8 8093FCB8 44085000 */ mfc1 $t0, $f10
/* 06FEC 8093FCBC 27A600B0 */ addiu $a2, $sp, 0x00B0 ## $a2 = FFFFFFD0
/* 06FF0 8093FCC0 27A700A4 */ addiu $a3, $sp, 0x00A4 ## $a3 = FFFFFFC4
/* 06FF4 8093FCC4 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 06FF8 8093FCC8 0C24E41C */ jal BossTw_AddFlameEffect
/* 06FFC 8093FCCC AFA80014 */ sw $t0, 0x0014($sp)
/* 07000 8093FCD0 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 07004 8093FCD4 00108400 */ sll $s0, $s0, 16
/* 07008 8093FCD8 00108403 */ sra $s0, $s0, 16
/* 0700C 8093FCDC 2A010064 */ slti $at, $s0, 0x0064
/* 07010 8093FCE0 5420FFCA */ bnel $at, $zero, .L8093FC0C
/* 07014 8093FCE4 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 07018 8093FCE8 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00
/* 0701C 8093FCEC C6520024 */ lwc1 $f18, 0x0024($s2) ## 00000024
/* 07020 8093FCF0 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 07024 8093FCF4 A6490440 */ sh $t1, 0x0440($s2) ## 00000440
/* 07028 8093FCF8 A2400564 */ sb $zero, 0x0564($s2) ## 00000564
/* 0702C 8093FCFC E6500050 */ swc1 $f16, 0x0050($s2) ## 00000050
/* 07030 8093FD00 E7B20010 */ swc1 $f18, 0x0010($sp)
/* 07034 8093FD04 C6440028 */ lwc1 $f4, 0x0028($s2) ## 00000028
/* 07038 8093FD08 26701C24 */ addiu $s0, $s3, 0x1C24 ## $s0 = 00001C24
/* 0703C 8093FD0C 240A0069 */ addiu $t2, $zero, 0x0069 ## $t2 = 00000069
/* 07040 8093FD10 E7A40014 */ swc1 $f4, 0x0014($sp)
/* 07044 8093FD14 C646002C */ lwc1 $f6, 0x002C($s2) ## 0000002C
/* 07048 8093FD18 AFAA0028 */ sw $t2, 0x0028($sp)
/* 0704C 8093FD1C AFA00024 */ sw $zero, 0x0024($sp)
/* 07050 8093FD20 AFA00020 */ sw $zero, 0x0020($sp)
/* 07054 8093FD24 AFA0001C */ sw $zero, 0x001C($sp)
/* 07058 8093FD28 02002025 */ or $a0, $s0, $zero ## $a0 = 00001C24
/* 0705C 8093FD2C 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 07060 8093FD30 02603025 */ or $a2, $s3, $zero ## $a2 = 00000000
/* 07064 8093FD34 240700DC */ addiu $a3, $zero, 0x00DC ## $a3 = 000000DC
/* 07068 8093FD38 0C00C916 */ jal Actor_SpawnAsChild
/* 0706C 8093FD3C E7A60018 */ swc1 $f6, 0x0018($sp)
/* 07070 8093FD40 C6480024 */ lwc1 $f8, 0x0024($s2) ## 00000024
/* 07074 8093FD44 240B0068 */ addiu $t3, $zero, 0x0068 ## $t3 = 00000068
/* 07078 8093FD48 02002025 */ or $a0, $s0, $zero ## $a0 = 00001C24
/* 0707C 8093FD4C E7A80010 */ swc1 $f8, 0x0010($sp)
/* 07080 8093FD50 C64A0028 */ lwc1 $f10, 0x0028($s2) ## 00000028
/* 07084 8093FD54 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 07088 8093FD58 02603025 */ or $a2, $s3, $zero ## $a2 = 00000000
/* 0708C 8093FD5C E7AA0014 */ swc1 $f10, 0x0014($sp)
/* 07090 8093FD60 C650002C */ lwc1 $f16, 0x002C($s2) ## 0000002C
/* 07094 8093FD64 AFAB0028 */ sw $t3, 0x0028($sp)
/* 07098 8093FD68 AFA00024 */ sw $zero, 0x0024($sp)
/* 0709C 8093FD6C AFA00020 */ sw $zero, 0x0020($sp)
/* 070A0 8093FD70 AFA0001C */ sw $zero, 0x001C($sp)
/* 070A4 8093FD74 240700DC */ addiu $a3, $zero, 0x00DC ## $a3 = 000000DC
/* 070A8 8093FD78 0C00C916 */ jal Actor_SpawnAsChild
/* 070AC 8093FD7C E7B00018 */ swc1 $f16, 0x0018($sp)
/* 070B0 8093FD80 8E4D0004 */ lw $t5, 0x0004($s2) ## 00000004
/* 070B4 8093FD84 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 070B8 8093FD88 01A17024 */ and $t6, $t5, $at
/* 070BC 8093FD8C AE4E0004 */ sw $t6, 0x0004($s2) ## 00000004
.L8093FD90:
/* 070C0 8093FD90 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 070C4 8093FD94 0C00B58B */ jal Actor_SetScale
/* 070C8 8093FD98 8E450050 */ lw $a1, 0x0050($s2) ## 00000050
/* 070CC 8093FD9C 964F05FA */ lhu $t7, 0x05FA($s2) ## 000005FA
.L8093FDA0:
/* 070D0 8093FDA0 2DE10005 */ sltiu $at, $t7, 0x0005
/* 070D4 8093FDA4 1020023C */ beq $at, $zero, .L80940698
/* 070D8 8093FDA8 000F7880 */ sll $t7, $t7, 2
/* 070DC 8093FDAC 3C018095 */ lui $at, %hi(jtbl_8094AFFC) ## $at = 80950000
/* 070E0 8093FDB0 002F0821 */ addu $at, $at, $t7
/* 070E4 8093FDB4 8C2FAFFC */ lw $t7, %lo(jtbl_8094AFFC)($at)
/* 070E8 8093FDB8 01E00008 */ jr $t7
/* 070EC 8093FDBC 00000000 */ nop
glabel L8093FDC0
/* 070F0 8093FDC0 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 070F4 8093FDC4 A64C05FA */ sh $t4, 0x05FA($s2) ## 000005FA
/* 070F8 8093FDC8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 070FC 8093FDCC 0C019148 */ jal func_80064520
/* 07100 8093FDD0 26651D64 */ addiu $a1, $s3, 0x1D64 ## $a1 = 00001D64
/* 07104 8093FDD4 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 07108 8093FDD8 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 0710C 8093FDDC 0C00B7D5 */ jal func_8002DF54
/* 07110 8093FDE0 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
/* 07114 8093FDE4 0C03008C */ jal Gameplay_CreateSubCamera
/* 07118 8093FDE8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 0711C 8093FDEC A64205FC */ sh $v0, 0x05FC($s2) ## 000005FC
/* 07120 8093FDF0 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 07124 8093FDF4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 07128 8093FDF8 0C0300C5 */ jal Gameplay_ChangeCameraStatus
/* 0712C 8093FDFC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 07130 8093FE00 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 07134 8093FE04 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
/* 07138 8093FE08 0C0300C5 */ jal Gameplay_ChangeCameraStatus
/* 0713C 8093FE0C 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
/* 07140 8093FE10 8FA300C8 */ lw $v1, 0x00C8($sp)
/* 07144 8093FE14 3C041001 */ lui $a0, 0x1001 ## $a0 = 10010000
/* 07148 8093FE18 348400FF */ ori $a0, $a0, 0x00FF ## $a0 = 100100FF
/* 0714C 8093FE1C 8C79005C */ lw $t9, 0x005C($v1) ## 0000005C
/* 07150 8093FE20 AE590600 */ sw $t9, 0x0600($s2) ## 00000600
/* 07154 8093FE24 8C780060 */ lw $t8, 0x0060($v1) ## 00000060
/* 07158 8093FE28 AE580604 */ sw $t8, 0x0604($s2) ## 00000604
/* 0715C 8093FE2C 8C790064 */ lw $t9, 0x0064($v1) ## 00000064
/* 07160 8093FE30 AE590608 */ sw $t9, 0x0608($s2) ## 00000608
/* 07164 8093FE34 8C690050 */ lw $t1, 0x0050($v1) ## 00000050
/* 07168 8093FE38 AE49060C */ sw $t1, 0x060C($s2) ## 0000060C
/* 0716C 8093FE3C 8C680054 */ lw $t0, 0x0054($v1) ## 00000054
/* 07170 8093FE40 AE480610 */ sw $t0, 0x0610($s2) ## 00000610
/* 07174 8093FE44 8C690058 */ lw $t1, 0x0058($v1) ## 00000058
/* 07178 8093FE48 0C03E803 */ jal Audio_QueueSeqCmd
/* 0717C 8093FE4C AE490614 */ sw $t1, 0x0614($s2) ## 00000614
/* 07180 8093FE50 10000212 */ beq $zero, $zero, .L8094069C
/* 07184 8093FE54 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
glabel L8093FE58
/* 07188 8093FE58 0C01DE1C */ jal Math_SinS
## sins?
/* 0718C 8093FE5C 86440032 */ lh $a0, 0x0032($s2) ## 00000032
/* 07190 8093FE60 3C014348 */ lui $at, 0x4348 ## $at = 43480000
/* 07194 8093FE64 44819000 */ mtc1 $at, $f18 ## $f18 = 200.00
/* 07198 8093FE68 00000000 */ nop
/* 0719C 8093FE6C 46120102 */ mul.s $f4, $f0, $f18
/* 071A0 8093FE70 E7A400D0 */ swc1 $f4, 0x00D0($sp)
/* 071A4 8093FE74 0C01DE0D */ jal Math_CosS
## coss?
/* 071A8 8093FE78 86440032 */ lh $a0, 0x0032($s2) ## 00000032
/* 071AC 8093FE7C 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 071B0 8093FE80 4481A000 */ mtc1 $at, $f20 ## $f20 = 50.00
/* 071B4 8093FE84 3C014348 */ lui $at, 0x4348 ## $at = 43480000
/* 071B8 8093FE88 44813000 */ mtc1 $at, $f6 ## $f6 = 200.00
/* 071BC 8093FE8C C7B000D0 */ lwc1 $f16, 0x00D0($sp)
/* 071C0 8093FE90 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 071C4 8093FE94 46060202 */ mul.s $f8, $f0, $f6
/* 071C8 8093FE98 4407A000 */ mfc1 $a3, $f20
/* 071CC 8093FE9C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 071D0 8093FEA0 26440600 */ addiu $a0, $s2, 0x0600 ## $a0 = 00000600
/* 071D4 8093FEA4 E7A800D8 */ swc1 $f8, 0x00D8($sp)
/* 071D8 8093FEA8 C64A0024 */ lwc1 $f10, 0x0024($s2) ## 00000024
/* 071DC 8093FEAC 46105480 */ add.s $f18, $f10, $f16
/* 071E0 8093FEB0 44059000 */ mfc1 $a1, $f18
/* 071E4 8093FEB4 0C01E107 */ jal Math_ApproachF
/* 071E8 8093FEB8 00000000 */ nop
/* 071EC 8093FEBC 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 071F0 8093FEC0 4407A000 */ mfc1 $a3, $f20
/* 071F4 8093FEC4 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 071F8 8093FEC8 26440604 */ addiu $a0, $s2, 0x0604 ## $a0 = 00000604
/* 071FC 8093FECC 0C01E107 */ jal Math_ApproachF
/* 07200 8093FED0 3C054396 */ lui $a1, 0x4396 ## $a1 = 43960000
/* 07204 8093FED4 C644002C */ lwc1 $f4, 0x002C($s2) ## 0000002C
/* 07208 8093FED8 C7A600D8 */ lwc1 $f6, 0x00D8($sp)
/* 0720C 8093FEDC 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07210 8093FEE0 4407A000 */ mfc1 $a3, $f20
/* 07214 8093FEE4 46062200 */ add.s $f8, $f4, $f6
/* 07218 8093FEE8 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 0721C 8093FEEC 26440608 */ addiu $a0, $s2, 0x0608 ## $a0 = 00000608
/* 07220 8093FEF0 44054000 */ mfc1 $a1, $f8
/* 07224 8093FEF4 0C01E107 */ jal Math_ApproachF
/* 07228 8093FEF8 00000000 */ nop
/* 0722C 8093FEFC 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07230 8093FF00 4407A000 */ mfc1 $a3, $f20
/* 07234 8093FF04 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 07238 8093FF08 2644060C */ addiu $a0, $s2, 0x060C ## $a0 = 0000060C
/* 0723C 8093FF0C 0C01E107 */ jal Math_ApproachF
/* 07240 8093FF10 8E450024 */ lw $a1, 0x0024($s2) ## 00000024
/* 07244 8093FF14 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07248 8093FF18 4407A000 */ mfc1 $a3, $f20
/* 0724C 8093FF1C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 07250 8093FF20 26440610 */ addiu $a0, $s2, 0x0610 ## $a0 = 00000610
/* 07254 8093FF24 0C01E107 */ jal Math_ApproachF
/* 07258 8093FF28 8E450028 */ lw $a1, 0x0028($s2) ## 00000028
/* 0725C 8093FF2C 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07260 8093FF30 4407A000 */ mfc1 $a3, $f20
/* 07264 8093FF34 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 07268 8093FF38 26440614 */ addiu $a0, $s2, 0x0614 ## $a0 = 00000614
/* 0726C 8093FF3C 0C01E107 */ jal Math_ApproachF
/* 07270 8093FF40 8E45002C */ lw $a1, 0x002C($s2) ## 0000002C
/* 07274 8093FF44 864A0150 */ lh $t2, 0x0150($s2) ## 00000150
/* 07278 8093FF48 240100AA */ addiu $at, $zero, 0x00AA ## $at = 000000AA
/* 0727C 8093FF4C 8FA300CC */ lw $v1, 0x00CC($sp)
/* 07280 8093FF50 154101D1 */ bne $t2, $at, .L80940698
/* 07284 8093FF54 240B0002 */ addiu $t3, $zero, 0x0002 ## $t3 = 00000002
/* 07288 8093FF58 3C01432A */ lui $at, 0x432A ## $at = 432A0000
/* 0728C 8093FF5C 44810000 */ mtc1 $at, $f0 ## $f0 = 170.00
/* 07290 8093FF60 3C014382 */ lui $at, 0x4382 ## $at = 43820000
/* 07294 8093FF64 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
/* 07298 8093FF68 44815000 */ mtc1 $at, $f10 ## $f10 = 260.00
/* 0729C 8093FF6C 3C01C220 */ lui $at, 0xC220 ## $at = C2200000
/* 072A0 8093FF70 44818000 */ mtc1 $at, $f16 ## $f16 = -40.00
/* 072A4 8093FF74 3C014370 */ lui $at, 0x4370 ## $at = 43700000
/* 072A8 8093FF78 44819000 */ mtc1 $at, $f18 ## $f18 = 240.00
/* 072AC 8093FF7C A64B05FA */ sh $t3, 0x05FA($s2) ## 000005FA
/* 072B0 8093FF80 A6400152 */ sh $zero, 0x0152($s2) ## 00000152
/* 072B4 8093FF84 3C0142B4 */ lui $at, 0x42B4 ## $at = 42B40000
/* 072B8 8093FF88 E6400608 */ swc1 $f0, 0x0608($s2) ## 00000608
/* 072BC 8093FF8C E64006A4 */ swc1 $f0, 0x06A4($s2) ## 000006A4
/* 072C0 8093FF90 E6420600 */ swc1 $f2, 0x0600($s2) ## 00000600
/* 072C4 8093FF94 E642060C */ swc1 $f2, 0x060C($s2) ## 0000060C
/* 072C8 8093FF98 E6420614 */ swc1 $f2, 0x0614($s2) ## 00000614
/* 072CC 8093FF9C E64A0604 */ swc1 $f10, 0x0604($s2) ## 00000604
/* 072D0 8093FFA0 44812000 */ mtc1 $at, $f4 ## $f4 = 90.00
/* 072D4 8093FFA4 240D8000 */ addiu $t5, $zero, 0x8000 ## $t5 = FFFF8000
/* 072D8 8093FFA8 A46D00B6 */ sh $t5, 0x00B6($v1) ## 000000B6
/* 072DC 8093FFAC 3C01C214 */ lui $at, 0xC214 ## $at = C2140000
/* 072E0 8093FFB0 3C0E8095 */ lui $t6, %hi(sKoumePtr) ## $t6 = 80950000
/* 072E4 8093FFB4 E4700024 */ swc1 $f16, 0x0024($v1) ## 00000024
/* 072E8 8093FFB8 E4720028 */ swc1 $f18, 0x0028($v1) ## 00000028
/* 072EC 8093FFBC E464002C */ swc1 $f4, 0x002C($v1) ## 0000002C
/* 072F0 8093FFC0 8DCEC848 */ lw $t6, %lo(sKoumePtr)($t6)
/* 072F4 8093FFC4 44813000 */ mtc1 $at, $f6 ## $f6 = -37.00
/* 072F8 8093FFC8 3C014214 */ lui $at, 0x4214 ## $at = 42140000
/* 072FC 8093FFCC 3C0F8095 */ lui $t7, %hi(sKotakePtr) ## $t7 = 80950000
/* 07300 8093FFD0 E5C60024 */ swc1 $f6, 0x0024($t6) ## 80950024
/* 07304 8093FFD4 8DEFC844 */ lw $t7, %lo(sKotakePtr)($t7)
/* 07308 8093FFD8 44814000 */ mtc1 $at, $f8 ## $f8 = 37.00
/* 0730C 8093FFDC 3C018095 */ lui $at, %hi(D_8094B010) ## $at = 80950000
/* 07310 8093FFE0 3C0C8095 */ lui $t4, %hi(sKotakePtr) ## $t4 = 80950000
/* 07314 8093FFE4 E5E80024 */ swc1 $f8, 0x0024($t7) ## 80950024
/* 07318 8093FFE8 8D8CC844 */ lw $t4, %lo(sKotakePtr)($t4)
/* 0731C 8093FFEC C42AB010 */ lwc1 $f10, %lo(D_8094B010)($at)
/* 07320 8093FFF0 3C188095 */ lui $t8, %hi(sKotakePtr) ## $t8 = 80950000
/* 07324 8093FFF4 3C198095 */ lui $t9, %hi(sKoumePtr) ## $t9 = 80950000
/* 07328 8093FFF8 E58A0028 */ swc1 $f10, 0x0028($t4) ## 80950028
/* 0732C 8093FFFC 8F18C844 */ lw $t8, %lo(sKotakePtr)($t8)
/* 07330 80940000 8F39C848 */ lw $t9, %lo(sKoumePtr)($t9)
/* 07334 80940004 3C088095 */ lui $t0, %hi(sKoumePtr) ## $t0 = 80950000
/* 07338 80940008 C7100028 */ lwc1 $f16, 0x0028($t8) ## 80950028
/* 0733C 8094000C 3C014188 */ lui $at, 0x4188 ## $at = 41880000
/* 07340 80940010 44812000 */ mtc1 $at, $f4 ## $f4 = 17.00
/* 07344 80940014 E7300028 */ swc1 $f16, 0x0028($t9) ## 80950028
/* 07348 80940018 8D08C848 */ lw $t0, %lo(sKoumePtr)($t0)
/* 0734C 8094001C 3C098095 */ lui $t1, %hi(sKotakePtr) ## $t1 = 80950000
/* 07350 80940020 3C0A8095 */ lui $t2, %hi(sKotakePtr) ## $t2 = 80950000
/* 07354 80940024 C5120028 */ lwc1 $f18, 0x0028($t0) ## 80950028
/* 07358 80940028 3C0B8095 */ lui $t3, %hi(sKoumePtr) ## $t3 = 80950000
/* 0735C 8094002C 3C0D8095 */ lui $t5, %hi(sKotakePtr) ## $t5 = 80950000
/* 07360 80940030 46049180 */ add.s $f6, $f18, $f4
/* 07364 80940034 3C0E8095 */ lui $t6, %hi(sKotakePtr) ## $t6 = 80950000
/* 07368 80940038 3C0F8095 */ lui $t7, %hi(sKoumePtr) ## $t7 = 80950000
/* 0736C 8094003C 3C0C8095 */ lui $t4, %hi(sKotakePtr) ## $t4 = 80950000
/* 07370 80940040 E6460610 */ swc1 $f6, 0x0610($s2) ## 00000610
/* 07374 80940044 8D29C844 */ lw $t1, %lo(sKotakePtr)($t1)
/* 07378 80940048 3C188095 */ lui $t8, %hi(sKoumePtr) ## $t8 = 80950000
/* 0737C 8094004C 3C198095 */ lui $t9, %hi(sKotakePtr) ## $t9 = 80950000
/* 07380 80940050 E522002C */ swc1 $f2, 0x002C($t1) ## 8095002C
/* 07384 80940054 8D4AC844 */ lw $t2, %lo(sKotakePtr)($t2)
/* 07388 80940058 8D6BC848 */ lw $t3, %lo(sKoumePtr)($t3)
/* 0738C 8094005C 3C088095 */ lui $t0, %hi(sKoumePtr) ## $t0 = 80950000
/* 07390 80940060 C548002C */ lwc1 $f8, 0x002C($t2) ## 8095002C
/* 07394 80940064 3C058095 */ lui $a1, %hi(sKoumePtr) ## $a1 = 80950000
/* 07398 80940068 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 0739C 8094006C E568002C */ swc1 $f8, 0x002C($t3) ## 8095002C
/* 073A0 80940070 8DADC844 */ lw $t5, %lo(sKotakePtr)($t5)
/* 073A4 80940074 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 073A8 80940078 A5A000B6 */ sh $zero, 0x00B6($t5) ## 809500B6
/* 073AC 8094007C 8DCEC844 */ lw $t6, %lo(sKotakePtr)($t6)
/* 073B0 80940080 8DEFC848 */ lw $t7, %lo(sKoumePtr)($t7)
/* 073B4 80940084 85C200B6 */ lh $v0, 0x00B6($t6) ## 809500B6
/* 073B8 80940088 A5E200B6 */ sh $v0, 0x00B6($t7) ## 809500B6
/* 073BC 8094008C 8D8CC844 */ lw $t4, %lo(sKotakePtr)($t4)
/* 073C0 80940090 A58200B4 */ sh $v0, 0x00B4($t4) ## 809500B4
/* 073C4 80940094 8F18C848 */ lw $t8, %lo(sKoumePtr)($t8)
/* 073C8 80940098 A70200B4 */ sh $v0, 0x00B4($t8) ## 809500B4
/* 073CC 8094009C 8F39C844 */ lw $t9, %lo(sKotakePtr)($t9)
/* 073D0 809400A0 A7220164 */ sh $v0, 0x0164($t9) ## 80950164
/* 073D4 809400A4 8D08C848 */ lw $t0, %lo(sKoumePtr)($t0)
/* 073D8 809400A8 A5020164 */ sh $v0, 0x0164($t0) ## 80950164
/* 073DC 809400AC 0C00B7D5 */ jal func_8002DF54
/* 073E0 809400B0 8CA5C848 */ lw $a1, %lo(sKoumePtr)($a1)
/* 073E4 809400B4 3C048095 */ lui $a0, %hi(sKoumePtr) ## $a0 = 80950000
/* 073E8 809400B8 8C84C848 */ lw $a0, %lo(sKoumePtr)($a0)
/* 073EC 809400BC 8C890004 */ lw $t1, 0x0004($a0) ## 80950004
/* 073F0 809400C0 352A0001 */ ori $t2, $t1, 0x0001 ## $t2 = 00000001
/* 073F4 809400C4 10000174 */ beq $zero, $zero, .L80940698
/* 073F8 809400C8 AC8A0004 */ sw $t2, 0x0004($a0) ## 80950004
glabel L809400CC
/* 073FC 809400CC 864B0152 */ lh $t3, 0x0152($s2) ## 00000152
/* 07400 809400D0 24010064 */ addiu $at, $zero, 0x0064 ## $at = 00000064
/* 07404 809400D4 27AD0080 */ addiu $t5, $sp, 0x0080 ## $t5 = FFFFFFA0
/* 07408 809400D8 1561016F */ bne $t3, $at, .L80940698
/* 0740C 809400DC 3C0E8095 */ lui $t6, %hi(D_8094A8F4) ## $t6 = 80950000
/* 07410 809400E0 25CEA8F4 */ addiu $t6, $t6, %lo(D_8094A8F4) ## $t6 = 8094A8F4
/* 07414 809400E4 8DCC0000 */ lw $t4, 0x0000($t6) ## 8094A8F4
/* 07418 809400E8 8DCF0004 */ lw $t7, 0x0004($t6) ## 8094A8F8
/* 0741C 809400EC 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 07420 809400F0 ADAC0000 */ sw $t4, 0x0000($t5) ## FFFFFFA0
/* 07424 809400F4 8DCC0008 */ lw $t4, 0x0008($t6) ## 8094A8FC
/* 07428 809400F8 4481A000 */ mtc1 $at, $f20 ## $f20 = 3.00
/* 0742C 809400FC 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 07430 80940100 27B10098 */ addiu $s1, $sp, 0x0098 ## $s1 = FFFFFFB8
/* 07434 80940104 ADAF0004 */ sw $t7, 0x0004($t5) ## FFFFFFA4
/* 07438 80940108 ADAC0008 */ sw $t4, 0x0008($t5) ## FFFFFFA8
.L8094010C:
/* 0743C 8094010C 0C00CFC8 */ jal Rand_CenteredFloat
/* 07440 80940110 4600A306 */ mov.s $f12, $f20
/* 07444 80940114 E7A0008C */ swc1 $f0, 0x008C($sp)
/* 07448 80940118 0C00CFC8 */ jal Rand_CenteredFloat
/* 0744C 8094011C 4600A306 */ mov.s $f12, $f20
/* 07450 80940120 E7A00090 */ swc1 $f0, 0x0090($sp)
/* 07454 80940124 0C00CFC8 */ jal Rand_CenteredFloat
/* 07458 80940128 4600A306 */ mov.s $f12, $f20
/* 0745C 8094012C 3C188095 */ lui $t8, %hi(sKoumePtr) ## $t8 = 80950000
/* 07460 80940130 8F18C848 */ lw $t8, %lo(sKoumePtr)($t8)
/* 07464 80940134 E7A00094 */ swc1 $f0, 0x0094($sp)
/* 07468 80940138 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 0746C 8094013C 8F080024 */ lw $t0, 0x0024($t8) ## 80950024
/* 07470 80940140 44816000 */ mtc1 $at, $f12 ## $f12 = 2.00
/* 07474 80940144 AE280000 */ sw $t0, 0x0000($s1) ## FFFFFFB8
/* 07478 80940148 8F190028 */ lw $t9, 0x0028($t8) ## 80950028
/* 0747C 8094014C AE390004 */ sw $t9, 0x0004($s1) ## FFFFFFBC
/* 07480 80940150 8F08002C */ lw $t0, 0x002C($t8) ## 8095002C
/* 07484 80940154 AE280008 */ sw $t0, 0x0008($s1) ## FFFFFFC0
/* 07488 80940158 C7AA008C */ lwc1 $f10, 0x008C($sp)
/* 0748C 8094015C C7B20098 */ lwc1 $f18, 0x0098($sp)
/* 07490 80940160 C7A60090 */ lwc1 $f6, 0x0090($sp)
/* 07494 80940164 460A5400 */ add.s $f16, $f10, $f10
/* 07498 80940168 C7AA009C */ lwc1 $f10, 0x009C($sp)
/* 0749C 8094016C 46063200 */ add.s $f8, $f6, $f6
/* 074A0 80940170 46109100 */ add.s $f4, $f18, $f16
/* 074A4 80940174 C7B000A0 */ lwc1 $f16, 0x00A0($sp)
/* 074A8 80940178 46085480 */ add.s $f18, $f10, $f8
/* 074AC 8094017C E7A40098 */ swc1 $f4, 0x0098($sp)
/* 074B0 80940180 46000100 */ add.s $f4, $f0, $f0
/* 074B4 80940184 E7B2009C */ swc1 $f18, 0x009C($sp)
/* 074B8 80940188 46048180 */ add.s $f6, $f16, $f4
/* 074BC 8094018C 0C00CFBE */ jal Rand_ZeroFloat
/* 074C0 80940190 E7A600A0 */ swc1 $f6, 0x00A0($sp)
/* 074C4 80940194 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 074C8 80940198 44815000 */ mtc1 $at, $f10 ## $f10 = 5.00
/* 074CC 8094019C 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 074D0 809401A0 AFA90014 */ sw $t1, 0x0014($sp)
/* 074D4 809401A4 460A0200 */ add.s $f8, $f0, $f10
/* 074D8 809401A8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 074DC 809401AC 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFB8
/* 074E0 809401B0 27A6008C */ addiu $a2, $sp, 0x008C ## $a2 = FFFFFFAC
/* 074E4 809401B4 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 074E8 809401B8 0C24E41C */ jal BossTw_AddFlameEffect
/* 074EC 809401BC 27A70080 */ addiu $a3, $sp, 0x0080 ## $a3 = FFFFFFA0
/* 074F0 809401C0 0C00CFC8 */ jal Rand_CenteredFloat
/* 074F4 809401C4 4600A306 */ mov.s $f12, $f20
/* 074F8 809401C8 E7A0008C */ swc1 $f0, 0x008C($sp)
/* 074FC 809401CC 0C00CFC8 */ jal Rand_CenteredFloat
/* 07500 809401D0 4600A306 */ mov.s $f12, $f20
/* 07504 809401D4 E7A00090 */ swc1 $f0, 0x0090($sp)
/* 07508 809401D8 0C00CFC8 */ jal Rand_CenteredFloat
/* 0750C 809401DC 4600A306 */ mov.s $f12, $f20
/* 07510 809401E0 3C0A8095 */ lui $t2, %hi(sKotakePtr) ## $t2 = 80950000
/* 07514 809401E4 8D4AC844 */ lw $t2, %lo(sKotakePtr)($t2)
/* 07518 809401E8 E7A00094 */ swc1 $f0, 0x0094($sp)
/* 0751C 809401EC 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 07520 809401F0 8D4D0024 */ lw $t5, 0x0024($t2) ## 80950024
/* 07524 809401F4 44816000 */ mtc1 $at, $f12 ## $f12 = 2.00
/* 07528 809401F8 AE2D0000 */ sw $t5, 0x0000($s1) ## FFFFFFB8
/* 0752C 809401FC 8D4B0028 */ lw $t3, 0x0028($t2) ## 80950028
/* 07530 80940200 AE2B0004 */ sw $t3, 0x0004($s1) ## FFFFFFBC
/* 07534 80940204 8D4D002C */ lw $t5, 0x002C($t2) ## 8095002C
/* 07538 80940208 AE2D0008 */ sw $t5, 0x0008($s1) ## FFFFFFC0
/* 0753C 8094020C C7B2008C */ lwc1 $f18, 0x008C($sp)
/* 07540 80940210 C7A40098 */ lwc1 $f4, 0x0098($sp)
/* 07544 80940214 C7AA0090 */ lwc1 $f10, 0x0090($sp)
/* 07548 80940218 46129400 */ add.s $f16, $f18, $f18
/* 0754C 8094021C C7B2009C */ lwc1 $f18, 0x009C($sp)
/* 07550 80940220 460A5200 */ add.s $f8, $f10, $f10
/* 07554 80940224 46102180 */ add.s $f6, $f4, $f16
/* 07558 80940228 C7B000A0 */ lwc1 $f16, 0x00A0($sp)
/* 0755C 8094022C 46089100 */ add.s $f4, $f18, $f8
/* 07560 80940230 E7A60098 */ swc1 $f6, 0x0098($sp)
/* 07564 80940234 46000180 */ add.s $f6, $f0, $f0
/* 07568 80940238 E7A4009C */ swc1 $f4, 0x009C($sp)
/* 0756C 8094023C 46068280 */ add.s $f10, $f16, $f6
/* 07570 80940240 0C00CFBE */ jal Rand_ZeroFloat
/* 07574 80940244 E7AA00A0 */ swc1 $f10, 0x00A0($sp)
/* 07578 80940248 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 0757C 8094024C 44819000 */ mtc1 $at, $f18 ## $f18 = 5.00
/* 07580 80940250 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 07584 80940254 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFB8
/* 07588 80940258 46120200 */ add.s $f8, $f0, $f18
/* 0758C 8094025C 27A6008C */ addiu $a2, $sp, 0x008C ## $a2 = FFFFFFAC
/* 07590 80940260 27A70080 */ addiu $a3, $sp, 0x0080 ## $a3 = FFFFFFA0
/* 07594 80940264 AFA00014 */ sw $zero, 0x0014($sp)
/* 07598 80940268 0C24E41C */ jal BossTw_AddFlameEffect
/* 0759C 8094026C E7A80010 */ swc1 $f8, 0x0010($sp)
/* 075A0 80940270 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 075A4 80940274 00108400 */ sll $s0, $s0, 16
/* 075A8 80940278 00108403 */ sra $s0, $s0, 16
/* 075AC 8094027C 2A010032 */ slti $at, $s0, 0x0032
/* 075B0 80940280 1420FFA2 */ bne $at, $zero, .L8094010C
/* 075B4 80940284 00000000 */ nop
/* 075B8 80940288 3C048095 */ lui $a0, %hi(sKoumePtr) ## $a0 = 80950000
/* 075BC 8094028C 8C84C848 */ lw $a0, %lo(sKoumePtr)($a0)
/* 075C0 80940290 0C00B58B */ jal Actor_SetScale
/* 075C4 80940294 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 075C8 80940298 3C048095 */ lui $a0, %hi(sKotakePtr) ## $a0 = 80950000
/* 075CC 8094029C 8C84C844 */ lw $a0, %lo(sKotakePtr)($a0)
/* 075D0 809402A0 0C00B58B */ jal Actor_SetScale
/* 075D4 809402A4 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 075D8 809402A8 3C0F8095 */ lui $t7, %hi(sKoumePtr) ## $t7 = 80950000
/* 075DC 809402AC 8DEFC848 */ lw $t7, %lo(sKoumePtr)($t7)
/* 075E0 809402B0 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 075E4 809402B4 3C188095 */ lui $t8, %hi(sKotakePtr) ## $t8 = 80950000
/* 075E8 809402B8 A1EE0564 */ sb $t6, 0x0564($t7) ## 80950564
/* 075EC 809402BC 8F18C844 */ lw $t8, %lo(sKotakePtr)($t8)
/* 075F0 809402C0 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 075F4 809402C4 2404390D */ addiu $a0, $zero, 0x390D ## $a0 = 0000390D
/* 075F8 809402C8 0C01E221 */ jal func_80078884
/* 075FC 809402CC A30C0564 */ sb $t4, 0x0564($t8) ## 80950564
/* 07600 809402D0 0C03E803 */ jal Audio_QueueSeqCmd
/* 07604 809402D4 24040061 */ addiu $a0, $zero, 0x0061 ## $a0 = 00000061
/* 07608 809402D8 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 0760C 809402DC 24190003 */ addiu $t9, $zero, 0x0003 ## $t9 = 00000003
/* 07610 809402E0 A65905FA */ sh $t9, 0x05FA($s2) ## 000005FA
/* 07614 809402E4 A6400152 */ sh $zero, 0x0152($s2) ## 00000152
/* 07618 809402E8 E64006A0 */ swc1 $f0, 0x06A0($s2) ## 000006A0
/* 0761C 809402EC E6400068 */ swc1 $f0, 0x0068($s2) ## 00000068
/* 07620 809402F0 E64006B0 */ swc1 $f0, 0x06B0($s2) ## 000006B0
/* 07624 809402F4 100000E8 */ beq $zero, $zero, .L80940698
/* 07628 809402F8 E64006AC */ swc1 $f0, 0x06AC($s2) ## 000006AC
glabel L809402FC
/* 0762C 809402FC 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 07630 80940300 34210AFC */ ori $at, $at, 0x0AFC ## $at = 00010AFC
/* 07634 80940304 02618021 */ addu $s0, $s3, $at
/* 07638 80940308 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 0763C 8094030C 0C24FC71 */ jal BossTw_DeathCSMsgSfx
/* 07640 80940310 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000
/* 07644 80940314 86480152 */ lh $t0, 0x0152($s2) ## 00000152
/* 07648 80940318 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 0764C 8094031C 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 07650 80940320 29010096 */ slti $at, $t0, 0x0096
/* 07654 80940324 1020000E */ beq $at, $zero, .L80940360
/* 07658 80940328 240B0006 */ addiu $t3, $zero, 0x0006 ## $t3 = 00000006
/* 0765C 8094032C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 07660 80940330 00330821 */ addu $at, $at, $s3
/* 07664 80940334 A0290AE2 */ sb $t1, 0x0AE2($at) ## 00010AE2
/* 07668 80940338 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0766C 8094033C 00330821 */ addu $at, $at, $s3
/* 07670 80940340 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07674 80940344 A0200AE1 */ sb $zero, 0x0AE1($at) ## 00010AE1
/* 07678 80940348 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 0767C 8094034C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000001
/* 07680 80940350 0C01E123 */ jal Math_ApproachZeroF
/* 07684 80940354 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 07688 80940358 10000019 */ beq $zero, $zero, .L809403C0
/* 0768C 8094035C 00000000 */ nop
.L80940360:
/* 07690 80940360 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 07694 80940364 00330821 */ addu $at, $at, $s3
/* 07698 80940368 A02A0AE2 */ sb $t2, 0x0AE2($at) ## 00010AE2
/* 0769C 8094036C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 076A0 80940370 00330821 */ addu $at, $at, $s3
/* 076A4 80940374 A02B0AE1 */ sb $t3, 0x0AE1($at) ## 00010AE1
/* 076A8 80940378 86440152 */ lh $a0, 0x0152($s2) ## 00000152
/* 076AC 8094037C 00042300 */ sll $a0, $a0, 12
/* 076B0 80940380 00042400 */ sll $a0, $a0, 16
/* 076B4 80940384 0C01DE1C */ jal Math_SinS
## sins?
/* 076B8 80940388 00042403 */ sra $a0, $a0, 16
/* 076BC 8094038C 3C013E80 */ lui $at, 0x3E80 ## $at = 3E800000
/* 076C0 80940390 44812000 */ mtc1 $at, $f4 ## $f4 = 0.25
/* 076C4 80940394 3C013F40 */ lui $at, 0x3F40 ## $at = 3F400000
/* 076C8 80940398 44813000 */ mtc1 $at, $f6 ## $f6 = 0.75
/* 076CC 8094039C 46040402 */ mul.s $f16, $f0, $f4
/* 076D0 809403A0 3C073DCC */ lui $a3, 0x3DCC ## $a3 = 3DCC0000
/* 076D4 809403A4 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3DCCCCCD
/* 076D8 809403A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000001
/* 076DC 809403AC 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 076E0 809403B0 46068280 */ add.s $f10, $f16, $f6
/* 076E4 809403B4 44055000 */ mfc1 $a1, $f10
/* 076E8 809403B8 0C01E107 */ jal Math_ApproachF
/* 076EC 809403BC 00000000 */ nop
.L809403C0:
/* 076F0 809403C0 3C0D8095 */ lui $t5, %hi(sKoumePtr) ## $t5 = 80950000
/* 076F4 809403C4 8DADC848 */ lw $t5, %lo(sKoumePtr)($t5)
/* 076F8 809403C8 3C014188 */ lui $at, 0x4188 ## $at = 41880000
/* 076FC 809403CC 44814000 */ mtc1 $at, $f8 ## $f8 = 17.00
/* 07700 809403D0 C5B20028 */ lwc1 $f18, 0x0028($t5) ## 80950028
/* 07704 809403D4 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
/* 07708 809403D8 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
/* 0770C 809403DC 46089100 */ add.s $f4, $f18, $f8
/* 07710 809403E0 26440610 */ addiu $a0, $s2, 0x0610 ## $a0 = 00000610
/* 07714 809403E4 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 07718 809403E8 44052000 */ mfc1 $a1, $f4
/* 0771C 809403EC 0C01E107 */ jal Math_ApproachF
/* 07720 809403F0 00000000 */ nop
/* 07724 809403F4 864E0152 */ lh $t6, 0x0152($s2) ## 00000152
/* 07728 809403F8 264406A4 */ addiu $a0, $s2, 0x06A4 ## $a0 = 000006A4
/* 0772C 809403FC 3C0542DC */ lui $a1, 0x42DC ## $a1 = 42DC0000
/* 07730 80940400 29C10032 */ slti $at, $t6, 0x0032
/* 07734 80940404 1420002E */ bne $at, $zero, .L809404C0
/* 07738 80940408 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
/* 0773C 8094040C 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
/* 07740 80940410 0C01E107 */ jal Math_ApproachF
/* 07744 80940414 8E4706A0 */ lw $a3, 0x06A0($s2) ## 000006A0
/* 07748 80940418 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 0774C 8094041C 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 07750 80940420 3C073CCC */ lui $a3, 0x3CCC ## $a3 = 3CCC0000
/* 07754 80940424 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3CCCCCCD
/* 07758 80940428 44050000 */ mfc1 $a1, $f0
/* 0775C 8094042C 44060000 */ mfc1 $a2, $f0
/* 07760 80940430 0C01E107 */ jal Math_ApproachF
/* 07764 80940434 264406A0 */ addiu $a0, $s2, 0x06A0 ## $a0 = 000006A0
/* 07768 80940438 0C0400A4 */ jal sinf
/* 0776C 8094043C C64C06AC */ lwc1 $f12, 0x06AC($s2) ## 000006AC
/* 07770 80940440 C65006A4 */ lwc1 $f16, 0x06A4($s2) ## 000006A4
/* 07774 80940444 C64C06AC */ lwc1 $f12, 0x06AC($s2) ## 000006AC
/* 07778 80940448 46100182 */ mul.s $f6, $f0, $f16
/* 0777C 8094044C 0C041184 */ jal cosf
/* 07780 80940450 E6460600 */ swc1 $f6, 0x0600($s2) ## 00000600
/* 07784 80940454 C64A06A4 */ lwc1 $f10, 0x06A4($s2) ## 000006A4
/* 07788 80940458 86420152 */ lh $v0, 0x0152($s2) ## 00000152
/* 0778C 8094045C 460A0482 */ mul.s $f18, $f0, $f10
/* 07790 80940460 28410097 */ slti $at, $v0, 0x0097
/* 07794 80940464 14200016 */ bne $at, $zero, .L809404C0
/* 07798 80940468 E6520608 */ swc1 $f18, 0x0608($s2) ## 00000608
/* 0779C 8094046C C64806AC */ lwc1 $f8, 0x06AC($s2) ## 000006AC
/* 077A0 80940470 C64406B0 */ lwc1 $f4, 0x06B0($s2) ## 000006B0
/* 077A4 80940474 28410320 */ slti $at, $v0, 0x0320
/* 077A8 80940478 3C053C75 */ lui $a1, 0x3C75 ## $a1 = 3C750000
/* 077AC 8094047C 46044400 */ add.s $f16, $f8, $f4
/* 077B0 80940480 34A5C28F */ ori $a1, $a1, 0xC28F ## $a1 = 3C75C28F
/* 077B4 80940484 264406B0 */ addiu $a0, $s2, 0x06B0 ## $a0 = 000006B0
/* 077B8 80940488 14200009 */ bne $at, $zero, .L809404B0
/* 077BC 8094048C E65006AC */ swc1 $f16, 0x06AC($s2) ## 000006AC
/* 077C0 80940490 3C0738D1 */ lui $a3, 0x38D1 ## $a3 = 38D10000
/* 077C4 80940494 34E7B717 */ ori $a3, $a3, 0xB717 ## $a3 = 38D1B717
/* 077C8 80940498 264406B0 */ addiu $a0, $s2, 0x06B0 ## $a0 = 000006B0
/* 077CC 8094049C 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 077D0 809404A0 0C01E107 */ jal Math_ApproachF
/* 077D4 809404A4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 077D8 809404A8 10000005 */ beq $zero, $zero, .L809404C0
/* 077DC 809404AC 00000000 */ nop
.L809404B0:
/* 077E0 809404B0 3C0738D1 */ lui $a3, 0x38D1 ## $a3 = 38D10000
/* 077E4 809404B4 34E7B717 */ ori $a3, $a3, 0xB717 ## $a3 = 38D1B717
/* 077E8 809404B8 0C01E107 */ jal Math_ApproachF
/* 077EC 809404BC 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
.L809404C0:
/* 077F0 809404C0 3C048095 */ lui $a0, %hi(sKoumePtr) ## $a0 = 80950000
/* 077F4 809404C4 8C84C848 */ lw $a0, %lo(sKoumePtr)($a0)
/* 077F8 809404C8 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 077FC 809404CC 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 07800 809404D0 3C073A83 */ lui $a3, 0x3A83 ## $a3 = 3A830000
/* 07804 809404D4 34E7126F */ ori $a3, $a3, 0x126F ## $a3 = 3A83126F
/* 07808 809404D8 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 0780C 809404DC 34A5D709 */ ori $a1, $a1, 0xD709 ## $a1 = 3C23D709
/* 07810 809404E0 0C01E107 */ jal Math_ApproachF
/* 07814 809404E4 24840050 */ addiu $a0, $a0, 0x0050 ## $a0 = 80950050
/* 07818 809404E8 3C048095 */ lui $a0, %hi(sKoumePtr) ## $a0 = 80950000
/* 0781C 809404EC 8C84C848 */ lw $a0, %lo(sKoumePtr)($a0)
/* 07820 809404F0 0C00B58B */ jal Actor_SetScale
/* 07824 809404F4 8C850050 */ lw $a1, 0x0050($a0) ## 80950050
/* 07828 809404F8 3C0F8095 */ lui $t7, %hi(sKoumePtr) ## $t7 = 80950000
/* 0782C 809404FC 8DEFC848 */ lw $t7, %lo(sKoumePtr)($t7)
/* 07830 80940500 3C048095 */ lui $a0, %hi(sKotakePtr) ## $a0 = 80950000
/* 07834 80940504 8C84C844 */ lw $a0, %lo(sKotakePtr)($a0)
/* 07838 80940508 0C00B58B */ jal Actor_SetScale
/* 0783C 8094050C 8DE50050 */ lw $a1, 0x0050($t7) ## 80950050
/* 07840 80940510 864C0152 */ lh $t4, 0x0152($s2) ## 00000152
/* 07844 80940514 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 07848 80940518 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 0784C 8094051C 298103FC */ slti $at, $t4, 0x03FC
/* 07850 80940520 5420005E */ bnel $at, $zero, .L8094069C
/* 07854 80940524 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
/* 07858 80940528 0C030129 */ jal Gameplay_GetCamera
/* 0785C 8094052C 26701C24 */ addiu $s0, $s3, 0x1C24 ## $s0 = 00001C24
/* 07860 80940530 26510600 */ addiu $s1, $s2, 0x0600 ## $s1 = 00000600
/* 07864 80940534 8E390000 */ lw $t9, 0x0000($s1) ## 00000600
/* 07868 80940538 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 0786C 8094053C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 07870 80940540 AC59005C */ sw $t9, 0x005C($v0) ## 0000005C
/* 07874 80940544 8E380004 */ lw $t8, 0x0004($s1) ## 00000604
/* 07878 80940548 AC580060 */ sw $t8, 0x0060($v0) ## 00000060
/* 0787C 8094054C 8E390008 */ lw $t9, 0x0008($s1) ## 00000608
/* 07880 80940550 AC590064 */ sw $t9, 0x0064($v0) ## 00000064
/* 07884 80940554 8E290000 */ lw $t1, 0x0000($s1) ## 00000600
/* 07888 80940558 AC490074 */ sw $t1, 0x0074($v0) ## 00000074
/* 0788C 8094055C 8E280004 */ lw $t0, 0x0004($s1) ## 00000604
/* 07890 80940560 AC480078 */ sw $t0, 0x0078($v0) ## 00000078
/* 07894 80940564 8E290008 */ lw $t1, 0x0008($s1) ## 00000608
/* 07898 80940568 AC49007C */ sw $t1, 0x007C($v0) ## 0000007C
/* 0789C 8094056C 8E4B060C */ lw $t3, 0x060C($s2) ## 0000060C
/* 078A0 80940570 AC4B0050 */ sw $t3, 0x0050($v0) ## 00000050
/* 078A4 80940574 8E4A0610 */ lw $t2, 0x0610($s2) ## 00000610
/* 078A8 80940578 AC4A0054 */ sw $t2, 0x0054($v0) ## 00000054
/* 078AC 8094057C 8E4B0614 */ lw $t3, 0x0614($s2) ## 00000614
/* 078B0 80940580 AC4B0058 */ sw $t3, 0x0058($v0) ## 00000058
/* 078B4 80940584 0C03022B */ jal func_800C08AC
/* 078B8 80940588 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
/* 078BC 8094058C 240D0004 */ addiu $t5, $zero, 0x0004 ## $t5 = 00000004
/* 078C0 80940590 A64D05FA */ sh $t5, 0x05FA($s2) ## 000005FA
/* 078C4 80940594 A64005FC */ sh $zero, 0x05FC($s2) ## 000005FC
/* 078C8 80940598 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 078CC 8094059C 0C01914D */ jal func_80064534
/* 078D0 809405A0 26651D64 */ addiu $a1, $s3, 0x1D64 ## $a1 = 00001D64
/* 078D4 809405A4 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 078D8 809405A8 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 078DC 809405AC 0C00B7D5 */ jal func_8002DF54
/* 078E0 809405B0 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
/* 078E4 809405B4 0C03E803 */ jal Audio_QueueSeqCmd
/* 078E8 809405B8 24040021 */ addiu $a0, $zero, 0x0021 ## $a0 = 00000021
/* 078EC 809405BC 3C014416 */ lui $at, 0x4416 ## $at = 44160000
/* 078F0 809405C0 44813000 */ mtc1 $at, $f6 ## $f6 = 600.00
/* 078F4 809405C4 3C014366 */ lui $at, 0x4366 ## $at = 43660000
/* 078F8 809405C8 44815000 */ mtc1 $at, $f10 ## $f10 = 230.00
/* 078FC 809405CC 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 07900 809405D0 240EFFFF */ addiu $t6, $zero, 0xFFFF ## $t6 = FFFFFFFF
/* 07904 809405D4 AFAE0028 */ sw $t6, 0x0028($sp)
/* 07908 809405D8 02002025 */ or $a0, $s0, $zero ## $a0 = 00001C24
/* 0790C 809405DC 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 07910 809405E0 02603025 */ or $a2, $s3, $zero ## $a2 = 00000000
/* 07914 809405E4 2407005D */ addiu $a3, $zero, 0x005D ## $a3 = 0000005D
/* 07918 809405E8 AFA0001C */ sw $zero, 0x001C($sp)
/* 0791C 809405EC AFA00020 */ sw $zero, 0x0020($sp)
/* 07920 809405F0 AFA00024 */ sw $zero, 0x0024($sp)
/* 07924 809405F4 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 07928 809405F8 E7AA0014 */ swc1 $f10, 0x0014($sp)
/* 0792C 809405FC 0C00C916 */ jal Actor_SpawnAsChild
/* 07930 80940600 E7B20018 */ swc1 $f18, 0x0018($sp)
/* 07934 80940604 3C014366 */ lui $at, 0x4366 ## $at = 43660000
/* 07938 80940608 44814000 */ mtc1 $at, $f8 ## $f8 = 230.00
/* 0793C 8094060C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 07940 80940610 02002025 */ or $a0, $s0, $zero ## $a0 = 00001C24
/* 07944 80940614 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000
/* 07948 80940618 2406005F */ addiu $a2, $zero, 0x005F ## $a2 = 0000005F
/* 0794C 8094061C 3C07C416 */ lui $a3, 0xC416 ## $a3 = C4160000
/* 07950 80940620 AFA00018 */ sw $zero, 0x0018($sp)
/* 07954 80940624 AFA0001C */ sw $zero, 0x001C($sp)
/* 07958 80940628 AFA00020 */ sw $zero, 0x0020($sp)
/* 0795C 8094062C AFA00024 */ sw $zero, 0x0024($sp)
/* 07960 80940630 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 07964 80940634 0C00C7D4 */ jal Actor_Spawn
## ActorSpawn
/* 07968 80940638 E7A40014 */ swc1 $f4, 0x0014($sp)
/* 0796C 8094063C 3C01C4FA */ lui $at, 0xC4FA ## $at = C4FA0000
/* 07970 80940640 44818000 */ mtc1 $at, $f16 ## $f16 = -2000.00
/* 07974 80940644 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 07978 80940648 3C038095 */ lui $v1, %hi(sKotakePtr) ## $v1 = 80950000
/* 0797C 8094064C 2463C844 */ addiu $v1, $v1, %lo(sKotakePtr) ## $v1 = 8094C844
/* 07980 80940650 E6500028 */ swc1 $f16, 0x0028($s2) ## 00000028
/* 07984 80940654 E64601CC */ swc1 $f6, 0x01CC($s2) ## 000001CC
/* 07988 80940658 8C6F0000 */ lw $t7, 0x0000($v1) ## 8094C844
/* 0798C 8094065C 3C198095 */ lui $t9, %hi(sKoumePtr) ## $t9 = 80950000
/* 07990 80940660 3C050001 */ lui $a1, 0x0001 ## $a1 = 00010000
/* 07994 80940664 A1E00564 */ sb $zero, 0x0564($t7) ## 00000564
/* 07998 80940668 8C6C0000 */ lw $t4, 0x0000($v1) ## 8094C844
/* 0799C 8094066C 8F39C848 */ lw $t9, %lo(sKoumePtr)($t9)
/* 079A0 80940670 00B32821 */ addu $a1, $a1, $s3
/* 079A4 80940674 91980564 */ lbu $t8, 0x0564($t4) ## 00000564
/* 079A8 80940678 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 079AC 8094067C A3380564 */ sb $t8, 0x0564($t9) ## 80950564
/* 079B0 80940680 0C00B33C */ jal Flags_SetClear
/* 079B4 80940684 80A51CBC */ lb $a1, 0x1CBC($a1) ## 00011CBC
/* 079B8 80940688 10000004 */ beq $zero, $zero, .L8094069C
/* 079BC 8094068C 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
glabel L80940690
/* 079C0 80940690 3C018095 */ lui $at, %hi(sEnvType) ## $at = 80950000
/* 079C4 80940694 A020C840 */ sb $zero, %lo(sEnvType)($at)
.L80940698:
/* 079C8 80940698 864505FC */ lh $a1, 0x05FC($s2) ## 000005FC
.L8094069C:
/* 079CC 8094069C 26470600 */ addiu $a3, $s2, 0x0600 ## $a3 = 00000600
/* 079D0 809406A0 2646060C */ addiu $a2, $s2, 0x060C ## $a2 = 0000060C
/* 079D4 809406A4 50A00004 */ beql $a1, $zero, .L809406B8
/* 079D8 809406A8 8FBF004C */ lw $ra, 0x004C($sp)
/* 079DC 809406AC 0C030136 */ jal Gameplay_CameraSetAtEye
/* 079E0 809406B0 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 079E4 809406B4 8FBF004C */ lw $ra, 0x004C($sp)
.L809406B8:
/* 079E8 809406B8 D7B40030 */ ldc1 $f20, 0x0030($sp)
/* 079EC 809406BC 8FB0003C */ lw $s0, 0x003C($sp)
/* 079F0 809406C0 8FB10040 */ lw $s1, 0x0040($sp)
/* 079F4 809406C4 8FB20044 */ lw $s2, 0x0044($sp)
/* 079F8 809406C8 8FB30048 */ lw $s3, 0x0048($sp)
/* 079FC 809406CC 03E00008 */ jr $ra
/* 07A00 809406D0 27BD00E0 */ addiu $sp, $sp, 0x00E0 ## $sp = 00000000

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_8094B230
.incbin "baserom/ovl_Boss_Tw", 0x12560, 0x00001610

4
spec
View file

@ -1429,11 +1429,7 @@ endseg
beginseg
name "ovl_Boss_Tw"
include "build/src/overlays/actors/ovl_Boss_Tw/z_boss_tw.o"
#ifdef NON_MATCHING
include "build/src/overlays/actors/ovl_Boss_Tw/ovl_Boss_Tw_reloc.o"
#else
include "build/data/overlays/actors/z_boss_tw.reloc.o"
#endif
endseg
beginseg

View file

@ -2604,10 +2604,9 @@ void BossTw_DeathCSMsgSfx(BossTw* this, GlobalContext* globalCtx) {
}
}
#ifdef NON_MATCHING
void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
s16 i;
Vec3f spD8;
Vec3f spD0;
Player* player = PLAYER;
Camera* mainCam = Gameplay_GetCamera(globalCtx, MAIN_CAM);
@ -2695,11 +2694,11 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
Audio_QueueSeqCmd(0x100100FF);
break;
case 1:
spD8.x = Math_SinS(this->actor.world.rot.y) * 200.0f;
spD8.z = Math_CosS(this->actor.world.rot.y) * 200.0f;
Math_ApproachF(&this->subCamEye.x, spD8.x + this->actor.world.pos.x, 0.1f, 50.0f);
spD0.x = Math_SinS(this->actor.world.rot.y) * 200.0f;
spD0.z = Math_CosS(this->actor.world.rot.y) * 200.0f;
Math_ApproachF(&this->subCamEye.x, spD0.x + this->actor.world.pos.x, 0.1f, 50.0f);
Math_ApproachF(&this->subCamEye.y, 300.0f, 0.1f, 50.0f);
Math_ApproachF(&this->subCamEye.z, spD8.z + this->actor.world.pos.z, 0.1f, 50.0f);
Math_ApproachF(&this->subCamEye.z, spD0.z + this->actor.world.pos.z, 0.1f, 50.0f);
Math_ApproachF(&this->subCamAt.x, this->actor.world.pos.x, 0.1f, 50.0f);
Math_ApproachF(&this->subCamAt.y, this->actor.world.pos.y, 0.1f, 50.0f);
Math_ApproachF(&this->subCamAt.z, this->actor.world.pos.z, 0.1f, 50.0f);
@ -2734,6 +2733,7 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
Vec3f pos;
Vec3f velocity;
Vec3f accel = { 0.0f, 0.0f, 0.0f };
s32 zero = 0;
for (i = 0; i < 50; i++) {
velocity.x = Rand_CenteredFloat(3.0f);
@ -2744,6 +2744,13 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
pos.y += velocity.y * 2.0f;
pos.z += velocity.z * 2.0f;
BossTw_AddFlameEffect(globalCtx, &pos, &velocity, &accel, Rand_ZeroFloat(2.0f) + 5, 1);
// fake code needed to match, tricks the compiler into allocating more stack
if (1) {}
if (zero) {
accel.x *= 2.0;
}
velocity.x = Rand_CenteredFloat(3.0f);
velocity.y = Rand_CenteredFloat(3.0f);
velocity.z = Rand_CenteredFloat(3.0f);
@ -2753,6 +2760,7 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
pos.z += velocity.z * 2.0f;
BossTw_AddFlameEffect(globalCtx, &pos, &velocity, &accel, Rand_ZeroFloat(2.0f) + 5, 0);
}
Actor_SetScale(&sKoumePtr->actor, 0.0f);
Actor_SetScale(&sKotakePtr->actor, 0.0f);
sKoumePtr->visible = 1;
@ -2797,11 +2805,10 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
Actor_SetScale(&sKoumePtr->actor, sKoumePtr->actor.scale.x);
Actor_SetScale(&sKotakePtr->actor, sKoumePtr->actor.scale.x);
if (this->work[CS_TIMER_2] >= 1020) {
Camera* cam = Gameplay_GetCamera(globalCtx, MAIN_CAM);
cam->eye = this->subCamEye;
cam->eyeNext = this->subCamEye;
cam->at = this->subCamAt;
mainCam = Gameplay_GetCamera(globalCtx, MAIN_CAM);
mainCam->eye = this->subCamEye;
mainCam->eyeNext = this->subCamEye;
mainCam->at = this->subCamAt;
func_800C08AC(globalCtx, this->subCamId, 0);
this->csState2 = 4;
this->subCamId = 0;
@ -2828,11 +2835,6 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
Gameplay_CameraSetAtEye(globalCtx, this->subCamId, &this->subCamAt, &this->subCamEye);
}
}
#else
Vec3f D_8094A8E8 = { 0.0f, 0.0f, 0.0f };
Vec3f D_8094A8F4 = { 0.0f, 0.0f, 0.0f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Boss_Tw/BossTw_TwinrovaDeathCS.s")
#endif
static s16 D_8094A900[] = {
0, 1, 2, 2, 1,