Fix loading save states with input recording with the adapter
Intended fix for issue #9508
This commit is contained in:
parent
b7795044bb
commit
2a0ba5aaa6
|
@ -406,17 +406,28 @@ void ChangePads(bool instantly)
|
|||
int controllers = 0;
|
||||
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; ++i)
|
||||
if (SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_CONTROLLER || SConfig::GetInstance().m_SIDevice[i] == SIDEVICE_GC_TARUKONGA)
|
||||
if (SIDevice_IsGCController(SConfig::GetInstance().m_SIDevice[i]))
|
||||
controllers |= (1 << i);
|
||||
|
||||
if (instantly && (s_numPads & 0x0F) == controllers)
|
||||
return;
|
||||
|
||||
for (int i = 0; i < MAX_SI_CHANNELS; ++i)
|
||||
{
|
||||
SIDevices device = SIDEVICE_NONE;
|
||||
if (IsUsingPad(i))
|
||||
{
|
||||
if (SIDevice_IsGCController(SConfig::GetInstance().m_SIDevice[i]))
|
||||
device = SConfig::GetInstance().m_SIDevice[i];
|
||||
else
|
||||
device = IsUsingBongo(i) ? SIDEVICE_GC_TARUKONGA : SIDEVICE_GC_CONTROLLER;
|
||||
}
|
||||
|
||||
if (instantly) // Changes from savestates need to be instantaneous
|
||||
SerialInterface::AddDevice(IsUsingPad(i) ? (IsUsingBongo(i) ? SIDEVICE_GC_TARUKONGA : SIDEVICE_GC_CONTROLLER) : SIDEVICE_NONE, i);
|
||||
SerialInterface::AddDevice(device, i);
|
||||
else
|
||||
SerialInterface::ChangeDevice(IsUsingPad(i) ? (IsUsingBongo(i) ? SIDEVICE_GC_TARUKONGA : SIDEVICE_GC_CONTROLLER) : SIDEVICE_NONE, i);
|
||||
SerialInterface::ChangeDevice(device, i);
|
||||
}
|
||||
}
|
||||
|
||||
void ChangeWiiPads(bool instantly)
|
||||
|
|
Loading…
Reference in New Issue