From 8510fd6b69eb5d615e7c93bed9b53bfb69af807f Mon Sep 17 00:00:00 2001 From: Mittenshugg Date: Tue, 11 Aug 2020 02:30:22 -0500 Subject: [PATCH] c: func_80001358 --- .../unknown_001050/func_80000D00.s | 198 ------------------ .../unknown_001050/func_80001358.s | 65 ------ src/unknown_001050.c | 95 +++++++-- 3 files changed, 78 insertions(+), 280 deletions(-) delete mode 100644 asm/non_matchings/unknown_001050/func_80000D00.s delete mode 100644 asm/non_matchings/unknown_001050/func_80001358.s diff --git a/asm/non_matchings/unknown_001050/func_80000D00.s b/asm/non_matchings/unknown_001050/func_80000D00.s deleted file mode 100644 index 5eecacc0..00000000 --- a/asm/non_matchings/unknown_001050/func_80000D00.s +++ /dev/null @@ -1,198 +0,0 @@ -glabel func_80000D00 -/* 001900 80000D00 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 001904 80000D04 3C058011 */ lui $a1, %hi(D_80115D3C) # $a1, 0x8011 -/* 001908 80000D08 24A55D3C */ addiu $a1, %lo(D_80115D3C) # addiu $a1, $a1, 0x5d3c -/* 00190C 80000D0C 8CA30000 */ lw $v1, ($a1) -/* 001910 80000D10 AFB00018 */ sw $s0, 0x18($sp) -/* 001914 80000D14 309000FF */ andi $s0, $a0, 0xff -/* 001918 80000D18 AFBF002C */ sw $ra, 0x2c($sp) -/* 00191C 80000D1C AFB40028 */ sw $s4, 0x28($sp) -/* 001920 80000D20 AFB30024 */ sw $s3, 0x24($sp) -/* 001924 80000D24 AFB20020 */ sw $s2, 0x20($sp) -/* 001928 80000D28 AFB1001C */ sw $s1, 0x1c($sp) -/* 00192C 80000D2C 18600023 */ blez $v1, .L80000DBC -/* 001930 80000D30 AFA40030 */ sw $a0, 0x30($sp) -/* 001934 80000D34 3C028011 */ lui $v0, %hi(D_80115D38) # $v0, 0x8011 -/* 001938 80000D38 24425D38 */ addiu $v0, %lo(D_80115D38) # addiu $v0, $v0, 0x5d38 -/* 00193C 80000D3C 8C4E0000 */ lw $t6, ($v0) -/* 001940 80000D40 44834000 */ mtc1 $v1, $f8 -/* 001944 80000D44 01D0C021 */ addu $t8, $t6, $s0 -/* 001948 80000D48 44982000 */ mtc1 $t8, $f4 -/* 00194C 80000D4C 468042A0 */ cvt.s.w $f10, $f8 -/* 001950 80000D50 3C04800E */ lui $a0, %hi(D_800DC650) # $a0, 0x800e -/* 001954 80000D54 2484C650 */ addiu $a0, %lo(D_800DC650) # addiu $a0, $a0, -0x39b0 -/* 001958 80000D58 468021A0 */ cvt.s.w $f6, $f4 -/* 00195C 80000D5C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 001960 80000D60 44819800 */ mtc1 $at, $f19 -/* 001964 80000D64 460A3403 */ div.s $f16, $f6, $f10 -/* 001968 80000D68 44809000 */ mtc1 $zero, $f18 -/* 00196C 80000D6C AC580000 */ sw $t8, ($v0) -/* 001970 80000D70 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 001974 80000D74 E4900000 */ swc1 $f16, ($a0) -/* 001978 80000D78 C4840000 */ lwc1 $f4, ($a0) -/* 00197C 80000D7C 00000000 */ nop -/* 001980 80000D80 46002221 */ cvt.d.s $f8, $f4 -/* 001984 80000D84 4628903C */ c.lt.d $f18, $f8 -/* 001988 80000D88 00000000 */ nop -/* 00198C 80000D8C 45000005 */ bc1f .L80000DA4 -/* 001990 80000D90 00000000 */ nop -/* 001994 80000D94 44813000 */ mtc1 $at, $f6 -/* 001998 80000D98 AC400000 */ sw $zero, ($v0) -/* 00199C 80000D9C ACA00000 */ sw $zero, ($a1) -/* 0019A0 80000DA0 E4860000 */ swc1 $f6, ($a0) -.L80000DA4: -/* 0019A4 80000DA4 3C04800E */ lui $a0, %hi(D_800DC638) # $a0, 0x800e -/* 0019A8 80000DA8 9084C638 */ lbu $a0, %lo(D_800DC638)($a0) -/* 0019AC 80000DAC 0C000664 */ jal musicSetRelativeVolume -/* 0019B0 80000DB0 00000000 */ nop -/* 0019B4 80000DB4 10000023 */ b .L80000E44 -/* 0019B8 80000DB8 00000000 */ nop -.L80000DBC: -/* 0019BC 80000DBC 04610021 */ bgez $v1, .L80000E44 -/* 0019C0 80000DC0 3C028011 */ lui $v0, %hi(D_80115D38) # $v0, 0x8011 -/* 0019C4 80000DC4 24425D38 */ addiu $v0, %lo(D_80115D38) # addiu $v0, $v0, 0x5d38 -/* 0019C8 80000DC8 8C590000 */ lw $t9, ($v0) -/* 0019CC 80000DCC 44832000 */ mtc1 $v1, $f4 -/* 0019D0 80000DD0 03304823 */ subu $t1, $t9, $s0 -/* 0019D4 80000DD4 44895000 */ mtc1 $t1, $f10 -/* 0019D8 80000DD8 468024A0 */ cvt.s.w $f18, $f4 -/* 0019DC 80000DDC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0019E0 80000DE0 44813000 */ mtc1 $at, $f6 -/* 0019E4 80000DE4 46805420 */ cvt.s.w $f16, $f10 -/* 0019E8 80000DE8 3C04800E */ lui $a0, %hi(D_800DC650) # $a0, 0x800e -/* 0019EC 80000DEC 2484C650 */ addiu $a0, %lo(D_800DC650) # addiu $a0, $a0, -0x39b0 -/* 0019F0 80000DF0 46128203 */ div.s $f8, $f16, $f18 -/* 0019F4 80000DF4 44809000 */ mtc1 $zero, $f18 -/* 0019F8 80000DF8 44809800 */ mtc1 $zero, $f19 -/* 0019FC 80000DFC AC490000 */ sw $t1, ($v0) -/* 001A00 80000E00 46083281 */ sub.s $f10, $f6, $f8 -/* 001A04 80000E04 E48A0000 */ swc1 $f10, ($a0) -/* 001A08 80000E08 C4840000 */ lwc1 $f4, ($a0) -/* 001A0C 80000E0C 00000000 */ nop -/* 001A10 80000E10 46002421 */ cvt.d.s $f16, $f4 -/* 001A14 80000E14 4632803C */ c.lt.d $f16, $f18 -/* 001A18 80000E18 00000000 */ nop -/* 001A1C 80000E1C 45000005 */ bc1f .L80000E34 -/* 001A20 80000E20 00000000 */ nop -/* 001A24 80000E24 44803000 */ mtc1 $zero, $f6 -/* 001A28 80000E28 AC400000 */ sw $zero, ($v0) -/* 001A2C 80000E2C ACA00000 */ sw $zero, ($a1) -/* 001A30 80000E30 E4860000 */ swc1 $f6, ($a0) -.L80000E34: -/* 001A34 80000E34 3C04800E */ lui $a0, %hi(D_800DC638) # $a0, 0x800e -/* 001A38 80000E38 9084C638 */ lbu $a0, %lo(D_800DC638)($a0) -/* 001A3C 80000E3C 0C000664 */ jal musicSetRelativeVolume -/* 001A40 80000E40 00000000 */ nop -.L80000E44: -/* 001A44 80000E44 3C13800E */ lui $s3, %hi(D_800DC658) # $s3, 0x800e -/* 001A48 80000E48 2673C658 */ addiu $s3, %lo(D_800DC658) # addiu $s3, $s3, -0x39a8 -/* 001A4C 80000E4C 8E620000 */ lw $v0, ($s3) -/* 001A50 80000E50 00000000 */ nop -/* 001A54 80000E54 18400029 */ blez $v0, .L80000EFC -/* 001A58 80000E58 00000000 */ nop -/* 001A5C 80000E5C 18400027 */ blez $v0, .L80000EFC -/* 001A60 80000E60 00009025 */ move $s2, $zero -/* 001A64 80000E64 3C118011 */ lui $s1, %hi(D_80115D48) # $s1, 0x8011 -/* 001A68 80000E68 26315D48 */ addiu $s1, %lo(D_80115D48) # addiu $s1, $s1, 0x5d48 -/* 001A6C 80000E6C 0200A025 */ move $s4, $s0 -.L80000E70: -/* 001A70 80000E70 862A0002 */ lh $t2, 2($s1) -/* 001A74 80000E74 00000000 */ nop -/* 001A78 80000E78 01545823 */ subu $t3, $t2, $s4 -/* 001A7C 80000E7C A62B0002 */ sh $t3, 2($s1) -/* 001A80 80000E80 862C0002 */ lh $t4, 2($s1) -/* 001A84 80000E84 00000000 */ nop -/* 001A88 80000E88 1D800017 */ bgtz $t4, .L80000EE8 -/* 001A8C 80000E8C 00000000 */ nop -/* 001A90 80000E90 96240000 */ lhu $a0, ($s1) -/* 001A94 80000E94 8E250004 */ lw $a1, 4($s1) -/* 001A98 80000E98 0C000741 */ jal func_80001D04 -/* 001A9C 80000E9C 02408025 */ move $s0, $s2 -/* 001AA0 80000EA0 8E6D0000 */ lw $t5, ($s3) -/* 001AA4 80000EA4 00000000 */ nop -/* 001AA8 80000EA8 25A2FFFF */ addiu $v0, $t5, -1 -/* 001AAC 80000EAC 0242082A */ slt $at, $s2, $v0 -/* 001AB0 80000EB0 1020000F */ beqz $at, .L80000EF0 -/* 001AB4 80000EB4 AE620000 */ sw $v0, ($s3) -/* 001AB8 80000EB8 962F0008 */ lhu $t7, 8($s1) -/* 001ABC 80000EBC 8638000A */ lh $t8, 0xa($s1) -/* 001AC0 80000EC0 8E39000C */ lw $t9, 0xc($s1) -/* 001AC4 80000EC4 A62F0000 */ sh $t7, ($s1) -/* 001AC8 80000EC8 A6380002 */ sh $t8, 2($s1) -/* 001ACC 80000ECC AE390004 */ sw $t9, 4($s1) -/* 001AD0 80000ED0 26100001 */ addiu $s0, $s0, 1 -.L80000ED4: -/* 001AD4 80000ED4 0202082A */ slt $at, $s0, $v0 -/* 001AD8 80000ED8 1420FFFE */ bnez $at, .L80000ED4 -/* 001ADC 80000EDC 26100001 */ addiu $s0, $s0, 1 -/* 001AE0 80000EE0 10000004 */ b .L80000EF4 -/* 001AE4 80000EE4 0242082A */ slt $at, $s2, $v0 -.L80000EE8: -/* 001AE8 80000EE8 26520001 */ addiu $s2, $s2, 1 -/* 001AEC 80000EEC 26310008 */ addiu $s1, $s1, 8 -.L80000EF0: -/* 001AF0 80000EF0 0242082A */ slt $at, $s2, $v0 -.L80000EF4: -/* 001AF4 80000EF4 1420FFDE */ bnez $at, .L80000E70 -/* 001AF8 80000EF8 00000000 */ nop -.L80000EFC: -/* 001AFC 80000EFC 3C10800E */ lui $s0, %hi(gMusicPlayer) # $s0, 0x800e -/* 001B00 80000F00 2610C630 */ addiu $s0, %lo(gMusicPlayer) # addiu $s0, $s0, -0x39d0 -/* 001B04 80000F04 3C058011 */ lui $a1, %hi(D_80115CFC) # $a1, 0x8011 -/* 001B08 80000F08 8CA55CFC */ lw $a1, %lo(D_80115CFC)($a1) -/* 001B0C 80000F0C 8E040000 */ lw $a0, ($s0) -/* 001B10 80000F10 3C06800E */ lui $a2, %hi(D_800DC65C) # $a2, 0x800e -/* 001B14 80000F14 3C078011 */ lui $a3, %hi(D_80115D88) # $a3, 0x8011 -/* 001B18 80000F18 24E75D88 */ addiu $a3, %lo(D_80115D88) # addiu $a3, $a3, 0x5d88 -/* 001B1C 80000F1C 0C0008CB */ jal func_8000232C -/* 001B20 80000F20 24C6C65C */ addiu $a2, %lo(D_800DC65C) # addiu $a2, $a2, -0x39a4 -/* 001B24 80000F24 3C04800E */ lui $a0, %hi(gSndFxPlayer) # $a0, 0x800e -/* 001B28 80000F28 3C058011 */ lui $a1, %hi(D_80115D00) # $a1, 0x8011 -/* 001B2C 80000F2C 8CA55D00 */ lw $a1, %lo(D_80115D00)($a1) -/* 001B30 80000F30 8C84C634 */ lw $a0, %lo(gSndFxPlayer)($a0) -/* 001B34 80000F34 3C06800E */ lui $a2, %hi(D_800DC660) # $a2, 0x800e -/* 001B38 80000F38 3C078011 */ lui $a3, %hi(D_80115E80) # $a3, 0x8011 -/* 001B3C 80000F3C 24E75E80 */ addiu $a3, %lo(D_80115E80) # addiu $a3, $a3, 0x5e80 -/* 001B40 80000F40 0C0008CB */ jal func_8000232C -/* 001B44 80000F44 24C6C660 */ addiu $a2, %lo(D_800DC660) # addiu $a2, $a2, -0x39a0 -/* 001B48 80000F48 3C118011 */ lui $s1, %hi(D_80115D30) # $s1, 0x8011 -/* 001B4C 80000F4C 26315D30 */ addiu $s1, %lo(D_80115D30) # addiu $s1, $s1, 0x5d30 -/* 001B50 80000F50 86280000 */ lh $t0, ($s1) -/* 001B54 80000F54 2401FFFF */ li $at, -1 -/* 001B58 80000F58 15010019 */ bne $t0, $at, .L80000FC0 -/* 001B5C 80000F5C 8FBF002C */ lw $ra, 0x2c($sp) -/* 001B60 80000F60 8E040000 */ lw $a0, ($s0) -/* 001B64 80000F64 00000000 */ nop -/* 001B68 80000F68 8C890018 */ lw $t1, 0x18($a0) -/* 001B6C 80000F6C 00000000 */ nop -/* 001B70 80000F70 11200013 */ beqz $t1, .L80000FC0 -/* 001B74 80000F74 8FBF002C */ lw $ra, 0x2c($sp) -/* 001B78 80000F78 0C031E24 */ jal alCSPGetTempo -/* 001B7C 80000F7C 00000000 */ nop -/* 001B80 80000F80 3C0A0393 */ lui $t2, (0x03938700 >> 16) # lui $t2, 0x393 -/* 001B84 80000F84 354A8700 */ ori $t2, (0x03938700 & 0xFFFF) # ori $t2, $t2, 0x8700 -/* 001B88 80000F88 0142001A */ div $zero, $t2, $v0 -/* 001B8C 80000F8C 14400002 */ bnez $v0, .L80000F98 -/* 001B90 80000F90 00000000 */ nop -/* 001B94 80000F94 0007000D */ break 7 -.L80000F98: -/* 001B98 80000F98 2401FFFF */ li $at, -1 -/* 001B9C 80000F9C 14410004 */ bne $v0, $at, .L80000FB0 -/* 001BA0 80000FA0 3C018000 */ lui $at, 0x8000 -/* 001BA4 80000FA4 15410002 */ bne $t2, $at, .L80000FB0 -/* 001BA8 80000FA8 00000000 */ nop -/* 001BAC 80000FAC 0006000D */ break 6 -.L80000FB0: -/* 001BB0 80000FB0 00005812 */ mflo $t3 -/* 001BB4 80000FB4 A62B0000 */ sh $t3, ($s1) -/* 001BB8 80000FB8 00000000 */ nop -/* 001BBC 80000FBC 8FBF002C */ lw $ra, 0x2c($sp) -.L80000FC0: -/* 001BC0 80000FC0 8FB00018 */ lw $s0, 0x18($sp) -/* 001BC4 80000FC4 8FB1001C */ lw $s1, 0x1c($sp) -/* 001BC8 80000FC8 8FB20020 */ lw $s2, 0x20($sp) -/* 001BCC 80000FCC 8FB30024 */ lw $s3, 0x24($sp) -/* 001BD0 80000FD0 8FB40028 */ lw $s4, 0x28($sp) -/* 001BD4 80000FD4 03E00008 */ jr $ra -/* 001BD8 80000FD8 27BD0030 */ addiu $sp, $sp, 0x30 - diff --git a/asm/non_matchings/unknown_001050/func_80001358.s b/asm/non_matchings/unknown_001050/func_80001358.s deleted file mode 100644 index abc91200..00000000 --- a/asm/non_matchings/unknown_001050/func_80001358.s +++ /dev/null @@ -1,65 +0,0 @@ -glabel func_80001358 -/* 001F58 80001358 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 001F5C 8000135C 308700FF */ andi $a3, $a0, 0xff -/* 001F60 80001360 24010064 */ li $at, 100 -/* 001F64 80001364 AFBF0014 */ sw $ra, 0x14($sp) -/* 001F68 80001368 AFA40020 */ sw $a0, 0x20($sp) -/* 001F6C 8000136C AFA50024 */ sw $a1, 0x24($sp) -/* 001F70 80001370 10E10013 */ beq $a3, $at, .L800013C0 -/* 001F74 80001374 AFA60028 */ sw $a2, 0x28($sp) -/* 001F78 80001378 3C04800E */ lui $a0, %hi(gMusicPlayer) # $a0, 0x800e -/* 001F7C 8000137C 8C84C630 */ lw $a0, %lo(gMusicPlayer)($a0) -/* 001F80 80001380 30E500FF */ andi $a1, $a3, 0xff -/* 001F84 80001384 0C031E68 */ jal alCSPGetChlVol -/* 001F88 80001388 A3A70023 */ sb $a3, 0x23($sp) -/* 001F8C 8000138C 8FAE0028 */ lw $t6, 0x28($sp) -/* 001F90 80001390 93A70023 */ lbu $a3, 0x23($sp) -/* 001F94 80001394 004E1821 */ addu $v1, $v0, $t6 -/* 001F98 80001398 306F00FF */ andi $t7, $v1, 0xff -/* 001F9C 8000139C 29E10080 */ slti $at, $t7, 0x80 -/* 001FA0 800013A0 14200002 */ bnez $at, .L800013AC -/* 001FA4 800013A4 306600FF */ andi $a2, $v1, 0xff -/* 001FA8 800013A8 2406007F */ li $a2, 127 -.L800013AC: -/* 001FAC 800013AC 3C04800E */ lui $a0, %hi(gMusicPlayer) # $a0, 0x800e -/* 001FB0 800013B0 8C84C630 */ lw $a0, %lo(gMusicPlayer)($a0) -/* 001FB4 800013B4 30E500FF */ andi $a1, $a3, 0xff -/* 001FB8 800013B8 0C031E50 */ jal alCSPSetChlVol -/* 001FBC 800013BC A3A6001F */ sb $a2, 0x1f($sp) -.L800013C0: -/* 001FC0 800013C0 93B80027 */ lbu $t8, 0x27($sp) -/* 001FC4 800013C4 24010064 */ li $at, 100 -/* 001FC8 800013C8 13010014 */ beq $t8, $at, .L8000141C -/* 001FCC 800013CC 3C04800E */ lui $a0, %hi(gMusicPlayer) # $a0, 0x800e -/* 001FD0 800013D0 8C84C630 */ lw $a0, %lo(gMusicPlayer)($a0) -/* 001FD4 800013D4 0C031E68 */ jal alCSPGetChlVol -/* 001FD8 800013D8 03002825 */ move $a1, $t8 -/* 001FDC 800013DC 8FB90028 */ lw $t9, 0x28($sp) -/* 001FE0 800013E0 93A50027 */ lbu $a1, 0x27($sp) -/* 001FE4 800013E4 0322082A */ slt $at, $t9, $v0 -/* 001FE8 800013E8 10200005 */ beqz $at, .L80001400 -/* 001FEC 800013EC 3C04800E */ lui $a0, %hi(gMusicPlayer) # $a0, 0x800e -/* 001FF0 800013F0 00593023 */ subu $a2, $v0, $t9 -/* 001FF4 800013F4 30C800FF */ andi $t0, $a2, 0xff -/* 001FF8 800013F8 10000002 */ b .L80001404 -/* 001FFC 800013FC 01003025 */ move $a2, $t0 -.L80001400: -/* 002000 80001400 00003025 */ move $a2, $zero -.L80001404: -/* 002004 80001404 8C84C630 */ lw $a0, %lo(gMusicPlayer)($a0) -/* 002008 80001408 0C031E50 */ jal alCSPSetChlVol -/* 00200C 8000140C A3A6001E */ sb $a2, 0x1e($sp) -/* 002010 80001410 93A2001E */ lbu $v0, 0x1e($sp) -/* 002014 80001414 10000007 */ b .L80001434 -/* 002018 80001418 8FBF0014 */ lw $ra, 0x14($sp) -.L8000141C: -/* 00201C 8000141C 93A9001F */ lbu $t1, 0x1f($sp) -/* 002020 80001420 240A007F */ li $t2, 127 -/* 002024 80001424 01491023 */ subu $v0, $t2, $t1 -/* 002028 80001428 304B00FF */ andi $t3, $v0, 0xff -/* 00202C 8000142C 01601025 */ move $v0, $t3 -/* 002030 80001430 8FBF0014 */ lw $ra, 0x14($sp) -.L80001434: -/* 002034 80001434 27BD0020 */ addiu $sp, $sp, 0x20 -/* 002038 80001438 03E00008 */ jr $ra -/* 00203C 8000143C 00000000 */ nop diff --git a/src/unknown_001050.c b/src/unknown_001050.c index efac8dab..50f2b37d 100644 --- a/src/unknown_001050.c +++ b/src/unknown_001050.c @@ -324,7 +324,65 @@ void func_80000CBC(void) { musicSetRelativeVolume(D_800DC638); } -GLOBAL_ASM("asm/non_matchings/unknown_001050/func_80000D00.s") +void func_80001D04(u16,void*); +void func_8000232C(ALCSPlayer*, void*, u8*, ALCSeq*); + +void func_80000D00(u8 arg0){ + s32 reg_s2; + s32 j; + if(D_80115D3C > 0){ + + D_80115D38 += arg0; + D_800DC650 = ((f32)D_80115D38)/((f32)D_80115D3C); + + if((f64)D_800DC650 > 1.0f){ + D_80115D38 = 0; + D_80115D3C = 0; + D_800DC650 = 1.0f; + } + musicSetRelativeVolume(D_800DC638); + }else if(D_80115D3C < 0) { + + D_80115D38 -= arg0; + D_800DC650 = 1.0f - ((f32)D_80115D38)/((f32)D_80115D3C); + if((f64)D_800DC650 < 0){ + D_80115D38 = 0; + D_80115D3C = 0; + D_800DC650 = 0.0f; + } + musicSetRelativeVolume(D_800DC638); + } + + if(D_800DC658 > 0){ + //reg_arg0 = arg0; + for(reg_s2 = 0; reg_s2 < D_800DC658;){ + D_80115D48[reg_s2].unk2 -= arg0; + if(D_80115D48[reg_s2].unk2 <= 0){ + j = reg_s2; + func_80001D04(D_80115D48[reg_s2].unk0, D_80115D48[reg_s2].unk4); + + D_800DC658 -= 1; + while(j < D_800DC658){ + D_80115D48[reg_s2].unk0 = D_80115D48[reg_s2 + 1].unk0; + D_80115D48[reg_s2].unk2 = D_80115D48[reg_s2 + 1].unk2; + D_80115D48[reg_s2].unk4 = D_80115D48[reg_s2 + 1].unk4; + j++; + //break; + } + j++; + } + else{ + reg_s2++; + } + } + } + + func_8000232C(gMusicPlayer, D_80115CFC, &D_800DC65C, &D_80115D88); + func_8000232C(gSndFxPlayer, D_80115D00, &D_800DC660, &D_80115E80); + if(D_80115D30 == -1 && gMusicPlayer->target){ + D_80115D30 = 0x03938700/alCSPGetTempo(gMusicPlayer); + } +} void func_80000FDC(u16 arg0, s32 arg1, f32 arg2) { if (D_800DC658 < 8) { @@ -439,29 +497,32 @@ void func_800012E8(void){ return; } -#if 1 -GLOBAL_ASM("asm/non_matchings/unknown_001050/func_80001358.s") -#else -void func_80001358(u32 arg0, u32 arg1, u32 arg2){ - u8 updatedVol; + +u8 func_80001358(u8 arg0, u8 arg1, s32 arg2){ + u8 val_1f; + u8 val_1e; + s32 updatedVol; + //u8 fadeIn_chan = arg0; if(!(arg0 == 100)){ - updatedVol = arg2 + alCSPGetChlVol(gMusicPlayer,arg0); - if(updatedVol < 0){ - updatedVol = 127; + val_1f = arg2 + alCSPGetChlVol(gMusicPlayer,arg0); + if(val_1f > 127){ + val_1f = 127; } - alCSPSetChlVol(gMusicPlayer,arg0, updatedVol); + alCSPSetChlVol(gMusicPlayer,arg0, val_1f); } + if(arg1 != 100){ - updatedVol = alCSPGetChlVol(gMusicPlayer,arg1) - arg2; - if(updatedVol < 0){ - updatedVol = 0; - } - alCSPSetChlVol(gMusicPlayer,arg1, updatedVol); + + updatedVol = alCSPGetChlVol(gMusicPlayer,arg1); + val_1e = (updatedVol > arg2) ? updatedVol - arg2 : 0; + alCSPSetChlVol(gMusicPlayer,arg1, val_1e); + return val_1e; + } + else{ + return 127-val_1f; } - return; } -#endif u8 alSeqpGetChlFXMix(ALCSPlayer*, u8);