mirror of https://github.com/n64decomp/mk64.git
945 lines
46 KiB
ArmAsm
945 lines
46 KiB
ArmAsm
.section .late_rodata
|
|
|
|
glabel jpt_800ED008
|
|
.word L8000E1F4, L8000E45C, L8000E618, L8000E968
|
|
.word L8000E634
|
|
|
|
glabel D_800ED01C
|
|
.float -2409.197021
|
|
|
|
glabel D_800ED020
|
|
.float -355.253998
|
|
|
|
glabel D_800ED024
|
|
.float 0.01
|
|
|
|
glabel D_800ED028
|
|
.double -1000.0
|
|
|
|
glabel D_800ED030
|
|
.float 0.3
|
|
|
|
glabel D_800ED034
|
|
.float 2.3
|
|
|
|
glabel D_800ED038
|
|
.float 2.3
|
|
|
|
glabel D_800ED03C
|
|
.float 0.15
|
|
|
|
.section .text
|
|
|
|
glabel func_8000DF8C
|
|
/* 00EB8C 8000DF8C 00047880 */ sll $t7, $a0, 2
|
|
/* 00EB90 8000DF90 01E47821 */ addu $t7, $t7, $a0
|
|
/* 00EB94 8000DF94 27BDFEE0 */ addiu $sp, $sp, -0x120
|
|
/* 00EB98 8000DF98 000F7880 */ sll $t7, $t7, 2
|
|
/* 00EB9C 8000DF9C 01E47821 */ addu $t7, $t7, $a0
|
|
/* 00EBA0 8000DFA0 3C188016 */ lui $t8, %hi(gBombKarts) # $t8, 0x8016
|
|
/* 00EBA4 8000DFA4 AFB00034 */ sw $s0, 0x34($sp)
|
|
/* 00EBA8 8000DFA8 27183DE8 */ addiu $t8, %lo(gBombKarts) # addiu $t8, $t8, 0x3de8
|
|
/* 00EBAC 8000DFAC 000F7880 */ sll $t7, $t7, 2
|
|
/* 00EBB0 8000DFB0 01F88021 */ addu $s0, $t7, $t8
|
|
/* 00EBB4 8000DFB4 96190044 */ lhu $t9, 0x44($s0)
|
|
/* 00EBB8 8000DFB8 AFBF003C */ sw $ra, 0x3c($sp)
|
|
/* 00EBBC 8000DFBC AFB10038 */ sw $s1, 0x38($sp)
|
|
/* 00EBC0 8000DFC0 332AFFFF */ andi $t2, $t9, 0xffff
|
|
/* 00EBC4 8000DFC4 F7B80028 */ sdc1 $f24, 0x28($sp)
|
|
/* 00EBC8 8000DFC8 F7B60020 */ sdc1 $f22, 0x20($sp)
|
|
/* 00EBCC 8000DFCC F7B40018 */ sdc1 $f20, 0x18($sp)
|
|
/* 00EBD0 8000DFD0 AFA40120 */ sw $a0, 0x120($sp)
|
|
/* 00EBD4 8000DFD4 AFAA004C */ sw $t2, 0x4c($sp)
|
|
/* 00EBD8 8000DFD8 11400346 */ beqz $t2, .L8000ECF4
|
|
/* 00EBDC 8000DFDC A7B9007E */ sh $t9, 0x7e($sp)
|
|
/* 00EBE0 8000DFE0 960B004A */ lhu $t3, 0x4a($s0)
|
|
/* 00EBE4 8000DFE4 24030001 */ li $v1, 1
|
|
/* 00EBE8 8000DFE8 3C09800E */ lui $t1, %hi(gCurrentCourseId)
|
|
/* 00EBEC 8000DFEC 146B0005 */ bne $v1, $t3, .L8000E004
|
|
/* 00EBF0 8000DFF0 2529C5A0 */ addiu $t1, %lo(gCurrentCourseId) # addiu $t1, $t1, -0x3a60
|
|
/* 00EBF4 8000DFF4 852C0000 */ lh $t4, ($t1)
|
|
/* 00EBF8 8000DFF8 24010014 */ li $at, 20
|
|
/* 00EBFC 8000DFFC 5581033E */ bnel $t4, $at, .L8000ECF8
|
|
/* 00EC00 8000E000 8FBF003C */ lw $ra, 0x3c($sp)
|
|
.L8000E004:
|
|
/* 00EC04 8000E004 960D0042 */ lhu $t5, 0x42($s0)
|
|
/* 00EC08 8000E008 C6160000 */ lwc1 $f22, ($s0)
|
|
/* 00EC0C 8000E00C C6140004 */ lwc1 $f20, 4($s0)
|
|
/* 00EC10 8000E010 C6180008 */ lwc1 $f24, 8($s0)
|
|
/* 00EC14 8000E014 A7AD00CA */ sh $t5, 0xca($sp)
|
|
/* 00EC18 8000E018 C604003C */ lwc1 $f4, 0x3c($s0)
|
|
/* 00EC1C 8000E01C 8FB8004C */ lw $t8, 0x4c($sp)
|
|
/* 00EC20 8000E020 3C09800E */ lui $t1, %hi(gCurrentCourseId)
|
|
/* 00EC24 8000E024 E7A400C4 */ swc1 $f4, 0xc4($sp)
|
|
/* 00EC28 8000E028 960E0040 */ lhu $t6, 0x40($s0)
|
|
/* 00EC2C 8000E02C 2529C5A0 */ addiu $t1, %lo(gCurrentCourseId) # addiu $t1, $t1, -0x3a60
|
|
/* 00EC30 8000E030 24010004 */ li $at, 4
|
|
/* 00EC34 8000E034 A7AE00C2 */ sh $t6, 0xc2($sp)
|
|
/* 00EC38 8000E038 960F0046 */ lhu $t7, 0x46($s0)
|
|
/* 00EC3C 8000E03C A7AF007C */ sh $t7, 0x7c($sp)
|
|
/* 00EC40 8000E040 13000062 */ beqz $t8, .L8000E1CC
|
|
/* 00EC44 8000E044 96110048 */ lhu $s1, 0x48($s0)
|
|
/* 00EC48 8000E048 53010061 */ beql $t8, $at, .L8000E1D0
|
|
/* 00EC4C 8000E04C 8FB9004C */ lw $t9, 0x4c($sp)
|
|
/* 00EC50 8000E050 85220000 */ lh $v0, ($t1)
|
|
/* 00EC54 8000E054 24010014 */ li $at, 20
|
|
/* 00EC58 8000E058 3C198016 */ lui $t9, %hi(D_8016347E) # $t9, 0x8016
|
|
/* 00EC5C 8000E05C 14410025 */ bne $v0, $at, .L8000E0F4
|
|
/* 00EC60 8000E060 00000000 */ nop
|
|
/* 00EC64 8000E064 8739347E */ lh $t9, %lo(D_8016347E)($t9)
|
|
/* 00EC68 8000E068 54790059 */ bnel $v1, $t9, .L8000E1D0
|
|
/* 00EC6C 8000E06C 8FB9004C */ lw $t9, 0x4c($sp)
|
|
/* 00EC70 8000E070 3C02800E */ lui $v0, %hi(gPlayerFour)
|
|
/* 00EC74 8000E074 8C42C4E8 */ lw $v0, %lo(gPlayerFour)($v0)
|
|
/* 00EC78 8000E078 3C0141C8 */ li $at, 0x41C80000 # 25.000000
|
|
/* 00EC7C 8000E07C 44817000 */ mtc1 $at, $f14
|
|
/* 00EC80 8000E080 C4460014 */ lwc1 $f6, 0x14($v0)
|
|
/* 00EC84 8000E084 C4480018 */ lwc1 $f8, 0x18($v0)
|
|
/* 00EC88 8000E088 C44A001C */ lwc1 $f10, 0x1c($v0)
|
|
/* 00EC8C 8000E08C 4606B001 */ sub.s $f0, $f22, $f6
|
|
/* 00EC90 8000E090 240A0004 */ li $t2, 4
|
|
/* 00EC94 8000E094 2401DFFF */ li $at, -8193
|
|
/* 00EC98 8000E098 4608A081 */ sub.s $f2, $f20, $f8
|
|
/* 00EC9C 8000E09C 46000102 */ mul.s $f4, $f0, $f0
|
|
/* 00ECA0 8000E0A0 460AC301 */ sub.s $f12, $f24, $f10
|
|
/* 00ECA4 8000E0A4 46021182 */ mul.s $f6, $f2, $f2
|
|
/* 00ECA8 8000E0A8 46062200 */ add.s $f8, $f4, $f6
|
|
/* 00ECAC 8000E0AC 460C6282 */ mul.s $f10, $f12, $f12
|
|
/* 00ECB0 8000E0B0 460A4100 */ add.s $f4, $f8, $f10
|
|
/* 00ECB4 8000E0B4 460E203C */ c.lt.s $f4, $f14
|
|
/* 00ECB8 8000E0B8 00000000 */ nop
|
|
/* 00ECBC 8000E0BC 45020044 */ bc1fl .L8000E1D0
|
|
/* 00ECC0 8000E0C0 8FB9004C */ lw $t9, 0x4c($sp)
|
|
/* 00ECC4 8000E0C4 A7AA007E */ sh $t2, 0x7e($sp)
|
|
/* 00ECC8 8000E0C8 8C4B000C */ lw $t3, 0xc($v0)
|
|
/* 00ECCC 8000E0CC 944D0000 */ lhu $t5, ($v0)
|
|
/* 00ECD0 8000E0D0 3C050040 */ lui $a1, 0x40
|
|
/* 00ECD4 8000E0D4 01656025 */ or $t4, $t3, $a1
|
|
/* 00ECD8 8000E0D8 01A17024 */ and $t6, $t5, $at
|
|
/* 00ECDC 8000E0DC AC4C000C */ sw $t4, 0xc($v0)
|
|
/* 00ECE0 8000E0E0 A44E0000 */ sh $t6, ($v0)
|
|
/* 00ECE4 8000E0E4 240F0004 */ li $t7, 4
|
|
/* 00ECE8 8000E0E8 00008825 */ move $s1, $zero
|
|
/* 00ECEC 8000E0EC 10000037 */ b .L8000E1CC
|
|
/* 00ECF0 8000E0F0 AFAF004C */ sw $t7, 0x4c($sp)
|
|
.L8000E0F4:
|
|
/* 00ECF4 8000E0F4 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
|
/* 00ECF8 8000E0F8 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
|
/* 00ECFC 8000E0FC 00002025 */ move $a0, $zero
|
|
/* 00ED00 8000E100 3C0141C8 */ li $at, 0x41C80000 # 25.000000
|
|
/* 00ED04 8000E104 58600032 */ blezl $v1, .L8000E1D0
|
|
/* 00ED08 8000E108 8FB9004C */ lw $t9, 0x4c($sp)
|
|
/* 00ED0C 8000E10C 3C02800F */ lui $v0, %hi(gPlayers) # $v0, 0x800f
|
|
/* 00ED10 8000E110 44817000 */ mtc1 $at, $f14
|
|
/* 00ED14 8000E114 24426990 */ addiu $v0, %lo(gPlayers) # addiu $v0, $v0, 0x6990
|
|
/* 00ED18 8000E118 3C080100 */ lui $t0, 0x100
|
|
/* 00ED1C 8000E11C 24070005 */ li $a3, 5
|
|
/* 00ED20 8000E120 3C068000 */ lui $a2, 0x8000
|
|
/* 00ED24 8000E124 3C050040 */ lui $a1, 0x40
|
|
.L8000E128:
|
|
/* 00ED28 8000E128 8C5800BC */ lw $t8, 0xbc($v0)
|
|
/* 00ED2C 8000E12C 24840001 */ addiu $a0, $a0, 1
|
|
/* 00ED30 8000E130 0306C824 */ and $t9, $t8, $a2
|
|
/* 00ED34 8000E134 57200021 */ bnel $t9, $zero, .L8000E1BC
|
|
/* 00ED38 8000E138 0083082A */ slt $at, $a0, $v1
|
|
/* 00ED3C 8000E13C C4460014 */ lwc1 $f6, 0x14($v0)
|
|
/* 00ED40 8000E140 C4480018 */ lwc1 $f8, 0x18($v0)
|
|
/* 00ED44 8000E144 C44A001C */ lwc1 $f10, 0x1c($v0)
|
|
/* 00ED48 8000E148 4606B001 */ sub.s $f0, $f22, $f6
|
|
/* 00ED4C 8000E14C 4608A081 */ sub.s $f2, $f20, $f8
|
|
/* 00ED50 8000E150 46000102 */ mul.s $f4, $f0, $f0
|
|
/* 00ED54 8000E154 460AC301 */ sub.s $f12, $f24, $f10
|
|
/* 00ED58 8000E158 46021182 */ mul.s $f6, $f2, $f2
|
|
/* 00ED5C 8000E15C 46062200 */ add.s $f8, $f4, $f6
|
|
/* 00ED60 8000E160 460C6282 */ mul.s $f10, $f12, $f12
|
|
/* 00ED64 8000E164 460A4100 */ add.s $f4, $f8, $f10
|
|
/* 00ED68 8000E168 460E203C */ c.lt.s $f4, $f14
|
|
/* 00ED6C 8000E16C 00000000 */ nop
|
|
/* 00ED70 8000E170 45020012 */ bc1fl .L8000E1BC
|
|
/* 00ED74 8000E174 0083082A */ slt $at, $a0, $v1
|
|
/* 00ED78 8000E178 852B0000 */ lh $t3, ($t1)
|
|
/* 00ED7C 8000E17C 240A0004 */ li $t2, 4
|
|
/* 00ED80 8000E180 A7AA007E */ sh $t2, 0x7e($sp)
|
|
/* 00ED84 8000E184 14EB0007 */ bne $a3, $t3, .L8000E1A4
|
|
/* 00ED88 8000E188 00008825 */ move $s1, $zero
|
|
/* 00ED8C 8000E18C 8C4C000C */ lw $t4, 0xc($v0)
|
|
/* 00ED90 8000E190 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
|
/* 00ED94 8000E194 01886825 */ or $t5, $t4, $t0
|
|
/* 00ED98 8000E198 AC4D000C */ sw $t5, 0xc($v0)
|
|
/* 00ED9C 8000E19C 10000006 */ b .L8000E1B8
|
|
/* 00EDA0 8000E1A0 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
|
.L8000E1A4:
|
|
/* 00EDA4 8000E1A4 8C4E000C */ lw $t6, 0xc($v0)
|
|
/* 00EDA8 8000E1A8 3C038019 */ lui $v1, %hi(gPlayerCount) # $v1, 0x8019
|
|
/* 00EDAC 8000E1AC 01C57825 */ or $t7, $t6, $a1
|
|
/* 00EDB0 8000E1B0 AC4F000C */ sw $t7, 0xc($v0)
|
|
/* 00EDB4 8000E1B4 8063EDF3 */ lb $v1, %lo(gPlayerCount)($v1)
|
|
.L8000E1B8:
|
|
/* 00EDB8 8000E1B8 0083082A */ slt $at, $a0, $v1
|
|
.L8000E1BC:
|
|
/* 00EDBC 8000E1BC 1420FFDA */ bnez $at, .L8000E128
|
|
/* 00EDC0 8000E1C0 24420DD8 */ addiu $v0, $v0, 0xdd8
|
|
/* 00EDC4 8000E1C4 97B8007E */ lhu $t8, 0x7e($sp)
|
|
/* 00EDC8 8000E1C8 AFB8004C */ sw $t8, 0x4c($sp)
|
|
.L8000E1CC:
|
|
/* 00EDCC 8000E1CC 8FB9004C */ lw $t9, 0x4c($sp)
|
|
.L8000E1D0:
|
|
/* 00EDD0 8000E1D0 272AFFFF */ addiu $t2, $t9, -1
|
|
/* 00EDD4 8000E1D4 2D410005 */ sltiu $at, $t2, 5
|
|
/* 00EDD8 8000E1D8 10200231 */ beqz $at, .L8000EAA0
|
|
/* 00EDDC 8000E1DC 000A5080 */ sll $t2, $t2, 2
|
|
/* 00EDE0 8000E1E0 3C01800F */ lui $at, %hi(jpt_800ED008)
|
|
/* 00EDE4 8000E1E4 002A0821 */ addu $at, $at, $t2
|
|
/* 00EDE8 8000E1E8 8C2AD008 */ lw $t2, %lo(jpt_800ED008)($at)
|
|
/* 00EDEC 8000E1EC 01400008 */ jr $t2
|
|
/* 00EDF0 8000E1F0 00000000 */ nop
|
|
glabel L8000E1F4
|
|
/* 00EDF4 8000E1F4 24030168 */ li $v1, 360
|
|
/* 00EDF8 8000E1F8 262B0164 */ addiu $t3, $s1, 0x164
|
|
/* 00EDFC 8000E1FC 0163001A */ div $zero, $t3, $v1
|
|
/* 00EE00 8000E200 00008810 */ mfhi $s1
|
|
/* 00EE04 8000E204 322CFFFF */ andi $t4, $s1, 0xffff
|
|
/* 00EE08 8000E208 000C6C00 */ sll $t5, $t4, 0x10
|
|
/* 00EE0C 8000E20C 01AC6823 */ subu $t5, $t5, $t4
|
|
/* 00EE10 8000E210 01A3001A */ div $zero, $t5, $v1
|
|
/* 00EE14 8000E214 14600002 */ bnez $v1, .L8000E220
|
|
/* 00EE18 8000E218 00000000 */ nop
|
|
/* 00EE1C 8000E21C 0007000D */ break 7
|
|
.L8000E220:
|
|
/* 00EE20 8000E220 2401FFFF */ li $at, -1
|
|
/* 00EE24 8000E224 14610004 */ bne $v1, $at, .L8000E238
|
|
/* 00EE28 8000E228 3C018000 */ lui $at, 0x8000
|
|
/* 00EE2C 8000E22C 15610002 */ bne $t3, $at, .L8000E238
|
|
/* 00EE30 8000E230 00000000 */ nop
|
|
/* 00EE34 8000E234 0006000D */ break 6
|
|
.L8000E238:
|
|
/* 00EE38 8000E238 00002012 */ mflo $a0
|
|
/* 00EE3C 8000E23C 308EFFFF */ andi $t6, $a0, 0xffff
|
|
/* 00EE40 8000E240 01801025 */ move $v0, $t4
|
|
/* 00EE44 8000E244 01808825 */ move $s1, $t4
|
|
/* 00EE48 8000E248 14600002 */ bnez $v1, .L8000E254
|
|
/* 00EE4C 8000E24C 00000000 */ nop
|
|
/* 00EE50 8000E250 0007000D */ break 7
|
|
.L8000E254:
|
|
/* 00EE54 8000E254 2401FFFF */ li $at, -1
|
|
/* 00EE58 8000E258 14610004 */ bne $v1, $at, .L8000E26C
|
|
/* 00EE5C 8000E25C 3C018000 */ lui $at, 0x8000
|
|
/* 00EE60 8000E260 15A10002 */ bne $t5, $at, .L8000E26C
|
|
/* 00EE64 8000E264 00000000 */ nop
|
|
/* 00EE68 8000E268 0006000D */ break 6
|
|
.L8000E26C:
|
|
/* 00EE6C 8000E26C AFA20048 */ sw $v0, 0x48($sp)
|
|
/* 00EE70 8000E270 01C02025 */ move $a0, $t6
|
|
/* 00EE74 8000E274 0C0AE00E */ jal coss
|
|
/* 00EE78 8000E278 AFAE0044 */ sw $t6, 0x44($sp)
|
|
/* 00EE7C 8000E27C 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00EE80 8000E280 44814800 */ mtc1 $at, $f9
|
|
/* 00EE84 8000E284 44804000 */ mtc1 $zero, $f8
|
|
/* 00EE88 8000E288 460001A1 */ cvt.d.s $f6, $f0
|
|
/* 00EE8C 8000E28C 8FA40044 */ lw $a0, 0x44($sp)
|
|
/* 00EE90 8000E290 46283282 */ mul.d $f10, $f6, $f8
|
|
/* 00EE94 8000E294 46205120 */ cvt.s.d $f4, $f10
|
|
/* 00EE98 8000E298 0C0AE006 */ jal sins
|
|
/* 00EE9C 8000E29C E7A40118 */ swc1 $f4, 0x118($sp)
|
|
/* 00EEA0 8000E2A0 24030168 */ li $v1, 360
|
|
/* 00EEA4 8000E2A4 8FAC0048 */ lw $t4, 0x48($sp)
|
|
/* 00EEA8 8000E2A8 97B800CA */ lhu $t8, 0xca($sp)
|
|
/* 00EEAC 8000E2AC 3C0F8016 */ lui $t7, %hi(D_80164550) # $t7, 0x8016
|
|
/* 00EEB0 8000E2B0 258D0001 */ addiu $t5, $t4, 1
|
|
/* 00EEB4 8000E2B4 01A3001A */ div $zero, $t5, $v1
|
|
/* 00EEB8 8000E2B8 00007010 */ mfhi $t6
|
|
/* 00EEBC 8000E2BC 0018C8C0 */ sll $t9, $t8, 3
|
|
/* 00EEC0 8000E2C0 000EC400 */ sll $t8, $t6, 0x10
|
|
/* 00EEC4 8000E2C4 030EC023 */ subu $t8, $t8, $t6
|
|
/* 00EEC8 8000E2C8 0303001A */ div $zero, $t8, $v1
|
|
/* 00EECC 8000E2CC 8DEF4550 */ lw $t7, %lo(D_80164550)($t7)
|
|
/* 00EED0 8000E2D0 3C014060 */ li $at, 0x40600000 # 3.500000
|
|
/* 00EED4 8000E2D4 C7AA0118 */ lwc1 $f10, 0x118($sp)
|
|
/* 00EED8 8000E2D8 01F91021 */ addu $v0, $t7, $t9
|
|
/* 00EEDC 8000E2DC 844A0000 */ lh $t2, ($v0)
|
|
/* 00EEE0 8000E2E0 C6040050 */ lwc1 $f4, 0x50($s0)
|
|
/* 00EEE4 8000E2E4 844B0004 */ lh $t3, 4($v0)
|
|
/* 00EEE8 8000E2E8 448A3000 */ mtc1 $t2, $f6
|
|
/* 00EEEC 8000E2EC 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00EEF0 8000E2F0 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00EEF4 8000E2F4 46803220 */ cvt.s.w $f8, $f6
|
|
/* 00EEF8 8000E2F8 44813000 */ mtc1 $at, $f6
|
|
/* 00EEFC 8000E2FC 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00EF00 8000E300 44815800 */ mtc1 $at, $f11
|
|
/* 00EF04 8000E304 00002012 */ mflo $a0
|
|
/* 00EF08 8000E308 46062500 */ add.s $f20, $f4, $f6
|
|
/* 00EF0C 8000E30C 308FFFFF */ andi $t7, $a0, 0xffff
|
|
/* 00EF10 8000E310 01E02025 */ move $a0, $t7
|
|
/* 00EF14 8000E314 460A4580 */ add.s $f22, $f8, $f10
|
|
/* 00EF18 8000E318 44805000 */ mtc1 $zero, $f10
|
|
/* 00EF1C 8000E31C E4D40004 */ swc1 $f20, 4($a2)
|
|
/* 00EF20 8000E320 46000221 */ cvt.d.s $f8, $f0
|
|
/* 00EF24 8000E324 E4D60000 */ swc1 $f22, ($a2)
|
|
/* 00EF28 8000E328 462A4102 */ mul.d $f4, $f8, $f10
|
|
/* 00EF2C 8000E32C 448B4000 */ mtc1 $t3, $f8
|
|
/* 00EF30 8000E330 AFAF0044 */ sw $t7, 0x44($sp)
|
|
/* 00EF34 8000E334 AFA20110 */ sw $v0, 0x110($sp)
|
|
/* 00EF38 8000E338 468042A0 */ cvt.s.w $f10, $f8
|
|
/* 00EF3C 8000E33C 462021A0 */ cvt.s.d $f6, $f4
|
|
/* 00EF40 8000E340 46065600 */ add.s $f24, $f10, $f6
|
|
/* 00EF44 8000E344 E4D80008 */ swc1 $f24, 8($a2)
|
|
/* 00EF48 8000E348 14600002 */ bnez $v1, .L8000E354
|
|
/* 00EF4C 8000E34C 00000000 */ nop
|
|
/* 00EF50 8000E350 0007000D */ break 7
|
|
.L8000E354:
|
|
/* 00EF54 8000E354 2401FFFF */ li $at, -1
|
|
/* 00EF58 8000E358 14610004 */ bne $v1, $at, .L8000E36C
|
|
/* 00EF5C 8000E35C 3C018000 */ lui $at, 0x8000
|
|
/* 00EF60 8000E360 15A10002 */ bne $t5, $at, .L8000E36C
|
|
/* 00EF64 8000E364 00000000 */ nop
|
|
/* 00EF68 8000E368 0006000D */ break 6
|
|
.L8000E36C:
|
|
/* 00EF6C 8000E36C 14600002 */ bnez $v1, .L8000E378
|
|
/* 00EF70 8000E370 00000000 */ nop
|
|
/* 00EF74 8000E374 0007000D */ break 7
|
|
.L8000E378:
|
|
/* 00EF78 8000E378 2401FFFF */ li $at, -1
|
|
/* 00EF7C 8000E37C 14610004 */ bne $v1, $at, .L8000E390
|
|
/* 00EF80 8000E380 3C018000 */ lui $at, 0x8000
|
|
/* 00EF84 8000E384 17010002 */ bne $t8, $at, .L8000E390
|
|
/* 00EF88 8000E388 00000000 */ nop
|
|
/* 00EF8C 8000E38C 0006000D */ break 6
|
|
.L8000E390:
|
|
/* 00EF90 8000E390 0C0AE00E */ jal coss
|
|
/* 00EF94 8000E394 00000000 */ nop
|
|
/* 00EF98 8000E398 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00EF9C 8000E39C 44814800 */ mtc1 $at, $f9
|
|
/* 00EFA0 8000E3A0 44804000 */ mtc1 $zero, $f8
|
|
/* 00EFA4 8000E3A4 46000121 */ cvt.d.s $f4, $f0
|
|
/* 00EFA8 8000E3A8 8FA40044 */ lw $a0, 0x44($sp)
|
|
/* 00EFAC 8000E3AC 46282282 */ mul.d $f10, $f4, $f8
|
|
/* 00EFB0 8000E3B0 462051A0 */ cvt.s.d $f6, $f10
|
|
/* 00EFB4 8000E3B4 0C0AE006 */ jal sins
|
|
/* 00EFB8 8000E3B8 E7A60118 */ swc1 $f6, 0x118($sp)
|
|
/* 00EFBC 8000E3BC 8FA20110 */ lw $v0, 0x110($sp)
|
|
/* 00EFC0 8000E3C0 C7AA0118 */ lwc1 $f10, 0x118($sp)
|
|
/* 00EFC4 8000E3C4 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00EFC8 8000E3C8 84590000 */ lh $t9, ($v0)
|
|
/* 00EFCC 8000E3CC 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00EFD0 8000E3D0 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00EFD4 8000E3D4 44992000 */ mtc1 $t9, $f4
|
|
/* 00EFD8 8000E3D8 3C068016 */ lui $a2, %hi(D_80162FB0) # 0x8016
|
|
/* 00EFDC 8000E3DC 24C42FB0 */ addiu $a0, $a2, %lo(D_80162FB0) # 0x2fb0
|
|
/* 00EFE0 8000E3E0 46802220 */ cvt.s.w $f8, $f4
|
|
/* 00EFE4 8000E3E4 460A4180 */ add.s $f6, $f8, $f10
|
|
/* 00EFE8 8000E3E8 44813800 */ mtc1 $at, $f7
|
|
/* 00EFEC 8000E3EC 460002A1 */ cvt.d.s $f10, $f0
|
|
/* 00EFF0 8000E3F0 E4A60000 */ swc1 $f6, ($a1)
|
|
/* 00EFF4 8000E3F4 844A0002 */ lh $t2, 2($v0)
|
|
/* 00EFF8 8000E3F8 44803000 */ mtc1 $zero, $f6
|
|
/* 00EFFC 8000E3FC 448A2000 */ mtc1 $t2, $f4
|
|
/* 00F000 8000E400 00000000 */ nop
|
|
/* 00F004 8000E404 46802220 */ cvt.s.w $f8, $f4
|
|
/* 00F008 8000E408 46265102 */ mul.d $f4, $f10, $f6
|
|
/* 00F00C 8000E40C E4A80004 */ swc1 $f8, 4($a1)
|
|
/* 00F010 8000E410 844B0004 */ lh $t3, 4($v0)
|
|
/* 00F014 8000E414 46202220 */ cvt.s.d $f8, $f4
|
|
/* 00F018 8000E418 448B5000 */ mtc1 $t3, $f10
|
|
/* 00F01C 8000E41C 00000000 */ nop
|
|
/* 00F020 8000E420 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F024 8000E424 46083100 */ add.s $f4, $f6, $f8
|
|
/* 00F028 8000E428 0C0AD489 */ jal get_angle_between_points
|
|
/* 00F02C 8000E42C E4A40008 */ swc1 $f4, 8($a1)
|
|
/* 00F030 8000E430 3403FFFF */ li $v1, 65535
|
|
/* 00F034 8000E434 00430019 */ multu $v0, $v1
|
|
/* 00F038 8000E438 3401FFF0 */ li $at, 65520
|
|
/* 00F03C 8000E43C 00006012 */ mflo $t4
|
|
/* 00F040 8000E440 00000000 */ nop
|
|
/* 00F044 8000E444 00000000 */ nop
|
|
/* 00F048 8000E448 0181001A */ div $zero, $t4, $at
|
|
/* 00F04C 8000E44C 00006812 */ mflo $t5
|
|
/* 00F050 8000E450 A7AD00C2 */ sh $t5, 0xc2($sp)
|
|
/* 00F054 8000E454 10000194 */ b .L8000EAA8
|
|
/* 00F058 8000E458 8FAE004C */ lw $t6, 0x4c($sp)
|
|
glabel L8000E45C
|
|
/* 00F05C 8000E45C 26310004 */ addiu $s1, $s1, 4
|
|
/* 00F060 8000E460 24010168 */ li $at, 360
|
|
/* 00F064 8000E464 0221001A */ div $zero, $s1, $at
|
|
/* 00F068 8000E468 00007010 */ mfhi $t6
|
|
/* 00F06C 8000E46C 31C2FFFF */ andi $v0, $t6, 0xffff
|
|
/* 00F070 8000E470 00022400 */ sll $a0, $v0, 0x10
|
|
/* 00F074 8000E474 00822023 */ subu $a0, $a0, $v0
|
|
/* 00F078 8000E478 0081001A */ div $zero, $a0, $at
|
|
/* 00F07C 8000E47C 00007812 */ mflo $t7
|
|
/* 00F080 8000E480 31E4FFFF */ andi $a0, $t7, 0xffff
|
|
/* 00F084 8000E484 00408825 */ move $s1, $v0
|
|
/* 00F088 8000E488 AFA40044 */ sw $a0, 0x44($sp)
|
|
/* 00F08C 8000E48C 0C0AE00E */ jal coss
|
|
/* 00F090 8000E490 AFA20048 */ sw $v0, 0x48($sp)
|
|
/* 00F094 8000E494 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00F098 8000E498 44813800 */ mtc1 $at, $f7
|
|
/* 00F09C 8000E49C 44803000 */ mtc1 $zero, $f6
|
|
/* 00F0A0 8000E4A0 460002A1 */ cvt.d.s $f10, $f0
|
|
/* 00F0A4 8000E4A4 8FA40044 */ lw $a0, 0x44($sp)
|
|
/* 00F0A8 8000E4A8 46265202 */ mul.d $f8, $f10, $f6
|
|
/* 00F0AC 8000E4AC 46204120 */ cvt.s.d $f4, $f8
|
|
/* 00F0B0 8000E4B0 0C0AE006 */ jal sins
|
|
/* 00F0B4 8000E4B4 E7A40118 */ swc1 $f4, 0x118($sp)
|
|
/* 00F0B8 8000E4B8 97AB00CA */ lhu $t3, 0xca($sp)
|
|
/* 00F0BC 8000E4BC 3C0A8016 */ lui $t2, %hi(D_80164550) # $t2, 0x8016
|
|
/* 00F0C0 8000E4C0 8D4A4550 */ lw $t2, %lo(D_80164550)($t2)
|
|
/* 00F0C4 8000E4C4 000B60C0 */ sll $t4, $t3, 3
|
|
/* 00F0C8 8000E4C8 3C014060 */ li $at, 0x40600000 # 3.500000
|
|
/* 00F0CC 8000E4CC 014C1021 */ addu $v0, $t2, $t4
|
|
/* 00F0D0 8000E4D0 844D0000 */ lh $t5, ($v0)
|
|
/* 00F0D4 8000E4D4 8FA40048 */ lw $a0, 0x48($sp)
|
|
/* 00F0D8 8000E4D8 C7A80118 */ lwc1 $f8, 0x118($sp)
|
|
/* 00F0DC 8000E4DC 448D5000 */ mtc1 $t5, $f10
|
|
/* 00F0E0 8000E4E0 24840001 */ addiu $a0, $a0, 1
|
|
/* 00F0E4 8000E4E4 C6040050 */ lwc1 $f4, 0x50($s0)
|
|
/* 00F0E8 8000E4E8 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F0EC 8000E4EC 44815000 */ mtc1 $at, $f10
|
|
/* 00F0F0 8000E4F0 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00F0F4 8000E4F4 44814800 */ mtc1 $at, $f9
|
|
/* 00F0F8 8000E4F8 24010168 */ li $at, 360
|
|
/* 00F0FC 8000E4FC 0081001A */ div $zero, $a0, $at
|
|
/* 00F100 8000E500 0000C010 */ mfhi $t8
|
|
/* 00F104 8000E504 00187C00 */ sll $t7, $t8, 0x10
|
|
/* 00F108 8000E508 01F87823 */ subu $t7, $t7, $t8
|
|
/* 00F10C 8000E50C 01E1001A */ div $zero, $t7, $at
|
|
/* 00F110 8000E510 46083580 */ add.s $f22, $f6, $f8
|
|
/* 00F114 8000E514 44804000 */ mtc1 $zero, $f8
|
|
/* 00F118 8000E518 844E0004 */ lh $t6, 4($v0)
|
|
/* 00F11C 8000E51C 460001A1 */ cvt.d.s $f6, $f0
|
|
/* 00F120 8000E520 460A2500 */ add.s $f20, $f4, $f10
|
|
/* 00F124 8000E524 46283102 */ mul.d $f4, $f6, $f8
|
|
/* 00F128 8000E528 448E3000 */ mtc1 $t6, $f6
|
|
/* 00F12C 8000E52C 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00F130 8000E530 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00F134 8000E534 0000C812 */ mflo $t9
|
|
/* 00F138 8000E538 3324FFFF */ andi $a0, $t9, 0xffff
|
|
/* 00F13C 8000E53C E4D60000 */ swc1 $f22, ($a2)
|
|
/* 00F140 8000E540 46803220 */ cvt.s.w $f8, $f6
|
|
/* 00F144 8000E544 E4D40004 */ swc1 $f20, 4($a2)
|
|
/* 00F148 8000E548 AFA40044 */ sw $a0, 0x44($sp)
|
|
/* 00F14C 8000E54C AFA20110 */ sw $v0, 0x110($sp)
|
|
/* 00F150 8000E550 462022A0 */ cvt.s.d $f10, $f4
|
|
/* 00F154 8000E554 460A4600 */ add.s $f24, $f8, $f10
|
|
/* 00F158 8000E558 0C0AE00E */ jal coss
|
|
/* 00F15C 8000E55C E4D80008 */ swc1 $f24, 8($a2)
|
|
/* 00F160 8000E560 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00F164 8000E564 44813800 */ mtc1 $at, $f7
|
|
/* 00F168 8000E568 44803000 */ mtc1 $zero, $f6
|
|
/* 00F16C 8000E56C 46000121 */ cvt.d.s $f4, $f0
|
|
/* 00F170 8000E570 8FA40044 */ lw $a0, 0x44($sp)
|
|
/* 00F174 8000E574 46262202 */ mul.d $f8, $f4, $f6
|
|
/* 00F178 8000E578 462042A0 */ cvt.s.d $f10, $f8
|
|
/* 00F17C 8000E57C 0C0AE006 */ jal sins
|
|
/* 00F180 8000E580 E7AA0118 */ swc1 $f10, 0x118($sp)
|
|
/* 00F184 8000E584 8FA20110 */ lw $v0, 0x110($sp)
|
|
/* 00F188 8000E588 C7A80118 */ lwc1 $f8, 0x118($sp)
|
|
/* 00F18C 8000E58C 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F190 8000E590 844A0000 */ lh $t2, ($v0)
|
|
/* 00F194 8000E594 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F198 8000E598 3C014039 */ li $at, 0x40390000 # 2.890625
|
|
/* 00F19C 8000E59C 448A2000 */ mtc1 $t2, $f4
|
|
/* 00F1A0 8000E5A0 3C068016 */ lui $a2, %hi(D_80162FB0) # 0x8016
|
|
/* 00F1A4 8000E5A4 24C42FB0 */ addiu $a0, $a2, %lo(D_80162FB0) # 0x2fb0
|
|
/* 00F1A8 8000E5A8 468021A0 */ cvt.s.w $f6, $f4
|
|
/* 00F1AC 8000E5AC 46083280 */ add.s $f10, $f6, $f8
|
|
/* 00F1B0 8000E5B0 44815800 */ mtc1 $at, $f11
|
|
/* 00F1B4 8000E5B4 46000221 */ cvt.d.s $f8, $f0
|
|
/* 00F1B8 8000E5B8 E4AA0000 */ swc1 $f10, ($a1)
|
|
/* 00F1BC 8000E5BC 844C0002 */ lh $t4, 2($v0)
|
|
/* 00F1C0 8000E5C0 44805000 */ mtc1 $zero, $f10
|
|
/* 00F1C4 8000E5C4 448C2000 */ mtc1 $t4, $f4
|
|
/* 00F1C8 8000E5C8 00000000 */ nop
|
|
/* 00F1CC 8000E5CC 468021A0 */ cvt.s.w $f6, $f4
|
|
/* 00F1D0 8000E5D0 462A4102 */ mul.d $f4, $f8, $f10
|
|
/* 00F1D4 8000E5D4 E4A60004 */ swc1 $f6, 4($a1)
|
|
/* 00F1D8 8000E5D8 844D0004 */ lh $t5, 4($v0)
|
|
/* 00F1DC 8000E5DC 462021A0 */ cvt.s.d $f6, $f4
|
|
/* 00F1E0 8000E5E0 448D4000 */ mtc1 $t5, $f8
|
|
/* 00F1E4 8000E5E4 00000000 */ nop
|
|
/* 00F1E8 8000E5E8 468042A0 */ cvt.s.w $f10, $f8
|
|
/* 00F1EC 8000E5EC 46065100 */ add.s $f4, $f10, $f6
|
|
/* 00F1F0 8000E5F0 0C0AD489 */ jal get_angle_between_points
|
|
/* 00F1F4 8000E5F4 E4A40008 */ swc1 $f4, 8($a1)
|
|
/* 00F1F8 8000E5F8 00027400 */ sll $t6, $v0, 0x10
|
|
/* 00F1FC 8000E5FC 01C27023 */ subu $t6, $t6, $v0
|
|
/* 00F200 8000E600 3401FFF0 */ li $at, 65520
|
|
/* 00F204 8000E604 01C1001A */ div $zero, $t6, $at
|
|
/* 00F208 8000E608 0000C012 */ mflo $t8
|
|
/* 00F20C 8000E60C A7B800C2 */ sh $t8, 0xc2($sp)
|
|
/* 00F210 8000E610 10000124 */ b .L8000EAA4
|
|
/* 00F214 8000E614 3403FFFF */ li $v1, 65535
|
|
glabel L8000E618
|
|
/* 00F218 8000E618 3C014060 */ li $at, 0x40600000 # 3.500000
|
|
/* 00F21C 8000E61C 44815000 */ mtc1 $at, $f10
|
|
/* 00F220 8000E620 C6080050 */ lwc1 $f8, 0x50($s0)
|
|
/* 00F224 8000E624 A7A000C2 */ sh $zero, 0xc2($sp)
|
|
/* 00F228 8000E628 3403FFFF */ li $v1, 65535
|
|
/* 00F22C 8000E62C 1000011D */ b .L8000EAA4
|
|
/* 00F230 8000E630 460A4500 */ add.s $f20, $f8, $f10
|
|
glabel L8000E634
|
|
/* 00F234 8000E634 3C0F8016 */ lui $t7, %hi(D_8016347C) # $t7, 0x8016
|
|
/* 00F238 8000E638 85EF347C */ lh $t7, %lo(D_8016347C)($t7)
|
|
/* 00F23C 8000E63C 3C198016 */ lui $t9, %hi(gNearestWaypointByPlayerId + 0x6) # $t9, 0x8016
|
|
/* 00F240 8000E640 11E00007 */ beqz $t7, .L8000E660
|
|
/* 00F244 8000E644 00000000 */ nop
|
|
/* 00F248 8000E648 9739443E */ lhu $t9, %lo(gNearestWaypointByPlayerId + 0x6)($t9)
|
|
/* 00F24C 8000E64C 87A700CA */ lh $a3, 0xca($sp)
|
|
/* 00F250 8000E650 240B0003 */ li $t3, 3
|
|
/* 00F254 8000E654 2B210005 */ slti $at, $t9, 5
|
|
/* 00F258 8000E658 50200004 */ beql $at, $zero, .L8000E66C
|
|
/* 00F25C 8000E65C 4406C000 */ mfc1 $a2, $f24
|
|
.L8000E660:
|
|
/* 00F260 8000E660 10000110 */ b .L8000EAA4
|
|
/* 00F264 8000E664 3403FFFF */ li $v1, 65535
|
|
/* 00F268 8000E668 4406C000 */ mfc1 $a2, $f24
|
|
.L8000E66C:
|
|
/* 00F26C 8000E66C 4600B306 */ mov.s $f12, $f22
|
|
/* 00F270 8000E670 4600A386 */ mov.s $f14, $f20
|
|
/* 00F274 8000E674 0C0034AD */ jal func_8000D2B4
|
|
/* 00F278 8000E678 AFAB0010 */ sw $t3, 0x10($sp)
|
|
/* 00F27C 8000E67C 3044FFFF */ andi $a0, $v0, 0xffff
|
|
/* 00F280 8000E680 00401825 */ move $v1, $v0
|
|
/* 00F284 8000E684 04800006 */ bltz $a0, .L8000E6A0
|
|
/* 00F288 8000E688 A7A200CA */ sh $v0, 0xca($sp)
|
|
/* 00F28C 8000E68C 3C0A8016 */ lui $t2, %hi(gWaypointCountByPathIndex + 0x6) # $t2, 0x8016
|
|
/* 00F290 8000E690 954A45CE */ lhu $t2, %lo(gWaypointCountByPathIndex + 0x6)($t2)
|
|
/* 00F294 8000E694 0144082A */ slt $at, $t2, $a0
|
|
/* 00F298 8000E698 50200003 */ beql $at, $zero, .L8000E6A8
|
|
/* 00F29C 8000E69C 97A900CA */ lhu $t1, 0xca($sp)
|
|
.L8000E6A0:
|
|
/* 00F2A0 8000E6A0 A7A000CA */ sh $zero, 0xca($sp)
|
|
/* 00F2A4 8000E6A4 97A900CA */ lhu $t1, 0xca($sp)
|
|
.L8000E6A8:
|
|
/* 00F2A8 8000E6A8 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F2AC 8000E6AC 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F2B0 8000E6B0 2921001A */ slti $at, $t1, 0x1a
|
|
/* 00F2B4 8000E6B4 1020004E */ beqz $at, .L8000E7F0
|
|
/* 00F2B8 8000E6B8 3C068016 */ lui $a2, %hi(D_80162FB0) # 0x8016
|
|
/* 00F2BC 8000E6BC 3C078016 */ lui $a3, %hi(gWaypointCountByPathIndex + 0x6) # $a3, 0x8016
|
|
/* 00F2C0 8000E6C0 94E745CE */ lhu $a3, %lo(gWaypointCountByPathIndex + 0x6)($a3)
|
|
/* 00F2C4 8000E6C4 252C0001 */ addiu $t4, $t1, 1
|
|
/* 00F2C8 8000E6C8 252B0002 */ addiu $t3, $t1, 2
|
|
/* 00F2CC 8000E6CC 0187001A */ div $zero, $t4, $a3
|
|
/* 00F2D0 8000E6D0 00006810 */ mfhi $t5
|
|
/* 00F2D4 8000E6D4 3C088016 */ lui $t0, %hi(D_80164550 + 0xC) # $t0, 0x8016
|
|
/* 00F2D8 8000E6D8 8D08455C */ lw $t0, %lo(D_80164550 + 0xC)($t0)
|
|
/* 00F2DC 8000E6DC 0167001A */ div $zero, $t3, $a3
|
|
/* 00F2E0 8000E6E0 000D70C0 */ sll $t6, $t5, 3
|
|
/* 00F2E4 8000E6E4 01C81021 */ addu $v0, $t6, $t0
|
|
/* 00F2E8 8000E6E8 84580000 */ lh $t8, ($v0)
|
|
/* 00F2EC 8000E6EC 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00F2F0 8000E6F0 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00F2F4 8000E6F4 44983000 */ mtc1 $t8, $f6
|
|
/* 00F2F8 8000E6F8 00005010 */ mfhi $t2
|
|
/* 00F2FC 8000E6FC 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F300 8000E700 46803120 */ cvt.s.w $f4, $f6
|
|
/* 00F304 8000E704 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F308 8000E708 14E00002 */ bnez $a3, .L8000E714
|
|
/* 00F30C 8000E70C 00000000 */ nop
|
|
/* 00F310 8000E710 0007000D */ break 7
|
|
.L8000E714:
|
|
/* 00F314 8000E714 2401FFFF */ li $at, -1
|
|
/* 00F318 8000E718 14E10004 */ bne $a3, $at, .L8000E72C
|
|
/* 00F31C 8000E71C 3C018000 */ lui $at, 0x8000
|
|
/* 00F320 8000E720 15810002 */ bne $t4, $at, .L8000E72C
|
|
/* 00F324 8000E724 00000000 */ nop
|
|
/* 00F328 8000E728 0006000D */ break 6
|
|
.L8000E72C:
|
|
/* 00F32C 8000E72C E4C40000 */ swc1 $f4, ($a2)
|
|
/* 00F330 8000E730 844F0002 */ lh $t7, 2($v0)
|
|
/* 00F334 8000E734 000A60C0 */ sll $t4, $t2, 3
|
|
/* 00F338 8000E738 01881821 */ addu $v1, $t4, $t0
|
|
/* 00F33C 8000E73C 448F4000 */ mtc1 $t7, $f8
|
|
/* 00F340 8000E740 00C02025 */ move $a0, $a2
|
|
/* 00F344 8000E744 468042A0 */ cvt.s.w $f10, $f8
|
|
/* 00F348 8000E748 E4CA0004 */ swc1 $f10, 4($a2)
|
|
/* 00F34C 8000E74C 84590004 */ lh $t9, 4($v0)
|
|
/* 00F350 8000E750 44993000 */ mtc1 $t9, $f6
|
|
/* 00F354 8000E754 00000000 */ nop
|
|
/* 00F358 8000E758 46803120 */ cvt.s.w $f4, $f6
|
|
/* 00F35C 8000E75C E4C40008 */ swc1 $f4, 8($a2)
|
|
/* 00F360 8000E760 846D0000 */ lh $t5, ($v1)
|
|
/* 00F364 8000E764 14E00002 */ bnez $a3, .L8000E770
|
|
/* 00F368 8000E768 00000000 */ nop
|
|
/* 00F36C 8000E76C 0007000D */ break 7
|
|
.L8000E770:
|
|
/* 00F370 8000E770 2401FFFF */ li $at, -1
|
|
/* 00F374 8000E774 14E10004 */ bne $a3, $at, .L8000E788
|
|
/* 00F378 8000E778 3C018000 */ lui $at, 0x8000
|
|
/* 00F37C 8000E77C 15610002 */ bne $t3, $at, .L8000E788
|
|
/* 00F380 8000E780 00000000 */ nop
|
|
/* 00F384 8000E784 0006000D */ break 6
|
|
.L8000E788:
|
|
/* 00F388 8000E788 448D4000 */ mtc1 $t5, $f8
|
|
/* 00F38C 8000E78C 00000000 */ nop
|
|
/* 00F390 8000E790 468042A0 */ cvt.s.w $f10, $f8
|
|
/* 00F394 8000E794 E4AA0000 */ swc1 $f10, ($a1)
|
|
/* 00F398 8000E798 846E0002 */ lh $t6, 2($v1)
|
|
/* 00F39C 8000E79C 448E3000 */ mtc1 $t6, $f6
|
|
/* 00F3A0 8000E7A0 00000000 */ nop
|
|
/* 00F3A4 8000E7A4 46803120 */ cvt.s.w $f4, $f6
|
|
/* 00F3A8 8000E7A8 E4A40004 */ swc1 $f4, 4($a1)
|
|
/* 00F3AC 8000E7AC 84780004 */ lh $t8, 4($v1)
|
|
/* 00F3B0 8000E7B0 44984000 */ mtc1 $t8, $f8
|
|
/* 00F3B4 8000E7B4 00000000 */ nop
|
|
/* 00F3B8 8000E7B8 468042A0 */ cvt.s.w $f10, $f8
|
|
/* 00F3BC 8000E7BC 0C0AD489 */ jal get_angle_between_points
|
|
/* 00F3C0 8000E7C0 E4AA0008 */ swc1 $f10, 8($a1)
|
|
/* 00F3C4 8000E7C4 00027C00 */ sll $t7, $v0, 0x10
|
|
/* 00F3C8 8000E7C8 01E27823 */ subu $t7, $t7, $v0
|
|
/* 00F3CC 8000E7CC 3401FFF0 */ li $at, 65520
|
|
/* 00F3D0 8000E7D0 01E1001A */ div $zero, $t7, $at
|
|
/* 00F3D4 8000E7D4 0000C812 */ mflo $t9
|
|
/* 00F3D8 8000E7D8 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F3DC 8000E7DC 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00F3E0 8000E7E0 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00F3E4 8000E7E4 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F3E8 8000E7E8 10000018 */ b .L8000E84C
|
|
/* 00F3EC 8000E7EC A7B900C2 */ sh $t9, 0xc2($sp)
|
|
.L8000E7F0:
|
|
/* 00F3F0 8000E7F0 24C42FB0 */ addiu $a0, $a2, %lo(D_80162FB0) # 0x2fb0
|
|
/* 00F3F4 8000E7F4 E4960000 */ swc1 $f22, ($a0)
|
|
/* 00F3F8 8000E7F8 E4940004 */ swc1 $f20, 4($a0)
|
|
/* 00F3FC 8000E7FC E4980008 */ swc1 $f24, 8($a0)
|
|
/* 00F400 8000E800 3C01800F */ lui $at, %hi(D_800ED01C) # $at, 0x800f
|
|
/* 00F404 8000E804 C426D01C */ lwc1 $f6, %lo(D_800ED01C)($at)
|
|
/* 00F408 8000E808 44802000 */ mtc1 $zero, $f4
|
|
/* 00F40C 8000E80C 3C01800F */ lui $at, %hi(D_800ED020) # $at, 0x800f
|
|
/* 00F410 8000E810 E4A60000 */ swc1 $f6, ($a1)
|
|
/* 00F414 8000E814 E4A40004 */ swc1 $f4, 4($a1)
|
|
/* 00F418 8000E818 C428D020 */ lwc1 $f8, %lo(D_800ED020)($at)
|
|
/* 00F41C 8000E81C 0C0AD489 */ jal get_angle_between_points
|
|
/* 00F420 8000E820 E4A80008 */ swc1 $f8, 8($a1)
|
|
/* 00F424 8000E824 00025C00 */ sll $t3, $v0, 0x10
|
|
/* 00F428 8000E828 01625823 */ subu $t3, $t3, $v0
|
|
/* 00F42C 8000E82C 3401FFF0 */ li $at, 65520
|
|
/* 00F430 8000E830 0161001A */ div $zero, $t3, $at
|
|
/* 00F434 8000E834 00005012 */ mflo $t2
|
|
/* 00F438 8000E838 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F43C 8000E83C 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00F440 8000E840 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00F444 8000E844 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F448 8000E848 A7AA00C2 */ sh $t2, 0xc2($sp)
|
|
.L8000E84C:
|
|
/* 00F44C 8000E84C C4AA0000 */ lwc1 $f10, ($a1)
|
|
/* 00F450 8000E850 C4C60000 */ lwc1 $f6, ($a2)
|
|
/* 00F454 8000E854 3C013F00 */ li $at, 0x3F000000 # 0.500000
|
|
/* 00F458 8000E858 44810000 */ mtc1 $at, $f0
|
|
/* 00F45C 8000E85C 46065100 */ add.s $f4, $f10, $f6
|
|
/* 00F460 8000E860 C4C60008 */ lwc1 $f6, 8($a2)
|
|
/* 00F464 8000E864 C4AA0008 */ lwc1 $f10, 8($a1)
|
|
/* 00F468 8000E868 46002202 */ mul.s $f8, $f4, $f0
|
|
/* 00F46C 8000E86C 46065100 */ add.s $f4, $f10, $f6
|
|
/* 00F470 8000E870 46164381 */ sub.s $f14, $f8, $f22
|
|
/* 00F474 8000E874 46002202 */ mul.s $f8, $f4, $f0
|
|
/* 00F478 8000E878 E7AE00F8 */ swc1 $f14, 0xf8($sp)
|
|
/* 00F47C 8000E87C 460E7282 */ mul.s $f10, $f14, $f14
|
|
/* 00F480 8000E880 46184401 */ sub.s $f16, $f8, $f24
|
|
/* 00F484 8000E884 46108182 */ mul.s $f6, $f16, $f16
|
|
/* 00F488 8000E888 E7B000F0 */ swc1 $f16, 0xf0($sp)
|
|
/* 00F48C 8000E88C 0C033850 */ jal sqrtf
|
|
/* 00F490 8000E890 46065300 */ add.s $f12, $f10, $f6
|
|
/* 00F494 8000E894 3C01800F */ lui $at, %hi(D_800ED024) # $at, 0x800f
|
|
/* 00F498 8000E898 C424D024 */ lwc1 $f4, %lo(D_800ED024)($at)
|
|
/* 00F49C 8000E89C 8FAC0120 */ lw $t4, 0x120($sp)
|
|
/* 00F4A0 8000E8A0 3C0E8016 */ lui $t6, %hi(D_80164038) # $t6, 0x8016
|
|
/* 00F4A4 8000E8A4 4600203C */ c.lt.s $f4, $f0
|
|
/* 00F4A8 8000E8A8 C7AE00F8 */ lwc1 $f14, 0xf8($sp)
|
|
/* 00F4AC 8000E8AC C7B000F0 */ lwc1 $f16, 0xf0($sp)
|
|
/* 00F4B0 8000E8B0 25CE4038 */ addiu $t6, %lo(D_80164038) # addiu $t6, $t6, 0x4038
|
|
/* 00F4B4 8000E8B4 4500000A */ bc1f .L8000E8E0
|
|
/* 00F4B8 8000E8B8 000C6980 */ sll $t5, $t4, 6
|
|
/* 00F4BC 8000E8BC C602003C */ lwc1 $f2, 0x3c($s0)
|
|
/* 00F4C0 8000E8C0 460E1202 */ mul.s $f8, $f2, $f14
|
|
/* 00F4C4 8000E8C4 00000000 */ nop
|
|
/* 00F4C8 8000E8C8 46101182 */ mul.s $f6, $f2, $f16
|
|
/* 00F4CC 8000E8CC 46004283 */ div.s $f10, $f8, $f0
|
|
/* 00F4D0 8000E8D0 46003103 */ div.s $f4, $f6, $f0
|
|
/* 00F4D4 8000E8D4 460AB580 */ add.s $f22, $f22, $f10
|
|
/* 00F4D8 8000E8D8 10000008 */ b .L8000E8FC
|
|
/* 00F4DC 8000E8DC 4604C600 */ add.s $f24, $f24, $f4
|
|
.L8000E8E0:
|
|
/* 00F4E0 8000E8E0 3C0140A0 */ li $at, 0x40A00000 # 5.000000
|
|
/* 00F4E4 8000E8E4 44810000 */ mtc1 $at, $f0
|
|
/* 00F4E8 8000E8E8 00000000 */ nop
|
|
/* 00F4EC 8000E8EC 46007203 */ div.s $f8, $f14, $f0
|
|
/* 00F4F0 8000E8F0 46008283 */ div.s $f10, $f16, $f0
|
|
/* 00F4F4 8000E8F4 4608B580 */ add.s $f22, $f22, $f8
|
|
/* 00F4F8 8000E8F8 460AC600 */ add.s $f24, $f24, $f10
|
|
.L8000E8FC:
|
|
/* 00F4FC 8000E8FC 3C0144FA */ li $at, 0x44FA0000 # 2000.000000
|
|
/* 00F500 8000E900 44817000 */ mtc1 $at, $f14
|
|
/* 00F504 8000E904 4406C000 */ mfc1 $a2, $f24
|
|
/* 00F508 8000E908 01AE2021 */ addu $a0, $t5, $t6
|
|
/* 00F50C 8000E90C 9487000A */ lhu $a3, 0xa($a0)
|
|
/* 00F510 8000E910 AFA40048 */ sw $a0, 0x48($sp)
|
|
/* 00F514 8000E914 0C0AAF8C */ jal func_802ABE30
|
|
/* 00F518 8000E918 4600B306 */ mov.s $f12, $f22
|
|
/* 00F51C 8000E91C 3C014060 */ li $at, 0x40600000 # 3.500000
|
|
/* 00F520 8000E920 44813000 */ mtc1 $at, $f6
|
|
/* 00F524 8000E924 3C01800F */ lui $at, %hi(D_800ED028)
|
|
/* 00F528 8000E928 D428D028 */ ldc1 $f8, %lo(D_800ED028)($at)
|
|
/* 00F52C 8000E92C 46060500 */ add.s $f20, $f0, $f6
|
|
/* 00F530 8000E930 4406B000 */ mfc1 $a2, $f22
|
|
/* 00F534 8000E934 8FA40048 */ lw $a0, 0x48($sp)
|
|
/* 00F538 8000E938 3C054120 */ lui $a1, 0x4120
|
|
/* 00F53C 8000E93C 4600A121 */ cvt.d.s $f4, $f20
|
|
/* 00F540 8000E940 4628203C */ c.lt.d $f4, $f8
|
|
/* 00F544 8000E944 00000000 */ nop
|
|
/* 00F548 8000E948 45020003 */ bc1fl .L8000E958
|
|
/* 00F54C 8000E94C 4407A000 */ mfc1 $a3, $f20
|
|
/* 00F550 8000E950 C6140004 */ lwc1 $f20, 4($s0)
|
|
/* 00F554 8000E954 4407A000 */ mfc1 $a3, $f20
|
|
.L8000E958:
|
|
/* 00F558 8000E958 0C0AB772 */ jal func_802ADDC8
|
|
/* 00F55C 8000E95C E7B80010 */ swc1 $f24, 0x10($sp)
|
|
/* 00F560 8000E960 10000050 */ b .L8000EAA4
|
|
/* 00F564 8000E964 3403FFFF */ li $v1, 65535
|
|
glabel L8000E968
|
|
/* 00F568 8000E968 97B800CA */ lhu $t8, 0xca($sp)
|
|
/* 00F56C 8000E96C 3C078016 */ lui $a3, %hi(D_80164550) # $a3, 0x8016
|
|
/* 00F570 8000E970 8CE74550 */ lw $a3, %lo(D_80164550)($a3)
|
|
/* 00F574 8000E974 001878C0 */ sll $t7, $t8, 3
|
|
/* 00F578 8000E978 3C068016 */ lui $a2, %hi(D_80162FB0) # $a2, 0x8016
|
|
/* 00F57C 8000E97C 00EF1021 */ addu $v0, $a3, $t7
|
|
/* 00F580 8000E980 84590000 */ lh $t9, ($v0)
|
|
/* 00F584 8000E984 24C62FB0 */ addiu $a2, %lo(D_80162FB0) # addiu $a2, $a2, 0x2fb0
|
|
/* 00F588 8000E988 97AC00CA */ lhu $t4, 0xca($sp)
|
|
/* 00F58C 8000E98C 44995000 */ mtc1 $t9, $f10
|
|
/* 00F590 8000E990 3C0E8016 */ lui $t6, %hi(gWaypointCountByPathIndex) # $t6, 0x8016
|
|
/* 00F594 8000E994 258D0001 */ addiu $t5, $t4, 1
|
|
/* 00F598 8000E998 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F59C 8000E99C 3C058016 */ lui $a1, %hi(D_80162FC0) # $a1, 0x8016
|
|
/* 00F5A0 8000E9A0 24A52FC0 */ addiu $a1, %lo(D_80162FC0) # addiu $a1, $a1, 0x2fc0
|
|
/* 00F5A4 8000E9A4 E4C60000 */ swc1 $f6, ($a2)
|
|
/* 00F5A8 8000E9A8 844B0002 */ lh $t3, 2($v0)
|
|
/* 00F5AC 8000E9AC 448B2000 */ mtc1 $t3, $f4
|
|
/* 00F5B0 8000E9B0 00000000 */ nop
|
|
/* 00F5B4 8000E9B4 46802220 */ cvt.s.w $f8, $f4
|
|
/* 00F5B8 8000E9B8 E4C80004 */ swc1 $f8, 4($a2)
|
|
/* 00F5BC 8000E9BC 844A0004 */ lh $t2, 4($v0)
|
|
/* 00F5C0 8000E9C0 448A5000 */ mtc1 $t2, $f10
|
|
/* 00F5C4 8000E9C4 00000000 */ nop
|
|
/* 00F5C8 8000E9C8 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F5CC 8000E9CC E4C60008 */ swc1 $f6, 8($a2)
|
|
/* 00F5D0 8000E9D0 95CE45C8 */ lhu $t6, %lo(gWaypointCountByPathIndex)($t6)
|
|
/* 00F5D4 8000E9D4 01AE001A */ div $zero, $t5, $t6
|
|
/* 00F5D8 8000E9D8 0000C010 */ mfhi $t8
|
|
/* 00F5DC 8000E9DC 001878C0 */ sll $t7, $t8, 3
|
|
/* 00F5E0 8000E9E0 01E71821 */ addu $v1, $t7, $a3
|
|
/* 00F5E4 8000E9E4 84790000 */ lh $t9, ($v1)
|
|
/* 00F5E8 8000E9E8 15C00002 */ bnez $t6, .L8000E9F4
|
|
/* 00F5EC 8000E9EC 00000000 */ nop
|
|
/* 00F5F0 8000E9F0 0007000D */ break 7
|
|
.L8000E9F4:
|
|
/* 00F5F4 8000E9F4 2401FFFF */ li $at, -1
|
|
/* 00F5F8 8000E9F8 15C10004 */ bne $t6, $at, .L8000EA0C
|
|
/* 00F5FC 8000E9FC 3C018000 */ lui $at, 0x8000
|
|
/* 00F600 8000EA00 15A10002 */ bne $t5, $at, .L8000EA0C
|
|
/* 00F604 8000EA04 00000000 */ nop
|
|
/* 00F608 8000EA08 0006000D */ break 6
|
|
.L8000EA0C:
|
|
/* 00F60C 8000EA0C 44992000 */ mtc1 $t9, $f4
|
|
/* 00F610 8000EA10 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
|
|
/* 00F614 8000EA14 46802220 */ cvt.s.w $f8, $f4
|
|
/* 00F618 8000EA18 E4A80000 */ swc1 $f8, ($a1)
|
|
/* 00F61C 8000EA1C 846B0002 */ lh $t3, 2($v1)
|
|
/* 00F620 8000EA20 448B5000 */ mtc1 $t3, $f10
|
|
/* 00F624 8000EA24 00000000 */ nop
|
|
/* 00F628 8000EA28 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F62C 8000EA2C 44915000 */ mtc1 $s1, $f10
|
|
/* 00F630 8000EA30 E4A60004 */ swc1 $f6, 4($a1)
|
|
/* 00F634 8000EA34 846A0004 */ lh $t2, 4($v1)
|
|
/* 00F638 8000EA38 468051A0 */ cvt.s.w $f6, $f10
|
|
/* 00F63C 8000EA3C 448A2000 */ mtc1 $t2, $f4
|
|
/* 00F640 8000EA40 00000000 */ nop
|
|
/* 00F644 8000EA44 46802220 */ cvt.s.w $f8, $f4
|
|
/* 00F648 8000EA48 06210004 */ bgez $s1, .L8000EA5C
|
|
/* 00F64C 8000EA4C E4A80008 */ swc1 $f8, 8($a1)
|
|
/* 00F650 8000EA50 44812000 */ mtc1 $at, $f4
|
|
/* 00F654 8000EA54 00000000 */ nop
|
|
/* 00F658 8000EA58 46043180 */ add.s $f6, $f6, $f4
|
|
.L8000EA5C:
|
|
/* 00F65C 8000EA5C 3C01800F */ lui $at, %hi(D_800ED030) # $at, 0x800f
|
|
/* 00F660 8000EA60 C428D030 */ lwc1 $f8, %lo(D_800ED030)($at)
|
|
/* 00F664 8000EA64 3C014040 */ li $at, 0x40400000 # 3.000000
|
|
/* 00F668 8000EA68 44812000 */ mtc1 $at, $f4
|
|
/* 00F66C 8000EA6C 46083282 */ mul.s $f10, $f6, $f8
|
|
/* 00F670 8000EA70 00C02025 */ move $a0, $a2
|
|
/* 00F674 8000EA74 460A2181 */ sub.s $f6, $f4, $f10
|
|
/* 00F678 8000EA78 0C0AD489 */ jal get_angle_between_points
|
|
/* 00F67C 8000EA7C 4606A500 */ add.s $f20, $f20, $f6
|
|
/* 00F680 8000EA80 00026400 */ sll $t4, $v0, 0x10
|
|
/* 00F684 8000EA84 01826023 */ subu $t4, $t4, $v0
|
|
/* 00F688 8000EA88 3401FFF0 */ li $at, 65520
|
|
/* 00F68C 8000EA8C 0181001A */ div $zero, $t4, $at
|
|
/* 00F690 8000EA90 00006812 */ mflo $t5
|
|
/* 00F694 8000EA94 A7AD00C2 */ sh $t5, 0xc2($sp)
|
|
/* 00F698 8000EA98 10000002 */ b .L8000EAA4
|
|
/* 00F69C 8000EA9C 3403FFFF */ li $v1, 65535
|
|
.L8000EAA0:
|
|
/* 00F6A0 8000EAA0 3403FFFF */ li $v1, 65535
|
|
.L8000EAA4:
|
|
/* 00F6A4 8000EAA4 8FAE004C */ lw $t6, 0x4c($sp)
|
|
.L8000EAA8:
|
|
/* 00F6A8 8000EAA8 97AB00C2 */ lhu $t3, 0xc2($sp)
|
|
/* 00F6AC 8000EAAC 24010004 */ li $at, 4
|
|
/* 00F6B0 8000EAB0 15C1002B */ bne $t6, $at, .L8000EB60
|
|
/* 00F6B4 8000EAB4 006B2023 */ subu $a0, $v1, $t3
|
|
/* 00F6B8 8000EAB8 44914000 */ mtc1 $s1, $f8
|
|
/* 00F6BC 8000EABC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000
|
|
/* 00F6C0 8000EAC0 06210004 */ bgez $s1, .L8000EAD4
|
|
/* 00F6C4 8000EAC4 46804320 */ cvt.s.w $f12, $f8
|
|
/* 00F6C8 8000EAC8 44812000 */ mtc1 $at, $f4
|
|
/* 00F6CC 8000EACC 00000000 */ nop
|
|
/* 00F6D0 8000EAD0 46046300 */ add.s $f12, $f12, $f4
|
|
.L8000EAD4:
|
|
/* 00F6D4 8000EAD4 97B800C2 */ lhu $t8, 0xc2($sp)
|
|
/* 00F6D8 8000EAD8 460C6280 */ add.s $f10, $f12, $f12
|
|
/* 00F6DC 8000EADC E7AC004C */ swc1 $f12, 0x4c($sp)
|
|
/* 00F6E0 8000EAE0 00782023 */ subu $a0, $v1, $t8
|
|
/* 00F6E4 8000EAE4 308FFFFF */ andi $t7, $a0, 0xffff
|
|
/* 00F6E8 8000EAE8 E7AA0108 */ swc1 $f10, 0x108($sp)
|
|
/* 00F6EC 8000EAEC 01E02025 */ move $a0, $t7
|
|
/* 00F6F0 8000EAF0 0C0AE00E */ jal coss
|
|
/* 00F6F4 8000EAF4 AFAF0048 */ sw $t7, 0x48($sp)
|
|
/* 00F6F8 8000EAF8 C7AC004C */ lwc1 $f12, 0x4c($sp)
|
|
/* 00F6FC 8000EAFC 8FA40048 */ lw $a0, 0x48($sp)
|
|
/* 00F700 8000EB00 460C0182 */ mul.s $f6, $f0, $f12
|
|
/* 00F704 8000EB04 0C0AE006 */ jal sins
|
|
/* 00F708 8000EB08 E7A60118 */ swc1 $f6, 0x118($sp)
|
|
/* 00F70C 8000EB0C 3C014040 */ li $at, 0x40400000 # 3.000000
|
|
/* 00F710 8000EB10 44812000 */ mtc1 $at, $f4
|
|
/* 00F714 8000EB14 C7A80108 */ lwc1 $f8, 0x108($sp)
|
|
/* 00F718 8000EB18 3C01800F */ lui $at, %hi(D_800ED034) # $at, 0x800f
|
|
/* 00F71C 8000EB1C C426D034 */ lwc1 $f6, %lo(D_800ED034)($at)
|
|
/* 00F720 8000EB20 46044283 */ div.s $f10, $f8, $f4
|
|
/* 00F724 8000EB24 C7AC004C */ lwc1 $f12, 0x4c($sp)
|
|
/* 00F728 8000EB28 26310001 */ addiu $s1, $s1, 1
|
|
/* 00F72C 8000EB2C 3239FFFF */ andi $t9, $s1, 0xffff
|
|
/* 00F730 8000EB30 4606A201 */ sub.s $f8, $f20, $f6
|
|
/* 00F734 8000EB34 2B21001F */ slti $at, $t9, 0x1f
|
|
/* 00F738 8000EB38 460C0482 */ mul.s $f18, $f0, $f12
|
|
/* 00F73C 8000EB3C 03208825 */ move $s1, $t9
|
|
/* 00F740 8000EB40 460A4080 */ add.s $f2, $f8, $f10
|
|
/* 00F744 8000EB44 E7A200AC */ swc1 $f2, 0xac($sp)
|
|
/* 00F748 8000EB48 E7A200A0 */ swc1 $f2, 0xa0($sp)
|
|
/* 00F74C 8000EB4C E7A20094 */ swc1 $f2, 0x94($sp)
|
|
/* 00F750 8000EB50 14200038 */ bnez $at, .L8000EC34
|
|
/* 00F754 8000EB54 E7A20088 */ swc1 $f2, 0x88($sp)
|
|
/* 00F758 8000EB58 10000036 */ b .L8000EC34
|
|
/* 00F75C 8000EB5C A7A0007E */ sh $zero, 0x7e($sp)
|
|
.L8000EB60:
|
|
/* 00F760 8000EB60 308AFFFF */ andi $t2, $a0, 0xffff
|
|
/* 00F764 8000EB64 01402025 */ move $a0, $t2
|
|
/* 00F768 8000EB68 0C0AE00E */ jal coss
|
|
/* 00F76C 8000EB6C AFAA0048 */ sw $t2, 0x48($sp)
|
|
/* 00F770 8000EB70 3C013FC0 */ li $at, 0x3FC00000 # 1.500000
|
|
/* 00F774 8000EB74 44812000 */ mtc1 $at, $f4
|
|
/* 00F778 8000EB78 8FA40048 */ lw $a0, 0x48($sp)
|
|
/* 00F77C 8000EB7C 46040182 */ mul.s $f6, $f0, $f4
|
|
/* 00F780 8000EB80 0C0AE006 */ jal sins
|
|
/* 00F784 8000EB84 E7A60118 */ swc1 $f6, 0x118($sp)
|
|
/* 00F788 8000EB88 97A2007C */ lhu $v0, 0x7c($sp)
|
|
/* 00F78C 8000EB8C 3C013FC0 */ li $at, 0x3FC00000 # 1.500000
|
|
/* 00F790 8000EB90 44819000 */ mtc1 $at, $f18
|
|
/* 00F794 8000EB94 3C01800F */ lui $at, %hi(D_800ED038) # $at, 0x800f
|
|
/* 00F798 8000EB98 C430D038 */ lwc1 $f16, %lo(D_800ED038)($at)
|
|
/* 00F79C 8000EB9C 46120482 */ mul.s $f18, $f0, $f18
|
|
/* 00F7A0 8000EBA0 24010003 */ li $at, 3
|
|
/* 00F7A4 8000EBA4 0041001A */ div $zero, $v0, $at
|
|
/* 00F7A8 8000EBA8 00006010 */ mfhi $t4
|
|
/* 00F7AC 8000EBAC 4610A401 */ sub.s $f16, $f20, $f16
|
|
/* 00F7B0 8000EBB0 448C7000 */ mtc1 $t4, $f14
|
|
/* 00F7B4 8000EBB4 3C01800F */ lui $at, %hi(D_800ED03C) # $at, 0x800f
|
|
/* 00F7B8 8000EBB8 C42CD03C */ lwc1 $f12, %lo(D_800ED03C)($at)
|
|
/* 00F7BC 8000EBBC 468073A0 */ cvt.s.w $f14, $f14
|
|
/* 00F7C0 8000EBC0 00022080 */ sll $a0, $v0, 2
|
|
/* 00F7C4 8000EBC4 00822021 */ addu $a0, $a0, $v0
|
|
/* 00F7C8 8000EBC8 00042380 */ sll $a0, $a0, 0xe
|
|
/* 00F7CC 8000EBCC 00822023 */ subu $a0, $a0, $v0
|
|
/* 00F7D0 8000EBD0 00042080 */ sll $a0, $a0, 2
|
|
/* 00F7D4 8000EBD4 460C7302 */ mul.s $f12, $f14, $f12
|
|
/* 00F7D8 8000EBD8 00822023 */ subu $a0, $a0, $v0
|
|
/* 00F7DC 8000EBDC 00042080 */ sll $a0, $a0, 2
|
|
/* 00F7E0 8000EBE0 24010168 */ li $at, 360
|
|
/* 00F7E4 8000EBE4 0081001A */ div $zero, $a0, $at
|
|
/* 00F7E8 8000EBE8 460C8381 */ sub.s $f14, $f16, $f12
|
|
/* 00F7EC 8000EBEC 00006812 */ mflo $t5
|
|
/* 00F7F0 8000EBF0 E7B20114 */ swc1 $f18, 0x114($sp)
|
|
/* 00F7F4 8000EBF4 460C8300 */ add.s $f12, $f16, $f12
|
|
/* 00F7F8 8000EBF8 E7AE00AC */ swc1 $f14, 0xac($sp)
|
|
/* 00F7FC 8000EBFC E7AE0094 */ swc1 $f14, 0x94($sp)
|
|
/* 00F800 8000EC00 31A4FFFF */ andi $a0, $t5, 0xffff
|
|
/* 00F804 8000EC04 E7AC00A0 */ swc1 $f12, 0xa0($sp)
|
|
/* 00F808 8000EC08 E7AC0088 */ swc1 $f12, 0x88($sp)
|
|
/* 00F80C 8000EC0C 0C0AE006 */ jal sins
|
|
/* 00F810 8000EC10 AFA2004C */ sw $v0, 0x4c($sp)
|
|
/* 00F814 8000EC14 8FA2004C */ lw $v0, 0x4c($sp)
|
|
/* 00F818 8000EC18 24010012 */ li $at, 18
|
|
/* 00F81C 8000EC1C C7B20114 */ lwc1 $f18, 0x114($sp)
|
|
/* 00F820 8000EC20 24580001 */ addiu $t8, $v0, 1
|
|
/* 00F824 8000EC24 0301001A */ div $zero, $t8, $at
|
|
/* 00F828 8000EC28 00007810 */ mfhi $t7
|
|
/* 00F82C 8000EC2C 4600A500 */ add.s $f20, $f20, $f0
|
|
/* 00F830 8000EC30 A7AF007C */ sh $t7, 0x7c($sp)
|
|
.L8000EC34:
|
|
/* 00F834 8000EC34 C7AE0118 */ lwc1 $f14, 0x118($sp)
|
|
/* 00F838 8000EC38 46009307 */ neg.s $f12, $f18
|
|
/* 00F83C 8000EC3C 46127281 */ sub.s $f10, $f14, $f18
|
|
/* 00F840 8000EC40 460E9000 */ add.s $f0, $f18, $f14
|
|
/* 00F844 8000EC44 46165100 */ add.s $f4, $f10, $f22
|
|
/* 00F848 8000EC48 46160280 */ add.s $f10, $f0, $f22
|
|
/* 00F84C 8000EC4C E604000C */ swc1 $f4, 0xc($s0)
|
|
/* 00F850 8000EC50 C7A600AC */ lwc1 $f6, 0xac($sp)
|
|
/* 00F854 8000EC54 46180200 */ add.s $f8, $f0, $f24
|
|
/* 00F858 8000EC58 E60A0018 */ swc1 $f10, 0x18($s0)
|
|
/* 00F85C 8000EC5C E6060010 */ swc1 $f6, 0x10($s0)
|
|
/* 00F860 8000EC60 460E9181 */ sub.s $f6, $f18, $f14
|
|
/* 00F864 8000EC64 E6080014 */ swc1 $f8, 0x14($s0)
|
|
/* 00F868 8000EC68 C7A400A0 */ lwc1 $f4, 0xa0($sp)
|
|
/* 00F86C 8000EC6C 46007087 */ neg.s $f2, $f14
|
|
/* 00F870 8000EC70 46183200 */ add.s $f8, $f6, $f24
|
|
/* 00F874 8000EC74 E604001C */ swc1 $f4, 0x1c($s0)
|
|
/* 00F878 8000EC78 46121281 */ sub.s $f10, $f2, $f18
|
|
/* 00F87C 8000EC7C E6080020 */ swc1 $f8, 0x20($s0)
|
|
/* 00F880 8000EC80 460E6200 */ add.s $f8, $f12, $f14
|
|
/* 00F884 8000EC84 46165100 */ add.s $f4, $f10, $f22
|
|
/* 00F888 8000EC88 46184280 */ add.s $f10, $f8, $f24
|
|
/* 00F88C 8000EC8C E6040024 */ swc1 $f4, 0x24($s0)
|
|
/* 00F890 8000EC90 C7A60094 */ lwc1 $f6, 0x94($sp)
|
|
/* 00F894 8000EC94 46121100 */ add.s $f4, $f2, $f18
|
|
/* 00F898 8000EC98 E60A002C */ swc1 $f10, 0x2c($s0)
|
|
/* 00F89C 8000EC9C E6060028 */ swc1 $f6, 0x28($s0)
|
|
/* 00F8A0 8000ECA0 460E6281 */ sub.s $f10, $f12, $f14
|
|
/* 00F8A4 8000ECA4 46162180 */ add.s $f6, $f4, $f22
|
|
/* 00F8A8 8000ECA8 46185100 */ add.s $f4, $f10, $f24
|
|
/* 00F8AC 8000ECAC E6060030 */ swc1 $f6, 0x30($s0)
|
|
/* 00F8B0 8000ECB0 C7A80088 */ lwc1 $f8, 0x88($sp)
|
|
/* 00F8B4 8000ECB4 E6160000 */ swc1 $f22, ($s0)
|
|
/* 00F8B8 8000ECB8 E6040038 */ swc1 $f4, 0x38($s0)
|
|
/* 00F8BC 8000ECBC E6140004 */ swc1 $f20, 4($s0)
|
|
/* 00F8C0 8000ECC0 E6180008 */ swc1 $f24, 8($s0)
|
|
/* 00F8C4 8000ECC4 E6080034 */ swc1 $f8, 0x34($s0)
|
|
/* 00F8C8 8000ECC8 97B900CA */ lhu $t9, 0xca($sp)
|
|
/* 00F8CC 8000ECCC A6190042 */ sh $t9, 0x42($s0)
|
|
/* 00F8D0 8000ECD0 C7A600C4 */ lwc1 $f6, 0xc4($sp)
|
|
/* 00F8D4 8000ECD4 E606003C */ swc1 $f6, 0x3c($s0)
|
|
/* 00F8D8 8000ECD8 97AB00C2 */ lhu $t3, 0xc2($sp)
|
|
/* 00F8DC 8000ECDC A60B0040 */ sh $t3, 0x40($s0)
|
|
/* 00F8E0 8000ECE0 97AA007E */ lhu $t2, 0x7e($sp)
|
|
/* 00F8E4 8000ECE4 A60A0044 */ sh $t2, 0x44($s0)
|
|
/* 00F8E8 8000ECE8 97AC007C */ lhu $t4, 0x7c($sp)
|
|
/* 00F8EC 8000ECEC A6110048 */ sh $s1, 0x48($s0)
|
|
/* 00F8F0 8000ECF0 A60C0046 */ sh $t4, 0x46($s0)
|
|
.L8000ECF4:
|
|
/* 00F8F4 8000ECF4 8FBF003C */ lw $ra, 0x3c($sp)
|
|
.L8000ECF8:
|
|
/* 00F8F8 8000ECF8 D7B40018 */ ldc1 $f20, 0x18($sp)
|
|
/* 00F8FC 8000ECFC D7B60020 */ ldc1 $f22, 0x20($sp)
|
|
/* 00F900 8000ED00 D7B80028 */ ldc1 $f24, 0x28($sp)
|
|
/* 00F904 8000ED04 8FB00034 */ lw $s0, 0x34($sp)
|
|
/* 00F908 8000ED08 8FB10038 */ lw $s1, 0x38($sp)
|
|
/* 00F90C 8000ED0C 03E00008 */ jr $ra
|
|
/* 00F910 8000ED10 27BD0120 */ addiu $sp, $sp, 0x120
|