HW: Change u8 pad specifier params to int where applicable

Using u8 as indexers is kind of silly, since the rest of the public API
essentially uses int for this sort of thing. Changing these to int also
gets rid of quite a few implicit truncations.

This also allows for getting rid of similar silliness in the netplay API.
This commit is contained in:
Lioncash 2016-10-07 07:49:32 -04:00
parent 3c822f2c55
commit 9cab4e414c
10 changed files with 37 additions and 37 deletions

View File

@ -47,7 +47,7 @@ void LoadConfig()
s_config.LoadConfig(true); s_config.LoadConfig(true);
} }
KeyboardStatus GetStatus(u8 port) KeyboardStatus GetStatus(int port)
{ {
return static_cast<GCKeyboard*>(s_config.GetController(port))->GetInput(); return static_cast<GCKeyboard*>(s_config.GetController(port))->GetInput();
} }

View File

@ -17,5 +17,5 @@ void LoadConfig();
InputConfig* GetConfig(); InputConfig* GetConfig();
KeyboardStatus GetStatus(u8 port); KeyboardStatus GetStatus(int port);
} }

View File

@ -46,17 +46,17 @@ void LoadConfig()
s_config.LoadConfig(true); s_config.LoadConfig(true);
} }
GCPadStatus GetStatus(u8 pad_num) GCPadStatus GetStatus(int pad_num)
{ {
return static_cast<GCPad*>(s_config.GetController(pad_num))->GetInput(); return static_cast<GCPad*>(s_config.GetController(pad_num))->GetInput();
} }
void Rumble(const u8 pad_num, const ControlState strength) void Rumble(const int pad_num, const ControlState strength)
{ {
static_cast<GCPad*>(s_config.GetController(pad_num))->SetOutput(strength); static_cast<GCPad*>(s_config.GetController(pad_num))->SetOutput(strength);
} }
bool GetMicButton(const u8 pad_num) bool GetMicButton(const int pad_num)
{ {
return static_cast<GCPad*>(s_config.GetController(pad_num))->GetMicButton(); return static_cast<GCPad*>(s_config.GetController(pad_num))->GetMicButton();
} }

View File

@ -18,8 +18,8 @@ void LoadConfig();
InputConfig* GetConfig(); InputConfig* GetConfig();
GCPadStatus GetStatus(u8 pad_num); GCPadStatus GetStatus(int pad_num);
void Rumble(u8 pad_num, ControlState strength); void Rumble(int pad_num, ControlState strength);
bool GetMicButton(u8 pad_num); bool GetMicButton(int pad_num);
} }

View File

