Decompile audioGetVolume

This commit is contained in:
Ryan Dwyer 2020-08-28 19:18:08 +10:00
parent 2dd66483f3
commit 4cd6244b38
5 changed files with 31 additions and 38 deletions

View File

@ -17,29 +17,22 @@
#include "lib/lib_11420.h"
#include "types.h"
GLOBAL_ASM(
glabel func0f16cfa0
/* f16cfa0: 3c0e800a */ lui $t6,%hi(g_Vars+0x4b4)
/* f16cfa4: 8dcea474 */ lw $t6,%lo(g_Vars+0x4b4)($t6)
/* f16cfa8: 2401005c */ addiu $at,$zero,0x5c
/* f16cfac: 3c028008 */ lui $v0,%hi(var800840ec)
/* f16cfb0: 15c10003 */ bne $t6,$at,.L0f16cfc0
/* f16cfb4: 00000000 */ nop
/* f16cfb8: 03e00008 */ jr $ra
/* f16cfbc: 24025000 */ addiu $v0,$zero,0x5000
.L0f16cfc0:
/* f16cfc0: 944240ec */ lhu $v0,%lo(var800840ec)($v0)
/* f16cfc4: 24035000 */ addiu $v1,$zero,0x5000
/* f16cfc8: 28415000 */ slti $at,$v0,0x5000
/* f16cfcc: 10200003 */ beqz $at,.L0f16cfdc
/* f16cfd0: 00000000 */ nop
/* f16cfd4: 10000001 */ b .L0f16cfdc
/* f16cfd8: 00401825 */ or $v1,$v0,$zero
.L0f16cfdc:
/* f16cfdc: 3062ffff */ andi $v0,$v1,0xffff
/* f16cfe0: 03e00008 */ jr $ra
/* f16cfe4: 00000000 */ nop
);
u16 audioGetVolume(void)
{
u32 volume;
if (g_Vars.stagenum == STAGE_CREDITS) {
return 0x5000;
}
if (var800840ec < 0x5000) {
volume = var800840ec;
} else {
volume = 0x5000;
}
return volume;
}
void func0f16cfe8(u16 volume)
{
@ -208,7 +201,7 @@ void func0f16d44c(void)
void func0f16d4b8(f32 arg0)
{
if (TRACKNUM2() >= 0) {
func0f16d1bc(1, TRACKNUM2(), arg0, func0f16cfa0());
func0f16d1bc(1, TRACKNUM2(), arg0, audioGetVolume());
}
}
@ -284,12 +277,12 @@ bool audioIsAnyPlayerInRoomWithFlag4000(void)
void func0f16d89c(f32 arg0)
{
func0f16d1bc(2, func0f176d20(var800aa5d0), arg0, func0f16cfa0());
func0f16d1bc(2, func0f176d20(var800aa5d0), arg0, audioGetVolume());
}
void func0f16d8e0(f32 arg0)
{
func0f16d1bc(3, menuChooseMusic(), arg0, func0f16cfa0());
func0f16d1bc(3, menuChooseMusic(), arg0, audioGetVolume());
}
void audioSetBgMusic(s32 tracknum)
@ -300,7 +293,7 @@ void audioSetBgMusic(s32 tracknum)
func0f16d2ac(1, 0.5f, 1);
func0f16d2ac(2, 0.5f, 1);
func0f16d2ac(5, 0.5f, 1);
func0f16d1bc(3, tracknum, 0, func0f16cfa0());
func0f16d1bc(3, tracknum, 0, audioGetVolume());
}
g_AudioCurrentBgMusicNum = tracknum;
@ -386,14 +379,14 @@ void audioPlaySoloDeathTrack(void)
func0f16d240(2);
func0f16d240(1);
func0f16d240(5);
func0f16d1bc(1, MUSIC_DEATH_SOLO, 0, VOLUME(g_SfxVolume) > func0f16cfa0() ? VOLUME(g_SfxVolume) : func0f16cfa0());
func0f16d1bc(1, MUSIC_DEATH_SOLO, 0, VOLUME(g_SfxVolume) > audioGetVolume() ? VOLUME(g_SfxVolume) : audioGetVolume());
func0f16d44c();
}
void audioPlayMpDeathTrack(f32 arg0)
{
func0f16d430();
func0f16d1bc(4, MUSIC_DEATH_MP, arg0, VOLUME(g_SfxVolume) > func0f16cfa0() ? VOLUME(g_SfxVolume) : func0f16cfa0());
func0f16d1bc(4, MUSIC_DEATH_MP, arg0, VOLUME(g_SfxVolume) > audioGetVolume() ? VOLUME(g_SfxVolume) : audioGetVolume());
func0f16d44c();
}
@ -438,7 +431,7 @@ void audioPlayTrack(s32 tracknum)
func0f16d240(2);
func0f16d240(1);
func0f16d240(5);
func0f16d1bc(1, tracknum, 0, func0f16cfa0());
func0f16d1bc(1, tracknum, 0, audioGetVolume());
func0f16d44c();
}
@ -468,8 +461,8 @@ void audioSetTrack(s32 tracknum)
func0f16d240(2);
func0f16d240(1);
if (g_SfxVolume < func0f16cfa0()) {
volume = func0f16cfa0();
if (g_SfxVolume < audioGetVolume()) {
volume = audioGetVolume();
} else {
volume = g_SfxVolume;
}

View File

@ -280,7 +280,7 @@ void optionsSetScreenSplit(u8 split)
s32 optionsGetMusicVolume(void)
{
return func0f16cfa0();
return audioGetVolume();
}
void optionsSetMusicVolume(u16 volume)

View File

@ -3,7 +3,7 @@
#include <ultra64.h>
#include "types.h"
u16 func0f16cfa0(void);
u16 audioGetVolume(void);
void func0f16cfe8(u16 volume);
bool func0f16d0a8(s32 arg0, s32 arg1);
s32 func0f16d124(s32 arg0);

View File

@ -1681,14 +1681,14 @@ glabel func0000fe88
/* 1003c: 24010006 */ addiu $at,$zero,0x6
/* 10040: 15410014 */ bne $t2,$at,.L00010094
/* 10044: 00000000 */ nop
/* 10048: 0fc5b3e8 */ jal func0f16cfa0
/* 10048: 0fc5b3e8 */ jal audioGetVolume
/* 1004c: 00000000 */ nop
/* 10050: 3c038006 */ lui $v1,%hi(g_SfxVolume)
/* 10054: 9463ddc8 */ lhu $v1,%lo(g_SfxVolume)($v1)
/* 10058: 0062082a */ slt $at,$v1,$v0
/* 1005c: 10200005 */ beqz $at,.L00010074
/* 10060: 00608025 */ or $s0,$v1,$zero
/* 10064: 0fc5b3e8 */ jal func0f16cfa0
/* 10064: 0fc5b3e8 */ jal audioGetVolume
/* 10068: 00000000 */ nop
/* 1006c: 10000001 */ b .L00010074
/* 10070: 00408025 */ or $s0,$v0,$zero

View File

@ -809,7 +809,7 @@ glabel func00011d84
/* 11e88: 3c04800b */ lui $a0,%hi(var800aa5d0)
/* 11e8c: 0fc5db10 */ jal func0f176c40
/* 11e90: 8c84a5d0 */ lw $a0,%lo(var800aa5d0)($a0)
/* 11e94: 0fc5b3e8 */ jal func0f16cfa0
/* 11e94: 0fc5b3e8 */ jal audioGetVolume
/* 11e98: afa20018 */ sw $v0,0x18($sp)
/* 11e9c: 24040001 */ addiu $a0,$zero,0x1
/* 11ea0: 8fa50018 */ lw $a1,0x18($sp)
@ -878,7 +878,7 @@ glabel func00011d84
/* 11f90: 3c04800b */ lui $a0,%hi(var800aa5d0)
/* 11f94: 0fc5db10 */ jal func0f176c40
/* 11f98: 8c84a5d0 */ lw $a0,%lo(var800aa5d0)($a0)
/* 11f9c: 0fc5b3e8 */ jal func0f16cfa0
/* 11f9c: 0fc5b3e8 */ jal audioGetVolume
/* 11fa0: afa20018 */ sw $v0,0x18($sp)
/* 11fa4: 24040001 */ addiu $a0,$zero,0x1
/* 11fa8: 8fa50018 */ lw $a1,0x18($sp)