summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp
diff options
context:
space:
mode:
authorPokechu22 <Pokechu022@gmail.com>2022-06-25 14:06:55 -0700
committerPokechu22 <Pokechu022@gmail.com>2022-06-25 14:06:55 -0700
commit9675faa2329ab0aa6d55231ae56edacc90ace2c0 (patch)
tree628205e61e226955a1d8fc9bc497d173df7de00c /Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp
parentb30e1c5bb9803f3c4b31fca5adc80a44a40be546 (diff)
DSPHLE: Properly reflect initial halt state in mail handler
DSPHLE::Initialize sets the halt and init bits to true (i.e. m_dsp_control.Hex starts as 0x804), which is reasonable behavior (this is the state the DSP will be in when starting a game from the IPL, as after `__OSStopAudioSystem` the control register is 0x804). However, CMailHandler::m_halted defaults to false, and we only call CMailHandler::SetHalted in DSPHLE::DSP_WriteControlRegister when m_dsp_control.DSPHalt changes, so since DSPHalt defaults to true, if the first thing that happens is writing true to DSPHalt, we won't properly halt the mail handler. Now, we call CMailHandler::SetHalted on startup. This fixes Datel titles when the IPL is skipped with DSP HLE (though this configuration only works once https://bugs.dolphin-emu.org/issues/8223 is fixed).
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu/ControlGroup/ControlGroup.cpp')
0 files changed, 0 insertions, 0 deletions