Audio WIP (#836)

* being code_800EC960

* wip

* wip

* more audio progress

* migrate data in code_800E11F0

* wip

* make ok

* remove asm

* wip

* move some variables outside of gAudioContext to the AudioContext structure due to the size used in func_800E3094

* more progress

* wip

* wip

* split code_800E11F0

* migrate rodata in code_800E11F0

* match functions that couldn't because of data issues

* move code_800E4FE0 asm files

* wip

* more wip

* fix global functions, and forward declarations

* wip

* wip

* wip

* ocarina wip

* match a couple functions

* some progress

* separate some bss

* match func_800EDA3C

* some matching

* more matches

* migrate audio rodata

* some matches

* more matchess

* start on synthesis

* work on synthesis

* fix function declaration

* Merge branch 'master' into audio

* match a few more functions

* wip

* wip

* more matching, rename Audio_SetBGM to Audio_QueueSeqCmd

* name several audio functions, and audiocontext members

* more naming, rename code_800E11F0 to audio_load, code_800DAAC0 to audio_synthesis

* audio wip

* match a few more functions.

* wip

* add missing NON_MATCHING directive

* wip

* some matching, data reogranization

* match cursed function

* wip

* wip

* formatting

* remove prefix from struct memebers

* missed function rename

* review

Co-authored-by: fig02 <fig02srl@gmail.com>
This commit is contained in:
krimtonz
2021-07-27 18:44:58 -05:00
committed by GitHub
parent cc9a04feb4
commit d1a5ea5110
429 changed files with 9047 additions and 17038 deletions
@@ -1,4 +1,25 @@
glabel func_800F94FC
.late_rodata
glabel jtbl_8014A640
.word L800F9588
.word L800F95F4
.word L800F9614
.word L800F97E4
.word L800F9940
.word L800F9A00
.word L800F9BD8
.word L800F9CE4
.word L800F9D20
.word L800F9DB4
.word L800F9DE8
.word L800F9E84
.word L800F9EB8
.word L800F9B00
.word L800F9F68
.word L800F9FB8
.text
glabel Audio_ProcessSeqCmd
/* B7069C 800F94FC 3C0E8013 */ lui $t6, %hi(D_8013340C) # $t6, 0x8013
/* B706A0 800F9500 91CE340C */ lbu $t6, %lo(D_8013340C)($t6)
/* B706A4 800F9504 27BDFF98 */ addiu $sp, $sp, -0x68
@@ -554,7 +575,7 @@ glabel L800F9CE4
/* B70EA4 800F9D04 00052E00 */ sll $a1, $a1, 0x18
/* B70EA8 800F9D08 330F00FF */ andi $t7, $t8, 0xff
/* B70EAC 800F9D0C 01AF2025 */ or $a0, $t5, $t7
/* B70EB0 800F9D10 0C0396C8 */ jal func_800E5B20
/* B70EB0 800F9D10 0C0396C8 */ jal Audio_QueueCmdS8
/* B70EB4 800F9D14 00052E03 */ sra $a1, $a1, 0x18
/* B70EB8 800F9D18 100000B8 */ b .L800F9FFC
/* B70EBC 800F9D1C 8FBF001C */ lw $ra, 0x1c($sp)
@@ -592,7 +613,7 @@ glabel L800F9D20
/* B70F38 800F9D98 00052E00 */ sll $a1, $a1, 0x18
/* B70F3C 800F9D9C 330E00FF */ andi $t6, $t8, 0xff
/* B70F40 800F9DA0 032E2025 */ or $a0, $t9, $t6
/* B70F44 800F9DA4 0C0396C8 */ jal func_800E5B20
/* B70F44 800F9DA4 0C0396C8 */ jal Audio_QueueCmdS8
/* B70F48 800F9DA8 00052E03 */ sra $a1, $a1, 0x18
/* B70F4C 800F9DAC 10000093 */ b .L800F9FFC
/* B70F50 800F9DB0 8FBF001C */ lw $ra, 0x1c($sp)
@@ -623,13 +644,13 @@ glabel L800F9DE8
/* B70FAC 800F9E0C AFA20030 */ sw $v0, 0x30($sp)
/* B70FB0 800F9E10 30C5FFFF */ andi $a1, $a2, 0xffff
/* B70FB4 800F9E14 AFA60034 */ sw $a2, 0x34($sp)
/* B70FB8 800F9E18 0C0396D4 */ jal func_800E5B50
/* B70FB8 800F9E18 0C0396D4 */ jal Audio_QueueCmdU16
/* B70FBC 800F9E1C AFA70038 */ sw $a3, 0x38($sp)
/* B70FC0 800F9E20 8FA20030 */ lw $v0, 0x30($sp)
/* B70FC4 800F9E24 3C010800 */ lui $at, 0x800
/* B70FC8 800F9E28 24050001 */ li $a1, 1
/* B70FCC 800F9E2C 00412025 */ or $a0, $v0, $at
/* B70FD0 800F9E30 0C0396C8 */ jal func_800E5B20
/* B70FD0 800F9E30 0C0396C8 */ jal Audio_QueueCmdS8
/* B70FD4 800F9E34 3484FF00 */ ori $a0, $a0, 0xff00
/* B70FD8 800F9E38 8FA30034 */ lw $v1, 0x34($sp)
/* B70FDC 800F9E3C 8FA70038 */ lw $a3, 0x38($sp)
@@ -644,10 +665,10 @@ glabel L800F9DE8
/* B70FFC 800F9E5C 3C010800 */ lui $at, 0x800
/* B71000 800F9E60 00418025 */ or $s0, $v0, $at
/* B71004 800F9E64 3610FF00 */ ori $s0, $s0, 0xff00
/* B71008 800F9E68 0C0396D4 */ jal func_800E5B50
/* B71008 800F9E68 0C0396D4 */ jal Audio_QueueCmdU16
/* B7100C 800F9E6C 30C5FFFF */ andi $a1, $a2, 0xffff
/* B71010 800F9E70 02002025 */ move $a0, $s0
/* B71014 800F9E74 0C0396C8 */ jal func_800E5B20
/* B71014 800F9E74 0C0396C8 */ jal Audio_QueueCmdS8
/* B71018 800F9E78 00002825 */ move $a1, $zero
/* B7101C 800F9E7C 1000005F */ b .L800F9FFC
/* B71020 800F9E80 8FBF001C */ lw $ra, 0x1c($sp)
@@ -726,7 +747,7 @@ glabel L800F9F68
/* B71130 800F9F90 320F00FF */ andi $t7, $s0, 0xff
/* B71134 800F9F94 3C058013 */ lui $a1, %hi(D_80133410)
/* B71138 800F9F98 00AF2821 */ addu $a1, $a1, $t7
/* B7113C 800F9F9C 0C0396BF */ jal func_800E5AFC
/* B7113C 800F9F9C 0C0396BF */ jal Audio_QueueCmdS32
/* B71140 800F9FA0 90A53410 */ lbu $a1, %lo(D_80133410)($a1)
/* B71144 800F9FA4 10000015 */ b .L800F9FFC
/* B71148 800F9FA8 8FBF001C */ lw $ra, 0x1c($sp)
@@ -749,7 +770,7 @@ glabel L800F9FB8
/* B71184 800F9FE4 0C03DC6F */ jal func_800F71BC
/* B71188 800F9FE8 93A40059 */ lbu $a0, 0x59($sp)
/* B7118C 800F9FEC 3C04F800 */ lui $a0, 0xf800
/* B71190 800F9FF0 0C0396BF */ jal func_800E5AFC
/* B71190 800F9FF0 0C0396BF */ jal Audio_QueueCmdS32
/* B71194 800F9FF4 00002825 */ move $a1, $zero
.L800F9FF8:
/* B71198 800F9FF8 8FBF001C */ lw $ra, 0x1c($sp)
@@ -1,12 +0,0 @@
glabel Audio_SetBGM
/* B711AC 800FA00C 3C038013 */ lui $v1, %hi(D_80133400) # $v1, 0x8013
/* B711B0 800FA010 24633400 */ addiu $v1, %lo(D_80133400) # addiu $v1, $v1, 0x3400
/* B711B4 800FA014 90620000 */ lbu $v0, ($v1)
/* B711B8 800FA018 3C018017 */ lui $at, %hi(D_8016E350)
/* B711BC 800FA01C 00027080 */ sll $t6, $v0, 2
/* B711C0 800FA020 002E0821 */ addu $at, $at, $t6
/* B711C4 800FA024 AC24E350 */ sw $a0, %lo(D_8016E350)($at)
/* B711C8 800FA028 244F0001 */ addiu $t7, $v0, 1
/* B711CC 800FA02C 03E00008 */ jr $ra
/* B711D0 800FA030 A06F0000 */ sb $t7, ($v1)
@@ -38,7 +38,7 @@ glabel func_800F9280
/* B704AC 800F930C AFA6002C */ sw $a2, 0x2c($sp)
/* B704B0 800F9310 00001012 */ mflo $v0
/* B704B4 800F9314 3045FFFF */ andi $a1, $v0, 0xffff
/* B704B8 800F9318 0C0396BF */ jal func_800E5AFC
/* B704B8 800F9318 0C0396BF */ jal Audio_QueueCmdS32
/* B704BC 800F931C 00000000 */ nop
/* B704C0 800F9320 8FA30028 */ lw $v1, 0x28($sp)
/* B704C4 800F9324 10000018 */ b .L800F9388
@@ -64,7 +64,7 @@ glabel func_800F9280
/* B70510 800F9370 24A10003 */ addiu $at, $a1, 3
.L800F9374:
/* B70514 800F9374 00012883 */ sra $a1, $at, 2
/* B70518 800F9378 0C0396BF */ jal func_800E5AFC
/* B70518 800F9378 0C0396BF */ jal Audio_QueueCmdS32
/* B7051C 800F937C 00000000 */ nop
/* B70520 800F9380 8FA30028 */ lw $v1, 0x28($sp)
/* B70524 800F9384 8FA7002C */ lw $a3, 0x2c($sp)
@@ -92,7 +92,7 @@ glabel func_800F9280
/* B70578 800F93D8 3C014100 */ lui $at, 0x4100
/* B7057C 800F93DC 44051000 */ mfc1 $a1, $f2
/* B70580 800F93E0 00612025 */ or $a0, $v1, $at
/* B70584 800F93E4 0C0396B6 */ jal func_800E5AD8
/* B70584 800F93E4 0C0396B6 */ jal Audio_QueueCmdF32
/* B70588 800F93E8 AFA60024 */ sw $a2, 0x24($sp)
/* B7058C 800F93EC 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* B70590 800F93F0 44810000 */ mtc1 $at, $f0
@@ -1,37 +0,0 @@
glabel func_800F9474
/* B70614 800F9474 3C0E8017 */ lui $t6, %hi(gAudioContext+0x2854) # $t6, 0x8017
/* B70618 800F9478 95CE19D4 */ lhu $t6, %lo(gAudioContext+0x2854)($t6)
/* B7061C 800F947C 30A6FFFF */ andi $a2, $a1, 0xffff
/* B70620 800F9480 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B70624 800F9484 00CE0019 */ multu $a2, $t6
/* B70628 800F9488 AFA40018 */ sw $a0, 0x18($sp)
/* B7062C 800F948C 93A4001B */ lbu $a0, 0x1b($sp)
/* B70630 800F9490 AFA5001C */ sw $a1, 0x1c($sp)
/* B70634 800F9494 3C018300 */ lui $at, 0x8300
/* B70638 800F9498 00042400 */ sll $a0, $a0, 0x10
/* B7063C 800F949C 00812025 */ or $a0, $a0, $at
/* B70640 800F94A0 AFBF0014 */ sw $ra, 0x14($sp)
/* B70644 800F94A4 00002812 */ mflo $a1
/* B70648 800F94A8 04A10002 */ bgez $a1, .L800F94B4
/* B7064C 800F94AC 00A00821 */ addu $at, $a1, $zero
/* B70650 800F94B0 24A10003 */ addiu $at, $a1, 3
.L800F94B4:
/* B70654 800F94B4 00012883 */ sra $a1, $at, 2
/* B70658 800F94B8 0C0396BF */ jal func_800E5AFC
/* B7065C 800F94BC 00000000 */ nop
/* B70660 800F94C0 93B8001B */ lbu $t8, 0x1b($sp)
/* B70664 800F94C4 8FBF0014 */ lw $ra, 0x14($sp)
/* B70668 800F94C8 3C018017 */ lui $at, %hi(D_8016E9A4)
/* B7066C 800F94CC 0018C880 */ sll $t9, $t8, 2
/* B70670 800F94D0 0338C821 */ addu $t9, $t9, $t8
/* B70674 800F94D4 0019C880 */ sll $t9, $t9, 2
/* B70678 800F94D8 0338C823 */ subu $t9, $t9, $t8
/* B7067C 800F94DC 0019C8C0 */ sll $t9, $t9, 3
/* B70680 800F94E0 0338C821 */ addu $t9, $t9, $t8
/* B70684 800F94E4 0019C880 */ sll $t9, $t9, 2
/* B70688 800F94E8 00390821 */ addu $at, $at, $t9
/* B7068C 800F94EC 340FFFFF */ li $t7, 65535
/* B70690 800F94F0 A42FE9A4 */ sh $t7, %lo(D_8016E9A4)($at)
/* B70694 800F94F4 03E00008 */ jr $ra
/* B70698 800F94F8 27BD0018 */ addiu $sp, $sp, 0x18
@@ -1,36 +0,0 @@
glabel func_800FA034
/* B711D4 800FA034 27BDFFD8 */ addiu $sp, $sp, -0x28
/* B711D8 800FA038 AFB2001C */ sw $s2, 0x1c($sp)
/* B711DC 800FA03C AFB10018 */ sw $s1, 0x18($sp)
/* B711E0 800FA040 3C118013 */ lui $s1, %hi(D_80133404) # $s1, 0x8013
/* B711E4 800FA044 3C128013 */ lui $s2, %hi(D_80133400) # $s2, 0x8013
/* B711E8 800FA048 26523400 */ addiu $s2, %lo(D_80133400) # addiu $s2, $s2, 0x3400
/* B711EC 800FA04C 26313404 */ addiu $s1, %lo(D_80133404) # addiu $s1, $s1, 0x3404
/* B711F0 800FA050 AFB00014 */ sw $s0, 0x14($sp)
/* B711F4 800FA054 92300000 */ lbu $s0, ($s1)
/* B711F8 800FA058 924E0000 */ lbu $t6, ($s2)
/* B711FC 800FA05C AFB30020 */ sw $s3, 0x20($sp)
/* B71200 800FA060 AFBF0024 */ sw $ra, 0x24($sp)
/* B71204 800FA064 120E000C */ beq $s0, $t6, .L800FA098
/* B71208 800FA068 3C138017 */ lui $s3, %hi(D_8016E350) # $s3, 0x8017
/* B7120C 800FA06C 2673E350 */ addiu $s3, %lo(D_8016E350) # addiu $s3, $s3, -0x1cb0
/* B71210 800FA070 00107880 */ sll $t7, $s0, 2
.L800FA074:
/* B71214 800FA074 026FC021 */ addu $t8, $s3, $t7
/* B71218 800FA078 8F040000 */ lw $a0, ($t8)
/* B7121C 800FA07C 26190001 */ addiu $t9, $s0, 1
/* B71220 800FA080 0C03E53F */ jal func_800F94FC
/* B71224 800FA084 A2390000 */ sb $t9, ($s1)
/* B71228 800FA088 92300000 */ lbu $s0, ($s1)
/* B7122C 800FA08C 92480000 */ lbu $t0, ($s2)
/* B71230 800FA090 5608FFF8 */ bnel $s0, $t0, .L800FA074
/* B71234 800FA094 00107880 */ sll $t7, $s0, 2
.L800FA098:
/* B71238 800FA098 8FBF0024 */ lw $ra, 0x24($sp)
/* B7123C 800FA09C 8FB00014 */ lw $s0, 0x14($sp)
/* B71240 800FA0A0 8FB10018 */ lw $s1, 0x18($sp)
/* B71244 800FA0A4 8FB2001C */ lw $s2, 0x1c($sp)
/* B71248 800FA0A8 8FB30020 */ lw $s3, 0x20($sp)
/* B7124C 800FA0AC 03E00008 */ jr $ra
/* B71250 800FA0B0 27BD0028 */ addiu $sp, $sp, 0x28
@@ -1,30 +0,0 @@
glabel func_800FA0B4
/* B71254 800FA0B4 AFA40000 */ sw $a0, ($sp)
/* B71258 800FA0B8 308400FF */ andi $a0, $a0, 0xff
/* B7125C 800FA0BC 00047080 */ sll $t6, $a0, 2
/* B71260 800FA0C0 01C47023 */ subu $t6, $t6, $a0
/* B71264 800FA0C4 000E7080 */ sll $t6, $t6, 2
/* B71268 800FA0C8 01C47023 */ subu $t6, $t6, $a0
/* B7126C 800FA0CC 000E7140 */ sll $t6, $t6, 5
/* B71270 800FA0D0 3C0F8017 */ lui $t7, %hi(gAudioContext+0x3530)
/* B71274 800FA0D4 01EE7821 */ addu $t7, $t7, $t6
/* B71278 800FA0D8 8DEF26B0 */ lw $t7, %lo(gAudioContext+0x3530)($t7)
/* B7127C 800FA0DC 0004C880 */ sll $t9, $a0, 2
/* B71280 800FA0E0 0324C821 */ addu $t9, $t9, $a0
/* B71284 800FA0E4 000FC7C2 */ srl $t8, $t7, 0x1f
/* B71288 800FA0E8 17000003 */ bnez $t8, .L800FA0F8
/* B7128C 800FA0EC 0019C880 */ sll $t9, $t9, 2
/* B71290 800FA0F0 03E00008 */ jr $ra
/* B71294 800FA0F4 3402FFFF */ li $v0, 65535
.L800FA0F8:
/* B71298 800FA0F8 0324C823 */ subu $t9, $t9, $a0
/* B7129C 800FA0FC 0019C8C0 */ sll $t9, $t9, 3
/* B712A0 800FA100 0324C821 */ addu $t9, $t9, $a0
/* B712A4 800FA104 0019C880 */ sll $t9, $t9, 2
/* B712A8 800FA108 3C028017 */ lui $v0, %hi(D_8016E9A4)
/* B712AC 800FA10C 00591021 */ addu $v0, $v0, $t9
/* B712B0 800FA110 9442E9A4 */ lhu $v0, %lo(D_8016E9A4)($v0)
/* B712B4 800FA114 03E00008 */ jr $ra
/* B712B8 800FA118 00000000 */ nop
@@ -1,28 +0,0 @@
glabel func_800FA11C
/* B712BC 800FA11C 3C028013 */ lui $v0, %hi(D_80133404) # $v0, 0x8013
/* B712C0 800FA120 3C038013 */ lui $v1, %hi(D_80133400) # $v1, 0x8013
/* B712C4 800FA124 90633400 */ lbu $v1, %lo(D_80133400)($v1)
/* B712C8 800FA128 90423404 */ lbu $v0, %lo(D_80133404)($v0)
/* B712CC 800FA12C 3C068017 */ lui $a2, %hi(D_8016E350) # $a2, 0x8017
/* B712D0 800FA130 24C6E350 */ addiu $a2, %lo(D_8016E350) # addiu $a2, $a2, -0x1cb0
/* B712D4 800FA134 1062000C */ beq $v1, $v0, .L800FA168
/* B712D8 800FA138 00027080 */ sll $t6, $v0, 2
.L800FA13C:
/* B712DC 800FA13C 00CE7821 */ addu $t7, $a2, $t6
/* B712E0 800FA140 8DF80000 */ lw $t8, ($t7)
/* B712E4 800FA144 24420001 */ addiu $v0, $v0, 1
/* B712E8 800FA148 304200FF */ andi $v0, $v0, 0xff
/* B712EC 800FA14C 0305C824 */ and $t9, $t8, $a1
/* B712F0 800FA150 14990003 */ bne $a0, $t9, .L800FA160
/* B712F4 800FA154 00000000 */ nop
/* B712F8 800FA158 03E00008 */ jr $ra
/* B712FC 800FA15C 00001025 */ move $v0, $zero
.L800FA160:
/* B71300 800FA160 5462FFF6 */ bnel $v1, $v0, .L800FA13C
/* B71304 800FA164 00027080 */ sll $t6, $v0, 2
.L800FA168:
/* B71308 800FA168 24020001 */ li $v0, 1
/* B7130C 800FA16C 03E00008 */ jr $ra
/* B71310 800FA170 00000000 */ nop
@@ -1,8 +0,0 @@
glabel func_800FA174
/* B71314 800FA174 AFA40000 */ sw $a0, ($sp)
/* B71318 800FA178 308400FF */ andi $a0, $a0, 0xff
/* B7131C 800FA17C 3C018017 */ lui $at, %hi(D_8016E348)
/* B71320 800FA180 00240821 */ addu $at, $at, $a0
/* B71324 800FA184 03E00008 */ jr $ra
/* B71328 800FA188 A020E348 */ sb $zero, %lo(D_8016E348)($at)
@@ -1,50 +0,0 @@
glabel func_800FA18C
/* B7132C 800FA18C AFA40000 */ sw $a0, ($sp)
/* B71330 800FA190 308400FF */ andi $a0, $a0, 0xff
/* B71334 800FA194 00047080 */ sll $t6, $a0, 2
/* B71338 800FA198 01C47021 */ addu $t6, $t6, $a0
/* B7133C 800FA19C 000E7080 */ sll $t6, $t6, 2
/* B71340 800FA1A0 01C47023 */ subu $t6, $t6, $a0
/* B71344 800FA1A4 000E70C0 */ sll $t6, $t6, 3
/* B71348 800FA1A8 01C47021 */ addu $t6, $t6, $a0
/* B7134C 800FA1AC 3C0F8017 */ lui $t7, %hi(D_8016E750) # $t7, 0x8017
/* B71350 800FA1B0 25EFE750 */ addiu $t7, %lo(D_8016E750) # addiu $t7, $t7, -0x18b0
/* B71354 800FA1B4 000E7080 */ sll $t6, $t6, 2
/* B71358 800FA1B8 01CF1821 */ addu $v1, $t6, $t7
/* B7135C 800FA1BC 9066004D */ lbu $a2, 0x4d($v1)
/* B71360 800FA1C0 AFA50004 */ sw $a1, 4($sp)
/* B71364 800FA1C4 30A700FF */ andi $a3, $a1, 0xff
/* B71368 800FA1C8 18C0001B */ blez $a2, .L800FA238
/* B7136C 800FA1CC 00001025 */ move $v0, $zero
/* B71370 800FA1D0 0004C080 */ sll $t8, $a0, 2
/* B71374 800FA1D4 0304C021 */ addu $t8, $t8, $a0
/* B71378 800FA1D8 0018C080 */ sll $t8, $t8, 2
/* B7137C 800FA1DC 0304C023 */ subu $t8, $t8, $a0
/* B71380 800FA1E0 0018C0C0 */ sll $t8, $t8, 3
/* B71384 800FA1E4 0304C021 */ addu $t8, $t8, $a0
/* B71388 800FA1E8 0018C080 */ sll $t8, $t8, 2
/* B7138C 800FA1EC 030F2821 */ addu $a1, $t8, $t7
/* B71390 800FA1F0 00E04025 */ move $t0, $a3
/* B71394 800FA1F4 3C0AFF00 */ lui $t2, 0xff00
/* B71398 800FA1F8 3C0900F0 */ lui $t1, 0xf0
/* B7139C 800FA1FC 0002C880 */ sll $t9, $v0, 2
.L800FA200:
/* B713A0 800FA200 00B93821 */ addu $a3, $a1, $t9
/* B713A4 800FA204 8CEB002C */ lw $t3, 0x2c($a3)
/* B713A8 800FA208 24420001 */ addiu $v0, $v0, 1
/* B713AC 800FA20C 304200FF */ andi $v0, $v0, 0xff
/* B713B0 800FA210 01692024 */ and $a0, $t3, $t1
/* B713B4 800FA214 00042502 */ srl $a0, $a0, 0x14
/* B713B8 800FA218 308400FF */ andi $a0, $a0, 0xff
/* B713BC 800FA21C 55040004 */ bnel $t0, $a0, .L800FA230
/* B713C0 800FA220 0046082A */ slt $at, $v0, $a2
/* B713C4 800FA224 ACEA002C */ sw $t2, 0x2c($a3)
/* B713C8 800FA228 9066004D */ lbu $a2, 0x4d($v1)
/* B713CC 800FA22C 0046082A */ slt $at, $v0, $a2
.L800FA230:
/* B713D0 800FA230 5420FFF3 */ bnezl $at, .L800FA200
/* B713D4 800FA234 0002C880 */ sll $t9, $v0, 2
.L800FA238:
/* B713D8 800FA238 03E00008 */ jr $ra
/* B713DC 800FA23C 00000000 */ nop
@@ -1,112 +0,0 @@
glabel func_800FA240
/* B713E0 800FA240 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B713E4 800FA244 AFA40018 */ sw $a0, 0x18($sp)
/* B713E8 800FA248 93AE001B */ lbu $t6, 0x1b($sp)
/* B713EC 800FA24C 3C098017 */ lui $t1, %hi(D_8016E750)
/* B713F0 800FA250 2529E750 */ addiu $t1, %lo(D_8016E750) # addiu $t1, $t1, -0x18b0
/* B713F4 800FA254 000E7880 */ sll $t7, $t6, 2
/* B713F8 800FA258 01EE7821 */ addu $t7, $t7, $t6
/* B713FC 800FA25C 000F7880 */ sll $t7, $t7, 2
/* B71400 800FA260 01EE7823 */ subu $t7, $t7, $t6
/* B71404 800FA264 000F78C0 */ sll $t7, $t7, 3
/* B71408 800FA268 01EE7821 */ addu $t7, $t7, $t6
/* B7140C 800FA26C AFA5001C */ sw $a1, 0x1c($sp)
/* B71410 800FA270 000F7880 */ sll $t7, $t7, 2
/* B71414 800FA274 30A500FF */ andi $a1, $a1, 0xff
/* B71418 800FA278 AFA70024 */ sw $a3, 0x24($sp)
/* B7141C 800FA27C 012F1821 */ addu $v1, $t1, $t7
/* B71420 800FA280 30E700FF */ andi $a3, $a3, 0xff
/* B71424 800FA284 0065C821 */ addu $t9, $v1, $a1
/* B71428 800FA288 30D8007F */ andi $t8, $a2, 0x7f
/* B7142C 800FA28C AFBF0014 */ sw $ra, 0x14($sp)
/* B71430 800FA290 AFA60020 */ sw $a2, 0x20($sp)
/* B71434 800FA294 A338000E */ sb $t8, 0xe($t9)
/* B71438 800FA298 10E0000E */ beqz $a3, .L800FA2D4
/* B7143C 800FA29C 00E04025 */ move $t0, $a3
/* B71440 800FA2A0 93AA001B */ lbu $t2, 0x1b($sp)
/* B71444 800FA2A4 240C0001 */ li $t4, 1
/* B71448 800FA2A8 000A5880 */ sll $t3, $t2, 2
/* B7144C 800FA2AC 016A5821 */ addu $t3, $t3, $t2
/* B71450 800FA2B0 000B5880 */ sll $t3, $t3, 2
/* B71454 800FA2B4 016A5823 */ subu $t3, $t3, $t2
/* B71458 800FA2B8 000B58C0 */ sll $t3, $t3, 3
/* B7145C 800FA2BC 016A5821 */ addu $t3, $t3, $t2
/* B71460 800FA2C0 000B5880 */ sll $t3, $t3, 2
/* B71464 800FA2C4 012B1021 */ addu $v0, $t1, $t3
/* B71468 800FA2C8 A04C0013 */ sb $t4, 0x13($v0)
/* B7146C 800FA2CC 1000003F */ b .L800FA3CC
/* B71470 800FA2D0 A0470012 */ sb $a3, 0x12($v0)
.L800FA2D4:
/* B71474 800FA2D4 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* B71478 800FA2D8 44810000 */ mtc1 $at, $f0
/* B7147C 800FA2DC 3C0142FE */ li $at, 0x42FE0000 # 0.000000
/* B71480 800FA2E0 44811000 */ mtc1 $at, $f2
/* B71484 800FA2E4 00001025 */ move $v0, $zero
/* B71488 800FA2E8 00626821 */ addu $t5, $v1, $v0
.L800FA2EC:
/* B7148C 800FA2EC 91AE000E */ lbu $t6, 0xe($t5)
/* B71490 800FA2F0 3C014F80 */ li $at, 0x4F800000 # 0.000000
/* B71494 800FA2F4 448E2000 */ mtc1 $t6, $f4
/* B71498 800FA2F8 05C10004 */ bgez $t6, .L800FA30C
/* B7149C 800FA2FC 468021A0 */ cvt.s.w $f6, $f4
/* B714A0 800FA300 44814000 */ mtc1 $at, $f8
/* B714A4 800FA304 00000000 */ nop
/* B714A8 800FA308 46083180 */ add.s $f6, $f6, $f8
.L800FA30C:
/* B714AC 800FA30C 46023283 */ div.s $f10, $f6, $f2
/* B714B0 800FA310 24420001 */ addiu $v0, $v0, 1
/* B714B4 800FA314 304200FF */ andi $v0, $v0, 0xff
/* B714B8 800FA318 28410004 */ slti $at, $v0, 4
/* B714BC 800FA31C 460A0002 */ mul.s $f0, $f0, $f10
/* B714C0 800FA320 5420FFF2 */ bnezl $at, .L800FA2EC
/* B714C4 800FA324 00626821 */ addu $t5, $v1, $v0
/* B714C8 800FA328 46020402 */ mul.s $f16, $f0, $f2
/* B714CC 800FA32C 240D0001 */ li $t5, 1
/* B714D0 800FA330 93AF001B */ lbu $t7, 0x1b($sp)
/* B714D4 800FA334 3C014000 */ lui $at, 0x4000
/* B714D8 800FA338 00085400 */ sll $t2, $t0, 0x10
/* B714DC 800FA33C 000FC600 */ sll $t8, $t7, 0x18
/* B714E0 800FA340 0301C825 */ or $t9, $t8, $at
/* B714E4 800FA344 444CF800 */ cfc1 $t4, $31
/* B714E8 800FA348 44CDF800 */ ctc1 $t5, $31
/* B714EC 800FA34C 032A5825 */ or $t3, $t9, $t2
/* B714F0 800FA350 460084A4 */ cvt.w.s $f18, $f16
/* B714F4 800FA354 444DF800 */ cfc1 $t5, $31
/* B714F8 800FA358 00000000 */ nop
/* B714FC 800FA35C 31AD0078 */ andi $t5, $t5, 0x78
/* B71500 800FA360 11A00012 */ beqz $t5, .L800FA3AC
/* B71504 800FA364 3C014F00 */ li $at, 0x4F000000 # 0.000000
/* B71508 800FA368 44819000 */ mtc1 $at, $f18
/* B7150C 800FA36C 240D0001 */ li $t5, 1
/* B71510 800FA370 46128481 */ sub.s $f18, $f16, $f18
/* B71514 800FA374 44CDF800 */ ctc1 $t5, $31
/* B71518 800FA378 00000000 */ nop
/* B7151C 800FA37C 460094A4 */ cvt.w.s $f18, $f18
/* B71520 800FA380 444DF800 */ cfc1 $t5, $31
/* B71524 800FA384 00000000 */ nop
/* B71528 800FA388 31AD0078 */ andi $t5, $t5, 0x78
/* B7152C 800FA38C 15A00005 */ bnez $t5, .L800FA3A4
/* B71530 800FA390 00000000 */ nop
/* B71534 800FA394 440D9000 */ mfc1 $t5, $f18
/* B71538 800FA398 3C018000 */ lui $at, 0x8000
/* B7153C 800FA39C 10000007 */ b .L800FA3BC
/* B71540 800FA3A0 01A16825 */ or $t5, $t5, $at
.L800FA3A4:
/* B71544 800FA3A4 10000005 */ b .L800FA3BC
/* B71548 800FA3A8 240DFFFF */ li $t5, -1
.L800FA3AC:
/* B7154C 800FA3AC 440D9000 */ mfc1 $t5, $f18
/* B71550 800FA3B0 00000000 */ nop
/* B71554 800FA3B4 05A0FFFB */ bltz $t5, .L800FA3A4
/* B71558 800FA3B8 00000000 */ nop
.L800FA3BC:
/* B7155C 800FA3BC 44CCF800 */ ctc1 $t4, $31
/* B71560 800FA3C0 31AE00FF */ andi $t6, $t5, 0xff
/* B71564 800FA3C4 0C03E53F */ jal func_800F94FC
/* B71568 800FA3C8 016E2025 */ or $a0, $t3, $t6
.L800FA3CC:
/* B7156C 800FA3CC 8FBF0014 */ lw $ra, 0x14($sp)
/* B71570 800FA3D0 27BD0018 */ addiu $sp, $sp, 0x18
/* B71574 800FA3D4 03E00008 */ jr $ra
/* B71578 800FA3D8 00000000 */ nop
@@ -1,3 +1,22 @@
.late_rodata
glabel jtbl_8014A680
.word L800FAAE4
.word L800FAB28
.word L800FAB48
.word L800FAB84
.word L800FABAC
.word L800FABD0
.word L800FAC18
.word L800FAAFC
.word L800FAC24
.word L800FAC84
.word L800FACA4
.word L800FACD4
.word L800FACD4
.word L800FACD4
.word L800FAC3C
.text
glabel func_800FA3DC
/* B7157C 800FA3DC 27BDFF70 */ addiu $sp, $sp, -0x90
/* B71580 800FA3E0 AFB7003C */ sw $s7, 0x3c($sp)
@@ -38,7 +57,7 @@ glabel func_800FA3DC
/* B71608 800FA468 92580013 */ lbu $t8, 0x13($s2)
.L800FA46C:
/* B7160C 800FA46C A2400260 */ sb $zero, 0x260($s2)
/* B71610 800FA470 0C03E53F */ jal func_800F94FC
/* B71610 800FA470 0C03E53F */ jal Audio_ProcessSeqCmd
/* B71614 800FA474 8E44025C */ lw $a0, 0x25c($s2)
/* B71618 800FA478 92580013 */ lbu $t8, 0x13($s2)
.L800FA47C:
@@ -116,7 +135,7 @@ glabel func_800FA3DC
.L800FA588:
/* B71728 800FA588 44D9F800 */ ctc1 $t9, $31
/* B7172C 800FA58C 314B00FF */ andi $t3, $t2, 0xff
/* B71730 800FA590 0C03E803 */ jal Audio_SetBGM
/* B71730 800FA590 0C03E803 */ jal Audio_QueueSeqCmd
/* B71734 800FA594 030B2025 */ or $a0, $t8, $t3
/* B71738 800FA598 A2400013 */ sb $zero, 0x13($s2)
.L800FA59C:
@@ -139,7 +158,7 @@ glabel func_800FA3DC
/* B71774 800FA5D4 00042400 */ sll $a0, $a0, 0x10
/* B71778 800FA5D8 3C014100 */ lui $at, 0x4100
/* B7177C 800FA5DC 00812025 */ or $a0, $a0, $at
/* B71780 800FA5E0 0C0396B6 */ jal func_800E5AD8
/* B71780 800FA5E0 0C0396B6 */ jal Audio_QueueCmdF32
/* B71784 800FA5E4 8E450000 */ lw $a1, ($s2)
.L800FA5E8:
/* B71788 800FA5E8 8E450014 */ lw $a1, 0x14($s2)
@@ -327,7 +346,7 @@ glabel func_800FA3DC
/* B71A10 800FA870 00612025 */ or $a0, $v1, $at
/* B71A14 800FA874 4600410D */ trunc.w.s $f4, $f8
/* B71A18 800FA878 44052000 */ mfc1 $a1, $f4
/* B71A1C 800FA87C 0C0396BF */ jal func_800E5AFC
/* B71A1C 800FA87C 0C0396BF */ jal Audio_QueueCmdS32
/* B71A20 800FA880 00000000 */ nop
.L800FA884:
/* B71A24 800FA884 96590252 */ lhu $t9, 0x252($s2)
@@ -372,7 +391,7 @@ glabel func_800FA3DC
/* B71AB4 800FA914 321900FF */ andi $t9, $s0, 0xff
/* B71AB8 800FA918 00195200 */ sll $t2, $t9, 8
/* B71ABC 800FA91C 00CA2025 */ or $a0, $a2, $t2
/* B71AC0 800FA920 0C0396B6 */ jal func_800E5AD8
/* B71AC0 800FA920 0C0396B6 */ jal Audio_QueueCmdF32
/* B71AC4 800FA924 8C450050 */ lw $a1, 0x50($v0)
.L800FA928:
/* B71AC8 800FA928 26100001 */ addiu $s0, $s0, 1
@@ -423,7 +442,7 @@ glabel func_800FA3DC
/* B71B6C 800FA9CC 321800FF */ andi $t8, $s0, 0xff
/* B71B70 800FA9D0 00185A00 */ sll $t3, $t8, 8
/* B71B74 800FA9D4 00CB2025 */ or $a0, $a2, $t3
/* B71B78 800FA9D8 0C0396B6 */ jal func_800E5AD8
/* B71B78 800FA9D8 0C0396B6 */ jal Audio_QueueCmdF32
/* B71B7C 800FA9DC 8C450060 */ lw $a1, 0x60($v0)
.L800FA9E0:
/* B71B80 800FA9E0 26100001 */ addiu $s0, $s0, 1
@@ -498,7 +517,7 @@ glabel func_800FA3DC
glabel L800FAAE4
/* B71C84 800FAAE4 322400FF */ andi $a0, $s1, 0xff
/* B71C88 800FAAE8 24050001 */ li $a1, 1
/* B71C8C 800FAAEC 0C03E890 */ jal func_800FA240
/* B71C8C 800FAAEC 0C03E890 */ jal Audio_SetVolScale
/* B71C90 800FAAF0 2406007F */ li $a2, 127
/* B71C94 800FAAF4 10000077 */ b .L800FACD4
/* B71C98 800FAAF8 9243004D */ lbu $v1, 0x4d($s2)
@@ -510,7 +529,7 @@ glabel L800FAAFC
/* B71CAC 800FAB0C 24050001 */ li $a1, 1
/* B71CB0 800FAB10 14EC0070 */ bne $a3, $t4, .L800FACD4
/* B71CB4 800FAB14 2406007F */ li $a2, 127
/* B71CB8 800FAB18 0C03E890 */ jal func_800FA240
/* B71CB8 800FAB18 0C03E890 */ jal Audio_SetVolScale
/* B71CBC 800FAB1C 320700FF */ andi $a3, $s0, 0xff
/* B71CC0 800FAB20 1000006C */ b .L800FACD4
/* B71CC4 800FAB24 9243004D */ lbu $v1, 0x4d($s2)
@@ -519,7 +538,7 @@ glabel L800FAB28
/* B71CCC 800FAB2C 3C013000 */ lui $at, 0x3000
/* B71CD0 800FAB30 0015CE00 */ sll $t9, $s5, 0x18
/* B71CD4 800FAB34 01E17025 */ or $t6, $t7, $at
/* B71CD8 800FAB38 0C03E803 */ jal Audio_SetBGM
/* B71CD8 800FAB38 0C03E803 */ jal Audio_QueueSeqCmd
/* B71CDC 800FAB3C 01D92025 */ or $a0, $t6, $t9
/* B71CE0 800FAB40 10000064 */ b .L800FACD4
/* B71CE4 800FAB44 9243004D */ lbu $v1, 0x4d($s2)
@@ -531,7 +550,7 @@ glabel L800FAB48
/* B71CF8 800FAB58 02EA8021 */ addu $s0, $s7, $t2
/* B71CFC 800FAB5C 96180254 */ lhu $t8, 0x254($s0)
/* B71D00 800FAB60 030B2025 */ or $a0, $t8, $t3
/* B71D04 800FAB64 0C03E803 */ jal Audio_SetBGM
/* B71D04 800FAB64 0C03E803 */ jal Audio_QueueSeqCmd
/* B71D08 800FAB68 00812025 */ or $a0, $a0, $at
/* B71D0C 800FAB6C 240D0001 */ li $t5, 1
/* B71D10 800FAB70 240C007F */ li $t4, 127
@@ -546,7 +565,7 @@ glabel L800FAB84
/* B71D30 800FAB90 01E17025 */ or $t6, $t7, $at
/* B71D34 800FAB94 0010CC00 */ sll $t9, $s0, 0x10
/* B71D38 800FAB98 01D95025 */ or $t2, $t6, $t9
/* B71D3C 800FAB9C 0C03E803 */ jal Audio_SetBGM
/* B71D3C 800FAB9C 0C03E803 */ jal Audio_QueueSeqCmd
/* B71D40 800FABA0 01472025 */ or $a0, $t2, $a3
/* B71D44 800FABA4 1000004B */ b .L800FACD4
/* B71D48 800FABA8 9243004D */ lbu $v1, 0x4d($s2)
@@ -556,7 +575,7 @@ glabel L800FABAC
/* B71D54 800FABB4 0011C600 */ sll $t8, $s1, 0x18
/* B71D58 800FABB8 03015825 */ or $t3, $t8, $at
/* B71D5C 800FABBC 00076C00 */ sll $t5, $a3, 0x10
/* B71D60 800FABC0 0C03E803 */ jal Audio_SetBGM
/* B71D60 800FABC0 0C03E803 */ jal Audio_QueueSeqCmd
/* B71D64 800FABC4 016D2025 */ or $a0, $t3, $t5
/* B71D68 800FABC8 10000042 */ b .L800FACD4
/* B71D6C 800FABCC 9243004D */ lbu $v1, 0x4d($s2)
@@ -569,12 +588,12 @@ glabel L800FABD0
/* B71D84 800FABE4 920F004E */ lbu $t7, 0x4e($s0)
/* B71D88 800FABE8 000F7400 */ sll $t6, $t7, 0x10
/* B71D8C 800FABEC 01D95025 */ or $t2, $t6, $t9
/* B71D90 800FABF0 0C03E803 */ jal Audio_SetBGM
/* B71D90 800FABF0 0C03E803 */ jal Audio_QueueSeqCmd
/* B71D94 800FABF4 01432025 */ or $a0, $t2, $v1
/* B71D98 800FABF8 322400FF */ andi $a0, $s1, 0xff
/* B71D9C 800FABFC 24050001 */ li $a1, 1
/* B71DA0 800FAC00 2406007F */ li $a2, 127
/* B71DA4 800FAC04 0C03E890 */ jal func_800FA240
/* B71DA4 800FAC04 0C03E890 */ jal Audio_SetVolScale
/* B71DA8 800FAC08 00003825 */ move $a3, $zero
/* B71DAC 800FAC0C A200004E */ sb $zero, 0x4e($s0)
/* B71DB0 800FAC10 10000030 */ b .L800FACD4
@@ -586,7 +605,7 @@ glabel L800FAC18
glabel L800FAC24
/* B71DC4 800FAC24 322400FF */ andi $a0, $s1, 0xff
/* B71DC8 800FAC28 320500FF */ andi $a1, $s0, 0xff
/* B71DCC 800FAC2C 0C03E890 */ jal func_800FA240
/* B71DCC 800FAC2C 0C03E890 */ jal Audio_SetVolScale
/* B71DD0 800FAC30 2406007F */ li $a2, 127
/* B71DD4 800FAC34 10000027 */ b .L800FACD4
/* B71DD8 800FAC38 9243004D */ lbu $v1, 0x4d($s2)
@@ -595,19 +614,19 @@ glabel L800FAC3C
/* B71DE0 800FAC40 13000004 */ beqz $t8, .L800FAC54
/* B71DE4 800FAC44 00E08025 */ move $s0, $a3
/* B71DE8 800FAC48 02C02025 */ move $a0, $s6
/* B71DEC 800FAC4C 0C0396BF */ jal func_800E5AFC
/* B71DEC 800FAC4C 0C0396BF */ jal Audio_QueueCmdS32
/* B71DF0 800FAC50 00002825 */ move $a1, $zero
.L800FAC54:
/* B71DF4 800FAC54 320B0002 */ andi $t3, $s0, 2
/* B71DF8 800FAC58 11600003 */ beqz $t3, .L800FAC68
/* B71DFC 800FAC5C 02C02025 */ move $a0, $s6
/* B71E00 800FAC60 0C0396BF */ jal func_800E5AFC
/* B71E00 800FAC60 0C0396BF */ jal Audio_QueueCmdS32
/* B71E04 800FAC64 24050001 */ li $a1, 1
.L800FAC68:
/* B71E08 800FAC68 320D0004 */ andi $t5, $s0, 4
/* B71E0C 800FAC6C 11A00003 */ beqz $t5, .L800FAC7C
/* B71E10 800FAC70 02C02025 */ move $a0, $s6
/* B71E14 800FAC74 0C0396BF */ jal func_800E5AFC
/* B71E14 800FAC74 0C0396BF */ jal Audio_QueueCmdS32
/* B71E18 800FAC78 24050002 */ li $a1, 2
.L800FAC7C:
/* B71E1C 800FAC7C 10000015 */ b .L800FACD4
@@ -617,7 +636,7 @@ glabel L800FAC84
/* B71E28 800FAC88 3C01A000 */ lui $at, 0xa000
/* B71E2C 800FAC8C 3043FFFF */ andi $v1, $v0, 0xffff
/* B71E30 800FAC90 01817825 */ or $t7, $t4, $at
/* B71E34 800FAC94 0C03E803 */ jal Audio_SetBGM
/* B71E34 800FAC94 0C03E803 */ jal Audio_QueueSeqCmd
/* B71E38 800FAC98 01E32025 */ or $a0, $t7, $v1
/* B71E3C 800FAC9C 1000000D */ b .L800FACD4
/* B71E40 800FACA0 9243004D */ lbu $v1, 0x4d($s2)
@@ -631,7 +650,7 @@ glabel L800FACA4
/* B71E5C 800FACBC 00105400 */ sll $t2, $s0, 0x10
/* B71E60 800FACC0 032AC025 */ or $t8, $t9, $t2
/* B71E64 800FACC4 316DFFFF */ andi $t5, $t3, 0xffff
/* B71E68 800FACC8 0C03E803 */ jal Audio_SetBGM
/* B71E68 800FACC8 0C03E803 */ jal Audio_QueueSeqCmd
/* B71E6C 800FACCC 030D2025 */ or $a0, $t8, $t5
/* B71E70 800FACD0 9243004D */ lbu $v1, 0x4d($s2)
.L800FACD4:
@@ -1,57 +0,0 @@
glabel func_800FAD34
/* B71ED4 800FAD34 3C038013 */ lui $v1, %hi(D_80133418) # $v1, 0x8013
/* B71ED8 800FAD38 90633418 */ lbu $v1, %lo(D_80133418)($v1)
/* B71EDC 800FAD3C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* B71EE0 800FAD40 AFBF001C */ sw $ra, 0x1c($sp)
/* B71EE4 800FAD44 AFB00018 */ sw $s0, 0x18($sp)
/* B71EE8 800FAD48 10600026 */ beqz $v1, .L800FADE4
/* B71EEC 800FAD4C 00601025 */ move $v0, $v1
/* B71EF0 800FAD50 24100001 */ li $s0, 1
/* B71EF4 800FAD54 1602000F */ bne $s0, $v0, .L800FAD94
/* B71EF8 800FAD58 24010002 */ li $at, 2
/* B71EFC 800FAD5C 0C0397B7 */ jal func_800E5EDC
/* B71F00 800FAD60 00000000 */ nop
/* B71F04 800FAD64 14500008 */ bne $v0, $s0, .L800FAD88
/* B71F08 800FAD68 3C018013 */ lui $at, %hi(D_80133418) # $at, 0x8013
/* B71F0C 800FAD6C 3C058013 */ lui $a1, %hi(D_801333CC) # $a1, 0x8013
/* B71F10 800FAD70 A0203418 */ sb $zero, %lo(D_80133418)($at)
/* B71F14 800FAD74 80A533CC */ lb $a1, %lo(D_801333CC)($a1)
/* B71F18 800FAD78 0C0396C8 */ jal func_800E5B20
/* B71F1C 800FAD7C 3C044602 */ lui $a0, 0x4602
/* B71F20 800FAD80 0C03DC5C */ jal func_800F7170
/* B71F24 800FAD84 00000000 */ nop
.L800FAD88:
/* B71F28 800FAD88 3C038013 */ lui $v1, %hi(D_80133418) # $v1, 0x8013
/* B71F2C 800FAD8C 10000015 */ b .L800FADE4
/* B71F30 800FAD90 90633418 */ lbu $v1, %lo(D_80133418)($v1)
.L800FAD94:
/* B71F34 800FAD94 54410014 */ bnel $v0, $at, .L800FADE8
/* B71F38 800FAD98 8FBF001C */ lw $ra, 0x1c($sp)
/* B71F3C 800FAD9C 0C0397B7 */ jal func_800E5EDC
/* B71F40 800FADA0 00000000 */ nop
/* B71F44 800FADA4 10500005 */ beq $v0, $s0, .L800FADBC
/* B71F48 800FADA8 00000000 */ nop
.L800FADAC:
/* B71F4C 800FADAC 0C0397B7 */ jal func_800E5EDC
/* B71F50 800FADB0 00000000 */ nop
/* B71F54 800FADB4 1450FFFD */ bne $v0, $s0, .L800FADAC
/* B71F58 800FADB8 00000000 */ nop
.L800FADBC:
/* B71F5C 800FADBC 3C018013 */ lui $at, %hi(D_80133418) # $at, 0x8013
/* B71F60 800FADC0 3C058013 */ lui $a1, %hi(D_801333CC) # $a1, 0x8013
/* B71F64 800FADC4 A0203418 */ sb $zero, %lo(D_80133418)($at)
/* B71F68 800FADC8 80A533CC */ lb $a1, %lo(D_801333CC)($a1)
/* B71F6C 800FADCC 0C0396C8 */ jal func_800E5B20
/* B71F70 800FADD0 3C044602 */ lui $a0, 0x4602
/* B71F74 800FADD4 0C03DC5C */ jal func_800F7170
/* B71F78 800FADD8 00000000 */ nop
/* B71F7C 800FADDC 3C038013 */ lui $v1, %hi(D_80133418) # $v1, 0x8013
/* B71F80 800FADE0 90633418 */ lbu $v1, %lo(D_80133418)($v1)
.L800FADE4:
/* B71F84 800FADE4 8FBF001C */ lw $ra, 0x1c($sp)
.L800FADE8:
/* B71F88 800FADE8 8FB00018 */ lw $s0, 0x18($sp)
/* B71F8C 800FADEC 27BD0020 */ addiu $sp, $sp, 0x20
/* B71F90 800FADF0 03E00008 */ jr $ra
/* B71F94 800FADF4 00601025 */ move $v0, $v1
@@ -1,51 +0,0 @@
glabel func_800FADF8
/* B71F98 800FADF8 3C078017 */ lui $a3, %hi(D_8016E750) # $a3, 0x8017
/* B71F9C 800FADFC 3C068017 */ lui $a2, %hi(D_8016E348) # $a2, 0x8017
/* B71FA0 800FAE00 24C6E348 */ addiu $a2, %lo(D_8016E348) # addiu $a2, $a2, -0x1cb8
/* B71FA4 800FAE04 24E7E750 */ addiu $a3, %lo(D_8016E750) # addiu $a3, $a3, -0x18b0
/* B71FA8 800FAE08 00001025 */ move $v0, $zero
/* B71FAC 800FAE0C 240B0001 */ li $t3, 1
/* B71FB0 800FAE10 240A007F */ li $t2, 127
/* B71FB4 800FAE14 3409FFFF */ li $t1, 65535
/* B71FB8 800FAE18 24080264 */ li $t0, 612
.L800FAE1C:
/* B71FBC 800FAE1C 00480019 */ multu $v0, $t0
/* B71FC0 800FAE20 00C27021 */ addu $t6, $a2, $v0
/* B71FC4 800FAE24 A1C00000 */ sb $zero, ($t6)
/* B71FC8 800FAE28 0002C080 */ sll $t8, $v0, 2
/* B71FCC 800FAE2C 0302C021 */ addu $t8, $t8, $v0
/* B71FD0 800FAE30 0018C080 */ sll $t8, $t8, 2
/* B71FD4 800FAE34 0302C023 */ subu $t8, $t8, $v0
/* B71FD8 800FAE38 0018C0C0 */ sll $t8, $t8, 3
/* B71FDC 800FAE3C 0302C021 */ addu $t8, $t8, $v0
/* B71FE0 800FAE40 0018C080 */ sll $t8, $t8, 2
/* B71FE4 800FAE44 00007812 */ mflo $t7
/* B71FE8 800FAE48 00EF1821 */ addu $v1, $a3, $t7
/* B71FEC 800FAE4C A4690254 */ sh $t1, 0x254($v1)
/* B71FF0 800FAE50 A4690256 */ sh $t1, 0x256($v1)
/* B71FF4 800FAE54 A4600028 */ sh $zero, 0x28($v1)
/* B71FF8 800FAE58 A4600018 */ sh $zero, 0x18($v1)
/* B71FFC 800FAE5C AC600014 */ sw $zero, 0x14($v1)
/* B72000 800FAE60 A4600258 */ sh $zero, 0x258($v1)
/* B72004 800FAE64 A060004D */ sb $zero, 0x4d($v1)
/* B72008 800FAE68 A060004E */ sb $zero, 0x4e($v1)
/* B7200C 800FAE6C A4600250 */ sh $zero, 0x250($v1)
/* B72010 800FAE70 A4600252 */ sh $zero, 0x252($v1)
/* B72014 800FAE74 00F82821 */ addu $a1, $a3, $t8
/* B72018 800FAE78 00002025 */ move $a0, $zero
.L800FAE7C:
/* B7201C 800FAE7C 00A4C821 */ addu $t9, $a1, $a0
/* B72020 800FAE80 24840001 */ addiu $a0, $a0, 1
/* B72024 800FAE84 308400FF */ andi $a0, $a0, 0xff
/* B72028 800FAE88 28810004 */ slti $at, $a0, 4
/* B7202C 800FAE8C 1420FFFB */ bnez $at, .L800FAE7C
/* B72030 800FAE90 A32A000E */ sb $t2, 0xe($t9)
/* B72034 800FAE94 24420001 */ addiu $v0, $v0, 1
/* B72038 800FAE98 304200FF */ andi $v0, $v0, 0xff
/* B7203C 800FAE9C 28410004 */ slti $at, $v0, 4
/* B72040 800FAEA0 A06B0012 */ sb $t3, 0x12($v1)
/* B72044 800FAEA4 1420FFDD */ bnez $at, .L800FAE1C
/* B72048 800FAEA8 A06B0013 */ sb $t3, 0x13($v1)
/* B7204C 800FAEAC 03E00008 */ jr $ra
/* B72050 800FAEB0 00000000 */ nop
@@ -1,44 +0,0 @@
glabel func_800FAEB4
/* B72054 800FAEB4 3C013F80 */ lui $at, 0x3f80
/* B72058 800FAEB8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* B7205C 800FAEBC 3C078017 */ lui $a3, %hi(D_8016E750)
/* B72060 800FAEC0 44810000 */ mtc1 $at, $f0
/* B72064 800FAEC4 AFBF0014 */ sw $ra, 0x14($sp)
/* B72068 800FAEC8 24E7E750 */ addiu $a3, %lo(D_8016E750)
/* B7206C 800FAECC 00003025 */ move $a2, $zero
/* B72070 800FAED0 24080264 */ li $t0, 612
/* B72074 800FAED4 2404007F */ li $a0, 127
.L800FAED8:
/* B72078 800FAED8 00C80019 */ multu $a2, $t0
/* B7207C 800FAEDC 00067880 */ sll $t7, $a2, 2
/* B72080 800FAEE0 01E67821 */ addu $t7, $t7, $a2
/* B72084 800FAEE4 000F7880 */ sll $t7, $t7, 2
/* B72088 800FAEE8 01E67823 */ subu $t7, $t7, $a2
/* B7208C 800FAEEC 000F78C0 */ sll $t7, $t7, 3
/* B72090 800FAEF0 01E67821 */ addu $t7, $t7, $a2
/* B72094 800FAEF4 000F7880 */ sll $t7, $t7, 2
/* B72098 800FAEF8 00EF1821 */ addu $v1, $a3, $t7
/* B7209C 800FAEFC 00001025 */ move $v0, $zero
/* B720A0 800FAF00 00007012 */ mflo $t6
/* B720A4 800FAF04 00EE2821 */ addu $a1, $a3, $t6
/* B720A8 800FAF08 E4A00000 */ swc1 $f0, ($a1)
/* B720AC 800FAF0C A4A0000C */ sh $zero, 0xc($a1)
/* B720B0 800FAF10 A0A00013 */ sb $zero, 0x13($a1)
.L800FAF14:
/* B720B4 800FAF14 0062C021 */ addu $t8, $v1, $v0
/* B720B8 800FAF18 24420001 */ addiu $v0, $v0, 1
/* B720BC 800FAF1C 304200FF */ andi $v0, $v0, 0xff
/* B720C0 800FAF20 28410004 */ slti $at, $v0, 4
/* B720C4 800FAF24 1420FFFB */ bnez $at, .L800FAF14
/* B720C8 800FAF28 A304000E */ sb $a0, 0xe($t8)
/* B720CC 800FAF2C 24C60001 */ addiu $a2, $a2, 1
/* B720D0 800FAF30 30C600FF */ andi $a2, $a2, 0xff
/* B720D4 800FAF34 28C10004 */ slti $at, $a2, 4
/* B720D8 800FAF38 1420FFE7 */ bnez $at, .L800FAED8
/* B720DC 800FAF3C 00000000 */ nop
/* B720E0 800FAF40 0C03EB7E */ jal func_800FADF8
/* B720E4 800FAF44 00000000 */ nop
/* B720E8 800FAF48 8FBF0014 */ lw $ra, 0x14($sp)
/* B720EC 800FAF4C 27BD0018 */ addiu $sp, $sp, 0x18
/* B720F0 800FAF50 03E00008 */ jr $ra
/* B720F4 800FAF54 00000000 */ nop