mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-04 06:54:33 +00:00
code_800F7260 (#433)
* Split code_800F7260 * More function splits, migrate rodata * Initial progress * Small progress * More substantial progress, finally figured out structs * 2 functions left * Move prototypes to functions.h * Remove unused asm, move most externs to variables.h * Fix merge * Ran formatter * Brackets to avoid && & Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com> * More variables to variables.h * Braces around early return Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> * ARRAY_COUNT in sBankSizes and remove unnecessary temp vars Co-authored-by: krimtonz <33664508+krimtonz@users.noreply.github.com> Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
parent
b4096eee34
commit
695552f0b8
37 changed files with 751 additions and 1555 deletions
|
@ -863,7 +863,7 @@ glabel L800EB920
|
||||||
/* B62B00 800EB960 1000FDE4 */ b .L800EB0F4
|
/* B62B00 800EB960 1000FDE4 */ b .L800EB0F4
|
||||||
/* B62B04 800EB964 00000000 */ nop
|
/* B62B04 800EB964 00000000 */ nop
|
||||||
glabel L800EB968
|
glabel L800EB968
|
||||||
/* B62B08 800EB968 0C0399F0 */ jal func_800E67C0
|
/* B62B08 800EB968 0C0399F0 */ jal Audio_NextRandom
|
||||||
/* B62B0C 800EB96C 00000000 */ nop
|
/* B62B0C 800EB96C 00000000 */ nop
|
||||||
/* B62B10 800EB970 8FA90060 */ lw $t1, 0x60($sp)
|
/* B62B10 800EB970 8FA90060 */ lw $t1, 0x60($sp)
|
||||||
/* B62B14 800EB974 8FAB0060 */ lw $t3, 0x60($sp)
|
/* B62B14 800EB974 8FAB0060 */ lw $t3, 0x60($sp)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
glabel func_800E67C0
|
glabel Audio_NextRandom
|
||||||
/* B5D960 800E67C0 27BDFFE8 */ addiu $sp, $sp, -0x18
|
/* B5D960 800E67C0 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||||
/* B5D964 800E67C4 AFBF0014 */ sw $ra, 0x14($sp)
|
/* B5D964 800E67C4 AFBF0014 */ sw $ra, 0x14($sp)
|
||||||
/* B5D968 800E67C8 0C001BA8 */ jal osGetCount
|
/* B5D968 800E67C8 0C001BA8 */ jal osGetCount
|
|
@ -11,7 +11,7 @@ glabel func_800EE5EC
|
||||||
/* B657B0 800EE610 10000034 */ b .L800EE6E4
|
/* B657B0 800EE610 10000034 */ b .L800EE6E4
|
||||||
/* B657B4 800EE614 24020001 */ li $v0, 1
|
/* B657B4 800EE614 24020001 */ li $v0, 1
|
||||||
.L800EE618:
|
.L800EE618:
|
||||||
/* B657B8 800EE618 0C0399F0 */ jal func_800E67C0
|
/* B657B8 800EE618 0C0399F0 */ jal Audio_NextRandom
|
||||||
/* B657BC 800EE61C 00000000 */ nop
|
/* B657BC 800EE61C 00000000 */ nop
|
||||||
/* B657C0 800EE620 24080005 */ li $t0, 5
|
/* B657C0 800EE620 24080005 */ li $t0, 5
|
||||||
/* B657C4 800EE624 0048001B */ divu $zero, $v0, $t0
|
/* B657C4 800EE624 0048001B */ divu $zero, $v0, $t0
|
||||||
|
|
|
@ -923,8 +923,8 @@ glabel L800EEEB4
|
||||||
/* B661AC 800EF00C 31180002 */ andi $t8, $t0, 2
|
/* B661AC 800EF00C 31180002 */ andi $t8, $t0, 2
|
||||||
/* B661B0 800EF010 0018C843 */ sra $t9, $t8, 1
|
/* B661B0 800EF010 0018C843 */ sra $t9, $t8, 1
|
||||||
/* B661B4 800EF014 310A0001 */ andi $t2, $t0, 1
|
/* B661B4 800EF014 310A0001 */ andi $t2, $t0, 1
|
||||||
/* B661B8 800EF018 3C158013 */ lui $s5, %hi(D_801333A8) # $s5, 0x8013
|
/* B661B8 800EF018 3C158013 */ lui $s5, %hi(gSoundBanks) # $s5, 0x8013
|
||||||
/* B661BC 800EF01C 26B533A8 */ addiu $s5, %lo(D_801333A8) # addiu $s5, $s5, 0x33a8
|
/* B661BC 800EF01C 26B533A8 */ addiu $s5, %lo(gSoundBanks) # addiu $s5, $s5, 0x33a8
|
||||||
/* B661C0 800EF020 001E6080 */ sll $t4, $fp, 2
|
/* B661C0 800EF020 001E6080 */ sll $t4, $fp, 2
|
||||||
/* B661C4 800EF024 02AC9021 */ addu $s2, $s5, $t4
|
/* B661C4 800EF024 02AC9021 */ addu $s2, $s5, $t4
|
||||||
/* B661C8 800EF028 8E4D0000 */ lw $t5, ($s2)
|
/* B661C8 800EF028 8E4D0000 */ lw $t5, ($s2)
|
||||||
|
@ -1176,9 +1176,9 @@ glabel L800EF3F0
|
||||||
/* B66594 800EF3F4 4481B000 */ mtc1 $at, $f22
|
/* B66594 800EF3F4 4481B000 */ mtc1 $at, $f22
|
||||||
/* B66598 800EF3F8 3C018015 */ lui $at, %hi(D_8014A4C0)
|
/* B66598 800EF3F8 3C018015 */ lui $at, %hi(D_8014A4C0)
|
||||||
/* B6659C 800EF3FC 3C168017 */ lui $s6, %hi(D_8016E1B8) # $s6, 0x8017
|
/* B6659C 800EF3FC 3C168017 */ lui $s6, %hi(D_8016E1B8) # $s6, 0x8017
|
||||||
/* B665A0 800EF400 3C158013 */ lui $s5, %hi(D_801333A8) # $s5, 0x8013
|
/* B665A0 800EF400 3C158013 */ lui $s5, %hi(gSoundBanks) # $s5, 0x8013
|
||||||
/* B665A4 800EF404 0000F025 */ move $fp, $zero
|
/* B665A4 800EF404 0000F025 */ move $fp, $zero
|
||||||
/* B665A8 800EF408 26B533A8 */ addiu $s5, %lo(D_801333A8) # addiu $s5, $s5, 0x33a8
|
/* B665A8 800EF408 26B533A8 */ addiu $s5, %lo(gSoundBanks) # addiu $s5, $s5, 0x33a8
|
||||||
/* B665AC 800EF40C 26D6E1B8 */ addiu $s6, %lo(D_8016E1B8) # addiu $s6, $s6, -0x1e48
|
/* B665AC 800EF40C 26D6E1B8 */ addiu $s6, %lo(D_8016E1B8) # addiu $s6, $s6, -0x1e48
|
||||||
/* B665B0 800EF410 C434A4C0 */ lwc1 $f20, %lo(D_8014A4C0)($at)
|
/* B665B0 800EF410 C434A4C0 */ lwc1 $f20, %lo(D_8014A4C0)($at)
|
||||||
/* B665B4 800EF414 00009025 */ move $s2, $zero
|
/* B665B4 800EF414 00009025 */ move $s2, $zero
|
||||||
|
|
|
@ -26,10 +26,10 @@ glabel func_800F3188
|
||||||
/* B6A32C 800F318C 308400FF */ andi $a0, $a0, 0xff
|
/* B6A32C 800F318C 308400FF */ andi $a0, $a0, 0xff
|
||||||
/* B6A330 800F3190 AFA50004 */ sw $a1, 4($sp)
|
/* B6A330 800F3190 AFA50004 */ sw $a1, 4($sp)
|
||||||
/* B6A334 800F3194 00047080 */ sll $t6, $a0, 2
|
/* B6A334 800F3194 00047080 */ sll $t6, $a0, 2
|
||||||
/* B6A338 800F3198 3C0F8013 */ lui $t7, %hi(D_801333A8)
|
/* B6A338 800F3198 3C0F8013 */ lui $t7, %hi(gSoundBanks)
|
||||||
/* B6A33C 800F319C 30A500FF */ andi $a1, $a1, 0xff
|
/* B6A33C 800F319C 30A500FF */ andi $a1, $a1, 0xff
|
||||||
/* B6A340 800F31A0 01EE7821 */ addu $t7, $t7, $t6
|
/* B6A340 800F31A0 01EE7821 */ addu $t7, $t7, $t6
|
||||||
/* B6A344 800F31A4 8DEF33A8 */ lw $t7, %lo(D_801333A8)($t7)
|
/* B6A344 800F31A4 8DEF33A8 */ lw $t7, %lo(gSoundBanks)($t7)
|
||||||
/* B6A348 800F31A8 0005C080 */ sll $t8, $a1, 2
|
/* B6A348 800F31A8 0005C080 */ sll $t8, $a1, 2
|
||||||
/* B6A34C 800F31AC 0305C023 */ subu $t8, $t8, $a1
|
/* B6A34C 800F31AC 0305C023 */ subu $t8, $t8, $a1
|
||||||
/* B6A350 800F31B0 0018C100 */ sll $t8, $t8, 4
|
/* B6A350 800F31B0 0018C100 */ sll $t8, $t8, 4
|
||||||
|
|
|
@ -8,10 +8,10 @@ glabel func_800F32F0
|
||||||
/* B6A494 800F32F4 308400FF */ andi $a0, $a0, 0xff
|
/* B6A494 800F32F4 308400FF */ andi $a0, $a0, 0xff
|
||||||
/* B6A498 800F32F8 AFA50004 */ sw $a1, 4($sp)
|
/* B6A498 800F32F8 AFA50004 */ sw $a1, 4($sp)
|
||||||
/* B6A49C 800F32FC 00047080 */ sll $t6, $a0, 2
|
/* B6A49C 800F32FC 00047080 */ sll $t6, $a0, 2
|
||||||
/* B6A4A0 800F3300 3C0F8013 */ lui $t7, %hi(D_801333A8)
|
/* B6A4A0 800F3300 3C0F8013 */ lui $t7, %hi(gSoundBanks)
|
||||||
/* B6A4A4 800F3304 30A500FF */ andi $a1, $a1, 0xff
|
/* B6A4A4 800F3304 30A500FF */ andi $a1, $a1, 0xff
|
||||||
/* B6A4A8 800F3308 01EE7821 */ addu $t7, $t7, $t6
|
/* B6A4A8 800F3308 01EE7821 */ addu $t7, $t7, $t6
|
||||||
/* B6A4AC 800F330C 8DEF33A8 */ lw $t7, %lo(D_801333A8)($t7)
|
/* B6A4AC 800F330C 8DEF33A8 */ lw $t7, %lo(gSoundBanks)($t7)
|
||||||
/* B6A4B0 800F3310 0005C080 */ sll $t8, $a1, 2
|
/* B6A4B0 800F3310 0005C080 */ sll $t8, $a1, 2
|
||||||
/* B6A4B4 800F3314 0305C023 */ subu $t8, $t8, $a1
|
/* B6A4B4 800F3314 0305C023 */ subu $t8, $t8, $a1
|
||||||
/* B6A4B8 800F3318 0018C100 */ sll $t8, $t8, 4
|
/* B6A4B8 800F3318 0018C100 */ sll $t8, $t8, 4
|
||||||
|
|
|
@ -26,10 +26,10 @@ glabel func_800F35EC
|
||||||
/* B6A790 800F35F0 308400FF */ andi $a0, $a0, 0xff
|
/* B6A790 800F35F0 308400FF */ andi $a0, $a0, 0xff
|
||||||
/* B6A794 800F35F4 AFA50004 */ sw $a1, 4($sp)
|
/* B6A794 800F35F4 AFA50004 */ sw $a1, 4($sp)
|
||||||
/* B6A798 800F35F8 00047080 */ sll $t6, $a0, 2
|
/* B6A798 800F35F8 00047080 */ sll $t6, $a0, 2
|
||||||
/* B6A79C 800F35FC 3C0F8013 */ lui $t7, %hi(D_801333A8)
|
/* B6A79C 800F35FC 3C0F8013 */ lui $t7, %hi(gSoundBanks)
|
||||||
/* B6A7A0 800F3600 30A500FF */ andi $a1, $a1, 0xff
|
/* B6A7A0 800F3600 30A500FF */ andi $a1, $a1, 0xff
|
||||||
/* B6A7A4 800F3604 01EE7821 */ addu $t7, $t7, $t6
|
/* B6A7A4 800F3604 01EE7821 */ addu $t7, $t7, $t6
|
||||||
/* B6A7A8 800F3608 8DEF33A8 */ lw $t7, %lo(D_801333A8)($t7)
|
/* B6A7A8 800F3608 8DEF33A8 */ lw $t7, %lo(gSoundBanks)($t7)
|
||||||
/* B6A7AC 800F360C 0005C080 */ sll $t8, $a1, 2
|
/* B6A7AC 800F360C 0005C080 */ sll $t8, $a1, 2
|
||||||
/* B6A7B0 800F3610 0305C023 */ subu $t8, $t8, $a1
|
/* B6A7B0 800F3610 0305C023 */ subu $t8, $t8, $a1
|
||||||
/* B6A7B4 800F3614 0018C100 */ sll $t8, $t8, 4
|
/* B6A7B4 800F3614 0018C100 */ sll $t8, $t8, 4
|
||||||
|
|
|
@ -17,11 +17,11 @@ glabel func_800F3A08
|
||||||
/* B6ABB8 800F3A18 93A8004F */ lbu $t0, 0x4f($sp)
|
/* B6ABB8 800F3A18 93A8004F */ lbu $t0, 0x4f($sp)
|
||||||
/* B6ABBC 800F3A1C 3C013F80 */ li $at, 0x3F800000 # 0.000000
|
/* B6ABBC 800F3A1C 3C013F80 */ li $at, 0x3F800000 # 0.000000
|
||||||
/* B6ABC0 800F3A20 44811000 */ mtc1 $at, $f2
|
/* B6ABC0 800F3A20 44811000 */ mtc1 $at, $f2
|
||||||
/* B6ABC4 800F3A24 3C198013 */ lui $t9, %hi(D_801333A8)
|
/* B6ABC4 800F3A24 3C198013 */ lui $t9, %hi(gSoundBanks)
|
||||||
/* B6ABC8 800F3A28 000FC080 */ sll $t8, $t7, 2
|
/* B6ABC8 800F3A28 000FC080 */ sll $t8, $t7, 2
|
||||||
/* B6ABCC 800F3A2C 0338C821 */ addu $t9, $t9, $t8
|
/* B6ABCC 800F3A2C 0338C821 */ addu $t9, $t9, $t8
|
||||||
/* B6ABD0 800F3A30 00084880 */ sll $t1, $t0, 2
|
/* B6ABD0 800F3A30 00084880 */ sll $t1, $t0, 2
|
||||||
/* B6ABD4 800F3A34 8F3933A8 */ lw $t9, %lo(D_801333A8)($t9)
|
/* B6ABD4 800F3A34 8F3933A8 */ lw $t9, %lo(gSoundBanks)($t9)
|
||||||
/* B6ABD8 800F3A38 01284823 */ subu $t1, $t1, $t0
|
/* B6ABD8 800F3A38 01284823 */ subu $t1, $t1, $t0
|
||||||
/* B6ABDC 800F3A3C 240E0040 */ li $t6, 64
|
/* B6ABDC 800F3A3C 240E0040 */ li $t6, 64
|
||||||
/* B6ABE0 800F3A40 00094900 */ sll $t1, $t1, 4
|
/* B6ABE0 800F3A40 00094900 */ sll $t1, $t1, 4
|
||||||
|
|
|
@ -3,7 +3,7 @@ glabel func_800F41E0
|
||||||
/* B6B384 800F41E4 AFBF001C */ sw $ra, 0x1c($sp)
|
/* B6B384 800F41E4 AFBF001C */ sw $ra, 0x1c($sp)
|
||||||
/* B6B388 800F41E8 AFA40020 */ sw $a0, 0x20($sp)
|
/* B6B388 800F41E8 AFA40020 */ sw $a0, 0x20($sp)
|
||||||
/* B6B38C 800F41EC AFA50024 */ sw $a1, 0x24($sp)
|
/* B6B38C 800F41EC AFA50024 */ sw $a1, 0x24($sp)
|
||||||
/* B6B390 800F41F0 0C0399F0 */ jal func_800E67C0
|
/* B6B390 800F41F0 0C0399F0 */ jal Audio_NextRandom
|
||||||
/* B6B394 800F41F4 AFA60028 */ sw $a2, 0x28($sp)
|
/* B6B394 800F41F4 AFA60028 */ sw $a2, 0x28($sp)
|
||||||
/* B6B398 800F41F8 93AF002B */ lbu $t7, 0x2b($sp)
|
/* B6B398 800F41F8 93AF002B */ lbu $t7, 0x2b($sp)
|
||||||
/* B6B39C 800F41FC 97AE0026 */ lhu $t6, 0x26($sp)
|
/* B6B39C 800F41FC 97AE0026 */ lhu $t6, 0x26($sp)
|
||||||
|
|
|
@ -54,8 +54,8 @@ glabel func_800F4C58
|
||||||
/* B6BEC0 800F4D20 000E70C0 */ sll $t6, $t6, 3
|
/* B6BEC0 800F4D20 000E70C0 */ sll $t6, $t6, 3
|
||||||
/* B6BEC4 800F4D24 3C0F8017 */ lui $t7, %hi(D_8016E1B8) # $t7, 0x8017
|
/* B6BEC4 800F4D24 3C0F8017 */ lui $t7, %hi(D_8016E1B8) # $t7, 0x8017
|
||||||
/* B6BEC8 800F4D28 25EFE1B8 */ addiu $t7, %lo(D_8016E1B8) # addiu $t7, $t7, -0x1e48
|
/* B6BEC8 800F4D28 25EFE1B8 */ addiu $t7, %lo(D_8016E1B8) # addiu $t7, $t7, -0x1e48
|
||||||
/* B6BECC 800F4D2C 3C138013 */ lui $s3, %hi(D_801333A8) # $s3, 0x8013
|
/* B6BECC 800F4D2C 3C138013 */ lui $s3, %hi(gSoundBanks) # $s3, 0x8013
|
||||||
/* B6BED0 800F4D30 267333A8 */ addiu $s3, %lo(D_801333A8) # addiu $s3, $s3, 0x33a8
|
/* B6BED0 800F4D30 267333A8 */ addiu $s3, %lo(gSoundBanks) # addiu $s3, $s3, 0x33a8
|
||||||
/* B6BED4 800F4D34 01CFB021 */ addu $s6, $t6, $t7
|
/* B6BED4 800F4D34 01CFB021 */ addu $s6, $t6, $t7
|
||||||
/* B6BED8 800F4D38 3C150602 */ lui $s5, 0x602
|
/* B6BED8 800F4D38 3C150602 */ lui $s5, 0x602
|
||||||
/* B6BEDC 800F4D3C 24140030 */ li $s4, 48
|
/* B6BEDC 800F4D3C 24140030 */ li $s4, 48
|
||||||
|
|
|
@ -1,93 +0,0 @@
|
||||||
glabel Audio_PlaySoundGeneral
|
|
||||||
/* B6E52C 800F738C 27BDFFF0 */ addiu $sp, $sp, -0x10
|
|
||||||
/* B6E530 800F7390 AFA40010 */ sw $a0, 0x10($sp)
|
|
||||||
/* B6E534 800F7394 3084FFFF */ andi $a0, $a0, 0xffff
|
|
||||||
/* B6E538 800F7398 00047303 */ sra $t6, $a0, 0xc
|
|
||||||
/* B6E53C 800F739C 31CF00FF */ andi $t7, $t6, 0xff
|
|
||||||
/* B6E540 800F73A0 3C188017 */ lui $t8, %hi(D_8016E264)
|
|
||||||
/* B6E544 800F73A4 030FC021 */ addu $t8, $t8, $t7
|
|
||||||
/* B6E548 800F73A8 9318E264 */ lbu $t8, %lo(D_8016E264)($t8)
|
|
||||||
/* B6E54C 800F73AC AFB00004 */ sw $s0, 4($sp)
|
|
||||||
/* B6E550 800F73B0 AFA60018 */ sw $a2, 0x18($sp)
|
|
||||||
/* B6E554 800F73B4 30C600FF */ andi $a2, $a2, 0xff
|
|
||||||
/* B6E558 800F73B8 00A08025 */ move $s0, $a1
|
|
||||||
/* B6E55C 800F73BC AFB2000C */ sw $s2, 0xc($sp)
|
|
||||||
/* B6E560 800F73C0 17000042 */ bnez $t8, .L800F74CC
|
|
||||||
/* B6E564 800F73C4 AFB10008 */ sw $s1, 8($sp)
|
|
||||||
/* B6E568 800F73C8 3C0B8013 */ lui $t3, %hi(D_801333A0) # $t3, 0x8013
|
|
||||||
/* B6E56C 800F73CC 256B33A0 */ addiu $t3, %lo(D_801333A0) # addiu $t3, $t3, 0x33a0
|
|
||||||
/* B6E570 800F73D0 91790000 */ lbu $t9, ($t3)
|
|
||||||
/* B6E574 800F73D4 240C0018 */ li $t4, 24
|
|
||||||
/* B6E578 800F73D8 3C0F8013 */ lui $t7, %hi(D_801333F4) # $t7, 0x8013
|
|
||||||
/* B6E57C 800F73DC 032C0019 */ multu $t9, $t4
|
|
||||||
/* B6E580 800F73E0 91EF33F4 */ lbu $t7, %lo(D_801333F4)($t7)
|
|
||||||
/* B6E584 800F73E4 3C0A8017 */ lui $t2, %hi(D_8016C9A0) # $t2, 0x8017
|
|
||||||
/* B6E588 800F73E8 254AC9A0 */ addiu $t2, %lo(D_8016C9A0) # addiu $t2, $t2, -0x3660
|
|
||||||
/* B6E58C 800F73EC 3C128017 */ lui $s2, %hi(D_8016E2F8) # $s2, 0x8017
|
|
||||||
/* B6E590 800F73F0 3C118017 */ lui $s1, %hi(D_8016E310) # $s1, 0x8017
|
|
||||||
/* B6E594 800F73F4 3C0D8017 */ lui $t5, %hi(D_8016E2E0) # $t5, 0x8017
|
|
||||||
/* B6E598 800F73F8 25ADE2E0 */ addiu $t5, %lo(D_8016E2E0) # addiu $t5, $t5, -0x1d20
|
|
||||||
/* B6E59C 800F73FC 2631E310 */ addiu $s1, %lo(D_8016E310) # addiu $s1, $s1, -0x1cf0
|
|
||||||
/* B6E5A0 800F7400 2652E2F8 */ addiu $s2, %lo(D_8016E2F8) # addiu $s2, $s2, -0x1d08
|
|
||||||
/* B6E5A4 800F7404 00007012 */ mflo $t6
|
|
||||||
/* B6E5A8 800F7408 014E1021 */ addu $v0, $t2, $t6
|
|
||||||
/* B6E5AC 800F740C 15E00024 */ bnez $t7, .L800F74A0
|
|
||||||
/* B6E5B0 800F7410 00001825 */ move $v1, $zero
|
|
||||||
/* B6E5B4 800F7414 8FA90024 */ lw $t1, 0x24($sp)
|
|
||||||
/* B6E5B8 800F7418 8FA80020 */ lw $t0, 0x20($sp)
|
|
||||||
/* B6E5BC 800F741C 00032840 */ sll $a1, $v1, 1
|
|
||||||
.L800F7420:
|
|
||||||
/* B6E5C0 800F7420 01A5C021 */ addu $t8, $t5, $a1
|
|
||||||
/* B6E5C4 800F7424 97190000 */ lhu $t9, ($t8)
|
|
||||||
/* B6E5C8 800F7428 02237021 */ addu $t6, $s1, $v1
|
|
||||||
/* B6E5CC 800F742C 54990018 */ bnel $a0, $t9, .L800F7490
|
|
||||||
/* B6E5D0 800F7430 24630001 */ addiu $v1, $v1, 1
|
|
||||||
/* B6E5D4 800F7434 91CF0000 */ lbu $t7, ($t6)
|
|
||||||
/* B6E5D8 800F7438 0245C021 */ addu $t8, $s2, $a1
|
|
||||||
/* B6E5DC 800F743C 0245C821 */ addu $t9, $s2, $a1
|
|
||||||
/* B6E5E0 800F7440 15E00003 */ bnez $t7, .L800F7450
|
|
||||||
/* B6E5E4 800F7444 2403000A */ li $v1, 10
|
|
||||||
/* B6E5E8 800F7448 10000010 */ b .L800F748C
|
|
||||||
/* B6E5EC 800F744C 97040000 */ lhu $a0, ($t8)
|
|
||||||
.L800F7450:
|
|
||||||
/* B6E5F0 800F7450 972E0000 */ lhu $t6, ($t9)
|
|
||||||
/* B6E5F4 800F7454 AC500004 */ sw $s0, 4($v0)
|
|
||||||
/* B6E5F8 800F7458 A0460008 */ sb $a2, 8($v0)
|
|
||||||
/* B6E5FC 800F745C AC47000C */ sw $a3, 0xc($v0)
|
|
||||||
/* B6E600 800F7460 AC480010 */ sw $t0, 0x10($v0)
|
|
||||||
/* B6E604 800F7464 AC490014 */ sw $t1, 0x14($v0)
|
|
||||||
/* B6E608 800F7468 A44E0000 */ sh $t6, ($v0)
|
|
||||||
/* B6E60C 800F746C 916F0000 */ lbu $t7, ($t3)
|
|
||||||
/* B6E610 800F7470 25F80001 */ addiu $t8, $t7, 1
|
|
||||||
/* B6E614 800F7474 331900FF */ andi $t9, $t8, 0xff
|
|
||||||
/* B6E618 800F7478 032C0019 */ multu $t9, $t4
|
|
||||||
/* B6E61C 800F747C A1780000 */ sb $t8, ($t3)
|
|
||||||
/* B6E620 800F7480 00007012 */ mflo $t6
|
|
||||||
/* B6E624 800F7484 014E1021 */ addu $v0, $t2, $t6
|
|
||||||
/* B6E628 800F7488 00000000 */ nop
|
|
||||||
.L800F748C:
|
|
||||||
/* B6E62C 800F748C 24630001 */ addiu $v1, $v1, 1
|
|
||||||
.L800F7490:
|
|
||||||
/* B6E630 800F7490 306300FF */ andi $v1, $v1, 0xff
|
|
||||||
/* B6E634 800F7494 2861000A */ slti $at, $v1, 0xa
|
|
||||||
/* B6E638 800F7498 5420FFE1 */ bnezl $at, .L800F7420
|
|
||||||
/* B6E63C 800F749C 00032840 */ sll $a1, $v1, 1
|
|
||||||
.L800F74A0:
|
|
||||||
/* B6E640 800F74A0 8FA80020 */ lw $t0, 0x20($sp)
|
|
||||||
/* B6E644 800F74A4 8FA90024 */ lw $t1, 0x24($sp)
|
|
||||||
/* B6E648 800F74A8 A4440000 */ sh $a0, ($v0)
|
|
||||||
/* B6E64C 800F74AC AC500004 */ sw $s0, 4($v0)
|
|
||||||
/* B6E650 800F74B0 A0460008 */ sb $a2, 8($v0)
|
|
||||||
/* B6E654 800F74B4 AC47000C */ sw $a3, 0xc($v0)
|
|
||||||
/* B6E658 800F74B8 AC480010 */ sw $t0, 0x10($v0)
|
|
||||||
/* B6E65C 800F74BC AC490014 */ sw $t1, 0x14($v0)
|
|
||||||
/* B6E660 800F74C0 916F0000 */ lbu $t7, ($t3)
|
|
||||||
/* B6E664 800F74C4 25F80001 */ addiu $t8, $t7, 1
|
|
||||||
/* B6E668 800F74C8 A1780000 */ sb $t8, ($t3)
|
|
||||||
.L800F74CC:
|
|
||||||
/* B6E66C 800F74CC 8FB00004 */ lw $s0, 4($sp)
|
|
||||||
/* B6E670 800F74D0 8FB10008 */ lw $s1, 8($sp)
|
|
||||||
/* B6E674 800F74D4 8FB2000C */ lw $s2, 0xc($sp)
|
|
||||||
/* B6E678 800F74D8 03E00008 */ jr $ra
|
|
||||||
/* B6E67C 800F74DC 27BD0010 */ addiu $sp, $sp, 0x10
|
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
glabel func_800F7260
|
|
||||||
/* B6E400 800F7260 AFA40000 */ sw $a0, ($sp)
|
|
||||||
/* B6E404 800F7264 3C058017 */ lui $a1, %hi(D_8016E264) # $a1, 0x8017
|
|
||||||
/* B6E408 800F7268 3084FFFF */ andi $a0, $a0, 0xffff
|
|
||||||
/* B6E40C 800F726C 24A5E264 */ addiu $a1, %lo(D_8016E264) # addiu $a1, $a1, -0x1d9c
|
|
||||||
/* B6E410 800F7270 00001025 */ move $v0, $zero
|
|
||||||
/* B6E414 800F7274 24060001 */ li $a2, 1
|
|
||||||
.L800F7278:
|
|
||||||
/* B6E418 800F7278 308E0001 */ andi $t6, $a0, 1
|
|
||||||
/* B6E41C 800F727C 11C00004 */ beqz $t6, .L800F7290
|
|
||||||
/* B6E420 800F7280 00801825 */ move $v1, $a0
|
|
||||||
/* B6E424 800F7284 00A27821 */ addu $t7, $a1, $v0
|
|
||||||
/* B6E428 800F7288 10000003 */ b .L800F7298
|
|
||||||
/* B6E42C 800F728C A1E60000 */ sb $a2, ($t7)
|
|
||||||
.L800F7290:
|
|
||||||
/* B6E430 800F7290 00A2C021 */ addu $t8, $a1, $v0
|
|
||||||
/* B6E434 800F7294 A3000000 */ sb $zero, ($t8)
|
|
||||||
.L800F7298:
|
|
||||||
/* B6E438 800F7298 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B6E43C 800F729C 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B6E440 800F72A0 28410007 */ slti $at, $v0, 7
|
|
||||||
/* B6E444 800F72A4 00032043 */ sra $a0, $v1, 1
|
|
||||||
/* B6E448 800F72A8 1420FFF3 */ bnez $at, .L800F7278
|
|
||||||
/* B6E44C 800F72AC 3084FFFF */ andi $a0, $a0, 0xffff
|
|
||||||
/* B6E450 800F72B0 03E00008 */ jr $ra
|
|
||||||
/* B6E454 800F72B4 00000000 */ nop
|
|
||||||
|
|
|
@ -1,27 +0,0 @@
|
||||||
glabel func_800F72B8
|
|
||||||
/* B6E458 800F72B8 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* B6E45C 800F72BC AFA40018 */ sw $a0, 0x18($sp)
|
|
||||||
/* B6E460 800F72C0 3C028013 */ lui $v0, %hi(D_801333D0) # $v0, 0x8013
|
|
||||||
/* B6E464 800F72C4 93AF001B */ lbu $t7, 0x1b($sp)
|
|
||||||
/* B6E468 800F72C8 244233D0 */ addiu $v0, %lo(D_801333D0) # addiu $v0, $v0, 0x33d0
|
|
||||||
/* B6E46C 800F72CC 944E0000 */ lhu $t6, ($v0)
|
|
||||||
/* B6E470 800F72D0 24180001 */ li $t8, 1
|
|
||||||
/* B6E474 800F72D4 01F8C804 */ sllv $t9, $t8, $t7
|
|
||||||
/* B6E478 800F72D8 AFBF0014 */ sw $ra, 0x14($sp)
|
|
||||||
/* B6E47C 800F72DC 01D94025 */ or $t0, $t6, $t9
|
|
||||||
/* B6E480 800F72E0 A4480000 */ sh $t0, ($v0)
|
|
||||||
/* B6E484 800F72E4 00002025 */ move $a0, $zero
|
|
||||||
/* B6E488 800F72E8 24050002 */ li $a1, 2
|
|
||||||
/* B6E48C 800F72EC 24060040 */ li $a2, 64
|
|
||||||
/* B6E490 800F72F0 0C03E890 */ jal func_800FA240
|
|
||||||
/* B6E494 800F72F4 2407000F */ li $a3, 15
|
|
||||||
/* B6E498 800F72F8 24040003 */ li $a0, 3
|
|
||||||
/* B6E49C 800F72FC 24050002 */ li $a1, 2
|
|
||||||
/* B6E4A0 800F7300 24060040 */ li $a2, 64
|
|
||||||
/* B6E4A4 800F7304 0C03E890 */ jal func_800FA240
|
|
||||||
/* B6E4A8 800F7308 2407000F */ li $a3, 15
|
|
||||||
/* B6E4AC 800F730C 8FBF0014 */ lw $ra, 0x14($sp)
|
|
||||||
/* B6E4B0 800F7310 27BD0018 */ addiu $sp, $sp, 0x18
|
|
||||||
/* B6E4B4 800F7314 03E00008 */ jr $ra
|
|
||||||
/* B6E4B8 800F7318 00000000 */ nop
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
glabel func_800F731C
|
|
||||||
/* B6E4BC 800F731C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
|
||||||
/* B6E4C0 800F7320 3C028013 */ lui $v0, %hi(D_801333D0) # $v0, 0x8013
|
|
||||||
/* B6E4C4 800F7324 244233D0 */ addiu $v0, %lo(D_801333D0) # addiu $v0, $v0, 0x33d0
|
|
||||||
/* B6E4C8 800F7328 AFA40018 */ sw $a0, 0x18($sp)
|
|
||||||
/* B6E4CC 800F732C 944E0000 */ lhu $t6, ($v0)
|
|
||||||
/* B6E4D0 800F7330 308400FF */ andi $a0, $a0, 0xff
|
|
||||||
/* B6E4D4 800F7334 240F0001 */ li $t7, 1
|
|
||||||
/* B6E4D8 800F7338 008FC004 */ sllv $t8, $t7, $a0
|
|
||||||
/* B6E4DC 800F733C 3B19FFFF */ xori $t9, $t8, 0xffff
|
|
||||||
/* B6E4E0 800F7340 01D94024 */ and $t0, $t6, $t9
|
|
||||||
/* B6E4E4 800F7344 3109FFFF */ andi $t1, $t0, 0xffff
|
|
||||||
/* B6E4E8 800F7348 AFBF0014 */ sw $ra, 0x14($sp)
|
|
||||||
/* B6E4EC 800F734C 1520000B */ bnez $t1, .L800F737C
|
|
||||||
/* B6E4F0 800F7350 A4480000 */ sh $t0, ($v0)
|
|
||||||
/* B6E4F4 800F7354 00002025 */ move $a0, $zero
|
|
||||||
/* B6E4F8 800F7358 24050002 */ li $a1, 2
|
|
||||||
/* B6E4FC 800F735C 2406007F */ li $a2, 127
|
|
||||||
/* B6E500 800F7360 0C03E890 */ jal func_800FA240
|
|
||||||
/* B6E504 800F7364 2407000F */ li $a3, 15
|
|
||||||
/* B6E508 800F7368 24040003 */ li $a0, 3
|
|
||||||
/* B6E50C 800F736C 24050002 */ li $a1, 2
|
|
||||||
/* B6E510 800F7370 2406007F */ li $a2, 127
|
|
||||||
/* B6E514 800F7374 0C03E890 */ jal func_800FA240
|
|
||||||
/* B6E518 800F7378 2407000F */ li $a3, 15
|
|
||||||
.L800F737C:
|
|
||||||
/* B6E51C 800F737C 8FBF0014 */ lw $ra, 0x14($sp)
|
|
||||||
/* B6E520 800F7380 27BD0018 */ addiu $sp, $sp, 0x18
|
|
||||||
/* B6E524 800F7384 03E00008 */ jr $ra
|
|
||||||
/* B6E528 800F7388 00000000 */ nop
|
|
||||||
|
|
|
@ -1,126 +0,0 @@
|
||||||
.late_rodata
|
|
||||||
glabel jtbl_8014A620
|
|
||||||
.word L800F7534
|
|
||||||
.word L800F7560
|
|
||||||
.word L800F759C
|
|
||||||
.word L800F75C0
|
|
||||||
.word L800F75F4
|
|
||||||
.word L800F7628
|
|
||||||
|
|
||||||
.text
|
|
||||||
glabel func_800F74E0
|
|
||||||
/* B6E680 800F74E0 3C028013 */ lui $v0, %hi(D_801333A4) # $v0, 0x8013
|
|
||||||
/* B6E684 800F74E4 3C038013 */ lui $v1, %hi(D_801333A0) # $v1, 0x8013
|
|
||||||
/* B6E688 800F74E8 904233A4 */ lbu $v0, %lo(D_801333A4)($v0)
|
|
||||||
/* B6E68C 800F74EC 906333A0 */ lbu $v1, %lo(D_801333A0)($v1)
|
|
||||||
/* B6E690 800F74F0 AFA40000 */ sw $a0, ($sp)
|
|
||||||
/* B6E694 800F74F4 308400FF */ andi $a0, $a0, 0xff
|
|
||||||
/* B6E698 800F74F8 1062005F */ beq $v1, $v0, .L800F7678
|
|
||||||
/* B6E69C 800F74FC 00A03825 */ move $a3, $a1
|
|
||||||
/* B6E6A0 800F7500 3C088017 */ lui $t0, %hi(D_8016C9A0) # $t0, 0x8017
|
|
||||||
/* B6E6A4 800F7504 2508C9A0 */ addiu $t0, %lo(D_8016C9A0) # addiu $t0, $t0, -0x3660
|
|
||||||
/* B6E6A8 800F7508 00803025 */ move $a2, $a0
|
|
||||||
/* B6E6AC 800F750C 24090018 */ li $t1, 24
|
|
||||||
/* B6E6B0 800F7510 2CC10006 */ sltiu $at, $a2, 6
|
|
||||||
.L800F7514:
|
|
||||||
/* B6E6B4 800F7514 1020004C */ beqz $at, .L800F7648
|
|
||||||
/* B6E6B8 800F7518 00002025 */ move $a0, $zero
|
|
||||||
/* B6E6BC 800F751C 00067080 */ sll $t6, $a2, 2
|
|
||||||
/* B6E6C0 800F7520 3C018015 */ lui $at, %hi(jtbl_8014A620)
|
|
||||||
/* B6E6C4 800F7524 002E0821 */ addu $at, $at, $t6
|
|
||||||
/* B6E6C8 800F7528 8C2EA620 */ lw $t6, %lo(jtbl_8014A620)($at)
|
|
||||||
/* B6E6CC 800F752C 01C00008 */ jr $t6
|
|
||||||
/* B6E6D0 800F7530 00000000 */ nop
|
|
||||||
glabel L800F7534
|
|
||||||
/* B6E6D4 800F7534 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E6D8 800F7538 94EF0028 */ lhu $t7, 0x28($a3)
|
|
||||||
/* B6E6DC 800F753C 31F8F000 */ andi $t8, $t7, 0xf000
|
|
||||||
/* B6E6E0 800F7540 0000C812 */ mflo $t9
|
|
||||||
/* B6E6E4 800F7544 01195021 */ addu $t2, $t0, $t9
|
|
||||||
/* B6E6E8 800F7548 954B0000 */ lhu $t3, ($t2)
|
|
||||||
/* B6E6EC 800F754C 316CF000 */ andi $t4, $t3, 0xf000
|
|
||||||
/* B6E6F0 800F7550 170C003D */ bne $t8, $t4, .L800F7648
|
|
||||||
/* B6E6F4 800F7554 00000000 */ nop
|
|
||||||
/* B6E6F8 800F7558 1000003B */ b .L800F7648
|
|
||||||
/* B6E6FC 800F755C 24040001 */ li $a0, 1
|
|
||||||
glabel L800F7560
|
|
||||||
/* B6E700 800F7560 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E704 800F7564 94EE0028 */ lhu $t6, 0x28($a3)
|
|
||||||
/* B6E708 800F7568 31CFF000 */ andi $t7, $t6, 0xf000
|
|
||||||
/* B6E70C 800F756C 00006812 */ mflo $t5
|
|
||||||
/* B6E710 800F7570 010D2821 */ addu $a1, $t0, $t5
|
|
||||||
/* B6E714 800F7574 94B90000 */ lhu $t9, ($a1)
|
|
||||||
/* B6E718 800F7578 332AF000 */ andi $t2, $t9, 0xf000
|
|
||||||
/* B6E71C 800F757C 15EA0032 */ bne $t7, $t2, .L800F7648
|
|
||||||
/* B6E720 800F7580 00000000 */ nop
|
|
||||||
/* B6E724 800F7584 8CEB0000 */ lw $t3, ($a3)
|
|
||||||
/* B6E728 800F7588 8CB80004 */ lw $t8, 4($a1)
|
|
||||||
/* B6E72C 800F758C 1578002E */ bne $t3, $t8, .L800F7648
|
|
||||||
/* B6E730 800F7590 00000000 */ nop
|
|
||||||
/* B6E734 800F7594 1000002C */ b .L800F7648
|
|
||||||
/* B6E738 800F7598 24040001 */ li $a0, 1
|
|
||||||
glabel L800F759C
|
|
||||||
/* B6E73C 800F759C 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E740 800F75A0 8CEC0000 */ lw $t4, ($a3)
|
|
||||||
/* B6E744 800F75A4 00006812 */ mflo $t5
|
|
||||||
/* B6E748 800F75A8 010D7021 */ addu $t6, $t0, $t5
|
|
||||||
/* B6E74C 800F75AC 8DD90004 */ lw $t9, 4($t6)
|
|
||||||
/* B6E750 800F75B0 15990025 */ bne $t4, $t9, .L800F7648
|
|
||||||
/* B6E754 800F75B4 00000000 */ nop
|
|
||||||
/* B6E758 800F75B8 10000023 */ b .L800F7648
|
|
||||||
/* B6E75C 800F75BC 24040001 */ li $a0, 1
|
|
||||||
glabel L800F75C0
|
|
||||||
/* B6E760 800F75C0 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E764 800F75C4 8CEA0000 */ lw $t2, ($a3)
|
|
||||||
/* B6E768 800F75C8 00007812 */ mflo $t7
|
|
||||||
/* B6E76C 800F75CC 010F2821 */ addu $a1, $t0, $t7
|
|
||||||
/* B6E770 800F75D0 8CAB0004 */ lw $t3, 4($a1)
|
|
||||||
/* B6E774 800F75D4 154B001C */ bne $t2, $t3, .L800F7648
|
|
||||||
/* B6E778 800F75D8 00000000 */ nop
|
|
||||||
/* B6E77C 800F75DC 94F80028 */ lhu $t8, 0x28($a3)
|
|
||||||
/* B6E780 800F75E0 94AD0000 */ lhu $t5, ($a1)
|
|
||||||
/* B6E784 800F75E4 170D0018 */ bne $t8, $t5, .L800F7648
|
|
||||||
/* B6E788 800F75E8 00000000 */ nop
|
|
||||||
/* B6E78C 800F75EC 10000016 */ b .L800F7648
|
|
||||||
/* B6E790 800F75F0 24040001 */ li $a0, 1
|
|
||||||
glabel L800F75F4
|
|
||||||
/* B6E794 800F75F4 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E798 800F75F8 90EC000C */ lbu $t4, 0xc($a3)
|
|
||||||
/* B6E79C 800F75FC 00007012 */ mflo $t6
|
|
||||||
/* B6E7A0 800F7600 010E2821 */ addu $a1, $t0, $t6
|
|
||||||
/* B6E7A4 800F7604 90B90008 */ lbu $t9, 8($a1)
|
|
||||||
/* B6E7A8 800F7608 1599000F */ bne $t4, $t9, .L800F7648
|
|
||||||
/* B6E7AC 800F760C 00000000 */ nop
|
|
||||||
/* B6E7B0 800F7610 94EF0028 */ lhu $t7, 0x28($a3)
|
|
||||||
/* B6E7B4 800F7614 94AA0000 */ lhu $t2, ($a1)
|
|
||||||
/* B6E7B8 800F7618 15EA000B */ bne $t7, $t2, .L800F7648
|
|
||||||
/* B6E7BC 800F761C 00000000 */ nop
|
|
||||||
/* B6E7C0 800F7620 10000009 */ b .L800F7648
|
|
||||||
/* B6E7C4 800F7624 24040001 */ li $a0, 1
|
|
||||||
glabel L800F7628
|
|
||||||
/* B6E7C8 800F7628 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E7CC 800F762C 94EB0028 */ lhu $t3, 0x28($a3)
|
|
||||||
/* B6E7D0 800F7630 0000C012 */ mflo $t8
|
|
||||||
/* B6E7D4 800F7634 01186821 */ addu $t5, $t0, $t8
|
|
||||||
/* B6E7D8 800F7638 95AE0000 */ lhu $t6, ($t5)
|
|
||||||
/* B6E7DC 800F763C 156E0002 */ bne $t3, $t6, .L800F7648
|
|
||||||
/* B6E7E0 800F7640 00000000 */ nop
|
|
||||||
/* B6E7E4 800F7644 24040001 */ li $a0, 1
|
|
||||||
.L800F7648:
|
|
||||||
/* B6E7E8 800F7648 50800008 */ beql $a0, $zero, .L800F766C
|
|
||||||
/* B6E7EC 800F764C 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B6E7F0 800F7650 00490019 */ multu $v0, $t1
|
|
||||||
/* B6E7F4 800F7654 3C038013 */ lui $v1, %hi(D_801333A0) # $v1, 0x8013
|
|
||||||
/* B6E7F8 800F7658 00006012 */ mflo $t4
|
|
||||||
/* B6E7FC 800F765C 010CC821 */ addu $t9, $t0, $t4
|
|
||||||
/* B6E800 800F7660 A7200000 */ sh $zero, ($t9)
|
|
||||||
/* B6E804 800F7664 906333A0 */ lbu $v1, %lo(D_801333A0)($v1)
|
|
||||||
/* B6E808 800F7668 24420001 */ addiu $v0, $v0, 1
|
|
||||||
.L800F766C:
|
|
||||||
/* B6E80C 800F766C 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B6E810 800F7670 5462FFA8 */ bnel $v1, $v0, .L800F7514
|
|
||||||
/* B6E814 800F7674 2CC10006 */ sltiu $at, $a2, 6
|
|
||||||
.L800F7678:
|
|
||||||
/* B6E818 800F7678 03E00008 */ jr $ra
|
|
||||||
/* B6E81C 800F767C 00000000 */ nop
|
|
||||||
|
|
|
@ -37,8 +37,8 @@ glabel func_800F7680
|
||||||
/* B6E8AC 800F770C 0015AB03 */ sra $s5, $s5, 0xc
|
/* B6E8AC 800F770C 0015AB03 */ sra $s5, $s5, 0xc
|
||||||
/* B6E8B0 800F7710 32B500FF */ andi $s5, $s5, 0xff
|
/* B6E8B0 800F7710 32B500FF */ andi $s5, $s5, 0xff
|
||||||
.L800F7714:
|
.L800F7714:
|
||||||
/* B6E8B4 800F7714 3C0E8013 */ lui $t6, %hi(D_801333A8) # $t6, 0x8013
|
/* B6E8B4 800F7714 3C0E8013 */ lui $t6, %hi(gSoundBanks) # $t6, 0x8013
|
||||||
/* B6E8B8 800F7718 25CE33A8 */ addiu $t6, %lo(D_801333A8) # addiu $t6, $t6, 0x33a8
|
/* B6E8B8 800F7718 25CE33A8 */ addiu $t6, %lo(gSoundBanks) # addiu $t6, $t6, 0x33a8
|
||||||
/* B6E8BC 800F771C 0015C880 */ sll $t9, $s5, 2
|
/* B6E8BC 800F771C 0015C880 */ sll $t9, $s5, 2
|
||||||
/* B6E8C0 800F7720 032E4021 */ addu $t0, $t9, $t6
|
/* B6E8C0 800F7720 032E4021 */ addu $t0, $t9, $t6
|
||||||
/* B6E8C4 800F7724 8D0B0000 */ lw $t3, ($t0)
|
/* B6E8C4 800F7724 8D0B0000 */ lw $t3, ($t0)
|
||||||
|
|
|
@ -1,110 +0,0 @@
|
||||||
glabel func_800F7B54
|
|
||||||
/* B6ECF4 800F7B54 27BDFFD0 */ addiu $sp, $sp, -0x30
|
|
||||||
/* B6ECF8 800F7B58 AFA50034 */ sw $a1, 0x34($sp)
|
|
||||||
/* B6ECFC 800F7B5C 93B80037 */ lbu $t8, 0x37($sp)
|
|
||||||
/* B6ED00 800F7B60 240B0030 */ li $t3, 48
|
|
||||||
/* B6ED04 800F7B64 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6ED08 800F7B68 030B0019 */ multu $t8, $t3
|
|
||||||
/* B6ED0C 800F7B6C 309000FF */ andi $s0, $a0, 0xff
|
|
||||||
/* B6ED10 800F7B70 3C0F8013 */ lui $t7, %hi(D_801333A8) # $t7, 0x8013
|
|
||||||
/* B6ED14 800F7B74 25EF33A8 */ addiu $t7, %lo(D_801333A8) # addiu $t7, $t7, 0x33a8
|
|
||||||
/* B6ED18 800F7B78 00107080 */ sll $t6, $s0, 2
|
|
||||||
/* B6ED1C 800F7B7C 01CF5021 */ addu $t2, $t6, $t7
|
|
||||||
/* B6ED20 800F7B80 8D490000 */ lw $t1, ($t2)
|
|
||||||
/* B6ED24 800F7B84 AFBF001C */ sw $ra, 0x1c($sp)
|
|
||||||
/* B6ED28 800F7B88 AFA40030 */ sw $a0, 0x30($sp)
|
|
||||||
/* B6ED2C 800F7B8C 0000C812 */ mflo $t9
|
|
||||||
/* B6ED30 800F7B90 01393021 */ addu $a2, $t1, $t9
|
|
||||||
/* B6ED34 800F7B94 94CC0026 */ lhu $t4, 0x26($a2)
|
|
||||||
/* B6ED38 800F7B98 318D0008 */ andi $t5, $t4, 8
|
|
||||||
/* B6ED3C 800F7B9C 11A00009 */ beqz $t5, .L800F7BC4
|
|
||||||
/* B6ED40 800F7BA0 00000000 */ nop
|
|
||||||
/* B6ED44 800F7BA4 90C4002E */ lbu $a0, 0x2e($a2)
|
|
||||||
/* B6ED48 800F7BA8 AFAA0024 */ sw $t2, 0x24($sp)
|
|
||||||
/* B6ED4C 800F7BAC 0C03DCC7 */ jal func_800F731C
|
|
||||||
/* B6ED50 800F7BB0 AFA6002C */ sw $a2, 0x2c($sp)
|
|
||||||
/* B6ED54 800F7BB4 8FAA0024 */ lw $t2, 0x24($sp)
|
|
||||||
/* B6ED58 800F7BB8 8FA6002C */ lw $a2, 0x2c($sp)
|
|
||||||
/* B6ED5C 800F7BBC 240B0030 */ li $t3, 48
|
|
||||||
/* B6ED60 800F7BC0 8D490000 */ lw $t1, ($t2)
|
|
||||||
.L800F7BC4:
|
|
||||||
/* B6ED64 800F7BC4 3C0E8017 */ lui $t6, %hi(D_8016E1A0) # $t6, 0x8017
|
|
||||||
/* B6ED68 800F7BC8 25CEE1A0 */ addiu $t6, %lo(D_8016E1A0) # addiu $t6, $t6, -0x1e60
|
|
||||||
/* B6ED6C 800F7BCC 020E1021 */ addu $v0, $s0, $t6
|
|
||||||
/* B6ED70 800F7BD0 904F0000 */ lbu $t7, ($v0)
|
|
||||||
/* B6ED74 800F7BD4 93A80037 */ lbu $t0, 0x37($sp)
|
|
||||||
/* B6ED78 800F7BD8 550F0005 */ bnel $t0, $t7, .L800F7BF0
|
|
||||||
/* B6ED7C 800F7BDC 90CC002D */ lbu $t4, 0x2d($a2)
|
|
||||||
/* B6ED80 800F7BE0 90D8002C */ lbu $t8, 0x2c($a2)
|
|
||||||
/* B6ED84 800F7BE4 10000008 */ b .L800F7C08
|
|
||||||
/* B6ED88 800F7BE8 A0580000 */ sb $t8, ($v0)
|
|
||||||
/* B6ED8C 800F7BEC 90CC002D */ lbu $t4, 0x2d($a2)
|
|
||||||
.L800F7BF0:
|
|
||||||
/* B6ED90 800F7BF0 90D9002C */ lbu $t9, 0x2c($a2)
|
|
||||||
/* B6ED94 800F7BF4 018B0019 */ multu $t4, $t3
|
|
||||||
/* B6ED98 800F7BF8 00006812 */ mflo $t5
|
|
||||||
/* B6ED9C 800F7BFC 012D7021 */ addu $t6, $t1, $t5
|
|
||||||
/* B6EDA0 800F7C00 A1D9002C */ sb $t9, 0x2c($t6)
|
|
||||||
/* B6EDA4 800F7C04 8D490000 */ lw $t1, ($t2)
|
|
||||||
.L800F7C08:
|
|
||||||
/* B6EDA8 800F7C08 90D8002C */ lbu $t8, 0x2c($a2)
|
|
||||||
/* B6EDAC 800F7C0C 90CF002D */ lbu $t7, 0x2d($a2)
|
|
||||||
/* B6EDB0 800F7C10 3C198017 */ lui $t9, %hi(D_8016E1A8) # $t9, 0x8017
|
|
||||||
/* B6EDB4 800F7C14 030B0019 */ multu $t8, $t3
|
|
||||||
/* B6EDB8 800F7C18 2739E1A8 */ addiu $t9, %lo(D_8016E1A8) # addiu $t9, $t9, -0x1e58
|
|
||||||
/* B6EDBC 800F7C1C 02191821 */ addu $v1, $s0, $t9
|
|
||||||
/* B6EDC0 800F7C20 240700FF */ li $a3, 255
|
|
||||||
/* B6EDC4 800F7C24 3C048013 */ lui $a0, %hi(D_80130578)
|
|
||||||
/* B6EDC8 800F7C28 00001025 */ move $v0, $zero
|
|
||||||
/* B6EDCC 800F7C2C 00006012 */ mflo $t4
|
|
||||||
/* B6EDD0 800F7C30 012C6821 */ addu $t5, $t1, $t4
|
|
||||||
/* B6EDD4 800F7C34 A1AF002D */ sb $t7, 0x2d($t5)
|
|
||||||
/* B6EDD8 800F7C38 906E0000 */ lbu $t6, ($v1)
|
|
||||||
/* B6EDDC 800F7C3C A0C7002C */ sb $a3, 0x2c($a2)
|
|
||||||
/* B6EDE0 800F7C40 A0CE002D */ sb $t6, 0x2d($a2)
|
|
||||||
/* B6EDE4 800F7C44 906F0000 */ lbu $t7, ($v1)
|
|
||||||
/* B6EDE8 800F7C48 8D4C0000 */ lw $t4, ($t2)
|
|
||||||
/* B6EDEC 800F7C4C 93B80037 */ lbu $t8, 0x37($sp)
|
|
||||||
/* B6EDF0 800F7C50 01EB0019 */ multu $t7, $t3
|
|
||||||
/* B6EDF4 800F7C54 3C0F8013 */ lui $t7, %hi(D_801333CC) # $t7, 0x8013
|
|
||||||
/* B6EDF8 800F7C58 00006812 */ mflo $t5
|
|
||||||
/* B6EDFC 800F7C5C 018DC821 */ addu $t9, $t4, $t5
|
|
||||||
/* B6EE00 800F7C60 A338002C */ sb $t8, 0x2c($t9)
|
|
||||||
/* B6EE04 800F7C64 93AE0037 */ lbu $t6, 0x37($sp)
|
|
||||||
/* B6EE08 800F7C68 0010C080 */ sll $t8, $s0, 2
|
|
||||||
/* B6EE0C 800F7C6C 0310C023 */ subu $t8, $t8, $s0
|
|
||||||
/* B6EE10 800F7C70 A06E0000 */ sb $t6, ($v1)
|
|
||||||
/* B6EE14 800F7C74 A0C0002A */ sb $zero, 0x2a($a2)
|
|
||||||
/* B6EE18 800F7C78 91EF33CC */ lbu $t7, %lo(D_801333CC)($t7)
|
|
||||||
/* B6EE1C 800F7C7C 3C198017 */ lui $t9, %hi(D_8016E1B8) # $t9, 0x8017
|
|
||||||
/* B6EE20 800F7C80 2739E1B8 */ addiu $t9, %lo(D_8016E1B8) # addiu $t9, $t9, -0x1e48
|
|
||||||
/* B6EE24 800F7C84 000F60C0 */ sll $t4, $t7, 3
|
|
||||||
/* B6EE28 800F7C88 018F6023 */ subu $t4, $t4, $t7
|
|
||||||
/* B6EE2C 800F7C8C 01906821 */ addu $t5, $t4, $s0
|
|
||||||
/* B6EE30 800F7C90 008D2021 */ addu $a0, $a0, $t5
|
|
||||||
/* B6EE34 800F7C94 90840578 */ lbu $a0, %lo(D_80130578)($a0)
|
|
||||||
/* B6EE38 800F7C98 0018C0C0 */ sll $t8, $t8, 3
|
|
||||||
/* B6EE3C 800F7C9C 03193021 */ addu $a2, $t8, $t9
|
|
||||||
/* B6EE40 800F7CA0 1880000D */ blez $a0, .L800F7CD8
|
|
||||||
/* B6EE44 800F7CA4 00802825 */ move $a1, $a0
|
|
||||||
/* B6EE48 800F7CA8 000270C0 */ sll $t6, $v0, 3
|
|
||||||
.L800F7CAC:
|
|
||||||
/* B6EE4C 800F7CAC 00CE1821 */ addu $v1, $a2, $t6
|
|
||||||
/* B6EE50 800F7CB0 906F0004 */ lbu $t7, 4($v1)
|
|
||||||
/* B6EE54 800F7CB4 550F0004 */ bnel $t0, $t7, .L800F7CC8
|
|
||||||
/* B6EE58 800F7CB8 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B6EE5C 800F7CBC A0670004 */ sb $a3, 4($v1)
|
|
||||||
/* B6EE60 800F7CC0 308200FF */ andi $v0, $a0, 0xff
|
|
||||||
/* B6EE64 800F7CC4 24420001 */ addiu $v0, $v0, 1
|
|
||||||
.L800F7CC8:
|
|
||||||
/* B6EE68 800F7CC8 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B6EE6C 800F7CCC 0045082A */ slt $at, $v0, $a1
|
|
||||||
/* B6EE70 800F7CD0 5420FFF6 */ bnezl $at, .L800F7CAC
|
|
||||||
/* B6EE74 800F7CD4 000270C0 */ sll $t6, $v0, 3
|
|
||||||
.L800F7CD8:
|
|
||||||
/* B6EE78 800F7CD8 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
/* B6EE7C 800F7CDC 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6EE80 800F7CE0 27BD0030 */ addiu $sp, $sp, 0x30
|
|
||||||
/* B6EE84 800F7CE4 03E00008 */ jr $ra
|
|
||||||
/* B6EE88 800F7CE8 00000000 */ nop
|
|
||||||
|
|
|
@ -32,8 +32,8 @@ glabel func_800F7CEC
|
||||||
/* B6EEEC 800F7D4C 1420FFF9 */ bnez $at, .L800F7D34
|
/* B6EEEC 800F7D4C 1420FFF9 */ bnez $at, .L800F7D34
|
||||||
/* B6EEF0 800F7D50 A0F50004 */ sb $s5, 4($a3)
|
/* B6EEF0 800F7D50 A0F50004 */ sb $s5, 4($a3)
|
||||||
/* B6EEF4 800F7D54 93AF00B3 */ lbu $t7, 0xb3($sp)
|
/* B6EEF4 800F7D54 93AF00B3 */ lbu $t7, 0xb3($sp)
|
||||||
/* B6EEF8 800F7D58 3C198013 */ lui $t9, %hi(D_801333A8) # $t9, 0x8013
|
/* B6EEF8 800F7D58 3C198013 */ lui $t9, %hi(gSoundBanks) # $t9, 0x8013
|
||||||
/* B6EEFC 800F7D5C 273933A8 */ addiu $t9, %lo(D_801333A8) # addiu $t9, $t9, 0x33a8
|
/* B6EEFC 800F7D5C 273933A8 */ addiu $t9, %lo(gSoundBanks) # addiu $t9, $t9, 0x33a8
|
||||||
/* B6EF00 800F7D60 000FC080 */ sll $t8, $t7, 2
|
/* B6EF00 800F7D60 000FC080 */ sll $t8, $t7, 2
|
||||||
/* B6EF04 800F7D64 0319B021 */ addu $s6, $t8, $t9
|
/* B6EF04 800F7D64 0319B021 */ addu $s6, $t8, $t9
|
||||||
/* B6EF08 800F7D68 8EC30000 */ lw $v1, ($s6)
|
/* B6EF08 800F7D68 8EC30000 */ lw $v1, ($s6)
|
||||||
|
|
|
@ -1,215 +0,0 @@
|
||||||
glabel func_800F8480
|
|
||||||
/* B6F620 800F8480 3C0E8013 */ lui $t6, %hi(D_801333CC) # $t6, 0x8013
|
|
||||||
/* B6F624 800F8484 91CE33CC */ lbu $t6, %lo(D_801333CC)($t6)
|
|
||||||
/* B6F628 800F8488 27BDFFA0 */ addiu $sp, $sp, -0x60
|
|
||||||
/* B6F62C 800F848C AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6F630 800F8490 000E78C0 */ sll $t7, $t6, 3
|
|
||||||
/* B6F634 800F8494 309200FF */ andi $s2, $a0, 0xff
|
|
||||||
/* B6F638 800F8498 01EE7823 */ subu $t7, $t7, $t6
|
|
||||||
/* B6F63C 800F849C 01F2C021 */ addu $t8, $t7, $s2
|
|
||||||
/* B6F640 800F84A0 3C038013 */ lui $v1, %hi(D_80130578)
|
|
||||||
/* B6F644 800F84A4 00781821 */ addu $v1, $v1, $t8
|
|
||||||
/* B6F648 800F84A8 90630578 */ lbu $v1, %lo(D_80130578)($v1)
|
|
||||||
/* B6F64C 800F84AC AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6F650 800F84B0 AFBF003C */ sw $ra, 0x3c($sp)
|
|
||||||
/* B6F654 800F84B4 AFBE0038 */ sw $fp, 0x38($sp)
|
|
||||||
/* B6F658 800F84B8 AFB70034 */ sw $s7, 0x34($sp)
|
|
||||||
/* B6F65C 800F84BC AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6F660 800F84C0 AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6F664 800F84C4 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6F668 800F84C8 AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6F66C 800F84CC AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6F670 800F84D0 AFA40060 */ sw $a0, 0x60($sp)
|
|
||||||
/* B6F674 800F84D4 186000A6 */ blez $v1, .L800F8770
|
|
||||||
/* B6F678 800F84D8 0000A025 */ move $s4, $zero
|
|
||||||
/* B6F67C 800F84DC 0012C880 */ sll $t9, $s2, 2
|
|
||||||
/* B6F680 800F84E0 0332C823 */ subu $t9, $t9, $s2
|
|
||||||
/* B6F684 800F84E4 3C088017 */ lui $t0, %hi(D_8016E1B8) # $t0, 0x8017
|
|
||||||
/* B6F688 800F84E8 2508E1B8 */ addiu $t0, %lo(D_8016E1B8) # addiu $t0, $t0, -0x1e48
|
|
||||||
/* B6F68C 800F84EC 0019C8C0 */ sll $t9, $t9, 3
|
|
||||||
/* B6F690 800F84F0 03284821 */ addu $t1, $t9, $t0
|
|
||||||
/* B6F694 800F84F4 3C138017 */ lui $s3, %hi(D_8016E260) # $s3, 0x8017
|
|
||||||
/* B6F698 800F84F8 2673E260 */ addiu $s3, %lo(D_8016E260) # addiu $s3, $s3, -0x1da0
|
|
||||||
/* B6F69C 800F84FC AFA90044 */ sw $t1, 0x44($sp)
|
|
||||||
/* B6F6A0 800F8500 241E0004 */ li $fp, 4
|
|
||||||
/* B6F6A4 800F8504 241700FF */ li $s7, 255
|
|
||||||
/* B6F6A8 800F8508 3C160602 */ lui $s6, 0x602
|
|
||||||
.L800F850C:
|
|
||||||
/* B6F6AC 800F850C 8FAA0044 */ lw $t2, 0x44($sp)
|
|
||||||
/* B6F6B0 800F8510 001458C0 */ sll $t3, $s4, 3
|
|
||||||
/* B6F6B4 800F8514 00126880 */ sll $t5, $s2, 2
|
|
||||||
/* B6F6B8 800F8518 014B6021 */ addu $t4, $t2, $t3
|
|
||||||
/* B6F6BC 800F851C 91910004 */ lbu $s1, 4($t4)
|
|
||||||
/* B6F6C0 800F8520 3C0E8013 */ lui $t6, %hi(D_801333A8)
|
|
||||||
/* B6F6C4 800F8524 01CD7021 */ addu $t6, $t6, $t5
|
|
||||||
/* B6F6C8 800F8528 12F1008A */ beq $s7, $s1, .L800F8754
|
|
||||||
/* B6F6CC 800F852C 00117880 */ sll $t7, $s1, 2
|
|
||||||
/* B6F6D0 800F8530 8DCE33A8 */ lw $t6, %lo(D_801333A8)($t6)
|
|
||||||
/* B6F6D4 800F8534 01F17823 */ subu $t7, $t7, $s1
|
|
||||||
/* B6F6D8 800F8538 92660000 */ lbu $a2, ($s3)
|
|
||||||
/* B6F6DC 800F853C 000F7900 */ sll $t7, $t7, 4
|
|
||||||
/* B6F6E0 800F8540 01CF8021 */ addu $s0, $t6, $t7
|
|
||||||
/* B6F6E4 800F8544 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6F6E8 800F8548 3C048017 */ lui $a0, %hi(gAudioContext+0x3828)
|
|
||||||
/* B6F6EC 800F854C 0006C080 */ sll $t8, $a2, 2
|
|
||||||
/* B6F6F0 800F8550 00982021 */ addu $a0, $a0, $t8
|
|
||||||
/* B6F6F4 800F8554 24010002 */ li $at, 2
|
|
||||||
/* B6F6F8 800F8558 14410053 */ bne $v0, $at, .L800F86A8
|
|
||||||
/* B6F6FC 800F855C 8C8429A8 */ lw $a0, %lo(gAudioContext+0x3828)($a0)
|
|
||||||
/* B6F700 800F8560 96020026 */ lhu $v0, 0x26($s0)
|
|
||||||
/* B6F704 800F8564 3C198013 */ lui $t9, %hi(D_80130570) # $t9, 0x8013
|
|
||||||
/* B6F708 800F8568 27390570 */ addiu $t9, %lo(D_80130570) # addiu $t9, $t9, 0x570
|
|
||||||
/* B6F70C 800F856C 30480008 */ andi $t0, $v0, 8
|
|
||||||
/* B6F710 800F8570 A206002E */ sb $a2, 0x2e($s0)
|
|
||||||
/* B6F714 800F8574 11000004 */ beqz $t0, .L800F8588
|
|
||||||
/* B6F718 800F8578 0259A821 */ addu $s5, $s2, $t9
|
|
||||||
/* B6F71C 800F857C 0C03DCAE */ jal func_800F72B8
|
|
||||||
/* B6F720 800F8580 92640000 */ lbu $a0, ($s3)
|
|
||||||
/* B6F724 800F8584 96020026 */ lhu $v0, 0x26($s0)
|
|
||||||
.L800F8588:
|
|
||||||
/* B6F728 800F8588 304300C0 */ andi $v1, $v0, 0xc0
|
|
||||||
/* B6F72C 800F858C 10600017 */ beqz $v1, .L800F85EC
|
|
||||||
/* B6F730 800F8590 24010040 */ li $at, 64
|
|
||||||
/* B6F734 800F8594 10610007 */ beq $v1, $at, .L800F85B4
|
|
||||||
/* B6F738 800F8598 24010080 */ li $at, 128
|
|
||||||
/* B6F73C 800F859C 1061000A */ beq $v1, $at, .L800F85C8
|
|
||||||
/* B6F740 800F85A0 240100C0 */ li $at, 192
|
|
||||||
/* B6F744 800F85A4 1061000D */ beq $v1, $at, .L800F85DC
|
|
||||||
/* B6F748 800F85A8 00000000 */ nop
|
|
||||||
/* B6F74C 800F85AC 1000000F */ b .L800F85EC
|
|
||||||
/* B6F750 800F85B0 A200002F */ sb $zero, 0x2f($s0)
|
|
||||||
.L800F85B4:
|
|
||||||
/* B6F754 800F85B4 0C0399F0 */ jal func_800E67C0
|
|
||||||
/* B6F758 800F85B8 00000000 */ nop
|
|
||||||
/* B6F75C 800F85BC 3049000F */ andi $t1, $v0, 0xf
|
|
||||||
/* B6F760 800F85C0 1000000A */ b .L800F85EC
|
|
||||||
/* B6F764 800F85C4 A209002F */ sb $t1, 0x2f($s0)
|
|
||||||
.L800F85C8:
|
|
||||||
/* B6F768 800F85C8 0C0399F0 */ jal func_800E67C0
|
|
||||||
/* B6F76C 800F85CC 00000000 */ nop
|
|
||||||
/* B6F770 800F85D0 304A001F */ andi $t2, $v0, 0x1f
|
|
||||||
/* B6F774 800F85D4 10000005 */ b .L800F85EC
|
|
||||||
/* B6F778 800F85D8 A20A002F */ sb $t2, 0x2f($s0)
|
|
||||||
.L800F85DC:
|
|
||||||
/* B6F77C 800F85DC 0C0399F0 */ jal func_800E67C0
|
|
||||||
/* B6F780 800F85E0 00000000 */ nop
|
|
||||||
/* B6F784 800F85E4 304B003F */ andi $t3, $v0, 0x3f
|
|
||||||
/* B6F788 800F85E8 A20B002F */ sb $t3, 0x2f($s0)
|
|
||||||
.L800F85EC:
|
|
||||||
/* B6F78C 800F85EC 324400FF */ andi $a0, $s2, 0xff
|
|
||||||
/* B6F790 800F85F0 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
/* B6F794 800F85F4 0C03CE82 */ jal func_800F3A08
|
|
||||||
/* B6F798 800F85F8 92660000 */ lbu $a2, ($s3)
|
|
||||||
/* B6F79C 800F85FC 926D0000 */ lbu $t5, ($s3)
|
|
||||||
/* B6F7A0 800F8600 24050001 */ li $a1, 1
|
|
||||||
/* B6F7A4 800F8604 000D7200 */ sll $t6, $t5, 8
|
|
||||||
/* B6F7A8 800F8608 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6F7AC 800F860C 01D62025 */ or $a0, $t6, $s6
|
|
||||||
/* B6F7B0 800F8610 92780000 */ lbu $t8, ($s3)
|
|
||||||
/* B6F7B4 800F8614 96050028 */ lhu $a1, 0x28($s0)
|
|
||||||
/* B6F7B8 800F8618 0018CA00 */ sll $t9, $t8, 8
|
|
||||||
/* B6F7BC 800F861C 03362025 */ or $a0, $t9, $s6
|
|
||||||
/* B6F7C0 800F8620 00052E00 */ sll $a1, $a1, 0x18
|
|
||||||
/* B6F7C4 800F8624 00052E03 */ sra $a1, $a1, 0x18
|
|
||||||
/* B6F7C8 800F8628 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6F7CC 800F862C 34840004 */ ori $a0, $a0, 4
|
|
||||||
/* B6F7D0 800F8630 92A80000 */ lbu $t0, ($s5)
|
|
||||||
/* B6F7D4 800F8634 5100000C */ beql $t0, $zero, .L800F8668
|
|
||||||
/* B6F7D8 800F8638 960C0028 */ lhu $t4, 0x28($s0)
|
|
||||||
/* B6F7DC 800F863C 96050028 */ lhu $a1, 0x28($s0)
|
|
||||||
/* B6F7E0 800F8640 926A0000 */ lbu $t2, ($s3)
|
|
||||||
/* B6F7E4 800F8644 30A50100 */ andi $a1, $a1, 0x100
|
|
||||||
/* B6F7E8 800F8648 00052A03 */ sra $a1, $a1, 8
|
|
||||||
/* B6F7EC 800F864C 000A5A00 */ sll $t3, $t2, 8
|
|
||||||
/* B6F7F0 800F8650 01762025 */ or $a0, $t3, $s6
|
|
||||||
/* B6F7F4 800F8654 00052E00 */ sll $a1, $a1, 0x18
|
|
||||||
/* B6F7F8 800F8658 00052E03 */ sra $a1, $a1, 0x18
|
|
||||||
/* B6F7FC 800F865C 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6F800 800F8660 34840005 */ ori $a0, $a0, 5
|
|
||||||
/* B6F804 800F8664 960C0028 */ lhu $t4, 0x28($s0)
|
|
||||||
.L800F8668:
|
|
||||||
/* B6F808 800F8668 3C0F8013 */ lui $t7, %hi(D_801333CC) # $t7, 0x8013
|
|
||||||
/* B6F80C 800F866C 240E0005 */ li $t6, 5
|
|
||||||
/* B6F810 800F8670 318D0C00 */ andi $t5, $t4, 0xc00
|
|
||||||
/* B6F814 800F8674 51A00004 */ beql $t5, $zero, .L800F8688
|
|
||||||
/* B6F818 800F8678 A20E002A */ sb $t6, 0x2a($s0)
|
|
||||||
/* B6F81C 800F867C 10000002 */ b .L800F8688
|
|
||||||
/* B6F820 800F8680 A21E002A */ sb $fp, 0x2a($s0)
|
|
||||||
/* B6F824 800F8684 A20E002A */ sb $t6, 0x2a($s0)
|
|
||||||
.L800F8688:
|
|
||||||
/* B6F828 800F8688 91EF33CC */ lbu $t7, %lo(D_801333CC)($t7)
|
|
||||||
/* B6F82C 800F868C 3C038013 */ lui $v1, %hi(D_80130578)
|
|
||||||
/* B6F830 800F8690 000FC0C0 */ sll $t8, $t7, 3
|
|
||||||
/* B6F834 800F8694 030FC023 */ subu $t8, $t8, $t7
|
|
||||||
/* B6F838 800F8698 0312C821 */ addu $t9, $t8, $s2
|
|
||||||
/* B6F83C 800F869C 00791821 */ addu $v1, $v1, $t9
|
|
||||||
/* B6F840 800F86A0 1000002C */ b .L800F8754
|
|
||||||
/* B6F844 800F86A4 90630578 */ lbu $v1, %lo(D_80130578)($v1)
|
|
||||||
.L800F86A8:
|
|
||||||
/* B6F848 800F86A8 908800C5 */ lbu $t0, 0xc5($a0)
|
|
||||||
/* B6F84C 800F86AC 324400FF */ andi $a0, $s2, 0xff
|
|
||||||
/* B6F850 800F86B0 24010003 */ li $at, 3
|
|
||||||
/* B6F854 800F86B4 16E8000C */ bne $s7, $t0, .L800F86E8
|
|
||||||
/* B6F858 800F86B8 00000000 */ nop
|
|
||||||
/* B6F85C 800F86BC 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6F860 800F86C0 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
/* B6F864 800F86C4 3C098013 */ lui $t1, %hi(D_801333CC) # $t1, 0x8013
|
|
||||||
/* B6F868 800F86C8 912933CC */ lbu $t1, %lo(D_801333CC)($t1)
|
|
||||||
/* B6F86C 800F86CC 3C038013 */ lui $v1, %hi(D_80130578)
|
|
||||||
/* B6F870 800F86D0 000950C0 */ sll $t2, $t1, 3
|
|
||||||
/* B6F874 800F86D4 01495023 */ subu $t2, $t2, $t1
|
|
||||||
/* B6F878 800F86D8 01525821 */ addu $t3, $t2, $s2
|
|
||||||
/* B6F87C 800F86DC 006B1821 */ addu $v1, $v1, $t3
|
|
||||||
/* B6F880 800F86E0 1000001C */ b .L800F8754
|
|
||||||
/* B6F884 800F86E4 90630578 */ lbu $v1, %lo(D_80130578)($v1)
|
|
||||||
.L800F86E8:
|
|
||||||
/* B6F888 800F86E8 1441001A */ bne $v0, $at, .L800F8754
|
|
||||||
/* B6F88C 800F86EC 324400FF */ andi $a0, $s2, 0xff
|
|
||||||
/* B6F890 800F86F0 0C03CE82 */ jal func_800F3A08
|
|
||||||
/* B6F894 800F86F4 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
/* B6F898 800F86F8 960C0028 */ lhu $t4, 0x28($s0)
|
|
||||||
/* B6F89C 800F86FC 3C0E8013 */ lui $t6, %hi(D_801333CC) # $t6, 0x8013
|
|
||||||
/* B6F8A0 800F8700 24190005 */ li $t9, 5
|
|
||||||
/* B6F8A4 800F8704 318D0C00 */ andi $t5, $t4, 0xc00
|
|
||||||
/* B6F8A8 800F8708 11A0000A */ beqz $t5, .L800F8734
|
|
||||||
/* B6F8AC 800F870C 3C088013 */ lui $t0, %hi(D_801333CC) # $t0, 0x8013
|
|
||||||
/* B6F8B0 800F8710 A21E002A */ sb $fp, 0x2a($s0)
|
|
||||||
/* B6F8B4 800F8714 91CE33CC */ lbu $t6, %lo(D_801333CC)($t6)
|
|
||||||
/* B6F8B8 800F8718 3C038013 */ lui $v1, %hi(D_80130578)
|
|
||||||
/* B6F8BC 800F871C 000E78C0 */ sll $t7, $t6, 3
|
|
||||||
/* B6F8C0 800F8720 01EE7823 */ subu $t7, $t7, $t6
|
|
||||||
/* B6F8C4 800F8724 01F2C021 */ addu $t8, $t7, $s2
|
|
||||||
/* B6F8C8 800F8728 00781821 */ addu $v1, $v1, $t8
|
|
||||||
/* B6F8CC 800F872C 10000009 */ b .L800F8754
|
|
||||||
/* B6F8D0 800F8730 90630578 */ lbu $v1, %lo(D_80130578)($v1)
|
|
||||||
.L800F8734:
|
|
||||||
/* B6F8D4 800F8734 A219002A */ sb $t9, 0x2a($s0)
|
|
||||||
/* B6F8D8 800F8738 910833CC */ lbu $t0, %lo(D_801333CC)($t0)
|
|
||||||
/* B6F8DC 800F873C 3C038013 */ lui $v1, %hi(D_80130578)
|
|
||||||
/* B6F8E0 800F8740 000848C0 */ sll $t1, $t0, 3
|
|
||||||
/* B6F8E4 800F8744 01284823 */ subu $t1, $t1, $t0
|
|
||||||
/* B6F8E8 800F8748 01325021 */ addu $t2, $t1, $s2
|
|
||||||
/* B6F8EC 800F874C 006A1821 */ addu $v1, $v1, $t2
|
|
||||||
/* B6F8F0 800F8750 90630578 */ lbu $v1, %lo(D_80130578)($v1)
|
|
||||||
.L800F8754:
|
|
||||||
/* B6F8F4 800F8754 926B0000 */ lbu $t3, ($s3)
|
|
||||||
/* B6F8F8 800F8758 26940001 */ addiu $s4, $s4, 1
|
|
||||||
/* B6F8FC 800F875C 329400FF */ andi $s4, $s4, 0xff
|
|
||||||
/* B6F900 800F8760 0283082A */ slt $at, $s4, $v1
|
|
||||||
/* B6F904 800F8764 256C0001 */ addiu $t4, $t3, 1
|
|
||||||
/* B6F908 800F8768 1420FF68 */ bnez $at, .L800F850C
|
|
||||||
/* B6F90C 800F876C A26C0000 */ sb $t4, ($s3)
|
|
||||||
.L800F8770:
|
|
||||||
/* B6F910 800F8770 8FBF003C */ lw $ra, 0x3c($sp)
|
|
||||||
/* B6F914 800F8774 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6F918 800F8778 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6F91C 800F877C 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6F920 800F8780 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6F924 800F8784 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6F928 800F8788 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6F92C 800F878C 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6F930 800F8790 8FB70034 */ lw $s7, 0x34($sp)
|
|
||||||
/* B6F934 800F8794 8FBE0038 */ lw $fp, 0x38($sp)
|
|
||||||
/* B6F938 800F8798 03E00008 */ jr $ra
|
|
||||||
/* B6F93C 800F879C 27BD0060 */ addiu $sp, $sp, 0x60
|
|
||||||
|
|
|
@ -1,63 +0,0 @@
|
||||||
glabel func_800F87A0
|
|
||||||
/* B6F940 800F87A0 27BDFF80 */ addiu $sp, $sp, -0x80
|
|
||||||
/* B6F944 800F87A4 AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6F948 800F87A8 309600FF */ andi $s6, $a0, 0xff
|
|
||||||
/* B6F94C 800F87AC 3C0F8013 */ lui $t7, %hi(D_801333A8) # $t7, 0x8013
|
|
||||||
/* B6F950 800F87B0 AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6F954 800F87B4 25EF33A8 */ addiu $t7, %lo(D_801333A8) # addiu $t7, $t7, 0x33a8
|
|
||||||
/* B6F958 800F87B8 00167080 */ sll $t6, $s6, 2
|
|
||||||
/* B6F95C 800F87BC 01CF9021 */ addu $s2, $t6, $t7
|
|
||||||
/* B6F960 800F87C0 8E430000 */ lw $v1, ($s2)
|
|
||||||
/* B6F964 800F87C4 AFBF0034 */ sw $ra, 0x34($sp)
|
|
||||||
/* B6F968 800F87C8 AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6F96C 800F87CC AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6F970 800F87D0 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6F974 800F87D4 AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6F978 800F87D8 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6F97C 800F87DC AFA40080 */ sw $a0, 0x80($sp)
|
|
||||||
/* B6F980 800F87E0 9071002D */ lbu $s1, 0x2d($v1)
|
|
||||||
/* B6F984 800F87E4 241300FF */ li $s3, 255
|
|
||||||
/* B6F988 800F87E8 24140030 */ li $s4, 48
|
|
||||||
/* B6F98C 800F87EC 12710016 */ beq $s3, $s1, .L800F8848
|
|
||||||
/* B6F990 800F87F0 3C150602 */ lui $s5, 0x602
|
|
||||||
.L800F87F4:
|
|
||||||
/* B6F994 800F87F4 02340019 */ multu $s1, $s4
|
|
||||||
/* B6F998 800F87F8 0000C012 */ mflo $t8
|
|
||||||
/* B6F99C 800F87FC 00788021 */ addu $s0, $v1, $t8
|
|
||||||
/* B6F9A0 800F8800 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6F9A4 800F8804 28410003 */ slti $at, $v0, 3
|
|
||||||
/* B6F9A8 800F8808 14200007 */ bnez $at, .L800F8828
|
|
||||||
/* B6F9AC 800F880C 00000000 */ nop
|
|
||||||
/* B6F9B0 800F8810 9208002E */ lbu $t0, 0x2e($s0)
|
|
||||||
/* B6F9B4 800F8814 00002825 */ move $a1, $zero
|
|
||||||
/* B6F9B8 800F8818 00084A00 */ sll $t1, $t0, 8
|
|
||||||
/* B6F9BC 800F881C 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6F9C0 800F8820 01352025 */ or $a0, $t1, $s5
|
|
||||||
/* B6F9C4 800F8824 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
.L800F8828:
|
|
||||||
/* B6F9C8 800F8828 10400003 */ beqz $v0, .L800F8838
|
|
||||||
/* B6F9CC 800F882C 32C400FF */ andi $a0, $s6, 0xff
|
|
||||||
/* B6F9D0 800F8830 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6F9D4 800F8834 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
.L800F8838:
|
|
||||||
/* B6F9D8 800F8838 8E430000 */ lw $v1, ($s2)
|
|
||||||
/* B6F9DC 800F883C 9071002D */ lbu $s1, 0x2d($v1)
|
|
||||||
/* B6F9E0 800F8840 1671FFEC */ bne $s3, $s1, .L800F87F4
|
|
||||||
/* B6F9E4 800F8844 00000000 */ nop
|
|
||||||
.L800F8848:
|
|
||||||
/* B6F9E8 800F8848 00165300 */ sll $t2, $s6, 0xc
|
|
||||||
/* B6F9EC 800F884C A7AA0070 */ sh $t2, 0x70($sp)
|
|
||||||
/* B6F9F0 800F8850 00002025 */ move $a0, $zero
|
|
||||||
/* B6F9F4 800F8854 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6F9F8 800F8858 27A50048 */ addiu $a1, $sp, 0x48
|
|
||||||
/* B6F9FC 800F885C 8FBF0034 */ lw $ra, 0x34($sp)
|
|
||||||
/* B6FA00 800F8860 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6FA04 800F8864 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6FA08 800F8868 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6FA0C 800F886C 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6FA10 800F8870 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6FA14 800F8874 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6FA18 800F8878 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6FA1C 800F887C 03E00008 */ jr $ra
|
|
||||||
/* B6FA20 800F8880 27BD0080 */ addiu $sp, $sp, 0x80
|
|
||||||
|
|
|
@ -1,98 +0,0 @@
|
||||||
glabel func_800F8884
|
|
||||||
/* B6FA24 800F8884 27BDFFC0 */ addiu $sp, $sp, -0x40
|
|
||||||
/* B6FA28 800F8888 AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6FA2C 800F888C 309500FF */ andi $s5, $a0, 0xff
|
|
||||||
/* B6FA30 800F8890 3C0F8013 */ lui $t7, %hi(D_801333A8) # $t7, 0x8013
|
|
||||||
/* B6FA34 800F8894 AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6FA38 800F8898 25EF33A8 */ addiu $t7, %lo(D_801333A8) # addiu $t7, $t7, 0x33a8
|
|
||||||
/* B6FA3C 800F889C 00157080 */ sll $t6, $s5, 2
|
|
||||||
/* B6FA40 800F88A0 01CFA021 */ addu $s4, $t6, $t7
|
|
||||||
/* B6FA44 800F88A4 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* B6FA48 800F88A8 AFBF003C */ sw $ra, 0x3c($sp)
|
|
||||||
/* B6FA4C 800F88AC AFBE0038 */ sw $fp, 0x38($sp)
|
|
||||||
/* B6FA50 800F88B0 AFB70034 */ sw $s7, 0x34($sp)
|
|
||||||
/* B6FA54 800F88B4 AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6FA58 800F88B8 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6FA5C 800F88BC AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6FA60 800F88C0 AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6FA64 800F88C4 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6FA68 800F88C8 AFA40040 */ sw $a0, 0x40($sp)
|
|
||||||
/* B6FA6C 800F88CC 9051002D */ lbu $s1, 0x2d($v0)
|
|
||||||
/* B6FA70 800F88D0 241700FF */ li $s7, 255
|
|
||||||
/* B6FA74 800F88D4 00A0B025 */ move $s6, $a1
|
|
||||||
/* B6FA78 800F88D8 12F10025 */ beq $s7, $s1, .L800F8970
|
|
||||||
/* B6FA7C 800F88DC 00009025 */ move $s2, $zero
|
|
||||||
/* B6FA80 800F88E0 241E0030 */ li $fp, 48
|
|
||||||
.L800F88E4:
|
|
||||||
/* B6FA84 800F88E4 023E0019 */ multu $s1, $fp
|
|
||||||
/* B6FA88 800F88E8 0000C012 */ mflo $t8
|
|
||||||
/* B6FA8C 800F88EC 00588021 */ addu $s0, $v0, $t8
|
|
||||||
/* B6FA90 800F88F0 8E190000 */ lw $t9, ($s0)
|
|
||||||
/* B6FA94 800F88F4 56D90017 */ bnel $s6, $t9, .L800F8954
|
|
||||||
/* B6FA98 800F88F8 323200FF */ andi $s2, $s1, 0xff
|
|
||||||
/* B6FA9C 800F88FC 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6FAA0 800F8900 00129880 */ sll $s3, $s2, 2
|
|
||||||
/* B6FAA4 800F8904 02729823 */ subu $s3, $s3, $s2
|
|
||||||
/* B6FAA8 800F8908 28410003 */ slti $at, $v0, 3
|
|
||||||
/* B6FAAC 800F890C 14200008 */ bnez $at, .L800F8930
|
|
||||||
/* B6FAB0 800F8910 00139900 */ sll $s3, $s3, 4
|
|
||||||
/* B6FAB4 800F8914 9204002E */ lbu $a0, 0x2e($s0)
|
|
||||||
/* B6FAB8 800F8918 3C010602 */ lui $at, 0x602
|
|
||||||
/* B6FABC 800F891C 00002825 */ move $a1, $zero
|
|
||||||
/* B6FAC0 800F8920 00042200 */ sll $a0, $a0, 8
|
|
||||||
/* B6FAC4 800F8924 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6FAC8 800F8928 00812025 */ or $a0, $a0, $at
|
|
||||||
/* B6FACC 800F892C 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
.L800F8930:
|
|
||||||
/* B6FAD0 800F8930 10400003 */ beqz $v0, .L800F8940
|
|
||||||
/* B6FAD4 800F8934 32A400FF */ andi $a0, $s5, 0xff
|
|
||||||
/* B6FAD8 800F8938 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6FADC 800F893C 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
.L800F8940:
|
|
||||||
/* B6FAE0 800F8940 8E820000 */ lw $v0, ($s4)
|
|
||||||
/* B6FAE4 800F8944 00534021 */ addu $t0, $v0, $s3
|
|
||||||
/* B6FAE8 800F8948 10000007 */ b .L800F8968
|
|
||||||
/* B6FAEC 800F894C 9111002D */ lbu $s1, 0x2d($t0)
|
|
||||||
/* B6FAF0 800F8950 323200FF */ andi $s2, $s1, 0xff
|
|
||||||
.L800F8954:
|
|
||||||
/* B6FAF4 800F8954 00124880 */ sll $t1, $s2, 2
|
|
||||||
/* B6FAF8 800F8958 01324823 */ subu $t1, $t1, $s2
|
|
||||||
/* B6FAFC 800F895C 00094900 */ sll $t1, $t1, 4
|
|
||||||
/* B6FB00 800F8960 00495021 */ addu $t2, $v0, $t1
|
|
||||||
/* B6FB04 800F8964 9151002D */ lbu $s1, 0x2d($t2)
|
|
||||||
.L800F8968:
|
|
||||||
/* B6FB08 800F8968 16F1FFDE */ bne $s7, $s1, .L800F88E4
|
|
||||||
/* B6FB0C 800F896C 00000000 */ nop
|
|
||||||
.L800F8970:
|
|
||||||
/* B6FB10 800F8970 8FBF003C */ lw $ra, 0x3c($sp)
|
|
||||||
/* B6FB14 800F8974 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6FB18 800F8978 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6FB1C 800F897C 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6FB20 800F8980 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6FB24 800F8984 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6FB28 800F8988 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6FB2C 800F898C 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6FB30 800F8990 8FB70034 */ lw $s7, 0x34($sp)
|
|
||||||
/* B6FB34 800F8994 8FBE0038 */ lw $fp, 0x38($sp)
|
|
||||||
/* B6FB38 800F8998 03E00008 */ jr $ra
|
|
||||||
/* B6FB3C 800F899C 27BD0040 */ addiu $sp, $sp, 0x40
|
|
||||||
|
|
||||||
/* B6FB40 800F89A0 27BDFFB8 */ addiu $sp, $sp, -0x48
|
|
||||||
/* B6FB44 800F89A4 AFBF0014 */ sw $ra, 0x14($sp)
|
|
||||||
/* B6FB48 800F89A8 AFA40048 */ sw $a0, 0x48($sp)
|
|
||||||
/* B6FB4C 800F89AC AFA5004C */ sw $a1, 0x4c($sp)
|
|
||||||
/* B6FB50 800F89B0 0C03E221 */ jal func_800F8884
|
|
||||||
/* B6FB54 800F89B4 93A4004B */ lbu $a0, 0x4b($sp)
|
|
||||||
/* B6FB58 800F89B8 93AE004B */ lbu $t6, 0x4b($sp)
|
|
||||||
/* B6FB5C 800F89BC 8FB8004C */ lw $t8, 0x4c($sp)
|
|
||||||
/* B6FB60 800F89C0 24040001 */ li $a0, 1
|
|
||||||
/* B6FB64 800F89C4 000E7B00 */ sll $t7, $t6, 0xc
|
|
||||||
/* B6FB68 800F89C8 A7AF0040 */ sh $t7, 0x40($sp)
|
|
||||||
/* B6FB6C 800F89CC 27A50018 */ addiu $a1, $sp, 0x18
|
|
||||||
/* B6FB70 800F89D0 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6FB74 800F89D4 AFB80018 */ sw $t8, 0x18($sp)
|
|
||||||
/* B6FB78 800F89D8 8FBF0014 */ lw $ra, 0x14($sp)
|
|
||||||
/* B6FB7C 800F89DC 27BD0048 */ addiu $sp, $sp, 0x48
|
|
||||||
/* B6FB80 800F89E0 03E00008 */ jr $ra
|
|
||||||
/* B6FB84 800F89E4 00000000 */ nop
|
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
glabel func_800F89E8
|
|
||||||
/* B6FB88 800F89E8 27BDFFA8 */ addiu $sp, $sp, -0x58
|
|
||||||
/* B6FB8C 800F89EC AFB10018 */ sw $s1, 0x18($sp)
|
|
||||||
/* B6FB90 800F89F0 AFB00014 */ sw $s0, 0x14($sp)
|
|
||||||
/* B6FB94 800F89F4 00808825 */ move $s1, $a0
|
|
||||||
/* B6FB98 800F89F8 AFBF001C */ sw $ra, 0x1c($sp)
|
|
||||||
/* B6FB9C 800F89FC 00008025 */ move $s0, $zero
|
|
||||||
/* B6FBA0 800F8A00 320400FF */ andi $a0, $s0, 0xff
|
|
||||||
.L800F8A04:
|
|
||||||
/* B6FBA4 800F8A04 0C03E221 */ jal func_800F8884
|
|
||||||
/* B6FBA8 800F8A08 02202825 */ move $a1, $s1
|
|
||||||
/* B6FBAC 800F8A0C 26100001 */ addiu $s0, $s0, 1
|
|
||||||
/* B6FBB0 800F8A10 321000FF */ andi $s0, $s0, 0xff
|
|
||||||
/* B6FBB4 800F8A14 2A010007 */ slti $at, $s0, 7
|
|
||||||
/* B6FBB8 800F8A18 5420FFFA */ bnezl $at, .L800F8A04
|
|
||||||
/* B6FBBC 800F8A1C 320400FF */ andi $a0, $s0, 0xff
|
|
||||||
/* B6FBC0 800F8A20 AFB10024 */ sw $s1, 0x24($sp)
|
|
||||||
/* B6FBC4 800F8A24 24040002 */ li $a0, 2
|
|
||||||
/* B6FBC8 800F8A28 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6FBCC 800F8A2C 27A50024 */ addiu $a1, $sp, 0x24
|
|
||||||
/* B6FBD0 800F8A30 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
/* B6FBD4 800F8A34 8FB00014 */ lw $s0, 0x14($sp)
|
|
||||||
/* B6FBD8 800F8A38 8FB10018 */ lw $s1, 0x18($sp)
|
|
||||||
/* B6FBDC 800F8A3C 03E00008 */ jr $ra
|
|
||||||
/* B6FBE0 800F8A40 27BD0058 */ addiu $sp, $sp, 0x58
|
|
||||||
|
|
|
@ -1,190 +0,0 @@
|
||||||
glabel func_800F8A44
|
|
||||||
/* B6FBE4 800F8A44 27BDFF78 */ addiu $sp, $sp, -0x88
|
|
||||||
/* B6FBE8 800F8A48 AFB70034 */ sw $s7, 0x34($sp)
|
|
||||||
/* B6FBEC 800F8A4C AFA5008C */ sw $a1, 0x8c($sp)
|
|
||||||
/* B6FBF0 800F8A50 97B7008E */ lhu $s7, 0x8e($sp)
|
|
||||||
/* B6FBF4 800F8A54 AFBE0038 */ sw $fp, 0x38($sp)
|
|
||||||
/* B6FBF8 800F8A58 3C0F8013 */ lui $t7, %hi(D_801333A8) # $t7, 0x8013
|
|
||||||
/* B6FBFC 800F8A5C 32FEF000 */ andi $fp, $s7, 0xf000
|
|
||||||
/* B6FC00 800F8A60 001EF303 */ sra $fp, $fp, 0xc
|
|
||||||
/* B6FC04 800F8A64 33DE00FF */ andi $fp, $fp, 0xff
|
|
||||||
/* B6FC08 800F8A68 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6FC0C 800F8A6C 001E7080 */ sll $t6, $fp, 2
|
|
||||||
/* B6FC10 800F8A70 25EF33A8 */ addiu $t7, %lo(D_801333A8) # addiu $t7, $t7, 0x33a8
|
|
||||||
/* B6FC14 800F8A74 01CF9821 */ addu $s3, $t6, $t7
|
|
||||||
/* B6FC18 800F8A78 8E780000 */ lw $t8, ($s3)
|
|
||||||
/* B6FC1C 800F8A7C AFBF003C */ sw $ra, 0x3c($sp)
|
|
||||||
/* B6FC20 800F8A80 AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6FC24 800F8A84 AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6FC28 800F8A88 AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6FC2C 800F8A8C AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6FC30 800F8A90 AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6FC34 800F8A94 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6FC38 800F8A98 AFA40088 */ sw $a0, 0x88($sp)
|
|
||||||
/* B6FC3C 800F8A9C 9311002D */ lbu $s1, 0x2d($t8)
|
|
||||||
/* B6FC40 800F8AA0 241500FF */ li $s5, 255
|
|
||||||
/* B6FC44 800F8AA4 0000A025 */ move $s4, $zero
|
|
||||||
/* B6FC48 800F8AA8 12B1002A */ beq $s5, $s1, .L800F8B54
|
|
||||||
/* B6FC4C 800F8AAC 02201025 */ move $v0, $s1
|
|
||||||
/* B6FC50 800F8AB0 3C160602 */ lui $s6, 0x602
|
|
||||||
/* B6FC54 800F8AB4 24120030 */ li $s2, 48
|
|
||||||
.L800F8AB8:
|
|
||||||
/* B6FC58 800F8AB8 02320019 */ multu $s1, $s2
|
|
||||||
/* B6FC5C 800F8ABC 8E790000 */ lw $t9, ($s3)
|
|
||||||
/* B6FC60 800F8AC0 8FA90088 */ lw $t1, 0x88($sp)
|
|
||||||
/* B6FC64 800F8AC4 00004012 */ mflo $t0
|
|
||||||
/* B6FC68 800F8AC8 03288021 */ addu $s0, $t9, $t0
|
|
||||||
/* B6FC6C 800F8ACC 8E0A0000 */ lw $t2, ($s0)
|
|
||||||
/* B6FC70 800F8AD0 552A0016 */ bnel $t1, $t2, .L800F8B2C
|
|
||||||
/* B6FC74 800F8AD4 323400FF */ andi $s4, $s1, 0xff
|
|
||||||
/* B6FC78 800F8AD8 960B0028 */ lhu $t3, 0x28($s0)
|
|
||||||
/* B6FC7C 800F8ADC 56EB0013 */ bnel $s7, $t3, .L800F8B2C
|
|
||||||
/* B6FC80 800F8AE0 323400FF */ andi $s4, $s1, 0xff
|
|
||||||
/* B6FC84 800F8AE4 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6FC88 800F8AE8 28410003 */ slti $at, $v0, 3
|
|
||||||
/* B6FC8C 800F8AEC 14200007 */ bnez $at, .L800F8B0C
|
|
||||||
/* B6FC90 800F8AF0 00000000 */ nop
|
|
||||||
/* B6FC94 800F8AF4 920D002E */ lbu $t5, 0x2e($s0)
|
|
||||||
/* B6FC98 800F8AF8 00002825 */ move $a1, $zero
|
|
||||||
/* B6FC9C 800F8AFC 000D7200 */ sll $t6, $t5, 8
|
|
||||||
/* B6FCA0 800F8B00 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6FCA4 800F8B04 01D62025 */ or $a0, $t6, $s6
|
|
||||||
/* B6FCA8 800F8B08 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
.L800F8B0C:
|
|
||||||
/* B6FCAC 800F8B0C 10400003 */ beqz $v0, .L800F8B1C
|
|
||||||
/* B6FCB0 800F8B10 33C400FF */ andi $a0, $fp, 0xff
|
|
||||||
/* B6FCB4 800F8B14 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6FCB8 800F8B18 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
.L800F8B1C:
|
|
||||||
/* B6FCBC 800F8B1C 241100FF */ li $s1, 255
|
|
||||||
/* B6FCC0 800F8B20 10000002 */ b .L800F8B2C
|
|
||||||
/* B6FCC4 800F8B24 240200FF */ li $v0, 255
|
|
||||||
/* B6FCC8 800F8B28 323400FF */ andi $s4, $s1, 0xff
|
|
||||||
.L800F8B2C:
|
|
||||||
/* B6FCCC 800F8B2C 12A20007 */ beq $s5, $v0, .L800F8B4C
|
|
||||||
/* B6FCD0 800F8B30 00000000 */ nop
|
|
||||||
/* B6FCD4 800F8B34 02920019 */ multu $s4, $s2
|
|
||||||
/* B6FCD8 800F8B38 8E6F0000 */ lw $t7, ($s3)
|
|
||||||
/* B6FCDC 800F8B3C 0000C012 */ mflo $t8
|
|
||||||
/* B6FCE0 800F8B40 01F8C821 */ addu $t9, $t7, $t8
|
|
||||||
/* B6FCE4 800F8B44 9331002D */ lbu $s1, 0x2d($t9)
|
|
||||||
/* B6FCE8 800F8B48 02201025 */ move $v0, $s1
|
|
||||||
.L800F8B4C:
|
|
||||||
/* B6FCEC 800F8B4C 16A2FFDA */ bne $s5, $v0, .L800F8AB8
|
|
||||||
/* B6FCF0 800F8B50 00000000 */ nop
|
|
||||||
.L800F8B54:
|
|
||||||
/* B6FCF4 800F8B54 8FA80088 */ lw $t0, 0x88($sp)
|
|
||||||
/* B6FCF8 800F8B58 97A9008E */ lhu $t1, 0x8e($sp)
|
|
||||||
/* B6FCFC 800F8B5C 24040003 */ li $a0, 3
|
|
||||||
/* B6FD00 800F8B60 27A50050 */ addiu $a1, $sp, 0x50
|
|
||||||
/* B6FD04 800F8B64 AFA80050 */ sw $t0, 0x50($sp)
|
|
||||||
/* B6FD08 800F8B68 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6FD0C 800F8B6C A7A90078 */ sh $t1, 0x78($sp)
|
|
||||||
/* B6FD10 800F8B70 8FBF003C */ lw $ra, 0x3c($sp)
|
|
||||||
/* B6FD14 800F8B74 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6FD18 800F8B78 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6FD1C 800F8B7C 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6FD20 800F8B80 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6FD24 800F8B84 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6FD28 800F8B88 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6FD2C 800F8B8C 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6FD30 800F8B90 8FB70034 */ lw $s7, 0x34($sp)
|
|
||||||
/* B6FD34 800F8B94 8FBE0038 */ lw $fp, 0x38($sp)
|
|
||||||
/* B6FD38 800F8B98 03E00008 */ jr $ra
|
|
||||||
/* B6FD3C 800F8B9C 27BD0088 */ addiu $sp, $sp, 0x88
|
|
||||||
|
|
||||||
/* B6FD40 800F8BA0 27BDFF70 */ addiu $sp, $sp, -0x90
|
|
||||||
/* B6FD44 800F8BA4 AFBE0038 */ sw $fp, 0x38($sp)
|
|
||||||
/* B6FD48 800F8BA8 AFA50094 */ sw $a1, 0x94($sp)
|
|
||||||
/* B6FD4C 800F8BAC 97BE0096 */ lhu $fp, 0x96($sp)
|
|
||||||
/* B6FD50 800F8BB0 3C088013 */ lui $t0, %hi(D_801333A8) # $t0, 0x8013
|
|
||||||
/* B6FD54 800F8BB4 AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6FD58 800F8BB8 33CEF000 */ andi $t6, $fp, 0xf000
|
|
||||||
/* B6FD5C 800F8BBC 000E7B03 */ sra $t7, $t6, 0xc
|
|
||||||
/* B6FD60 800F8BC0 31F800FF */ andi $t8, $t7, 0xff
|
|
||||||
/* B6FD64 800F8BC4 0018C880 */ sll $t9, $t8, 2
|
|
||||||
/* B6FD68 800F8BC8 250833A8 */ addiu $t0, %lo(D_801333A8) # addiu $t0, $t0, 0x33a8
|
|
||||||
/* B6FD6C 800F8BCC 0328A021 */ addu $s4, $t9, $t0
|
|
||||||
/* B6FD70 800F8BD0 8E890000 */ lw $t1, ($s4)
|
|
||||||
/* B6FD74 800F8BD4 AFBF003C */ sw $ra, 0x3c($sp)
|
|
||||||
/* B6FD78 800F8BD8 AFB70034 */ sw $s7, 0x34($sp)
|
|
||||||
/* B6FD7C 800F8BDC AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6FD80 800F8BE0 AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6FD84 800F8BE4 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6FD88 800F8BE8 AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6FD8C 800F8BEC AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6FD90 800F8BF0 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6FD94 800F8BF4 AFA40090 */ sw $a0, 0x90($sp)
|
|
||||||
/* B6FD98 800F8BF8 AFB80050 */ sw $t8, 0x50($sp)
|
|
||||||
/* B6FD9C 800F8BFC 9131002D */ lbu $s1, 0x2d($t1)
|
|
||||||
/* B6FDA0 800F8C00 241600FF */ li $s6, 255
|
|
||||||
/* B6FDA4 800F8C04 0000A825 */ move $s5, $zero
|
|
||||||
/* B6FDA8 800F8C08 12D1002B */ beq $s6, $s1, .L800F8CB8
|
|
||||||
/* B6FDAC 800F8C0C 02209025 */ move $s2, $s1
|
|
||||||
/* B6FDB0 800F8C10 93AA0093 */ lbu $t2, 0x93($sp)
|
|
||||||
/* B6FDB4 800F8C14 3C170602 */ lui $s7, 0x602
|
|
||||||
/* B6FDB8 800F8C18 24130030 */ li $s3, 48
|
|
||||||
/* B6FDBC 800F8C1C AFAA0044 */ sw $t2, 0x44($sp)
|
|
||||||
.L800F8C20:
|
|
||||||
/* B6FDC0 800F8C20 02330019 */ multu $s1, $s3
|
|
||||||
/* B6FDC4 800F8C24 8E8B0000 */ lw $t3, ($s4)
|
|
||||||
/* B6FDC8 800F8C28 8FAD0044 */ lw $t5, 0x44($sp)
|
|
||||||
/* B6FDCC 800F8C2C 00006012 */ mflo $t4
|
|
||||||
/* B6FDD0 800F8C30 016C8021 */ addu $s0, $t3, $t4
|
|
||||||
/* B6FDD4 800F8C34 920E000C */ lbu $t6, 0xc($s0)
|
|
||||||
/* B6FDD8 800F8C38 55AE0015 */ bnel $t5, $t6, .L800F8C90
|
|
||||||
/* B6FDDC 800F8C3C 323500FF */ andi $s5, $s1, 0xff
|
|
||||||
/* B6FDE0 800F8C40 960F0028 */ lhu $t7, 0x28($s0)
|
|
||||||
/* B6FDE4 800F8C44 57CF0012 */ bnel $fp, $t7, .L800F8C90
|
|
||||||
/* B6FDE8 800F8C48 323500FF */ andi $s5, $s1, 0xff
|
|
||||||
/* B6FDEC 800F8C4C 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6FDF0 800F8C50 28410003 */ slti $at, $v0, 3
|
|
||||||
/* B6FDF4 800F8C54 14200007 */ bnez $at, .L800F8C74
|
|
||||||
/* B6FDF8 800F8C58 00000000 */ nop
|
|
||||||
/* B6FDFC 800F8C5C 9219002E */ lbu $t9, 0x2e($s0)
|
|
||||||
/* B6FE00 800F8C60 00002825 */ move $a1, $zero
|
|
||||||
/* B6FE04 800F8C64 00194200 */ sll $t0, $t9, 8
|
|
||||||
/* B6FE08 800F8C68 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6FE0C 800F8C6C 01172025 */ or $a0, $t0, $s7
|
|
||||||
/* B6FE10 800F8C70 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
.L800F8C74:
|
|
||||||
/* B6FE14 800F8C74 10400006 */ beqz $v0, .L800F8C90
|
|
||||||
/* B6FE18 800F8C78 93A40053 */ lbu $a0, 0x53($sp)
|
|
||||||
/* B6FE1C 800F8C7C 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6FE20 800F8C80 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
/* B6FE24 800F8C84 10000002 */ b .L800F8C90
|
|
||||||
/* B6FE28 800F8C88 00000000 */ nop
|
|
||||||
/* B6FE2C 800F8C8C 323500FF */ andi $s5, $s1, 0xff
|
|
||||||
.L800F8C90:
|
|
||||||
/* B6FE30 800F8C90 12D20007 */ beq $s6, $s2, .L800F8CB0
|
|
||||||
/* B6FE34 800F8C94 00000000 */ nop
|
|
||||||
/* B6FE38 800F8C98 02B30019 */ multu $s5, $s3
|
|
||||||
/* B6FE3C 800F8C9C 8E890000 */ lw $t1, ($s4)
|
|
||||||
/* B6FE40 800F8CA0 00005012 */ mflo $t2
|
|
||||||
/* B6FE44 800F8CA4 012A5821 */ addu $t3, $t1, $t2
|
|
||||||
/* B6FE48 800F8CA8 9171002D */ lbu $s1, 0x2d($t3)
|
|
||||||
/* B6FE4C 800F8CAC 02209025 */ move $s2, $s1
|
|
||||||
.L800F8CB0:
|
|
||||||
/* B6FE50 800F8CB0 16D2FFDB */ bne $s6, $s2, .L800F8C20
|
|
||||||
/* B6FE54 800F8CB4 00000000 */ nop
|
|
||||||
.L800F8CB8:
|
|
||||||
/* B6FE58 800F8CB8 93AC0093 */ lbu $t4, 0x93($sp)
|
|
||||||
/* B6FE5C 800F8CBC 97AD0096 */ lhu $t5, 0x96($sp)
|
|
||||||
/* B6FE60 800F8CC0 24040004 */ li $a0, 4
|
|
||||||
/* B6FE64 800F8CC4 27A50058 */ addiu $a1, $sp, 0x58
|
|
||||||
/* B6FE68 800F8CC8 A3AC0064 */ sb $t4, 0x64($sp)
|
|
||||||
/* B6FE6C 800F8CCC 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6FE70 800F8CD0 A7AD0080 */ sh $t5, 0x80($sp)
|
|
||||||
/* B6FE74 800F8CD4 8FBF003C */ lw $ra, 0x3c($sp)
|
|
||||||
/* B6FE78 800F8CD8 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6FE7C 800F8CDC 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6FE80 800F8CE0 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6FE84 800F8CE4 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6FE88 800F8CE8 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6FE8C 800F8CEC 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6FE90 800F8CF0 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6FE94 800F8CF4 8FB70034 */ lw $s7, 0x34($sp)
|
|
||||||
/* B6FE98 800F8CF8 8FBE0038 */ lw $fp, 0x38($sp)
|
|
||||||
/* B6FE9C 800F8CFC 03E00008 */ jr $ra
|
|
||||||
/* B6FEA0 800F8D00 27BD0090 */ addiu $sp, $sp, 0x90
|
|
||||||
|
|
|
@ -1,86 +0,0 @@
|
||||||
glabel func_800F8D04
|
|
||||||
/* B6FEA4 800F8D04 27BDFF78 */ addiu $sp, $sp, -0x88
|
|
||||||
/* B6FEA8 800F8D08 AFB40028 */ sw $s4, 0x28($sp)
|
|
||||||
/* B6FEAC 800F8D0C 3094F000 */ andi $s4, $a0, 0xf000
|
|
||||||
/* B6FEB0 800F8D10 0014A302 */ srl $s4, $s4, 0xc
|
|
||||||
/* B6FEB4 800F8D14 329400FF */ andi $s4, $s4, 0xff
|
|
||||||
/* B6FEB8 800F8D18 3C0F8013 */ lui $t7, %hi(D_801333A8) # $t7, 0x8013
|
|
||||||
/* B6FEBC 800F8D1C AFB5002C */ sw $s5, 0x2c($sp)
|
|
||||||
/* B6FEC0 800F8D20 25EF33A8 */ addiu $t7, %lo(D_801333A8) # addiu $t7, $t7, 0x33a8
|
|
||||||
/* B6FEC4 800F8D24 00147080 */ sll $t6, $s4, 2
|
|
||||||
/* B6FEC8 800F8D28 01CFA821 */ addu $s5, $t6, $t7
|
|
||||||
/* B6FECC 800F8D2C 8EA20000 */ lw $v0, ($s5)
|
|
||||||
/* B6FED0 800F8D30 AFBF003C */ sw $ra, 0x3c($sp)
|
|
||||||
/* B6FED4 800F8D34 AFBE0038 */ sw $fp, 0x38($sp)
|
|
||||||
/* B6FED8 800F8D38 AFB70034 */ sw $s7, 0x34($sp)
|
|
||||||
/* B6FEDC 800F8D3C AFB60030 */ sw $s6, 0x30($sp)
|
|
||||||
/* B6FEE0 800F8D40 AFB30024 */ sw $s3, 0x24($sp)
|
|
||||||
/* B6FEE4 800F8D44 AFB20020 */ sw $s2, 0x20($sp)
|
|
||||||
/* B6FEE8 800F8D48 AFB1001C */ sw $s1, 0x1c($sp)
|
|
||||||
/* B6FEEC 800F8D4C AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B6FEF0 800F8D50 AFA40088 */ sw $a0, 0x88($sp)
|
|
||||||
/* B6FEF4 800F8D54 9051002D */ lbu $s1, 0x2d($v0)
|
|
||||||
/* B6FEF8 800F8D58 241600FF */ li $s6, 255
|
|
||||||
/* B6FEFC 800F8D5C 00009025 */ move $s2, $zero
|
|
||||||
/* B6FF00 800F8D60 12D10025 */ beq $s6, $s1, .L800F8DF8
|
|
||||||
/* B6FF04 800F8D64 24170030 */ li $s7, 48
|
|
||||||
/* B6FF08 800F8D68 3C1E0602 */ lui $fp, 0x602
|
|
||||||
.L800F8D6C:
|
|
||||||
/* B6FF0C 800F8D6C 02370019 */ multu $s1, $s7
|
|
||||||
/* B6FF10 800F8D70 8FB90088 */ lw $t9, 0x88($sp)
|
|
||||||
/* B6FF14 800F8D74 0000C012 */ mflo $t8
|
|
||||||
/* B6FF18 800F8D78 00588021 */ addu $s0, $v0, $t8
|
|
||||||
/* B6FF1C 800F8D7C 96080028 */ lhu $t0, 0x28($s0)
|
|
||||||
/* B6FF20 800F8D80 57280016 */ bnel $t9, $t0, .L800F8DDC
|
|
||||||
/* B6FF24 800F8D84 323200FF */ andi $s2, $s1, 0xff
|
|
||||||
/* B6FF28 800F8D88 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
/* B6FF2C 800F8D8C 00129880 */ sll $s3, $s2, 2
|
|
||||||
/* B6FF30 800F8D90 02729823 */ subu $s3, $s3, $s2
|
|
||||||
/* B6FF34 800F8D94 28410003 */ slti $at, $v0, 3
|
|
||||||
/* B6FF38 800F8D98 14200007 */ bnez $at, .L800F8DB8
|
|
||||||
/* B6FF3C 800F8D9C 00139900 */ sll $s3, $s3, 4
|
|
||||||
/* B6FF40 800F8DA0 920A002E */ lbu $t2, 0x2e($s0)
|
|
||||||
/* B6FF44 800F8DA4 00002825 */ move $a1, $zero
|
|
||||||
/* B6FF48 800F8DA8 000A5A00 */ sll $t3, $t2, 8
|
|
||||||
/* B6FF4C 800F8DAC 0C0396C8 */ jal func_800E5B20
|
|
||||||
/* B6FF50 800F8DB0 017E2025 */ or $a0, $t3, $fp
|
|
||||||
/* B6FF54 800F8DB4 9202002A */ lbu $v0, 0x2a($s0)
|
|
||||||
.L800F8DB8:
|
|
||||||
/* B6FF58 800F8DB8 10400003 */ beqz $v0, .L800F8DC8
|
|
||||||
/* B6FF5C 800F8DBC 328400FF */ andi $a0, $s4, 0xff
|
|
||||||
/* B6FF60 800F8DC0 0C03DED5 */ jal func_800F7B54
|
|
||||||
/* B6FF64 800F8DC4 322500FF */ andi $a1, $s1, 0xff
|
|
||||||
.L800F8DC8:
|
|
||||||
/* B6FF68 800F8DC8 8EA20000 */ lw $v0, ($s5)
|
|
||||||
/* B6FF6C 800F8DCC 00536021 */ addu $t4, $v0, $s3
|
|
||||||
/* B6FF70 800F8DD0 10000007 */ b .L800F8DF0
|
|
||||||
/* B6FF74 800F8DD4 9191002D */ lbu $s1, 0x2d($t4)
|
|
||||||
/* B6FF78 800F8DD8 323200FF */ andi $s2, $s1, 0xff
|
|
||||||
.L800F8DDC:
|
|
||||||
/* B6FF7C 800F8DDC 00126880 */ sll $t5, $s2, 2
|
|
||||||
/* B6FF80 800F8DE0 01B26823 */ subu $t5, $t5, $s2
|
|
||||||
/* B6FF84 800F8DE4 000D6900 */ sll $t5, $t5, 4
|
|
||||||
/* B6FF88 800F8DE8 004D7021 */ addu $t6, $v0, $t5
|
|
||||||
/* B6FF8C 800F8DEC 91D1002D */ lbu $s1, 0x2d($t6)
|
|
||||||
.L800F8DF0:
|
|
||||||
/* B6FF90 800F8DF0 16D1FFDE */ bne $s6, $s1, .L800F8D6C
|
|
||||||
/* B6FF94 800F8DF4 00000000 */ nop
|
|
||||||
.L800F8DF8:
|
|
||||||
/* B6FF98 800F8DF8 8FAF0088 */ lw $t7, 0x88($sp)
|
|
||||||
/* B6FF9C 800F8DFC 24040005 */ li $a0, 5
|
|
||||||
/* B6FFA0 800F8E00 27A50050 */ addiu $a1, $sp, 0x50
|
|
||||||
/* B6FFA4 800F8E04 0C03DD38 */ jal func_800F74E0
|
|
||||||
/* B6FFA8 800F8E08 A7AF0078 */ sh $t7, 0x78($sp)
|
|
||||||
/* B6FFAC 800F8E0C 8FBF003C */ lw $ra, 0x3c($sp)
|
|
||||||
/* B6FFB0 800F8E10 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B6FFB4 800F8E14 8FB1001C */ lw $s1, 0x1c($sp)
|
|
||||||
/* B6FFB8 800F8E18 8FB20020 */ lw $s2, 0x20($sp)
|
|
||||||
/* B6FFBC 800F8E1C 8FB30024 */ lw $s3, 0x24($sp)
|
|
||||||
/* B6FFC0 800F8E20 8FB40028 */ lw $s4, 0x28($sp)
|
|
||||||
/* B6FFC4 800F8E24 8FB5002C */ lw $s5, 0x2c($sp)
|
|
||||||
/* B6FFC8 800F8E28 8FB60030 */ lw $s6, 0x30($sp)
|
|
||||||
/* B6FFCC 800F8E2C 8FB70034 */ lw $s7, 0x34($sp)
|
|
||||||
/* B6FFD0 800F8E30 8FBE0038 */ lw $fp, 0x38($sp)
|
|
||||||
/* B6FFD4 800F8E34 03E00008 */ jr $ra
|
|
||||||
/* B6FFD8 800F8E38 27BD0088 */ addiu $sp, $sp, 0x88
|
|
||||||
|
|
|
@ -1,70 +0,0 @@
|
||||||
glabel func_800F8E3C
|
|
||||||
/* B6FFDC 800F8E3C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
||||||
/* B6FFE0 800F8E40 AFB10018 */ sw $s1, 0x18($sp)
|
|
||||||
/* B6FFE4 800F8E44 AFB00014 */ sw $s0, 0x14($sp)
|
|
||||||
/* B6FFE8 800F8E48 3C108013 */ lui $s0, %hi(D_801333A4) # $s0, 0x8013
|
|
||||||
/* B6FFEC 800F8E4C 3C118013 */ lui $s1, %hi(D_801333A0) # $s1, 0x8013
|
|
||||||
/* B6FFF0 800F8E50 263133A0 */ addiu $s1, %lo(D_801333A0) # addiu $s1, $s1, 0x33a0
|
|
||||||
/* B6FFF4 800F8E54 261033A4 */ addiu $s0, %lo(D_801333A4) # addiu $s0, $s0, 0x33a4
|
|
||||||
/* B6FFF8 800F8E58 920E0000 */ lbu $t6, ($s0)
|
|
||||||
/* B6FFFC 800F8E5C 922F0000 */ lbu $t7, ($s1)
|
|
||||||
/* B70000 800F8E60 AFBF001C */ sw $ra, 0x1c($sp)
|
|
||||||
/* B70004 800F8E64 51CF000A */ beql $t6, $t7, .L800F8E90
|
|
||||||
/* B70008 800F8E68 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
.L800F8E6C:
|
|
||||||
/* B7000C 800F8E6C 0C03DDA0 */ jal func_800F7680
|
|
||||||
/* B70010 800F8E70 00000000 */ nop
|
|
||||||
/* B70014 800F8E74 92180000 */ lbu $t8, ($s0)
|
|
||||||
/* B70018 800F8E78 92290000 */ lbu $t1, ($s1)
|
|
||||||
/* B7001C 800F8E7C 27190001 */ addiu $t9, $t8, 1
|
|
||||||
/* B70020 800F8E80 332800FF */ andi $t0, $t9, 0xff
|
|
||||||
/* B70024 800F8E84 1509FFF9 */ bne $t0, $t1, .L800F8E6C
|
|
||||||
/* B70028 800F8E88 A2190000 */ sb $t9, ($s0)
|
|
||||||
/* B7002C 800F8E8C 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
.L800F8E90:
|
|
||||||
/* B70030 800F8E90 8FB00014 */ lw $s0, 0x14($sp)
|
|
||||||
/* B70034 800F8E94 8FB10018 */ lw $s1, 0x18($sp)
|
|
||||||
/* B70038 800F8E98 03E00008 */ jr $ra
|
|
||||||
/* B7003C 800F8E9C 27BD0020 */ addiu $sp, $sp, 0x20
|
|
||||||
|
|
||||||
/* B70040 800F8EA0 AFA60008 */ sw $a2, 8($sp)
|
|
||||||
/* B70044 800F8EA4 30C6FFFF */ andi $a2, $a2, 0xffff
|
|
||||||
/* B70048 800F8EA8 AFA40000 */ sw $a0, ($sp)
|
|
||||||
/* B7004C 800F8EAC AFA50004 */ sw $a1, 4($sp)
|
|
||||||
/* B70050 800F8EB0 30A500FF */ andi $a1, $a1, 0xff
|
|
||||||
/* B70054 800F8EB4 14C00003 */ bnez $a2, .L800F8EC4
|
|
||||||
/* B70058 800F8EB8 308400FF */ andi $a0, $a0, 0xff
|
|
||||||
/* B7005C 800F8EBC 24C60001 */ addiu $a2, $a2, 1
|
|
||||||
/* B70060 800F8EC0 30C6FFFF */ andi $a2, $a2, 0xffff
|
|
||||||
.L800F8EC4:
|
|
||||||
/* B70064 800F8EC4 44852000 */ mtc1 $a1, $f4
|
|
||||||
/* B70068 800F8EC8 3C0F8017 */ lui $t7, %hi(D_8016E270)
|
|
||||||
/* B7006C 800F8ECC 25EFE270 */ addiu $t7, %lo(D_8016E270) # addiu $t7, $t7, -0x1d90
|
|
||||||
/* B70070 800F8ED0 00047100 */ sll $t6, $a0, 4
|
|
||||||
/* B70074 800F8ED4 01CF1021 */ addu $v0, $t6, $t7
|
|
||||||
/* B70078 800F8ED8 04A10005 */ bgez $a1, .L800F8EF0
|
|
||||||
/* B7007C 800F8EDC 468021A0 */ cvt.s.w $f6, $f4
|
|
||||||
/* B70080 800F8EE0 3C014F80 */ li $at, 0x4F800000 # 0.000000
|
|
||||||
/* B70084 800F8EE4 44814000 */ mtc1 $at, $f8
|
|
||||||
/* B70088 800F8EE8 00000000 */ nop
|
|
||||||
/* B7008C 800F8EEC 46083180 */ add.s $f6, $f6, $f8
|
|
||||||
.L800F8EF0:
|
|
||||||
/* B70090 800F8EF0 3C0142FE */ li $at, 0x42FE0000 # 0.000000
|
|
||||||
/* B70094 800F8EF4 44815000 */ mtc1 $at, $f10
|
|
||||||
/* B70098 800F8EF8 C4500000 */ lwc1 $f16, ($v0)
|
|
||||||
/* B7009C 800F8EFC 44862000 */ mtc1 $a2, $f4
|
|
||||||
/* B700A0 800F8F00 460A3003 */ div.s $f0, $f6, $f10
|
|
||||||
/* B700A4 800F8F04 A446000C */ sh $a2, 0xc($v0)
|
|
||||||
/* B700A8 800F8F08 3C014F80 */ li $at, 0x4F800000 # 0.000000
|
|
||||||
/* B700AC 800F8F0C 46802220 */ cvt.s.w $f8, $f4
|
|
||||||
/* B700B0 800F8F10 E4400004 */ swc1 $f0, 4($v0)
|
|
||||||
/* B700B4 800F8F14 04C10004 */ bgez $a2, .L800F8F28
|
|
||||||
/* B700B8 800F8F18 46008481 */ sub.s $f18, $f16, $f0
|
|
||||||
/* B700BC 800F8F1C 44813000 */ mtc1 $at, $f6
|
|
||||||
/* B700C0 800F8F20 00000000 */ nop
|
|
||||||
/* B700C4 800F8F24 46064200 */ add.s $f8, $f8, $f6
|
|
||||||
.L800F8F28:
|
|
||||||
/* B700C8 800F8F28 46089283 */ div.s $f10, $f18, $f8
|
|
||||||
/* B700CC 800F8F2C 03E00008 */ jr $ra
|
|
||||||
/* B700D0 800F8F30 E44A0008 */ swc1 $f10, 8($v0)
|
|
||||||
|
|
|
@ -1,26 +0,0 @@
|
||||||
glabel func_800F8F34
|
|
||||||
/* B700D4 800F8F34 AFA40000 */ sw $a0, ($sp)
|
|
||||||
/* B700D8 800F8F38 308400FF */ andi $a0, $a0, 0xff
|
|
||||||
/* B700DC 800F8F3C 3C0F8017 */ lui $t7, %hi(D_8016E270) # $t7, 0x8017
|
|
||||||
/* B700E0 800F8F40 25EFE270 */ addiu $t7, %lo(D_8016E270) # addiu $t7, $t7, -0x1d90
|
|
||||||
/* B700E4 800F8F44 00047100 */ sll $t6, $a0, 4
|
|
||||||
/* B700E8 800F8F48 01CF1021 */ addu $v0, $t6, $t7
|
|
||||||
/* B700EC 800F8F4C 9443000C */ lhu $v1, 0xc($v0)
|
|
||||||
/* B700F0 800F8F50 1060000B */ beqz $v1, .L800F8F80
|
|
||||||
/* B700F4 800F8F54 2478FFFF */ addiu $t8, $v1, -1
|
|
||||||
/* B700F8 800F8F58 3319FFFF */ andi $t9, $t8, 0xffff
|
|
||||||
/* B700FC 800F8F5C 13200006 */ beqz $t9, .L800F8F78
|
|
||||||
/* B70100 800F8F60 A458000C */ sh $t8, 0xc($v0)
|
|
||||||
/* B70104 800F8F64 C4440000 */ lwc1 $f4, ($v0)
|
|
||||||
/* B70108 800F8F68 C4460008 */ lwc1 $f6, 8($v0)
|
|
||||||
/* B7010C 800F8F6C 46062201 */ sub.s $f8, $f4, $f6
|
|
||||||
/* B70110 800F8F70 03E00008 */ jr $ra
|
|
||||||
/* B70114 800F8F74 E4480000 */ swc1 $f8, ($v0)
|
|
||||||
|
|
||||||
.L800F8F78:
|
|
||||||
/* B70118 800F8F78 C44A0004 */ lwc1 $f10, 4($v0)
|
|
||||||
/* B7011C 800F8F7C E44A0000 */ swc1 $f10, ($v0)
|
|
||||||
.L800F8F80:
|
|
||||||
/* B70120 800F8F80 03E00008 */ jr $ra
|
|
||||||
/* B70124 800F8F84 00000000 */ nop
|
|
||||||
|
|
|
@ -1,31 +0,0 @@
|
||||||
glabel func_800F8F88
|
|
||||||
/* B70128 800F8F88 3C0F8017 */ lui $t7, %hi(gAudioContext+0x3828) # $t7, 0x8017
|
|
||||||
/* B7012C 800F8F8C 8DEF29A8 */ lw $t7, %lo(gAudioContext+0x3828)($t7)
|
|
||||||
/* B70130 800F8F90 3C0E8017 */ lui $t6, %hi(gAudioContext+0x5AB0) # $t6, 0x8017
|
|
||||||
/* B70134 800F8F94 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
||||||
/* B70138 800F8F98 25CE4C30 */ addiu $t6, %lo(gAudioContext+0x5AB0) # addiu $t6, $t6, 0x4c30
|
|
||||||
/* B7013C 800F8F9C AFBF001C */ sw $ra, 0x1c($sp)
|
|
||||||
/* B70140 800F8FA0 11CF000F */ beq $t6, $t7, .L800F8FE0
|
|
||||||
/* B70144 800F8FA4 AFB00018 */ sw $s0, 0x18($sp)
|
|
||||||
/* B70148 800F8FA8 3C018017 */ lui $at, %hi(D_8016E260) # $at, 0x8017
|
|
||||||
/* B7014C 800F8FAC A020E260 */ sb $zero, %lo(D_8016E260)($at)
|
|
||||||
/* B70150 800F8FB0 00008025 */ move $s0, $zero
|
|
||||||
.L800F8FB4:
|
|
||||||
/* B70154 800F8FB4 0C03DF3B */ jal func_800F7CEC
|
|
||||||
/* B70158 800F8FB8 320400FF */ andi $a0, $s0, 0xff
|
|
||||||
/* B7015C 800F8FBC 0C03E120 */ jal func_800F8480
|
|
||||||
/* B70160 800F8FC0 320400FF */ andi $a0, $s0, 0xff
|
|
||||||
/* B70164 800F8FC4 0C03E3CD */ jal func_800F8F34
|
|
||||||
/* B70168 800F8FC8 320400FF */ andi $a0, $s0, 0xff
|
|
||||||
/* B7016C 800F8FCC 26100001 */ addiu $s0, $s0, 1
|
|
||||||
/* B70170 800F8FD0 321000FF */ andi $s0, $s0, 0xff
|
|
||||||
/* B70174 800F8FD4 2A010007 */ slti $at, $s0, 7
|
|
||||||
/* B70178 800F8FD8 1420FFF6 */ bnez $at, .L800F8FB4
|
|
||||||
/* B7017C 800F8FDC 00000000 */ nop
|
|
||||||
.L800F8FE0:
|
|
||||||
/* B70180 800F8FE0 8FBF001C */ lw $ra, 0x1c($sp)
|
|
||||||
/* B70184 800F8FE4 8FB00018 */ lw $s0, 0x18($sp)
|
|
||||||
/* B70188 800F8FE8 27BD0020 */ addiu $sp, $sp, 0x20
|
|
||||||
/* B7018C 800F8FEC 03E00008 */ jr $ra
|
|
||||||
/* B70190 800F8FF0 00000000 */ nop
|
|
||||||
|
|
|
@ -1,32 +0,0 @@
|
||||||
glabel func_800F8FF4
|
|
||||||
/* B70194 800F8FF4 308EF000 */ andi $t6, $a0, 0xf000
|
|
||||||
/* B70198 800F8FF8 000E7B02 */ srl $t7, $t6, 0xc
|
|
||||||
/* B7019C 800F8FFC 31F800FF */ andi $t8, $t7, 0xff
|
|
||||||
/* B701A0 800F9000 0018C880 */ sll $t9, $t8, 2
|
|
||||||
/* B701A4 800F9004 3C038013 */ lui $v1, %hi(D_801333A8)
|
|
||||||
/* B701A8 800F9008 00791821 */ addu $v1, $v1, $t9
|
|
||||||
/* B701AC 800F900C 8C6333A8 */ lw $v1, %lo(D_801333A8)($v1)
|
|
||||||
/* B701B0 800F9010 240600FF */ li $a2, 255
|
|
||||||
/* B701B4 800F9014 24070030 */ li $a3, 48
|
|
||||||
/* B701B8 800F9018 9062002D */ lbu $v0, 0x2d($v1)
|
|
||||||
/* B701BC 800F901C 50C2000D */ beql $a2, $v0, .L800F9054
|
|
||||||
/* B701C0 800F9020 00001025 */ move $v0, $zero
|
|
||||||
.L800F9024:
|
|
||||||
/* B701C4 800F9024 00470019 */ multu $v0, $a3
|
|
||||||
/* B701C8 800F9028 00004012 */ mflo $t0
|
|
||||||
/* B701CC 800F902C 00682821 */ addu $a1, $v1, $t0
|
|
||||||
/* B701D0 800F9030 94A90028 */ lhu $t1, 0x28($a1)
|
|
||||||
/* B701D4 800F9034 54890004 */ bnel $a0, $t1, .L800F9048
|
|
||||||
/* B701D8 800F9038 90A2002D */ lbu $v0, 0x2d($a1)
|
|
||||||
/* B701DC 800F903C 03E00008 */ jr $ra
|
|
||||||
/* B701E0 800F9040 24020001 */ li $v0, 1
|
|
||||||
|
|
||||||
/* B701E4 800F9044 90A2002D */ lbu $v0, 0x2d($a1)
|
|
||||||
.L800F9048:
|
|
||||||
/* B701E8 800F9048 14C2FFF6 */ bne $a2, $v0, .L800F9024
|
|
||||||
/* B701EC 800F904C 00000000 */ nop
|
|
||||||
/* B701F0 800F9050 00001025 */ move $v0, $zero
|
|
||||||
.L800F9054:
|
|
||||||
/* B701F4 800F9054 03E00008 */ jr $ra
|
|
||||||
/* B701F8 800F9058 00000000 */ nop
|
|
||||||
|
|
|
@ -1,143 +0,0 @@
|
||||||
glabel func_800F905C
|
|
||||||
/* B701FC 800F905C 3C018013 */ lui $at, %hi(D_801333A0) # $at, 0x8013
|
|
||||||
/* B70200 800F9060 A02033A0 */ sb $zero, %lo(D_801333A0)($at)
|
|
||||||
/* B70204 800F9064 3C018013 */ lui $at, %hi(D_801333A4) # $at, 0x8013
|
|
||||||
/* B70208 800F9068 A02033A4 */ sb $zero, %lo(D_801333A4)($at)
|
|
||||||
/* B7020C 800F906C 3C018013 */ lui $at, %hi(D_801333D0) # $at, 0x8013
|
|
||||||
/* B70210 800F9070 A42033D0 */ sh $zero, %lo(D_801333D0)($at)
|
|
||||||
/* B70214 800F9074 3C013F80 */ lui $at, 0x3f80
|
|
||||||
/* B70218 800F9078 3C098017 */ lui $t1, %hi(D_8016E270) # $t1, 0x8017
|
|
||||||
/* B7021C 800F907C 3C088017 */ lui $t0, %hi(D_8016E264) # $t0, 0x8017
|
|
||||||
/* B70220 800F9080 3C078017 */ lui $a3, %hi(D_8016E1B0) # $a3, 0x8017
|
|
||||||
/* B70224 800F9084 3C058017 */ lui $a1, %hi(D_8016E1A8) # $a1, 0x8017
|
|
||||||
/* B70228 800F9088 3C048017 */ lui $a0, %hi(D_8016E1A0)
|
|
||||||
/* B7022C 800F908C 44810000 */ mtc1 $at, $f0
|
|
||||||
/* B70230 800F9090 2484E1A0 */ addiu $a0, %lo(D_8016E1A0)
|
|
||||||
/* B70234 800F9094 24A5E1A8 */ addiu $a1, %lo(D_8016E1A8) # addiu $a1, $a1, -0x1e58
|
|
||||||
/* B70238 800F9098 24E7E1B0 */ addiu $a3, %lo(D_8016E1B0) # addiu $a3, $a3, -0x1e50
|
|
||||||
/* B7023C 800F909C 2508E264 */ addiu $t0, %lo(D_8016E264) # addiu $t0, $t0, -0x1d9c
|
|
||||||
/* B70240 800F90A0 2529E270 */ addiu $t1, %lo(D_8016E270) # addiu $t1, $t1, -0x1d90
|
|
||||||
/* B70244 800F90A4 00001025 */ move $v0, $zero
|
|
||||||
/* B70248 800F90A8 24060001 */ li $a2, 1
|
|
||||||
.L800F90AC:
|
|
||||||
/* B7024C 800F90AC 00827021 */ addu $t6, $a0, $v0
|
|
||||||
/* B70250 800F90B0 00A27821 */ addu $t7, $a1, $v0
|
|
||||||
/* B70254 800F90B4 A1C00000 */ sb $zero, ($t6)
|
|
||||||
/* B70258 800F90B8 00E2C021 */ addu $t8, $a3, $v0
|
|
||||||
/* B7025C 800F90BC 0102C821 */ addu $t9, $t0, $v0
|
|
||||||
/* B70260 800F90C0 00026100 */ sll $t4, $v0, 4
|
|
||||||
/* B70264 800F90C4 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B70268 800F90C8 A1E60000 */ sb $a2, ($t7)
|
|
||||||
/* B7026C 800F90CC 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B70270 800F90D0 A3000000 */ sb $zero, ($t8)
|
|
||||||
/* B70274 800F90D4 28410007 */ slti $at, $v0, 7
|
|
||||||
/* B70278 800F90D8 A3200000 */ sb $zero, ($t9)
|
|
||||||
/* B7027C 800F90DC 012C1821 */ addu $v1, $t1, $t4
|
|
||||||
/* B70280 800F90E0 E4600000 */ swc1 $f0, ($v1)
|
|
||||||
/* B70284 800F90E4 1420FFF1 */ bnez $at, .L800F90AC
|
|
||||||
/* B70288 800F90E8 A460000C */ sh $zero, 0xc($v1)
|
|
||||||
/* B7028C 800F90EC 00001025 */ move $v0, $zero
|
|
||||||
/* B70290 800F90F0 240800FF */ li $t0, 255
|
|
||||||
/* B70294 800F90F4 00026880 */ sll $t5, $v0, 2
|
|
||||||
.L800F90F8:
|
|
||||||
/* B70298 800F90F8 01A26823 */ subu $t5, $t5, $v0
|
|
||||||
/* B7029C 800F90FC 3C0E8017 */ lui $t6, %hi(D_8016E1B8) # $t6, 0x8017
|
|
||||||
/* B702A0 800F9100 25CEE1B8 */ addiu $t6, %lo(D_8016E1B8) # addiu $t6, $t6, -0x1e48
|
|
||||||
/* B702A4 800F9104 000D68C0 */ sll $t5, $t5, 3
|
|
||||||
/* B702A8 800F9108 01AE2021 */ addu $a0, $t5, $t6
|
|
||||||
/* B702AC 800F910C 00001825 */ move $v1, $zero
|
|
||||||
.L800F9110:
|
|
||||||
/* B702B0 800F9110 000378C0 */ sll $t7, $v1, 3
|
|
||||||
/* B702B4 800F9114 24630001 */ addiu $v1, $v1, 1
|
|
||||||
/* B702B8 800F9118 306300FF */ andi $v1, $v1, 0xff
|
|
||||||
/* B702BC 800F911C 28610003 */ slti $at, $v1, 3
|
|
||||||
/* B702C0 800F9120 008FC021 */ addu $t8, $a0, $t7
|
|
||||||
/* B702C4 800F9124 1420FFFA */ bnez $at, .L800F9110
|
|
||||||
/* B702C8 800F9128 A3080004 */ sb $t0, 4($t8)
|
|
||||||
/* B702CC 800F912C 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B702D0 800F9130 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B702D4 800F9134 28410007 */ slti $at, $v0, 7
|
|
||||||
/* B702D8 800F9138 5420FFEF */ bnezl $at, .L800F90F8
|
|
||||||
/* B702DC 800F913C 00026880 */ sll $t5, $v0, 2
|
|
||||||
/* B702E0 800F9140 3C0A8013 */ lui $t2, %hi(D_801333C4) # $t2, 0x8013
|
|
||||||
/* B702E4 800F9144 3C098013 */ lui $t1, %hi(D_801333A8) # $t1, 0x8013
|
|
||||||
/* B702E8 800F9148 252933A8 */ addiu $t1, %lo(D_801333A8) # addiu $t1, $t1, 0x33a8
|
|
||||||
/* B702EC 800F914C 254A33C4 */ addiu $t2, %lo(D_801333C4) # addiu $t2, $t2, 0x33c4
|
|
||||||
/* B702F0 800F9150 00001025 */ move $v0, $zero
|
|
||||||
/* B702F4 800F9154 240B0030 */ li $t3, 48
|
|
||||||
.L800F9158:
|
|
||||||
/* B702F8 800F9158 0002C880 */ sll $t9, $v0, 2
|
|
||||||
/* B702FC 800F915C 01392821 */ addu $a1, $t1, $t9
|
|
||||||
/* B70300 800F9160 8CAC0000 */ lw $t4, ($a1)
|
|
||||||
/* B70304 800F9164 01423021 */ addu $a2, $t2, $v0
|
|
||||||
/* B70308 800F9168 24030001 */ li $v1, 1
|
|
||||||
/* B7030C 800F916C A188002C */ sb $t0, 0x2c($t4)
|
|
||||||
/* B70310 800F9170 8CAD0000 */ lw $t5, ($a1)
|
|
||||||
/* B70314 800F9174 24040001 */ li $a0, 1
|
|
||||||
/* B70318 800F9178 A1A8002D */ sb $t0, 0x2d($t5)
|
|
||||||
/* B7031C 800F917C 90CE0000 */ lbu $t6, ($a2)
|
|
||||||
/* B70320 800F9180 25CFFFFF */ addiu $t7, $t6, -1
|
|
||||||
/* B70324 800F9184 29E10002 */ slti $at, $t7, 2
|
|
||||||
/* B70328 800F9188 14200013 */ bnez $at, .L800F91D8
|
|
||||||
/* B7032C 800F918C 00000000 */ nop
|
|
||||||
.L800F9190:
|
|
||||||
/* B70330 800F9190 006B0019 */ multu $v1, $t3
|
|
||||||
/* B70334 800F9194 8CB90000 */ lw $t9, ($a1)
|
|
||||||
/* B70338 800F9198 2498FFFF */ addiu $t8, $a0, -1
|
|
||||||
/* B7033C 800F919C 248D0001 */ addiu $t5, $a0, 1
|
|
||||||
/* B70340 800F91A0 24630001 */ addiu $v1, $v1, 1
|
|
||||||
/* B70344 800F91A4 306300FF */ andi $v1, $v1, 0xff
|
|
||||||
/* B70348 800F91A8 00602025 */ move $a0, $v1
|
|
||||||
/* B7034C 800F91AC 00003812 */ mflo $a3
|
|
||||||
/* B70350 800F91B0 03276021 */ addu $t4, $t9, $a3
|
|
||||||
/* B70354 800F91B4 A198002C */ sb $t8, 0x2c($t4)
|
|
||||||
/* B70358 800F91B8 8CAE0000 */ lw $t6, ($a1)
|
|
||||||
/* B7035C 800F91BC 01C77821 */ addu $t7, $t6, $a3
|
|
||||||
/* B70360 800F91C0 A1ED002D */ sb $t5, 0x2d($t7)
|
|
||||||
/* B70364 800F91C4 90D90000 */ lbu $t9, ($a2)
|
|
||||||
/* B70368 800F91C8 2738FFFF */ addiu $t8, $t9, -1
|
|
||||||
/* B7036C 800F91CC 0078082A */ slt $at, $v1, $t8
|
|
||||||
/* B70370 800F91D0 1420FFEF */ bnez $at, .L800F9190
|
|
||||||
/* B70374 800F91D4 00000000 */ nop
|
|
||||||
.L800F91D8:
|
|
||||||
/* B70378 800F91D8 006B0019 */ multu $v1, $t3
|
|
||||||
/* B7037C 800F91DC 8CAE0000 */ lw $t6, ($a1)
|
|
||||||
/* B70380 800F91E0 246CFFFF */ addiu $t4, $v1, -1
|
|
||||||
/* B70384 800F91E4 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B70388 800F91E8 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B7038C 800F91EC 28410007 */ slti $at, $v0, 7
|
|
||||||
/* B70390 800F91F0 00003812 */ mflo $a3
|
|
||||||
/* B70394 800F91F4 01C76821 */ addu $t5, $t6, $a3
|
|
||||||
/* B70398 800F91F8 A1AC002C */ sb $t4, 0x2c($t5)
|
|
||||||
/* B7039C 800F91FC 8CAF0000 */ lw $t7, ($a1)
|
|
||||||
/* B703A0 800F9200 01E7C821 */ addu $t9, $t7, $a3
|
|
||||||
/* B703A4 800F9204 1420FFD4 */ bnez $at, .L800F9158
|
|
||||||
/* B703A8 800F9208 A328002D */ sb $t0, 0x2d($t9)
|
|
||||||
/* B703AC 800F920C 3C058013 */ lui $a1, %hi(D_801333F8) # $a1, 0x8013
|
|
||||||
/* B703B0 800F9210 24A533F8 */ addiu $a1, %lo(D_801333F8) # addiu $a1, $a1, 0x33f8
|
|
||||||
/* B703B4 800F9214 90A30000 */ lbu $v1, ($a1)
|
|
||||||
/* B703B8 800F9218 3C088017 */ lui $t0, %hi(D_8016E310) # $t0, 0x8017
|
|
||||||
/* B703BC 800F921C 2508E310 */ addiu $t0, %lo(D_8016E310) # addiu $t0, $t0, -0x1cf0
|
|
||||||
/* B703C0 800F9220 14600012 */ bnez $v1, .L800F926C
|
|
||||||
/* B703C4 800F9224 00001025 */ move $v0, $zero
|
|
||||||
/* B703C8 800F9228 3C078017 */ lui $a3, %hi(D_8016E2F8) # $a3, 0x8017
|
|
||||||
/* B703CC 800F922C 3C068017 */ lui $a2, %hi(D_8016E2E0) # $a2, 0x8017
|
|
||||||
/* B703D0 800F9230 24C6E2E0 */ addiu $a2, %lo(D_8016E2E0) # addiu $a2, $a2, -0x1d20
|
|
||||||
/* B703D4 800F9234 24E7E2F8 */ addiu $a3, %lo(D_8016E2F8) # addiu $a3, $a3, -0x1d08
|
|
||||||
.L800F9238:
|
|
||||||
/* B703D8 800F9238 00022040 */ sll $a0, $v0, 1
|
|
||||||
/* B703DC 800F923C 01026021 */ addu $t4, $t0, $v0
|
|
||||||
/* B703E0 800F9240 24420001 */ addiu $v0, $v0, 1
|
|
||||||
/* B703E4 800F9244 00C4C021 */ addu $t8, $a2, $a0
|
|
||||||
/* B703E8 800F9248 304200FF */ andi $v0, $v0, 0xff
|
|
||||||
/* B703EC 800F924C A7000000 */ sh $zero, ($t8)
|
|
||||||
/* B703F0 800F9250 00E47021 */ addu $t6, $a3, $a0
|
|
||||||
/* B703F4 800F9254 2841000A */ slti $at, $v0, 0xa
|
|
||||||
/* B703F8 800F9258 A5C00000 */ sh $zero, ($t6)
|
|
||||||
/* B703FC 800F925C 1420FFF6 */ bnez $at, .L800F9238
|
|
||||||
/* B70400 800F9260 A1800000 */ sb $zero, ($t4)
|
|
||||||
/* B70404 800F9264 246D0001 */ addiu $t5, $v1, 1
|
|
||||||
/* B70408 800F9268 A0AD0000 */ sb $t5, ($a1)
|
|
||||||
.L800F926C:
|
|
||||||
/* B7040C 800F926C 03E00008 */ jr $ra
|
|
||||||
/* B70410 800F9270 00000000 */ nop
|
|
|
@ -1,64 +0,0 @@
|
||||||
.include "macro.inc"
|
|
||||||
|
|
||||||
# assembler directives
|
|
||||||
.set noat # allow manual use of $at
|
|
||||||
.set noreorder # don't insert nops after branches
|
|
||||||
.set gp=64 # allow use of 64-bit general purpose registers
|
|
||||||
|
|
||||||
.section .data
|
|
||||||
|
|
||||||
.balign 16
|
|
||||||
|
|
||||||
glabel D_80133340
|
|
||||||
.incbin "baserom.z64", 0xBAA4E0, 0x4
|
|
||||||
|
|
||||||
glabel D_80133344
|
|
||||||
.incbin "baserom.z64", 0xBAA4E4, 0x4C
|
|
||||||
|
|
||||||
glabel D_80133390
|
|
||||||
.incbin "baserom.z64", 0xBAA530, 0x8
|
|
||||||
|
|
||||||
glabel D_80133398
|
|
||||||
.incbin "baserom.z64", 0xBAA538, 0x8
|
|
||||||
|
|
||||||
glabel D_801333A0
|
|
||||||
.incbin "baserom.z64", 0xBAA540, 0x4
|
|
||||||
|
|
||||||
glabel D_801333A4
|
|
||||||
.incbin "baserom.z64", 0xBAA544, 0x4
|
|
||||||
|
|
||||||
glabel D_801333A8
|
|
||||||
.word D_8016BAD0
|
|
||||||
.word D_8016BC80
|
|
||||||
.word D_8016BEC0
|
|
||||||
.word D_8016C2E0
|
|
||||||
.word D_8016C6A0
|
|
||||||
.word D_8016C820
|
|
||||||
.word D_8016C8B0
|
|
||||||
|
|
||||||
glabel D_801333C4
|
|
||||||
.incbin "baserom.z64", 0xBAA564, 0x8
|
|
||||||
|
|
||||||
glabel D_801333CC
|
|
||||||
.incbin "baserom.z64", 0xBAA56C, 0x4
|
|
||||||
|
|
||||||
glabel D_801333D0
|
|
||||||
.incbin "baserom.z64", 0xBAA570, 0x4
|
|
||||||
|
|
||||||
glabel D_801333D4
|
|
||||||
.incbin "baserom.z64", 0xBAA574, 0xC
|
|
||||||
|
|
||||||
glabel D_801333E0
|
|
||||||
.incbin "baserom.z64", 0xBAA580, 0x8
|
|
||||||
|
|
||||||
glabel D_801333E8
|
|
||||||
.incbin "baserom.z64", 0xBAA588, 0x8
|
|
||||||
|
|
||||||
glabel D_801333F0
|
|
||||||
.incbin "baserom.z64", 0xBAA590, 0x4
|
|
||||||
|
|
||||||
glabel D_801333F4
|
|
||||||
.incbin "baserom.z64", 0xBAA594, 0x4
|
|
||||||
|
|
||||||
glabel D_801333F8
|
|
||||||
.incbin "baserom.z64", 0xBAA598, 0x8
|
|
|
@ -2136,7 +2136,7 @@ void func_800E4FB0(void);
|
||||||
// ? func_800E5A8C(?);
|
// ? func_800E5A8C(?);
|
||||||
// ? func_800E5AD8(?);
|
// ? func_800E5AD8(?);
|
||||||
// ? func_800E5AFC(?);
|
// ? func_800E5AFC(?);
|
||||||
// ? func_800E5B20(?);
|
void func_800E5B20(u32, s8);
|
||||||
// ? func_800E5B50(?);
|
// ? func_800E5B50(?);
|
||||||
// ? func_800E5B80(?);
|
// ? func_800E5B80(?);
|
||||||
// ? func_800E5C10(?);
|
// ? func_800E5C10(?);
|
||||||
|
@ -2152,7 +2152,7 @@ void func_800E4FB0(void);
|
||||||
// ? func_800E6300(?);
|
// ? func_800E6300(?);
|
||||||
// ? func_800E6680(?);
|
// ? func_800E6680(?);
|
||||||
// ? func_800E66C0(?);
|
// ? func_800E66C0(?);
|
||||||
// ? func_800E67C0(?);
|
s32 Audio_NextRandom(void);
|
||||||
// ? func_800E6818(?);
|
// ? func_800E6818(?);
|
||||||
// ? func_800E6840(?);
|
// ? func_800E6840(?);
|
||||||
void func_800E6880(void* mem, s32 size);
|
void func_800E6880(void* mem, s32 size);
|
||||||
|
@ -2247,7 +2247,7 @@ void func_800ED858(u8);
|
||||||
// ? func_800F28B4(?);
|
// ? func_800F28B4(?);
|
||||||
// ? func_800F29FC(?);
|
// ? func_800F29FC(?);
|
||||||
// ? func_800F2A04(?);
|
// ? func_800F2A04(?);
|
||||||
// ? func_800F2D6C(?);
|
void func_800F2D6C(u8*, u16);
|
||||||
// ? func_800F2E28(?);
|
// ? func_800F2E28(?);
|
||||||
// ? func_800F3054(?);
|
// ? func_800F3054(?);
|
||||||
// ? func_800F3188(?);
|
// ? func_800F3188(?);
|
||||||
|
@ -2256,7 +2256,7 @@ void func_800ED858(u8);
|
||||||
// ? func_800F35EC(?);
|
// ? func_800F35EC(?);
|
||||||
// ? func_800F37B8(?);
|
// ? func_800F37B8(?);
|
||||||
// ? func_800F3990(?);
|
// ? func_800F3990(?);
|
||||||
// ? func_800F3A08(?);
|
void func_800F3A08(u8, u8, u8);
|
||||||
// ? func_800F3ED4(?);
|
// ? func_800F3ED4(?);
|
||||||
void func_800F3F3C(u8);
|
void func_800F3F3C(u8);
|
||||||
// ? func_800F3F84(?);
|
// ? func_800F3F84(?);
|
||||||
|
@ -2313,36 +2313,41 @@ void func_800F711C();
|
||||||
// ? func_800F7170(?);
|
// ? func_800F7170(?);
|
||||||
// ? func_800F71BC(?);
|
// ? func_800F71BC(?);
|
||||||
void func_800F7260(u16);
|
void func_800F7260(u16);
|
||||||
// ? func_800F72B8(?);
|
void func_800F72B8(u8);
|
||||||
// ? func_800F731C(?);
|
void func_800F731C(u8);
|
||||||
void Audio_PlaySoundGeneral(u16 sfxId, Vec3f* a1, u32 a2, u32* a3, u32* a4, u32* a5);
|
void Audio_PlaySoundGeneral(u16 sfxId, Vec3f* a1, u8 a2, u32* a3, u32* a4, u32* a5);
|
||||||
// ? func_800F74E0(?);
|
// ? func_800F74E0(?);
|
||||||
// ? func_800F7680(?);
|
void func_800F7680(void);
|
||||||
// ? func_800F7B54(?);
|
void func_800F7B54(u8, u8);
|
||||||
// ? func_800F7CEC(?);
|
void func_800F7CEC(u8);
|
||||||
// ? func_800F8480(?);
|
void func_800F8480(u8);
|
||||||
// ? func_800F87A0(?);
|
void func_800F87A0(u8);
|
||||||
// ? func_800F8884(?);
|
void func_800F8884(u8, Vec3f*);
|
||||||
|
void func_800F89A0(u8, Vec3f*);
|
||||||
void func_800F89E8(Vec3f*);
|
void func_800F89E8(Vec3f*);
|
||||||
void func_800F8D04(u16 arg0);
|
void func_800F8A44(Vec3f*, u16);
|
||||||
// ? func_800F8D04(?);
|
void func_800F8BA0(u8, u16);
|
||||||
// ? func_800F8E3C(?);
|
void func_800F8D04(u32 sfxId);
|
||||||
// ? func_800F8F34(?);
|
void func_800F8E3C(void);
|
||||||
// ? func_800F8F88(?);
|
void func_800F8EA0(u8, u8, u16);
|
||||||
// ? func_800F8FF4(?);
|
void func_800F8F34(u8);
|
||||||
// ? func_800F905C(?);
|
void func_800F8F88(void);
|
||||||
|
u8 func_800F8FF4(u32 sfxId);
|
||||||
|
void func_800F905C(void);
|
||||||
// ? func_800F9280(?);
|
// ? func_800F9280(?);
|
||||||
// ? func_800F9474(?);
|
void func_800F9474(u8, u16);
|
||||||
// ? func_800F94FC(?);
|
void func_800F94FC(u32);
|
||||||
void Audio_SetBGM(u32 bgmID);
|
void Audio_SetBGM(u32 bgmId);
|
||||||
// ? func_800FA034(?);
|
void func_800FA034(void);
|
||||||
u16 func_800FA0B4(s32 a0);
|
u16 func_800FA0B4(u8 a0);
|
||||||
// ? func_800FA11C(?);
|
s32 func_800FA11C(u32, s32);
|
||||||
// ? func_800FA240(?);
|
void func_800FA174(u8);
|
||||||
// ? func_800FA3DC(?);
|
void func_800FA18C(u8, u8);
|
||||||
// ? func_800FAD34(?);
|
void func_800FA240(u8, u8, u8, u8);
|
||||||
// ? func_800FADF8(?);
|
void func_800FA3DC(void);
|
||||||
// ? func_800FAEB4(?);
|
u8 func_800FAD34(void);
|
||||||
|
void func_800FADF8(void);
|
||||||
|
void func_800FAEB4(void);
|
||||||
void GfxPrint_InitDlist(GfxPrint*);
|
void GfxPrint_InitDlist(GfxPrint*);
|
||||||
void GfxPrint_SetColor(GfxPrint*, u32, u32, u32, u32);
|
void GfxPrint_SetColor(GfxPrint*, u32, u32, u32, u32);
|
||||||
void GfxPrint_SetPosPx(GfxPrint*, s32, s32);
|
void GfxPrint_SetPosPx(GfxPrint*, s32, s32);
|
||||||
|
|
|
@ -612,8 +612,9 @@ extern s16 D_80130328[];
|
||||||
//extern ? D_80130500;
|
//extern ? D_80130500;
|
||||||
extern f32 D_80130510;
|
extern f32 D_80130510;
|
||||||
extern s32 D_80130514;
|
extern s32 D_80130514;
|
||||||
//extern ? D_80130570;
|
extern u8 D_80130570[8];
|
||||||
//extern ? D_80130578;
|
extern u8 D_80130578[4][7];
|
||||||
|
extern u8 D_80130594[4][7];
|
||||||
//extern ? D_801305B0;
|
//extern ? D_801305B0;
|
||||||
//extern ? D_801305B4;
|
//extern ? D_801305B4;
|
||||||
//extern ? D_801305B8;
|
//extern ? D_801305B8;
|
||||||
|
@ -752,22 +753,23 @@ extern u8* gScarecrowSpawnSongPtr;
|
||||||
//extern ? D_80131F68;
|
//extern ? D_80131F68;
|
||||||
//extern ? D_80131F6C;
|
//extern ? D_80131F6C;
|
||||||
//extern ? D_8013331C;
|
//extern ? D_8013331C;
|
||||||
//extern ? D_80133340;
|
extern u8 D_80133340[4];
|
||||||
//extern ? D_80133344;
|
//extern ? D_80133344;
|
||||||
//extern ? D_80133390;
|
extern s32 D_8013338C;
|
||||||
//extern ? D_80133398;
|
extern UNK_TYPE D_80133390[];
|
||||||
//extern ? D_801333A0;
|
extern UNK_TYPE D_80133398[];
|
||||||
//extern ? D_801333A4;
|
extern u8 D_801333A0;
|
||||||
//extern ? D_801333A8;
|
extern u8 D_801333A4;
|
||||||
//extern ? D_801333C4;
|
extern SoundBankEntry* gSoundBanks[7];
|
||||||
//extern ? D_801333CC;
|
extern u8 sBankSizes[7];
|
||||||
//extern ? D_801333D0;
|
extern u8 D_801333CC;
|
||||||
|
extern u16 D_801333D0;
|
||||||
extern Vec3f D_801333D4;
|
extern Vec3f D_801333D4;
|
||||||
extern u32 D_801333E0;
|
extern f32 D_801333E0;
|
||||||
extern u32 D_801333E8;
|
extern f32 D_801333E8;
|
||||||
//extern ? D_801333F0;
|
extern u8 D_801333F0;
|
||||||
//extern ? D_801333F4;
|
extern u8 D_801333F4;
|
||||||
//extern ? D_801333F8;
|
extern u8 D_801333F8;
|
||||||
//extern ? D_80133400;
|
//extern ? D_80133400;
|
||||||
//extern ? D_80133404;
|
//extern ? D_80133404;
|
||||||
//extern ? D_80133408;
|
//extern ? D_80133408;
|
||||||
|
@ -3529,17 +3531,24 @@ extern FaultThreadStruct gFaultStruct;
|
||||||
//extern ? D_8016BAB8;
|
//extern ? D_8016BAB8;
|
||||||
//extern ? D_8016BABC;
|
//extern ? D_8016BABC;
|
||||||
//extern ? D_8016BAC0;
|
//extern ? D_8016BAC0;
|
||||||
|
extern SoundBankEntry D_8016BAD0[9];
|
||||||
|
extern SoundBankEntry D_8016BC80[12];
|
||||||
|
extern SoundBankEntry D_8016BEC0[22];
|
||||||
|
extern SoundBankEntry D_8016C2E0[20];
|
||||||
|
extern SoundBankEntry D_8016C6A0[8];
|
||||||
|
extern SoundBankEntry D_8016C820[3];
|
||||||
|
extern SoundBankEntry D_8016C8B0[5];
|
||||||
//extern ? D_8016C9A0;
|
//extern ? D_8016C9A0;
|
||||||
//extern ? D_8016E1A0;
|
extern u8 D_8016E1A0[7];
|
||||||
//extern ? D_8016E1A8;
|
extern u8 D_8016E1A8[7];
|
||||||
//extern ? D_8016E1B0;
|
extern u8 D_8016E1B0[7];
|
||||||
//extern ? D_8016E1B8;
|
//extern ? D_8016E1B8;
|
||||||
//extern ? D_8016E260;
|
extern u8 D_8016E260;
|
||||||
//extern ? D_8016E264;
|
extern u8 D_8016E264[];
|
||||||
//extern ? D_8016E270;
|
//extern ? D_8016E270;
|
||||||
//extern ? D_8016E2E0;
|
extern u16 D_8016E2E0[];
|
||||||
//extern ? D_8016E2F8;
|
extern u16 D_8016E2F8[];
|
||||||
//extern ? D_8016E310;
|
extern u8 D_8016E310[];
|
||||||
//extern ? D_8016E320;
|
//extern ? D_8016E320;
|
||||||
//extern ? D_8016E348;
|
//extern ? D_8016E348;
|
||||||
//extern ? D_8016E350;
|
//extern ? D_8016E350;
|
||||||
|
|
|
@ -742,4 +742,47 @@ typedef struct {
|
||||||
/* 0x16 */ u16 unk_16;
|
/* 0x16 */ u16 unk_16;
|
||||||
} Reverb; // size >= 0x18
|
} Reverb; // size >= 0x18
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
/* 0x00 */ f32* posX;
|
||||||
|
/* 0x04 */ f32* posY;
|
||||||
|
/* 0x08 */ f32* posZ;
|
||||||
|
/* 0x0C */ u8 unk_C;
|
||||||
|
/* 0x10 */ u32* unk_10;
|
||||||
|
/* 0x14 */ u32* unk_14;
|
||||||
|
/* 0x18 */ u32* unk_18;
|
||||||
|
/* 0x1C */ f32 unk_1C;
|
||||||
|
/* 0x20 */ u32 unk_20;
|
||||||
|
/* 0x24 */ u8 unk_24;
|
||||||
|
/* 0x26 */ u16 unk_26;
|
||||||
|
/* 0x28 */ u16 unk_28; // "flag"
|
||||||
|
/* 0x2A */ u8 unk_2A;
|
||||||
|
/* 0x2B */ u8 unk_2B;
|
||||||
|
/* 0x2C */ u8 prev; // prev bank index
|
||||||
|
/* 0x2D */ u8 next; // next bank index
|
||||||
|
/* 0x2E */ u8 unk_2E;
|
||||||
|
/* 0x2F */ u8 unk_2F;
|
||||||
|
} SoundBankEntry; // size = 0x30
|
||||||
|
|
||||||
|
/*
|
||||||
|
* SFX IDs
|
||||||
|
*
|
||||||
|
* index 0000000111111111 observed in audio code
|
||||||
|
* & 200 0000001000000000 single bit
|
||||||
|
* & 400 0000010000000000 single bit
|
||||||
|
* & 800 0000100000000000 single bit, what we currently call SFX_FLAG
|
||||||
|
* & 600 0000011000000000 2 bits
|
||||||
|
* & A00 0000101000000000 2 bits
|
||||||
|
* & C00 0000110000000000 2 bits, observed in audio code
|
||||||
|
* & E00 0000111000000000 all 3 bits
|
||||||
|
* bank 1111000000000000 observed in audio code
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#define SFX_BANK_SHIFT(sfxId) ((sfxId >> 0xC) & 0xFF)
|
||||||
|
|
||||||
|
#define SFX_BANK_MASK(sfxId) (sfxId & 0xF000)
|
||||||
|
|
||||||
|
#define SFX_INDEX(sfxId) (sfxId & 0x01FF)
|
||||||
|
#define SFX_BANK(sfxId) SFX_BANK_SHIFT(SFX_BANK_MASK(sfxId))
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
1
spec
1
spec
|
@ -419,7 +419,6 @@ beginseg
|
||||||
include "build/src/code/code_800EC960.o"
|
include "build/src/code/code_800EC960.o"
|
||||||
include "build/data/code_800EC960.data.o"
|
include "build/data/code_800EC960.data.o"
|
||||||
include "build/src/code/code_800F7260.o"
|
include "build/src/code/code_800F7260.o"
|
||||||
include "build/data/code_800F7260.data.o"
|
|
||||||
include "build/src/code/code_800F9280.o"
|
include "build/src/code/code_800F9280.o"
|
||||||
include "build/data/code_800F9280.data.o"
|
include "build/data/code_800F9280.data.o"
|
||||||
include "build/data/code_800F9280.rodata.o"
|
include "build/data/code_800F9280.rodata.o"
|
||||||
|
|
|
@ -229,6 +229,6 @@
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/func_800E66C0.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/func_800E66C0.s")
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/func_800E67C0.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/Audio_NextRandom.s")
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/func_800E6818.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800E11F0/func_800E6818.s")
|
||||||
|
|
|
@ -1,40 +1,638 @@
|
||||||
#include "ultra64.h"
|
#include "ultra64.h"
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "vt.h"
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7260.s")
|
typedef struct {
|
||||||
|
/* 0x00 */ u16 sfxId;
|
||||||
|
/* 0x04 */ Vec3f* pos;
|
||||||
|
/* 0x08 */ u8 unk_8;
|
||||||
|
/* 0x0C */ u32* unk_C;
|
||||||
|
/* 0x10 */ u32* unk_10;
|
||||||
|
/* 0x14 */ u32* unk_14;
|
||||||
|
} Struct_800F738C; // size = 0x18
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F72B8.s")
|
typedef struct {
|
||||||
|
/* 0x00 */ f32 unk_0;
|
||||||
|
/* 0x04 */ f32 unk_4;
|
||||||
|
/* 0x08 */ f32 unk_8;
|
||||||
|
/* 0x0C */ u16 unk_C;
|
||||||
|
} Struct_800F8EA0; // size = 0x10
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F731C.s")
|
typedef struct {
|
||||||
|
u32 unk_0;
|
||||||
|
u8 unk_4;
|
||||||
|
} Struct_800F7CEC;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/Audio_PlaySoundGeneral.s")
|
typedef struct {
|
||||||
|
u8 unk_0;
|
||||||
|
u16 unk_2;
|
||||||
|
} Struct_8013331C;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F74E0.s")
|
u8 D_80133340[4] = {
|
||||||
|
0x53,
|
||||||
|
0x45,
|
||||||
|
0x00,
|
||||||
|
0x00,
|
||||||
|
};
|
||||||
|
|
||||||
|
char D_80133344[] = VT_COL(RED, WHITE) "<INAGAKI CHECK> dist over! flag:%04X ptr:%08X pos:%f-%f-%f" VT_RST "\n";
|
||||||
|
|
||||||
|
s32 D_8013338C = 0;
|
||||||
|
|
||||||
|
UNK_TYPE D_80133390[] = {
|
||||||
|
0x53455120,
|
||||||
|
0x48000000,
|
||||||
|
};
|
||||||
|
|
||||||
|
UNK_TYPE D_80133398[] = {
|
||||||
|
0x20202020,
|
||||||
|
0x4C000000,
|
||||||
|
};
|
||||||
|
|
||||||
|
u8 D_801333A0 = 0;
|
||||||
|
|
||||||
|
u8 D_801333A4 = 0;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Array of pointers to arrays of SoundBankEntry of sizes: 9, 12, 22, 20, 8, 3, 5
|
||||||
|
*
|
||||||
|
* 0 : Player Bank size 9
|
||||||
|
* 1 : Item Bank size 12
|
||||||
|
* 2 : Environment Bank size 22
|
||||||
|
* 3 : Enemy Bank size 20
|
||||||
|
* 4 : System Bank size 8
|
||||||
|
* 5 : Ocarina Bank size 3
|
||||||
|
* 6 : Voice Bank size 5
|
||||||
|
*/
|
||||||
|
SoundBankEntry* gSoundBanks[7] = {
|
||||||
|
D_8016BAD0, D_8016BC80, D_8016BEC0, D_8016C2E0, D_8016C6A0, D_8016C820, D_8016C8B0,
|
||||||
|
};
|
||||||
|
|
||||||
|
u8 sBankSizes[ARRAY_COUNT(gSoundBanks)] = {
|
||||||
|
ARRAY_COUNT(D_8016BAD0), ARRAY_COUNT(D_8016BC80), ARRAY_COUNT(D_8016BEC0), ARRAY_COUNT(D_8016C2E0),
|
||||||
|
ARRAY_COUNT(D_8016C6A0), ARRAY_COUNT(D_8016C820), ARRAY_COUNT(D_8016C8B0),
|
||||||
|
};
|
||||||
|
|
||||||
|
u8 D_801333CC = 0;
|
||||||
|
|
||||||
|
u16 D_801333D0 = 0;
|
||||||
|
|
||||||
|
Vec3f D_801333D4 = { 0.0f, 0.0f, 0.0f };
|
||||||
|
|
||||||
|
f32 D_801333E0 = 1.0f;
|
||||||
|
|
||||||
|
UNK_TYPE D_801333E4 = 0;
|
||||||
|
|
||||||
|
f32 D_801333E8 = 0.0f;
|
||||||
|
|
||||||
|
UNK_TYPE D_801333EC = 0;
|
||||||
|
|
||||||
|
u8 D_801333F0 = 0;
|
||||||
|
|
||||||
|
u8 D_801333F4 = 0;
|
||||||
|
|
||||||
|
u8 D_801333F8 = 0;
|
||||||
|
|
||||||
|
extern Struct_800F738C D_8016C9A0[];
|
||||||
|
extern Struct_800F7CEC D_8016E1B8[7][3]; // total size = 0xA8
|
||||||
|
extern Struct_800F8EA0 D_8016E270[];
|
||||||
|
extern Struct_8013331C* D_8013331C[9];
|
||||||
|
|
||||||
|
void func_800F7260(u16 arg0) {
|
||||||
|
u8 bankId;
|
||||||
|
|
||||||
|
for (bankId = 0; bankId < ARRAY_COUNT(gSoundBanks); bankId++) {
|
||||||
|
if (arg0 & 1) {
|
||||||
|
D_8016E264[bankId] = 1;
|
||||||
|
} else {
|
||||||
|
D_8016E264[bankId] = 0;
|
||||||
|
}
|
||||||
|
arg0 = (arg0 >> 1) & 0xFFFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F72B8(u8 arg0) {
|
||||||
|
D_801333D0 |= (1 << arg0);
|
||||||
|
func_800FA240(0, 2, 0x40, 0xF);
|
||||||
|
func_800FA240(3, 2, 0x40, 0xF);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F731C(u8 arg0) {
|
||||||
|
D_801333D0 &= ((1 << arg0) ^ 0xFFFF);
|
||||||
|
if (D_801333D0 == 0) {
|
||||||
|
func_800FA240(0, 2, 0x7F, 0xF);
|
||||||
|
func_800FA240(3, 2, 0x7F, 0xF);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Audio_PlaySoundGeneral(u16 sfxId, Vec3f* a1, u8 a2, u32* a3, u32* a4, u32* a5) {
|
||||||
|
u8 i;
|
||||||
|
Struct_800F738C* phi_v0;
|
||||||
|
|
||||||
|
if (D_8016E264[SFX_BANK_SHIFT(sfxId)] == 0) {
|
||||||
|
phi_v0 = &D_8016C9A0[D_801333A0];
|
||||||
|
if (D_801333F4 == 0) {
|
||||||
|
for (i = 0; i < 10; i++) {
|
||||||
|
if (sfxId == D_8016E2E0[i]) {
|
||||||
|
if (D_8016E310[i] == 0) {
|
||||||
|
sfxId = D_8016E2F8[i];
|
||||||
|
} else {
|
||||||
|
phi_v0->sfxId = D_8016E2F8[i];
|
||||||
|
phi_v0->pos = a1;
|
||||||
|
phi_v0->unk_8 = a2;
|
||||||
|
phi_v0->unk_C = a3;
|
||||||
|
phi_v0->unk_10 = a4;
|
||||||
|
phi_v0->unk_14 = a5;
|
||||||
|
D_801333A0++;
|
||||||
|
phi_v0 = &D_8016C9A0[D_801333A0];
|
||||||
|
}
|
||||||
|
i = 10;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
phi_v0->sfxId = sfxId;
|
||||||
|
phi_v0->pos = a1;
|
||||||
|
phi_v0->unk_8 = a2;
|
||||||
|
phi_v0->unk_C = a3;
|
||||||
|
phi_v0->unk_10 = a4;
|
||||||
|
phi_v0->unk_14 = a5;
|
||||||
|
D_801333A0++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F74E0(u8 arg0, SoundBankEntry* arg1) {
|
||||||
|
Struct_800F738C* entry;
|
||||||
|
s32 phi_a0;
|
||||||
|
u8 i = D_801333A4;
|
||||||
|
|
||||||
|
while (i != D_801333A0) {
|
||||||
|
phi_a0 = false;
|
||||||
|
entry = &D_8016C9A0[i];
|
||||||
|
switch (arg0) {
|
||||||
|
case 0:
|
||||||
|
if (SFX_BANK_MASK(entry->sfxId) == SFX_BANK_MASK(arg1->unk_28)) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
if (SFX_BANK_MASK(entry->sfxId) == SFX_BANK_MASK(arg1->unk_28) && (&entry->pos->x == arg1->posX)) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
if (&entry->pos->x == arg1->posX) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 3:
|
||||||
|
if (&entry->pos->x == arg1->posX && entry->sfxId == arg1->unk_28) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 4:
|
||||||
|
if (entry->unk_8 == arg1->unk_C && entry->sfxId == arg1->unk_28) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 5:
|
||||||
|
if (entry->sfxId == arg1->unk_28) {
|
||||||
|
phi_a0 = true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (phi_a0) {
|
||||||
|
entry->sfxId = 0;
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef NON_EQUIVALENT
|
||||||
|
// Mostly ok at the start, then runs into some reorderings near the assignments
|
||||||
|
// of temp_s0 and temp_a2, inducing regalloc throughout the rest
|
||||||
|
void func_800F7680(void) {
|
||||||
|
u8 sp43;
|
||||||
|
Struct_8013331C* temp_a2;
|
||||||
|
SoundBankEntry* temp_s0;
|
||||||
|
s32 phi_s5;
|
||||||
|
Struct_800F738C* phi_t2;
|
||||||
|
u8 phi_a1;
|
||||||
|
u8 phi_t4;
|
||||||
|
s32 phi_s1;
|
||||||
|
|
||||||
|
phi_t2 = &D_8016C9A0[D_801333A4];
|
||||||
|
phi_s1 = 0x80;
|
||||||
|
if (phi_t2->sfxId == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
phi_s5 = SFX_BANK(phi_t2->sfxId);
|
||||||
|
if ((1 << phi_s5) & D_801333F0) {
|
||||||
|
func_800F2D6C(D_80133340, phi_t2->sfxId);
|
||||||
|
phi_s5 = SFX_BANK(phi_t2->sfxId);
|
||||||
|
}
|
||||||
|
phi_t4 = 0;
|
||||||
|
phi_a1 = gSoundBanks[phi_s5][0].next;
|
||||||
|
while (phi_a1 != 0xFF && phi_a1 != 0) {
|
||||||
|
if (gSoundBanks[phi_s5][phi_a1].posX == &phi_t2->pos->x) {
|
||||||
|
temp_a2 = &D_8013331C[SFX_BANK_SHIFT(phi_t2->sfxId)][SFX_INDEX(phi_t2->sfxId)];
|
||||||
|
temp_s0 = &gSoundBanks[phi_s5][phi_a1];
|
||||||
|
if (!(temp_a2->unk_2 & 0x20) || temp_s0->unk_24 != temp_a2->unk_0) {
|
||||||
|
if (temp_s0->unk_28 == phi_t2->sfxId) {
|
||||||
|
phi_t4 = D_80130594[phi_s5][D_801333CC];
|
||||||
|
} else {
|
||||||
|
//!@bug possibly uninitialized sp43 ? confirm when matching
|
||||||
|
if (phi_t4 == 0) {
|
||||||
|
phi_s1 = phi_a1;
|
||||||
|
sp43 = D_8013331C[SFX_BANK_SHIFT(temp_s0->unk_28)][SFX_INDEX(temp_s0->unk_28)].unk_0;
|
||||||
|
} else if (temp_s0->unk_24 < sp43) {
|
||||||
|
if (1) {}
|
||||||
|
if (1) {}
|
||||||
|
if (1) {}
|
||||||
|
if (1) {}
|
||||||
|
if (1) {}
|
||||||
|
if (1) {}
|
||||||
|
phi_s1 = phi_a1;
|
||||||
|
sp43 = D_8013331C[SFX_BANK_SHIFT(temp_s0->unk_28)][SFX_INDEX(temp_s0->unk_28)].unk_0;
|
||||||
|
}
|
||||||
|
phi_t4++;
|
||||||
|
if (phi_t4 == D_80130594[phi_s5][D_801333CC]) {
|
||||||
|
phi_a1 = (temp_a2->unk_0 >= sp43) ? phi_s1 : 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (D_80130594[phi_s5][D_801333CC] == phi_t4) {
|
||||||
|
if ((phi_t2->sfxId & 0xC00) || (temp_a2->unk_2 & 4) || phi_a1 == phi_s1) {
|
||||||
|
if ((gSoundBanks[phi_s5][phi_a1].unk_26 & 8) && gSoundBanks[phi_s5][phi_a1].unk_2A != 1) {
|
||||||
|
func_800F731C(gSoundBanks[phi_s5][phi_a1].unk_2E);
|
||||||
|
}
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_C = phi_t2->unk_8;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_28 = phi_t2->sfxId;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_2A = 1;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_2B = 2;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_10 = phi_t2->unk_C;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_14 = phi_t2->unk_10;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_18 = phi_t2->unk_14;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_26 = temp_a2->unk_2;
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_24 = temp_a2->unk_0;
|
||||||
|
} else if (gSoundBanks[phi_s5][phi_a1].unk_2A == 5) {
|
||||||
|
gSoundBanks[phi_s5][phi_a1].unk_2A = 4;
|
||||||
|
}
|
||||||
|
phi_a1 = 0;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (phi_a1 != 0) {
|
||||||
|
phi_a1 = gSoundBanks[phi_s5][phi_a1].next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (gSoundBanks[phi_s5][D_8016E1A8[phi_s5]].next != 0xFF && phi_a1 != 0) {
|
||||||
|
phi_a1 = D_8016E1A8[phi_s5];
|
||||||
|
temp_s0 = &gSoundBanks[phi_s5][phi_a1];
|
||||||
|
temp_s0->posX = &phi_t2->pos->x;
|
||||||
|
temp_s0->posY = &phi_t2->pos->y;
|
||||||
|
temp_s0->posZ = &phi_t2->pos->z;
|
||||||
|
temp_s0->unk_C = phi_t2->unk_8;
|
||||||
|
temp_s0->unk_10 = phi_t2->unk_C;
|
||||||
|
temp_s0->unk_14 = phi_t2->unk_10;
|
||||||
|
temp_s0->unk_18 = phi_t2->unk_14;
|
||||||
|
temp_a2 = &D_8013331C[SFX_BANK_SHIFT(phi_t2->sfxId)][SFX_INDEX(phi_t2->sfxId)];
|
||||||
|
temp_s0->unk_26 = temp_a2->unk_2;
|
||||||
|
temp_s0->unk_24 = temp_a2->unk_0;
|
||||||
|
temp_s0->unk_28 = phi_t2->sfxId;
|
||||||
|
temp_s0->unk_2A = 1;
|
||||||
|
temp_s0->unk_2B = 2;
|
||||||
|
temp_s0->prev = D_8016E1A0[phi_s5];
|
||||||
|
gSoundBanks[phi_s5][D_8016E1A0[phi_s5]].next = D_8016E1A8[phi_s5];
|
||||||
|
D_8016E1A0[phi_s5] = D_8016E1A8[phi_s5];
|
||||||
|
D_8016E1A8[phi_s5] = gSoundBanks[phi_s5][D_8016E1A8[phi_s5]].next;
|
||||||
|
gSoundBanks[phi_s5][D_8016E1A8[phi_s5]].prev = 0xFF;
|
||||||
|
temp_s0->next = 0xFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
void func_800F7680(void);
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7680.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7680.s")
|
||||||
|
#endif
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7B54.s")
|
void func_800F7B54(u8 bankId, u8 bankIndex) {
|
||||||
|
SoundBankEntry* entry = &gSoundBanks[bankId][bankIndex];
|
||||||
|
u8 i;
|
||||||
|
|
||||||
|
if (entry->unk_26 & 8) {
|
||||||
|
func_800F731C(entry->unk_2E);
|
||||||
|
}
|
||||||
|
if (bankIndex == D_8016E1A0[bankId]) {
|
||||||
|
D_8016E1A0[bankId] = entry->prev;
|
||||||
|
} else {
|
||||||
|
gSoundBanks[bankId][entry->next].prev = entry->prev;
|
||||||
|
}
|
||||||
|
gSoundBanks[bankId][entry->prev].next = entry->next;
|
||||||
|
entry->next = D_8016E1A8[bankId];
|
||||||
|
entry->prev = 0xFF;
|
||||||
|
gSoundBanks[bankId][D_8016E1A8[bankId]].prev = bankIndex;
|
||||||
|
D_8016E1A8[bankId] = bankIndex;
|
||||||
|
entry->unk_2A = 0;
|
||||||
|
|
||||||
|
for (i = 0; i < D_80130578[D_801333CC][bankId]; i++) {
|
||||||
|
if (D_8016E1B8[bankId][i].unk_4 == bankIndex) {
|
||||||
|
D_8016E1B8[bankId][i].unk_4 = 0xFF;
|
||||||
|
i = D_80130578[D_801333CC][bankId];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7CEC.s")
|
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F7CEC.s")
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8480.s")
|
void func_800F8480(u8 bankId) {
|
||||||
|
u8 bankIndex;
|
||||||
|
SequenceChannel* seqChannel;
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 i;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F87A0.s")
|
for (i = 0; i < D_80130578[D_801333CC][bankId]; i++) {
|
||||||
|
bankIndex = D_8016E1B8[bankId][i].unk_4;
|
||||||
|
if (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[bankId][bankIndex];
|
||||||
|
seqChannel = gAudioContext.gSequencePlayers[2].channels[D_8016E260];
|
||||||
|
if (entry->unk_2A == 2) {
|
||||||
|
entry->unk_2E = D_8016E260;
|
||||||
|
if (entry->unk_26 & 8) {
|
||||||
|
func_800F72B8(D_8016E260);
|
||||||
|
}
|
||||||
|
if (entry->unk_26 & 0xC0) {
|
||||||
|
switch (entry->unk_26 & 0xC0) {
|
||||||
|
case 0x40:
|
||||||
|
entry->unk_2F = Audio_NextRandom() & 0xF;
|
||||||
|
break;
|
||||||
|
case 0x80:
|
||||||
|
entry->unk_2F = Audio_NextRandom() & 0x1F;
|
||||||
|
break;
|
||||||
|
case 0xC0:
|
||||||
|
entry->unk_2F = Audio_NextRandom() & 0x3F;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
entry->unk_2F = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
func_800F3A08(bankId, bankIndex, D_8016E260);
|
||||||
|
func_800E5B20(0x06020000 | ((D_8016E260 & 0xFF) << 8), 1);
|
||||||
|
func_800E5B20(0x06020000 | ((D_8016E260 & 0xFF) << 8) | 4, entry->unk_28 & 0xFF);
|
||||||
|
if (D_80130570[bankId] != 0) {
|
||||||
|
func_800E5B20(0x06020000 | ((D_8016E260 & 0xFF) << 8) | 5, (entry->unk_28 & 0x100) >> 8);
|
||||||
|
}
|
||||||
|
if (entry->unk_28 & 0xC00) {
|
||||||
|
entry->unk_2A = 4;
|
||||||
|
} else {
|
||||||
|
entry->unk_2A = 5;
|
||||||
|
}
|
||||||
|
} else if ((u8)seqChannel->soundScriptIO[1] == 0xFF) {
|
||||||
|
func_800F7B54(bankId, bankIndex);
|
||||||
|
} else if (entry->unk_2A == 3) {
|
||||||
|
func_800F3A08(bankId, bankIndex, D_8016E260);
|
||||||
|
if (entry->unk_28 & 0xC00) {
|
||||||
|
entry->unk_2A = 4;
|
||||||
|
} else {
|
||||||
|
entry->unk_2A = 5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
D_8016E260++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8884.s")
|
void func_800F87A0(u8 bankId) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
s32 pad;
|
||||||
|
SoundBankEntry sp48;
|
||||||
|
u8 bankIndex = gSoundBanks[bankId][0].next;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F89E8.s")
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[bankId][bankIndex];
|
||||||
|
if (entry->unk_2A >= 3) {
|
||||||
|
func_800E5B20(0x06020000 | ((entry->unk_2E & 0xFF) << 8), 0);
|
||||||
|
}
|
||||||
|
if (entry->unk_2A != 0) {
|
||||||
|
func_800F7B54(bankId, bankIndex);
|
||||||
|
}
|
||||||
|
bankIndex = gSoundBanks[bankId][0].next;
|
||||||
|
}
|
||||||
|
sp48.unk_28 = bankId << 0xC;
|
||||||
|
func_800F74E0(0, &sp48);
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8A44.s")
|
void func_800F8884(u8 bankId, Vec3f* pos) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 bankIndex = gSoundBanks[bankId][0].next;
|
||||||
|
u8 bankIndex2 = 0;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8D04.s")
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[bankId][bankIndex];
|
||||||
|
if (entry->posX == &pos->x) {
|
||||||
|
if (entry->unk_2A >= 3) {
|
||||||
|
func_800E5B20(0x06020000 | ((entry->unk_2E & 0xFF) << 8), 0);
|
||||||
|
}
|
||||||
|
if (entry->unk_2A != 0) {
|
||||||
|
func_800F7B54(bankId, bankIndex);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
bankIndex2 = bankIndex;
|
||||||
|
}
|
||||||
|
bankIndex = gSoundBanks[bankId][bankIndex2].next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8E3C.s")
|
void func_800F89A0(u8 bankId, Vec3f* pos) {
|
||||||
|
SoundBankEntry sp18;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8F34.s")
|
func_800F8884(bankId, pos);
|
||||||
|
sp18.unk_28 = bankId << 0xC;
|
||||||
|
sp18.posX = &pos->x;
|
||||||
|
func_800F74E0(1, &sp18);
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8F88.s")
|
void func_800F89E8(Vec3f* pos) {
|
||||||
|
u8 i;
|
||||||
|
SoundBankEntry sp24;
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F8FF4.s")
|
for (i = 0; i < ARRAY_COUNT(gSoundBanks); i++) {
|
||||||
|
func_800F8884(i, pos);
|
||||||
|
}
|
||||||
|
sp24.posX = &pos->x;
|
||||||
|
func_800F74E0(2, &sp24);
|
||||||
|
}
|
||||||
|
|
||||||
#pragma GLOBAL_ASM("asm/non_matchings/code/code_800F7260/func_800F905C.s")
|
void func_800F8A44(Vec3f* pos, u16 sfxId) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 bankIndex = gSoundBanks[SFX_BANK(sfxId)][0].next;
|
||||||
|
u8 bankIndex2 = 0;
|
||||||
|
SoundBankEntry sp50;
|
||||||
|
|
||||||
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[SFX_BANK(sfxId)][bankIndex];
|
||||||
|
if (entry->posX == &pos->x && entry->unk_28 == sfxId) {
|
||||||
|
if (entry->unk_2A >= 3) {
|
||||||
|
func_800E5B20(0x06020000 | ((entry->unk_2E & 0xFF) << 8), 0);
|
||||||
|
}
|
||||||
|
if (entry->unk_2A != 0) {
|
||||||
|
func_800F7B54(SFX_BANK(sfxId), bankIndex);
|
||||||
|
}
|
||||||
|
bankIndex = 0xFF;
|
||||||
|
} else {
|
||||||
|
bankIndex2 = bankIndex;
|
||||||
|
}
|
||||||
|
if (bankIndex != 0xFF) {
|
||||||
|
bankIndex = gSoundBanks[SFX_BANK(sfxId)][bankIndex2].next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sp50.posX = &pos->x;
|
||||||
|
sp50.unk_28 = sfxId;
|
||||||
|
func_800F74E0(3, &sp50);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8BA0(u8 arg0, u16 sfxId) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 bankIndex = gSoundBanks[SFX_BANK(sfxId)][0].next;
|
||||||
|
u8 bankIndex2 = 0;
|
||||||
|
SoundBankEntry sp58;
|
||||||
|
|
||||||
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[SFX_BANK(sfxId)][bankIndex];
|
||||||
|
if (entry->unk_C == arg0 && entry->unk_28 == sfxId) {
|
||||||
|
if (entry->unk_2A >= 3) {
|
||||||
|
func_800E5B20(0x06020000 | ((entry->unk_2E & 0xFF) << 8), 0);
|
||||||
|
}
|
||||||
|
if (entry->unk_2A != 0) {
|
||||||
|
func_800F7B54(SFX_BANK(sfxId), bankIndex);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
bankIndex2 = bankIndex;
|
||||||
|
}
|
||||||
|
if (bankIndex != 0xFF) {
|
||||||
|
bankIndex = gSoundBanks[SFX_BANK(sfxId)][bankIndex2].next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
sp58.unk_C = arg0;
|
||||||
|
sp58.unk_28 = sfxId;
|
||||||
|
func_800F74E0(4, &sp58);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8D04(u32 sfxId) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 bankIndex = gSoundBanks[SFX_BANK(sfxId)][0].next;
|
||||||
|
u8 bankIndex2 = 0;
|
||||||
|
SoundBankEntry sp50;
|
||||||
|
|
||||||
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[SFX_BANK(sfxId)][bankIndex];
|
||||||
|
if (entry->unk_28 == sfxId) {
|
||||||
|
if (entry->unk_2A >= 3) {
|
||||||
|
func_800E5B20(0x06020000 | ((entry->unk_2E & 0xFF) << 8), 0);
|
||||||
|
}
|
||||||
|
if (entry->unk_2A != 0) {
|
||||||
|
func_800F7B54(SFX_BANK(sfxId), bankIndex);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
bankIndex2 = bankIndex;
|
||||||
|
}
|
||||||
|
bankIndex = gSoundBanks[SFX_BANK(sfxId)][bankIndex2].next;
|
||||||
|
}
|
||||||
|
sp50.unk_28 = sfxId;
|
||||||
|
func_800F74E0(5, &sp50);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8E3C(void) {
|
||||||
|
while (D_801333A0 != D_801333A4) {
|
||||||
|
func_800F7680();
|
||||||
|
D_801333A4++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8EA0(u8 arg0, u8 arg1, u16 arg2) {
|
||||||
|
if (arg2 == 0) {
|
||||||
|
arg2++;
|
||||||
|
}
|
||||||
|
D_8016E270[arg0].unk_4 = arg1 / 127.0f;
|
||||||
|
D_8016E270[arg0].unk_C = arg2;
|
||||||
|
D_8016E270[arg0].unk_8 = ((D_8016E270[arg0].unk_0 - D_8016E270[arg0].unk_4) / arg2);
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8F34(u8 arg0) {
|
||||||
|
if (D_8016E270[arg0].unk_C != 0) {
|
||||||
|
D_8016E270[arg0].unk_C--;
|
||||||
|
if (D_8016E270[arg0].unk_C != 0) {
|
||||||
|
D_8016E270[arg0].unk_0 -= D_8016E270[arg0].unk_8;
|
||||||
|
} else {
|
||||||
|
D_8016E270[arg0].unk_0 = D_8016E270[arg0].unk_4;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F8F88(void) {
|
||||||
|
u8 i;
|
||||||
|
|
||||||
|
if (IS_SEQUENCE_CHANNEL_VALID(gAudioContext.gSequencePlayers[2].channels[0])) {
|
||||||
|
D_8016E260 = 0;
|
||||||
|
for (i = 0; i < ARRAY_COUNT(gSoundBanks); i++) {
|
||||||
|
func_800F7CEC(i);
|
||||||
|
func_800F8480(i);
|
||||||
|
func_800F8F34(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
u8 func_800F8FF4(u32 sfxId) {
|
||||||
|
SoundBankEntry* entry;
|
||||||
|
u8 bankIndex = gSoundBanks[SFX_BANK(sfxId)][0].next;
|
||||||
|
|
||||||
|
while (bankIndex != 0xFF) {
|
||||||
|
entry = &gSoundBanks[SFX_BANK(sfxId)][bankIndex];
|
||||||
|
if (entry->unk_28 == sfxId) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
bankIndex = entry->next;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void func_800F905C(void) {
|
||||||
|
u8 bankId;
|
||||||
|
u8 i;
|
||||||
|
u8 bankIndex;
|
||||||
|
|
||||||
|
D_801333A0 = 0;
|
||||||
|
D_801333A4 = 0;
|
||||||
|
D_801333D0 = 0;
|
||||||
|
for (bankId = 0; bankId < ARRAY_COUNT(gSoundBanks); bankId++) {
|
||||||
|
D_8016E1A0[bankId] = 0;
|
||||||
|
D_8016E1A8[bankId] = 1;
|
||||||
|
D_8016E1B0[bankId] = 0;
|
||||||
|
D_8016E264[bankId] = 0;
|
||||||
|
D_8016E270[bankId].unk_0 = 1.0f;
|
||||||
|
D_8016E270[bankId].unk_C = 0;
|
||||||
|
}
|
||||||
|
for (bankId = 0; bankId < ARRAY_COUNT(gSoundBanks); bankId++) {
|
||||||
|
for (i = 0; i < 3; i++) {
|
||||||
|
D_8016E1B8[bankId][i].unk_4 = 0xFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (bankId = 0; bankId < ARRAY_COUNT(gSoundBanks); bankId++) {
|
||||||
|
gSoundBanks[bankId][0].prev = 0xFF;
|
||||||
|
gSoundBanks[bankId][0].next = 0xFF;
|
||||||
|
for (i = 1; i < sBankSizes[bankId] - 1; i++) {
|
||||||
|
gSoundBanks[bankId][i].prev = i - 1;
|
||||||
|
gSoundBanks[bankId][i].next = i + 1;
|
||||||
|
}
|
||||||
|
gSoundBanks[bankId][i].prev = i - 1;
|
||||||
|
gSoundBanks[bankId][i].next = 0xFF;
|
||||||
|
}
|
||||||
|
if (D_801333F8 == 0) {
|
||||||
|
for (bankId = 0; bankId < 10; bankId++) {
|
||||||
|
D_8016E2E0[bankId] = 0;
|
||||||
|
D_8016E2F8[bankId] = 0;
|
||||||
|
D_8016E310[bankId] = 0;
|
||||||
|
}
|
||||||
|
D_801333F8++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -1341,7 +1341,7 @@ void func_808326F0(Player* this) {
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
for (i = 0; i < 4; i++) {
|
for (i = 0; i < 4; i++) {
|
||||||
func_800F8D04(*entry + this->ageProperties->unk_92);
|
func_800F8D04((u16)(*entry + this->ageProperties->unk_92));
|
||||||
entry++;
|
entry++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue