SPU: ENDX register should get set when looping as well as muting
This commit is contained in:
parent
ce46dbeeca
commit
b16ecd7a86
|
@ -1474,10 +1474,10 @@ std::tuple<s32, s32> SPU::SampleVoice(u32 voice_index)
|
|||
// handle flags
|
||||
if (voice.current_block_flags.loop_end)
|
||||
{
|
||||
m_endx_register |= (u32(1) << voice_index);
|
||||
if (!voice.current_block_flags.loop_repeat)
|
||||
{
|
||||
Log_TracePrintf("Voice %u loop end+mute @ 0x%08X", voice_index, ZeroExtend32(voice.current_address));
|
||||
m_endx_register |= (u32(1) << voice_index);
|
||||
voice.ForceOff();
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue