Don't reset all of ARAM when DSPReset is sent. Fixes issue 3594
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@6647 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
parent
547c18fb55
commit
e059587c1a
|
@ -387,11 +387,12 @@ void Write16(const u16 _Value, const u32 _Address)
|
||||||
tmpControl.Hex = (_Value & ~DSP_CONTROL_MASK) |
|
tmpControl.Hex = (_Value & ~DSP_CONTROL_MASK) |
|
||||||
(dsp_plugin->DSP_WriteControlRegister(_Value) & DSP_CONTROL_MASK);
|
(dsp_plugin->DSP_WriteControlRegister(_Value) & DSP_CONTROL_MASK);
|
||||||
|
|
||||||
// HACK for DSPReset: do it instantaneously
|
// Not really sure if this is correct, but it works...
|
||||||
if (_Value & 1)
|
// Kind of a hack because DSP_CONTROL_MASK should make this bit
|
||||||
|
// only viewable to dsp plugin
|
||||||
|
if (_Value & 1 /*DSPReset*/)
|
||||||
{
|
{
|
||||||
Shutdown();
|
g_audioDMA.AudioDMAControl.Hex = 0;
|
||||||
Init();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update DSP related flags
|
// Update DSP related flags
|
||||||
|
|
Loading…
Reference in New Issue