Merge pull request #1843 from skidau/GC-Adapter-origin
Corrects the origin of a GC Controller
This commit is contained in:
commit
c6e2449bff
|
@ -24,14 +24,17 @@ CSIDevice_GCController::CSIDevice_GCController(SIDevices device, int _iDeviceNum
|
||||||
, m_TButtonCombo(0)
|
, m_TButtonCombo(0)
|
||||||
, m_LastButtonCombo(COMBO_NONE)
|
, m_LastButtonCombo(COMBO_NONE)
|
||||||
{
|
{
|
||||||
|
GCPadStatus pad_origin;
|
||||||
memset(&m_Origin, 0, sizeof(SOrigin));
|
memset(&m_Origin, 0, sizeof(SOrigin));
|
||||||
m_Origin.uButton = 0x00;
|
memset(&pad_origin, 0, sizeof(GCPadStatus));
|
||||||
m_Origin.uOriginStickX = 0x80; // center
|
|
||||||
m_Origin.uOriginStickY = 0x80;
|
pad_origin.button = 0x00;
|
||||||
m_Origin.uSubStickStickX = 0x80;
|
pad_origin.stickX = 0x80; // center
|
||||||
m_Origin.uSubStickStickY = 0x80;
|
pad_origin.stickY = 0x80;
|
||||||
m_Origin.uTrigger_L = 0x1F; // 0-30 is the lower deadzone
|
pad_origin.substickX = 0x80;
|
||||||
m_Origin.uTrigger_R = 0x1F;
|
pad_origin.substickY = 0x80;
|
||||||
|
pad_origin.triggerLeft = 0x1F; // 0-30 is the lower deadzone
|
||||||
|
pad_origin.triggerRight = 0x1F;
|
||||||
|
|
||||||
// Dunno if we need to do this, game/lib should set it?
|
// Dunno if we need to do this, game/lib should set it?
|
||||||
m_Mode = 0x03;
|
m_Mode = 0x03;
|
||||||
|
@ -39,9 +42,10 @@ CSIDevice_GCController::CSIDevice_GCController(SIDevices device, int _iDeviceNum
|
||||||
#if defined(__LIBUSB__) || defined (_WIN32)
|
#if defined(__LIBUSB__) || defined (_WIN32)
|
||||||
if (SI_GCAdapter::IsDetected())
|
if (SI_GCAdapter::IsDetected())
|
||||||
{
|
{
|
||||||
GCPadStatus pad_origin;
|
|
||||||
memset(&pad_origin, 0, sizeof(pad_origin));
|
|
||||||
SI_GCAdapter::Input(ISIDevice::m_iDeviceNumber, &pad_origin);
|
SI_GCAdapter::Input(ISIDevice::m_iDeviceNumber, &pad_origin);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
m_Origin.uButton = pad_origin.button;
|
m_Origin.uButton = pad_origin.button;
|
||||||
m_Origin.uOriginStickX = pad_origin.stickX;
|
m_Origin.uOriginStickX = pad_origin.stickX;
|
||||||
m_Origin.uOriginStickY = pad_origin.stickY;
|
m_Origin.uOriginStickY = pad_origin.stickY;
|
||||||
|
@ -49,9 +53,6 @@ CSIDevice_GCController::CSIDevice_GCController(SIDevices device, int _iDeviceNum
|
||||||
m_Origin.uSubStickStickY = pad_origin.substickY;
|
m_Origin.uSubStickStickY = pad_origin.substickY;
|
||||||
m_Origin.uTrigger_L = pad_origin.triggerLeft;
|
m_Origin.uTrigger_L = pad_origin.triggerLeft;
|
||||||
m_Origin.uTrigger_R = pad_origin.triggerRight;
|
m_Origin.uTrigger_R = pad_origin.triggerRight;
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int CSIDevice_GCController::RunBuffer(u8* _pBuffer, int _iLength)
|
int CSIDevice_GCController::RunBuffer(u8* _pBuffer, int _iLength)
|
||||||
|
|
Loading…
Reference in New Issue