mirror of
https://github.com/RPCS3/hidapi.git
synced 2026-01-31 01:25:21 +01:00
Add Sixaxis init for Monterey
This commit is contained in:
@@ -617,6 +617,14 @@ extern "C" {
|
||||
*/
|
||||
HID_API_EXPORT const char* HID_API_CALL hid_version_str(void);
|
||||
|
||||
#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
@@ -1549,3 +1549,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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user