mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-16 07:55:46 -04:00
Controller: Always check for access byte
This commit is contained in:
@ -167,18 +167,27 @@ bool AnalogJoystick::Transfer(const u8 data_in, u8* data_out)
|
||||
{
|
||||
case TransferState::Idle:
|
||||
{
|
||||
// ack when sent 0x01, send ID for 0x42
|
||||
*data_out = 0xFF;
|
||||
|
||||
if (data_in == 0x01)
|
||||
{
|
||||
m_transfer_state = TransferState::Ready;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
case TransferState::Ready:
|
||||
{
|
||||
if (data_in == 0x42)
|
||||
{
|
||||
*data_out = Truncate8(GetID());
|
||||
m_transfer_state = TransferState::IDMSB;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
*data_out = 0xFF;
|
||||
return (data_in == 0x01);
|
||||
}
|
||||
|
||||
*data_out = 0xFF;
|
||||
return false;
|
||||
}
|
||||
|
||||
case TransferState::IDMSB:
|
||||
|
Reference in New Issue
Block a user