mirror of
https://github.com/shadps4-emu/ext-SDL.git
synced 2025-02-02 17:03:54 +00:00
Fixed PS3 controller initialization over Bluetooth
Now that we have hidapi that knows whether the controller is connected via Bluetooth or USB, this is much easier to fix.
This commit is contained in:
parent
e15da1985a
commit
32d015a6a0
@ -144,14 +144,14 @@ static SDL_bool HIDAPI_DriverPS3_InitDevice(SDL_HIDAPI_Device *device)
|
||||
device->context = ctx;
|
||||
|
||||
/* Set the controller into report mode over Bluetooth */
|
||||
{
|
||||
if (device->is_bluetooth) {
|
||||
Uint8 data[] = { 0xf4, 0x42, 0x03, 0x00, 0x00 };
|
||||
|
||||
SendFeatureReport(device->dev, data, sizeof(data));
|
||||
}
|
||||
|
||||
/* Set the controller into report mode over USB */
|
||||
{
|
||||
if (!device->is_bluetooth) {
|
||||
Uint8 data[USB_PACKET_LENGTH];
|
||||
|
||||
int size = ReadFeatureReport(device->dev, 0xf2, data, 17);
|
||||
|
@ -866,6 +866,7 @@ static SDL_HIDAPI_Device *HIDAPI_AddDevice(const struct SDL_hid_device_info *inf
|
||||
device->interface_protocol = info->interface_protocol;
|
||||
device->usage_page = info->usage_page;
|
||||
device->usage = info->usage;
|
||||
device->is_bluetooth = (info->bus_type == SDL_HID_API_BUS_BLUETOOTH);
|
||||
device->dev_lock = SDL_CreateMutex();
|
||||
|
||||
/* Need the device name before getting the driver to know whether to ignore this device */
|
||||
|
Loading…
x
Reference in New Issue
Block a user