mirror of https://github.com/zeldaret/oot.git
86 lines
4.0 KiB
ArmAsm
86 lines
4.0 KiB
ArmAsm
glabel func_800E3AC8
|
|
/* B5AC68 800E3AC8 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* B5AC6C 800E3ACC 3C028017 */ lui $v0, %hi(gAudioContext) # $v0, 0x8017
|
|
/* B5AC70 800E3AD0 3C038017 */ lui $v1, %hi(gAudioContext+0x580) # $v1, 0x8017
|
|
/* B5AC74 800E3AD4 AFBF0014 */ sw $ra, 0x14($sp)
|
|
/* B5AC78 800E3AD8 AFA40020 */ sw $a0, 0x20($sp)
|
|
/* B5AC7C 800E3ADC 2463F700 */ addiu $v1, %lo(gAudioContext+0x580) # addiu $v1, $v1, -0x900
|
|
/* B5AC80 800E3AE0 2442F180 */ addiu $v0, %lo(gAudioContext) # addiu $v0, $v0, -0xe80
|
|
/* B5AC84 800E3AE4 804E1770 */ lb $t6, 0x1770($v0)
|
|
.L800E3AE8:
|
|
/* B5AC88 800E3AE8 55C00004 */ bnezl $t6, .L800E3AFC
|
|
/* B5AC8C 800E3AEC 24420058 */ addiu $v0, $v0, 0x58
|
|
/* B5AC90 800E3AF0 10000005 */ b .L800E3B08
|
|
/* B5AC94 800E3AF4 24431770 */ addiu $v1, $v0, 0x1770
|
|
/* B5AC98 800E3AF8 24420058 */ addiu $v0, $v0, 0x58
|
|
.L800E3AFC:
|
|
/* B5AC9C 800E3AFC 5443FFFA */ bnel $v0, $v1, .L800E3AE8
|
|
/* B5ACA0 800E3B00 804E1770 */ lb $t6, 0x1770($v0)
|
|
/* B5ACA4 800E3B04 8FA3001C */ lw $v1, 0x1c($sp)
|
|
.L800E3B08:
|
|
/* B5ACA8 800E3B08 3C0F8017 */ lui $t7, %hi(gAudioContext+0x580) # $t7, 0x8017
|
|
/* B5ACAC 800E3B0C 25EFF700 */ addiu $t7, %lo(gAudioContext+0x580) # addiu $t7, $t7, -0x900
|
|
/* B5ACB0 800E3B10 144F0003 */ bne $v0, $t7, .L800E3B20
|
|
/* B5ACB4 800E3B14 8FA40030 */ lw $a0, 0x30($sp)
|
|
/* B5ACB8 800E3B18 10000030 */ b .L800E3BDC
|
|
/* B5ACBC 800E3B1C 00001025 */ move $v0, $zero
|
|
.L800E3B20:
|
|
/* B5ACC0 800E3B20 24020001 */ li $v0, 1
|
|
/* B5ACC4 800E3B24 A0620000 */ sb $v0, ($v1)
|
|
/* B5ACC8 800E3B28 8FB80020 */ lw $t8, 0x20($sp)
|
|
/* B5ACCC 800E3B2C AC650004 */ sw $a1, 4($v1)
|
|
/* B5ACD0 800E3B30 AC65000C */ sw $a1, 0xc($v1)
|
|
/* B5ACD4 800E3B34 AC660010 */ sw $a2, 0x10($v1)
|
|
/* B5ACD8 800E3B38 14800004 */ bnez $a0, .L800E3B4C
|
|
/* B5ACDC 800E3B3C AC780008 */ sw $t8, 8($v1)
|
|
/* B5ACE0 800E3B40 24191000 */ li $t9, 4096
|
|
/* B5ACE4 800E3B44 10000018 */ b .L800E3BA8
|
|
/* B5ACE8 800E3B48 AC790014 */ sw $t9, 0x14($v1)
|
|
.L800E3B4C:
|
|
/* B5ACEC 800E3B4C 14820003 */ bne $a0, $v0, .L800E3B5C
|
|
/* B5ACF0 800E3B50 00000000 */ nop
|
|
/* B5ACF4 800E3B54 10000014 */ b .L800E3BA8
|
|
/* B5ACF8 800E3B58 AC660014 */ sw $a2, 0x14($v1)
|
|
.L800E3B5C:
|
|
/* B5ACFC 800E3B5C 00C4001A */ div $zero, $a2, $a0
|
|
/* B5AD00 800E3B60 14800002 */ bnez $a0, .L800E3B6C
|
|
/* B5AD04 800E3B64 00000000 */ nop
|
|
/* B5AD08 800E3B68 0007000D */ break 7
|
|
.L800E3B6C:
|
|
/* B5AD0C 800E3B6C 2401FFFF */ li $at, -1
|
|
/* B5AD10 800E3B70 14810004 */ bne $a0, $at, .L800E3B84
|
|
/* B5AD14 800E3B74 3C018000 */ lui $at, 0x8000
|
|
/* B5AD18 800E3B78 14C10002 */ bne $a2, $at, .L800E3B84
|
|
/* B5AD1C 800E3B7C 00000000 */ nop
|
|
/* B5AD20 800E3B80 0006000D */ break 6
|
|
.L800E3B84:
|
|
/* B5AD24 800E3B84 00001012 */ mflo $v0
|
|
/* B5AD28 800E3B88 244200FF */ addiu $v0, $v0, 0xff
|
|
/* B5AD2C 800E3B8C 2401FF00 */ li $at, -256
|
|
/* B5AD30 800E3B90 00411024 */ and $v0, $v0, $at
|
|
/* B5AD34 800E3B94 2C410100 */ sltiu $at, $v0, 0x100
|
|
/* B5AD38 800E3B98 10200003 */ beqz $at, .L800E3BA8
|
|
/* B5AD3C 800E3B9C AC620014 */ sw $v0, 0x14($v1)
|
|
/* B5AD40 800E3BA0 24080100 */ li $t0, 256
|
|
/* B5AD44 800E3BA4 AC680014 */ sw $t0, 0x14($v1)
|
|
.L800E3BA8:
|
|
/* B5AD48 800E3BA8 8FA90034 */ lw $t1, 0x34($sp)
|
|
/* B5AD4C 800E3BAC 240A0003 */ li $t2, 3
|
|
/* B5AD50 800E3BB0 A06A0001 */ sb $t2, 1($v1)
|
|
/* B5AD54 800E3BB4 A0670002 */ sb $a3, 2($v1)
|
|
/* B5AD58 800E3BB8 AC690020 */ sw $t1, 0x20($v1)
|
|
/* B5AD5C 800E3BBC 8FAB0038 */ lw $t3, 0x38($sp)
|
|
/* B5AD60 800E3BC0 24640024 */ addiu $a0, $v1, 0x24
|
|
/* B5AD64 800E3BC4 2465003C */ addiu $a1, $v1, 0x3c
|
|
/* B5AD68 800E3BC8 AC6B001C */ sw $t3, 0x1c($v1)
|
|
/* B5AD6C 800E3BCC AFA3001C */ sw $v1, 0x1c($sp)
|
|
/* B5AD70 800E3BD0 0C001874 */ jal osCreateMesgQueue
|
|
/* B5AD74 800E3BD4 24060001 */ li $a2, 1
|
|
/* B5AD78 800E3BD8 8FA2001C */ lw $v0, 0x1c($sp)
|
|
.L800E3BDC:
|
|
/* B5AD7C 800E3BDC 8FBF0014 */ lw $ra, 0x14($sp)
|
|
/* B5AD80 800E3BE0 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* B5AD84 800E3BE4 03E00008 */ jr $ra
|
|
/* B5AD88 800E3BE8 00000000 */ nop
|
|
|