GBA Audio: Fix volume/mute in XQ audio (fixes #1864)

This commit is contained in:
Vicki Pfau 2020-08-19 15:50:32 -07:00
parent 106685c1cd
commit 2a2f208419
2 changed files with 3 additions and 0 deletions

View File

@ -21,6 +21,7 @@ Emulation fixes:
- GBA: Fix timing advancing too quickly in rare cases
- GBA Audio: Fix deserializing SOUNDCNT_L
- GBA Audio: Fix stereo in XQ audio
- GBA Audio: Fix volume/mute in XQ audio (fixes mgba.io/i/1864)
- GBA BIOS: Implement dummy sound driver calls
- GBA BIOS: Improve HLE BIOS timing
- GBA BIOS: Fix reloading video registers after reset (fixes mgba.io/i/1808)

View File

@ -289,6 +289,8 @@ void _mp2kStep(struct GBAAudioMixer* mixer) {
CircleBufferRead16(&mixer->activeTracks[track].buffer, &value);
sample.right += value;
}
sample.left = (sample.left * mixer->p->masterVolume) >> 8;
sample.right = (sample.right * mixer->p->masterVolume) >> 8;
if (mixer->p->externalMixing) {
blip_add_delta(mixer->p->psg.left, mixer->p->clock + i * interval, sample.left - mixer->last.left);
blip_add_delta(mixer->p->psg.right, mixer->p->clock + i * interval, sample.right - mixer->last.right);