mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-01-10 04:51:32 +00:00
Merge pull request #6048 from gblues/master
Fix RETRO_DEVICE_ID_POINTER_PRESSED handling
This commit is contained in:
commit
af9911df8a
@ -335,8 +335,12 @@ static void wiiu_hid_attach(wiiu_hid_t *hid, wiiu_attach_event *event) {
|
|||||||
|
|
||||||
RARCH_LOG("[hid]: adding to adapter list\n");
|
RARCH_LOG("[hid]: adding to adapter list\n");
|
||||||
synchronized_add_to_adapters_list(adapter);
|
synchronized_add_to_adapters_list(adapter);
|
||||||
|
#if 0
|
||||||
|
// this is breaking again. Not sure why. But disabling it now so the
|
||||||
|
// startup/shutdown times aren't affected by the blocking call.
|
||||||
RARCH_LOG("[hid]: starting read loop\n");
|
RARCH_LOG("[hid]: starting read loop\n");
|
||||||
wiiu_start_read_loop(adapter);
|
wiiu_start_read_loop(adapter);
|
||||||
|
#endif
|
||||||
return;
|
return;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
@ -346,6 +350,11 @@ static void wiiu_hid_attach(wiiu_hid_t *hid, wiiu_attach_event *event) {
|
|||||||
void wiiu_start_read_loop(wiiu_adapter_t *adapter)
|
void wiiu_start_read_loop(wiiu_adapter_t *adapter)
|
||||||
{
|
{
|
||||||
adapter->state = ADAPTER_STATE_READING;
|
adapter->state = ADAPTER_STATE_READING;
|
||||||
|
#if 0
|
||||||
|
RARCH_LOG("HIDRead(0x%08x, 0x%08x, %d, 0x%08x, 0x%08x)\n",
|
||||||
|
adapter->handle, adapter->rx_buffer, adapter->rx_size,
|
||||||
|
wiiu_hid_read_loop_callback, adapter);
|
||||||
|
#endif
|
||||||
HIDRead(adapter->handle, adapter->rx_buffer, adapter->rx_size, wiiu_hid_read_loop_callback, adapter);
|
HIDRead(adapter->handle, adapter->rx_buffer, adapter->rx_size, wiiu_hid_read_loop_callback, adapter);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -392,7 +401,7 @@ static void log_buffer(uint8_t *data, uint32_t len) {
|
|||||||
|
|
||||||
static void wiiu_hid_do_read(wiiu_adapter_t *adapter, uint8_t *data, uint32_t length)
|
static void wiiu_hid_do_read(wiiu_adapter_t *adapter, uint8_t *data, uint32_t length)
|
||||||
{
|
{
|
||||||
// log_buffer(data, length);
|
// log_buffer(data, length);
|
||||||
// do_sampling()
|
// do_sampling()
|
||||||
// do other stuff?
|
// do other stuff?
|
||||||
}
|
}
|
||||||
@ -432,7 +441,7 @@ static void wiiu_hid_polling_thread_cleanup(OSThread *thread, void *stack) {
|
|||||||
OSFastMutex_Lock(&(adapters.lock));
|
OSFastMutex_Lock(&(adapters.lock));
|
||||||
incomplete = 0;
|
incomplete = 0;
|
||||||
for(adapter = adapters.list; adapter != NULL; adapter = adapter->next) {
|
for(adapter = adapters.list; adapter != NULL; adapter = adapter->next) {
|
||||||
if(adapter->state != ADAPTER_STATE_DONE) {
|
if(adapter->state == ADAPTER_STATE_READING) {
|
||||||
incomplete++;
|
incomplete++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -458,16 +467,19 @@ static void wiiu_hid_polling_thread_cleanup(OSThread *thread, void *stack) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void wiiu_handle_attach_events(wiiu_hid_t *hid, wiiu_attach_event *list) {
|
static void wiiu_handle_attach_events(wiiu_hid_t *hid, wiiu_attach_event *list) {
|
||||||
wiiu_attach_event *event;
|
wiiu_attach_event *event, *event_next = NULL;
|
||||||
|
|
||||||
if(!hid || !list)
|
if(!hid || !list)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for(event = list; event != NULL; event = event->next) {
|
for(event = list; event != NULL; event = event_next ) {
|
||||||
|
event_next = event->next;
|
||||||
if(event->type == HID_DEVICE_ATTACH) {
|
if(event->type == HID_DEVICE_ATTACH) {
|
||||||
wiiu_hid_attach(hid, event);
|
wiiu_hid_attach(hid, event);
|
||||||
} else {
|
} else {
|
||||||
wiiu_hid_detach(hid, event);
|
wiiu_hid_detach(hid, event);
|
||||||
}
|
}
|
||||||
|
delete_attach_event(event);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -211,7 +211,7 @@ static void wpad_get_buttons(unsigned pad, retro_bits_t *state)
|
|||||||
if(!wpad_query_pad(pad))
|
if(!wpad_query_pad(pad))
|
||||||
BIT256_CLEAR_ALL_PTR(state);
|
BIT256_CLEAR_ALL_PTR(state);
|
||||||
else
|
else
|
||||||
BITS_COPY16_PTR(state, button_state);
|
BITS_COPY32_PTR(state, button_state);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int16_t wpad_axis(unsigned pad, uint32_t axis)
|
static int16_t wpad_axis(unsigned pad, uint32_t axis)
|
||||||
|
Loading…
Reference in New Issue
Block a user