Actor decomp (#183)

* Actor decomp
This commit is contained in:
MegaMech
2022-04-26 16:48:36 -06:00
committed by GitHub
parent 626513f90a
commit 2f8a1bfcb6
57 changed files with 1869 additions and 5545 deletions
@@ -43,8 +43,8 @@ glabel L80078CDC
/* 07990C 80078D0C 1000002F */ b .L80078DCC
/* 079910 80078D10 A429D200 */ sh $t1, %lo(D_8018D200)($at)
glabel L80078D14
/* 079914 80078D14 3C018015 */ lui $at, %hi(D_80150134) # $at, 0x8015
/* 079918 80078D18 C4280134 */ lwc1 $f8, %lo(D_80150134)($at)
/* 079914 80078D14 3C018015 */ lui $at, %hi(D_80150130+0x4) # $at, 0x8015
/* 079918 80078D18 C4280134 */ lwc1 $f8, %lo(D_80150130+0x4)($at)
/* 07991C 80078D1C 3C014220 */ li $at, 0x42200000 # 40.000000
/* 079920 80078D20 44815000 */ mtc1 $at, $f10
/* 079924 80078D24 3C05800E */ lui $a1, %hi(camera2) # $a1, 0x800e
@@ -75,8 +75,8 @@ glabel L80078D54
/* 079984 80078D84 10000011 */ b .L80078DCC
/* 079988 80078D88 A42DD200 */ sh $t5, %lo(D_8018D200)($at)
glabel L80078D8C
/* 07998C 80078D8C 3C018015 */ lui $at, %hi(D_80150134) # $at, 0x8015
/* 079990 80078D90 C4300134 */ lwc1 $f16, %lo(D_80150134)($at)
/* 07998C 80078D8C 3C018015 */ lui $at, %hi(D_80150130+0x4) # $at, 0x8015
/* 079990 80078D90 C4300134 */ lwc1 $f16, %lo(D_80150130+0x4)($at)
/* 079994 80078D94 3C014220 */ li $at, 0x42200000 # 40.000000
/* 079998 80078D98 44819000 */ mtc1 $at, $f18
/* 07999C 80078D9C 3C05800E */ lui $a1, %hi(camera2) # $a1, 0x800e
@@ -1,42 +0,0 @@
glabel func_802B0210
/* 119820 802B0210 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 119824 802B0214 AFBF0014 */ sw $ra, 0x14($sp)
/* 119828 802B0218 948E0000 */ lhu $t6, ($a0)
/* 11982C 802B021C 00803825 */ move $a3, $a0
/* 119830 802B0220 00A03025 */ move $a2, $a1
/* 119834 802B0224 A4AE0000 */ sh $t6, ($a1)
/* 119838 802B0228 948F0002 */ lhu $t7, 2($a0)
/* 11983C 802B022C A4AF0002 */ sh $t7, 2($a1)
/* 119840 802B0230 94980004 */ lhu $t8, 4($a0)
/* 119844 802B0234 A4B80004 */ sh $t8, 4($a1)
/* 119848 802B0238 94990006 */ lhu $t9, 6($a0)
/* 11984C 802B023C A4B90006 */ sh $t9, 6($a1)
/* 119850 802B0240 94880008 */ lhu $t0, 8($a0)
/* 119854 802B0244 A4A80008 */ sh $t0, 8($a1)
/* 119858 802B0248 9489000A */ lhu $t1, 0xa($a0)
/* 11985C 802B024C A4A9000A */ sh $t1, 0xa($a1)
/* 119860 802B0250 C484000C */ lwc1 $f4, 0xc($a0)
/* 119864 802B0254 E4A4000C */ swc1 $f4, 0xc($a1)
/* 119868 802B0258 C4860010 */ lwc1 $f6, 0x10($a0)
/* 11986C 802B025C E4A60010 */ swc1 $f6, 0x10($a1)
/* 119870 802B0260 C4880014 */ lwc1 $f8, 0x14($a0)
/* 119874 802B0264 24A40018 */ addiu $a0, $a1, 0x18
/* 119878 802B0268 E4A80014 */ swc1 $f8, 0x14($a1)
/* 11987C 802B026C AFA70018 */ sw $a3, 0x18($sp)
/* 119880 802B0270 AFA6001C */ sw $a2, 0x1c($sp)
/* 119884 802B0274 0C0AD4B6 */ jal vec3f_copy
/* 119888 802B0278 24E50018 */ addiu $a1, $a3, 0x18
/* 11988C 802B027C 8FA6001C */ lw $a2, 0x1c($sp)
/* 119890 802B0280 8FA70018 */ lw $a3, 0x18($sp)
/* 119894 802B0284 24C40024 */ addiu $a0, $a2, 0x24
/* 119898 802B0288 0C0AD4B6 */ jal vec3f_copy
/* 11989C 802B028C 24E50024 */ addiu $a1, $a3, 0x24
/* 1198A0 802B0290 8FA6001C */ lw $a2, 0x1c($sp)
/* 1198A4 802B0294 8FA70018 */ lw $a3, 0x18($sp)
/* 1198A8 802B0298 24C40030 */ addiu $a0, $a2, 0x30
/* 1198AC 802B029C 0C0AD4B6 */ jal vec3f_copy
/* 1198B0 802B02A0 24E50030 */ addiu $a1, $a3, 0x30
/* 1198B4 802B02A4 8FBF0014 */ lw $ra, 0x14($sp)
/* 1198B8 802B02A8 27BD0018 */ addiu $sp, $sp, 0x18
/* 1198BC 802B02AC 03E00008 */ jr $ra
/* 1198C0 802B02B0 00000000 */ nop
@@ -1,80 +0,0 @@
glabel func_802B4E30
/* 11E440 802B4E30 44801000 */ mtc1 $zero, $f2
/* 11E444 802B4E34 C4800044 */ lwc1 $f0, 0x44($a0)
/* 11E448 802B4E38 4602003C */ c.lt.s $f0, $f2
/* 11E44C 802B4E3C 00000000 */ nop
/* 11E450 802B4E40 45020015 */ bc1fl .L802B4E98
/* 11E454 802B4E44 C480003C */ lwc1 $f0, 0x3c($a0)
/* 11E458 802B4E48 948E0034 */ lhu $t6, 0x34($a0)
/* 11E45C 802B4E4C 24020001 */ li $v0, 1
/* 11E460 802B4E50 544E0011 */ bnel $v0, $t6, .L802B4E98
/* 11E464 802B4E54 C480003C */ lwc1 $f0, 0x3c($a0)
/* 11E468 802B4E58 C4860060 */ lwc1 $f6, 0x60($a0)
/* 11E46C 802B4E5C C4840018 */ lwc1 $f4, 0x18($a0)
/* 11E470 802B4E60 C4920064 */ lwc1 $f18, 0x64($a0)
/* 11E474 802B4E64 46003202 */ mul.s $f8, $f6, $f0
/* 11E478 802B4E68 C490001C */ lwc1 $f16, 0x1c($a0)
/* 11E47C 802B4E6C 46009182 */ mul.s $f6, $f18, $f0
/* 11E480 802B4E70 46082281 */ sub.s $f10, $f4, $f8
/* 11E484 802B4E74 C4880020 */ lwc1 $f8, 0x20($a0)
/* 11E488 802B4E78 46068101 */ sub.s $f4, $f16, $f6
/* 11E48C 802B4E7C E48A0018 */ swc1 $f10, 0x18($a0)
/* 11E490 802B4E80 C48A0068 */ lwc1 $f10, 0x68($a0)
/* 11E494 802B4E84 E484001C */ swc1 $f4, 0x1c($a0)
/* 11E498 802B4E88 46005482 */ mul.s $f18, $f10, $f0
/* 11E49C 802B4E8C 46124401 */ sub.s $f16, $f8, $f18
/* 11E4A0 802B4E90 E4900020 */ swc1 $f16, 0x20($a0)
/* 11E4A4 802B4E94 C480003C */ lwc1 $f0, 0x3c($a0)
.L802B4E98:
/* 11E4A8 802B4E98 24020001 */ li $v0, 1
/* 11E4AC 802B4E9C 4602003C */ c.lt.s $f0, $f2
/* 11E4B0 802B4EA0 00000000 */ nop
/* 11E4B4 802B4EA4 45020014 */ bc1fl .L802B4EF8
/* 11E4B8 802B4EA8 C4800040 */ lwc1 $f0, 0x40($a0)
/* 11E4BC 802B4EAC 948F0030 */ lhu $t7, 0x30($a0)
/* 11E4C0 802B4EB0 544F0011 */ bnel $v0, $t7, .L802B4EF8
/* 11E4C4 802B4EB4 C4800040 */ lwc1 $f0, 0x40($a0)
/* 11E4C8 802B4EB8 C4840048 */ lwc1 $f4, 0x48($a0)
/* 11E4CC 802B4EBC C4860018 */ lwc1 $f6, 0x18($a0)
/* 11E4D0 802B4EC0 C490004C */ lwc1 $f16, 0x4c($a0)
/* 11E4D4 802B4EC4 46002282 */ mul.s $f10, $f4, $f0
/* 11E4D8 802B4EC8 C492001C */ lwc1 $f18, 0x1c($a0)
/* 11E4DC 802B4ECC 46008102 */ mul.s $f4, $f16, $f0
/* 11E4E0 802B4ED0 460A3201 */ sub.s $f8, $f6, $f10
/* 11E4E4 802B4ED4 C48A0020 */ lwc1 $f10, 0x20($a0)
/* 11E4E8 802B4ED8 46049181 */ sub.s $f6, $f18, $f4
/* 11E4EC 802B4EDC E4880018 */ swc1 $f8, 0x18($a0)
/* 11E4F0 802B4EE0 C4880050 */ lwc1 $f8, 0x50($a0)
/* 11E4F4 802B4EE4 E486001C */ swc1 $f6, 0x1c($a0)
/* 11E4F8 802B4EE8 46004402 */ mul.s $f16, $f8, $f0
/* 11E4FC 802B4EEC 46105481 */ sub.s $f18, $f10, $f16
/* 11E500 802B4EF0 E4920020 */ swc1 $f18, 0x20($a0)
/* 11E504 802B4EF4 C4800040 */ lwc1 $f0, 0x40($a0)
.L802B4EF8:
/* 11E508 802B4EF8 4602003C */ c.lt.s $f0, $f2
/* 11E50C 802B4EFC 00000000 */ nop
/* 11E510 802B4F00 45000013 */ bc1f .L802B4F50
/* 11E514 802B4F04 00000000 */ nop
/* 11E518 802B4F08 94980032 */ lhu $t8, 0x32($a0)
/* 11E51C 802B4F0C 14580010 */ bne $v0, $t8, .L802B4F50
/* 11E520 802B4F10 00000000 */ nop
/* 11E524 802B4F14 C4860054 */ lwc1 $f6, 0x54($a0)
/* 11E528 802B4F18 C4840018 */ lwc1 $f4, 0x18($a0)
/* 11E52C 802B4F1C C4920058 */ lwc1 $f18, 0x58($a0)
/* 11E530 802B4F20 46003202 */ mul.s $f8, $f6, $f0
/* 11E534 802B4F24 C490001C */ lwc1 $f16, 0x1c($a0)
/* 11E538 802B4F28 46009182 */ mul.s $f6, $f18, $f0
/* 11E53C 802B4F2C 46082281 */ sub.s $f10, $f4, $f8
/* 11E540 802B4F30 C4880020 */ lwc1 $f8, 0x20($a0)
/* 11E544 802B4F34 46068101 */ sub.s $f4, $f16, $f6
/* 11E548 802B4F38 E48A0018 */ swc1 $f10, 0x18($a0)
/* 11E54C 802B4F3C C48A005C */ lwc1 $f10, 0x5c($a0)
/* 11E550 802B4F40 E484001C */ swc1 $f4, 0x1c($a0)
/* 11E554 802B4F44 46005482 */ mul.s $f18, $f10, $f0
/* 11E558 802B4F48 46124401 */ sub.s $f16, $f8, $f18
/* 11E55C 802B4F4C E4900020 */ swc1 $f16, 0x20($a0)
.L802B4F50:
/* 11E560 802B4F50 03E00008 */ jr $ra
/* 11E564 802B4F54 00000000 */ nop
/* 11E568 802B4F58 00000000 */ nop
@@ -0,0 +1,18 @@
glabel func_8029ABD4
/* 1041E4 8029ABD4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1041E8 8029ABD8 AFBF0014 */ sw $ra, 0x14($sp)
/* 1041EC 8029ABDC AFA5001C */ sw $a1, 0x1c($sp)
/* 1041F0 8029ABE0 3C018015 */ lui $at, %hi(D_80150110) # $at, 0x8015
/* 1041F4 8029ABE4 A4200110 */ sh $zero, %lo(D_80150110)($at)
/* 1041F8 8029ABE8 0C0A7B4E */ jal func_8029ED38
/* 1041FC 8029ABEC 24050014 */ li $a1, 20
/* 104200 8029ABF0 000278C0 */ sll $t7, $v0, 3
/* 104204 8029ABF4 8FBF0014 */ lw $ra, 0x14($sp)
/* 104208 8029ABF8 01E27823 */ subu $t7, $t7, $v0
/* 10420C 8029ABFC 87AE001E */ lh $t6, 0x1e($sp)
/* 104210 8029AC00 000F7900 */ sll $t7, $t7, 4
/* 104214 8029AC04 3C018016 */ lui $at, %hi(D_8015F9BE) # 0x8016
/* 104218 8029AC08 002F0821 */ addu $at, $at, $t7
/* 10421C 8029AC0C 27BD0018 */ addiu $sp, $sp, 0x18
/* 104220 8029AC10 03E00008 */ jr $ra
/* 104224 8029AC14 A42EF9BE */ sh $t6, %lo(D_8015F9BE)($at) # -0x642($at)
@@ -1,137 +0,0 @@
glabel func_8029B4E0
/* 104AF0 8029B4E0 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
/* 104AF4 8029B4E4 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
/* 104AF8 8029B4E8 240100B8 */ li $at, 184
/* 104AFC 8029B4EC 27BDFEE0 */ addiu $sp, $sp, -0x120
/* 104B00 8029B4F0 008E7823 */ subu $t7, $a0, $t6
/* 104B04 8029B4F4 01E1001A */ div $zero, $t7, $at
/* 104B08 8029B4F8 0000C012 */ mflo $t8
/* 104B0C 8029B4FC 0018C880 */ sll $t9, $t8, 2
/* 104B10 8029B500 3C018015 */ lui $at, %hi(D_80150130)
/* 104B14 8029B504 00390821 */ addu $at, $at, $t9
/* 104B18 8029B508 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 104B1C 8029B50C AFBF001C */ sw $ra, 0x1c($sp)
/* 104B20 8029B510 AFA50124 */ sw $a1, 0x124($sp)
/* 104B24 8029B514 3C01802C */ lui $at, %hi(D_802B9700) # $at, 0x802c
/* 104B28 8029B518 C4269700 */ lwc1 $f6, %lo(D_802B9700)($at)
/* 104B2C 8029B51C 94860026 */ lhu $a2, 0x26($a0)
/* 104B30 8029B520 24A50018 */ addiu $a1, $a1, 0x18
/* 104B34 8029B524 3C07451C */ lui $a3, (0x451C4000 >> 16) # lui $a3, 0x451c
/* 104B38 8029B528 34E74000 */ ori $a3, (0x451C4000 & 0xFFFF) # ori $a3, $a3, 0x4000
/* 104B3C 8029B52C AFA50024 */ sw $a1, 0x24($sp)
/* 104B40 8029B530 E7A40010 */ swc1 $f4, 0x10($sp)
/* 104B44 8029B534 0C0AE034 */ jal func_802B80D0
/* 104B48 8029B538 E7A60014 */ swc1 $f6, 0x14($sp)
/* 104B4C 8029B53C 44804000 */ mtc1 $zero, $f8
/* 104B50 8029B540 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 104B54 8029B544 3C0ABB00 */ lui $t2, (0xBB000001 >> 16) # lui $t2, 0xbb00
/* 104B58 8029B548 4608003C */ c.lt.s $f0, $f8
/* 104B5C 8029B54C 8FA50024 */ lw $a1, 0x24($sp)
/* 104B60 8029B550 46000086 */ mov.s $f2, $f0
/* 104B64 8029B554 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 104B68 8029B558 45010060 */ bc1t .L8029B6DC
/* 104B6C 8029B55C 354A0001 */ ori $t2, (0xBB000001 & 0xFFFF) # ori $t2, $t2, 1
/* 104B70 8029B560 8C620000 */ lw $v0, ($v1)
/* 104B74 8029B564 240BFFFF */ li $t3, -1
/* 104B78 8029B568 3C0DB600 */ lui $t5, 0xb600
/* 104B7C 8029B56C 24490008 */ addiu $t1, $v0, 8
/* 104B80 8029B570 AC690000 */ sw $t1, ($v1)
/* 104B84 8029B574 AC4B0004 */ sw $t3, 4($v0)
/* 104B88 8029B578 AC4A0000 */ sw $t2, ($v0)
/* 104B8C 8029B57C 8C620000 */ lw $v0, ($v1)
/* 104B90 8029B580 3C0E0002 */ lui $t6, 2
/* 104B94 8029B584 27A400C8 */ addiu $a0, $sp, 0xc8
/* 104B98 8029B588 244C0008 */ addiu $t4, $v0, 8
/* 104B9C 8029B58C AC6C0000 */ sw $t4, ($v1)
/* 104BA0 8029B590 AC4E0004 */ sw $t6, 4($v0)
/* 104BA4 8029B594 AC4D0000 */ sw $t5, ($v0)
/* 104BA8 8029B598 8FA60124 */ lw $a2, 0x124($sp)
/* 104BAC 8029B59C E7A20044 */ swc1 $f2, 0x44($sp)
/* 104BB0 8029B5A0 0C0AD7DD */ jal func_802B5F74
/* 104BB4 8029B5A4 24C60010 */ addiu $a2, $a2, 0x10
/* 104BB8 8029B5A8 3C053DCC */ lui $a1, (0x3DCCCCCD >> 16) # lui $a1, 0x3dcc
/* 104BBC 8029B5AC 34A5CCCD */ ori $a1, (0x3DCCCCCD & 0xFFFF) # ori $a1, $a1, 0xcccd
/* 104BC0 8029B5B0 0C0AD7C0 */ jal func_802B5F00
/* 104BC4 8029B5B4 27A400C8 */ addiu $a0, $sp, 0xc8
/* 104BC8 8029B5B8 27A400C8 */ addiu $a0, $sp, 0xc8
/* 104BCC 8029B5BC 0C0AD3FE */ jal func_802B4FF8
/* 104BD0 8029B5C0 00002825 */ move $a1, $zero
/* 104BD4 8029B5C4 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 104BD8 8029B5C8 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 104BDC 8029B5CC 10400043 */ beqz $v0, .L8029B6DC
/* 104BE0 8029B5D0 C7A20044 */ lwc1 $f2, 0x44($sp)
/* 104BE4 8029B5D4 3C0F800E */ lui $t7, %hi(gActiveScreenMode) # $t7, 0x800e
/* 104BE8 8029B5D8 8DEFC52C */ lw $t7, %lo(gActiveScreenMode)($t7)
/* 104BEC 8029B5DC 3C01802C */ lui $at, %hi(D_802B970C)
/* 104BF0 8029B5E0 15E00028 */ bnez $t7, .L8029B684
/* 104BF4 8029B5E4 00000000 */ nop
/* 104BF8 8029B5E8 3C01802C */ lui $at, %hi(D_802B9704) # $at, 0x802c
/* 104BFC 8029B5EC C42A9704 */ lwc1 $f10, %lo(D_802B9704)($at)
/* 104C00 8029B5F0 3C190600 */ lui $t9, 0x600
/* 104C04 8029B5F4 3C01802C */ lui $at, %hi(D_802B9708) # $at, 0x802c
/* 104C08 8029B5F8 460A103C */ c.lt.s $f2, $f10
/* 104C0C 8029B5FC 00000000 */ nop
/* 104C10 8029B600 45000009 */ bc1f .L8029B628
/* 104C14 8029B604 00000000 */ nop
/* 104C18 8029B608 8C620000 */ lw $v0, ($v1)
/* 104C1C 8029B60C 3C090900 */ lui $t1, %hi(toads_turnpike_dl_9) # $t1, 0x900
/* 104C20 8029B610 25290350 */ addiu $t1, %lo(toads_turnpike_dl_9) # addiu $t1, $t1, 0x350
/* 104C24 8029B614 24580008 */ addiu $t8, $v0, 8
/* 104C28 8029B618 AC780000 */ sw $t8, ($v1)
/* 104C2C 8029B61C AC490004 */ sw $t1, 4($v0)
/* 104C30 8029B620 1000002E */ b .L8029B6DC
/* 104C34 8029B624 AC590000 */ sw $t9, ($v0)
.L8029B628:
/* 104C38 8029B628 C4309708 */ lwc1 $f16, %lo(D_802B9708)($at)
/* 104C3C 8029B62C 3C0B0600 */ lui $t3, 0x600
/* 104C40 8029B630 3C0E0600 */ lui $t6, 0x600
/* 104C44 8029B634 4610103C */ c.lt.s $f2, $f16
/* 104C48 8029B638 00000000 */ nop
/* 104C4C 8029B63C 4502000A */ bc1fl .L8029B668
/* 104C50 8029B640 8C620000 */ lw $v0, ($v1)
/* 104C54 8029B644 8C620000 */ lw $v0, ($v1)
/* 104C58 8029B648 3C0C0900 */ lui $t4, %hi(toads_turnpike_dl_10) # $t4, 0x900
/* 104C5C 8029B64C 258C0388 */ addiu $t4, %lo(toads_turnpike_dl_10) # addiu $t4, $t4, 0x388
/* 104C60 8029B650 244A0008 */ addiu $t2, $v0, 8
/* 104C64 8029B654 AC6A0000 */ sw $t2, ($v1)
/* 104C68 8029B658 AC4C0004 */ sw $t4, 4($v0)
/* 104C6C 8029B65C 1000001F */ b .L8029B6DC
/* 104C70 8029B660 AC4B0000 */ sw $t3, ($v0)
/* 104C74 8029B664 8C620000 */ lw $v0, ($v1)
.L8029B668:
/* 104C78 8029B668 3C0F0900 */ lui $t7, %hi(toads_turnpike_dl_11) # $t7, 0x900
/* 104C7C 8029B66C 25EF03C0 */ addiu $t7, %lo(toads_turnpike_dl_11) # addiu $t7, $t7, 0x3c0
/* 104C80 8029B670 244D0008 */ addiu $t5, $v0, 8
/* 104C84 8029B674 AC6D0000 */ sw $t5, ($v1)
/* 104C88 8029B678 AC4F0004 */ sw $t7, 4($v0)
/* 104C8C 8029B67C 10000017 */ b .L8029B6DC
/* 104C90 8029B680 AC4E0000 */ sw $t6, ($v0)
.L8029B684:
/* 104C94 8029B684 C432970C */ lwc1 $f18, %lo(D_802B970C)($at)
/* 104C98 8029B688 3C190600 */ lui $t9, 0x600
/* 104C9C 8029B68C 3C0B0600 */ lui $t3, 0x600
/* 104CA0 8029B690 4612103C */ c.lt.s $f2, $f18
/* 104CA4 8029B694 00000000 */ nop
/* 104CA8 8029B698 4502000A */ bc1fl .L8029B6C4
/* 104CAC 8029B69C 8C620000 */ lw $v0, ($v1)
/* 104CB0 8029B6A0 8C620000 */ lw $v0, ($v1)
/* 104CB4 8029B6A4 3C090900 */ lui $t1, %hi(toads_turnpike_dl_10) # $t1, 0x900
/* 104CB8 8029B6A8 25290388 */ addiu $t1, %lo(toads_turnpike_dl_10) # addiu $t1, $t1, 0x388
/* 104CBC 8029B6AC 24580008 */ addiu $t8, $v0, 8
/* 104CC0 8029B6B0 AC780000 */ sw $t8, ($v1)
/* 104CC4 8029B6B4 AC490004 */ sw $t1, 4($v0)
/* 104CC8 8029B6B8 10000008 */ b .L8029B6DC
/* 104CCC 8029B6BC AC590000 */ sw $t9, ($v0)
/* 104CD0 8029B6C0 8C620000 */ lw $v0, ($v1)
.L8029B6C4:
/* 104CD4 8029B6C4 3C0C0900 */ lui $t4, %hi(toads_turnpike_dl_11) # $t4, 0x900
/* 104CD8 8029B6C8 258C03C0 */ addiu $t4, %lo(toads_turnpike_dl_11) # addiu $t4, $t4, 0x3c0
/* 104CDC 8029B6CC 244A0008 */ addiu $t2, $v0, 8
/* 104CE0 8029B6D0 AC6A0000 */ sw $t2, ($v1)
/* 104CE4 8029B6D4 AC4C0004 */ sw $t4, 4($v0)
/* 104CE8 8029B6D8 AC4B0000 */ sw $t3, ($v0)
.L8029B6DC:
/* 104CEC 8029B6DC 8FBF001C */ lw $ra, 0x1c($sp)
/* 104CF0 8029B6E0 27BD0120 */ addiu $sp, $sp, 0x120
/* 104CF4 8029B6E4 03E00008 */ jr $ra
/* 104CF8 8029B6E8 00000000 */ nop
@@ -1,133 +0,0 @@
glabel func_8029B6EC
/* 104CFC 8029B6EC 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
/* 104D00 8029B6F0 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
/* 104D04 8029B6F4 240100B8 */ li $at, 184
/* 104D08 8029B6F8 27BDFEE0 */ addiu $sp, $sp, -0x120
/* 104D0C 8029B6FC 008E7823 */ subu $t7, $a0, $t6
/* 104D10 8029B700 01E1001A */ div $zero, $t7, $at
/* 104D14 8029B704 0000C012 */ mflo $t8
/* 104D18 8029B708 0018C880 */ sll $t9, $t8, 2
/* 104D1C 8029B70C 3C018015 */ lui $at, %hi(D_80150130)
/* 104D20 8029B710 00390821 */ addu $at, $at, $t9
/* 104D24 8029B714 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 104D28 8029B718 AFBF001C */ sw $ra, 0x1c($sp)
/* 104D2C 8029B71C AFA50124 */ sw $a1, 0x124($sp)
/* 104D30 8029B720 3C01802C */ lui $at, %hi(D_802B9710) # $at, 0x802c
/* 104D34 8029B724 C4269710 */ lwc1 $f6, %lo(D_802B9710)($at)
/* 104D38 8029B728 94860026 */ lhu $a2, 0x26($a0)
/* 104D3C 8029B72C 24A50018 */ addiu $a1, $a1, 0x18
/* 104D40 8029B730 3C07451C */ lui $a3, (0x451C4000 >> 16) # lui $a3, 0x451c
/* 104D44 8029B734 34E74000 */ ori $a3, (0x451C4000 & 0xFFFF) # ori $a3, $a3, 0x4000
/* 104D48 8029B738 AFA50024 */ sw $a1, 0x24($sp)
/* 104D4C 8029B73C E7A40010 */ swc1 $f4, 0x10($sp)
/* 104D50 8029B740 0C0AE034 */ jal func_802B80D0
/* 104D54 8029B744 E7A60014 */ swc1 $f6, 0x14($sp)
/* 104D58 8029B748 44804000 */ mtc1 $zero, $f8
/* 104D5C 8029B74C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 104D60 8029B750 3C0ABB00 */ lui $t2, (0xBB000001 >> 16) # lui $t2, 0xbb00
/* 104D64 8029B754 4608003C */ c.lt.s $f0, $f8
/* 104D68 8029B758 8FA50024 */ lw $a1, 0x24($sp)
/* 104D6C 8029B75C 46000086 */ mov.s $f2, $f0
/* 104D70 8029B760 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 104D74 8029B764 4501005C */ bc1t .L8029B8D8
/* 104D78 8029B768 354A0001 */ ori $t2, (0xBB000001 & 0xFFFF) # ori $t2, $t2, 1
/* 104D7C 8029B76C 8C620000 */ lw $v0, ($v1)
/* 104D80 8029B770 240BFFFF */ li $t3, -1
/* 104D84 8029B774 3C0DB600 */ lui $t5, 0xb600
/* 104D88 8029B778 24490008 */ addiu $t1, $v0, 8
/* 104D8C 8029B77C AC690000 */ sw $t1, ($v1)
/* 104D90 8029B780 AC4B0004 */ sw $t3, 4($v0)
/* 104D94 8029B784 AC4A0000 */ sw $t2, ($v0)
/* 104D98 8029B788 8C620000 */ lw $v0, ($v1)
/* 104D9C 8029B78C 3C0E0002 */ lui $t6, 2
/* 104DA0 8029B790 27A400C8 */ addiu $a0, $sp, 0xc8
/* 104DA4 8029B794 244C0008 */ addiu $t4, $v0, 8
/* 104DA8 8029B798 AC6C0000 */ sw $t4, ($v1)
/* 104DAC 8029B79C AC4E0004 */ sw $t6, 4($v0)
/* 104DB0 8029B7A0 AC4D0000 */ sw $t5, ($v0)
/* 104DB4 8029B7A4 8FA60124 */ lw $a2, 0x124($sp)
/* 104DB8 8029B7A8 E7A20044 */ swc1 $f2, 0x44($sp)
/* 104DBC 8029B7AC 0C0AD7DD */ jal func_802B5F74
/* 104DC0 8029B7B0 24C60010 */ addiu $a2, $a2, 0x10
/* 104DC4 8029B7B4 27A400C8 */ addiu $a0, $sp, 0xc8
/* 104DC8 8029B7B8 0C0AD3FE */ jal func_802B4FF8
/* 104DCC 8029B7BC 00002825 */ move $a1, $zero
/* 104DD0 8029B7C0 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 104DD4 8029B7C4 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 104DD8 8029B7C8 10400043 */ beqz $v0, .L8029B8D8
/* 104DDC 8029B7CC C7A20044 */ lwc1 $f2, 0x44($sp)
/* 104DE0 8029B7D0 3C0F800E */ lui $t7, %hi(gActiveScreenMode) # $t7, 0x800e
/* 104DE4 8029B7D4 8DEFC52C */ lw $t7, %lo(gActiveScreenMode)($t7)
/* 104DE8 8029B7D8 3C01802C */ lui $at, %hi(D_802B971C)
/* 104DEC 8029B7DC 15E00028 */ bnez $t7, .L8029B880
/* 104DF0 8029B7E0 00000000 */ nop
/* 104DF4 8029B7E4 3C01802C */ lui $at, %hi(D_802B9714) # $at, 0x802c
/* 104DF8 8029B7E8 C42A9714 */ lwc1 $f10, %lo(D_802B9714)($at)
/* 104DFC 8029B7EC 3C190600 */ lui $t9, 0x600
/* 104E00 8029B7F0 3C01802C */ lui $at, %hi(D_802B9718) # $at, 0x802c
/* 104E04 8029B7F4 460A103C */ c.lt.s $f2, $f10
/* 104E08 8029B7F8 00000000 */ nop
/* 104E0C 8029B7FC 45000009 */ bc1f .L8029B824
/* 104E10 8029B800 00000000 */ nop
/* 104E14 8029B804 8C620000 */ lw $v0, ($v1)
/* 104E18 8029B808 3C090900 */ lui $t1, %hi(toads_turnpike_dl_6) # $t1, 0x900
/* 104E1C 8029B80C 252902A0 */ addiu $t1, %lo(toads_turnpike_dl_6) # addiu $t1, $t1, 0x2a0
/* 104E20 8029B810 24580008 */ addiu $t8, $v0, 8
/* 104E24 8029B814 AC780000 */ sw $t8, ($v1)
/* 104E28 8029B818 AC490004 */ sw $t1, 4($v0)
/* 104E2C 8029B81C 1000002E */ b .L8029B8D8
/* 104E30 8029B820 AC590000 */ sw $t9, ($v0)
.L8029B824:
/* 104E34 8029B824 C4309718 */ lwc1 $f16, %lo(D_802B9718)($at)
/* 104E38 8029B828 3C0B0600 */ lui $t3, 0x600
/* 104E3C 8029B82C 3C0E0600 */ lui $t6, 0x600
/* 104E40 8029B830 4610103C */ c.lt.s $f2, $f16
/* 104E44 8029B834 00000000 */ nop
/* 104E48 8029B838 4502000A */ bc1fl .L8029B864
/* 104E4C 8029B83C 8C620000 */ lw $v0, ($v1)
/* 104E50 8029B840 8C620000 */ lw $v0, ($v1)
/* 104E54 8029B844 3C0C0900 */ lui $t4, %hi(toads_turnpike_dl_7) # $t4, 0x900
/* 104E58 8029B848 258C02D8 */ addiu $t4, %lo(toads_turnpike_dl_7) # addiu $t4, $t4, 0x2d8
/* 104E5C 8029B84C 244A0008 */ addiu $t2, $v0, 8
/* 104E60 8029B850 AC6A0000 */ sw $t2, ($v1)
/* 104E64 8029B854 AC4C0004 */ sw $t4, 4($v0)
/* 104E68 8029B858 1000001F */ b .L8029B8D8
/* 104E6C 8029B85C AC4B0000 */ sw $t3, ($v0)
/* 104E70 8029B860 8C620000 */ lw $v0, ($v1)
.L8029B864:
/* 104E74 8029B864 3C0F0900 */ lui $t7, %hi(toads_turnpike_dl_8) # $t7, 0x900
/* 104E78 8029B868 25EF0310 */ addiu $t7, %lo(toads_turnpike_dl_8) # addiu $t7, $t7, 0x310
/* 104E7C 8029B86C 244D0008 */ addiu $t5, $v0, 8
/* 104E80 8029B870 AC6D0000 */ sw $t5, ($v1)
/* 104E84 8029B874 AC4F0004 */ sw $t7, 4($v0)
/* 104E88 8029B878 10000017 */ b .L8029B8D8
/* 104E8C 8029B87C AC4E0000 */ sw $t6, ($v0)
.L8029B880:
/* 104E90 8029B880 C432971C */ lwc1 $f18, %lo(D_802B971C)($at)
/* 104E94 8029B884 3C190600 */ lui $t9, 0x600
/* 104E98 8029B888 3C0B0600 */ lui $t3, 0x600
/* 104E9C 8029B88C 4612103C */ c.lt.s $f2, $f18
/* 104EA0 8029B890 00000000 */ nop
/* 104EA4 8029B894 4502000A */ bc1fl .L8029B8C0
/* 104EA8 8029B898 8C620000 */ lw $v0, ($v1)
/* 104EAC 8029B89C 8C620000 */ lw $v0, ($v1)
/* 104EB0 8029B8A0 3C090900 */ lui $t1, %hi(toads_turnpike_dl_7) # $t1, 0x900
/* 104EB4 8029B8A4 252902D8 */ addiu $t1, %lo(toads_turnpike_dl_7) # addiu $t1, $t1, 0x2d8
/* 104EB8 8029B8A8 24580008 */ addiu $t8, $v0, 8
/* 104EBC 8029B8AC AC780000 */ sw $t8, ($v1)
/* 104EC0 8029B8B0 AC490004 */ sw $t1, 4($v0)
/* 104EC4 8029B8B4 10000008 */ b .L8029B8D8
/* 104EC8 8029B8B8 AC590000 */ sw $t9, ($v0)
/* 104ECC 8029B8BC 8C620000 */ lw $v0, ($v1)
.L8029B8C0:
/* 104ED0 8029B8C0 3C0C0900 */ lui $t4, %hi(toads_turnpike_dl_8) # $t4, 0x900
/* 104ED4 8029B8C4 258C0310 */ addiu $t4, %lo(toads_turnpike_dl_8) # addiu $t4, $t4, 0x310
/* 104ED8 8029B8C8 244A0008 */ addiu $t2, $v0, 8
/* 104EDC 8029B8CC AC6A0000 */ sw $t2, ($v1)
/* 104EE0 8029B8D0 AC4C0004 */ sw $t4, 4($v0)
/* 104EE4 8029B8D4 AC4B0000 */ sw $t3, ($v0)
.L8029B8D8:
/* 104EE8 8029B8D8 8FBF001C */ lw $ra, 0x1c($sp)
/* 104EEC 8029B8DC 27BD0120 */ addiu $sp, $sp, 0x120
/* 104EF0 8029B8E0 03E00008 */ jr $ra
/* 104EF4 8029B8E4 00000000 */ nop
@@ -1,90 +0,0 @@
glabel func_8029FB80
/* 109190 8029FB80 C4840070 */ lwc1 $f4, 0x70($a0)
/* 109194 8029FB84 C4A6000C */ lwc1 $f6, 0xc($a1)
/* 109198 8029FB88 C4A80018 */ lwc1 $f8, 0x18($a1)
/* 10919C 8029FB8C C48A0014 */ lwc1 $f10, 0x14($a0)
/* 1091A0 8029FB90 46062000 */ add.s $f0, $f4, $f6
/* 1091A4 8029FB94 460A4081 */ sub.s $f2, $f8, $f10
/* 1091A8 8029FB98 4602003C */ c.lt.s $f0, $f2
/* 1091AC 8029FB9C 00000000 */ nop
/* 1091B0 8029FBA0 45020004 */ bc1fl .L8029FBB4
/* 1091B4 8029FBA4 46000307 */ neg.s $f12, $f0
/* 1091B8 8029FBA8 03E00008 */ jr $ra
/* 1091BC 8029FBAC 00001025 */ move $v0, $zero
/* 1091C0 8029FBB0 46000307 */ neg.s $f12, $f0
.L8029FBB4:
/* 1091C4 8029FBB4 460C103C */ c.lt.s $f2, $f12
/* 1091C8 8029FBB8 00000000 */ nop
/* 1091CC 8029FBBC 45020004 */ bc1fl .L8029FBD0
/* 1091D0 8029FBC0 C4B2001C */ lwc1 $f18, 0x1c($a1)
/* 1091D4 8029FBC4 03E00008 */ jr $ra
/* 1091D8 8029FBC8 00001025 */ move $v0, $zero
/* 1091DC 8029FBCC C4B2001C */ lwc1 $f18, 0x1c($a1)
.L8029FBD0:
/* 1091E0 8029FBD0 C4840018 */ lwc1 $f4, 0x18($a0)
/* 1091E4 8029FBD4 46049381 */ sub.s $f14, $f18, $f4
/* 1091E8 8029FBD8 460E003C */ c.lt.s $f0, $f14
/* 1091EC 8029FBDC 00000000 */ nop
/* 1091F0 8029FBE0 45020004 */ bc1fl .L8029FBF4
/* 1091F4 8029FBE4 460C703C */ c.lt.s $f14, $f12
/* 1091F8 8029FBE8 03E00008 */ jr $ra
/* 1091FC 8029FBEC 00001025 */ move $v0, $zero
/* 109200 8029FBF0 460C703C */ c.lt.s $f14, $f12
.L8029FBF4:
/* 109204 8029FBF4 00000000 */ nop
/* 109208 8029FBF8 45020004 */ bc1fl .L8029FC0C
/* 10920C 8029FBFC C4A60020 */ lwc1 $f6, 0x20($a1)
/* 109210 8029FC00 03E00008 */ jr $ra
/* 109214 8029FC04 00001025 */ move $v0, $zero
/* 109218 8029FC08 C4A60020 */ lwc1 $f6, 0x20($a1)
.L8029FC0C:
/* 10921C 8029FC0C C488001C */ lwc1 $f8, 0x1c($a0)
/* 109220 8029FC10 46083401 */ sub.s $f16, $f6, $f8
/* 109224 8029FC14 4610003C */ c.lt.s $f0, $f16
/* 109228 8029FC18 00000000 */ nop
/* 10922C 8029FC1C 45020004 */ bc1fl .L8029FC30
/* 109230 8029FC20 460C803C */ c.lt.s $f16, $f12
/* 109234 8029FC24 03E00008 */ jr $ra
/* 109238 8029FC28 00001025 */ move $v0, $zero
/* 10923C 8029FC2C 460C803C */ c.lt.s $f16, $f12
.L8029FC30:
/* 109240 8029FC30 00000000 */ nop
/* 109244 8029FC34 45000003 */ bc1f .L8029FC44
/* 109248 8029FC38 00000000 */ nop
/* 10924C 8029FC3C 03E00008 */ jr $ra
/* 109250 8029FC40 00001025 */ move $v0, $zero
.L8029FC44:
/* 109254 8029FC44 46021282 */ mul.s $f10, $f2, $f2
/* 109258 8029FC48 3C01802C */ lui $at, %hi(D_802B98AC) # $at, 0x802c
/* 10925C 8029FC4C C42898AC */ lwc1 $f8, %lo(D_802B98AC)($at)
/* 109260 8029FC50 460E7482 */ mul.s $f18, $f14, $f14
/* 109264 8029FC54 00001025 */ move $v0, $zero
/* 109268 8029FC58 46108182 */ mul.s $f6, $f16, $f16
/* 10926C 8029FC5C 46125100 */ add.s $f4, $f10, $f18
/* 109270 8029FC60 46062300 */ add.s $f12, $f4, $f6
/* 109274 8029FC64 4608603C */ c.lt.s $f12, $f8
/* 109278 8029FC68 00000000 */ nop
/* 10927C 8029FC6C 45000003 */ bc1f .L8029FC7C
/* 109280 8029FC70 00000000 */ nop
/* 109284 8029FC74 03E00008 */ jr $ra
/* 109288 8029FC78 00000000 */ nop
.L8029FC7C:
/* 10928C 8029FC7C 46000282 */ mul.s $f10, $f0, $f0
/* 109290 8029FC80 24020001 */ li $v0, 1
/* 109294 8029FC84 460C503C */ c.lt.s $f10, $f12
/* 109298 8029FC88 00000000 */ nop
/* 10929C 8029FC8C 45000003 */ bc1f .L8029FC9C
/* 1092A0 8029FC90 00000000 */ nop
/* 1092A4 8029FC94 03E00008 */ jr $ra
/* 1092A8 8029FC98 00001025 */ move $v0, $zero
.L8029FC9C:
/* 1092AC 8029FC9C 03E00008 */ jr $ra
/* 1092B0 8029FCA0 00000000 */ nop
@@ -1,90 +0,0 @@
glabel func_8029FCA4
/* 1092B4 8029FCA4 C484000C */ lwc1 $f4, 0xc($a0)
/* 1092B8 8029FCA8 C4A6000C */ lwc1 $f6, 0xc($a1)
/* 1092BC 8029FCAC C4880018 */ lwc1 $f8, 0x18($a0)
/* 1092C0 8029FCB0 C4AA0018 */ lwc1 $f10, 0x18($a1)
/* 1092C4 8029FCB4 46062000 */ add.s $f0, $f4, $f6
/* 1092C8 8029FCB8 460A4081 */ sub.s $f2, $f8, $f10
/* 1092CC 8029FCBC 4602003C */ c.lt.s $f0, $f2
/* 1092D0 8029FCC0 00000000 */ nop
/* 1092D4 8029FCC4 45020004 */ bc1fl .L8029FCD8
/* 1092D8 8029FCC8 46000307 */ neg.s $f12, $f0
/* 1092DC 8029FCCC 03E00008 */ jr $ra
/* 1092E0 8029FCD0 00001025 */ move $v0, $zero
/* 1092E4 8029FCD4 46000307 */ neg.s $f12, $f0
.L8029FCD8:
/* 1092E8 8029FCD8 460C103C */ c.lt.s $f2, $f12
/* 1092EC 8029FCDC 00000000 */ nop
/* 1092F0 8029FCE0 45020004 */ bc1fl .L8029FCF4
/* 1092F4 8029FCE4 C492001C */ lwc1 $f18, 0x1c($a0)
/* 1092F8 8029FCE8 03E00008 */ jr $ra
/* 1092FC 8029FCEC 00001025 */ move $v0, $zero
/* 109300 8029FCF0 C492001C */ lwc1 $f18, 0x1c($a0)
.L8029FCF4:
/* 109304 8029FCF4 C4A4001C */ lwc1 $f4, 0x1c($a1)
/* 109308 8029FCF8 46049381 */ sub.s $f14, $f18, $f4
/* 10930C 8029FCFC 460E003C */ c.lt.s $f0, $f14
/* 109310 8029FD00 00000000 */ nop
/* 109314 8029FD04 45020004 */ bc1fl .L8029FD18
/* 109318 8029FD08 460C703C */ c.lt.s $f14, $f12
/* 10931C 8029FD0C 03E00008 */ jr $ra
/* 109320 8029FD10 00001025 */ move $v0, $zero
/* 109324 8029FD14 460C703C */ c.lt.s $f14, $f12
.L8029FD18:
/* 109328 8029FD18 00000000 */ nop
/* 10932C 8029FD1C 45020004 */ bc1fl .L8029FD30
/* 109330 8029FD20 C4860020 */ lwc1 $f6, 0x20($a0)
/* 109334 8029FD24 03E00008 */ jr $ra
/* 109338 8029FD28 00001025 */ move $v0, $zero
/* 10933C 8029FD2C C4860020 */ lwc1 $f6, 0x20($a0)
.L8029FD30:
/* 109340 8029FD30 C4A80020 */ lwc1 $f8, 0x20($a1)
/* 109344 8029FD34 46083401 */ sub.s $f16, $f6, $f8
/* 109348 8029FD38 4610003C */ c.lt.s $f0, $f16
/* 10934C 8029FD3C 00000000 */ nop
/* 109350 8029FD40 45020004 */ bc1fl .L8029FD54
/* 109354 8029FD44 460C803C */ c.lt.s $f16, $f12
/* 109358 8029FD48 03E00008 */ jr $ra
/* 10935C 8029FD4C 00001025 */ move $v0, $zero
/* 109360 8029FD50 460C803C */ c.lt.s $f16, $f12
.L8029FD54:
/* 109364 8029FD54 00000000 */ nop
/* 109368 8029FD58 45000003 */ bc1f .L8029FD68
/* 10936C 8029FD5C 00000000 */ nop
/* 109370 8029FD60 03E00008 */ jr $ra
/* 109374 8029FD64 00001025 */ move $v0, $zero
.L8029FD68:
/* 109378 8029FD68 46021282 */ mul.s $f10, $f2, $f2
/* 10937C 8029FD6C 3C01802C */ lui $at, %hi(D_802B98B0) # $at, 0x802c
/* 109380 8029FD70 C42898B0 */ lwc1 $f8, %lo(D_802B98B0)($at)
/* 109384 8029FD74 460E7482 */ mul.s $f18, $f14, $f14
/* 109388 8029FD78 00001025 */ move $v0, $zero
/* 10938C 8029FD7C 46108182 */ mul.s $f6, $f16, $f16
/* 109390 8029FD80 46125100 */ add.s $f4, $f10, $f18
/* 109394 8029FD84 46062300 */ add.s $f12, $f4, $f6
/* 109398 8029FD88 4608603C */ c.lt.s $f12, $f8
/* 10939C 8029FD8C 00000000 */ nop
/* 1093A0 8029FD90 45000003 */ bc1f .L8029FDA0
/* 1093A4 8029FD94 00000000 */ nop
/* 1093A8 8029FD98 03E00008 */ jr $ra
/* 1093AC 8029FD9C 00000000 */ nop
.L8029FDA0:
/* 1093B0 8029FDA0 46000282 */ mul.s $f10, $f0, $f0
/* 1093B4 8029FDA4 24020001 */ li $v0, 1
/* 1093B8 8029FDA8 460C503C */ c.lt.s $f10, $f12
/* 1093BC 8029FDAC 00000000 */ nop
/* 1093C0 8029FDB0 45000003 */ bc1f .L8029FDC0
/* 1093C4 8029FDB4 00000000 */ nop
/* 1093C8 8029FDB8 03E00008 */ jr $ra
/* 1093CC 8029FDBC 00001025 */ move $v0, $zero
.L8029FDC0:
/* 1093D0 8029FDC0 03E00008 */ jr $ra
/* 1093D4 8029FDC4 00000000 */ nop
@@ -1,170 +0,0 @@
glabel func_802A00E8
/* 1096F8 802A00E8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 1096FC 802A00EC AFBF001C */ sw $ra, 0x1c($sp)
/* 109700 802A00F0 AFB00018 */ sw $s0, 0x18($sp)
/* 109704 802A00F4 84820000 */ lh $v0, ($a0)
/* 109708 802A00F8 24030007 */ li $v1, 7
/* 10970C 802A00FC 00A08025 */ move $s0, $a1
/* 109710 802A0100 1043000A */ beq $v0, $v1, .L802A012C
/* 109714 802A0104 00803825 */ move $a3, $a0
/* 109718 802A0108 24010008 */ li $at, 8
/* 10971C 802A010C 10410016 */ beq $v0, $at, .L802A0168
/* 109720 802A0110 2401000D */ li $at, 13
/* 109724 802A0114 10410030 */ beq $v0, $at, .L802A01D8
/* 109728 802A0118 2401002A */ li $at, 42
/* 10972C 802A011C 50410022 */ beql $v0, $at, .L802A01A8
/* 109730 802A0120 84E80006 */ lh $t0, 6($a3)
/* 109734 802A0124 1000003A */ b .L802A0210
/* 109738 802A0128 86020000 */ lh $v0, ($s0)
.L802A012C:
/* 10973C 802A012C 84E20006 */ lh $v0, 6($a3)
/* 109740 802A0130 24010004 */ li $at, 4
/* 109744 802A0134 24E40018 */ addiu $a0, $a3, 0x18
/* 109748 802A0138 10400003 */ beqz $v0, .L802A0148
/* 10974C 802A013C 24E50024 */ addiu $a1, $a3, 0x24
/* 109750 802A0140 54410033 */ bnel $v0, $at, .L802A0210
/* 109754 802A0144 86020000 */ lh $v0, ($s0)
.L802A0148:
/* 109758 802A0148 84EE0002 */ lh $t6, 2($a3)
/* 10975C 802A014C 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 109760 802A0150 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 109764 802A0154 35CF0200 */ ori $t7, $t6, 0x200
/* 109768 802A0158 0C03262E */ jal func_800C98B8
/* 10976C 802A015C A4EF0002 */ sh $t7, 2($a3)
/* 109770 802A0160 10000077 */ b .L802A0340
/* 109774 802A0164 8FBF001C */ lw $ra, 0x1c($sp)
.L802A0168:
/* 109778 802A0168 84E20006 */ lh $v0, 6($a3)
/* 10977C 802A016C 24010006 */ li $at, 6
/* 109780 802A0170 24E40018 */ addiu $a0, $a3, 0x18
/* 109784 802A0174 10400003 */ beqz $v0, .L802A0184
/* 109788 802A0178 24E50024 */ addiu $a1, $a3, 0x24
/* 10978C 802A017C 54410024 */ bnel $v0, $at, .L802A0210
/* 109790 802A0180 86020000 */ lh $v0, ($s0)
.L802A0184:
/* 109794 802A0184 84F80002 */ lh $t8, 2($a3)
/* 109798 802A0188 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 10979C 802A018C 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 1097A0 802A0190 37190200 */ ori $t9, $t8, 0x200
/* 1097A4 802A0194 0C03262E */ jal func_800C98B8
/* 1097A8 802A0198 A4F90002 */ sh $t9, 2($a3)
/* 1097AC 802A019C 10000068 */ b .L802A0340
/* 1097B0 802A01A0 8FBF001C */ lw $ra, 0x1c($sp)
/* 1097B4 802A01A4 84E80006 */ lh $t0, 6($a3)
.L802A01A8:
/* 1097B8 802A01A8 24E40018 */ addiu $a0, $a3, 0x18
/* 1097BC 802A01AC 24E50024 */ addiu $a1, $a3, 0x24
/* 1097C0 802A01B0 55000017 */ bnel $t0, $zero, .L802A0210
/* 1097C4 802A01B4 86020000 */ lh $v0, ($s0)
/* 1097C8 802A01B8 84E90002 */ lh $t1, 2($a3)
/* 1097CC 802A01BC 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 1097D0 802A01C0 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 1097D4 802A01C4 352A0200 */ ori $t2, $t1, 0x200
/* 1097D8 802A01C8 0C03262E */ jal func_800C98B8
/* 1097DC 802A01CC A4EA0002 */ sh $t2, 2($a3)
/* 1097E0 802A01D0 1000005B */ b .L802A0340
/* 1097E4 802A01D4 8FBF001C */ lw $ra, 0x1c($sp)
.L802A01D8:
/* 1097E8 802A01D8 84EB0006 */ lh $t3, 6($a3)
/* 1097EC 802A01DC 24E40018 */ addiu $a0, $a3, 0x18
/* 1097F0 802A01E0 24E50024 */ addiu $a1, $a3, 0x24
/* 1097F4 802A01E4 5560000A */ bnel $t3, $zero, .L802A0210
/* 1097F8 802A01E8 86020000 */ lh $v0, ($s0)
/* 1097FC 802A01EC 84EC0002 */ lh $t4, 2($a3)
/* 109800 802A01F0 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 109804 802A01F4 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 109808 802A01F8 358D0200 */ ori $t5, $t4, 0x200
/* 10980C 802A01FC 0C03262E */ jal func_800C98B8
/* 109810 802A0200 A4ED0002 */ sh $t5, 2($a3)
/* 109814 802A0204 1000004E */ b .L802A0340
/* 109818 802A0208 8FBF001C */ lw $ra, 0x1c($sp)
/* 10981C 802A020C 86020000 */ lh $v0, ($s0)
.L802A0210:
/* 109820 802A0210 24010008 */ li $at, 8
/* 109824 802A0214 5043000A */ beql $v0, $v1, .L802A0240
/* 109828 802A0218 86020006 */ lh $v0, 6($s0)
/* 10982C 802A021C 10410016 */ beq $v0, $at, .L802A0278
/* 109830 802A0220 2401000D */ li $at, 13
/* 109834 802A0224 10410030 */ beq $v0, $at, .L802A02E8
/* 109838 802A0228 2401002A */ li $at, 42
/* 10983C 802A022C 50410022 */ beql $v0, $at, .L802A02B8
/* 109840 802A0230 86080006 */ lh $t0, 6($s0)
/* 109844 802A0234 1000003A */ b .L802A0320
/* 109848 802A0238 84EE0002 */ lh $t6, 2($a3)
/* 10984C 802A023C 86020006 */ lh $v0, 6($s0)
.L802A0240:
/* 109850 802A0240 24010004 */ li $at, 4
/* 109854 802A0244 26040018 */ addiu $a0, $s0, 0x18
/* 109858 802A0248 10400003 */ beqz $v0, .L802A0258
/* 10985C 802A024C 26050024 */ addiu $a1, $s0, 0x24
/* 109860 802A0250 54410033 */ bnel $v0, $at, .L802A0320
/* 109864 802A0254 84EE0002 */ lh $t6, 2($a3)
.L802A0258:
/* 109868 802A0258 860E0002 */ lh $t6, 2($s0)
/* 10986C 802A025C 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 109870 802A0260 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 109874 802A0264 35CF0200 */ ori $t7, $t6, 0x200
/* 109878 802A0268 0C03262E */ jal func_800C98B8
/* 10987C 802A026C A60F0002 */ sh $t7, 2($s0)
/* 109880 802A0270 10000033 */ b .L802A0340
/* 109884 802A0274 8FBF001C */ lw $ra, 0x1c($sp)
.L802A0278:
/* 109888 802A0278 86020006 */ lh $v0, 6($s0)
/* 10988C 802A027C 24010006 */ li $at, 6
/* 109890 802A0280 26040018 */ addiu $a0, $s0, 0x18
/* 109894 802A0284 10400003 */ beqz $v0, .L802A0294
/* 109898 802A0288 26050024 */ addiu $a1, $s0, 0x24
/* 10989C 802A028C 54410024 */ bnel $v0, $at, .L802A0320
/* 1098A0 802A0290 84EE0002 */ lh $t6, 2($a3)
.L802A0294:
/* 1098A4 802A0294 86180002 */ lh $t8, 2($s0)
/* 1098A8 802A0298 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 1098AC 802A029C 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 1098B0 802A02A0 37190200 */ ori $t9, $t8, 0x200
/* 1098B4 802A02A4 0C03262E */ jal func_800C98B8
/* 1098B8 802A02A8 A6190002 */ sh $t9, 2($s0)
/* 1098BC 802A02AC 10000024 */ b .L802A0340
/* 1098C0 802A02B0 8FBF001C */ lw $ra, 0x1c($sp)
/* 1098C4 802A02B4 86080006 */ lh $t0, 6($s0)
.L802A02B8:
/* 1098C8 802A02B8 26040018 */ addiu $a0, $s0, 0x18
/* 1098CC 802A02BC 26050024 */ addiu $a1, $s0, 0x24
/* 1098D0 802A02C0 55000017 */ bnel $t0, $zero, .L802A0320
/* 1098D4 802A02C4 84EE0002 */ lh $t6, 2($a3)
/* 1098D8 802A02C8 86090002 */ lh $t1, 2($s0)
/* 1098DC 802A02CC 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 1098E0 802A02D0 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 1098E4 802A02D4 352A0200 */ ori $t2, $t1, 0x200
/* 1098E8 802A02D8 0C03262E */ jal func_800C98B8
/* 1098EC 802A02DC A60A0002 */ sh $t2, 2($s0)
/* 1098F0 802A02E0 10000017 */ b .L802A0340
/* 1098F4 802A02E4 8FBF001C */ lw $ra, 0x1c($sp)
.L802A02E8:
/* 1098F8 802A02E8 860B0006 */ lh $t3, 6($s0)
/* 1098FC 802A02EC 26040018 */ addiu $a0, $s0, 0x18
/* 109900 802A02F0 26050024 */ addiu $a1, $s0, 0x24
/* 109904 802A02F4 5560000A */ bnel $t3, $zero, .L802A0320
/* 109908 802A02F8 84EE0002 */ lh $t6, 2($a3)
/* 10990C 802A02FC 860C0002 */ lh $t4, 2($s0)
/* 109910 802A0300 3C061901 */ lui $a2, (0x19019053 >> 16) # lui $a2, 0x1901
/* 109914 802A0304 34C69053 */ ori $a2, (0x19019053 & 0xFFFF) # ori $a2, $a2, 0x9053
/* 109918 802A0308 358D0200 */ ori $t5, $t4, 0x200
/* 10991C 802A030C 0C03262E */ jal func_800C98B8
/* 109920 802A0310 A60D0002 */ sh $t5, 2($s0)
/* 109924 802A0314 1000000A */ b .L802A0340
/* 109928 802A0318 8FBF001C */ lw $ra, 0x1c($sp)
/* 10992C 802A031C 84EE0002 */ lh $t6, 2($a3)
.L802A0320:
/* 109930 802A0320 3C061901 */ lui $a2, (0x19018010 >> 16) # lui $a2, 0x1901
/* 109934 802A0324 34C68010 */ ori $a2, (0x19018010 & 0xFFFF) # ori $a2, $a2, 0x8010
/* 109938 802A0328 35CF0100 */ ori $t7, $t6, 0x100
/* 10993C 802A032C A4EF0002 */ sh $t7, 2($a3)
/* 109940 802A0330 24E40018 */ addiu $a0, $a3, 0x18
/* 109944 802A0334 0C03262E */ jal func_800C98B8
/* 109948 802A0338 24E50024 */ addiu $a1, $a3, 0x24
/* 10994C 802A033C 8FBF001C */ lw $ra, 0x1c($sp)
.L802A0340:
/* 109950 802A0340 8FB00018 */ lw $s0, 0x18($sp)
/* 109954 802A0344 27BD0020 */ addiu $sp, $sp, 0x20
/* 109958 802A0348 03E00008 */ jr $ra
/* 10995C 802A034C 00000000 */ nop
@@ -1,72 +0,0 @@
glabel func_802A0350
/* 109960 802A0350 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 109964 802A0354 AFBF001C */ sw $ra, 0x1c($sp)
/* 109968 802A0358 AFB10018 */ sw $s1, 0x18($sp)
/* 10996C 802A035C AFB00014 */ sw $s0, 0x14($sp)
/* 109970 802A0360 00808025 */ move $s0, $a0
/* 109974 802A0364 0C0A7F29 */ jal func_8029FCA4
/* 109978 802A0368 00A08825 */ move $s1, $a1
/* 10997C 802A036C 24010001 */ li $at, 1
/* 109980 802A0370 54410033 */ bnel $v0, $at, .L802A0440
/* 109984 802A0374 8FBF001C */ lw $ra, 0x1c($sp)
/* 109988 802A0378 86020000 */ lh $v0, ($s0)
/* 10998C 802A037C 2403002A */ li $v1, 42
/* 109990 802A0380 14620012 */ bne $v1, $v0, .L802A03CC
/* 109994 802A0384 00000000 */ nop
/* 109998 802A0388 862E0000 */ lh $t6, ($s1)
/* 10999C 802A038C 146E000F */ bne $v1, $t6, .L802A03CC
/* 1099A0 802A0390 00000000 */ nop
/* 1099A4 802A0394 0C0A7F72 */ jal func_8029FDC8
/* 1099A8 802A0398 02002025 */ move $a0, $s0
/* 1099AC 802A039C 0C0A7F72 */ jal func_8029FDC8
/* 1099B0 802A03A0 02202025 */ move $a0, $s1
/* 1099B4 802A03A4 860F0002 */ lh $t7, 2($s0)
/* 1099B8 802A03A8 3C061901 */ lui $a2, (0x19018010 >> 16) # lui $a2, 0x1901
/* 1099BC 802A03AC 34C68010 */ ori $a2, (0x19018010 & 0xFFFF) # ori $a2, $a2, 0x8010
/* 1099C0 802A03B0 35F80100 */ ori $t8, $t7, 0x100
/* 1099C4 802A03B4 A6180002 */ sh $t8, 2($s0)
/* 1099C8 802A03B8 26040018 */ addiu $a0, $s0, 0x18
/* 1099CC 802A03BC 0C03262E */ jal func_800C98B8
/* 1099D0 802A03C0 26050024 */ addiu $a1, $s0, 0x24
/* 1099D4 802A03C4 1000001E */ b .L802A0440
/* 1099D8 802A03C8 8FBF001C */ lw $ra, 0x1c($sp)
.L802A03CC:
/* 1099DC 802A03CC 14620009 */ bne $v1, $v0, .L802A03F4
/* 1099E0 802A03D0 00000000 */ nop
/* 1099E4 802A03D4 86190006 */ lh $t9, 6($s0)
/* 1099E8 802A03D8 17200004 */ bnez $t9, .L802A03EC
/* 1099EC 802A03DC 00000000 */ nop
/* 1099F0 802A03E0 0C0A7F72 */ jal func_8029FDC8
/* 1099F4 802A03E4 02002025 */ move $a0, $s0
/* 1099F8 802A03E8 2403002A */ li $v1, 42
.L802A03EC:
/* 1099FC 802A03EC 10000005 */ b .L802A0404
/* 109A00 802A03F0 86220000 */ lh $v0, ($s1)
.L802A03F4:
/* 109A04 802A03F4 0C0A7F72 */ jal func_8029FDC8
/* 109A08 802A03F8 02002025 */ move $a0, $s0
/* 109A0C 802A03FC 2403002A */ li $v1, 42
/* 109A10 802A0400 86220000 */ lh $v0, ($s1)
.L802A0404:
/* 109A14 802A0404 14620008 */ bne $v1, $v0, .L802A0428
/* 109A18 802A0408 00000000 */ nop
/* 109A1C 802A040C 86280006 */ lh $t0, 6($s1)
/* 109A20 802A0410 55000008 */ bnel $t0, $zero, .L802A0434
/* 109A24 802A0414 02002025 */ move $a0, $s0
/* 109A28 802A0418 0C0A7F72 */ jal func_8029FDC8
/* 109A2C 802A041C 02202025 */ move $a0, $s1
/* 109A30 802A0420 10000004 */ b .L802A0434
/* 109A34 802A0424 02002025 */ move $a0, $s0
.L802A0428:
/* 109A38 802A0428 0C0A7F72 */ jal func_8029FDC8
/* 109A3C 802A042C 02202025 */ move $a0, $s1
/* 109A40 802A0430 02002025 */ move $a0, $s0
.L802A0434:
/* 109A44 802A0434 0C0A803A */ jal func_802A00E8
/* 109A48 802A0438 02202825 */ move $a1, $s1
/* 109A4C 802A043C 8FBF001C */ lw $ra, 0x1c($sp)
.L802A0440:
/* 109A50 802A0440 8FB00014 */ lw $s0, 0x14($sp)
/* 109A54 802A0444 8FB10018 */ lw $s1, 0x18($sp)
/* 109A58 802A0448 03E00008 */ jr $ra
/* 109A5C 802A044C 27BD0020 */ addiu $sp, $sp, 0x20
@@ -1,66 +0,0 @@
glabel func_802A0D54
/* 10A364 802A0D54 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 10A368 802A0D58 AFB60030 */ sw $s6, 0x30($sp)
/* 10A36C 802A0D5C AFB30024 */ sw $s3, 0x24($sp)
/* 10A370 802A0D60 AFB1001C */ sw $s1, 0x1c($sp)
/* 10A374 802A0D64 AFB5002C */ sw $s5, 0x2c($sp)
/* 10A378 802A0D68 AFB40028 */ sw $s4, 0x28($sp)
/* 10A37C 802A0D6C AFB20020 */ sw $s2, 0x20($sp)
/* 10A380 802A0D70 3C11800F */ lui $s1, %hi(gPlayers) # $s1, 0x800f
/* 10A384 802A0D74 3C138016 */ lui $s3, %hi(D_8015F9B8) # $s3, 0x8016
/* 10A388 802A0D78 3C168010 */ lui $s6, %hi(gPlayers+0x6EC0) # 0x8010
/* 10A38C 802A0D7C AFBF0034 */ sw $ra, 0x34($sp)
/* 10A390 802A0D80 AFB00018 */ sw $s0, 0x18($sp)
/* 10A394 802A0D84 26D6D850 */ addiu $s6, $s6, %lo(gPlayers+0x6EC0) # -0x27b0
/* 10A398 802A0D88 2673F9B8 */ addiu $s3, %lo(D_8015F9B8) # addiu $s3, $s3, -0x648
/* 10A39C 802A0D8C 26316990 */ addiu $s1, %lo(gPlayers) # addiu $s1, $s1, 0x6990
/* 10A3A0 802A0D90 3C120400 */ lui $s2, 0x400
/* 10A3A4 802A0D94 24140070 */ li $s4, 112
/* 10A3A8 802A0D98 24150064 */ li $s5, 100
/* 10A3AC 802A0D9C 962E0000 */ lhu $t6, ($s1)
.L802A0DA0:
/* 10A3B0 802A0DA0 31CF8000 */ andi $t7, $t6, 0x8000
/* 10A3B4 802A0DA4 51E0001B */ beql $t7, $zero, .L802A0E14
/* 10A3B8 802A0DA8 26310DD8 */ addiu $s1, $s1, 0xdd8
/* 10A3BC 802A0DAC 8E3800BC */ lw $t8, 0xbc($s1)
/* 10A3C0 802A0DB0 0312C824 */ and $t9, $t8, $s2
/* 10A3C4 802A0DB4 57200017 */ bnel $t9, $zero, .L802A0E14
/* 10A3C8 802A0DB8 26310DD8 */ addiu $s1, $s1, 0xdd8
/* 10A3CC 802A0DBC 0C0A5DF9 */ jal func_802977E4
/* 10A3D0 802A0DC0 02202025 */ move $a0, $s1
/* 10A3D4 802A0DC4 00008025 */ move $s0, $zero
/* 10A3D8 802A0DC8 8E2800BC */ lw $t0, 0xbc($s1)
.L802A0DCC:
/* 10A3DC 802A0DCC 01124824 */ and $t1, $t0, $s2
/* 10A3E0 802A0DD0 5520000D */ bnel $t1, $zero, .L802A0E08
/* 10A3E4 802A0DD4 26100001 */ addiu $s0, $s0, 1
/* 10A3E8 802A0DD8 02140019 */ multu $s0, $s4
/* 10A3EC 802A0DDC 00005012 */ mflo $t2
/* 10A3F0 802A0DE0 026A2821 */ addu $a1, $s3, $t2
/* 10A3F4 802A0DE4 84A20002 */ lh $v0, 2($a1)
/* 10A3F8 802A0DE8 304B8000 */ andi $t3, $v0, 0x8000
/* 10A3FC 802A0DEC 11600005 */ beqz $t3, .L802A0E04
/* 10A400 802A0DF0 304C4000 */ andi $t4, $v0, 0x4000
/* 10A404 802A0DF4 51800004 */ beql $t4, $zero, .L802A0E08
/* 10A408 802A0DF8 26100001 */ addiu $s0, $s0, 1
/* 10A40C 802A0DFC 0C0A8114 */ jal func_802A0450
/* 10A410 802A0E00 02202025 */ move $a0, $s1
.L802A0E04:
/* 10A414 802A0E04 26100001 */ addiu $s0, $s0, 1
.L802A0E08:
/* 10A418 802A0E08 5615FFF0 */ bnel $s0, $s5, .L802A0DCC
/* 10A41C 802A0E0C 8E2800BC */ lw $t0, 0xbc($s1)
/* 10A420 802A0E10 26310DD8 */ addiu $s1, $s1, 0xdd8
.L802A0E14:
/* 10A424 802A0E14 5636FFE2 */ bnel $s1, $s6, .L802A0DA0
/* 10A428 802A0E18 962E0000 */ lhu $t6, ($s1)
/* 10A42C 802A0E1C 8FBF0034 */ lw $ra, 0x34($sp)
/* 10A430 802A0E20 8FB00018 */ lw $s0, 0x18($sp)
/* 10A434 802A0E24 8FB1001C */ lw $s1, 0x1c($sp)
/* 10A438 802A0E28 8FB20020 */ lw $s2, 0x20($sp)
/* 10A43C 802A0E2C 8FB30024 */ lw $s3, 0x24($sp)
/* 10A440 802A0E30 8FB40028 */ lw $s4, 0x28($sp)
/* 10A444 802A0E34 8FB5002C */ lw $s5, 0x2c($sp)
/* 10A448 802A0E38 8FB60030 */ lw $s6, 0x30($sp)
/* 10A44C 802A0E3C 03E00008 */ jr $ra
/* 10A450 802A0E40 27BD0038 */ addiu $sp, $sp, 0x38
@@ -1,152 +0,0 @@
glabel func_802A0E44
/* 10A454 802A0E44 27BDFF98 */ addiu $sp, $sp, -0x68
/* 10A458 802A0E48 3C038016 */ lui $v1, %hi(D_8015F900) # $v1, 0x8016
/* 10A45C 802A0E4C 9463F900 */ lhu $v1, %lo(D_8015F900)($v1)
/* 10A460 802A0E50 AFBF003C */ sw $ra, 0x3c($sp)
/* 10A464 802A0E54 AFBE0038 */ sw $fp, 0x38($sp)
/* 10A468 802A0E58 28610063 */ slti $at, $v1, 0x63
/* 10A46C 802A0E5C AFB70034 */ sw $s7, 0x34($sp)
/* 10A470 802A0E60 AFB60030 */ sw $s6, 0x30($sp)
/* 10A474 802A0E64 AFB5002C */ sw $s5, 0x2c($sp)
/* 10A478 802A0E68 AFB40028 */ sw $s4, 0x28($sp)
/* 10A47C 802A0E6C AFB30024 */ sw $s3, 0x24($sp)
/* 10A480 802A0E70 AFB20020 */ sw $s2, 0x20($sp)
/* 10A484 802A0E74 AFB1001C */ sw $s1, 0x1c($sp)
/* 10A488 802A0E78 1020006E */ beqz $at, .L802A1034
/* 10A48C 802A0E7C AFB00018 */ sw $s0, 0x18($sp)
/* 10A490 802A0E80 000370C0 */ sll $t6, $v1, 3
/* 10A494 802A0E84 01C37023 */ subu $t6, $t6, $v1
/* 10A498 802A0E88 3C0F8016 */ lui $t7, %hi(D_8015F9B8) # $t7, 0x8016
/* 10A49C 802A0E8C 25EFF9B8 */ addiu $t7, %lo(D_8015F9B8) # addiu $t7, $t7, -0x648
/* 10A4A0 802A0E90 000E7100 */ sll $t6, $t6, 4
/* 10A4A4 802A0E94 3C1E8016 */ lui $fp, %hi(D_8015F9B8) # $fp, 0x8016
/* 10A4A8 802A0E98 27DEF9B8 */ addiu $fp, %lo(D_8015F9B8) # addiu $fp, $fp, -0x648
/* 10A4AC 802A0E9C 01CF8021 */ addu $s0, $t6, $t7
/* 10A4B0 802A0EA0 24170064 */ li $s7, 100
/* 10A4B4 802A0EA4 2416002A */ li $s6, 42
/* 10A4B8 802A0EA8 2415000D */ li $s5, 13
/* 10A4BC 802A0EAC 24140008 */ li $s4, 8
/* 10A4C0 802A0EB0 24130007 */ li $s3, 7
/* 10A4C4 802A0EB4 24120006 */ li $s2, 6
/* 10A4C8 802A0EB8 86020002 */ lh $v0, 2($s0)
.L802A0EBC:
/* 10A4CC 802A0EBC 24790001 */ addiu $t9, $v1, 1
/* 10A4D0 802A0EC0 30588000 */ andi $t8, $v0, 0x8000
/* 10A4D4 802A0EC4 17000003 */ bnez $t8, .L802A0ED4
/* 10A4D8 802A0EC8 30484000 */ andi $t0, $v0, 0x4000
/* 10A4DC 802A0ECC 10000054 */ b .L802A1020
/* 10A4E0 802A0ED0 AFB90044 */ sw $t9, 0x44($sp)
.L802A0ED4:
/* 10A4E4 802A0ED4 15000003 */ bnez $t0, .L802A0EE4
/* 10A4E8 802A0ED8 24690001 */ addiu $t1, $v1, 1
/* 10A4EC 802A0EDC 10000050 */ b .L802A1020
/* 10A4F0 802A0EE0 AFA90044 */ sw $t1, 0x44($sp)
.L802A0EE4:
/* 10A4F4 802A0EE4 86020000 */ lh $v0, ($s0)
/* 10A4F8 802A0EE8 24710001 */ addiu $s1, $v1, 1
/* 10A4FC 802A0EEC 2A210064 */ slti $at, $s1, 0x64
/* 10A500 802A0EF0 1052000B */ beq $v0, $s2, .L802A0F20
/* 10A504 802A0EF4 00000000 */ nop
/* 10A508 802A0EF8 10530009 */ beq $v0, $s3, .L802A0F20
/* 10A50C 802A0EFC 00000000 */ nop
/* 10A510 802A0F00 10540007 */ beq $v0, $s4, .L802A0F20
/* 10A514 802A0F04 00000000 */ nop
/* 10A518 802A0F08 10550005 */ beq $v0, $s5, .L802A0F20
/* 10A51C 802A0F0C 00000000 */ nop
/* 10A520 802A0F10 10560003 */ beq $v0, $s6, .L802A0F20
/* 10A524 802A0F14 246A0001 */ addiu $t2, $v1, 1
/* 10A528 802A0F18 10000041 */ b .L802A1020
/* 10A52C 802A0F1C AFAA0044 */ sw $t2, 0x44($sp)
.L802A0F20:
/* 10A530 802A0F20 1020003F */ beqz $at, .L802A1020
/* 10A534 802A0F24 AFB10044 */ sw $s1, 0x44($sp)
/* 10A538 802A0F28 86020002 */ lh $v0, 2($s0)
.L802A0F2C:
/* 10A53C 802A0F2C 304D8000 */ andi $t5, $v0, 0x8000
/* 10A540 802A0F30 11A00038 */ beqz $t5, .L802A1014
/* 10A544 802A0F34 304E4000 */ andi $t6, $v0, 0x4000
/* 10A548 802A0F38 11C00036 */ beqz $t6, .L802A1014
/* 10A54C 802A0F3C 001178C0 */ sll $t7, $s1, 3
/* 10A550 802A0F40 01F17823 */ subu $t7, $t7, $s1
/* 10A554 802A0F44 000F7900 */ sll $t7, $t7, 4
/* 10A558 802A0F48 03CF2821 */ addu $a1, $fp, $t7
/* 10A55C 802A0F4C 84A20002 */ lh $v0, 2($a1)
/* 10A560 802A0F50 30588000 */ andi $t8, $v0, 0x8000
/* 10A564 802A0F54 1300002F */ beqz $t8, .L802A1014
/* 10A568 802A0F58 30594000 */ andi $t9, $v0, 0x4000
/* 10A56C 802A0F5C 5320002E */ beql $t9, $zero, .L802A1018
/* 10A570 802A0F60 26310001 */ addiu $s1, $s1, 1
/* 10A574 802A0F64 84A20000 */ lh $v0, ($a1)
/* 10A578 802A0F68 5052000C */ beql $v0, $s2, .L802A0F9C
/* 10A57C 802A0F6C 86080000 */ lh $t0, ($s0)
/* 10A580 802A0F70 50530011 */ beql $v0, $s3, .L802A0FB8
/* 10A584 802A0F74 86090000 */ lh $t1, ($s0)
/* 10A588 802A0F78 5054001A */ beql $v0, $s4, .L802A0FE4
/* 10A58C 802A0F7C 860C0000 */ lh $t4, ($s0)
/* 10A590 802A0F80 10550022 */ beq $v0, $s5, .L802A100C
/* 10A594 802A0F84 00000000 */ nop
/* 10A598 802A0F88 10560020 */ beq $v0, $s6, .L802A100C
/* 10A59C 802A0F8C 00000000 */ nop
/* 10A5A0 802A0F90 10000021 */ b .L802A1018
/* 10A5A4 802A0F94 26310001 */ addiu $s1, $s1, 1
/* 10A5A8 802A0F98 86080000 */ lh $t0, ($s0)
.L802A0F9C:
/* 10A5AC 802A0F9C 5248001E */ beql $s2, $t0, .L802A1018
/* 10A5B0 802A0FA0 26310001 */ addiu $s1, $s1, 1
/* 10A5B4 802A0FA4 0C0A80D4 */ jal func_802A0350
/* 10A5B8 802A0FA8 02002025 */ move $a0, $s0
/* 10A5BC 802A0FAC 1000001A */ b .L802A1018
/* 10A5C0 802A0FB0 26310001 */ addiu $s1, $s1, 1
/* 10A5C4 802A0FB4 86090000 */ lh $t1, ($s0)
.L802A0FB8:
/* 10A5C8 802A0FB8 16690005 */ bne $s3, $t1, .L802A0FD0
/* 10A5CC 802A0FBC 00000000 */ nop
/* 10A5D0 802A0FC0 860A0014 */ lh $t2, 0x14($s0)
/* 10A5D4 802A0FC4 84AB0014 */ lh $t3, 0x14($a1)
/* 10A5D8 802A0FC8 514B0013 */ beql $t2, $t3, .L802A1018
/* 10A5DC 802A0FCC 26310001 */ addiu $s1, $s1, 1
.L802A0FD0:
/* 10A5E0 802A0FD0 0C0A80D4 */ jal func_802A0350
/* 10A5E4 802A0FD4 02002025 */ move $a0, $s0
/* 10A5E8 802A0FD8 1000000F */ b .L802A1018
/* 10A5EC 802A0FDC 26310001 */ addiu $s1, $s1, 1
/* 10A5F0 802A0FE0 860C0000 */ lh $t4, ($s0)
.L802A0FE4:
/* 10A5F4 802A0FE4 168C0005 */ bne $s4, $t4, .L802A0FFC
/* 10A5F8 802A0FE8 00000000 */ nop
/* 10A5FC 802A0FEC 860D0014 */ lh $t5, 0x14($s0)
/* 10A600 802A0FF0 84AE0014 */ lh $t6, 0x14($a1)
/* 10A604 802A0FF4 51AE0008 */ beql $t5, $t6, .L802A1018
/* 10A608 802A0FF8 26310001 */ addiu $s1, $s1, 1
.L802A0FFC:
/* 10A60C 802A0FFC 0C0A80D4 */ jal func_802A0350
/* 10A610 802A1000 02002025 */ move $a0, $s0
/* 10A614 802A1004 10000004 */ b .L802A1018
/* 10A618 802A1008 26310001 */ addiu $s1, $s1, 1
.L802A100C:
/* 10A61C 802A100C 0C0A80D4 */ jal func_802A0350
/* 10A620 802A1010 02002025 */ move $a0, $s0
.L802A1014:
/* 10A624 802A1014 26310001 */ addiu $s1, $s1, 1
.L802A1018:
/* 10A628 802A1018 5637FFC4 */ bnel $s1, $s7, .L802A0F2C
/* 10A62C 802A101C 86020002 */ lh $v0, 2($s0)
.L802A1020:
/* 10A630 802A1020 8FA30044 */ lw $v1, 0x44($sp)
/* 10A634 802A1024 26100070 */ addiu $s0, $s0, 0x70
/* 10A638 802A1028 28610063 */ slti $at, $v1, 0x63
/* 10A63C 802A102C 5420FFA3 */ bnel $at, $zero, .L802A0EBC
/* 10A640 802A1030 86020002 */ lh $v0, 2($s0)
.L802A1034:
/* 10A644 802A1034 8FBF003C */ lw $ra, 0x3c($sp)
/* 10A648 802A1038 8FB00018 */ lw $s0, 0x18($sp)
/* 10A64C 802A103C 8FB1001C */ lw $s1, 0x1c($sp)
/* 10A650 802A1040 8FB20020 */ lw $s2, 0x20($sp)
/* 10A654 802A1044 8FB30024 */ lw $s3, 0x24($sp)
/* 10A658 802A1048 8FB40028 */ lw $s4, 0x28($sp)
/* 10A65C 802A104C 8FB5002C */ lw $s5, 0x2c($sp)
/* 10A660 802A1050 8FB60030 */ lw $s6, 0x30($sp)
/* 10A664 802A1054 8FB70034 */ lw $s7, 0x34($sp)
/* 10A668 802A1058 8FBE0038 */ lw $fp, 0x38($sp)
/* 10A66C 802A105C 03E00008 */ jr $ra
/* 10A670 802A1060 27BD0068 */ addiu $sp, $sp, 0x68
@@ -1,38 +0,0 @@
glabel func_802A1064
/* 10A674 802A1064 3C0E8016 */ lui $t6, %hi(D_8015F9B8) # $t6, 0x8016
/* 10A678 802A1068 25CEF9B8 */ addiu $t6, %lo(D_8015F9B8) # addiu $t6, $t6, -0x648
/* 10A67C 802A106C 008E7823 */ subu $t7, $a0, $t6
/* 10A680 802A1070 24010070 */ li $at, 112
/* 10A684 802A1074 01E1001A */ div $zero, $t7, $at
/* 10A688 802A1078 0000C012 */ mflo $t8
/* 10A68C 802A107C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 10A690 802A1080 2F010065 */ sltiu $at, $t8, 0x65
/* 10A694 802A1084 AFBF0014 */ sw $ra, 0x14($sp)
/* 10A698 802A1088 10200015 */ beqz $at, .L802A10E0
/* 10A69C 802A108C 00803025 */ move $a2, $a0
/* 10A6A0 802A1090 84990002 */ lh $t9, 2($a0)
/* 10A6A4 802A1094 33288000 */ andi $t0, $t9, 0x8000
/* 10A6A8 802A1098 51000012 */ beql $t0, $zero, .L802A10E4
/* 10A6AC 802A109C 8FBF0014 */ lw $ra, 0x14($sp)
/* 10A6B0 802A10A0 84890000 */ lh $t1, ($a0)
/* 10A6B4 802A10A4 2401000D */ li $at, 13
/* 10A6B8 802A10A8 240A0001 */ li $t2, 1
/* 10A6BC 802A10AC 1521000C */ bne $t1, $at, .L802A10E0
/* 10A6C0 802A10B0 24C50018 */ addiu $a1, $a2, 0x18
/* 10A6C4 802A10B4 A48A0006 */ sh $t2, 6($a0)
/* 10A6C8 802A10B8 AFA60018 */ sw $a2, 0x18($sp)
/* 10A6CC 802A10BC 0C0AAFAB */ jal func_802ABEAC
/* 10A6D0 802A10C0 24840030 */ addiu $a0, $a0, 0x30
/* 10A6D4 802A10C4 3C01802C */ lui $at, %hi(D_802B99CC) # $at, 0x802c
/* 10A6D8 802A10C8 C42499CC */ lwc1 $f4, %lo(D_802B99CC)($at)
/* 10A6DC 802A10CC 8FA60018 */ lw $a2, 0x18($sp)
/* 10A6E0 802A10D0 240B0064 */ li $t3, 100
/* 10A6E4 802A10D4 46040180 */ add.s $f6, $f0, $f4
/* 10A6E8 802A10D8 A4CB0004 */ sh $t3, 4($a2)
/* 10A6EC 802A10DC E4C60028 */ swc1 $f6, 0x28($a2)
.L802A10E0:
/* 10A6F0 802A10E0 8FBF0014 */ lw $ra, 0x14($sp)
.L802A10E4:
/* 10A6F4 802A10E4 27BD0018 */ addiu $sp, $sp, 0x18
/* 10A6F8 802A10E8 03E00008 */ jr $ra
/* 10A6FC 802A10EC 00000000 */ nop
@@ -1,46 +0,0 @@
glabel func_802A14BC
/* 10AACC 802A14BC 3C0E800E */ lui $t6, %hi(gModeSelection) # $t6, 0x800e
/* 10AAD0 802A14C0 8DCEC53C */ lw $t6, %lo(gModeSelection)($t6)
/* 10AAD4 802A14C4 27BDFFC0 */ addiu $sp, $sp, -0x40
/* 10AAD8 802A14C8 24010001 */ li $at, 1
/* 10AADC 802A14CC AFBF0014 */ sw $ra, 0x14($sp)
/* 10AAE0 802A14D0 E7AC0040 */ swc1 $f12, 0x40($sp)
/* 10AAE4 802A14D4 E7AE0044 */ swc1 $f14, 0x44($sp)
/* 10AAE8 802A14D8 11C10020 */ beq $t6, $at, .L802A155C
/* 10AAEC 802A14DC AFA60048 */ sw $a2, 0x48($sp)
/* 10AAF0 802A14E0 27A40020 */ addiu $a0, $sp, 0x20
/* 10AAF4 802A14E4 00002825 */ move $a1, $zero
/* 10AAF8 802A14E8 00003025 */ move $a2, $zero
/* 10AAFC 802A14EC 0C0AD4AF */ jal func_802B52BC
/* 10AB00 802A14F0 00003825 */ move $a3, $zero
/* 10AB04 802A14F4 44800000 */ mtc1 $zero, $f0
/* 10AB08 802A14F8 27A40028 */ addiu $a0, $sp, 0x28
/* 10AB0C 802A14FC 44050000 */ mfc1 $a1, $f0
/* 10AB10 802A1500 44060000 */ mfc1 $a2, $f0
/* 10AB14 802A1504 44070000 */ mfc1 $a3, $f0
/* 10AB18 802A1508 0C0AD4A7 */ jal load_giant_egg
/* 10AB1C 802A150C 00000000 */ nop
/* 10AB20 802A1510 C7A40040 */ lwc1 $f4, 0x40($sp)
/* 10AB24 802A1514 C7A60044 */ lwc1 $f6, 0x44($sp)
/* 10AB28 802A1518 C7A80048 */ lwc1 $f8, 0x48($sp)
/* 10AB2C 802A151C 27A40034 */ addiu $a0, $sp, 0x34
/* 10AB30 802A1520 27A50020 */ addiu $a1, $sp, 0x20
/* 10AB34 802A1524 27A60028 */ addiu $a2, $sp, 0x28
/* 10AB38 802A1528 2407002B */ li $a3, 43
/* 10AB3C 802A152C E7A40034 */ swc1 $f4, 0x34($sp)
/* 10AB40 802A1530 E7A60038 */ swc1 $f6, 0x38($sp)
/* 10AB44 802A1534 0C0A7B22 */ jal func_8029EC88
/* 10AB48 802A1538 E7A8003C */ swc1 $f8, 0x3c($sp)
/* 10AB4C 802A153C 000278C0 */ sll $t7, $v0, 3
/* 10AB50 802A1540 01E27823 */ subu $t7, $t7, $v0
/* 10AB54 802A1544 3C188016 */ lui $t8, %hi(D_8015F9B8) # $t8, 0x8016
/* 10AB58 802A1548 2718F9B8 */ addiu $t8, %lo(D_8015F9B8) # addiu $t8, $t8, -0x648
/* 10AB5C 802A154C 000F7900 */ sll $t7, $t7, 4
/* 10AB60 802A1550 01F8C821 */ addu $t9, $t7, $t8
/* 10AB64 802A1554 3C01802C */ lui $at, %hi(D_802BA05C) # $at, 0x802c
/* 10AB68 802A1558 AC39A05C */ sw $t9, %lo(D_802BA05C)($at)
.L802A155C:
/* 10AB6C 802A155C 8FBF0014 */ lw $ra, 0x14($sp)
/* 10AB70 802A1560 27BD0040 */ addiu $sp, $sp, 0x40
/* 10AB74 802A1564 03E00008 */ jr $ra
/* 10AB78 802A1568 00000000 */ nop
@@ -1,68 +0,0 @@
glabel func_802A269C
/* 10BCAC 802A269C 3C0E800E */ lui $t6, %hi(camera1) # $t6, 0x800e
/* 10BCB0 802A26A0 8DCEDB40 */ lw $t6, %lo(camera1)($t6)
/* 10BCB4 802A26A4 240100B8 */ li $at, 184
/* 10BCB8 802A26A8 27BDFF88 */ addiu $sp, $sp, -0x78
/* 10BCBC 802A26AC 008E7823 */ subu $t7, $a0, $t6
/* 10BCC0 802A26B0 01E1001A */ div $zero, $t7, $at
/* 10BCC4 802A26B4 0000C012 */ mflo $t8
/* 10BCC8 802A26B8 0018C880 */ sll $t9, $t8, 2
/* 10BCCC 802A26BC 3C018015 */ lui $at, %hi(D_80150130)
/* 10BCD0 802A26C0 00390821 */ addu $at, $at, $t9
/* 10BCD4 802A26C4 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 10BCD8 802A26C8 AFBF001C */ sw $ra, 0x1c($sp)
/* 10BCDC 802A26CC AFA5007C */ sw $a1, 0x7c($sp)
/* 10BCE0 802A26D0 3C01802C */ lui $at, %hi(D_802B9A28) # $at, 0x802c
/* 10BCE4 802A26D4 C4269A28 */ lwc1 $f6, %lo(D_802B9A28)($at)
/* 10BCE8 802A26D8 94860026 */ lhu $a2, 0x26($a0)
/* 10BCEC 802A26DC 24A50018 */ addiu $a1, $a1, 0x18
/* 10BCF0 802A26E0 AFA50024 */ sw $a1, 0x24($sp)
/* 10BCF4 802A26E4 24070000 */ li $a3, 0
/* 10BCF8 802A26E8 E7A40010 */ swc1 $f4, 0x10($sp)
/* 10BCFC 802A26EC 0C0AE034 */ jal func_802B80D0
/* 10BD00 802A26F0 E7A60014 */ swc1 $f6, 0x14($sp)
/* 10BD04 802A26F4 44804000 */ mtc1 $zero, $f8
/* 10BD08 802A26F8 3C088015 */ lui $t0, %hi(gDisplayListHead) # $t0, 0x8015
/* 10BD0C 802A26FC 8FA50024 */ lw $a1, 0x24($sp)
/* 10BD10 802A2700 4608003C */ c.lt.s $f0, $f8
/* 10BD14 802A2704 25080298 */ addiu $t0, %lo(gDisplayListHead) # addiu $t0, $t0, 0x298
/* 10BD18 802A2708 45030022 */ bc1tl .L802A2794
/* 10BD1C 802A270C 8FBF001C */ lw $ra, 0x1c($sp)
/* 10BD20 802A2710 8D020000 */ lw $v0, ($t0)
/* 10BD24 802A2714 3C0AB700 */ lui $t2, 0xb700
/* 10BD28 802A2718 240B0200 */ li $t3, 512
/* 10BD2C 802A271C 24490008 */ addiu $t1, $v0, 8
/* 10BD30 802A2720 AD090000 */ sw $t1, ($t0)
/* 10BD34 802A2724 AC4B0004 */ sw $t3, 4($v0)
/* 10BD38 802A2728 AC4A0000 */ sw $t2, ($v0)
/* 10BD3C 802A272C 8D020000 */ lw $v0, ($t0)
/* 10BD40 802A2730 3C0DB600 */ lui $t5, 0xb600
/* 10BD44 802A2734 3C0E0002 */ lui $t6, 2
/* 10BD48 802A2738 244C0008 */ addiu $t4, $v0, 8
/* 10BD4C 802A273C AD0C0000 */ sw $t4, ($t0)
/* 10BD50 802A2740 AC4E0004 */ sw $t6, 4($v0)
/* 10BD54 802A2744 AC4D0000 */ sw $t5, ($v0)
/* 10BD58 802A2748 8FA6007C */ lw $a2, 0x7c($sp)
/* 10BD5C 802A274C 27A40038 */ addiu $a0, $sp, 0x38
/* 10BD60 802A2750 0C0AD7DD */ jal func_802B5F74
/* 10BD64 802A2754 24C60010 */ addiu $a2, $a2, 0x10
/* 10BD68 802A2758 27A40038 */ addiu $a0, $sp, 0x38
/* 10BD6C 802A275C 0C0AD3FE */ jal func_802B4FF8
/* 10BD70 802A2760 00002825 */ move $a1, $zero
/* 10BD74 802A2764 3C088015 */ lui $t0, %hi(gDisplayListHead) # $t0, 0x8015
/* 10BD78 802A2768 10400009 */ beqz $v0, .L802A2790
/* 10BD7C 802A276C 25080298 */ addiu $t0, %lo(gDisplayListHead) # addiu $t0, $t0, 0x298
/* 10BD80 802A2770 8D020000 */ lw $v0, ($t0)
/* 10BD84 802A2774 3C190601 */ lui $t9, %hi(D_0600CA60) # $t9, 0x601
/* 10BD88 802A2778 2739CA60 */ addiu $t9, %lo(D_0600CA60) # addiu $t9, $t9, -0x35a0
/* 10BD8C 802A277C 244F0008 */ addiu $t7, $v0, 8
/* 10BD90 802A2780 AD0F0000 */ sw $t7, ($t0)
/* 10BD94 802A2784 3C180600 */ lui $t8, 0x600
/* 10BD98 802A2788 AC580000 */ sw $t8, ($v0)
/* 10BD9C 802A278C AC590004 */ sw $t9, 4($v0)
.L802A2790:
/* 10BDA0 802A2790 8FBF001C */ lw $ra, 0x1c($sp)
.L802A2794:
/* 10BDA4 802A2794 27BD0078 */ addiu $sp, $sp, 0x78
/* 10BDA8 802A2798 03E00008 */ jr $ra
/* 10BDAC 802A279C 00000000 */ nop
@@ -1,142 +0,0 @@
glabel func_802A27A0
/* 10BDB0 802A27A0 3C0E800E */ lui $t6, %hi(D_800DC50C) # $t6, 0x800e
/* 10BDB4 802A27A4 8DCEC50C */ lw $t6, %lo(D_800DC50C)($t6)
/* 10BDB8 802A27A8 27BDFF60 */ addiu $sp, $sp, -0xa0
/* 10BDBC 802A27AC AFB00020 */ sw $s0, 0x20($sp)
/* 10BDC0 802A27B0 24010009 */ li $at, 9
/* 10BDC4 802A27B4 00C08025 */ move $s0, $a2
/* 10BDC8 802A27B8 AFBF0024 */ sw $ra, 0x24($sp)
/* 10BDCC 802A27BC AFA500A4 */ sw $a1, 0xa4($sp)
/* 10BDD0 802A27C0 11C1001B */ beq $t6, $at, .L802A2830
/* 10BDD4 802A27C4 AFA700AC */ sw $a3, 0xac($sp)
/* 10BDD8 802A27C8 3C0F800E */ lui $t7, %hi(camera1) # $t7, 0x800e
/* 10BDDC 802A27CC 8DEFDB40 */ lw $t7, %lo(camera1)($t7)
/* 10BDE0 802A27D0 240100B8 */ li $at, 184
/* 10BDE4 802A27D4 24C50018 */ addiu $a1, $a2, 0x18
/* 10BDE8 802A27D8 008FC023 */ subu $t8, $a0, $t7
/* 10BDEC 802A27DC 0301001A */ div $zero, $t8, $at
/* 10BDF0 802A27E0 0000C812 */ mflo $t9
/* 10BDF4 802A27E4 00194080 */ sll $t0, $t9, 2
/* 10BDF8 802A27E8 3C018015 */ lui $at, %hi(D_80150130)
/* 10BDFC 802A27EC 00280821 */ addu $at, $at, $t0
/* 10BE00 802A27F0 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 10BE04 802A27F4 3C01802C */ lui $at, %hi(D_802B9A2C) # $at, 0x802c
/* 10BE08 802A27F8 C4269A2C */ lwc1 $f6, %lo(D_802B9A2C)($at)
/* 10BE0C 802A27FC 94860026 */ lhu $a2, 0x26($a0)
/* 10BE10 802A2800 3C074348 */ lui $a3, 0x4348
/* 10BE14 802A2804 E7A40010 */ swc1 $f4, 0x10($sp)
/* 10BE18 802A2808 0C0AE034 */ jal func_802B80D0
/* 10BE1C 802A280C E7A60014 */ swc1 $f6, 0x14($sp)
/* 10BE20 802A2810 44804000 */ mtc1 $zero, $f8
/* 10BE24 802A2814 46000086 */ mov.s $f2, $f0
/* 10BE28 802A2818 4608003C */ c.lt.s $f0, $f8
/* 10BE2C 802A281C 00000000 */ nop
/* 10BE30 802A2820 45000006 */ bc1f .L802A283C
/* 10BE34 802A2824 00000000 */ nop
/* 10BE38 802A2828 10000060 */ b .L802A29AC
/* 10BE3C 802A282C 8FBF0024 */ lw $ra, 0x24($sp)
.L802A2830:
/* 10BE40 802A2830 2409000F */ li $t1, 15
/* 10BE44 802A2834 44801000 */ mtc1 $zero, $f2
/* 10BE48 802A2838 A7A900AE */ sh $t1, 0xae($sp)
.L802A283C:
/* 10BE4C 802A283C 3C078015 */ lui $a3, %hi(gDisplayListHead) # $a3, 0x8015
/* 10BE50 802A2840 24E70298 */ addiu $a3, %lo(gDisplayListHead) # addiu $a3, $a3, 0x298
/* 10BE54 802A2844 8CE20000 */ lw $v0, ($a3)
/* 10BE58 802A2848 3C0BB700 */ lui $t3, 0xb700
/* 10BE5C 802A284C 240C0200 */ li $t4, 512
/* 10BE60 802A2850 244A0008 */ addiu $t2, $v0, 8
/* 10BE64 802A2854 ACEA0000 */ sw $t2, ($a3)
/* 10BE68 802A2858 AC4C0004 */ sw $t4, 4($v0)
/* 10BE6C 802A285C AC4B0000 */ sw $t3, ($v0)
/* 10BE70 802A2860 97A400AE */ lhu $a0, 0xae($sp)
/* 10BE74 802A2864 2881000D */ slti $at, $a0, 0xd
/* 10BE78 802A2868 14200034 */ bnez $at, .L802A293C
/* 10BE7C 802A286C 28810014 */ slti $at, $a0, 0x14
/* 10BE80 802A2870 10200032 */ beqz $at, .L802A293C
/* 10BE84 802A2874 3C01802C */ lui $at, %hi(D_802B9A30) # $at, 0x802c
/* 10BE88 802A2878 C42A9A30 */ lwc1 $f10, %lo(D_802B9A30)($at)
/* 10BE8C 802A287C 260D0018 */ addiu $t5, $s0, 0x18
/* 10BE90 802A2880 AFAD0030 */ sw $t5, 0x30($sp)
/* 10BE94 802A2884 460A103C */ c.lt.s $f2, $f10
/* 10BE98 802A2888 3C014040 */ li $at, 0x40400000 # 3.000000
/* 10BE9C 802A288C 4502000E */ bc1fl .L802A28C8
/* 10BEA0 802A2890 A7A00058 */ sh $zero, 0x58($sp)
/* 10BEA4 802A2894 C6100018 */ lwc1 $f16, 0x18($s0)
/* 10BEA8 802A2898 44819000 */ mtc1 $at, $f18
/* 10BEAC 802A289C 27A40058 */ addiu $a0, $sp, 0x58
/* 10BEB0 802A28A0 E7B0004C */ swc1 $f16, 0x4c($sp)
/* 10BEB4 802A28A4 E7B20050 */ swc1 $f18, 0x50($sp)
/* 10BEB8 802A28A8 C6040020 */ lwc1 $f4, 0x20($s0)
/* 10BEBC 802A28AC 0C0A5DB6 */ jal func_802976D8
/* 10BEC0 802A28B0 E7A40054 */ swc1 $f4, 0x54($sp)
/* 10BEC4 802A28B4 27A4004C */ addiu $a0, $sp, 0x4c
/* 10BEC8 802A28B8 27A50058 */ addiu $a1, $sp, 0x58
/* 10BECC 802A28BC 0C0A5E53 */ jal func_8029794C
/* 10BED0 802A28C0 3C064120 */ lui $a2, 0x4120
/* 10BED4 802A28C4 A7A00058 */ sh $zero, 0x58($sp)
.L802A28C8:
/* 10BED8 802A28C8 860E0012 */ lh $t6, 0x12($s0)
/* 10BEDC 802A28CC A7A0005C */ sh $zero, 0x5c($sp)
/* 10BEE0 802A28D0 27A40060 */ addiu $a0, $sp, 0x60
/* 10BEE4 802A28D4 8FA50030 */ lw $a1, 0x30($sp)
/* 10BEE8 802A28D8 27A60058 */ addiu $a2, $sp, 0x58
/* 10BEEC 802A28DC 0C0AD7DD */ jal func_802B5F74
/* 10BEF0 802A28E0 A7AE005A */ sh $t6, 0x5a($sp)
/* 10BEF4 802A28E4 27A40060 */ addiu $a0, $sp, 0x60
/* 10BEF8 802A28E8 0C0AD3FE */ jal func_802B4FF8
/* 10BEFC 802A28EC 00002825 */ move $a1, $zero
/* 10BF00 802A28F0 3C078015 */ lui $a3, %hi(gDisplayListHead) # $a3, 0x8015
/* 10BF04 802A28F4 1040002C */ beqz $v0, .L802A29A8
/* 10BF08 802A28F8 24E70298 */ addiu $a3, %lo(gDisplayListHead) # addiu $a3, $a3, 0x298
/* 10BF0C 802A28FC 8CE20000 */ lw $v0, ($a3)
/* 10BF10 802A2900 3C18B700 */ lui $t8, 0xb700
/* 10BF14 802A2904 3C190002 */ lui $t9, 2
/* 10BF18 802A2908 244F0008 */ addiu $t7, $v0, 8
/* 10BF1C 802A290C ACEF0000 */ sw $t7, ($a3)
/* 10BF20 802A2910 AC590004 */ sw $t9, 4($v0)
/* 10BF24 802A2914 AC580000 */ sw $t8, ($v0)
/* 10BF28 802A2918 8CE20000 */ lw $v0, ($a3)
/* 10BF2C 802A291C 3C0A0601 */ lui $t2, %hi(D_06016D70) # $t2, 0x601
/* 10BF30 802A2920 254A6D70 */ addiu $t2, %lo(D_06016D70) # addiu $t2, $t2, 0x6d70
/* 10BF34 802A2924 24480008 */ addiu $t0, $v0, 8
/* 10BF38 802A2928 ACE80000 */ sw $t0, ($a3)
/* 10BF3C 802A292C 3C090600 */ lui $t1, 0x600
/* 10BF40 802A2930 AC490000 */ sw $t1, ($v0)
/* 10BF44 802A2934 1000001C */ b .L802A29A8
/* 10BF48 802A2938 AC4A0004 */ sw $t2, 4($v0)
.L802A293C:
/* 10BF4C 802A293C C6060018 */ lwc1 $f6, 0x18($s0)
/* 10BF50 802A2940 8FA400A4 */ lw $a0, 0xa4($sp)
/* 10BF54 802A2944 00002825 */ move $a1, $zero
/* 10BF58 802A2948 E4860030 */ swc1 $f6, 0x30($a0)
/* 10BF5C 802A294C C608001C */ lwc1 $f8, 0x1c($s0)
/* 10BF60 802A2950 E4880034 */ swc1 $f8, 0x34($a0)
/* 10BF64 802A2954 C60A0020 */ lwc1 $f10, 0x20($s0)
/* 10BF68 802A2958 0C0AD3FE */ jal func_802B4FF8
/* 10BF6C 802A295C E48A0038 */ swc1 $f10, 0x38($a0)
/* 10BF70 802A2960 3C078015 */ lui $a3, %hi(gDisplayListHead) # $a3, 0x8015
/* 10BF74 802A2964 10400010 */ beqz $v0, .L802A29A8
/* 10BF78 802A2968 24E70298 */ addiu $a3, %lo(gDisplayListHead) # addiu $a3, $a3, 0x298
/* 10BF7C 802A296C 8CE20000 */ lw $v0, ($a3)
/* 10BF80 802A2970 3C0DB600 */ lui $t5, 0xb600
/* 10BF84 802A2974 3C0E0002 */ lui $t6, 2
/* 10BF88 802A2978 244C0008 */ addiu $t4, $v0, 8
/* 10BF8C 802A297C ACEC0000 */ sw $t4, ($a3)
/* 10BF90 802A2980 AC4E0004 */ sw $t6, 4($v0)
/* 10BF94 802A2984 AC4D0000 */ sw $t5, ($v0)
/* 10BF98 802A2988 8CE20000 */ lw $v0, ($a3)
/* 10BF9C 802A298C 3C190601 */ lui $t9, %hi(D_06017FA8) # $t9, 0x601
/* 10BFA0 802A2990 27397FA8 */ addiu $t9, %lo(D_06017FA8) # addiu $t9, $t9, 0x7fa8
/* 10BFA4 802A2994 244F0008 */ addiu $t7, $v0, 8
/* 10BFA8 802A2998 ACEF0000 */ sw $t7, ($a3)
/* 10BFAC 802A299C 3C180600 */ lui $t8, 0x600
/* 10BFB0 802A29A0 AC580000 */ sw $t8, ($v0)
/* 10BFB4 802A29A4 AC590004 */ sw $t9, 4($v0)
.L802A29A8:
/* 10BFB8 802A29A8 8FBF0024 */ lw $ra, 0x24($sp)
.L802A29AC:
/* 10BFBC 802A29AC 8FB00020 */ lw $s0, 0x20($sp)
/* 10BFC0 802A29B0 27BD00A0 */ addiu $sp, $sp, 0xa0
/* 10BFC4 802A29B4 03E00008 */ jr $ra
/* 10BFC8 802A29B8 00000000 */ nop
@@ -1,72 +0,0 @@
glabel func_802A29BC
/* 10BFCC 802A29BC 27BDFF80 */ addiu $sp, $sp, -0x80
/* 10BFD0 802A29C0 AFBF001C */ sw $ra, 0x1c($sp)
/* 10BFD4 802A29C4 AFA50084 */ sw $a1, 0x84($sp)
/* 10BFD8 802A29C8 AFA60088 */ sw $a2, 0x88($sp)
/* 10BFDC 802A29CC 84C20002 */ lh $v0, 2($a2)
/* 10BFE0 802A29D0 24C50018 */ addiu $a1, $a2, 0x18
/* 10BFE4 802A29D4 24070000 */ li $a3, 0
/* 10BFE8 802A29D8 304F0800 */ andi $t7, $v0, 0x800
/* 10BFEC 802A29DC 15E00038 */ bnez $t7, .L802A2AC0
/* 10BFF0 802A29E0 3C18800E */ lui $t8, %hi(camera1) # $t8, 0x800e
/* 10BFF4 802A29E4 8F18DB40 */ lw $t8, %lo(camera1)($t8)
/* 10BFF8 802A29E8 240100B8 */ li $at, 184
/* 10BFFC 802A29EC 94860026 */ lhu $a2, 0x26($a0)
/* 10C000 802A29F0 0098C823 */ subu $t9, $a0, $t8
/* 10C004 802A29F4 0321001A */ div $zero, $t9, $at
/* 10C008 802A29F8 00004812 */ mflo $t1
/* 10C00C 802A29FC 00095080 */ sll $t2, $t1, 2
/* 10C010 802A2A00 3C018015 */ lui $at, %hi(D_80150130)
/* 10C014 802A2A04 002A0821 */ addu $at, $at, $t2
/* 10C018 802A2A08 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 10C01C 802A2A0C 3C01802C */ lui $at, %hi(D_802B9A34) # $at, 0x802c
/* 10C020 802A2A10 C4269A34 */ lwc1 $f6, %lo(D_802B9A34)($at)
/* 10C024 802A2A14 AFA50028 */ sw $a1, 0x28($sp)
/* 10C028 802A2A18 E7A40010 */ swc1 $f4, 0x10($sp)
/* 10C02C 802A2A1C 0C0AE034 */ jal func_802B80D0
/* 10C030 802A2A20 E7A60014 */ swc1 $f6, 0x14($sp)
/* 10C034 802A2A24 44804000 */ mtc1 $zero, $f8
/* 10C038 802A2A28 3C088015 */ lui $t0, %hi(gDisplayListHead) # $t0, 0x8015
/* 10C03C 802A2A2C 8FA50028 */ lw $a1, 0x28($sp)
/* 10C040 802A2A30 4608003C */ c.lt.s $f0, $f8
/* 10C044 802A2A34 25080298 */ addiu $t0, %lo(gDisplayListHead) # addiu $t0, $t0, 0x298
/* 10C048 802A2A38 45030022 */ bc1tl .L802A2AC4
/* 10C04C 802A2A3C 8FBF001C */ lw $ra, 0x1c($sp)
/* 10C050 802A2A40 8D020000 */ lw $v0, ($t0)
/* 10C054 802A2A44 3C0CB700 */ lui $t4, 0xb700
/* 10C058 802A2A48 240D0200 */ li $t5, 512
/* 10C05C 802A2A4C 244B0008 */ addiu $t3, $v0, 8
/* 10C060 802A2A50 AD0B0000 */ sw $t3, ($t0)
/* 10C064 802A2A54 AC4D0004 */ sw $t5, 4($v0)
/* 10C068 802A2A58 AC4C0000 */ sw $t4, ($v0)
/* 10C06C 802A2A5C 8D020000 */ lw $v0, ($t0)
/* 10C070 802A2A60 3C0FB600 */ lui $t7, 0xb600
/* 10C074 802A2A64 3C180002 */ lui $t8, 2
/* 10C078 802A2A68 244E0008 */ addiu $t6, $v0, 8
/* 10C07C 802A2A6C AD0E0000 */ sw $t6, ($t0)
/* 10C080 802A2A70 AC580004 */ sw $t8, 4($v0)
/* 10C084 802A2A74 AC4F0000 */ sw $t7, ($v0)
/* 10C088 802A2A78 8FA60088 */ lw $a2, 0x88($sp)
/* 10C08C 802A2A7C 27A40040 */ addiu $a0, $sp, 0x40
/* 10C090 802A2A80 0C0AD7DD */ jal func_802B5F74
/* 10C094 802A2A84 24C60010 */ addiu $a2, $a2, 0x10
/* 10C098 802A2A88 27A40040 */ addiu $a0, $sp, 0x40
/* 10C09C 802A2A8C 0C0AD3FE */ jal func_802B4FF8
/* 10C0A0 802A2A90 00002825 */ move $a1, $zero
/* 10C0A4 802A2A94 3C088015 */ lui $t0, %hi(gDisplayListHead) # $t0, 0x8015
/* 10C0A8 802A2A98 10400009 */ beqz $v0, .L802A2AC0
/* 10C0AC 802A2A9C 25080298 */ addiu $t0, %lo(gDisplayListHead) # addiu $t0, $t0, 0x298
/* 10C0B0 802A2AA0 8D020000 */ lw $v0, ($t0)
/* 10C0B4 802A2AA4 3C0A0601 */ lui $t2, %hi(D_06009330) # $t2, 0x601
/* 10C0B8 802A2AA8 254A9330 */ addiu $t2, %lo(D_06009330) # addiu $t2, $t2, -0x6cd0
/* 10C0BC 802A2AAC 24590008 */ addiu $t9, $v0, 8
/* 10C0C0 802A2AB0 AD190000 */ sw $t9, ($t0)
/* 10C0C4 802A2AB4 3C090600 */ lui $t1, 0x600
/* 10C0C8 802A2AB8 AC490000 */ sw $t1, ($v0)
/* 10C0CC 802A2ABC AC4A0004 */ sw $t2, 4($v0)
.L802A2AC0:
/* 10C0D0 802A2AC0 8FBF001C */ lw $ra, 0x1c($sp)
.L802A2AC4:
/* 10C0D4 802A2AC4 27BD0080 */ addiu $sp, $sp, 0x80
/* 10C0D8 802A2AC8 03E00008 */ jr $ra
/* 10C0DC 802A2ACC 00000000 */ nop
@@ -1,112 +0,0 @@
glabel func_802A2AD0
/* 10C0E0 802A2AD0 27BDFF78 */ addiu $sp, $sp, -0x88
/* 10C0E4 802A2AD4 3C0F802C */ lui $t7, %hi(D_802B8864) # $t7, 0x802c
/* 10C0E8 802A2AD8 AFBF001C */ sw $ra, 0x1c($sp)
/* 10C0EC 802A2ADC AFA5008C */ sw $a1, 0x8c($sp)
/* 10C0F0 802A2AE0 25EF8864 */ addiu $t7, %lo(D_802B8864) # addiu $t7, $t7, -0x779c
/* 10C0F4 802A2AE4 8DE10000 */ lw $at, ($t7)
/* 10C0F8 802A2AE8 27AE0080 */ addiu $t6, $sp, 0x80
/* 10C0FC 802A2AEC 3C09800E */ lui $t1, %hi(camera1) # $t1, 0x800e
/* 10C100 802A2AF0 ADC10000 */ sw $at, ($t6)
/* 10C104 802A2AF4 95E10004 */ lhu $at, 4($t7)
/* 10C108 802A2AF8 24070000 */ li $a3, 0
/* 10C10C 802A2AFC A5C10004 */ sh $at, 4($t6)
/* 10C110 802A2B00 8D29DB40 */ lw $t1, %lo(camera1)($t1)
/* 10C114 802A2B04 240100B8 */ li $at, 184
/* 10C118 802A2B08 8FA5008C */ lw $a1, 0x8c($sp)
/* 10C11C 802A2B0C 00895023 */ subu $t2, $a0, $t1
/* 10C120 802A2B10 0141001A */ div $zero, $t2, $at
/* 10C124 802A2B14 00005812 */ mflo $t3
/* 10C128 802A2B18 000B6080 */ sll $t4, $t3, 2
/* 10C12C 802A2B1C 3C018015 */ lui $at, %hi(D_80150130)
/* 10C130 802A2B20 002C0821 */ addu $at, $at, $t4
/* 10C134 802A2B24 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 10C138 802A2B28 3C01802C */ lui $at, %hi(D_802B9A38) # $at, 0x802c
/* 10C13C 802A2B2C C4269A38 */ lwc1 $f6, %lo(D_802B9A38)($at)
/* 10C140 802A2B30 94860026 */ lhu $a2, 0x26($a0)
/* 10C144 802A2B34 24A50018 */ addiu $a1, $a1, 0x18
/* 10C148 802A2B38 AFA50020 */ sw $a1, 0x20($sp)
/* 10C14C 802A2B3C E7A40010 */ swc1 $f4, 0x10($sp)
/* 10C150 802A2B40 0C0AE034 */ jal func_802B80D0
/* 10C154 802A2B44 E7A60014 */ swc1 $f6, 0x14($sp)
/* 10C158 802A2B48 44804000 */ mtc1 $zero, $f8
/* 10C15C 802A2B4C 8FA6008C */ lw $a2, 0x8c($sp)
/* 10C160 802A2B50 8FA50020 */ lw $a1, 0x20($sp)
/* 10C164 802A2B54 4608003C */ c.lt.s $f0, $f8
/* 10C168 802A2B58 24C60010 */ addiu $a2, $a2, 0x10
/* 10C16C 802A2B5C 45030043 */ bc1tl .L802A2C6C
/* 10C170 802A2B60 8FBF001C */ lw $ra, 0x1c($sp)
/* 10C174 802A2B64 0C0AD7DD */ jal func_802B5F74
/* 10C178 802A2B68 27A40040 */ addiu $a0, $sp, 0x40
/* 10C17C 802A2B6C 27A40040 */ addiu $a0, $sp, 0x40
/* 10C180 802A2B70 0C0AD3FE */ jal func_802B4FF8
/* 10C184 802A2B74 00002825 */ move $a1, $zero
/* 10C188 802A2B78 1040003B */ beqz $v0, .L802A2C68
/* 10C18C 802A2B7C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 10C190 802A2B80 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 10C194 802A2B84 8C620000 */ lw $v0, ($v1)
/* 10C198 802A2B88 3C06B700 */ lui $a2, 0xb700
/* 10C19C 802A2B8C 3C190002 */ lui $t9, 2
/* 10C1A0 802A2B90 244D0008 */ addiu $t5, $v0, 8
/* 10C1A4 802A2B94 AC6D0000 */ sw $t5, ($v1)
/* 10C1A8 802A2B98 AC590004 */ sw $t9, 4($v0)
/* 10C1AC 802A2B9C AC460000 */ sw $a2, ($v0)
/* 10C1B0 802A2BA0 8C620000 */ lw $v0, ($v1)
/* 10C1B4 802A2BA4 24072000 */ li $a3, 8192
/* 10C1B8 802A2BA8 3C0EB600 */ lui $t6, 0xb600
/* 10C1BC 802A2BAC 24580008 */ addiu $t8, $v0, 8
/* 10C1C0 802A2BB0 AC780000 */ sw $t8, ($v1)
/* 10C1C4 802A2BB4 AC470004 */ sw $a3, 4($v0)
/* 10C1C8 802A2BB8 AC4E0000 */ sw $t6, ($v0)
/* 10C1CC 802A2BBC 8FAF008C */ lw $t7, 0x8c($sp)
/* 10C1D0 802A2BC0 3C0A8016 */ lui $t2, %hi(D_801637B8) # 0x8016
/* 10C1D4 802A2BC4 85E80006 */ lh $t0, 6($t7)
/* 10C1D8 802A2BC8 00084840 */ sll $t1, $t0, 1
/* 10C1DC 802A2BCC 01495021 */ addu $t2, $t2, $t1
/* 10C1E0 802A2BD0 954A37B8 */ lhu $t2, %lo(D_801637B8)($t2) # 0x37b8($t2)
/* 10C1E4 802A2BD4 51400018 */ beql $t2, $zero, .L802A2C38
/* 10C1E8 802A2BD8 8C620000 */ lw $v0, ($v1)
/* 10C1EC 802A2BDC 85EB0004 */ lh $t3, 4($t7)
/* 10C1F0 802A2BE0 3C0D0600 */ lui $t5, 0x600
/* 10C1F4 802A2BE4 3C0E0600 */ lui $t6, 0x600
/* 10C1F8 802A2BE8 29610014 */ slti $at, $t3, 0x14
/* 10C1FC 802A2BEC 5020000A */ beql $at, $zero, .L802A2C18
/* 10C200 802A2BF0 8C620000 */ lw $v0, ($v1)
/* 10C204 802A2BF4 8C620000 */ lw $v0, ($v1)
/* 10C208 802A2BF8 3C190601 */ lui $t9, %hi(D_06010AE8) # $t9, 0x601
/* 10C20C 802A2BFC 27390AE8 */ addiu $t9, %lo(D_06010AE8) # addiu $t9, $t9, 0xae8
/* 10C210 802A2C00 244C0008 */ addiu $t4, $v0, 8
/* 10C214 802A2C04 AC6C0000 */ sw $t4, ($v1)
/* 10C218 802A2C08 AC590004 */ sw $t9, 4($v0)
/* 10C21C 802A2C0C 10000011 */ b .L802A2C54
/* 10C220 802A2C10 AC4D0000 */ sw $t5, ($v0)
/* 10C224 802A2C14 8C620000 */ lw $v0, ($v1)
.L802A2C18:
/* 10C228 802A2C18 3C080601 */ lui $t0, %hi(D_06010C10) # $t0, 0x601
/* 10C22C 802A2C1C 25080C10 */ addiu $t0, %lo(D_06010C10) # addiu $t0, $t0, 0xc10
/* 10C230 802A2C20 24580008 */ addiu $t8, $v0, 8
/* 10C234 802A2C24 AC780000 */ sw $t8, ($v1)
/* 10C238 802A2C28 AC480004 */ sw $t0, 4($v0)
/* 10C23C 802A2C2C 10000009 */ b .L802A2C54
/* 10C240 802A2C30 AC4E0000 */ sw $t6, ($v0)
/* 10C244 802A2C34 8C620000 */ lw $v0, ($v1)
.L802A2C38:
/* 10C248 802A2C38 3C0F0601 */ lui $t7, %hi(D_06010D38) # $t7, 0x601
/* 10C24C 802A2C3C 25EF0D38 */ addiu $t7, %lo(D_06010D38) # addiu $t7, $t7, 0xd38
/* 10C250 802A2C40 24490008 */ addiu $t1, $v0, 8
/* 10C254 802A2C44 AC690000 */ sw $t1, ($v1)
/* 10C258 802A2C48 3C0A0600 */ lui $t2, 0x600
/* 10C25C 802A2C4C AC4A0000 */ sw $t2, ($v0)
/* 10C260 802A2C50 AC4F0004 */ sw $t7, 4($v0)
.L802A2C54:
/* 10C264 802A2C54 8C620000 */ lw $v0, ($v1)
/* 10C268 802A2C58 244B0008 */ addiu $t3, $v0, 8
/* 10C26C 802A2C5C AC6B0000 */ sw $t3, ($v1)
/* 10C270 802A2C60 AC470004 */ sw $a3, 4($v0)
/* 10C274 802A2C64 AC460000 */ sw $a2, ($v0)
.L802A2C68:
/* 10C278 802A2C68 8FBF001C */ lw $ra, 0x1c($sp)
.L802A2C6C:
/* 10C27C 802A2C6C 27BD0088 */ addiu $sp, $sp, 0x88
/* 10C280 802A2C70 03E00008 */ jr $ra
/* 10C284 802A2C74 00000000 */ nop
@@ -1,183 +0,0 @@
glabel func_802A2C78
/* 10C288 802A2C78 27BDFF50 */ addiu $sp, $sp, -0xb0
/* 10C28C 802A2C7C 3C0F802C */ lui $t7, %hi(D_802B886C) # $t7, 0x802c
/* 10C290 802A2C80 AFBF001C */ sw $ra, 0x1c($sp)
/* 10C294 802A2C84 AFA500B4 */ sw $a1, 0xb4($sp)
/* 10C298 802A2C88 AFA600B8 */ sw $a2, 0xb8($sp)
/* 10C29C 802A2C8C 25EF886C */ addiu $t7, %lo(D_802B886C) # addiu $t7, $t7, -0x7794
/* 10C2A0 802A2C90 8DE10000 */ lw $at, ($t7)
/* 10C2A4 802A2C94 27AE00A8 */ addiu $t6, $sp, 0xa8
/* 10C2A8 802A2C98 24070000 */ li $a3, 0
/* 10C2AC 802A2C9C ADC10000 */ sw $at, ($t6)
/* 10C2B0 802A2CA0 95E10004 */ lhu $at, 4($t7)
/* 10C2B4 802A2CA4 3C19800E */ lui $t9, %hi(camera1) # $t9, 0x800e
/* 10C2B8 802A2CA8 A5C10004 */ sh $at, 4($t6)
/* 10C2BC 802A2CAC 8FAC00B8 */ lw $t4, 0xb8($sp)
/* 10C2C0 802A2CB0 8FA500B8 */ lw $a1, 0xb8($sp)
/* 10C2C4 802A2CB4 240100B8 */ li $at, 184
/* 10C2C8 802A2CB8 85820002 */ lh $v0, 2($t4)
/* 10C2CC 802A2CBC 24A50018 */ addiu $a1, $a1, 0x18
/* 10C2D0 802A2CC0 304D0800 */ andi $t5, $v0, 0x800
/* 10C2D4 802A2CC4 55A00098 */ bnel $t5, $zero, .L802A2F28
/* 10C2D8 802A2CC8 8FBF001C */ lw $ra, 0x1c($sp)
/* 10C2DC 802A2CCC 8F39DB40 */ lw $t9, %lo(camera1)($t9)
/* 10C2E0 802A2CD0 94860026 */ lhu $a2, 0x26($a0)
/* 10C2E4 802A2CD4 AFA50020 */ sw $a1, 0x20($sp)
/* 10C2E8 802A2CD8 0099C023 */ subu $t8, $a0, $t9
/* 10C2EC 802A2CDC 0301001A */ div $zero, $t8, $at
/* 10C2F0 802A2CE0 00007012 */ mflo $t6
/* 10C2F4 802A2CE4 000E7880 */ sll $t7, $t6, 2
/* 10C2F8 802A2CE8 3C018015 */ lui $at, %hi(D_80150130)
/* 10C2FC 802A2CEC 002F0821 */ addu $at, $at, $t7
/* 10C300 802A2CF0 C4240130 */ lwc1 $f4, %lo(D_80150130)($at)
/* 10C304 802A2CF4 3C01802C */ lui $at, %hi(D_802B9A3C) # $at, 0x802c
/* 10C308 802A2CF8 C4269A3C */ lwc1 $f6, %lo(D_802B9A3C)($at)
/* 10C30C 802A2CFC A7A20062 */ sh $v0, 0x62($sp)
/* 10C310 802A2D00 E7A40010 */ swc1 $f4, 0x10($sp)
/* 10C314 802A2D04 0C0AE034 */ jal func_802B80D0
/* 10C318 802A2D08 E7A60014 */ swc1 $f6, 0x14($sp)
/* 10C31C 802A2D0C 44804000 */ mtc1 $zero, $f8
/* 10C320 802A2D10 87A20062 */ lh $v0, 0x62($sp)
/* 10C324 802A2D14 4608003C */ c.lt.s $f0, $f8
/* 10C328 802A2D18 304B0400 */ andi $t3, $v0, 0x400
/* 10C32C 802A2D1C 45030082 */ bc1tl .L802A2F28
/* 10C330 802A2D20 8FBF001C */ lw $ra, 0x1c($sp)
/* 10C334 802A2D24 1560000A */ bnez $t3, .L802A2D50
/* 10C338 802A2D28 3C01802C */ lui $at, %hi(D_802B9A40) # $at, 0x802c
/* 10C33C 802A2D2C C42A9A40 */ lwc1 $f10, %lo(D_802B9A40)($at)
/* 10C340 802A2D30 8FA500B8 */ lw $a1, 0xb8($sp)
/* 10C344 802A2D34 8FA40020 */ lw $a0, 0x20($sp)
/* 10C348 802A2D38 460A003C */ c.lt.s $f0, $f10
/* 10C34C 802A2D3C 24A50010 */ addiu $a1, $a1, 0x10
/* 10C350 802A2D40 45020004 */ bc1fl .L802A2D54
/* 10C354 802A2D44 27A40068 */ addiu $a0, $sp, 0x68
/* 10C358 802A2D48 0C0A5E53 */ jal func_8029794C
/* 10C35C 802A2D4C 3C064000 */ lui $a2, 0x4000
.L802A2D50:
/* 10C360 802A2D50 27A40068 */ addiu $a0, $sp, 0x68
.L802A2D54:
/* 10C364 802A2D54 8FA50020 */ lw $a1, 0x20($sp)
/* 10C368 802A2D58 0C0AD7DD */ jal func_802B5F74
/* 10C36C 802A2D5C 27A600A8 */ addiu $a2, $sp, 0xa8
/* 10C370 802A2D60 27A40068 */ addiu $a0, $sp, 0x68
/* 10C374 802A2D64 0C0AD3FE */ jal func_802B4FF8
/* 10C378 802A2D68 00002825 */ move $a1, $zero
/* 10C37C 802A2D6C 1040006D */ beqz $v0, .L802A2F24
/* 10C380 802A2D70 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 10C384 802A2D74 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 10C388 802A2D78 8C620000 */ lw $v0, ($v1)
/* 10C38C 802A2D7C 3C0DBA00 */ lui $t5, (0xBA000E02 >> 16) # lui $t5, 0xba00
/* 10C390 802A2D80 35AD0E02 */ ori $t5, (0xBA000E02 & 0xFFFF) # ori $t5, $t5, 0xe02
/* 10C394 802A2D84 244C0008 */ addiu $t4, $v0, 8
/* 10C398 802A2D88 AC6C0000 */ sw $t4, ($v1)
/* 10C39C 802A2D8C AC400004 */ sw $zero, 4($v0)
/* 10C3A0 802A2D90 AC4D0000 */ sw $t5, ($v0)
/* 10C3A4 802A2D94 8C620000 */ lw $v0, ($v1)
/* 10C3A8 802A2D98 3C0AB700 */ lui $t2, 0xb700
/* 10C3AC 802A2D9C 3C180002 */ lui $t8, 2
/* 10C3B0 802A2DA0 24590008 */ addiu $t9, $v0, 8
/* 10C3B4 802A2DA4 AC790000 */ sw $t9, ($v1)
/* 10C3B8 802A2DA8 AC580004 */ sw $t8, 4($v0)
/* 10C3BC 802A2DAC AC4A0000 */ sw $t2, ($v0)
/* 10C3C0 802A2DB0 8FAE00B8 */ lw $t6, 0xb8($sp)
/* 10C3C4 802A2DB4 3C080600 */ lui $t0, 0x600
/* 10C3C8 802A2DB8 24010001 */ li $at, 1
/* 10C3CC 802A2DBC 85C60004 */ lh $a2, 4($t6)
/* 10C3D0 802A2DC0 50C00009 */ beql $a2, $zero, .L802A2DE8
/* 10C3D4 802A2DC4 8C620000 */ lw $v0, ($v1)
/* 10C3D8 802A2DC8 10C10021 */ beq $a2, $at, .L802A2E50
/* 10C3DC 802A2DCC 3C080600 */ lui $t0, 0x600
/* 10C3E0 802A2DD0 24010002 */ li $at, 2
/* 10C3E4 802A2DD4 10C10039 */ beq $a2, $at, .L802A2EBC
/* 10C3E8 802A2DD8 3C080600 */ lui $t0, 0x600
/* 10C3EC 802A2DDC 10000052 */ b .L802A2F28
/* 10C3F0 802A2DE0 8FBF001C */ lw $ra, 0x1c($sp)
/* 10C3F4 802A2DE4 8C620000 */ lw $v0, ($v1)
.L802A2DE8:
/* 10C3F8 802A2DE8 3C0B0602 */ lui $t3, %hi(D_060186B8) # $t3, 0x602
/* 10C3FC 802A2DEC 256B86B8 */ addiu $t3, %lo(D_060186B8) # addiu $t3, $t3, -0x7948
/* 10C400 802A2DF0 244F0008 */ addiu $t7, $v0, 8
/* 10C404 802A2DF4 AC6F0000 */ sw $t7, ($v1)
/* 10C408 802A2DF8 AC4B0004 */ sw $t3, 4($v0)
/* 10C40C 802A2DFC AC480000 */ sw $t0, ($v0)
/* 10C410 802A2E00 8C620000 */ lw $v0, ($v1)
/* 10C414 802A2E04 24092000 */ li $t1, 8192
/* 10C418 802A2E08 3C0DB600 */ lui $t5, 0xb600
/* 10C41C 802A2E0C 244C0008 */ addiu $t4, $v0, 8
/* 10C420 802A2E10 AC6C0000 */ sw $t4, ($v1)
/* 10C424 802A2E14 AC490004 */ sw $t1, 4($v0)
/* 10C428 802A2E18 AC4D0000 */ sw $t5, ($v0)
/* 10C42C 802A2E1C 8C620000 */ lw $v0, ($v1)
/* 10C430 802A2E20 3C180602 */ lui $t8, %hi(D_060185F8) # $t8, 0x602
/* 10C434 802A2E24 271885F8 */ addiu $t8, %lo(D_060185F8) # addiu $t8, $t8, -0x7a08
/* 10C438 802A2E28 24590008 */ addiu $t9, $v0, 8
/* 10C43C 802A2E2C AC790000 */ sw $t9, ($v1)
/* 10C440 802A2E30 AC580004 */ sw $t8, 4($v0)
/* 10C444 802A2E34 AC480000 */ sw $t0, ($v0)
/* 10C448 802A2E38 8C620000 */ lw $v0, ($v1)
/* 10C44C 802A2E3C 244E0008 */ addiu $t6, $v0, 8
/* 10C450 802A2E40 AC6E0000 */ sw $t6, ($v1)
/* 10C454 802A2E44 AC490004 */ sw $t1, 4($v0)
/* 10C458 802A2E48 10000036 */ b .L802A2F24
/* 10C45C 802A2E4C AC4A0000 */ sw $t2, ($v0)
.L802A2E50:
/* 10C460 802A2E50 8C620000 */ lw $v0, ($v1)
/* 10C464 802A2E54 3C0B0602 */ lui $t3, %hi(D_06018A08) # $t3, 0x602
/* 10C468 802A2E58 256B8A08 */ addiu $t3, %lo(D_06018A08) # addiu $t3, $t3, -0x75f8
/* 10C46C 802A2E5C 244F0008 */ addiu $t7, $v0, 8
/* 10C470 802A2E60 AC6F0000 */ sw $t7, ($v1)
/* 10C474 802A2E64 AC4B0004 */ sw $t3, 4($v0)
/* 10C478 802A2E68 AC480000 */ sw $t0, ($v0)
/* 10C47C 802A2E6C 8C620000 */ lw $v0, ($v1)
/* 10C480 802A2E70 24092000 */ li $t1, 8192
/* 10C484 802A2E74 3C0DB600 */ lui $t5, 0xb600
/* 10C488 802A2E78 244C0008 */ addiu $t4, $v0, 8
/* 10C48C 802A2E7C AC6C0000 */ sw $t4, ($v1)
/* 10C490 802A2E80 AC490004 */ sw $t1, 4($v0)
/* 10C494 802A2E84 AC4D0000 */ sw $t5, ($v0)
/* 10C498 802A2E88 8C620000 */ lw $v0, ($v1)
/* 10C49C 802A2E8C 3C180602 */ lui $t8, %hi(D_06018948) # $t8, 0x602
/* 10C4A0 802A2E90 27188948 */ addiu $t8, %lo(D_06018948) # addiu $t8, $t8, -0x76b8
/* 10C4A4 802A2E94 24590008 */ addiu $t9, $v0, 8
/* 10C4A8 802A2E98 AC790000 */ sw $t9, ($v1)
/* 10C4AC 802A2E9C AC580004 */ sw $t8, 4($v0)
/* 10C4B0 802A2EA0 AC480000 */ sw $t0, ($v0)
/* 10C4B4 802A2EA4 8C620000 */ lw $v0, ($v1)
/* 10C4B8 802A2EA8 244E0008 */ addiu $t6, $v0, 8
/* 10C4BC 802A2EAC AC6E0000 */ sw $t6, ($v1)
/* 10C4C0 802A2EB0 AC490004 */ sw $t1, 4($v0)
/* 10C4C4 802A2EB4 1000001B */ b .L802A2F24
/* 10C4C8 802A2EB8 AC4A0000 */ sw $t2, ($v0)
.L802A2EBC:
/* 10C4CC 802A2EBC 8C620000 */ lw $v0, ($v1)
/* 10C4D0 802A2EC0 3C0B0602 */ lui $t3, %hi(D_06018D58) # $t3, 0x602
/* 10C4D4 802A2EC4 256B8D58 */ addiu $t3, %lo(D_06018D58) # addiu $t3, $t3, -0x72a8
/* 10C4D8 802A2EC8 244F0008 */ addiu $t7, $v0, 8
/* 10C4DC 802A2ECC AC6F0000 */ sw $t7, ($v1)
/* 10C4E0 802A2ED0 AC4B0004 */ sw $t3, 4($v0)
/* 10C4E4 802A2ED4 AC480000 */ sw $t0, ($v0)
/* 10C4E8 802A2ED8 8C620000 */ lw $v0, ($v1)
/* 10C4EC 802A2EDC 24092000 */ li $t1, 8192
/* 10C4F0 802A2EE0 3C0DB600 */ lui $t5, 0xb600
/* 10C4F4 802A2EE4 244C0008 */ addiu $t4, $v0, 8
/* 10C4F8 802A2EE8 AC6C0000 */ sw $t4, ($v1)
/* 10C4FC 802A2EEC AC490004 */ sw $t1, 4($v0)
/* 10C500 802A2EF0 AC4D0000 */ sw $t5, ($v0)
/* 10C504 802A2EF4 8C620000 */ lw $v0, ($v1)
/* 10C508 802A2EF8 3C180602 */ lui $t8, %hi(D_06018C98) # $t8, 0x602
/* 10C50C 802A2EFC 27188C98 */ addiu $t8, %lo(D_06018C98) # addiu $t8, $t8, -0x7368
/* 10C510 802A2F00 24590008 */ addiu $t9, $v0, 8
/* 10C514 802A2F04 AC790000 */ sw $t9, ($v1)
/* 10C518 802A2F08 AC580004 */ sw $t8, 4($v0)
/* 10C51C 802A2F0C AC480000 */ sw $t0, ($v0)
/* 10C520 802A2F10 8C620000 */ lw $v0, ($v1)
/* 10C524 802A2F14 244E0008 */ addiu $t6, $v0, 8
/* 10C528 802A2F18 AC6E0000 */ sw $t6, ($v1)
/* 10C52C 802A2F1C AC490004 */ sw $t1, 4($v0)
/* 10C530 802A2F20 AC4A0000 */ sw $t2, ($v0)
.L802A2F24:
/* 10C534 802A2F24 8FBF001C */ lw $ra, 0x1c($sp)
.L802A2F28:
/* 10C538 802A2F28 27BD00B0 */ addiu $sp, $sp, 0xb0
/* 10C53C 802A2F2C 03E00008 */ jr $ra
/* 10C540 802A2F30 00000000 */ nop
@@ -1,59 +0,0 @@
glabel func_802A2F34
/* 10C544 802A2F34 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 10C548 802A2F38 AFB2001C */ sw $s2, 0x1c($sp)
/* 10C54C 802A2F3C AFB00014 */ sw $s0, 0x14($sp)
/* 10C550 802A2F40 AFBF002C */ sw $ra, 0x2c($sp)
/* 10C554 802A2F44 AFB50028 */ sw $s5, 0x28($sp)
/* 10C558 802A2F48 AFB40024 */ sw $s4, 0x24($sp)
/* 10C55C 802A2F4C AFB30020 */ sw $s3, 0x20($sp)
/* 10C560 802A2F50 AFB10018 */ sw $s1, 0x18($sp)
/* 10C564 802A2F54 8C910004 */ lw $s1, 4($a0)
/* 10C568 802A2F58 3C018016 */ lui $at, %hi(D_8015F8DC) # $at, 0x8016
/* 10C56C 802A2F5C 3C108016 */ lui $s0, %hi(D_8015F9B8) # $s0, 0x8016
/* 10C570 802A2F60 3C128016 */ lui $s2, %hi(D_80162578) # $s2, 0x8016
/* 10C574 802A2F64 AC20F8DC */ sw $zero, %lo(D_8015F8DC)($at)
/* 10C578 802A2F68 26522578 */ addiu $s2, %lo(D_80162578) # addiu $s2, $s2, 0x2578
/* 10C57C 802A2F6C 2610F9B8 */ addiu $s0, %lo(D_8015F9B8) # addiu $s0, $s0, -0x648
/* 10C580 802A2F70 2413000C */ li $s3, 12
/* 10C584 802A2F74 2414000D */ li $s4, 13
/* 10C588 802A2F78 2415002B */ li $s5, 43
/* 10C58C 802A2F7C 860E0002 */ lh $t6, 2($s0)
.L802A2F80:
/* 10C590 802A2F80 51C00016 */ beql $t6, $zero, .L802A2FDC
/* 10C594 802A2F84 26100070 */ addiu $s0, $s0, 0x70
/* 10C598 802A2F88 86020000 */ lh $v0, ($s0)
/* 10C59C 802A2F8C 02202025 */ move $a0, $s1
/* 10C5A0 802A2F90 1053000B */ beq $v0, $s3, .L802A2FC0
/* 10C5A4 802A2F94 00000000 */ nop
/* 10C5A8 802A2F98 10540005 */ beq $v0, $s4, .L802A2FB0
/* 10C5AC 802A2F9C 02202025 */ move $a0, $s1
/* 10C5B0 802A2FA0 1055000B */ beq $v0, $s5, .L802A2FD0
/* 10C5B4 802A2FA4 02202025 */ move $a0, $s1
/* 10C5B8 802A2FA8 1000000C */ b .L802A2FDC
/* 10C5BC 802A2FAC 26100070 */ addiu $s0, $s0, 0x70
.L802A2FB0:
/* 10C5C0 802A2FB0 0C0A85C7 */ jal func_802A171C
/* 10C5C4 802A2FB4 02002825 */ move $a1, $s0
/* 10C5C8 802A2FB8 10000008 */ b .L802A2FDC
/* 10C5CC 802A2FBC 26100070 */ addiu $s0, $s0, 0x70
.L802A2FC0:
/* 10C5D0 802A2FC0 0C0A87A8 */ jal func_802A1EA0
/* 10C5D4 802A2FC4 02002825 */ move $a1, $s0
/* 10C5D8 802A2FC8 10000004 */ b .L802A2FDC
/* 10C5DC 802A2FCC 26100070 */ addiu $s0, $s0, 0x70
.L802A2FD0:
/* 10C5E0 802A2FD0 0C0A87A8 */ jal func_802A1EA0
/* 10C5E4 802A2FD4 02002825 */ move $a1, $s0
/* 10C5E8 802A2FD8 26100070 */ addiu $s0, $s0, 0x70
.L802A2FDC:
/* 10C5EC 802A2FDC 5612FFE8 */ bnel $s0, $s2, .L802A2F80
/* 10C5F0 802A2FE0 860E0002 */ lh $t6, 2($s0)
/* 10C5F4 802A2FE4 8FBF002C */ lw $ra, 0x2c($sp)
/* 10C5F8 802A2FE8 8FB00014 */ lw $s0, 0x14($sp)
/* 10C5FC 802A2FEC 8FB10018 */ lw $s1, 0x18($sp)
/* 10C600 802A2FF0 8FB2001C */ lw $s2, 0x1c($sp)
/* 10C604 802A2FF4 8FB30020 */ lw $s3, 0x20($sp)
/* 10C608 802A2FF8 8FB40024 */ lw $s4, 0x24($sp)
/* 10C60C 802A2FFC 8FB50028 */ lw $s5, 0x28($sp)
/* 10C610 802A3000 03E00008 */ jr $ra
/* 10C614 802A3004 27BD0030 */ addiu $sp, $sp, 0x30
@@ -1,377 +0,0 @@
glabel func_802A3008
/* 10C618 802A3008 27BDFF68 */ addiu $sp, $sp, -0x98
/* 10C61C 802A300C AFBF0024 */ sw $ra, 0x24($sp)
/* 10C620 802A3010 AFB20020 */ sw $s2, 0x20($sp)
/* 10C624 802A3014 AFB1001C */ sw $s1, 0x1c($sp)
/* 10C628 802A3018 AFB00018 */ sw $s0, 0x18($sp)
/* 10C62C 802A301C 848E0038 */ lh $t6, 0x38($a0)
/* 10C630 802A3020 8C910004 */ lw $s1, 4($a0)
/* 10C634 802A3024 3C18802C */ lui $t8, %hi(D_802B8874) # $t8, 0x802c
/* 10C638 802A3028 27188874 */ addiu $t8, %lo(D_802B8874) # addiu $t8, $t8, -0x778c
/* 10C63C 802A302C A7AE0092 */ sh $t6, 0x92($sp)
/* 10C640 802A3030 8F010000 */ lw $at, ($t8)
/* 10C644 802A3034 27AF004C */ addiu $t7, $sp, 0x4c
/* 10C648 802A3038 8F0A0004 */ lw $t2, 4($t8)
/* 10C64C 802A303C ADE10000 */ sw $at, ($t7)
/* 10C650 802A3040 8F010008 */ lw $at, 8($t8)
/* 10C654 802A3044 ADEA0004 */ sw $t2, 4($t7)
/* 10C658 802A3048 ADE10008 */ sw $at, 8($t7)
/* 10C65C 802A304C 86240026 */ lh $a0, 0x26($s1)
/* 10C660 802A3050 24018000 */ li $at, -32768
/* 10C664 802A3054 00812021 */ addu $a0, $a0, $at
/* 10C668 802A3058 308BFFFF */ andi $t3, $a0, 0xffff
/* 10C66C 802A305C 0C0AE006 */ jal sins
/* 10C670 802A3060 01602025 */ move $a0, $t3
/* 10C674 802A3064 86240026 */ lh $a0, 0x26($s1)
/* 10C678 802A3068 24018000 */ li $at, -32768
/* 10C67C 802A306C E7A00048 */ swc1 $f0, 0x48($sp)
/* 10C680 802A3070 00812021 */ addu $a0, $a0, $at
/* 10C684 802A3074 308CFFFF */ andi $t4, $a0, 0xffff
/* 10C688 802A3078 0C0AE00E */ jal coss
/* 10C68C 802A307C 01802025 */ move $a0, $t4
/* 10C690 802A3080 3C128015 */ lui $s2, %hi(D_801502C0) # $s2, 0x8015
/* 10C694 802A3084 265202C0 */ addiu $s2, %lo(D_801502C0) # addiu $s2, $s2, 0x2c0
/* 10C698 802A3088 44801000 */ mtc1 $zero, $f2
/* 10C69C 802A308C 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015
/* 10C6A0 802A3090 C7AC0048 */ lwc1 $f12, 0x48($sp)
/* 10C6A4 802A3094 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298
/* 10C6A8 802A3098 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 10C6AC 802A309C 44817000 */ mtc1 $at, $f14
/* 10C6B0 802A30A0 8C620000 */ lw $v0, ($v1)
/* 10C6B4 802A30A4 46006107 */ neg.s $f4, $f12
/* 10C6B8 802A30A8 E6400000 */ swc1 $f0, ($s2)
/* 10C6BC 802A30AC 244D0008 */ addiu $t5, $v0, 8
/* 10C6C0 802A30B0 E6440008 */ swc1 $f4, 8($s2)
/* 10C6C4 802A30B4 E6400028 */ swc1 $f0, 0x28($s2)
/* 10C6C8 802A30B8 AC6D0000 */ sw $t5, ($v1)
/* 10C6CC 802A30BC E6420010 */ swc1 $f2, 0x10($s2)
/* 10C6D0 802A30C0 E6420004 */ swc1 $f2, 4($s2)
/* 10C6D4 802A30C4 E6420024 */ swc1 $f2, 0x24($s2)
/* 10C6D8 802A30C8 E6420018 */ swc1 $f2, 0x18($s2)
/* 10C6DC 802A30CC E642000C */ swc1 $f2, 0xc($s2)
/* 10C6E0 802A30D0 E642001C */ swc1 $f2, 0x1c($s2)
/* 10C6E4 802A30D4 E642002C */ swc1 $f2, 0x2c($s2)
/* 10C6E8 802A30D8 E64C0020 */ swc1 $f12, 0x20($s2)
/* 10C6EC 802A30DC E64E0014 */ swc1 $f14, 0x14($s2)
/* 10C6F0 802A30E0 E64E003C */ swc1 $f14, 0x3c($s2)
/* 10C6F4 802A30E4 3C0EB600 */ lui $t6, 0xb600
/* 10C6F8 802A30E8 3C090002 */ lui $t1, 2
/* 10C6FC 802A30EC AC490004 */ sw $t1, 4($v0)
/* 10C700 802A30F0 AC4E0000 */ sw $t6, ($v0)
/* 10C704 802A30F4 8C620000 */ lw $v0, ($v1)
/* 10C708 802A30F8 3C0FBC00 */ lui $t7, (0xBC000002 >> 16) # lui $t7, 0xbc00
/* 10C70C 802A30FC 3C188000 */ lui $t8, (0x80000040 >> 16) # lui $t8, 0x8000
/* 10C710 802A3100 24590008 */ addiu $t9, $v0, 8
/* 10C714 802A3104 AC790000 */ sw $t9, ($v1)
/* 10C718 802A3108 37180040 */ ori $t8, (0x80000040 & 0xFFFF) # ori $t8, $t8, 0x40
/* 10C71C 802A310C 35EF0002 */ ori $t7, (0xBC000002 & 0xFFFF) # ori $t7, $t7, 2
/* 10C720 802A3110 AC4F0000 */ sw $t7, ($v0)
/* 10C724 802A3114 AC580004 */ sw $t8, 4($v0)
/* 10C728 802A3118 8C620000 */ lw $v0, ($v1)
/* 10C72C 802A311C 3C0B0386 */ lui $t3, (0x03860010 >> 16) # lui $t3, 0x386
/* 10C730 802A3120 3C0C800E */ lui $t4, %hi(D_800DC610+0x20) # $t4, 0x800e
/* 10C734 802A3124 244A0008 */ addiu $t2, $v0, 8
/* 10C738 802A3128 AC6A0000 */ sw $t2, ($v1)
/* 10C73C 802A312C 258CC630 */ addiu $t4, %lo(D_800DC610+0x20) # addiu $t4, $t4, -0x39d0
/* 10C740 802A3130 356B0010 */ ori $t3, (0x03860010 & 0xFFFF) # ori $t3, $t3, 0x10
/* 10C744 802A3134 AC4B0000 */ sw $t3, ($v0)
/* 10C748 802A3138 AC4C0004 */ sw $t4, 4($v0)
/* 10C74C 802A313C 8C620000 */ lw $v0, ($v1)
/* 10C750 802A3140 3C0E0388 */ lui $t6, (0x03880010 >> 16) # lui $t6, 0x388
/* 10C754 802A3144 3C09800E */ lui $t1, %hi(D_800DC610+0x18) # $t1, 0x800e
/* 10C758 802A3148 244D0008 */ addiu $t5, $v0, 8
/* 10C75C 802A314C AC6D0000 */ sw $t5, ($v1)
/* 10C760 802A3150 2529C628 */ addiu $t1, %lo(D_800DC610+0x18) # addiu $t1, $t1, -0x39d8
/* 10C764 802A3154 35CE0010 */ ori $t6, (0x03880010 & 0xFFFF) # ori $t6, $t6, 0x10
/* 10C768 802A3158 AC4E0000 */ sw $t6, ($v0)
/* 10C76C 802A315C AC490004 */ sw $t1, 4($v0)
/* 10C770 802A3160 8C620000 */ lw $v0, ($v1)
/* 10C774 802A3164 3C0FBB00 */ lui $t7, (0xBB000001 >> 16) # lui $t7, 0xbb00
/* 10C778 802A3168 35EF0001 */ ori $t7, (0xBB000001 & 0xFFFF) # ori $t7, $t7, 1
/* 10C77C 802A316C 24590008 */ addiu $t9, $v0, 8
/* 10C780 802A3170 AC790000 */ sw $t9, ($v1)
/* 10C784 802A3174 2418FFFF */ li $t8, -1
/* 10C788 802A3178 3C0A800E */ lui $t2, %hi(gModeSelection) # $t2, 0x800e
/* 10C78C 802A317C AC580004 */ sw $t8, 4($v0)
/* 10C790 802A3180 AC4F0000 */ sw $t7, ($v0)
/* 10C794 802A3184 8D4AC53C */ lw $t2, %lo(gModeSelection)($t2)
/* 10C798 802A3188 24010003 */ li $at, 3
/* 10C79C 802A318C 11410003 */ beq $t2, $at, .L802A319C
/* 10C7A0 802A3190 00000000 */ nop
/* 10C7A4 802A3194 0C0A5CD0 */ jal func_80297340
/* 10C7A8 802A3198 02202025 */ move $a0, $s1
.L802A319C:
/* 10C7AC 802A319C 3C018016 */ lui $at, %hi(D_8015F8E0) # $at, 0x8016
/* 10C7B0 802A31A0 3C108016 */ lui $s0, %hi(D_8015F9B8) # $s0, 0x8016
/* 10C7B4 802A31A4 AC20F8E0 */ sw $zero, %lo(D_8015F8E0)($at)
/* 10C7B8 802A31A8 2610F9B8 */ addiu $s0, %lo(D_8015F9B8) # addiu $s0, $s0, -0x648
/* 10C7BC 802A31AC 860B0002 */ lh $t3, 2($s0)
.L802A31B0:
/* 10C7C0 802A31B0 AFB00058 */ sw $s0, 0x58($sp)
/* 10C7C4 802A31B4 116000C7 */ beqz $t3, .L802A34D4
/* 10C7C8 802A31B8 00000000 */ nop
/* 10C7CC 802A31BC 860C0000 */ lh $t4, ($s0)
/* 10C7D0 802A31C0 258DFFFE */ addiu $t5, $t4, -2
/* 10C7D4 802A31C4 2DA1002C */ sltiu $at, $t5, 0x2c
/* 10C7D8 802A31C8 102000C2 */ beqz $at, .L802A34D4
/* 10C7DC 802A31CC 000D6880 */ sll $t5, $t5, 2
/* 10C7E0 802A31D0 3C01802C */ lui $at, %hi(jpt_802B9A44)
/* 10C7E4 802A31D4 002D0821 */ addu $at, $at, $t5
/* 10C7E8 802A31D8 8C2D9A44 */ lw $t5, %lo(jpt_802B9A44)($at)
/* 10C7EC 802A31DC 01A00008 */ jr $t5
/* 10C7F0 802A31E0 00000000 */ nop
glabel L802A31E4
/* 10C7F4 802A31E4 02202025 */ move $a0, $s1
/* 10C7F8 802A31E8 02402825 */ move $a1, $s2
/* 10C7FC 802A31EC 0C0A6451 */ jal func_80299144
/* 10C800 802A31F0 02003025 */ move $a2, $s0
/* 10C804 802A31F4 100000B7 */ b .L802A34D4
/* 10C808 802A31F8 00000000 */ nop
glabel L802A31FC
/* 10C80C 802A31FC 02202025 */ move $a0, $s1
/* 10C810 802A3200 02402825 */ move $a1, $s2
/* 10C814 802A3204 0C0A64C3 */ jal func_8029930C
/* 10C818 802A3208 02003025 */ move $a2, $s0
/* 10C81C 802A320C 100000B1 */ b .L802A34D4
/* 10C820 802A3210 00000000 */ nop
glabel L802A3214
/* 10C824 802A3214 02202025 */ move $a0, $s1
/* 10C828 802A3218 02402825 */ move $a1, $s2
/* 10C82C 802A321C 0C0A6535 */ jal func_802994D4
/* 10C830 802A3220 02003025 */ move $a2, $s0
/* 10C834 802A3224 100000AB */ b .L802A34D4
/* 10C838 802A3228 00000000 */ nop
glabel L802A322C
/* 10C83C 802A322C 02202025 */ move $a0, $s1
/* 10C840 802A3230 02402825 */ move $a1, $s2
/* 10C844 802A3234 0C0A65A7 */ jal func_8029969C
/* 10C848 802A3238 02003025 */ move $a2, $s0
/* 10C84C 802A323C 100000A5 */ b .L802A34D4
/* 10C850 802A3240 00000000 */ nop
glabel L802A3244
/* 10C854 802A3244 02202025 */ move $a0, $s1
/* 10C858 802A3248 02402825 */ move $a1, $s2
/* 10C85C 802A324C 0C0A6619 */ jal func_80299864
/* 10C860 802A3250 02003025 */ move $a2, $s0
/* 10C864 802A3254 1000009F */ b .L802A34D4
/* 10C868 802A3258 00000000 */ nop
glabel L802A325C
/* 10C86C 802A325C 02202025 */ move $a0, $s1
/* 10C870 802A3260 02402825 */ move $a1, $s2
/* 10C874 802A3264 0C0A668B */ jal func_80299A2C
/* 10C878 802A3268 02003025 */ move $a2, $s0
/* 10C87C 802A326C 10000099 */ b .L802A34D4
/* 10C880 802A3270 00000000 */ nop
glabel L802A3274
/* 10C884 802A3274 02202025 */ move $a0, $s1
/* 10C888 802A3278 02402825 */ move $a1, $s2
/* 10C88C 802A327C 0C0A66FD */ jal func_80299BF4
/* 10C890 802A3280 02003025 */ move $a2, $s0
/* 10C894 802A3284 10000093 */ b .L802A34D4
/* 10C898 802A3288 00000000 */ nop
glabel L802A328C
/* 10C89C 802A328C 02202025 */ move $a0, $s1
/* 10C8A0 802A3290 02402825 */ move $a1, $s2
/* 10C8A4 802A3294 0C0A676F */ jal func_80299DBC
/* 10C8A8 802A3298 02003025 */ move $a2, $s0
/* 10C8AC 802A329C 1000008D */ b .L802A34D4
/* 10C8B0 802A32A0 00000000 */ nop
glabel L802A32A4
/* 10C8B4 802A32A4 02202025 */ move $a0, $s1
/* 10C8B8 802A32A8 02402825 */ move $a1, $s2
/* 10C8BC 802A32AC 0C0A67B7 */ jal func_80299EDC
/* 10C8C0 802A32B0 02003025 */ move $a2, $s0
/* 10C8C4 802A32B4 10000087 */ b .L802A34D4
/* 10C8C8 802A32B8 00000000 */ nop
glabel L802A32BC
/* 10C8CC 802A32BC 02202025 */ move $a0, $s1
/* 10C8D0 802A32C0 02402825 */ move $a1, $s2
/* 10C8D4 802A32C4 0C0A67FF */ jal func_80299FFC
/* 10C8D8 802A32C8 02003025 */ move $a2, $s0
/* 10C8DC 802A32CC 10000081 */ b .L802A34D4
/* 10C8E0 802A32D0 00000000 */ nop
glabel L802A32D4
/* 10C8E4 802A32D4 02202025 */ move $a0, $s1
/* 10C8E8 802A32D8 02402825 */ move $a1, $s2
/* 10C8EC 802A32DC 0C0A6847 */ jal func_8029A11C
/* 10C8F0 802A32E0 02003025 */ move $a2, $s0
/* 10C8F4 802A32E4 1000007B */ b .L802A34D4
/* 10C8F8 802A32E8 00000000 */ nop
glabel L802A32EC
/* 10C8FC 802A32EC 02202025 */ move $a0, $s1
/* 10C900 802A32F0 0C0A72A4 */ jal func_8029CA90
/* 10C904 802A32F4 02002825 */ move $a1, $s0
/* 10C908 802A32F8 10000076 */ b .L802A34D4
/* 10C90C 802A32FC 00000000 */ nop
glabel L802A3300
/* 10C910 802A3300 02202025 */ move $a0, $s1
/* 10C914 802A3304 02402825 */ move $a1, $s2
/* 10C918 802A3308 0C0A688F */ jal func_8029A23C
/* 10C91C 802A330C 02003025 */ move $a2, $s0
/* 10C920 802A3310 10000070 */ b .L802A34D4
/* 10C924 802A3314 00000000 */ nop
glabel L802A3318
/* 10C928 802A3318 02202025 */ move $a0, $s1
/* 10C92C 802A331C 02402825 */ move $a1, $s2
/* 10C930 802A3320 0C0A6A3D */ jal func_8029A8F4
/* 10C934 802A3324 02003025 */ move $a2, $s0
/* 10C938 802A3328 1000006A */ b .L802A34D4
/* 10C93C 802A332C 00000000 */ nop
glabel L802A3330
/* 10C940 802A3330 02202025 */ move $a0, $s1
/* 10C944 802A3334 02402825 */ move $a1, $s2
/* 10C948 802A3338 0C0A69A4 */ jal func_8029A690
/* 10C94C 802A333C 02003025 */ move $a2, $s0
/* 10C950 802A3340 10000064 */ b .L802A34D4
/* 10C954 802A3344 00000000 */ nop
glabel L802A3348
/* 10C958 802A3348 02202025 */ move $a0, $s1
/* 10C95C 802A334C 02402825 */ move $a1, $s2
/* 10C960 802A3350 0C0A69D7 */ jal func_8029A75C
/* 10C964 802A3354 02003025 */ move $a2, $s0
/* 10C968 802A3358 1000005E */ b .L802A34D4
/* 10C96C 802A335C 00000000 */ nop
glabel L802A3360
/* 10C970 802A3360 02202025 */ move $a0, $s1
/* 10C974 802A3364 02402825 */ move $a1, $s2
/* 10C978 802A3368 0C0A6A0A */ jal func_8029A828
/* 10C97C 802A336C 02003025 */ move $a2, $s0
/* 10C980 802A3370 10000058 */ b .L802A34D4
/* 10C984 802A3374 00000000 */ nop
glabel L802A3378
/* 10C988 802A3378 02202025 */ move $a0, $s1
/* 10C98C 802A337C 02402825 */ move $a1, $s2
/* 10C990 802A3380 0C0A60CA */ jal func_80298328
/* 10C994 802A3384 02003025 */ move $a2, $s0
/* 10C998 802A3388 10000052 */ b .L802A34D4
/* 10C99C 802A338C 00000000 */ nop
glabel L802A3390
/* 10C9A0 802A3390 02202025 */ move $a0, $s1
/* 10C9A4 802A3394 0C0A6E3A */ jal func_8029B8E8
/* 10C9A8 802A3398 02002825 */ move $a1, $s0
/* 10C9AC 802A339C 1000004D */ b .L802A34D4
/* 10C9B0 802A33A0 00000000 */ nop
glabel L802A33A4
/* 10C9B4 802A33A4 02202025 */ move $a0, $s1
/* 10C9B8 802A33A8 0C0A6FEC */ jal func_8029BFB0
/* 10C9BC 802A33AC 02002825 */ move $a1, $s0
/* 10C9C0 802A33B0 10000048 */ b .L802A34D4
/* 10C9C4 802A33B4 00000000 */ nop
glabel L802A33B8
/* 10C9C8 802A33B8 02202025 */ move $a0, $s1
/* 10C9CC 802A33BC 0C0A70F3 */ jal func_8029C3CC
/* 10C9D0 802A33C0 02002825 */ move $a1, $s0
/* 10C9D4 802A33C4 10000043 */ b .L802A34D4
/* 10C9D8 802A33C8 00000000 */ nop
glabel L802A33CC
/* 10C9DC 802A33CC 02202025 */ move $a0, $s1
/* 10C9E0 802A33D0 02402825 */ move $a1, $s2
/* 10C9E4 802A33D4 0C0A5E94 */ jal func_80297A50
/* 10C9E8 802A33D8 02003025 */ move $a2, $s0
/* 10C9EC 802A33DC 1000003D */ b .L802A34D4
/* 10C9F0 802A33E0 00000000 */ nop
glabel L802A33E4
/* 10C9F4 802A33E4 02202025 */ move $a0, $s1
/* 10C9F8 802A33E8 02402825 */ move $a1, $s2
/* 10C9FC 802A33EC 0C0A6B06 */ jal func_8029AC18
/* 10CA00 802A33F0 02003025 */ move $a2, $s0
/* 10CA04 802A33F4 10000037 */ b .L802A34D4
/* 10CA08 802A33F8 00000000 */ nop
glabel L802A33FC
/* 10CA0C 802A33FC 02202025 */ move $a0, $s1
/* 10CA10 802A3400 02402825 */ move $a1, $s2
/* 10CA14 802A3404 0C0A8A6F */ jal func_802A29BC
/* 10CA18 802A3408 02003025 */ move $a2, $s0
/* 10CA1C 802A340C 10000031 */ b .L802A34D4
/* 10CA20 802A3410 00000000 */ nop
glabel L802A3414
/* 10CA24 802A3414 02202025 */ move $a0, $s1
/* 10CA28 802A3418 0C0A89A7 */ jal func_802A269C
/* 10CA2C 802A341C 02002825 */ move $a1, $s0
/* 10CA30 802A3420 1000002C */ b .L802A34D4
/* 10CA34 802A3424 00000000 */ nop
glabel L802A3428
/* 10CA38 802A3428 02202025 */ move $a0, $s1
/* 10CA3C 802A342C 02402825 */ move $a1, $s2
/* 10CA40 802A3430 0C0A8B1E */ jal func_802A2C78
/* 10CA44 802A3434 02003025 */ move $a2, $s0
/* 10CA48 802A3438 10000026 */ b .L802A34D4
/* 10CA4C 802A343C 00000000 */ nop
glabel L802A3440
/* 10CA50 802A3440 02202025 */ move $a0, $s1
/* 10CA54 802A3444 02002825 */ move $a1, $s0
/* 10CA58 802A3448 02403025 */ move $a2, $s2
/* 10CA5C 802A344C 0C0A6B87 */ jal func_8029AE1C
/* 10CA60 802A3450 97A70092 */ lhu $a3, 0x92($sp)
/* 10CA64 802A3454 1000001F */ b .L802A34D4
/* 10CA68 802A3458 00000000 */ nop
glabel L802A345C
/* 10CA6C 802A345C 02202025 */ move $a0, $s1
/* 10CA70 802A3460 0C0A6C1B */ jal func_8029B06C
/* 10CA74 802A3464 02002825 */ move $a1, $s0
/* 10CA78 802A3468 1000001A */ b .L802A34D4
/* 10CA7C 802A346C 00000000 */ nop
glabel L802A3470
/* 10CA80 802A3470 02202025 */ move $a0, $s1
/* 10CA84 802A3474 0C0A6CB9 */ jal func_8029B2E4
/* 10CA88 802A3478 02002825 */ move $a1, $s0
/* 10CA8C 802A347C 10000015 */ b .L802A34D4
/* 10CA90 802A3480 00000000 */ nop
glabel L802A3484
/* 10CA94 802A3484 02202025 */ move $a0, $s1
/* 10CA98 802A3488 0C0A6DBB */ jal func_8029B6EC
/* 10CA9C 802A348C 02002825 */ move $a1, $s0
/* 10CAA0 802A3490 10000010 */ b .L802A34D4
/* 10CAA4 802A3494 00000000 */ nop
glabel L802A3498
/* 10CAA8 802A3498 02202025 */ move $a0, $s1
/* 10CAAC 802A349C 0C0A6D38 */ jal func_8029B4E0
/* 10CAB0 802A34A0 02002825 */ move $a1, $s0
/* 10CAB4 802A34A4 1000000B */ b .L802A34D4
/* 10CAB8 802A34A8 00000000 */ nop
glabel L802A34AC
/* 10CABC 802A34AC 02202025 */ move $a0, $s1
/* 10CAC0 802A34B0 0C0A8AB4 */ jal func_802A2AD0
/* 10CAC4 802A34B4 02002825 */ move $a1, $s0
/* 10CAC8 802A34B8 10000006 */ b .L802A34D4
/* 10CACC 802A34BC 00000000 */ nop
glabel L802A34C0
/* 10CAD0 802A34C0 02202025 */ move $a0, $s1
/* 10CAD4 802A34C4 02402825 */ move $a1, $s2
/* 10CAD8 802A34C8 02003025 */ move $a2, $s0
/* 10CADC 802A34CC 0C0A89E8 */ jal func_802A27A0
/* 10CAE0 802A34D0 97A70092 */ lhu $a3, 0x92($sp)
.L802A34D4:
glabel L802A34D4
/* 10CAE4 802A34D4 3C0E8016 */ lui $t6, %hi(D_80162578) # $t6, 0x8016
/* 10CAE8 802A34D8 25CE2578 */ addiu $t6, %lo(D_80162578) # addiu $t6, $t6, 0x2578
/* 10CAEC 802A34DC 26100070 */ addiu $s0, $s0, 0x70
/* 10CAF0 802A34E0 560EFF33 */ bnel $s0, $t6, .L802A31B0
/* 10CAF4 802A34E4 860B0002 */ lh $t3, 2($s0)
/* 10CAF8 802A34E8 3C02800E */ lui $v0, %hi(gCurrentCourseId) # $v0, 0x800e
/* 10CAFC 802A34EC 8442C5A0 */ lh $v0, %lo(gCurrentCourseId)($v0)
/* 10CB00 802A34F0 24010009 */ li $at, 9
/* 10CB04 802A34F4 02202025 */ move $a0, $s1
/* 10CB08 802A34F8 10410006 */ beq $v0, $at, .L802A3514
/* 10CB0C 802A34FC 02402825 */ move $a1, $s2
/* 10CB10 802A3500 24010012 */ li $at, 18
/* 10CB14 802A3504 10410007 */ beq $v0, $at, .L802A3524
/* 10CB18 802A3508 02202025 */ move $a0, $s1
/* 10CB1C 802A350C 10000009 */ b .L802A3534
/* 10CB20 802A3510 8FBF0024 */ lw $ra, 0x24($sp)
.L802A3514:
/* 10CB24 802A3514 0C0A61AD */ jal func_802986B4
/* 10CB28 802A3518 8FA60058 */ lw $a2, 0x58($sp)
/* 10CB2C 802A351C 10000005 */ b .L802A3534
/* 10CB30 802A3520 8FBF0024 */ lw $ra, 0x24($sp)
.L802A3524:
/* 10CB34 802A3524 02402825 */ move $a1, $s2
/* 10CB38 802A3528 0C0A635F */ jal func_80298D7C
/* 10CB3C 802A352C 8FA60058 */ lw $a2, 0x58($sp)
/* 10CB40 802A3530 8FBF0024 */ lw $ra, 0x24($sp)
.L802A3534:
/* 10CB44 802A3534 8FB00018 */ lw $s0, 0x18($sp)
/* 10CB48 802A3538 8FB1001C */ lw $s1, 0x1c($sp)
/* 10CB4C 802A353C 8FB20020 */ lw $s2, 0x20($sp)
/* 10CB50 802A3540 03E00008 */ jr $ra
/* 10CB54 802A3544 27BD0098 */ addiu $sp, $sp, 0x98
@@ -1,264 +0,0 @@
glabel update_obj_fake_item_box
/* 10A700 802A10F0 27BDFF88 */ addiu $sp, $sp, -0x78
/* 10A704 802A10F4 AFBF0024 */ sw $ra, 0x24($sp)
/* 10A708 802A10F8 AFB00020 */ sw $s0, 0x20($sp)
/* 10A70C 802A10FC 444EF800 */ cfc1 $t6, $31
/* 10A710 802A1100 24030001 */ li $v1, 1
/* 10A714 802A1104 44C3F800 */ ctc1 $v1, $31
/* 10A718 802A1108 C4840024 */ lwc1 $f4, 0x24($a0)
/* 10A71C 802A110C 3C0C800F */ lui $t4, %hi(gPlayers) # $t4, 0x800f
/* 10A720 802A1110 00808025 */ move $s0, $a0
/* 10A724 802A1114 460021A4 */ cvt.w.s $f6, $f4
/* 10A728 802A1118 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000
/* 10A72C 802A111C 258C6990 */ addiu $t4, %lo(gPlayers) # addiu $t4, $t4, 0x6990
/* 10A730 802A1120 4443F800 */ cfc1 $v1, $31
/* 10A734 802A1124 00000000 */ nop
/* 10A738 802A1128 30630078 */ andi $v1, $v1, 0x78
/* 10A73C 802A112C 50600013 */ beql $v1, $zero, .L802A117C
/* 10A740 802A1130 44033000 */ mfc1 $v1, $f6
/* 10A744 802A1134 44813000 */ mtc1 $at, $f6
/* 10A748 802A1138 24030001 */ li $v1, 1
/* 10A74C 802A113C 46062181 */ sub.s $f6, $f4, $f6
/* 10A750 802A1140 44C3F800 */ ctc1 $v1, $31
/* 10A754 802A1144 00000000 */ nop
/* 10A758 802A1148 460031A4 */ cvt.w.s $f6, $f6
/* 10A75C 802A114C 4443F800 */ cfc1 $v1, $31
/* 10A760 802A1150 00000000 */ nop
/* 10A764 802A1154 30630078 */ andi $v1, $v1, 0x78
/* 10A768 802A1158 14600005 */ bnez $v1, .L802A1170
/* 10A76C 802A115C 00000000 */ nop
/* 10A770 802A1160 44033000 */ mfc1 $v1, $f6
/* 10A774 802A1164 3C018000 */ lui $at, 0x8000
/* 10A778 802A1168 10000007 */ b .L802A1188
/* 10A77C 802A116C 00611825 */ or $v1, $v1, $at
.L802A1170:
/* 10A780 802A1170 10000005 */ b .L802A1188
/* 10A784 802A1174 2403FFFF */ li $v1, -1
/* 10A788 802A1178 44033000 */ mfc1 $v1, $f6
.L802A117C:
/* 10A78C 802A117C 00000000 */ nop
/* 10A790 802A1180 0460FFFB */ bltz $v1, .L802A1170
/* 10A794 802A1184 00000000 */ nop
.L802A1188:
/* 10A798 802A1188 86020006 */ lh $v0, 6($s0)
/* 10A79C 802A118C 44CEF800 */ ctc1 $t6, $31
/* 10A7A0 802A1190 3C0140B0 */ li $at, 0x40B00000 # 5.500000
/* 10A7A4 802A1194 10400008 */ beqz $v0, .L802A11B8
/* 10A7A8 802A1198 000358C0 */ sll $t3, $v1, 3
/* 10A7AC 802A119C 24010001 */ li $at, 1
/* 10A7B0 802A11A0 10410070 */ beq $v0, $at, .L802A1364
/* 10A7B4 802A11A4 24010002 */ li $at, 2
/* 10A7B8 802A11A8 504100A9 */ beql $v0, $at, .L802A1450
/* 10A7BC 802A11AC 86020004 */ lh $v0, 4($s0)
/* 10A7C0 802A11B0 100000BB */ b .L802A14A0
/* 10A7C4 802A11B4 00000000 */ nop
.L802A11B8:
/* 10A7C8 802A11B8 C6080008 */ lwc1 $f8, 8($s0)
/* 10A7CC 802A11BC 44815000 */ mtc1 $at, $f10
/* 10A7D0 802A11C0 01635823 */ subu $t3, $t3, $v1
/* 10A7D4 802A11C4 000B5900 */ sll $t3, $t3, 4
/* 10A7D8 802A11C8 460A4102 */ mul.s $f4, $f8, $f10
/* 10A7DC 802A11CC 860F0010 */ lh $t7, 0x10($s0)
/* 10A7E0 802A11D0 86190012 */ lh $t9, 0x12($s0)
/* 10A7E4 802A11D4 86090014 */ lh $t1, 0x14($s0)
/* 10A7E8 802A11D8 01635823 */ subu $t3, $t3, $v1
/* 10A7EC 802A11DC 000B5880 */ sll $t3, $t3, 2
/* 10A7F0 802A11E0 01635823 */ subu $t3, $t3, $v1
/* 10A7F4 802A11E4 000B58C0 */ sll $t3, $t3, 3
/* 10A7F8 802A11E8 25F8FF4A */ addiu $t8, $t7, -0xb6
/* 10A7FC 802A11EC 2728016C */ addiu $t0, $t9, 0x16c
/* 10A800 802A11F0 252AFF4A */ addiu $t2, $t1, -0xb6
/* 10A804 802A11F4 E604000C */ swc1 $f4, 0xc($s0)
/* 10A808 802A11F8 A6180010 */ sh $t8, 0x10($s0)
/* 10A80C 802A11FC A6080012 */ sh $t0, 0x12($s0)
/* 10A810 802A1200 A60A0014 */ sh $t2, 0x14($s0)
/* 10A814 802A1204 016C1021 */ addu $v0, $t3, $t4
/* 10A818 802A1208 C4460014 */ lwc1 $f6, 0x14($v0)
/* 10A81C 802A120C C6080018 */ lwc1 $f8, 0x18($s0)
/* 10A820 802A1210 C44A0018 */ lwc1 $f10, 0x18($v0)
/* 10A824 802A1214 C604001C */ lwc1 $f4, 0x1c($s0)
/* 10A828 802A1218 46083381 */ sub.s $f14, $f6, $f8
/* 10A82C 802A121C C6080020 */ lwc1 $f8, 0x20($s0)
/* 10A830 802A1220 C446001C */ lwc1 $f6, 0x1c($v0)
/* 10A834 802A1224 46045401 */ sub.s $f16, $f10, $f4
/* 10A838 802A1228 460E7282 */ mul.s $f10, $f14, $f14
/* 10A83C 802A122C E7AE0048 */ swc1 $f14, 0x48($sp)
/* 10A840 802A1230 46083481 */ sub.s $f18, $f6, $f8
/* 10A844 802A1234 46108102 */ mul.s $f4, $f16, $f16
/* 10A848 802A1238 E7B00044 */ swc1 $f16, 0x44($sp)
/* 10A84C 802A123C AFA30074 */ sw $v1, 0x74($sp)
/* 10A850 802A1240 46129202 */ mul.s $f8, $f18, $f18
/* 10A854 802A1244 E7B20040 */ swc1 $f18, 0x40($sp)
/* 10A858 802A1248 AFA2002C */ sw $v0, 0x2c($sp)
/* 10A85C 802A124C 46045180 */ add.s $f6, $f10, $f4
/* 10A860 802A1250 0C033850 */ jal sqrtf
/* 10A864 802A1254 46083300 */ add.s $f12, $f6, $f8
/* 10A868 802A1258 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 10A86C 802A125C 44816000 */ mtc1 $at, $f12
/* 10A870 802A1260 3C014120 */ li $at, 0x41200000 # 10.000000
/* 10A874 802A1264 44815000 */ mtc1 $at, $f10
/* 10A878 802A1268 C7AE0048 */ lwc1 $f14, 0x48($sp)
/* 10A87C 802A126C C7B00044 */ lwc1 $f16, 0x44($sp)
/* 10A880 802A1270 460A0083 */ div.s $f2, $f0, $f10
/* 10A884 802A1274 8FA2002C */ lw $v0, 0x2c($sp)
/* 10A888 802A1278 C7B20040 */ lwc1 $f18, 0x40($sp)
/* 10A88C 802A127C 8E05000C */ lw $a1, 0xc($s0)
/* 10A890 802A1280 C4440014 */ lwc1 $f4, 0x14($v0)
/* 10A894 802A1284 26040030 */ addiu $a0, $s0, 0x30
/* 10A898 802A1288 46027383 */ div.s $f14, $f14, $f2
/* 10A89C 802A128C 46028403 */ div.s $f16, $f16, $f2
/* 10A8A0 802A1290 460E2181 */ sub.s $f6, $f4, $f14
/* 10A8A4 802A1294 E6060018 */ swc1 $f6, 0x18($s0)
/* 10A8A8 802A1298 C4480018 */ lwc1 $f8, 0x18($v0)
/* 10A8AC 802A129C 8E060018 */ lw $a2, 0x18($s0)
/* 10A8B0 802A12A0 46029483 */ div.s $f18, $f18, $f2
/* 10A8B4 802A12A4 46104281 */ sub.s $f10, $f8, $f16
/* 10A8B8 802A12A8 460C5101 */ sub.s $f4, $f10, $f12
/* 10A8BC 802A12AC E604001C */ swc1 $f4, 0x1c($s0)
/* 10A8C0 802A12B0 C446001C */ lwc1 $f6, 0x1c($v0)
/* 10A8C4 802A12B4 8E07001C */ lw $a3, 0x1c($s0)
/* 10A8C8 802A12B8 46123201 */ sub.s $f8, $f6, $f18
/* 10A8CC 802A12BC E6080020 */ swc1 $f8, 0x20($s0)
/* 10A8D0 802A12C0 C60A0020 */ lwc1 $f10, 0x20($s0)
/* 10A8D4 802A12C4 0C0AB772 */ jal func_802ADDC8
/* 10A8D8 802A12C8 E7AA0010 */ swc1 $f10, 0x10($sp)
/* 10A8DC 802A12CC 0C0AD38C */ jal func_802B4E30
/* 10A8E0 802A12D0 02002025 */ move $a0, $s0
/* 10A8E4 802A12D4 8FA2002C */ lw $v0, 0x2c($sp)
/* 10A8E8 802A12D8 8FAF0074 */ lw $t7, 0x74($sp)
/* 10A8EC 802A12DC 3C19800F */ lui $t9, %hi(gControllers) # $t9, 0x800f
/* 10A8F0 802A12E0 944D0000 */ lhu $t5, ($v0)
/* 10A8F4 802A12E4 27396910 */ addiu $t9, %lo(gControllers) # addiu $t9, $t9, 0x6910
/* 10A8F8 802A12E8 000FC100 */ sll $t8, $t7, 4
/* 10A8FC 802A12EC 31AE4000 */ andi $t6, $t5, 0x4000
/* 10A900 802A12F0 11C0006D */ beqz $t6, .L802A14A8
/* 10A904 802A12F4 03191821 */ addu $v1, $t8, $t9
/* 10A908 802A12F8 94650008 */ lhu $a1, 8($v1)
/* 10A90C 802A12FC 02002025 */ move $a0, $s0
/* 10A910 802A1300 30A82000 */ andi $t0, $a1, 0x2000
/* 10A914 802A1304 11000068 */ beqz $t0, .L802A14A8
/* 10A918 802A1308 30A9DFFF */ andi $t1, $a1, 0xdfff
/* 10A91C 802A130C A4690008 */ sh $t1, 8($v1)
/* 10A920 802A1310 0C0A8419 */ jal func_802A1064
/* 10A924 802A1314 AFA2002C */ sw $v0, 0x2c($sp)
/* 10A928 802A1318 8FA2002C */ lw $v0, 0x2c($sp)
/* 10A92C 802A131C 3C01FFFB */ lui $at, (0xFFFBFFFF >> 16) # lui $at, 0xfffb
/* 10A930 802A1320 3421FFFF */ ori $at, (0xFFFBFFFF & 0xFFFF) # ori $at, $at, 0xffff
/* 10A934 802A1324 8C4A000C */ lw $t2, 0xc($v0)
/* 10A938 802A1328 3C0C800E */ lui $t4, %hi(gPlayerOne) # $t4, 0x800e
/* 10A93C 802A132C 3C051900 */ lui $a1, (0x19008012 >> 16) # lui $a1, 0x1900
/* 10A940 802A1330 01415824 */ and $t3, $t2, $at
/* 10A944 802A1334 AC4B000C */ sw $t3, 0xc($v0)
/* 10A948 802A1338 8D8CC4DC */ lw $t4, %lo(gPlayerOne)($t4)
/* 10A94C 802A133C 24010DD8 */ li $at, 3544
/* 10A950 802A1340 34A58012 */ ori $a1, (0x19008012 & 0xFFFF) # ori $a1, $a1, 0x8012
/* 10A954 802A1344 004C2023 */ subu $a0, $v0, $t4
/* 10A958 802A1348 0081001A */ div $zero, $a0, $at
/* 10A95C 802A134C 00006812 */ mflo $t5
/* 10A960 802A1350 31A400FF */ andi $a0, $t5, 0xff
/* 10A964 802A1354 0C032418 */ jal func_800C9060
/* 10A968 802A1358 00000000 */ nop
/* 10A96C 802A135C 10000053 */ b .L802A14AC
/* 10A970 802A1360 8FBF0024 */ lw $ra, 0x24($sp)
.L802A1364:
/* 10A974 802A1364 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 10A978 802A1368 44816000 */ mtc1 $at, $f12
/* 10A97C 802A136C C6000008 */ lwc1 $f0, 8($s0)
/* 10A980 802A1370 3C01802C */ lui $at, %hi(D_802B99D0) # $at, 0x802c
/* 10A984 802A1374 460C003C */ c.lt.s $f0, $f12
/* 10A988 802A1378 00000000 */ nop
/* 10A98C 802A137C 45020007 */ bc1fl .L802A139C
/* 10A990 802A1380 4600603E */ c.le.s $f12, $f0
/* 10A994 802A1384 C42499D0 */ lwc1 $f4, %lo(D_802B99D0)($at)
/* 10A998 802A1388 46040180 */ add.s $f6, $f0, $f4
/* 10A99C 802A138C E6060008 */ swc1 $f6, 8($s0)
/* 10A9A0 802A1390 10000007 */ b .L802A13B0
/* 10A9A4 802A1394 C6000008 */ lwc1 $f0, 8($s0)
/* 10A9A8 802A1398 4600603E */ c.le.s $f12, $f0
.L802A139C:
/* 10A9AC 802A139C 00000000 */ nop
/* 10A9B0 802A13A0 45020004 */ bc1fl .L802A13B4
/* 10A9B4 802A13A4 3C0140B0 */ lui $at, 0x40b0
/* 10A9B8 802A13A8 E60C0008 */ swc1 $f12, 8($s0)
/* 10A9BC 802A13AC C6000008 */ lwc1 $f0, 8($s0)
.L802A13B0:
/* 10A9C0 802A13B0 3C0140B0 */ li $at, 0x40B00000 # 5.500000
.L802A13B4:
/* 10A9C4 802A13B4 44814000 */ mtc1 $at, $f8
/* 10A9C8 802A13B8 C602001C */ lwc1 $f2, 0x1c($s0)
/* 10A9CC 802A13BC C60C0028 */ lwc1 $f12, 0x28($s0)
/* 10A9D0 802A13C0 46080282 */ mul.s $f10, $f0, $f8
/* 10A9D4 802A13C4 3C01802C */ lui $at, %hi(D_802B99D4) # $at, 0x802c
/* 10A9D8 802A13C8 4602603E */ c.le.s $f12, $f2
/* 10A9DC 802A13CC 00000000 */ nop
/* 10A9E0 802A13D0 45000003 */ bc1f .L802A13E0
/* 10A9E4 802A13D4 E60A000C */ swc1 $f10, 0xc($s0)
/* 10A9E8 802A13D8 10000004 */ b .L802A13EC
/* 10A9EC 802A13DC E60C001C */ swc1 $f12, 0x1c($s0)
.L802A13E0:
/* 10A9F0 802A13E0 C42499D4 */ lwc1 $f4, %lo(D_802B99D4)($at)
/* 10A9F4 802A13E4 46041180 */ add.s $f6, $f2, $f4
/* 10A9F8 802A13E8 E606001C */ swc1 $f6, 0x1c($s0)
.L802A13EC:
/* 10A9FC 802A13EC 86030002 */ lh $v1, 2($s0)
/* 10AA00 802A13F0 306F1000 */ andi $t7, $v1, 0x1000
/* 10AA04 802A13F4 51E0000C */ beql $t7, $zero, .L802A1428
/* 10AA08 802A13F8 86080010 */ lh $t0, 0x10($s0)
/* 10AA0C 802A13FC 86020004 */ lh $v0, 4($s0)
/* 10AA10 802A1400 3078EFFF */ andi $t8, $v1, 0xefff
/* 10AA14 802A1404 18400003 */ blez $v0, .L802A1414
/* 10AA18 802A1408 2841012D */ slti $at, $v0, 0x12d
/* 10AA1C 802A140C 14200004 */ bnez $at, .L802A1420
/* 10AA20 802A1410 2459FFFF */ addiu $t9, $v0, -1
.L802A1414:
/* 10AA24 802A1414 A6180002 */ sh $t8, 2($s0)
/* 10AA28 802A1418 10000002 */ b .L802A1424
/* 10AA2C 802A141C A6000004 */ sh $zero, 4($s0)
.L802A1420:
/* 10AA30 802A1420 A6190004 */ sh $t9, 4($s0)
.L802A1424:
/* 10AA34 802A1424 86080010 */ lh $t0, 0x10($s0)
.L802A1428:
/* 10AA38 802A1428 860A0012 */ lh $t2, 0x12($s0)
/* 10AA3C 802A142C 860C0014 */ lh $t4, 0x14($s0)
/* 10AA40 802A1430 2509FF4A */ addiu $t1, $t0, -0xb6
/* 10AA44 802A1434 254B016C */ addiu $t3, $t2, 0x16c
/* 10AA48 802A1438 258DFF4A */ addiu $t5, $t4, -0xb6
/* 10AA4C 802A143C A6090010 */ sh $t1, 0x10($s0)
/* 10AA50 802A1440 A60B0012 */ sh $t3, 0x12($s0)
/* 10AA54 802A1444 10000018 */ b .L802A14A8
/* 10AA58 802A1448 A60D0014 */ sh $t5, 0x14($s0)
/* 10AA5C 802A144C 86020004 */ lh $v0, 4($s0)
.L802A1450:
/* 10AA60 802A1450 28410014 */ slti $at, $v0, 0x14
/* 10AA64 802A1454 10200003 */ beqz $at, .L802A1464
/* 10AA68 802A1458 00000000 */ nop
/* 10AA6C 802A145C 04410005 */ bgez $v0, .L802A1474
/* 10AA70 802A1460 244E0001 */ addiu $t6, $v0, 1
.L802A1464:
/* 10AA74 802A1464 0C0A7A15 */ jal func_8029E854
/* 10AA78 802A1468 02002025 */ move $a0, $s0
/* 10AA7C 802A146C 1000000F */ b .L802A14AC
/* 10AA80 802A1470 8FBF0024 */ lw $ra, 0x24($sp)
.L802A1474:
/* 10AA84 802A1474 860F0010 */ lh $t7, 0x10($s0)
/* 10AA88 802A1478 86190012 */ lh $t9, 0x12($s0)
/* 10AA8C 802A147C 86090014 */ lh $t1, 0x14($s0)
/* 10AA90 802A1480 25F80444 */ addiu $t8, $t7, 0x444
/* 10AA94 802A1484 2728FD28 */ addiu $t0, $t9, -0x2d8
/* 10AA98 802A1488 252A016C */ addiu $t2, $t1, 0x16c
/* 10AA9C 802A148C A60E0004 */ sh $t6, 4($s0)
/* 10AAA0 802A1490 A6180010 */ sh $t8, 0x10($s0)
/* 10AAA4 802A1494 A6080012 */ sh $t0, 0x12($s0)
/* 10AAA8 802A1498 10000003 */ b .L802A14A8
/* 10AAAC 802A149C A60A0014 */ sh $t2, 0x14($s0)
.L802A14A0:
/* 10AAB0 802A14A0 0C0A7A15 */ jal func_8029E854
/* 10AAB4 802A14A4 02002025 */ move $a0, $s0
.L802A14A8:
/* 10AAB8 802A14A8 8FBF0024 */ lw $ra, 0x24($sp)
.L802A14AC:
/* 10AABC 802A14AC 8FB00020 */ lw $s0, 0x20($sp)
/* 10AAC0 802A14B0 27BD0078 */ addiu $sp, $sp, 0x78
/* 10AAC4 802A14B4 03E00008 */ jr $ra
/* 10AAC8 802A14B8 00000000 */ nop
@@ -1,84 +0,0 @@
glabel update_obj_item_box
/* 10AC10 802A1600 84820006 */ lh $v0, 6($a0)
/* 10AC14 802A1604 24010001 */ li $at, 1
/* 10AC18 802A1608 240E0001 */ li $t6, 1
/* 10AC1C 802A160C 10400009 */ beqz $v0, .L802A1634
/* 10AC20 802A1610 00000000 */ nop
/* 10AC24 802A1614 10410009 */ beq $v0, $at, .L802A163C
/* 10AC28 802A1618 24010002 */ li $at, 2
/* 10AC2C 802A161C 1041001C */ beq $v0, $at, .L802A1690
/* 10AC30 802A1620 24010003 */ li $at, 3
/* 10AC34 802A1624 50410025 */ beql $v0, $at, .L802A16BC
/* 10AC38 802A1628 84820004 */ lh $v0, 4($a0)
/* 10AC3C 802A162C 03E00008 */ jr $ra
/* 10AC40 802A1630 00000000 */ nop
.L802A1634:
/* 10AC44 802A1634 03E00008 */ jr $ra
/* 10AC48 802A1638 A48E0006 */ sh $t6, 6($a0)
.L802A163C:
/* 10AC4C 802A163C C480001C */ lwc1 $f0, 0x1c($a0)
/* 10AC50 802A1640 C4820024 */ lwc1 $f2, 0x24($a0)
/* 10AC54 802A1644 3C01802C */ lui $at, %hi(D_802B99D8) # $at, 0x802c
/* 10AC58 802A1648 C42C99D8 */ lwc1 $f12, %lo(D_802B99D8)($at)
/* 10AC5C 802A164C 46020101 */ sub.s $f4, $f0, $f2
/* 10AC60 802A1650 3C01802C */ lui $at, %hi(D_802B99DC) # $at, 0x802c
/* 10AC64 802A1654 240F0002 */ li $t7, 2
/* 10AC68 802A1658 2418C000 */ li $t8, -16384
/* 10AC6C 802A165C 460C203C */ c.lt.s $f4, $f12
/* 10AC70 802A1660 00000000 */ nop
/* 10AC74 802A1664 45020006 */ bc1fl .L802A1680
/* 10AC78 802A1668 460C1280 */ add.s $f10, $f2, $f12
/* 10AC7C 802A166C C42699DC */ lwc1 $f6, %lo(D_802B99DC)($at)
/* 10AC80 802A1670 46060200 */ add.s $f8, $f0, $f6
/* 10AC84 802A1674 03E00008 */ jr $ra
/* 10AC88 802A1678 E488001C */ swc1 $f8, 0x1c($a0)
/* 10AC8C 802A167C 460C1280 */ add.s $f10, $f2, $f12
.L802A1680:
/* 10AC90 802A1680 A48F0006 */ sh $t7, 6($a0)
/* 10AC94 802A1684 A4980002 */ sh $t8, 2($a0)
/* 10AC98 802A1688 03E00008 */ jr $ra
/* 10AC9C 802A168C E48A001C */ swc1 $f10, 0x1c($a0)
.L802A1690:
/* 10ACA0 802A1690 84990010 */ lh $t9, 0x10($a0)
/* 10ACA4 802A1694 84890012 */ lh $t1, 0x12($a0)
/* 10ACA8 802A1698 848B0014 */ lh $t3, 0x14($a0)
/* 10ACAC 802A169C 272800B6 */ addiu $t0, $t9, 0xb6
/* 10ACB0 802A16A0 252AFE94 */ addiu $t2, $t1, -0x16c
/* 10ACB4 802A16A4 256C00B6 */ addiu $t4, $t3, 0xb6
/* 10ACB8 802A16A8 A4880010 */ sh $t0, 0x10($a0)
/* 10ACBC 802A16AC A48A0012 */ sh $t2, 0x12($a0)
/* 10ACC0 802A16B0 03E00008 */ jr $ra
/* 10ACC4 802A16B4 A48C0014 */ sh $t4, 0x14($a0)
/* 10ACC8 802A16B8 84820004 */ lh $v0, 4($a0)
.L802A16BC:
/* 10ACCC 802A16BC 24010014 */ li $at, 20
/* 10ACD0 802A16C0 1441000A */ bne $v0, $at, .L802A16EC
/* 10ACD4 802A16C4 244E0001 */ addiu $t6, $v0, 1
/* 10ACD8 802A16C8 3C0141A0 */ li $at, 0x41A00000 # 20.000000
/* 10ACDC 802A16CC 44819000 */ mtc1 $at, $f18
/* 10ACE0 802A16D0 C4900008 */ lwc1 $f16, 8($a0)
/* 10ACE4 802A16D4 240DC000 */ li $t5, -16384
/* 10ACE8 802A16D8 A4800006 */ sh $zero, 6($a0)
/* 10ACEC 802A16DC 46128101 */ sub.s $f4, $f16, $f18
/* 10ACF0 802A16E0 A48D0002 */ sh $t5, 2($a0)
/* 10ACF4 802A16E4 03E00008 */ jr $ra
/* 10ACF8 802A16E8 E484001C */ swc1 $f4, 0x1c($a0)
.L802A16EC:
/* 10ACFC 802A16EC 848F0010 */ lh $t7, 0x10($a0)
/* 10AD00 802A16F0 84990012 */ lh $t9, 0x12($a0)
/* 10AD04 802A16F4 84890014 */ lh $t1, 0x14($a0)
/* 10AD08 802A16F8 25F80444 */ addiu $t8, $t7, 0x444
/* 10AD0C 802A16FC 2728FD28 */ addiu $t0, $t9, -0x2d8
/* 10AD10 802A1700 252A016C */ addiu $t2, $t1, 0x16c
/* 10AD14 802A1704 A48E0004 */ sh $t6, 4($a0)
/* 10AD18 802A1708 A4980010 */ sh $t8, 0x10($a0)
/* 10AD1C 802A170C A4880012 */ sh $t0, 0x12($a0)
/* 10AD20 802A1710 A48A0014 */ sh $t2, 0x14($a0)
/* 10AD24 802A1714 03E00008 */ jr $ra
/* 10AD28 802A1718 00000000 */ nop
@@ -1,43 +0,0 @@
glabel update_obj_item_box_hot_air_balloon
/* 10AB7C 802A156C 84820006 */ lh $v0, 6($a0)
/* 10AB80 802A1570 24010003 */ li $at, 3
/* 10AB84 802A1574 1041000D */ beq $v0, $at, .L802A15AC
/* 10AB88 802A1578 24010005 */ li $at, 5
/* 10AB8C 802A157C 1441001E */ bne $v0, $at, .L802A15F8
/* 10AB90 802A1580 00000000 */ nop
/* 10AB94 802A1584 848E0010 */ lh $t6, 0x10($a0)
/* 10AB98 802A1588 84980012 */ lh $t8, 0x12($a0)
/* 10AB9C 802A158C 84880014 */ lh $t0, 0x14($a0)
/* 10ABA0 802A1590 25CF00B6 */ addiu $t7, $t6, 0xb6
/* 10ABA4 802A1594 2719FE94 */ addiu $t9, $t8, -0x16c
/* 10ABA8 802A1598 250900B6 */ addiu $t1, $t0, 0xb6
/* 10ABAC 802A159C A48F0010 */ sh $t7, 0x10($a0)
/* 10ABB0 802A15A0 A4990012 */ sh $t9, 0x12($a0)
/* 10ABB4 802A15A4 03E00008 */ jr $ra
/* 10ABB8 802A15A8 A4890014 */ sh $t1, 0x14($a0)
.L802A15AC:
/* 10ABBC 802A15AC 84820004 */ lh $v0, 4($a0)
/* 10ABC0 802A15B0 24010014 */ li $at, 20
/* 10ABC4 802A15B4 240A0005 */ li $t2, 5
/* 10ABC8 802A15B8 14410005 */ bne $v0, $at, .L802A15D0
/* 10ABCC 802A15BC 244C0001 */ addiu $t4, $v0, 1
/* 10ABD0 802A15C0 240BC000 */ li $t3, -16384
/* 10ABD4 802A15C4 A48A0006 */ sh $t2, 6($a0)
/* 10ABD8 802A15C8 03E00008 */ jr $ra
/* 10ABDC 802A15CC A48B0002 */ sh $t3, 2($a0)
.L802A15D0:
/* 10ABE0 802A15D0 848D0010 */ lh $t5, 0x10($a0)
/* 10ABE4 802A15D4 848F0012 */ lh $t7, 0x12($a0)
/* 10ABE8 802A15D8 84990014 */ lh $t9, 0x14($a0)
/* 10ABEC 802A15DC 25AE0444 */ addiu $t6, $t5, 0x444
/* 10ABF0 802A15E0 25F8FD28 */ addiu $t8, $t7, -0x2d8
/* 10ABF4 802A15E4 2728016C */ addiu $t0, $t9, 0x16c
/* 10ABF8 802A15E8 A48C0004 */ sh $t4, 4($a0)
/* 10ABFC 802A15EC A48E0010 */ sh $t6, 0x10($a0)
/* 10AC00 802A15F0 A4980012 */ sh $t8, 0x12($a0)
/* 10AC04 802A15F4 A4880014 */ sh $t0, 0x14($a0)
.L802A15F8:
/* 10AC08 802A15F8 03E00008 */ jr $ra
/* 10AC0C 802A15FC 00000000 */ nop
@@ -1,51 +0,0 @@
glabel update_obj_mario_raceway_sign
/* 104170 8029AB60 84820002 */ lh $v0, 2($a0)
/* 104174 8029AB64 304E0800 */ andi $t6, $v0, 0x800
/* 104178 8029AB68 15C00018 */ bnez $t6, .L8029ABCC
/* 10417C 8029AB6C 304F0400 */ andi $t7, $v0, 0x400
/* 104180 8029AB70 11E00013 */ beqz $t7, .L8029ABC0
/* 104184 8029AB74 3C014080 */ li $at, 0x40800000 # 4.000000
/* 104188 8029AB78 C484001C */ lwc1 $f4, 0x1c($a0)
/* 10418C 8029AB7C 44813000 */ mtc1 $at, $f6
/* 104190 8029AB80 3C014448 */ li $at, 0x44480000 # 800.000000
/* 104194 8029AB84 44815000 */ mtc1 $at, $f10
/* 104198 8029AB88 46062200 */ add.s $f8, $f4, $f6
/* 10419C 8029AB8C E488001C */ swc1 $f8, 0x1c($a0)
/* 1041A0 8029AB90 C490001C */ lwc1 $f16, 0x1c($a0)
/* 1041A4 8029AB94 4610503C */ c.lt.s $f10, $f16
/* 1041A8 8029AB98 00000000 */ nop
/* 1041AC 8029AB9C 4500000B */ bc1f .L8029ABCC
/* 1041B0 8029ABA0 00000000 */ nop
/* 1041B4 8029ABA4 84980002 */ lh $t8, 2($a0)
/* 1041B8 8029ABA8 84880012 */ lh $t0, 0x12($a0)
/* 1041BC 8029ABAC 37190800 */ ori $t9, $t8, 0x800
/* 1041C0 8029ABB0 2509071C */ addiu $t1, $t0, 0x71c
/* 1041C4 8029ABB4 A4990002 */ sh $t9, 2($a0)
/* 1041C8 8029ABB8 03E00008 */ jr $ra
/* 1041CC 8029ABBC A4890012 */ sh $t1, 0x12($a0)
.L8029ABC0:
/* 1041D0 8029ABC0 848A0012 */ lh $t2, 0x12($a0)
/* 1041D4 8029ABC4 254B00B6 */ addiu $t3, $t2, 0xb6
/* 1041D8 8029ABC8 A48B0012 */ sh $t3, 0x12($a0)
.L8029ABCC:
/* 1041DC 8029ABCC 03E00008 */ jr $ra
/* 1041E0 8029ABD0 00000000 */ nop
/* 1041E4 8029ABD4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1041E8 8029ABD8 AFBF0014 */ sw $ra, 0x14($sp)
/* 1041EC 8029ABDC AFA5001C */ sw $a1, 0x1c($sp)
/* 1041F0 8029ABE0 3C018015 */ lui $at, %hi(D_80150110) # $at, 0x8015
/* 1041F4 8029ABE4 A4200110 */ sh $zero, %lo(D_80150110)($at)
/* 1041F8 8029ABE8 0C0A7B4E */ jal func_8029ED38
/* 1041FC 8029ABEC 24050014 */ li $a1, 20
/* 104200 8029ABF0 000278C0 */ sll $t7, $v0, 3
/* 104204 8029ABF4 8FBF0014 */ lw $ra, 0x14($sp)
/* 104208 8029ABF8 01E27823 */ subu $t7, $t7, $v0
/* 10420C 8029ABFC 87AE001E */ lh $t6, 0x1e($sp)
/* 104210 8029AC00 000F7900 */ sll $t7, $t7, 4
/* 104214 8029AC04 3C018016 */ lui $at, %hi(D_8015F9BE) # 0x8016
/* 104218 8029AC08 002F0821 */ addu $at, $at, $t7
/* 10421C 8029AC0C 27BD0018 */ addiu $sp, $sp, 0x18
/* 104220 8029AC10 03E00008 */ jr $ra
/* 104224 8029AC14 A42EF9BE */ sh $t6, %lo(D_8015F9BE)($at) # -0x642($at)
@@ -1,90 +0,0 @@
glabel update_obj_piranha_plant
/* 1017FC 802981EC 84820002 */ lh $v0, 2($a0)
/* 101800 802981F0 304E0800 */ andi $t6, $v0, 0x800
/* 101804 802981F4 15C0004A */ bnez $t6, .L80298320
/* 101808 802981F8 304F0400 */ andi $t7, $v0, 0x400
/* 10180C 802981FC 11E00010 */ beqz $t7, .L80298240
/* 101810 80298200 3C014080 */ li $at, 0x40800000 # 4.000000
/* 101814 80298204 C484001C */ lwc1 $f4, 0x1c($a0)
/* 101818 80298208 44813000 */ mtc1 $at, $f6
/* 10181C 8029820C 3C014448 */ li $at, 0x44480000 # 800.000000
/* 101820 80298210 44815000 */ mtc1 $at, $f10
/* 101824 80298214 46062200 */ add.s $f8, $f4, $f6
/* 101828 80298218 E488001C */ swc1 $f8, 0x1c($a0)
/* 10182C 8029821C C490001C */ lwc1 $f16, 0x1c($a0)
/* 101830 80298220 4610503C */ c.lt.s $f10, $f16
/* 101834 80298224 00000000 */ nop
/* 101838 80298228 4500003D */ bc1f .L80298320
/* 10183C 8029822C 00000000 */ nop
/* 101840 80298230 84980002 */ lh $t8, 2($a0)
/* 101844 80298234 37190800 */ ori $t9, $t8, 0x800
/* 101848 80298238 03E00008 */ jr $ra
/* 10184C 8029823C A4990002 */ sh $t9, 2($a0)
.L80298240:
/* 101850 80298240 84880004 */ lh $t0, 4($a0)
/* 101854 80298244 24020001 */ li $v0, 1
/* 101858 80298248 24030006 */ li $v1, 6
/* 10185C 8029824C 5448000D */ bnel $v0, $t0, .L80298284
/* 101860 80298250 A4800024 */ sh $zero, 0x24($a0)
/* 101864 80298254 84890024 */ lh $t1, 0x24($a0)
/* 101868 80298258 24030006 */ li $v1, 6
/* 10186C 8029825C 252A0001 */ addiu $t2, $t1, 1
/* 101870 80298260 A48A0024 */ sh $t2, 0x24($a0)
/* 101874 80298264 848B0024 */ lh $t3, 0x24($a0)
/* 101878 80298268 2961003D */ slti $at, $t3, 0x3d
/* 10187C 8029826C 14200002 */ bnez $at, .L80298278
/* 101880 80298270 00000000 */ nop
/* 101884 80298274 A4830024 */ sh $v1, 0x24($a0)
.L80298278:
/* 101888 80298278 10000002 */ b .L80298284
/* 10188C 8029827C 24030006 */ li $v1, 6
/* 101890 80298280 A4800024 */ sh $zero, 0x24($a0)
.L80298284:
/* 101894 80298284 848C0006 */ lh $t4, 6($a0)
/* 101898 80298288 544C000B */ bnel $v0, $t4, .L802982B8
/* 10189C 8029828C A4800026 */ sh $zero, 0x26($a0)
/* 1018A0 80298290 848D0026 */ lh $t5, 0x26($a0)
/* 1018A4 80298294 25AE0001 */ addiu $t6, $t5, 1
/* 1018A8 80298298 A48E0026 */ sh $t6, 0x26($a0)
/* 1018AC 8029829C 848F0026 */ lh $t7, 0x26($a0)
/* 1018B0 802982A0 29E1003D */ slti $at, $t7, 0x3d
/* 1018B4 802982A4 54200005 */ bnel $at, $zero, .L802982BC
/* 1018B8 802982A8 84980008 */ lh $t8, 8($a0)
/* 1018BC 802982AC 10000002 */ b .L802982B8
/* 1018C0 802982B0 A4830026 */ sh $v1, 0x26($a0)
/* 1018C4 802982B4 A4800026 */ sh $zero, 0x26($a0)
.L802982B8:
/* 1018C8 802982B8 84980008 */ lh $t8, 8($a0)
.L802982BC:
/* 1018CC 802982BC 5458000B */ bnel $v0, $t8, .L802982EC
/* 1018D0 802982C0 A4800028 */ sh $zero, 0x28($a0)
/* 1018D4 802982C4 84990028 */ lh $t9, 0x28($a0)
/* 1018D8 802982C8 27280001 */ addiu $t0, $t9, 1
/* 1018DC 802982CC A4880028 */ sh $t0, 0x28($a0)
/* 1018E0 802982D0 84890028 */ lh $t1, 0x28($a0)
/* 1018E4 802982D4 2921003D */ slti $at, $t1, 0x3d
/* 1018E8 802982D8 54200005 */ bnel $at, $zero, .L802982F0
/* 1018EC 802982DC 848A000A */ lh $t2, 0xa($a0)
/* 1018F0 802982E0 10000002 */ b .L802982EC
/* 1018F4 802982E4 A4830028 */ sh $v1, 0x28($a0)
/* 1018F8 802982E8 A4800028 */ sh $zero, 0x28($a0)
.L802982EC:
/* 1018FC 802982EC 848A000A */ lh $t2, 0xa($a0)
.L802982F0:
/* 101900 802982F0 544A000B */ bnel $v0, $t2, .L80298320
/* 101904 802982F4 A480002A */ sh $zero, 0x2a($a0)
/* 101908 802982F8 848B002A */ lh $t3, 0x2a($a0)
/* 10190C 802982FC 256C0001 */ addiu $t4, $t3, 1
/* 101910 80298300 A48C002A */ sh $t4, 0x2a($a0)
/* 101914 80298304 848D002A */ lh $t5, 0x2a($a0)
/* 101918 80298308 29A1003D */ slti $at, $t5, 0x3d
/* 10191C 8029830C 14200004 */ bnez $at, .L80298320
/* 101920 80298310 00000000 */ nop
/* 101924 80298314 03E00008 */ jr $ra
/* 101928 80298318 A483002A */ sh $v1, 0x2a($a0)
/* 10192C 8029831C A480002A */ sh $zero, 0x2a($a0)
.L80298320:
/* 101930 80298320 03E00008 */ jr $ra
/* 101934 80298324 00000000 */ nop
@@ -1,38 +0,0 @@
glabel update_obj_railroad_crossing
/* 1040E8 8029AAD8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1040EC 8029AADC AFBF0014 */ sw $ra, 0x14($sp)
/* 1040F0 8029AAE0 848E0006 */ lh $t6, 6($a0)
/* 1040F4 8029AAE4 3C188016 */ lui $t8, %hi(D_801637B8) # 0x8016
/* 1040F8 8029AAE8 00803825 */ move $a3, $a0
/* 1040FC 8029AAEC 000E7840 */ sll $t7, $t6, 1
/* 104100 8029AAF0 030FC021 */ addu $t8, $t8, $t7
/* 104104 8029AAF4 971837B8 */ lhu $t8, %lo(D_801637B8)($t8) # 0x37b8($t8)
/* 104108 8029AAF8 53000016 */ beql $t8, $zero, .L8029AB54
/* 10410C 8029AAFC 8FBF0014 */ lw $ra, 0x14($sp)
/* 104110 8029AB00 84990004 */ lh $t9, 4($a0)
/* 104114 8029AB04 3C061901 */ lui $a2, (0x19017016 >> 16) # lui $a2, 0x1901
/* 104118 8029AB08 24090001 */ li $t1, 1
/* 10411C 8029AB0C 27280001 */ addiu $t0, $t9, 1
/* 104120 8029AB10 A4880004 */ sh $t0, 4($a0)
/* 104124 8029AB14 84820004 */ lh $v0, 4($a0)
/* 104128 8029AB18 34C67016 */ ori $a2, (0x19017016 & 0xFFFF) # ori $a2, $a2, 0x7016
/* 10412C 8029AB1C 24E50024 */ addiu $a1, $a3, 0x24
/* 104130 8029AB20 28410029 */ slti $at, $v0, 0x29
/* 104134 8029AB24 54200004 */ bnel $at, $zero, .L8029AB38
/* 104138 8029AB28 24010001 */ li $at, 1
/* 10413C 8029AB2C A4890004 */ sh $t1, 4($a0)
/* 104140 8029AB30 84820004 */ lh $v0, 4($a0)
/* 104144 8029AB34 24010001 */ li $at, 1
.L8029AB38:
/* 104148 8029AB38 10410003 */ beq $v0, $at, .L8029AB48
/* 10414C 8029AB3C 24010014 */ li $at, 20
/* 104150 8029AB40 54410004 */ bnel $v0, $at, .L8029AB54
/* 104154 8029AB44 8FBF0014 */ lw $ra, 0x14($sp)
.L8029AB48:
/* 104158 8029AB48 0C03262E */ jal func_800C98B8
/* 10415C 8029AB4C 24E40018 */ addiu $a0, $a3, 0x18
/* 104160 8029AB50 8FBF0014 */ lw $ra, 0x14($sp)
.L8029AB54:
/* 104164 8029AB54 27BD0018 */ addiu $sp, $sp, 0x18
/* 104168 8029AB58 03E00008 */ jr $ra
/* 10416C 8029AB5C 00000000 */ nop
@@ -1,5 +0,0 @@
glabel update_obj_wario_stadium_sign
/* 1040D8 8029AAC8 848E0012 */ lh $t6, 0x12($a0)
/* 1040DC 8029AACC 25CF00B6 */ addiu $t7, $t6, 0xb6
/* 1040E0 8029AAD0 03E00008 */ jr $ra
/* 1040E4 8029AAD4 A48F0012 */ sh $t7, 0x12($a0)
@@ -1,149 +0,0 @@
glabel update_simple_objects
/* 10CB58 802A3548 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 10CB5C 802A354C AFB00018 */ sw $s0, 0x18($sp)
/* 10CB60 802A3550 3C108016 */ lui $s0, %hi(D_8015F9B8) # $s0, 0x8016
/* 10CB64 802A3554 AFBF001C */ sw $ra, 0x1c($sp)
/* 10CB68 802A3558 2610F9B8 */ addiu $s0, %lo(D_8015F9B8) # addiu $s0, $s0, -0x648
/* 10CB6C 802A355C 860E0002 */ lh $t6, 2($s0)
.L802A3560:
/* 10CB70 802A3560 11C00063 */ beqz $t6, .L802A36F0
/* 10CB74 802A3564 00000000 */ nop
/* 10CB78 802A3568 860F0000 */ lh $t7, ($s0)
/* 10CB7C 802A356C 25F8FFFE */ addiu $t8, $t7, -2
/* 10CB80 802A3570 2F01002C */ sltiu $at, $t8, 0x2c
/* 10CB84 802A3574 1020005E */ beqz $at, .L802A36F0
/* 10CB88 802A3578 0018C080 */ sll $t8, $t8, 2
/* 10CB8C 802A357C 3C01802C */ lui $at, %hi(jpt_802B9AF4)
/* 10CB90 802A3580 00380821 */ addu $at, $at, $t8
/* 10CB94 802A3584 8C389AF4 */ lw $t8, %lo(jpt_802B9AF4)($at)
/* 10CB98 802A3588 03000008 */ jr $t8
/* 10CB9C 802A358C 00000000 */ nop
glabel L802A3590
/* 10CBA0 802A3590 0C0A7462 */ jal update_obj_falling_rocks
/* 10CBA4 802A3594 02002025 */ move $a0, $s0
/* 10CBA8 802A3598 10000055 */ b .L802A36F0
/* 10CBAC 802A359C 00000000 */ nop
glabel L802A35A0
/* 10CBB0 802A35A0 0C0ACCB1 */ jal update_obj_green_shell
/* 10CBB4 802A35A4 02002025 */ move $a0, $s0
/* 10CBB8 802A35A8 10000051 */ b .L802A36F0
/* 10CBBC 802A35AC 00000000 */ nop
glabel L802A35B0
/* 10CBC0 802A35B0 0C0AD086 */ jal update_obj_red_blue_shell
/* 10CBC4 802A35B4 02002025 */ move $a0, $s0
/* 10CBC8 802A35B8 1000004D */ b .L802A36F0
/* 10CBCC 802A35BC 00000000 */ nop
glabel L802A35C0
/* 10CBD0 802A35C0 0C0AD086 */ jal update_obj_red_blue_shell
/* 10CBD4 802A35C4 02002025 */ move $a0, $s0
/* 10CBD8 802A35C8 10000049 */ b .L802A36F0
/* 10CBDC 802A35CC 00000000 */ nop
glabel L802A35D0
/* 10CBE0 802A35D0 0C0A5F57 */ jal update_obj_kiwano_fruit
/* 10CBE4 802A35D4 02002025 */ move $a0, $s0
/* 10CBE8 802A35D8 10000045 */ b .L802A36F0
/* 10CBEC 802A35DC 00000000 */ nop
glabel L802A35E0
/* 10CBF0 802A35E0 0C0AC80D */ jal update_obj_banana
/* 10CBF4 802A35E4 02002025 */ move $a0, $s0
/* 10CBF8 802A35E8 10000041 */ b .L802A36F0
/* 10CBFC 802A35EC 00000000 */ nop
glabel L802A35F0
/* 10CC00 802A35F0 0C0A605B */ jal update_obj_paddle_wheel
/* 10CC04 802A35F4 02002025 */ move $a0, $s0
/* 10CC08 802A35F8 1000003D */ b .L802A36F0
/* 10CC0C 802A35FC 00000000 */ nop
glabel L802A3600
/* 10CC10 802A3600 0C0A605F */ jal update_obj_train_engine
/* 10CC14 802A3604 02002025 */ move $a0, $s0
/* 10CC18 802A3608 10000039 */ b .L802A36F0
/* 10CC1C 802A360C 00000000 */ nop
glabel L802A3610
/* 10CC20 802A3610 0C0A6073 */ jal update_obj_train_car1
/* 10CC24 802A3614 02002025 */ move $a0, $s0
/* 10CC28 802A3618 10000035 */ b .L802A36F0
/* 10CC2C 802A361C 00000000 */ nop
glabel L802A3620
/* 10CC30 802A3620 0C0A6077 */ jal update_obj_train_car2
/* 10CC34 802A3624 02002025 */ move $a0, $s0
/* 10CC38 802A3628 10000031 */ b .L802A36F0
/* 10CC3C 802A362C 00000000 */ nop
glabel L802A3630
/* 10CC40 802A3630 0C0A8580 */ jal update_obj_item_box
/* 10CC44 802A3634 02002025 */ move $a0, $s0
/* 10CC48 802A3638 1000002D */ b .L802A36F0
/* 10CC4C 802A363C 00000000 */ nop
glabel L802A3640
/* 10CC50 802A3640 0C0A855B */ jal update_obj_item_box_hot_air_balloon
/* 10CC54 802A3644 02002025 */ move $a0, $s0
/* 10CC58 802A3648 10000029 */ b .L802A36F0
/* 10CC5C 802A364C 00000000 */ nop
glabel L802A3650
/* 10CC60 802A3650 0C0A843C */ jal update_obj_fake_item_box
/* 10CC64 802A3654 02002025 */ move $a0, $s0
/* 10CC68 802A3658 10000025 */ b .L802A36F0
/* 10CC6C 802A365C 00000000 */ nop
glabel L802A3660
/* 10CC70 802A3660 0C0A607B */ jal update_obj_piranha_plant
/* 10CC74 802A3664 02002025 */ move $a0, $s0
/* 10CC78 802A3668 10000021 */ b .L802A36F0
/* 10CC7C 802A366C 00000000 */ nop
glabel L802A3670
/* 10CC80 802A3670 0C0AC28A */ jal update_obj_banana_bunch
/* 10CC84 802A3674 02002025 */ move $a0, $s0
/* 10CC88 802A3678 1000001D */ b .L802A36F0
/* 10CC8C 802A367C 00000000 */ nop
glabel L802A3680
/* 10CC90 802A3680 02002025 */ move $a0, $s0
/* 10CC94 802A3684 0C0AC3A6 */ jal update_obj_triple_shell
/* 10CC98 802A3688 24050007 */ li $a1, 7
/* 10CC9C 802A368C 10000018 */ b .L802A36F0
/* 10CCA0 802A3690 00000000 */ nop
glabel L802A3694
/* 10CCA4 802A3694 02002025 */ move $a0, $s0
/* 10CCA8 802A3698 0C0AC3A6 */ jal update_obj_triple_shell
/* 10CCAC 802A369C 24050008 */ li $a1, 8
/* 10CCB0 802A36A0 10000013 */ b .L802A36F0
/* 10CCB4 802A36A4 00000000 */ nop
glabel L802A36A8
/* 10CCB8 802A36A8 0C0A6AD8 */ jal update_obj_mario_raceway_sign
/* 10CCBC 802A36AC 02002025 */ move $a0, $s0
/* 10CCC0 802A36B0 1000000F */ b .L802A36F0
/* 10CCC4 802A36B4 00000000 */ nop
glabel L802A36B8
/* 10CCC8 802A36B8 0C0A6AB2 */ jal update_obj_wario_stadium_sign
/* 10CCCC 802A36BC 02002025 */ move $a0, $s0
/* 10CCD0 802A36C0 1000000B */ b .L802A36F0
/* 10CCD4 802A36C4 00000000 */ nop
glabel L802A36C8
/* 10CCD8 802A36C8 0C0A6AB6 */ jal update_obj_railroad_crossing
/* 10CCDC 802A36CC 02002025 */ move $a0, $s0
/* 10CCE0 802A36D0 10000007 */ b .L802A36F0
/* 10CCE4 802A36D4 00000000 */ nop
glabel L802A36D8
/* 10CCE8 802A36D8 0C0A5F41 */ jal update_obj_trees_cacti_shrubs
/* 10CCEC 802A36DC 02002025 */ move $a0, $s0
/* 10CCF0 802A36E0 10000003 */ b .L802A36F0
/* 10CCF4 802A36E4 00000000 */ nop
glabel L802A36E8
/* 10CCF8 802A36E8 0C0A5EFF */ jal update_obj_yoshi_valley_egg
/* 10CCFC 802A36EC 02002025 */ move $a0, $s0
.L802A36F0:
glabel L802A36F0
/* 10CD00 802A36F0 3C198016 */ lui $t9, %hi(D_80162578) # $t9, 0x8016
/* 10CD04 802A36F4 27392578 */ addiu $t9, %lo(D_80162578) # addiu $t9, $t9, 0x2578
/* 10CD08 802A36F8 26100070 */ addiu $s0, $s0, 0x70
/* 10CD0C 802A36FC 5619FF98 */ bnel $s0, $t9, .L802A3560
/* 10CD10 802A3700 860E0002 */ lh $t6, 2($s0)
/* 10CD14 802A3704 0C0A8391 */ jal func_802A0E44
/* 10CD18 802A3708 00000000 */ nop
/* 10CD1C 802A370C 0C0ACC3B */ jal func_802B30EC
/* 10CD20 802A3710 00000000 */ nop
/* 10CD24 802A3714 8FBF001C */ lw $ra, 0x1c($sp)
/* 10CD28 802A3718 8FB00018 */ lw $s0, 0x18($sp)
/* 10CD2C 802A371C 27BD0020 */ addiu $sp, $sp, 0x20
/* 10CD30 802A3720 03E00008 */ jr $ra
/* 10CD34 802A3724 00000000 */ nop
/* 10CD38 802A3728 00000000 */ nop
/* 10CD3C 802A372C 00000000 */ nop
-43
View File
@@ -1,43 +0,0 @@
glabel func_802ABEAC
/* 1154BC 802ABEAC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 1154C0 802ABEB0 AFBF0014 */ sw $ra, 0x14($sp)
/* 1154C4 802ABEB4 948E0004 */ lhu $t6, 4($a0)
/* 1154C8 802ABEB8 24020001 */ li $v0, 1
/* 1154CC 802ABEBC 544E0009 */ bnel $v0, $t6, .L802ABEE4
/* 1154D0 802ABEC0 948F0000 */ lhu $t7, ($a0)
/* 1154D4 802ABEC4 C4AC0000 */ lwc1 $f12, ($a1)
/* 1154D8 802ABEC8 C4AE0004 */ lwc1 $f14, 4($a1)
/* 1154DC 802ABECC 8CA60008 */ lw $a2, 8($a1)
/* 1154E0 802ABED0 0C0AAF8C */ jal func_802ABE30
/* 1154E4 802ABED4 9487000A */ lhu $a3, 0xa($a0)
/* 1154E8 802ABED8 10000017 */ b .L802ABF38
/* 1154EC 802ABEDC 8FBF0014 */ lw $ra, 0x14($sp)
/* 1154F0 802ABEE0 948F0000 */ lhu $t7, ($a0)
.L802ABEE4:
/* 1154F4 802ABEE4 544F0009 */ bnel $v0, $t7, .L802ABF0C
/* 1154F8 802ABEE8 94980002 */ lhu $t8, 2($a0)
/* 1154FC 802ABEEC C4AC0000 */ lwc1 $f12, ($a1)
/* 115500 802ABEF0 C4AE0004 */ lwc1 $f14, 4($a1)
/* 115504 802ABEF4 8CA60008 */ lw $a2, 8($a1)
/* 115508 802ABEF8 0C0AAF8C */ jal func_802ABE30
/* 11550C 802ABEFC 94870006 */ lhu $a3, 6($a0)
/* 115510 802ABF00 1000000D */ b .L802ABF38
/* 115514 802ABF04 8FBF0014 */ lw $ra, 0x14($sp)
/* 115518 802ABF08 94980002 */ lhu $t8, 2($a0)
.L802ABF0C:
/* 11551C 802ABF0C 54580009 */ bnel $v0, $t8, .L802ABF34
/* 115520 802ABF10 C4A00004 */ lwc1 $f0, 4($a1)
/* 115524 802ABF14 C4AC0000 */ lwc1 $f12, ($a1)
/* 115528 802ABF18 C4AE0004 */ lwc1 $f14, 4($a1)
/* 11552C 802ABF1C 8CA60008 */ lw $a2, 8($a1)
/* 115530 802ABF20 0C0AAF8C */ jal func_802ABE30
/* 115534 802ABF24 94870008 */ lhu $a3, 8($a0)
/* 115538 802ABF28 10000003 */ b .L802ABF38
/* 11553C 802ABF2C 8FBF0014 */ lw $ra, 0x14($sp)
/* 115540 802ABF30 C4A00004 */ lwc1 $f0, 4($a1)
.L802ABF34:
/* 115544 802ABF34 8FBF0014 */ lw $ra, 0x14($sp)
.L802ABF38:
/* 115548 802ABF38 27BD0018 */ addiu $sp, $sp, 0x18
/* 11554C 802ABF3C 03E00008 */ jr $ra
/* 115550 802ABF40 00000000 */ nop
+13 -13
View File
@@ -73,26 +73,26 @@ glabel D_802B8848 # struct
.hword 0000 # fill
glabel D_802B8850
.word 0, 0, 0
#glabel D_802B8850
#.word 0, 0, 0
glabel D_802B885C
.hword 0, 0, 0
#glabel D_802B885C
#.hword 0, 0, 0
.hword 0000 # fill
#.hword 0000 # fill
glabel D_802B8864
.hword 0, 0, 0
#glabel D_802B8864
#.hword 0, 0, 0
.hword 0000 # fill
#.hword 0000 # fill
glabel D_802B886C
.hword 0, 0, 0
#glabel D_802B886C
#.hword 0, 0, 0
.hword 0000 # fill
#.hword 0000 # fill
glabel D_802B8874
.float 0.0, 5.0, 10.0
#glabel D_802B8874
#.float 0.0, 5.0, 10.0
#glabel D_802B8880 # Vp viewport
#.hword 640, 480, 511, 0
+40 -355
View File
@@ -554,358 +554,43 @@ glabel D_802B9A28
glabel D_802B9A2C
.float 16000000.0
glabel D_802B9A30
.float 640000.0
glabel D_802B9A34
.float 16000000.0
glabel D_802B9A38
.float 4000000.0
glabel D_802B9A3C
.float 4000000.0
glabel D_802B9A40
.float 250000.0
glabel jpt_802B9A44
.word L802A31E4, L802A31FC, L802A3214, L802A32EC
.word L802A3318, L802A3330, L802A3348, L802A34C0
.word L802A3378, L802A34D4, L802A34D4, L802A34D4
.word L802A34D4, L802A3390, L802A33A4, L802A33B8
.word L802A33CC, L802A322C, L802A33E4, L802A34D4
.word L802A34D4, L802A33FC, L802A34D4, L802A3428
.word L802A3244, L802A34D4, L802A325C, L802A328C
.word L802A32A4, L802A32BC, L802A32D4, L802A3274
.word L802A34D4, L802A3414, L802A34D4, L802A345C
.word L802A3440, L802A34AC, L802A3470, L802A3484
.word L802A3360, L802A34D4, L802A3498, L802A3300
glabel jpt_802B9AF4
.word L802A36D8, L802A36D8, L802A36D8, L802A3590
.word L802A35E0, L802A35A0, L802A35B0, L802A36E8
.word L802A3660, L802A36F0, L802A3630, L802A3650
.word L802A3670, L802A3600, L802A3610, L802A3620
.word L802A36F0, L802A36D8, L802A36F0, L802A3680
.word L802A3694, L802A36A8, L802A36F0, L802A36D8
.word L802A36D8, L802A36D8, L802A36D8, L802A36D8
.word L802A36D8, L802A36D8, L802A36D8, L802A36D8
.word L802A36F0, L802A36B8, L802A36F0, L802A36F0
.word L802A35F0, L802A36C8, L802A36F0, L802A36F0
.word L802A35C0, L802A3640, L802A36F0, L802A35D0
.word 0, 0, 0
glabel D_802B9BB0
.float 30000.0
glabel D_802B9BB4
.float 6800.0
glabel jtbl_802B9BB8
.word L802A4E04, L802A4D98, L802A4D74, L802A4D74
.word L802A4E04, L802A4E04, L802A4DBC, L802A4E04
.word L802A4E04, L802A4E04, L802A4E04, L802A4E28
.word L802A4E04, L802A4D74, L802A4DE0, L802A4D74
.word L802A4D74, L802A4D98, L802A4E04
glabel D_802B9C04
.float 2700.0
glabel D_802B9C08
.float 1500.0
glabel D_802B9C0C
.float 5000.0
glabel D_802B9C10
.float 4500.0
glabel D_802B9C14
.float 7000.0
glabel D_802B9C18
.float 6800.0
glabel D_802B9C1C
.float 1.3333333730697632
glabel D_802B9C20
.float 0.6666666865348816
glabel D_802B9C24
.float 2.6666667461395264
glabel D_802B9C28
.float 1.3333333730697632
.word 0
glabel jpt_802B9C30
.word L802A8FE0, L802A9014, L802A902C, L802A9044
.word L802A9060, L802A907C, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A8FF8
glabel jpt_802B9C7C
.word L802A9250, L802A9268, L802A9280, L802A9298
.word L802A92B4, L802A92D0
glabel jpt_802B9C94
.word L802A9BB8, L802A9BDC, L802A9C00
.word L802A9C24, L802A9C48, L802A9C6C, L802A9C90
.word L802A9CB4, L802A9CD8, L802A9CFC, L802A9D20
.word L802A9D44, L802A9D68, L802A9D8C, L802A9DB0
.word L802A9DD4, L802A9DF8, L802A9E1C, L802A9E40
.word L802A9E64, L802A9E88, L802A9EAC, L802A9EC8
.word L802A9EE4, L802A9F38, L802A9F54, L802A9FC4
.word L802AA00C, L802AA030, L802AA054, L802AA078
.word L802AA09C, L802AA0C0, L802AA0E4, L802AA108
.word L802AA12C, L802AA150, L802AA174, L802AA198
.word L802AA1BC, L802AA1E0, L802AA684, L802AA714
.word L802AA780, L802A9FE8, L802AA6F0, L802A9F00
.word L802A9F70, L802AA6CC, L802A9B74, L802A9B74
.word L802AA204, L802AA228, L802AA24C, L802AA270
.word L802AA294, L802AA2B8, L802AA2DC, L802AA300
.word L802AA324, L802AA348, L802AA36C, L802AA390
.word L802AA3B4, L802AA3D8, L802AA3FC, L802AA420
.word L802AA444, L802AA468, L802AA48C, L802AA4B0
.word L802AA4D4, L802AA4F8, L802AA51C, L802AA540
.word L802AA564, L802AA588, L802AA5AC, L802AA5D0
.word L802AA5F4, L802AA618, L802AA63C, L802AA660
.word L802A9F1C, L802A9F8C, L802A9FA8, L802AA738
.word L802AA75C, L802AA6A8
.word 0, 0
glabel D_802B9E00
.float 1859.0
glabel D_802B9E04
.float 1549.0
glabel D_802B9E08
.float -1102.0
glabel D_802B9E0C
.float -1402.0
glabel D_802B9E10
.float 2405.0
glabel D_802B9E14
.float 2233.0
glabel D_802B9E18
.float 0.8
glabel D_802B9E1C
.float -475.0
glabel D_802B9E20
.float -33.9
glabel D_802B9E24
.float -838.0
glabel D_802B9E28
.float -475.0
glabel D_802B9E2C
.float -475.0
glabel D_802B9E30
.float -993.0
glabel D_802B9E34
.float -33.9
glabel D_802B9E38
.float -475.0
glabel D_802B9E3C
.float -33.9
glabel D_802B9E40
.float -475.0
glabel D_802B9E44
.float -33.9
glabel D_802B9E48
.float -0.9
glabel D_802B9E4C
.float -3000.0
glabel D_802B9E50
.float 3000.0
glabel D_802B9E54
.float 3000.0
glabel D_802B9E58
.float 3000.0
glabel D_802B9E5C
.float 3000.0
glabel D_802B9E60
.float 3000.0
glabel D_802B9E64
.float -0.9
glabel D_802B9E68
.float 0.9
glabel D_802B9E6C
.float 0.1
glabel D_802B9E70
.float -0.1
.word 0, 0, 0
glabel D_802B9E80
.double 0.015
glabel D_802B9E88
.double 0.015
glabel D_802B9E90
.double 0.015
glabel jpt_802B9E98
.word L802B0A88, L802B0AB0, L802B0AF8, L802B0B40
.word L802B0B84, L802B0BCC, L802B0C70
glabel jpt_802B9EB4
.word L802B0EF4, L802B0F60, L802B1050, L802B1154
.word L802B11FC
glabel jpt_802B9EC8
.word L802B2094, L802B237C, L802B25A0, L802B2718
.word L802B28E8, L802B285C
glabel D_802B9EE0
.float 0.2
glabel D_802B9EE4
.float 0.15
glabel D_802B9EE8
.float 0.2
glabel D_802B9EEC
.float 0.2
glabel D_802B9EF0
.float 0.3
glabel jpt_802B9EF4
.word L802B2B0C, L802B2B20, L802B2B4C, L802B2B78
.word L802B2BA4
glabel jpt_802B9F08
.word L802B301C, L802B302C, L802B2FEC, L802B30BC
.word L802B2FFC, L802B30CC, L802B300C, L802B309C
.word L802B30AC, L802B308C, L802B307C, L802B303C
.word L802B304C, L802B305C, L802B306C
glabel jpt_802B9F44
.word L802B33CC, L802B3614, L802B382C, L802B3B30
.word L802B3974, L802B3AC4
glabel D_802B9F5C
.float 1.2
glabel D_802B9F60
.float 1.2
glabel D_802B9F64
.float 0.3
glabel D_802B9F68
.float 25000000.0
glabel jpt_802B9F6C
.word L802B4324, L802B44B0, L802B4750, L802B4A9C
.word L802B4AD8, L802B4B18, L802B4B94, L802B4CE4
.word L802B4D58, L802B4DE8
glabel D_802B9F94
.float 1.2
glabel D_802B9F98
.float 40000.0
glabel D_802B9F9C
.float 0.3
glabel D_802B9FA0
.float 40000.0
.word 0, 0, 0
glabel D_802B9FB0
.double 0.017453292222222222
glabel D_802B9FB8
.double 3.141592653589793
glabel D_802B9FC0
.double 360.0
glabel D_802B9FC8
.double 3.141592653589793
glabel D_802B9FD0
.double 360.0
glabel D_802B9FD8
.float 1000000.0
glabel D_802B9FDC
.float -0.01600503
glabel D_802B9FE0
.float 0.002834060
glabel D_802B9FE4
.float -0.074954450
glabel D_802B9FE8
.float 0.042587612
glabel D_802B9FEC
.float -0.142025709
glabel D_802B9FF0
.float 0.106367543
glabel D_802B9FF4
.float -0.333330661
glabel D_802B9FF8
.double 1.3375206719956623e-08
glabel D_802BA000
.double 1.5707963267948966
glabel D_802BA008
.double 1.5707963267948966
glabel D_802BA010
.double 50.123870849609375
glabel D_802BA018
.double 3.141592653589793
glabel D_802BA020
.double 3.141592653589793
glabel D_802BA028
.double 65535.0
#glabel D_802B9A30
#.float 640000.0
#glabel D_802B9A34
#.float 16000000.0
#glabel D_802B9A38
#.float 4000000.0
#glabel D_802B9A3C
#.float 4000000.0
#glabel D_802B9A40
#.float 250000.0
#glabel jpt_802B9A44
#.word L802A31E4, L802A31FC, L802A3214, L802A32EC
#.word L802A3318, L802A3330, L802A3348, L802A34C0
#.word L802A3378, L802A34D4, L802A34D4, L802A34D4
#.word L802A34D4, L802A3390, L802A33A4, L802A33B8
#.word L802A33CC, L802A322C, L802A33E4, L802A34D4
#.word L802A34D4, L802A33FC, L802A34D4, L802A3428
#.word L802A3244, L802A34D4, L802A325C, L802A328C
#.word L802A32A4, L802A32BC, L802A32D4, L802A3274
#.word L802A34D4, L802A3414, L802A34D4, L802A345C
#.word L802A3440, L802A34AC, L802A3470, L802A3484
#.word L802A3360, L802A34D4, L802A3498, L802A3300
#glabel jpt_802B9AF4
#.word L802A36D8, L802A36D8, L802A36D8, L802A3590
#.word L802A35E0, L802A35A0, L802A35B0, L802A36E8
#.word L802A3660, L802A36F0, L802A3630, L802A3650
#.word L802A3670, L802A3600, L802A3610, L802A3620
#.word L802A36F0, L802A36D8, L802A36F0, L802A3680
#.word L802A3694, L802A36A8, L802A36F0, L802A36D8
#.word L802A36D8, L802A36D8, L802A36D8, L802A36D8
#.word L802A36D8, L802A36D8, L802A36D8, L802A36D8
#.word L802A36F0, L802A36B8, L802A36F0, L802A36F0
#.word L802A35F0, L802A36C8, L802A36F0, L802A36F0
#.word L802A35C0, L802A3640, L802A36F0, L802A35D0
+322
View File
@@ -0,0 +1,322 @@
# Mario Kart 64 (U) disassembly and split file
# generated by n64split v0.4a - N64 ROM splitter
.include "macros.inc"
.section .data
#.word 0, 0, 0
glabel D_802B9BB0
.float 30000.0
glabel D_802B9BB4
.float 6800.0
glabel jtbl_802B9BB8
.word L802A4E04, L802A4D98, L802A4D74, L802A4D74
.word L802A4E04, L802A4E04, L802A4DBC, L802A4E04
.word L802A4E04, L802A4E04, L802A4E04, L802A4E28
.word L802A4E04, L802A4D74, L802A4DE0, L802A4D74
.word L802A4D74, L802A4D98, L802A4E04
glabel D_802B9C04
.float 2700.0
glabel D_802B9C08
.float 1500.0
glabel D_802B9C0C
.float 5000.0
glabel D_802B9C10
.float 4500.0
glabel D_802B9C14
.float 7000.0
glabel D_802B9C18
.float 6800.0
glabel D_802B9C1C
.float 1.3333333730697632
glabel D_802B9C20
.float 0.6666666865348816
glabel D_802B9C24
.float 2.6666667461395264
glabel D_802B9C28
.float 1.3333333730697632
.word 0
glabel jpt_802B9C30
.word L802A8FE0, L802A9014, L802A902C, L802A9044
.word L802A9060, L802A907C, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A9094, L802A9094
.word L802A9094, L802A9094, L802A8FF8
glabel jpt_802B9C7C
.word L802A9250, L802A9268, L802A9280, L802A9298
.word L802A92B4, L802A92D0
glabel jpt_802B9C94
.word L802A9BB8, L802A9BDC, L802A9C00
.word L802A9C24, L802A9C48, L802A9C6C, L802A9C90
.word L802A9CB4, L802A9CD8, L802A9CFC, L802A9D20
.word L802A9D44, L802A9D68, L802A9D8C, L802A9DB0
.word L802A9DD4, L802A9DF8, L802A9E1C, L802A9E40
.word L802A9E64, L802A9E88, L802A9EAC, L802A9EC8
.word L802A9EE4, L802A9F38, L802A9F54, L802A9FC4
.word L802AA00C, L802AA030, L802AA054, L802AA078
.word L802AA09C, L802AA0C0, L802AA0E4, L802AA108
.word L802AA12C, L802AA150, L802AA174, L802AA198
.word L802AA1BC, L802AA1E0, L802AA684, L802AA714
.word L802AA780, L802A9FE8, L802AA6F0, L802A9F00
.word L802A9F70, L802AA6CC, L802A9B74, L802A9B74
.word L802AA204, L802AA228, L802AA24C, L802AA270
.word L802AA294, L802AA2B8, L802AA2DC, L802AA300
.word L802AA324, L802AA348, L802AA36C, L802AA390
.word L802AA3B4, L802AA3D8, L802AA3FC, L802AA420
.word L802AA444, L802AA468, L802AA48C, L802AA4B0
.word L802AA4D4, L802AA4F8, L802AA51C, L802AA540
.word L802AA564, L802AA588, L802AA5AC, L802AA5D0
.word L802AA5F4, L802AA618, L802AA63C, L802AA660
.word L802A9F1C, L802A9F8C, L802A9FA8, L802AA738
.word L802AA75C, L802AA6A8
.word 0, 0
glabel D_802B9E00
.float 1859.0
glabel D_802B9E04
.float 1549.0
glabel D_802B9E08
.float -1102.0
glabel D_802B9E0C
.float -1402.0
glabel D_802B9E10
.float 2405.0
glabel D_802B9E14
.float 2233.0
glabel D_802B9E18
.float 0.8
glabel D_802B9E1C
.float -475.0
glabel D_802B9E20
.float -33.9
glabel D_802B9E24
.float -838.0
glabel D_802B9E28
.float -475.0
glabel D_802B9E2C
.float -475.0
glabel D_802B9E30
.float -993.0
glabel D_802B9E34
.float -33.9
glabel D_802B9E38
.float -475.0
glabel D_802B9E3C
.float -33.9
glabel D_802B9E40
.float -475.0
glabel D_802B9E44
.float -33.9
glabel D_802B9E48
.float -0.9
glabel D_802B9E4C
.float -3000.0
glabel D_802B9E50
.float 3000.0
glabel D_802B9E54
.float 3000.0
glabel D_802B9E58
.float 3000.0
glabel D_802B9E5C
.float 3000.0
glabel D_802B9E60
.float 3000.0
glabel D_802B9E64
.float -0.9
glabel D_802B9E68
.float 0.9
glabel D_802B9E6C
.float 0.1
glabel D_802B9E70
.float -0.1
.word 0, 0, 0
glabel D_802B9E80
.double 0.015
glabel D_802B9E88
.double 0.015
glabel D_802B9E90
.double 0.015
glabel jpt_802B9E98
.word L802B0A88, L802B0AB0, L802B0AF8, L802B0B40
.word L802B0B84, L802B0BCC, L802B0C70
glabel jpt_802B9EB4
.word L802B0EF4, L802B0F60, L802B1050, L802B1154
.word L802B11FC
glabel jpt_802B9EC8
.word L802B2094, L802B237C, L802B25A0, L802B2718
.word L802B28E8, L802B285C
glabel D_802B9EE0
.float 0.2
glabel D_802B9EE4
.float 0.15
glabel D_802B9EE8
.float 0.2
glabel D_802B9EEC
.float 0.2
glabel D_802B9EF0
.float 0.3
glabel jpt_802B9EF4
.word L802B2B0C, L802B2B20, L802B2B4C, L802B2B78
.word L802B2BA4
glabel jpt_802B9F08
.word L802B301C, L802B302C, L802B2FEC, L802B30BC
.word L802B2FFC, L802B30CC, L802B300C, L802B309C
.word L802B30AC, L802B308C, L802B307C, L802B303C
.word L802B304C, L802B305C, L802B306C
glabel jpt_802B9F44
.word L802B33CC, L802B3614, L802B382C, L802B3B30
.word L802B3974, L802B3AC4
glabel D_802B9F5C
.float 1.2
glabel D_802B9F60
.float 1.2
glabel D_802B9F64
.float 0.3
glabel D_802B9F68
.float 25000000.0
glabel jpt_802B9F6C
.word L802B4324, L802B44B0, L802B4750, L802B4A9C
.word L802B4AD8, L802B4B18, L802B4B94, L802B4CE4
.word L802B4D58, L802B4DE8
glabel D_802B9F94
.float 1.2
glabel D_802B9F98
.float 40000.0
glabel D_802B9F9C
.float 0.3
glabel D_802B9FA0
.float 40000.0
.word 0, 0, 0
glabel D_802B9FB0
.double 0.017453292222222222
glabel D_802B9FB8
.double 3.141592653589793
glabel D_802B9FC0
.double 360.0
glabel D_802B9FC8
.double 3.141592653589793
glabel D_802B9FD0
.double 360.0
glabel D_802B9FD8
.float 1000000.0
glabel D_802B9FDC
.float -0.01600503
glabel D_802B9FE0
.float 0.002834060
glabel D_802B9FE4
.float -0.074954450
glabel D_802B9FE8
.float 0.042587612
glabel D_802B9FEC
.float -0.142025709
glabel D_802B9FF0
.float 0.106367543
glabel D_802B9FF4
.float -0.333330661
glabel D_802B9FF8
.double 1.3375206719956623e-08
glabel D_802BA000
.double 1.5707963267948966
glabel D_802BA008
.double 1.5707963267948966
glabel D_802BA010
.double 50.123870849609375
glabel D_802BA018
.double 3.141592653589793
glabel D_802BA020
.double 3.141592653589793
glabel D_802BA028
.double 65535.0
+37 -170
View File
@@ -1,179 +1,46 @@
#include <ultra64.h>
#include <macros.h>
#include <common_structs.h>
// Made this because there will likely be a lot of structs in this file that will be compiled into one eventually.
// This keeps the other files cleaner.
struct choochoo {
s32 unk0;
s16 unk4;
s16 unk6;
s32 unk8;
struct piranha_plant {
/* 0x00 */ s16 unk0; // 0xC, 0xD, or 0x2B
#ifdef AVOID_UB
/* 0x02 */ u16 unk2;
#else
s16 unk2; // bitflag
#endif
/* 0x04 */ s16 unk4; // Timer?
/* 0x06 */ s16 unk6; // 1
/* 0x08 */ s16 unk8;
/* 0x0A */ s16 unkA;
/* 0x0C */ f32 unkC;
/* 0x10 */ Vec3s unk10; // Actor rotation
/* 0x18 */ s32 unk18;
/* 0x1C */ f32 unk1C;
/* 0x20 */ s16 unk20;
/* 0x22 */ s16 unk22;
/* 0x24 */ s16 unk24;
/* 0x26 */ s16 unk26;
/* 0x28 */ s16 unk28;
/* 0x2A */ s16 unk2A;
};
struct choochooTrain {
s32 unk0;
s16 unk4;
s16 unk6;
f32 unk8;
s32 unkC;
s32 unk10;
s32 unk14;
f32 unk18;
s32 unk1C;
s32 unk20;
f32 unk24;
s32 unk28;
s32 unk2C;
s32 unk2E;
s32 unk30;
s32 unk32;
s32 unk34;
s32 unk36;
s32 unk38;
};
struct UnkStruct_802976D8 {
s16 unk0;
s16 unk2;
s16 unk4;
};
// copied from player struct
struct bigboi {
/* 0x0000 */ f32 unk_000;
/* 0x0004 */ f32 unk_004;
/* 0x0008 */ f32 unk_008;
/* 0x000C */ s32 unk_00C;
/* 0x0010 */ char unk_010[0x4];
/* 0x0014 */ f32 posX;
/* 0x0018 */ f32 unk_018;
/* 0x001C */ f32 unk_01C;
/* 0x0020 */ f32 unk_020;
/* 0x0024 */ f32 rotY;
/* 0x0028 */ f32 rotZ;
/* 0x002C */ s16 unk_02C;
/* 0x002E */ s16 unk_02E;
/* 0x0030 */ s16 unk_030;
/* 0x0032 */ char unk_032[0x2];
/* 0x0034 */ f32 unk_034;
/* 0x0038 */ s16 unk_038;
s16 unk_03A;
/* 0x003C */ f32 unk_03C;
/* 0x0040 */ char unk_040[0x2];
/* 0x0042 */ s16 unk_042;
/* 0x0044 */ s16 unk_044;
/* 0x0046 */ s16 unk_046;
/* 0x0048 */ char unk_048[0x10];
/* 0x0058 */ f32 unk_058;
/* 0x005C */ f32 unk_05C;
/* 0x0060 */ f32 unk_060;
/* 0x0064 */ f32 unk_064;
/* 0x0068 */ f32 unk_068;
/* 0x006C */ f32 unk_06C;
/* 0x0070 */ f32 unk_070;
/* 0x0074 */ f32 unk_074;
/* 0x0078 */ s16 unk_078;
/* 0x007A */ s16 unk_07A;
/* 0x007C */ s32 unk_07C;
/* 0x0080 */ f32 unk_080;
/* 0x0084 */ f32 unk_084;
/* 0x0088 */ f32 unk_088;
/* 0x008C */ f32 unk_08C;
/* 0x0090 */ f32 unk_090;
/* 0x0094 */ f32 unk_094;
/* 0x0098 */ f32 unk_098;
/* 0x009C */ f32 unk_09C;
/* 0x00A0 */ f32 unk_0A0;
/* 0x00A4 */ f32 unk_0A4;
/* 0x00A8 */ s16 unk_0A8;
/* 0x00AA */ s16 unk_0AA;
/* 0x00AC */ s16 unk_0AC;
/* 0x00AE */ s16 unk_0AE;
/* 0x00B0 */ s16 unk_0B0;
/* 0x00B2 */ s16 unk_0B2;
/* 0x00B4 */ s16 unk_0B4;
/* 0x00B6 */ s16 unk_0B6;
/* 0x00B8 */ f32 unk_0B8;
/* 0x00BC */ s32 unk_0BC;
/* 0x00C0 */ s16 unk_0C0;
/* 0x00C2 */ s16 unk_0C2;
/* 0x00C4 */ s16 unk_0C4;
/* 0x00C6 */ s16 unk_0C6;
/* 0x00C8 */ s16 unk_0C8;
/* 0x00CA */ s16 unk_0CA;
/* 0x00CC */ char unk_0CC[0x10];
/* 0x00DC */ s16 unk_0DC;
/* 0x00DE */ s16 unk_0DE;
/* 0x00E0 */ s16 unk_0E0;
/* 0x00E2 */ s16 unk_0E2;
/* 0x00E4 */ f32 unk_0E4;
/* 0x00E8 */ f32 unk_0E8;
/* 0x00EC */ f32 unk_0EC;
/* 0x00F0 */ f32 unk_0F0;
/* 0x00F4 */ f32 unk_0F4;
/* 0x00F8 */ char unk_0F8[0x2];
/* 0x00FA */ s16 unk_0FA;
/* 0x00FC */ f32 unk_0FC;
/* 0x0100 */ f32 unk_100;
/* 0x0104 */ f32 unk_104;
/* 0x0108 */ f32 unk_108;
/* 0x010C */ s16 unk_10C;
/* 0x010E */ char unk_10E[0x2];
/* 0x0110 */ s16 unk_110;
/* 0x0112 */ s16 unk_112;
/* 0x0114 */ s16 unk_114;
/* 0x0116 */ s16 unk_116;
/* 0x0118 */ s16 unk_118;
/* 0x011A */ s16 unk_11A;
/* 0x011C */ f32 unk_11C;
/* 0x0120 */ f32 unk_120;
/* 0x0124 */ f32 unk_124;
/* 0x0128 */ f32 unk_128;
/* 0x012C */ f32 unk_12C;
/* 0x0130 */ f32 unk_130;
/* 0x0134 */ f32 unk_134;
/* 0x0138 */ f32 unk_138;
/* 0x013C */ f32 unk_13C;
/* 0x0140 */ f32 unk_140;
/* 0x0144 */ f32 unk_144;
/* 0x0148 */ f32 unk_148;
/* 0x014C */ char unk_14C[0x4];
/* 0x0150 */ f32 unk_150[9];
/* 0x0174 */ f32 unk_174[9];
/* 0x0198 */ f32 unk_198;
/* 0x019C */ f32 unk_19C;
/* 0x01A0 */ f32 unk_1A0;
/* 0x01A4 */ s8 unk_1A4;
/* 0x01A5 */ s8 unk_1A5;
/* 0x01A6 */ s16 unk_1A6;
/* 0x01A8 */ f32 unk_1A8;
/* 0x01AC */ s32 unk_1AC;
/* 0x01B0 */ f32 unk_1B0;
/* 0x01B4 */ f32 unk_1B4;
/* 0x01B8 */ f32 unk_1B8;
/* 0x01BC */ s8 unk_1BC;
/* 0x01BD */ s8 unk_1BD;
/* 0x01BE */ s16 unk_1BE;
/* 0x01C0 */ f32 unk_1C0;
/* 0x01C4 */ s32 unk_1C4;
/* 0x01C8 */ f32 unk_1C8;
/* 0x01CC */ f32 unk_1CC;
/* 0x01D0 */ f32 unk_1D0;
/* 0x01D4 */ s8 unk_1D4;
/* 0x01D5 */ s8 unk_1D5;
/* 0x01D6 */ s16 unk_1D6;
/* 0x01D8 */ f32 unk_1D8;
/* 0x01DC */ s32 unk_1DC;
/* 0x01E0 */ f32 unk_1E0;
/* 0x01E4 */ f32 unk_1E4;
/* 0x01E8 */ f32 unk_1E8;
/* 0x01EC */ s8 unk_1EC;
/* 0x01ED */ s8 unk_1ED;
/* 0x01EE */ s16 unk_1EE;
/* 0x01F0 */ f32 unk_1F0;
/* 0x01F4 */ s32 unk_1F4;
/* 0x01F8 */ f32 unk_1F8;
/* 0x01FC */ f32 unk_1FC;
struct Actor {
/* 0x00 */ s16 unk0; // 0xC, 0xD, or 0x2B
#ifdef AVOID_UB
/* 0x02 */ u16 unk2;
#else
s16 unk2; // bitflags
#endif
/* 0x04 */ s16 unk4; // Timer?
/* 0x06 */ s16 unk6; // 1 // train wheel rot?
/* 0x08 */ f32 unk8;
f32 unkC;
/* 0x0C */ Vec3s unk10; // Actor rotation
/* 0x18 */ Vec3f unk18;
/* 0x24 */ Vec3f unk24;
/* 0x30 */ UnkActorInner unk30;
};
+23 -28
View File
@@ -6,6 +6,7 @@
typedef f32 Vec3f[3];
typedef s16 Vec3s[3];
typedef s16 Vec4s[4];
typedef enum {
/* 0x00 */ COURSE_MARIO_RACEWAY = 0,
@@ -113,9 +114,7 @@ typedef struct {
f32 angleX;
f32 angleY;
f32 angleZ;
s16 rotX;
s16 rotX2;
s16 rotY; // unused?
Vec3s rotX;
s16 rotZ;
s32 unk3; // zero
s32 unk4; // 0x4119999A
@@ -159,9 +158,7 @@ typedef struct {
} Camera;
typedef struct {
/* 0x00 */ f32 unk_000;
/* 0x04 */ f32 unk_004;
/* 0x08 */ f32 unk_008;
/* 0x00 */ Vec3f unk_000;
/* 0x0C */ f32 unk_00C;
/* 0x10 */ u16 unk_010;
/* 0x12 */ u16 unk_012;
@@ -258,6 +255,24 @@ typedef struct {
#define BACK_LEFT_TYRE 2
#define BACK_RIGHT_TYRE 3
typedef struct {
/* 0x00 */ u16 unk30;
/* 0x02 */ u16 unk32;
/* 0x04 */ u16 unk34;
/* 0x06 */ u16 unk36;
/* 0x08 */ u16 unk38;
/* 0x0A */ u16 unk3A;
/* 0x0C */ f32 unk3C;
/* 0x10 */ f32 unk40;
/* 0x14 */ f32 unk44;
/* 0x18 */ Vec3f unk48;
/* 0x24 */ Vec3f unk54;
/* 0x30 */ Vec3f unk60;
/* 0x3C */ f32 unk6C;
} UnkActorInner;
typedef struct {
/* 0x0000 */ u16 unk_000;
/* 0x0002 */ u16 unk_002;
@@ -268,9 +283,7 @@ typedef struct {
/* 0x000C */ s32 unk_00C;
/* 0x0010 */ s16 unk_010;
/* 0x0012 */ s16 unk_012;
/* 0x0014 */ f32 posX;
/* 0x0018 */ f32 posY;
/* 0x001C */ f32 posZ;
/* 0x0014 */ Vec3f pos;
/* 0x0020 */ f32 rotX;
/* 0x0024 */ f32 rotY;
/* 0x0028 */ f32 rotZ;
@@ -341,25 +354,7 @@ typedef struct {
/* 0x0108 */ f32 unk_108;
/* 0x010C */ s16 unk_10C;
/* 0x010E */ char unk_10E[0x2];
/* 0x0110 */ s16 unk_110;
/* 0x0112 */ s16 unk_112;
/* 0x0114 */ s16 unk_114;
/* 0x0116 */ s16 unk_116;
/* 0x0118 */ s16 unk_118;
/* 0x011A */ s16 unk_11A;
/* 0x011C */ f32 unk_11C;
/* 0x0120 */ f32 unk_120;
/* 0x0124 */ f32 unk_124;
/* 0x0128 */ f32 unk_128;
/* 0x012C */ f32 unk_12C;
/* 0x0130 */ f32 unk_130;
/* 0x0134 */ f32 unk_134;
/* 0x0138 */ f32 unk_138;
/* 0x013C */ f32 unk_13C;
/* 0x0140 */ f32 unk_140;
/* 0x0144 */ f32 unk_144;
/* 0x0148 */ f32 unk_148;
/* 0x014C */ char unk_14C[0x4];
/* 0x0110 */ UnkActorInner unk_110;
/* 0x0150 */ f32 unk_150[9];
/* 0x0174 */ f32 unk_174[9];
/* 0x0198 */ KartBoundingBoxCorner boundingBoxCorners[4];
+1 -20
View File
@@ -6,6 +6,7 @@
typedef f32 Mat4[4][4];
enum SpTaskState {
SPTASK_STATE_NOT_STARTED,
SPTASK_STATE_RUNNING,
@@ -159,26 +160,6 @@ struct UnkStruct_800DDB40 {
u16 unk26;
};
// math util structs
struct UnkStruct_802B51E8 {
f32 unk0;
f32 unk4;
f32 unk8;
f32 unkC;
};
struct UnkStruct_802B52D8 {
f32 unk0;
f32 unk4;
f32 unk8;
};
struct UnkStruct_802B52BC {
s16 unk0;
s16 unk2;
s16 unk4;
};
struct UnkStruct_802B53C8 {
f32 unk0;
f32 unk4;
+3
View File
@@ -305,6 +305,7 @@ SECTIONS
BUILD_DIR/src/code_802B0210.o(.text);
BUILD_DIR/src/math_util.o(.text);
BUILD_DIR/data/data_121DA0.o(.data);
BUILD_DIR/src/code_80296A50.o(.data);
BUILD_DIR/src/code_802A3730.o(.data);
BUILD_DIR/src/memory.o(.data);
BUILD_DIR/data/data_121DA0_1.o(.data);
@@ -312,6 +313,8 @@ SECTIONS
BUILD_DIR/data/data_121DA0_2.o(.data);
BUILD_DIR/src/code_8028DF00.o(.rodata);
BUILD_DIR/data/data_121DA0_2_1.o(.data);
BUILD_DIR/src/code_80296A50.o(.rodata);
BUILD_DIR/data/data_121DA0_2_2.o(.data);
}
END_SEG(code_8028DF00)
+2 -1
View File
@@ -5242,7 +5242,8 @@ extern ? D_800EA1C8;
extern ? D_800EA1D4;
extern ? D_800EA1DC;
void func_800C98B8(s32 arg0, ? arg1, s32 arg2) {
// Precursor to play_sound
void func_800C98B8(Vec3f arg0, Vec3f arg1, u32 arg2) {
s32 temp_t0;
void *temp_v0;
s32 phi_s0;
+22 -22
View File
@@ -932,9 +932,9 @@ void func_8002934C(Player *player, s32 arg1, s8 arg2, s8 arg3) {
} else {
temp_v0 = phi_a3->unk244;
if ((temp_v0 >= 0) && (temp_v0 < 0x101)) {
phi_f0 = player->rotY - player->posY;
phi_f0 = player->rotY - player->pos[1];
} else {
phi_f0 = player->posY - player->rotY;
phi_f0 = player->pos[1] - player->rotY;
}
sp24 = phi_a3;
phi_a3->unkD4 = func_802B7C40(phi_f0 / phi_f2, 0x4000000) * 0.5;
@@ -1124,9 +1124,9 @@ void func_80029B4C(Player *player, f32 arg1, f32 arg2, f32 arg3) {
sp80 = player->boundingBoxCorners[0].cornerX;
sp84 = player->boundingBoxCorners[0].cornerY;
sp88 = player->boundingBoxCorners[0].cornerZ;
player->boundingBoxCorners[0].cornerX = sp8C + player->posX;
player->boundingBoxCorners[0].cornerY = sp90 + player->posY;
player->boundingBoxCorners[0].cornerZ = sp94 + player->posZ;
player->boundingBoxCorners[0].cornerX = sp8C + player->pos[0];
player->boundingBoxCorners[0].cornerY = sp90 + player->pos[1];
player->boundingBoxCorners[0].cornerZ = sp94 + player->pos[2];
func_802AFA34(player, player->boundingBoxCorners, sp80, sp84, sp88);
temp_f14 = -sp48;
temp_f2_2 = (f64) temp_f14;
@@ -1140,9 +1140,9 @@ void func_80029B4C(Player *player, f32 arg1, f32 arg2, f32 arg3) {
sp80 = player->boundingBoxCorners[1].cornerX;
sp84 = player->boundingBoxCorners[1].cornerY;
sp88 = player->boundingBoxCorners[1].cornerZ;
player->boundingBoxCorners[1].cornerX = sp8C + player->posX;
player->boundingBoxCorners[1].cornerY = sp90 + player->posY;
player->boundingBoxCorners[1].cornerZ = sp94 + player->posZ;
player->boundingBoxCorners[1].cornerX = sp8C + player->pos[0];
player->boundingBoxCorners[1].cornerY = sp90 + player->pos[1];
player->boundingBoxCorners[1].cornerZ = sp94 + player->pos[2];
func_802AFA34(player, &player->boundingBoxCorners[1], sp80, sp84, sp88);
temp_a0_3 = &sp8C;
temp_f12 = sp34 + 4.0f;
@@ -1154,9 +1154,9 @@ void func_80029B4C(Player *player, f32 arg1, f32 arg2, f32 arg3) {
sp80 = player->boundingBoxCorners[2].cornerX;
sp84 = player->boundingBoxCorners[2].cornerY;
sp88 = player->boundingBoxCorners[2].cornerZ;
player->boundingBoxCorners[2].cornerX = sp8C + player->posX;
player->boundingBoxCorners[2].cornerY = sp90 + player->posY;
player->boundingBoxCorners[2].cornerZ = sp94 + player->posZ;
player->boundingBoxCorners[2].cornerX = sp8C + player->pos[0];
player->boundingBoxCorners[2].cornerY = sp90 + player->pos[1];
player->boundingBoxCorners[2].cornerZ = sp94 + player->pos[2];
func_802AFA34(player, &player->boundingBoxCorners[2], sp80, sp84, sp88);
temp_a0_4 = &sp8C;
sp8C = (f32) (sp28 + 2.6);
@@ -1166,9 +1166,9 @@ void func_80029B4C(Player *player, f32 arg1, f32 arg2, f32 arg3) {
sp80 = player->boundingBoxCorners[3].cornerX;
sp84 = player->boundingBoxCorners[3].cornerY;
sp88 = player->boundingBoxCorners[3].cornerZ;
player->boundingBoxCorners[3].cornerX = sp8C + player->posX;
player->boundingBoxCorners[3].cornerY = sp90 + player->posY;
player->boundingBoxCorners[3].cornerZ = sp94 + player->posZ;
player->boundingBoxCorners[3].cornerX = sp8C + player->pos[0];
player->boundingBoxCorners[3].cornerY = sp90 + player->pos[1];
player->boundingBoxCorners[3].cornerZ = sp94 + player->pos[2];
func_802AFA34(player, &player->boundingBoxCorners[3], sp80, sp84, sp88);
if ((player->unk_0BC & 8) == 0) {
move_f32_towards(&player->unk_230, (player->boundingBoxCorners[0].cornerGroundY + player->boundingBoxCorners[2].cornerGroundY) / 2.0f, 0.5f);
@@ -1619,7 +1619,7 @@ void func_8002AB70(Player *player) {
move_f32_towards(&player->unk_DAC, 1.0f, 0.07f);
}
} else {
if (player->unk_124 >= 50.0f) {
if (player->unk_110.unk44 >= 50.0f) {
player->unk_DAC = 2.0f;
}
move_f32_towards(&player->unk_100, gKartGravityTable[player->characterId], 0.02f);
@@ -3207,10 +3207,10 @@ void func_8002D268(Player *player, s32 arg1, s8 arg2, s8 arg3) {
if ((temp_v0_5 & 0x10) == 0x10) {
player->unk_044 = temp_v0_5 & 0xFFEF;
}
temp_f0_7 = player->posX;
temp_f0_7 = player->pos[0];
spF0 = temp_f0_7;
temp_f2_7 = player->posZ;
temp_f12_6 = player->posY;
temp_f2_7 = player->pos[2];
temp_f12_6 = player->pos[1];
spE8 = temp_f2_7;
player->rotX = temp_f0_7;
player->rotZ = temp_f2_7;
@@ -3353,7 +3353,7 @@ void func_8002D268(Player *player, s32 arg1, s8 arg2, s8 arg3) {
player->posZ = spF4;
}
temp_v0_17 = player->unk_000;
player->posY = spF8;
player->pos[1] = spF8;
if (((temp_v0_17 & 0x4000) != 0) && ((temp_v0_17 & 0x1000) == 0)) {
func_8002BB9C(player, &spFC, &spF4, arg2, arg3, &sp98);
}
@@ -3404,9 +3404,9 @@ void func_8002E4C4(Player *player) {
player->kartHopJerk = 0.0f;
player->kartHopAcceleration = 0.0f;
player->kartHopVelocity = 0.0f;
player->posY = func_802AE1C0(player->posX, D_80164510[player_index] + 10.0f, player->posZ) + player->unk_070;
if (((player->posY - D_80164510[player_index]) > 1200.0f) || ((player->posY - D_80164510[player_index]) < -1200.0f)) {
player->posY = player->rotY;
player->pos[1] = func_802AE1C0(player->pos[0], D_80164510[player_index] + 10.0f, player->pos[2]) + player->unk_070;
if (((player->pos[1] - D_80164510[player_index]) > 1200.0f) || ((player->pos[1] - D_80164510[player_index]) < -1200.0f)) {
player->pos[1] = player->rotY;
}
player->unk_038 = 0.0f;
}
+36 -36
View File
@@ -49,10 +49,10 @@ void spawn_player(Player *player, s8 playerIndex, f32 arg2, f32 arg3, f32 arg4,
break;
}
player->posX = arg2;
player->pos[0] = arg2;
ret = func_802AE1C0(arg2, arg4 + 50.0f, arg3) + player->unk_070;
player->posZ = arg3;
player->posY = ret;
player->pos[2] = arg3;
player->pos[1] = ret;
player->rotX = arg2;
player->rotY = ret;
@@ -251,12 +251,12 @@ void spawn_player(Player *player, s8 playerIndex, f32 arg2, f32 arg3, f32 arg4,
player->boundingBoxCorners[BACK_LEFT_TYRE].unk_14 = 0;
player->boundingBoxCorners[BACK_RIGHT_TYRE].unk_14 = 0;
player->unk_110 = 0;
player->unk_112 = 0;
player->unk_114 = 0;
player->unk_116 = 0;
player->unk_118 = 0;
player->unk_11A = 0;
player->unk_110.unk30 = 0;
player->unk_110.unk32 = 0;
player->unk_110.unk34 = 0;
player->unk_110.unk36 = 0;
player->unk_110.unk38 = 0;
player->unk_110.unk3A = 0;
player->boundingBoxCorners[FRONT_LEFT_TYRE].cornerX = 0.0f;
player->boundingBoxCorners[FRONT_LEFT_TYRE].cornerY = 0.0f;
@@ -279,18 +279,18 @@ void spawn_player(Player *player, s8 playerIndex, f32 arg2, f32 arg3, f32 arg4,
player->boundingBoxCorners[BACK_LEFT_TYRE].cornerGroundY = 0.0f;
player->boundingBoxCorners[BACK_RIGHT_TYRE].cornerGroundY = 0.0f;
player->unk_11C = 0.0f;
player->unk_120 = 0.0f;
player->unk_124 = 0.0f;
player->unk_128 = 0.0f;
player->unk_12C = 0.0f;
player->unk_130 = 0.0f;
player->unk_134 = 0.0f;
player->unk_138 = 0.0f;
player->unk_13C = 0.0f;
player->unk_140 = 0.0f;
player->unk_144 = 0.0f;
player->unk_148 = 0.0f;
player->unk_110.unk3C = 0.0f;
player->unk_110.unk40 = 0.0f;
player->unk_110.unk44 = 0.0f;
player->unk_110.unk48[0] = 0.0f;
player->unk_110.unk48[1] = 0.0f;
player->unk_110.unk48[2] = 0.0f;
player->unk_110.unk54[0] = 0.0f;
player->unk_110.unk54[1] = 0.0f;
player->unk_110.unk54[2] = 0.0f;
player->unk_110.unk60[0] = 0.0f;
player->unk_110.unk60[1] = 0.0f;
player->unk_110.unk60[2] = 0.0f;
D_80165300[playerIndex] = 0;
D_8018CE10[playerIndex].unk_04 = 0.0f;
@@ -1115,17 +1115,17 @@ void func_8003D080(void) {
switch (gModeSelection) {
case GRAND_PRIX:
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 1, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 1, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 1, 1);
break;
case BATTLE:
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 9, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 9, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 9, 1);
break;
default:
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 1, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 1, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 1, 1);
break;
}
break;
@@ -1134,22 +1134,22 @@ void func_8003D080(void) {
if (gModeSelection == BATTLE) {
ptr = &gPlayerThree;
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 9, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 9, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 9, 1);
ptr++;
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 9, 2);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 9, 2);
ptr++;
if (gPlayerCountSelection1 == 4) {
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 9, 3);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 9, 3);
}
} else {
ptr = &gPlayerThree;
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 1, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 1, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 1, 1);
ptr++;
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 1, 2);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 1, 2);
ptr++;
if (gPlayerCountSelection1 == 4) {
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 1, 3);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 1, 3);
}
}
break;
@@ -1163,17 +1163,17 @@ void func_8003D080(void) {
case 1:
case 2:
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 3, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 3, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 3, 1);
break;
case 3:
ptr = &gPlayerThree;
func_8001C4D0(gPlayerOne->unk_0A4, gPlayerOne->unk_0A8, gPlayerOne->unk_0AC, gPlayerOne->unk_0BC, 3, 0);
func_8001C4D0(gPlayerTwo->posX, gPlayerTwo->posY, gPlayerTwo->posZ, gPlayerTwo->unk_02E, 3, 1);
func_8001C4D0(gPlayerTwo->pos[0], gPlayerTwo->pos[1], gPlayerTwo->pos[2], gPlayerTwo->unk_02E, 3, 1);
ptr++;
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 3, 2);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 3, 2);
ptr++;
func_8001C4D0(ptr->posX, ptr->posY, ptr->posZ, ptr->unk_02E, 3, 3);
func_8001C4D0(ptr->pos[0], ptr->pos[1], ptr->pos[2], ptr->unk_02E, 3, 3);
break;
}
}
@@ -1242,8 +1242,8 @@ void func_8003DB5C(void) {
Player *player = gPlayerOne;
s32 i;
func_8001C4D0(player->posX, player->posY, player->posZ, player->unk_02E, 3, 0);
func_8001C4D0(player->posX, player->posY, player->posZ, player->unk_02E, 3, 1);
func_8001C4D0(player->pos[0], player->pos[1], player->pos[2], player->unk_02E, 3, 0);
func_8001C4D0(player->pos[0], player->pos[1], player->pos[2], player->unk_02E, 3, 1);
for (i = 0; i < 8; i++, player++) {
func_80027A20(player, i, 1, 0);
-1
View File
@@ -192,7 +192,6 @@ UNUSED s32 s32_step_up_towards_alternate(s32 *value, s32 target, s32 *step) {
}
UNUSED s32 s32_step_down_towards_alternate(s32 *value, s32 target, s32 *step) {
s32 temp_t7;
s32 targetReached = 0;
if (target < *value) {
+101 -101
View File
@@ -919,9 +919,9 @@ void func_80059820(s32 playerId) {
D_8018CF14 = &camera1[playerId];
temp_v1 = D_8018CF1C;
temp_v0 = &D_8018CA70[playerId];
temp_v0->posXInt = (s32) temp_v1->posX;
temp_v0->posYInt = (s32) temp_v1->posY;
temp_v0->posZInt = (s32) temp_v1->posZ;
temp_v0->posXInt = (s32) temp_v1->pos[0];
temp_v0->posYInt = (s32) temp_v1->pos[1];
temp_v0->posZInt = (s32) temp_v1->pos[2];
}
#else
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80059820.s")
@@ -3184,9 +3184,9 @@ void func_8005D6C0(Player* arg0) {
}
void func_8005D794(Player* arg0, UnkPlayerStruct258* arg1, f32 arg2, f32 arg3, f32 arg4, s8 arg5, s8 arg6) {
arg1->unk_008 = arg4;
arg1->unk_000 = arg2;
arg1->unk_004 = arg3;
arg1->unk_000[2] = arg4;
arg1->unk_000[0] = arg2;
arg1->unk_000[1] = arg3;
arg1->unk_020 = -arg0->unk_02E;
arg1->unk_014 = arg5;
arg1->unk_010 = arg6;
@@ -4144,15 +4144,15 @@ void func_8005F90C(Player *player, s16 arg1, s32 arg2, s32 arg3) {
phi_t1 = 0;
if ((player->unk_0BC & 0x80) == 0x80) {
phi_v0 = (s32) player->boundingBoxCorners[2].surfaceType;
phi_f12 = player->posZ;
phi_f0 = player->posX;
phi_f2 = player->posY - player->unk_070;
phi_f12 = player->pos[2];
phi_f0 = player->pos[0];
phi_f2 = player->pos[1] - player->unk_070;
phi_t1 = 1;
} else {
phi_v0 = (s32) player->boundingBoxCorners[3].surfaceType;
phi_f12 = player->posZ;
phi_f0 = player->posX;
phi_f2 = player->posY - player->unk_070;
phi_f12 = player->pos[2];
phi_f0 = player->pos[0];
phi_f2 = player->pos[1] - player->unk_070;
}
switch (phi_v0) {
case 2:
@@ -4655,9 +4655,9 @@ void func_80060F50(Player* arg0, s16 arg1, UNUSED s8 arg2, s8 arg3) {
func_8005D800(&arg0->unk_258[arg1], 0xFFFFFF, 0xFF);
}
arg0->unk_258[arg1].unk_008 = (coss(arg0->unk_258[arg1].unk_020) * D_800EE5A8) + arg0->posZ;
arg0->unk_258[arg1].unk_000 = (sins(arg0->unk_258[arg1].unk_020) * D_800EE5B0) + arg0->posX;
arg0->unk_258[arg1].unk_004 = D_801652A0[arg3];
arg0->unk_258[arg1].unk_000[2] = arg0->pos[2] + (coss(arg0->unk_258[arg1].unk_020) * D_800EE5A8);
arg0->unk_258[arg1].unk_000[0] = arg0->pos[0] + (sins(arg0->unk_258[arg1].unk_020) * D_800EE5B0);
arg0->unk_258[arg1].unk_000[1] = D_801652A0[arg3];
arg0->unk_0DE &= ~0x0008;
}
@@ -4677,9 +4677,9 @@ void func_80061130(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
func_8005D7D8(&arg0->unk_258[arg1], 7, 0.6f);
func_8005D800(&arg0->unk_258[arg1], 0xFFFFFF, 0xD0);
arg0->unk_258[arg1].unk_008 = (coss(arg0->unk_258[arg1].unk_020) * 6.0f) + arg0->posZ;
arg0->unk_258[arg1].unk_000 = (sins(arg0->unk_258[arg1].unk_020) * 6.0f) + arg0->posX;
arg0->unk_258[arg1].unk_004 = arg0->posY - 5.0f;
arg0->unk_258[arg1].unk_000[2] = arg0->pos[2] +(coss(arg0->unk_258[arg1].unk_020) * 6.0f);
arg0->unk_258[arg1].unk_000[0] = arg0->pos[0] + (sins(arg0->unk_258[arg1].unk_020) * 6.0f);
arg0->unk_258[arg1].unk_000[1] = arg0->pos[1] - 5.0f;
arg0->unk_258[arg1].unk_040 = 0;
arg0->unk_258[arg1].unk_024 = 0.0f;
}
@@ -5108,7 +5108,7 @@ void func_80061EF4(void *arg0, s16 arg1, s32 arg2, ? arg3) {
GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80061EF4.s")
#endif
void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
void func_800621BC(Player* arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
s32 temp_v1;
s32 phi_t0;
s32 phi_t1;
@@ -5121,7 +5121,7 @@ void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
if (temp_v1 == 1) {
phi_t1 = 1;
phi_t0 = 0;
phi_f2 = arg0->posY;
phi_f2 = arg0->pos[1];
}
if (temp_v1 == 0) {
@@ -5129,7 +5129,7 @@ void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
if (1) {
phi_t0 = 0;
}
phi_f2 = arg0->posY;
phi_f2 = arg0->pos[1];
}
if (phi_t0 == 0) {
@@ -5145,8 +5145,8 @@ void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
arg0->unk_258[30 + arg1].unk_020 -= 2184;
}
arg0->unk_258[30 + arg1].unk_008 = (coss((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f) + arg0->posZ;
arg0->unk_258[30 + arg1].unk_000 = (sins((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f) + arg0->posX;
arg0->unk_258[30 + arg1].unk_000[2] = arg0->pos[2] + (coss((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f);
arg0->unk_258[30 + arg1].unk_000[0] = arg0->pos[0] + (sins((arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E) - arg0->unk_0C0) * 5.0f);
return;
}
@@ -5163,17 +5163,17 @@ void func_800621BC(Player *arg0, s16 arg1, s32 arg2, UNUSED s8 arg3) {
}
new_var = new_var2;
new_var->unk_258[30 + arg1].unk_008 = (coss((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f) + new_var->posZ;
new_var->unk_258[30 + arg1].unk_000 = (sins((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f) + new_var->posX;
new_var->unk_258[30 + arg1].unk_000[2] = new_var->pos[2] + (coss((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f);
new_var->unk_258[30 + arg1].unk_000[0] = new_var->pos[0] + (sins((new_var->unk_258[30 + arg1].unk_020 - new_var->unk_02E) - new_var->unk_0C0) * 5.0f);
}
}
}
void func_80062484(Player* arg0, UnkPlayerStruct258* arg1, s32 arg2) {
arg1->unk_01C = 1;
arg1->unk_004 = arg0->unk_074 + 1.0f;
arg1->unk_008 = arg0->posZ;
arg1->unk_000 = arg0->posX;
arg1->unk_000[1] = arg0->unk_074 + 1.0f;
arg1->unk_000[2] = arg0->pos[2];
arg1->unk_000[0] = arg0->pos[0];
arg1->unk_020 = (arg2 * 0x1998) - arg0->unk_02E;
arg1->unk_012 = 4;
arg1->unk_01E = 0;
@@ -5401,7 +5401,7 @@ void func_800629BC(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) {
arg0->unk_258[20 + arg3].unk_012 = 6;
arg0->unk_258[20 + arg3].unk_01E = 0;
arg0->unk_258[20 + arg3].unk_00C = D_800EE604;
arg0->unk_258[20 + arg3].unk_004 = 0.0f;
arg0->unk_258[20 + arg3].unk_000[1] = 0.0f;
}
void func_80062A18(Player* arg0, s8 arg1, UNUSED s8 arg2, s8 arg3) {
@@ -5411,9 +5411,9 @@ void func_80062A18(Player* arg0, s8 arg1, UNUSED s8 arg2, s8 arg3) {
arg0->unk_258[20 + arg3].unk_01E = 1;
arg0->unk_258[20 + arg3].unk_020 = 0;
arg0->unk_0B6 &= ~0x0080;
arg0->unk_258[20 + arg3].unk_008 = arg0->posZ;
arg0->unk_258[20 + arg3].unk_000 = arg0->posX;
arg0->unk_258[20 + arg3].unk_004 = (arg0->posY + 4.0f);
arg0->unk_258[20 + arg3].unk_000[2] = arg0->pos[2];
arg0->unk_258[20 + arg3].unk_000[0] = arg0->pos[0];
arg0->unk_258[20 + arg3].unk_000[1] = (arg0->pos[1] + 4.0f);
}
void func_80062AA8(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) {
@@ -5421,7 +5421,7 @@ void func_80062AA8(Player* arg0, UNUSED s8 arg1, UNUSED s8 arg2, s8 arg3) {
arg0->unk_258[20 + arg3].unk_012 = 5;
arg0->unk_258[20 + arg3].unk_00C = D_800EE60C;
arg0->unk_258[20 + arg3].unk_01E = 0;
arg0->unk_258[20 + arg3].unk_004 = (arg0->posY + arg0->unk_070) - 2.5;
arg0->unk_258[20 + arg3].unk_000[1] = (arg0->pos[1] + arg0->unk_070) - 2.5;
}
void func_80062B18(f32 *arg0, f32 *arg1, f32 *arg2, f32 arg3, f32 arg4, f32 arg5, u16 arg6, u16 arg7) {
@@ -5552,15 +5552,15 @@ void func_80062F98(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) {
temp_f0 = arg0->unk_258[10 + arg1].unk_018 / 10.0f;
++arg0->unk_258[10 + arg1].unk_01E;
arg0->unk_258[10 + arg1].unk_004 += temp_f0;
arg0->unk_258[10 + arg1].unk_000[1] += temp_f0;
if ((arg0->unk_0CA & 1) == 1) {
arg0->unk_258[10 + arg1].unk_004 += (temp_f0 + D_800EE648);
if ((arg0->unk_258[10 + arg1].unk_01E == 0x10) || ((D_801652A0[arg2] - arg0->unk_258[10 + arg1].unk_004) < 3.0f)) {
arg0->unk_258[10 + arg1].unk_000[1] += (temp_f0 + D_800EE648);
if ((arg0->unk_258[10 + arg1].unk_01E == 0x10) || ((D_801652A0[arg2] - arg0->unk_258[10 + arg1].unk_000[1]) < 3.0f)) {
arg0->unk_258[10 + arg1].unk_01C = 0;
arg0->unk_258[10 + arg1].unk_01E = 0;
arg0->unk_258[10 + arg1].unk_012 = 0;
}
} else if ((arg0->unk_258[10 + arg1].unk_01E == 0xA) || ((D_801652A0[arg2] - arg0->unk_258[10 + arg1].unk_004) < 3.0f)) {
} else if ((arg0->unk_258[10 + arg1].unk_01E == 0xA) || ((D_801652A0[arg2] - arg0->unk_258[10 + arg1].unk_000[1]) < 3.0f)) {
arg0->unk_258[10 + arg1].unk_01C = 0;
arg0->unk_258[10 + arg1].unk_01E = 0;
arg0->unk_258[10 + arg1].unk_012 = 0;
@@ -5569,9 +5569,9 @@ void func_80062F98(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) {
void func_800630C0(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) {
++arg0->unk_258[arg1].unk_01E;
arg0->unk_258[arg1].unk_008 = coss(arg0->unk_258[arg1].unk_020) * D_800EE650 + arg0->posZ;
arg0->unk_258[arg1].unk_000 = sins(arg0->unk_258[arg1].unk_020) * D_800EE658 + arg0->posX;
arg0->unk_258[arg1].unk_004 = D_801652A0[arg2];
arg0->unk_258[arg1].unk_000[2] = arg0->pos[2] + coss(arg0->unk_258[arg1].unk_020) * D_800EE650;
arg0->unk_258[arg1].unk_000[0] = arg0->pos[0] + sins(arg0->unk_258[arg1].unk_020) * D_800EE658;
arg0->unk_258[arg1].unk_000[1] = D_801652A0[arg2];
if (arg0->unk_258[arg1].unk_01E == 15) {
arg0->unk_258[arg1].unk_01C = 0;
arg0->unk_258[arg1].unk_01E = 0;
@@ -5611,9 +5611,9 @@ void func_80063268(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
}
arg0->unk_258[arg1].unk_024 += 0.25;
arg0->unk_258[arg1].unk_008 = (coss((arg0->unk_258[arg1].unk_020 + arg0->unk_258[arg1].unk_040)) * 5.5) + arg0->posZ;
arg0->unk_258[arg1].unk_000 = (sins((arg0->unk_258[arg1].unk_020 + arg0->unk_258[arg1].unk_040)) * 5.5) + arg0->posX;
arg0->unk_258[arg1].unk_004 = (arg0->unk_258[arg1].unk_024 + (arg0->posY - 5.0f));
arg0->unk_258[arg1].unk_000[2] = arg0->pos[2] + (coss((arg0->unk_258[arg1].unk_020 + arg0->unk_258[arg1].unk_040)) * 5.5);
arg0->unk_258[arg1].unk_000[0] = arg0->pos[0] + (sins((arg0->unk_258[arg1].unk_020 + arg0->unk_258[arg1].unk_040)) * 5.5);
arg0->unk_258[arg1].unk_000[1] = ((arg0->pos[1] - 5.0f) + arg0->unk_258[arg1].unk_024);
++arg0->unk_258[arg1].unk_01E;
arg0->unk_258[arg1].unk_00C += D_800EE660;
arg0->unk_258[arg1].unk_03E -= 5;
@@ -5631,15 +5631,15 @@ void func_80063268(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_80063408(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
if (arg0->unk_258[10 + arg1].unk_010 == 1) {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + (arg0->unk_258[10 + arg1].unk_01E * -7) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + (arg0->unk_258[10 + arg1].unk_01E * -7) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + (arg0->unk_258[10 + arg1].unk_01E * -7) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + (arg0->unk_258[10 + arg1].unk_01E * -7) * sins(arg0->unk_258[10 + arg1].unk_020);
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + (arg0->unk_258[10 + arg1].unk_01E * -7) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + (arg0->unk_258[10 + arg1].unk_01E * -7) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + (arg0->unk_258[10 + arg1].unk_01E * -7) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + (arg0->unk_258[10 + arg1].unk_01E * -7) * sins(arg0->unk_258[10 + arg1].unk_020);
}
++arg0->unk_258[10 + arg1].unk_01E;
arg0->unk_258[10 + arg1].unk_004 += 1.0f;
arg0->unk_258[10 + arg1].unk_000[1] += 1.0f;
if (((arg0->unk_0BC & 0x80) != 0) || ((arg0->unk_0BC & 0x40) != 0)) {
arg0->unk_258[10 + arg1].unk_01C = 0;
@@ -5670,23 +5670,23 @@ void func_800635D4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
if (arg0->unk_258[10 + arg1].unk_010 == 1) {
if ((arg0->unk_0BC * 2) < 0) {
func_80062B18(&sp44, &sp40, &sp3C, -2.0f, 0.0f, (-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16, -arg0->unk_258[10 + arg1].unk_020, 2 * -arg0->unk_206);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + sp44;
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + sp3C;
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + sp44;
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + sp3C;
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * sins(arg0->unk_258[10 + arg1].unk_020);
}
} else if ((arg0->unk_0BC * 2) < 0) {
func_80062B18(&sp44, &sp40, &sp3C, 2.0f, 0.0f, (-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16, - arg0->unk_258[10 + arg1].unk_020, 2 * -arg0->unk_206);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + sp44;
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + sp3C;
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + sp44;
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + sp3C;
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 16) * sins(arg0->unk_258[10 + arg1].unk_020);
}
++arg0->unk_258[10 + arg1].unk_01E;
arg0->unk_258[10 + arg1].unk_004 += D_800EE670;
arg0->unk_258[10 + arg1].unk_000[1] += D_800EE670;
if (((arg0->unk_0BC & 0x80) != 0) || ((arg0->unk_0BC & 0x40) != 0)) {
arg0->unk_258[10 + arg1].unk_01C = 0;
arg0->unk_258[10 + arg1].unk_01E = 0;
@@ -5718,14 +5718,14 @@ void func_800635D4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_800639DC(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
if (arg0->unk_258[10 + arg1].unk_010 == 1) {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + (D_800EE680 * arg0->unk_258[10 + arg1].unk_01E) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + (D_800EE684 * arg0->unk_258[10 + arg1].unk_01E) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + (D_800EE680 * arg0->unk_258[10 + arg1].unk_01E) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + (D_800EE684 * arg0->unk_258[10 + arg1].unk_01E) * sins(arg0->unk_258[10 + arg1].unk_020);
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + (D_800EE688 * arg0->unk_258[10 + arg1].unk_01E) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + (D_800EE68C * arg0->unk_258[10 + arg1].unk_01E) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + (D_800EE688 * arg0->unk_258[10 + arg1].unk_01E) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + (D_800EE68C * arg0->unk_258[10 + arg1].unk_01E) * sins(arg0->unk_258[10 + arg1].unk_020);
}
++arg0->unk_258[10 + arg1].unk_01E;
arg0->unk_258[10 + arg1].unk_004 += D_800EE690;
arg0->unk_258[10 + arg1].unk_000[1] += D_800EE690;
if (arg0->unk_258[10 + arg1].unk_01E == 8) {
arg0->unk_258[10 + arg1].unk_01C = 0;
arg0->unk_258[10 + arg1].unk_01E = 0;
@@ -5753,15 +5753,15 @@ void func_800639DC(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_80063BD4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
if (arg0->unk_258[10 + arg1].unk_010 == 1) {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + (-2 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + (-2 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + (-2 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + (-2 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020));
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + (-2 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + (-2 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + (-2 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + (-2 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020));
}
++arg0->unk_258[10 + arg1].unk_01E;
arg0->unk_258[10 + arg1].unk_004 += D_800EE6A0;
arg0->unk_258[10 + arg1].unk_000[1] += D_800EE6A0;
if (arg0->unk_258[10 + arg1].unk_01E == 8) {
arg0->unk_258[10 + arg1].unk_01C = 0;
arg0->unk_258[10 + arg1].unk_01E = 0;
@@ -5774,11 +5774,11 @@ void func_80063BD4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_80063D58(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
if (arg0->unk_258[10 + arg1].unk_010 == 1) {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[2].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[2].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[2].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[2].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * sins(arg0->unk_258[10 + arg1].unk_020);
} else {
arg0->unk_258[10 + arg1].unk_008 = arg0->boundingBoxCorners[3].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000 = arg0->boundingBoxCorners[3].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * sins(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[2] = arg0->boundingBoxCorners[3].cornerZ + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * coss(arg0->unk_258[10 + arg1].unk_020);
arg0->unk_258[10 + arg1].unk_000[0] = arg0->boundingBoxCorners[3].cornerX + ((-arg0->unk_258[10 + arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 20.0f) * sins(arg0->unk_258[10 + arg1].unk_020);
}
++arg0->unk_258[10 + arg1].unk_01E;
@@ -5791,9 +5791,9 @@ void func_80063D58(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
arg0->unk_258[10 + arg1].unk_00C += D_800EE6B0;
if (arg0->unk_258[10 + arg1].unk_01E >= 4) {
arg0->unk_258[10 + arg1].unk_03E -= 18;
arg0->unk_258[10 + arg1].unk_004 -= D_800EE6B8;
arg0->unk_258[10 + arg1].unk_000[1] -= D_800EE6B8;
} else {
arg0->unk_258[10 + arg1].unk_004 += D_800EE6C0;
arg0->unk_258[10 + arg1].unk_000[1] += D_800EE6C0;
}
if (arg0->unk_258[10 + arg1].unk_03E <= 0) {
@@ -5840,17 +5840,17 @@ void func_80064184(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) {
f32 sp40;
f32 sp3C;
sp40 = D_801652A0[arg2] - arg0->posY - 3.0f;
sp40 = D_801652A0[arg2] - arg0->pos[1] - 3.0f;
if (((arg0->unk_0DE & 1) != 0) && (gCurrentCourseId != COURSE_KOOPA_BEACH)) {
sp40 = D_801652A0[arg2] - arg0->posY + D_800EE6C8;
sp40 = D_801652A0[arg2] - arg0->pos[1] + D_800EE6C8;
}
func_80062B18(&sp44, &sp40, &sp3C, 0.0f, sp40, -4.0f + ((-arg0->unk_258[arg1].unk_01E * (arg0->unk_094 / 18.0f) * 216.0f) / 10.0f), -arg0->unk_258[arg1].unk_020, 2 * -arg0->unk_206);
arg0->unk_258[arg1].unk_000 = arg0->posX + sp44;
arg0->unk_258[arg1].unk_008 = arg0->posZ + sp3C;
arg0->unk_258[arg1].unk_004 = arg0->posY + sp40;
arg0->unk_258[arg1].unk_000[0] = arg0->pos[0] + sp44;
arg0->unk_258[arg1].unk_000[2] = arg0->pos[2] + sp3C;
arg0->unk_258[arg1].unk_000[1] = arg0->pos[1] + sp40;
++arg0->unk_258[arg1].unk_01E;
if ((arg0->unk_258[arg1].unk_01E == 12) || (D_801652A0[arg2] <= (arg0->posY - arg0->unk_070))) {
if ((arg0->unk_258[arg1].unk_01E == 12) || (D_801652A0[arg2] <= (arg0->pos[1] - arg0->unk_070))) {
arg0->unk_258[arg1].unk_01C = 0;
arg0->unk_258[arg1].unk_01E = 0;
arg0->unk_258[arg1].unk_012 = 0;
@@ -5868,9 +5868,9 @@ void func_80064184(Player* arg0, s16 arg1, s8 arg2, UNUSED s8 arg3) {
}
void func_800643A8(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
arg0->unk_258[10 + arg1].unk_008 = (D_800EE6D8 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020) + arg0->posZ);
arg0->unk_258[10 + arg1].unk_000 = (D_800EE6E0 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020) + arg0->posX);
arg0->unk_258[10 + arg1].unk_004 = arg0->unk_258[10 + arg1].unk_004 + 0.5;
arg0->unk_258[10 + arg1].unk_000[2] = arg0->pos[2] + (D_800EE6D8 * arg0->unk_258[10 + arg1].unk_01E * coss(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[0] = arg0->pos[0] + (D_800EE6E0 * arg0->unk_258[10 + arg1].unk_01E * sins(arg0->unk_258[10 + arg1].unk_020));
arg0->unk_258[10 + arg1].unk_000[1] = arg0->unk_258[10 + arg1].unk_000[1] + 0.5;
++arg0->unk_258[10 + arg1].unk_01E;
if (arg0->unk_258[10 + arg1].unk_01E == 10) {
@@ -5984,9 +5984,9 @@ GLOBAL_ASM("asm/non_matchings/code_80057C60/func_80064664.s")
void func_800647C8(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
++arg0->unk_258[30 + arg1].unk_01E;
arg0->unk_258[30 + arg1].unk_008 = ((D_800EE710 * (arg0->unk_258[30 + arg1].unk_01E)) * coss(arg0->unk_258[30 + arg1].unk_020)) + arg0->posZ;
arg0->unk_258[30 + arg1].unk_000 = ((D_800EE718 * (arg0->unk_258[30 + arg1].unk_01E)) * sins(arg0->unk_258[30 + arg1].unk_020) + arg0->posX);
arg0->unk_258[30 + arg1].unk_004 = (arg0->unk_074 + 2.0f);
arg0->unk_258[30 + arg1].unk_000[2] = arg0->pos[2] + ((D_800EE710 * (arg0->unk_258[30 + arg1].unk_01E)) * coss(arg0->unk_258[30 + arg1].unk_020));
arg0->unk_258[30 + arg1].unk_000[0] = arg0->pos[0] + ((D_800EE718 * (arg0->unk_258[30 + arg1].unk_01E)) * sins(arg0->unk_258[30 + arg1].unk_020));
arg0->unk_258[30 + arg1].unk_000[1] = (arg0->unk_074 + 2.0f);
if (arg0->unk_258[30 + arg1].unk_01E == 14) {
arg0->unk_258[30 + arg1].unk_01C = 0;
@@ -6003,7 +6003,7 @@ void func_800647C8(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_800648E4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
++arg0->unk_258[30 + arg1].unk_01E;
arg0->unk_258[30 + arg1].unk_00C -= D_800EE720;
arg0->unk_258[30 + arg1].unk_004 += D_800EE728;
arg0->unk_258[30 + arg1].unk_000[1] += D_800EE728;
arg0->unk_258[30 + arg1].unk_03E -= 12;
if (arg0->unk_258[30 + arg1].unk_03E <= 0) {
@@ -6019,7 +6019,7 @@ void func_800648E4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_80064988(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
++arg0->unk_258[30 + arg1].unk_01E;
arg0->unk_258[30 + arg1].unk_004 -= D_800EE730;
arg0->unk_258[30 + arg1].unk_000[1] -= D_800EE730;
if (arg0->unk_258[30 + arg1].unk_01E == 10) {
arg0->unk_258[30 + arg1].unk_01C = 0;
@@ -6032,9 +6032,9 @@ void func_800649F4(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
f32 temp;
temp = arg0->unk_258[30 + arg1].unk_018;
arg0->unk_258[30 + arg1].unk_008 = ((-temp * arg0->unk_258[30 + arg1].unk_01E) * (coss(arg0->unk_258[30 + arg1].unk_020) ) + arg0->unk_21C);
arg0->unk_258[30 + arg1].unk_000 = ((-temp * arg0->unk_258[30 + arg1].unk_01E) * (sins(arg0->unk_258[30 + arg1].unk_020)) + arg0->unk_218);
arg0->unk_258[30 + arg1].unk_004 = (arg0->unk_258[30 + arg1].unk_014 + arg0->posY);
arg0->unk_258[30 + arg1].unk_000[2] = arg0->unk_21C + (((-temp) * arg0->unk_258[30 + arg1].unk_01E) * coss(arg0->unk_258[30 + arg1].unk_020));
arg0->unk_258[30 + arg1].unk_000[0] = arg0->unk_218 + (((-temp) * arg0->unk_258[30 + arg1].unk_01E) * sins(arg0->unk_258[30 + arg1].unk_020));
arg0->unk_258[30 + arg1].unk_000[1] = arg0->pos[1] + arg0->unk_258[30 + arg1].unk_014;
arg0->unk_258[30 + arg1].unk_00C += D_800EE738;
++arg0->unk_258[30 + arg1].unk_01E;
@@ -6056,9 +6056,9 @@ void func_80064B30(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
f32 temp;
temp = arg0->unk_258[30 + arg1].unk_018 * D_800EE740;
arg0->unk_258[30 + arg1].unk_008 = ((-temp * arg0->unk_258[30 + arg1].unk_01E) * (coss(arg0->unk_258[30 + arg1].unk_020)) + arg0->posZ);
arg0->unk_258[30 + arg1].unk_000 = ((-temp * arg0->unk_258[30 + arg1].unk_01E) * (sins(arg0->unk_258[30 + arg1].unk_020)) + arg0->posX);
arg0->unk_258[30 + arg1].unk_004 += D_800EE748;
arg0->unk_258[30 + arg1].unk_000[2] = (arg0->pos[2] + (-temp * arg0->unk_258[30 + arg1].unk_01E) * (coss(arg0->unk_258[30 + arg1].unk_020)));
arg0->unk_258[30 + arg1].unk_000[0] = (arg0->pos[0] + (-temp * arg0->unk_258[30 + arg1].unk_01E) * (sins(arg0->unk_258[30 + arg1].unk_020)));
arg0->unk_258[30 + arg1].unk_000[1] += D_800EE748;
++arg0->unk_258[30 + arg1].unk_01E;
if (arg0->unk_258[30 + arg1].unk_01E == 10) {
@@ -6084,9 +6084,9 @@ void func_80064C74(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
arg0->unk_258[30 + arg1].unk_020 -= 2184;
}
arg0->unk_258[30 + arg1].unk_008 = (coss(arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E - arg0->unk_0C0) * 5.0f) + arg0->posZ;
arg0->unk_258[30 + arg1].unk_000 = (sins(arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E - arg0->unk_0C0) * 5.0f) + arg0->posX;
arg0->unk_258[30 + arg1].unk_004 = arg0->posY - 1.0f;
arg0->unk_258[30 + arg1].unk_000[2] = arg0->pos[2] + (coss(arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E - arg0->unk_0C0) * 5.0f);
arg0->unk_258[30 + arg1].unk_000[0] = arg0->pos[0] + (sins(arg0->unk_258[30 + arg1].unk_020 - arg0->unk_02E - arg0->unk_0C0) * 5.0f);
arg0->unk_258[30 + arg1].unk_000[1] = arg0->pos[1] - 1.0f;
arg0->unk_258[30 + arg1].unk_00C += D_800EE750;
++arg0->unk_258[30 + arg1].unk_01E;
@@ -6105,7 +6105,7 @@ void func_80064C74(Player* arg0, s16 arg1, UNUSED s8 arg2, UNUSED s8 arg3) {
void func_80064DEC(Player* arg0, UNUSED s16 arg1, UNUSED s8 arg2, s8 arg3) {
arg0->unk_258[20 + arg3].unk_004 = arg0->posY;
arg0->unk_258[20 + arg3].unk_000[1] = arg0->pos[1];
++arg0->unk_258[20 + arg3].unk_01E;
if (arg0->unk_258[20 + arg3].unk_01E == 9) {
@@ -6157,7 +6157,7 @@ void func_80064F88(Player* arg0, UNUSED s16 arg1, UNUSED s8 arg2, s8 arg3) {
void func_80065030(Player* arg0, UNUSED s16 arg1, UNUSED s8 arg2, s8 arg3) {
++arg0->unk_258[20 + arg3].unk_01E;
arg0->unk_258[20 + arg3].unk_004 += D_800EE788;
arg0->unk_258[20 + arg3].unk_000[1] += D_800EE788;
arg0->unk_258[20 + arg3].unk_00C += D_800EE790;
if (arg0->unk_258[20 + arg3].unk_00C >= (f64) 1.5) {
arg0->unk_258[20 + arg3].unk_00C = 1.5f;
@@ -6172,9 +6172,9 @@ void func_80065030(Player* arg0, UNUSED s16 arg1, UNUSED s8 arg2, s8 arg3) {
}
void func_800650FC(Player* arg0, UNUSED s16 arg1, UNUSED s8 arg2, s8 arg3) {
arg0->unk_258[20 + arg3].unk_008 = (f32) arg0->posZ;
arg0->unk_258[20 + arg3].unk_000 = (f32) arg0->posX;
arg0->unk_258[20 + arg3].unk_004 = (f32) (arg0->posY + 4.0f);
arg0->unk_258[20 + arg3].unk_000[2] = (f32) arg0->pos[2];
arg0->unk_258[20 + arg3].unk_000[0] = (f32) arg0->pos[0];
arg0->unk_258[20 + arg3].unk_000[1] = (f32) (arg0->pos[1] + 4.0f);
if ((arg0->unk_0BC & 0x80) == 0x80) {
arg0->unk_258[20 + arg3].unk_020 += 4732;
} else {
+5 -5
View File
@@ -4143,27 +4143,27 @@ void func_80078C70(u32 arg0) {
case 0: /* switch 1 */
sp1C = 0;
sp18 = camera1;
D_8018D200 = D_80150130 + 40.0f;
D_8018D200 = D_80150130[0] + 40.0f;
break;
case 1: /* switch 1 */
sp1C = 0;
sp18 = camera1;
D_8018D200 = D_80150130 + 40.0f;
D_8018D200 = D_80150130[0] + 40.0f;
break;
case 2: /* switch 1 */
sp18 = camera2;
sp1C = D_8018D1F0;
D_8018D200 = D_80150134 + 40.0f;
D_8018D200 = D_80150130[1] + 40.0f;
break;
case 3: /* switch 1 */
sp1C = 0;
sp18 = camera1;
D_8018D200 = D_80150130 + 40.0f;
D_8018D200 = D_80150130[0] + 40.0f;
break;
case 4: /* switch 1 */
sp18 = camera2;
sp1C = D_8018D1F0;
D_8018D200 = D_80150134 + 40.0f;
D_8018D200 = D_80150130[1] + 40.0f;
break;
}
temp_v0 = D_8018D200;
+4 -4
View File
@@ -854,7 +854,7 @@ void func_8008DC08(Player* player, s8 arg1) {
player->unk_0C0 = 0;
player->unk_08C = 0.0f;
player->unk_09C = 0.0f;
if ((player->unk_124 >= 600.0f) || ((player->unk_0BC & 0x1000) != 0)) { D_8018D990[arg1] = 3; } // placed block on same line to match
if ((player->unk_110.unk44 >= 600.0f) || ((player->unk_0BC & 0x1000) != 0)) { D_8018D990[arg1] = 3; } // placed block on same line to match
switch (D_8018D990[arg1]) {
case 0:
@@ -888,7 +888,7 @@ void func_8008DC08(Player* player, s8 arg1) {
break;
case 1:
player->unk_DC4 = 4.5f;
player->posY += D_800EF570;
player->pos[1] += D_800EF570;
++player->unk_238;
if ((player->unk_046 & 0x80) != 0) {
@@ -920,12 +920,12 @@ void func_8008DC08(Player* player, s8 arg1) {
player->unk_238 = 0;
}
if (player->unk_124 >= 600.0f) {
if (player->unk_110.unk44 >= 600.0f) {
D_8018D990[arg1] = 3;
}
player->unk_DC4 = 4.5f;
player->posY -= D_800EF580;
player->pos[1] -= D_800EF580;
if ((player->unk_0BC & 8) != 8) {
D_8018D990[arg1] = 3;
+7 -7
View File
@@ -11,8 +11,8 @@ extern Gfx *gDisplayListHead;
extern Camera cameras[];//, *camera1, *camera2, *camera3, *camera4;
extern f32 D_80150130, D_80150148, D_8015014C, D_80150150;
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 D_80150130[4];
extern s16 gCreditsCourseId;
extern u16 D_80150112;
extern u16 D_80164AF0;
@@ -52,7 +52,7 @@ void func_80280038(void) {
func_802A3E3C();
func_80057FC4(0);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[1], &sp44[37], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[1], &sp44[37], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp44[37]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[7], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -103,9 +103,9 @@ void func_802802AC(void) {
temp_f12 = camera->unk - camera->pos[0];
temp = camera->unk1 - camera->pos[1];
temp_f14 = camera->unk2 - camera->pos[2];
camera->rotX2 = func_802B7830(temp_f12, temp_f14);
camera->rotX = func_802B7830(sqrtf((temp_f12 * temp_f12) + (temp_f14 * temp_f14)), temp);
camera->rotY = 0;
camera->rotX[1] = func_802B7830(temp_f12, temp_f14);
camera->rotX[0] = func_802B7830(sqrtf((temp_f12 * temp_f12) + (temp_f14 * temp_f14)), temp);
camera->rotX[2] = 0;
if (D_802874A0 != 0) {
D_800DC5E4++;
} else {
@@ -126,7 +126,7 @@ void func_80280420(void) {
func_802A4D18();
func_802A74BC();
camera->unk30 = 60.0f;
D_80150130 = 60.0f;
D_80150130[0] = 60.0f;
D_800DC5EC->screenWidth = 320;
D_800DC5EC->screenHeight = 240;
D_800DC5EC->screenStartX = 160;
+6 -6
View File
@@ -18,14 +18,14 @@ void func_80281610(void) {
temp_f12 = camera->unk - camera->pos[0];
temp = camera->unk1 - camera->pos[1];
temp_f14 = camera->unk2 - camera->pos[2];
camera->rotX2 = func_802B7830(temp_f12, temp_f14);
camera->rotX = func_802B7830(sqrtf((temp_f12 * temp_f12) + (temp_f14 * temp_f14)), temp);
camera->rotY = 0;
camera->rotX[1] = func_802B7830(temp_f12, temp_f14);
camera->rotX[0] = func_802B7830(sqrtf((temp_f12 * temp_f12) + (temp_f14 * temp_f14)), temp);
camera->rotX[2] = 0;
}
// guPerspective params
extern f32 D_80150130, D_80150148, D_8015014C, D_80150150;
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 D_80150130[];
// rodata
extern const f32 D_80286B90, D_80286B94, D_80286B98, D_80286B9C, D_80286BA0;
@@ -39,7 +39,7 @@ void func_802816B8(void) {
cameras[0].angleX = 0.0f;
cameras[0].angleY = 1.0f;
cameras[0].angleZ = 0.0f;
D_80150130 = 40.0f;
D_80150130[0] = 40.0f;
D_80150148 = D_80286B9C;
D_80150150 = 3.0f;
D_8015014C = D_80286BA0;
+1 -1
View File
@@ -85,7 +85,7 @@ void load_ending_sequence_royalraceway(void) {
func_802A4D18();
func_802A74BC();
camera->unk30 = 60.0f;
D_80150130 = 60.0f;
D_80150130[0] = 60.0f;
D_800DC5EC->screenWidth = 320;
D_800DC5EC->screenHeight = 240;
D_800DC5EC->screenStartX = 160;
+1 -1
View File
@@ -33,7 +33,7 @@ extern struct UnkStruct_800DC5EC *D_800DC5EC;
extern s32 gMenuSelectionFromEndingSequence; //D_80287550;
extern s32 D_80287554;
extern f32 D_801647A4;
extern f32 D_80150130;
extern f32 D_80150130[];
extern s32 gPrevLoadedAddress;
extern s32 D_8015F734;
+3 -3
View File
@@ -24,9 +24,9 @@ extern Gfx D_00284EE0[];
extern Camera cameras[];
extern f32 D_80150130, D_80150148, D_8015014C, D_80150150;
extern f32 D_80150148, D_8015014C, D_80150150;
extern f32 D_80150130[];
void func_80281C40(void) {
s32 i;
@@ -64,7 +64,7 @@ void func_80281D00(void) {
}
func_8028150C();
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective((Mtx*) &gGfxPool->mtxPool[1], &sp64[39], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective((Mtx*) &gGfxPool->mtxPool[1], &sp64[39], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp64[39]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt((Mtx*) &gGfxPool->mtxPool[7], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
+8 -8
View File
@@ -1070,7 +1070,7 @@ void func_80283EA0(s32 arg0) {
}
void func_80283ED0(Vec3f arg0) {
func_80282008(arg0, &gPlayerTwo->posX);
func_80282008(arg0, &gPlayerTwo->pos[0]);
}
#ifdef MIPS_TO_C
@@ -1078,9 +1078,9 @@ void func_80283ED0(Vec3f arg0) {
? func_802821A0(f32, f32, ?); // extern
void func_80283EF8(s32 arg0) {
func_802821A0(gPlayerTwo->posX, 0.12f);
func_802821A0((bitwise f32) (arg0 + 4), gPlayerTwo->posY, 0x3DF5C28F);
func_802821A0((bitwise f32) (arg0 + 8), gPlayerTwo->posZ, 0x3DF5C28F);
func_802821A0(gPlayerTwo->pos[0], 0.12f);
func_802821A0((bitwise f32) (arg0 + 4), gPlayerTwo->pos[1], 0x3DF5C28F);
func_802821A0((bitwise f32) (arg0 + 8), gPlayerTwo->pos[2], 0x3DF5C28F);
}
#else
GLOBAL_ASM("asm/non_matchings/code_80281FA0/func_80283EF8.s")
@@ -1095,7 +1095,7 @@ void func_80283F6C(s32 arg0) {
}
void func_80283FCC(Vec3f arg0) {
func_80282008(arg0, &gPlayerThree->posX);
func_80282008(arg0, &gPlayerThree->pos[0]);
}
#ifdef MIPS_TO_C
@@ -1219,9 +1219,9 @@ void func_80284308(void *arg0) {
func_80282D90(arg0, &D_802858E0, &D_802858F8, 0);
temp_v0 = *(sp30 + (D_802874F5 * 4));
//player = gPlayerOne;
temp_f0 = temp_v0->unk14 - player->posX;
temp_f12 = temp_v0->unk1C - player->posZ;
temp_f2 = temp_v0->unk18 - player->posY;
temp_f0 = temp_v0->unk14 - player->pos[0];
temp_f12 = temp_v0->unk1C - player->pos[2];
temp_f2 = temp_v0->unk18 - player->pos[1];
arg0->unkC = arg0->unkC + temp_f0;
arg0->unk0 = arg0->unk0 + temp_f0;
arg0->unk14 = arg0->unk14 + temp_f12;
+1 -1
View File
@@ -588,7 +588,7 @@ void func_8028EDA8(void) {
}
f32 func_8028EE8C(s32 arg0) {
f32 temp_v0 = gPlayers[arg0].posZ;
f32 temp_v0 = gPlayers[arg0].pos[2];
f32 temp_v1 = gPlayers[arg0].rotZ;
f32 temp_f14 = D_8015F8D8 - temp_v0;
f32 temp_f16 = temp_v1 - D_8015F8D8;
+1037 -1658
View File
File diff suppressed because it is too large Load Diff
+40 -40
View File
@@ -754,31 +754,31 @@ void func_802A4D18(void) {
GLOBAL_ASM("asm/non_matchings/code_802A3730/func_802A4D18.s")
#endif
extern f32 D_80150134;
extern f32 D_80150138;
extern f32 D_8015013C;
//extern f32 D_80150134;
//extern f32 D_80150138;
//extern f32 D_8015013C;
extern f32 D_80150130;
extern f32 D_80150130[];
void func_802A4EF4(void) {
switch(gActiveScreenMode) {
case 0:
func_8001F394(gPlayerOne, &D_80150130);
func_8001F394(gPlayerOne, &D_80150130[0]);
break;
case 2:
func_8001F394(gPlayerOne, &D_80150130);
func_8001F394(gPlayerTwo, &D_80150134);
func_8001F394(gPlayerOne, &D_80150130[0]);
func_8001F394(gPlayerTwo, &D_80150130[1]);
break;
case 1:
func_8001F394(gPlayerOne, &D_80150130);
func_8001F394(gPlayerTwo, &D_80150134);
func_8001F394(gPlayerOne, &D_80150130[0]);
func_8001F394(gPlayerTwo, &D_80150130[1]);
break;
case 3:
func_8001F394(gPlayerOne, &D_80150130);
func_8001F394(gPlayerTwo, &D_80150134);
func_8001F394(gPlayerThree, &D_80150138);
func_8001F394(gPlayerFour, &D_8015013C);
func_8001F394(gPlayerOne, &D_80150130[0]);
func_8001F394(gPlayerTwo, &D_80150130[1]);
func_8001F394(gPlayerThree, &D_80150130[2]);
func_8001F394(gPlayerFour, &D_80150130[3]);
break;
}
}
@@ -796,9 +796,9 @@ void func_802A5004(void) {
func_802A39E0(D_800DC5F0);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80057FC4(2);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80093A30(2);
}
}
@@ -813,9 +813,9 @@ void func_802A50EC(void) {
func_802A39E0(D_800DC5EC);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130);
func_802A4A0C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
func_80057FC4(1);
func_802A487C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130);
func_802A487C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
func_80093A30(1);
}
}
@@ -830,9 +830,9 @@ void func_802A51D4(void) {
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130);
func_802A4A0C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
func_80057FC4(3);
func_802A487C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130);
func_802A487C(&D_802B8890, D_800DC5EC, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[0]);
func_80093A30(3);
}
}
@@ -847,9 +847,9 @@ void func_802A52BC(void) {
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80057FC4(4);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80093A30(4);
}
}
@@ -866,11 +866,11 @@ void func_802A53A4(void) {
func_802A3CB0();
func_802A41D4();
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130);
func_802A4A0C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
if (D_800DC50C != CREDITS_SEQUENCE) {
func_80057FC4(0);
}
func_802A487C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130);
func_802A487C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
func_80093A30(0);
}
}
@@ -885,9 +885,9 @@ void func_802A54A8(void) {
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130);
func_802A4A0C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
func_80057FC4(8);
func_802A487C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130);
func_802A487C(&D_802B8890, D_800DC5EC, 0x140, 0xF0, &D_80150130[0]);
func_80093A30(8);
}
}
@@ -902,9 +902,9 @@ void func_802A5590(void) {
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A4A0C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80057FC4(9);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150134);
func_802A487C(&D_802B8910, D_800DC5F0, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[1]);
func_80093A30(9);
}
}
@@ -919,9 +919,9 @@ void func_802A5678(void) {
gSPSetGeometryMode(gDisplayListHead++, G_SHADE | G_SHADING_SMOOTH | G_CLIPPING);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150138);
func_802A4A0C(&D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[2]);
func_80057FC4(10);
func_802A487C(&D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150138);
func_802A487C(&D_802B8990, D_800DC5F4, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[2]);
func_80093A30(10);
}
}
@@ -955,9 +955,9 @@ void func_802A5760(void) {
func_802A39E0(D_800DC5F8);
if (D_800DC5B4 != 0) {
func_802A4A0C(&D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_8015013C);
func_802A4A0C(&D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[3]);
func_80057FC4(11);
func_802A487C(&D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_8015013C);
func_802A487C(&D_802B8A10, D_800DC5F8, SCREEN_WIDTH, SCREEN_HEIGHT, &D_80150130[3]);
func_80093A30(11);
}
}
@@ -983,7 +983,7 @@ void func_802A59A4(void) {
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_LIGHTING | G_SHADING_SMOOTH);
gDPSetRenderMode(gDisplayListHead++, G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2);
guPerspective(&gGfxPool->mtxPool[1], &spAA[23], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[1], &spAA[23], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, spAA[23]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
@@ -1033,7 +1033,7 @@ void func_802A5CB4(void) {
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[7], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1082,7 +1082,7 @@ void func_802A5FAC(void) {
func_802A3730(D_800DC5F0);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150134, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[2]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[8], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1130,7 +1130,7 @@ void func_802A62A4(void) {
func_802A3E3C();
func_802A3730(D_800DC5EC);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[7], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1178,7 +1178,7 @@ void func_802A65B8(void) {
func_802A3E3C();
func_802A3730(D_800DC5F0);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150134, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[2]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[8], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1224,7 +1224,7 @@ void func_802A68CC(void) {
func_802A3730(D_800DC5EC);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[1], &sp9A[17], D_80150130[0], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[1]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[7], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1270,7 +1270,7 @@ void func_802A6BB0(void) {
func_802A3730(D_800DC5F0);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150134, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[2], &sp9A[17], D_80150130[1], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[2]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
@@ -1315,7 +1315,7 @@ void func_802A6E94(void) {
func_802A3E3C();
func_802A3730(D_800DC5F4);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[3], &sp9A[17], D_80150138, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[3], &sp9A[17], D_80150130[2], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp9A[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[3]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[9], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
@@ -1370,7 +1370,7 @@ void func_802A7178(void) {
func_802A3730(D_800DC5F8);
gSPSetGeometryMode(gDisplayListHead++, G_ZBUFFER | G_SHADE | G_CULL_BACK | G_SHADING_SMOOTH);
guPerspective(&gGfxPool->mtxPool[4], &sp92[17], D_8015013C, D_80150148, D_80150150, D_8015014C, 1.0f);
guPerspective(&gGfxPool->mtxPool[4], &sp92[17], D_80150130[3], D_80150148, D_80150150, D_8015014C, 1.0f);
gDPHalf1(gDisplayListHead++, sp92[17]);
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[4]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_PROJECTION);
guLookAt(&gGfxPool->mtxPool[10], camera->pos[0], camera->pos[1], camera->pos[2], camera->unk, camera->unk1, camera->unk2, camera->angleX, camera->angleY, camera->angleZ);
+79 -108
View File
@@ -1,78 +1,61 @@
#include <ultra64.h>
#include <macros.h>
#include <defines.h>
#include <actor_types.h>
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
? vec3f_copy(void *, void *, void *, void *); // extern
void *vec3f_copy(Vec3f, Vec3f); // extern
void func_802B0210(void *arg0, void *arg1) {
void *temp_a0;
void *temp_a2;
void *temp_a3;
void func_802B0210(UnkActorInner *arg0, UnkActorInner *arg1) {
arg1->unk30 = arg0->unk30;
arg1->unk32 = arg0->unk32;
arg1->unk34 = arg0->unk34;
arg1->unk36 = arg0->unk36;
arg1->unk38 = arg0->unk38;
arg1->unk3A = arg0->unk3A;
arg1->unk3C = arg0->unk3C;
arg1->unk40 = arg0->unk40;
temp_a3 = arg0;
temp_a2 = arg1;
arg1->unk0 = arg0->unk0;
arg1->unk2 = arg0->unk2;
arg1->unk4 = arg0->unk4;
arg1->unk6 = arg0->unk6;
arg1->unk8 = arg0->unk8;
arg1->unkA = arg0->unkA;
arg1->unkC = arg0->unkC;
arg1->unk10 = arg0->unk10;
temp_a0 = arg1 + 0x18;
arg1->unk14 = arg0->unk14;
arg0 = temp_a3;
arg1 = temp_a2;
vec3f_copy(temp_a0, temp_a3 + 0x18, temp_a2, temp_a3);
vec3f_copy(arg1 + 0x24, arg0 + 0x24, arg1, arg0);
vec3f_copy(arg1 + 0x30, arg0 + 0x30, arg1, arg0);
arg1->unk44 = arg0->unk44;
vec3f_copy(arg1->unk48, arg0->unk48);
vec3f_copy(arg1->unk54, arg0->unk54);
vec3f_copy(arg1->unk60, arg0->unk60);
}
#else
GLOBAL_ASM("asm/non_matchings/code_802B0210/func_802B0210.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
extern ? D_8015F9B8;
extern struct Actor D_8015F9B8[];
void func_802B02B4(void *arg0, s32 arg1) {
void func_802B02B4(struct Actor *arg0, s32 arg1) {
s32 temp_f6;
void *temp_v0;
struct Actor *temp_v0 = &D_8015F9B8[arg0->unk4];
temp_v0->unk4--;
switch((s16)arg0->unk8) {
case 0:
temp_v0->unk24[0] = -1.0f;
break;
case 1:
temp_v0->unk24[1] = -1.0f;
break;
case 2:
temp_v0->unk24[2] = -1.0f;
break;
temp_v0 = (arg0->unk4 * 0x70) + &D_8015F9B8;
temp_v0->unk4 = temp_v0->unk4 - 1;
temp_f6 = arg0->unk8;
if (temp_f6 != 0) {
if (temp_f6 != 1) {
if (temp_f6 != 2) {
} else {
temp_v0->unk2C = -1.0f;
}
} else {
temp_v0->unk28 = -1.0f;
}
} else {
temp_v0->unk24 = -1.0f;
}
arg0->unk2 = -0x8000;
arg0->unk12 = 0;
arg0->unk4 = 0x3C;
arg0->unk28 = 3.0f;
if (arg1 != 7) {
if (arg1 != 8) {
return;
}
arg0->unk6 = 7;
return;
arg0->unk2 = 0x8000; // bitflag
arg0->unk10[1] = 0;
arg0->unk24[1] = 3.0f;
arg0->unk4 = 60;
switch(arg1) {
case 7:
arg0->unk6 = 5;
break;
case 8:
arg0->unk6 = 7;
break;
}
arg0->unk6 = 5;
}
#else
GLOBAL_ASM("asm/non_matchings/code_802B0210/func_802B02B4.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
@@ -1130,10 +1113,10 @@ void update_obj_banana(void *arg0) {
temp_t9 = arg0->unk6;
switch (temp_t9) {
case 0:
temp_f2 = gPlayers[temp_t6].posX - arg0->unk18;
temp_f14 = gPlayers[temp_t6].posY - arg0->unk1C;
temp_f2 = gPlayers[temp_t6].pos[0] - arg0->unk18;
temp_f14 = gPlayers[temp_t6].pos[1] - arg0->unk1C;
sp48 = temp_f2;
temp_f16 = gPlayers[temp_t6].posZ - arg0->unk20;
temp_f16 = gPlayers[temp_t6].pos[2] - arg0->unk20;
sp44 = temp_f14;
sp88 = &gPlayers[temp_t6];
sp40 = temp_f16;
@@ -1141,13 +1124,13 @@ void update_obj_banana(void *arg0) {
phi_f14 = (bitwise void *) temp_f14;
if (temp_f12 == 0.0f) {
temp_f0 = D_802B9EE0;
arg0->unk18 = gPlayers[temp_t6].posX + temp_f0;
arg0->unk1C = gPlayers[temp_t6].posY + temp_f0;
arg0->unk18 = gPlayers[temp_t6].pos[0] + temp_f0;
arg0->unk1C = gPlayers[temp_t6].pos[1] + temp_f0;
phi_f6 = gPlayers[temp_t6].posZ + temp_f0;
} else {
temp_f14_2 = temp_f14 / temp_f12;
arg0->unk18 = gPlayers[temp_t6].posX - (temp_f2 / temp_f12);
arg0->unk1C = (gPlayers[temp_t6].posY - temp_f14_2) - 2.0f;
arg0->unk18 = gPlayers[temp_t6].pos[0] - (temp_f2 / temp_f12);
arg0->unk1C = (gPlayers[temp_t6].pos[1] - temp_f14_2) - 2.0f;
phi_f6 = gPlayers[temp_t6].posZ - (temp_f16 / temp_f12);
phi_f14 = (bitwise void *) temp_f14_2;
}
@@ -1239,9 +1222,9 @@ void update_obj_banana(void *arg0) {
sp70 = -5.0f;
sp88 = &gPlayers[temp_t6];
func_802B64C4(&sp68, gPlayers[temp_t6].unk_02E + gPlayers[temp_t6].unk_0C0);
temp_f18 = sp68 + gPlayers[temp_t6].posX;
temp_f0_7 = sp6C + gPlayers[temp_t6].posY;
temp_f10 = sp70 + gPlayers[temp_t6].posZ;
temp_f18 = sp68 + gPlayers[temp_t6].pos[0];
temp_f0_7 = sp6C + gPlayers[temp_t6].pos[1];
temp_f10 = sp70 + gPlayers[temp_t6].pos[2];
sp34 = temp_f10;
temp_f2_4 = temp_f18 - arg0->unk18;
sp3C = temp_f18;
@@ -1254,9 +1237,9 @@ void update_obj_banana(void *arg0) {
temp_f0_8 = sqrtf((temp_f2_4 * temp_f2_4) + (temp_f14_3 * temp_f14_3) + (temp_f16_2 * temp_f16_2), temp_f14_3);
if (temp_f0_8 == 0.0f) {
temp_f0_9 = D_802B9EE8;
arg0->unk18 = gPlayers[temp_t6].posX + temp_f0_9;
arg0->unk1C = gPlayers[temp_t6].posY + temp_f0_9;
arg0->unk20 = gPlayers[temp_t6].posZ + temp_f0_9;
arg0->unk18 = gPlayers[temp_t6].pos[0] + temp_f0_9;
arg0->unk1C = gPlayers[temp_t6].pos[1] + temp_f0_9;
arg0->unk20 = gPlayers[temp_t6].pos[2] + temp_f0_9;
} else {
arg0->unk18 = sp68 + (temp_f18 - (temp_f2_4 / temp_f0_8));
arg0->unk1C = (sp38 - (temp_f14_3 / temp_f0_8)) - 2.0f;
@@ -1355,9 +1338,9 @@ void func_802B2914(void *arg0, Player *player, s16 arg2) {
temp_a0 = &sp4C;
temp_a1 = &sp58;
temp_a2 = &sp60;
sp4C += player->posX;
sp50 += player->posY;
sp54 += player->posZ;
sp4C += player->pos[0];
sp50 += player->pos[1];
sp54 += player->pos[2];
sp60 = player->unk_034;
sp64 = player->unk_038;
sp58 = 0;
@@ -1368,10 +1351,10 @@ void func_802B2914(void *arg0, Player *player, s16 arg2) {
temp_t6 = temp_v0;
if (temp_v0 >= 0) {
temp_lo = temp_t6 * 0x70;
sp4C = player->posX;
sp50 = player->posY;
sp4C = player->pos[0];
sp50 = player->pos[1];
temp_s0 = &D_8015F9B8 + temp_lo;
sp54 = player->posZ;
sp54 = player->pos[2];
sp6E = temp_t6;
func_802AD950(temp_s0 + 0x30, temp_s0->unkC + 1.0f, temp_s0->unk18, temp_s0->unk1C, temp_s0->unk20, sp4C, sp50, sp54);
func_802B4E30(temp_s0);
@@ -1724,7 +1707,7 @@ GLOBAL_ASM("asm/non_matchings/code_802B0210/func_802B30EC.s")
? func_802B64C4(f32 *, s16); /* extern */
extern ? D_8015F9B8;
void update_obj_green_shell(void *arg0) {
void update_obj_green_shell(struct Actor *arg0) {
f32 sp80;
f32 sp7C;
f32 sp78;
@@ -1767,15 +1750,15 @@ void update_obj_green_shell(void *arg0) {
arg0->unk10 = arg0->unk10 + 0x71C;
switch (temp_t3) {
case 0:
temp_s1 = &gPlayers[arg0->unk14];
temp_s1 = &gPlayers[arg0->unk10[2]];
func_802B0210(&temp_s1->unk_110, arg0 + 0x30);
sp6C = 0.0f;
sp70 = temp_s1->unk_070;
sp74 = -(temp_s1->unk_070 + arg0->unkC + 2.0f);
func_802B63B8(&sp6C, temp_s1->unk_174);
arg0->unk18 = sp6C + temp_s1->posX;
arg0->unk18 = sp6C + temp_s1->pos[0];
temp_f14 = temp_s1->posY - sp70;
arg0->unk20 = sp74 + temp_s1->posZ;
arg0->unk20 = sp74 + temp_s1->pos[2];
sp54 = temp_f14;
temp_f0_2 = func_802ABE30(arg0->unk18, temp_f14, arg0->unk20, temp_s1->unk_11A);
temp_f2_2 = temp_f14 - temp_f0_2;
@@ -2521,32 +2504,20 @@ block_16:
GLOBAL_ASM("asm/non_matchings/code_802B0210/update_obj_red_blue_shell.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
void func_802B4E30(void *arg0) {
f32 temp_f0;
f32 temp_f0_2;
f32 temp_f0_3;
temp_f0 = arg0->unk44;
if ((temp_f0 < 0.0f) && (arg0->unk34 == 1)) {
arg0->unk18 = arg0->unk18 - (arg0->unk60 * temp_f0);
arg0->unk1C = arg0->unk1C - (arg0->unk64 * temp_f0);
arg0->unk20 = arg0->unk20 - (arg0->unk68 * temp_f0);
void func_802B4E30(struct Actor *arg0) {
if ((arg0->unk30.unk44 < 0.0f) && (arg0->unk30.unk34 == 1)) {
arg0->unk18[0] -= (arg0->unk30.unk60[0] * arg0->unk30.unk44);
arg0->unk18[1] -= (arg0->unk30.unk60[1] * arg0->unk30.unk44);
arg0->unk18[2] -= (arg0->unk30.unk60[2] * arg0->unk30.unk44);
}
temp_f0_2 = arg0->unk3C;
if ((temp_f0_2 < 0.0f) && (arg0->unk30 == 1)) {
arg0->unk18 = arg0->unk18 - (arg0->unk48 * temp_f0_2);
arg0->unk1C = arg0->unk1C - (arg0->unk4C * temp_f0_2);
arg0->unk20 = arg0->unk20 - (arg0->unk50 * temp_f0_2);
if ((arg0->unk30.unk3C < 0.0f) && (arg0->unk30.unk30 == 1)) {
arg0->unk18[0] -= (arg0->unk30.unk48[0] * arg0->unk30.unk3C);
arg0->unk18[1] -= (arg0->unk30.unk48[1] * arg0->unk30.unk3C);
arg0->unk18[2] -= (arg0->unk30.unk48[2] * arg0->unk30.unk3C);
}
temp_f0_3 = arg0->unk40;
if ((temp_f0_3 < 0.0f) && (arg0->unk32 == 1)) {
arg0->unk18 = arg0->unk18 - (arg0->unk54 * temp_f0_3);
arg0->unk1C = arg0->unk1C - (arg0->unk58 * temp_f0_3);
arg0->unk20 = arg0->unk20 - (arg0->unk5C * temp_f0_3);
if ((arg0->unk30.unk40 < 0.0f) && (arg0->unk30.unk32 == 1)) {
arg0->unk18[0] -= (arg0->unk30.unk54[0] * arg0->unk30.unk40);
arg0->unk18[1] -= (arg0->unk30.unk54[1] * arg0->unk30.unk40);
arg0->unk18[2] -= (arg0->unk30.unk54[2] * arg0->unk30.unk40);
}
}
#else
GLOBAL_ASM("asm/non_matchings/code_802B0210/func_802B4E30.s")
#endif
+8 -6
View File
@@ -118,10 +118,10 @@ s32 D_80150120;
s32 gMenuSelectionFromQuit;
UNUSED s32 D_80150128;
UNUSED s32 D_8015012C;
s32 D_80150130;
s32 D_80150134;
s32 D_80150138;
s32 D_8015013C;
f32 D_80150130[4];
//f32 D_80150134;
//f32 D_80150138;
//f32 D_8015013C;
UNUSED s32 D_80150140;
UNUSED s32 D_80150144;
f32 D_80150148;
@@ -139,7 +139,9 @@ uintptr_t gPhysicalFramebuffers[3];
u32 D_801502B4;
UNUSED u32 D_801502B8;
UNUSED u32 D_801502BC;
s32 D_801502C0[2064];
Mat4 D_801502C0;
s32 padding[2048];
u16 D_80152300[4];
u16 D_80152308;
@@ -640,7 +642,7 @@ void func_8000142C(void) {
D_800DC514 = 0;
}
temp_v0 = camera1->rotX2;
temp_v0 = camera1->rotX[1];
D_801625E8 = D_800DC5EC->pathCounter;
if (temp_v0 < 0x2000) {
func_80057A50(40, 100, "SOUTH ", D_801625E8);
+30 -30
View File
@@ -38,34 +38,34 @@ s32 func_802B4FF8(Mat4 arg0, s32 arg1) {
}
func_802B75F8(&gGfxPool->mtxPool[D_80150112 + 0x32B], arg0);
switch (arg1) { /* irregular */
case 0:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 1:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 3:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 2:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 0:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 1:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 3:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_PUSH | G_MTX_MUL | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
case 2:
gSPMatrix(gDisplayListHead++, VIRTUAL_TO_PHYSICAL(&gGfxPool->mtxPool[D_80150112 + 0x32B]), G_MTX_NOPUSH | G_MTX_MUL | G_MTX_MODELVIEW);
D_80150112 += 1;
break;
}
return 1;
}
f32 func_802B51E8(struct UnkStruct_802B51E8 *arg0, struct UnkStruct_802B51E8 *arg1) {
f32 func_802B51E8(Vec3f arg0, Vec3f arg1) {
f32 temp_f12;
f32 temp_f14;
f32 temp_f2;
temp_f2 = arg1->unk0 - arg0->unk0;
temp_f12 = arg1->unk4 - arg0->unk4;
temp_f14 = arg1->unk8 - arg0->unk8;
temp_f2 = arg1[0] - arg0[0];
temp_f12 = arg1[1] - arg0[1];
temp_f14 = arg1[2] - arg0[2];
return (temp_f2 * temp_f2) + (temp_f12 * temp_f12) + temp_f14 + temp_f14;
}
@@ -87,16 +87,16 @@ u32 func_802B5258(Vec3f arg0, Vec3s arg1) {
return func_802B7830(temp_v1, temp_v2);
}
void load_giant_egg(struct UnkStruct_802B51E8 *arg0, f32 arg1, f32 arg2, f32 arg3) {
arg0->unk0 = arg1;
arg0->unk4 = arg2;
arg0->unk8 = arg3;
void load_giant_egg(Vec3f arg0, f32 arg1, f32 arg2, f32 arg3) {
arg0[0] = arg1;
arg0[1] = arg2;
arg0[2] = arg3;
}
void func_802B52BC(struct UnkStruct_802B52BC *arg0, s16 arg1, s16 arg2, s16 arg3) {
arg0->unk0 = arg1;
arg0->unk2 = arg2;
arg0->unk4 = arg3;
void func_802B52BC(Vec3s arg0, s16 arg1, s16 arg2, s16 arg3) {
arg0[0] = arg1;
arg0[1] = arg2;
arg0[2] = arg3;
}
// These functions have bogus return values.
@@ -707,7 +707,7 @@ void func_802B5F00(Mat4 arg0, f32 arg1) {
f32 sins(u16); /* extern */
f32 coss(u16); /* extern */
void func_802B5F74(void *arg0, void *arg1, void *arg2) {
void func_802B5F74(Mat4 arg0, Vec3f arg1, Vec3s arg2) {
f32 sp3C;
f32 sp34;
f32 sp30;
@@ -1810,7 +1810,7 @@ s32 func_802B5224(f32, f32, u16); /* extern */
u16 func_802B7CA8(f32, f32); /* extern */
s32 func_802B8058(s32, s32, u16, u16); /* extern */
f32 func_802B80D0(void *arg0, void *arg1, u16 arg2, f32 arg3, f32 arg4, f32 arg5) {
f32 func_802B80D0(Vec3f arg0, Vec3f arg1, u16 arg2, f32 arg3, f32 arg4, f32 arg5) {
u16 sp5E;
u16 sp5A;
s32 sp28;
+17 -20
View File
@@ -10,6 +10,7 @@
#include "main.h"
#include "memory.h"
#include "variables.h"
#include <actor_types.h>
//#include "segment_symbols.h"
//#include "segments.h"
@@ -2478,25 +2479,21 @@ f32 func_802ABE30(f32 arg0, f32 arg1, f32 arg2, u16 arg3) {
return ((tile->height * arg0) + (tile->rotation * arg2) + tile->height2) / -tile->gravity;
}
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
f32 func_802ABE30(f32, f32, s32, u16); // extern
f32 func_802ABE30(f32, f32, f32, u16); // extern
f32 func_802ABEAC(void *arg0, void *arg1) {
if (arg0->unk4 == 1) {
return func_802ABE30(arg1->unk0, arg1->unk4, arg1->unk8, arg0->unkA);
f32 func_802ABEAC(UnkActorInner *arg0, Vec3f arg1) {
if (arg0->unk34 == 1) {
return func_802ABE30(arg1[0], arg1[1], arg1[2], arg0->unk3A);
}
if (arg0->unk0 == 1) {
return func_802ABE30(arg1->unk0, arg1->unk4, arg1->unk8, arg0->unk6);
if (arg0->unk30 == 1) {
return func_802ABE30(arg1[0], arg1[1], arg1[2], arg0->unk36);
}
if (arg0->unk2 == 1) {
return func_802ABE30(arg1->unk0, arg1->unk4, arg1->unk8, arg0->unk8);
if (arg0->unk32 == 1) {
return func_802ABE30(arg1[0], arg1[1], arg1[2], arg0->unk38);
}
return arg1->unk4;
return arg1[1];
}
#else
GLOBAL_ASM("asm/non_matchings/memory/func_802ABEAC.s")
#endif
#ifdef MIPS_TO_C
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
@@ -4500,7 +4497,7 @@ s32 func_802AFA34(Player *player, kartBoundingBoxCorner *corner, f32 cornerX, f3
}
if (func_802AD278(&spF8, temp_f20, temp_f22, temp_f24, temp_f26, (s32) corner->surfaceMapIndex, cornerX, cornerY, cornerZ) == 1) {
temp_f0 = func_802ABE30(temp_f22, temp_f24, temp_f26, corner->surfaceMapIndex);
temp_f2 = player->posY;
temp_f2 = player->pos[1];
if (!(temp_f2 < temp_f0) && !((2.0f * temp_f20) < (temp_f2 - temp_f0))) {
corner->cornerGroundY = temp_f0;
func_802AF9F0(temp_f0, &sp11C, sp108, corner);
@@ -4512,7 +4509,7 @@ s32 func_802AFA34(Player *player, kartBoundingBoxCorner *corner, f32 cornerX, f3
}
if (func_802AC760(&spF8, temp_f20, temp_f22, temp_f24, temp_f26, (s32) corner->surfaceMapIndex, cornerX, cornerY, cornerZ) == 1) {
temp_f0_2 = func_802ABE30(temp_f22, temp_f24, temp_f26, corner->surfaceMapIndex);
temp_f2_2 = player->posY;
temp_f2_2 = player->pos[1];
if (!(temp_f2_2 < temp_f0_2) && !((2.0f * temp_f20) < (temp_f2_2 - temp_f0_2))) {
corner->cornerGroundY = temp_f0_2;
func_802AF9F0(temp_f0_2, &sp128, sp10C, corner);
@@ -4524,7 +4521,7 @@ s32 func_802AFA34(Player *player, kartBoundingBoxCorner *corner, f32 cornerX, f3
}
if (func_802ACBA4(&spF8, temp_f20, temp_f22, temp_f24, temp_f26, (s32) corner->surfaceMapIndex, cornerX, cornerY, cornerZ) == 1) {
temp_f0_3 = func_802ABE30(temp_f22, temp_f24, temp_f26, corner->surfaceMapIndex);
temp_f2_3 = player->posY;
temp_f2_3 = player->pos[1];
if (!(temp_f2_3 < temp_f0_3) && !((2.0f * temp_f20) < (temp_f2_3 - temp_f0_3))) {
corner->cornerGroundY = temp_f0_3;
func_802AF9F0(temp_f0_3, &sp110, sp104, corner);
@@ -4570,7 +4567,7 @@ loop_34:
if ((temp_v1_3 & 0x4000) != 0) {
if ((corner->surfaceMapIndex != temp_s0) && (func_802AC760(phi_s7, temp_f20, temp_f22, temp_f24, temp_f26, (s32) temp_s0, cornerX, cornerY, cornerZ) == 1)) {
temp_f0_4 = func_802ABE30(temp_f22, temp_f24, temp_f26, temp_s0 & 0xFFFF);
temp_f2_4 = player->posY;
temp_f2_4 = player->pos[1];
if (!(temp_f2_4 < temp_f0_4) && !((phi_f30 * temp_f20) < (temp_f2_4 - temp_f0_4))) {
spD4 = temp_f0_4;
func_802AF9F0(temp_f0_4, &sp128, sp10C, corner);
@@ -4591,7 +4588,7 @@ loop_34:
if ((temp_v1_3 & 0x8000) != 0) {
if ((temp_v0_4->gravity != 0.0f) && (corner->surfaceMapIndex != temp_s0) && (func_802AD278(phi_s7, temp_f20, temp_f22, temp_f24, temp_f26, (s32) temp_s0, cornerX, cornerY, cornerZ) == 1)) {
temp_f0_5 = func_802ABE30(temp_f22, temp_f24, temp_f26, temp_s0 & 0xFFFF);
temp_f2_5 = player->posY;
temp_f2_5 = player->pos[1];
if (!(temp_f2_5 < temp_f0_5) && !((phi_f30 * temp_f20) < (temp_f2_5 - temp_f0_5))) {
corner->cornerGroundY = temp_f0_5;
func_802AF9F0(temp_f0_5, &sp11C, sp108, corner);
@@ -4606,7 +4603,7 @@ loop_34:
}
if ((temp_v0_4->gravity != 0.0f) && (corner->surfaceMapIndex != temp_s0) && (func_802ACBA4(phi_s7, temp_f20, temp_f22, temp_f24, temp_f26, (s32) temp_s0, cornerX, cornerY, cornerZ) == 1)) {
temp_f0_6 = func_802ABE30(temp_f22, temp_f24, temp_f26, temp_s0 & 0xFFFF);
temp_f2_6 = player->posY;
temp_f2_6 = player->pos[1];
if (!(temp_f2_6 < temp_f0_6) && !((phi_f30 * temp_f20) < (temp_f2_6 - temp_f0_6))) {
corner->cornerGroundY = temp_f0_6;
func_802AF9F0(temp_f0_6, &sp110, sp104, corner);