mirror of
https://github.com/RPCS3/hidapi.git
synced 2024-11-26 19:40:35 +00:00
Add Sixaxis init for Monterey
This commit is contained in:
parent
9c712bbe82
commit
8b43a97a93
@ -622,6 +622,14 @@ extern "C" {
|
||||
*/
|
||||
int HID_API_EXPORT HID_API_CALL hid_write_control(hid_device *device, const unsigned char *data, size_t length);
|
||||
|
||||
#ifdef __APPLE__
|
||||
/** RPCS3 EDIT: Initializes a USB Sixaxis/DualShock 3 controller,
|
||||
* which requires report_id to be separate from the data packet.
|
||||
* Required on macOS Monterey.
|
||||
*/
|
||||
int HID_API_EXPORT hid_init_sixaxis_usb(hid_device *dev);
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
13
mac/hid.c
13
mac/hid.c
@ -1555,3 +1555,16 @@ HID_API_EXPORT const wchar_t * HID_API_CALL hid_error(hid_device *dev)
|
||||
return L"Success";
|
||||
return last_global_error_str;
|
||||
}
|
||||
|
||||
int HID_API_EXPORT hid_init_sixaxis_usb(hid_device *dev)
|
||||
{
|
||||
const char data[] = { 0x42, 0x0C, 0x00, 0x00 };
|
||||
size_t length = sizeof(data);
|
||||
const unsigned char report_id = 0xF4;
|
||||
|
||||
if (IOHIDDeviceSetReport(dev->device_handle, kIOHIDReportTypeFeature, report_id, data, length) == kIOReturnSuccess) {
|
||||
return length;
|
||||
}
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user