lots of matching involving misc racers (#346)

* match func_8005E4C0

* label vehicle enums

* prelim

* match func_800B1130

* match func_8005F310

* prelim

* match func_8005C364

* rename and warning fix

* another wave of particle cleanup

* match func_8005E204

* fixed warnings

though it's just a plaster

* Update objects.c

* match func_8005D0D0

* macros

* some labels

* match func_8005D820

* reorganise boss headers

* stuff that I don't really feel like describing it's just lots of dumb stuff lol

* add collision.c

* one more

* some racer documentation

* fix blacklist bug in score.py

* more.

* nonequiv func_800314DC

* Update collision.c

* Update unknown_0255E0.h

* document two camera funcs

* Update racer.c

* quick fixes

* Update src/vehicle_tricky.c

Co-authored-by: David Benepe <benepe96@gmail.com>

* Update src/vehicle_smokey.c

Co-authored-by: David Benepe <benepe96@gmail.com>

* Update src/vehicle_misc.h

Co-authored-by: David Benepe <benepe96@gmail.com>

* Update src/particles.h

Co-authored-by: David Benepe <benepe96@gmail.com>

* Update src/vehicle_bluey.c

Co-authored-by: David Benepe <benepe96@gmail.com>

* requested changes

* Update vehicle_smokey.c

* oops missed one

* Update object_functions.c

* Update racer.c

Co-authored-by: David Benepe <benepe96@gmail.com>
This commit is contained in:
Fazana
2022-12-30 14:14:53 +00:00
committed by GitHub
co-authored by David Benepe
parent fa9f4328aa
commit c6351af6c3
58 changed files with 2485 additions and 5483 deletions
+1
View File
@@ -311,6 +311,7 @@ $(BUILD_DIR)/lib/src/al/env.o: MIPSISET := -mips1
####################### MATH UTIL #########################
$(BUILD_DIR)/src/math_util.o: MIPSISET := -mips2
$(BUILD_DIR)/src/collision.o: MIPSISET := -mips2
######################## Targets #############################
@@ -1,3 +1,18 @@
.section .rodata
glabel D_800E5F60
.float -0.1
glabel D_800E5F64
.float -0.1
glabel D_800E5F68
.float 0.707
glabel D_800E5F6C
.float 0.45
glabel D_800E5F70
.float -0.1
.section .text
glabel func_80031600
/* 032200 80031600 24080001 */ li $t0, 1
/* 032204 80031604 A3A80001 */ sb $t0, 1($sp)
+1 -1
View File
@@ -66,7 +66,7 @@ glabel func_800113CC
/* 0120C0 800114C0 C62E0010 */ lwc1 $f14, 0x10($s1)
/* 0120C4 800114C4 8E260014 */ lw $a2, 0x14($s1)
/* 0120C8 800114C8 4407A000 */ mfc1 $a3, $f20
/* 0120CC 800114CC 0C01A785 */ jal func_80069E14
/* 0120CC 800114CC 0C01A785 */ jal set_camera_shake_by_distance
/* 0120D0 800114D0 E7B60010 */ swc1 $f22, 0x10($sp)
/* 0120D4 800114D4 320C0001 */ andi $t4, $s0, 1
/* 0120D8 800114D8 11800003 */ beqz $t4, .L800114E8
-349
View File
@@ -1,349 +0,0 @@
glabel func_800B0698
/* 0B1298 800B0698 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0B129C 800B069C AFBF001C */ sw $ra, 0x1c($sp)
/* 0B12A0 800B06A0 AFB00018 */ sw $s0, 0x18($sp)
/* 0B12A4 800B06A4 AFA40030 */ sw $a0, 0x30($sp)
/* 0B12A8 800B06A8 84AF0008 */ lh $t7, 8($a1)
/* 0B12AC 800B06AC 3C0E800E */ lui $t6, %hi(gParticlesAssetTable) # $t6, 0x800e
/* 0B12B0 800B06B0 8DCE2CF0 */ lw $t6, %lo(gParticlesAssetTable)($t6)
/* 0B12B4 800B06B4 000FC080 */ sll $t8, $t7, 2
/* 0B12B8 800B06B8 01D8C821 */ addu $t9, $t6, $t8
/* 0B12BC 800B06BC 8F230000 */ lw $v1, ($t9)
/* 0B12C0 800B06C0 24010004 */ li $at, 4
/* 0B12C4 800B06C4 90680000 */ lbu $t0, ($v1)
/* 0B12C8 800B06C8 00A03025 */ move $a2, $a1
/* 0B12CC 800B06CC 11010003 */ beq $t0, $at, .L800B06DC
/* 0B12D0 800B06D0 24040004 */ li $a0, 4
/* 0B12D4 800B06D4 10000131 */ b .L800B0B9C
/* 0B12D8 800B06D8 00001025 */ move $v0, $zero
.L800B06DC:
/* 0B12DC 800B06DC 8CC70000 */ lw $a3, ($a2)
/* 0B12E0 800B06E0 AFA60034 */ sw $a2, 0x34($sp)
/* 0B12E4 800B06E4 AFA3002C */ sw $v1, 0x2c($sp)
/* 0B12E8 800B06E8 0C02C72E */ jal func_800B1CB8
/* 0B12EC 800B06EC AFA70020 */ sw $a3, 0x20($sp)
/* 0B12F0 800B06F0 8FA3002C */ lw $v1, 0x2c($sp)
/* 0B12F4 800B06F4 8FA60034 */ lw $a2, 0x34($sp)
/* 0B12F8 800B06F8 8FA70020 */ lw $a3, 0x20($sp)
/* 0B12FC 800B06FC 14400003 */ bnez $v0, .L800B070C
/* 0B1300 800B0700 00408025 */ move $s0, $v0
/* 0B1304 800B0704 10000125 */ b .L800B0B9C
/* 0B1308 800B0708 02001025 */ move $v0, $s0
.L800B070C:
/* 0B130C 800B070C 8FA90030 */ lw $t1, 0x30($sp)
/* 0B1310 800B0710 240B8000 */ li $t3, -32768
/* 0B1314 800B0714 852A002E */ lh $t2, 0x2e($t1)
/* 0B1318 800B0718 A44B0006 */ sh $t3, 6($v0)
/* 0B131C 800B071C A44A002E */ sh $t2, 0x2e($v0)
/* 0B1320 800B0720 906C0001 */ lbu $t4, 1($v1)
/* 0B1324 800B0724 00000000 */ nop
/* 0B1328 800B0728 A04C0039 */ sb $t4, 0x39($v0)
/* 0B132C 800B072C 946D0002 */ lhu $t5, 2($v1)
/* 0B1330 800B0730 00000000 */ nop
/* 0B1334 800B0734 AC4D0040 */ sw $t5, 0x40($v0)
/* 0B1338 800B0738 8FAF0030 */ lw $t7, 0x30($sp)
/* 0B133C 800B073C AC460070 */ sw $a2, 0x70($v0)
/* 0B1340 800B0740 AC4F003C */ sw $t7, 0x3c($v0)
/* 0B1344 800B0744 C4640010 */ lwc1 $f4, 0x10($v1)
/* 0B1348 800B0748 C4E60050 */ lwc1 $f6, 0x50($a3)
/* 0B134C 800B074C 31AB0800 */ andi $t3, $t5, 0x800
/* 0B1350 800B0750 46062202 */ mul.s $f8, $f4, $f6
/* 0B1354 800B0754 44802000 */ mtc1 $zero, $f4
/* 0B1358 800B0758 E4480008 */ swc1 $f8, 8($v0)
/* 0B135C 800B075C C4F00054 */ lwc1 $f16, 0x54($a3)
/* 0B1360 800B0760 C46A0010 */ lwc1 $f10, 0x10($v1)
/* 0B1364 800B0764 00000000 */ nop
/* 0B1368 800B0768 46105482 */ mul.s $f18, $f10, $f16
/* 0B136C 800B076C E4520028 */ swc1 $f18, 0x28($v0)
/* 0B1370 800B0770 846E0008 */ lh $t6, 8($v1)
/* 0B1374 800B0774 A0400038 */ sb $zero, 0x38($v0)
/* 0B1378 800B0778 E4440034 */ swc1 $f4, 0x34($v0)
/* 0B137C 800B077C A44E003A */ sh $t6, 0x3a($v0)
/* 0B1380 800B0780 90780014 */ lbu $t8, 0x14($v1)
/* 0B1384 800B0784 00000000 */ nop
/* 0B1388 800B0788 A058006C */ sb $t8, 0x6c($v0)
/* 0B138C 800B078C 90790015 */ lbu $t9, 0x15($v1)
/* 0B1390 800B0790 00000000 */ nop
/* 0B1394 800B0794 A059006D */ sb $t9, 0x6d($v0)
/* 0B1398 800B0798 90680016 */ lbu $t0, 0x16($v1)
/* 0B139C 800B079C 00000000 */ nop
/* 0B13A0 800B07A0 A048006E */ sb $t0, 0x6e($v0)
/* 0B13A4 800B07A4 90690017 */ lbu $t1, 0x17($v1)
/* 0B13A8 800B07A8 11600016 */ beqz $t3, .L800B0804
/* 0B13AC 800B07AC A049006F */ sb $t1, 0x6f($v0)
/* 0B13B0 800B07B0 8FAC0030 */ lw $t4, 0x30($sp)
/* 0B13B4 800B07B4 3C01437F */ li $at, 0x437F0000 # 255.000000
/* 0B13B8 800B07B8 8D840054 */ lw $a0, 0x54($t4)
/* 0B13BC 800B07BC 00000000 */ nop
/* 0B13C0 800B07C0 10800010 */ beqz $a0, .L800B0804
/* 0B13C4 800B07C4 00000000 */ nop
/* 0B13C8 800B07C8 C4860000 */ lwc1 $f6, ($a0)
/* 0B13CC 800B07CC 44814000 */ mtc1 $at, $f8
/* 0B13D0 800B07D0 00000000 */ nop
/* 0B13D4 800B07D4 46083282 */ mul.s $f10, $f6, $f8
/* 0B13D8 800B07D8 444DF800 */ cfc1 $t5, $31
/* 0B13DC 800B07DC 00000000 */ nop
/* 0B13E0 800B07E0 35A10003 */ ori $at, $t5, 3
/* 0B13E4 800B07E4 38210002 */ xori $at, $at, 2
/* 0B13E8 800B07E8 44C1F800 */ ctc1 $at, $31
/* 0B13EC 800B07EC 00000000 */ nop
/* 0B13F0 800B07F0 46005424 */ cvt.w.s $f16, $f10
/* 0B13F4 800B07F4 440F8000 */ mfc1 $t7, $f16
/* 0B13F8 800B07F8 44CDF800 */ ctc1 $t5, $31
/* 0B13FC 800B07FC 10000003 */ b .L800B080C
/* 0B1400 800B0800 A44F004A */ sh $t7, 0x4a($v0)
.L800B0804:
/* 0B1404 800B0804 240E00FF */ li $t6, 255
/* 0B1408 800B0808 A44E004A */ sh $t6, 0x4a($v0)
.L800B080C:
/* 0B140C 800B080C 8478000E */ lh $t8, 0xe($v1)
/* 0B1410 800B0810 00000000 */ nop
/* 0B1414 800B0814 A4580060 */ sh $t8, 0x60($v0)
/* 0B1418 800B0818 84D90004 */ lh $t9, 4($a2)
/* 0B141C 800B081C 00000000 */ nop
/* 0B1420 800B0820 33280100 */ andi $t0, $t9, 0x100
/* 0B1424 800B0824 11000004 */ beqz $t0, .L800B0838
/* 0B1428 800B0828 00000000 */ nop
/* 0B142C 800B082C 84C9000A */ lh $t1, 0xa($a2)
/* 0B1430 800B0830 10000005 */ b .L800B0848
/* 0B1434 800B0834 A449005C */ sh $t1, 0x5c($v0)
.L800B0838:
/* 0B1438 800B0838 906A000C */ lbu $t2, 0xc($v1)
/* 0B143C 800B083C 00000000 */ nop
/* 0B1440 800B0840 000A5A00 */ sll $t3, $t2, 8
/* 0B1444 800B0844 A44B005C */ sh $t3, 0x5c($v0)
.L800B0848:
/* 0B1448 800B0848 906C000C */ lbu $t4, 0xc($v1)
/* 0B144C 800B084C 00000000 */ nop
/* 0B1450 800B0850 298100FF */ slti $at, $t4, 0xff
/* 0B1454 800B0854 1020000F */ beqz $at, .L800B0894
/* 0B1458 800B0858 00000000 */ nop
/* 0B145C 800B085C 8C4D0040 */ lw $t5, 0x40($v0)
/* 0B1460 800B0860 00000000 */ nop
/* 0B1464 800B0864 31AF1000 */ andi $t7, $t5, 0x1000
/* 0B1468 800B0868 11E00006 */ beqz $t7, .L800B0884
/* 0B146C 800B086C 00000000 */ nop
/* 0B1470 800B0870 844E0006 */ lh $t6, 6($v0)
/* 0B1474 800B0874 00000000 */ nop
/* 0B1478 800B0878 35D80100 */ ori $t8, $t6, 0x100
/* 0B147C 800B087C 10000005 */ b .L800B0894
/* 0B1480 800B0880 A4580006 */ sh $t8, 6($v0)
.L800B0884:
/* 0B1484 800B0884 84590006 */ lh $t9, 6($v0)
/* 0B1488 800B0888 00000000 */ nop
/* 0B148C 800B088C 37280080 */ ori $t0, $t9, 0x80
/* 0B1490 800B0890 A4480006 */ sh $t0, 6($v0)
.L800B0894:
/* 0B1494 800B0894 84450060 */ lh $a1, 0x60($v0)
/* 0B1498 800B0898 8444003A */ lh $a0, 0x3a($v0)
/* 0B149C 800B089C 00000000 */ nop
/* 0B14A0 800B08A0 00A4082A */ slt $at, $a1, $a0
/* 0B14A4 800B08A4 10200014 */ beqz $at, .L800B08F8
/* 0B14A8 800B08A8 00857823 */ subu $t7, $a0, $a1
/* 0B14AC 800B08AC 9069000D */ lbu $t1, 0xd($v1)
/* 0B14B0 800B08B0 844B005C */ lh $t3, 0x5c($v0)
/* 0B14B4 800B08B4 00095200 */ sll $t2, $t1, 8
/* 0B14B8 800B08B8 316CFFFF */ andi $t4, $t3, 0xffff
/* 0B14BC 800B08BC 014C6823 */ subu $t5, $t2, $t4
/* 0B14C0 800B08C0 01AF001A */ div $zero, $t5, $t7
/* 0B14C4 800B08C4 15E00002 */ bnez $t7, .L800B08D0
/* 0B14C8 800B08C8 00000000 */ nop
/* 0B14CC 800B08CC 0007000D */ break 7
.L800B08D0:
/* 0B14D0 800B08D0 2401FFFF */ li $at, -1
/* 0B14D4 800B08D4 15E10004 */ bne $t7, $at, .L800B08E8
/* 0B14D8 800B08D8 3C018000 */ lui $at, 0x8000
/* 0B14DC 800B08DC 15A10002 */ bne $t5, $at, .L800B08E8
/* 0B14E0 800B08E0 00000000 */ nop
/* 0B14E4 800B08E4 0006000D */ break 6
.L800B08E8:
/* 0B14E8 800B08E8 00007012 */ mflo $t6
/* 0B14EC 800B08EC A44E005E */ sh $t6, 0x5e($v0)
/* 0B14F0 800B08F0 10000003 */ b .L800B0900
/* 0B14F4 800B08F4 8FA50030 */ lw $a1, 0x30($sp)
.L800B08F8:
/* 0B14F8 800B08F8 A440005E */ sh $zero, 0x5e($v0)
/* 0B14FC 800B08FC 8FA50030 */ lw $a1, 0x30($sp)
.L800B0900:
/* 0B1500 800B0900 02002025 */ move $a0, $s0
/* 0B1504 800B0904 AFA3002C */ sw $v1, 0x2c($sp)
/* 0B1508 800B0908 AFA60034 */ sw $a2, 0x34($sp)
/* 0B150C 800B090C 0C02C0F0 */ jal func_800B03C0
/* 0B1510 800B0910 AFA70020 */ sw $a3, 0x20($sp)
/* 0B1514 800B0914 8FA70020 */ lw $a3, 0x20($sp)
/* 0B1518 800B0918 8FA3002C */ lw $v1, 0x2c($sp)
/* 0B151C 800B091C 8CF80000 */ lw $t8, ($a3)
/* 0B1520 800B0920 8FA50030 */ lw $a1, 0x30($sp)
/* 0B1524 800B0924 8FA60034 */ lw $a2, 0x34($sp)
/* 0B1528 800B0928 33190080 */ andi $t9, $t8, 0x80
/* 0B152C 800B092C 1320000A */ beqz $t9, .L800B0958
/* 0B1530 800B0930 00000000 */ nop
/* 0B1534 800B0934 84E80044 */ lh $t0, 0x44($a3)
/* 0B1538 800B0938 00000000 */ nop
/* 0B153C 800B093C A6080000 */ sh $t0, ($s0)
/* 0B1540 800B0940 84E90046 */ lh $t1, 0x46($a3)
/* 0B1544 800B0944 00000000 */ nop
/* 0B1548 800B0948 A6090002 */ sh $t1, 2($s0)
/* 0B154C 800B094C 84EB0048 */ lh $t3, 0x48($a3)
/* 0B1550 800B0950 10000010 */ b .L800B0994
/* 0B1554 800B0954 A60B0004 */ sh $t3, 4($s0)
.L800B0958:
/* 0B1558 800B0958 84AA0000 */ lh $t2, ($a1)
/* 0B155C 800B095C 84EC0044 */ lh $t4, 0x44($a3)
/* 0B1560 800B0960 00000000 */ nop
/* 0B1564 800B0964 014C6821 */ addu $t5, $t2, $t4
/* 0B1568 800B0968 A60D0000 */ sh $t5, ($s0)
/* 0B156C 800B096C 84EE0046 */ lh $t6, 0x46($a3)
/* 0B1570 800B0970 84AF0002 */ lh $t7, 2($a1)
/* 0B1574 800B0974 00000000 */ nop
/* 0B1578 800B0978 01EEC021 */ addu $t8, $t7, $t6
/* 0B157C 800B097C A6180002 */ sh $t8, 2($s0)
/* 0B1580 800B0980 84E80048 */ lh $t0, 0x48($a3)
/* 0B1584 800B0984 84B90004 */ lh $t9, 4($a1)
/* 0B1588 800B0988 00000000 */ nop
/* 0B158C 800B098C 03284821 */ addu $t1, $t9, $t0
/* 0B1590 800B0990 A6090004 */ sh $t1, 4($s0)
.L800B0994:
/* 0B1594 800B0994 84EB004A */ lh $t3, 0x4a($a3)
/* 0B1598 800B0998 02002025 */ move $a0, $s0
/* 0B159C 800B099C A60B0062 */ sh $t3, 0x62($s0)
/* 0B15A0 800B09A0 84EA004C */ lh $t2, 0x4c($a3)
/* 0B15A4 800B09A4 00000000 */ nop
/* 0B15A8 800B09A8 A60A0064 */ sh $t2, 0x64($s0)
/* 0B15AC 800B09AC 84EC004E */ lh $t4, 0x4e($a3)
/* 0B15B0 800B09B0 00000000 */ nop
/* 0B15B4 800B09B4 A60C0066 */ sh $t4, 0x66($s0)
/* 0B15B8 800B09B8 AFA70020 */ sw $a3, 0x20($sp)
/* 0B15BC 800B09BC AFA60034 */ sw $a2, 0x34($sp)
/* 0B15C0 800B09C0 0C02C004 */ jal func_800B0010
/* 0B15C4 800B09C4 AFA3002C */ sw $v1, 0x2c($sp)
/* 0B15C8 800B09C8 8E0D0040 */ lw $t5, 0x40($s0)
/* 0B15CC 800B09CC 3C01800E */ lui $at, %hi(D_800E2E2C) # $at, 0x800e
/* 0B15D0 800B09D0 000D7903 */ sra $t7, $t5, 4
/* 0B15D4 800B09D4 31EE0007 */ andi $t6, $t7, 7
/* 0B15D8 800B09D8 000EC080 */ sll $t8, $t6, 2
/* 0B15DC 800B09DC 00380821 */ addu $at, $at, $t8
/* 0B15E0 800B09E0 C4322E2C */ lwc1 $f18, %lo(D_800E2E2C)($at)
/* 0B15E4 800B09E4 92190039 */ lbu $t9, 0x39($s0)
/* 0B15E8 800B09E8 8FA3002C */ lw $v1, 0x2c($sp)
/* 0B15EC 800B09EC 8FA60034 */ lw $a2, 0x34($sp)
/* 0B15F0 800B09F0 8FA70020 */ lw $a3, 0x20($sp)
/* 0B15F4 800B09F4 24010005 */ li $at, 5
/* 0B15F8 800B09F8 17210011 */ bne $t9, $at, .L800B0A40
/* 0B15FC 800B09FC E6120068 */ swc1 $f18, 0x68($s0)
/* 0B1600 800B0A00 C600001C */ lwc1 $f0, 0x1c($s0)
/* 0B1604 800B0A04 C6020020 */ lwc1 $f2, 0x20($s0)
/* 0B1608 800B0A08 46000102 */ mul.s $f4, $f0, $f0
/* 0B160C 800B0A0C C60E0024 */ lwc1 $f14, 0x24($s0)
/* 0B1610 800B0A10 AFA70020 */ sw $a3, 0x20($sp)
/* 0B1614 800B0A14 AFA60034 */ sw $a2, 0x34($sp)
/* 0B1618 800B0A18 46021182 */ mul.s $f6, $f2, $f2
/* 0B161C 800B0A1C AFA3002C */ sw $v1, 0x2c($sp)
/* 0B1620 800B0A20 460E7282 */ mul.s $f10, $f14, $f14
/* 0B1624 800B0A24 46062200 */ add.s $f8, $f4, $f6
/* 0B1628 800B0A28 0C0326B4 */ jal sqrtf
/* 0B162C 800B0A2C 460A4300 */ add.s $f12, $f8, $f10
/* 0B1630 800B0A30 8FA3002C */ lw $v1, 0x2c($sp)
/* 0B1634 800B0A34 8FA60034 */ lw $a2, 0x34($sp)
/* 0B1638 800B0A38 8FA70020 */ lw $a3, 0x20($sp)
/* 0B163C 800B0A3C E6000058 */ swc1 $f0, 0x58($s0)
.L800B0A40:
/* 0B1640 800B0A40 8CE20000 */ lw $v0, ($a3)
/* 0B1644 800B0A44 2401FFFF */ li $at, -1
/* 0B1648 800B0A48 30480002 */ andi $t0, $v0, 2
/* 0B164C 800B0A4C 1100000D */ beqz $t0, .L800B0A84
/* 0B1650 800B0A50 304E0008 */ andi $t6, $v0, 8
/* 0B1654 800B0A54 84C90010 */ lh $t1, 0x10($a2)
/* 0B1658 800B0A58 84EB001C */ lh $t3, 0x1c($a3)
/* 0B165C 800B0A5C 84CC0012 */ lh $t4, 0x12($a2)
/* 0B1660 800B0A60 012B5021 */ addu $t2, $t1, $t3
/* 0B1664 800B0A64 A4CA0010 */ sh $t2, 0x10($a2)
/* 0B1668 800B0A68 84ED001E */ lh $t5, 0x1e($a3)
/* 0B166C 800B0A6C 00000000 */ nop
/* 0B1670 800B0A70 018D7821 */ addu $t7, $t4, $t5
/* 0B1674 800B0A74 A4CF0012 */ sh $t7, 0x12($a2)
/* 0B1678 800B0A78 8CE20000 */ lw $v0, ($a3)
/* 0B167C 800B0A7C 00000000 */ nop
/* 0B1680 800B0A80 304E0008 */ andi $t6, $v0, 8
.L800B0A84:
/* 0B1684 800B0A84 11C0000A */ beqz $t6, .L800B0AB0
/* 0B1688 800B0A88 00000000 */ nop
/* 0B168C 800B0A8C 84D80014 */ lh $t8, 0x14($a2)
/* 0B1690 800B0A90 84F9002A */ lh $t9, 0x2a($a3)
/* 0B1694 800B0A94 84C90016 */ lh $t1, 0x16($a2)
/* 0B1698 800B0A98 03194021 */ addu $t0, $t8, $t9
/* 0B169C 800B0A9C A4C80014 */ sh $t0, 0x14($a2)
/* 0B16A0 800B0AA0 84EB002C */ lh $t3, 0x2c($a3)
/* 0B16A4 800B0AA4 00000000 */ nop
/* 0B16A8 800B0AA8 012B5021 */ addu $t2, $t1, $t3
/* 0B16AC 800B0AAC A4CA0016 */ sh $t2, 0x16($a2)
.L800B0AB0:
/* 0B16B0 800B0AB0 846C0006 */ lh $t4, 6($v1)
/* 0B16B4 800B0AB4 A6000018 */ sh $zero, 0x18($s0)
/* 0B16B8 800B0AB8 A60C001A */ sh $t4, 0x1a($s0)
/* 0B16BC 800B0ABC 84640004 */ lh $a0, 4($v1)
/* 0B16C0 800B0AC0 8E050044 */ lw $a1, 0x44($s0)
/* 0B16C4 800B0AC4 14810003 */ bne $a0, $at, .L800B0AD4
/* 0B16C8 800B0AC8 00000000 */ nop
/* 0B16CC 800B0ACC 10000026 */ b .L800B0B68
/* 0B16D0 800B0AD0 ACA00000 */ sw $zero, ($a1)
.L800B0AD4:
/* 0B16D4 800B0AD4 AFA3002C */ sw $v1, 0x2c($sp)
/* 0B16D8 800B0AD8 0C01EB9D */ jal load_texture
/* 0B16DC 800B0ADC AFA50024 */ sw $a1, 0x24($sp)
/* 0B16E0 800B0AE0 8FA50024 */ lw $a1, 0x24($sp)
/* 0B16E4 800B0AE4 8FA3002C */ lw $v1, 0x2c($sp)
/* 0B16E8 800B0AE8 1040001F */ beqz $v0, .L800B0B68
/* 0B16EC 800B0AEC ACA20000 */ sw $v0, ($a1)
/* 0B16F0 800B0AF0 844F0006 */ lh $t7, 6($v0)
/* 0B16F4 800B0AF4 00000000 */ nop
/* 0B16F8 800B0AF8 31EE0004 */ andi $t6, $t7, 4
/* 0B16FC 800B0AFC 11C0000F */ beqz $t6, .L800B0B3C
/* 0B1700 800B0B00 00000000 */ nop
/* 0B1704 800B0B04 8E180040 */ lw $t8, 0x40($s0)
/* 0B1708 800B0B08 00000000 */ nop
/* 0B170C 800B0B0C 33191000 */ andi $t9, $t8, 0x1000
/* 0B1710 800B0B10 13200006 */ beqz $t9, .L800B0B2C
/* 0B1714 800B0B14 00000000 */ nop
/* 0B1718 800B0B18 86080006 */ lh $t0, 6($s0)
/* 0B171C 800B0B1C 00000000 */ nop
/* 0B1720 800B0B20 35090100 */ ori $t1, $t0, 0x100
/* 0B1724 800B0B24 10000005 */ b .L800B0B3C
/* 0B1728 800B0B28 A6090006 */ sh $t1, 6($s0)
.L800B0B2C:
/* 0B172C 800B0B2C 860B0006 */ lh $t3, 6($s0)
/* 0B1730 800B0B30 00000000 */ nop
/* 0B1734 800B0B34 356A0080 */ ori $t2, $t3, 0x80
/* 0B1738 800B0B38 A60A0006 */ sh $t2, 6($s0)
.L800B0B3C:
/* 0B173C 800B0B3C 8E0C0040 */ lw $t4, 0x40($s0)
/* 0B1740 800B0B40 24010002 */ li $at, 2
/* 0B1744 800B0B44 318D0003 */ andi $t5, $t4, 3
/* 0B1748 800B0B48 15A10007 */ bne $t5, $at, .L800B0B68
/* 0B174C 800B0B4C 00000000 */ nop
/* 0B1750 800B0B50 8CAF0000 */ lw $t7, ($a1)
/* 0B1754 800B0B54 00000000 */ nop
/* 0B1758 800B0B58 95EE0012 */ lhu $t6, 0x12($t7)
/* 0B175C 800B0B5C 00000000 */ nop
/* 0B1760 800B0B60 25D8FFFF */ addiu $t8, $t6, -1
/* 0B1764 800B0B64 A6180018 */ sh $t8, 0x18($s0)
.L800B0B68:
/* 0B1768 800B0B68 A2000075 */ sb $zero, 0x75($s0)
/* 0B176C 800B0B6C 9479000A */ lhu $t9, 0xa($v1)
/* 0B1770 800B0B70 A2000077 */ sb $zero, 0x77($s0)
/* 0B1774 800B0B74 00194282 */ srl $t0, $t9, 0xa
/* 0B1778 800B0B78 A2080076 */ sb $t0, 0x76($s0)
/* 0B177C 800B0B7C 8CA90000 */ lw $t1, ($a1)
/* 0B1780 800B0B80 02001025 */ move $v0, $s0
/* 0B1784 800B0B84 15200005 */ bnez $t1, .L800B0B9C
/* 0B1788 800B0B88 00000000 */ nop
/* 0B178C 800B0B8C 0C02C810 */ jal func_800B2040
/* 0B1790 800B0B90 02002025 */ move $a0, $s0
/* 0B1794 800B0B94 10000001 */ b .L800B0B9C
/* 0B1798 800B0B98 00001025 */ move $v0, $zero
.L800B0B9C:
/* 0B179C 800B0B9C 8FBF001C */ lw $ra, 0x1c($sp)
/* 0B17A0 800B0BA0 8FB00018 */ lw $s0, 0x18($sp)
/* 0B17A4 800B0BA4 03E00008 */ jr $ra
/* 0B17A8 800B0BA8 27BD0030 */ addiu $sp, $sp, 0x30
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -195,12 +195,12 @@ glabel func_80046524
/* 047328 80046728 00000000 */ nop
/* 04732C 8004672C 8FA60128 */ lw $a2, 0x128($sp)
/* 047330 80046730 02202025 */ move $a0, $s1
/* 047334 80046734 0C014871 */ jal func_800521C4
/* 047334 80046734 0C014871 */ jal handle_racer_head_turning
/* 047338 80046738 02002825 */ move $a1, $s0
/* 04733C 8004673C 10000003 */ b .L8004674C
/* 047340 80046740 00000000 */ nop
.L80046744:
/* 047344 80046744 0C0148D3 */ jal func_8005234C
/* 047344 80046744 0C0148D3 */ jal slowly_reset_head_angle
/* 047348 80046748 02002025 */ move $a0, $s0
.L8004674C:
/* 04734C 8004674C 3C198012 */ lui $t9, %hi(gCurrentRacerInput) # $t9, 0x8012
+2 -2
View File
@@ -393,12 +393,12 @@ glabel func_80049794
/* 04A87C 80049C7C 00000000 */ nop
/* 04A880 80049C80 8FA600F8 */ lw $a2, 0xf8($sp)
/* 04A884 80049C84 02202025 */ move $a0, $s1
/* 04A888 80049C88 0C014871 */ jal func_800521C4
/* 04A888 80049C88 0C014871 */ jal handle_racer_head_turning
/* 04A88C 80049C8C 02002825 */ move $a1, $s0
/* 04A890 80049C90 10000003 */ b .L80049CA0
/* 04A894 80049C94 00000000 */ nop
.L80049C98:
/* 04A898 80049C98 0C0148D3 */ jal func_8005234C
/* 04A898 80049C98 0C0148D3 */ jal slowly_reset_head_angle
/* 04A89C 80049C9C 02002025 */ move $a0, $s0
.L80049CA0:
/* 04A8A0 80049CA0 3C0E8012 */ lui $t6, %hi(gCurrentRacerInput) # $t6, 0x8012
+1 -1
View File
@@ -108,7 +108,7 @@ glabel func_8004F7F4
/* 05053C 8004F93C 02002825 */ move $a1, $s0
/* 050540 8004F940 8FA600C0 */ lw $a2, 0xc0($sp)
/* 050544 8004F944 02202025 */ move $a0, $s1
/* 050548 8004F948 0C014871 */ jal func_800521C4
/* 050548 8004F948 0C014871 */ jal handle_racer_head_turning
/* 05054C 8004F94C 02002825 */ move $a1, $s0
/* 050550 8004F950 3C018012 */ lui $at, %hi(D_8011D550) # $at, 0x8012
/* 050554 8004F954 A420D550 */ sh $zero, %lo(D_8011D550)($at)
@@ -1,498 +0,0 @@
.late_rodata
glabel D_800E6A10
.double 0.3
glabel D_800E6A18
.double -0.1
glabel D_800E6A20
.double 0.1
glabel D_800E6A28
.double 700.0
.text
glabel func_8005C364
/* 05CF64 8005C364 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 05CF68 8005C368 AFA40058 */ sw $a0, 0x58($sp)
/* 05CF6C 8005C36C AFBF002C */ sw $ra, 0x2c($sp)
/* 05CF70 8005C370 AFB10028 */ sw $s1, 0x28($sp)
/* 05CF74 8005C374 AFB00024 */ sw $s0, 0x24($sp)
/* 05CF78 8005C378 3C04800E */ lui $a0, %hi(D_800DCDE0) # $a0, 0x800e
/* 05CF7C 8005C37C 00E08025 */ move $s0, $a3
/* 05CF80 8005C380 00C08825 */ move $s1, $a2
/* 05CF84 8005C384 E7B50018 */ swc1 $f21, 0x18($sp)
/* 05CF88 8005C388 E7B4001C */ swc1 $f20, 0x1c($sp)
/* 05CF8C 8005C38C AFA5005C */ sw $a1, 0x5c($sp)
/* 05CF90 8005C390 0C01729E */ jal func_8005CA78
/* 05CF94 8005C394 2484CDE0 */ addiu $a0, %lo(D_800DCDE0) # addiu $a0, $a0, -0x3220
/* 05CF98 8005C398 8FA2006C */ lw $v0, 0x6c($sp)
/* 05CF9C 8005C39C 8FA50068 */ lw $a1, 0x68($sp)
/* 05CFA0 8005C3A0 8C4E0000 */ lw $t6, ($v0)
/* 05CFA4 8005C3A4 2403FFEF */ li $v1, -17
/* 05CFA8 8005C3A8 01C37824 */ and $t7, $t6, $v1
/* 05CFAC 8005C3AC AC4F0000 */ sw $t7, ($v0)
/* 05CFB0 8005C3B0 8CB80000 */ lw $t8, ($a1)
/* 05CFB4 8005C3B4 24010001 */ li $at, 1
/* 05CFB8 8005C3B8 0303C824 */ and $t9, $t8, $v1
/* 05CFBC 8005C3BC ACB90000 */ sw $t9, ($a1)
/* 05CFC0 8005C3C0 822A003B */ lb $t2, 0x3b($s1)
/* 05CFC4 8005C3C4 00000000 */ nop
/* 05CFC8 8005C3C8 A7AA0056 */ sh $t2, 0x56($sp)
/* 05CFCC 8005C3CC 862B0018 */ lh $t3, 0x18($s1)
/* 05CFD0 8005C3D0 00000000 */ nop
/* 05CFD4 8005C3D4 A7AB0054 */ sh $t3, 0x54($sp)
/* 05CFD8 8005C3D8 860C016A */ lh $t4, 0x16a($s0)
/* 05CFDC 8005C3DC 00000000 */ nop
/* 05CFE0 8005C3E0 A7AC0052 */ sh $t4, 0x52($sp)
/* 05CFE4 8005C3E4 820D01D8 */ lb $t5, 0x1d8($s0)
/* 05CFE8 8005C3E8 00000000 */ nop
/* 05CFEC 8005C3EC 15A10008 */ bne $t5, $at, .L8005C410
/* 05CFF0 8005C3F0 8FA90070 */ lw $t1, 0x70($sp)
/* 05CFF4 8005C3F4 0C008500 */ jal func_80021400
/* 05CFF8 8005C3F8 24040082 */ li $a0, 130
/* 05CFFC 8005C3FC 820E01D8 */ lb $t6, 0x1d8($s0)
/* 05D000 8005C400 8FA50068 */ lw $a1, 0x68($sp)
/* 05D004 8005C404 25CF0001 */ addiu $t7, $t6, 1
/* 05D008 8005C408 A20F01D8 */ sb $t7, 0x1d8($s0)
/* 05D00C 8005C40C 8FA90070 */ lw $t1, 0x70($sp)
.L8005C410:
/* 05D010 8005C410 86180000 */ lh $t8, ($s0)
/* 05D014 8005C414 8D220000 */ lw $v0, ($t1)
/* 05D018 8005C418 2408FFFF */ li $t0, -1
/* 05D01C 8005C41C 1518001D */ bne $t0, $t8, .L8005C494
/* 05D020 8005C420 00401825 */ move $v1, $v0
/* 05D024 8005C424 24010064 */ li $at, 100
/* 05D028 8005C428 1041001A */ beq $v0, $at, .L8005C494
/* 05D02C 8005C42C 2459FFF1 */ addiu $t9, $v0, -0xf
/* 05D030 8005C430 07210016 */ bgez $t9, .L8005C48C
/* 05D034 8005C434 AD390000 */ sw $t9, ($t1)
/* 05D038 8005C438 3C0B8012 */ lui $t3, %hi(D_8011D5CC) # $t3, 0x8012
/* 05D03C 8005C43C 816BD5CC */ lb $t3, %lo(D_8011D5CC)($t3)
/* 05D040 8005C440 00002025 */ move $a0, $zero
/* 05D044 8005C444 15600009 */ bnez $t3, .L8005C46C
/* 05D048 8005C448 240D0001 */ li $t5, 1
/* 05D04C 8005C44C 0C0172C1 */ jal func_8005CB04
/* 05D050 8005C450 AFA20040 */ sw $v0, 0x40($sp)
/* 05D054 8005C454 8FA30040 */ lw $v1, 0x40($sp)
/* 05D058 8005C458 8FA50068 */ lw $a1, 0x68($sp)
/* 05D05C 8005C45C 8FA90070 */ lw $t1, 0x70($sp)
/* 05D060 8005C460 240C0005 */ li $t4, 5
/* 05D064 8005C464 A20C01D3 */ sb $t4, 0x1d3($s0)
/* 05D068 8005C468 240D0001 */ li $t5, 1
.L8005C46C:
/* 05D06C 8005C46C 3C018012 */ lui $at, %hi(D_8011D5CC) # $at, 0x8012
/* 05D070 8005C470 A02DD5CC */ sb $t5, %lo(D_8011D5CC)($at)
/* 05D074 8005C474 AD200000 */ sw $zero, ($t1)
/* 05D078 8005C478 8CAE0000 */ lw $t6, ($a1)
/* 05D07C 8005C47C 00000000 */ nop
/* 05D080 8005C480 35CF8000 */ ori $t7, $t6, 0x8000
/* 05D084 8005C484 10000003 */ b .L8005C494
/* 05D088 8005C488 ACAF0000 */ sw $t7, ($a1)
.L8005C48C:
/* 05D08C 8005C48C 3C018012 */ lui $at, %hi(D_8011D5CC) # $at, 0x8012
/* 05D090 8005C490 A020D5CC */ sb $zero, %lo(D_8011D5CC)($at)
.L8005C494:
/* 05D094 8005C494 8FA40058 */ lw $a0, 0x58($sp)
/* 05D098 8005C498 8FA5005C */ lw $a1, 0x5c($sp)
/* 05D09C 8005C49C 02203025 */ move $a2, $s1
/* 05D0A0 8005C4A0 02003825 */ move $a3, $s0
/* 05D0A4 8005C4A4 0C013DFD */ jal func_8004F7F4
/* 05D0A8 8005C4A8 AFA30040 */ sw $v1, 0x40($sp)
/* 05D0AC 8005C4AC 8FA30040 */ lw $v1, 0x40($sp)
/* 05D0B0 8005C4B0 8FA90070 */ lw $t1, 0x70($sp)
/* 05D0B4 8005C4B4 44808000 */ mtc1 $zero, $f16
/* 05D0B8 8005C4B8 AD230000 */ sw $v1, ($t1)
/* 05D0BC 8005C4BC E6100030 */ swc1 $f16, 0x30($s0)
/* 05D0C0 8005C4C0 87B80052 */ lh $t8, 0x52($sp)
/* 05D0C4 8005C4C4 2408FFFF */ li $t0, -1
/* 05D0C8 8005C4C8 A618016A */ sh $t8, 0x16a($s0)
/* 05D0CC 8005C4CC 87B90056 */ lh $t9, 0x56($sp)
/* 05D0D0 8005C4D0 00000000 */ nop
/* 05D0D4 8005C4D4 A239003B */ sb $t9, 0x3b($s1)
/* 05D0D8 8005C4D8 87AA0054 */ lh $t2, 0x54($sp)
/* 05D0DC 8005C4DC 00000000 */ nop
/* 05D0E0 8005C4E0 A62A0018 */ sh $t2, 0x18($s1)
/* 05D0E4 8005C4E4 820B0187 */ lb $t3, 0x187($s0)
/* 05D0E8 8005C4E8 00000000 */ nop
/* 05D0EC 8005C4EC 11600022 */ beqz $t3, .L8005C578
/* 05D0F0 8005C4F0 00000000 */ nop
/* 05D0F4 8005C4F4 8223003B */ lb $v1, 0x3b($s1)
/* 05D0F8 8005C4F8 24050003 */ li $a1, 3
/* 05D0FC 8005C4FC 10A3001E */ beq $a1, $v1, .L8005C578
/* 05D100 8005C500 3C01401E */ li $at, 0x401E0000 # 2.468750
/* 05D104 8005C504 A20301CD */ sb $v1, 0x1cd($s0)
/* 05D108 8005C508 C6240020 */ lwc1 $f4, 0x20($s1)
/* 05D10C 8005C50C 44814800 */ mtc1 $at, $f9
/* 05D110 8005C510 44804000 */ mtc1 $zero, $f8
/* 05D114 8005C514 460021A1 */ cvt.d.s $f6, $f4
/* 05D118 8005C518 46283280 */ add.d $f10, $f6, $f8
/* 05D11C 8005C51C A225003B */ sb $a1, 0x3b($s1)
/* 05D120 8005C520 462054A0 */ cvt.s.d $f18, $f10
/* 05D124 8005C524 24040001 */ li $a0, 1
/* 05D128 8005C528 0C0172C1 */ jal func_8005CB04
/* 05D12C 8005C52C E6320020 */ swc1 $f18, 0x20($s1)
/* 05D130 8005C530 24040011 */ li $a0, 17
/* 05D134 8005C534 0C000741 */ jal play_sound_global
/* 05D138 8005C538 00002825 */ move $a1, $zero
/* 05D13C 8005C53C 3C014140 */ li $at, 0x41400000 # 12.000000
/* 05D140 8005C540 44816000 */ mtc1 $at, $f12
/* 05D144 8005C544 0C01A7CA */ jal func_80069F28
/* 05D148 8005C548 00000000 */ nop
/* 05D14C 8005C54C 3C01800E */ lui $at, %hi(D_800E6A10 + 4) # $at, 0x800e
/* 05D150 8005C550 C604002C */ lwc1 $f4, 0x2c($s0)
/* 05D154 8005C554 C4296A10 */ lwc1 $f9, %lo(D_800E6A10)($at)
/* 05D158 8005C558 C4286A14 */ lwc1 $f8, %lo(D_800E6A10 + 4)($at)
/* 05D15C 8005C55C 460021A1 */ cvt.d.s $f6, $f4
/* 05D160 8005C560 46283282 */ mul.d $f10, $f6, $f8
/* 05D164 8005C564 44808000 */ mtc1 $zero, $f16
/* 05D168 8005C568 2408FFFF */ li $t0, -1
/* 05D16C 8005C56C E610000C */ swc1 $f16, 0xc($s0)
/* 05D170 8005C570 462054A0 */ cvt.s.d $f18, $f10
/* 05D174 8005C574 E612002C */ swc1 $f18, 0x2c($s0)
.L8005C578:
/* 05D178 8005C578 8E0C0148 */ lw $t4, 0x148($s0)
/* 05D17C 8005C57C 24050003 */ li $a1, 3
/* 05D180 8005C580 11800011 */ beqz $t4, .L8005C5C8
/* 05D184 8005C584 A2000187 */ sb $zero, 0x187($s0)
/* 05D188 8005C588 C620001C */ lwc1 $f0, 0x1c($s1)
/* 05D18C 8005C58C C6220024 */ lwc1 $f2, 0x24($s1)
/* 05D190 8005C590 46000502 */ mul.s $f20, $f0, $f0
/* 05D194 8005C594 00000000 */ nop
/* 05D198 8005C598 46021382 */ mul.s $f14, $f2, $f2
/* 05D19C 8005C59C 00000000 */ nop
/* 05D1A0 8005C5A0 4614A102 */ mul.s $f4, $f20, $f20
/* 05D1A4 8005C5A4 00000000 */ nop
/* 05D1A8 8005C5A8 460E7182 */ mul.s $f6, $f14, $f14
/* 05D1AC 8005C5AC 0C0326B4 */ jal sqrtf
/* 05D1B0 8005C5B0 46062300 */ add.s $f12, $f4, $f6
/* 05D1B4 8005C5B4 46000207 */ neg.s $f8, $f0
/* 05D1B8 8005C5B8 44808000 */ mtc1 $zero, $f16
/* 05D1BC 8005C5BC E608002C */ swc1 $f8, 0x2c($s0)
/* 05D1C0 8005C5C0 2408FFFF */ li $t0, -1
/* 05D1C4 8005C5C4 24050003 */ li $a1, 3
.L8005C5C8:
/* 05D1C8 8005C5C8 8E2D0068 */ lw $t5, 0x68($s1)
/* 05D1CC 8005C5CC 8223003B */ lb $v1, 0x3b($s1)
/* 05D1D0 8005C5D0 8DA20000 */ lw $v0, ($t5)
/* 05D1D4 8005C5D4 000378C0 */ sll $t7, $v1, 3
/* 05D1D8 8005C5D8 8C440000 */ lw $a0, ($v0)
/* 05D1DC 8005C5DC 00000000 */ nop
/* 05D1E0 8005C5E0 8C8E0044 */ lw $t6, 0x44($a0)
/* 05D1E4 8005C5E4 00000000 */ nop
/* 05D1E8 8005C5E8 01CFC021 */ addu $t8, $t6, $t7
/* 05D1EC 8005C5EC 8F190004 */ lw $t9, 4($t8)
/* 05D1F0 8005C5F0 00000000 */ nop
/* 05D1F4 8005C5F4 00195100 */ sll $t2, $t9, 4
/* 05D1F8 8005C5F8 254BFFEF */ addiu $t3, $t2, -0x11
/* 05D1FC 8005C5FC 448B5000 */ mtc1 $t3, $f10
/* 05D200 8005C600 10A3003B */ beq $a1, $v1, .L8005C6F0
/* 05D204 8005C604 46805520 */ cvt.s.w $f20, $f10
/* 05D208 8005C608 C612002C */ lwc1 $f18, 0x2c($s0)
/* 05D20C 8005C60C 3C01C000 */ li $at, 0xC0000000 # -2.000000
/* 05D210 8005C610 44812800 */ mtc1 $at, $f5
/* 05D214 8005C614 44802000 */ mtc1 $zero, $f4
/* 05D218 8005C618 46009021 */ cvt.d.s $f0, $f18
/* 05D21C 8005C61C 4624003C */ c.lt.d $f0, $f4
/* 05D220 8005C620 240C0001 */ li $t4, 1
/* 05D224 8005C624 45000010 */ bc1f .L8005C668
/* 05D228 8005C628 3C01800E */ lui $at, %hi(D_800E6A18 + 4) # $at, 0x800e
/* 05D22C 8005C62C A22C003B */ sb $t4, 0x3b($s1)
/* 05D230 8005C630 C7A8005C */ lwc1 $f8, 0x5c($sp)
/* 05D234 8005C634 C606002C */ lwc1 $f6, 0x2c($s0)
/* 05D238 8005C638 3C013FE0 */ li $at, 0x3FE00000 # 1.750000
/* 05D23C 8005C63C 46083282 */ mul.s $f10, $f6, $f8
/* 05D240 8005C640 44812800 */ mtc1 $at, $f5
/* 05D244 8005C644 44802000 */ mtc1 $zero, $f4
/* 05D248 8005C648 C608000C */ lwc1 $f8, 0xc($s0)
/* 05D24C 8005C64C 460054A1 */ cvt.d.s $f18, $f10
/* 05D250 8005C650 46249182 */ mul.d $f6, $f18, $f4
/* 05D254 8005C654 460042A1 */ cvt.d.s $f10, $f8
/* 05D258 8005C658 46265481 */ sub.d $f18, $f10, $f6
/* 05D25C 8005C65C 46209120 */ cvt.s.d $f4, $f18
/* 05D260 8005C660 1000002B */ b .L8005C710
/* 05D264 8005C664 E604000C */ swc1 $f4, 0xc($s0)
.L8005C668:
/* 05D268 8005C668 C4296A18 */ lwc1 $f9, %lo(D_800E6A18)($at)
/* 05D26C 8005C66C C4286A1C */ lwc1 $f8, %lo(D_800E6A18 + 4)($at)
/* 05D270 8005C670 3C01800E */ lui $at, %hi(D_800E6A20 + 4) # $at, 0x800e
/* 05D274 8005C674 4628003C */ c.lt.d $f0, $f8
/* 05D278 8005C678 240D0002 */ li $t5, 2
/* 05D27C 8005C67C 45010008 */ bc1t .L8005C6A0
/* 05D280 8005C680 00000000 */ nop
/* 05D284 8005C684 C42B6A20 */ lwc1 $f11, %lo(D_800E6A20)($at)
/* 05D288 8005C688 C42A6A24 */ lwc1 $f10, %lo(D_800E6A20 + 4)($at)
/* 05D28C 8005C68C 00000000 */ nop
/* 05D290 8005C690 4620503C */ c.lt.d $f10, $f0
/* 05D294 8005C694 00000000 */ nop
/* 05D298 8005C698 4500000C */ bc1f .L8005C6CC
/* 05D29C 8005C69C 00000000 */ nop
.L8005C6A0:
/* 05D2A0 8005C6A0 A22D003B */ sb $t5, 0x3b($s1)
/* 05D2A4 8005C6A4 C7B2005C */ lwc1 $f18, 0x5c($sp)
/* 05D2A8 8005C6A8 C606002C */ lwc1 $f6, 0x2c($s0)
/* 05D2AC 8005C6AC 3C014000 */ li $at, 0x40000000 # 2.000000
/* 05D2B0 8005C6B0 46123102 */ mul.s $f4, $f6, $f18
/* 05D2B4 8005C6B4 44814000 */ mtc1 $at, $f8
/* 05D2B8 8005C6B8 C606000C */ lwc1 $f6, 0xc($s0)
/* 05D2BC 8005C6BC 46082282 */ mul.s $f10, $f4, $f8
/* 05D2C0 8005C6C0 460A3481 */ sub.s $f18, $f6, $f10
/* 05D2C4 8005C6C4 10000012 */ b .L8005C710
/* 05D2C8 8005C6C8 E612000C */ swc1 $f18, 0xc($s0)
.L8005C6CC:
/* 05D2CC 8005C6CC A220003B */ sb $zero, 0x3b($s1)
/* 05D2D0 8005C6D0 C604000C */ lwc1 $f4, 0xc($s0)
/* 05D2D4 8005C6D4 C7A6005C */ lwc1 $f6, 0x5c($sp)
/* 05D2D8 8005C6D8 46002221 */ cvt.d.s $f8, $f4
/* 05D2DC 8005C6DC 460032A1 */ cvt.d.s $f10, $f6
/* 05D2E0 8005C6E0 462A4480 */ add.d $f18, $f8, $f10
/* 05D2E4 8005C6E4 46209120 */ cvt.s.d $f4, $f18
/* 05D2E8 8005C6E8 10000009 */ b .L8005C710
/* 05D2EC 8005C6EC E604000C */ swc1 $f4, 0xc($s0)
.L8005C6F0:
/* 05D2F0 8005C6F0 C7A6005C */ lwc1 $f6, 0x5c($sp)
/* 05D2F4 8005C6F4 C608000C */ lwc1 $f8, 0xc($s0)
/* 05D2F8 8005C6F8 46003021 */ cvt.d.s $f0, $f6
/* 05D2FC 8005C6FC 46200480 */ add.d $f18, $f0, $f0
/* 05D300 8005C700 460042A1 */ cvt.d.s $f10, $f8
/* 05D304 8005C704 46325100 */ add.d $f4, $f10, $f18
/* 05D308 8005C708 462021A0 */ cvt.s.d $f6, $f4
/* 05D30C 8005C70C E606000C */ swc1 $f6, 0xc($s0)
.L8005C710:
/* 05D310 8005C710 C600000C */ lwc1 $f0, 0xc($s0)
/* 05D314 8005C714 00000000 */ nop
/* 05D318 8005C718 4610003C */ c.lt.s $f0, $f16
/* 05D31C 8005C71C 00000000 */ nop
/* 05D320 8005C720 4500000A */ bc1f .L8005C74C
/* 05D324 8005C724 00000000 */ nop
.L8005C728:
/* 05D328 8005C728 46140200 */ add.s $f8, $f0, $f20
/* 05D32C 8005C72C E608000C */ swc1 $f8, 0xc($s0)
/* 05D330 8005C730 A4480010 */ sh $t0, 0x10($v0)
/* 05D334 8005C734 C600000C */ lwc1 $f0, 0xc($s0)
/* 05D338 8005C738 00000000 */ nop
/* 05D33C 8005C73C 4610003C */ c.lt.s $f0, $f16
/* 05D340 8005C740 00000000 */ nop
/* 05D344 8005C744 4501FFF8 */ bc1t .L8005C728
/* 05D348 8005C748 00000000 */ nop
.L8005C74C:
/* 05D34C 8005C74C 4600A03C */ c.lt.s $f20, $f0
/* 05D350 8005C750 00000000 */ nop
/* 05D354 8005C754 4500000A */ bc1f .L8005C780
/* 05D358 8005C758 00000000 */ nop
.L8005C75C:
/* 05D35C 8005C75C 46140281 */ sub.s $f10, $f0, $f20
/* 05D360 8005C760 E60A000C */ swc1 $f10, 0xc($s0)
/* 05D364 8005C764 A4480010 */ sh $t0, 0x10($v0)
/* 05D368 8005C768 C600000C */ lwc1 $f0, 0xc($s0)
/* 05D36C 8005C76C 00000000 */ nop
/* 05D370 8005C770 4600A03C */ c.lt.s $f20, $f0
/* 05D374 8005C774 00000000 */ nop
/* 05D378 8005C778 4501FFF8 */ bc1t .L8005C75C
/* 05D37C 8005C77C 00000000 */ nop
.L8005C780:
/* 05D380 8005C780 844E0010 */ lh $t6, 0x10($v0)
/* 05D384 8005C784 00000000 */ nop
/* 05D388 8005C788 150E000A */ bne $t0, $t6, .L8005C7B4
/* 05D38C 8005C78C 00000000 */ nop
/* 05D390 8005C790 822F003B */ lb $t7, 0x3b($s1)
/* 05D394 8005C794 00000000 */ nop
/* 05D398 8005C798 14AF0006 */ bne $a1, $t7, .L8005C7B4
/* 05D39C 8005C79C 00000000 */ nop
/* 05D3A0 8005C7A0 921801CD */ lbu $t8, 0x1cd($s0)
/* 05D3A4 8005C7A4 00000000 */ nop
/* 05D3A8 8005C7A8 A238003B */ sb $t8, 0x3b($s1)
/* 05D3AC 8005C7AC C600000C */ lwc1 $f0, 0xc($s0)
/* 05D3B0 8005C7B0 00000000 */ nop
.L8005C7B4:
/* 05D3B4 8005C7B4 444AF800 */ cfc1 $t2, $31
/* 05D3B8 8005C7B8 86390018 */ lh $t9, 0x18($s1)
/* 05D3BC 8005C7BC 35410003 */ ori $at, $t2, 3
/* 05D3C0 8005C7C0 38210002 */ xori $at, $at, 2
/* 05D3C4 8005C7C4 44C1F800 */ ctc1 $at, $31
/* 05D3C8 8005C7C8 A7B90054 */ sh $t9, 0x54($sp)
/* 05D3CC 8005C7CC 460004A4 */ cvt.w.s $f18, $f0
/* 05D3D0 8005C7D0 822C003B */ lb $t4, 0x3b($s1)
/* 05D3D4 8005C7D4 440B9000 */ mfc1 $t3, $f18
/* 05D3D8 8005C7D8 24010001 */ li $at, 1
/* 05D3DC 8005C7DC 44CAF800 */ ctc1 $t2, $31
/* 05D3E0 8005C7E0 AE200074 */ sw $zero, 0x74($s1)
/* 05D3E4 8005C7E4 1581000C */ bne $t4, $at, .L8005C818
/* 05D3E8 8005C7E8 A62B0018 */ sh $t3, 0x18($s1)
/* 05D3EC 8005C7EC 87A60054 */ lh $a2, 0x54($sp)
/* 05D3F0 8005C7F0 240D00AD */ li $t5, 173
/* 05D3F4 8005C7F4 AFAD0010 */ sw $t5, 0x10($sp)
/* 05D3F8 8005C7F8 02202025 */ move $a0, $s1
/* 05D3FC 8005C7FC 24050002 */ li $a1, 2
/* 05D400 8005C800 0C0044F3 */ jal func_800113CC
/* 05D404 8005C804 240700AC */ li $a3, 172
/* 05D408 8005C808 8E2E0074 */ lw $t6, 0x74($s1)
/* 05D40C 8005C80C 00000000 */ nop
/* 05D410 8005C810 35CF0003 */ ori $t7, $t6, 3
/* 05D414 8005C814 AE2F0074 */ sw $t7, 0x74($s1)
.L8005C818:
/* 05D418 8005C818 8FA50058 */ lw $a1, 0x58($sp)
/* 05D41C 8005C81C 0C02BF0F */ jal func_800AFC3C
/* 05D420 8005C820 02202025 */ move $a0, $s1
/* 05D424 8005C824 02202025 */ move $a0, $s1
/* 05D428 8005C828 02002825 */ move $a1, $s0
/* 05D42C 8005C82C 0C017412 */ jal func_8005D048
/* 05D430 8005C830 24060078 */ li $a2, 120
/* 05D434 8005C834 8222003B */ lb $v0, 0x3b($s1)
/* 05D438 8005C838 24010001 */ li $at, 1
/* 05D43C 8005C83C 10410006 */ beq $v0, $at, .L8005C858
/* 05D440 8005C840 00002025 */ move $a0, $zero
/* 05D444 8005C844 24010002 */ li $at, 2
/* 05D448 8005C848 10410005 */ beq $v0, $at, .L8005C860
/* 05D44C 8005C84C 24050100 */ li $a1, 256
/* 05D450 8005C850 10000003 */ b .L8005C860
/* 05D454 8005C854 24051500 */ li $a1, 5376
.L8005C858:
/* 05D458 8005C858 10000001 */ b .L8005C860
/* 05D45C 8005C85C 24052500 */ li $a1, 9472
.L8005C860:
/* 05D460 8005C860 0C006EB2 */ jal get_racer_object
/* 05D464 8005C864 AFA50038 */ sw $a1, 0x38($sp)
/* 05D468 8005C868 AFA20030 */ sw $v0, 0x30($sp)
/* 05D46C 8005C86C C626000C */ lwc1 $f6, 0xc($s1)
/* 05D470 8005C870 C444000C */ lwc1 $f4, 0xc($v0)
/* 05D474 8005C874 C62A0014 */ lwc1 $f10, 0x14($s1)
/* 05D478 8005C878 46062501 */ sub.s $f20, $f4, $f6
/* 05D47C 8005C87C C4480014 */ lwc1 $f8, 0x14($v0)
/* 05D480 8005C880 4614A482 */ mul.s $f18, $f20, $f20
/* 05D484 8005C884 460A4381 */ sub.s $f14, $f8, $f10
/* 05D488 8005C888 E7AE0048 */ swc1 $f14, 0x48($sp)
/* 05D48C 8005C88C 460E7102 */ mul.s $f4, $f14, $f14
/* 05D490 8005C890 0C0326B4 */ jal sqrtf
/* 05D494 8005C894 46049300 */ add.s $f12, $f18, $f4
/* 05D498 8005C898 3C01800E */ lui $at, %hi(D_800E6A28 + 4) # $at, 0x800e
/* 05D49C 8005C89C C4296A28 */ lwc1 $f9, %lo(D_800E6A28)($at)
/* 05D4A0 8005C8A0 C4286A2C */ lwc1 $f8, %lo(D_800E6A28 + 4)($at)
/* 05D4A4 8005C8A4 460001A1 */ cvt.d.s $f6, $f0
/* 05D4A8 8005C8A8 4628303C */ c.lt.d $f6, $f8
/* 05D4AC 8005C8AC 8FA50038 */ lw $a1, 0x38($sp)
/* 05D4B0 8005C8B0 C7AE0048 */ lwc1 $f14, 0x48($sp)
/* 05D4B4 8005C8B4 4500001E */ bc1f .L8005C930
/* 05D4B8 8005C8B8 00000000 */ nop
/* 05D4BC 8005C8BC 4600A306 */ mov.s $f12, $f20
/* 05D4C0 8005C8C0 0C01C1D4 */ jal arctan2_f
/* 05D4C4 8005C8C4 AFA50038 */ sw $a1, 0x38($sp)
/* 05D4C8 8005C8C8 86380000 */ lh $t8, ($s1)
/* 05D4CC 8005C8CC 34018000 */ li $at, 32768
/* 05D4D0 8005C8D0 3319FFFF */ andi $t9, $t8, 0xffff
/* 05D4D4 8005C8D4 00591823 */ subu $v1, $v0, $t9
/* 05D4D8 8005C8D8 00611821 */ addu $v1, $v1, $at
/* 05D4DC 8005C8DC 8FA50038 */ lw $a1, 0x38($sp)
/* 05D4E0 8005C8E0 34018001 */ li $at, 32769
/* 05D4E4 8005C8E4 0061082A */ slt $at, $v1, $at
/* 05D4E8 8005C8E8 14200004 */ bnez $at, .L8005C8FC
/* 05D4EC 8005C8EC 00051023 */ negu $v0, $a1
/* 05D4F0 8005C8F0 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff
/* 05D4F4 8005C8F4 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1
/* 05D4F8 8005C8F8 00611821 */ addu $v1, $v1, $at
.L8005C8FC:
/* 05D4FC 8005C8FC 28618000 */ slti $at, $v1, -0x8000
/* 05D500 8005C900 10200002 */ beqz $at, .L8005C90C
/* 05D504 8005C904 3401FFFF */ li $at, 65535
/* 05D508 8005C908 00611821 */ addu $v1, $v1, $at
.L8005C90C:
/* 05D50C 8005C90C 00A3082A */ slt $at, $a1, $v1
/* 05D510 8005C910 10200003 */ beqz $at, .L8005C920
/* 05D514 8005C914 0062082A */ slt $at, $v1, $v0
/* 05D518 8005C918 00A01825 */ move $v1, $a1
/* 05D51C 8005C91C 0062082A */ slt $at, $v1, $v0
.L8005C920:
/* 05D520 8005C920 10200002 */ beqz $at, .L8005C92C
/* 05D524 8005C924 00000000 */ nop
/* 05D528 8005C928 00401825 */ move $v1, $v0
.L8005C92C:
/* 05D52C 8005C92C A603016C */ sh $v1, 0x16c($s0)
.L8005C930:
/* 05D530 8005C930 822A003B */ lb $t2, 0x3b($s1)
/* 05D534 8005C934 24010001 */ li $at, 1
/* 05D538 8005C938 1541000B */ bne $t2, $at, .L8005C968
/* 05D53C 8005C93C 3C028012 */ lui $v0, %hi(D_8011D5C0) # $v0, 0x8012
/* 05D540 8005C940 820B01E7 */ lb $t3, 0x1e7($s0)
/* 05D544 8005C944 00000000 */ nop
/* 05D548 8005C948 316C001F */ andi $t4, $t3, 0x1f
/* 05D54C 8005C94C 2981000A */ slti $at, $t4, 0xa
/* 05D550 8005C950 10200006 */ beqz $at, .L8005C96C
/* 05D554 8005C954 8FA30030 */ lw $v1, 0x30($sp)
/* 05D558 8005C958 860D016C */ lh $t5, 0x16c($s0)
/* 05D55C 8005C95C 00000000 */ nop
/* 05D560 8005C960 000D7043 */ sra $t6, $t5, 1
/* 05D564 8005C964 A60E016C */ sh $t6, 0x16c($s0)
.L8005C968:
/* 05D568 8005C968 8FA30030 */ lw $v1, 0x30($sp)
.L8005C96C:
/* 05D56C 8005C96C 2442D5C0 */ addiu $v0, %lo(D_8011D5C0) # addiu $v0, $v0, -0x2a40
/* 05D570 8005C970 C4420000 */ lwc1 $f2, ($v0)
/* 05D574 8005C974 C4600010 */ lwc1 $f0, 0x10($v1)
/* 05D578 8005C978 44809000 */ mtc1 $zero, $f18
/* 05D57C 8005C97C 4600103C */ c.lt.s $f2, $f0
/* 05D580 8005C980 8C700064 */ lw $s0, 0x64($v1)
/* 05D584 8005C984 45000005 */ bc1f .L8005C99C
/* 05D588 8005C988 3C014079 */ li $at, 0x40790000 # 3.890625
/* 05D58C 8005C98C E4400000 */ swc1 $f0, ($v0)
/* 05D590 8005C990 C4600010 */ lwc1 $f0, 0x10($v1)
/* 05D594 8005C994 C4420000 */ lwc1 $f2, ($v0)
/* 05D598 8005C998 00000000 */ nop
.L8005C99C:
/* 05D59C 8005C99C 44819800 */ mtc1 $at, $f19
/* 05D5A0 8005C9A0 460002A1 */ cvt.d.s $f10, $f0
/* 05D5A4 8005C9A4 46325100 */ add.d $f4, $f10, $f18
/* 05D5A8 8005C9A8 460011A1 */ cvt.d.s $f6, $f2
/* 05D5AC 8005C9AC 4626203C */ c.lt.d $f4, $f6
/* 05D5B0 8005C9B0 00000000 */ nop
/* 05D5B4 8005C9B4 4500000F */ bc1f .L8005C9F4
/* 05D5B8 8005C9B8 00000000 */ nop
/* 05D5BC 8005C9BC 0C030063 */ jal func_800C018C
/* 05D5C0 8005C9C0 00000000 */ nop
/* 05D5C4 8005C9C4 14400007 */ bnez $v0, .L8005C9E4
/* 05D5C8 8005C9C8 00000000 */ nop
/* 05D5CC 8005C9CC 0C027B20 */ jal is_in_two_player_adventure
/* 05D5D0 8005C9D0 00000000 */ nop
/* 05D5D4 8005C9D4 10400003 */ beqz $v0, .L8005C9E4
/* 05D5D8 8005C9D8 00000000 */ nop
/* 05D5DC 8005C9DC 0C01BCE6 */ jal func_8006F398
/* 05D5E0 8005C9E0 00000000 */ nop
.L8005C9E4:
/* 05D5E4 8005C9E4 0C01BC50 */ jal func_8006F140
/* 05D5E8 8005C9E8 24040001 */ li $a0, 1
/* 05D5EC 8005C9EC 8FA30030 */ lw $v1, 0x30($sp)
/* 05D5F0 8005C9F0 00000000 */ nop
.L8005C9F4:
/* 05D5F4 8005C9F4 8C62004C */ lw $v0, 0x4c($v1)
/* 05D5F8 8005C9F8 3C058012 */ lui $a1, %hi(D_8011D5C4) # $a1, 0x8012
/* 05D5FC 8005C9FC 8C4F0000 */ lw $t7, ($v0)
/* 05D600 8005CA00 24A5D5C4 */ addiu $a1, %lo(D_8011D5C4) # addiu $a1, $a1, -0x2a3c
/* 05D604 8005CA04 162F000B */ bne $s1, $t7, .L8005CA34
/* 05D608 8005CA08 00000000 */ nop
/* 05D60C 8005CA0C 84580014 */ lh $t8, 0x14($v0)
/* 05D610 8005CA10 00000000 */ nop
/* 05D614 8005CA14 33190008 */ andi $t9, $t8, 8
/* 05D618 8005CA18 13200006 */ beqz $t9, .L8005CA34
/* 05D61C 8005CA1C 00000000 */ nop
/* 05D620 8005CA20 822A003B */ lb $t2, 0x3b($s1)
/* 05D624 8005CA24 24010001 */ li $at, 1
/* 05D628 8005CA28 15410002 */ bne $t2, $at, .L8005CA34
/* 05D62C 8005CA2C 240B0004 */ li $t3, 4
/* 05D630 8005CA30 A20B0187 */ sb $t3, 0x187($s0)
.L8005CA34:
/* 05D634 8005CA34 820C01D8 */ lb $t4, 0x1d8($s0)
/* 05D638 8005CA38 00000000 */ nop
/* 05D63C 8005CA3C 11800008 */ beqz $t4, .L8005CA60
/* 05D640 8005CA40 8FBF002C */ lw $ra, 0x2c($sp)
/* 05D644 8005CA44 80AD0000 */ lb $t5, ($a1)
/* 05D648 8005CA48 240E0001 */ li $t6, 1
/* 05D64C 8005CA4C 15A00003 */ bnez $t5, .L8005CA5C
/* 05D650 8005CA50 02002025 */ move $a0, $s0
/* 05D654 8005CA54 0C0172DA */ jal func_8005CB68
/* 05D658 8005CA58 A0AE0000 */ sb $t6, ($a1)
.L8005CA5C:
/* 05D65C 8005CA5C 8FBF002C */ lw $ra, 0x2c($sp)
.L8005CA60:
/* 05D660 8005CA60 C7B50018 */ lwc1 $f21, 0x18($sp)
/* 05D664 8005CA64 C7B4001C */ lwc1 $f20, 0x1c($sp)
/* 05D668 8005CA68 8FB00024 */ lw $s0, 0x24($sp)
/* 05D66C 8005CA6C 8FB10028 */ lw $s1, 0x28($sp)
/* 05D670 8005CA70 03E00008 */ jr $ra
/* 05D674 8005CA74 27BD0058 */ addiu $sp, $sp, 0x58
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,184 +0,0 @@
glabel func_8005E204
/* 05EE04 8005E204 27BDFF78 */ addiu $sp, $sp, -0x88
/* 05EE08 8005E208 AFB70044 */ sw $s7, 0x44($sp)
/* 05EE0C 8005E20C AFB30034 */ sw $s3, 0x34($sp)
/* 05EE10 8005E210 E7B40024 */ swc1 $f20, 0x24($sp)
/* 05EE14 8005E214 4486A000 */ mtc1 $a2, $f20
/* 05EE18 8005E218 00809825 */ move $s3, $a0
/* 05EE1C 8005E21C 00A0B825 */ move $s7, $a1
/* 05EE20 8005E220 AFBF004C */ sw $ra, 0x4c($sp)
/* 05EE24 8005E224 AFB00028 */ sw $s0, 0x28($sp)
/* 05EE28 8005E228 00E08025 */ move $s0, $a3
/* 05EE2C 8005E22C AFBE0048 */ sw $fp, 0x48($sp)
/* 05EE30 8005E230 AFB60040 */ sw $s6, 0x40($sp)
/* 05EE34 8005E234 AFB5003C */ sw $s5, 0x3c($sp)
/* 05EE38 8005E238 AFB40038 */ sw $s4, 0x38($sp)
/* 05EE3C 8005E23C AFB20030 */ sw $s2, 0x30($sp)
/* 05EE40 8005E240 AFB1002C */ sw $s1, 0x2c($sp)
/* 05EE44 8005E244 E7B50020 */ swc1 $f21, 0x20($sp)
/* 05EE48 8005E248 27A5007C */ addiu $a1, $sp, 0x7c
/* 05EE4C 8005E24C 0C003A62 */ jal func_8000E988
/* 05EE50 8005E250 27A40080 */ addiu $a0, $sp, 0x80
/* 05EE54 8005E254 320F0100 */ andi $t7, $s0, 0x100
/* 05EE58 8005E258 000FC043 */ sra $t8, $t7, 1
/* 05EE5C 8005E25C 37190008 */ ori $t9, $t8, 8
/* 05EE60 8005E260 A3B00064 */ sb $s0, 0x64($sp)
/* 05EE64 8005E264 A3B90065 */ sb $t9, 0x65($sp)
/* 05EE68 8005E268 C6E60038 */ lwc1 $f6, 0x38($s7)
/* 05EE6C 8005E26C C664000C */ lwc1 $f4, 0xc($s3)
/* 05EE70 8005E270 46143202 */ mul.s $f8, $f6, $f20
/* 05EE74 8005E274 8FAE007C */ lw $t6, 0x7c($sp)
/* 05EE78 8005E278 8FBE0098 */ lw $fp, 0x98($sp)
/* 05EE7C 8005E27C 0000A825 */ move $s5, $zero
/* 05EE80 8005E280 46082281 */ sub.s $f10, $f4, $f8
/* 05EE84 8005E284 4448F800 */ cfc1 $t0, $31
/* 05EE88 8005E288 00000000 */ nop
/* 05EE8C 8005E28C 35010003 */ ori $at, $t0, 3
/* 05EE90 8005E290 38210002 */ xori $at, $at, 2
/* 05EE94 8005E294 44C1F800 */ ctc1 $at, $31
/* 05EE98 8005E298 00000000 */ nop
/* 05EE9C 8005E29C 46005424 */ cvt.w.s $f16, $f10
/* 05EEA0 8005E2A0 44098000 */ mfc1 $t1, $f16
/* 05EEA4 8005E2A4 44C8F800 */ ctc1 $t0, $31
/* 05EEA8 8005E2A8 A7A90066 */ sh $t1, 0x66($sp)
/* 05EEAC 8005E2AC C6E6003C */ lwc1 $f6, 0x3c($s7)
/* 05EEB0 8005E2B0 C6720010 */ lwc1 $f18, 0x10($s3)
/* 05EEB4 8005E2B4 46143102 */ mul.s $f4, $f6, $f20
/* 05EEB8 8005E2B8 46049201 */ sub.s $f8, $f18, $f4
/* 05EEBC 8005E2BC 444AF800 */ cfc1 $t2, $31
/* 05EEC0 8005E2C0 00000000 */ nop
/* 05EEC4 8005E2C4 35410003 */ ori $at, $t2, 3
/* 05EEC8 8005E2C8 38210002 */ xori $at, $at, 2
/* 05EECC 8005E2CC 44C1F800 */ ctc1 $at, $31
/* 05EED0 8005E2D0 00000000 */ nop
/* 05EED4 8005E2D4 460042A4 */ cvt.w.s $f10, $f8
/* 05EED8 8005E2D8 440B5000 */ mfc1 $t3, $f10
/* 05EEDC 8005E2DC 44CAF800 */ ctc1 $t2, $31
/* 05EEE0 8005E2E0 A7AB0068 */ sh $t3, 0x68($sp)
/* 05EEE4 8005E2E4 C6E60040 */ lwc1 $f6, 0x40($s7)
/* 05EEE8 8005E2E8 C6700014 */ lwc1 $f16, 0x14($s3)
/* 05EEEC 8005E2EC 46143482 */ mul.s $f18, $f6, $f20
/* 05EEF0 8005E2F0 46128101 */ sub.s $f4, $f16, $f18
/* 05EEF4 8005E2F4 444CF800 */ cfc1 $t4, $31
/* 05EEF8 8005E2F8 00000000 */ nop
/* 05EEFC 8005E2FC 35810003 */ ori $at, $t4, 3
/* 05EF00 8005E300 38210002 */ xori $at, $at, 2
/* 05EF04 8005E304 44C1F800 */ ctc1 $at, $31
/* 05EF08 8005E308 3C014010 */ li $at, 0x40100000 # 2.250000
/* 05EF0C 8005E30C 46002224 */ cvt.w.s $f8, $f4
/* 05EF10 8005E310 440D4000 */ mfc1 $t5, $f8
/* 05EF14 8005E314 44CCF800 */ ctc1 $t4, $31
/* 05EF18 8005E318 19C00058 */ blez $t6, .L8005E47C
/* 05EF1C 8005E31C A7AD006A */ sh $t5, 0x6a($sp)
/* 05EF20 8005E320 4481A800 */ mtc1 $at, $f21
/* 05EF24 8005E324 4480A000 */ mtc1 $zero, $f20
/* 05EF28 8005E328 0040B025 */ move $s6, $v0
.L8005E32C:
/* 05EF2C 8005E32C 8ED10000 */ lw $s1, ($s6)
/* 05EF30 8005E330 2401006B */ li $at, 107
/* 05EF34 8005E334 862F0048 */ lh $t7, 0x48($s1)
/* 05EF38 8005E338 00000000 */ nop
/* 05EF3C 8005E33C 15E1004B */ bne $t7, $at, .L8005E46C
/* 05EF40 8005E340 8FAF007C */ lw $t7, 0x7c($sp)
/* 05EF44 8005E344 8E32003C */ lw $s2, 0x3c($s1)
/* 05EF48 8005E348 82F80193 */ lb $t8, 0x193($s7)
/* 05EF4C 8005E34C 82420008 */ lb $v0, 8($s2)
/* 05EF50 8005E350 27190001 */ addiu $t9, $t8, 1
/* 05EF54 8005E354 13220003 */ beq $t9, $v0, .L8005E364
/* 05EF58 8005E358 00000000 */ nop
/* 05EF5C 8005E35C 14400043 */ bnez $v0, .L8005E46C
/* 05EF60 8005E360 8FAF007C */ lw $t7, 0x7c($sp)
.L8005E364:
/* 05EF64 8005E364 C62A000C */ lwc1 $f10, 0xc($s1)
/* 05EF68 8005E368 C666000C */ lwc1 $f6, 0xc($s3)
/* 05EF6C 8005E36C C6300010 */ lwc1 $f16, 0x10($s1)
/* 05EF70 8005E370 46065001 */ sub.s $f0, $f10, $f6
/* 05EF74 8005E374 C6720010 */ lwc1 $f18, 0x10($s3)
/* 05EF78 8005E378 46000282 */ mul.s $f10, $f0, $f0
/* 05EF7C 8005E37C 46128081 */ sub.s $f2, $f16, $f18
/* 05EF80 8005E380 C6240014 */ lwc1 $f4, 0x14($s1)
/* 05EF84 8005E384 C6680014 */ lwc1 $f8, 0x14($s3)
/* 05EF88 8005E388 46021182 */ mul.s $f6, $f2, $f2
/* 05EF8C 8005E38C 46082381 */ sub.s $f14, $f4, $f8
/* 05EF90 8005E390 460E7482 */ mul.s $f18, $f14, $f14
/* 05EF94 8005E394 46065400 */ add.s $f16, $f10, $f6
/* 05EF98 8005E398 0C0326B4 */ jal sqrtf
/* 05EF9C 8005E39C 46128300 */ add.s $f12, $f16, $f18
/* 05EFA0 8005E3A0 82480009 */ lb $t0, 9($s2)
/* 05EFA4 8005E3A4 46000121 */ cvt.d.s $f4, $f0
/* 05EFA8 8005E3A8 310900FF */ andi $t1, $t0, 0xff
/* 05EFAC 8005E3AC 44894000 */ mtc1 $t1, $f8
/* 05EFB0 8005E3B0 00000000 */ nop
/* 05EFB4 8005E3B4 468042A0 */ cvt.s.w $f10, $f8
/* 05EFB8 8005E3B8 460051A1 */ cvt.d.s $f6, $f10
/* 05EFBC 8005E3BC 46343402 */ mul.d $f16, $f6, $f20
/* 05EFC0 8005E3C0 4630203C */ c.lt.d $f4, $f16
/* 05EFC4 8005E3C4 00000000 */ nop
/* 05EFC8 8005E3C8 45000026 */ bc1f .L8005E464
/* 05EFCC 8005E3CC 00000000 */ nop
/* 05EFD0 8005E3D0 8E2A0078 */ lw $t2, 0x78($s1)
/* 05EFD4 8005E3D4 240B0001 */ li $t3, 1
/* 05EFD8 8005E3D8 15400023 */ bnez $t2, .L8005E468
/* 05EFDC 8005E3DC 27A40064 */ addiu $a0, $sp, 0x64
/* 05EFE0 8005E3E0 AE2B0078 */ sw $t3, 0x78($s1)
/* 05EFE4 8005E3E4 0C003A95 */ jal spawn_object
/* 05EFE8 8005E3E8 24050001 */ li $a1, 1
/* 05EFEC 8005E3EC 1040001E */ beqz $v0, .L8005E468
/* 05EFF0 8005E3F0 00408025 */ move $s0, $v0
/* 05EFF4 8005E3F4 AC40003C */ sw $zero, 0x3c($v0)
/* 05EFF8 8005E3F8 C672001C */ lwc1 $f18, 0x1c($s3)
/* 05EFFC 8005E3FC 00002025 */ move $a0, $zero
/* 05F000 8005E400 E452001C */ swc1 $f18, 0x1c($v0)
/* 05F004 8005E404 C6680020 */ lwc1 $f8, 0x20($s3)
/* 05F008 8005E408 240500FF */ li $a1, 255
/* 05F00C 8005E40C E4480020 */ swc1 $f8, 0x20($v0)
/* 05F010 8005E410 C66A0024 */ lwc1 $f10, 0x24($s3)
/* 05F014 8005E414 AC510078 */ sw $s1, 0x78($v0)
/* 05F018 8005E418 E44A0024 */ swc1 $f10, 0x24($v0)
/* 05F01C 8005E41C 824C000A */ lb $t4, 0xa($s2)
/* 05F020 8005E420 33D4FFFF */ andi $s4, $fp, 0xffff
/* 05F024 8005E424 000C6900 */ sll $t5, $t4, 4
/* 05F028 8005E428 01AC6823 */ subu $t5, $t5, $t4
/* 05F02C 8005E42C 000D6880 */ sll $t5, $t5, 2
/* 05F030 8005E430 0C01BE53 */ jal get_random_number_from_range
/* 05F034 8005E434 AC4D007C */ sw $t5, 0x7c($v0)
/* 05F038 8005E438 8E05000C */ lw $a1, 0xc($s0)
/* 05F03C 8005E43C 8E060010 */ lw $a2, 0x10($s0)
/* 05F040 8005E440 8E070014 */ lw $a3, 0x14($s0)
/* 05F044 8005E444 A6020018 */ sh $v0, 0x18($s0)
/* 05F048 8005E448 240E0004 */ li $t6, 4
/* 05F04C 8005E44C AFAE0010 */ sw $t6, 0x10($sp)
/* 05F050 8005E450 AFA00014 */ sw $zero, 0x14($sp)
/* 05F054 8005E454 0C002556 */ jal func_80009558
/* 05F058 8005E458 3284FFFF */ andi $a0, $s4, 0xffff
/* 05F05C 8005E45C 10000003 */ b .L8005E46C
/* 05F060 8005E460 8FAF007C */ lw $t7, 0x7c($sp)
.L8005E464:
/* 05F064 8005E464 AE200078 */ sw $zero, 0x78($s1)
.L8005E468:
/* 05F068 8005E468 8FAF007C */ lw $t7, 0x7c($sp)
.L8005E46C:
/* 05F06C 8005E46C 26B50001 */ addiu $s5, $s5, 1
/* 05F070 8005E470 02AF082A */ slt $at, $s5, $t7
/* 05F074 8005E474 1420FFAD */ bnez $at, .L8005E32C
/* 05F078 8005E478 26D60004 */ addiu $s6, $s6, 4
.L8005E47C:
/* 05F07C 8005E47C 8FBF004C */ lw $ra, 0x4c($sp)
/* 05F080 8005E480 C7B50020 */ lwc1 $f21, 0x20($sp)
/* 05F084 8005E484 C7B40024 */ lwc1 $f20, 0x24($sp)
/* 05F088 8005E488 8FB00028 */ lw $s0, 0x28($sp)
/* 05F08C 8005E48C 8FB1002C */ lw $s1, 0x2c($sp)
/* 05F090 8005E490 8FB20030 */ lw $s2, 0x30($sp)
/* 05F094 8005E494 8FB30034 */ lw $s3, 0x34($sp)
/* 05F098 8005E498 8FB40038 */ lw $s4, 0x38($sp)
/* 05F09C 8005E49C 8FB5003C */ lw $s5, 0x3c($sp)
/* 05F0A0 8005E4A0 8FB60040 */ lw $s6, 0x40($sp)
/* 05F0A4 8005E4A4 8FB70044 */ lw $s7, 0x44($sp)
/* 05F0A8 8005E4A8 8FBE0048 */ lw $fp, 0x48($sp)
/* 05F0AC 8005E4AC 03E00008 */ jr $ra
/* 05F0B0 8005E4B0 27BD0088 */ addiu $sp, $sp, 0x88
/* 05F0B4 8005E4B4 00000000 */ nop
/* 05F0B8 8005E4B8 00000000 */ nop
/* 05F0BC 8005E4BC 00000000 */ nop
@@ -1,408 +0,0 @@
.late_rodata
glabel D_800E6AA0
.double 0.3
glabel D_800E6AA8
.double 700.0
.text
glabel func_8005E4C0
/* 05F0C0 8005E4C0 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 05F0C4 8005E4C4 AFA40058 */ sw $a0, 0x58($sp)
/* 05F0C8 8005E4C8 AFBF002C */ sw $ra, 0x2c($sp)
/* 05F0CC 8005E4CC AFB10028 */ sw $s1, 0x28($sp)
/* 05F0D0 8005E4D0 AFB00024 */ sw $s0, 0x24($sp)
/* 05F0D4 8005E4D4 3C04800E */ lui $a0, %hi(D_800DCE40) # $a0, 0x800e
/* 05F0D8 8005E4D8 00E08025 */ move $s0, $a3
/* 05F0DC 8005E4DC 00C08825 */ move $s1, $a2
/* 05F0E0 8005E4E0 E7B50018 */ swc1 $f21, 0x18($sp)
/* 05F0E4 8005E4E4 E7B4001C */ swc1 $f20, 0x1c($sp)
/* 05F0E8 8005E4E8 AFA5005C */ sw $a1, 0x5c($sp)
/* 05F0EC 8005E4EC 0C01729E */ jal func_8005CA78
/* 05F0F0 8005E4F0 2484CE40 */ addiu $a0, %lo(D_800DCE40) # addiu $a0, $a0, -0x31c0
/* 05F0F4 8005E4F4 8FA2006C */ lw $v0, 0x6c($sp)
/* 05F0F8 8005E4F8 8FA50068 */ lw $a1, 0x68($sp)
/* 05F0FC 8005E4FC 8C4E0000 */ lw $t6, ($v0)
/* 05F100 8005E500 2403FFEF */ li $v1, -17
/* 05F104 8005E504 01C37824 */ and $t7, $t6, $v1
/* 05F108 8005E508 AC4F0000 */ sw $t7, ($v0)
/* 05F10C 8005E50C 8CB80000 */ lw $t8, ($a1)
/* 05F110 8005E510 24010001 */ li $at, 1
/* 05F114 8005E514 0303C824 */ and $t9, $t8, $v1
/* 05F118 8005E518 ACB90000 */ sw $t9, ($a1)
/* 05F11C 8005E51C 822A003B */ lb $t2, 0x3b($s1)
/* 05F120 8005E520 00000000 */ nop
/* 05F124 8005E524 A7AA0056 */ sh $t2, 0x56($sp)
/* 05F128 8005E528 862B0018 */ lh $t3, 0x18($s1)
/* 05F12C 8005E52C 00000000 */ nop
/* 05F130 8005E530 A7AB0054 */ sh $t3, 0x54($sp)
/* 05F134 8005E534 860C016A */ lh $t4, 0x16a($s0)
/* 05F138 8005E538 00000000 */ nop
/* 05F13C 8005E53C A7AC0052 */ sh $t4, 0x52($sp)
/* 05F140 8005E540 820D01D8 */ lb $t5, 0x1d8($s0)
/* 05F144 8005E544 00000000 */ nop
/* 05F148 8005E548 15A10008 */ bne $t5, $at, .L8005E56C
/* 05F14C 8005E54C 8FA90070 */ lw $t1, 0x70($sp)
/* 05F150 8005E550 0C008500 */ jal func_80021400
/* 05F154 8005E554 24040082 */ li $a0, 130
/* 05F158 8005E558 820E01D8 */ lb $t6, 0x1d8($s0)
/* 05F15C 8005E55C 8FA50068 */ lw $a1, 0x68($sp)
/* 05F160 8005E560 25CF0001 */ addiu $t7, $t6, 1
/* 05F164 8005E564 A20F01D8 */ sb $t7, 0x1d8($s0)
/* 05F168 8005E568 8FA90070 */ lw $t1, 0x70($sp)
.L8005E56C:
/* 05F16C 8005E56C 24040064 */ li $a0, 100
/* 05F170 8005E570 8D230000 */ lw $v1, ($t1)
/* 05F174 8005E574 00000000 */ nop
/* 05F178 8005E578 14640002 */ bne $v1, $a0, .L8005E584
/* 05F17C 8005E57C 3C018012 */ lui $at, %hi(D_8011D5F0) # $at, 0x8012
/* 05F180 8005E580 A020D5F0 */ sb $zero, %lo(D_8011D5F0)($at)
.L8005E584:
/* 05F184 8005E584 86180000 */ lh $t8, ($s0)
/* 05F188 8005E588 2408FFFF */ li $t0, -1
/* 05F18C 8005E58C 1518001E */ bne $t0, $t8, .L8005E608
/* 05F190 8005E590 00000000 */ nop
/* 05F194 8005E594 8D220000 */ lw $v0, ($t1)
/* 05F198 8005E598 00000000 */ nop
/* 05F19C 8005E59C 1082001A */ beq $a0, $v0, .L8005E608
/* 05F1A0 8005E5A0 2459FFE2 */ addiu $t9, $v0, -0x1e
/* 05F1A4 8005E5A4 07210016 */ bgez $t9, .L8005E600
/* 05F1A8 8005E5A8 AD390000 */ sw $t9, ($t1)
/* 05F1AC 8005E5AC 3C0B8012 */ lui $t3, %hi(D_8011D5F1) # $t3, 0x8012
/* 05F1B0 8005E5B0 816BD5F1 */ lb $t3, %lo(D_8011D5F1)($t3)
/* 05F1B4 8005E5B4 00002025 */ move $a0, $zero
/* 05F1B8 8005E5B8 15600009 */ bnez $t3, .L8005E5E0
/* 05F1BC 8005E5BC 240D0001 */ li $t5, 1
/* 05F1C0 8005E5C0 0C0172C1 */ jal func_8005CB04
/* 05F1C4 8005E5C4 AFA30040 */ sw $v1, 0x40($sp)
/* 05F1C8 8005E5C8 8FA30040 */ lw $v1, 0x40($sp)
/* 05F1CC 8005E5CC 8FA50068 */ lw $a1, 0x68($sp)
/* 05F1D0 8005E5D0 8FA90070 */ lw $t1, 0x70($sp)
/* 05F1D4 8005E5D4 240C0005 */ li $t4, 5
/* 05F1D8 8005E5D8 A20C01D3 */ sb $t4, 0x1d3($s0)
/* 05F1DC 8005E5DC 240D0001 */ li $t5, 1
.L8005E5E0:
/* 05F1E0 8005E5E0 3C018012 */ lui $at, %hi(D_8011D5F1) # $at, 0x8012
/* 05F1E4 8005E5E4 A02DD5F1 */ sb $t5, %lo(D_8011D5F1)($at)
/* 05F1E8 8005E5E8 AD200000 */ sw $zero, ($t1)
/* 05F1EC 8005E5EC 8CAE0000 */ lw $t6, ($a1)
/* 05F1F0 8005E5F0 00000000 */ nop
/* 05F1F4 8005E5F4 35CF8000 */ ori $t7, $t6, 0x8000
/* 05F1F8 8005E5F8 10000003 */ b .L8005E608
/* 05F1FC 8005E5FC ACAF0000 */ sw $t7, ($a1)
.L8005E600:
/* 05F200 8005E600 3C018012 */ lui $at, %hi(D_8011D5F1) # $at, 0x8012
/* 05F204 8005E604 A020D5F1 */ sb $zero, %lo(D_8011D5F1)($at)
.L8005E608:
/* 05F208 8005E608 8FA40058 */ lw $a0, 0x58($sp)
/* 05F20C 8005E60C 8FA5005C */ lw $a1, 0x5c($sp)
/* 05F210 8005E610 02203025 */ move $a2, $s1
/* 05F214 8005E614 02003825 */ move $a3, $s0
/* 05F218 8005E618 0C013DFD */ jal func_8004F7F4
/* 05F21C 8005E61C AFA30040 */ sw $v1, 0x40($sp)
/* 05F220 8005E620 8FA30040 */ lw $v1, 0x40($sp)
/* 05F224 8005E624 8FA90070 */ lw $t1, 0x70($sp)
/* 05F228 8005E628 44808000 */ mtc1 $zero, $f16
/* 05F22C 8005E62C AD230000 */ sw $v1, ($t1)
/* 05F230 8005E630 E6100030 */ swc1 $f16, 0x30($s0)
/* 05F234 8005E634 87B80052 */ lh $t8, 0x52($sp)
/* 05F238 8005E638 2408FFFF */ li $t0, -1
/* 05F23C 8005E63C A618016A */ sh $t8, 0x16a($s0)
/* 05F240 8005E640 87B90056 */ lh $t9, 0x56($sp)
/* 05F244 8005E644 00000000 */ nop
/* 05F248 8005E648 A239003B */ sb $t9, 0x3b($s1)
/* 05F24C 8005E64C 87AA0054 */ lh $t2, 0x54($sp)
/* 05F250 8005E650 00000000 */ nop
/* 05F254 8005E654 A62A0018 */ sh $t2, 0x18($s1)
/* 05F258 8005E658 820B0187 */ lb $t3, 0x187($s0)
/* 05F25C 8005E65C 00000000 */ nop
/* 05F260 8005E660 11600023 */ beqz $t3, .L8005E6F0
/* 05F264 8005E664 00000000 */ nop
/* 05F268 8005E668 8222003B */ lb $v0, 0x3b($s1)
/* 05F26C 8005E66C 24010002 */ li $at, 2
/* 05F270 8005E670 1041001F */ beq $v0, $at, .L8005E6F0
/* 05F274 8005E674 240C0002 */ li $t4, 2
/* 05F278 8005E678 A20201CD */ sb $v0, 0x1cd($s0)
/* 05F27C 8005E67C C6240020 */ lwc1 $f4, 0x20($s1)
/* 05F280 8005E680 3C01401E */ li $at, 0x401E0000 # 2.468750
/* 05F284 8005E684 44814800 */ mtc1 $at, $f9
/* 05F288 8005E688 44804000 */ mtc1 $zero, $f8
/* 05F28C 8005E68C 460021A1 */ cvt.d.s $f6, $f4
/* 05F290 8005E690 46283280 */ add.d $f10, $f6, $f8
/* 05F294 8005E694 A22C003B */ sb $t4, 0x3b($s1)
/* 05F298 8005E698 462054A0 */ cvt.s.d $f18, $f10
/* 05F29C 8005E69C 24040001 */ li $a0, 1
/* 05F2A0 8005E6A0 0C0172C1 */ jal func_8005CB04
/* 05F2A4 8005E6A4 E6320020 */ swc1 $f18, 0x20($s1)
/* 05F2A8 8005E6A8 24040011 */ li $a0, 17
/* 05F2AC 8005E6AC 0C000741 */ jal play_sound_global
/* 05F2B0 8005E6B0 00002825 */ move $a1, $zero
/* 05F2B4 8005E6B4 3C014140 */ li $at, 0x41400000 # 12.000000
/* 05F2B8 8005E6B8 44816000 */ mtc1 $at, $f12
/* 05F2BC 8005E6BC 0C01A7CA */ jal func_80069F28
/* 05F2C0 8005E6C0 00000000 */ nop
/* 05F2C4 8005E6C4 3C01800E */ lui $at, %hi(D_800E6AA0 + 4) # $at, 0x800e
/* 05F2C8 8005E6C8 C604002C */ lwc1 $f4, 0x2c($s0)
/* 05F2CC 8005E6CC C4296AA0 */ lwc1 $f9, %lo(D_800E6AA0)($at)
/* 05F2D0 8005E6D0 C4286AA4 */ lwc1 $f8, %lo(D_800E6AA0 + 4)($at)
/* 05F2D4 8005E6D4 460021A1 */ cvt.d.s $f6, $f4
/* 05F2D8 8005E6D8 46283282 */ mul.d $f10, $f6, $f8
/* 05F2DC 8005E6DC 44808000 */ mtc1 $zero, $f16
/* 05F2E0 8005E6E0 2408FFFF */ li $t0, -1
/* 05F2E4 8005E6E4 E610000C */ swc1 $f16, 0xc($s0)
/* 05F2E8 8005E6E8 462054A0 */ cvt.s.d $f18, $f10
/* 05F2EC 8005E6EC E612002C */ swc1 $f18, 0x2c($s0)
.L8005E6F0:
/* 05F2F0 8005E6F0 8E0D0148 */ lw $t5, 0x148($s0)
/* 05F2F4 8005E6F4 A2000187 */ sb $zero, 0x187($s0)
/* 05F2F8 8005E6F8 11A00010 */ beqz $t5, .L8005E73C
/* 05F2FC 8005E6FC 00000000 */ nop
/* 05F300 8005E700 C620001C */ lwc1 $f0, 0x1c($s1)
/* 05F304 8005E704 C6220024 */ lwc1 $f2, 0x24($s1)
/* 05F308 8005E708 46000502 */ mul.s $f20, $f0, $f0
/* 05F30C 8005E70C 00000000 */ nop
/* 05F310 8005E710 46021382 */ mul.s $f14, $f2, $f2
/* 05F314 8005E714 00000000 */ nop
/* 05F318 8005E718 4614A102 */ mul.s $f4, $f20, $f20
/* 05F31C 8005E71C 00000000 */ nop
/* 05F320 8005E720 460E7182 */ mul.s $f6, $f14, $f14
/* 05F324 8005E724 0C0326B4 */ jal sqrtf
/* 05F328 8005E728 46062300 */ add.s $f12, $f4, $f6
/* 05F32C 8005E72C 46000207 */ neg.s $f8, $f0
/* 05F330 8005E730 44808000 */ mtc1 $zero, $f16
/* 05F334 8005E734 E608002C */ swc1 $f8, 0x2c($s0)
/* 05F338 8005E738 2408FFFF */ li $t0, -1
.L8005E73C:
/* 05F33C 8005E73C 8E2E0068 */ lw $t6, 0x68($s1)
/* 05F340 8005E740 8238003B */ lb $t8, 0x3b($s1)
/* 05F344 8005E744 8DC20000 */ lw $v0, ($t6)
/* 05F348 8005E748 0018C8C0 */ sll $t9, $t8, 3
/* 05F34C 8005E74C 8C430000 */ lw $v1, ($v0)
/* 05F350 8005E750 240E0001 */ li $t6, 1
/* 05F354 8005E754 8C6F0044 */ lw $t7, 0x44($v1)
/* 05F358 8005E758 00000000 */ nop
/* 05F35C 8005E75C 01F95021 */ addu $t2, $t7, $t9
/* 05F360 8005E760 8D4B0004 */ lw $t3, 4($t2)
/* 05F364 8005E764 A22E003B */ sb $t6, 0x3b($s1)
/* 05F368 8005E768 C7B2005C */ lwc1 $f18, 0x5c($sp)
/* 05F36C 8005E76C 000B6100 */ sll $t4, $t3, 4
/* 05F370 8005E770 258DFFEF */ addiu $t5, $t4, -0x11
/* 05F374 8005E774 448D5000 */ mtc1 $t5, $f10
/* 05F378 8005E778 C604000C */ lwc1 $f4, 0xc($s0)
/* 05F37C 8005E77C 460090A1 */ cvt.d.s $f2, $f18
/* 05F380 8005E780 46221200 */ add.d $f8, $f2, $f2
/* 05F384 8005E784 46805520 */ cvt.s.w $f20, $f10
/* 05F388 8005E788 460021A1 */ cvt.d.s $f6, $f4
/* 05F38C 8005E78C 46283280 */ add.d $f10, $f6, $f8
/* 05F390 8005E790 462054A0 */ cvt.s.d $f18, $f10
/* 05F394 8005E794 E612000C */ swc1 $f18, 0xc($s0)
/* 05F398 8005E798 C600000C */ lwc1 $f0, 0xc($s0)
/* 05F39C 8005E79C 00000000 */ nop
/* 05F3A0 8005E7A0 4610003C */ c.lt.s $f0, $f16
/* 05F3A4 8005E7A4 00000000 */ nop
/* 05F3A8 8005E7A8 4500000A */ bc1f .L8005E7D4
/* 05F3AC 8005E7AC 00000000 */ nop
.L8005E7B0:
/* 05F3B0 8005E7B0 46140100 */ add.s $f4, $f0, $f20
/* 05F3B4 8005E7B4 E604000C */ swc1 $f4, 0xc($s0)
/* 05F3B8 8005E7B8 A4480010 */ sh $t0, 0x10($v0)
/* 05F3BC 8005E7BC C600000C */ lwc1 $f0, 0xc($s0)
/* 05F3C0 8005E7C0 00000000 */ nop
/* 05F3C4 8005E7C4 4610003C */ c.lt.s $f0, $f16
/* 05F3C8 8005E7C8 00000000 */ nop
/* 05F3CC 8005E7CC 4501FFF8 */ bc1t .L8005E7B0
/* 05F3D0 8005E7D0 00000000 */ nop
.L8005E7D4:
/* 05F3D4 8005E7D4 4600A03C */ c.lt.s $f20, $f0
/* 05F3D8 8005E7D8 00000000 */ nop
/* 05F3DC 8005E7DC 4500000A */ bc1f .L8005E808
/* 05F3E0 8005E7E0 00000000 */ nop
.L8005E7E4:
/* 05F3E4 8005E7E4 46140181 */ sub.s $f6, $f0, $f20
/* 05F3E8 8005E7E8 E606000C */ swc1 $f6, 0xc($s0)
/* 05F3EC 8005E7EC A4480010 */ sh $t0, 0x10($v0)
/* 05F3F0 8005E7F0 C600000C */ lwc1 $f0, 0xc($s0)
/* 05F3F4 8005E7F4 00000000 */ nop
/* 05F3F8 8005E7F8 4600A03C */ c.lt.s $f20, $f0
/* 05F3FC 8005E7FC 00000000 */ nop
/* 05F400 8005E800 4501FFF8 */ bc1t .L8005E7E4
/* 05F404 8005E804 00000000 */ nop
.L8005E808:
/* 05F408 8005E808 84580010 */ lh $t8, 0x10($v0)
/* 05F40C 8005E80C 00000000 */ nop
/* 05F410 8005E810 15180009 */ bne $t0, $t8, .L8005E838
/* 05F414 8005E814 00000000 */ nop
/* 05F418 8005E818 822F003B */ lb $t7, 0x3b($s1)
/* 05F41C 8005E81C 24010002 */ li $at, 2
/* 05F420 8005E820 15E10005 */ bne $t7, $at, .L8005E838
/* 05F424 8005E824 24190001 */ li $t9, 1
/* 05F428 8005E828 A239003B */ sb $t9, 0x3b($s1)
/* 05F42C 8005E82C E610000C */ swc1 $f16, 0xc($s0)
/* 05F430 8005E830 C600000C */ lwc1 $f0, 0xc($s0)
/* 05F434 8005E834 00000000 */ nop
.L8005E838:
/* 05F438 8005E838 444AF800 */ cfc1 $t2, $31
/* 05F43C 8005E83C 00000000 */ nop
/* 05F440 8005E840 35410003 */ ori $at, $t2, 3
/* 05F444 8005E844 38210002 */ xori $at, $at, 2
/* 05F448 8005E848 44C1F800 */ ctc1 $at, $31
/* 05F44C 8005E84C 00000000 */ nop
/* 05F450 8005E850 46000224 */ cvt.w.s $f8, $f0
/* 05F454 8005E854 440B4000 */ mfc1 $t3, $f8
/* 05F458 8005E858 44CAF800 */ ctc1 $t2, $31
/* 05F45C 8005E85C A62B0018 */ sh $t3, 0x18($s1)
/* 05F460 8005E860 860C0000 */ lh $t4, ($s0)
/* 05F464 8005E864 00000000 */ nop
/* 05F468 8005E868 150C000F */ bne $t0, $t4, .L8005E8A8
/* 05F46C 8005E86C 00000000 */ nop
/* 05F470 8005E870 0C008D5A */ jal func_80023568
/* 05F474 8005E874 00000000 */ nop
/* 05F478 8005E878 44808000 */ mtc1 $zero, $f16
/* 05F47C 8005E87C 1040000A */ beqz $v0, .L8005E8A8
/* 05F480 8005E880 24010006 */ li $at, 6
/* 05F484 8005E884 14410002 */ bne $v0, $at, .L8005E890
/* 05F488 8005E888 24070110 */ li $a3, 272
/* 05F48C 8005E88C 2407012A */ li $a3, 298
.L8005E890:
/* 05F490 8005E890 44068000 */ mfc1 $a2, $f16
/* 05F494 8005E894 240D0245 */ li $t5, 581
/* 05F498 8005E898 AFAD0010 */ sw $t5, 0x10($sp)
/* 05F49C 8005E89C 02202025 */ move $a0, $s1
/* 05F4A0 8005E8A0 0C017881 */ jal func_8005E204
/* 05F4A4 8005E8A4 02002825 */ move $a1, $s0
.L8005E8A8:
/* 05F4A8 8005E8A8 AE200074 */ sw $zero, 0x74($s1)
/* 05F4AC 8005E8AC 8FA50058 */ lw $a1, 0x58($sp)
/* 05F4B0 8005E8B0 0C02BF0F */ jal func_800AFC3C
/* 05F4B4 8005E8B4 02202025 */ move $a0, $s1
/* 05F4B8 8005E8B8 02202025 */ move $a0, $s1
/* 05F4BC 8005E8BC 02002825 */ move $a1, $s0
/* 05F4C0 8005E8C0 0C017412 */ jal func_8005D048
/* 05F4C4 8005E8C4 24060028 */ li $a2, 40
/* 05F4C8 8005E8C8 8222003B */ lb $v0, 0x3b($s1)
/* 05F4CC 8005E8CC 24010001 */ li $at, 1
/* 05F4D0 8005E8D0 10410006 */ beq $v0, $at, .L8005E8EC
/* 05F4D4 8005E8D4 00002025 */ move $a0, $zero
/* 05F4D8 8005E8D8 24010002 */ li $at, 2
/* 05F4DC 8005E8DC 10410005 */ beq $v0, $at, .L8005E8F4
/* 05F4E0 8005E8E0 24050100 */ li $a1, 256
/* 05F4E4 8005E8E4 10000003 */ b .L8005E8F4
/* 05F4E8 8005E8E8 24051500 */ li $a1, 5376
.L8005E8EC:
/* 05F4EC 8005E8EC 10000001 */ b .L8005E8F4
/* 05F4F0 8005E8F0 24052500 */ li $a1, 9472
.L8005E8F4:
/* 05F4F4 8005E8F4 0C006EB2 */ jal get_racer_object
/* 05F4F8 8005E8F8 AFA50038 */ sw $a1, 0x38($sp)
/* 05F4FC 8005E8FC AFA20030 */ sw $v0, 0x30($sp)
/* 05F500 8005E900 C632000C */ lwc1 $f18, 0xc($s1)
/* 05F504 8005E904 C44A000C */ lwc1 $f10, 0xc($v0)
/* 05F508 8005E908 C6260014 */ lwc1 $f6, 0x14($s1)
/* 05F50C 8005E90C 46125501 */ sub.s $f20, $f10, $f18
/* 05F510 8005E910 C4440014 */ lwc1 $f4, 0x14($v0)
/* 05F514 8005E914 4614A202 */ mul.s $f8, $f20, $f20
/* 05F518 8005E918 46062381 */ sub.s $f14, $f4, $f6
/* 05F51C 8005E91C E7AE0048 */ swc1 $f14, 0x48($sp)
/* 05F520 8005E920 460E7282 */ mul.s $f10, $f14, $f14
/* 05F524 8005E924 0C0326B4 */ jal sqrtf
/* 05F528 8005E928 460A4300 */ add.s $f12, $f8, $f10
/* 05F52C 8005E92C 3C01800E */ lui $at, %hi(D_800E6AA8 + 4) # $at, 0x800e
/* 05F530 8005E930 C4256AA8 */ lwc1 $f5, %lo(D_800E6AA8)($at)
/* 05F534 8005E934 C4246AAC */ lwc1 $f4, %lo(D_800E6AA8 + 4)($at)
/* 05F538 8005E938 460004A1 */ cvt.d.s $f18, $f0
/* 05F53C 8005E93C 4624903C */ c.lt.d $f18, $f4
/* 05F540 8005E940 8FA50038 */ lw $a1, 0x38($sp)
/* 05F544 8005E944 C7AE0048 */ lwc1 $f14, 0x48($sp)
/* 05F548 8005E948 4500001E */ bc1f .L8005E9C4
/* 05F54C 8005E94C 00000000 */ nop
/* 05F550 8005E950 4600A306 */ mov.s $f12, $f20
/* 05F554 8005E954 0C01C1D4 */ jal arctan2_f
/* 05F558 8005E958 AFA50038 */ sw $a1, 0x38($sp)
/* 05F55C 8005E95C 862E0000 */ lh $t6, ($s1)
/* 05F560 8005E960 34018000 */ li $at, 32768
/* 05F564 8005E964 31D8FFFF */ andi $t8, $t6, 0xffff
/* 05F568 8005E968 00581823 */ subu $v1, $v0, $t8
/* 05F56C 8005E96C 00611821 */ addu $v1, $v1, $at
/* 05F570 8005E970 8FA50038 */ lw $a1, 0x38($sp)
/* 05F574 8005E974 34018001 */ li $at, 32769
/* 05F578 8005E978 0061082A */ slt $at, $v1, $at
/* 05F57C 8005E97C 14200004 */ bnez $at, .L8005E990
/* 05F580 8005E980 00051023 */ negu $v0, $a1
/* 05F584 8005E984 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff
/* 05F588 8005E988 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1
/* 05F58C 8005E98C 00611821 */ addu $v1, $v1, $at
.L8005E990:
/* 05F590 8005E990 28618000 */ slti $at, $v1, -0x8000
/* 05F594 8005E994 10200002 */ beqz $at, .L8005E9A0
/* 05F598 8005E998 3401FFFF */ li $at, 65535
/* 05F59C 8005E99C 00611821 */ addu $v1, $v1, $at
.L8005E9A0:
/* 05F5A0 8005E9A0 00A3082A */ slt $at, $a1, $v1
/* 05F5A4 8005E9A4 10200003 */ beqz $at, .L8005E9B4
/* 05F5A8 8005E9A8 0062082A */ slt $at, $v1, $v0
/* 05F5AC 8005E9AC 00A01825 */ move $v1, $a1
/* 05F5B0 8005E9B0 0062082A */ slt $at, $v1, $v0
.L8005E9B4:
/* 05F5B4 8005E9B4 10200002 */ beqz $at, .L8005E9C0
/* 05F5B8 8005E9B8 00000000 */ nop
/* 05F5BC 8005E9BC 00401825 */ move $v1, $v0
.L8005E9C0:
/* 05F5C0 8005E9C0 A603016C */ sh $v1, 0x16c($s0)
.L8005E9C4:
/* 05F5C4 8005E9C4 822F003B */ lb $t7, 0x3b($s1)
/* 05F5C8 8005E9C8 24010001 */ li $at, 1
/* 05F5CC 8005E9CC 15E1000B */ bne $t7, $at, .L8005E9FC
/* 05F5D0 8005E9D0 3C058012 */ lui $a1, %hi(D_8011D5F0) # $a1, 0x8012
/* 05F5D4 8005E9D4 821901E7 */ lb $t9, 0x1e7($s0)
/* 05F5D8 8005E9D8 00000000 */ nop
/* 05F5DC 8005E9DC 332A001F */ andi $t2, $t9, 0x1f
/* 05F5E0 8005E9E0 2941000A */ slti $at, $t2, 0xa
/* 05F5E4 8005E9E4 10200006 */ beqz $at, .L8005EA00
/* 05F5E8 8005E9E8 8FA30030 */ lw $v1, 0x30($sp)
/* 05F5EC 8005E9EC 860B016C */ lh $t3, 0x16c($s0)
/* 05F5F0 8005E9F0 00000000 */ nop
/* 05F5F4 8005E9F4 000B6043 */ sra $t4, $t3, 1
/* 05F5F8 8005E9F8 A60C016C */ sh $t4, 0x16c($s0)
.L8005E9FC:
/* 05F5FC 8005E9FC 8FA30030 */ lw $v1, 0x30($sp)
.L8005EA00:
/* 05F600 8005EA00 24A5D5F0 */ addiu $a1, %lo(D_8011D5F0) # addiu $a1, $a1, -0x2a10
/* 05F604 8005EA04 8C62004C */ lw $v0, 0x4c($v1)
/* 05F608 8005EA08 8C700064 */ lw $s0, 0x64($v1)
/* 05F60C 8005EA0C 8C4D0000 */ lw $t5, ($v0)
/* 05F610 8005EA10 00000000 */ nop
/* 05F614 8005EA14 162D000B */ bne $s1, $t5, .L8005EA44
/* 05F618 8005EA18 00000000 */ nop
/* 05F61C 8005EA1C 844E0014 */ lh $t6, 0x14($v0)
/* 05F620 8005EA20 00000000 */ nop
/* 05F624 8005EA24 31D80008 */ andi $t8, $t6, 8
/* 05F628 8005EA28 13000006 */ beqz $t8, .L8005EA44
/* 05F62C 8005EA2C 00000000 */ nop
/* 05F630 8005EA30 822F003B */ lb $t7, 0x3b($s1)
/* 05F634 8005EA34 24010001 */ li $at, 1
/* 05F638 8005EA38 15E10002 */ bne $t7, $at, .L8005EA44
/* 05F63C 8005EA3C 24190004 */ li $t9, 4
/* 05F640 8005EA40 A2190187 */ sb $t9, 0x187($s0)
.L8005EA44:
/* 05F644 8005EA44 820A01D8 */ lb $t2, 0x1d8($s0)
/* 05F648 8005EA48 00000000 */ nop
/* 05F64C 8005EA4C 11400008 */ beqz $t2, .L8005EA70
/* 05F650 8005EA50 8FBF002C */ lw $ra, 0x2c($sp)
/* 05F654 8005EA54 80AB0000 */ lb $t3, ($a1)
/* 05F658 8005EA58 240C0001 */ li $t4, 1
/* 05F65C 8005EA5C 15600003 */ bnez $t3, .L8005EA6C
/* 05F660 8005EA60 02002025 */ move $a0, $s0
/* 05F664 8005EA64 0C0172DA */ jal func_8005CB68
/* 05F668 8005EA68 A0AC0000 */ sb $t4, ($a1)
.L8005EA6C:
/* 05F66C 8005EA6C 8FBF002C */ lw $ra, 0x2c($sp)
.L8005EA70:
/* 05F670 8005EA70 C7B50018 */ lwc1 $f21, 0x18($sp)
/* 05F674 8005EA74 C7B4001C */ lwc1 $f20, 0x1c($sp)
/* 05F678 8005EA78 8FB00024 */ lw $s0, 0x24($sp)
/* 05F67C 8005EA7C 8FB10028 */ lw $s1, 0x28($sp)
/* 05F680 8005EA80 03E00008 */ jr $ra
/* 05F684 8005EA84 27BD0058 */ addiu $sp, $sp, 0x58
/* 05F688 8005EA88 00000000 */ nop
/* 05F68C 8005EA8C 00000000 */ nop
File diff suppressed because it is too large Load Diff
@@ -1,365 +0,0 @@
.late_rodata
glabel D_800E6B00
.double 0.3
glabel D_800E6B08
.double -0.3
glabel D_800E6B10
.double 0.4
.text
glabel func_8005F310
/* 05FF10 8005F310 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 05FF14 8005F314 AFA40040 */ sw $a0, 0x40($sp)
/* 05FF18 8005F318 AFBF0024 */ sw $ra, 0x24($sp)
/* 05FF1C 8005F31C AFB00020 */ sw $s0, 0x20($sp)
/* 05FF20 8005F320 3C04800E */ lui $a0, %hi(D_800DCE80) # $a0, 0x800e
/* 05FF24 8005F324 00C08025 */ move $s0, $a2
/* 05FF28 8005F328 AFA50044 */ sw $a1, 0x44($sp)
/* 05FF2C 8005F32C 2484CE80 */ addiu $a0, %lo(D_800DCE80) # addiu $a0, $a0, -0x3180
/* 05FF30 8005F330 0C01729E */ jal func_8005CA78
/* 05FF34 8005F334 AFA7004C */ sw $a3, 0x4c($sp)
/* 05FF38 8005F338 8FA7004C */ lw $a3, 0x4c($sp)
/* 05FF3C 8005F33C 3C01800E */ lui $at, %hi(D_800E6B00) # $at, 0x800e
/* 05FF40 8005F340 A0E001EC */ sb $zero, 0x1ec($a3)
/* 05FF44 8005F344 820E003B */ lb $t6, 0x3b($s0)
/* 05FF48 8005F348 C4266B04 */ lwc1 $f6, %lo(D_800E6B00 + 4)($at)
/* 05FF4C 8005F34C A7AE003E */ sh $t6, 0x3e($sp)
/* 05FF50 8005F350 860F0018 */ lh $t7, 0x18($s0)
/* 05FF54 8005F354 C4276B00 */ lwc1 $f7, %lo(D_800E6B00)($at)
/* 05FF58 8005F358 A7AF003C */ sh $t7, 0x3c($sp)
/* 05FF5C 8005F35C 84F8016A */ lh $t8, 0x16a($a3)
/* 05FF60 8005F360 00000000 */ nop
/* 05FF64 8005F364 A7B8003A */ sh $t8, 0x3a($sp)
/* 05FF68 8005F368 C4E4002C */ lwc1 $f4, 0x2c($a3)
/* 05FF6C 8005F36C 00000000 */ nop
/* 05FF70 8005F370 46002021 */ cvt.d.s $f0, $f4
/* 05FF74 8005F374 4626003C */ c.lt.d $f0, $f6
/* 05FF78 8005F378 00000000 */ nop
/* 05FF7C 8005F37C 45000009 */ bc1f .L8005F3A4
/* 05FF80 8005F380 3C01800E */ lui $at, %hi(D_800E6B08 + 4) # $at, 0x800e
/* 05FF84 8005F384 C4296B08 */ lwc1 $f9, %lo(D_800E6B08)($at)
/* 05FF88 8005F388 C4286B0C */ lwc1 $f8, %lo(D_800E6B08 + 4)($at)
/* 05FF8C 8005F38C 8FB90054 */ lw $t9, 0x54($sp)
/* 05FF90 8005F390 4620403C */ c.lt.d $f8, $f0
/* 05FF94 8005F394 00000000 */ nop
/* 05FF98 8005F398 45000002 */ bc1f .L8005F3A4
/* 05FF9C 8005F39C 00000000 */ nop
/* 05FFA0 8005F3A0 AF200000 */ sw $zero, ($t9)
.L8005F3A4:
/* 05FFA4 8005F3A4 80EA01D8 */ lb $t2, 0x1d8($a3)
/* 05FFA8 8005F3A8 24010001 */ li $at, 1
/* 05FFAC 8005F3AC 1541000F */ bne $t2, $at, .L8005F3EC
/* 05FFB0 8005F3B0 8FA90058 */ lw $t1, 0x58($sp)
/* 05FFB4 8005F3B4 0C008D5A */ jal func_80023568
/* 05FFB8 8005F3B8 AFA7004C */ sw $a3, 0x4c($sp)
/* 05FFBC 8005F3BC 8FA7004C */ lw $a3, 0x4c($sp)
/* 05FFC0 8005F3C0 10400009 */ beqz $v0, .L8005F3E8
/* 05FFC4 8005F3C4 24040082 */ li $a0, 130
/* 05FFC8 8005F3C8 0C008500 */ jal func_80021400
/* 05FFCC 8005F3CC AFA7004C */ sw $a3, 0x4c($sp)
/* 05FFD0 8005F3D0 8FA7004C */ lw $a3, 0x4c($sp)
/* 05FFD4 8005F3D4 00000000 */ nop
/* 05FFD8 8005F3D8 80EB01D8 */ lb $t3, 0x1d8($a3)
/* 05FFDC 8005F3DC 00000000 */ nop
/* 05FFE0 8005F3E0 256C0001 */ addiu $t4, $t3, 1
/* 05FFE4 8005F3E4 A0EC01D8 */ sb $t4, 0x1d8($a3)
.L8005F3E8:
/* 05FFE8 8005F3E8 8FA90058 */ lw $t1, 0x58($sp)
.L8005F3EC:
/* 05FFEC 8005F3EC 24010064 */ li $at, 100
/* 05FFF0 8005F3F0 8D280000 */ lw $t0, ($t1)
/* 05FFF4 8005F3F4 00000000 */ nop
/* 05FFF8 8005F3F8 15010002 */ bne $t0, $at, .L8005F404
/* 05FFFC 8005F3FC 3C018012 */ lui $at, %hi(D_8011D610) # $at, 0x8012
/* 060000 8005F400 A020D610 */ sb $zero, %lo(D_8011D610)($at)
.L8005F404:
/* 060004 8005F404 84ED0000 */ lh $t5, ($a3)
/* 060008 8005F408 2403FFFF */ li $v1, -1
/* 06000C 8005F40C 146D001F */ bne $v1, $t5, .L8005F48C
/* 060010 8005F410 A0E001F5 */ sb $zero, 0x1f5($a3)
/* 060014 8005F414 8D220000 */ lw $v0, ($t1)
/* 060018 8005F418 24010064 */ li $at, 100
/* 06001C 8005F41C 1041001B */ beq $v0, $at, .L8005F48C
/* 060020 8005F420 244EFFE2 */ addiu $t6, $v0, -0x1e
/* 060024 8005F424 05C10017 */ bgez $t6, .L8005F484
/* 060028 8005F428 AD2E0000 */ sw $t6, ($t1)
/* 06002C 8005F42C 3C188012 */ lui $t8, %hi(D_8011D611) # $t8, 0x8012
/* 060030 8005F430 8318D611 */ lb $t8, %lo(D_8011D611)($t8)
/* 060034 8005F434 00002025 */ move $a0, $zero
/* 060038 8005F438 17000009 */ bnez $t8, .L8005F460
/* 06003C 8005F43C 8FA20050 */ lw $v0, 0x50($sp)
/* 060040 8005F440 AFA7004C */ sw $a3, 0x4c($sp)
/* 060044 8005F444 0C0172C1 */ jal func_8005CB04
/* 060048 8005F448 AFA8002C */ sw $t0, 0x2c($sp)
/* 06004C 8005F44C 8FA7004C */ lw $a3, 0x4c($sp)
/* 060050 8005F450 8FA8002C */ lw $t0, 0x2c($sp)
/* 060054 8005F454 8FA90058 */ lw $t1, 0x58($sp)
/* 060058 8005F458 00000000 */ nop
/* 06005C 8005F45C 8FA20050 */ lw $v0, 0x50($sp)
.L8005F460:
/* 060060 8005F460 24190001 */ li $t9, 1
/* 060064 8005F464 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012
/* 060068 8005F468 A039D611 */ sb $t9, %lo(D_8011D611)($at)
/* 06006C 8005F46C AD200000 */ sw $zero, ($t1)
/* 060070 8005F470 8C4A0000 */ lw $t2, ($v0)
/* 060074 8005F474 00000000 */ nop
/* 060078 8005F478 354B8000 */ ori $t3, $t2, 0x8000
/* 06007C 8005F47C 10000003 */ b .L8005F48C
/* 060080 8005F480 AC4B0000 */ sw $t3, ($v0)
.L8005F484:
/* 060084 8005F484 3C018012 */ lui $at, %hi(D_8011D611) # $at, 0x8012
/* 060088 8005F488 A020D611 */ sb $zero, %lo(D_8011D611)($at)
.L8005F48C:
/* 06008C 8005F48C 240C000A */ li $t4, 10
/* 060090 8005F490 A0EC01D6 */ sb $t4, 0x1d6($a3)
/* 060094 8005F494 8FA50044 */ lw $a1, 0x44($sp)
/* 060098 8005F498 8FA40040 */ lw $a0, 0x40($sp)
/* 06009C 8005F49C AFA8002C */ sw $t0, 0x2c($sp)
/* 0600A0 8005F4A0 AFA7004C */ sw $a3, 0x4c($sp)
/* 0600A4 8005F4A4 0C0125E5 */ jal func_80049794
/* 0600A8 8005F4A8 02003025 */ move $a2, $s0
/* 0600AC 8005F4AC 8FA7004C */ lw $a3, 0x4c($sp)
/* 0600B0 8005F4B0 8FA8002C */ lw $t0, 0x2c($sp)
/* 0600B4 8005F4B4 80ED01D7 */ lb $t5, 0x1d7($a3)
/* 0600B8 8005F4B8 2403FFFF */ li $v1, -1
/* 0600BC 8005F4BC A0ED01D6 */ sb $t5, 0x1d6($a3)
/* 0600C0 8005F4C0 8FAE0058 */ lw $t6, 0x58($sp)
/* 0600C4 8005F4C4 00000000 */ nop
/* 0600C8 8005F4C8 ADC80000 */ sw $t0, ($t6)
/* 0600CC 8005F4CC AE000074 */ sw $zero, 0x74($s0)
/* 0600D0 8005F4D0 87AF003A */ lh $t7, 0x3a($sp)
/* 0600D4 8005F4D4 00000000 */ nop
/* 0600D8 8005F4D8 A4EF016A */ sh $t7, 0x16a($a3)
/* 0600DC 8005F4DC 87B8003E */ lh $t8, 0x3e($sp)
/* 0600E0 8005F4E0 00000000 */ nop
/* 0600E4 8005F4E4 A218003B */ sb $t8, 0x3b($s0)
/* 0600E8 8005F4E8 87B9003C */ lh $t9, 0x3c($sp)
/* 0600EC 8005F4EC 00000000 */ nop
/* 0600F0 8005F4F0 A6190018 */ sh $t9, 0x18($s0)
/* 0600F4 8005F4F4 80EA0187 */ lb $t2, 0x187($a3)
/* 0600F8 8005F4F8 00000000 */ nop
/* 0600FC 8005F4FC 11400029 */ beqz $t2, .L8005F5A4
/* 060100 8005F500 00000000 */ nop
/* 060104 8005F504 820B003B */ lb $t3, 0x3b($s0)
/* 060108 8005F508 24010001 */ li $at, 1
/* 06010C 8005F50C 11610025 */ beq $t3, $at, .L8005F5A4
/* 060110 8005F510 24040001 */ li $a0, 1
/* 060114 8005F514 0C0172C1 */ jal func_8005CB04
/* 060118 8005F518 AFA7004C */ sw $a3, 0x4c($sp)
/* 06011C 8005F51C 24040011 */ li $a0, 17
/* 060120 8005F520 0C000741 */ jal play_sound_global
/* 060124 8005F524 00002825 */ move $a1, $zero
/* 060128 8005F528 3C014140 */ li $at, 0x41400000 # 12.000000
/* 06012C 8005F52C 44816000 */ mtc1 $at, $f12
/* 060130 8005F530 0C01A7CA */ jal func_80069F28
/* 060134 8005F534 00000000 */ nop
/* 060138 8005F538 3C01800E */ lui $at, %hi(D_800E6B10 + 4) # $at, 0x800e
/* 06013C 8005F53C C60A001C */ lwc1 $f10, 0x1c($s0)
/* 060140 8005F540 C4216B10 */ lwc1 $f1, %lo(D_800E6B10)($at)
/* 060144 8005F544 C4206B14 */ lwc1 $f0, %lo(D_800E6B10 + 4)($at)
/* 060148 8005F548 46005121 */ cvt.d.s $f4, $f10
/* 06014C 8005F54C 46202182 */ mul.d $f6, $f4, $f0
/* 060150 8005F550 C60A0024 */ lwc1 $f10, 0x24($s0)
/* 060154 8005F554 8FA7004C */ lw $a3, 0x4c($sp)
/* 060158 8005F558 46005121 */ cvt.d.s $f4, $f10
/* 06015C 8005F55C 44809000 */ mtc1 $zero, $f18
/* 060160 8005F560 46203220 */ cvt.s.d $f8, $f6
/* 060164 8005F564 240C0001 */ li $t4, 1
/* 060168 8005F568 46202182 */ mul.d $f6, $f4, $f0
/* 06016C 8005F56C E608001C */ swc1 $f8, 0x1c($s0)
/* 060170 8005F570 A20C003B */ sb $t4, 0x3b($s0)
/* 060174 8005F574 3C014010 */ li $at, 0x40100000 # 2.250000
/* 060178 8005F578 2403FFFF */ li $v1, -1
/* 06017C 8005F57C 46203220 */ cvt.s.d $f8, $f6
/* 060180 8005F580 44803000 */ mtc1 $zero, $f6
/* 060184 8005F584 E6080024 */ swc1 $f8, 0x24($s0)
/* 060188 8005F588 E4F2000C */ swc1 $f18, 0xc($a3)
/* 06018C 8005F58C C60A0020 */ lwc1 $f10, 0x20($s0)
/* 060190 8005F590 44813800 */ mtc1 $at, $f7
/* 060194 8005F594 46005121 */ cvt.d.s $f4, $f10
/* 060198 8005F598 46262200 */ add.d $f8, $f4, $f6
/* 06019C 8005F59C 462042A0 */ cvt.s.d $f10, $f8
/* 0601A0 8005F5A0 E60A0020 */ swc1 $f10, 0x20($s0)
.L8005F5A4:
/* 0601A4 8005F5A4 8CED0148 */ lw $t5, 0x148($a3)
/* 0601A8 8005F5A8 44809000 */ mtc1 $zero, $f18
/* 0601AC 8005F5AC 11A0001B */ beqz $t5, .L8005F61C
/* 0601B0 8005F5B0 A0E00187 */ sb $zero, 0x187($a3)
/* 0601B4 8005F5B4 C600001C */ lwc1 $f0, 0x1c($s0)
/* 0601B8 8005F5B8 C60E0024 */ lwc1 $f14, 0x24($s0)
/* 0601BC 8005F5BC 46000082 */ mul.s $f2, $f0, $f0
/* 0601C0 8005F5C0 AFA7004C */ sw $a3, 0x4c($sp)
/* 0601C4 8005F5C4 460E7402 */ mul.s $f16, $f14, $f14
/* 0601C8 8005F5C8 00000000 */ nop
/* 0601CC 8005F5CC 46021102 */ mul.s $f4, $f2, $f2
/* 0601D0 8005F5D0 00000000 */ nop
/* 0601D4 8005F5D4 46108182 */ mul.s $f6, $f16, $f16
/* 0601D8 8005F5D8 0C0326B4 */ jal sqrtf
/* 0601DC 8005F5DC 46062300 */ add.s $f12, $f4, $f6
/* 0601E0 8005F5E0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000
/* 0601E4 8005F5E4 44814800 */ mtc1 $at, $f9
/* 0601E8 8005F5E8 44804000 */ mtc1 $zero, $f8
/* 0601EC 8005F5EC 46000087 */ neg.s $f2, $f0
/* 0601F0 8005F5F0 460012A1 */ cvt.d.s $f10, $f2
/* 0601F4 8005F5F4 8FA7004C */ lw $a3, 0x4c($sp)
/* 0601F8 8005F5F8 462A403C */ c.lt.d $f8, $f10
/* 0601FC 8005F5FC 44809000 */ mtc1 $zero, $f18
/* 060200 8005F600 2403FFFF */ li $v1, -1
/* 060204 8005F604 45000005 */ bc1f .L8005F61C
/* 060208 8005F608 E4E2002C */ swc1 $f2, 0x2c($a3)
/* 06020C 8005F60C E4F2002C */ swc1 $f18, 0x2c($a3)
/* 060210 8005F610 E612001C */ swc1 $f18, 0x1c($s0)
/* 060214 8005F614 E6120020 */ swc1 $f18, 0x20($s0)
/* 060218 8005F618 E6120024 */ swc1 $f18, 0x24($s0)
.L8005F61C:
/* 06021C 8005F61C C7A40044 */ lwc1 $f4, 0x44($sp)
/* 060220 8005F620 C4E6000C */ lwc1 $f6, 0xc($a3)
/* 060224 8005F624 46002321 */ cvt.d.s $f12, $f4
/* 060228 8005F628 462C6280 */ add.d $f10, $f12, $f12
/* 06022C 8005F62C 46003221 */ cvt.d.s $f8, $f6
/* 060230 8005F630 462A4100 */ add.d $f4, $f8, $f10
/* 060234 8005F634 462021A0 */ cvt.s.d $f6, $f4
/* 060238 8005F638 E4E6000C */ swc1 $f6, 0xc($a3)
/* 06023C 8005F63C 8E0E0068 */ lw $t6, 0x68($s0)
/* 060240 8005F640 8218003B */ lb $t8, 0x3b($s0)
/* 060244 8005F644 8DC20000 */ lw $v0, ($t6)
/* 060248 8005F648 0018C8C0 */ sll $t9, $t8, 3
/* 06024C 8005F64C 8C440000 */ lw $a0, ($v0)
/* 060250 8005F650 C4E0000C */ lwc1 $f0, 0xc($a3)
/* 060254 8005F654 8C8F0044 */ lw $t7, 0x44($a0)
/* 060258 8005F658 00000000 */ nop
/* 06025C 8005F65C 01F95021 */ addu $t2, $t7, $t9
/* 060260 8005F660 8D4B0004 */ lw $t3, 4($t2)
/* 060264 8005F664 00000000 */ nop
/* 060268 8005F668 000B6100 */ sll $t4, $t3, 4
/* 06026C 8005F66C 258DFFEF */ addiu $t5, $t4, -0x11
/* 060270 8005F670 448D4000 */ mtc1 $t5, $f8
/* 060274 8005F674 00000000 */ nop
/* 060278 8005F678 468040A0 */ cvt.s.w $f2, $f8
/* 06027C 8005F67C 4600103E */ c.le.s $f2, $f0
/* 060280 8005F680 00000000 */ nop
/* 060284 8005F684 4500000A */ bc1f .L8005F6B0
/* 060288 8005F688 00000000 */ nop
.L8005F68C:
/* 06028C 8005F68C 46020281 */ sub.s $f10, $f0, $f2
/* 060290 8005F690 E4EA000C */ swc1 $f10, 0xc($a3)
/* 060294 8005F694 A4430010 */ sh $v1, 0x10($v0)
/* 060298 8005F698 C4E0000C */ lwc1 $f0, 0xc($a3)
/* 06029C 8005F69C 00000000 */ nop
/* 0602A0 8005F6A0 4600103E */ c.le.s $f2, $f0
/* 0602A4 8005F6A4 00000000 */ nop
/* 0602A8 8005F6A8 4501FFF8 */ bc1t .L8005F68C
/* 0602AC 8005F6AC 00000000 */ nop
.L8005F6B0:
/* 0602B0 8005F6B0 4612003E */ c.le.s $f0, $f18
/* 0602B4 8005F6B4 00000000 */ nop
/* 0602B8 8005F6B8 4500000A */ bc1f .L8005F6E4
/* 0602BC 8005F6BC 00000000 */ nop
.L8005F6C0:
/* 0602C0 8005F6C0 46020100 */ add.s $f4, $f0, $f2
/* 0602C4 8005F6C4 E4E4000C */ swc1 $f4, 0xc($a3)
/* 0602C8 8005F6C8 A4430010 */ sh $v1, 0x10($v0)
/* 0602CC 8005F6CC C4E0000C */ lwc1 $f0, 0xc($a3)
/* 0602D0 8005F6D0 00000000 */ nop
/* 0602D4 8005F6D4 4612003E */ c.le.s $f0, $f18
/* 0602D8 8005F6D8 00000000 */ nop
/* 0602DC 8005F6DC 4501FFF8 */ bc1t .L8005F6C0
/* 0602E0 8005F6E0 00000000 */ nop
.L8005F6E4:
/* 0602E4 8005F6E4 820E003B */ lb $t6, 0x3b($s0)
/* 0602E8 8005F6E8 24010001 */ li $at, 1
/* 0602EC 8005F6EC 15C10009 */ bne $t6, $at, .L8005F714
/* 0602F0 8005F6F0 00000000 */ nop
/* 0602F4 8005F6F4 84580010 */ lh $t8, 0x10($v0)
/* 0602F8 8005F6F8 00000000 */ nop
/* 0602FC 8005F6FC 14780005 */ bne $v1, $t8, .L8005F714
/* 060300 8005F700 00000000 */ nop
/* 060304 8005F704 A200003B */ sb $zero, 0x3b($s0)
/* 060308 8005F708 E4F2000C */ swc1 $f18, 0xc($a3)
/* 06030C 8005F70C C4E0000C */ lwc1 $f0, 0xc($a3)
/* 060310 8005F710 00000000 */ nop
.L8005F714:
/* 060314 8005F714 444FF800 */ cfc1 $t7, $31
/* 060318 8005F718 AE000074 */ sw $zero, 0x74($s0)
/* 06031C 8005F71C 35E10003 */ ori $at, $t7, 3
/* 060320 8005F720 38210002 */ xori $at, $at, 2
/* 060324 8005F724 44C1F800 */ ctc1 $at, $31
/* 060328 8005F728 02002025 */ move $a0, $s0
/* 06032C 8005F72C 460001A4 */ cvt.w.s $f6, $f0
/* 060330 8005F730 44193000 */ mfc1 $t9, $f6
/* 060334 8005F734 44CFF800 */ ctc1 $t7, $31
/* 060338 8005F738 A6190018 */ sh $t9, 0x18($s0)
/* 06033C 8005F73C 8FA50040 */ lw $a1, 0x40($sp)
/* 060340 8005F740 0C02BDC5 */ jal func_800AF714
/* 060344 8005F744 AFA7004C */ sw $a3, 0x4c($sp)
/* 060348 8005F748 8FA5004C */ lw $a1, 0x4c($sp)
/* 06034C 8005F74C 02002025 */ move $a0, $s0
/* 060350 8005F750 0C017412 */ jal func_8005D048
/* 060354 8005F754 24060028 */ li $a2, 40
/* 060358 8005F758 8FAA0058 */ lw $t2, 0x58($sp)
/* 06035C 8005F75C 24010064 */ li $at, 100
/* 060360 8005F760 8D4B0000 */ lw $t3, ($t2)
/* 060364 8005F764 00000000 */ nop
/* 060368 8005F768 11610018 */ beq $t3, $at, .L8005F7CC
/* 06036C 8005F76C 00000000 */ nop
/* 060370 8005F770 0C002FD1 */ jal func_8000BF44
/* 060374 8005F774 2404FFFF */ li $a0, -1
/* 060378 8005F778 10400014 */ beqz $v0, .L8005F7CC
/* 06037C 8005F77C 00000000 */ nop
/* 060380 8005F780 8C430064 */ lw $v1, 0x64($v0)
/* 060384 8005F784 AC400078 */ sw $zero, 0x78($v0)
/* 060388 8005F788 10600010 */ beqz $v1, .L8005F7CC
/* 06038C 8005F78C 24180002 */ li $t8, 2
/* 060390 8005F790 8FAD0040 */ lw $t5, 0x40($sp)
/* 060394 8005F794 906C0072 */ lbu $t4, 0x72($v1)
/* 060398 8005F798 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 06039C 8005F79C 44814000 */ mtc1 $at, $f8
/* 0603A0 8005F7A0 018D7021 */ addu $t6, $t4, $t5
/* 0603A4 8005F7A4 A06E0072 */ sb $t6, 0x72($v1)
/* 0603A8 8005F7A8 A0780070 */ sb $t8, 0x70($v1)
/* 0603AC 8005F7AC 240F0001 */ li $t7, 1
/* 0603B0 8005F7B0 E4680074 */ swc1 $f8, 0x74($v1)
/* 0603B4 8005F7B4 AFAF0010 */ sw $t7, 0x10($sp)
/* 0603B8 8005F7B8 02002025 */ move $a0, $s0
/* 0603BC 8005F7BC 2405FFFF */ li $a1, -1
/* 0603C0 8005F7C0 24060002 */ li $a2, 2
/* 0603C4 8005F7C4 0C002DD4 */ jal func_8000B750
/* 0603C8 8005F7C8 24070001 */ li $a3, 1
.L8005F7CC:
/* 0603CC 8005F7CC 0C006EB2 */ jal get_racer_object
/* 0603D0 8005F7D0 00002025 */ move $a0, $zero
/* 0603D4 8005F7D4 8C43004C */ lw $v1, 0x4c($v0)
/* 0603D8 8005F7D8 8C470064 */ lw $a3, 0x64($v0)
/* 0603DC 8005F7DC 8C790000 */ lw $t9, ($v1)
/* 0603E0 8005F7E0 3C058012 */ lui $a1, %hi(D_8011D610) # $a1, 0x8012
/* 0603E4 8005F7E4 1619000B */ bne $s0, $t9, .L8005F814
/* 0603E8 8005F7E8 24A5D610 */ addiu $a1, %lo(D_8011D610) # addiu $a1, $a1, -0x29f0
/* 0603EC 8005F7EC 846A0014 */ lh $t2, 0x14($v1)
/* 0603F0 8005F7F0 00000000 */ nop
/* 0603F4 8005F7F4 314B0008 */ andi $t3, $t2, 8
/* 0603F8 8005F7F8 11600006 */ beqz $t3, .L8005F814
/* 0603FC 8005F7FC 00000000 */ nop
/* 060400 8005F800 820C003B */ lb $t4, 0x3b($s0)
/* 060404 8005F804 24010001 */ li $at, 1
/* 060408 8005F808 15810002 */ bne $t4, $at, .L8005F814
/* 06040C 8005F80C 240D0004 */ li $t5, 4
/* 060410 8005F810 A0ED0187 */ sb $t5, 0x187($a3)
.L8005F814:
/* 060414 8005F814 80EE01D8 */ lb $t6, 0x1d8($a3)
/* 060418 8005F818 00000000 */ nop
/* 06041C 8005F81C 11C00008 */ beqz $t6, .L8005F840
/* 060420 8005F820 8FBF0024 */ lw $ra, 0x24($sp)
/* 060424 8005F824 80B80000 */ lb $t8, ($a1)
/* 060428 8005F828 240F0001 */ li $t7, 1
/* 06042C 8005F82C 17000003 */ bnez $t8, .L8005F83C
/* 060430 8005F830 00E02025 */ move $a0, $a3
/* 060434 8005F834 0C0172DA */ jal func_8005CB68
/* 060438 8005F838 A0AF0000 */ sb $t7, ($a1)
.L8005F83C:
/* 06043C 8005F83C 8FBF0024 */ lw $ra, 0x24($sp)
.L8005F840:
/* 060440 8005F840 8FB00020 */ lw $s0, 0x20($sp)
/* 060444 8005F844 03E00008 */ jr $ra
/* 060448 8005F848 27BD0040 */ addiu $sp, $sp, 0x40
/* 06044C 8005F84C 00000000 */ nop
-34
View File
@@ -1,34 +0,0 @@
/* The comment below is needed for this file to be picked up by generate_ld */
/* RAM_POS: 0x80031130 */
.include "macros.inc"
.set noat # allow manual use of $at
.set noreorder # dont insert nops after branches
.set gp=64 # 64-bit instructions are used
.section .text
.include "asm/unknown_031D30/func_80031130.s"
.include "asm/unknown_031D30/func_800314DC.s"
.include "asm/unknown_031D30/func_80031600.s"
.section .rodata
glabel D_800E5F60
.float -0.1
glabel D_800E5F64
.float -0.1
glabel D_800E5F68
.float 0.707
glabel D_800E5F6C
.float 0.45
glabel D_800E5F70
.float -0.1
-2
View File
@@ -21,8 +21,6 @@ void guMtxIdent(Mtx *m);
void guMtxIdentF(float mf[4][4]);
void guMtxL2F(float mf[4][4], Mtx *m);
void guNormalize(float *, float *, float *);
void guMtxXFMF(float mf[4][4], float x, float y, float z,
float *ox, float *oy, float *oz);
/* Used only in Fast3DEX2 */
void guLookAtReflect (Mtx *m, LookAt *l, float xEye, float yEye, float zEye,
+14 -2
View File
@@ -21,8 +21,20 @@ typedef enum Vehicle {
VEHICLE_CAR,
VEHICLE_HOVERCRAFT,
VEHICLE_PLANE,
VEHICLE_FLYING_CAR,
VEHICLE_LOOPDELOOP,
VEHICLE_TRICKY,
VEHICLE_BLUEY,
VEHICLE_SMOKEY,
VEHICLE_PTERODACTYL,
VEHICLE_SNOWBALL,
VEHICLE_CARPET,
VEHICLE_BUBBLER,
VEHICLE_WIZPIG,
VEHICLE_ROCKET,
NUMBER_OF_VEHICLE_TYPES
NUMBER_OF_VEHICLE_TYPES,
NUMBER_OF_PLAYER_VEHICLES = 3
} Vehicle;
typedef enum CameraMode {
@@ -174,7 +186,7 @@ typedef enum SurfaceType {
SURFACE_DEFAULT,
SURFACE_GRASS,
SURFACE_SAND,
SURFACE_UNK03,
SURFACE_ZIP_PAD,
SURFACE_STONE,
SURFACE_UNK05,
SURFACE_UNK06,

Some files were not shown because too many files have changed in this diff Show More