We are battling in Darkwater Beach. (1 opponent remains) (#409)

* func_8000418C WIP

* func_8000418C progress

* Mach func_80030664

* Match func_80030DE0

* func_8001CC48 NON_MATCHING

* Match func_8001B3C4

* Match func_80036040

* Match func_8001EFA4

* Match func_80016C68

* Update README

* Remove func_80030DE0 asm

* Update src/objects.c

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

* Match free_hud

---------

Co-authored-by: David Benepe <benepe96@gmail.com>
This commit is contained in:
Ryan Myers
2023-09-23 18:20:08 -04:00
committed by GitHub
co-authored by David Benepe
parent 888e4cde8b
commit fd40898eee
23 changed files with 421 additions and 890 deletions
-94
View File
@@ -1,94 +0,0 @@
glabel func_800A003C
/* 0A0C3C 800A003C 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0A0C40 800A0040 3C028012 */ lui $v0, %hi(gAssetHudElementIdsCount) # $v0, 0x8012
/* 0A0C44 800A0044 8C426CF8 */ lw $v0, %lo(gAssetHudElementIdsCount)($v0)
/* 0A0C48 800A0048 AFB00018 */ sw $s0, 0x18($sp)
/* 0A0C4C 800A004C AFBF002C */ sw $ra, 0x2c($sp)
/* 0A0C50 800A0050 AFB40028 */ sw $s4, 0x28($sp)
/* 0A0C54 800A0054 AFB30024 */ sw $s3, 0x24($sp)
/* 0A0C58 800A0058 AFB20020 */ sw $s2, 0x20($sp)
/* 0A0C5C 800A005C AFB1001C */ sw $s1, 0x1c($sp)
/* 0A0C60 800A0060 18400032 */ blez $v0, .L800A012C
/* 0A0C64 800A0064 00008025 */ move $s0, $zero
/* 0A0C68 800A0068 3C148012 */ lui $s4, %hi(gAssetHudElementIds) # $s4, 0x8012
/* 0A0C6C 800A006C 3C128012 */ lui $s2, %hi(gAssetHudElements) # $s2, 0x8012
/* 0A0C70 800A0070 26526CF4 */ addiu $s2, %lo(gAssetHudElements) # addiu $s2, $s2, 0x6cf4
/* 0A0C74 800A0074 26946CF0 */ addiu $s4, %lo(gAssetHudElementIds) # addiu $s4, $s4, 0x6cf0
/* 0A0C78 800A0078 00008825 */ move $s1, $zero
/* 0A0C7C 800A007C 3413C000 */ li $s3, 49152
.L800A0080:
/* 0A0C80 800A0080 8E4E0000 */ lw $t6, ($s2)
/* 0A0C84 800A0084 00000000 */ nop
/* 0A0C88 800A0088 01D17821 */ addu $t7, $t6, $s1
/* 0A0C8C 800A008C 8DE40000 */ lw $a0, ($t7)
/* 0A0C90 800A0090 00000000 */ nop
/* 0A0C94 800A0094 10800021 */ beqz $a0, .L800A011C
/* 0A0C98 800A0098 00000000 */ nop
/* 0A0C9C 800A009C 8E980000 */ lw $t8, ($s4)
/* 0A0CA0 800A00A0 0010C840 */ sll $t9, $s0, 1
/* 0A0CA4 800A00A4 03194021 */ addu $t0, $t8, $t9
/* 0A0CA8 800A00A8 85020000 */ lh $v0, ($t0)
/* 0A0CAC 800A00AC 00000000 */ nop
/* 0A0CB0 800A00B0 3049C000 */ andi $t1, $v0, 0xc000
/* 0A0CB4 800A00B4 16690005 */ bne $s3, $t1, .L800A00CC
/* 0A0CB8 800A00B8 304A8000 */ andi $t2, $v0, 0x8000
/* 0A0CBC 800A00BC 0C01ECAF */ jal free_texture
/* 0A0CC0 800A00C0 00000000 */ nop
/* 0A0CC4 800A00C4 10000010 */ b .L800A0108
/* 0A0CC8 800A00C8 8E4C0000 */ lw $t4, ($s2)
.L800A00CC:
/* 0A0CCC 800A00CC 11400005 */ beqz $t2, .L800A00E4
/* 0A0CD0 800A00D0 304B4000 */ andi $t3, $v0, 0x4000
/* 0A0CD4 800A00D4 0C01F32C */ jal free_sprite
/* 0A0CD8 800A00D8 00000000 */ nop
/* 0A0CDC 800A00DC 1000000A */ b .L800A0108
/* 0A0CE0 800A00E0 8E4C0000 */ lw $t4, ($s2)
.L800A00E4:
/* 0A0CE4 800A00E4 11600005 */ beqz $t3, .L800A00FC
/* 0A0CE8 800A00E8 00000000 */ nop
/* 0A0CEC 800A00EC 0C003FEE */ jal gParticlePtrList_addObject
/* 0A0CF0 800A00F0 00000000 */ nop
/* 0A0CF4 800A00F4 10000004 */ b .L800A0108
/* 0A0CF8 800A00F8 8E4C0000 */ lw $t4, ($s2)
.L800A00FC:
/* 0A0CFC 800A00FC 0C017FD0 */ jal func_8005FF40
/* 0A0D00 800A0100 00000000 */ nop
/* 0A0D04 800A0104 8E4C0000 */ lw $t4, ($s2)
.L800A0108:
/* 0A0D08 800A0108 3C028012 */ lui $v0, %hi(gAssetHudElementIdsCount) # $v0, 0x8012
/* 0A0D0C 800A010C 01916821 */ addu $t5, $t4, $s1
/* 0A0D10 800A0110 ADA00000 */ sw $zero, ($t5)
/* 0A0D14 800A0114 8C426CF8 */ lw $v0, %lo(gAssetHudElementIdsCount)($v0)
/* 0A0D18 800A0118 00000000 */ nop
.L800A011C:
/* 0A0D1C 800A011C 26100001 */ addiu $s0, $s0, 1
/* 0A0D20 800A0120 0202082A */ slt $at, $s0, $v0
/* 0A0D24 800A0124 1420FFD6 */ bnez $at, .L800A0080
/* 0A0D28 800A0128 26310004 */ addiu $s1, $s1, 4
.L800A012C:
/* 0A0D2C 800A012C 3C048012 */ lui $a0, %hi(gPlayerHud) # $a0, 0x8012
/* 0A0D30 800A0130 3C128012 */ lui $s2, %hi(gAssetHudElements) # $s2, 0x8012
/* 0A0D34 800A0134 3C148012 */ lui $s4, %hi(gAssetHudElementIds) # $s4, 0x8012
/* 0A0D38 800A0138 8C846CE0 */ lw $a0, %lo(gPlayerHud)($a0)
/* 0A0D3C 800A013C 26946CF0 */ addiu $s4, %lo(gAssetHudElementIds) # addiu $s4, $s4, 0x6cf0
/* 0A0D40 800A0140 0C01C450 */ jal free_from_memory_pool
/* 0A0D44 800A0144 26526CF4 */ addiu $s2, %lo(gAssetHudElements) # addiu $s2, $s2, 0x6cf4
/* 0A0D48 800A0148 8E840000 */ lw $a0, ($s4)
/* 0A0D4C 800A014C 0C01C450 */ jal free_from_memory_pool
/* 0A0D50 800A0150 00000000 */ nop
/* 0A0D54 800A0154 3C018012 */ lui $at, %hi(gAssetHudElementIdsCount) # $at, 0x8012
/* 0A0D58 800A0158 AC206CF8 */ sw $zero, %lo(gAssetHudElementIdsCount)($at)
/* 0A0D5C 800A015C 8E440000 */ lw $a0, ($s2)
/* 0A0D60 800A0160 0C01C450 */ jal free_from_memory_pool
/* 0A0D64 800A0164 00000000 */ nop
/* 0A0D68 800A0168 0C004013 */ jal gParticlePtrList_flush
/* 0A0D6C 800A016C 00000000 */ nop
/* 0A0D70 800A0170 8FBF002C */ lw $ra, 0x2c($sp)
/* 0A0D74 800A0174 8FB00018 */ lw $s0, 0x18($sp)
/* 0A0D78 800A0178 8FB1001C */ lw $s1, 0x1c($sp)
/* 0A0D7C 800A017C 8FB20020 */ lw $s2, 0x20($sp)
/* 0A0D80 800A0180 8FB30024 */ lw $s3, 0x24($sp)
/* 0A0D84 800A0184 8FB40028 */ lw $s4, 0x28($sp)
/* 0A0D88 800A0188 03E00008 */ jr $ra
/* 0A0D8C 800A018C 27BD0030 */ addiu $sp, $sp, 0x30
@@ -1,88 +0,0 @@
glabel func_80036040
/* 036C40 80036040 27BDFF68 */ addiu $sp, $sp, -0x98
/* 036C44 80036044 AFBF002C */ sw $ra, 0x2c($sp)
/* 036C48 80036048 AFB00028 */ sw $s0, 0x28($sp)
/* 036C4C 8003604C 8C83004C */ lw $v1, 0x4c($a0)
/* 036C50 80036050 00808025 */ move $s0, $a0
/* 036C54 80036054 906E0013 */ lbu $t6, 0x13($v1)
/* 036C58 80036058 00000000 */ nop
/* 036C5C 8003605C 29C10028 */ slti $at, $t6, 0x28
/* 036C60 80036060 10200049 */ beqz $at, .L80036188
/* 036C64 80036064 8FBF002C */ lw $ra, 0x2c($sp)
/* 036C68 80036068 8C620000 */ lw $v0, ($v1)
/* 036C6C 8003606C 24070001 */ li $a3, 1
/* 036C70 80036070 8C4F0040 */ lw $t7, 0x40($v0)
/* 036C74 80036074 00000000 */ nop
/* 036C78 80036078 81F80054 */ lb $t8, 0x54($t7)
/* 036C7C 8003607C 00000000 */ nop
/* 036C80 80036080 14F80041 */ bne $a3, $t8, .L80036188
/* 036C84 80036084 8FBF002C */ lw $ra, 0x2c($sp)
/* 036C88 80036088 8C430064 */ lw $v1, 0x64($v0)
/* 036C8C 8003608C 00000000 */ nop
/* 036C90 80036090 8C790144 */ lw $t9, 0x144($v1)
/* 036C94 80036094 00000000 */ nop
/* 036C98 80036098 1720003B */ bnez $t9, .L80036188
/* 036C9C 8003609C 8FBF002C */ lw $ra, 0x2c($sp)
/* 036CA0 800360A0 A0A7000B */ sb $a3, 0xb($a1)
/* 036CA4 800360A4 84880006 */ lh $t0, 6($a0)
/* 036CA8 800360A8 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 036CAC 800360AC 35094000 */ ori $t1, $t0, 0x4000
/* 036CB0 800360B0 A4890006 */ sh $t1, 6($a0)
/* 036CB4 800360B4 AC640144 */ sw $a0, 0x144($v1)
/* 036CB8 800360B8 844A0000 */ lh $t2, ($v0)
/* 036CBC 800360BC 44812000 */ mtc1 $at, $f4
/* 036CC0 800360C0 000A5823 */ negu $t3, $t2
/* 036CC4 800360C4 A7AB0038 */ sh $t3, 0x38($sp)
/* 036CC8 800360C8 844C0002 */ lh $t4, 2($v0)
/* 036CCC 800360CC 27A40050 */ addiu $a0, $sp, 0x50
/* 036CD0 800360D0 000C6823 */ negu $t5, $t4
/* 036CD4 800360D4 A7AD003A */ sh $t5, 0x3a($sp)
/* 036CD8 800360D8 844E0004 */ lh $t6, 4($v0)
/* 036CDC 800360DC E7A40040 */ swc1 $f4, 0x40($sp)
/* 036CE0 800360E0 000E7823 */ negu $t7, $t6
/* 036CE4 800360E4 A7AF003C */ sh $t7, 0x3c($sp)
/* 036CE8 800360E8 C446000C */ lwc1 $f6, 0xc($v0)
/* 036CEC 800360EC 27A50038 */ addiu $a1, $sp, 0x38
/* 036CF0 800360F0 46003207 */ neg.s $f8, $f6
/* 036CF4 800360F4 E7A80044 */ swc1 $f8, 0x44($sp)
/* 036CF8 800360F8 C44A0010 */ lwc1 $f10, 0x10($v0)
/* 036CFC 800360FC 00000000 */ nop
/* 036D00 80036100 46005407 */ neg.s $f16, $f10
/* 036D04 80036104 E7B00048 */ swc1 $f16, 0x48($sp)
/* 036D08 80036108 C4520014 */ lwc1 $f18, 0x14($v0)
/* 036D0C 8003610C AFA20090 */ sw $v0, 0x90($sp)
/* 036D10 80036110 46009107 */ neg.s $f4, $f18
/* 036D14 80036114 0C01BF9D */ jal object_transform_to_matrix_2
/* 036D18 80036118 E7A4004C */ swc1 $f4, 0x4c($sp)
/* 036D1C 8003611C 8E05000C */ lw $a1, 0xc($s0)
/* 036D20 80036120 8E060010 */ lw $a2, 0x10($s0)
/* 036D24 80036124 8E070014 */ lw $a3, 0x14($s0)
/* 036D28 80036128 2618000C */ addiu $t8, $s0, 0xc
/* 036D2C 8003612C 26190010 */ addiu $t9, $s0, 0x10
/* 036D30 80036130 26080014 */ addiu $t0, $s0, 0x14
/* 036D34 80036134 AFA80018 */ sw $t0, 0x18($sp)
/* 036D38 80036138 AFB90014 */ sw $t9, 0x14($sp)
/* 036D3C 8003613C AFB80010 */ sw $t8, 0x10($sp)
/* 036D40 80036140 0C01BD93 */ jal guMtxXFMF
/* 036D44 80036144 27A40050 */ addiu $a0, $sp, 0x50
/* 036D48 80036148 8FA20090 */ lw $v0, 0x90($sp)
/* 036D4C 8003614C C606000C */ lwc1 $f6, 0xc($s0)
/* 036D50 80036150 C4480008 */ lwc1 $f8, 8($v0)
/* 036D54 80036154 C6100010 */ lwc1 $f16, 0x10($s0)
/* 036D58 80036158 46083283 */ div.s $f10, $f6, $f8
/* 036D5C 8003615C C6060014 */ lwc1 $f6, 0x14($s0)
/* 036D60 80036160 E60A000C */ swc1 $f10, 0xc($s0)
/* 036D64 80036164 C4520008 */ lwc1 $f18, 8($v0)
/* 036D68 80036168 00000000 */ nop
/* 036D6C 8003616C 46128103 */ div.s $f4, $f16, $f18
/* 036D70 80036170 E6040010 */ swc1 $f4, 0x10($s0)
/* 036D74 80036174 C4480008 */ lwc1 $f8, 8($v0)
/* 036D78 80036178 00000000 */ nop
/* 036D7C 8003617C 46083283 */ div.s $f10, $f6, $f8
/* 036D80 80036180 E60A0014 */ swc1 $f10, 0x14($s0)
/* 036D84 80036184 8FBF002C */ lw $ra, 0x2c($sp)
.L80036188:
/* 036D88 80036188 8FB00028 */ lw $s0, 0x28($sp)
/* 036D8C 8003618C 03E00008 */ jr $ra
/* 036D90 80036190 27BD0098 */ addiu $sp, $sp, 0x98
-104
View File
@@ -1,104 +0,0 @@
glabel func_80016C68
/* 017868 80016C68 27BDFFA8 */ addiu $sp, $sp, -0x58
/* 01786C 80016C6C AFB60050 */ sw $s6, 0x50($sp)
/* 017870 80016C70 3C168012 */ lui $s6, %hi(objCount) # $s6, 0x8012
/* 017874 80016C74 26D6AE5C */ addiu $s6, %lo(objCount) # addiu $s6, $s6, -0x51a4
/* 017878 80016C78 8ECE0000 */ lw $t6, ($s6)
/* 01787C 80016C7C E7BA0034 */ swc1 $f26, 0x34($sp)
/* 017880 80016C80 E7B60024 */ swc1 $f22, 0x24($sp)
/* 017884 80016C84 4486B000 */ mtc1 $a2, $f22
/* 017888 80016C88 4487D000 */ mtc1 $a3, $f26
/* 01788C 80016C8C AFB1003C */ sw $s1, 0x3c($sp)
/* 017890 80016C90 E7B90028 */ swc1 $f25, 0x28($sp)
/* 017894 80016C94 E7B8002C */ swc1 $f24, 0x2c($sp)
/* 017898 80016C98 E7B50018 */ swc1 $f21, 0x18($sp)
/* 01789C 80016C9C E7B4001C */ swc1 $f20, 0x1c($sp)
/* 0178A0 80016CA0 46006506 */ mov.s $f20, $f12
/* 0178A4 80016CA4 46007606 */ mov.s $f24, $f14
/* 0178A8 80016CA8 AFBF0054 */ sw $ra, 0x54($sp)
/* 0178AC 80016CAC AFB5004C */ sw $s5, 0x4c($sp)
/* 0178B0 80016CB0 AFB40048 */ sw $s4, 0x48($sp)
/* 0178B4 80016CB4 AFB30044 */ sw $s3, 0x44($sp)
/* 0178B8 80016CB8 AFB20040 */ sw $s2, 0x40($sp)
/* 0178BC 80016CBC AFB00038 */ sw $s0, 0x38($sp)
/* 0178C0 80016CC0 E7BB0030 */ swc1 $f27, 0x30($sp)
/* 0178C4 80016CC4 E7B70020 */ swc1 $f23, 0x20($sp)
/* 0178C8 80016CC8 19C00034 */ blez $t6, .L80016D9C
/* 0178CC 80016CCC 00008825 */ move $s1, $zero
/* 0178D0 80016CD0 3C148012 */ lui $s4, %hi(gObjPtrList) # $s4, 0x8012
/* 0178D4 80016CD4 8FB30068 */ lw $s3, 0x68($sp)
/* 0178D8 80016CD8 2694AE58 */ addiu $s4, %lo(gObjPtrList) # addiu $s4, $s4, -0x51a8
/* 0178DC 80016CDC 00009025 */ move $s2, $zero
/* 0178E0 80016CE0 24150055 */ li $s5, 85
.L80016CE4:
/* 0178E4 80016CE4 8E8F0000 */ lw $t7, ($s4)
/* 0178E8 80016CE8 00000000 */ nop
/* 0178EC 80016CEC 01F2C021 */ addu $t8, $t7, $s2
/* 0178F0 80016CF0 8F100000 */ lw $s0, ($t8)
/* 0178F4 80016CF4 00000000 */ nop
/* 0178F8 80016CF8 86190006 */ lh $t9, 6($s0)
/* 0178FC 80016CFC 00000000 */ nop
/* 017900 80016D00 33288000 */ andi $t0, $t9, 0x8000
/* 017904 80016D04 15000020 */ bnez $t0, .L80016D88
/* 017908 80016D08 00000000 */ nop
/* 01790C 80016D0C 86090048 */ lh $t1, 0x48($s0)
/* 017910 80016D10 00000000 */ nop
/* 017914 80016D14 16A9001C */ bne $s5, $t1, .L80016D88
/* 017918 80016D18 00000000 */ nop
/* 01791C 80016D1C C604000C */ lwc1 $f4, 0xc($s0)
/* 017920 80016D20 C6060014 */ lwc1 $f6, 0x14($s0)
/* 017924 80016D24 46142081 */ sub.s $f2, $f4, $f20
/* 017928 80016D28 1660000C */ bnez $s3, .L80016D5C
/* 01792C 80016D2C 46163381 */ sub.s $f14, $f6, $f22
/* 017930 80016D30 C6080010 */ lwc1 $f8, 0x10($s0)
/* 017934 80016D34 46021282 */ mul.s $f10, $f2, $f2
/* 017938 80016D38 46184001 */ sub.s $f0, $f8, $f24
/* 01793C 80016D3C 46000402 */ mul.s $f16, $f0, $f0
/* 017940 80016D40 00000000 */ nop
/* 017944 80016D44 460E7102 */ mul.s $f4, $f14, $f14
/* 017948 80016D48 46105480 */ add.s $f18, $f10, $f16
/* 01794C 80016D4C 0C0326B4 */ jal sqrtf
/* 017950 80016D50 46049300 */ add.s $f12, $f18, $f4
/* 017954 80016D54 10000007 */ b .L80016D74
/* 017958 80016D58 461A003C */ c.lt.s $f0, $f26
.L80016D5C:
/* 01795C 80016D5C 46021182 */ mul.s $f6, $f2, $f2
/* 017960 80016D60 00000000 */ nop
/* 017964 80016D64 460E7202 */ mul.s $f8, $f14, $f14
/* 017968 80016D68 0C0326B4 */ jal sqrtf
/* 01796C 80016D6C 46083300 */ add.s $f12, $f6, $f8
/* 017970 80016D70 461A003C */ c.lt.s $f0, $f26
.L80016D74:
/* 017974 80016D74 00000000 */ nop
/* 017978 80016D78 45000003 */ bc1f .L80016D88
/* 01797C 80016D7C 00000000 */ nop
/* 017980 80016D80 10000007 */ b .L80016DA0
/* 017984 80016D84 02001025 */ move $v0, $s0
.L80016D88:
/* 017988 80016D88 8ECA0000 */ lw $t2, ($s6)
/* 01798C 80016D8C 26310001 */ addiu $s1, $s1, 1
/* 017990 80016D90 022A082A */ slt $at, $s1, $t2
/* 017994 80016D94 1420FFD3 */ bnez $at, .L80016CE4
/* 017998 80016D98 26520004 */ addiu $s2, $s2, 4
.L80016D9C:
/* 01799C 80016D9C 00001025 */ move $v0, $zero
.L80016DA0:
/* 0179A0 80016DA0 8FBF0054 */ lw $ra, 0x54($sp)
/* 0179A4 80016DA4 C7B50018 */ lwc1 $f21, 0x18($sp)
/* 0179A8 80016DA8 C7B4001C */ lwc1 $f20, 0x1c($sp)
/* 0179AC 80016DAC C7B70020 */ lwc1 $f23, 0x20($sp)
/* 0179B0 80016DB0 C7B60024 */ lwc1 $f22, 0x24($sp)
/* 0179B4 80016DB4 C7B90028 */ lwc1 $f25, 0x28($sp)
/* 0179B8 80016DB8 C7B8002C */ lwc1 $f24, 0x2c($sp)
/* 0179BC 80016DBC C7BB0030 */ lwc1 $f27, 0x30($sp)
/* 0179C0 80016DC0 C7BA0034 */ lwc1 $f26, 0x34($sp)
/* 0179C4 80016DC4 8FB00038 */ lw $s0, 0x38($sp)
/* 0179C8 80016DC8 8FB1003C */ lw $s1, 0x3c($sp)
/* 0179CC 80016DCC 8FB20040 */ lw $s2, 0x40($sp)
/* 0179D0 80016DD0 8FB30044 */ lw $s3, 0x44($sp)
/* 0179D4 80016DD4 8FB40048 */ lw $s4, 0x48($sp)
/* 0179D8 80016DD8 8FB5004C */ lw $s5, 0x4c($sp)
/* 0179DC 80016DDC 8FB60050 */ lw $s6, 0x50($sp)
/* 0179E0 80016DE0 03E00008 */ jr $ra
/* 0179E4 80016DE4 27BD0058 */ addiu $sp, $sp, 0x58
-86
View File
@@ -1,86 +0,0 @@
glabel func_8001B3C4
/* 01BFC4 8001B3C4 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 01BFC8 8001B3C8 AFBF001C */ sw $ra, 0x1c($sp)
/* 01BFCC 8001B3CC AFB00018 */ sw $s0, 0x18($sp)
/* 01BFD0 8001B3D0 3C01800E */ lui $at, %hi(D_800DC718) # $at, 0x800e
/* 01BFD4 8001B3D4 00808025 */ move $s0, $a0
/* 01BFD8 8001B3D8 AFA50024 */ sw $a1, 0x24($sp)
/* 01BFDC 8001B3DC 0C0166D3 */ jal free_tt_ghost_data
/* 01BFE0 8001B3E0 AC20C718 */ sw $zero, %lo(D_800DC718)($at)
/* 01BFE4 8001B3E4 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e
/* 01BFE8 8001B3E8 A020C734 */ sb $zero, %lo(D_800DC734)($at)
/* 01BFEC 8001B3EC 0C0078A7 */ jal get_misc_asset
/* 01BFF0 8001B3F0 2404001C */ li $a0, 28
/* 01BFF4 8001B3F4 804E0000 */ lb $t6, ($v0)
/* 01BFF8 8001B3F8 2407FFFF */ li $a3, -1
/* 01BFFC 8001B3FC 00402825 */ move $a1, $v0
/* 01C000 8001B400 10EE000E */ beq $a3, $t6, .L8001B43C
/* 01C004 8001B404 00003025 */ move $a2, $zero
/* 01C008 8001B408 804F0000 */ lb $t7, ($v0)
/* 01C00C 8001B40C 00402021 */ addu $a0, $v0, $zero
/* 01C010 8001B410 120F000A */ beq $s0, $t7, .L8001B43C
/* 01C014 8001B414 00000000 */ nop
.L8001B418:
/* 01C018 8001B418 80980001 */ lb $t8, 1($a0)
/* 01C01C 8001B41C 24C60001 */ addiu $a2, $a2, 1
/* 01C020 8001B420 10F80006 */ beq $a3, $t8, .L8001B43C
/* 01C024 8001B424 24840001 */ addiu $a0, $a0, 1
/* 01C028 8001B428 00A6C821 */ addu $t9, $a1, $a2
/* 01C02C 8001B42C 83280000 */ lb $t0, ($t9)
/* 01C030 8001B430 00000000 */ nop
/* 01C034 8001B434 1608FFF8 */ bne $s0, $t0, .L8001B418
/* 01C038 8001B438 00000000 */ nop
.L8001B43C:
/* 01C03C 8001B43C 3C10800E */ lui $s0, %hi(D_800DC738) # $s0, 0x800e
/* 01C040 8001B440 2610C738 */ addiu $s0, %lo(D_800DC738) # addiu $s0, $s0, -0x38c8
/* 01C044 8001B444 92090000 */ lbu $t1, ($s0)
/* 01C048 8001B448 240A0010 */ li $t2, 16
/* 01C04C 8001B44C 11200024 */ beqz $t1, .L8001B4E0
/* 01C050 8001B450 00CA2804 */ sllv $a1, $t2, $a2
/* 01C054 8001B454 0C027A9E */ jal set_eeprom_settings_value
/* 01C058 8001B458 000527C3 */ sra $a0, $a1, 0x1f
/* 01C05C 8001B45C 0C027AC2 */ jal get_eeprom_settings
/* 01C060 8001B460 00000000 */ nop
/* 01C064 8001B464 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff
/* 01C068 8001B468 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0
/* 01C06C 8001B46C 00616824 */ and $t5, $v1, $at
/* 01C070 8001B470 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff
/* 01C074 8001B474 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0
/* 01C078 8001B478 15A1000F */ bne $t5, $at, .L8001B4B8
/* 01C07C 8001B47C 2404024C */ li $a0, 588
/* 01C080 8001B480 0C0270B8 */ jal set_magic_code_flags
/* 01C084 8001B484 24040001 */ li $a0, 1
/* 01C088 8001B488 2404024E */ li $a0, 590
/* 01C08C 8001B48C 0C000741 */ jal play_sound_global
/* 01C090 8001B490 00002825 */ move $a1, $zero
/* 01C094 8001B494 2404024F */ li $a0, 591
/* 01C098 8001B498 00002825 */ move $a1, $zero
/* 01C09C 8001B49C 0C0003F7 */ jal func_80000FDC
/* 01C0A0 8001B4A0 3C063FC0 */ lui $a2, 0x3fc0
/* 01C0A4 8001B4A4 0C030C7B */ jal func_800C31EC
/* 01C0A8 8001B4A8 24040054 */ li $a0, 84
/* 01C0AC 8001B4AC 1000000A */ b .L8001B4D8
/* 01C0B0 8001B4B0 00000000 */ nop
/* 01C0B4 8001B4B4 2404024C */ li $a0, 588
.L8001B4B8:
/* 01C0B8 8001B4B8 0C000741 */ jal play_sound_global
/* 01C0BC 8001B4BC 00002825 */ move $a1, $zero
/* 01C0C0 8001B4C0 2404024D */ li $a0, 589
/* 01C0C4 8001B4C4 00002825 */ move $a1, $zero
/* 01C0C8 8001B4C8 0C0003F7 */ jal func_80000FDC
/* 01C0CC 8001B4CC 3C063F80 */ lui $a2, 0x3f80
/* 01C0D0 8001B4D0 0C030C7B */ jal func_800C31EC
/* 01C0D4 8001B4D4 24040053 */ li $a0, 83
.L8001B4D8:
/* 01C0D8 8001B4D8 10000004 */ b .L8001B4EC
/* 01C0DC 8001B4DC A2000000 */ sb $zero, ($s0)
.L8001B4E0:
/* 01C0E0 8001B4E0 8FA40024 */ lw $a0, 0x24($sp)
/* 01C0E4 8001B4E4 0C029B6D */ jal play_time_trial_end_message
/* 01C0E8 8001B4E8 00000000 */ nop
.L8001B4EC:
/* 01C0EC 8001B4EC 8FBF001C */ lw $ra, 0x1c($sp)
/* 01C0F0 8001B4F0 8FB00018 */ lw $s0, 0x18($sp)
/* 01C0F4 8001B4F4 03E00008 */ jr $ra
/* 01C0F8 8001B4F8 27BD0020 */ addiu $sp, $sp, 0x20
-178
View File
@@ -1,178 +0,0 @@
.late_rodata
glabel D_800E5668
.double 0.1
.text
glabel func_8001EFA4
/* 01FBA4 8001EFA4 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 01FBA8 8001EFA8 AFBF0024 */ sw $ra, 0x24($sp)
/* 01FBAC 8001EFAC AFB20020 */ sw $s2, 0x20($sp)
/* 01FBB0 8001EFB0 AFB1001C */ sw $s1, 0x1c($sp)
/* 01FBB4 8001EFB4 AFB00018 */ sw $s0, 0x18($sp)
/* 01FBB8 8001EFB8 8C91003C */ lw $s1, 0x3c($a0)
/* 01FBBC 8001EFBC 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 01FBC0 8001EFC0 922F000B */ lbu $t7, 0xb($s1)
/* 01FBC4 8001EFC4 44811000 */ mtc1 $at, $f2
/* 01FBC8 8001EFC8 448F2000 */ mtc1 $t7, $f4
/* 01FBCC 8001EFCC 3C014280 */ li $at, 0x42800000 # 64.000000
/* 01FBD0 8001EFD0 46802020 */ cvt.s.w $f0, $f4
/* 01FBD4 8001EFD4 8CB00064 */ lw $s0, 0x64($a1)
/* 01FBD8 8001EFD8 44813000 */ mtc1 $at, $f6
/* 01FBDC 8001EFDC 4602003C */ c.lt.s $f0, $f2
/* 01FBE0 8001EFE0 00809025 */ move $s2, $a0
/* 01FBE4 8001EFE4 45000003 */ bc1f .L8001EFF4
/* 01FBE8 8001EFE8 00000000 */ nop
/* 01FBEC 8001EFEC 46001006 */ mov.s $f0, $f2
/* 01FBF0 8001EFF0 00000000 */ nop
.L8001EFF4:
/* 01FBF4 8001EFF4 46060003 */ div.s $f0, $f0, $f6
/* 01FBF8 8001EFF8 8CB80040 */ lw $t8, 0x40($a1)
/* 01FBFC 8001EFFC 00000000 */ nop
/* 01FC00 8001F000 C708000C */ lwc1 $f8, 0xc($t8)
/* 01FC04 8001F004 ACA00078 */ sw $zero, 0x78($a1)
/* 01FC08 8001F008 ACA0007C */ sw $zero, 0x7c($a1)
/* 01FC0C 8001F00C 46004282 */ mul.s $f10, $f8, $f0
/* 01FC10 8001F010 E4AA0008 */ swc1 $f10, 8($a1)
/* 01FC14 8001F014 82220022 */ lb $v0, 0x22($s1)
/* 01FC18 8001F018 00000000 */ nop
/* 01FC1C 8001F01C 28410002 */ slti $at, $v0, 2
/* 01FC20 8001F020 14200006 */ bnez $at, .L8001F03C
/* 01FC24 8001F024 2841000A */ slti $at, $v0, 0xa
/* 01FC28 8001F028 10200004 */ beqz $at, .L8001F03C
/* 01FC2C 8001F02C 2459FFFF */ addiu $t9, $v0, -1
/* 01FC30 8001F030 ACB90078 */ sw $t9, 0x78($a1)
/* 01FC34 8001F034 82220022 */ lb $v0, 0x22($s1)
/* 01FC38 8001F038 00000000 */ nop
.L8001F03C:
/* 01FC3C 8001F03C 2841000A */ slti $at, $v0, 0xa
/* 01FC40 8001F040 14200004 */ bnez $at, .L8001F054
/* 01FC44 8001F044 28410012 */ slti $at, $v0, 0x12
/* 01FC48 8001F048 10200002 */ beqz $at, .L8001F054
/* 01FC4C 8001F04C 2448FFF7 */ addiu $t0, $v0, -9
/* 01FC50 8001F050 ACA80078 */ sw $t0, 0x78($a1)
.L8001F054:
/* 01FC54 8001F054 C650000C */ lwc1 $f16, 0xc($s2)
/* 01FC58 8001F058 3C01800E */ lui $at, %hi(D_800E5668) # $at, 0x800e
/* 01FC5C 8001F05C E4B0000C */ swc1 $f16, 0xc($a1)
/* 01FC60 8001F060 C6520010 */ lwc1 $f18, 0x10($s2)
/* 01FC64 8001F064 00000000 */ nop
/* 01FC68 8001F068 E4B20010 */ swc1 $f18, 0x10($a1)
/* 01FC6C 8001F06C C6440014 */ lwc1 $f4, 0x14($s2)
/* 01FC70 8001F070 00000000 */ nop
/* 01FC74 8001F074 E4A40014 */ swc1 $f4, 0x14($a1)
/* 01FC78 8001F078 86490000 */ lh $t1, ($s2)
/* 01FC7C 8001F07C 00000000 */ nop
/* 01FC80 8001F080 A4A90000 */ sh $t1, ($a1)
/* 01FC84 8001F084 864A0004 */ lh $t2, 4($s2)
/* 01FC88 8001F088 00000000 */ nop
/* 01FC8C 8001F08C A4AA0004 */ sh $t2, 4($a1)
/* 01FC90 8001F090 864B0002 */ lh $t3, 2($s2)
/* 01FC94 8001F094 00000000 */ nop
/* 01FC98 8001F098 A4AB0002 */ sh $t3, 2($a1)
/* 01FC9C 8001F09C A6000026 */ sh $zero, 0x26($s0)
/* 01FCA0 8001F0A0 822C0021 */ lb $t4, 0x21($s1)
/* 01FCA4 8001F0A4 00000000 */ nop
/* 01FCA8 8001F0A8 A20C003D */ sb $t4, 0x3d($s0)
/* 01FCAC 8001F0AC 822D0010 */ lb $t5, 0x10($s1)
/* 01FCB0 8001F0B0 00000000 */ nop
/* 01FCB4 8001F0B4 A60D0028 */ sh $t5, 0x28($s0)
/* 01FCB8 8001F0B8 822E0014 */ lb $t6, 0x14($s1)
/* 01FCBC 8001F0BC C430566C */ lwc1 $f16, %lo(D_800E5668 + 4)($at)
/* 01FCC0 8001F0C0 448E3000 */ mtc1 $t6, $f6
/* 01FCC4 8001F0C4 C4315668 */ lwc1 $f17, %lo(D_800E5668)($at)
/* 01FCC8 8001F0C8 46803220 */ cvt.s.w $f8, $f6
/* 01FCCC 8001F0CC 460042A1 */ cvt.d.s $f10, $f8
/* 01FCD0 8001F0D0 46305482 */ mul.d $f18, $f10, $f16
/* 01FCD4 8001F0D4 46209120 */ cvt.s.d $f4, $f18
/* 01FCD8 8001F0D8 E6040008 */ swc1 $f4, 8($s0)
/* 01FCDC 8001F0DC 8624000E */ lh $a0, 0xe($s1)
/* 01FCE0 8001F0E0 0C00322D */ jal normalise_time
/* 01FCE4 8001F0E4 AFA5002C */ sw $a1, 0x2c($sp)
/* 01FCE8 8001F0E8 8FA5002C */ lw $a1, 0x2c($sp)
/* 01FCEC 8001F0EC A602002A */ sh $v0, 0x2a($s0)
/* 01FCF0 8001F0F0 822F0012 */ lb $t7, 0x12($s1)
/* 01FCF4 8001F0F4 44800000 */ mtc1 $zero, $f0
/* 01FCF8 8001F0F8 A0AF003B */ sb $t7, 0x3b($a1)
/* 01FCFC 8001F0FC 92380016 */ lbu $t8, 0x16($s1)
/* 01FD00 8001F100 00000000 */ nop
/* 01FD04 8001F104 A4B80018 */ sh $t8, 0x18($a1)
/* 01FD08 8001F108 82390017 */ lb $t9, 0x17($s1)
/* 01FD0C 8001F10C E6000010 */ swc1 $f0, 0x10($s0)
/* 01FD10 8001F110 44993000 */ mtc1 $t9, $f6
/* 01FD14 8001F114 00000000 */ nop
/* 01FD18 8001F118 46803220 */ cvt.s.w $f8, $f6
/* 01FD1C 8001F11C E6080014 */ swc1 $f8, 0x14($s0)
/* 01FD20 8001F120 92280018 */ lbu $t0, 0x18($s1)
/* 01FD24 8001F124 00000000 */ nop
/* 01FD28 8001F128 A208002C */ sb $t0, 0x2c($s0)
/* 01FD2C 8001F12C 92290019 */ lbu $t1, 0x19($s1)
/* 01FD30 8001F130 00000000 */ nop
/* 01FD34 8001F134 A209002E */ sb $t1, 0x2e($s0)
/* 01FD38 8001F138 822A002C */ lb $t2, 0x2c($s1)
/* 01FD3C 8001F13C 00000000 */ nop
/* 01FD40 8001F140 A20A003E */ sb $t2, 0x3e($s0)
/* 01FD44 8001F144 822B002D */ lb $t3, 0x2d($s1)
/* 01FD48 8001F148 00000000 */ nop
/* 01FD4C 8001F14C A20B003F */ sb $t3, 0x3f($s0)
/* 01FD50 8001F150 822C001A */ lb $t4, 0x1a($s1)
/* 01FD54 8001F154 00000000 */ nop
/* 01FD58 8001F158 A20C0031 */ sb $t4, 0x31($s0)
/* 01FD5C 8001F15C 822D001B */ lb $t5, 0x1b($s1)
/* 01FD60 8001F160 00000000 */ nop
/* 01FD64 8001F164 A20D0032 */ sb $t5, 0x32($s0)
/* 01FD68 8001F168 822E001C */ lb $t6, 0x1c($s1)
/* 01FD6C 8001F16C 00000000 */ nop
/* 01FD70 8001F170 A20E0033 */ sb $t6, 0x33($s0)
/* 01FD74 8001F174 822F0020 */ lb $t7, 0x20($s1)
/* 01FD78 8001F178 A200002D */ sb $zero, 0x2d($s0)
/* 01FD7C 8001F17C E6000004 */ swc1 $f0, 4($s0)
/* 01FD80 8001F180 E6000000 */ swc1 $f0, ($s0)
/* 01FD84 8001F184 A20F0034 */ sb $t7, 0x34($s0)
/* 01FD88 8001F188 AE40006C */ sw $zero, 0x6c($s2)
/* 01FD8C 8001F18C 86240024 */ lh $a0, 0x24($s1)
/* 01FD90 8001F190 0C00322D */ jal normalise_time
/* 01FD94 8001F194 00000000 */ nop
/* 01FD98 8001F198 A6020036 */ sh $v0, 0x36($s0)
/* 01FD9C 8001F19C 82380026 */ lb $t8, 0x26($s1)
/* 01FDA0 8001F1A0 00000000 */ nop
/* 01FDA4 8001F1A4 A218003A */ sb $t8, 0x3a($s0)
/* 01FDA8 8001F1A8 82230013 */ lb $v1, 0x13($s1)
/* 01FDAC 8001F1AC 00000000 */ nop
/* 01FDB0 8001F1B0 04600002 */ bltz $v1, .L8001F1BC
/* 01FDB4 8001F1B4 00000000 */ nop
/* 01FDB8 8001F1B8 A203002F */ sb $v1, 0x2f($s0)
.L8001F1BC:
/* 01FDBC 8001F1BC 8239001F */ lb $t9, 0x1f($s1)
/* 01FDC0 8001F1C0 8E040018 */ lw $a0, 0x18($s0)
/* 01FDC4 8001F1C4 A2190039 */ sb $t9, 0x39($s0)
/* 01FDC8 8001F1C8 9228001E */ lbu $t0, 0x1e($s1)
/* 01FDCC 8001F1CC 240D00FF */ li $t5, 255
/* 01FDD0 8001F1D0 A2080038 */ sb $t0, 0x38($s0)
/* 01FDD4 8001F1D4 82290029 */ lb $t1, 0x29($s1)
/* 01FDD8 8001F1D8 00000000 */ nop
/* 01FDDC 8001F1DC A209003B */ sb $t1, 0x3b($s0)
/* 01FDE0 8001F1E0 822A002E */ lb $t2, 0x2e($s1)
/* 01FDE4 8001F1E4 00000000 */ nop
/* 01FDE8 8001F1E8 A20A0040 */ sb $t2, 0x40($s0)
/* 01FDEC 8001F1EC 822B002F */ lb $t3, 0x2f($s1)
/* 01FDF0 8001F1F0 00000000 */ nop
/* 01FDF4 8001F1F4 A20B0041 */ sb $t3, 0x41($s0)
/* 01FDF8 8001F1F8 822C002B */ lb $t4, 0x2b($s1)
/* 01FDFC 8001F1FC A20D0042 */ sb $t5, 0x42($s0)
/* 01FE00 8001F200 10800003 */ beqz $a0, .L8001F210
/* 01FE04 8001F204 A20C003C */ sb $t4, 0x3c($s0)
/* 01FE08 8001F208 0C001223 */ jal func_8000488C
/* 01FE0C 8001F20C 00000000 */ nop
.L8001F210:
/* 01FE10 8001F210 AE000018 */ sw $zero, 0x18($s0)
/* 01FE14 8001F214 822E0030 */ lb $t6, 0x30($s1)
/* 01FE18 8001F218 AE12001C */ sw $s2, 0x1c($s0)
/* 01FE1C 8001F21C A2000045 */ sb $zero, 0x45($s0)
/* 01FE20 8001F220 A20E0043 */ sb $t6, 0x43($s0)
/* 01FE24 8001F224 8FBF0024 */ lw $ra, 0x24($sp)
/* 01FE28 8001F228 8FB20020 */ lw $s2, 0x20($sp)
/* 01FE2C 8001F22C 8FB1001C */ lw $s1, 0x1c($sp)
/* 01FE30 8001F230 8FB00018 */ lw $s0, 0x18($sp)
/* 01FE34 8001F234 03E00008 */ jr $ra
/* 01FE38 8001F238 27BD0028 */ addiu $sp, $sp, 0x28
-64
View File
@@ -1,64 +0,0 @@
glabel func_80030664
/* 031264 80030664 00057400 */ sll $t6, $a1, 0x10
/* 031268 80030668 0006C400 */ sll $t8, $a2, 0x10
/* 03126C 8003066C 0018CC03 */ sra $t9, $t8, 0x10
/* 031270 80030670 000E7C03 */ sra $t7, $t6, 0x10
/* 031274 80030674 AFA50004 */ sw $a1, 4($sp)
/* 031278 80030678 AFA60008 */ sw $a2, 8($sp)
/* 03127C 8003067C AFA7000C */ sw $a3, 0xc($sp)
/* 031280 80030680 30E900FF */ andi $t1, $a3, 0xff
/* 031284 80030684 032F082A */ slt $at, $t9, $t7
/* 031288 80030688 01203825 */ move $a3, $t1
/* 03128C 8003068C 03203025 */ move $a2, $t9
/* 031290 80030690 10200007 */ beqz $at, .L800306B0
/* 031294 80030694 01E02825 */ move $a1, $t7
/* 031298 80030698 00192C00 */ sll $a1, $t9, 0x10
/* 03129C 8003069C 000F3400 */ sll $a2, $t7, 0x10
/* 0312A0 800306A0 00055403 */ sra $t2, $a1, 0x10
/* 0312A4 800306A4 00065C03 */ sra $t3, $a2, 0x10
/* 0312A8 800306A8 01402825 */ move $a1, $t2
/* 0312AC 800306AC 01603025 */ move $a2, $t3
.L800306B0:
/* 0312B0 800306B0 28C10400 */ slti $at, $a2, 0x400
/* 0312B4 800306B4 14200002 */ bnez $at, .L800306C0
/* 0312B8 800306B8 000468C0 */ sll $t5, $a0, 3
/* 0312BC 800306BC 240603FF */ li $a2, 1023
.L800306C0:
/* 0312C0 800306C0 24C2FFFB */ addiu $v0, $a2, -5
/* 0312C4 800306C4 00A2082A */ slt $at, $a1, $v0
/* 0312C8 800306C8 14200004 */ bnez $at, .L800306DC
/* 0312CC 800306CC 01A46823 */ subu $t5, $t5, $a0
/* 0312D0 800306D0 00022C00 */ sll $a1, $v0, 0x10
/* 0312D4 800306D4 00056403 */ sra $t4, $a1, 0x10
/* 0312D8 800306D8 01802825 */ move $a1, $t4
.L800306DC:
/* 0312DC 800306DC 93A30013 */ lbu $v1, 0x13($sp)
/* 0312E0 800306E0 93A80017 */ lbu $t0, 0x17($sp)
/* 0312E4 800306E4 3C0E8012 */ lui $t6, %hi(gFogData) # $t6, 0x8012
/* 0312E8 800306E8 25CED388 */ addiu $t6, %lo(gFogData) # addiu $t6, $t6, -0x2c78
/* 0312EC 800306EC 000D68C0 */ sll $t5, $t5, 3
/* 0312F0 800306F0 01AE1021 */ addu $v0, $t5, $t6
/* 0312F4 800306F4 00077C00 */ sll $t7, $a3, 0x10
/* 0312F8 800306F8 00054C00 */ sll $t1, $a1, 0x10
/* 0312FC 800306FC 00065400 */ sll $t2, $a2, 0x10
/* 031300 80030700 0003C400 */ sll $t8, $v1, 0x10
/* 031304 80030704 0008CC00 */ sll $t9, $t0, 0x10
/* 031308 80030708 AC400020 */ sw $zero, 0x20($v0)
/* 03130C 8003070C AC400024 */ sw $zero, 0x24($v0)
/* 031310 80030710 AC400014 */ sw $zero, 0x14($v0)
/* 031314 80030714 AC400018 */ sw $zero, 0x18($v0)
/* 031318 80030718 AC40001C */ sw $zero, 0x1c($v0)
/* 03131C 8003071C AC4F0000 */ sw $t7, ($v0)
/* 031320 80030720 AC580004 */ sw $t8, 4($v0)
/* 031324 80030724 AC590008 */ sw $t9, 8($v0)
/* 031328 80030728 AC49000C */ sw $t1, 0xc($v0)
/* 03132C 8003072C AC4A0010 */ sw $t2, 0x10($v0)
/* 031330 80030730 A0470028 */ sb $a3, 0x28($v0)
/* 031334 80030734 A445002C */ sh $a1, 0x2c($v0)
/* 031338 80030738 A446002E */ sh $a2, 0x2e($v0)
/* 03133C 8003073C AC400030 */ sw $zero, 0x30($v0)
/* 031340 80030740 AC400034 */ sw $zero, 0x34($v0)
/* 031344 80030744 A0430029 */ sb $v1, 0x29($v0)
/* 031348 80030748 03E00008 */ jr $ra
/* 03134C 8003074C A048002A */ sb $t0, 0x2a($v0)
-127
View File
@@ -1,127 +0,0 @@
glabel func_80030DE0
/* 0319E0 80030DE0 27BDFFF0 */ addiu $sp, $sp, -0x10
/* 0319E4 80030DE4 AFB1000C */ sw $s1, 0xc($sp)
/* 0319E8 80030DE8 AFB00008 */ sw $s0, 8($sp)
/* 0319EC 80030DEC 8FB00024 */ lw $s0, 0x24($sp)
/* 0319F0 80030DF0 8FB10020 */ lw $s1, 0x20($sp)
/* 0319F4 80030DF4 8FA30028 */ lw $v1, 0x28($sp)
/* 0319F8 80030DF8 0211082A */ slt $at, $s0, $s1
/* 0319FC 80030DFC 10200004 */ beqz $at, .L80030E10
/* 031A00 80030E00 000470C0 */ sll $t6, $a0, 3
/* 031A04 80030E04 02201025 */ move $v0, $s1
/* 031A08 80030E08 02008825 */ move $s1, $s0
/* 031A0C 80030E0C 00408025 */ move $s0, $v0
.L80030E10:
/* 031A10 80030E10 2A010400 */ slti $at, $s0, 0x400
/* 031A14 80030E14 14200002 */ bnez $at, .L80030E20
/* 031A18 80030E18 01C47023 */ subu $t6, $t6, $a0
/* 031A1C 80030E1C 241003FF */ li $s0, 1023
.L80030E20:
/* 031A20 80030E20 2602FFFB */ addiu $v0, $s0, -5
/* 031A24 80030E24 0222082A */ slt $at, $s1, $v0
/* 031A28 80030E28 14200002 */ bnez $at, .L80030E34
/* 031A2C 80030E2C 000E70C0 */ sll $t6, $t6, 3
/* 031A30 80030E30 00408825 */ move $s1, $v0
.L80030E34:
/* 031A34 80030E34 3C0F8012 */ lui $t7, %hi(gFogData) # $t7, 0x8012
/* 031A38 80030E38 25EFD388 */ addiu $t7, %lo(gFogData) # addiu $t7, $t7, -0x2c78
/* 031A3C 80030E3C 01CF1021 */ addu $v0, $t6, $t7
/* 031A40 80030E40 8C590000 */ lw $t9, ($v0)
/* 031A44 80030E44 0005C400 */ sll $t8, $a1, 0x10
/* 031A48 80030E48 03194023 */ subu $t0, $t8, $t9
/* 031A4C 80030E4C 0103001A */ div $zero, $t0, $v1
/* 031A50 80030E50 8C4B0004 */ lw $t3, 4($v0)
/* 031A54 80030E54 00065400 */ sll $t2, $a2, 0x10
/* 031A58 80030E58 014B6023 */ subu $t4, $t2, $t3
/* 031A5C 80030E5C 8C4F0008 */ lw $t7, 8($v0)
/* 031A60 80030E60 00077400 */ sll $t6, $a3, 0x10
/* 031A64 80030E64 01CFC023 */ subu $t8, $t6, $t7
/* 031A68 80030E68 A0450028 */ sb $a1, 0x28($v0)
/* 031A6C 80030E6C A0460029 */ sb $a2, 0x29($v0)
/* 031A70 80030E70 A047002A */ sb $a3, 0x2a($v0)
/* 031A74 80030E74 A451002C */ sh $s1, 0x2c($v0)
/* 031A78 80030E78 A450002E */ sh $s0, 0x2e($v0)
/* 031A7C 80030E7C 14600002 */ bnez $v1, .L80030E88
/* 031A80 80030E80 00000000 */ nop
/* 031A84 80030E84 0007000D */ break 7
.L80030E88:
/* 031A88 80030E88 2401FFFF */ li $at, -1
/* 031A8C 80030E8C 14610004 */ bne $v1, $at, .L80030EA0
/* 031A90 80030E90 3C018000 */ lui $at, 0x8000
/* 031A94 80030E94 15010002 */ bne $t0, $at, .L80030EA0
/* 031A98 80030E98 00000000 */ nop
/* 031A9C 80030E9C 0006000D */ break 6
.L80030EA0:
/* 031AA0 80030EA0 00114400 */ sll $t0, $s1, 0x10
/* 031AA4 80030EA4 AC430030 */ sw $v1, 0x30($v0)
/* 031AA8 80030EA8 AC400034 */ sw $zero, 0x34($v0)
/* 031AAC 80030EAC 00004812 */ mflo $t1
/* 031AB0 80030EB0 AC490014 */ sw $t1, 0x14($v0)
/* 031AB4 80030EB4 8C49000C */ lw $t1, 0xc($v0)
/* 031AB8 80030EB8 0183001A */ div $zero, $t4, $v1
/* 031ABC 80030EBC 01095023 */ subu $t2, $t0, $t1
/* 031AC0 80030EC0 14600002 */ bnez $v1, .L80030ECC
/* 031AC4 80030EC4 00000000 */ nop
/* 031AC8 80030EC8 0007000D */ break 7
.L80030ECC:
/* 031ACC 80030ECC 2401FFFF */ li $at, -1
/* 031AD0 80030ED0 14610004 */ bne $v1, $at, .L80030EE4
/* 031AD4 80030ED4 3C018000 */ lui $at, 0x8000
/* 031AD8 80030ED8 15810002 */ bne $t4, $at, .L80030EE4
/* 031ADC 80030EDC 00000000 */ nop
/* 031AE0 80030EE0 0006000D */ break 6
.L80030EE4:
/* 031AE4 80030EE4 00106400 */ sll $t4, $s0, 0x10
/* 031AE8 80030EE8 00006812 */ mflo $t5
/* 031AEC 80030EEC AC4D0018 */ sw $t5, 0x18($v0)
/* 031AF0 80030EF0 8C4D0010 */ lw $t5, 0x10($v0)
/* 031AF4 80030EF4 0303001A */ div $zero, $t8, $v1
/* 031AF8 80030EF8 018D7023 */ subu $t6, $t4, $t5
/* 031AFC 80030EFC 14600002 */ bnez $v1, .L80030F08
/* 031B00 80030F00 00000000 */ nop
/* 031B04 80030F04 0007000D */ break 7
.L80030F08:
/* 031B08 80030F08 2401FFFF */ li $at, -1
/* 031B0C 80030F0C 14610004 */ bne $v1, $at, .L80030F20
/* 031B10 80030F10 3C018000 */ lui $at, 0x8000
/* 031B14 80030F14 17010002 */ bne $t8, $at, .L80030F20
/* 031B18 80030F18 00000000 */ nop
/* 031B1C 80030F1C 0006000D */ break 6
.L80030F20:
/* 031B20 80030F20 0000C812 */ mflo $t9
/* 031B24 80030F24 AC59001C */ sw $t9, 0x1c($v0)
/* 031B28 80030F28 00000000 */ nop
/* 031B2C 80030F2C 0143001A */ div $zero, $t2, $v1
/* 031B30 80030F30 14600002 */ bnez $v1, .L80030F3C
/* 031B34 80030F34 00000000 */ nop
/* 031B38 80030F38 0007000D */ break 7
.L80030F3C:
/* 031B3C 80030F3C 2401FFFF */ li $at, -1
/* 031B40 80030F40 14610004 */ bne $v1, $at, .L80030F54
/* 031B44 80030F44 3C018000 */ lui $at, 0x8000
/* 031B48 80030F48 15410002 */ bne $t2, $at, .L80030F54
/* 031B4C 80030F4C 00000000 */ nop
/* 031B50 80030F50 0006000D */ break 6
.L80030F54:
/* 031B54 80030F54 00005812 */ mflo $t3
/* 031B58 80030F58 AC4B0020 */ sw $t3, 0x20($v0)
/* 031B5C 80030F5C 00000000 */ nop
/* 031B60 80030F60 01C3001A */ div $zero, $t6, $v1
/* 031B64 80030F64 14600002 */ bnez $v1, .L80030F70
/* 031B68 80030F68 00000000 */ nop
/* 031B6C 80030F6C 0007000D */ break 7
.L80030F70:
/* 031B70 80030F70 2401FFFF */ li $at, -1
/* 031B74 80030F74 14610004 */ bne $v1, $at, .L80030F88
/* 031B78 80030F78 3C018000 */ lui $at, 0x8000
/* 031B7C 80030F7C 15C10002 */ bne $t6, $at, .L80030F88
/* 031B80 80030F80 00000000 */ nop
/* 031B84 80030F84 0006000D */ break 6
.L80030F88:
/* 031B88 80030F88 00007812 */ mflo $t7
/* 031B8C 80030F8C AC4F0024 */ sw $t7, 0x24($v0)
/* 031B90 80030F90 8FB1000C */ lw $s1, 0xc($sp)
/* 031B94 80030F94 8FB00008 */ lw $s0, 8($sp)
/* 031B98 80030F98 03E00008 */ jr $ra
/* 031B9C 80030F9C 27BD0010 */ addiu $sp, $sp, 0x10