@ -18,7 +18,7 @@ CSIDevice_GCAdapter::CSIDevice_GCAdapter(SIDevices device, int _iDeviceNumber)
: CSIDevice_GCController(device, _iDeviceNumber) : CSIDevice_GCController(device, _iDeviceNumber)
{ {
// get the correct pad number that should rumble locally when using netplay // get the correct pad number that should rumble locally when using netplay
const u8 numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber); const int numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber);
if (numPAD < 4) if (numPAD < 4)
m_simulate_konga = SConfig::GetInstance().m_AdapterKonga[numPAD]; m_simulate_konga = SConfig::GetInstance().m_AdapterKonga[numPAD];
} }
@ -59,7 +59,7 @@ int CSIDevice_GCAdapter::RunBuffer(u8* buffer, int length)
return CSIDevice_GCController::RunBuffer(buffer, length); return CSIDevice_GCController::RunBuffer(buffer, length);
} }
void CSIDevice_GCController::Rumble(u8 numPad, ControlState strength) void CSIDevice_GCController::Rumble(int numPad, ControlState strength)
{ {
SIDevices device = SConfig::GetInstance().m_SIDevice[numPad]; SIDevices device = SConfig::GetInstance().m_SIDevice[numPad];
if (device == SIDEVICE_WIIU_ADAPTER) if (device == SIDEVICE_WIIU_ADAPTER)

View File

@ -289,7 +289,7 @@ void CSIDevice_GCController::SendCommand(u32 _Cmd, u8 _Poll)
unsigned int uStrength = command.Parameter2; unsigned int uStrength = command.Parameter2;
// get the correct pad number that should rumble locally when using netplay // get the correct pad number that should rumble locally when using netplay
const u8 numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber); const int numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber);
if (numPAD < 4) if (numPAD < 4)
{ {

View File

@ -102,11 +102,11 @@ public:
virtual EButtonCombo HandleButtonCombos(const GCPadStatus& pad_status); virtual EButtonCombo HandleButtonCombos(const GCPadStatus& pad_status);
// Send and Receive pad input from network // Send and Receive pad input from network
static bool NetPlay_GetInput(u8 numPAD, GCPadStatus* status); static bool NetPlay_GetInput(int numPAD, GCPadStatus* status);
static u8 NetPlay_InGamePadToLocalPad(u8 numPAD); static int NetPlay_InGamePadToLocalPad(int numPAD);
// Direct rumble to the right GC Controller // Direct rumble to the right GC Controller
static void Rumble(u8 numPad, ControlState strength); static void Rumble(int numPad, ControlState strength);
protected: protected:
void Calibrate(); void Calibrate();

View File

@ -82,7 +82,7 @@ void CSIDevice_GCSteeringWheel::SendCommand(u32 _Cmd, u8 _Poll)
unsigned int uType = command.Parameter2; // 06 = motor on, 04 = motor off unsigned int uType = command.Parameter2; // 06 = motor on, 04 = motor off
// get the correct pad number that should rumble locally when using netplay // get the correct pad number that should rumble locally when using netplay
const u8 numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber); const int numPAD = NetPlay_InGamePadToLocalPad(ISIDevice::m_iDeviceNumber);
if (numPAD < 4) if (numPAD < 4)
{ {

View File

@ -739,11 +739,11 @@ void NetPlayClient::SendChatMessage(const std::string& msg)
} }
// called from ---CPU--- thread // called from ---CPU--- thread
void NetPlayClient::SendPadState(const PadMapping in_game_pad, const GCPadStatus& pad) void NetPlayClient::SendPadState(const int in_game_pad, const GCPadStatus& pad)
{ {
auto spac = std::make_unique<sf::Packet>(); auto spac = std::make_unique<sf::Packet>();
*spac << static_cast<MessageId>(NP_MSG_PAD_DATA); *spac << static_cast<MessageId>(NP_MSG_PAD_DATA);
*spac << in_game_pad; *spac << static_cast<PadMapping>(in_game_pad);
*spac << pad.button << pad.analogA << pad.analogB << pad.stickX << pad.stickY << pad.substickX *spac << pad.button << pad.analogA << pad.analogB << pad.stickX << pad.stickY << pad.substickX
<< pad.substickY << pad.triggerLeft << pad.triggerRight; << pad.substickY << pad.triggerLeft << pad.triggerRight;
@ -751,11 +751,11 @@ void NetPlayClient::SendPadState(const PadMapping in_game_pad, const GCPadStatus
} }
// called from ---CPU--- thread // called from ---CPU--- thread
void NetPlayClient::SendWiimoteState(const PadMapping in_game_pad, const NetWiimote& nw) void NetPlayClient::SendWiimoteState(const int in_game_pad, const NetWiimote& nw)
{ {
auto spac = std::make_unique<sf::Packet>(); auto spac = std::make_unique<sf::Packet>();
*spac << static_cast<MessageId>(NP_MSG_WIIMOTE_DATA); *spac << static_cast<MessageId>(NP_MSG_WIIMOTE_DATA);
*spac << in_game_pad; *spac << static_cast<PadMapping>(in_game_pad);
*spac << static_cast<u8>(nw.size()); *spac << static_cast<u8>(nw.size());
for (auto it : nw) for (auto it : nw)
{ {
@ -940,7 +940,7 @@ void NetPlayClient::OnConnectFailed(u8 reason)
} }
// called from ---CPU--- thread // called from ---CPU--- thread
bool NetPlayClient::GetNetPads(const u8 pad_nb, GCPadStatus* pad_status) bool NetPlayClient::GetNetPads(const int pad_nb, GCPadStatus* pad_status)
{ {
// The interface for this is extremely silly. // The interface for this is extremely silly.
// //
@ -965,8 +965,8 @@ bool NetPlayClient::GetNetPads(const u8 pad_nb, GCPadStatus* pad_status)
// clients. // clients.
if (IsFirstInGamePad(pad_nb)) if (IsFirstInGamePad(pad_nb))
{ {
const u8 num_local_pads = NumLocalPads(); const int num_local_pads = NumLocalPads();
for (u8 local_pad = 0; local_pad < num_local_pads; local_pad++) for (int local_pad = 0; local_pad < num_local_pads; local_pad++)
{ {
switch (SConfig::GetInstance().m_SIDevice[local_pad]) switch (SConfig::GetInstance().m_SIDevice[local_pad])
{ {
@ -979,7 +979,7 @@ bool NetPlayClient::GetNetPads(const u8 pad_nb, GCPadStatus* pad_status)
break; break;
} }
u8 ingame_pad = LocalPadToInGamePad(local_pad); int ingame_pad = LocalPadToInGamePad(local_pad);
// adjust the buffer either up or down // adjust the buffer either up or down
// inserting multiple padstates or dropping states // inserting multiple padstates or dropping states
@ -1140,20 +1140,20 @@ bool NetPlayClient::LocalPlayerHasControllerMapped() const
std::any_of(m_wiimote_map.begin(), m_wiimote_map.end(), mapping_matches_player_id); std::any_of(m_wiimote_map.begin(), m_wiimote_map.end(), mapping_matches_player_id);
} }
bool NetPlayClient::IsFirstInGamePad(u8 ingame_pad) const bool NetPlayClient::IsFirstInGamePad(int ingame_pad) const
{ {
return std::none_of(m_pad_map.begin(), m_pad_map.begin() + ingame_pad, return std::none_of(m_pad_map.begin(), m_pad_map.begin() + ingame_pad,
[](auto mapping) { return mapping > 0; }); [](auto mapping) { return mapping > 0; });
} }
u8 NetPlayClient::NumLocalPads() const int NetPlayClient::NumLocalPads() const
{ {
return static_cast<u8>(std::count_if(m_pad_map.begin(), m_pad_map.end(), [this](auto mapping) { return static_cast<int>(std::count_if(m_pad_map.begin(), m_pad_map.end(), [this](auto mapping) {
return mapping == m_local_player->pid; return mapping == m_local_player->pid;
})); }));
} }
u8 NetPlayClient::InGamePadToLocalPad(u8 ingame_pad) int NetPlayClient::InGamePadToLocalPad(int ingame_pad)
{ {
// not our pad // not our pad
if (m_pad_map[ingame_pad] != m_local_player->pid) if (m_pad_map[ingame_pad] != m_local_player->pid)
@ -1171,7 +1171,7 @@ u8 NetPlayClient::InGamePadToLocalPad(u8 ingame_pad)
return local_pad; return local_pad;
} }
u8 NetPlayClient::LocalPadToInGamePad(u8 local_pad) int NetPlayClient::LocalPadToInGamePad(int local_pad)
{ {
// Figure out which in-game pad maps to which local pad. // Figure out which in-game pad maps to which local pad.
// The logic we have here is that the local slots always // The logic we have here is that the local slots always
@ -1258,7 +1258,7 @@ void NetPlayClient::ComputeMD5(const std::string& file_identifier)
// called from ---CPU--- thread // called from ---CPU--- thread
// Actual Core function which is called on every frame // Actual Core function which is called on every frame
bool CSIDevice_GCController::NetPlay_GetInput(u8 numPAD, GCPadStatus* PadStatus) bool CSIDevice_GCController::NetPlay_GetInput(int numPAD, GCPadStatus* PadStatus)
{ {
std::lock_guard<std::mutex> lk(crit_netplay_client); std::lock_guard<std::mutex> lk(crit_netplay_client);
@ -1294,7 +1294,7 @@ u64 CEXIIPL::NetPlay_GetGCTime()
// called from ---CPU--- thread // called from ---CPU--- thread
// return the local pad num that should rumble given a ingame pad num // return the local pad num that should rumble given a ingame pad num
u8 CSIDevice_GCController::NetPlay_InGamePadToLocalPad(u8 numPAD) int CSIDevice_GCController::NetPlay_InGamePadToLocalPad(int numPAD)
{ {
std::lock_guard<std::mutex> lk(crit_netplay_client); std::lock_guard<std::mutex> lk(crit_netplay_client);

View File

@ -85,17 +85,17 @@ public:
// Send and receive pads values // Send and receive pads values
bool WiimoteUpdate(int _number, u8* data, const u8 size, u8 reporting_mode); bool WiimoteUpdate(int _number, u8* data, const u8 size, u8 reporting_mode);
bool GetNetPads(const u8 pad_nb, GCPadStatus* pad_status); bool GetNetPads(int pad_nb, GCPadStatus* pad_status);
void OnTraversalStateChanged() override; void OnTraversalStateChanged() override;
void OnConnectReady(ENetAddress addr) override; void OnConnectReady(ENetAddress addr) override;
void OnConnectFailed(u8 reason) override; void OnConnectFailed(u8 reason) override;
bool IsFirstInGamePad(u8 ingame_pad) const; bool IsFirstInGamePad(int ingame_pad) const;
u8 NumLocalPads() const; int NumLocalPads() const;
u8 InGamePadToLocalPad(u8 ingame_pad); int InGamePadToLocalPad(int ingame_pad);
u8 LocalPadToInGamePad(u8 localPad); int LocalPadToInGamePad(int localPad);
static void SendTimeBase(); static void SendTimeBase();
bool DoAllPlayersHaveGame(); bool DoAllPlayersHaveGame();
@ -154,8 +154,8 @@ private:
void SendStopGamePacket(); void SendStopGamePacket();
void UpdateDevices(); void UpdateDevices();
void SendPadState(const PadMapping in_game_pad, const GCPadStatus& np); void SendPadState(int in_game_pad, const GCPadStatus& np);
void SendWiimoteState(const PadMapping in_game_pad, const NetWiimote& nw); void SendWiimoteState(int in_game_pad, const NetWiimote& nw);
unsigned int OnData(sf::Packet& packet); unsigned int OnData(sf::Packet& packet);
void Send(sf::Packet& packet); void Send(sf::Packet& packet);
void Disconnect(); void Disconnect();