oot/asm/non_matchings/code/code_800EC960/func_800F4414.s

59 lines
3.1 KiB
ArmAsm

glabel func_800F4414
/* B6B5B4 800F4414 3C038013 */ lui $v1, %hi(D_801305B8)
/* B6B5B8 800F4418 246305B8 */ addiu $v1, %lo(D_801305B8) # addiu $v1, $v1, 0x5b8
/* B6B5BC 800F441C 806E0000 */ lb $t6, ($v1)
/* B6B5C0 800F4420 27BDFFE0 */ addiu $sp, $sp, -0x20
/* B6B5C4 800F4424 44866000 */ mtc1 $a2, $f12
/* B6B5C8 800F4428 25CFFFFF */ addiu $t7, $t6, -1
/* B6B5CC 800F442C A06F0000 */ sb $t7, ($v1)
/* B6B5D0 800F4430 80780000 */ lb $t8, ($v1)
/* B6B5D4 800F4434 AFBF001C */ sw $ra, 0x1c($sp)
/* B6B5D8 800F4438 AFA40020 */ sw $a0, 0x20($sp)
/* B6B5DC 800F443C 17000027 */ bnez $t8, .L800F44DC
/* B6B5E0 800F4440 AFA50024 */ sw $a1, 0x24($sp)
/* B6B5E4 800F4444 3C198013 */ lui $t9, %hi(D_801333E0) # $t9, 0x8013
/* B6B5E8 800F4448 3C088013 */ lui $t0, %hi(D_801333E8) # $t0, 0x8013
/* B6B5EC 800F444C 250833E8 */ addiu $t0, %lo(D_801333E8) # addiu $t0, $t0, 0x33e8
/* B6B5F0 800F4450 273933E0 */ addiu $t9, %lo(D_801333E0) # addiu $t9, $t9, 0x33e0
/* B6B5F4 800F4454 3C078017 */ lui $a3, %hi(D_8016B7D8) # $a3, 0x8017
/* B6B5F8 800F4458 24E7B7D8 */ addiu $a3, %lo(D_8016B7D8) # addiu $a3, $a3, -0x4828
/* B6B5FC 800F445C AFB90010 */ sw $t9, 0x10($sp)
/* B6B600 800F4460 AFA80014 */ sw $t0, 0x14($sp)
/* B6B604 800F4464 97A40026 */ lhu $a0, 0x26($sp)
/* B6B608 800F4468 8FA50020 */ lw $a1, 0x20($sp)
/* B6B60C 800F446C 24060004 */ li $a2, 4
/* B6B610 800F4470 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* B6B614 800F4474 E7AC0028 */ swc1 $f12, 0x28($sp)
/* B6B618 800F4478 3C014000 */ li $at, 0x40000000 # 0.000000
/* B6B61C 800F447C 44810000 */ mtc1 $at, $f0
/* B6B620 800F4480 C7AC0028 */ lwc1 $f12, 0x28($sp)
/* B6B624 800F4484 3C038013 */ lui $v1, %hi(D_801305B8) # $v1, 0x8013
/* B6B628 800F4488 246305B8 */ addiu $v1, %lo(D_801305B8) # addiu $v1, $v1, 0x5b8
/* B6B62C 800F448C 460C003C */ c.lt.s $f0, $f12
/* B6B630 800F4490 3C028013 */ lui $v0, %hi(D_801305C0) # $v0, 0x8013
/* B6B634 800F4494 3C098013 */ lui $t1, %hi(D_801305BC) # $t1, 0x8013
/* B6B638 800F4498 45000002 */ bc1f .L800F44A4
/* B6B63C 800F449C 00000000 */ nop
/* B6B640 800F44A0 46000306 */ mov.s $f12, $f0
.L800F44A4:
/* B6B644 800F44A4 804205C0 */ lb $v0, %lo(D_801305C0)($v0)
/* B6B648 800F44A8 812905BC */ lb $t1, %lo(D_801305BC)($t1)
/* B6B64C 800F44AC 3C013F80 */ li $at, 0x3F800000 # 0.000000
/* B6B650 800F44B0 44814000 */ mtc1 $at, $f8
/* B6B654 800F44B4 00495023 */ subu $t2, $v0, $t1
/* B6B658 800F44B8 448A2000 */ mtc1 $t2, $f4
/* B6B65C 800F44BC 460C4281 */ sub.s $f10, $f8, $f12
/* B6B660 800F44C0 468021A0 */ cvt.s.w $f6, $f4
/* B6B664 800F44C4 460A3402 */ mul.s $f16, $f6, $f10
/* B6B668 800F44C8 4600848D */ trunc.w.s $f18, $f16
/* B6B66C 800F44CC 440E9000 */ mfc1 $t6, $f18
/* B6B670 800F44D0 00000000 */ nop
/* B6B674 800F44D4 01C27821 */ addu $t7, $t6, $v0
/* B6B678 800F44D8 A06F0000 */ sb $t7, ($v1)
.L800F44DC:
/* B6B67C 800F44DC 8FBF001C */ lw $ra, 0x1c($sp)
/* B6B680 800F44E0 27BD0020 */ addiu $sp, $sp, 0x20
/* B6B684 800F44E4 03E00008 */ jr $ra
/* B6B688 800F44E8 00000000 */ nop