From 0057510caf7f291b7db0bd1716ccc108606f264f Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 14 Apr 2015 05:36:43 +0200 Subject: [PATCH] (libusb) Add disconnect message, change "Joypad" terminology to 'Device' --- input/drivers_hid/apple_hid.c | 2 +- input/drivers_hid/libusb_hid.c | 22 ++++++++-------------- input/drivers_joypad/linuxraw_joypad.c | 4 ++-- input/drivers_joypad/ps3_joypad.c | 2 +- input/drivers_joypad/sdl_joypad.c | 4 ++-- input/drivers_joypad/udev_joypad.c | 4 ++-- input/drivers_joypad/xdk_joypad.c | 2 +- input/input_autodetect.c | 2 +- 8 files changed, 18 insertions(+), 24 deletions(-) diff --git a/input/drivers_hid/apple_hid.c b/input/drivers_hid/apple_hid.c index 17fb164ecd..219ee8535c 100644 --- a/input/drivers_hid/apple_hid.c +++ b/input/drivers_hid/apple_hid.c @@ -218,7 +218,7 @@ static void apple_hid_device_remove(void *data, IOReturn result, void* sender) { char msg[PATH_MAX_LENGTH]; - snprintf(msg, sizeof(msg), "Joypad #%u (%s) disconnected.", + snprintf(msg, sizeof(msg), "Device #%u (%s) disconnected.", adapter->slot, adapter->name); rarch_main_msg_queue_push(msg, 0, 60, false); diff --git a/input/drivers_hid/libusb_hid.c b/input/drivers_hid/libusb_hid.c index 61ed974022..33fad45cad 100644 --- a/input/drivers_hid/libusb_hid.c +++ b/input/drivers_hid/libusb_hid.c @@ -19,6 +19,7 @@ #include #include "../connect/joypad_connection.h" #include "../../driver.h" +#include "../../runloop.h" #include "../input_autodetect.h" #include "../input_hid_driver.h" @@ -77,18 +78,7 @@ static void adapter_thread(void *data) if (fifo_read_avail(adapter->send_control_buffer) >= sizeof(send_command_size)) { fifo_read(adapter->send_control_buffer, send_command_buf, send_command_size); -#if 0 - report_number = send_command_buf[0]; - libusb_control_transfer(adapter->handle, - LIBUSB_REQUEST_TYPE_CLASS|LIBUSB_RECIPIENT_INTERFACE|LIBUSB_ENDPOINT_OUT, - 0x09/*HID Set_Report*/, - (2/*HID output*/ << 8) | report_number, - adapter->interface_number, - send_command_buf, send_command_size, - 1000/*timeout millis*/); -#else libusb_interrupt_transfer(adapter->handle, adapter->endpoint_out, send_command_buf, send_command_size, &tmp, 1000); -#endif } } slock_unlock(adapter->send_control_lock); @@ -327,9 +317,14 @@ static int remove_adapter(void *data, struct libusb_device *dev) { if (adapter->next->device == dev) { - fprintf(stderr, "Device 0x%p disconnected.\n", adapter->next->device); - + char msg[PATH_MAX_LENGTH]; struct libusb_adapter *new_next = NULL; + + fprintf(stderr, "Device 0x%p disconnected.\n", adapter->next->device); + snprintf(msg, sizeof(msg), "Device #%u (%s) disconnected.", + adapter->slot, adapter->next->name); + rarch_main_msg_queue_push(msg, 0, 60, false); + adapter->next->quitting = true; sthread_join(adapter->next->thread); @@ -345,7 +340,6 @@ static int remove_adapter(void *data, struct libusb_device *dev) free(adapter->next); adapter->next = new_next; - return 0; } diff --git a/input/drivers_joypad/linuxraw_joypad.c b/input/drivers_joypad/linuxraw_joypad.c index 84f9270a7f..d1e8efe853 100644 --- a/input/drivers_joypad/linuxraw_joypad.c +++ b/input/drivers_joypad/linuxraw_joypad.c @@ -155,12 +155,12 @@ static void handle_plugged_pad(void) if (g_hotplug) { char msg[512]; - snprintf(msg, sizeof(msg), "Joypad #%u (%s) disconnected.", idx, linuxraw_pads[idx].ident); + snprintf(msg, sizeof(msg), "Device #%u (%s) disconnected.", idx, linuxraw_pads[idx].ident); rarch_main_msg_queue_push(msg, 0, 60, false); } #endif - RARCH_LOG("[Joypad]: Joypad %s disconnected.\n", linuxraw_pads[idx].ident); + RARCH_LOG("[Joypad]: Device %s disconnected.\n", linuxraw_pads[idx].ident); close(linuxraw_pads[idx].fd); linuxraw_pads[idx].buttons = 0; memset(linuxraw_pads[idx].axes, 0, sizeof(linuxraw_pads[idx].axes)); diff --git a/input/drivers_joypad/ps3_joypad.c b/input/drivers_joypad/ps3_joypad.c index f91d1e7547..2f0aee3cf7 100644 --- a/input/drivers_joypad/ps3_joypad.c +++ b/input/drivers_joypad/ps3_joypad.c @@ -139,7 +139,7 @@ static void ps3_joypad_poll(void) char msg[512]; snprintf(msg, sizeof(msg), - "Joypad #%u (%s) disconnected.", port, ps3_joypad.ident); + "Device #%u (%s) disconnected.", port, ps3_joypad.ident); rarch_main_msg_queue_push(msg, 0, 60, false); RARCH_LOG("%s\n", msg); diff --git a/input/drivers_joypad/sdl_joypad.c b/input/drivers_joypad/sdl_joypad.c index dba6f7db14..44c8a20934 100644 --- a/input/drivers_joypad/sdl_joypad.c +++ b/input/drivers_joypad/sdl_joypad.c @@ -202,14 +202,14 @@ static void sdl_pad_disconnect(unsigned id) if (sdl_pads[id].controller) { SDL_GameControllerClose(sdl_pads[id].controller); - RARCH_LOG("[SDL]: Joypad #%u disconnected.\n", id); + RARCH_LOG("[SDL]: Device #%u disconnected.\n", id); } else #endif if (sdl_pads[id].joypad) { SDL_JoystickClose(sdl_pads[id].joypad); - RARCH_LOG("[SDL]: Joypad #%u disconnected.\n", id); + RARCH_LOG("[SDL]: Device #%u disconnected.\n", id); } settings->input.device_names[id][0] = '\0'; diff --git a/input/drivers_joypad/udev_joypad.c b/input/drivers_joypad/udev_joypad.c index 63344f82cf..3d12719ce9 100644 --- a/input/drivers_joypad/udev_joypad.c +++ b/input/drivers_joypad/udev_joypad.c @@ -471,7 +471,7 @@ static void udev_check_device(struct udev_device *dev, const char *path, bool ho if (hotplugged) { char msg[512]; - snprintf(msg, sizeof(msg), "Joypad #%u (%s) connected.", pad, path); + snprintf(msg, sizeof(msg), "Device #%u (%s) connected.", pad, path); rarch_main_msg_queue_push(msg, 0, 60, false); RARCH_LOG("[udev]: %s\n", msg); } @@ -496,7 +496,7 @@ static void udev_joypad_remove_device(const char *path) { #ifndef IS_JOYCONFIG char msg[512]; - snprintf(msg, sizeof(msg), "Joypad #%u (%s) disconnected.", i, udev_pads[i].ident); + snprintf(msg, sizeof(msg), "Device #%u (%s) disconnected.", i, udev_pads[i].ident); rarch_main_msg_queue_push(msg, 0, 60, false); RARCH_LOG("[udev]: %s\n", msg); #endif diff --git a/input/drivers_joypad/xdk_joypad.c b/input/drivers_joypad/xdk_joypad.c index 485cca4f78..b1f973603b 100644 --- a/input/drivers_joypad/xdk_joypad.c +++ b/input/drivers_joypad/xdk_joypad.c @@ -165,7 +165,7 @@ static void xdk_joypad_poll(void) pad_state[port] = 0; char msg[512]; - snprintf(msg, sizeof(msg), "Joypad #%u (%s) disconnected.", port, xdk_joypad.ident); + snprintf(msg, sizeof(msg), "Device #%u (%s) disconnected.", port, xdk_joypad.ident); rarch_main_msg_queue_push(msg, 0, 60, false); RARCH_LOG("%s\n", msg); } diff --git a/input/input_autodetect.c b/input/input_autodetect.c index 876dc3c9cd..88ac9346ad 100644 --- a/input/input_autodetect.c +++ b/input/input_autodetect.c @@ -120,7 +120,7 @@ static void input_autoconfigure_joypad_add( input_autoconfigure_joypad_conf(conf, settings->input.autoconf_binds[params->idx]); - snprintf(msg, sizeof(msg), "Joypad port #%u (%s) configured.", + snprintf(msg, sizeof(msg), "Device port #%u (%s) configured.", params->idx, params->name); if (!block_osd_spam)