Merge pull request #7942 from jordan-woyak/gc-adapter-calib-fix

HW/SI: GCAdapter calibration fix.
This commit is contained in:
JMC47 2019-03-30 06:37:23 -04:00 committed by GitHub
commit 0bce1c509d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 14 additions and 0 deletions

View file

@ -18,6 +18,9 @@ namespace SerialInterface
CSIDevice_GCAdapter::CSIDevice_GCAdapter(SIDevices device, int device_number)
: CSIDevice_GCController(device, device_number)
{
// Make sure PAD_GET_ORIGIN gets set due to a newly connected device.
GCAdapter::ResetDeviceType(m_device_number);
// get the correct pad number that should rumble locally when using netplay
const int pad_num = NetPlay_InGamePadToLocalPad(m_device_number);
if (pad_num < 4)

View file

@ -485,6 +485,11 @@ bool DeviceConnected(int chan)
return s_controller_type[chan] != ControllerTypes::CONTROLLER_NONE;
}
void ResetDeviceType(int chan)
{
s_controller_type[chan] = ControllerTypes::CONTROLLER_NONE;
}
bool UseAdapter()
{
const auto& si_devices = SConfig::GetInstance().m_SIDevice;

View file

@ -29,6 +29,7 @@ void Output(int chan, u8 rumble_command);
bool IsDetected();
bool IsDriverDetected();
bool DeviceConnected(int chan);
void ResetDeviceType(int chan);
bool UseAdapter();
} // end of namespace GCAdapter

View file

@ -382,6 +382,11 @@ bool DeviceConnected(int chan)
return s_controller_type[chan] != ControllerTypes::CONTROLLER_NONE;
}
void ResetDeviceType(int chan)
{
s_controller_type[chan] = ControllerTypes::CONTROLLER_NONE;
}
bool UseAdapter()
{
const auto& si_devices = SConfig::GetInstance().m_SIDevice;