We are collecting silver coins in Pirate Lagoon. (2/8 silver coins) (#418)

* Match func_800C0B00

* Rename func_80065EA0 to camera_init

* Match menu_audio_options_loop

* Fix last commit

* Couple small changes

* Match 3 wave funcs

* update README
This commit is contained in:
Ryan Myers
2023-10-10 10:09:08 -04:00
committed by GitHub
parent 3b0ca98c39
commit 6dcdd256ee
19 changed files with 388 additions and 789 deletions
@@ -3,7 +3,7 @@ glabel D_800E709C
.float 15000.0
.text
glabel func_80065EA0
glabel camera_init
/* 066AA0 80065EA0 3C048012 */ lui $a0, %hi(D_80120DA0) # $a0, 0x8012
/* 066AA4 80065EA4 24030001 */ li $v1, 1
/* 066AA8 80065EA8 3C0F8012 */ lui $t7, %hi(gModelMatrixF) # $t7, 0x8012
-156
View File
@@ -1,156 +0,0 @@
glabel func_800BA288
/* 0BAE88 800BA288 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013
/* 0BAE8C 800BA28C 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1)
/* 0BAE90 800BA290 27BDFFF0 */ addiu $sp, $sp, -0x10
/* 0BAE94 800BA294 AFB00008 */ sw $s0, 8($sp)
/* 0BAE98 800BA298 000570C0 */ sll $t6, $a1, 3
/* 0BAE9C 800BA29C 00808025 */ move $s0, $a0
/* 0BAEA0 800BA2A0 AFB1000C */ sw $s1, 0xc($sp)
/* 0BAEA4 800BA2A4 01C02825 */ move $a1, $t6
/* 0BAEA8 800BA2A8 1860007F */ blez $v1, .L800BA4A8
/* 0BAEAC 800BA2AC 00001025 */ move $v0, $zero
/* 0BAEB0 800BA2B0 3C0C800E */ lui $t4, %hi(D_800E30D4) # $t4, 0x800e
/* 0BAEB4 800BA2B4 3C0B8013 */ lui $t3, %hi(D_80129FC8) # $t3, 0x8013
/* 0BAEB8 800BA2B8 3C0A8013 */ lui $t2, %hi(D_8012A0E8) # $t2, 0x8013
/* 0BAEBC 800BA2BC 3C09800E */ lui $t1, %hi(D_800E30D8) # $t1, 0x800e
/* 0BAEC0 800BA2C0 252930D8 */ addiu $t1, %lo(D_800E30D8) # addiu $t1, $t1, 0x30d8
/* 0BAEC4 800BA2C4 254AA0E8 */ addiu $t2, %lo(D_8012A0E8) # addiu $t2, $t2, -0x5f18
/* 0BAEC8 800BA2C8 256B9FC8 */ addiu $t3, %lo(D_80129FC8) # addiu $t3, $t3, -0x6038
/* 0BAECC 800BA2CC 258C30D4 */ addiu $t4, %lo(D_800E30D4) # addiu $t4, $t4, 0x30d4
/* 0BAED0 800BA2D0 00003025 */ move $a2, $zero
/* 0BAED4 800BA2D4 24110080 */ li $s1, 128
/* 0BAED8 800BA2D8 240D0004 */ li $t5, 4
.L800BA2DC:
/* 0BAEDC 800BA2DC 8D240000 */ lw $a0, ($t1)
/* 0BAEE0 800BA2E0 24180001 */ li $t8, 1
/* 0BAEE4 800BA2E4 00863821 */ addu $a3, $a0, $a2
/* 0BAEE8 800BA2E8 90EF000A */ lbu $t7, 0xa($a3)
/* 0BAEEC 800BA2EC 90EE000B */ lbu $t6, 0xb($a3)
/* 0BAEF0 800BA2F0 01F8C804 */ sllv $t9, $t8, $t7
/* 0BAEF4 800BA2F4 000EC080 */ sll $t8, $t6, 2
/* 0BAEF8 800BA2F8 01587821 */ addu $t7, $t2, $t8
/* 0BAEFC 800BA2FC 8DEE0000 */ lw $t6, ($t7)
/* 0BAF00 800BA300 00000000 */ nop
/* 0BAF04 800BA304 032EC024 */ and $t8, $t9, $t6
/* 0BAF08 800BA308 13000063 */ beqz $t8, .L800BA498
/* 0BAF0C 800BA30C 00000000 */ nop
/* 0BAF10 800BA310 8D6F0028 */ lw $t7, 0x28($t3)
/* 0BAF14 800BA314 00001825 */ move $v1, $zero
/* 0BAF18 800BA318 11E00035 */ beqz $t7, .L800BA3F0
/* 0BAF1C 800BA31C 00000000 */ nop
.L800BA320:
/* 0BAF20 800BA320 8D240000 */ lw $a0, ($t1)
/* 0BAF24 800BA324 8D990000 */ lw $t9, ($t4)
/* 0BAF28 800BA328 00867021 */ addu $t6, $a0, $a2
/* 0BAF2C 800BA32C 8DD8000C */ lw $t8, 0xc($t6)
/* 0BAF30 800BA330 00000000 */ nop
/* 0BAF34 800BA334 00187880 */ sll $t7, $t8, 2
/* 0BAF38 800BA338 032F7021 */ addu $t6, $t9, $t7
/* 0BAF3C 800BA33C 8DD80000 */ lw $t8, ($t6)
/* 0BAF40 800BA340 240F00FF */ li $t7, 255
/* 0BAF44 800BA344 0003C8C0 */ sll $t9, $v1, 3
/* 0BAF48 800BA348 032F7004 */ sllv $t6, $t7, $t9
/* 0BAF4C 800BA34C 030E7824 */ and $t7, $t8, $t6
/* 0BAF50 800BA350 11E00011 */ beqz $t7, .L800BA398
/* 0BAF54 800BA354 0002C0C0 */ sll $t8, $v0, 3
/* 0BAF58 800BA358 0002C8C0 */ sll $t9, $v0, 3
/* 0BAF5C 800BA35C 0322C823 */ subu $t9, $t9, $v0
/* 0BAF60 800BA360 0019C880 */ sll $t9, $t9, 2
/* 0BAF64 800BA364 0099C021 */ addu $t8, $a0, $t9
/* 0BAF68 800BA368 00107080 */ sll $t6, $s0, 2
/* 0BAF6C 800BA36C 030E7821 */ addu $t7, $t8, $t6
/* 0BAF70 800BA370 01E33821 */ addu $a3, $t7, $v1
/* 0BAF74 800BA374 90E80014 */ lbu $t0, 0x14($a3)
/* 0BAF78 800BA378 00000000 */ nop
/* 0BAF7C 800BA37C 00A8082A */ slt $at, $a1, $t0
/* 0BAF80 800BA380 10200003 */ beqz $at, .L800BA390
/* 0BAF84 800BA384 0105C823 */ subu $t9, $t0, $a1
/* 0BAF88 800BA388 10000012 */ b .L800BA3D4
/* 0BAF8C 800BA38C A0F90014 */ sb $t9, 0x14($a3)
.L800BA390:
/* 0BAF90 800BA390 10000010 */ b .L800BA3D4
/* 0BAF94 800BA394 A0E00014 */ sb $zero, 0x14($a3)
.L800BA398:
/* 0BAF98 800BA398 0302C023 */ subu $t8, $t8, $v0
/* 0BAF9C 800BA39C 0018C080 */ sll $t8, $t8, 2
/* 0BAFA0 800BA3A0 00987021 */ addu $t6, $a0, $t8
/* 0BAFA4 800BA3A4 00107880 */ sll $t7, $s0, 2
/* 0BAFA8 800BA3A8 01CFC821 */ addu $t9, $t6, $t7
/* 0BAFAC 800BA3AC 03233821 */ addu $a3, $t9, $v1
/* 0BAFB0 800BA3B0 90F80014 */ lbu $t8, 0x14($a3)
/* 0BAFB4 800BA3B4 00000000 */ nop
/* 0BAFB8 800BA3B8 03054021 */ addu $t0, $t8, $a1
/* 0BAFBC 800BA3BC 29010080 */ slti $at, $t0, 0x80
/* 0BAFC0 800BA3C0 10200003 */ beqz $at, .L800BA3D0
/* 0BAFC4 800BA3C4 00000000 */ nop
/* 0BAFC8 800BA3C8 10000002 */ b .L800BA3D4
/* 0BAFCC 800BA3CC A0E80014 */ sb $t0, 0x14($a3)
.L800BA3D0:
/* 0BAFD0 800BA3D0 A0F10014 */ sb $s1, 0x14($a3)
.L800BA3D4:
/* 0BAFD4 800BA3D4 24630001 */ addiu $v1, $v1, 1
/* 0BAFD8 800BA3D8 146DFFD1 */ bne $v1, $t5, .L800BA320
/* 0BAFDC 800BA3DC 00000000 */ nop
/* 0BAFE0 800BA3E0 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013
/* 0BAFE4 800BA3E4 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1)
/* 0BAFE8 800BA3E8 1000002C */ b .L800BA49C
/* 0BAFEC 800BA3EC 24420001 */ addiu $v0, $v0, 1
.L800BA3F0:
/* 0BAFF0 800BA3F0 8CEF000C */ lw $t7, 0xc($a3)
/* 0BAFF4 800BA3F4 8D8E0000 */ lw $t6, ($t4)
/* 0BAFF8 800BA3F8 000FC880 */ sll $t9, $t7, 2
/* 0BAFFC 800BA3FC 01D9C021 */ addu $t8, $t6, $t9
/* 0BB000 800BA400 8F0F0000 */ lw $t7, ($t8)
/* 0BB004 800BA404 00101880 */ sll $v1, $s0, 2
/* 0BB008 800BA408 11E00010 */ beqz $t7, .L800BA44C
/* 0BB00C 800BA40C 000270C0 */ sll $t6, $v0, 3
/* 0BB010 800BA410 01C27023 */ subu $t6, $t6, $v0
/* 0BB014 800BA414 000E7080 */ sll $t6, $t6, 2
/* 0BB018 800BA418 008EC821 */ addu $t9, $a0, $t6
/* 0BB01C 800BA41C 03233821 */ addu $a3, $t9, $v1
/* 0BB020 800BA420 90E80014 */ lbu $t0, 0x14($a3)
/* 0BB024 800BA424 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013
/* 0BB028 800BA428 00A8082A */ slt $at, $a1, $t0
/* 0BB02C 800BA42C 10200003 */ beqz $at, .L800BA43C
/* 0BB030 800BA430 0105C023 */ subu $t8, $t0, $a1
/* 0BB034 800BA434 10000002 */ b .L800BA440
/* 0BB038 800BA438 A0F80014 */ sb $t8, 0x14($a3)
.L800BA43C:
/* 0BB03C 800BA43C A0E00014 */ sb $zero, 0x14($a3)
.L800BA440:
/* 0BB040 800BA440 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1)
/* 0BB044 800BA444 10000015 */ b .L800BA49C
/* 0BB048 800BA448 24420001 */ addiu $v0, $v0, 1
.L800BA44C:
/* 0BB04C 800BA44C 000278C0 */ sll $t7, $v0, 3
/* 0BB050 800BA450 01E27823 */ subu $t7, $t7, $v0
/* 0BB054 800BA454 000F7880 */ sll $t7, $t7, 2
/* 0BB058 800BA458 008F7021 */ addu $t6, $a0, $t7
/* 0BB05C 800BA45C 01C33821 */ addu $a3, $t6, $v1
/* 0BB060 800BA460 90F90014 */ lbu $t9, 0x14($a3)
/* 0BB064 800BA464 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013
/* 0BB068 800BA468 03254021 */ addu $t0, $t9, $a1
/* 0BB06C 800BA46C 29010080 */ slti $at, $t0, 0x80
/* 0BB070 800BA470 10200006 */ beqz $at, .L800BA48C
/* 0BB074 800BA474 00000000 */ nop
/* 0BB078 800BA478 A0E80014 */ sb $t0, 0x14($a3)
/* 0BB07C 800BA47C 3C038013 */ lui $v1, %hi(D_8012A0E0) # $v1, 0x8013
/* 0BB080 800BA480 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1)
/* 0BB084 800BA484 10000005 */ b .L800BA49C
/* 0BB088 800BA488 24420001 */ addiu $v0, $v0, 1
.L800BA48C:
/* 0BB08C 800BA48C A0F10014 */ sb $s1, 0x14($a3)
/* 0BB090 800BA490 8C63A0E0 */ lw $v1, %lo(D_8012A0E0)($v1)
/* 0BB094 800BA494 00000000 */ nop
.L800BA498:
/* 0BB098 800BA498 24420001 */ addiu $v0, $v0, 1
.L800BA49C:
/* 0BB09C 800BA49C 0043082A */ slt $at, $v0, $v1
/* 0BB0A0 800BA4A0 1420FF8E */ bnez $at, .L800BA2DC
/* 0BB0A4 800BA4A4 24C6001C */ addiu $a2, $a2, 0x1c
.L800BA4A8:
/* 0BB0A8 800BA4A8 8FB00008 */ lw $s0, 8($sp)
/* 0BB0AC 800BA4AC 8FB1000C */ lw $s1, 0xc($sp)
/* 0BB0B0 800BA4B0 03E00008 */ jr $ra
/* 0BB0B4 800BA4B4 27BD0010 */ addiu $sp, $sp, 0x10
-278
View File
@@ -1,278 +0,0 @@
.late_rodata
glabel D_800E92A8
.float 6.64
glabel D_800E92AC
.float 89128.961
glabel D_800E92B0
.float 6.5333333
glabel D_800E92B4
.float 89128.961
.text
glabel func_800BF634
/* 0C0234 800BF634 3C03800E */ lui $v1, %hi(D_800E3190) # $v1, 0x800e
/* 0C0238 800BF638 24633190 */ addiu $v1, %lo(D_800E3190) # addiu $v1, $v1, 0x3190
/* 0C023C 800BF63C 8C6E0000 */ lw $t6, ($v1)
/* 0C0240 800BF640 44856000 */ mtc1 $a1, $f12
/* 0C0244 800BF644 44877000 */ mtc1 $a3, $f14
/* 0C0248 800BF648 00803825 */ move $a3, $a0
/* 0C024C 800BF64C AFA40000 */ sw $a0, ($sp)
/* 0C0250 800BF650 AFA60008 */ sw $a2, 8($sp)
/* 0C0254 800BF654 11C000E5 */ beqz $t6, .L800BF9EC
/* 0C0258 800BF658 00002825 */ move $a1, $zero
/* 0C025C 800BF65C 3C0F800E */ lui $t7, %hi(D_800E3194) # $t7, 0x800e
/* 0C0260 800BF660 8DEF3194 */ lw $t7, %lo(D_800E3194)($t7)
/* 0C0264 800BF664 0000C080 */ sll $t8, $zero, 2
/* 0C0268 800BF668 00001025 */ move $v0, $zero
/* 0C026C 800BF66C 00002025 */ move $a0, $zero
/* 0C0270 800BF670 01F83021 */ addu $a2, $t7, $t8
.L800BF674:
/* 0C0274 800BF674 8CD90000 */ lw $t9, ($a2)
/* 0C0278 800BF678 24420001 */ addiu $v0, $v0, 1
/* 0C027C 800BF67C 17200002 */ bnez $t9, .L800BF688
/* 0C0280 800BF680 28410020 */ slti $at, $v0, 0x20
/* 0C0284 800BF684 2404FFFF */ li $a0, -1
.L800BF688:
/* 0C0288 800BF688 10200003 */ beqz $at, .L800BF698
/* 0C028C 800BF68C 24C60004 */ addiu $a2, $a2, 4
/* 0C0290 800BF690 1080FFF8 */ beqz $a0, .L800BF674
/* 0C0294 800BF694 00000000 */ nop
.L800BF698:
/* 0C0298 800BF698 108000D4 */ beqz $a0, .L800BF9EC
/* 0C029C 800BF69C 2442FFFF */ addiu $v0, $v0, -1
/* 0C02A0 800BF6A0 3C0B800E */ lui $t3, %hi(D_800E3194) # $t3, 0x800e
/* 0C02A4 800BF6A4 8D6B3194 */ lw $t3, %lo(D_800E3194)($t3)
/* 0C02A8 800BF6A8 00026080 */ sll $t4, $v0, 2
/* 0C02AC 800BF6AC 3C04800E */ lui $a0, %hi(D_800E3188) # $a0, 0x800e
/* 0C02B0 800BF6B0 016C6821 */ addu $t5, $t3, $t4
/* 0C02B4 800BF6B4 24843188 */ addiu $a0, %lo(D_800E3188) # addiu $a0, $a0, 0x3188
/* 0C02B8 800BF6B8 ADA70000 */ sw $a3, ($t5)
/* 0C02BC 800BF6BC 8C8E0000 */ lw $t6, ($a0)
/* 0C02C0 800BF6C0 3C188013 */ lui $t8, %hi(D_80129FC8 + 40) # $t8, 0x8013
/* 0C02C4 800BF6C4 25CF0001 */ addiu $t7, $t6, 1
/* 0C02C8 800BF6C8 AC8F0000 */ sw $t7, ($a0)
/* 0C02CC 800BF6CC 8F189FF0 */ lw $t8, %lo(D_80129FC8 + 40)($t8)
/* 0C02D0 800BF6D0 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013
/* 0C02D4 800BF6D4 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at)
/* 0C02D8 800BF6D8 13000006 */ beqz $t8, .L800BF6F4
/* 0C02DC 800BF6DC 3C198013 */ lui $t9, %hi(D_8012A0D0) # $t9, 0x8013
/* 0C02E0 800BF6E0 3C013F00 */ li $at, 0x3F000000 # 0.500000
/* 0C02E4 800BF6E4 44812000 */ mtc1 $at, $f4
/* 0C02E8 800BF6E8 00000000 */ nop
/* 0C02EC 800BF6EC 46040002 */ mul.s $f0, $f0, $f4
/* 0C02F0 800BF6F0 00000000 */ nop
.L800BF6F4:
/* 0C02F4 800BF6F4 8F39A0D0 */ lw $t9, %lo(D_8012A0D0)($t9)
/* 0C02F8 800BF6F8 460E6201 */ sub.s $f8, $f12, $f14
/* 0C02FC 800BF6FC 44993000 */ mtc1 $t9, $f6
/* 0C0300 800BF700 3C05800E */ lui $a1, %hi(D_800E318C) # $a1, 0x800e
/* 0C0304 800BF704 468030A0 */ cvt.s.w $f2, $f6
/* 0C0308 800BF708 8CA5318C */ lw $a1, %lo(D_800E318C)($a1)
/* 0C030C 800BF70C 46024281 */ sub.s $f10, $f8, $f2
/* 0C0310 800BF710 00000000 */ nop
/* 0C0314 800BF714 46005403 */ div.s $f16, $f10, $f0
/* 0C0318 800BF718 444BF800 */ cfc1 $t3, $31
/* 0C031C 800BF71C 00000000 */ nop
/* 0C0320 800BF720 35610003 */ ori $at, $t3, 3
/* 0C0324 800BF724 38210002 */ xori $at, $at, 2
/* 0C0328 800BF728 44C1F800 */ ctc1 $at, $31
/* 0C032C 800BF72C 00000000 */ nop
/* 0C0330 800BF730 460084A4 */ cvt.w.s $f18, $f16
/* 0C0334 800BF734 44049000 */ mfc1 $a0, $f18
/* 0C0338 800BF738 44CBF800 */ ctc1 $t3, $31
/* 0C033C 800BF73C 0085082A */ slt $at, $a0, $a1
/* 0C0340 800BF740 14200003 */ bnez $at, .L800BF750
/* 0C0344 800BF744 00000000 */ nop
/* 0C0348 800BF748 03E00008 */ jr $ra
/* 0C034C 800BF74C 00001025 */ move $v0, $zero
.L800BF750:
/* 0C0350 800BF750 460E6100 */ add.s $f4, $f12, $f14
/* 0C0354 800BF754 46022181 */ sub.s $f6, $f4, $f2
/* 0C0358 800BF758 00000000 */ nop
/* 0C035C 800BF75C 46003203 */ div.s $f8, $f6, $f0
/* 0C0360 800BF760 444CF800 */ cfc1 $t4, $31
/* 0C0364 800BF764 00000000 */ nop
/* 0C0368 800BF768 35810003 */ ori $at, $t4, 3
/* 0C036C 800BF76C 38210002 */ xori $at, $at, 2
/* 0C0370 800BF770 44C1F800 */ ctc1 $at, $31
/* 0C0374 800BF774 00000000 */ nop
/* 0C0378 800BF778 460042A4 */ cvt.w.s $f10, $f8
/* 0C037C 800BF77C 44065000 */ mfc1 $a2, $f10
/* 0C0380 800BF780 44CCF800 */ ctc1 $t4, $31
/* 0C0384 800BF784 04C10003 */ bgez $a2, .L800BF794
/* 0C0388 800BF788 00C5082A */ slt $at, $a2, $a1
/* 0C038C 800BF78C 03E00008 */ jr $ra
/* 0C0390 800BF790 00001025 */ move $v0, $zero
.L800BF794:
/* 0C0394 800BF794 04810002 */ bgez $a0, .L800BF7A0
/* 0C0398 800BF798 00026180 */ sll $t4, $v0, 6
/* 0C039C 800BF79C 00002025 */ move $a0, $zero
.L800BF7A0:
/* 0C03A0 800BF7A0 14200002 */ bnez $at, .L800BF7AC
/* 0C03A4 800BF7A4 240A00FF */ li $t2, 255
/* 0C03A8 800BF7A8 24A6FFFF */ addiu $a2, $a1, -1
.L800BF7AC:
/* 0C03AC 800BF7AC 00C4082A */ slt $at, $a2, $a0
/* 0C03B0 800BF7B0 14200017 */ bnez $at, .L800BF810
/* 0C03B4 800BF7B4 00802825 */ move $a1, $a0
/* 0C03B8 800BF7B8 3C09800E */ lui $t1, %hi(D_800E3184) # $t1, 0x800e
/* 0C03BC 800BF7BC 25293184 */ addiu $t1, %lo(D_800E3184) # addiu $t1, $t1, 0x3184
/* 0C03C0 800BF7C0 24C80001 */ addiu $t0, $a2, 1
.L800BF7C4:
/* 0C03C4 800BF7C4 8D2E0000 */ lw $t6, ($t1)
/* 0C03C8 800BF7C8 000568C0 */ sll $t5, $a1, 3
/* 0C03CC 800BF7CC 01AE2021 */ addu $a0, $t5, $t6
/* 0C03D0 800BF7D0 908F0007 */ lbu $t7, 7($a0)
/* 0C03D4 800BF7D4 24A50001 */ addiu $a1, $a1, 1
/* 0C03D8 800BF7D8 154F000B */ bne $t2, $t7, .L800BF808
/* 0C03DC 800BF7DC 00000000 */ nop
/* 0C03E0 800BF7E0 90980000 */ lbu $t8, ($a0)
/* 0C03E4 800BF7E4 00003025 */ move $a2, $zero
/* 0C03E8 800BF7E8 11580005 */ beq $t2, $t8, .L800BF800
/* 0C03EC 800BF7EC 00803825 */ move $a3, $a0
.L800BF7F0:
/* 0C03F0 800BF7F0 90F90001 */ lbu $t9, 1($a3)
/* 0C03F4 800BF7F4 24C60001 */ addiu $a2, $a2, 1
/* 0C03F8 800BF7F8 1559FFFD */ bne $t2, $t9, .L800BF7F0
/* 0C03FC 800BF7FC 24E70001 */ addiu $a3, $a3, 1
.L800BF800:
/* 0C0400 800BF800 00865821 */ addu $t3, $a0, $a2
/* 0C0404 800BF804 A1620000 */ sb $v0, ($t3)
.L800BF808:
/* 0C0408 800BF808 1505FFEE */ bne $t0, $a1, .L800BF7C4
/* 0C040C 800BF80C 00000000 */ nop
.L800BF810:
/* 0C0410 800BF810 C7B00008 */ lwc1 $f16, 8($sp)
/* 0C0414 800BF814 8C6D0000 */ lw $t5, ($v1)
/* 0C0418 800BF818 460E8481 */ sub.s $f18, $f16, $f14
/* 0C041C 800BF81C 018D2821 */ addu $a1, $t4, $t5
/* 0C0420 800BF820 E4B20000 */ swc1 $f18, ($a1)
/* 0C0424 800BF824 C7A40008 */ lwc1 $f4, 8($sp)
/* 0C0428 800BF828 E4AC0008 */ swc1 $f12, 8($a1)
/* 0C042C 800BF82C 460E2180 */ add.s $f6, $f4, $f14
/* 0C0430 800BF830 3C0F8000 */ lui $t7, %hi(osTvType) # $t7, 0x8000
/* 0C0434 800BF834 E4A60004 */ swc1 $f6, 4($a1)
/* 0C0438 800BF838 460E7282 */ mul.s $f10, $f14, $f14
/* 0C043C 800BF83C C7A80008 */ lwc1 $f8, 8($sp)
/* 0C0440 800BF840 E4AE0010 */ swc1 $f14, 0x10($a1)
/* 0C0444 800BF844 A4A20018 */ sh $v0, 0x18($a1)
/* 0C0448 800BF848 E4AA0014 */ swc1 $f10, 0x14($a1)
/* 0C044C 800BF84C E4A8000C */ swc1 $f8, 0xc($a1)
/* 0C0450 800BF850 8FAE0010 */ lw $t6, 0x10($sp)
# Used to access D_800E92B0 and D_800E92B4.
/* 0C0454 800BF854 3C01800F */ lui $at, %hi(D_800E92B0) # $at, 0x800f
/* 0C0458 800BF858 A4AE001A */ sh $t6, 0x1a($a1)
/* 0C045C 800BF85C 8DEF0300 */ lw $t7, %lo(osTvType)($t7)
/* 0C0460 800BF860 C7A00014 */ lwc1 $f0, 0x14($sp)
/* 0C0464 800BF864 15E0002B */ bnez $t7, .L800BF914
/* 0C0468 800BF868 00000000 */ nop
/* 0C046C 800BF86C 3C01800F */ lui $at, %hi(D_800E92AC) # $at, 0x800f
/* 0C0470 800BF870 C7A00014 */ lwc1 $f0, 0x14($sp)
/* 0C0474 800BF874 C43392A8 */ lwc1 $f19, %lo(D_800E92A8)($at)
/* 0C0478 800BF878 C43292AC */ lwc1 $f18, %lo(D_800E92AC)($at)
/* 0C047C 800BF87C 46000421 */ cvt.d.s $f16, $f0
/* 0C0480 800BF880 46328102 */ mul.d $f4, $f16, $f18
/* 0C0484 800BF884 24190001 */ li $t9, 1
/* 0C0488 800BF888 3C0141E0 */ li $at, 0x41E00000 # 28.000000
/* 0C048C 800BF88C 4458F800 */ cfc1 $t8, $31
/* 0C0490 800BF890 44D9F800 */ ctc1 $t9, $31
/* 0C0494 800BF894 00000000 */ nop
/* 0C0498 800BF898 462021A4 */ cvt.w.d $f6, $f4
/* 0C049C 800BF89C 4459F800 */ cfc1 $t9, $31
/* 0C04A0 800BF8A0 00000000 */ nop
/* 0C04A4 800BF8A4 33390078 */ andi $t9, $t9, 0x78
/* 0C04A8 800BF8A8 13200013 */ beqz $t9, .L800BF8F8
/* 0C04AC 800BF8AC 00000000 */ nop
/* 0C04B0 800BF8B0 44813800 */ mtc1 $at, $f7
/* 0C04B4 800BF8B4 44803000 */ mtc1 $zero, $f6
/* 0C04B8 800BF8B8 24190001 */ li $t9, 1
/* 0C04BC 800BF8BC 46262181 */ sub.d $f6, $f4, $f6
/* 0C04C0 800BF8C0 3C018000 */ lui $at, 0x8000
/* 0C04C4 800BF8C4 44D9F800 */ ctc1 $t9, $31
/* 0C04C8 800BF8C8 00000000 */ nop
/* 0C04CC 800BF8CC 462031A4 */ cvt.w.d $f6, $f6
/* 0C04D0 800BF8D0 4459F800 */ cfc1 $t9, $31
/* 0C04D4 800BF8D4 00000000 */ nop
/* 0C04D8 800BF8D8 33390078 */ andi $t9, $t9, 0x78
/* 0C04DC 800BF8DC 17200004 */ bnez $t9, .L800BF8F0
/* 0C04E0 800BF8E0 00000000 */ nop
/* 0C04E4 800BF8E4 44193000 */ mfc1 $t9, $f6
/* 0C04E8 800BF8E8 10000007 */ b .L800BF908
/* 0C04EC 800BF8EC 0321C825 */ or $t9, $t9, $at
.L800BF8F0:
/* 0C04F0 800BF8F0 10000005 */ b .L800BF908
/* 0C04F4 800BF8F4 2419FFFF */ li $t9, -1
.L800BF8F8:
/* 0C04F8 800BF8F8 44193000 */ mfc1 $t9, $f6
/* 0C04FC 800BF8FC 00000000 */ nop
/* 0C0500 800BF900 0720FFFB */ bltz $t9, .L800BF8F0
/* 0C0504 800BF904 00000000 */ nop
.L800BF908:
/* 0C0508 800BF908 44D8F800 */ ctc1 $t8, $31
/* 0C050C 800BF90C 10000029 */ b .L800BF9B4
/* 0C0510 800BF910 ACB9001C */ sw $t9, 0x1c($a1)
.L800BF914:
/* 0C0514 800BF914 C42B92B0 */ lwc1 $f11, %lo(D_800E92B0)($at)
/* 0C0518 800BF918 C42A92B4 */ lwc1 $f10, %lo(D_800E92B4)($at)
/* 0C051C 800BF91C 46000221 */ cvt.d.s $f8, $f0
/* 0C0520 800BF920 462A4402 */ mul.d $f16, $f8, $f10
/* 0C0524 800BF924 240C0001 */ li $t4, 1
/* 0C0528 800BF928 3C0141E0 */ li $at, 0x41E00000 # 28.000000
/* 0C052C 800BF92C 444BF800 */ cfc1 $t3, $31
/* 0C0530 800BF930 44CCF800 */ ctc1 $t4, $31
/* 0C0534 800BF934 00000000 */ nop
/* 0C0538 800BF938 462084A4 */ cvt.w.d $f18, $f16
/* 0C053C 800BF93C 444CF800 */ cfc1 $t4, $31
/* 0C0540 800BF940 00000000 */ nop
/* 0C0544 800BF944 318C0078 */ andi $t4, $t4, 0x78
/* 0C0548 800BF948 11800013 */ beqz $t4, .L800BF998
/* 0C054C 800BF94C 00000000 */ nop
/* 0C0550 800BF950 44819800 */ mtc1 $at, $f19
/* 0C0554 800BF954 44809000 */ mtc1 $zero, $f18
/* 0C0558 800BF958 240C0001 */ li $t4, 1
/* 0C055C 800BF95C 46328481 */ sub.d $f18, $f16, $f18
/* 0C0560 800BF960 3C018000 */ lui $at, 0x8000
/* 0C0564 800BF964 44CCF800 */ ctc1 $t4, $31
/* 0C0568 800BF968 00000000 */ nop
/* 0C056C 800BF96C 462094A4 */ cvt.w.d $f18, $f18
/* 0C0570 800BF970 444CF800 */ cfc1 $t4, $31
/* 0C0574 800BF974 00000000 */ nop
/* 0C0578 800BF978 318C0078 */ andi $t4, $t4, 0x78
/* 0C057C 800BF97C 15800004 */ bnez $t4, .L800BF990
/* 0C0580 800BF980 00000000 */ nop
/* 0C0584 800BF984 440C9000 */ mfc1 $t4, $f18
/* 0C0588 800BF988 10000007 */ b .L800BF9A8
/* 0C058C 800BF98C 01816025 */ or $t4, $t4, $at
.L800BF990:
/* 0C0590 800BF990 10000005 */ b .L800BF9A8
/* 0C0594 800BF994 240CFFFF */ li $t4, -1
.L800BF998:
/* 0C0598 800BF998 440C9000 */ mfc1 $t4, $f18
/* 0C059C 800BF99C 00000000 */ nop
/* 0C05A0 800BF9A0 0580FFFB */ bltz $t4, .L800BF990
/* 0C05A4 800BF9A4 00000000 */ nop
.L800BF9A8:
/* 0C05A8 800BF9A8 44CBF800 */ ctc1 $t3, $31
/* 0C05AC 800BF9AC ACAC001C */ sw $t4, 0x1c($a1)
/* 0C05B0 800BF9B0 00000000 */ nop
.L800BF9B4:
/* 0C05B4 800BF9B4 3C014780 */ li $at, 0x47800000 # 65536.000000
/* 0C05B8 800BF9B8 C7A20018 */ lwc1 $f2, 0x18($sp)
/* 0C05BC 800BF9BC 44812000 */ mtc1 $at, $f4
/* 0C05C0 800BF9C0 8FA20020 */ lw $v0, 0x20($sp)
/* 0C05C4 800BF9C4 46022183 */ div.s $f6, $f4, $f2
/* 0C05C8 800BF9C8 304D0001 */ andi $t5, $v0, 1
/* 0C05CC 800BF9CC 304E0002 */ andi $t6, $v0, 2
/* 0C05D0 800BF9D0 E4A60020 */ swc1 $f6, 0x20($a1)
/* 0C05D4 800BF9D4 C7A8001C */ lwc1 $f8, 0x1c($sp)
/* 0C05D8 800BF9D8 E4A00028 */ swc1 $f0, 0x28($a1)
/* 0C05DC 800BF9DC A0AD0030 */ sb $t5, 0x30($a1)
/* 0C05E0 800BF9E0 A0AE0031 */ sb $t6, 0x31($a1)
/* 0C05E4 800BF9E4 E4A2002C */ swc1 $f2, 0x2c($a1)
/* 0C05E8 800BF9E8 E4A80024 */ swc1 $f8, 0x24($a1)
.L800BF9EC:
/* 0C05EC 800BF9EC 00A01025 */ move $v0, $a1
/* 0C05F0 800BF9F0 03E00008 */ jr $ra
/* 0C05F4 800BF9F4 00000000 */ nop
-170
View File
@@ -1,170 +0,0 @@
glabel func_800BF9F8
/* 0C05F8 800BF9F8 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0C05FC 800BF9FC E7B4000C */ swc1 $f20, 0xc($sp)
/* 0C0600 800BFA00 4486A000 */ mtc1 $a2, $f20
/* 0C0604 800BFA04 AFB10014 */ sw $s1, 0x14($sp)
/* 0C0608 800BFA08 AFB00010 */ sw $s0, 0x10($sp)
/* 0C060C 800BFA0C E7B50008 */ swc1 $f21, 8($sp)
/* 0C0610 800BFA10 1080008A */ beqz $a0, .L800BFC3C
/* 0C0614 800BFA14 AFA50034 */ sw $a1, 0x34($sp)
/* 0C0618 800BFA18 3C0E8013 */ lui $t6, %hi(D_80129FC8 + 40) # $t6, 0x8013
/* 0C061C 800BFA1C 8DCE9FF0 */ lw $t6, %lo(D_80129FC8 + 40)($t6)
/* 0C0620 800BFA20 3C018013 */ lui $at, %hi(D_8012A0B8) # $at, 0x8013
/* 0C0624 800BFA24 C420A0B8 */ lwc1 $f0, %lo(D_8012A0B8)($at)
/* 0C0628 800BFA28 11C00006 */ beqz $t6, .L800BFA44
/* 0C062C 800BFA2C 00001025 */ move $v0, $zero
/* 0C0630 800BFA30 3C013F00 */ li $at, 0x3F000000 # 0.500000
/* 0C0634 800BFA34 44812000 */ mtc1 $at, $f4
/* 0C0638 800BFA38 00000000 */ nop
/* 0C063C 800BFA3C 46040002 */ mul.s $f0, $f0, $f4
/* 0C0640 800BFA40 00000000 */ nop
.L800BFA44:
/* 0C0644 800BFA44 3C0D800E */ lui $t5, %hi(D_800E3184) # $t5, 0x800e
/* 0C0648 800BFA48 3C0C800E */ lui $t4, %hi(D_800E318C) # $t4, 0x800e
/* 0C064C 800BFA4C 3C0B8013 */ lui $t3, %hi(D_8012A0D0) # $t3, 0x8013
/* 0C0650 800BFA50 94830018 */ lhu $v1, 0x18($a0)
/* 0C0654 800BFA54 8FA8001C */ lw $t0, 0x1c($sp)
/* 0C0658 800BFA58 256BA0D0 */ addiu $t3, %lo(D_8012A0D0) # addiu $t3, $t3, -0x5f30
/* 0C065C 800BFA5C 258C318C */ addiu $t4, %lo(D_800E318C) # addiu $t4, $t4, 0x318c
/* 0C0660 800BFA60 25AD3184 */ addiu $t5, %lo(D_800E3184) # addiu $t5, $t5, 0x3184
/* 0C0664 800BFA64 241100FF */ li $s1, 255
/* 0C0668 800BFA68 241000FF */ li $s0, 255
.L800BFA6C:
/* 0C066C 800BFA6C 8D6F0000 */ lw $t7, ($t3)
/* 0C0670 800BFA70 C4820008 */ lwc1 $f2, 8($a0)
/* 0C0674 800BFA74 448F3000 */ mtc1 $t7, $f6
/* 0C0678 800BFA78 C48C0010 */ lwc1 $f12, 0x10($a0)
/* 0C067C 800BFA7C 468033A0 */ cvt.s.w $f14, $f6
/* 0C0680 800BFA80 8D870000 */ lw $a3, ($t4)
/* 0C0684 800BFA84 24050001 */ li $a1, 1
/* 0C0688 800BFA88 460C1201 */ sub.s $f8, $f2, $f12
/* 0C068C 800BFA8C 460E4281 */ sub.s $f10, $f8, $f14
/* 0C0690 800BFA90 00000000 */ nop
/* 0C0694 800BFA94 46005403 */ div.s $f16, $f10, $f0
/* 0C0698 800BFA98 4458F800 */ cfc1 $t8, $31
/* 0C069C 800BFA9C 00000000 */ nop
/* 0C06A0 800BFAA0 37010003 */ ori $at, $t8, 3
/* 0C06A4 800BFAA4 38210002 */ xori $at, $at, 2
/* 0C06A8 800BFAA8 44C1F800 */ ctc1 $at, $31
/* 0C06AC 800BFAAC 00000000 */ nop
/* 0C06B0 800BFAB0 460084A4 */ cvt.w.s $f18, $f16
/* 0C06B4 800BFAB4 44069000 */ mfc1 $a2, $f18
/* 0C06B8 800BFAB8 44D8F800 */ ctc1 $t8, $31
/* 0C06BC 800BFABC 00C7082A */ slt $at, $a2, $a3
/* 0C06C0 800BFAC0 14200003 */ bnez $at, .L800BFAD0
/* 0C06C4 800BFAC4 00000000 */ nop
/* 0C06C8 800BFAC8 10000004 */ b .L800BFADC
/* 0C06CC 800BFACC 00002825 */ move $a1, $zero
.L800BFAD0:
/* 0C06D0 800BFAD0 04C10002 */ bgez $a2, .L800BFADC
/* 0C06D4 800BFAD4 00000000 */ nop
/* 0C06D8 800BFAD8 00003025 */ move $a2, $zero
.L800BFADC:
/* 0C06DC 800BFADC 10A00015 */ beqz $a1, .L800BFB34
/* 0C06E0 800BFAE0 00000000 */ nop
/* 0C06E4 800BFAE4 460C1100 */ add.s $f4, $f2, $f12
/* 0C06E8 800BFAE8 460E2181 */ sub.s $f6, $f4, $f14
/* 0C06EC 800BFAEC 00000000 */ nop
/* 0C06F0 800BFAF0 46003203 */ div.s $f8, $f6, $f0
/* 0C06F4 800BFAF4 4459F800 */ cfc1 $t9, $31
/* 0C06F8 800BFAF8 00000000 */ nop
/* 0C06FC 800BFAFC 37210003 */ ori $at, $t9, 3
/* 0C0700 800BFB00 38210002 */ xori $at, $at, 2
/* 0C0704 800BFB04 44C1F800 */ ctc1 $at, $31
/* 0C0708 800BFB08 00000000 */ nop
/* 0C070C 800BFB0C 460042A4 */ cvt.w.s $f10, $f8
/* 0C0710 800BFB10 44085000 */ mfc1 $t0, $f10
/* 0C0714 800BFB14 44D9F800 */ ctc1 $t9, $31
/* 0C0718 800BFB18 05010003 */ bgez $t0, .L800BFB28
/* 0C071C 800BFB1C 0107082A */ slt $at, $t0, $a3
/* 0C0720 800BFB20 10000004 */ b .L800BFB34
/* 0C0724 800BFB24 00002825 */ move $a1, $zero
.L800BFB28:
/* 0C0728 800BFB28 14200002 */ bnez $at, .L800BFB34
/* 0C072C 800BFB2C 00000000 */ nop
/* 0C0730 800BFB30 24E8FFFF */ addiu $t0, $a3, -1
.L800BFB34:
/* 0C0734 800BFB34 10A0002E */ beqz $a1, .L800BFBF0
/* 0C0738 800BFB38 0106082A */ slt $at, $t0, $a2
/* 0C073C 800BFB3C 1420002C */ bnez $at, .L800BFBF0
/* 0C0740 800BFB40 00C02825 */ move $a1, $a2
/* 0C0744 800BFB44 250A0001 */ addiu $t2, $t0, 1
.L800BFB48:
/* 0C0748 800BFB48 8DAF0000 */ lw $t7, ($t5)
/* 0C074C 800BFB4C 000570C0 */ sll $t6, $a1, 3
/* 0C0750 800BFB50 00003825 */ move $a3, $zero
/* 0C0754 800BFB54 1040000F */ beqz $v0, .L800BFB94
/* 0C0758 800BFB58 01CF3021 */ addu $a2, $t6, $t7
/* 0C075C 800BFB5C 90D80007 */ lbu $t8, 7($a2)
/* 0C0760 800BFB60 00000000 */ nop
/* 0C0764 800BFB64 1618001F */ bne $s0, $t8, .L800BFBE4
/* 0C0768 800BFB68 00000000 */ nop
/* 0C076C 800BFB6C 90D90000 */ lbu $t9, ($a2)
/* 0C0770 800BFB70 00000000 */ nop
/* 0C0774 800BFB74 12190005 */ beq $s0, $t9, .L800BFB8C
/* 0C0778 800BFB78 00000000 */ nop
.L800BFB7C:
/* 0C077C 800BFB7C 90CE0001 */ lbu $t6, 1($a2)
/* 0C0780 800BFB80 24C60001 */ addiu $a2, $a2, 1
/* 0C0784 800BFB84 160EFFFD */ bne $s0, $t6, .L800BFB7C
/* 0C0788 800BFB88 00000000 */ nop
.L800BFB8C:
/* 0C078C 800BFB8C 10000015 */ b .L800BFBE4
/* 0C0790 800BFB90 A0C30000 */ sb $v1, ($a2)
.L800BFB94:
/* 0C0794 800BFB94 00C74821 */ addu $t1, $a2, $a3
.L800BFB98:
/* 0C0798 800BFB98 912F0000 */ lbu $t7, ($t1)
/* 0C079C 800BFB9C 28E10007 */ slti $at, $a3, 7
/* 0C07A0 800BFBA0 146F000C */ bne $v1, $t7, .L800BFBD4
/* 0C07A4 800BFBA4 00000000 */ nop
/* 0C07A8 800BFBA8 10200007 */ beqz $at, .L800BFBC8
/* 0C07AC 800BFBAC 00000000 */ nop
.L800BFBB0:
/* 0C07B0 800BFBB0 91380001 */ lbu $t8, 1($t1)
/* 0C07B4 800BFBB4 24E70001 */ addiu $a3, $a3, 1
/* 0C07B8 800BFBB8 28E10007 */ slti $at, $a3, 7
/* 0C07BC 800BFBBC 25290001 */ addiu $t1, $t1, 1
/* 0C07C0 800BFBC0 1420FFFB */ bnez $at, .L800BFBB0
/* 0C07C4 800BFBC4 A138FFFF */ sb $t8, -1($t1)
.L800BFBC8:
/* 0C07C8 800BFBC8 A1310000 */ sb $s1, ($t1)
/* 0C07CC 800BFBCC 24E70001 */ addiu $a3, $a3, 1
/* 0C07D0 800BFBD0 25290001 */ addiu $t1, $t1, 1
.L800BFBD4:
/* 0C07D4 800BFBD4 24E70001 */ addiu $a3, $a3, 1
/* 0C07D8 800BFBD8 28E10008 */ slti $at, $a3, 8
/* 0C07DC 800BFBDC 1420FFEE */ bnez $at, .L800BFB98
/* 0C07E0 800BFBE0 25290001 */ addiu $t1, $t1, 1
.L800BFBE4:
/* 0C07E4 800BFBE4 24A50001 */ addiu $a1, $a1, 1
/* 0C07E8 800BFBE8 1545FFD7 */ bne $t2, $a1, .L800BFB48
/* 0C07EC 800BFBEC 00000000 */ nop
.L800BFBF0:
/* 0C07F0 800BFBF0 1440000E */ bnez $v0, .L800BFC2C
/* 0C07F4 800BFBF4 24010002 */ li $at, 2
/* 0C07F8 800BFBF8 C4920008 */ lwc1 $f18, 8($a0)
/* 0C07FC 800BFBFC C7B00034 */ lwc1 $f16, 0x34($sp)
/* 0C0800 800BFC00 C48E000C */ lwc1 $f14, 0xc($a0)
/* 0C0804 800BFC04 46109400 */ add.s $f16, $f18, $f16
/* 0C0808 800BFC08 C4920000 */ lwc1 $f18, ($a0)
/* 0C080C 800BFC0C C48C0004 */ lwc1 $f12, 4($a0)
/* 0C0810 800BFC10 46147380 */ add.s $f14, $f14, $f20
/* 0C0814 800BFC14 E4900008 */ swc1 $f16, 8($a0)
/* 0C0818 800BFC18 46149480 */ add.s $f18, $f18, $f20
/* 0C081C 800BFC1C E48E000C */ swc1 $f14, 0xc($a0)
/* 0C0820 800BFC20 46146300 */ add.s $f12, $f12, $f20
/* 0C0824 800BFC24 E4920000 */ swc1 $f18, ($a0)
/* 0C0828 800BFC28 E48C0004 */ swc1 $f12, 4($a0)
.L800BFC2C:
/* 0C082C 800BFC2C 24420001 */ addiu $v0, $v0, 1
/* 0C0830 800BFC30 1441FF8E */ bne $v0, $at, .L800BFA6C
/* 0C0834 800BFC34 00000000 */ nop
/* 0C0838 800BFC38 AFA8001C */ sw $t0, 0x1c($sp)
.L800BFC3C:
/* 0C083C 800BFC3C C7B50008 */ lwc1 $f21, 8($sp)
/* 0C0840 800BFC40 C7B4000C */ lwc1 $f20, 0xc($sp)
/* 0C0844 800BFC44 8FB00010 */ lw $s0, 0x10($sp)
/* 0C0848 800BFC48 8FB10014 */ lw $s1, 0x14($sp)
/* 0C084C 800BFC4C 03E00008 */ jr $ra
/* 0C0850 800BFC50 27BD0030 */ addiu $sp, $sp, 0x30