mirror of
https://github.com/RPCS3/rpcs3.git
synced 2025-04-20 19:45:20 +00:00
DS3: fix battery_level aquisition
This commit is contained in:
parent
805d52987f
commit
2dc798d539
2 changed files with 16 additions and 16 deletions
|
@ -334,6 +334,20 @@ ds3_pad_handler::DataStatus ds3_pad_handler::get_data(ds3_device* ds3dev)
|
|||
if (ds3dev->padData[0] == 0x01 && ds3dev->padData[1] != 0xFF)
|
||||
#endif
|
||||
{
|
||||
const u8 battery_status = ds3dev->padData[12 + DS3_HID_OFFSET];
|
||||
|
||||
if (battery_status >= 0xEE)
|
||||
{
|
||||
// Charging (0xEE) or full (0xEF). Let's set the level to 100%.
|
||||
ds3dev->battery_level = 100;
|
||||
ds3dev->cable_state = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
ds3dev->battery_level = battery_capacity[std::min<u8>(battery_status, 5)];
|
||||
ds3dev->cable_state = 0;
|
||||
}
|
||||
|
||||
return DataStatus::NewData;
|
||||
}
|
||||
else
|
||||
|
@ -423,20 +437,6 @@ void ds3_pad_handler::get_extended_info(const std::shared_ptr<PadDevice>& device
|
|||
if (!ds3dev || !pad)
|
||||
return;
|
||||
|
||||
const u8 battery_status = ds3dev->padData[12 + DS3_HID_OFFSET];
|
||||
|
||||
if (battery_status >= 0xEE)
|
||||
{
|
||||
// Charging (0xEE) or full (0xEF). Let's set the level to 100%.
|
||||
ds3dev->battery_level = 100;
|
||||
ds3dev->cable_state = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
ds3dev->battery_level = battery_capacity[std::min<u8>(battery_status, 5)];
|
||||
ds3dev->cable_state = 0;
|
||||
}
|
||||
|
||||
pad->m_battery_level = ds3dev->battery_level;
|
||||
pad->m_cable_state = ds3dev->cable_state;
|
||||
|
||||
|
|
|
@ -575,8 +575,8 @@ void dualsense_pad_handler::get_extended_info(const std::shared_ptr<PadDevice>&
|
|||
|
||||
auto buf = dualsense_device->padData;
|
||||
|
||||
//pad->m_battery_level = dualsense_device->batteryLevel;
|
||||
//pad->m_cable_state = dualsense_device->cableState;
|
||||
pad->m_battery_level = dualsense_device->battery_level;
|
||||
pad->m_cable_state = dualsense_device->cable_state;
|
||||
|
||||
// these values come already calibrated, all we need to do is convert to ds3 range
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue