From 9bf67d4bb1db516a83f8e5c53bf6efee32131579 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Wed, 28 Mar 2012 21:52:17 +1300 Subject: [PATCH 01/27] Implemented /dev/usb/hid as libusb, but this will not work on mac. Code started for using hidapi instead. --- Externals/libusb/include/hidapi.h | 384 ++++++++++++++++ Externals/libusb/include/lusb0_usb.h | 427 ++++++++++++++++++ Externals/libusb/win32/hidapi.h | 384 ++++++++++++++++ Externals/libusb/win32/lusb0_usb.h | 427 ++++++++++++++++++ Externals/libusb/x64/hidapi.dll | Bin 0 -> 37888 bytes Externals/libusb/x64/hidapi.h | 384 ++++++++++++++++ Externals/libusb/x64/lusb0_usb.h | 427 ++++++++++++++++++ Source/Core/Common/Src/Log.h | 1 + Source/Core/Common/Src/LogManager.cpp | 1 + Source/Core/Core/Core.vcxproj | 14 +- Source/Core/Core/Core.vcxproj.filters | 9 + Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp | 3 +- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 416 +++++++++++++++++ .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 126 ++++++ Source/VSProps/Dolphin.Win32.props | 4 +- Source/VSProps/Dolphin.x64.props | 4 +- 16 files changed, 3000 insertions(+), 11 deletions(-) create mode 100644 Externals/libusb/include/hidapi.h create mode 100644 Externals/libusb/include/lusb0_usb.h create mode 100644 Externals/libusb/win32/hidapi.h create mode 100644 Externals/libusb/win32/lusb0_usb.h create mode 100644 Externals/libusb/x64/hidapi.dll create mode 100644 Externals/libusb/x64/hidapi.h create mode 100644 Externals/libusb/x64/lusb0_usb.h create mode 100644 Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp create mode 100644 Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h diff --git a/Externals/libusb/include/hidapi.h b/Externals/libusb/include/hidapi.h new file mode 100644 index 0000000000..bd912acd7f --- /dev/null +++ b/Externals/libusb/include/hidapi.h @@ -0,0 +1,384 @@ +/******************************************************* + HIDAPI - Multi-Platform library for + communication with HID devices. + + Alan Ott + Signal 11 Software + + 8/22/2009 + + Copyright 2009, All Rights Reserved. + + At the discretion of the user of this library, + this software may be licensed under the terms of the + GNU Public License v3, a BSD-Style license, or the + original HIDAPI license as outlined in the LICENSE.txt, + LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt + files located at the root of the source distribution. + These files may also be found in the public source + code repository located at: + http://github.com/signal11/hidapi . +********************************************************/ + +/** @file + * @defgroup API hidapi API + */ + +#ifndef HIDAPI_H__ +#define HIDAPI_H__ + +#include + +#ifdef _WIN32 + #define HID_API_EXPORT __declspec(dllexport) + #define HID_API_CALL +#else + #define HID_API_EXPORT /**< API export macro */ + #define HID_API_CALL /**< API call macro */ +#endif + +#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ + +#ifdef __cplusplus +extern "C" { +#endif + struct hid_device_; + typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ + + /** hidapi info structure */ + struct hid_device_info { + /** Platform-specific device path */ + char *path; + /** Device Vendor ID */ + unsigned short vendor_id; + /** Device Product ID */ + unsigned short product_id; + /** Serial Number */ + wchar_t *serial_number; + /** Device Release Number in binary-coded decimal, + also known as Device Version Number */ + unsigned short release_number; + /** Manufacturer String */ + wchar_t *manufacturer_string; + /** Product string */ + wchar_t *product_string; + /** Usage Page for this Device/Interface + (Windows/Mac only). */ + unsigned short usage_page; + /** Usage for this Device/Interface + (Windows/Mac only).*/ + unsigned short usage; + /** The USB interface which this logical device + represents. Valid on both Linux implementations + in all cases, and valid on the Windows implementation + only if the device contains more than one interface. */ + int interface_number; + + /** Pointer to the next device */ + struct hid_device_info *next; + }; + + + /** @brief Initialize the HIDAPI library. + + This function initializes the HIDAPI library. Calling it is not + strictly necessary, as it will be called automatically by + hid_enumerate() and any of the hid_open_*() functions if it is + needed. This function should be called at the beginning of + execution however, if there is a chance of HIDAPI handles + being opened by different threads simultaneously. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_init(void); + + /** @brief Finalize the HIDAPI library. + + This function frees all of the static data associated with + HIDAPI. It should be called at the end of execution to avoid + memory leaks. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_exit(void); + + /** @brief Enumerate the HID Devices. + + This function returns a linked list of all the HID devices + attached to the system which match vendor_id and product_id. + If @p vendor_id and @p product_id are both set to 0, then + all HID devices will be returned. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the types of device + to open. + @param product_id The Product ID (PID) of the types of + device to open. + + @returns + This function returns a pointer to a linked list of type + struct #hid_device, containing information about the HID devices + attached to the system, or NULL in the case of failure. Free + this linked list by calling hid_free_enumeration(). + */ + struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); + + /** @brief Free an enumeration Linked List + + This function frees a linked list created by hid_enumerate(). + + @ingroup API + @param devs Pointer to a list of struct_device returned from + hid_enumerate(). + */ + void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); + + /** @brief Open a HID device using a Vendor ID (VID), Product ID + (PID) and optionally a serial number. + + If @p serial_number is NULL, the first device with the + specified VID and PID is opened. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the device to open. + @param product_id The Product ID (PID) of the device to open. + @param serial_number The Serial Number of the device to open + (Optionally NULL). + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); + + /** @brief Open a HID device by its path name. + + The path name be determined by calling hid_enumerate(), or a + platform-specific path name can be used (eg: /dev/hidraw0 on + Linux). + + @ingroup API + @param path The path name of the device to open + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); + + /** @brief Write an Output report to a HID device. + + The first byte of @p data[] must contain the Report ID. For + devices which only support a single report, this must be set + to 0x0. The remaining bytes contain the report data. Since + the Report ID is mandatory, calls to hid_write() will always + contain one more byte than the report contains. For example, + if a hid report is 16 bytes long, 17 bytes must be passed to + hid_write(), the Report ID (or 0x0, for devices with a + single report), followed by the report data (16 bytes). In + this example, the length passed in would be 17. + + hid_write() will send the data on the first OUT endpoint, if + one exists. If it does not, it will send the data through + the Control Endpoint (Endpoint 0). + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); + + int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); + /** @brief Read an Input report from a HID device with timeout. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + @param milliseconds timeout in milliseconds or -1 for blocking wait. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); + + /** @brief Read an Input report from a HID device. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); + + /** @brief Set the device handle to be non-blocking. + + In non-blocking mode calls to hid_read() will return + immediately with a value of 0 if there is no data to be + read. In blocking mode, hid_read() will wait (block) until + there is data to read before returning. + + Nonblocking can be turned on and off at any time. + + @ingroup API + @param device A device handle returned from hid_open(). + @param nonblock enable or not the nonblocking reads + - 1 to enable nonblocking + - 0 to disable nonblocking. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); + + /** @brief Send a Feature report to the device. + + Feature reports are sent over the Control endpoint as a + Set_Report transfer. The first byte of @p data[] must + contain the Report ID. For devices which only support a + single report, this must be set to 0x0. The remaining bytes + contain the report data. Since the Report ID is mandatory, + calls to hid_send_feature_report() will always contain one + more byte than the report contains. For example, if a hid + report is 16 bytes long, 17 bytes must be passed to + hid_send_feature_report(): the Report ID (or 0x0, for + devices which do not use numbered reports), followed by the + report data (16 bytes). In this example, the length passed + in would be 17. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send, including + the report number. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); + + /** @brief Get a feature report from a HID device. + + Make sure to set the first byte of @p data[] to the Report + ID of the report to be read. Make sure to allow space for + this extra byte in @p data[]. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into, including + the Report ID. Set the first byte of @p data[] to the + Report ID of the report to be read. + @param length The number of bytes to read, including an + extra byte for the report ID. The buffer can be longer + than the actual report. + + @returns + This function returns the number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); + + /** @brief Close a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + */ + void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); + + /** @brief Get The Manufacturer String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Product String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Serial Number String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get a string from a HID device, based on its string index. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string_index The index of the string to get. + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); + + /** @brief Get a string describing the last error which occurred. + + @ingroup API + @param device A device handle returned from hid_open(). + + @returns + This function returns a string containing the last error + which occurred or NULL if none has occurred. + */ + HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/Externals/libusb/include/lusb0_usb.h b/Externals/libusb/include/lusb0_usb.h new file mode 100644 index 0000000000..b95fbf0a6d --- /dev/null +++ b/Externals/libusb/include/lusb0_usb.h @@ -0,0 +1,427 @@ +#ifndef __USB_H__ +#define __USB_H__ + +#include +#include + +/* + * 'interface' is defined somewhere in the Windows header files. This macro + * is deleted here to avoid conflicts and compile errors. + */ + +#ifdef interface +#undef interface +#endif + +/* + * PATH_MAX from limits.h can't be used on Windows if the dll and + * import libraries are build/used by different compilers + */ + +#define LIBUSB_PATH_MAX 512 + + +/* + * USB spec information + * + * This is all stuff grabbed from various USB specs and is pretty much + * not subject to change + */ + +/* + * Device and/or Interface Class codes + */ +#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ +#define USB_CLASS_AUDIO 1 +#define USB_CLASS_COMM 2 +#define USB_CLASS_HID 3 +#define USB_CLASS_PRINTER 7 +#define USB_CLASS_MASS_STORAGE 8 +#define USB_CLASS_HUB 9 +#define USB_CLASS_DATA 10 +#define USB_CLASS_VENDOR_SPEC 0xff + +/* + * Descriptor types + */ +#define USB_DT_DEVICE 0x01 +#define USB_DT_CONFIG 0x02 +#define USB_DT_STRING 0x03 +#define USB_DT_INTERFACE 0x04 +#define USB_DT_ENDPOINT 0x05 + +#define USB_DT_HID 0x21 +#define USB_DT_REPORT 0x22 +#define USB_DT_PHYSICAL 0x23 +#define USB_DT_HUB 0x29 + +/* + * Descriptor sizes per descriptor type + */ +#define USB_DT_DEVICE_SIZE 18 +#define USB_DT_CONFIG_SIZE 9 +#define USB_DT_INTERFACE_SIZE 9 +#define USB_DT_ENDPOINT_SIZE 7 +#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ +#define USB_DT_HUB_NONVAR_SIZE 7 + + +/* ensure byte-packed structures */ +#include + + +/* All standard descriptors have these 2 fields in common */ +struct usb_descriptor_header +{ + unsigned char bLength; + unsigned char bDescriptorType; +}; + +/* String descriptor */ +struct usb_string_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wData[1]; +}; + +/* HID descriptor */ +struct usb_hid_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdHID; + unsigned char bCountryCode; + unsigned char bNumDescriptors; +}; + +/* Endpoint descriptor */ +#define USB_MAXENDPOINTS 32 +struct usb_endpoint_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bEndpointAddress; + unsigned char bmAttributes; + unsigned short wMaxPacketSize; + unsigned char bInterval; + unsigned char bRefresh; + unsigned char bSynchAddress; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ +#define USB_ENDPOINT_DIR_MASK 0x80 + +#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ +#define USB_ENDPOINT_TYPE_CONTROL 0 +#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 +#define USB_ENDPOINT_TYPE_BULK 2 +#define USB_ENDPOINT_TYPE_INTERRUPT 3 + +/* Interface descriptor */ +#define USB_MAXINTERFACES 32 +struct usb_interface_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bInterfaceNumber; + unsigned char bAlternateSetting; + unsigned char bNumEndpoints; + unsigned char bInterfaceClass; + unsigned char bInterfaceSubClass; + unsigned char bInterfaceProtocol; + unsigned char iInterface; + + struct usb_endpoint_descriptor *endpoint; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_MAXALTSETTING 128 /* Hard limit */ + +struct usb_interface +{ + struct usb_interface_descriptor *altsetting; + + int num_altsetting; +}; + +/* Configuration descriptor information.. */ +#define USB_MAXCONFIG 8 +struct usb_config_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wTotalLength; + unsigned char bNumInterfaces; + unsigned char bConfigurationValue; + unsigned char iConfiguration; + unsigned char bmAttributes; + unsigned char MaxPower; + + struct usb_interface *interface; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +/* Device descriptor */ +struct usb_device_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdUSB; + unsigned char bDeviceClass; + unsigned char bDeviceSubClass; + unsigned char bDeviceProtocol; + unsigned char bMaxPacketSize0; + unsigned short idVendor; + unsigned short idProduct; + unsigned short bcdDevice; + unsigned char iManufacturer; + unsigned char iProduct; + unsigned char iSerialNumber; + unsigned char bNumConfigurations; +}; + +struct usb_ctrl_setup +{ + unsigned char bRequestType; + unsigned char bRequest; + unsigned short wValue; + unsigned short wIndex; + unsigned short wLength; +}; + +/* + * Standard requests + */ +#define USB_REQ_GET_STATUS 0x00 +#define USB_REQ_CLEAR_FEATURE 0x01 +/* 0x02 is reserved */ +#define USB_REQ_SET_FEATURE 0x03 +/* 0x04 is reserved */ +#define USB_REQ_SET_ADDRESS 0x05 +#define USB_REQ_GET_DESCRIPTOR 0x06 +#define USB_REQ_SET_DESCRIPTOR 0x07 +#define USB_REQ_GET_CONFIGURATION 0x08 +#define USB_REQ_SET_CONFIGURATION 0x09 +#define USB_REQ_GET_INTERFACE 0x0A +#define USB_REQ_SET_INTERFACE 0x0B +#define USB_REQ_SYNCH_FRAME 0x0C + +#define USB_TYPE_STANDARD (0x00 << 5) +#define USB_TYPE_CLASS (0x01 << 5) +#define USB_TYPE_VENDOR (0x02 << 5) +#define USB_TYPE_RESERVED (0x03 << 5) + +#define USB_RECIP_DEVICE 0x00 +#define USB_RECIP_INTERFACE 0x01 +#define USB_RECIP_ENDPOINT 0x02 +#define USB_RECIP_OTHER 0x03 + +/* + * Various libusb API related stuff + */ + +#define USB_ENDPOINT_IN 0x80 +#define USB_ENDPOINT_OUT 0x00 + +/* Error codes */ +#define USB_ERROR_BEGIN 500000 + +/* + * This is supposed to look weird. This file is generated from autoconf + * and I didn't want to make this too complicated. + */ +#define USB_LE16_TO_CPU(x) + +/* + * Device reset types for usb_reset_ex. + * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx + * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx + */ +#define USB_RESET_TYPE_RESET_PORT (1 << 0) +#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) +#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) + + +/* Data types */ +/* struct usb_device; */ +/* struct usb_bus; */ + +struct usb_device +{ + struct usb_device *next, *prev; + + char filename[LIBUSB_PATH_MAX]; + + struct usb_bus *bus; + + struct usb_device_descriptor descriptor; + struct usb_config_descriptor *config; + + void *dev; /* Darwin support */ + + unsigned char devnum; + + unsigned char num_children; + struct usb_device **children; +}; + +struct usb_bus +{ + struct usb_bus *next, *prev; + + char dirname[LIBUSB_PATH_MAX]; + + struct usb_device *devices; + unsigned long location; + + struct usb_device *root_dev; +}; + +/* Version information, Windows specific */ +struct usb_version +{ + struct + { + int major; + int minor; + int micro; + int nano; + } dll; + struct + { + int major; + int minor; + int micro; + int nano; + } driver; +}; + + +struct usb_dev_handle; +typedef struct usb_dev_handle usb_dev_handle; + +/* Variables */ +#ifndef __USB_C__ +#define usb_busses usb_get_busses() +#endif + + + +#include + + +#ifdef __cplusplus +extern "C" +{ +#endif + + /* Function prototypes */ + + /* usb.c */ + usb_dev_handle *usb_open(struct usb_device *dev); + int usb_close(usb_dev_handle *dev); + int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, + size_t buflen); + int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, + size_t buflen); + + /* descriptors.c */ + int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, + unsigned char type, unsigned char index, + void *buf, int size); + int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, + unsigned char index, void *buf, int size); + + /* .c */ + int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, + int value, int index, char *bytes, int size, + int timeout); + int usb_set_configuration(usb_dev_handle *dev, int configuration); + int usb_claim_interface(usb_dev_handle *dev, int interface); + int usb_release_interface(usb_dev_handle *dev, int interface); + int usb_set_altinterface(usb_dev_handle *dev, int alternate); + int usb_resetep(usb_dev_handle *dev, unsigned int ep); + int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); + int usb_reset(usb_dev_handle *dev); + int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); + + char *usb_strerror(void); + + void usb_init(void); + void usb_set_debug(int level); + int usb_find_busses(void); + int usb_find_devices(void); + struct usb_device *usb_device(usb_dev_handle *dev); + struct usb_bus *usb_get_busses(void); + + + /* Windows specific functions */ + +#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 + int usb_install_service_np(void); + void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 + int usb_uninstall_service_np(void); + void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 + int usb_install_driver_np(const char *inf_file); + void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 + int usb_touch_inf_file_np(const char *inf_file); + void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 + int usb_install_needs_restart_np(void); + +#define LIBUSB_HAS_INSTALL_NP 1 + int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); + int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); + #define usb_install_np usb_install_npA + void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + + const struct usb_version *usb_get_version(void); + + int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep, int pktsize); + int usb_bulk_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + + int usb_submit_async(void *context, char *bytes, int size); + int usb_reap_async(void *context, int timeout); + int usb_reap_async_nocancel(void *context, int timeout); + int usb_cancel_async(void *context); + int usb_free_async(void **context); + + +#ifdef __cplusplus +} +#endif + +#endif /* __USB_H__ */ + diff --git a/Externals/libusb/win32/hidapi.h b/Externals/libusb/win32/hidapi.h new file mode 100644 index 0000000000..bd912acd7f --- /dev/null +++ b/Externals/libusb/win32/hidapi.h @@ -0,0 +1,384 @@ +/******************************************************* + HIDAPI - Multi-Platform library for + communication with HID devices. + + Alan Ott + Signal 11 Software + + 8/22/2009 + + Copyright 2009, All Rights Reserved. + + At the discretion of the user of this library, + this software may be licensed under the terms of the + GNU Public License v3, a BSD-Style license, or the + original HIDAPI license as outlined in the LICENSE.txt, + LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt + files located at the root of the source distribution. + These files may also be found in the public source + code repository located at: + http://github.com/signal11/hidapi . +********************************************************/ + +/** @file + * @defgroup API hidapi API + */ + +#ifndef HIDAPI_H__ +#define HIDAPI_H__ + +#include + +#ifdef _WIN32 + #define HID_API_EXPORT __declspec(dllexport) + #define HID_API_CALL +#else + #define HID_API_EXPORT /**< API export macro */ + #define HID_API_CALL /**< API call macro */ +#endif + +#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ + +#ifdef __cplusplus +extern "C" { +#endif + struct hid_device_; + typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ + + /** hidapi info structure */ + struct hid_device_info { + /** Platform-specific device path */ + char *path; + /** Device Vendor ID */ + unsigned short vendor_id; + /** Device Product ID */ + unsigned short product_id; + /** Serial Number */ + wchar_t *serial_number; + /** Device Release Number in binary-coded decimal, + also known as Device Version Number */ + unsigned short release_number; + /** Manufacturer String */ + wchar_t *manufacturer_string; + /** Product string */ + wchar_t *product_string; + /** Usage Page for this Device/Interface + (Windows/Mac only). */ + unsigned short usage_page; + /** Usage for this Device/Interface + (Windows/Mac only).*/ + unsigned short usage; + /** The USB interface which this logical device + represents. Valid on both Linux implementations + in all cases, and valid on the Windows implementation + only if the device contains more than one interface. */ + int interface_number; + + /** Pointer to the next device */ + struct hid_device_info *next; + }; + + + /** @brief Initialize the HIDAPI library. + + This function initializes the HIDAPI library. Calling it is not + strictly necessary, as it will be called automatically by + hid_enumerate() and any of the hid_open_*() functions if it is + needed. This function should be called at the beginning of + execution however, if there is a chance of HIDAPI handles + being opened by different threads simultaneously. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_init(void); + + /** @brief Finalize the HIDAPI library. + + This function frees all of the static data associated with + HIDAPI. It should be called at the end of execution to avoid + memory leaks. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_exit(void); + + /** @brief Enumerate the HID Devices. + + This function returns a linked list of all the HID devices + attached to the system which match vendor_id and product_id. + If @p vendor_id and @p product_id are both set to 0, then + all HID devices will be returned. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the types of device + to open. + @param product_id The Product ID (PID) of the types of + device to open. + + @returns + This function returns a pointer to a linked list of type + struct #hid_device, containing information about the HID devices + attached to the system, or NULL in the case of failure. Free + this linked list by calling hid_free_enumeration(). + */ + struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); + + /** @brief Free an enumeration Linked List + + This function frees a linked list created by hid_enumerate(). + + @ingroup API + @param devs Pointer to a list of struct_device returned from + hid_enumerate(). + */ + void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); + + /** @brief Open a HID device using a Vendor ID (VID), Product ID + (PID) and optionally a serial number. + + If @p serial_number is NULL, the first device with the + specified VID and PID is opened. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the device to open. + @param product_id The Product ID (PID) of the device to open. + @param serial_number The Serial Number of the device to open + (Optionally NULL). + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); + + /** @brief Open a HID device by its path name. + + The path name be determined by calling hid_enumerate(), or a + platform-specific path name can be used (eg: /dev/hidraw0 on + Linux). + + @ingroup API + @param path The path name of the device to open + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); + + /** @brief Write an Output report to a HID device. + + The first byte of @p data[] must contain the Report ID. For + devices which only support a single report, this must be set + to 0x0. The remaining bytes contain the report data. Since + the Report ID is mandatory, calls to hid_write() will always + contain one more byte than the report contains. For example, + if a hid report is 16 bytes long, 17 bytes must be passed to + hid_write(), the Report ID (or 0x0, for devices with a + single report), followed by the report data (16 bytes). In + this example, the length passed in would be 17. + + hid_write() will send the data on the first OUT endpoint, if + one exists. If it does not, it will send the data through + the Control Endpoint (Endpoint 0). + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); + + int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); + /** @brief Read an Input report from a HID device with timeout. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + @param milliseconds timeout in milliseconds or -1 for blocking wait. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); + + /** @brief Read an Input report from a HID device. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); + + /** @brief Set the device handle to be non-blocking. + + In non-blocking mode calls to hid_read() will return + immediately with a value of 0 if there is no data to be + read. In blocking mode, hid_read() will wait (block) until + there is data to read before returning. + + Nonblocking can be turned on and off at any time. + + @ingroup API + @param device A device handle returned from hid_open(). + @param nonblock enable or not the nonblocking reads + - 1 to enable nonblocking + - 0 to disable nonblocking. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); + + /** @brief Send a Feature report to the device. + + Feature reports are sent over the Control endpoint as a + Set_Report transfer. The first byte of @p data[] must + contain the Report ID. For devices which only support a + single report, this must be set to 0x0. The remaining bytes + contain the report data. Since the Report ID is mandatory, + calls to hid_send_feature_report() will always contain one + more byte than the report contains. For example, if a hid + report is 16 bytes long, 17 bytes must be passed to + hid_send_feature_report(): the Report ID (or 0x0, for + devices which do not use numbered reports), followed by the + report data (16 bytes). In this example, the length passed + in would be 17. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send, including + the report number. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); + + /** @brief Get a feature report from a HID device. + + Make sure to set the first byte of @p data[] to the Report + ID of the report to be read. Make sure to allow space for + this extra byte in @p data[]. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into, including + the Report ID. Set the first byte of @p data[] to the + Report ID of the report to be read. + @param length The number of bytes to read, including an + extra byte for the report ID. The buffer can be longer + than the actual report. + + @returns + This function returns the number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); + + /** @brief Close a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + */ + void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); + + /** @brief Get The Manufacturer String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Product String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Serial Number String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get a string from a HID device, based on its string index. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string_index The index of the string to get. + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); + + /** @brief Get a string describing the last error which occurred. + + @ingroup API + @param device A device handle returned from hid_open(). + + @returns + This function returns a string containing the last error + which occurred or NULL if none has occurred. + */ + HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/Externals/libusb/win32/lusb0_usb.h b/Externals/libusb/win32/lusb0_usb.h new file mode 100644 index 0000000000..b95fbf0a6d --- /dev/null +++ b/Externals/libusb/win32/lusb0_usb.h @@ -0,0 +1,427 @@ +#ifndef __USB_H__ +#define __USB_H__ + +#include +#include + +/* + * 'interface' is defined somewhere in the Windows header files. This macro + * is deleted here to avoid conflicts and compile errors. + */ + +#ifdef interface +#undef interface +#endif + +/* + * PATH_MAX from limits.h can't be used on Windows if the dll and + * import libraries are build/used by different compilers + */ + +#define LIBUSB_PATH_MAX 512 + + +/* + * USB spec information + * + * This is all stuff grabbed from various USB specs and is pretty much + * not subject to change + */ + +/* + * Device and/or Interface Class codes + */ +#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ +#define USB_CLASS_AUDIO 1 +#define USB_CLASS_COMM 2 +#define USB_CLASS_HID 3 +#define USB_CLASS_PRINTER 7 +#define USB_CLASS_MASS_STORAGE 8 +#define USB_CLASS_HUB 9 +#define USB_CLASS_DATA 10 +#define USB_CLASS_VENDOR_SPEC 0xff + +/* + * Descriptor types + */ +#define USB_DT_DEVICE 0x01 +#define USB_DT_CONFIG 0x02 +#define USB_DT_STRING 0x03 +#define USB_DT_INTERFACE 0x04 +#define USB_DT_ENDPOINT 0x05 + +#define USB_DT_HID 0x21 +#define USB_DT_REPORT 0x22 +#define USB_DT_PHYSICAL 0x23 +#define USB_DT_HUB 0x29 + +/* + * Descriptor sizes per descriptor type + */ +#define USB_DT_DEVICE_SIZE 18 +#define USB_DT_CONFIG_SIZE 9 +#define USB_DT_INTERFACE_SIZE 9 +#define USB_DT_ENDPOINT_SIZE 7 +#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ +#define USB_DT_HUB_NONVAR_SIZE 7 + + +/* ensure byte-packed structures */ +#include + + +/* All standard descriptors have these 2 fields in common */ +struct usb_descriptor_header +{ + unsigned char bLength; + unsigned char bDescriptorType; +}; + +/* String descriptor */ +struct usb_string_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wData[1]; +}; + +/* HID descriptor */ +struct usb_hid_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdHID; + unsigned char bCountryCode; + unsigned char bNumDescriptors; +}; + +/* Endpoint descriptor */ +#define USB_MAXENDPOINTS 32 +struct usb_endpoint_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bEndpointAddress; + unsigned char bmAttributes; + unsigned short wMaxPacketSize; + unsigned char bInterval; + unsigned char bRefresh; + unsigned char bSynchAddress; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ +#define USB_ENDPOINT_DIR_MASK 0x80 + +#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ +#define USB_ENDPOINT_TYPE_CONTROL 0 +#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 +#define USB_ENDPOINT_TYPE_BULK 2 +#define USB_ENDPOINT_TYPE_INTERRUPT 3 + +/* Interface descriptor */ +#define USB_MAXINTERFACES 32 +struct usb_interface_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bInterfaceNumber; + unsigned char bAlternateSetting; + unsigned char bNumEndpoints; + unsigned char bInterfaceClass; + unsigned char bInterfaceSubClass; + unsigned char bInterfaceProtocol; + unsigned char iInterface; + + struct usb_endpoint_descriptor *endpoint; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_MAXALTSETTING 128 /* Hard limit */ + +struct usb_interface +{ + struct usb_interface_descriptor *altsetting; + + int num_altsetting; +}; + +/* Configuration descriptor information.. */ +#define USB_MAXCONFIG 8 +struct usb_config_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wTotalLength; + unsigned char bNumInterfaces; + unsigned char bConfigurationValue; + unsigned char iConfiguration; + unsigned char bmAttributes; + unsigned char MaxPower; + + struct usb_interface *interface; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +/* Device descriptor */ +struct usb_device_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdUSB; + unsigned char bDeviceClass; + unsigned char bDeviceSubClass; + unsigned char bDeviceProtocol; + unsigned char bMaxPacketSize0; + unsigned short idVendor; + unsigned short idProduct; + unsigned short bcdDevice; + unsigned char iManufacturer; + unsigned char iProduct; + unsigned char iSerialNumber; + unsigned char bNumConfigurations; +}; + +struct usb_ctrl_setup +{ + unsigned char bRequestType; + unsigned char bRequest; + unsigned short wValue; + unsigned short wIndex; + unsigned short wLength; +}; + +/* + * Standard requests + */ +#define USB_REQ_GET_STATUS 0x00 +#define USB_REQ_CLEAR_FEATURE 0x01 +/* 0x02 is reserved */ +#define USB_REQ_SET_FEATURE 0x03 +/* 0x04 is reserved */ +#define USB_REQ_SET_ADDRESS 0x05 +#define USB_REQ_GET_DESCRIPTOR 0x06 +#define USB_REQ_SET_DESCRIPTOR 0x07 +#define USB_REQ_GET_CONFIGURATION 0x08 +#define USB_REQ_SET_CONFIGURATION 0x09 +#define USB_REQ_GET_INTERFACE 0x0A +#define USB_REQ_SET_INTERFACE 0x0B +#define USB_REQ_SYNCH_FRAME 0x0C + +#define USB_TYPE_STANDARD (0x00 << 5) +#define USB_TYPE_CLASS (0x01 << 5) +#define USB_TYPE_VENDOR (0x02 << 5) +#define USB_TYPE_RESERVED (0x03 << 5) + +#define USB_RECIP_DEVICE 0x00 +#define USB_RECIP_INTERFACE 0x01 +#define USB_RECIP_ENDPOINT 0x02 +#define USB_RECIP_OTHER 0x03 + +/* + * Various libusb API related stuff + */ + +#define USB_ENDPOINT_IN 0x80 +#define USB_ENDPOINT_OUT 0x00 + +/* Error codes */ +#define USB_ERROR_BEGIN 500000 + +/* + * This is supposed to look weird. This file is generated from autoconf + * and I didn't want to make this too complicated. + */ +#define USB_LE16_TO_CPU(x) + +/* + * Device reset types for usb_reset_ex. + * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx + * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx + */ +#define USB_RESET_TYPE_RESET_PORT (1 << 0) +#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) +#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) + + +/* Data types */ +/* struct usb_device; */ +/* struct usb_bus; */ + +struct usb_device +{ + struct usb_device *next, *prev; + + char filename[LIBUSB_PATH_MAX]; + + struct usb_bus *bus; + + struct usb_device_descriptor descriptor; + struct usb_config_descriptor *config; + + void *dev; /* Darwin support */ + + unsigned char devnum; + + unsigned char num_children; + struct usb_device **children; +}; + +struct usb_bus +{ + struct usb_bus *next, *prev; + + char dirname[LIBUSB_PATH_MAX]; + + struct usb_device *devices; + unsigned long location; + + struct usb_device *root_dev; +}; + +/* Version information, Windows specific */ +struct usb_version +{ + struct + { + int major; + int minor; + int micro; + int nano; + } dll; + struct + { + int major; + int minor; + int micro; + int nano; + } driver; +}; + + +struct usb_dev_handle; +typedef struct usb_dev_handle usb_dev_handle; + +/* Variables */ +#ifndef __USB_C__ +#define usb_busses usb_get_busses() +#endif + + + +#include + + +#ifdef __cplusplus +extern "C" +{ +#endif + + /* Function prototypes */ + + /* usb.c */ + usb_dev_handle *usb_open(struct usb_device *dev); + int usb_close(usb_dev_handle *dev); + int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, + size_t buflen); + int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, + size_t buflen); + + /* descriptors.c */ + int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, + unsigned char type, unsigned char index, + void *buf, int size); + int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, + unsigned char index, void *buf, int size); + + /* .c */ + int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, + int value, int index, char *bytes, int size, + int timeout); + int usb_set_configuration(usb_dev_handle *dev, int configuration); + int usb_claim_interface(usb_dev_handle *dev, int interface); + int usb_release_interface(usb_dev_handle *dev, int interface); + int usb_set_altinterface(usb_dev_handle *dev, int alternate); + int usb_resetep(usb_dev_handle *dev, unsigned int ep); + int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); + int usb_reset(usb_dev_handle *dev); + int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); + + char *usb_strerror(void); + + void usb_init(void); + void usb_set_debug(int level); + int usb_find_busses(void); + int usb_find_devices(void); + struct usb_device *usb_device(usb_dev_handle *dev); + struct usb_bus *usb_get_busses(void); + + + /* Windows specific functions */ + +#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 + int usb_install_service_np(void); + void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 + int usb_uninstall_service_np(void); + void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 + int usb_install_driver_np(const char *inf_file); + void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 + int usb_touch_inf_file_np(const char *inf_file); + void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 + int usb_install_needs_restart_np(void); + +#define LIBUSB_HAS_INSTALL_NP 1 + int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); + int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); + #define usb_install_np usb_install_npA + void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + + const struct usb_version *usb_get_version(void); + + int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep, int pktsize); + int usb_bulk_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + + int usb_submit_async(void *context, char *bytes, int size); + int usb_reap_async(void *context, int timeout); + int usb_reap_async_nocancel(void *context, int timeout); + int usb_cancel_async(void *context); + int usb_free_async(void **context); + + +#ifdef __cplusplus +} +#endif + +#endif /* __USB_H__ */ + diff --git a/Externals/libusb/x64/hidapi.dll b/Externals/libusb/x64/hidapi.dll new file mode 100644 index 0000000000000000000000000000000000000000..1461560e500765127d643e677dee6cd415a2c708 GIT binary patch literal 37888 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 literal 0 HcmV?d00001 diff --git a/Externals/libusb/x64/hidapi.h b/Externals/libusb/x64/hidapi.h new file mode 100644 index 0000000000..bd912acd7f --- /dev/null +++ b/Externals/libusb/x64/hidapi.h @@ -0,0 +1,384 @@ +/******************************************************* + HIDAPI - Multi-Platform library for + communication with HID devices. + + Alan Ott + Signal 11 Software + + 8/22/2009 + + Copyright 2009, All Rights Reserved. + + At the discretion of the user of this library, + this software may be licensed under the terms of the + GNU Public License v3, a BSD-Style license, or the + original HIDAPI license as outlined in the LICENSE.txt, + LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt + files located at the root of the source distribution. + These files may also be found in the public source + code repository located at: + http://github.com/signal11/hidapi . +********************************************************/ + +/** @file + * @defgroup API hidapi API + */ + +#ifndef HIDAPI_H__ +#define HIDAPI_H__ + +#include + +#ifdef _WIN32 + #define HID_API_EXPORT __declspec(dllexport) + #define HID_API_CALL +#else + #define HID_API_EXPORT /**< API export macro */ + #define HID_API_CALL /**< API call macro */ +#endif + +#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ + +#ifdef __cplusplus +extern "C" { +#endif + struct hid_device_; + typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ + + /** hidapi info structure */ + struct hid_device_info { + /** Platform-specific device path */ + char *path; + /** Device Vendor ID */ + unsigned short vendor_id; + /** Device Product ID */ + unsigned short product_id; + /** Serial Number */ + wchar_t *serial_number; + /** Device Release Number in binary-coded decimal, + also known as Device Version Number */ + unsigned short release_number; + /** Manufacturer String */ + wchar_t *manufacturer_string; + /** Product string */ + wchar_t *product_string; + /** Usage Page for this Device/Interface + (Windows/Mac only). */ + unsigned short usage_page; + /** Usage for this Device/Interface + (Windows/Mac only).*/ + unsigned short usage; + /** The USB interface which this logical device + represents. Valid on both Linux implementations + in all cases, and valid on the Windows implementation + only if the device contains more than one interface. */ + int interface_number; + + /** Pointer to the next device */ + struct hid_device_info *next; + }; + + + /** @brief Initialize the HIDAPI library. + + This function initializes the HIDAPI library. Calling it is not + strictly necessary, as it will be called automatically by + hid_enumerate() and any of the hid_open_*() functions if it is + needed. This function should be called at the beginning of + execution however, if there is a chance of HIDAPI handles + being opened by different threads simultaneously. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_init(void); + + /** @brief Finalize the HIDAPI library. + + This function frees all of the static data associated with + HIDAPI. It should be called at the end of execution to avoid + memory leaks. + + @ingroup API + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_exit(void); + + /** @brief Enumerate the HID Devices. + + This function returns a linked list of all the HID devices + attached to the system which match vendor_id and product_id. + If @p vendor_id and @p product_id are both set to 0, then + all HID devices will be returned. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the types of device + to open. + @param product_id The Product ID (PID) of the types of + device to open. + + @returns + This function returns a pointer to a linked list of type + struct #hid_device, containing information about the HID devices + attached to the system, or NULL in the case of failure. Free + this linked list by calling hid_free_enumeration(). + */ + struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); + + /** @brief Free an enumeration Linked List + + This function frees a linked list created by hid_enumerate(). + + @ingroup API + @param devs Pointer to a list of struct_device returned from + hid_enumerate(). + */ + void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); + + /** @brief Open a HID device using a Vendor ID (VID), Product ID + (PID) and optionally a serial number. + + If @p serial_number is NULL, the first device with the + specified VID and PID is opened. + + @ingroup API + @param vendor_id The Vendor ID (VID) of the device to open. + @param product_id The Product ID (PID) of the device to open. + @param serial_number The Serial Number of the device to open + (Optionally NULL). + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); + + /** @brief Open a HID device by its path name. + + The path name be determined by calling hid_enumerate(), or a + platform-specific path name can be used (eg: /dev/hidraw0 on + Linux). + + @ingroup API + @param path The path name of the device to open + + @returns + This function returns a pointer to a #hid_device object on + success or NULL on failure. + */ + HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); + + /** @brief Write an Output report to a HID device. + + The first byte of @p data[] must contain the Report ID. For + devices which only support a single report, this must be set + to 0x0. The remaining bytes contain the report data. Since + the Report ID is mandatory, calls to hid_write() will always + contain one more byte than the report contains. For example, + if a hid report is 16 bytes long, 17 bytes must be passed to + hid_write(), the Report ID (or 0x0, for devices with a + single report), followed by the report data (16 bytes). In + this example, the length passed in would be 17. + + hid_write() will send the data on the first OUT endpoint, if + one exists. If it does not, it will send the data through + the Control Endpoint (Endpoint 0). + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); + + int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); + /** @brief Read an Input report from a HID device with timeout. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + @param milliseconds timeout in milliseconds or -1 for blocking wait. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); + + /** @brief Read an Input report from a HID device. + + Input reports are returned + to the host through the INTERRUPT IN endpoint. The first byte will + contain the Report number if the device uses numbered reports. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into. + @param length The number of bytes to read. For devices with + multiple reports, make sure to read an extra byte for + the report number. + + @returns + This function returns the actual number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); + + /** @brief Set the device handle to be non-blocking. + + In non-blocking mode calls to hid_read() will return + immediately with a value of 0 if there is no data to be + read. In blocking mode, hid_read() will wait (block) until + there is data to read before returning. + + Nonblocking can be turned on and off at any time. + + @ingroup API + @param device A device handle returned from hid_open(). + @param nonblock enable or not the nonblocking reads + - 1 to enable nonblocking + - 0 to disable nonblocking. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); + + /** @brief Send a Feature report to the device. + + Feature reports are sent over the Control endpoint as a + Set_Report transfer. The first byte of @p data[] must + contain the Report ID. For devices which only support a + single report, this must be set to 0x0. The remaining bytes + contain the report data. Since the Report ID is mandatory, + calls to hid_send_feature_report() will always contain one + more byte than the report contains. For example, if a hid + report is 16 bytes long, 17 bytes must be passed to + hid_send_feature_report(): the Report ID (or 0x0, for + devices which do not use numbered reports), followed by the + report data (16 bytes). In this example, the length passed + in would be 17. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data The data to send, including the report number as + the first byte. + @param length The length in bytes of the data to send, including + the report number. + + @returns + This function returns the actual number of bytes written and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); + + /** @brief Get a feature report from a HID device. + + Make sure to set the first byte of @p data[] to the Report + ID of the report to be read. Make sure to allow space for + this extra byte in @p data[]. + + @ingroup API + @param device A device handle returned from hid_open(). + @param data A buffer to put the read data into, including + the Report ID. Set the first byte of @p data[] to the + Report ID of the report to be read. + @param length The number of bytes to read, including an + extra byte for the report ID. The buffer can be longer + than the actual report. + + @returns + This function returns the number of bytes read and + -1 on error. + */ + int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); + + /** @brief Close a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + */ + void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); + + /** @brief Get The Manufacturer String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Product String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get The Serial Number String from a HID device. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); + + /** @brief Get a string from a HID device, based on its string index. + + @ingroup API + @param device A device handle returned from hid_open(). + @param string_index The index of the string to get. + @param string A wide string buffer to put the data into. + @param maxlen The length of the buffer in multiples of wchar_t. + + @returns + This function returns 0 on success and -1 on error. + */ + int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); + + /** @brief Get a string describing the last error which occurred. + + @ingroup API + @param device A device handle returned from hid_open(). + + @returns + This function returns a string containing the last error + which occurred or NULL if none has occurred. + */ + HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); + +#ifdef __cplusplus +} +#endif + +#endif + diff --git a/Externals/libusb/x64/lusb0_usb.h b/Externals/libusb/x64/lusb0_usb.h new file mode 100644 index 0000000000..b95fbf0a6d --- /dev/null +++ b/Externals/libusb/x64/lusb0_usb.h @@ -0,0 +1,427 @@ +#ifndef __USB_H__ +#define __USB_H__ + +#include +#include + +/* + * 'interface' is defined somewhere in the Windows header files. This macro + * is deleted here to avoid conflicts and compile errors. + */ + +#ifdef interface +#undef interface +#endif + +/* + * PATH_MAX from limits.h can't be used on Windows if the dll and + * import libraries are build/used by different compilers + */ + +#define LIBUSB_PATH_MAX 512 + + +/* + * USB spec information + * + * This is all stuff grabbed from various USB specs and is pretty much + * not subject to change + */ + +/* + * Device and/or Interface Class codes + */ +#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ +#define USB_CLASS_AUDIO 1 +#define USB_CLASS_COMM 2 +#define USB_CLASS_HID 3 +#define USB_CLASS_PRINTER 7 +#define USB_CLASS_MASS_STORAGE 8 +#define USB_CLASS_HUB 9 +#define USB_CLASS_DATA 10 +#define USB_CLASS_VENDOR_SPEC 0xff + +/* + * Descriptor types + */ +#define USB_DT_DEVICE 0x01 +#define USB_DT_CONFIG 0x02 +#define USB_DT_STRING 0x03 +#define USB_DT_INTERFACE 0x04 +#define USB_DT_ENDPOINT 0x05 + +#define USB_DT_HID 0x21 +#define USB_DT_REPORT 0x22 +#define USB_DT_PHYSICAL 0x23 +#define USB_DT_HUB 0x29 + +/* + * Descriptor sizes per descriptor type + */ +#define USB_DT_DEVICE_SIZE 18 +#define USB_DT_CONFIG_SIZE 9 +#define USB_DT_INTERFACE_SIZE 9 +#define USB_DT_ENDPOINT_SIZE 7 +#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ +#define USB_DT_HUB_NONVAR_SIZE 7 + + +/* ensure byte-packed structures */ +#include + + +/* All standard descriptors have these 2 fields in common */ +struct usb_descriptor_header +{ + unsigned char bLength; + unsigned char bDescriptorType; +}; + +/* String descriptor */ +struct usb_string_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wData[1]; +}; + +/* HID descriptor */ +struct usb_hid_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdHID; + unsigned char bCountryCode; + unsigned char bNumDescriptors; +}; + +/* Endpoint descriptor */ +#define USB_MAXENDPOINTS 32 +struct usb_endpoint_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bEndpointAddress; + unsigned char bmAttributes; + unsigned short wMaxPacketSize; + unsigned char bInterval; + unsigned char bRefresh; + unsigned char bSynchAddress; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ +#define USB_ENDPOINT_DIR_MASK 0x80 + +#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ +#define USB_ENDPOINT_TYPE_CONTROL 0 +#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 +#define USB_ENDPOINT_TYPE_BULK 2 +#define USB_ENDPOINT_TYPE_INTERRUPT 3 + +/* Interface descriptor */ +#define USB_MAXINTERFACES 32 +struct usb_interface_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned char bInterfaceNumber; + unsigned char bAlternateSetting; + unsigned char bNumEndpoints; + unsigned char bInterfaceClass; + unsigned char bInterfaceSubClass; + unsigned char bInterfaceProtocol; + unsigned char iInterface; + + struct usb_endpoint_descriptor *endpoint; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +#define USB_MAXALTSETTING 128 /* Hard limit */ + +struct usb_interface +{ + struct usb_interface_descriptor *altsetting; + + int num_altsetting; +}; + +/* Configuration descriptor information.. */ +#define USB_MAXCONFIG 8 +struct usb_config_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short wTotalLength; + unsigned char bNumInterfaces; + unsigned char bConfigurationValue; + unsigned char iConfiguration; + unsigned char bmAttributes; + unsigned char MaxPower; + + struct usb_interface *interface; + + unsigned char *extra; /* Extra descriptors */ + int extralen; +}; + +/* Device descriptor */ +struct usb_device_descriptor +{ + unsigned char bLength; + unsigned char bDescriptorType; + unsigned short bcdUSB; + unsigned char bDeviceClass; + unsigned char bDeviceSubClass; + unsigned char bDeviceProtocol; + unsigned char bMaxPacketSize0; + unsigned short idVendor; + unsigned short idProduct; + unsigned short bcdDevice; + unsigned char iManufacturer; + unsigned char iProduct; + unsigned char iSerialNumber; + unsigned char bNumConfigurations; +}; + +struct usb_ctrl_setup +{ + unsigned char bRequestType; + unsigned char bRequest; + unsigned short wValue; + unsigned short wIndex; + unsigned short wLength; +}; + +/* + * Standard requests + */ +#define USB_REQ_GET_STATUS 0x00 +#define USB_REQ_CLEAR_FEATURE 0x01 +/* 0x02 is reserved */ +#define USB_REQ_SET_FEATURE 0x03 +/* 0x04 is reserved */ +#define USB_REQ_SET_ADDRESS 0x05 +#define USB_REQ_GET_DESCRIPTOR 0x06 +#define USB_REQ_SET_DESCRIPTOR 0x07 +#define USB_REQ_GET_CONFIGURATION 0x08 +#define USB_REQ_SET_CONFIGURATION 0x09 +#define USB_REQ_GET_INTERFACE 0x0A +#define USB_REQ_SET_INTERFACE 0x0B +#define USB_REQ_SYNCH_FRAME 0x0C + +#define USB_TYPE_STANDARD (0x00 << 5) +#define USB_TYPE_CLASS (0x01 << 5) +#define USB_TYPE_VENDOR (0x02 << 5) +#define USB_TYPE_RESERVED (0x03 << 5) + +#define USB_RECIP_DEVICE 0x00 +#define USB_RECIP_INTERFACE 0x01 +#define USB_RECIP_ENDPOINT 0x02 +#define USB_RECIP_OTHER 0x03 + +/* + * Various libusb API related stuff + */ + +#define USB_ENDPOINT_IN 0x80 +#define USB_ENDPOINT_OUT 0x00 + +/* Error codes */ +#define USB_ERROR_BEGIN 500000 + +/* + * This is supposed to look weird. This file is generated from autoconf + * and I didn't want to make this too complicated. + */ +#define USB_LE16_TO_CPU(x) + +/* + * Device reset types for usb_reset_ex. + * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx + * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx + */ +#define USB_RESET_TYPE_RESET_PORT (1 << 0) +#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) +#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) + + +/* Data types */ +/* struct usb_device; */ +/* struct usb_bus; */ + +struct usb_device +{ + struct usb_device *next, *prev; + + char filename[LIBUSB_PATH_MAX]; + + struct usb_bus *bus; + + struct usb_device_descriptor descriptor; + struct usb_config_descriptor *config; + + void *dev; /* Darwin support */ + + unsigned char devnum; + + unsigned char num_children; + struct usb_device **children; +}; + +struct usb_bus +{ + struct usb_bus *next, *prev; + + char dirname[LIBUSB_PATH_MAX]; + + struct usb_device *devices; + unsigned long location; + + struct usb_device *root_dev; +}; + +/* Version information, Windows specific */ +struct usb_version +{ + struct + { + int major; + int minor; + int micro; + int nano; + } dll; + struct + { + int major; + int minor; + int micro; + int nano; + } driver; +}; + + +struct usb_dev_handle; +typedef struct usb_dev_handle usb_dev_handle; + +/* Variables */ +#ifndef __USB_C__ +#define usb_busses usb_get_busses() +#endif + + + +#include + + +#ifdef __cplusplus +extern "C" +{ +#endif + + /* Function prototypes */ + + /* usb.c */ + usb_dev_handle *usb_open(struct usb_device *dev); + int usb_close(usb_dev_handle *dev); + int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, + size_t buflen); + int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, + size_t buflen); + + /* descriptors.c */ + int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, + unsigned char type, unsigned char index, + void *buf, int size); + int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, + unsigned char index, void *buf, int size); + + /* .c */ + int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, + int timeout); + int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, + int value, int index, char *bytes, int size, + int timeout); + int usb_set_configuration(usb_dev_handle *dev, int configuration); + int usb_claim_interface(usb_dev_handle *dev, int interface); + int usb_release_interface(usb_dev_handle *dev, int interface); + int usb_set_altinterface(usb_dev_handle *dev, int alternate); + int usb_resetep(usb_dev_handle *dev, unsigned int ep); + int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); + int usb_reset(usb_dev_handle *dev); + int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); + + char *usb_strerror(void); + + void usb_init(void); + void usb_set_debug(int level); + int usb_find_busses(void); + int usb_find_devices(void); + struct usb_device *usb_device(usb_dev_handle *dev); + struct usb_bus *usb_get_busses(void); + + + /* Windows specific functions */ + +#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 + int usb_install_service_np(void); + void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 + int usb_uninstall_service_np(void); + void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 + int usb_install_driver_np(const char *inf_file); + void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 + int usb_touch_inf_file_np(const char *inf_file); + void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + +#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 + int usb_install_needs_restart_np(void); + +#define LIBUSB_HAS_INSTALL_NP 1 + int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); + int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); + #define usb_install_np usb_install_npA + void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, + LPSTR cmd_line, int cmd_show); + + const struct usb_version *usb_get_version(void); + + int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep, int pktsize); + int usb_bulk_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, + unsigned char ep); + + int usb_submit_async(void *context, char *bytes, int size); + int usb_reap_async(void *context, int timeout); + int usb_reap_async_nocancel(void *context, int timeout); + int usb_cancel_async(void *context); + int usb_free_async(void **context); + + +#ifdef __cplusplus +} +#endif + +#endif /* __USB_H__ */ + diff --git a/Source/Core/Common/Src/Log.h b/Source/Core/Common/Src/Log.h index 3be97d54d4..4892886693 100644 --- a/Source/Core/Common/Src/Log.h +++ b/Source/Core/Common/Src/Log.h @@ -64,6 +64,7 @@ enum LOG_TYPE { WII_IPC_DVD, WII_IPC_ES, WII_IPC_FILEIO, + WII_IPC_HID, WII_IPC_HLE, WII_IPC_NET, WII_IPC_SD, diff --git a/Source/Core/Common/Src/LogManager.cpp b/Source/Core/Common/Src/LogManager.cpp index a79c413cf8..df55f018c6 100644 --- a/Source/Core/Common/Src/LogManager.cpp +++ b/Source/Core/Common/Src/LogManager.cpp @@ -71,6 +71,7 @@ LogManager::LogManager() m_Log[LogTypes::WIIMOTE] = new LogContainer("Wiimote", "Wiimote"); m_Log[LogTypes::WII_IOB] = new LogContainer("WII_IOB", "WII IO Bridge"); m_Log[LogTypes::WII_IPC] = new LogContainer("WII_IPC", "WII IPC"); + m_Log[LogTypes::WII_IPC_HID] = new LogContainer("WII_IPC_HID", "WII IPC HID"); m_Log[LogTypes::WII_IPC_HLE] = new LogContainer("WII_IPC_HLE", "WII IPC HLE"); m_Log[LogTypes::WII_IPC_DVD] = new LogContainer("WII_IPC_DVD", "WII IPC DVD"); m_Log[LogTypes::WII_IPC_ES] = new LogContainer("WII_IPC_ES", "WII IPC ES"); diff --git a/Source/Core/Core/Core.vcxproj b/Source/Core/Core/Core.vcxproj index e03d40e43a..25ede66e60 100644 --- a/Source/Core/Core/Core.vcxproj +++ b/Source/Core/Core/Core.vcxproj @@ -115,7 +115,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;..\..\..\Externals\libusb\include;%(AdditionalIncludeDirectories);..\..\..\Externals\libusb\include true @@ -127,7 +127,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;..\..\..\Externals\libusb\include;%(AdditionalIncludeDirectories);..\..\..\Externals\libusb\include true @@ -139,7 +139,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;..\..\..\Externals\libusb\include;%(AdditionalIncludeDirectories) true @@ -153,7 +153,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories);..\..\..\Externals\libusb\include true @@ -167,7 +167,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;..\..\..\Externals\libusb\include;%(AdditionalIncludeDirectories) true @@ -181,7 +181,7 @@ - .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;%(AdditionalIncludeDirectories) + .\Src;..\Common\Src;..\VideoCommon\Src;..\AudioCommon\Src;..\DiscIO\Src;..\InputCommon\Src;..\wiiuse\Src;..\..\..\Externals\Bochs_disasm;..\..\..\Externals\SFML\include;..\..\..\Externals\LZO;..\..\..\Externals\portaudio\include;..\..\..\Externals\zlib;..\..\..\Externals\libusb\include;%(AdditionalIncludeDirectories);..\..\..\Externals\libusb\include true @@ -326,6 +326,7 @@ + @@ -526,6 +527,7 @@ + diff --git a/Source/Core/Core/Core.vcxproj.filters b/Source/Core/Core/Core.vcxproj.filters index 020cf76ad0..475861b64a 100644 --- a/Source/Core/Core/Core.vcxproj.filters +++ b/Source/Core/Core/Core.vcxproj.filters @@ -556,6 +556,9 @@ HW %28Flipper/Hollywood%29\GCMemcard + + IPC HLE %28IOS/Starlet%29\USB + @@ -1033,6 +1036,9 @@ HW %28Flipper/Hollywood%29\GCMemcard + + IPC HLE %28IOS/Starlet%29\USB + @@ -1173,5 +1179,8 @@ {3e9e6e83-c1bf-45f9-aeff-231f98f60d29} + + {321a9af5-9b3d-4620-888c-fe9d02e9559e} + \ No newline at end of file diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp index cd4f679db9..40c31c9e2b 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp @@ -50,6 +50,7 @@ They will also generate a true or false return for UpdateInterrupts() in WII_IPC #include "WII_IPC_HLE_Device_usb.h" #include "WII_IPC_HLE_Device_usb_kbd.h" #include "WII_IPC_HLE_Device_sdio_slot0.h" +#include "WII_IPC_HLE_Device_hid.h" #include "FileUtil.h" // For Copy #include "../ConfigManager.h" @@ -113,7 +114,7 @@ void Init() g_DeviceMap[i] = new CWII_IPC_HLE_Device_usb_kbd(i, std::string("/dev/usb/kbd")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_sdio_slot0(i, std::string("/dev/sdio/slot0")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/sdio/slot1")); i++; - g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/usb/hid")); i++; + g_DeviceMap[i] = new CWII_IPC_HLE_Device_hid(i, std::string("/dev/usb/hid")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/usb/oh1")); i++; g_DeviceMap[i] = new IWII_IPC_HLE_Device(i, std::string("_Unimplemented_Device_")); i++; } diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp new file mode 100644 index 0000000000..0103a534c3 --- /dev/null +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -0,0 +1,416 @@ +// Copyright (C) 2003 Dolphin Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official SVN repository and contact information can be found at +// http://code.google.com/p/dolphin-emu/ + +#include "../Core.h" +#include "../Debugger/Debugger_SymbolMap.h" +#include "../HW/WII_IPC.h" +#include "WII_IPC_HLE.h" +#include "WII_IPC_HLE_Device_hid.h" +#include "lusb0_usb.h" +#include "hidapi.h" + +CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) + : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) +{ + + usb_init(); /* initialize the library */ + +} + +CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() +{ + +} + +bool CWII_IPC_HLE_Device_hid::Open(u32 _CommandAddress, u32 _Mode) +{ + Dolphin_Debugger::PrintCallstack(LogTypes::WII_IPC_HID, LogTypes::LWARNING); + DEBUG_LOG(WII_IPC_HID, "HID::Open"); + Memory::Write_U32(GetDeviceID(), _CommandAddress + 4); + return true; +} + +bool CWII_IPC_HLE_Device_hid::Close(u32 _CommandAddress, bool _bForce) +{ + DEBUG_LOG(WII_IPC_HID, "HID::Close"); + if (!_bForce) + Memory::Write_U32(0, _CommandAddress + 4); + return true; +} + +bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) +{ + static u32 replyAddress = 0; + static bool hasRun = false; + u32 Parameter = Memory::Read_U32(_CommandAddress + 0xC); + u32 BufferIn = Memory::Read_U32(_CommandAddress + 0x10); + u32 BufferInSize = Memory::Read_U32(_CommandAddress + 0x14); + u32 BufferOut = Memory::Read_U32(_CommandAddress + 0x18); + u32 BufferOutSize = Memory::Read_U32(_CommandAddress + 0x1C); + + u32 ReturnValue = 0; + switch (Parameter) + { + case IOCTL_HID_GET_ATTACHED: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Get Attached) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + BufferIn, BufferInSize, BufferOut, BufferOutSize); + if(!hasRun) + { + FillOutDevices(BufferOut, BufferOutSize); + hasRun = true; + } + else + { + replyAddress = _CommandAddress; + return false; + } + break; + } + case IOCTL_HID_OPEN: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Open) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + BufferIn, BufferInSize, BufferOut, BufferOutSize); + + //hid version, apparently + ReturnValue = 0x40001; + break; + } + case IOCTL_HID_SET_SUSPEND: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Set Suspend) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + BufferIn, BufferInSize, BufferOut, BufferOutSize); + // not actually implemented in IOS + ReturnValue = 0; + + if (replyAddress != 0){ + FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); + WII_IPC_HLE_Interface::EnqReply(replyAddress); + replyAddress = 0; + hasRun = false; + } + + break; + } + case IOCTL_HID_CANCEL_INTERRUPT: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Cancel Interrupt) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + BufferIn, BufferInSize, BufferOut, BufferOutSize); + + if (replyAddress != 0){ + FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); + WII_IPC_HLE_Interface::EnqReply(replyAddress); + replyAddress = 0; + hasRun = false; + } + + ReturnValue = 0; + break; + } + case IOCTL_HID_CONTROL: + { + /* + ERROR CODES: + -4 Cant find device specified + */ + u32 dev_num = Memory::Read_U32(BufferIn+0x10); + u8 requesttype = Memory::Read_U8(BufferIn+0x14); + u8 request = Memory::Read_U8(BufferIn+0x15); + u16 value = Memory::Read_U16(BufferIn+0x16); + u16 index = Memory::Read_U16(BufferIn+0x18); + u16 size = Memory::Read_U16(BufferIn+0x1A); + u32 data = Memory::Read_U32(BufferIn+0x1C); + + static int upto = 0; + int i; + usb_find_busses(); /* find all busses */ + usb_find_devices(); /* find all connected devices */ + + struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + + if (dev_handle == NULL) + { + ReturnValue = -4; + break; + } + + ReturnValue = usb_control_msg(dev_handle, requesttype, request, + value, index, (char*)Memory::GetPointer(data), size, + 0); + + if(ReturnValue>=0) + { + ReturnValue += sizeof(usb_ctrl_setup); + } + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", + requesttype, request, ReturnValue); + + usb_close(dev_handle); + + u8 test_out[0x20]; + Memory::ReadBigEData(test_out, BufferIn, BufferInSize); + char file[0x50]; + snprintf(file, 0x50, "ctrl_ctrlprotocol_%d.bin", upto); + FILE* test = fopen (file, "wb"); + for(i=0;i<0x20;i++) + fwrite(&test_out[i], 1, 1, test); + if (size > 0) + fwrite((char*)Memory::GetPointer(data), 1, size, test); + fclose(test); + upto++; + break; + } + case IOCTL_HID_INTERRUPT_IN: + { + + + u32 dev_num = Memory::Read_U32(BufferIn+0x10); + u32 end_point = Memory::Read_U32(BufferIn+0x14); + u32 length = Memory::Read_U32(BufferIn+0x18); + + u32 data = Memory::Read_U32(BufferIn+0x1C); + + struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + + if (dev_handle == NULL) + { + ReturnValue = -4; + break; + } + + usb_claim_interface(dev_handle,0); + ReturnValue = usb_interrupt_read(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 1000); + + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt In)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + + usb_close(dev_handle); + break; + } + case IOCTL_HID_INTERRUPT_OUT: + { + + + u32 dev_num = Memory::Read_U32(BufferIn+0x10); + u32 end_point = Memory::Read_U32(BufferIn+0x14); + u32 length = Memory::Read_U32(BufferIn+0x18); + + u32 data = Memory::Read_U32(BufferIn+0x1C); + + struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + + if (dev_handle == NULL) + { + ReturnValue = -4; + break; + } + + usb_claim_interface(dev_handle,0); + ReturnValue = usb_interrupt_write(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 0); + + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt Out) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + + usb_close(dev_handle); + break; + } + default: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(0x%x) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + Parameter, BufferIn, BufferInSize, BufferOut, BufferOutSize); + break; + } + } + + Memory::Write_U32(ReturnValue, _CommandAddress + 4); + + return true; +} + +bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) +{ + + Dolphin_Debugger::PrintCallstack(LogTypes::WII_IPC_HID, LogTypes::LWARNING); + u32 ReturnValue = 0; + SIOCtlVBuffer CommandBuffer(_CommandAddress); + + switch (CommandBuffer.Parameter) + { + + default: + { + DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); + DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); + DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); + DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); + DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); + DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); + DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); + #if defined(_DEBUG) || defined(DEBUGFAST) + DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); + #endif + } + break; + } + + Memory::Write_U32(ReturnValue, _CommandAddress + 4); + return true; +} + + + +void CWII_IPC_HLE_Device_hid::ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src) +{ + memcpy(dest,src,sizeof(WiiHIDDeviceDescriptor)); + dest->bcdUSB = Common::swap16(dest->bcdUSB); + dest->idVendor = Common::swap16(dest->idVendor); + dest->idProduct = Common::swap16(dest->idProduct); + dest->bcdDevice = Common::swap16(dest->bcdDevice); +} + +void CWII_IPC_HLE_Device_hid::ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src) +{ + memcpy(dest,src,sizeof(WiiHIDConfigDescriptor)); + dest->wTotalLength = Common::swap16(dest->wTotalLength); +} + +void CWII_IPC_HLE_Device_hid::ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, struct usb_interface_descriptor *src) +{ + memcpy(dest,src,sizeof(WiiHIDInterfaceDescriptor)); +} + +void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src) +{ + memcpy(dest,src,sizeof(WiiHIDEndpointDescriptor)); + dest->wMaxPacketSize = Common::swap16(dest->wMaxPacketSize); +} +/* +// hidapi version +void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) +{ + // Enumerate and print the HID devices on the system + struct hid_device_info *devs, *cur_dev; + + devs = hid_enumerate(0x0, 0x0); + cur_dev = devs; + while (cur_dev) { + printf("Device Found\n type: %04hx %04hx\n path: %s\n serial_number: %ls", + cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number); + printf("\n"); + printf(" Manufacturer: %ls\n", cur_dev->manufacturer_string); + printf(" Product: %ls\n", cur_dev->product_string); + printf("\n"); + cur_dev = cur_dev->next; + } + hid_free_enumeration(devs); +} +*/ + +// libusb version +void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) +{ + usb_find_busses(); // find all busses + usb_find_devices(); // find all connected devices + struct usb_bus *bus; + struct usb_device *dev; + int OffsetBuffer = BufferOut; + int OffsetStart = 0; + int c,ic,i,e; // config, interface container, interface, endpoint + for (bus = usb_get_busses(); bus; bus = bus->next) + { + for (dev = bus->devices; dev; dev = dev->next) + { + struct usb_device_descriptor *device = &dev->descriptor; + DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d",device->idVendor, device->idProduct, dev->devnum); + + OffsetStart = OffsetBuffer; + OffsetBuffer += 4; // skip length for now, fill at end + + Memory::Write_U32(dev->devnum, OffsetBuffer); //write device num + OffsetBuffer += 4; + + WiiHIDDeviceDescriptor wii_device; + ConvertDeviceToWii(&wii_device, device); + Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); + OffsetBuffer += Align(wii_device.bLength, 4); + + for (c = 0; c < device->bNumConfigurations; c++) + { + struct usb_config_descriptor *config = &dev->config[c]; + + WiiHIDConfigDescriptor wii_config; + ConvertConfigToWii(&wii_config, config); + Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(wii_config.bLength, 4)); + OffsetBuffer += Align(wii_config.bLength, 4); + + for (ic = 0; ic < config->bNumInterfaces; ic++) + { + struct usb_interface *interfaceContainer = &config->interface[ic]; + for (i = 0; i < interfaceContainer->num_altsetting; i++) + { + struct usb_interface_descriptor *interface = &interfaceContainer->altsetting[i]; + + WiiHIDInterfaceDescriptor wii_interface; + ConvertInterfaceToWii(&wii_interface, interface); + Memory::WriteBigEData((const u8*)&wii_interface, OffsetBuffer, Align(wii_interface.bLength, 4)); + OffsetBuffer += Align(wii_interface.bLength, 4); + + for (e = 0; e < interface->bNumEndpoints; e++) + { + struct usb_endpoint_descriptor *endpoint = &interface->endpoint[e]; + + WiiHIDEndpointDescriptor wii_endpoint; + ConvertEndpointToWii(&wii_endpoint, endpoint); + Memory::WriteBigEData((const u8*)&wii_endpoint, OffsetBuffer, Align(wii_endpoint.bLength, 4)); + OffsetBuffer += Align(wii_endpoint.bLength, 4); + + } //endpoints + } // interfaces + } // interface containters + } // configs + + Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length + + } // devices + } // buses + + Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices + + +} + + + +int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) +{ + return (num + (alignment-1)) & ~(alignment-1); +} + + +struct usb_dev_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) +{ + for (struct usb_bus *bus = usb_get_busses(); bus; bus = bus->next) + { + for (struct usb_device *dev = bus->devices; dev; dev = dev->next) + { + if(dev->devnum == devNum){ + return usb_open(dev); + } + } + } + return NULL; +} \ No newline at end of file diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h new file mode 100644 index 0000000000..2bb7f47a59 --- /dev/null +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -0,0 +1,126 @@ +// Copyright (C) 2003 Dolphin Project. + +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, version 2.0. + +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License 2.0 for more details. + +// A copy of the GPL 2.0 should have been included with the program. +// If not, see http://www.gnu.org/licenses/ + +// Official SVN repository and contact information can be found at +// http://code.google.com/p/dolphin-emu/ + +#pragma once + +#include "WII_IPC_HLE.h" +#include "WII_IPC_HLE_Device.h" + +class CWII_IPC_HLE_Device_hid : public IWII_IPC_HLE_Device +{ +public: + CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName); + + virtual ~CWII_IPC_HLE_Device_hid(); + + virtual bool Open(u32 _CommandAddress, u32 _Mode); + virtual bool Close(u32 _CommandAddress, bool _bForce); + + virtual bool IOCtlV(u32 _CommandAddress); + virtual bool IOCtl(u32 _CommandAddress); +private: + + + std::map deviceList; + + enum + { + IOCTL_HID_GET_ATTACHED = 0x00, + IOCTL_HID_SET_SUSPEND = 0x01, + IOCTL_HID_CONTROL = 0x02, + IOCTL_HID_INTERRUPT_IN = 0x03, + IOCTL_HID_INTERRUPT_OUT = 0x04, + IOCTL_HID_GET_US_STRING = 0x05, + IOCTL_HID_OPEN = 0x06, + IOCTL_HID_SHUTDOWN = 0x07, + IOCTL_HID_CANCEL_INTERRUPT = 0x08, + }; + + /* Device descriptor */ + typedef struct + { + u8 bLength; + u8 bDescriptorType; + u16 bcdUSB; + u8 bDeviceClass; + u8 bDeviceSubClass; + u8 bDeviceProtocol; + u8 bMaxPacketSize0; + u16 idVendor; + u16 idProduct; + u16 bcdDevice; + u8 iManufacturer; + u8 iProduct; + u8 iSerialNumber; + u8 bNumConfigurations; + u8 pad[2]; + } WiiHIDDeviceDescriptor; + + typedef struct + { + u8 bLength; + u8 bDescriptorType; + u16 wTotalLength; + u8 bNumInterfaces; + u8 bConfigurationValue; + u8 iConfiguration; + u8 bmAttributes; + u8 MaxPower; + u8 pad[3]; + } WiiHIDConfigDescriptor; + + typedef struct + { + u8 bLength; + u8 bDescriptorType; + u8 bInterfaceNumber; + u8 bAlternateSetting; + u8 bNumEndpoints; + u8 bInterfaceClass; + u8 bInterfaceSubClass; + u8 bInterfaceProtocol; + u8 iInterface; + u8 pad[3]; + } WiiHIDInterfaceDescriptor; + + typedef struct + { + u8 bLength; + u8 bDescriptorType; + u8 bEndpointAddress; + u8 bmAttributes; + u16 wMaxPacketSize; + u8 bInterval; + u8 bRefresh; + u8 bSynchAddress; + u8 pad[1]; + } WiiHIDEndpointDescriptor; + + + void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize); + + void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src); + void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src); + void ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, struct usb_interface_descriptor *src); + void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src); + + int Align(int num, int alignment); + + struct usb_dev_handle * GetDeviceByDevNum(u32 devNum); + + +}; diff --git a/Source/VSProps/Dolphin.Win32.props b/Source/VSProps/Dolphin.Win32.props index 5adc4159e0..a78f75c4ac 100644 --- a/Source/VSProps/Dolphin.Win32.props +++ b/Source/VSProps/Dolphin.Win32.props @@ -7,8 +7,8 @@ - ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;%(AdditionalDependencies) + ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) + portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;hidapi.lib;%(AdditionalDependencies) diff --git a/Source/VSProps/Dolphin.x64.props b/Source/VSProps/Dolphin.x64.props index 557e6350e7..c9cc2eb7ff 100644 --- a/Source/VSProps/Dolphin.x64.props +++ b/Source/VSProps/Dolphin.x64.props @@ -8,8 +8,8 @@ - ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg64;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;%(AdditionalDependencies) + ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg64;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) + portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;hidapi.lib;%(AdditionalDependencies) From db6e981728f65ab1df047a87a1c16f7fcdb82f94 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 3 Apr 2012 19:26:12 +1200 Subject: [PATCH 02/27] Added hidapi start. x64 doesn't work... not sure why. --- Externals/libusb/win32/hidapi.h | 384 ---------------- Externals/libusb/win32/lusb0_usb.h | 427 ------------------ Externals/libusb/x64/hidapi.dll | Bin 37888 -> 0 bytes Externals/libusb/x64/hidapi.h | 384 ---------------- Externals/libusb/x64/lusb0_usb.h | 427 ------------------ .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 143 ++++-- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 5 +- 7 files changed, 121 insertions(+), 1649 deletions(-) delete mode 100644 Externals/libusb/win32/hidapi.h delete mode 100644 Externals/libusb/win32/lusb0_usb.h delete mode 100644 Externals/libusb/x64/hidapi.dll delete mode 100644 Externals/libusb/x64/hidapi.h delete mode 100644 Externals/libusb/x64/lusb0_usb.h diff --git a/Externals/libusb/win32/hidapi.h b/Externals/libusb/win32/hidapi.h deleted file mode 100644 index bd912acd7f..0000000000 --- a/Externals/libusb/win32/hidapi.h +++ /dev/null @@ -1,384 +0,0 @@ -/******************************************************* - HIDAPI - Multi-Platform library for - communication with HID devices. - - Alan Ott - Signal 11 Software - - 8/22/2009 - - Copyright 2009, All Rights Reserved. - - At the discretion of the user of this library, - this software may be licensed under the terms of the - GNU Public License v3, a BSD-Style license, or the - original HIDAPI license as outlined in the LICENSE.txt, - LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt - files located at the root of the source distribution. - These files may also be found in the public source - code repository located at: - http://github.com/signal11/hidapi . -********************************************************/ - -/** @file - * @defgroup API hidapi API - */ - -#ifndef HIDAPI_H__ -#define HIDAPI_H__ - -#include - -#ifdef _WIN32 - #define HID_API_EXPORT __declspec(dllexport) - #define HID_API_CALL -#else - #define HID_API_EXPORT /**< API export macro */ - #define HID_API_CALL /**< API call macro */ -#endif - -#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ - -#ifdef __cplusplus -extern "C" { -#endif - struct hid_device_; - typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ - - /** hidapi info structure */ - struct hid_device_info { - /** Platform-specific device path */ - char *path; - /** Device Vendor ID */ - unsigned short vendor_id; - /** Device Product ID */ - unsigned short product_id; - /** Serial Number */ - wchar_t *serial_number; - /** Device Release Number in binary-coded decimal, - also known as Device Version Number */ - unsigned short release_number; - /** Manufacturer String */ - wchar_t *manufacturer_string; - /** Product string */ - wchar_t *product_string; - /** Usage Page for this Device/Interface - (Windows/Mac only). */ - unsigned short usage_page; - /** Usage for this Device/Interface - (Windows/Mac only).*/ - unsigned short usage; - /** The USB interface which this logical device - represents. Valid on both Linux implementations - in all cases, and valid on the Windows implementation - only if the device contains more than one interface. */ - int interface_number; - - /** Pointer to the next device */ - struct hid_device_info *next; - }; - - - /** @brief Initialize the HIDAPI library. - - This function initializes the HIDAPI library. Calling it is not - strictly necessary, as it will be called automatically by - hid_enumerate() and any of the hid_open_*() functions if it is - needed. This function should be called at the beginning of - execution however, if there is a chance of HIDAPI handles - being opened by different threads simultaneously. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_init(void); - - /** @brief Finalize the HIDAPI library. - - This function frees all of the static data associated with - HIDAPI. It should be called at the end of execution to avoid - memory leaks. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_exit(void); - - /** @brief Enumerate the HID Devices. - - This function returns a linked list of all the HID devices - attached to the system which match vendor_id and product_id. - If @p vendor_id and @p product_id are both set to 0, then - all HID devices will be returned. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the types of device - to open. - @param product_id The Product ID (PID) of the types of - device to open. - - @returns - This function returns a pointer to a linked list of type - struct #hid_device, containing information about the HID devices - attached to the system, or NULL in the case of failure. Free - this linked list by calling hid_free_enumeration(). - */ - struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); - - /** @brief Free an enumeration Linked List - - This function frees a linked list created by hid_enumerate(). - - @ingroup API - @param devs Pointer to a list of struct_device returned from - hid_enumerate(). - */ - void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); - - /** @brief Open a HID device using a Vendor ID (VID), Product ID - (PID) and optionally a serial number. - - If @p serial_number is NULL, the first device with the - specified VID and PID is opened. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the device to open. - @param product_id The Product ID (PID) of the device to open. - @param serial_number The Serial Number of the device to open - (Optionally NULL). - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); - - /** @brief Open a HID device by its path name. - - The path name be determined by calling hid_enumerate(), or a - platform-specific path name can be used (eg: /dev/hidraw0 on - Linux). - - @ingroup API - @param path The path name of the device to open - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); - - /** @brief Write an Output report to a HID device. - - The first byte of @p data[] must contain the Report ID. For - devices which only support a single report, this must be set - to 0x0. The remaining bytes contain the report data. Since - the Report ID is mandatory, calls to hid_write() will always - contain one more byte than the report contains. For example, - if a hid report is 16 bytes long, 17 bytes must be passed to - hid_write(), the Report ID (or 0x0, for devices with a - single report), followed by the report data (16 bytes). In - this example, the length passed in would be 17. - - hid_write() will send the data on the first OUT endpoint, if - one exists. If it does not, it will send the data through - the Control Endpoint (Endpoint 0). - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); - - int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); - /** @brief Read an Input report from a HID device with timeout. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - @param milliseconds timeout in milliseconds or -1 for blocking wait. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); - - /** @brief Read an Input report from a HID device. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); - - /** @brief Set the device handle to be non-blocking. - - In non-blocking mode calls to hid_read() will return - immediately with a value of 0 if there is no data to be - read. In blocking mode, hid_read() will wait (block) until - there is data to read before returning. - - Nonblocking can be turned on and off at any time. - - @ingroup API - @param device A device handle returned from hid_open(). - @param nonblock enable or not the nonblocking reads - - 1 to enable nonblocking - - 0 to disable nonblocking. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); - - /** @brief Send a Feature report to the device. - - Feature reports are sent over the Control endpoint as a - Set_Report transfer. The first byte of @p data[] must - contain the Report ID. For devices which only support a - single report, this must be set to 0x0. The remaining bytes - contain the report data. Since the Report ID is mandatory, - calls to hid_send_feature_report() will always contain one - more byte than the report contains. For example, if a hid - report is 16 bytes long, 17 bytes must be passed to - hid_send_feature_report(): the Report ID (or 0x0, for - devices which do not use numbered reports), followed by the - report data (16 bytes). In this example, the length passed - in would be 17. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send, including - the report number. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); - - /** @brief Get a feature report from a HID device. - - Make sure to set the first byte of @p data[] to the Report - ID of the report to be read. Make sure to allow space for - this extra byte in @p data[]. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into, including - the Report ID. Set the first byte of @p data[] to the - Report ID of the report to be read. - @param length The number of bytes to read, including an - extra byte for the report ID. The buffer can be longer - than the actual report. - - @returns - This function returns the number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); - - /** @brief Close a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - */ - void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); - - /** @brief Get The Manufacturer String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Product String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Serial Number String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get a string from a HID device, based on its string index. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string_index The index of the string to get. - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); - - /** @brief Get a string describing the last error which occurred. - - @ingroup API - @param device A device handle returned from hid_open(). - - @returns - This function returns a string containing the last error - which occurred or NULL if none has occurred. - */ - HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/Externals/libusb/win32/lusb0_usb.h b/Externals/libusb/win32/lusb0_usb.h deleted file mode 100644 index b95fbf0a6d..0000000000 --- a/Externals/libusb/win32/lusb0_usb.h +++ /dev/null @@ -1,427 +0,0 @@ -#ifndef __USB_H__ -#define __USB_H__ - -#include -#include - -/* - * 'interface' is defined somewhere in the Windows header files. This macro - * is deleted here to avoid conflicts and compile errors. - */ - -#ifdef interface -#undef interface -#endif - -/* - * PATH_MAX from limits.h can't be used on Windows if the dll and - * import libraries are build/used by different compilers - */ - -#define LIBUSB_PATH_MAX 512 - - -/* - * USB spec information - * - * This is all stuff grabbed from various USB specs and is pretty much - * not subject to change - */ - -/* - * Device and/or Interface Class codes - */ -#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ -#define USB_CLASS_AUDIO 1 -#define USB_CLASS_COMM 2 -#define USB_CLASS_HID 3 -#define USB_CLASS_PRINTER 7 -#define USB_CLASS_MASS_STORAGE 8 -#define USB_CLASS_HUB 9 -#define USB_CLASS_DATA 10 -#define USB_CLASS_VENDOR_SPEC 0xff - -/* - * Descriptor types - */ -#define USB_DT_DEVICE 0x01 -#define USB_DT_CONFIG 0x02 -#define USB_DT_STRING 0x03 -#define USB_DT_INTERFACE 0x04 -#define USB_DT_ENDPOINT 0x05 - -#define USB_DT_HID 0x21 -#define USB_DT_REPORT 0x22 -#define USB_DT_PHYSICAL 0x23 -#define USB_DT_HUB 0x29 - -/* - * Descriptor sizes per descriptor type - */ -#define USB_DT_DEVICE_SIZE 18 -#define USB_DT_CONFIG_SIZE 9 -#define USB_DT_INTERFACE_SIZE 9 -#define USB_DT_ENDPOINT_SIZE 7 -#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ -#define USB_DT_HUB_NONVAR_SIZE 7 - - -/* ensure byte-packed structures */ -#include - - -/* All standard descriptors have these 2 fields in common */ -struct usb_descriptor_header -{ - unsigned char bLength; - unsigned char bDescriptorType; -}; - -/* String descriptor */ -struct usb_string_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wData[1]; -}; - -/* HID descriptor */ -struct usb_hid_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdHID; - unsigned char bCountryCode; - unsigned char bNumDescriptors; -}; - -/* Endpoint descriptor */ -#define USB_MAXENDPOINTS 32 -struct usb_endpoint_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bEndpointAddress; - unsigned char bmAttributes; - unsigned short wMaxPacketSize; - unsigned char bInterval; - unsigned char bRefresh; - unsigned char bSynchAddress; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ -#define USB_ENDPOINT_DIR_MASK 0x80 - -#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ -#define USB_ENDPOINT_TYPE_CONTROL 0 -#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 -#define USB_ENDPOINT_TYPE_BULK 2 -#define USB_ENDPOINT_TYPE_INTERRUPT 3 - -/* Interface descriptor */ -#define USB_MAXINTERFACES 32 -struct usb_interface_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bInterfaceNumber; - unsigned char bAlternateSetting; - unsigned char bNumEndpoints; - unsigned char bInterfaceClass; - unsigned char bInterfaceSubClass; - unsigned char bInterfaceProtocol; - unsigned char iInterface; - - struct usb_endpoint_descriptor *endpoint; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_MAXALTSETTING 128 /* Hard limit */ - -struct usb_interface -{ - struct usb_interface_descriptor *altsetting; - - int num_altsetting; -}; - -/* Configuration descriptor information.. */ -#define USB_MAXCONFIG 8 -struct usb_config_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wTotalLength; - unsigned char bNumInterfaces; - unsigned char bConfigurationValue; - unsigned char iConfiguration; - unsigned char bmAttributes; - unsigned char MaxPower; - - struct usb_interface *interface; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -/* Device descriptor */ -struct usb_device_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdUSB; - unsigned char bDeviceClass; - unsigned char bDeviceSubClass; - unsigned char bDeviceProtocol; - unsigned char bMaxPacketSize0; - unsigned short idVendor; - unsigned short idProduct; - unsigned short bcdDevice; - unsigned char iManufacturer; - unsigned char iProduct; - unsigned char iSerialNumber; - unsigned char bNumConfigurations; -}; - -struct usb_ctrl_setup -{ - unsigned char bRequestType; - unsigned char bRequest; - unsigned short wValue; - unsigned short wIndex; - unsigned short wLength; -}; - -/* - * Standard requests - */ -#define USB_REQ_GET_STATUS 0x00 -#define USB_REQ_CLEAR_FEATURE 0x01 -/* 0x02 is reserved */ -#define USB_REQ_SET_FEATURE 0x03 -/* 0x04 is reserved */ -#define USB_REQ_SET_ADDRESS 0x05 -#define USB_REQ_GET_DESCRIPTOR 0x06 -#define USB_REQ_SET_DESCRIPTOR 0x07 -#define USB_REQ_GET_CONFIGURATION 0x08 -#define USB_REQ_SET_CONFIGURATION 0x09 -#define USB_REQ_GET_INTERFACE 0x0A -#define USB_REQ_SET_INTERFACE 0x0B -#define USB_REQ_SYNCH_FRAME 0x0C - -#define USB_TYPE_STANDARD (0x00 << 5) -#define USB_TYPE_CLASS (0x01 << 5) -#define USB_TYPE_VENDOR (0x02 << 5) -#define USB_TYPE_RESERVED (0x03 << 5) - -#define USB_RECIP_DEVICE 0x00 -#define USB_RECIP_INTERFACE 0x01 -#define USB_RECIP_ENDPOINT 0x02 -#define USB_RECIP_OTHER 0x03 - -/* - * Various libusb API related stuff - */ - -#define USB_ENDPOINT_IN 0x80 -#define USB_ENDPOINT_OUT 0x00 - -/* Error codes */ -#define USB_ERROR_BEGIN 500000 - -/* - * This is supposed to look weird. This file is generated from autoconf - * and I didn't want to make this too complicated. - */ -#define USB_LE16_TO_CPU(x) - -/* - * Device reset types for usb_reset_ex. - * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx - * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx - */ -#define USB_RESET_TYPE_RESET_PORT (1 << 0) -#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) -#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) - - -/* Data types */ -/* struct usb_device; */ -/* struct usb_bus; */ - -struct usb_device -{ - struct usb_device *next, *prev; - - char filename[LIBUSB_PATH_MAX]; - - struct usb_bus *bus; - - struct usb_device_descriptor descriptor; - struct usb_config_descriptor *config; - - void *dev; /* Darwin support */ - - unsigned char devnum; - - unsigned char num_children; - struct usb_device **children; -}; - -struct usb_bus -{ - struct usb_bus *next, *prev; - - char dirname[LIBUSB_PATH_MAX]; - - struct usb_device *devices; - unsigned long location; - - struct usb_device *root_dev; -}; - -/* Version information, Windows specific */ -struct usb_version -{ - struct - { - int major; - int minor; - int micro; - int nano; - } dll; - struct - { - int major; - int minor; - int micro; - int nano; - } driver; -}; - - -struct usb_dev_handle; -typedef struct usb_dev_handle usb_dev_handle; - -/* Variables */ -#ifndef __USB_C__ -#define usb_busses usb_get_busses() -#endif - - - -#include - - -#ifdef __cplusplus -extern "C" -{ -#endif - - /* Function prototypes */ - - /* usb.c */ - usb_dev_handle *usb_open(struct usb_device *dev); - int usb_close(usb_dev_handle *dev); - int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, - size_t buflen); - int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, - size_t buflen); - - /* descriptors.c */ - int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, - unsigned char type, unsigned char index, - void *buf, int size); - int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, - unsigned char index, void *buf, int size); - - /* .c */ - int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, - int value, int index, char *bytes, int size, - int timeout); - int usb_set_configuration(usb_dev_handle *dev, int configuration); - int usb_claim_interface(usb_dev_handle *dev, int interface); - int usb_release_interface(usb_dev_handle *dev, int interface); - int usb_set_altinterface(usb_dev_handle *dev, int alternate); - int usb_resetep(usb_dev_handle *dev, unsigned int ep); - int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); - int usb_reset(usb_dev_handle *dev); - int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); - - char *usb_strerror(void); - - void usb_init(void); - void usb_set_debug(int level); - int usb_find_busses(void); - int usb_find_devices(void); - struct usb_device *usb_device(usb_dev_handle *dev); - struct usb_bus *usb_get_busses(void); - - - /* Windows specific functions */ - -#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 - int usb_install_service_np(void); - void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 - int usb_uninstall_service_np(void); - void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 - int usb_install_driver_np(const char *inf_file); - void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 - int usb_touch_inf_file_np(const char *inf_file); - void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 - int usb_install_needs_restart_np(void); - -#define LIBUSB_HAS_INSTALL_NP 1 - int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); - int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); - #define usb_install_np usb_install_npA - void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - - const struct usb_version *usb_get_version(void); - - int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep, int pktsize); - int usb_bulk_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - - int usb_submit_async(void *context, char *bytes, int size); - int usb_reap_async(void *context, int timeout); - int usb_reap_async_nocancel(void *context, int timeout); - int usb_cancel_async(void *context); - int usb_free_async(void **context); - - -#ifdef __cplusplus -} -#endif - -#endif /* __USB_H__ */ - diff --git a/Externals/libusb/x64/hidapi.dll b/Externals/libusb/x64/hidapi.dll deleted file mode 100644 index 1461560e500765127d643e677dee6cd415a2c708..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37888 zcmeZ`n!v!!z`(%5z`*eTKLf)K1_*F~P^1JvLws4+R+`;H`Rxuw@Xz`3hh<2}-Ae>7dNy43Jq+o1_p)#Mg|521_p*GR1+N-7##E<${41wGB7YqU<3sc149*t zx&wNd5QR&)7#J89FfuUkFfcIGU{P08T$Ief013Mdj0_BH3=9k%80sAKic)j(lNlKP zf$Tj1Ro921&IwgyWV8+1kvKJ()1R@TDBzTk<7+y{Uaf@sj z7+!jVSS28d^DYbwFY7>DNsyr&Al7=20YxC&rh<&$2T~FVQv3`=RDuW_kVWDk#StJb zGssXrkPcB0!383;LBu0f28Nf9LBtu5DPK((7+!7wac_fcTLTjN33A#RSq6re;UEbn z5SLemf#GF^Ap^rpQ;_izAVL(R;|54J6QpelNHI5vB>|RCbRBf#oGBvkze zP!sD*#sWM0W~O|{2(GI!1jl*LG%Bb zpa1{woXQB#{|h-LFbWtS?R5Qf+!fTjVL0x32V~!I*CU%k<$QPKe`H`t>vTP_pl%fd!|~RX{}6Dz zH3BO3;`WdK|632#vKt?GY0k>PaNKnPsO^8ewdVi-{~%WPmn@+yhAf6&*CPS{Mb9h- z7ZQKI|Nq|!Htl$;55&m-$6G-~8OW*KUwXmX1G;-b)&%y39tp}~=mx6~_%C_^V#W@T z8LnTNYrim*vc6oz0xC4J7<$2`1b}Vq1-T)xdn(A)LH|XsK=d_0^mTvfhA90nnz5Ks zp!o=k^_LeZAUUvqyTRmf22dNk`wPf8sPgV!P;dnHP6Zhr1a}nFaAlAIa7R60W?+CA z)O>&?;KgG$28QM%ES+F4H}3^|yp;9j5@t})>iqxzAJlOGc^dS!DjKc7 zyg2dg|9}4Nt{klgN;&wqyYjRiC{g3z-fHk4B<#y!eUQI3ikX3de|xJDM2H6@_F=^FSqs^_Lf#-~RvaXx;wr|9}2%V5;>%Ng_z~fq(!12Xyy>GzI<_1(gQY zUtawF3Q~8WbLxtJ|Nl4d1(6J;GTp9s(z<&O{rmqvt-3NU#TUqofd8VP z;>Y^Si|t?k|L=CabKC*ce?x?GXRE^h|Nl#hy1{h7iv?f){|ATqlwbe~00I znh!7rAO}Py$TZ(Ooe1gfF9F@XAhQCyL+^Am1^gE+0S6n8^_LgcAl0sSx;eV1f($#x zBFONX6XY0B`UTZ?pwWol)&;-7euqXRsLrzf^5Xv&SV$QkNb78!hZ1D+pdbTl`!8An zwhojo&wTm+zuWgtry~cbqGMrTKsOpxy;*;Gv4nJ^3t>hJ;4m6g6Iy?H;YqsDVlbmc zAW;cQs%f1bED#;;hwC6V2&AV%{6md@6iU;qCfZ!P!*DZaYDWC`?wc>&$M zAgRFrq77h^Krx#6`Tzg!&^w(@GTmS`)?nSGTu2W3(hbhJ0slpPASJpfNY9sUa8VKP zU$g~m7%0AEKoa0GviSgGCz$b4=r<_&!3&HVkkaVWCr~1O5!8J)pjY&Z9HYRCOCSIL zkBEwoi|+RQV|@07TlWhEeU zK;gy0z>qJ`C;$pOkeUp6MuF74l!B5XhVtT)B8KF|f?|e(f_U)AM`B4yQDzcDQEFjn zW>IQNd~s$~Dnm+YS!Qx-d}dxrYEfEZaw?UOUG{s|~!?=(jAPe7Gv1_J|wLl!frRs}H+bh~l{{1**?WU2@6|NrlF{n1?e z3(u^PY%y6wI?=_uhcHR|C|aGDC8&D+k0i4E!y< zprXk2N4JMUr|+BYFWs&`x;;Q^ph|EfBm@GHONvkLz@-AnP!SY~n=lEK zg5@ws)b&lL>yMY2|Ns97`x)eP>o+e}fTVEu;$XfdOoPJ%)F}b?F9ks1VS@;dI7Zj3jx;;1oyF&$n{)?u7i&0SNe)TP=Z3!xa-*j_y`aXCq z{+g@X70TuYvA{9$dP;Nc1BMd*Zr29^FXp@jIfJFs^-8zvkAN3kU{|qpyIui@706rG zZ(h{AB_Vwf3Ndha*)T%e<46Ae|GyJ7J`e4WBe%yFfP(DBO0ciMEoKcy28I`Z7#SEk zUB7@b!HWZbz^?E1{nE+U?fRwJ;(w`FMh>{@`x5Zt5)-Ha$?@_CC>?(3bzKn9?fa!$ zFzCN1v=O%C&Hw)$uG9IqxlV6AP%4%I>hpEGehGLn1FEwNs&h?1x9P<2VDPq4eXp0}E&Z1tjFa0ZL?G7O0|U0JA_%1PDt6E-L|I zWr<{g#G4Pu1iWy42}*lBpduGkGG{UT7Y%_F$-b{Z&Ceg5jyh=NtO-bh(lQ6^e^4O? z_CH4X3+{aNy1og>0JW*R|NIwC0J-YVi|sG}{}0Gw$Y2m=VE8W@0}}l5V$n-bdkR!Q zcDw%I-_Fr`vP1#GYW~Sv%4K|@+xJIWC*y1GZr2~p2beltf4sg1N|_wp9z22nMI#`l z#DGoV==Ocn>A?d@cpVyy0x!&7Koef$5s-te-@GsaseBrHxYrXjJH;?TgHhnk|Ns9% zX>5)Lqd;zPI>l`oaQJ+I)lWR2^4Jzp9)n`A*Y!fci?-*`=mYVx7`lB00=q+bg1TKf zz?D=6#Ai(}K#2!jIG5^le}M+(mls(t{{Odq%FMt}B9>7DE^jyjUL=7!XGcJTa<3gh zJ*QsR9|66-7XrIOIl%p)6o{F6NM<7GRzc`y?sokF3C1&;i~=v-KZ6G&$Y0iPUc7z| zDUd;V_KGH>zz=8`zSm?FxbXk~e^9c0qsb_cpTm$;S&~{DUtW}1Qj(fSao}Rf*WmDe z0t;_YUu35xBD{~g{s3hhP_TOFboxH%cI9ZU5MkhN1F6_9B&k5sEU4%# zfaqEI43zLe)`Oh)aw7u+LvyVNLybB}rAR=x?}NbqqB#(?wFvV|Km#|6!L>pbBPf2m zeL0#B%7EPm>heOP*c+k);y;iD;M(24x%LM`nI||bB>49Uwq7b#1?8(3jGeAOx?KgJ z-fKR@7}V{`6Yyf$Q*aV}Esl_bNc2J^K!%ozWpu#O-=p6k_2Be}NI?QRi~=v#K7pqo zP)u3Bd9m^-Bn5T<2L-=`4k8Vy=r9UE5=~KR;vnc^fYTRf5EoqDfqG}i1jx6Bu zNIa7PXU?1fn}?^qfv zh!;WTTfcd6`7u#mMD{Mp?gI_2TYq_x@fgj0paFTX`=W8X&zM~IfyzB_{NpUow><=f z3QzYJPi5v=48%eVl`Ud=y1 zHh{Aiw0M7mt$6oGGE*#L0Zg|mLN{}_>l;Y%zDA!>;Dx|Lc;*Co)B4Q|o=1>qoB%4{ zx9B74$n*M$^8JiHQu$t#T2fk+mr9H53QoVEECddJ^!(Rc%K;ishKxGFLKj-bx;})o zSvk5rbOPa{K>Bb|P((mmvQltCXDOas%fO%Wv?M1e@G}W?&)GoeYj2kalqVV6=y^ zxDPr+x$Hig`#@8CVE4`ZipzaP_aP}0r3AsxA>Dn@fnPRs_kpH3!S4GB9-{{5M6~d` zbdT!p6M@Drq!fWAanOXJ^_Le(_dsEIp)(XxhKPZu8NqH0#py;p(%c9RKTwJW$1i&R z1G&e62Q>VNn$Z8Nf<{dLtAZw4{;PuKfc~q3W|RJ_f+myytAeJV|Eq$g+WxD8^5B0} z(0I~+RZth^zbdF*|6diOTBe1vPB`tAbj^|5ZWFqW`L(O#WXL)CBvl3Tn3f zR|OTSXU>!|9uDn()BJ`ZASgI2yxWx}iy`2}!MorT6(1KJ6@gY=cK;9UeiIlR7H<5% z`&0ML&e}hgc6A=FIeM3XR}4<*c4O)0v1qK3`~ym7rTpC?7A(vc8*QXO+!DcV9}AA| zP?o@;7iM?Bc67V`acDly)9L!hnyuy#X2^iFA!D%pVcj2Fzm+JqUMi6d?vCYXyl-~Gw>fA>x6?g{-q)-U!BP(6 z|J}!0zm6ksTo&tk}8g!GJ$v4VscUu56@ z|3Bcx&08RUO5j>Qk;Mqp_QDz*A|eo#|5ZT)hyPVUa}fVkL30}aRY6le|5ZWrO#f92 z7BdR`R|QSg{Z|D|QNmno%?q01EoJ(A_~nM1|NoykbLPJ)Xw2-tY64hC%wk3Xm|74G ziO-Bl3=9kz4CRahSxgxXprx{+A>e^Fflk*y-L8K?6RV3D1s1nVWfbV<1(BV+B~uv% znrr_sl(O#tHL720b%*{r4ywW#Ubx))|35=lfKlMZ{~I9Rvt)b`WE6Pu3BoZxfR-mf z?!bk??rVNy0&0hr$~W7VfI_>De<6r&e!;jHM85`gQ+9&JqH1{<`CFM8K{L&u#s$NR z)SLhRcYCmO`u;fX`UjLgvlzNVe*|R|Oa-kF9n6c{h8UEhEL;{(WhSObHpgg;CE#XPW&SYDcd z7Pf$sM&N(ZGvI)I(p>w5fxqQ1r~@eqN-jY#nH$h`2i>kuKx47KH#&VE>;hTTdWpYf zB?Bn_E`Va|xGSitXXtjl(fop?)AdHT?+t6;Cq?4jp*NbX7)p5miv}!a6zKN7VaZs^ z^!i43=nd=8C&f&!GrL`HfCn}p4!HwW7kZ3`^*g`flsT5kY$<%Mo=Qii+wOn2xN z>(C3O9Nn%DtXLGc;LOwgH1-e=T1ks5M+|OpaDGi$2pT^GuNedL zn`?O(OIcssyaF190CoJqt;e7j@}O~uBRu&04%VObFTGd8#+5rvi{r98)7 zL1P3AFF%3YQp>|w!q!~N!&K_rZ2PASl;K4|nGQNu7VuvbB-rT+PT3_Q$WkvJTm|*6 zz%r$*FF{U0kzREfD$TP1@655gd#B!7nymh6;fcb(?Nj z#3%r6Vf+uzV#s*;mx1B`HCqNI28Lp_fZpCKAOHUk%tDfCJy62eI~63{IrYrP|Nmce z9d8BE2dWtbGMEGy7+!#i_U^qP*EAmi)i0{uUwk4%Ag^%JEEFV;Q#g310`&|b3rOV z0SM91`rrp>ir{~5FUX2OsD^zG2n}07D!QkFBB~o4X;7zihw=nuNK`Wlgarl%{hta7 zjOHUU%|94R8P9b4{)vw>J{$dF*?E%tW(1NJRiwe`GwWYQ26}n=Mg@0yYJ8x>_4#qv zGmHWZ44{!f-wVB=&pSh}bh`fO^*s}q#TJm!A)M>*Uvv$qt;7kg(jdhKxS-(Q=K7r6 zaslSv4szTJO63suc8BtGhFCf=qy&ysD zL;hXSD-tLCu2n|qd;IrNiCy5^DC90jEq`Ff!;cW@QjFBP=g-C>jf>2%6L-4 zC=mGnLU$MsNL_fZ>z06C-xq-|&Vg$ci;M>~i~_x(TY@s~fEcbX0x~Xu7+}qT|3z0U zVif3|!U{4f=)Wk)J>9(^FZ8y8gaWcyf&*VH29GmqfGSn+(l58ukU-6-s9_YyVhIj^ z(Fj%{055@5pej%kAcZ_|_&2}d=yv4^4(l%E0QV0C!j1oH9|KM6{O|S^Y5plt#JUqS zt8D$VSglLOpgZ&r|F+YC8Fy+KK}$G5{%dyq1DdpHKEl%>=kE6UWVbI*w<|}lNaZmW zc7|gt;tU{vqK@%kcR1KRjc-`c@{J01JBig;uXBq9h8fZ@{koY50%66P}jsg zWapnVWaOVGwTuD_L9PwXVh-qbWeIq(>pM#3i8~32XYAf5Srpu`L28qM!w)n~`GcjL zvzw*$Lmi_)>|x^r;KuuzGiM<3z8uXzS;~dGLwUMcdO=O7P7yE_d${?;f0$CRTVU!J z)=Xp+=;Q^F$5|UdopuHW1{9TG<#6*Cg4A^Kg2>~nAYGs)Bo_5xbCKK+)_3^7YQ$p5 zxCYq%#y1+w3=E4WOaeKf2Skc?fJoUE5NX-~B5i9XF$$#hh^_!rymP>mYz3HNEdf)i z1z<`yXA+~poPO2?lR%4185U0g(=3Z;Okx!1b>&#R1jKKB@CUSj|G`8?0Y(N!hJ_%> z#Zx9S3LIzcn8+x=$-;2pIBO4BmVu!gJV?{odjqt$MwDj)qd@1>JAeNFhqRs+-7@b1Ry00rCeEzF9IQ|GC(%`7oD>RT&^ux#3(?* zAPXcah$6w^o8dE+QQ(E-aj^SPBMB^@^)F)udVPK54UYB&YHu9WfBIi41e(?SFKPnr zRI|JU?SswYcyam|*g|M8q+1l!jfW2@JOTH&;l27hy}ow>dqbaqX3wFcR{<~F!C}P% z?&LfP{4aU|KBg6VCkV;~_1cf4ba1jbUU);idbk_Z_or$H2OM7DA@r>f-+jL!ec=0z z<`;~p;R=hK?*C!?6q*?Yx{ukav@!}53wN`%9w=e@f1&vpOXEL~P|@2sr2GL=uhRxr zZ_t6E9wdaS{=X_{;P1a`2Y9p)G`jL%6*RHDQS^h=`^Xk$89N&&QF?SKTR!tnhA*2T>T)x`>KF%p$v!Qs{X z24sJ?F9+D3Kd@C7p?~2l;{lo@>&SA-rxXuy@BtS=7SnwH-QwfS-Sox zRtBw)3+1s60wcGW}YnIphjY%1+1cedUeOdo9PGF?} z8#vNGWW0ibfdMo?0V?&nU7rNJs6PTu>!5{t(AAXCMA_|n<>hp63xz}5_erPko$k;( zL0~P6U@aV-t`9&f9!rIfyF$m%z>V;3*9)(cx_uvX2dXqaVqjos_^|CEE>2O$mn6CjsD6?eOyc+C!D)1?3Z zU)2Mg9$mns1GKD%hj;TE31}LCmJN-zpiywYXAZkd`|FWP~`?t!y=Ltg~_ z7o7ms{KeSy1!$!vNdKEo-!F}|UqB83jiG+=f9A0JwG1dfJOVkSRIuCi3$LI%1H-`w z0^DF5K&vOgwL*93m+zN4!Ic7083GgtSnz*U8*nIr(<6BNO&B^71X?i*8cN!-h*1EX z?@)%{!0NkQL2H8GQ-A>($^xMJX98#g!XZ$)l)zp%!P^V2BHf`p&2L;lEyUxXl){iD z)9bn?!1$zJSXw97e^DK9W4x5z_&^-Um)*WH-JufQt_K2x0{)8{fF(;FcZVL>2`X9A zEV)XrbvxO#9;iFde5la^RHT$1<=^hX797sMy+WkdgcO=sXb#c%oAt30sou~JLEWJeVPU<#Hv+@L!h-%^Xg;FQdZ3guJ{skw z?E1j^N0D&1FGw%Mw9;)amw}9P{Q+{!Y6b=d+yDRn%kwvb7Ap7h90f&dAgFO-0%>zt zfO5eH&|pwKNE_IsAf7PLvN6!03&=Tl0zeKZ3DT~8V{KRD-R=7WoB*v)lyOw}&=h@iJSZ!HJGqHaQ+s+RAN&3i!_ z7)$4OgO#peES-AsMe`4)qCSr_%Q>!~QNYsXwB|jopZ@;;A5+4&Gll`Q3AP6;OX#0U^b>lSqYu{=c5Is+u2qn-anL6H<44~~Mk7csjbaWH`C z@xQ79xaL&>lNw-B2TU4(NeeIuYEJ)G1x>mAR|QRE{#OOfo&Hw^O|$-21r68!R|O3Z z|5pVKW&c+NjTZh_1r2`uR|Wa_zbdHT@?RCyiTSSz>gfDeow5it&kd?!|Eq%P-T$hf zn)tsesBZqR3aYmMtAc8>|Ei#D|6dhU3jJ3F6-ob9LG{RgRZvwkfI&BE^=Jr;hQMeD zjE2By2#kinXb6mkz-S1JhQMeDjE2By2n>}FU>F6XAut*OLp=l(%s~tIhPp3C-B0Zh zfSnl+TF+g;z`!u2k&$6aHUoo4W=cT3duoX@=sYh5FyAHKttd4$peVH5EaOEArMPc89H%qvYxOa_@#gscE;o_lIZaB5Lz zVvb*FZc-{%c}MUuW~C*m#b9SJWMro3rR3y*Icm9?@gRnCQEFmIs#|6b#HkG7MVWA} zduoY)S!z*EVnIP_N>FNXX%57j!KryE3Q*4|K)kO2RqKPU7GwuD^)BGk)I9T@^YcoI z@*!>lsRiLQtC*COn6l)O{QR8anB=08_@tbanBvr&wD<}OGmt<`aZxgePRYs91D!w* z(gnexdD(gS<#`H0rFkWpxv2`y8L7$H3a&*(`9)mdCH|nLbtQ?(*$TO-x%owv3W-Je zrFkg|@rgM(`N@e2<%z`#$@xV^r3EFaDR3PO42}vQ=^TZ!#G=f^q?}Z+!qVc@6osVJ zwEUt}h0GGLP-b3cNoHbBW)+HV28Li{J8@XzsF0jkT%u5tuaKxvoST@FlUk$zI*(4F zq_QAYAp_*HM6i{K3OV`3#R~apU}-%C1s;U@OZrOESQ6i3J5k`2|Ipi6yBDNtq=eJ$ecX zZuvzDsTGO21v#l!3JP4joXHu9MGDCZwh9`V3Tg@l6>e^t)?B>K8Hsu6nR)48laljO zQb89?K;2cTP@b8SqX4>mA~7v3HMs<=sIW9KC$ppy=9VIG8UvY-Ur>^n3kpO9kU4rt z5dn#2lE{#ZRE4s{oKmo#U4sL_5e0Gy$ginIIh6{=@pkPf@NGr`t28EzP za$-)7o`M4S3XRNSh0@~E#GIT;g+v92OF`}iDFL|{Nmoj0a!z7VYKj6lSo8Bz!RCMz zCFkdrrGg^|B8Q}@ARiQQMGB~z6BSZ2)6!ClQu9i%7(zz41XMB#{3vG>xKhq2Fr}PP zAfcR50JM7qG$9QNR1l4fA?X&HNkHiZo&nSu)WHD>&n*n6oKWG8B`fk7!(+E859^)84$K2+zm0W1gmMT3`Gn@4EYR240;S) z47>~q4518p42cX$3^`!aOBnJQ6c|z%G8u{)3K()25*aEP6c~aSLKvJG6c~INQW=UF ziWw3a(iu`2@C6wp-r#Ygke8ZRq)-Yi9AR;Ya59($(UVw|nuuO1Ld(jc)Z)}4P)QJy=;uu{%K4p;$kZWg9?xYS8!%ksulRKT?Q^kaQP3;^?BeL6`Vse^H4nsRSnY3z`zA+N?0j? z&JtuOFD@v`%qvNAWME(@WhiDyWhi1WW-wyVV@P4hVL;Sxs(MBdAR8SKH3?Z61Qu5) zl@~m^A?^c_KKaRsNVOI?55j6JSXGq>@-;{?6hq90#yQl?%=|pCtTVKRg4Ivpswp|K zv>23~k!vNeY6t-_4_3gT8OXrEaG{P-U``#QKtmm)fKMHxfJz;t%@10H3|gEFF$H{E z4ruEb{B9&)hG2#O1{Ve=215n|1_K5?1{Ve&1|OJmh9U+Ah5#2Q|AN%Ku*4kDr8cRi zAW2t-JccrcOmIHT1LycWh7txBum~vEgYsYzLnTNl3JzxQXK-T(VF+h%WC&t#Wr$($ zWyoYm2AfmNkk63DP{I(y5C+b>r3{G-ISj!JB@CtD+?>x419qhzg8@SfLoh=sSf&81 zJ{ZLo1Scpp-8m<}IMq89;+CM)^uW^8qRKE(UFKR54pJGEnhx@xcWNa>z>&d)A&kM1 zA%MXXn*LD31f*valO6&=!7jn-Dq3}BSJK@USc_cKC{UaUIup;?DkiizwWv78H?gE7 zBegunB|o_|H#M)MIL0NvJTE6dF{L;rBQqtjAXC>s&s@&{l~bOXmy%yz9OIIjRGJQz z(kn0FDrNEijrFa0JbW69ygd0P-~Gd{qz)<0sid z(ujsFqkuD%jV!+hv}l`wfdQnx#F0^;$`PU-#0RNEmN#=^6tHnZl|O@|AEe&d3srsx zlDwraqd>4PL>{De6k`to*!b?VZqU|51_ogU2-fIkWGLxoWH`{x$go6^k>Q#kBf|ti zMh1QXMh0ymMuz_aj0~KDj0_hA85uZ)7#ZRP7#U)P7#V_v7#Y?HGBPL%F*3*qF)|nk zF*5K8GBO+&WMt?TWMuf*&B*Y(n~{ODhmk?Jhmk?1hmpashmpafhmj$^hmoPWhmm1Y z48J&X(odl(tc_b@Wt=wW1d*~7@d*vrTu+RMnG-3u8#VParrU}0coU}Ios z;9%fn;9}rr;9=lp;A7xt5MU5w5CV~4Zfa3tNh*W~ z8oGqADl$vJjI^TERJbZo#|)%DJ+&l0EfqZI9A5+(l7#BODh-|CM;oOShR$Z zVbc;uh676&8O|+XWVo}0k>Sk}Mus0t7#X;hGBQXlWn?f|%E(}|l#wB5DI-JNQbvZX zrHl*}OBosFtYBnlTfxXsu!4~xVFe?D+X_YojTMXxJS!L(ek^BXc(R<4;mUGGh7-#f z8MZBFWLN;AS1>a4EN5gWTh7Q3v7C`1U^yd$)pAA#t>ugiQlR7iz^kMgjFG`_86$(;GDZfKWsD3g z%NQAcEoEf*u#}PE*-}P^J4+cEE-htbII)zGVc$|lhAm4O8CET2WLU72kzvMCMg}90 znG`xXYY8KR&k{xkjU|i>980jrAucOM<97JQtvzFKYDsB6E zv$%wTAr~g^o>~HvgI-SNl3J3Ond8X7;0#manpc{Orl^=97$yr^F#)=>%q6v~*pY!D z*fk_Hz%jrR+&X1&Wr8eJNQTazFfiCK`{XC4_+%y(B^FgWGB6}Df|gi7`3yk};9+Zz z#JrT8RE7=)#2N!fhE^!g6*LbT&cNWo44$C?X=jLIbjvTwO)T+EEiO(>PYq{aU;^3f zlUQ5=p1@~dumJHf)+DI1B33Q@WC>5qEOE;(3eL<+&q?)9%1TWxVQ^w_PRvVA&GF1< zU^u`Wl$w|Vnge8D;AaU+Elw=~JBESbE(0`x;Hwh6U4#5weTten(528K1PplRa#WCjLSHqgXA zh*iW^o?M)qTfo2|!j_wwTbx?Lz#sr(fwVFxGR8Xxg~SJiILCYXd4_~DF!%8VBW8Tt9y3=E}=@$tzysfl^_>`QS{5-HFQOxmRQ6`pns7MG?d}>8^7nZzgO=jP_;F}z}M z1$!+3GFi@Wioqon}SLG$Ag5y55 zh+#4)7lmXdXM+V87>**@8E(j!oWE(C#RU zlRt7mkXLhQRO(0Y(PU!Nd{_3=OD$V+7BI8(ucCGu(V66&SYL=%cvRMj!5J zP;lzQ!qaYqB)(B^j)nkw2naATfG(pIG}SY0G;KGXY&z3)x#=3y&8GWJkD6XLy<_^= z^u6g#Cvvji@vtqM)vsSa|W^>FIo2@t7YIfZ0jM-(g z`({tgzMK6qV>ahE7d2Nm*D*IXw>Nh+4>6B4PcY9hFEVd5Z!_;TpJ_hde1gR+i-i{J zEOuD%TduMEV5wo{Xw_=R|M{66KESr@!H*HvKO>E4XrZ%P_rWK}rrt3|Qm|i!1Ybs-=VP<0X%q-gcqdA*}k42hAkHriNHA_3oK+7u2 ze#^C%7cB2szObBYb=vB&)qg8(>safH*6*!FY!qx3*zT}(u#2!`wU@Owu#dFQv+uFr zV86%y1ZYszfRW)30|P^{L8U>T!4iXA1{VyH466*8jHHYf8SOH1GmbNUVf@bci}5dG z1`{?D9upxG2@^RJ6%#EJ0~0e78xtoJ4--F=5R)jAB(qYpU1kT&j+vb?yJU95?4H>Z zvrlF$=3M3i<~rt<=APz$<{{=$=2hnH<`>Lwm_INVw~)1PvhcEqx5%)_wP>~IvY279 z(qg^ER*StBH!U7oytMdep<=0J>2DcsnQvKU*=ae!@`2@lOAaehD;XS<}1zDn{PG0X#UXrh4~+ICJPP=J_`{GDGNml4GVn>GYeY_7YlETV2fyr zWQ%-@3X58cW{X~n=@yGE)>~|`IA(F$;-bZMi}x1aEW#`+ENd{hZ?N>(~nhE`XsZd<*xVzK77ma{gpwy?IdcCoIoskQ01Sz&X+_MGh%+aI>f zb^>-1cItLEb{=*ib}4pi?RMDxvg5UvvUjuhwx4dl#hxL6k)a24prL`JftrDVfrWvs zfs4UZgJi=j!#9SX4c{1jHxe`!GnO&dG4?X{H!d=6FrI0=-uQ_zvq^?Yo=GhGYv6~GEFc|GtDtAGOaMJGi@>LGM!*L&2*0GBGVP7>rA(p?lL`Kdd&2U=_S(} zruR&rn7%UoVEWDUk13NGLjfZL=FOjIfNctg&pcoMXAb@_^+X%LkzQJ<&^*QT`AK0RVV=;-CNk diff --git a/Externals/libusb/x64/hidapi.h b/Externals/libusb/x64/hidapi.h deleted file mode 100644 index bd912acd7f..0000000000 --- a/Externals/libusb/x64/hidapi.h +++ /dev/null @@ -1,384 +0,0 @@ -/******************************************************* - HIDAPI - Multi-Platform library for - communication with HID devices. - - Alan Ott - Signal 11 Software - - 8/22/2009 - - Copyright 2009, All Rights Reserved. - - At the discretion of the user of this library, - this software may be licensed under the terms of the - GNU Public License v3, a BSD-Style license, or the - original HIDAPI license as outlined in the LICENSE.txt, - LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt - files located at the root of the source distribution. - These files may also be found in the public source - code repository located at: - http://github.com/signal11/hidapi . -********************************************************/ - -/** @file - * @defgroup API hidapi API - */ - -#ifndef HIDAPI_H__ -#define HIDAPI_H__ - -#include - -#ifdef _WIN32 - #define HID_API_EXPORT __declspec(dllexport) - #define HID_API_CALL -#else - #define HID_API_EXPORT /**< API export macro */ - #define HID_API_CALL /**< API call macro */ -#endif - -#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ - -#ifdef __cplusplus -extern "C" { -#endif - struct hid_device_; - typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ - - /** hidapi info structure */ - struct hid_device_info { - /** Platform-specific device path */ - char *path; - /** Device Vendor ID */ - unsigned short vendor_id; - /** Device Product ID */ - unsigned short product_id; - /** Serial Number */ - wchar_t *serial_number; - /** Device Release Number in binary-coded decimal, - also known as Device Version Number */ - unsigned short release_number; - /** Manufacturer String */ - wchar_t *manufacturer_string; - /** Product string */ - wchar_t *product_string; - /** Usage Page for this Device/Interface - (Windows/Mac only). */ - unsigned short usage_page; - /** Usage for this Device/Interface - (Windows/Mac only).*/ - unsigned short usage; - /** The USB interface which this logical device - represents. Valid on both Linux implementations - in all cases, and valid on the Windows implementation - only if the device contains more than one interface. */ - int interface_number; - - /** Pointer to the next device */ - struct hid_device_info *next; - }; - - - /** @brief Initialize the HIDAPI library. - - This function initializes the HIDAPI library. Calling it is not - strictly necessary, as it will be called automatically by - hid_enumerate() and any of the hid_open_*() functions if it is - needed. This function should be called at the beginning of - execution however, if there is a chance of HIDAPI handles - being opened by different threads simultaneously. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_init(void); - - /** @brief Finalize the HIDAPI library. - - This function frees all of the static data associated with - HIDAPI. It should be called at the end of execution to avoid - memory leaks. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_exit(void); - - /** @brief Enumerate the HID Devices. - - This function returns a linked list of all the HID devices - attached to the system which match vendor_id and product_id. - If @p vendor_id and @p product_id are both set to 0, then - all HID devices will be returned. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the types of device - to open. - @param product_id The Product ID (PID) of the types of - device to open. - - @returns - This function returns a pointer to a linked list of type - struct #hid_device, containing information about the HID devices - attached to the system, or NULL in the case of failure. Free - this linked list by calling hid_free_enumeration(). - */ - struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); - - /** @brief Free an enumeration Linked List - - This function frees a linked list created by hid_enumerate(). - - @ingroup API - @param devs Pointer to a list of struct_device returned from - hid_enumerate(). - */ - void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); - - /** @brief Open a HID device using a Vendor ID (VID), Product ID - (PID) and optionally a serial number. - - If @p serial_number is NULL, the first device with the - specified VID and PID is opened. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the device to open. - @param product_id The Product ID (PID) of the device to open. - @param serial_number The Serial Number of the device to open - (Optionally NULL). - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); - - /** @brief Open a HID device by its path name. - - The path name be determined by calling hid_enumerate(), or a - platform-specific path name can be used (eg: /dev/hidraw0 on - Linux). - - @ingroup API - @param path The path name of the device to open - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); - - /** @brief Write an Output report to a HID device. - - The first byte of @p data[] must contain the Report ID. For - devices which only support a single report, this must be set - to 0x0. The remaining bytes contain the report data. Since - the Report ID is mandatory, calls to hid_write() will always - contain one more byte than the report contains. For example, - if a hid report is 16 bytes long, 17 bytes must be passed to - hid_write(), the Report ID (or 0x0, for devices with a - single report), followed by the report data (16 bytes). In - this example, the length passed in would be 17. - - hid_write() will send the data on the first OUT endpoint, if - one exists. If it does not, it will send the data through - the Control Endpoint (Endpoint 0). - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); - - int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); - /** @brief Read an Input report from a HID device with timeout. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - @param milliseconds timeout in milliseconds or -1 for blocking wait. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); - - /** @brief Read an Input report from a HID device. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); - - /** @brief Set the device handle to be non-blocking. - - In non-blocking mode calls to hid_read() will return - immediately with a value of 0 if there is no data to be - read. In blocking mode, hid_read() will wait (block) until - there is data to read before returning. - - Nonblocking can be turned on and off at any time. - - @ingroup API - @param device A device handle returned from hid_open(). - @param nonblock enable or not the nonblocking reads - - 1 to enable nonblocking - - 0 to disable nonblocking. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); - - /** @brief Send a Feature report to the device. - - Feature reports are sent over the Control endpoint as a - Set_Report transfer. The first byte of @p data[] must - contain the Report ID. For devices which only support a - single report, this must be set to 0x0. The remaining bytes - contain the report data. Since the Report ID is mandatory, - calls to hid_send_feature_report() will always contain one - more byte than the report contains. For example, if a hid - report is 16 bytes long, 17 bytes must be passed to - hid_send_feature_report(): the Report ID (or 0x0, for - devices which do not use numbered reports), followed by the - report data (16 bytes). In this example, the length passed - in would be 17. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send, including - the report number. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); - - /** @brief Get a feature report from a HID device. - - Make sure to set the first byte of @p data[] to the Report - ID of the report to be read. Make sure to allow space for - this extra byte in @p data[]. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into, including - the Report ID. Set the first byte of @p data[] to the - Report ID of the report to be read. - @param length The number of bytes to read, including an - extra byte for the report ID. The buffer can be longer - than the actual report. - - @returns - This function returns the number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); - - /** @brief Close a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - */ - void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); - - /** @brief Get The Manufacturer String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Product String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Serial Number String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get a string from a HID device, based on its string index. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string_index The index of the string to get. - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); - - /** @brief Get a string describing the last error which occurred. - - @ingroup API - @param device A device handle returned from hid_open(). - - @returns - This function returns a string containing the last error - which occurred or NULL if none has occurred. - */ - HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/Externals/libusb/x64/lusb0_usb.h b/Externals/libusb/x64/lusb0_usb.h deleted file mode 100644 index b95fbf0a6d..0000000000 --- a/Externals/libusb/x64/lusb0_usb.h +++ /dev/null @@ -1,427 +0,0 @@ -#ifndef __USB_H__ -#define __USB_H__ - -#include -#include - -/* - * 'interface' is defined somewhere in the Windows header files. This macro - * is deleted here to avoid conflicts and compile errors. - */ - -#ifdef interface -#undef interface -#endif - -/* - * PATH_MAX from limits.h can't be used on Windows if the dll and - * import libraries are build/used by different compilers - */ - -#define LIBUSB_PATH_MAX 512 - - -/* - * USB spec information - * - * This is all stuff grabbed from various USB specs and is pretty much - * not subject to change - */ - -/* - * Device and/or Interface Class codes - */ -#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ -#define USB_CLASS_AUDIO 1 -#define USB_CLASS_COMM 2 -#define USB_CLASS_HID 3 -#define USB_CLASS_PRINTER 7 -#define USB_CLASS_MASS_STORAGE 8 -#define USB_CLASS_HUB 9 -#define USB_CLASS_DATA 10 -#define USB_CLASS_VENDOR_SPEC 0xff - -/* - * Descriptor types - */ -#define USB_DT_DEVICE 0x01 -#define USB_DT_CONFIG 0x02 -#define USB_DT_STRING 0x03 -#define USB_DT_INTERFACE 0x04 -#define USB_DT_ENDPOINT 0x05 - -#define USB_DT_HID 0x21 -#define USB_DT_REPORT 0x22 -#define USB_DT_PHYSICAL 0x23 -#define USB_DT_HUB 0x29 - -/* - * Descriptor sizes per descriptor type - */ -#define USB_DT_DEVICE_SIZE 18 -#define USB_DT_CONFIG_SIZE 9 -#define USB_DT_INTERFACE_SIZE 9 -#define USB_DT_ENDPOINT_SIZE 7 -#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ -#define USB_DT_HUB_NONVAR_SIZE 7 - - -/* ensure byte-packed structures */ -#include - - -/* All standard descriptors have these 2 fields in common */ -struct usb_descriptor_header -{ - unsigned char bLength; - unsigned char bDescriptorType; -}; - -/* String descriptor */ -struct usb_string_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wData[1]; -}; - -/* HID descriptor */ -struct usb_hid_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdHID; - unsigned char bCountryCode; - unsigned char bNumDescriptors; -}; - -/* Endpoint descriptor */ -#define USB_MAXENDPOINTS 32 -struct usb_endpoint_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bEndpointAddress; - unsigned char bmAttributes; - unsigned short wMaxPacketSize; - unsigned char bInterval; - unsigned char bRefresh; - unsigned char bSynchAddress; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ -#define USB_ENDPOINT_DIR_MASK 0x80 - -#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ -#define USB_ENDPOINT_TYPE_CONTROL 0 -#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 -#define USB_ENDPOINT_TYPE_BULK 2 -#define USB_ENDPOINT_TYPE_INTERRUPT 3 - -/* Interface descriptor */ -#define USB_MAXINTERFACES 32 -struct usb_interface_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bInterfaceNumber; - unsigned char bAlternateSetting; - unsigned char bNumEndpoints; - unsigned char bInterfaceClass; - unsigned char bInterfaceSubClass; - unsigned char bInterfaceProtocol; - unsigned char iInterface; - - struct usb_endpoint_descriptor *endpoint; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_MAXALTSETTING 128 /* Hard limit */ - -struct usb_interface -{ - struct usb_interface_descriptor *altsetting; - - int num_altsetting; -}; - -/* Configuration descriptor information.. */ -#define USB_MAXCONFIG 8 -struct usb_config_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wTotalLength; - unsigned char bNumInterfaces; - unsigned char bConfigurationValue; - unsigned char iConfiguration; - unsigned char bmAttributes; - unsigned char MaxPower; - - struct usb_interface *interface; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -/* Device descriptor */ -struct usb_device_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdUSB; - unsigned char bDeviceClass; - unsigned char bDeviceSubClass; - unsigned char bDeviceProtocol; - unsigned char bMaxPacketSize0; - unsigned short idVendor; - unsigned short idProduct; - unsigned short bcdDevice; - unsigned char iManufacturer; - unsigned char iProduct; - unsigned char iSerialNumber; - unsigned char bNumConfigurations; -}; - -struct usb_ctrl_setup -{ - unsigned char bRequestType; - unsigned char bRequest; - unsigned short wValue; - unsigned short wIndex; - unsigned short wLength; -}; - -/* - * Standard requests - */ -#define USB_REQ_GET_STATUS 0x00 -#define USB_REQ_CLEAR_FEATURE 0x01 -/* 0x02 is reserved */ -#define USB_REQ_SET_FEATURE 0x03 -/* 0x04 is reserved */ -#define USB_REQ_SET_ADDRESS 0x05 -#define USB_REQ_GET_DESCRIPTOR 0x06 -#define USB_REQ_SET_DESCRIPTOR 0x07 -#define USB_REQ_GET_CONFIGURATION 0x08 -#define USB_REQ_SET_CONFIGURATION 0x09 -#define USB_REQ_GET_INTERFACE 0x0A -#define USB_REQ_SET_INTERFACE 0x0B -#define USB_REQ_SYNCH_FRAME 0x0C - -#define USB_TYPE_STANDARD (0x00 << 5) -#define USB_TYPE_CLASS (0x01 << 5) -#define USB_TYPE_VENDOR (0x02 << 5) -#define USB_TYPE_RESERVED (0x03 << 5) - -#define USB_RECIP_DEVICE 0x00 -#define USB_RECIP_INTERFACE 0x01 -#define USB_RECIP_ENDPOINT 0x02 -#define USB_RECIP_OTHER 0x03 - -/* - * Various libusb API related stuff - */ - -#define USB_ENDPOINT_IN 0x80 -#define USB_ENDPOINT_OUT 0x00 - -/* Error codes */ -#define USB_ERROR_BEGIN 500000 - -/* - * This is supposed to look weird. This file is generated from autoconf - * and I didn't want to make this too complicated. - */ -#define USB_LE16_TO_CPU(x) - -/* - * Device reset types for usb_reset_ex. - * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx - * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx - */ -#define USB_RESET_TYPE_RESET_PORT (1 << 0) -#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) -#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) - - -/* Data types */ -/* struct usb_device; */ -/* struct usb_bus; */ - -struct usb_device -{ - struct usb_device *next, *prev; - - char filename[LIBUSB_PATH_MAX]; - - struct usb_bus *bus; - - struct usb_device_descriptor descriptor; - struct usb_config_descriptor *config; - - void *dev; /* Darwin support */ - - unsigned char devnum; - - unsigned char num_children; - struct usb_device **children; -}; - -struct usb_bus -{ - struct usb_bus *next, *prev; - - char dirname[LIBUSB_PATH_MAX]; - - struct usb_device *devices; - unsigned long location; - - struct usb_device *root_dev; -}; - -/* Version information, Windows specific */ -struct usb_version -{ - struct - { - int major; - int minor; - int micro; - int nano; - } dll; - struct - { - int major; - int minor; - int micro; - int nano; - } driver; -}; - - -struct usb_dev_handle; -typedef struct usb_dev_handle usb_dev_handle; - -/* Variables */ -#ifndef __USB_C__ -#define usb_busses usb_get_busses() -#endif - - - -#include - - -#ifdef __cplusplus -extern "C" -{ -#endif - - /* Function prototypes */ - - /* usb.c */ - usb_dev_handle *usb_open(struct usb_device *dev); - int usb_close(usb_dev_handle *dev); - int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, - size_t buflen); - int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, - size_t buflen); - - /* descriptors.c */ - int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, - unsigned char type, unsigned char index, - void *buf, int size); - int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, - unsigned char index, void *buf, int size); - - /* .c */ - int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, - int value, int index, char *bytes, int size, - int timeout); - int usb_set_configuration(usb_dev_handle *dev, int configuration); - int usb_claim_interface(usb_dev_handle *dev, int interface); - int usb_release_interface(usb_dev_handle *dev, int interface); - int usb_set_altinterface(usb_dev_handle *dev, int alternate); - int usb_resetep(usb_dev_handle *dev, unsigned int ep); - int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); - int usb_reset(usb_dev_handle *dev); - int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); - - char *usb_strerror(void); - - void usb_init(void); - void usb_set_debug(int level); - int usb_find_busses(void); - int usb_find_devices(void); - struct usb_device *usb_device(usb_dev_handle *dev); - struct usb_bus *usb_get_busses(void); - - - /* Windows specific functions */ - -#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 - int usb_install_service_np(void); - void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 - int usb_uninstall_service_np(void); - void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 - int usb_install_driver_np(const char *inf_file); - void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 - int usb_touch_inf_file_np(const char *inf_file); - void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 - int usb_install_needs_restart_np(void); - -#define LIBUSB_HAS_INSTALL_NP 1 - int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); - int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); - #define usb_install_np usb_install_npA - void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - - const struct usb_version *usb_get_version(void); - - int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep, int pktsize); - int usb_bulk_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - - int usb_submit_async(void *context, char *bytes, int size); - int usb_reap_async(void *context, int timeout); - int usb_reap_async_nocancel(void *context, int timeout); - int usb_cancel_async(void *context); - int usb_free_async(void **context); - - -#ifdef __cplusplus -} -#endif - -#endif /* __USB_H__ */ - diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 0103a534c3..2e1e3c1823 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -248,24 +248,16 @@ bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) u32 ReturnValue = 0; SIOCtlVBuffer CommandBuffer(_CommandAddress); - switch (CommandBuffer.Parameter) - { - - default: - { - DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); - DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); - DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); - DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); - DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); - DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); - DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); - #if defined(_DEBUG) || defined(DEBUGFAST) - DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); - #endif - } - break; - } + DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); + DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); + DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); + DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); + DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); + DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); + DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); + #if defined(_DEBUG) || defined(DEBUGFAST) + DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); + #endif Memory::Write_U32(ReturnValue, _CommandAddress + 4); return true; @@ -298,31 +290,130 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des memcpy(dest,src,sizeof(WiiHIDEndpointDescriptor)); dest->wMaxPacketSize = Common::swap16(dest->wMaxPacketSize); } -/* + +u32 CWII_IPC_HLE_Device_hid::GetAvailableID(char* path) +{ + return 0; +} + // hidapi version -void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) +void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutSize) { // Enumerate and print the HID devices on the system struct hid_device_info *devs, *cur_dev; + int OffsetBuffer = BufferOut; + int OffsetStart = 0; + int c,ic,i,e; // config, interface container, interface, endpoint + devs = hid_enumerate(0x0, 0x0); cur_dev = devs; while (cur_dev) { - printf("Device Found\n type: %04hx %04hx\n path: %s\n serial_number: %ls", + + OffsetStart = OffsetBuffer; + OffsetBuffer += 4; // skip length for now, fill at end + + Memory::Write_U32(GetAvailableID(cur_dev->path), OffsetBuffer); //write device num + OffsetBuffer += 4; + + WiiHIDDeviceDescriptor wii_device; + /* + u8 bDescriptorType; + u16 bcdUSB; + u8 bDeviceClass; + u8 bDeviceSubClass; + u8 bDeviceProtocol; + u8 bMaxPacketSize0; + u16 idVendor; + u16 idProduct; + u16 bcdDevice; + u8 iManufacturer; + u8 iProduct; + u8 iSerialNumber; + u8 bNumConfigurations; + u8 pad[2]; + + */ + + wii_device.bLength = Common::swap8(0x12); + wii_device.bcdUSB = Common::swap16(0x0002); + wii_device.bDeviceClass = Common::swap8(0); + wii_device.bDeviceSubClass = Common::swap8(0); + wii_device.bDeviceProtocol = Common::swap8(0); + wii_device.bMaxPacketSize0 = Common::swap8(0x20); + wii_device.idVendor = Common::swap16(cur_dev->vendor_id); + wii_device.idProduct = Common::swap16(cur_dev->product_id); + wii_device.bcdDevice = Common::swap16(0x100); + wii_device.iManufacturer = Common::swap8(0x1); + wii_device.iProduct = Common::swap8(0x2); + wii_device.iSerialNumber = Common::swap8(0); + wii_device.bNumConfigurations = Common::swap8(0x1); + + Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); + + OffsetBuffer += Align(wii_device.bLength, 4); + + + for (c = 0; c < Common::swap8(wii_device.bNumConfigurations); c++) + { + + WiiHIDConfigDescriptor wii_config; + wii_config.bLength = Common::swap8(0x9); + wii_config.bDescriptorType = Common::swap8(0x2); + wii_config.wTotalLength = Common::swap16(0x29); + wii_config.bNumInterfaces = Common::swap8(0x1); + wii_config.bConfigurationValue = Common::swap8(0x1); + wii_config.iConfiguration = Common::swap8(0); + wii_config.bmAttributes = Common::swap8(0x80); + wii_config.MaxPower = Common::swap8(0x96); + + Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(wii_config.bLength, 4)); + OffsetBuffer += Align(wii_config.bLength, 4); + + for (ic = 0; ic < wii_config.bNumInterfaces; ic++) + { +/* struct usb_interface *interfaceContainer = &config->interface[ic]; + for (i = 0; i < interfaceContainer->num_altsetting; i++) + { + struct usb_interface_descriptor *interface = &interfaceContainer->altsetting[i]; + + WiiHIDInterfaceDescriptor wii_interface; + ConvertInterfaceToWii(&wii_interface, interface); + Memory::WriteBigEData((const u8*)&wii_interface, OffsetBuffer, Align(wii_interface.bLength, 4)); + OffsetBuffer += Align(wii_interface.bLength, 4); + + for (e = 0; e < interface->bNumEndpoints; e++) + { + struct usb_endpoint_descriptor *endpoint = &interface->endpoint[e]; + + WiiHIDEndpointDescriptor wii_endpoint; + ConvertEndpointToWii(&wii_endpoint, endpoint); + Memory::WriteBigEData((const u8*)&wii_endpoint, OffsetBuffer, Align(wii_endpoint.bLength, 4)); + OffsetBuffer += Align(wii_endpoint.bLength, 4); + + } //endpoints + } // interfaces + */ + } // interface containters + } // configs + + + NOTICE_LOG(WII_IPC_HID, "Device Found\n type: %04hx %04hx\n path: %s\n serial_number: %ls", cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number); - printf("\n"); - printf(" Manufacturer: %ls\n", cur_dev->manufacturer_string); - printf(" Product: %ls\n", cur_dev->product_string); - printf("\n"); + NOTICE_LOG(WII_IPC_HID, "\n"); + NOTICE_LOG(WII_IPC_HID, " Manufacturer: %ls\n", cur_dev->manufacturer_string); + NOTICE_LOG(WII_IPC_HID, " Product: %ls\n", cur_dev->product_string); + NOTICE_LOG(WII_IPC_HID, "\n"); cur_dev = cur_dev->next; } hid_free_enumeration(devs); } -*/ + // libusb version void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { + //FillOutDevicesHidApi(BufferOut, BufferOutSize); usb_find_busses(); // find all busses usb_find_devices(); // find all connected devices struct usb_bus *bus; diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 2bb7f47a59..ef3b8912f1 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -111,7 +111,10 @@ private: } WiiHIDEndpointDescriptor; - void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize); + u32 GetAvailableID(char* path); + + void FillOutDevices(u32 BufferOut, u32 BufferOutSize); + void FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutSize); void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src); void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src); From e46779e3bd74e47c51b1a314935f9684ac7ec60f Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 3 Apr 2012 20:05:05 +1200 Subject: [PATCH 03/27] Add lib files. --- Externals/libusb/win32/hidapi.lib | Bin 0 -> 48456 bytes Externals/libusb/win32/libusb.lib | Bin 0 -> 11974 bytes Externals/libusb/x64/hidapi.lib | Bin 0 -> 51080 bytes Externals/libusb/x64/libusb.lib | Bin 0 -> 11674 bytes 4 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 Externals/libusb/win32/hidapi.lib create mode 100644 Externals/libusb/win32/libusb.lib create mode 100644 Externals/libusb/x64/hidapi.lib create mode 100644 Externals/libusb/x64/libusb.lib diff --git a/Externals/libusb/win32/hidapi.lib b/Externals/libusb/win32/hidapi.lib new file mode 100644 index 0000000000000000000000000000000000000000..2b75c20b698a2e75eb88a99ea90fd78948170993 GIT binary patch literal 48456 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 Xl*WxL7(h(e^c+aY*bowSAjJ#-DlFbW literal 0 HcmV?d00001 diff --git a/Externals/libusb/win32/libusb.lib b/Externals/libusb/win32/libusb.lib new file mode 100644 index 0000000000000000000000000000000000000000..64ac6f79d01ea0085188a82b04a2e0f8fd94c1fc GIT binary patch literal 11974 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 J*lfk&Z2(uUERO&H literal 0 HcmV?d00001 diff --git a/Externals/libusb/x64/hidapi.lib b/Externals/libusb/x64/hidapi.lib new file mode 100644 index 0000000000000000000000000000000000000000..f15eaed80ce9cad686f08280f398689ac32d4d4f GIT binary patch literal 51080 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 LK@X3u*t`q?aB1hA literal 0 HcmV?d00001 From 8ba2abc699e6a1fc4cb903bf9a16699f9901c61b Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 3 Apr 2012 20:36:50 +1200 Subject: [PATCH 04/27] Fixed x64 lib. --- Externals/libusb/x64/hidapi.lib | Bin 51080 -> 50962 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Externals/libusb/x64/hidapi.lib b/Externals/libusb/x64/hidapi.lib index f15eaed80ce9cad686f08280f398689ac32d4d4f..067d0166022037012e839cbe0c6bcab38621841c 100644 GIT binary patch delta 4841 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 bJmILSXnc8caY|_cLLx7@pmOuNqsfc_6*_4v From d188233b130ef777e4bfd261265c10306d0bc0ca Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 12 Nov 2012 19:12:10 +1300 Subject: [PATCH 05/27] Moving to libHID --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 102 ++++++++++-------- 1 file changed, 55 insertions(+), 47 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 2e1e3c1823..70edc1805b 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -127,6 +127,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ERROR CODES: -4 Cant find device specified */ + u32 dev_num = Memory::Read_U32(BufferIn+0x10); u8 requesttype = Memory::Read_U8(BufferIn+0x14); u8 request = Memory::Read_U8(BufferIn+0x15); @@ -135,10 +136,11 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); + /* //libusb way static int upto = 0; int i; - usb_find_busses(); /* find all busses */ - usb_find_devices(); /* find all connected devices */ + usb_find_busses(); + usb_find_devices(); struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); @@ -172,6 +174,13 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) fwrite((char*)Memory::GetPointer(data), 1, size, test); fclose(test); upto++; + */ + + ReturnValue = size + sizeof(usb_ctrl_setup); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", + requesttype, request, ReturnValue); + + break; } case IOCTL_HID_INTERRUPT_IN: @@ -291,20 +300,22 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des dest->wMaxPacketSize = Common::swap16(dest->wMaxPacketSize); } +static int x = 0; u32 CWII_IPC_HLE_Device_hid::GetAvailableID(char* path) { - return 0; + return x++; } // hidapi version void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutSize) { + x = 0; // Enumerate and print the HID devices on the system struct hid_device_info *devs, *cur_dev; int OffsetBuffer = BufferOut; int OffsetStart = 0; - int c,ic,i,e; // config, interface container, interface, endpoint + int c,i,e; // config, interface container, interface, endpoint devs = hid_enumerate(0x0, 0x0); cur_dev = devs; @@ -317,33 +328,17 @@ void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutS OffsetBuffer += 4; WiiHIDDeviceDescriptor wii_device; - /* - u8 bDescriptorType; - u16 bcdUSB; - u8 bDeviceClass; - u8 bDeviceSubClass; - u8 bDeviceProtocol; - u8 bMaxPacketSize0; - u16 idVendor; - u16 idProduct; - u16 bcdDevice; - u8 iManufacturer; - u8 iProduct; - u8 iSerialNumber; - u8 bNumConfigurations; - u8 pad[2]; - - */ wii_device.bLength = Common::swap8(0x12); - wii_device.bcdUSB = Common::swap16(0x0002); + wii_device.bDescriptorType = Common::swap8(0x1); + wii_device.bcdUSB = Common::swap16(0x0200); wii_device.bDeviceClass = Common::swap8(0); wii_device.bDeviceSubClass = Common::swap8(0); wii_device.bDeviceProtocol = Common::swap8(0); wii_device.bMaxPacketSize0 = Common::swap8(0x20); wii_device.idVendor = Common::swap16(cur_dev->vendor_id); wii_device.idProduct = Common::swap16(cur_dev->product_id); - wii_device.bcdDevice = Common::swap16(0x100); + wii_device.bcdDevice = Common::swap16(cur_dev->release_number); wii_device.iManufacturer = Common::swap8(0x1); wii_device.iProduct = Common::swap8(0x2); wii_device.iSerialNumber = Common::swap8(0); @@ -367,36 +362,44 @@ void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutS wii_config.bmAttributes = Common::swap8(0x80); wii_config.MaxPower = Common::swap8(0x96); - Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(wii_config.bLength, 4)); - OffsetBuffer += Align(wii_config.bLength, 4); + Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(Common::swap8(wii_config.bLength), 4)); + OffsetBuffer += Align(Common::swap8(wii_config.bLength), 4); - for (ic = 0; ic < wii_config.bNumInterfaces; ic++) + for (i = 0; i < wii_config.bNumInterfaces; i++) { -/* struct usb_interface *interfaceContainer = &config->interface[ic]; - for (i = 0; i < interfaceContainer->num_altsetting; i++) - { - struct usb_interface_descriptor *interface = &interfaceContainer->altsetting[i]; - WiiHIDInterfaceDescriptor wii_interface; - ConvertInterfaceToWii(&wii_interface, interface); - Memory::WriteBigEData((const u8*)&wii_interface, OffsetBuffer, Align(wii_interface.bLength, 4)); - OffsetBuffer += Align(wii_interface.bLength, 4); - for (e = 0; e < interface->bNumEndpoints; e++) + wii_interface.bLength = Common::swap8(0x9); + wii_interface.bDescriptorType = Common::swap8(0x4); + wii_interface.bInterfaceNumber = Common::swap8(i); + wii_interface.bAlternateSetting = Common::swap8(0); + wii_interface.bNumEndpoints = Common::swap8(0x2); + wii_interface.bInterfaceClass = Common::swap8(0x3); + wii_interface.bInterfaceSubClass = Common::swap8(0); + wii_interface.bInterfaceProtocol = Common::swap8(0); + wii_interface.iInterface = Common::swap8(0); + + Memory::WriteBigEData((const u8*)&wii_interface, OffsetBuffer, Align(Common::swap8(wii_interface.bLength), 4)); + OffsetBuffer += Align(Common::swap8(wii_interface.bLength), 4); + + for (e = 0; e < Common::swap8(wii_interface.bNumEndpoints); e++) { - struct usb_endpoint_descriptor *endpoint = &interface->endpoint[e]; - WiiHIDEndpointDescriptor wii_endpoint; - ConvertEndpointToWii(&wii_endpoint, endpoint); - Memory::WriteBigEData((const u8*)&wii_endpoint, OffsetBuffer, Align(wii_endpoint.bLength, 4)); - OffsetBuffer += Align(wii_endpoint.bLength, 4); + wii_endpoint.bLength = Common::swap8(0x7); + wii_endpoint.bDescriptorType = Common::swap8(0x5); + wii_endpoint.bEndpointAddress = Common::swap8(e == 0 ? 0x1 : 0x81); + wii_endpoint.bmAttributes = Common::swap8(0x3); + wii_endpoint.wMaxPacketSize = Common::swap16(0x20); + wii_endpoint.bInterval = Common::swap8(0x1); + + Memory::WriteBigEData((const u8*)&wii_endpoint, OffsetBuffer, Align(Common::swap8(wii_endpoint.bLength), 4)); + OffsetBuffer += Align(Common::swap8(wii_endpoint.bLength), 4); } //endpoints - } // interfaces - */ - } // interface containters + } // interfaces } // configs - + + Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length NOTICE_LOG(WII_IPC_HID, "Device Found\n type: %04hx %04hx\n path: %s\n serial_number: %ls", cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number); @@ -406,6 +409,11 @@ void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutS NOTICE_LOG(WII_IPC_HID, "\n"); cur_dev = cur_dev->next; } + Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices + + FILE* test = fopen ("mattsbin.bin", "wb"); + fwrite(Memory::GetPointer(BufferOut), BufferOutSize, 1, test); + fclose(test); hid_free_enumeration(devs); } @@ -413,8 +421,8 @@ void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutS // libusb version void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { - //FillOutDevicesHidApi(BufferOut, BufferOutSize); - usb_find_busses(); // find all busses + FillOutDevicesHidApi(BufferOut, BufferOutSize); + /*usb_find_busses(); // find all busses usb_find_devices(); // find all connected devices struct usb_bus *bus; struct usb_device *dev; @@ -480,7 +488,7 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) } // buses Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices - + */ } From 586813b1504669b434f47bb216379561fb3f0f16 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 13 Nov 2012 00:14:47 +1300 Subject: [PATCH 06/27] Basic HID works on windows! I had to customise HIDAPI. --- Externals/libusb/include/hidapi.h | 6 +- Externals/libusb/win32/hidapi.lib | Bin 48456 -> 51150 bytes Externals/libusb/x64/hidapi.lib | Bin 50962 -> 53880 bytes .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 79 ++++++++++++++---- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 3 +- 5 files changed, 69 insertions(+), 19 deletions(-) diff --git a/Externals/libusb/include/hidapi.h b/Externals/libusb/include/hidapi.h index bd912acd7f..3cd829b54a 100644 --- a/Externals/libusb/include/hidapi.h +++ b/Externals/libusb/include/hidapi.h @@ -155,7 +155,7 @@ extern "C" { This function returns a pointer to a #hid_device object on success or NULL on failure. */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, wchar_t *serial_number); + HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number); /** @brief Open a HID device by its path name. @@ -173,7 +173,7 @@ extern "C" { HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); /** @brief Write an Output report to a HID device. - + The first byte of @p data[] must contain the Report ID. For devices which only support a single report, this must be set to 0x0. The remaining bytes contain the report data. Since @@ -199,8 +199,8 @@ extern "C" { -1 on error. */ int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); + int HID_API_EXPORT HID_API_CALL hid_write_report(hid_device *device, const unsigned char *data, size_t length); - int HID_API_EXPORT HID_API_CALL hid_set_output_report(hid_device *dev, const unsigned char *data, size_t length); /** @brief Read an Input report from a HID device with timeout. Input reports are returned diff --git a/Externals/libusb/win32/hidapi.lib b/Externals/libusb/win32/hidapi.lib index 2b75c20b698a2e75eb88a99ea90fd78948170993..7fbc90bbca71487e188cf871a337db918d55a809 100644 GIT binary patch delta 20728 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 delta 18753 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 delta 16263 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 diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 70edc1805b..4d3c7ff8e8 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -23,17 +23,23 @@ #include "lusb0_usb.h" #include "hidapi.h" +static std::map loaded_devices; +static std::map loaded_devices_rev; +static std::map opened_devices; + + + CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { - usb_init(); /* initialize the library */ - + //usb_init(); /* initialize the library */ + hid_init(); } CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() { - + hid_exit(); } bool CWII_IPC_HLE_Device_hid::Open(u32 _CommandAddress, u32 _Mode) @@ -175,7 +181,29 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) fclose(test); upto++; */ + + hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); + if (dev_handle == NULL) + { + ReturnValue = -4; + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", + requesttype, request, ReturnValue); + break; + } + + // this is our write request + if(request == 0x09) + { + #define rw_buf_size 0x21 + unsigned char buf[rw_buf_size]; + memset(&buf[0], 0, rw_buf_size); + memcpy(&buf[1], (unsigned char*)Memory::GetPointer(data), size); + int success = hid_write_report(dev_handle, buf, size+1); + + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control) success = %d", success); + } + ReturnValue = size + sizeof(usb_ctrl_setup); DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", requesttype, request, ReturnValue); @@ -193,21 +221,29 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u32 data = Memory::Read_U32(BufferIn+0x1C); - struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); if (dev_handle == NULL) { ReturnValue = -4; + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt In)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } - usb_claim_interface(dev_handle,0); - ReturnValue = usb_interrupt_read(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 1000); + //ReturnValue = -5; + ReturnValue = hid_read(dev_handle, (unsigned char*)Memory::GetPointer(data), length); + //ReturnValue = usb_interrupt_read(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 1000); + + FILE* test = fopen ("readdata.bin", "wb"); + fwrite(Memory::GetPointer(data), ReturnValue, 1, test); + fclose(test); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt In)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - usb_close(dev_handle); + break; } case IOCTL_HID_INTERRUPT_OUT: @@ -220,21 +256,22 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u32 data = Memory::Read_U32(BufferIn+0x1C); - struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); if (dev_handle == NULL) { ReturnValue = -4; + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt Out) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } - usb_claim_interface(dev_handle,0); - ReturnValue = usb_interrupt_write(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 0); + ReturnValue = -5; + //ReturnValue = usb_interrupt_write(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 0); DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt Out) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - usb_close(dev_handle); break; } default: @@ -303,7 +340,12 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des static int x = 0; u32 CWII_IPC_HLE_Device_hid::GetAvailableID(char* path) { - return x++; + std::string dev_path = path; + if(loaded_devices.find(dev_path) == loaded_devices.end()){ + loaded_devices_rev[x] = dev_path; + loaded_devices[dev_path] = x++; + } + return loaded_devices[dev_path]; } // hidapi version @@ -411,9 +453,6 @@ void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutS } Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices - FILE* test = fopen ("mattsbin.bin", "wb"); - fwrite(Memory::GetPointer(BufferOut), BufferOutSize, 1, test); - fclose(test); hid_free_enumeration(devs); } @@ -499,6 +538,16 @@ int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) return (num + (alignment-1)) & ~(alignment-1); } +hid_device * CWII_IPC_HLE_Device_hid::GetDeviceByDevNumHidLib(u32 devNum) +{ + if (loaded_devices_rev.find(devNum) == loaded_devices_rev.end()) + return NULL; + if (opened_devices.find(devNum) != opened_devices.end()) + return opened_devices[devNum]; + + hid_device * phPortalHandle = opened_devices[devNum] = hid_open_path(loaded_devices_rev[devNum].c_str()); + return phPortalHandle; +} struct usb_dev_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) { diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index ef3b8912f1..2fc4ba9a22 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -19,6 +19,7 @@ #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device.h" +#include "hidapi.h" class CWII_IPC_HLE_Device_hid : public IWII_IPC_HLE_Device { @@ -122,7 +123,7 @@ private: void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src); int Align(int num, int alignment); - + hid_device * GetDeviceByDevNumHidLib(u32 devNum); struct usb_dev_handle * GetDeviceByDevNum(u32 devNum); From d8b879a4ee844b693af2d7af85e2cd3d6d2712b3 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Thu, 15 Nov 2012 01:09:25 +1300 Subject: [PATCH 07/27] Movd back to libusb for full support on windows --- Externals/libusb/include/hidapi.h | 384 ------------------ Externals/libusb/win32/hidapi.lib | Bin 51150 -> 0 bytes Externals/libusb/x64/hidapi.lib | Bin 53880 -> 0 bytes Source/Core/Common/Src/Log.h | 2 +- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 381 ++++++----------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 25 +- Source/VSProps/Dolphin.x64.props | 2 +- 7 files changed, 143 insertions(+), 651 deletions(-) delete mode 100644 Externals/libusb/include/hidapi.h delete mode 100644 Externals/libusb/win32/hidapi.lib delete mode 100644 Externals/libusb/x64/hidapi.lib diff --git a/Externals/libusb/include/hidapi.h b/Externals/libusb/include/hidapi.h deleted file mode 100644 index 3cd829b54a..0000000000 --- a/Externals/libusb/include/hidapi.h +++ /dev/null @@ -1,384 +0,0 @@ -/******************************************************* - HIDAPI - Multi-Platform library for - communication with HID devices. - - Alan Ott - Signal 11 Software - - 8/22/2009 - - Copyright 2009, All Rights Reserved. - - At the discretion of the user of this library, - this software may be licensed under the terms of the - GNU Public License v3, a BSD-Style license, or the - original HIDAPI license as outlined in the LICENSE.txt, - LICENSE-gpl3.txt, LICENSE-bsd.txt, and LICENSE-orig.txt - files located at the root of the source distribution. - These files may also be found in the public source - code repository located at: - http://github.com/signal11/hidapi . -********************************************************/ - -/** @file - * @defgroup API hidapi API - */ - -#ifndef HIDAPI_H__ -#define HIDAPI_H__ - -#include - -#ifdef _WIN32 - #define HID_API_EXPORT __declspec(dllexport) - #define HID_API_CALL -#else - #define HID_API_EXPORT /**< API export macro */ - #define HID_API_CALL /**< API call macro */ -#endif - -#define HID_API_EXPORT_CALL HID_API_EXPORT HID_API_CALL /**< API export and call macro*/ - -#ifdef __cplusplus -extern "C" { -#endif - struct hid_device_; - typedef struct hid_device_ hid_device; /**< opaque hidapi structure */ - - /** hidapi info structure */ - struct hid_device_info { - /** Platform-specific device path */ - char *path; - /** Device Vendor ID */ - unsigned short vendor_id; - /** Device Product ID */ - unsigned short product_id; - /** Serial Number */ - wchar_t *serial_number; - /** Device Release Number in binary-coded decimal, - also known as Device Version Number */ - unsigned short release_number; - /** Manufacturer String */ - wchar_t *manufacturer_string; - /** Product string */ - wchar_t *product_string; - /** Usage Page for this Device/Interface - (Windows/Mac only). */ - unsigned short usage_page; - /** Usage for this Device/Interface - (Windows/Mac only).*/ - unsigned short usage; - /** The USB interface which this logical device - represents. Valid on both Linux implementations - in all cases, and valid on the Windows implementation - only if the device contains more than one interface. */ - int interface_number; - - /** Pointer to the next device */ - struct hid_device_info *next; - }; - - - /** @brief Initialize the HIDAPI library. - - This function initializes the HIDAPI library. Calling it is not - strictly necessary, as it will be called automatically by - hid_enumerate() and any of the hid_open_*() functions if it is - needed. This function should be called at the beginning of - execution however, if there is a chance of HIDAPI handles - being opened by different threads simultaneously. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_init(void); - - /** @brief Finalize the HIDAPI library. - - This function frees all of the static data associated with - HIDAPI. It should be called at the end of execution to avoid - memory leaks. - - @ingroup API - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_exit(void); - - /** @brief Enumerate the HID Devices. - - This function returns a linked list of all the HID devices - attached to the system which match vendor_id and product_id. - If @p vendor_id and @p product_id are both set to 0, then - all HID devices will be returned. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the types of device - to open. - @param product_id The Product ID (PID) of the types of - device to open. - - @returns - This function returns a pointer to a linked list of type - struct #hid_device, containing information about the HID devices - attached to the system, or NULL in the case of failure. Free - this linked list by calling hid_free_enumeration(). - */ - struct hid_device_info HID_API_EXPORT * HID_API_CALL hid_enumerate(unsigned short vendor_id, unsigned short product_id); - - /** @brief Free an enumeration Linked List - - This function frees a linked list created by hid_enumerate(). - - @ingroup API - @param devs Pointer to a list of struct_device returned from - hid_enumerate(). - */ - void HID_API_EXPORT HID_API_CALL hid_free_enumeration(struct hid_device_info *devs); - - /** @brief Open a HID device using a Vendor ID (VID), Product ID - (PID) and optionally a serial number. - - If @p serial_number is NULL, the first device with the - specified VID and PID is opened. - - @ingroup API - @param vendor_id The Vendor ID (VID) of the device to open. - @param product_id The Product ID (PID) of the device to open. - @param serial_number The Serial Number of the device to open - (Optionally NULL). - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open(unsigned short vendor_id, unsigned short product_id, const wchar_t *serial_number); - - /** @brief Open a HID device by its path name. - - The path name be determined by calling hid_enumerate(), or a - platform-specific path name can be used (eg: /dev/hidraw0 on - Linux). - - @ingroup API - @param path The path name of the device to open - - @returns - This function returns a pointer to a #hid_device object on - success or NULL on failure. - */ - HID_API_EXPORT hid_device * HID_API_CALL hid_open_path(const char *path); - - /** @brief Write an Output report to a HID device. - - The first byte of @p data[] must contain the Report ID. For - devices which only support a single report, this must be set - to 0x0. The remaining bytes contain the report data. Since - the Report ID is mandatory, calls to hid_write() will always - contain one more byte than the report contains. For example, - if a hid report is 16 bytes long, 17 bytes must be passed to - hid_write(), the Report ID (or 0x0, for devices with a - single report), followed by the report data (16 bytes). In - this example, the length passed in would be 17. - - hid_write() will send the data on the first OUT endpoint, if - one exists. If it does not, it will send the data through - the Control Endpoint (Endpoint 0). - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_write(hid_device *device, const unsigned char *data, size_t length); - int HID_API_EXPORT HID_API_CALL hid_write_report(hid_device *device, const unsigned char *data, size_t length); - - /** @brief Read an Input report from a HID device with timeout. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - @param milliseconds timeout in milliseconds or -1 for blocking wait. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read_timeout(hid_device *dev, unsigned char *data, size_t length, int milliseconds); - - /** @brief Read an Input report from a HID device. - - Input reports are returned - to the host through the INTERRUPT IN endpoint. The first byte will - contain the Report number if the device uses numbered reports. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into. - @param length The number of bytes to read. For devices with - multiple reports, make sure to read an extra byte for - the report number. - - @returns - This function returns the actual number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_read(hid_device *device, unsigned char *data, size_t length); - - /** @brief Set the device handle to be non-blocking. - - In non-blocking mode calls to hid_read() will return - immediately with a value of 0 if there is no data to be - read. In blocking mode, hid_read() will wait (block) until - there is data to read before returning. - - Nonblocking can be turned on and off at any time. - - @ingroup API - @param device A device handle returned from hid_open(). - @param nonblock enable or not the nonblocking reads - - 1 to enable nonblocking - - 0 to disable nonblocking. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_set_nonblocking(hid_device *device, int nonblock); - - /** @brief Send a Feature report to the device. - - Feature reports are sent over the Control endpoint as a - Set_Report transfer. The first byte of @p data[] must - contain the Report ID. For devices which only support a - single report, this must be set to 0x0. The remaining bytes - contain the report data. Since the Report ID is mandatory, - calls to hid_send_feature_report() will always contain one - more byte than the report contains. For example, if a hid - report is 16 bytes long, 17 bytes must be passed to - hid_send_feature_report(): the Report ID (or 0x0, for - devices which do not use numbered reports), followed by the - report data (16 bytes). In this example, the length passed - in would be 17. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data The data to send, including the report number as - the first byte. - @param length The length in bytes of the data to send, including - the report number. - - @returns - This function returns the actual number of bytes written and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_send_feature_report(hid_device *device, const unsigned char *data, size_t length); - - /** @brief Get a feature report from a HID device. - - Make sure to set the first byte of @p data[] to the Report - ID of the report to be read. Make sure to allow space for - this extra byte in @p data[]. - - @ingroup API - @param device A device handle returned from hid_open(). - @param data A buffer to put the read data into, including - the Report ID. Set the first byte of @p data[] to the - Report ID of the report to be read. - @param length The number of bytes to read, including an - extra byte for the report ID. The buffer can be longer - than the actual report. - - @returns - This function returns the number of bytes read and - -1 on error. - */ - int HID_API_EXPORT HID_API_CALL hid_get_feature_report(hid_device *device, unsigned char *data, size_t length); - - /** @brief Close a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - */ - void HID_API_EXPORT HID_API_CALL hid_close(hid_device *device); - - /** @brief Get The Manufacturer String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_manufacturer_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Product String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_product_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get The Serial Number String from a HID device. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_serial_number_string(hid_device *device, wchar_t *string, size_t maxlen); - - /** @brief Get a string from a HID device, based on its string index. - - @ingroup API - @param device A device handle returned from hid_open(). - @param string_index The index of the string to get. - @param string A wide string buffer to put the data into. - @param maxlen The length of the buffer in multiples of wchar_t. - - @returns - This function returns 0 on success and -1 on error. - */ - int HID_API_EXPORT_CALL hid_get_indexed_string(hid_device *device, int string_index, wchar_t *string, size_t maxlen); - - /** @brief Get a string describing the last error which occurred. - - @ingroup API - @param device A device handle returned from hid_open(). - - @returns - This function returns a string containing the last error - which occurred or NULL if none has occurred. - */ - HID_API_EXPORT const wchar_t* HID_API_CALL hid_error(hid_device *device); - -#ifdef __cplusplus -} -#endif - -#endif - diff --git a/Externals/libusb/win32/hidapi.lib b/Externals/libusb/win32/hidapi.lib deleted file mode 100644 index 7fbc90bbca71487e188cf871a337db918d55a809..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51150 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 B|55+| diff --git a/Externals/libusb/x64/hidapi.lib b/Externals/libusb/x64/hidapi.lib deleted file mode 100644 index 0626164cb7fa14c5b1a90f5220bb4afae60bd718..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53880 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 loaded_devices; -static std::map loaded_devices_rev; -static std::map opened_devices; - - +#include "errno.h" CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { - //usb_init(); /* initialize the library */ - hid_init(); + usb_init(); /* initialize the library */ + } CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() { - hid_exit(); + for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) + { + usb_close(iter->second); + } + open_devices.clear(); } bool CWII_IPC_HLE_Device_hid::Open(u32 _CommandAddress, u32 _Mode) { - Dolphin_Debugger::PrintCallstack(LogTypes::WII_IPC_HID, LogTypes::LWARNING); DEBUG_LOG(WII_IPC_HID, "HID::Open"); + m_Active = true; Memory::Write_U32(GetDeviceID(), _CommandAddress + 4); return true; } @@ -53,11 +51,48 @@ bool CWII_IPC_HLE_Device_hid::Open(u32 _CommandAddress, u32 _Mode) bool CWII_IPC_HLE_Device_hid::Close(u32 _CommandAddress, bool _bForce) { DEBUG_LOG(WII_IPC_HID, "HID::Close"); + m_Active = false; if (!_bForce) Memory::Write_U32(0, _CommandAddress + 4); return true; } +u32 CWII_IPC_HLE_Device_hid::Update() +{ + u32 work_done = 0; + int ret = -4; + + std::list<_hidevent>::iterator ev = event_list.begin(); + while (ev != event_list.end()) { + + bool ev_finished = false; + + + switch (ev->type) + { + case IOCTL_HID_INTERRUPT_OUT: + case IOCTL_HID_INTERRUPT_IN: + { + ret = usb_reap_async_nocancel(ev->context, 0); + if(ret >= 0) + { + Memory::Write_U32(ret, ev->enq_address + 4); + WII_IPC_HLE_Interface::EnqReply(ev->enq_address); + work_done = ev_finished = true; + } + + break; + } + } + + if (ev_finished) + event_list.erase(ev++); + else + ev++; + } + return work_done; +} + bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { static u32 replyAddress = 0; @@ -75,6 +110,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Get Attached) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", BufferIn, BufferInSize, BufferOut, BufferOutSize); + //Memory::Write_U32(0xFFFFFFFF, BufferOut); if(!hasRun) { FillOutDevices(BufferOut, BufferOutSize); @@ -133,7 +169,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ERROR CODES: -4 Cant find device specified */ - u32 dev_num = Memory::Read_U32(BufferIn+0x10); u8 requesttype = Memory::Read_U8(BufferIn+0x14); u8 request = Memory::Read_U8(BufferIn+0x15); @@ -142,11 +177,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); - /* //libusb way - static int upto = 0; - int i; - usb_find_busses(); - usb_find_devices(); + usb_find_busses(); /* find all busses */ + usb_find_devices(); /* find all connected devices */ struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); @@ -155,7 +187,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = -4; break; } - + ReturnValue = usb_control_msg(dev_handle, requesttype, request, value, index, (char*)Memory::GetPointer(data), size, 0); @@ -164,113 +196,68 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { ReturnValue += sizeof(usb_ctrl_setup); } - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", - requesttype, request, ReturnValue); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + requesttype, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - usb_close(dev_handle); - - u8 test_out[0x20]; - Memory::ReadBigEData(test_out, BufferIn, BufferInSize); - char file[0x50]; - snprintf(file, 0x50, "ctrl_ctrlprotocol_%d.bin", upto); - FILE* test = fopen (file, "wb"); - for(i=0;i<0x20;i++) - fwrite(&test_out[i], 1, 1, test); - if (size > 0) - fwrite((char*)Memory::GetPointer(data), 1, size, test); - fclose(test); - upto++; - */ - - hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); - - if (dev_handle == NULL) - { - ReturnValue = -4; - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", - requesttype, request, ReturnValue); - break; - } - - // this is our write request - if(request == 0x09) - { - #define rw_buf_size 0x21 - unsigned char buf[rw_buf_size]; - memset(&buf[0], 0, rw_buf_size); - memcpy(&buf[1], (unsigned char*)Memory::GetPointer(data), size); - int success = hid_write_report(dev_handle, buf, size+1); - - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control) success = %d", success); - } - - ReturnValue = size + sizeof(usb_ctrl_setup); - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d", - requesttype, request, ReturnValue); - - - break; - } - case IOCTL_HID_INTERRUPT_IN: - { - - - u32 dev_num = Memory::Read_U32(BufferIn+0x10); - u32 end_point = Memory::Read_U32(BufferIn+0x14); - u32 length = Memory::Read_U32(BufferIn+0x18); - - u32 data = Memory::Read_U32(BufferIn+0x1C); - - hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); - - if (dev_handle == NULL) - { - ReturnValue = -4; - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt In)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - break; - } - - //ReturnValue = -5; - ReturnValue = hid_read(dev_handle, (unsigned char*)Memory::GetPointer(data), length); - //ReturnValue = usb_interrupt_read(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 1000); - - - FILE* test = fopen ("readdata.bin", "wb"); - fwrite(Memory::GetPointer(data), ReturnValue, 1, test); - fclose(test); - - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt In)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - break; } case IOCTL_HID_INTERRUPT_OUT: + case IOCTL_HID_INTERRUPT_IN: { + u32 dev_num = Memory::Read_U32(BufferIn+0x10); u32 end_point = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); u32 data = Memory::Read_U32(BufferIn+0x1C); - - hid_device * dev_handle = GetDeviceByDevNumHidLib(dev_num); + int ret = 0; + void * context = NULL; + + struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { ReturnValue = -4; - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt Out) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - break; + goto int_in_end_print; } - ReturnValue = -5; - //ReturnValue = usb_interrupt_write(dev_handle, end_point, (char*)Memory::GetPointer(data), length, 0); - - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt Out) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + usb_claim_interface(dev_handle,0); + + ret = usb_interrupt_setup_async(dev_handle, &context, end_point); + if (ret< 0) + { + ReturnValue = -4; + goto int_in_end_print; + } + ret = usb_submit_async(context, (char*)Memory::GetPointer(data), length); + if (ret< 0) + { + ReturnValue = -4; + goto int_in_end_print; + } + + ret = usb_reap_async_nocancel(context, 0); + if (ret >= 0) + { + ReturnValue = ret; + } + else + { + _hidevent ev; + ev.enq_address = _CommandAddress; + ev.type = Parameter; + ev.context = context; + event_list.push_back(ev); + return false; + } + + int_in_end_print: + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + break; } @@ -294,16 +281,24 @@ bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) u32 ReturnValue = 0; SIOCtlVBuffer CommandBuffer(_CommandAddress); - DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); - DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); - DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); - DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); - DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); - DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); - DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); - #if defined(_DEBUG) || defined(DEBUGFAST) - DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); - #endif + switch (CommandBuffer.Parameter) + { + + default: + { + DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); + DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); + DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); + DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); + DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); + DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); + DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); + #if defined(_DEBUG) || defined(DEBUGFAST) + DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); + #endif + } + break; + } Memory::Write_U32(ReturnValue, _CommandAddress + 4); return true; @@ -337,137 +332,15 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des dest->wMaxPacketSize = Common::swap16(dest->wMaxPacketSize); } -static int x = 0; -u32 CWII_IPC_HLE_Device_hid::GetAvailableID(char* path) -{ - std::string dev_path = path; - if(loaded_devices.find(dev_path) == loaded_devices.end()){ - loaded_devices_rev[x] = dev_path; - loaded_devices[dev_path] = x++; - } - return loaded_devices[dev_path]; -} - -// hidapi version -void CWII_IPC_HLE_Device_hid::FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutSize) -{ - x = 0; - // Enumerate and print the HID devices on the system - struct hid_device_info *devs, *cur_dev; - - int OffsetBuffer = BufferOut; - int OffsetStart = 0; - int c,i,e; // config, interface container, interface, endpoint - - devs = hid_enumerate(0x0, 0x0); - cur_dev = devs; - while (cur_dev) { - - OffsetStart = OffsetBuffer; - OffsetBuffer += 4; // skip length for now, fill at end - - Memory::Write_U32(GetAvailableID(cur_dev->path), OffsetBuffer); //write device num - OffsetBuffer += 4; - - WiiHIDDeviceDescriptor wii_device; - - wii_device.bLength = Common::swap8(0x12); - wii_device.bDescriptorType = Common::swap8(0x1); - wii_device.bcdUSB = Common::swap16(0x0200); - wii_device.bDeviceClass = Common::swap8(0); - wii_device.bDeviceSubClass = Common::swap8(0); - wii_device.bDeviceProtocol = Common::swap8(0); - wii_device.bMaxPacketSize0 = Common::swap8(0x20); - wii_device.idVendor = Common::swap16(cur_dev->vendor_id); - wii_device.idProduct = Common::swap16(cur_dev->product_id); - wii_device.bcdDevice = Common::swap16(cur_dev->release_number); - wii_device.iManufacturer = Common::swap8(0x1); - wii_device.iProduct = Common::swap8(0x2); - wii_device.iSerialNumber = Common::swap8(0); - wii_device.bNumConfigurations = Common::swap8(0x1); - - Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); - - OffsetBuffer += Align(wii_device.bLength, 4); - - - for (c = 0; c < Common::swap8(wii_device.bNumConfigurations); c++) - { - - WiiHIDConfigDescriptor wii_config; - wii_config.bLength = Common::swap8(0x9); - wii_config.bDescriptorType = Common::swap8(0x2); - wii_config.wTotalLength = Common::swap16(0x29); - wii_config.bNumInterfaces = Common::swap8(0x1); - wii_config.bConfigurationValue = Common::swap8(0x1); - wii_config.iConfiguration = Common::swap8(0); - wii_config.bmAttributes = Common::swap8(0x80); - wii_config.MaxPower = Common::swap8(0x96); - - Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(Common::swap8(wii_config.bLength), 4)); - OffsetBuffer += Align(Common::swap8(wii_config.bLength), 4); - - for (i = 0; i < wii_config.bNumInterfaces; i++) - { - WiiHIDInterfaceDescriptor wii_interface; - - wii_interface.bLength = Common::swap8(0x9); - wii_interface.bDescriptorType = Common::swap8(0x4); - wii_interface.bInterfaceNumber = Common::swap8(i); - wii_interface.bAlternateSetting = Common::swap8(0); - wii_interface.bNumEndpoints = Common::swap8(0x2); - wii_interface.bInterfaceClass = Common::swap8(0x3); - wii_interface.bInterfaceSubClass = Common::swap8(0); - wii_interface.bInterfaceProtocol = Common::swap8(0); - wii_interface.iInterface = Common::swap8(0); - - Memory::WriteBigEData((const u8*)&wii_interface, OffsetBuffer, Align(Common::swap8(wii_interface.bLength), 4)); - OffsetBuffer += Align(Common::swap8(wii_interface.bLength), 4); - - for (e = 0; e < Common::swap8(wii_interface.bNumEndpoints); e++) - { - WiiHIDEndpointDescriptor wii_endpoint; - wii_endpoint.bLength = Common::swap8(0x7); - wii_endpoint.bDescriptorType = Common::swap8(0x5); - wii_endpoint.bEndpointAddress = Common::swap8(e == 0 ? 0x1 : 0x81); - wii_endpoint.bmAttributes = Common::swap8(0x3); - wii_endpoint.wMaxPacketSize = Common::swap16(0x20); - wii_endpoint.bInterval = Common::swap8(0x1); - - Memory::WriteBigEData((const u8*)&wii_endpoint, OffsetBuffer, Align(Common::swap8(wii_endpoint.bLength), 4)); - OffsetBuffer += Align(Common::swap8(wii_endpoint.bLength), 4); - - } //endpoints - } // interfaces - } // configs - - Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length - - NOTICE_LOG(WII_IPC_HID, "Device Found\n type: %04hx %04hx\n path: %s\n serial_number: %ls", - cur_dev->vendor_id, cur_dev->product_id, cur_dev->path, cur_dev->serial_number); - NOTICE_LOG(WII_IPC_HID, "\n"); - NOTICE_LOG(WII_IPC_HID, " Manufacturer: %ls\n", cur_dev->manufacturer_string); - NOTICE_LOG(WII_IPC_HID, " Product: %ls\n", cur_dev->product_string); - NOTICE_LOG(WII_IPC_HID, "\n"); - cur_dev = cur_dev->next; - } - Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices - - hid_free_enumeration(devs); -} - - -// libusb version void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { - FillOutDevicesHidApi(BufferOut, BufferOutSize); - /*usb_find_busses(); // find all busses - usb_find_devices(); // find all connected devices + usb_find_busses(); /* find all busses */ + usb_find_devices(); /* find all connected devices */ struct usb_bus *bus; struct usb_device *dev; int OffsetBuffer = BufferOut; int OffsetStart = 0; - int c,ic,i,e; // config, interface container, interface, endpoint + int c,ic,i,e; /* config, interface container, interface, endpoint */ for (bus = usb_get_busses(); bus; bus = bus->next) { for (dev = bus->devices; dev; dev = dev->next) @@ -527,38 +400,34 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) } // buses Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices - */ + } - - int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) { return (num + (alignment-1)) & ~(alignment-1); } -hid_device * CWII_IPC_HLE_Device_hid::GetDeviceByDevNumHidLib(u32 devNum) -{ - if (loaded_devices_rev.find(devNum) == loaded_devices_rev.end()) - return NULL; - if (opened_devices.find(devNum) != opened_devices.end()) - return opened_devices[devNum]; - - hid_device * phPortalHandle = opened_devices[devNum] = hid_open_path(loaded_devices_rev[devNum].c_str()); - return phPortalHandle; -} struct usb_dev_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) { + + if (open_devices.find(devNum) != open_devices.end()) + return open_devices[devNum]; + + usb_dev_handle * device = NULL; + for (struct usb_bus *bus = usb_get_busses(); bus; bus = bus->next) { for (struct usb_device *dev = bus->devices; dev; dev = dev->next) { if(dev->devnum == devNum){ - return usb_open(dev); + open_devices[devNum] = device = usb_open(dev); + + return device; } } } - return NULL; + return device; } \ No newline at end of file diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 2fc4ba9a22..099f4deff4 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -19,7 +19,9 @@ #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device.h" -#include "hidapi.h" +#include + +/* Connection timed out */ #define ETRANSFER_TIMEDOUT -116 class CWII_IPC_HLE_Device_hid : public IWII_IPC_HLE_Device { @@ -30,13 +32,12 @@ public: virtual bool Open(u32 _CommandAddress, u32 _Mode); virtual bool Close(u32 _CommandAddress, bool _bForce); + virtual u32 Update(); virtual bool IOCtlV(u32 _CommandAddress); virtual bool IOCtl(u32 _CommandAddress); private: - - std::map deviceList; enum { @@ -112,10 +113,7 @@ private: } WiiHIDEndpointDescriptor; - u32 GetAvailableID(char* path); - - void FillOutDevices(u32 BufferOut, u32 BufferOutSize); - void FillOutDevicesHidApi(u32 BufferOut, u32 BufferOutSize); + void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize); void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src); void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src); @@ -123,8 +121,17 @@ private: void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src); int Align(int num, int alignment); - hid_device * GetDeviceByDevNumHidLib(u32 devNum); + struct usb_dev_handle * GetDeviceByDevNum(u32 devNum); + std::map open_devices; - + + typedef struct + { + u32 enq_address; + u32 type; + void * context; + } _hidevent; + + std::list<_hidevent> event_list; }; diff --git a/Source/VSProps/Dolphin.x64.props b/Source/VSProps/Dolphin.x64.props index c9cc2eb7ff..fd692daa60 100644 --- a/Source/VSProps/Dolphin.x64.props +++ b/Source/VSProps/Dolphin.x64.props @@ -9,7 +9,7 @@ ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg64;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;hidapi.lib;%(AdditionalDependencies) + portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;%(AdditionalDependencies) From d6e46dd7e2af4dfb1a2979f33ecd3252d88aff6c Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 19 Nov 2012 20:55:52 +1300 Subject: [PATCH 08/27] Add new lib and header for libusb 1.0. --- Externals/libusb/include/libusb.h | 1443 +++++++++++++++++++++++++ Externals/libusb/win32/libusb-1.0.lib | Bin 0 -> 704170 bytes Externals/libusb/x64/libusb-1.0.lib | Bin 0 -> 734478 bytes 3 files changed, 1443 insertions(+) create mode 100644 Externals/libusb/include/libusb.h create mode 100644 Externals/libusb/win32/libusb-1.0.lib create mode 100644 Externals/libusb/x64/libusb-1.0.lib diff --git a/Externals/libusb/include/libusb.h b/Externals/libusb/include/libusb.h new file mode 100644 index 0000000000..044012bcd0 --- /dev/null +++ b/Externals/libusb/include/libusb.h @@ -0,0 +1,1443 @@ +/* + * Public libusb header file + * Copyright (C) 2007-2008 Daniel Drake + * Copyright (c) 2001 Johannes Erdfelt + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef LIBUSB_H +#define LIBUSB_H + +#ifdef _MSC_VER +/* on MS environments, the inline keyword is available in C++ only */ +#define inline __inline +/* ssize_t is also not available (copy/paste from MinGW) */ +#ifndef _SSIZE_T_DEFINED +#define _SSIZE_T_DEFINED +#undef ssize_t +#ifdef _WIN64 + typedef __int64 ssize_t; +#else + typedef int ssize_t; +#endif /* _WIN64 */ +#endif /* _SSIZE_T_DEFINED */ +#endif /* _MSC_VER */ + +/* stdint.h is also not usually available on MS */ +#if defined(_MSC_VER) && (_MSC_VER < 1600) && (!defined(_STDINT)) && (!defined(_STDINT_H)) +typedef unsigned __int8 uint8_t; +typedef unsigned __int16 uint16_t; +typedef unsigned __int32 uint32_t; +#else +#include +#endif + +#include +#include +#include + +#if defined(__linux) || defined(__APPLE__) || defined(__CYGWIN__) +#include +#endif + +/* 'interface' might be defined as a macro on Windows, so we need to + * undefine it so as not to break the current libusb API, because + * libusb_config_descriptor has an 'interface' member + * As this can be problematic if you include windows.h after libusb.h + * in your sources, we force windows.h to be included first. */ +#if defined(_WIN32) || defined(__CYGWIN__) +#include +#if defined(interface) +#undef interface +#endif +#endif + +/** \def LIBUSB_CALL + * \ingroup misc + * libusb's Windows calling convention. + * + * Under Windows, the selection of available compilers and configurations + * means that, unlike other platforms, there is not one true calling + * convention (calling convention: the manner in which parameters are + * passed to funcions in the generated assembly code). + * + * Matching the Windows API itself, libusb uses the WINAPI convention (which + * translates to the stdcall convention) and guarantees that the + * library is compiled in this way. The public header file also includes + * appropriate annotations so that your own software will use the right + * convention, even if another convention is being used by default within + * your codebase. + * + * The one consideration that you must apply in your software is to mark + * all functions which you use as libusb callbacks with this LIBUSB_CALL + * annotation, so that they too get compiled for the correct calling + * convention. + * + * On non-Windows operating systems, this macro is defined as nothing. This + * means that you can apply it to your code without worrying about + * cross-platform compatibility. + */ +/* LIBUSB_CALL must be defined on both definition and declaration of libusb + * functions. You'd think that declaration would be enough, but cygwin will + * complain about conflicting types unless both are marked this way. + * The placement of this macro is important too; it must appear after the + * return type, before the function name. See internal documentation for + * API_EXPORTED. + */ +#if defined(_WIN32) || defined(__CYGWIN__) +#define LIBUSB_CALL WINAPI +#else +#define LIBUSB_CALL +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/** \def libusb_cpu_to_le16 + * \ingroup misc + * Convert a 16-bit value from host-endian to little-endian format. On + * little endian systems, this function does nothing. On big endian systems, + * the bytes are swapped. + * \param x the host-endian value to convert + * \returns the value in little-endian byte order + */ +static inline uint16_t libusb_cpu_to_le16(const uint16_t x) +{ + union { + uint8_t b8[2]; + uint16_t b16; + } _tmp; + _tmp.b8[1] = x >> 8; + _tmp.b8[0] = x & 0xff; + return _tmp.b16; +} + +/** \def libusb_le16_to_cpu + * \ingroup misc + * Convert a 16-bit value from little-endian to host-endian format. On + * little endian systems, this function does nothing. On big endian systems, + * the bytes are swapped. + * \param x the little-endian value to convert + * \returns the value in host-endian byte order + */ +#define libusb_le16_to_cpu libusb_cpu_to_le16 + +/* standard USB stuff */ + +/** \ingroup desc + * Device and/or Interface Class codes */ +enum libusb_class_code { + /** In the context of a \ref libusb_device_descriptor "device descriptor", + * this bDeviceClass value indicates that each interface specifies its + * own class information and all interfaces operate independently. + */ + LIBUSB_CLASS_PER_INTERFACE = 0, + + /** Audio class */ + LIBUSB_CLASS_AUDIO = 1, + + /** Communications class */ + LIBUSB_CLASS_COMM = 2, + + /** Human Interface Device class */ + LIBUSB_CLASS_HID = 3, + + /** Physical */ + LIBUSB_CLASS_PHYSICAL = 5, + + /** Printer class */ + LIBUSB_CLASS_PRINTER = 7, + + /** Image class */ + LIBUSB_CLASS_PTP = 6, /* legacy name from libusb-0.1 usb.h */ + LIBUSB_CLASS_IMAGE = 6, + + /** Mass storage class */ + LIBUSB_CLASS_MASS_STORAGE = 8, + + /** Hub class */ + LIBUSB_CLASS_HUB = 9, + + /** Data class */ + LIBUSB_CLASS_DATA = 10, + + /** Smart Card */ + LIBUSB_CLASS_SMART_CARD = 0x0b, + + /** Content Security */ + LIBUSB_CLASS_CONTENT_SECURITY = 0x0d, + + /** Video */ + LIBUSB_CLASS_VIDEO = 0x0e, + + /** Personal Healthcare */ + LIBUSB_CLASS_PERSONAL_HEALTHCARE = 0x0f, + + /** Diagnostic Device */ + LIBUSB_CLASS_DIAGNOSTIC_DEVICE = 0xdc, + + /** Wireless class */ + LIBUSB_CLASS_WIRELESS = 0xe0, + + /** Application class */ + LIBUSB_CLASS_APPLICATION = 0xfe, + + /** Class is vendor-specific */ + LIBUSB_CLASS_VENDOR_SPEC = 0xff +}; + +/** \ingroup desc + * Descriptor types as defined by the USB specification. */ +enum libusb_descriptor_type { + /** Device descriptor. See libusb_device_descriptor. */ + LIBUSB_DT_DEVICE = 0x01, + + /** Configuration descriptor. See libusb_config_descriptor. */ + LIBUSB_DT_CONFIG = 0x02, + + /** String descriptor */ + LIBUSB_DT_STRING = 0x03, + + /** Interface descriptor. See libusb_interface_descriptor. */ + LIBUSB_DT_INTERFACE = 0x04, + + /** Endpoint descriptor. See libusb_endpoint_descriptor. */ + LIBUSB_DT_ENDPOINT = 0x05, + + /** HID descriptor */ + LIBUSB_DT_HID = 0x21, + + /** HID report descriptor */ + LIBUSB_DT_REPORT = 0x22, + + /** Physical descriptor */ + LIBUSB_DT_PHYSICAL = 0x23, + + /** Hub descriptor */ + LIBUSB_DT_HUB = 0x29, +}; + +/* Descriptor sizes per descriptor type */ +#define LIBUSB_DT_DEVICE_SIZE 18 +#define LIBUSB_DT_CONFIG_SIZE 9 +#define LIBUSB_DT_INTERFACE_SIZE 9 +#define LIBUSB_DT_ENDPOINT_SIZE 7 +#define LIBUSB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ +#define LIBUSB_DT_HUB_NONVAR_SIZE 7 + +#define LIBUSB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ +#define LIBUSB_ENDPOINT_DIR_MASK 0x80 + +/** \ingroup desc + * Endpoint direction. Values for bit 7 of the + * \ref libusb_endpoint_descriptor::bEndpointAddress "endpoint address" scheme. + */ +enum libusb_endpoint_direction { + /** In: device-to-host */ + LIBUSB_ENDPOINT_IN = 0x80, + + /** Out: host-to-device */ + LIBUSB_ENDPOINT_OUT = 0x00 +}; + +#define LIBUSB_TRANSFER_TYPE_MASK 0x03 /* in bmAttributes */ + +/** \ingroup desc + * Endpoint transfer type. Values for bits 0:1 of the + * \ref libusb_endpoint_descriptor::bmAttributes "endpoint attributes" field. + */ +enum libusb_transfer_type { + /** Control endpoint */ + LIBUSB_TRANSFER_TYPE_CONTROL = 0, + + /** Isochronous endpoint */ + LIBUSB_TRANSFER_TYPE_ISOCHRONOUS = 1, + + /** Bulk endpoint */ + LIBUSB_TRANSFER_TYPE_BULK = 2, + + /** Interrupt endpoint */ + LIBUSB_TRANSFER_TYPE_INTERRUPT = 3 +}; + +/** \ingroup misc + * Standard requests, as defined in table 9-3 of the USB2 specifications */ +enum libusb_standard_request { + /** Request status of the specific recipient */ + LIBUSB_REQUEST_GET_STATUS = 0x00, + + /** Clear or disable a specific feature */ + LIBUSB_REQUEST_CLEAR_FEATURE = 0x01, + + /* 0x02 is reserved */ + + /** Set or enable a specific feature */ + LIBUSB_REQUEST_SET_FEATURE = 0x03, + + /* 0x04 is reserved */ + + /** Set device address for all future accesses */ + LIBUSB_REQUEST_SET_ADDRESS = 0x05, + + /** Get the specified descriptor */ + LIBUSB_REQUEST_GET_DESCRIPTOR = 0x06, + + /** Used to update existing descriptors or add new descriptors */ + LIBUSB_REQUEST_SET_DESCRIPTOR = 0x07, + + /** Get the current device configuration value */ + LIBUSB_REQUEST_GET_CONFIGURATION = 0x08, + + /** Set device configuration */ + LIBUSB_REQUEST_SET_CONFIGURATION = 0x09, + + /** Return the selected alternate setting for the specified interface */ + LIBUSB_REQUEST_GET_INTERFACE = 0x0A, + + /** Select an alternate interface for the specified interface */ + LIBUSB_REQUEST_SET_INTERFACE = 0x0B, + + /** Set then report an endpoint's synchronization frame */ + LIBUSB_REQUEST_SYNCH_FRAME = 0x0C, +}; + +/** \ingroup misc + * Request type bits of the + * \ref libusb_control_setup::bmRequestType "bmRequestType" field in control + * transfers. */ +enum libusb_request_type { + /** Standard */ + LIBUSB_REQUEST_TYPE_STANDARD = (0x00 << 5), + + /** Class */ + LIBUSB_REQUEST_TYPE_CLASS = (0x01 << 5), + + /** Vendor */ + LIBUSB_REQUEST_TYPE_VENDOR = (0x02 << 5), + + /** Reserved */ + LIBUSB_REQUEST_TYPE_RESERVED = (0x03 << 5) +}; + +/** \ingroup misc + * Recipient bits of the + * \ref libusb_control_setup::bmRequestType "bmRequestType" field in control + * transfers. Values 4 through 31 are reserved. */ +enum libusb_request_recipient { + /** Device */ + LIBUSB_RECIPIENT_DEVICE = 0x00, + + /** Interface */ + LIBUSB_RECIPIENT_INTERFACE = 0x01, + + /** Endpoint */ + LIBUSB_RECIPIENT_ENDPOINT = 0x02, + + /** Other */ + LIBUSB_RECIPIENT_OTHER = 0x03, +}; + +#define LIBUSB_ISO_SYNC_TYPE_MASK 0x0C + +/** \ingroup desc + * Synchronization type for isochronous endpoints. Values for bits 2:3 of the + * \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in + * libusb_endpoint_descriptor. + */ +enum libusb_iso_sync_type { + /** No synchronization */ + LIBUSB_ISO_SYNC_TYPE_NONE = 0, + + /** Asynchronous */ + LIBUSB_ISO_SYNC_TYPE_ASYNC = 1, + + /** Adaptive */ + LIBUSB_ISO_SYNC_TYPE_ADAPTIVE = 2, + + /** Synchronous */ + LIBUSB_ISO_SYNC_TYPE_SYNC = 3 +}; + +#define LIBUSB_ISO_USAGE_TYPE_MASK 0x30 + +/** \ingroup desc + * Usage type for isochronous endpoints. Values for bits 4:5 of the + * \ref libusb_endpoint_descriptor::bmAttributes "bmAttributes" field in + * libusb_endpoint_descriptor. + */ +enum libusb_iso_usage_type { + /** Data endpoint */ + LIBUSB_ISO_USAGE_TYPE_DATA = 0, + + /** Feedback endpoint */ + LIBUSB_ISO_USAGE_TYPE_FEEDBACK = 1, + + /** Implicit feedback Data endpoint */ + LIBUSB_ISO_USAGE_TYPE_IMPLICIT = 2, +}; + +/** \ingroup desc + * A structure representing the standard USB device descriptor. This + * descriptor is documented in section 9.6.1 of the USB 2.0 specification. + * All multiple-byte fields are represented in host-endian format. + */ +struct libusb_device_descriptor { + /** Size of this descriptor (in bytes) */ + uint8_t bLength; + + /** Descriptor type. Will have value + * \ref libusb_descriptor_type::LIBUSB_DT_DEVICE LIBUSB_DT_DEVICE in this + * context. */ + uint8_t bDescriptorType; + + /** USB specification release number in binary-coded decimal. A value of + * 0x0200 indicates USB 2.0, 0x0110 indicates USB 1.1, etc. */ + uint16_t bcdUSB; + + /** USB-IF class code for the device. See \ref libusb_class_code. */ + uint8_t bDeviceClass; + + /** USB-IF subclass code for the device, qualified by the bDeviceClass + * value */ + uint8_t bDeviceSubClass; + + /** USB-IF protocol code for the device, qualified by the bDeviceClass and + * bDeviceSubClass values */ + uint8_t bDeviceProtocol; + + /** Maximum packet size for endpoint 0 */ + uint8_t bMaxPacketSize0; + + /** USB-IF vendor ID */ + uint16_t idVendor; + + /** USB-IF product ID */ + uint16_t idProduct; + + /** Device release number in binary-coded decimal */ + uint16_t bcdDevice; + + /** Index of string descriptor describing manufacturer */ + uint8_t iManufacturer; + + /** Index of string descriptor describing product */ + uint8_t iProduct; + + /** Index of string descriptor containing device serial number */ + uint8_t iSerialNumber; + + /** Number of possible configurations */ + uint8_t bNumConfigurations; +}; + +/** \ingroup desc + * A structure representing the standard USB endpoint descriptor. This + * descriptor is documented in section 9.6.3 of the USB 2.0 specification. + * All multiple-byte fields are represented in host-endian format. + */ +struct libusb_endpoint_descriptor { + /** Size of this descriptor (in bytes) */ + uint8_t bLength; + + /** Descriptor type. Will have value + * \ref libusb_descriptor_type::LIBUSB_DT_ENDPOINT LIBUSB_DT_ENDPOINT in + * this context. */ + uint8_t bDescriptorType; + + /** The address of the endpoint described by this descriptor. Bits 0:3 are + * the endpoint number. Bits 4:6 are reserved. Bit 7 indicates direction, + * see \ref libusb_endpoint_direction. + */ + uint8_t bEndpointAddress; + + /** Attributes which apply to the endpoint when it is configured using + * the bConfigurationValue. Bits 0:1 determine the transfer type and + * correspond to \ref libusb_transfer_type. Bits 2:3 are only used for + * isochronous endpoints and correspond to \ref libusb_iso_sync_type. + * Bits 4:5 are also only used for isochronous endpoints and correspond to + * \ref libusb_iso_usage_type. Bits 6:7 are reserved. + */ + uint8_t bmAttributes; + + /** Maximum packet size this endpoint is capable of sending/receiving. */ + uint16_t wMaxPacketSize; + + /** Interval for polling endpoint for data transfers. */ + uint8_t bInterval; + + /** For audio devices only: the rate at which synchronization feedback + * is provided. */ + uint8_t bRefresh; + + /** For audio devices only: the address if the synch endpoint */ + uint8_t bSynchAddress; + + /** Extra descriptors. If libusb encounters unknown endpoint descriptors, + * it will store them here, should you wish to parse them. */ + const unsigned char *extra; + + /** Length of the extra descriptors, in bytes. */ + int extra_length; +}; + +/** \ingroup desc + * A structure representing the standard USB interface descriptor. This + * descriptor is documented in section 9.6.5 of the USB 2.0 specification. + * All multiple-byte fields are represented in host-endian format. + */ +struct libusb_interface_descriptor { + /** Size of this descriptor (in bytes) */ + uint8_t bLength; + + /** Descriptor type. Will have value + * \ref libusb_descriptor_type::LIBUSB_DT_INTERFACE LIBUSB_DT_INTERFACE + * in this context. */ + uint8_t bDescriptorType; + + /** Number of this interface */ + uint8_t bInterfaceNumber; + + /** Value used to select this alternate setting for this interface */ + uint8_t bAlternateSetting; + + /** Number of endpoints used by this interface (excluding the control + * endpoint). */ + uint8_t bNumEndpoints; + + /** USB-IF class code for this interface. See \ref libusb_class_code. */ + uint8_t bInterfaceClass; + + /** USB-IF subclass code for this interface, qualified by the + * bInterfaceClass value */ + uint8_t bInterfaceSubClass; + + /** USB-IF protocol code for this interface, qualified by the + * bInterfaceClass and bInterfaceSubClass values */ + uint8_t bInterfaceProtocol; + + /** Index of string descriptor describing this interface */ + uint8_t iInterface; + + /** Array of endpoint descriptors. This length of this array is determined + * by the bNumEndpoints field. */ + const struct libusb_endpoint_descriptor *endpoint; + + /** Extra descriptors. If libusb encounters unknown interface descriptors, + * it will store them here, should you wish to parse them. */ + const unsigned char *extra; + + /** Length of the extra descriptors, in bytes. */ + int extra_length; +}; + +/** \ingroup desc + * A collection of alternate settings for a particular USB interface. + */ +struct libusb_interface { + /** Array of interface descriptors. The length of this array is determined + * by the num_altsetting field. */ + const struct libusb_interface_descriptor *altsetting; + + /** The number of alternate settings that belong to this interface */ + int num_altsetting; +}; + +/** \ingroup desc + * A structure representing the standard USB configuration descriptor. This + * descriptor is documented in section 9.6.3 of the USB 2.0 specification. + * All multiple-byte fields are represented in host-endian format. + */ +struct libusb_config_descriptor { + /** Size of this descriptor (in bytes) */ + uint8_t bLength; + + /** Descriptor type. Will have value + * \ref libusb_descriptor_type::LIBUSB_DT_CONFIG LIBUSB_DT_CONFIG + * in this context. */ + uint8_t bDescriptorType; + + /** Total length of data returned for this configuration */ + uint16_t wTotalLength; + + /** Number of interfaces supported by this configuration */ + uint8_t bNumInterfaces; + + /** Identifier value for this configuration */ + uint8_t bConfigurationValue; + + /** Index of string descriptor describing this configuration */ + uint8_t iConfiguration; + + /** Configuration characteristics */ + uint8_t bmAttributes; + + /** Maximum power consumption of the USB device from this bus in this + * configuration when the device is fully opreation. Expressed in units + * of 2 mA. */ + uint8_t MaxPower; + + /** Array of interfaces supported by this configuration. The length of + * this array is determined by the bNumInterfaces field. */ + const struct libusb_interface *interface; + + /** Extra descriptors. If libusb encounters unknown configuration + * descriptors, it will store them here, should you wish to parse them. */ + const unsigned char *extra; + + /** Length of the extra descriptors, in bytes. */ + int extra_length; +}; + +/** \ingroup asyncio + * Setup packet for control transfers. */ +struct libusb_control_setup { + /** Request type. Bits 0:4 determine recipient, see + * \ref libusb_request_recipient. Bits 5:6 determine type, see + * \ref libusb_request_type. Bit 7 determines data transfer direction, see + * \ref libusb_endpoint_direction. + */ + uint8_t bmRequestType; + + /** Request. If the type bits of bmRequestType are equal to + * \ref libusb_request_type::LIBUSB_REQUEST_TYPE_STANDARD + * "LIBUSB_REQUEST_TYPE_STANDARD" then this field refers to + * \ref libusb_standard_request. For other cases, use of this field is + * application-specific. */ + uint8_t bRequest; + + /** Value. Varies according to request */ + uint16_t wValue; + + /** Index. Varies according to request, typically used to pass an index + * or offset */ + uint16_t wIndex; + + /** Number of bytes to transfer */ + uint16_t wLength; +}; + +#define LIBUSB_CONTROL_SETUP_SIZE (sizeof(struct libusb_control_setup)) + +/* libusb */ + +struct libusb_context; +struct libusb_device; +struct libusb_device_handle; + +/** \ingroup lib + * Structure representing the libusb version. + */ +struct libusb_version { + /** Library major version. */ + const uint16_t major; + + /** Library minor version. */ + const uint16_t minor; + + /** Library micro version. */ + const uint16_t micro; + + /** Library nano version. This field is only nonzero on Windows. */ + const uint16_t nano; + + /** Library release candidate suffix string, e.g. "-rc4". */ + const char *rc; + + /** Output of `git describe --tags` at library build time. */ + const char *describe; +}; + +/** \ingroup lib + * Structure representing a libusb session. The concept of individual libusb + * sessions allows for your program to use two libraries (or dynamically + * load two modules) which both independently use libusb. This will prevent + * interference between the individual libusb users - for example + * libusb_set_debug() will not affect the other user of the library, and + * libusb_exit() will not destroy resources that the other user is still + * using. + * + * Sessions are created by libusb_init() and destroyed through libusb_exit(). + * If your application is guaranteed to only ever include a single libusb + * user (i.e. you), you do not have to worry about contexts: pass NULL in + * every function call where a context is required. The default context + * will be used. + * + * For more information, see \ref contexts. + */ +typedef struct libusb_context libusb_context; + +/** \ingroup dev + * Structure representing a USB device detected on the system. This is an + * opaque type for which you are only ever provided with a pointer, usually + * originating from libusb_get_device_list(). + * + * Certain operations can be performed on a device, but in order to do any + * I/O you will have to first obtain a device handle using libusb_open(). + * + * Devices are reference counted with libusb_ref_device() and + * libusb_unref_device(), and are freed when the reference count reaches 0. + * New devices presented by libusb_get_device_list() have a reference count of + * 1, and libusb_free_device_list() can optionally decrease the reference count + * on all devices in the list. libusb_open() adds another reference which is + * later destroyed by libusb_close(). + */ +typedef struct libusb_device libusb_device; + + +/** \ingroup dev + * Structure representing a handle on a USB device. This is an opaque type for + * which you are only ever provided with a pointer, usually originating from + * libusb_open(). + * + * A device handle is used to perform I/O and other operations. When finished + * with a device handle, you should call libusb_close(). + */ +typedef struct libusb_device_handle libusb_device_handle; + +/** \ingroup dev + * Speed codes. Indicates the speed at which the device is operating. + */ +enum libusb_speed { + /** The OS doesn't report or know the device speed. */ + LIBUSB_SPEED_UNKNOWN = 0, + + /** The device is operating at low speed (1.5MBit/s). */ + LIBUSB_SPEED_LOW = 1, + + /** The device is operating at full speed (12MBit/s). */ + LIBUSB_SPEED_FULL = 2, + + /** The device is operating at high speed (480MBit/s). */ + LIBUSB_SPEED_HIGH = 3, + + /** The device is operating at super speed (5000MBit/s). */ + LIBUSB_SPEED_SUPER = 4, +}; + +/** \ingroup misc + * Error codes. Most libusb functions return 0 on success or one of these + * codes on failure. + * You can call \ref libusb_error_name() to retrieve a string representation + * of an error code. + */ +enum libusb_error { + /** Success (no error) */ + LIBUSB_SUCCESS = 0, + + /** Input/output error */ + LIBUSB_ERROR_IO = -1, + + /** Invalid parameter */ + LIBUSB_ERROR_INVALID_PARAM = -2, + + /** Access denied (insufficient permissions) */ + LIBUSB_ERROR_ACCESS = -3, + + /** No such device (it may have been disconnected) */ + LIBUSB_ERROR_NO_DEVICE = -4, + + /** Entity not found */ + LIBUSB_ERROR_NOT_FOUND = -5, + + /** Resource busy */ + LIBUSB_ERROR_BUSY = -6, + + /** Operation timed out */ + LIBUSB_ERROR_TIMEOUT = -7, + + /** Overflow */ + LIBUSB_ERROR_OVERFLOW = -8, + + /** Pipe error */ + LIBUSB_ERROR_PIPE = -9, + + /** System call interrupted (perhaps due to signal) */ + LIBUSB_ERROR_INTERRUPTED = -10, + + /** Insufficient memory */ + LIBUSB_ERROR_NO_MEM = -11, + + /** Operation not supported or unimplemented on this platform */ + LIBUSB_ERROR_NOT_SUPPORTED = -12, + + /* NB! Remember to update libusb_error_name() + when adding new error codes here. */ + + /** Other error */ + LIBUSB_ERROR_OTHER = -99, +}; + +/** \ingroup asyncio + * Transfer status codes */ +enum libusb_transfer_status { + /** Transfer completed without error. Note that this does not indicate + * that the entire amount of requested data was transferred. */ + LIBUSB_TRANSFER_COMPLETED, + + /** Transfer failed */ + LIBUSB_TRANSFER_ERROR, + + /** Transfer timed out */ + LIBUSB_TRANSFER_TIMED_OUT, + + /** Transfer was cancelled */ + LIBUSB_TRANSFER_CANCELLED, + + /** For bulk/interrupt endpoints: halt condition detected (endpoint + * stalled). For control endpoints: control request not supported. */ + LIBUSB_TRANSFER_STALL, + + /** Device was disconnected */ + LIBUSB_TRANSFER_NO_DEVICE, + + /** Device sent more data than requested */ + LIBUSB_TRANSFER_OVERFLOW, +}; + +/** \ingroup asyncio + * libusb_transfer.flags values */ +enum libusb_transfer_flags { + /** Report short frames as errors */ + LIBUSB_TRANSFER_SHORT_NOT_OK = 1<<0, + + /** Automatically free() transfer buffer during libusb_free_transfer() */ + LIBUSB_TRANSFER_FREE_BUFFER = 1<<1, + + /** Automatically call libusb_free_transfer() after callback returns. + * If this flag is set, it is illegal to call libusb_free_transfer() + * from your transfer callback, as this will result in a double-free + * when this flag is acted upon. */ + LIBUSB_TRANSFER_FREE_TRANSFER = 1<<2, + + /** Terminate transfers that are a multiple of the endpoint's + * wMaxPacketSize with an extra zero length packet. This is useful + * when a device protocol mandates that each logical request is + * terminated by an incomplete packet (i.e. the logical requests are + * not separated by other means). + * + * This flag only affects host-to-device transfers to bulk and interrupt + * endpoints. In other situations, it is ignored. + * + * This flag only affects transfers with a length that is a multiple of + * the endpoint's wMaxPacketSize. On transfers of other lengths, this + * flag has no effect. Therefore, if you are working with a device that + * needs a ZLP whenever the end of the logical request falls on a packet + * boundary, then it is sensible to set this flag on every + * transfer (you do not have to worry about only setting it on transfers + * that end on the boundary). + * + * This flag is currently only supported on Linux. + * On other systems, libusb_submit_transfer() will return + * LIBUSB_ERROR_NOT_SUPPORTED for every transfer where this flag is set. + * + * Available since libusb-1.0.9. + */ + LIBUSB_TRANSFER_ADD_ZERO_PACKET = 1 << 3, +}; + +/** \ingroup asyncio + * Isochronous packet descriptor. */ +struct libusb_iso_packet_descriptor { + /** Length of data to request in this packet */ + unsigned int length; + + /** Amount of data that was actually transferred */ + unsigned int actual_length; + + /** Status code for this packet */ + enum libusb_transfer_status status; +}; + +struct libusb_transfer; + +/** \ingroup asyncio + * Asynchronous transfer callback function type. When submitting asynchronous + * transfers, you pass a pointer to a callback function of this type via the + * \ref libusb_transfer::callback "callback" member of the libusb_transfer + * structure. libusb will call this function later, when the transfer has + * completed or failed. See \ref asyncio for more information. + * \param transfer The libusb_transfer struct the callback function is being + * notified about. + */ +typedef void (LIBUSB_CALL *libusb_transfer_cb_fn)(struct libusb_transfer *transfer); + +/** \ingroup asyncio + * The generic USB transfer structure. The user populates this structure and + * then submits it in order to request a transfer. After the transfer has + * completed, the library populates the transfer with the results and passes + * it back to the user. + */ +struct libusb_transfer { + /** Handle of the device that this transfer will be submitted to */ + libusb_device_handle *dev_handle; + + /** A bitwise OR combination of \ref libusb_transfer_flags. */ + uint8_t flags; + + /** Address of the endpoint where this transfer will be sent. */ + unsigned char endpoint; + + /** Type of the endpoint from \ref libusb_transfer_type */ + unsigned char type; + + /** Timeout for this transfer in millseconds. A value of 0 indicates no + * timeout. */ + unsigned int timeout; + + /** The status of the transfer. Read-only, and only for use within + * transfer callback function. + * + * If this is an isochronous transfer, this field may read COMPLETED even + * if there were errors in the frames. Use the + * \ref libusb_iso_packet_descriptor::status "status" field in each packet + * to determine if errors occurred. */ + enum libusb_transfer_status status; + + /** Length of the data buffer */ + int length; + + /** Actual length of data that was transferred. Read-only, and only for + * use within transfer callback function. Not valid for isochronous + * endpoint transfers. */ + int actual_length; + + /** Callback function. This will be invoked when the transfer completes, + * fails, or is cancelled. */ + libusb_transfer_cb_fn callback; + + /** User context data to pass to the callback function. */ + void *user_data; + + /** Data buffer */ + unsigned char *buffer; + + /** Number of isochronous packets. Only used for I/O with isochronous + * endpoints. */ + int num_iso_packets; + + /** Isochronous packet descriptors, for isochronous transfers only. */ + struct libusb_iso_packet_descriptor iso_packet_desc +#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) + [] /* valid C99 code */ +#else + [0] /* non-standard, but usually working code */ +#endif + ; +}; + +/** \ingroup misc + * Capabilities supported by this instance of libusb. Test if the loaded + * library supports a given capability by calling + * \ref libusb_has_capability(). + */ +enum libusb_capability { + /** The libusb_has_capability() API is available. */ + LIBUSB_CAP_HAS_CAPABILITY = 0, +}; + +int LIBUSB_CALL libusb_init(libusb_context **ctx); +void LIBUSB_CALL libusb_exit(libusb_context *ctx); +void LIBUSB_CALL libusb_set_debug(libusb_context *ctx, int level); +const struct libusb_version * LIBUSB_CALL libusb_get_version(void); +int LIBUSB_CALL libusb_has_capability(uint32_t capability); +const char * LIBUSB_CALL libusb_error_name(int errcode); + +ssize_t LIBUSB_CALL libusb_get_device_list(libusb_context *ctx, + libusb_device ***list); +void LIBUSB_CALL libusb_free_device_list(libusb_device **list, + int unref_devices); +libusb_device * LIBUSB_CALL libusb_ref_device(libusb_device *dev); +void LIBUSB_CALL libusb_unref_device(libusb_device *dev); + +int LIBUSB_CALL libusb_get_configuration(libusb_device_handle *dev, + int *config); +int LIBUSB_CALL libusb_get_device_descriptor(libusb_device *dev, + struct libusb_device_descriptor *desc); +int LIBUSB_CALL libusb_get_active_config_descriptor(libusb_device *dev, + struct libusb_config_descriptor **config); +int LIBUSB_CALL libusb_get_config_descriptor(libusb_device *dev, + uint8_t config_index, struct libusb_config_descriptor **config); +int LIBUSB_CALL libusb_get_config_descriptor_by_value(libusb_device *dev, + uint8_t bConfigurationValue, struct libusb_config_descriptor **config); +void LIBUSB_CALL libusb_free_config_descriptor( + struct libusb_config_descriptor *config); +uint8_t LIBUSB_CALL libusb_get_bus_number(libusb_device *dev); +uint8_t LIBUSB_CALL libusb_get_device_address(libusb_device *dev); +int LIBUSB_CALL libusb_get_device_speed(libusb_device *dev); +int LIBUSB_CALL libusb_get_max_packet_size(libusb_device *dev, + unsigned char endpoint); +int LIBUSB_CALL libusb_get_max_iso_packet_size(libusb_device *dev, + unsigned char endpoint); + +int LIBUSB_CALL libusb_open(libusb_device *dev, libusb_device_handle **handle); +void LIBUSB_CALL libusb_close(libusb_device_handle *dev_handle); +libusb_device * LIBUSB_CALL libusb_get_device(libusb_device_handle *dev_handle); + +int LIBUSB_CALL libusb_set_configuration(libusb_device_handle *dev, + int configuration); +int LIBUSB_CALL libusb_claim_interface(libusb_device_handle *dev, + int interface_number); +int LIBUSB_CALL libusb_release_interface(libusb_device_handle *dev, + int interface_number); + +libusb_device_handle * LIBUSB_CALL libusb_open_device_with_vid_pid( + libusb_context *ctx, uint16_t vendor_id, uint16_t product_id); + +int LIBUSB_CALL libusb_set_interface_alt_setting(libusb_device_handle *dev, + int interface_number, int alternate_setting); +int LIBUSB_CALL libusb_clear_halt(libusb_device_handle *dev, + unsigned char endpoint); +int LIBUSB_CALL libusb_reset_device(libusb_device_handle *dev); + +int LIBUSB_CALL libusb_kernel_driver_active(libusb_device_handle *dev, + int interface_number); +int LIBUSB_CALL libusb_detach_kernel_driver(libusb_device_handle *dev, + int interface_number); +int LIBUSB_CALL libusb_attach_kernel_driver(libusb_device_handle *dev, + int interface_number); + +/* async I/O */ + +/** \ingroup asyncio + * Get the data section of a control transfer. This convenience function is here + * to remind you that the data does not start until 8 bytes into the actual + * buffer, as the setup packet comes first. + * + * Calling this function only makes sense from a transfer callback function, + * or situations where you have already allocated a suitably sized buffer at + * transfer->buffer. + * + * \param transfer a transfer + * \returns pointer to the first byte of the data section + */ +static inline unsigned char *libusb_control_transfer_get_data( + struct libusb_transfer *transfer) +{ + return transfer->buffer + LIBUSB_CONTROL_SETUP_SIZE; +} + +/** \ingroup asyncio + * Get the control setup packet of a control transfer. This convenience + * function is here to remind you that the control setup occupies the first + * 8 bytes of the transfer data buffer. + * + * Calling this function only makes sense from a transfer callback function, + * or situations where you have already allocated a suitably sized buffer at + * transfer->buffer. + * + * \param transfer a transfer + * \returns a casted pointer to the start of the transfer data buffer + */ +static inline struct libusb_control_setup *libusb_control_transfer_get_setup( + struct libusb_transfer *transfer) +{ + return (struct libusb_control_setup *) transfer->buffer; +} + +/** \ingroup asyncio + * Helper function to populate the setup packet (first 8 bytes of the data + * buffer) for a control transfer. The wIndex, wValue and wLength values should + * be given in host-endian byte order. + * + * \param buffer buffer to output the setup packet into + * \param bmRequestType see the + * \ref libusb_control_setup::bmRequestType "bmRequestType" field of + * \ref libusb_control_setup + * \param bRequest see the + * \ref libusb_control_setup::bRequest "bRequest" field of + * \ref libusb_control_setup + * \param wValue see the + * \ref libusb_control_setup::wValue "wValue" field of + * \ref libusb_control_setup + * \param wIndex see the + * \ref libusb_control_setup::wIndex "wIndex" field of + * \ref libusb_control_setup + * \param wLength see the + * \ref libusb_control_setup::wLength "wLength" field of + * \ref libusb_control_setup + */ +static inline void libusb_fill_control_setup(unsigned char *buffer, + uint8_t bmRequestType, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, + uint16_t wLength) +{ + struct libusb_control_setup *setup = (struct libusb_control_setup *) buffer; + setup->bmRequestType = bmRequestType; + setup->bRequest = bRequest; + setup->wValue = libusb_cpu_to_le16(wValue); + setup->wIndex = libusb_cpu_to_le16(wIndex); + setup->wLength = libusb_cpu_to_le16(wLength); +} + +struct libusb_transfer * LIBUSB_CALL libusb_alloc_transfer(int iso_packets); +int LIBUSB_CALL libusb_submit_transfer(struct libusb_transfer *transfer); +int LIBUSB_CALL libusb_cancel_transfer(struct libusb_transfer *transfer); +void LIBUSB_CALL libusb_free_transfer(struct libusb_transfer *transfer); + +/** \ingroup asyncio + * Helper function to populate the required \ref libusb_transfer fields + * for a control transfer. + * + * If you pass a transfer buffer to this function, the first 8 bytes will + * be interpreted as a control setup packet, and the wLength field will be + * used to automatically populate the \ref libusb_transfer::length "length" + * field of the transfer. Therefore the recommended approach is: + * -# Allocate a suitably sized data buffer (including space for control setup) + * -# Call libusb_fill_control_setup() + * -# If this is a host-to-device transfer with a data stage, put the data + * in place after the setup packet + * -# Call this function + * -# Call libusb_submit_transfer() + * + * It is also legal to pass a NULL buffer to this function, in which case this + * function will not attempt to populate the length field. Remember that you + * must then populate the buffer and length fields later. + * + * \param transfer the transfer to populate + * \param dev_handle handle of the device that will handle the transfer + * \param buffer data buffer. If provided, this function will interpret the + * first 8 bytes as a setup packet and infer the transfer length from that. + * \param callback callback function to be invoked on transfer completion + * \param user_data user data to pass to callback function + * \param timeout timeout for the transfer in milliseconds + */ +static inline void libusb_fill_control_transfer( + struct libusb_transfer *transfer, libusb_device_handle *dev_handle, + unsigned char *buffer, libusb_transfer_cb_fn callback, void *user_data, + unsigned int timeout) +{ + struct libusb_control_setup *setup = (struct libusb_control_setup *) buffer; + transfer->dev_handle = dev_handle; + transfer->endpoint = 0; + transfer->type = LIBUSB_TRANSFER_TYPE_CONTROL; + transfer->timeout = timeout; + transfer->buffer = buffer; + if (setup) + transfer->length = LIBUSB_CONTROL_SETUP_SIZE + + libusb_le16_to_cpu(setup->wLength); + transfer->user_data = user_data; + transfer->callback = callback; +} + +/** \ingroup asyncio + * Helper function to populate the required \ref libusb_transfer fields + * for a bulk transfer. + * + * \param transfer the transfer to populate + * \param dev_handle handle of the device that will handle the transfer + * \param endpoint address of the endpoint where this transfer will be sent + * \param buffer data buffer + * \param length length of data buffer + * \param callback callback function to be invoked on transfer completion + * \param user_data user data to pass to callback function + * \param timeout timeout for the transfer in milliseconds + */ +static inline void libusb_fill_bulk_transfer(struct libusb_transfer *transfer, + libusb_device_handle *dev_handle, unsigned char endpoint, + unsigned char *buffer, int length, libusb_transfer_cb_fn callback, + void *user_data, unsigned int timeout) +{ + transfer->dev_handle = dev_handle; + transfer->endpoint = endpoint; + transfer->type = LIBUSB_TRANSFER_TYPE_BULK; + transfer->timeout = timeout; + transfer->buffer = buffer; + transfer->length = length; + transfer->user_data = user_data; + transfer->callback = callback; +} + +/** \ingroup asyncio + * Helper function to populate the required \ref libusb_transfer fields + * for an interrupt transfer. + * + * \param transfer the transfer to populate + * \param dev_handle handle of the device that will handle the transfer + * \param endpoint address of the endpoint where this transfer will be sent + * \param buffer data buffer + * \param length length of data buffer + * \param callback callback function to be invoked on transfer completion + * \param user_data user data to pass to callback function + * \param timeout timeout for the transfer in milliseconds + */ +static inline void libusb_fill_interrupt_transfer( + struct libusb_transfer *transfer, libusb_device_handle *dev_handle, + unsigned char endpoint, unsigned char *buffer, int length, + libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) +{ + transfer->dev_handle = dev_handle; + transfer->endpoint = endpoint; + transfer->type = LIBUSB_TRANSFER_TYPE_INTERRUPT; + transfer->timeout = timeout; + transfer->buffer = buffer; + transfer->length = length; + transfer->user_data = user_data; + transfer->callback = callback; +} + +/** \ingroup asyncio + * Helper function to populate the required \ref libusb_transfer fields + * for an isochronous transfer. + * + * \param transfer the transfer to populate + * \param dev_handle handle of the device that will handle the transfer + * \param endpoint address of the endpoint where this transfer will be sent + * \param buffer data buffer + * \param length length of data buffer + * \param num_iso_packets the number of isochronous packets + * \param callback callback function to be invoked on transfer completion + * \param user_data user data to pass to callback function + * \param timeout timeout for the transfer in milliseconds + */ +static inline void libusb_fill_iso_transfer(struct libusb_transfer *transfer, + libusb_device_handle *dev_handle, unsigned char endpoint, + unsigned char *buffer, int length, int num_iso_packets, + libusb_transfer_cb_fn callback, void *user_data, unsigned int timeout) +{ + transfer->dev_handle = dev_handle; + transfer->endpoint = endpoint; + transfer->type = LIBUSB_TRANSFER_TYPE_ISOCHRONOUS; + transfer->timeout = timeout; + transfer->buffer = buffer; + transfer->length = length; + transfer->num_iso_packets = num_iso_packets; + transfer->user_data = user_data; + transfer->callback = callback; +} + +/** \ingroup asyncio + * Convenience function to set the length of all packets in an isochronous + * transfer, based on the num_iso_packets field in the transfer structure. + * + * \param transfer a transfer + * \param length the length to set in each isochronous packet descriptor + * \see libusb_get_max_packet_size() + */ +static inline void libusb_set_iso_packet_lengths( + struct libusb_transfer *transfer, unsigned int length) +{ + int i; + for (i = 0; i < transfer->num_iso_packets; i++) + transfer->iso_packet_desc[i].length = length; +} + +/** \ingroup asyncio + * Convenience function to locate the position of an isochronous packet + * within the buffer of an isochronous transfer. + * + * This is a thorough function which loops through all preceding packets, + * accumulating their lengths to find the position of the specified packet. + * Typically you will assign equal lengths to each packet in the transfer, + * and hence the above method is sub-optimal. You may wish to use + * libusb_get_iso_packet_buffer_simple() instead. + * + * \param transfer a transfer + * \param packet the packet to return the address of + * \returns the base address of the packet buffer inside the transfer buffer, + * or NULL if the packet does not exist. + * \see libusb_get_iso_packet_buffer_simple() + */ +static inline unsigned char *libusb_get_iso_packet_buffer( + struct libusb_transfer *transfer, unsigned int packet) +{ + int i; + size_t offset = 0; + int _packet; + + /* oops..slight bug in the API. packet is an unsigned int, but we use + * signed integers almost everywhere else. range-check and convert to + * signed to avoid compiler warnings. FIXME for libusb-2. */ + if (packet > INT_MAX) + return NULL; + _packet = packet; + + if (_packet >= transfer->num_iso_packets) + return NULL; + + for (i = 0; i < _packet; i++) + offset += transfer->iso_packet_desc[i].length; + + return transfer->buffer + offset; +} + +/** \ingroup asyncio + * Convenience function to locate the position of an isochronous packet + * within the buffer of an isochronous transfer, for transfers where each + * packet is of identical size. + * + * This function relies on the assumption that every packet within the transfer + * is of identical size to the first packet. Calculating the location of + * the packet buffer is then just a simple calculation: + * buffer + (packet_size * packet) + * + * Do not use this function on transfers other than those that have identical + * packet lengths for each packet. + * + * \param transfer a transfer + * \param packet the packet to return the address of + * \returns the base address of the packet buffer inside the transfer buffer, + * or NULL if the packet does not exist. + * \see libusb_get_iso_packet_buffer() + */ +static inline unsigned char *libusb_get_iso_packet_buffer_simple( + struct libusb_transfer *transfer, unsigned int packet) +{ + int _packet; + + /* oops..slight bug in the API. packet is an unsigned int, but we use + * signed integers almost everywhere else. range-check and convert to + * signed to avoid compiler warnings. FIXME for libusb-2. */ + if (packet > INT_MAX) + return NULL; + _packet = packet; + + if (_packet >= transfer->num_iso_packets) + return NULL; + + return transfer->buffer + (transfer->iso_packet_desc[0].length * _packet); +} + +/* sync I/O */ + +int LIBUSB_CALL libusb_control_transfer(libusb_device_handle *dev_handle, + uint8_t request_type, uint8_t bRequest, uint16_t wValue, uint16_t wIndex, + unsigned char *data, uint16_t wLength, unsigned int timeout); + +int LIBUSB_CALL libusb_bulk_transfer(libusb_device_handle *dev_handle, + unsigned char endpoint, unsigned char *data, int length, + int *actual_length, unsigned int timeout); + +int LIBUSB_CALL libusb_interrupt_transfer(libusb_device_handle *dev_handle, + unsigned char endpoint, unsigned char *data, int length, + int *actual_length, unsigned int timeout); + +/** \ingroup desc + * Retrieve a descriptor from the default control pipe. + * This is a convenience function which formulates the appropriate control + * message to retrieve the descriptor. + * + * \param dev a device handle + * \param desc_type the descriptor type, see \ref libusb_descriptor_type + * \param desc_index the index of the descriptor to retrieve + * \param data output buffer for descriptor + * \param length size of data buffer + * \returns number of bytes returned in data, or LIBUSB_ERROR code on failure + */ +static inline int libusb_get_descriptor(libusb_device_handle *dev, + uint8_t desc_type, uint8_t desc_index, unsigned char *data, int length) +{ + return libusb_control_transfer(dev, LIBUSB_ENDPOINT_IN, + LIBUSB_REQUEST_GET_DESCRIPTOR, (desc_type << 8) | desc_index, 0, data, + (uint16_t) length, 1000); +} + +/** \ingroup desc + * Retrieve a descriptor from a device. + * This is a convenience function which formulates the appropriate control + * message to retrieve the descriptor. The string returned is Unicode, as + * detailed in the USB specifications. + * + * \param dev a device handle + * \param desc_index the index of the descriptor to retrieve + * \param langid the language ID for the string descriptor + * \param data output buffer for descriptor + * \param length size of data buffer + * \returns number of bytes returned in data, or LIBUSB_ERROR code on failure + * \see libusb_get_string_descriptor_ascii() + */ +static inline int libusb_get_string_descriptor(libusb_device_handle *dev, + uint8_t desc_index, uint16_t langid, unsigned char *data, int length) +{ + return libusb_control_transfer(dev, LIBUSB_ENDPOINT_IN, + LIBUSB_REQUEST_GET_DESCRIPTOR, (uint16_t)((LIBUSB_DT_STRING << 8) | desc_index), + langid, data, (uint16_t) length, 1000); +} + +int LIBUSB_CALL libusb_get_string_descriptor_ascii(libusb_device_handle *dev, + uint8_t desc_index, unsigned char *data, int length); + +/* polling and timeouts */ + +int LIBUSB_CALL libusb_try_lock_events(libusb_context *ctx); +void LIBUSB_CALL libusb_lock_events(libusb_context *ctx); +void LIBUSB_CALL libusb_unlock_events(libusb_context *ctx); +int LIBUSB_CALL libusb_event_handling_ok(libusb_context *ctx); +int LIBUSB_CALL libusb_event_handler_active(libusb_context *ctx); +void LIBUSB_CALL libusb_lock_event_waiters(libusb_context *ctx); +void LIBUSB_CALL libusb_unlock_event_waiters(libusb_context *ctx); +int LIBUSB_CALL libusb_wait_for_event(libusb_context *ctx, struct timeval *tv); + +int LIBUSB_CALL libusb_handle_events_timeout(libusb_context *ctx, + struct timeval *tv); +int LIBUSB_CALL libusb_handle_events_timeout_completed(libusb_context *ctx, + struct timeval *tv, int *completed); +int LIBUSB_CALL libusb_handle_events(libusb_context *ctx); +int LIBUSB_CALL libusb_handle_events_completed(libusb_context *ctx, int *completed); +int LIBUSB_CALL libusb_handle_events_locked(libusb_context *ctx, + struct timeval *tv); +int LIBUSB_CALL libusb_pollfds_handle_timeouts(libusb_context *ctx); +int LIBUSB_CALL libusb_get_next_timeout(libusb_context *ctx, + struct timeval *tv); + +/** \ingroup poll + * File descriptor for polling + */ +struct libusb_pollfd { + /** Numeric file descriptor */ + int fd; + + /** Event flags to poll for from . POLLIN indicates that you + * should monitor this file descriptor for becoming ready to read from, + * and POLLOUT indicates that you should monitor this file descriptor for + * nonblocking write readiness. */ + short events; +}; + +/** \ingroup poll + * Callback function, invoked when a new file descriptor should be added + * to the set of file descriptors monitored for events. + * \param fd the new file descriptor + * \param events events to monitor for, see \ref libusb_pollfd for a + * description + * \param user_data User data pointer specified in + * libusb_set_pollfd_notifiers() call + * \see libusb_set_pollfd_notifiers() + */ +typedef void (LIBUSB_CALL *libusb_pollfd_added_cb)(int fd, short events, + void *user_data); + +/** \ingroup poll + * Callback function, invoked when a file descriptor should be removed from + * the set of file descriptors being monitored for events. After returning + * from this callback, do not use that file descriptor again. + * \param fd the file descriptor to stop monitoring + * \param user_data User data pointer specified in + * libusb_set_pollfd_notifiers() call + * \see libusb_set_pollfd_notifiers() + */ +typedef void (LIBUSB_CALL *libusb_pollfd_removed_cb)(int fd, void *user_data); + +const struct libusb_pollfd ** LIBUSB_CALL libusb_get_pollfds( + libusb_context *ctx); +void LIBUSB_CALL libusb_set_pollfd_notifiers(libusb_context *ctx, + libusb_pollfd_added_cb added_cb, libusb_pollfd_removed_cb removed_cb, + void *user_data); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Externals/libusb/win32/libusb-1.0.lib b/Externals/libusb/win32/libusb-1.0.lib new file mode 100644 index 0000000000000000000000000000000000000000..007a1e830b07b8321c4534f3fc3bcb19c2b15829 GIT binary patch literal 704170 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%0AQgYxa8dL#;S~`pq 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

>}ub}b^WSBo=gE7=qzrp7bKwV`D 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

M*oKg*P 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�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 L0`p-6$PHWo#x37b literal 0 HcmV?d00001 From c626d5aae3f34ee93626c4d26c76bf5fbd7ef76a Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 24 Dec 2012 08:31:50 +1300 Subject: [PATCH 09/27] Move to 1.0 libusb. --- Externals/libusb/win32/libusb-1.0.lib | Bin 704170 -> 704170 bytes Externals/libusb/x64/libusb-1.0.lib | Bin 734478 -> 734400 bytes .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 223 ++++++++++-------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 13 +- Source/VSProps/Dolphin.Win32.props | 2 +- Source/VSProps/Dolphin.x64.props | 2 +- 6 files changed, 139 insertions(+), 101 deletions(-) diff --git a/Externals/libusb/win32/libusb-1.0.lib b/Externals/libusb/win32/libusb-1.0.lib index 007a1e830b07b8321c4534f3fc3bcb19c2b15829..c9018f05dd9d557220d2f3383f5e090e89d69ba6 100644 GIT binary patch delta 658 zcmZ4WS8LT@tqC%0CWc04My8V!f+RLtDFi{en-hYT`9ax}6N1DxD=lncg78hI8@O|b zO+K_(L|LFG{m8j+?EPsA~%Z zyXA@n_TIW3^>C3LkJ>7p=EC#a3(qtDF=JdmJ&%n^oN>eSHZ~?r#*NcAurawwZf0O$ z2o6>&yT`=frdx84iNVKTFxa25Vas%Wb|wRktqcqd{)`RVrn|EdX+ zFc`Hte^&7JXKdIvy@`X#g>nD%;~Y%xj0dI%a58C6cUZ>6Hr;`fiJ$QxNWh)(5Qx&A zp814HnDH=#eW8+>ZTba%CLVEr#)cyd3=AR6R`vIo7&II1F@fB9bhI4G=gIfE&=^v|^gr_g&ViFfT3Gv@41_lPr&U;J@!PEb9F-c4>IK;#@{UsMu z75izBFPiU7pIFNzIlZBViFJAhH=J**hV#>9c$qda zUYLHKm&u*&BFNNb)A{+CbRfR-w_)a;9?i$Jj`7lTE`Fv@BA3A$t(JhiuoU8jE7Ju8 znA{{EL%gsT?1kM3FFcu^FTkY9__Ted08{%+0p{&91z03`n3)(DCM%v-n|}T(t7bck gEK56!ENeT9EL%H^EPFePEJr(wEa!F>S*~RZ0ZvZFng9R* delta 626 zcmZ4WS8LT@tqC%0#)bxlMwXKkf+RLtDFi{en-hYT`9ax}6N1DxD=lncnl8i4Dl_@e zVv*@S%&a2(E%nR{!aVE@8}6?RNT_3;p3ltcxY=rny0*ZQE5VNQ&IpN^Z7cgz=vMr( zx$yk6YAMV({@7 z4EASi*fgD=oymY>GXn#IKV!p|>F(@I%8Xm5XM?D1)BD+(R2jEV-wL93Oux;}q%(aB zJCopa2@WQ4#$D45IGEJgb~7+A?5vo+k%viCz_`u1nS;To&H1x}w?AXUp6N{-OfHOj zryu8Fa%bE(J%E!*d%D9iCbsDgoJ{x}jpw@nG`p0S} z;pvOHn8XE-Lwt9Ffq_A@^BxmJ@bv#&OcK)z4l%J!f62vE#eNdxhvs|JC)P4aPH(7T zVx8W>&1A%QYWi+&rdY<)(EPxbbfv& z9f;rjZJ2qdNAoeQW4th(i=XL}$VIS5t0f>WEQNUC(sTg8Jj&1+}xtvb3|vvbM9xvbD3wvbVFya~(hO8JDke@;+}J!ha52+ni;%naldLT_M@;GELNZBgGt>N1Cb&S|LMcN-Q;^A^O8@_VMuwC& zt-{p-7XLQ$EWNqfcg^f;+mzIT4~0)*W)S9KX8_5$PCmIXn^p561H+E#ismfJtlXLm z3=bzKE>dTD!!x;Sks4#-Quc1_p-UU^R`0Obl+iY7dzheEbE2 z{TUlpPuCS-(&Svjz`zi~q^bFEdgEJ0^XU#!Oze#7rq2^#5@%n}z`&rU|8RQZBPQYL z=LML=IW{mbF!(bzY@Gg1fJvEg({v$0CS}IW)6E2#R2jESj}c^2W#7ucz_3&Q;q(n> znIt(GG#D6+I+|apO*a%|5}m$ZkV%|z`}FIAOzMm~rvDdY(q!7nFx{byNo2a65R(Pt zuIc4MOzw=kr|%bHa%J2Dq70@hOk`%8ZY|6t#<&+E@Gg*YD?~6Hp6(~YWWaF* z;cMH!+`?>f-9oYHHD)X#@|y}U6XKC~4B&*gsbKZ? z^=2$nUJIaGG(FLoJ!tzq%a&TMz&X4~$_%`RYpVea-sXZCH(FpqfatHD!vWDheGbR=>2o;GE8)<8Vn3%lTt7JAbq;f4 b52dYz2p`2C=G-2Cn2R$Phq0#&xLsHP`sJV5 delta 3376 zcmX@`Qm5~g&IIXtBMVCtGgDIq6kq`585x)x8G+deTnr41HyIcfrcf8xQ`ZaK1p@JX#5Xs0;FR6vzYlXkcwIBRdX0vv0yf?dkplz_2gQ@ z?#{wM1zb-JL-3lxF~@`fH?GGgNuC_%p+5{n<9bpQ(?D%K(JrNd<(!B9C=d#&$&I0^ zo6oX8(BX6s^>m5%3-$4tUJ%77HaU2T+U6G~!7^TWYj8tL3j+&i4bINMz>u<#fx*X& zg&{|kmEj&28v~0wJA=s_4u(I6I2mqkZVg<_G&vxIZL?0uO?!lelRsKnZMK`z%f$}0 zYxAXf-Aqu9$@B|u>|&-y#wKQF<{+CuO@;se85vUA_H`@{u=ux`XX(w=zH4S*+oq%z ze5iX0GlMV>I|E3ra`O6x*^F9~r5CBQ*=aH`JbFA?VUhUc_(l9o3cQmG7O62$WoDkN zxJYdB`bGSV8#nJ?w3U%b=;8Ezylfhq=Pjw!5Lj|0*m2$&ArZ4}Wq%6Yia%~vKRc_5 zn^B-)AwvU0Lzgha_S621d1i*29xyU6Ffy?)FfuVgF(U&b6K=fSyp6HHQ*tc>14D4I zn#MyW1~*-`hfEAU{(`~&j1B9i-{)u2WL!U;Q-H~hapUv=0VZ+AP17?3m<%{JGcYjt zGd66QzCeIUdAhM6li>6#0!+e;+orz|U{Yn=KAlgHNtJQObQ3`)9mbv069t*n*>^E8 zFznQSIQ_yiCXwk6nweOpTQ6YZWZXS{qac$e^Bx9<>58+Mgr|QHWU^q~J6%(V$(?cE z^gAJLWF4{kk#V)-f}d{ON0vL!KE&MRUV7cF=r^N^8&Vfw;27PaYmO01gOC+o8uVP(>K zI92{$j3ohF3i?Z(bKeZDD65lWJtu4l#~A`eQZ=xO-KI|f)9-kxa2GUYW+ ztGDYZu`)BG8tbRZirrYTrwC&kRas>o;WQTFqyOw|OHgv5`1FHZY{JUeoP5ff5$5E8 z9afB!H!gH+x8P>mZo$od+MIwrsm|;vD1Ojl-q*2s`d>G8Np_H3hk_yI#ksR@k8|fZ z6+pnet{EKpaPy|k;eZ&YJBI^eT%;<*xV||Y+xzBlb}11su4+H0JKQ*MVKn{TAx`W; bytNP>4DEu4IkyWQ=HkpHV1A7Ow+jmZJeJ7d diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index fb75386a4a..486ec062e6 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -20,24 +20,28 @@ #include "../HW/WII_IPC.h" #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device_hid.h" -#include "lusb0_usb.h" +#include "libusb.h" #include "errno.h" +#include CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { - usb_init(); /* initialize the library */ - + //usb_init(); /* initialize the library */ + libusb_init(NULL); } CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() { - for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) + /*for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) { usb_close(iter->second); } open_devices.clear(); + */ + + libusb_exit(NULL); } bool CWII_IPC_HLE_Device_hid::Open(u32 _CommandAddress, u32 _Mode) @@ -61,7 +65,11 @@ u32 CWII_IPC_HLE_Device_hid::Update() { u32 work_done = 0; int ret = -4; - + //timeval tv; + + + //libusb_handle_events_timeout_completed(NULL, &tv, NULL); + /* std::list<_hidevent>::iterator ev = event_list.begin(); while (ev != event_list.end()) { @@ -89,7 +97,7 @@ u32 CWII_IPC_HLE_Device_hid::Update() event_list.erase(ev++); else ev++; - } + }*/ return work_done; } @@ -170,17 +178,17 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) -4 Cant find device specified */ u32 dev_num = Memory::Read_U32(BufferIn+0x10); - u8 requesttype = Memory::Read_U8(BufferIn+0x14); + u8 requestType = Memory::Read_U8(BufferIn+0x14); u8 request = Memory::Read_U8(BufferIn+0x15); u16 value = Memory::Read_U16(BufferIn+0x16); u16 index = Memory::Read_U16(BufferIn+0x18); u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); - usb_find_busses(); /* find all busses */ - usb_find_devices(); /* find all connected devices */ - - struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + + libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { @@ -188,76 +196,63 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) break; } - ReturnValue = usb_control_msg(dev_handle, requesttype, request, + /*ReturnValue = usb_control_msg(dev_handle, requesttype, request, value, index, (char*)Memory::GetPointer(data), size, 0); - + */ + ReturnValue = libusb_control_transfer (dev_handle, requestType, request, value, index, (unsigned char*)Memory::GetPointer(data), size, 0); if(ReturnValue>=0) { - ReturnValue += sizeof(usb_ctrl_setup); + ReturnValue += sizeof(libusb_control_setup); } + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - requesttype, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - + requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } case IOCTL_HID_INTERRUPT_OUT: case IOCTL_HID_INTERRUPT_IN: { - - u32 dev_num = Memory::Read_U32(BufferIn+0x10); - u32 end_point = Memory::Read_U32(BufferIn+0x14); + u32 endpoint = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); u32 data = Memory::Read_U32(BufferIn+0x1C); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); int ret = 0; void * context = NULL; + ReturnValue = -4; - struct usb_dev_handle * dev_handle = GetDeviceByDevNum(dev_num); + libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { ReturnValue = -4; goto int_in_end_print; } + int transfered = 0; - usb_claim_interface(dev_handle,0); - - ret = usb_interrupt_setup_async(dev_handle, &context, end_point); - if (ret< 0) + if(libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 0 ) == 0) { - ReturnValue = -4; - goto int_in_end_print; - } - ret = usb_submit_async(context, (char*)Memory::GetPointer(data), length); - if (ret< 0) - { - ReturnValue = -4; - goto int_in_end_print; + ReturnValue = transfered; } - ret = usb_reap_async_nocancel(context, 0); - if (ret >= 0) - { - ReturnValue = ret; - } - else - { + /* _hidevent ev; ev.enq_address = _CommandAddress; ev.type = Parameter; ev.context = context; event_list.push_back(ev); return false; - } + */ + int_in_end_print: DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", end_point, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } @@ -274,6 +269,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) return true; } + bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) { @@ -283,7 +279,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) switch (CommandBuffer.Parameter) { - + case 0x1337: + break; default: { DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); @@ -306,7 +303,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) -void CWII_IPC_HLE_Device_hid::ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src) +void CWII_IPC_HLE_Device_hid::ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, const struct libusb_device_descriptor *src) { memcpy(dest,src,sizeof(WiiHIDDeviceDescriptor)); dest->bcdUSB = Common::swap16(dest->bcdUSB); @@ -315,18 +312,18 @@ void CWII_IPC_HLE_Device_hid::ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, s dest->bcdDevice = Common::swap16(dest->bcdDevice); } -void CWII_IPC_HLE_Device_hid::ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src) +void CWII_IPC_HLE_Device_hid::ConvertConfigToWii(WiiHIDConfigDescriptor *dest, const struct libusb_config_descriptor *src) { memcpy(dest,src,sizeof(WiiHIDConfigDescriptor)); dest->wTotalLength = Common::swap16(dest->wTotalLength); } -void CWII_IPC_HLE_Device_hid::ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, struct usb_interface_descriptor *src) +void CWII_IPC_HLE_Device_hid::ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, const struct libusb_interface_descriptor *src) { memcpy(dest,src,sizeof(WiiHIDInterfaceDescriptor)); } -void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src) +void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, const struct libusb_endpoint_descriptor *src) { memcpy(dest,src,sizeof(WiiHIDEndpointDescriptor)); dest->wMaxPacketSize = Common::swap16(dest->wMaxPacketSize); @@ -334,35 +331,45 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { - usb_find_busses(); /* find all busses */ - usb_find_devices(); /* find all connected devices */ - struct usb_bus *bus; - struct usb_device *dev; int OffsetBuffer = BufferOut; int OffsetStart = 0; - int c,ic,i,e; /* config, interface container, interface, endpoint */ - for (bus = usb_get_busses(); bus; bus = bus->next) + int OffsetDevice = 0; + int d, c,ic,i,e; /* config, interface container, interface, endpoint */ + + libusb_device **list; + libusb_device *found = NULL; + ssize_t cnt = libusb_get_device_list(NULL, &list); + + for (d = 0; d < cnt; d++) { - for (dev = bus->devices; dev; dev = dev->next) + libusb_device *device = list[d]; + struct libusb_device_descriptor desc; + int dRet = libusb_get_device_descriptor (device, &desc); + + DEBUG_LOG(WII_IPC_HID, "Vendor: %d Product: %X Devnum: %X",desc.idVendor, desc.idProduct); + if (desc.idVendor != 0x21A4) + continue; + + u32 devNum = 0;//(libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d, Error: %d",desc.idVendor, desc.idProduct, devNum, dRet); + + OffsetStart = OffsetBuffer; + OffsetBuffer += 4; // skip length for now, fill at end + + Memory::Write_U32(devNum, OffsetBuffer); //write device num + OffsetBuffer += 4; + + WiiHIDDeviceDescriptor wii_device; + ConvertDeviceToWii(&wii_device, &desc); + Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); + OffsetBuffer += Align(wii_device.bLength, 4); + bool deviceValid = true; + for (c = 0; deviceValid && c < desc.bNumConfigurations; c++) { - struct usb_device_descriptor *device = &dev->descriptor; - DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d",device->idVendor, device->idProduct, dev->devnum); - - OffsetStart = OffsetBuffer; - OffsetBuffer += 4; // skip length for now, fill at end - - Memory::Write_U32(dev->devnum, OffsetBuffer); //write device num - OffsetBuffer += 4; - - WiiHIDDeviceDescriptor wii_device; - ConvertDeviceToWii(&wii_device, device); - Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); - OffsetBuffer += Align(wii_device.bLength, 4); - - for (c = 0; c < device->bNumConfigurations; c++) + struct libusb_config_descriptor *config = NULL; + int cRet = libusb_get_config_descriptor(device, c, &config); + if(cRet == 0) { - struct usb_config_descriptor *config = &dev->config[c]; - WiiHIDConfigDescriptor wii_config; ConvertConfigToWii(&wii_config, config); Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(wii_config.bLength, 4)); @@ -370,10 +377,10 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) for (ic = 0; ic < config->bNumInterfaces; ic++) { - struct usb_interface *interfaceContainer = &config->interface[ic]; + const struct libusb_interface *interfaceContainer = &config->interface[ic]; for (i = 0; i < interfaceContainer->num_altsetting; i++) { - struct usb_interface_descriptor *interface = &interfaceContainer->altsetting[i]; + const struct libusb_interface_descriptor *interface = &interfaceContainer->altsetting[i]; WiiHIDInterfaceDescriptor wii_interface; ConvertInterfaceToWii(&wii_interface, interface); @@ -382,7 +389,7 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) for (e = 0; e < interface->bNumEndpoints; e++) { - struct usb_endpoint_descriptor *endpoint = &interface->endpoint[e]; + const struct libusb_endpoint_descriptor *endpoint = &interface->endpoint[e]; WiiHIDEndpointDescriptor wii_endpoint; ConvertEndpointToWii(&wii_endpoint, endpoint); @@ -392,42 +399,72 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) } //endpoints } // interfaces } // interface containters - } // configs + libusb_free_config_descriptor(config); + config = NULL; + } + else + { + DEBUG_LOG(WII_IPC_HID, "Could not open the device %d", cRet); + deviceValid = false; + OffsetBuffer = OffsetStart; + } + } // configs + Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length - Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length - - } // devices - } // buses + } + libusb_free_device_list(list, TRUE); + Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices + char file[0x50]; + snprintf(file, 0x50, "device_list.bin"); + FILE* test = fopen (file, "wb"); + fwrite((char*)Memory::GetPointer(BufferOut), 1, (OffsetBuffer - BufferOut)+4, test); + + fclose(test); } - + int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) { return (num + (alignment-1)) & ~(alignment-1); } -struct usb_dev_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) +libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) { - + int i; + libusb_device **list; + libusb_device_handle *handle = NULL; + ssize_t cnt; + if (open_devices.find(devNum) != open_devices.end()) return open_devices[devNum]; + + cnt = libusb_get_device_list(NULL, &list); + + if (cnt < 0) + return NULL; + + for (i = 0; i < cnt; i++) { + libusb_device *device = list[i]; - usb_dev_handle * device = NULL; - - for (struct usb_bus *bus = usb_get_busses(); bus; bus = bus->next) - { - for (struct usb_device *dev = bus->devices; dev; dev = dev->next) + if (libusb_open(device, &handle)) + break; + //struct libusb_device_descriptor desc; + u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + if (deviceID == devNum) + open_devices[devNum] = handle; + else { - if(dev->devnum == devNum){ - open_devices[devNum] = device = usb_open(dev); - - return device; - } + libusb_close(handle); + handle = NULL; } } - return device; + + libusb_free_device_list(list, TRUE); + + + return handle; } \ No newline at end of file diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 099f4deff4..be7e1b5926 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -115,15 +115,16 @@ private: void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize); - void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, struct usb_device_descriptor *src); - void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, struct usb_config_descriptor *src); - void ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, struct usb_interface_descriptor *src); - void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, struct usb_endpoint_descriptor *src); + void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, const struct libusb_device_descriptor *src); + void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, const struct libusb_config_descriptor *src); + void ConvertInterfaceToWii(WiiHIDInterfaceDescriptor *dest, const struct libusb_interface_descriptor *src); + void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, const struct libusb_endpoint_descriptor *src); int Align(int num, int alignment); - struct usb_dev_handle * GetDeviceByDevNum(u32 devNum); - std::map open_devices; + struct libusb_device_handle * GetDeviceByDevNum(u32 devNum); + std::map open_devices; + std::map device_identifiers; typedef struct diff --git a/Source/VSProps/Dolphin.Win32.props b/Source/VSProps/Dolphin.Win32.props index a78f75c4ac..383ed36590 100644 --- a/Source/VSProps/Dolphin.Win32.props +++ b/Source/VSProps/Dolphin.Win32.props @@ -8,7 +8,7 @@ ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;hidapi.lib;%(AdditionalDependencies) + portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;libusb-1.0.lib;%(AdditionalDependencies) diff --git a/Source/VSProps/Dolphin.x64.props b/Source/VSProps/Dolphin.x64.props index fd692daa60..28ae77d1b5 100644 --- a/Source/VSProps/Dolphin.x64.props +++ b/Source/VSProps/Dolphin.x64.props @@ -9,7 +9,7 @@ ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg64;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;%(AdditionalDependencies) + portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;libusb-1.0.lib;%(AdditionalDependencies) From d9dd94ac8b696ceb0e6b32eaafcc302b41f43bd1 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 24 Dec 2012 12:58:11 +1300 Subject: [PATCH 10/27] Add Libusb to cmake and HID files. --- CMakeLists.txt | 10 ++++ CMakeTests/FindLibUSB.cmake | 39 +++++++++++++++ Source/Core/Core/CMakeLists.txt | 7 +++ .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 48 +++++++++++-------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 8 ++-- 5 files changed, 89 insertions(+), 23 deletions(-) create mode 100644 CMakeTests/FindLibUSB.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 37e4f14f5e..414289771c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -414,6 +414,16 @@ else(SDL2_FOUND) endif(SDL_FOUND) endif(SDL2_FOUND) +if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") + include(FindLibUSB OPTIONAL) +endif() +if(LIBUSB_FOUND) + message("Using shared LibUSB") + include_directories(${LIBUSB_INCLUDE_DIR}) +else(LIBUSB_FOUND) + +endif(LIBUSB_FOUND) + set(SFML_FIND_VERSION TRUE) set(SFML_FIND_VERSION_MAJOR 1) set(SFML_FIND_VERSION_MINOR 5) diff --git a/CMakeTests/FindLibUSB.cmake b/CMakeTests/FindLibUSB.cmake new file mode 100644 index 0000000000..5d7af82e7a --- /dev/null +++ b/CMakeTests/FindLibUSB.cmake @@ -0,0 +1,39 @@ +# - Find libusb-1.0 library +# This module defines +# LIBUSB_INCLUDE_DIR, where to find bluetooth.h +# LIBUSB_LIBRARIES, the libraries needed to use libusb-1.0. +# LIBUSB_FOUND, If false, do not try to use libusb-1.0. +# +# Copyright (c) 2009, Michal Cihar, +# +# vim: expandtab sw=4 ts=4 sts=4: + +if (NOT LIBUSB_FOUND) + pkg_check_modules (LIBUSB_PKG libusb-1.0) + + find_path(LIBUSB_INCLUDE_DIR NAMES libusb.h + PATHS + ${LIBUSB_PKG_INCLUDE_DIRS} + /usr/include/libusb-1.0 + /usr/include + /usr/local/include + ) + + find_library(LIBUSB_LIBRARIES NAMES usb-1.0 + PATHS + ${LIBUSB_PKG_LIBRARY_DIRS} + /usr/lib + /usr/local/lib + ) + + if(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + set(LIBUSB_FOUND TRUE CACHE INTERNAL "libusb-1.0 found") + message(STATUS "Found libusb-1.0: ${LIBUSB_INCLUDE_DIR}, ${LIBUSB_LIBRARIES}") + else(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + set(LIBUSB_FOUND FALSE CACHE INTERNAL "libusb-1.0 found") + message(STATUS "libusb-1.0 not found.") + endif(LIBUSB_INCLUDE_DIR AND LIBUSB_LIBRARIES) + + mark_as_advanced(LIBUSB_INCLUDE_DIR LIBUSB_LIBRARIES) +endif (NOT LIBUSB_FOUND) + diff --git a/Source/Core/Core/CMakeLists.txt b/Source/Core/Core/CMakeLists.txt index 734d966781..dd19d36d36 100644 --- a/Source/Core/Core/CMakeLists.txt +++ b/Source/Core/Core/CMakeLists.txt @@ -138,6 +138,7 @@ set(SRCS Src/ActionReplay.cpp Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp Src/IPC_HLE/WII_IPC_HLE_Device_fs.cpp + Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp Src/IPC_HLE/WII_IPC_HLE_Device_sdio_slot0.cpp Src/IPC_HLE/WII_IPC_HLE_Device_usb.cpp @@ -194,6 +195,12 @@ set(SRCS Src/ActionReplay.cpp set(LIBS bdisasm inputcommon videoogl videosoftware sfml-network) + +if(LIBUSB_FOUND) + # Using shared LibUSB + set(LIBS ${LIBS} ${LIBUSB_LIBRARIES}) +endif(LIBUSB_FOUND) + if(WIN32) set(SRCS ${SRCS} Src/HW/BBA-TAP/TAP_Win32.cpp Src/stdafx.cpp Src/HW/WiimoteReal/IOWin.cpp) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 486ec062e6..250ff7021e 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -64,7 +64,7 @@ bool CWII_IPC_HLE_Device_hid::Close(u32 _CommandAddress, bool _bForce) u32 CWII_IPC_HLE_Device_hid::Update() { u32 work_done = 0; - int ret = -4; + //int ret = -4; //timeval tv; @@ -214,16 +214,15 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) case IOCTL_HID_INTERRUPT_OUT: case IOCTL_HID_INTERRUPT_IN: { - + + int transfered = 0; u32 dev_num = Memory::Read_U32(BufferIn+0x10); u32 endpoint = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); u32 data = Memory::Read_U32(BufferIn+0x1C); - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); - int ret = 0; - void * context = NULL; ReturnValue = -4; libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); @@ -233,7 +232,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = -4; goto int_in_end_print; } - int transfered = 0; if(libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 0 ) == 0) { @@ -251,7 +249,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) int_in_end_print: - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%p) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; @@ -333,11 +331,11 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { int OffsetBuffer = BufferOut; int OffsetStart = 0; - int OffsetDevice = 0; - int d, c,ic,i,e; /* config, interface container, interface, endpoint */ + //int OffsetDevice = 0; + int d,c,ic,i,e; /* config, interface container, interface, endpoint */ libusb_device **list; - libusb_device *found = NULL; + //libusb_device *found = NULL; ssize_t cnt = libusb_get_device_list(NULL, &list); for (d = 0; d < cnt; d++) @@ -346,17 +344,18 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) struct libusb_device_descriptor desc; int dRet = libusb_get_device_descriptor (device, &desc); - DEBUG_LOG(WII_IPC_HID, "Vendor: %d Product: %X Devnum: %X",desc.idVendor, desc.idProduct); + u32 devNum = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + + DEBUG_LOG(WII_IPC_HID, "Vendor: %d Product: %X Devnum: %X",desc.idVendor, desc.idProduct, devNum); if (desc.idVendor != 0x21A4) continue; - u32 devNum = 0;//(libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d, Error: %d",desc.idVendor, desc.idProduct, devNum, dRet); OffsetStart = OffsetBuffer; OffsetBuffer += 4; // skip length for now, fill at end - Memory::Write_U32(devNum, OffsetBuffer); //write device num + Memory::Write_U32( 0/*devNum*/, OffsetBuffer); //write device num OffsetBuffer += 4; WiiHIDDeviceDescriptor wii_device; @@ -413,7 +412,7 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) } - libusb_free_device_list(list, TRUE); + libusb_free_device_list(list, 1); Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices @@ -439,6 +438,8 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) libusb_device_handle *handle = NULL; ssize_t cnt; + devNum = 0x204; + if (open_devices.find(devNum) != open_devices.end()) return open_devices[devNum]; @@ -449,13 +450,22 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) for (i = 0; i < cnt; i++) { libusb_device *device = list[i]; - - if (libusb_open(device, &handle)) - break; + int ret = libusb_open(device, &handle); + if (ret) + { + + DEBUG_LOG(WII_IPC_HID, "Failed to open device with error = %d", ret); + continue; + } + //struct libusb_device_descriptor desc; u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + DEBUG_LOG(WII_IPC_HID, "Testing device id == %d", deviceID); if (deviceID == devNum) + { open_devices[devNum] = handle; + break; + } else { libusb_close(handle); @@ -463,8 +473,8 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) } } - libusb_free_device_list(list, TRUE); + libusb_free_device_list(list, 1); return handle; -} \ No newline at end of file +} diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index be7e1b5926..7f70324772 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -21,7 +21,7 @@ #include "WII_IPC_HLE_Device.h" #include -/* Connection timed out */ #define ETRANSFER_TIMEDOUT -116 +/* Connection timed out */ class CWII_IPC_HLE_Device_hid : public IWII_IPC_HLE_Device { @@ -45,8 +45,8 @@ private: IOCTL_HID_SET_SUSPEND = 0x01, IOCTL_HID_CONTROL = 0x02, IOCTL_HID_INTERRUPT_IN = 0x03, - IOCTL_HID_INTERRUPT_OUT = 0x04, - IOCTL_HID_GET_US_STRING = 0x05, + IOCTL_HID_INTERRUPT_OUT = 0x04, + IOCTL_HID_GET_US_STRING = 0x05, IOCTL_HID_OPEN = 0x06, IOCTL_HID_SHUTDOWN = 0x07, IOCTL_HID_CANCEL_INTERRUPT = 0x08, @@ -113,7 +113,7 @@ private: } WiiHIDEndpointDescriptor; - void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize); + void FillOutDevices(u32 BufferOut, u32 BufferOutSize); void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, const struct libusb_device_descriptor *src); void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, const struct libusb_config_descriptor *src); From bc385cbdd8e0c3eabdadee22f567f2f141b1fb17 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Fri, 28 Dec 2012 01:26:20 +1300 Subject: [PATCH 11/27] libusb 1.0 hacky working on linux. --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 31 ++++++++++++++++--- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 250ff7021e..af66f2a307 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -216,6 +216,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { int transfered = 0; + int checkme = 34; + int worked = 35; u32 dev_num = Memory::Read_U32(BufferIn+0x10); u32 endpoint = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); @@ -232,8 +234,26 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = -4; goto int_in_end_print; } + if (libusb_kernel_driver_active(dev_handle, 0) == 1) + { + DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); + worked = libusb_detach_kernel_driver(dev_handle, 0); + if (worked) + { + DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); + } + } - if(libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 0 ) == 0) + worked = libusb_claim_interface(dev_handle, 0); + if (worked) + { + DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); + ReturnValue = -4; + goto int_in_end_print; + } + + checkme = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 3000 ); + if(checkme == 0) { ReturnValue = transfered; } @@ -249,8 +269,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) int_in_end_print: - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i), err = %d", + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize, checkme); break; } @@ -438,10 +458,13 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) libusb_device_handle *handle = NULL; ssize_t cnt; - devNum = 0x204; + devNum = 0x304; if (open_devices.find(devNum) != open_devices.end()) + { + DEBUG_LOG(WII_IPC_HID, "Found it... "); return open_devices[devNum]; + } cnt = libusb_get_device_list(NULL, &list); From de0798f4f7fb0d4010567351e34f658ab51348ef Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Sat, 29 Dec 2012 17:46:44 +1300 Subject: [PATCH 12/27] More stable hackyness. :) --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 88 +++++++++++-------- 1 file changed, 50 insertions(+), 38 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index af66f2a307..50c70e9c6a 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -177,6 +177,9 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ERROR CODES: -4 Cant find device specified */ + int ret = -1; + int worked = 32; + u32 dev_num = Memory::Read_U32(BufferIn+0x10); u8 requestType = Memory::Read_U8(BufferIn+0x14); u8 request = Memory::Read_U8(BufferIn+0x15); @@ -185,8 +188,10 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + ReturnValue = -4; + + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // requestType, request, BufferIn, BufferInSize, BufferOut, BufferOutSize); libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); @@ -200,10 +205,30 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) value, index, (char*)Memory::GetPointer(data), size, 0); */ - ReturnValue = libusb_control_transfer (dev_handle, requestType, request, value, index, (unsigned char*)Memory::GetPointer(data), size, 0); - if(ReturnValue>=0) + + if (libusb_kernel_driver_active(dev_handle, 0) == 1) { - ReturnValue += sizeof(libusb_control_setup); + //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); + worked = libusb_detach_kernel_driver(dev_handle, 0); + if (worked) + { + //DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); + } + } + + worked = libusb_claim_interface(dev_handle, 0); + if (worked) + { + DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); + ReturnValue = -4; + break; + } + + ret = libusb_control_transfer (dev_handle, requestType, request, value, index, (unsigned char*)Memory::GetPointer(data), size, 0); + if(ret>=0) + { + ret += sizeof(libusb_control_setup); + ReturnValue = ret; } DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", @@ -223,8 +248,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u32 length = Memory::Read_U32(BufferIn+0x18); u32 data = Memory::Read_U32(BufferIn+0x1C); - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, BufferIn, BufferInSize, BufferOut, BufferOutSize); ReturnValue = -4; libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); @@ -236,23 +261,23 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) } if (libusb_kernel_driver_active(dev_handle, 0) == 1) { - DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); + //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); worked = libusb_detach_kernel_driver(dev_handle, 0); if (worked) { - DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); + //DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); } } worked = libusb_claim_interface(dev_handle, 0); if (worked) { - DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); + //DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); ReturnValue = -4; goto int_in_end_print; } - checkme = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 3000 ); + checkme = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 20 ); if(checkme == 0) { ReturnValue = transfered; @@ -295,25 +320,16 @@ bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) u32 ReturnValue = 0; SIOCtlVBuffer CommandBuffer(_CommandAddress); - switch (CommandBuffer.Parameter) - { - case 0x1337: - break; - default: - { - DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); - DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); - DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); - DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); - DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); - DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); - DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); - #if defined(_DEBUG) || defined(DEBUGFAST) - DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); - #endif - } - break; - } + DEBUG_LOG(WII_IPC_HID, "%s - IOCtlV:", GetDeviceName().c_str()); + DEBUG_LOG(WII_IPC_HID, " Parameter: 0x%x", CommandBuffer.Parameter); + DEBUG_LOG(WII_IPC_HID, " NumberIn: 0x%08x", CommandBuffer.NumberInBuffer); + DEBUG_LOG(WII_IPC_HID, " NumberOut: 0x%08x", CommandBuffer.NumberPayloadBuffer); + DEBUG_LOG(WII_IPC_HID, " BufferVector: 0x%08x", CommandBuffer.BufferVector); + DEBUG_LOG(WII_IPC_HID, " PayloadAddr: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Address); + DEBUG_LOG(WII_IPC_HID, " PayloadSize: 0x%08x", CommandBuffer.PayloadBuffer[0].m_Size); + #if defined(_DEBUG) || defined(DEBUGFAST) + DumpAsync(CommandBuffer.BufferVector, CommandBuffer.NumberInBuffer, CommandBuffer.NumberPayloadBuffer); + #endif Memory::Write_U32(ReturnValue, _CommandAddress + 4); return true; @@ -367,15 +383,15 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) u32 devNum = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); DEBUG_LOG(WII_IPC_HID, "Vendor: %d Product: %X Devnum: %X",desc.idVendor, desc.idProduct, devNum); - if (desc.idVendor != 0x21A4) - continue; + //if (desc.idVendor != 0x21A4) + // continue; DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d, Error: %d",desc.idVendor, desc.idProduct, devNum, dRet); OffsetStart = OffsetBuffer; OffsetBuffer += 4; // skip length for now, fill at end - Memory::Write_U32( 0/*devNum*/, OffsetBuffer); //write device num + Memory::Write_U32( d /*devNum*/, OffsetBuffer); //write device num OffsetBuffer += 4; WiiHIDDeviceDescriptor wii_device; @@ -458,11 +474,8 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) libusb_device_handle *handle = NULL; ssize_t cnt; - devNum = 0x304; - if (open_devices.find(devNum) != open_devices.end()) { - DEBUG_LOG(WII_IPC_HID, "Found it... "); return open_devices[devNum]; } @@ -483,8 +496,7 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) //struct libusb_device_descriptor desc; u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); - DEBUG_LOG(WII_IPC_HID, "Testing device id == %d", deviceID); - if (deviceID == devNum) + if (i == devNum) { open_devices[devNum] = handle; break; From 3b459fb500b1a87532cc33b1c38363591c3b667f Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Sun, 30 Dec 2012 16:57:37 +1300 Subject: [PATCH 13/27] Add better FindLibUsb support for MacOSX. Make LibUSB optional, don't compile HID support if it doesn't exist. A lot less hacky. Works quite well on Ubuntu now. --- CMakeLists.txt | 6 +- CMakeTests/FindLibUSB.cmake | 1 + Source/Core/Core/CMakeLists.txt | 8 +- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp | 9 +- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 138 +++++++++--------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 3 + 6 files changed, 85 insertions(+), 80 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 3d10ed2585..a2908d27b6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -427,11 +427,11 @@ else(SDL2_FOUND) endif(SDL_FOUND) endif(SDL2_FOUND) -if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") - include(FindLibUSB OPTIONAL) -endif() +include(FindLibUSB OPTIONAL) if(LIBUSB_FOUND) message("Using shared LibUSB") + + add_definitions(-D__LIBUSB__) include_directories(${LIBUSB_INCLUDE_DIR}) else(LIBUSB_FOUND) diff --git a/CMakeTests/FindLibUSB.cmake b/CMakeTests/FindLibUSB.cmake index 5d7af82e7a..789e6f8416 100644 --- a/CMakeTests/FindLibUSB.cmake +++ b/CMakeTests/FindLibUSB.cmake @@ -16,6 +16,7 @@ if (NOT LIBUSB_FOUND) ${LIBUSB_PKG_INCLUDE_DIRS} /usr/include/libusb-1.0 /usr/include + /usr/local/include/libusb-1.0 /usr/local/include ) diff --git a/Source/Core/Core/CMakeLists.txt b/Source/Core/Core/CMakeLists.txt index 20c611544a..3541e33713 100644 --- a/Source/Core/Core/CMakeLists.txt +++ b/Source/Core/Core/CMakeLists.txt @@ -70,8 +70,8 @@ set(SRCS Src/ActionReplay.cpp Src/HW/CPU.cpp Src/HW/DSP.cpp Src/HW/DSPHLE/UCodes/UCode_AX.cpp - Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp - Src/HW/DSPHLE/UCodes/UCode_NewAXWii.cpp + Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp + Src/HW/DSPHLE/UCodes/UCode_NewAXWii.cpp Src/HW/DSPHLE/UCodes/UCode_CARD.cpp Src/HW/DSPHLE/UCodes/UCode_InitAudioSystem.cpp Src/HW/DSPHLE/UCodes/UCode_ROM.cpp @@ -138,7 +138,6 @@ set(SRCS Src/ActionReplay.cpp Src/IPC_HLE/WII_IPC_HLE_Device_es.cpp Src/IPC_HLE/WII_IPC_HLE_Device_FileIO.cpp Src/IPC_HLE/WII_IPC_HLE_Device_fs.cpp - Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp Src/IPC_HLE/WII_IPC_HLE_Device_net.cpp Src/IPC_HLE/WII_IPC_HLE_Device_sdio_slot0.cpp Src/IPC_HLE/WII_IPC_HLE_Device_usb.cpp @@ -202,7 +201,8 @@ endif() if(LIBUSB_FOUND) # Using shared LibUSB - set(LIBS ${LIBS} ${LIBUSB_LIBRARIES}) + set(LIBS ${LIBS} ${LIBUSB_LIBRARIES}) + set(SRCS ${SRCS} Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp) endif(LIBUSB_FOUND) if(WIN32) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp index 1c9a51bcbd..59f5a638cf 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp @@ -50,7 +50,10 @@ They will also generate a true or false return for UpdateInterrupts() in WII_IPC #include "WII_IPC_HLE_Device_usb.h" #include "WII_IPC_HLE_Device_usb_kbd.h" #include "WII_IPC_HLE_Device_sdio_slot0.h" -#include "WII_IPC_HLE_Device_hid.h" + +#ifdef __LIBUSB__ + #include "WII_IPC_HLE_Device_hid.h" +#endif #include "FileUtil.h" // For Copy #include "../ConfigManager.h" @@ -114,7 +117,9 @@ void Init() g_DeviceMap[i] = new CWII_IPC_HLE_Device_usb_kbd(i, std::string("/dev/usb/kbd")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_sdio_slot0(i, std::string("/dev/sdio/slot0")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/sdio/slot1")); i++; - g_DeviceMap[i] = new CWII_IPC_HLE_Device_hid(i, std::string("/dev/usb/hid")); i++; + #ifdef __LIBUSB__ + g_DeviceMap[i] = new CWII_IPC_HLE_Device_hid(i, std::string("/dev/usb/hid")); i++; + #endif g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/usb/oh1")); i++; g_DeviceMap[i] = new IWII_IPC_HLE_Device(i, std::string("_Unimplemented_Device_")); i++; } diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 50c70e9c6a..b214c13f63 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -20,26 +20,23 @@ #include "../HW/WII_IPC.h" #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device_hid.h" -#include "libusb.h" #include "errno.h" #include CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { - - //usb_init(); /* initialize the library */ libusb_init(NULL); } CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() { - /*for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) + for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) { - usb_close(iter->second); + libusb_close(iter->second); } open_devices.clear(); - */ + libusb_exit(NULL); } @@ -146,6 +143,19 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) BufferIn, BufferInSize, BufferOut, BufferOutSize); // not actually implemented in IOS ReturnValue = 0; + if (replyAddress != 0){ + FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); + WII_IPC_HLE_Interface::EnqReply(replyAddress); + replyAddress = 0; + hasRun = false; + } + break; + } + case IOCTL_HID_CANCEL_INTERRUPT: + { + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Cancel Interrupt) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + BufferIn, BufferInSize, BufferOut, BufferOutSize); + ReturnValue = 0; if (replyAddress != 0){ FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); @@ -153,22 +163,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) replyAddress = 0; hasRun = false; } - - break; - } - case IOCTL_HID_CANCEL_INTERRUPT: - { - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Cancel Interrupt) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - BufferIn, BufferInSize, BufferOut, BufferOutSize); - - if (replyAddress != 0){ - FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); - WII_IPC_HLE_Interface::EnqReply(replyAddress); - replyAddress = 0; - hasRun = false; - } - - ReturnValue = 0; + break; } case IOCTL_HID_CONTROL: @@ -178,7 +173,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) -4 Cant find device specified */ int ret = -1; - int worked = 32; u32 dev_num = Memory::Read_U32(BufferIn+0x10); u8 requestType = Memory::Read_U8(BufferIn+0x14); @@ -188,8 +182,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); - ReturnValue = -4; - //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", // requestType, request, BufferIn, BufferInSize, BufferOut, BufferOutSize); @@ -197,29 +189,14 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) if (dev_handle == NULL) { + DEBUG_LOG(WII_IPC_HID, "Could not find handle: %X", dev_num); ReturnValue = -4; break; } - - /*ReturnValue = usb_control_msg(dev_handle, requesttype, request, - value, index, (char*)Memory::GetPointer(data), size, - 0); - */ - if (libusb_kernel_driver_active(dev_handle, 0) == 1) + if (!ClaimDevice(dev_handle)) { - //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); - worked = libusb_detach_kernel_driver(dev_handle, 0); - if (worked) - { - //DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); - } - } - - worked = libusb_claim_interface(dev_handle, 0); - if (worked) - { - DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); + DEBUG_LOG(WII_IPC_HID, "Could not claim the device for handle: %X", dev_num); ReturnValue = -4; break; } @@ -230,6 +207,10 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ret += sizeof(libusb_control_setup); ReturnValue = ret; } + else + { + ReturnValue = -4; + } DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); @@ -241,8 +222,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { int transfered = 0; - int checkme = 34; - int worked = 35; + int ret; u32 dev_num = Memory::Read_U32(BufferIn+0x10); u32 endpoint = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); @@ -250,38 +230,31 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u32 data = Memory::Read_U32(BufferIn+0x1C); //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, BufferIn, BufferInSize, BufferOut, BufferOutSize); - ReturnValue = -4; - libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { + DEBUG_LOG(WII_IPC_HID, "Could not find handle: %X", dev_num); ReturnValue = -4; - goto int_in_end_print; - } - if (libusb_kernel_driver_active(dev_handle, 0) == 1) - { - //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); - worked = libusb_detach_kernel_driver(dev_handle, 0); - if (worked) - { - //DEBUG_LOG(WII_IPC_HID, "Attempt to detach interface failed with error: %d", worked); - } + break; } - worked = libusb_claim_interface(dev_handle, 0); - if (worked) + if (!ClaimDevice(dev_handle)) { - //DEBUG_LOG(WII_IPC_HID, "Attempt to claim interface failed with error: %d", worked); + DEBUG_LOG(WII_IPC_HID, "Could not claim the device for handle: %X", dev_num); ReturnValue = -4; - goto int_in_end_print; + break; } - checkme = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 20 ); - if(checkme == 0) + ret = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 20 ); + if(ret == 0) { ReturnValue = transfered; } + else + { + ReturnValue = -4; + } /* _hidevent ev; @@ -291,11 +264,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) event_list.push_back(ev); return false; */ - - - int_in_end_print: - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i), err = %d", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize, checkme); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } @@ -313,6 +283,33 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) } +bool CWII_IPC_HLE_Device_hid::ClaimDevice(libusb_device_handle * dev) +{ + int ret = 0; + if ((ret = libusb_kernel_driver_active(dev, 0)) == 1) + { + //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); + if ((ret = libusb_detach_kernel_driver(dev, 0))) + { + DEBUG_LOG(WII_IPC_HID, "libusb_detach_kernel_driver failed with error: %d", ret); + return false; + } + } + else if (ret != 0) + { + DEBUG_LOG(WII_IPC_HID, "libusb_kernel_driver_active error ret = %d", ret); + return false; + } + + if ((ret = libusb_claim_interface(dev, 0))) + { + DEBUG_LOG(WII_IPC_HID, "libusb_claim_interface failed with error: %d", ret); + return false; + } + + return true; +} + bool CWII_IPC_HLE_Device_hid::IOCtlV(u32 _CommandAddress) { @@ -469,7 +466,7 @@ int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) { - int i; + u32 i; libusb_device **list; libusb_device_handle *handle = NULL; ssize_t cnt; @@ -494,8 +491,7 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) continue; } - //struct libusb_device_descriptor desc; - u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + // u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); if (i == devNum) { open_devices[devNum] = handle; diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 7f70324772..c776d4bb7a 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -19,6 +19,7 @@ #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device.h" +#include "libusb.h" #include /* Connection timed out */ @@ -114,6 +115,8 @@ private: void FillOutDevices(u32 BufferOut, u32 BufferOutSize); + + bool ClaimDevice(libusb_device_handle * dev); void ConvertDeviceToWii(WiiHIDDeviceDescriptor *dest, const struct libusb_device_descriptor *src); void ConvertConfigToWii(WiiHIDConfigDescriptor *dest, const struct libusb_config_descriptor *src); From cc4d491d6c65d244bd41f707cf45057f7b23d634 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Sun, 30 Dec 2012 17:48:22 +1300 Subject: [PATCH 14/27] Add ability to enable GPROF in cmake. --- CMakeLists.txt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index a2908d27b6..bb0989cf89 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -208,9 +208,16 @@ if(NOT CMAKE_BUILD_TYPE) "Build type (Release/Debug/RelWithDebInfo/MinSizeRe)" FORCE) endif(NOT CMAKE_BUILD_TYPE) + if(CMAKE_BUILD_TYPE STREQUAL Debug) add_definitions(-D_DEBUG -ggdb) set(wxWidgets_USE_DEBUG ON CACHE BOOL "Use wxWidgets Debugging") + + option(ENABLE_GPROF "Enable gprof profiling (must be using Debug build)" OFF) + if(ENABLE_GPROF) + add_definitions(-pg) + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pg") + endif() endif(CMAKE_BUILD_TYPE STREQUAL Debug) if(CMAKE_BUILD_TYPE STREQUAL Release) From 35466fb54f95b78ffabfde5ade398f54de6f6b91 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Sun, 30 Dec 2012 17:48:33 +1300 Subject: [PATCH 15/27] Remove saving of debug file. --- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 7 ------- 1 file changed, 7 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index b214c13f63..21b58d2d91 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -449,13 +449,6 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices - char file[0x50]; - snprintf(file, 0x50, "device_list.bin"); - FILE* test = fopen (file, "wb"); - fwrite((char*)Memory::GetPointer(BufferOut), 1, (OffsetBuffer - BufferOut)+4, test); - - fclose(test); - } int CWII_IPC_HLE_Device_hid::Align(int num, int alignment) From 510e08370ef7491c6106453248cee8e93771692e Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 01:08:41 +1300 Subject: [PATCH 16/27] Now supports hotplugging. Much more stable but slow. Still missing proper cleanup of old handles. --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 174 +++++++++++++----- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 1 + 2 files changed, 133 insertions(+), 42 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 21b58d2d91..9108a971a4 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -23,9 +23,13 @@ #include "errno.h" #include +#define MAX_DEVICE_DEVNUM 256 +static u64 hidDeviceAliases[MAX_DEVICE_DEVNUM]; + CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { + memset(hidDeviceAliases, 0, sizeof(hidDeviceAliases)); libusb_init(NULL); } @@ -58,9 +62,36 @@ bool CWII_IPC_HLE_Device_hid::Close(u32 _CommandAddress, bool _bForce) return true; } +static u32 replyAddress = 0; +static bool hasRun = false; + u32 CWII_IPC_HLE_Device_hid::Update() { + static u16 timeToFill = 0; u32 work_done = 0; + + if (timeToFill == 0) + { + if (replyAddress != 0){ + FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); + + Memory::Write_U32(8, replyAddress); + // IOS seems to write back the command that was responded to + Memory::Write_U32(/*COMMAND_IOCTL*/ 6, replyAddress + 8); + + // Return value + Memory::Write_U32(0, replyAddress + 4); + + WII_IPC_HLE_Interface::EnqReply(replyAddress); + replyAddress = 0; + hasRun = false; + } + } + + timeToFill+=2; + + work_done = 1; + //int ret = -4; //timeval tv; @@ -84,7 +115,15 @@ u32 CWII_IPC_HLE_Device_hid::Update() Memory::Write_U32(ret, ev->enq_address + 4); WII_IPC_HLE_Interface::EnqReply(ev->enq_address); work_done = ev_finished = true; - } +} + +if (replyAddress != 0){ + FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); + WII_IPC_HLE_Interface::EnqReply(replyAddress); + replyAddress = 0; + hasRun = false; +} + break; } @@ -100,8 +139,6 @@ u32 CWII_IPC_HLE_Device_hid::Update() bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { - static u32 replyAddress = 0; - static bool hasRun = false; u32 Parameter = Memory::Read_U32(_CommandAddress + 0xC); u32 BufferIn = Memory::Read_U32(_CommandAddress + 0x10); u32 BufferInSize = Memory::Read_U32(_CommandAddress + 0x14); @@ -143,12 +180,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) BufferIn, BufferInSize, BufferOut, BufferOutSize); // not actually implemented in IOS ReturnValue = 0; - if (replyAddress != 0){ - FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); - WII_IPC_HLE_Interface::EnqReply(replyAddress); - replyAddress = 0; - hasRun = false; - } break; } case IOCTL_HID_CANCEL_INTERRUPT: @@ -156,14 +187,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Cancel Interrupt) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", BufferIn, BufferInSize, BufferOut, BufferOutSize); ReturnValue = 0; - - if (replyAddress != 0){ - FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); - WII_IPC_HLE_Interface::EnqReply(replyAddress); - replyAddress = 0; - hasRun = false; - } - break; } case IOCTL_HID_CONTROL: @@ -212,8 +235,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = -4; } - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } @@ -246,7 +269,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) break; } - ret = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 20 ); + ret = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 40 ); if(ret == 0) { ReturnValue = transfered; @@ -264,8 +287,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) event_list.push_back(ev); return false; */ - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } @@ -289,13 +312,13 @@ bool CWII_IPC_HLE_Device_hid::ClaimDevice(libusb_device_handle * dev) if ((ret = libusb_kernel_driver_active(dev, 0)) == 1) { //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); - if ((ret = libusb_detach_kernel_driver(dev, 0))) + if ((ret = libusb_detach_kernel_driver(dev, 0)) && ret != LIBUSB_ERROR_NOT_SUPPORTED) { DEBUG_LOG(WII_IPC_HID, "libusb_detach_kernel_driver failed with error: %d", ret); return false; } } - else if (ret != 0) + else if (ret != 0 && ret != LIBUSB_ERROR_NOT_SUPPORTED) { DEBUG_LOG(WII_IPC_HID, "libusb_kernel_driver_active error ret = %d", ret); return false; @@ -370,25 +393,31 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) libusb_device **list; //libusb_device *found = NULL; ssize_t cnt = libusb_get_device_list(NULL, &list); - + DEBUG_LOG(WII_IPC_HID, "Hello plane???? %ld", cnt); for (d = 0; d < cnt; d++) { libusb_device *device = list[d]; struct libusb_device_descriptor desc; int dRet = libusb_get_device_descriptor (device, &desc); - u32 devNum = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); + //u32 devNum = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); - DEBUG_LOG(WII_IPC_HID, "Vendor: %d Product: %X Devnum: %X",desc.idVendor, desc.idProduct, devNum); - //if (desc.idVendor != 0x21A4) - // continue; + int devNum = GetAvaiableDevNum(desc.idVendor, + desc.idProduct, + libusb_get_bus_number (device), + libusb_get_device_address (device)); + if (devNum < 0 ) + { + DEBUG_LOG(WII_IPC_HID, "Too many snakes on thsi motherfucking plane."); + // too many devices to handle. + continue; + } DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d, Error: %d",desc.idVendor, desc.idProduct, devNum, dRet); - OffsetStart = OffsetBuffer; OffsetBuffer += 4; // skip length for now, fill at end - Memory::Write_U32( d /*devNum*/, OffsetBuffer); //write device num + Memory::Write_U32( devNum , OffsetBuffer); //write device num OffsetBuffer += 4; WiiHIDDeviceDescriptor wii_device; @@ -464,9 +493,21 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) libusb_device_handle *handle = NULL; ssize_t cnt; + if(devNum >= MAX_DEVICE_DEVNUM) + return NULL; + if (open_devices.find(devNum) != open_devices.end()) { - return open_devices[devNum]; + handle = open_devices[devNum]; + if(libusb_kernel_driver_active(handle, 0) != LIBUSB_ERROR_NO_DEVICE) + { + return handle; + } + else + { + libusb_close(handle); + open_devices.erase(devNum); + } } cnt = libusb_get_device_list(NULL, &list); @@ -476,23 +517,46 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) for (i = 0; i < cnt; i++) { libusb_device *device = list[i]; - int ret = libusb_open(device, &handle); - if (ret) + struct libusb_device_descriptor desc; + int dRet = libusb_get_device_descriptor (device, &desc); + u8 bus = libusb_get_bus_number (device); + u8 port = libusb_get_device_address (device); + u64 unique_id = ((u64)desc.idVendor << 32) | (desc.idProduct << 16) | (bus << 8) | port; + if (hidDeviceAliases[devNum] == unique_id) { + int ret = libusb_open(device, &handle); + if (ret) + { + if (ret == LIBUSB_ERROR_ACCESS) + { + if( dRet ) + { + DEBUG_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID ????:???? (couldn't get id).", + bus, + port + ); + } + else{ + DEBUG_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID %04X:%04X.", + bus, + port, + desc.idVendor, + desc.idProduct + ); + } + } + else + { + DEBUG_LOG(WII_IPC_HID, "Failed to open device with error = %d", ret); + } + continue; + } - DEBUG_LOG(WII_IPC_HID, "Failed to open device with error = %d", ret); - continue; - } - - // u32 deviceID = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); - if (i == devNum) - { open_devices[devNum] = handle; break; } else { - libusb_close(handle); handle = NULL; } } @@ -502,3 +566,29 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) return handle; } + + +int CWII_IPC_HLE_Device_hid::GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port) +{ + int i; + int pos = -1; + u64 unique_id = ((u64)idVendor << 32) | (idProduct << 16) | (bus << 8) | port; + for (i=0; i< MAX_DEVICE_DEVNUM; i++) + { + u64 id = hidDeviceAliases[i]; + if(id == 0 && pos == -1) + { + pos = i; + } + else if (id == unique_id) + { + return i; + } + } + if(pos != -1) + { + hidDeviceAliases[pos] = unique_id; + return pos; + } + return -1; +} diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index c776d4bb7a..1ab9a95875 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -115,6 +115,7 @@ private: void FillOutDevices(u32 BufferOut, u32 BufferOutSize); + int GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port); bool ClaimDevice(libusb_device_handle * dev); From 5240d2877662af026e93c0f0e589482abba689ab Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 01:50:16 +1300 Subject: [PATCH 17/27] Small fixes. --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 9108a971a4..41f1a9976c 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -115,16 +115,7 @@ u32 CWII_IPC_HLE_Device_hid::Update() Memory::Write_U32(ret, ev->enq_address + 4); WII_IPC_HLE_Interface::EnqReply(ev->enq_address); work_done = ev_finished = true; -} - -if (replyAddress != 0){ - FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); - WII_IPC_HLE_Interface::EnqReply(replyAddress); - replyAddress = 0; - hasRun = false; -} - - + } break; } } @@ -235,8 +226,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = -4; } - //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - // requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } @@ -287,8 +278,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) event_list.push_back(ev); return false; */ - //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); break; } From 21fa664c2d9aac2277fdb8326babbe19dce8e226 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 03:51:34 +1300 Subject: [PATCH 18/27] Hopefully fix win32 build issues. --- Externals/libusb/include/libusb.h | 4 +- Externals/libusb/include/lusb0_usb.h | 427 ------------------ Externals/libusb/win32/libusb-1.0.lib | Bin 704170 -> 705064 bytes Externals/libusb/win32/libusb.lib | Bin 11974 -> 0 bytes Externals/libusb/x64/libusb-1.0.lib | Bin 734400 -> 558992 bytes Externals/libusb/x64/libusb.lib | Bin 11674 -> 0 bytes Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp | 6 +- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 1 + Source/VSProps/Dolphin.Win32.props | 4 +- Source/VSProps/Dolphin.x64.props | 4 +- 10 files changed, 11 insertions(+), 435 deletions(-) delete mode 100644 Externals/libusb/include/lusb0_usb.h delete mode 100644 Externals/libusb/win32/libusb.lib delete mode 100644 Externals/libusb/x64/libusb.lib diff --git a/Externals/libusb/include/libusb.h b/Externals/libusb/include/libusb.h index 044012bcd0..58b406f247 100644 --- a/Externals/libusb/include/libusb.h +++ b/Externals/libusb/include/libusb.h @@ -688,8 +688,8 @@ typedef struct libusb_context libusb_context; * Certain operations can be performed on a device, but in order to do any * I/O you will have to first obtain a device handle using libusb_open(). * - * Devices are reference counted with libusb_ref_device() and - * libusb_unref_device(), and are freed when the reference count reaches 0. + * Devices are reference counted with libusb_device_ref() and + * libusb_device_unref(), and are freed when the reference count reaches 0. * New devices presented by libusb_get_device_list() have a reference count of * 1, and libusb_free_device_list() can optionally decrease the reference count * on all devices in the list. libusb_open() adds another reference which is diff --git a/Externals/libusb/include/lusb0_usb.h b/Externals/libusb/include/lusb0_usb.h deleted file mode 100644 index b95fbf0a6d..0000000000 --- a/Externals/libusb/include/lusb0_usb.h +++ /dev/null @@ -1,427 +0,0 @@ -#ifndef __USB_H__ -#define __USB_H__ - -#include -#include - -/* - * 'interface' is defined somewhere in the Windows header files. This macro - * is deleted here to avoid conflicts and compile errors. - */ - -#ifdef interface -#undef interface -#endif - -/* - * PATH_MAX from limits.h can't be used on Windows if the dll and - * import libraries are build/used by different compilers - */ - -#define LIBUSB_PATH_MAX 512 - - -/* - * USB spec information - * - * This is all stuff grabbed from various USB specs and is pretty much - * not subject to change - */ - -/* - * Device and/or Interface Class codes - */ -#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */ -#define USB_CLASS_AUDIO 1 -#define USB_CLASS_COMM 2 -#define USB_CLASS_HID 3 -#define USB_CLASS_PRINTER 7 -#define USB_CLASS_MASS_STORAGE 8 -#define USB_CLASS_HUB 9 -#define USB_CLASS_DATA 10 -#define USB_CLASS_VENDOR_SPEC 0xff - -/* - * Descriptor types - */ -#define USB_DT_DEVICE 0x01 -#define USB_DT_CONFIG 0x02 -#define USB_DT_STRING 0x03 -#define USB_DT_INTERFACE 0x04 -#define USB_DT_ENDPOINT 0x05 - -#define USB_DT_HID 0x21 -#define USB_DT_REPORT 0x22 -#define USB_DT_PHYSICAL 0x23 -#define USB_DT_HUB 0x29 - -/* - * Descriptor sizes per descriptor type - */ -#define USB_DT_DEVICE_SIZE 18 -#define USB_DT_CONFIG_SIZE 9 -#define USB_DT_INTERFACE_SIZE 9 -#define USB_DT_ENDPOINT_SIZE 7 -#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */ -#define USB_DT_HUB_NONVAR_SIZE 7 - - -/* ensure byte-packed structures */ -#include - - -/* All standard descriptors have these 2 fields in common */ -struct usb_descriptor_header -{ - unsigned char bLength; - unsigned char bDescriptorType; -}; - -/* String descriptor */ -struct usb_string_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wData[1]; -}; - -/* HID descriptor */ -struct usb_hid_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdHID; - unsigned char bCountryCode; - unsigned char bNumDescriptors; -}; - -/* Endpoint descriptor */ -#define USB_MAXENDPOINTS 32 -struct usb_endpoint_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bEndpointAddress; - unsigned char bmAttributes; - unsigned short wMaxPacketSize; - unsigned char bInterval; - unsigned char bRefresh; - unsigned char bSynchAddress; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_ENDPOINT_ADDRESS_MASK 0x0f /* in bEndpointAddress */ -#define USB_ENDPOINT_DIR_MASK 0x80 - -#define USB_ENDPOINT_TYPE_MASK 0x03 /* in bmAttributes */ -#define USB_ENDPOINT_TYPE_CONTROL 0 -#define USB_ENDPOINT_TYPE_ISOCHRONOUS 1 -#define USB_ENDPOINT_TYPE_BULK 2 -#define USB_ENDPOINT_TYPE_INTERRUPT 3 - -/* Interface descriptor */ -#define USB_MAXINTERFACES 32 -struct usb_interface_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned char bInterfaceNumber; - unsigned char bAlternateSetting; - unsigned char bNumEndpoints; - unsigned char bInterfaceClass; - unsigned char bInterfaceSubClass; - unsigned char bInterfaceProtocol; - unsigned char iInterface; - - struct usb_endpoint_descriptor *endpoint; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -#define USB_MAXALTSETTING 128 /* Hard limit */ - -struct usb_interface -{ - struct usb_interface_descriptor *altsetting; - - int num_altsetting; -}; - -/* Configuration descriptor information.. */ -#define USB_MAXCONFIG 8 -struct usb_config_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short wTotalLength; - unsigned char bNumInterfaces; - unsigned char bConfigurationValue; - unsigned char iConfiguration; - unsigned char bmAttributes; - unsigned char MaxPower; - - struct usb_interface *interface; - - unsigned char *extra; /* Extra descriptors */ - int extralen; -}; - -/* Device descriptor */ -struct usb_device_descriptor -{ - unsigned char bLength; - unsigned char bDescriptorType; - unsigned short bcdUSB; - unsigned char bDeviceClass; - unsigned char bDeviceSubClass; - unsigned char bDeviceProtocol; - unsigned char bMaxPacketSize0; - unsigned short idVendor; - unsigned short idProduct; - unsigned short bcdDevice; - unsigned char iManufacturer; - unsigned char iProduct; - unsigned char iSerialNumber; - unsigned char bNumConfigurations; -}; - -struct usb_ctrl_setup -{ - unsigned char bRequestType; - unsigned char bRequest; - unsigned short wValue; - unsigned short wIndex; - unsigned short wLength; -}; - -/* - * Standard requests - */ -#define USB_REQ_GET_STATUS 0x00 -#define USB_REQ_CLEAR_FEATURE 0x01 -/* 0x02 is reserved */ -#define USB_REQ_SET_FEATURE 0x03 -/* 0x04 is reserved */ -#define USB_REQ_SET_ADDRESS 0x05 -#define USB_REQ_GET_DESCRIPTOR 0x06 -#define USB_REQ_SET_DESCRIPTOR 0x07 -#define USB_REQ_GET_CONFIGURATION 0x08 -#define USB_REQ_SET_CONFIGURATION 0x09 -#define USB_REQ_GET_INTERFACE 0x0A -#define USB_REQ_SET_INTERFACE 0x0B -#define USB_REQ_SYNCH_FRAME 0x0C - -#define USB_TYPE_STANDARD (0x00 << 5) -#define USB_TYPE_CLASS (0x01 << 5) -#define USB_TYPE_VENDOR (0x02 << 5) -#define USB_TYPE_RESERVED (0x03 << 5) - -#define USB_RECIP_DEVICE 0x00 -#define USB_RECIP_INTERFACE 0x01 -#define USB_RECIP_ENDPOINT 0x02 -#define USB_RECIP_OTHER 0x03 - -/* - * Various libusb API related stuff - */ - -#define USB_ENDPOINT_IN 0x80 -#define USB_ENDPOINT_OUT 0x00 - -/* Error codes */ -#define USB_ERROR_BEGIN 500000 - -/* - * This is supposed to look weird. This file is generated from autoconf - * and I didn't want to make this too complicated. - */ -#define USB_LE16_TO_CPU(x) - -/* - * Device reset types for usb_reset_ex. - * http://msdn.microsoft.com/en-us/library/ff537269%28VS.85%29.aspx - * http://msdn.microsoft.com/en-us/library/ff537243%28v=vs.85%29.aspx - */ -#define USB_RESET_TYPE_RESET_PORT (1 << 0) -#define USB_RESET_TYPE_CYCLE_PORT (1 << 1) -#define USB_RESET_TYPE_FULL_RESET (USB_RESET_TYPE_CYCLE_PORT | USB_RESET_TYPE_RESET_PORT) - - -/* Data types */ -/* struct usb_device; */ -/* struct usb_bus; */ - -struct usb_device -{ - struct usb_device *next, *prev; - - char filename[LIBUSB_PATH_MAX]; - - struct usb_bus *bus; - - struct usb_device_descriptor descriptor; - struct usb_config_descriptor *config; - - void *dev; /* Darwin support */ - - unsigned char devnum; - - unsigned char num_children; - struct usb_device **children; -}; - -struct usb_bus -{ - struct usb_bus *next, *prev; - - char dirname[LIBUSB_PATH_MAX]; - - struct usb_device *devices; - unsigned long location; - - struct usb_device *root_dev; -}; - -/* Version information, Windows specific */ -struct usb_version -{ - struct - { - int major; - int minor; - int micro; - int nano; - } dll; - struct - { - int major; - int minor; - int micro; - int nano; - } driver; -}; - - -struct usb_dev_handle; -typedef struct usb_dev_handle usb_dev_handle; - -/* Variables */ -#ifndef __USB_C__ -#define usb_busses usb_get_busses() -#endif - - - -#include - - -#ifdef __cplusplus -extern "C" -{ -#endif - - /* Function prototypes */ - - /* usb.c */ - usb_dev_handle *usb_open(struct usb_device *dev); - int usb_close(usb_dev_handle *dev); - int usb_get_string(usb_dev_handle *dev, int index, int langid, char *buf, - size_t buflen); - int usb_get_string_simple(usb_dev_handle *dev, int index, char *buf, - size_t buflen); - - /* descriptors.c */ - int usb_get_descriptor_by_endpoint(usb_dev_handle *udev, int ep, - unsigned char type, unsigned char index, - void *buf, int size); - int usb_get_descriptor(usb_dev_handle *udev, unsigned char type, - unsigned char index, void *buf, int size); - - /* .c */ - int usb_bulk_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_bulk_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_write(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_interrupt_read(usb_dev_handle *dev, int ep, char *bytes, int size, - int timeout); - int usb_control_msg(usb_dev_handle *dev, int requesttype, int request, - int value, int index, char *bytes, int size, - int timeout); - int usb_set_configuration(usb_dev_handle *dev, int configuration); - int usb_claim_interface(usb_dev_handle *dev, int interface); - int usb_release_interface(usb_dev_handle *dev, int interface); - int usb_set_altinterface(usb_dev_handle *dev, int alternate); - int usb_resetep(usb_dev_handle *dev, unsigned int ep); - int usb_clear_halt(usb_dev_handle *dev, unsigned int ep); - int usb_reset(usb_dev_handle *dev); - int usb_reset_ex(usb_dev_handle *dev, unsigned int reset_type); - - char *usb_strerror(void); - - void usb_init(void); - void usb_set_debug(int level); - int usb_find_busses(void); - int usb_find_devices(void); - struct usb_device *usb_device(usb_dev_handle *dev); - struct usb_bus *usb_get_busses(void); - - - /* Windows specific functions */ - -#define LIBUSB_HAS_INSTALL_SERVICE_NP 1 - int usb_install_service_np(void); - void CALLBACK usb_install_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_UNINSTALL_SERVICE_NP 1 - int usb_uninstall_service_np(void); - void CALLBACK usb_uninstall_service_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_DRIVER_NP 1 - int usb_install_driver_np(const char *inf_file); - void CALLBACK usb_install_driver_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_TOUCH_INF_FILE_NP 1 - int usb_touch_inf_file_np(const char *inf_file); - void CALLBACK usb_touch_inf_file_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - -#define LIBUSB_HAS_INSTALL_NEEDS_RESTART_NP 1 - int usb_install_needs_restart_np(void); - -#define LIBUSB_HAS_INSTALL_NP 1 - int usb_install_npW(HWND hwnd, HINSTANCE instance, LPCWSTR cmd_line, int starg_arg); - int usb_install_npA(HWND hwnd, HINSTANCE instance, LPCSTR cmd_line, int starg_arg); - #define usb_install_np usb_install_npA - void CALLBACK usb_install_np_rundll(HWND wnd, HINSTANCE instance, - LPSTR cmd_line, int cmd_show); - - const struct usb_version *usb_get_version(void); - - int usb_isochronous_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep, int pktsize); - int usb_bulk_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - int usb_interrupt_setup_async(usb_dev_handle *dev, void **context, - unsigned char ep); - - int usb_submit_async(void *context, char *bytes, int size); - int usb_reap_async(void *context, int timeout); - int usb_reap_async_nocancel(void *context, int timeout); - int usb_cancel_async(void *context); - int usb_free_async(void **context); - - -#ifdef __cplusplus -} -#endif - -#endif /* __USB_H__ */ - diff --git a/Externals/libusb/win32/libusb-1.0.lib b/Externals/libusb/win32/libusb-1.0.lib index c9018f05dd9d557220d2f3383f5e090e89d69ba6..0434d5ebdeff1abf4ae15c3c93c8287edb1bc3e7 100644 GIT binary patch delta 201520 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

{+KkgRfSvvw@8(u0JjAt>BH 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 delta 201658 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

Qz3{2>aH-=fmonU3KOVr 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%0A1yRIJ0z~Iaba(|rmQ;u`b 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 V_NJf{3GGcG#Za-mX?}qN0{}7t9zXy9 literal 734400 zcmY$iNi0gvu;bEKKm~@zrp6|QMwSL>{T2cVc3BIDrxNL@8{?4?BwSV8tep;h0B<@JGprJyLdV}*c;g!*_+rK zp-7v$y9PJ~1UPy**sHkt*sD0ZrP!;u`PrMIs`7JlbMp6c_HytG4R$g{ku!7hadL6= z^!0WK_XNqJN;*4vxV!qg`8wFExcK^o`uNzZxcH+garN^JaCY|(06EjC&I(o(*sS`#mCJrz}?RwJTosPzq}Y#*4Nd`#my}M=3vy|FbDa?#l_hn%+nFW z#pVINKJIS*PF@ZmkD59Lc%qnW;pXh;>hI>^0tsf28Wl%JcvM<=d%HP$y8HV(I0pNM zU>I)c77*a%<>%(&kWrGD6rYh;oPlDxrH`kRyQ7zR3_u!ulc>gVp|?BnI^?GTz*Tv||&UsRHsVviBjPL2-#&VF8wzAo+#&OX7OE^bBn zxxpnxnR)4`20A%7`FQ&~xuN?Q%_~k0PQIQlPCmZQ=nB#N;^g4$?&9s@?B|4TFNTRO z-rmlh9*!6e#4yn{z$3ub!_gmRwPR9#Q3+P ztDi%9YDs)bYFTDpT7G;=Vo4%;;JEwvIl8(yxi|!+rU#a$7FC8N=9H$oR$#c%-QVBa z%iYlv=Ek7Z;#90|^z?J~_jh-ND+HU0&5ho!F5XUFZZ0qr!;3OYQZW@eJ2*Kz`gwWz z!4<-T2hEYrps03rb#;QPgd2$#H_i_3zHWXl9svO`%i$r3snXBK!#}{!3nPRuRC+l2 zx_LS~!+j1n6T_VzPR;>t-j4nlW@4&z@eOeDb%i+-?ja0?o_-#V&c1#gFqQCN$583z z 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 IX^uwvl!IO0J*rd7&M*;TeJi%%%N+W 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 diff --git a/Externals/libusb/x64/libusb.lib b/Externals/libusb/x64/libusb.lib deleted file mode 100644 index dfdaad05d14b3a56d6446ce3a79a4aa7b6f1e712..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11674 zcmY$iNi0gvu;bEKKm~@zMrIa9hL&cgsNx1tu92w;l$pTAz`&5mz#x*uz#!Jcz#x8v zfkAB<1WRvXU;ttHE(QiL{>H!{55jy54Dx&o407`zSn>}80~jkXFi0veFsSZ>V3ivT z3?M8c!N35*S{w`vAS`u_fdPco-!L$Mu;w%d1~ArRV9?ZKV32l$V2wBi1~5Ltz@Tx2 zfkEpD1S?!&U;tsQDh37+mU+X#0K&2n3=AMF)55?2!g59o3?Quhih%)yRpJ;JKv-u5 z0|N-_$}up2u%Z`NgSV2?z@zlb%`q6JMN}TaW`W z3854wimD?ewK%ybv!EouC_bq&J~c0;AU`v&1a1osXu`DPW@zJcNqOypq(SqSAsAB%{#9u&IU{icky|La0s7&nqd)&xy}1h6FP* zAEBx^wIn_{KQApay|gH?Br_ipm6)Ok9mzR~nYr;`Yts^wA)ZGUL#QrF%}GrxPDN9X zDT>emvO6)S1l0lzL4^9E)Z)~V)B!<`tJD=H$c|rxt849uyLnBNQp&u04WvNBQ zuzZiqN2tmy&QH!L%FoL$EsifvEh#OCPb{v?O9n>;E;)p5aH)r`4MPy29-Q&PB_g^e z>@oZ3YG&bq0nCbq0nEDF%jPvJ4Dr zN(>A<$_xw(lo%K)l)(*N21W)Z25tro1}+9&1_1^U237_>1{nq^25AO823ZD91`Y-` z26hHD1_=fw24x0)215n|1|tSJ26+Zv22BPY26YA&25kl%20;c<1~CR<1|bH121y2S z1}z2^22}IET>o=OQGZn=oP?IvX0$nJz07(R-1f`vga2`kswNrp92Wh$@iNTt|NJ7YU zF+v!lO@ibg3^~lW!`5;`G69=3%n(q81ulKSu@2`Umql&s7U|?QA`X$3=HJ8AE}m7j7$xYQVJ6|rR-v0V1T%m zfdN}eNdY+?2_vNxW0)`~r7VMSpfo6@fXtL#%_}$0|Nsi1CmY1H6W5D45a%F zmTb`cCJjzINH#)RSCrXhiQRXgoWKnA9ZJ)UBHK)ju-gVI16g3Up|uN_Ts zk@CeEK(#L<9YPw~$VQV9a(Mj23H1|lE1x1i;YsgY$aX?E-anpnV^T?1DE4&`KzI1_lORB)gD0RutK1h9f0vGcYjlVYLsX*G7@u_{tD| zB)g$qLW=A%g*D01!c~cZfk6PnE?9pP*-9if#pQ`0l8vywERy-iS%WycV9iK0--&`- z{E+el+)qZfgyejHFARmDK7#eA5uI>kE0Nel`O6H4zcd*b7({T{2-i3&x0WsVZuPW0hUBwLWZOq7i#IMOGmuc8dM5j2!aku5k%Hc18s1{GvmK*O}i z7LlGpaI~8w7#J8-k!?yXKn^QpHc{b*Z!AC!Y7b~A8D)H#BA?+)8=!e@(9ko;M%2M; zWGj)_MEMcl$chG%AHl=J$RUW#Ce9{2=|dA{6Kv2O$s45SY7;!YJ}sC{$Rqj`*@iF9 zw4t_PObj509x|J#ki^#x)WKyVw(6YZoM(!ohpWoKz@Q7Y8QXLQvKL8@Pct0(U59~z LK@X3u*t`q?aB1hA diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp index 59f5a638cf..9a47e97d0c 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp @@ -51,7 +51,7 @@ They will also generate a true or false return for UpdateInterrupts() in WII_IPC #include "WII_IPC_HLE_Device_usb_kbd.h" #include "WII_IPC_HLE_Device_sdio_slot0.h" -#ifdef __LIBUSB__ +#if defined(__LIBUSB__) || defined (_WIN32) #include "WII_IPC_HLE_Device_hid.h" #endif @@ -117,8 +117,10 @@ void Init() g_DeviceMap[i] = new CWII_IPC_HLE_Device_usb_kbd(i, std::string("/dev/usb/kbd")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_sdio_slot0(i, std::string("/dev/sdio/slot0")); i++; g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/sdio/slot1")); i++; - #ifdef __LIBUSB__ + #if defined(__LIBUSB__) || defined(_WIN32) g_DeviceMap[i] = new CWII_IPC_HLE_Device_hid(i, std::string("/dev/usb/hid")); i++; + #else + g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/usb/hid")); i++; #endif g_DeviceMap[i] = new CWII_IPC_HLE_Device_stub(i, std::string("/dev/usb/oh1")); i++; g_DeviceMap[i] = new IWII_IPC_HLE_Device(i, std::string("_Unimplemented_Device_")); i++; diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 41f1a9976c..70e379bfca 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -457,6 +457,7 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) else { DEBUG_LOG(WII_IPC_HID, "Could not open the device %d", cRet); + hidDeviceAliases[devNum] = 0; deviceValid = false; OffsetBuffer = OffsetStart; } diff --git a/Source/VSProps/Dolphin.Win32.props b/Source/VSProps/Dolphin.Win32.props index 77e7131a92..78e145b6d6 100644 --- a/Source/VSProps/Dolphin.Win32.props +++ b/Source/VSProps/Dolphin.Win32.props @@ -8,8 +8,8 @@ ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;libusb-1.0.lib;%(AdditionalDependencies) + libusb-1.0.lib;portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew32s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;%(AdditionalDependencies) - + \ No newline at end of file diff --git a/Source/VSProps/Dolphin.x64.props b/Source/VSProps/Dolphin.x64.props index d5a97aa693..5fe05be766 100644 --- a/Source/VSProps/Dolphin.x64.props +++ b/Source/VSProps/Dolphin.x64.props @@ -9,8 +9,8 @@ ..\..\..\Externals\SDL\$(PlatformName);..\..\..\Externals\GLew;..\..\..\Externals\Cg64;..\..\..\Externals\portaudio\$(PlatformName)\$(ConfigurationName);..\..\..\Externals\libusb\$(PlatformName) - portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;libusb.lib;libusb-1.0.lib;%(AdditionalDependencies) + libusb-1.0.lib;portaudio.lib;dsound.lib;dxerr.lib;iphlpapi.lib;winmm.lib;setupapi.lib;xinput.lib;vfw32.lib;cg.lib;cgGL.lib;opengl32.lib;glew64s.lib;glu32.lib;rpcrt4.lib;comctl32.lib;%(AdditionalDependencies) - + \ No newline at end of file From c1b8aa75f29025a0d1b1043a572a8e4fd537ce36 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 18:05:38 +1300 Subject: [PATCH 19/27] Tidy up and fix for my Windows crash :D --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 89 ++++++++----------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 4 + 2 files changed, 41 insertions(+), 52 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 70e379bfca..f06bd98313 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -196,22 +196,13 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u16 size = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); - //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - // requestType, request, BufferIn, BufferInSize, BufferOut, BufferOutSize); - + ReturnValue = HIDERR_NO_DEVICE_FOUND; + libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { DEBUG_LOG(WII_IPC_HID, "Could not find handle: %X", dev_num); - ReturnValue = -4; - break; - } - - if (!ClaimDevice(dev_handle)) - { - DEBUG_LOG(WII_IPC_HID, "Could not claim the device for handle: %X", dev_num); - ReturnValue = -4; break; } @@ -221,10 +212,6 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ret += sizeof(libusb_control_setup); ReturnValue = ret; } - else - { - ReturnValue = -4; - } DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); @@ -242,21 +229,14 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) u32 length = Memory::Read_U32(BufferIn+0x18); u32 data = Memory::Read_U32(BufferIn+0x1C); - //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, BufferIn, BufferInSize, BufferOut, BufferOutSize); + + ReturnValue = HIDERR_NO_DEVICE_FOUND; + libusb_device_handle * dev_handle = GetDeviceByDevNum(dev_num); if (dev_handle == NULL) { DEBUG_LOG(WII_IPC_HID, "Could not find handle: %X", dev_num); - ReturnValue = -4; - break; - } - - if (!ClaimDevice(dev_handle)) - { - DEBUG_LOG(WII_IPC_HID, "Could not claim the device for handle: %X", dev_num); - ReturnValue = -4; break; } @@ -265,19 +245,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { ReturnValue = transfered; } - else - { - ReturnValue = -4; - } - /* - _hidevent ev; - ev.enq_address = _CommandAddress; - ev.type = Parameter; - ev.context = context; - event_list.push_back(ev); - return false; - */ DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); @@ -302,7 +270,6 @@ bool CWII_IPC_HLE_Device_hid::ClaimDevice(libusb_device_handle * dev) int ret = 0; if ((ret = libusb_kernel_driver_active(dev, 0)) == 1) { - //DEBUG_LOG(WII_IPC_HID, "Kernel has the interface, gtfo kernel!"); if ((ret = libusb_detach_kernel_driver(dev, 0)) && ret != LIBUSB_ERROR_NOT_SUPPORTED) { DEBUG_LOG(WII_IPC_HID, "libusb_detach_kernel_driver failed with error: %d", ret); @@ -384,27 +351,31 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) libusb_device **list; //libusb_device *found = NULL; ssize_t cnt = libusb_get_device_list(NULL, &list); - DEBUG_LOG(WII_IPC_HID, "Hello plane???? %ld", cnt); + DEBUG_LOG(WII_IPC_HID, "Found %ld viable USB devices.", cnt); for (d = 0; d < cnt; d++) { libusb_device *device = list[d]; struct libusb_device_descriptor desc; int dRet = libusb_get_device_descriptor (device, &desc); - - //u32 devNum = (libusb_get_bus_number (device) << 8) | libusb_get_device_address (device); - + if (dRet) + { + // could not aquire the descriptor, no point in trying to use it. + DEBUG_LOG(WII_IPC_HID, "libusb_get_device_descriptor failed with error: %d", dRet); + continue; + } int devNum = GetAvaiableDevNum(desc.idVendor, desc.idProduct, libusb_get_bus_number (device), libusb_get_device_address (device)); if (devNum < 0 ) { - DEBUG_LOG(WII_IPC_HID, "Too many snakes on thsi motherfucking plane."); // too many devices to handle. + ERROR_LOG(WII_IPC_HID, "Exhausted device list, you have way too many usb devices plugged in." + "Or it might be our fault. Let us know at https://code.google.com/p/dolphin-emu/issues/entry?template=Defect%%20report"); continue; } - DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d, Error: %d",desc.idVendor, desc.idProduct, devNum, dRet); + DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d", desc.idVendor, desc.idProduct, devNum); OffsetStart = OffsetBuffer; OffsetBuffer += 4; // skip length for now, fill at end @@ -416,18 +387,21 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) Memory::WriteBigEData((const u8*)&wii_device, OffsetBuffer, Align(wii_device.bLength, 4)); OffsetBuffer += Align(wii_device.bLength, 4); bool deviceValid = true; + for (c = 0; deviceValid && c < desc.bNumConfigurations; c++) { struct libusb_config_descriptor *config = NULL; int cRet = libusb_get_config_descriptor(device, c, &config); - if(cRet == 0) + + // do not try to use usb devices with more than one interface, games can crash + if(cRet == 0 && config->bNumInterfaces <= MAX_HID_INTERFACES) { WiiHIDConfigDescriptor wii_config; ConvertConfigToWii(&wii_config, config); Memory::WriteBigEData((const u8*)&wii_config, OffsetBuffer, Align(wii_config.bLength, 4)); OffsetBuffer += Align(wii_config.bLength, 4); - - for (ic = 0; ic < config->bNumInterfaces; ic++) + + for (ic = 0; ic < config->bNumInterfaces; ic++) { const struct libusb_interface *interfaceContainer = &config->interface[ic]; for (i = 0; i < interfaceContainer->num_altsetting; i++) @@ -456,13 +430,16 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) } else { - DEBUG_LOG(WII_IPC_HID, "Could not open the device %d", cRet); + if(cRet) + DEBUG_LOG(WII_IPC_HID, "libusb_get_config_descriptor failed with: %d", cRet); hidDeviceAliases[devNum] = 0; deviceValid = false; OffsetBuffer = OffsetStart; } } // configs - Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length + + if (deviceValid) + Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length } @@ -523,13 +500,13 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) { if( dRet ) { - DEBUG_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID ????:???? (couldn't get id).", + ERROR_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID ????:???? (couldn't get id).", bus, port ); } else{ - DEBUG_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID %04X:%04X.", + ERROR_LOG(WII_IPC_HID, "Dolphin does not have access to this device: Bus %03d Device %03d: ID %04X:%04X.", bus, port, desc.idVendor, @@ -539,11 +516,19 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) } else { - DEBUG_LOG(WII_IPC_HID, "Failed to open device with error = %d", ret); + ERROR_LOG(WII_IPC_HID, "libusb_open failed to open device with error = %d", ret); } continue; } + + if (!ClaimDevice(handle)) + { + ERROR_LOG(WII_IPC_HID, "Could not claim the device for handle: %X", devNum); + libusb_close(handle); + continue; + } + open_devices[devNum] = handle; break; } diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 1ab9a95875..51057d536c 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -22,6 +22,10 @@ #include "libusb.h" #include +#define MAX_HID_INTERFACES 1 + +#define HIDERR_NO_DEVICE_FOUND -4 + /* Connection timed out */ class CWII_IPC_HLE_Device_hid : public IWII_IPC_HLE_Device From 90ce6ad3718637a51bfd2cd83656f80ada149b63 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 18:15:52 +1300 Subject: [PATCH 20/27] Better warning for windows. --- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index f06bd98313..22c08d6baf 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -514,6 +514,12 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) ); } } +#ifdef _WIN32 + else if (ret == LIBUSB_ERROR_NOT_SUPPORTED) + { + WARN_LOG(WII_IPC_HID, "Please install the libusb drivers for the device %04X:%04X", ret, desc.idVendor, desc.idProduct); + } +#endif else { ERROR_LOG(WII_IPC_HID, "libusb_open failed to open device with error = %d", ret); From cda82eb1fca49434ef8fdb16e5aa7bb4816dd86e Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 18:20:16 +1300 Subject: [PATCH 21/27] Left in a ret value. --- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 22c08d6baf..47b267f574 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -517,7 +517,7 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) #ifdef _WIN32 else if (ret == LIBUSB_ERROR_NOT_SUPPORTED) { - WARN_LOG(WII_IPC_HID, "Please install the libusb drivers for the device %04X:%04X", ret, desc.idVendor, desc.idProduct); + WARN_LOG(WII_IPC_HID, "Please install the libusb drivers for the device %04X:%04X", desc.idVendor, desc.idProduct); } #endif else From 40a6649dfeb3c0ac9e96eb8327051034d42894ad Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Mon, 31 Dec 2012 20:51:10 +1300 Subject: [PATCH 22/27] Fix unique_id creation, damn sign extension! Cleanup removed devices. --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 126 ++++++++---------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 3 +- 2 files changed, 56 insertions(+), 73 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 47b267f574..2e7b56efc6 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -88,43 +88,9 @@ u32 CWII_IPC_HLE_Device_hid::Update() } } - timeToFill+=2; + timeToFill+=8; work_done = 1; - - //int ret = -4; - //timeval tv; - - - //libusb_handle_events_timeout_completed(NULL, &tv, NULL); - /* - std::list<_hidevent>::iterator ev = event_list.begin(); - while (ev != event_list.end()) { - - bool ev_finished = false; - - - switch (ev->type) - { - case IOCTL_HID_INTERRUPT_OUT: - case IOCTL_HID_INTERRUPT_IN: - { - ret = usb_reap_async_nocancel(ev->context, 0); - if(ret >= 0) - { - Memory::Write_U32(ret, ev->enq_address + 4); - WII_IPC_HLE_Interface::EnqReply(ev->enq_address); - work_done = ev_finished = true; - } - break; - } - } - - if (ev_finished) - event_list.erase(ev++); - else - ev++; - }*/ return work_done; } @@ -143,17 +109,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Get Attached) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", BufferIn, BufferInSize, BufferOut, BufferOutSize); - //Memory::Write_U32(0xFFFFFFFF, BufferOut); - if(!hasRun) - { - FillOutDevices(BufferOut, BufferOutSize); - hasRun = true; - } - else - { - replyAddress = _CommandAddress; - return false; - } + replyAddress = _CommandAddress; + return false; break; } case IOCTL_HID_OPEN: @@ -213,8 +170,8 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ReturnValue = ret; } - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i) = %d", + requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize, ret); break; } @@ -343,6 +300,7 @@ void CWII_IPC_HLE_Device_hid::ConvertEndpointToWii(WiiHIDEndpointDescriptor *des void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { + static u16 check = 1; int OffsetBuffer = BufferOut; int OffsetStart = 0; //int OffsetDevice = 0; @@ -363,24 +321,10 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) DEBUG_LOG(WII_IPC_HID, "libusb_get_device_descriptor failed with error: %d", dRet); continue; } - int devNum = GetAvaiableDevNum(desc.idVendor, - desc.idProduct, - libusb_get_bus_number (device), - libusb_get_device_address (device)); - if (devNum < 0 ) - { - // too many devices to handle. - ERROR_LOG(WII_IPC_HID, "Exhausted device list, you have way too many usb devices plugged in." - "Or it might be our fault. Let us know at https://code.google.com/p/dolphin-emu/issues/entry?template=Defect%%20report"); - continue; - } - - DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %d Product: %d Devnum: %d", desc.idVendor, desc.idProduct, devNum); OffsetStart = OffsetBuffer; OffsetBuffer += 4; // skip length for now, fill at end - Memory::Write_U32( devNum , OffsetBuffer); //write device num - OffsetBuffer += 4; + OffsetBuffer += 4; // skip devNum for now WiiHIDDeviceDescriptor wii_device; ConvertDeviceToWii(&wii_device, &desc); @@ -432,17 +376,54 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) { if(cRet) DEBUG_LOG(WII_IPC_HID, "libusb_get_config_descriptor failed with: %d", cRet); - hidDeviceAliases[devNum] = 0; deviceValid = false; OffsetBuffer = OffsetStart; } } // configs if (deviceValid) + { Memory::Write_U32(OffsetBuffer-OffsetStart, OffsetStart); // fill in length - + + int devNum = GetAvaiableDevNum(desc.idVendor, + desc.idProduct, + libusb_get_bus_number (device), + libusb_get_device_address (device), + check); + if (devNum < 0 ) + { + // too many devices to handle. + ERROR_LOG(WII_IPC_HID, "Exhausted device list, you have way too many usb devices plugged in." + "Or it might be our fault. Let us know at https://code.google.com/p/dolphin-emu/issues/entry?template=Defect%%20report"); + OffsetBuffer = OffsetStart; + continue; + } + + DEBUG_LOG(WII_IPC_HID, "Found device with Vendor: %X Product: %X Devnum: %d", desc.idVendor, desc.idProduct, devNum); + + Memory::Write_U32(devNum , OffsetStart+4); //write device num + } } + // Find devices that no longer exists and free them + for (i=0; i> 48); + if(hidDeviceAliases[i] != 0 && check_cur != check) + { + DEBUG_LOG(WII_IPC_HID, "Removing: device %d %hX %hX", i, check, check_cur); + if (open_devices.find(i) != open_devices.end()) + { + libusb_device_handle *handle = open_devices[i]; + libusb_close(handle); + open_devices.erase(i); + } + hidDeviceAliases[i] = 0; + } + } + check++; + + libusb_free_device_list(list, 1); Memory::Write_U32(0xFFFFFFFF, OffsetBuffer); // no more devices @@ -490,8 +471,8 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) int dRet = libusb_get_device_descriptor (device, &desc); u8 bus = libusb_get_bus_number (device); u8 port = libusb_get_device_address (device); - u64 unique_id = ((u64)desc.idVendor << 32) | (desc.idProduct << 16) | (bus << 8) | port; - if (hidDeviceAliases[devNum] == unique_id) + u64 unique_id = ((u64)desc.idVendor << 32) | ((u64)desc.idProduct << 16) | ((u64)bus << 8) | (u64)port; + if ((hidDeviceAliases[devNum] & HID_ID_MASK) == unique_id) { int ret = libusb_open(device, &handle); if (ret) @@ -551,26 +532,27 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) } -int CWII_IPC_HLE_Device_hid::GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port) +int CWII_IPC_HLE_Device_hid::GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port, u16 check) { int i; int pos = -1; - u64 unique_id = ((u64)idVendor << 32) | (idProduct << 16) | (bus << 8) | port; - for (i=0; i< MAX_DEVICE_DEVNUM; i++) + u64 unique_id = ((u64)idVendor << 32) | ((u64)idProduct << 16) | ((u64)bus << 8) | (u64)port; + for (i=0; i +#define HID_ID_MASK 0x0000FFFFFFFFFFFF #define MAX_HID_INTERFACES 1 #define HIDERR_NO_DEVICE_FOUND -4 @@ -119,7 +120,7 @@ private: void FillOutDevices(u32 BufferOut, u32 BufferOutSize); - int GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port); + int GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port, u16 check); bool ClaimDevice(libusb_device_handle * dev); From f695f088a748008c8341c10b41301bb3bd43747b Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 1 Jan 2013 16:53:59 +1300 Subject: [PATCH 23/27] Add usb thread to check for usb updates. --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 34 ++++++++++++++++++- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 7 ++-- 2 files changed, 38 insertions(+), 3 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index 2e7b56efc6..b0b3f349aa 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -21,20 +21,52 @@ #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device_hid.h" #include "errno.h" -#include + +#if defined(_MSC_VER) || defined(__MINGW32__) +# include +#ifndef _TIMEVAL_DEFINED /* also in winsock[2].h */ +#define _TIMEVAL_DEFINED +struct timeval { + long tv_sec; + long tv_usec; +}; +#endif /* _TIMEVAL_DEFINED */ +#else +# include +#endif #define MAX_DEVICE_DEVNUM 256 static u64 hidDeviceAliases[MAX_DEVICE_DEVNUM]; +// Regular thread +void CWII_IPC_HLE_Device_hid::checkUsbUpdates(CWII_IPC_HLE_Device_hid* hid) +{ + timeval tv; + tv.tv_sec = 0; + tv.tv_usec = 500; + + while (hid->usb_thread_running) + libusb_handle_events_timeout(NULL, &tv); + + return; +} + + CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { memset(hidDeviceAliases, 0, sizeof(hidDeviceAliases)); libusb_init(NULL); + + usb_thread_running = true; + usb_thread = std::thread(checkUsbUpdates, this); } CWII_IPC_HLE_Device_hid::~CWII_IPC_HLE_Device_hid() { + usb_thread_running = false; + usb_thread.join(); + for ( std::map::const_iterator iter = open_devices.begin(); iter != open_devices.end(); ++iter ) { libusb_close(iter->second); diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 2acc2e0e7f..58c3c88da2 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -20,6 +20,7 @@ #include "WII_IPC_HLE.h" #include "WII_IPC_HLE_Device.h" #include "libusb.h" +#include "Thread.h" #include #define HID_ID_MASK 0x0000FFFFFFFFFFFF @@ -130,11 +131,13 @@ private: void ConvertEndpointToWii(WiiHIDEndpointDescriptor *dest, const struct libusb_endpoint_descriptor *src); int Align(int num, int alignment); - + static void checkUsbUpdates(CWII_IPC_HLE_Device_hid* hid); + struct libusb_device_handle * GetDeviceByDevNum(u32 devNum); std::map open_devices; std::map device_identifiers; - + std::thread usb_thread; + bool usb_thread_running; typedef struct { From d3f199273b2fec600af1017ddfae37873a3e47f7 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 1 Jan 2013 19:23:45 +1300 Subject: [PATCH 24/27] Fix warning level... someone let me commit this to master ;D --- Source/Core/Common/Src/Log.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/Common/Src/Log.h b/Source/Core/Common/Src/Log.h index 9664387cf0..8ae845b303 100644 --- a/Source/Core/Common/Src/Log.h +++ b/Source/Core/Common/Src/Log.h @@ -98,7 +98,7 @@ void GenericLog(LOGTYPES_LEVELS level, LOGTYPES_TYPE type, ; #if defined LOGGING || defined _DEBUG || defined DEBUGFAST -#define MAX_LOGLEVEL DEBUG_LEVEL +#define MAX_LOGLEVEL WARNING_LEVEL #else #ifndef MAX_LOGLEVEL #define MAX_LOGLEVEL DEBUG_LEVEL From 8fdc8af1cb83381228c04c60021eb9d2abe30761 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 1 Jan 2013 19:24:00 +1300 Subject: [PATCH 25/27] Thread safe enq_reply. --- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp | 25 +++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp index 9a47e97d0c..fc2118ea20 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE.cpp @@ -83,6 +83,7 @@ IWII_IPC_HLE_Device* es_handles[ES_MAX_COUNT]; typedef std::deque ipc_msg_queue; static ipc_msg_queue request_queue; // ppc -> arm static ipc_msg_queue reply_queue; // arm -> ppc +static std::mutex s_reply_queue; void Init() { @@ -159,7 +160,12 @@ void Reset(bool _bHard) g_DeviceMap.erase(g_DeviceMap.begin(), g_DeviceMap.end()); } request_queue.clear(); - reply_queue.clear(); + + // lock due to using reply_queue + { + std::lock_guard lk(s_reply_queue); + reply_queue.clear(); + } } void Shutdown() @@ -241,6 +247,8 @@ IWII_IPC_HLE_Device* CreateFileIO(u32 _DeviceID, const std::string& _rDeviceName void DoState(PointerWrap &p) { + std::lock_guard lk(s_reply_queue); + p.Do(request_queue); p.Do(reply_queue); @@ -536,6 +544,7 @@ void EnqRequest(u32 _Address) // Called when IOS module has some reply void EnqReply(u32 _Address) { + std::lock_guard lk(s_reply_queue); reply_queue.push_back(_Address); } @@ -560,12 +569,16 @@ void Update() Dolphin_Debugger::PrintCallstack(LogTypes::WII_IPC_HLE, LogTypes::LDEBUG); #endif } - - if (reply_queue.size()) + + // lock due to using reply_queue { - WII_IPCInterface::GenerateReply(reply_queue.front()); - INFO_LOG(WII_IPC_HLE, "<<-- Reply to IPC Request @ 0x%08x", reply_queue.front()); - reply_queue.pop_front(); + std::lock_guard lk(s_reply_queue); + if (reply_queue.size()) + { + WII_IPCInterface::GenerateReply(reply_queue.front()); + INFO_LOG(WII_IPC_HLE, "<<-- Reply to IPC Request @ 0x%08x", reply_queue.front()); + reply_queue.pop_front(); + } } } From b5ec6609052d7c4f1d37cc2d7dd29a447cfaa6fa Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 1 Jan 2013 19:24:53 +1300 Subject: [PATCH 26/27] Async USB HID :D --- .../Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp | 127 ++++++++++-------- .../Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 4 + 2 files changed, 78 insertions(+), 53 deletions(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp index b0b3f349aa..2996cdf563 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.cpp @@ -44,17 +44,58 @@ void CWII_IPC_HLE_Device_hid::checkUsbUpdates(CWII_IPC_HLE_Device_hid* hid) timeval tv; tv.tv_sec = 0; tv.tv_usec = 500; - while (hid->usb_thread_running) + { + + static u16 timeToFill = 0; + if (timeToFill == 0) + { + if (hid->deviceCommandAddress != 0){ + hid->FillOutDevices(Memory::Read_U32(hid->deviceCommandAddress + 0x18), Memory::Read_U32(hid->deviceCommandAddress + 0x1C)); + + Memory::Write_U32(8, hid->deviceCommandAddress); + // IOS seems to write back the command that was responded to + Memory::Write_U32(/*COMMAND_IOCTL*/ 6, hid->deviceCommandAddress + 8); + + // Return value + Memory::Write_U32(0, hid->deviceCommandAddress + 4); + + WII_IPC_HLE_Interface::EnqReply(hid->deviceCommandAddress); + hid->deviceCommandAddress = 0; + } + } + timeToFill+=8; libusb_handle_events_timeout(NULL, &tv); + } return; } +void CWII_IPC_HLE_Device_hid::handleUsbUpdates(struct libusb_transfer *transfer) +{ + int ret = HIDERR_NO_DEVICE_FOUND; + u32 replyAddress = (u32)(size_t)transfer->user_data; + if (transfer->status == LIBUSB_TRANSFER_COMPLETED) + { + ret = transfer->length; + } + + Memory::Write_U32(8, replyAddress); + // IOS seems to write back the command that was responded to + Memory::Write_U32(/*COMMAND_IOCTL*/ 6, replyAddress + 8); + + // Return value + Memory::Write_U32(ret, replyAddress + 4); + + WII_IPC_HLE_Interface::EnqReply(replyAddress); + //DEBUG_LOG(WII_IPC_HID, "OMG OMG OMG I GOT A CALLBACK, IMMA BE FAMOUS %d %d %d", transfer->actual_length, transfer->length, transfer->status); +} + CWII_IPC_HLE_Device_hid::CWII_IPC_HLE_Device_hid(u32 _DeviceID, const std::string& _rDeviceName) : IWII_IPC_HLE_Device(_DeviceID, _rDeviceName) { + deviceCommandAddress = 0; memset(hidDeviceAliases, 0, sizeof(hidDeviceAliases)); libusb_init(NULL); @@ -94,35 +135,10 @@ bool CWII_IPC_HLE_Device_hid::Close(u32 _CommandAddress, bool _bForce) return true; } -static u32 replyAddress = 0; -static bool hasRun = false; - u32 CWII_IPC_HLE_Device_hid::Update() { - static u16 timeToFill = 0; + u32 work_done = 0; - - if (timeToFill == 0) - { - if (replyAddress != 0){ - FillOutDevices(Memory::Read_U32(replyAddress + 0x18), Memory::Read_U32(replyAddress + 0x1C)); - - Memory::Write_U32(8, replyAddress); - // IOS seems to write back the command that was responded to - Memory::Write_U32(/*COMMAND_IOCTL*/ 6, replyAddress + 8); - - // Return value - Memory::Write_U32(0, replyAddress + 4); - - WII_IPC_HLE_Interface::EnqReply(replyAddress); - replyAddress = 0; - hasRun = false; - } - } - - timeToFill+=8; - - work_done = 1; return work_done; } @@ -141,7 +157,7 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) { DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Get Attached) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", BufferIn, BufferInSize, BufferOut, BufferOutSize); - replyAddress = _CommandAddress; + deviceCommandAddress = _CommandAddress; return false; break; } @@ -175,14 +191,13 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) ERROR CODES: -4 Cant find device specified */ - int ret = -1; u32 dev_num = Memory::Read_U32(BufferIn+0x10); - u8 requestType = Memory::Read_U8(BufferIn+0x14); - u8 request = Memory::Read_U8(BufferIn+0x15); - u16 value = Memory::Read_U16(BufferIn+0x16); - u16 index = Memory::Read_U16(BufferIn+0x18); - u16 size = Memory::Read_U16(BufferIn+0x1A); + u8 bmRequestType = Memory::Read_U8(BufferIn+0x14); + u8 bRequest = Memory::Read_U8(BufferIn+0x15); + u16 wValue = Memory::Read_U16(BufferIn+0x16); + u16 wIndex = Memory::Read_U16(BufferIn+0x18); + u16 wLength = Memory::Read_U16(BufferIn+0x1A); u32 data = Memory::Read_U32(BufferIn+0x1C); ReturnValue = HIDERR_NO_DEVICE_FOUND; @@ -194,25 +209,25 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) DEBUG_LOG(WII_IPC_HID, "Could not find handle: %X", dev_num); break; } + struct libusb_transfer *transfer = libusb_alloc_transfer(0); + transfer->flags |= LIBUSB_TRANSFER_FREE_BUFFER | LIBUSB_TRANSFER_FREE_TRANSFER; - ret = libusb_control_transfer (dev_handle, requestType, request, value, index, (unsigned char*)Memory::GetPointer(data), size, 0); - if(ret>=0) - { - ret += sizeof(libusb_control_setup); - ReturnValue = ret; - } + u8 * buffer = (u8*)malloc(wLength + LIBUSB_CONTROL_SETUP_SIZE); + libusb_fill_control_setup(buffer, bmRequestType, bRequest, wValue, wIndex, wLength); + memcpy(buffer + LIBUSB_CONTROL_SETUP_SIZE, Memory::GetPointer(data), wLength); + libusb_fill_control_transfer(transfer, dev_handle, buffer, handleUsbUpdates, (void*)(size_t)_CommandAddress, /* no timeout */ 0); + libusb_submit_transfer(transfer); - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i) = %d", - requestType, request, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize, ret); + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Control)(%02X, %02X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // bmRequestType, bRequest, BufferIn, BufferInSize, BufferOut, BufferOutSize); + // It's the async way! + return false; break; } case IOCTL_HID_INTERRUPT_OUT: case IOCTL_HID_INTERRUPT_IN: { - - int transfered = 0; - int ret; u32 dev_num = Memory::Read_U32(BufferIn+0x10); u32 endpoint = Memory::Read_U32(BufferIn+0x14); u32 length = Memory::Read_U32(BufferIn+0x18); @@ -229,15 +244,17 @@ bool CWII_IPC_HLE_Device_hid::IOCtl(u32 _CommandAddress) break; } - ret = libusb_interrupt_transfer(dev_handle, endpoint, (unsigned char*)Memory::GetPointer(data), length, &transfered, 40 ); - if(ret == 0) - { - ReturnValue = transfered; - } - - DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) = %d (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", - Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, ReturnValue, BufferIn, BufferInSize, BufferOut, BufferOutSize); + struct libusb_transfer *transfer = libusb_alloc_transfer(0); + transfer->flags |= LIBUSB_TRANSFER_FREE_TRANSFER; + libusb_fill_interrupt_transfer(transfer, dev_handle, endpoint, Memory::GetPointer(data), length, + handleUsbUpdates, (void*)(size_t)_CommandAddress, 0); + libusb_submit_transfer(transfer); + //DEBUG_LOG(WII_IPC_HID, "HID::IOCtl(Interrupt %s)(%d,%d,%X) (BufferIn: (%08x, %i), BufferOut: (%08x, %i)", + // Parameter == IOCTL_HID_INTERRUPT_IN ? "In" : "Out", endpoint, length, data, BufferIn, BufferInSize, BufferOut, BufferOutSize); + + // It's the async way! + return false; break; } default: @@ -444,6 +461,7 @@ void CWII_IPC_HLE_Device_hid::FillOutDevices(u32 BufferOut, u32 BufferOutSize) if(hidDeviceAliases[i] != 0 && check_cur != check) { DEBUG_LOG(WII_IPC_HID, "Removing: device %d %hX %hX", i, check, check_cur); + std::lock_guard lk(s_open_devices); if (open_devices.find(i) != open_devices.end()) { libusb_device_handle *handle = open_devices[i]; @@ -478,6 +496,9 @@ libusb_device_handle * CWII_IPC_HLE_Device_hid::GetDeviceByDevNum(u32 devNum) if(devNum >= MAX_DEVICE_DEVNUM) return NULL; + + std::lock_guard lk(s_open_devices); + if (open_devices.find(devNum) != open_devices.end()) { handle = open_devices[devNum]; diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index 58c3c88da2..b0b1dbda46 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -120,6 +120,7 @@ private: } WiiHIDEndpointDescriptor; + u32 deviceCommandAddress; void FillOutDevices(u32 BufferOut, u32 BufferOutSize); int GetAvaiableDevNum(u16 idVendor, u16 idProduct, u8 bus, u8 port, u16 check); @@ -132,10 +133,13 @@ private: int Align(int num, int alignment); static void checkUsbUpdates(CWII_IPC_HLE_Device_hid* hid); + static void handleUsbUpdates(struct libusb_transfer *transfer); struct libusb_device_handle * GetDeviceByDevNum(u32 devNum); std::map open_devices; + std::mutex s_open_devices; std::map device_identifiers; + std::thread usb_thread; bool usb_thread_running; From 08cc460e963f50361678a4b207d8d0c7db349e12 Mon Sep 17 00:00:00 2001 From: Matthew Parlane Date: Tue, 1 Jan 2013 19:49:45 +1300 Subject: [PATCH 27/27] This was not obvious from API docs :( Fixed Win32 builds. --- Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h index b0b1dbda46..3cf9d9add2 100644 --- a/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h +++ b/Source/Core/Core/Src/IPC_HLE/WII_IPC_HLE_Device_hid.h @@ -133,7 +133,7 @@ private: int Align(int num, int alignment); static void checkUsbUpdates(CWII_IPC_HLE_Device_hid* hid); - static void handleUsbUpdates(struct libusb_transfer *transfer); + static void LIBUSB_CALL handleUsbUpdates(struct libusb_transfer *transfer); struct libusb_device_handle * GetDeviceByDevNum(u32 devNum); std::map open_devices;

mXoeP)RD`)1 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¬8TLxN->$au1Ao#&7sSp^P~6`&wlh6s`u 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�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

Ct$HjoaG063F2fM!q? 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 J*lfk&Z2(uUERO&H diff --git a/Externals/libusb/x64/libusb-1.0.lib b/Externals/libusb/x64/libusb-1.0.lib index a0a18c19acc245dbfeb28c1d5d2bf99e4b216f3d..8f67e7d1c2d5231acfda188cdd20732787a74dbb 100644 GIT binary patch literal 558992 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≠L#HzKhlCpRrQ2H7NnJ_>g6E{+L@ z+};;cX0B)8NJae-48=vs40?Ldn*w9|>BWPqz< zn4_nUqmz#-gBH{lK4fLiAXm6~`nZCsM1)#3s9JtxwcvmYj`VZ(4{!}~4Ds~$1G`EV z>?$8mr_f-hc$biP7uPUPXIBOls1X9lM!5R9U^jq?0bzi%zn`0@J3NL3kqrR5Av6G< z3_!sGasV@u{@{=xP)bvTIzSj%zpI}Ml5SY+h#)Ho2=Wi{clP&j_Hhgj_H<#8ftn+V ztjN{R*&med8FZntV#u;#u0ft|o~|yKkpN3%;>gM&HbGLFkH0e{Xkpe$Aggq7g<1=X zAW39dP^ftNxr1!=aP)KWaSZ}zWp&Wx7K3L>PHJ#QX-P_cc^=qL`e0#bu)F%X1o(UU zg~a=ZhA`+r{Un8KxU;`sh^t?Si)V0vf3PPg_8mh)9GyKF)S;?nP*nQ_d%8F~`hoM0 zUx=q;h$}pu$|5WD4E6K&^AGn!q&-k>C=+C0fF}u1G7olh4T=Y)=Xj@3A8&XmBZq7h zqznNSJ770~%z!5gR5LvNLR^D_LIXnJ#gRO+K|zk;pfChk2hW=d$O;02{39Y=TtlEm zmI5>c6p__9Iy<`tfUI?Q4Tf8zgsj5Z-{0HQH9pwYFN6VBQYoV<@C|Tu4v7!&_wjU& zj1O{kcJ&N%b%6(@3aVm=X`ulDL9W5Ut}fs}0F~Ej*p!7hhPcK<+z3~wj#FWftCy>D z2wb5CPK5zM{=NZ_B556{Zw$+pL9XCp3=)OGA&!17jzKOAdeDH=LpCqKH7M9K7?jrH zp&f;&{8)&}enWY}HLMhv`y zU7)3oAV~)IP)`?dtpUoFZjR2b@t~T-!#_AA9vZEnl1!5bJV4p-v3qnCkpO zeSC}5{QGBH3T-GV$_{akz^;kuZi65tMtXGmmxXpj$Fk_9Rml z3o1uoMzTUB;S!+Q5M&oSRKgWhfw{(e2FHi`xduBs2DpL?DUcEls1k5x16Bf60IHHe z3OJz(0vtm;;@yJ$eZlU6$#OwuLxX%Ek|1Ra!cf0*LuEnf5?nih4CH|d27}WqT$mRo z?Cjy{>j*c34<-x>U{G5XWCTA{(8b@^(bEqev;t6Jc(n>@pMum2LM7lq3)KiSPY5ax z^|}ZHyPzQ?9)m;S=^xbkxFG;)5knJ3aDc0;OT3SNIJmTM7Xlqf85rss6bTAwa9!x* z9O5D*VG-gWNza2bDPx1z%7UfQ$$Z4G8cL z3UPG-*Ne+QV;C@3fT}uhEe%TiKCU1&ps)t1VZ=}ab`;zUcnHAF2=VlFbpf|UK&=6g z8Ss#Rt8sSpb9Mye1Fs-6Xs8xsJ_A?+e93)$ zZfQws1%ns^uOMh4HCPrRU7T5!${>L$o|c)DlbXUH%fKTzA8u2DGpIG?R+OI`TvC*o zm(HNXz$3U6Asw7rQd;1W>7H8RoRe5w?2=km4C)~92(H3VylcQnVjmGmzK|< z$-pDH9mLz88I5KE4@Cd#KR~#U37eL+U zl3H9+lwS$cla}w3SzH44&u$E}{R>j_TvE$|Qq#RtD;e||cm(%jsDaxbl$xGdTvAjS zP?TSgT2xZ$$RNkSBX|g*At*IHur#%(GAuEtG}W~toI#R-NAM_$ymL-|aVp3zP}Vd8 zCm6qch*O>O^YT)YOHxz7`9~b=FE>}m5YRZ1zZ0l&6c1{LfchPv9xg}$BLhqUxVz@+ z;~EBO*@LnLNC6XE0jMyH2RGS42EgQ*QRRa{RWwLmih)OP2HfG!zVYs-4$G$fWiT! zjt#EP$<@O#%+o(87;Y0gT+YQa7}U{>_w|m4^`YQ4allo9N@5>hM`sUDKi7Cr0|wM% zXOLxJ7X;bF30DUzn4KK`T)=UK;brHH%$yW(w;iOD3$7F9)p$qe5YI5z2xz$rcMA`u zN>F( z)r9&v#|Jxxxw?Qn=NuGq~#$k{dC(ZwYw-qFt` z9x`|ZZoh&Im4K^@@bv-35p0ul}maRJ#5 zj!KXqD@f2Sz|Ao@1S}3y%mxwRRL;Wf>baes|a=t0c9pgK!RkM(PUu_ zU~pmsx1B($Sddk@yZX5XIr@N`5g1XNLgLj)wr3Xyd63jrm{AXhinAXh(USMYcM z$jz`ZKCqkJd>q}u}8g0;LpC7;u8@1@&~nJ!+6B$apqnFSx1#WkZlzoDgAHw8QB%{{fmvA8%tIWw^&HN`Uz+Q?#1WZ)63!lKqCwK%yb zv!Eou2%MEcRxmX%G=znK8UUc)6~vl)bgkf~5#0FT)RL0Sy!2wQ8Pedi>g*W+s;Io< z;r$bkI3oi{95jp+931cB>gVa|0k-^T^hI8ZYMWFre$38*{(4IH@ncshqL7&5R6g5+4iav?#X!6BeD z<>}@L8D|C88{ip$cwf(8aCHV6ivww418Z@O01eUkxWxy#x`T$LAS2)LpdJcntQ1r# zffTcY6^HtPYvmCCctUd{{9e?I?zo5wfOOv88=P7K(ixDSlbKuz zRx%k~i93oC83rD~Y3NFVQWH}^#(>?2Asb$lS&|BtR%YN4oQ1C0IX|zYC_g8pC^4@% zEwu=221ZN;r4~b+0q&4{3xTG~LW?p%m4AS1P)KAvsAZ2`t7B4r5!jR9a@!nSDS)(s zhqYY%g290e5@uq63ws8HnP4}~EvK|N1MC@4S92%aGa02x@hL@_WvNB+d5O8H#o%!d zJ3;V>gui>dk87B#PrRp}n?KkCAPFW0AGic`_8XicKyu7Ta*!UnG6S#R8n|uA`MCx8 z#hE3ksCFu#C@Rm)1NE>`TxHC_E+`L9jG(gL$1xHz#SIe7-xwwKW5Aevm zkE63IWZvZqxJ3x*!hlAq5aSP^1_?-(kpU(f5daQqkRTIW(8$2R7~Fyd2{Xfm!#smS z9KkI?AIA{aAn*tQNCl`EXJCL0SC*v~6@!W(DF$9aHn2-T^3WCmXo-Ov$d$Z;phHX~I58cR<&Xy)5=%?+lXDU?bK`UJld~BlQAQ&`#udev zWE7<)rhrEr5CatuDaaUwCyYlj76z82A}D1VQNx zWETiCNHTB;Mhh`8lq9A*78K-UCWGt5kjjEo1}O#(!AKznh5%0&-(XL0V>2{3KFrZ4 z)D^{?_<)cg23`gZ@Bo!hK$yR$3j@frCxjUof&(Dq?r#3^pmrbF{WT&C3<014cyLw( z568Q>20I6N288$rF=#Sy2wICUfPy_9+zfSwPVM{qfy(tZ zAVXuRc_l@a3|NFD7&ruZL1CAloS2iEnU|IyUtCgDnp^_*9w-wAdq%m&hcNIla0r4H zygB*%`?xy#F^Dj52;K&1%uE6oP2lk_9HQI|9D+N985lggT|wjU9D?G)3=E(KaVWS$ z25(*mGYBzo2!=!A2GlA9^=H6hp%5`ppn=6eJ~=ALz~B=As%SxJ5bVGj0gzB=IH(a0 zQW6Z&791H2)+NutAsB*4Y03F{X_@KqDTwABNCBwAf}}NA+Y(k!#Fv008Ps+yNlXVd zUVUACA&p*8=oEskdGm2~_HYaWhcu|uQj(Y+<`@LF9Ha!4K~sy0^77*$;mZ$puQSNG zpxkp>kbxl{?jew4KrI9m$G}?%@g)o(Eua_zXCrXZ28l32%=GsG4NftDvRVNfC{#d} zh%#^p{t;$i@DGM|0YKGQI5^foU5=8(bkNubXi&=!v{rxv+#E)+A3Qb)YYxYkFlaMy zfJY=Ditr6c#+NXFtmhVBU?_l;oViKKpachwIjF0_F$W4MC9s=aKw~)!;tU*upmsuh zysxK=PrN6nZZ|M6Fa+m@v*4rz$#c%2o?nP-5Hy2@IC}bk^I*IqgERw&;6_ApO@_2o z;)_9}ybN*-9D<%g@B*Z`Brz`~u_z@TR`7xx1PbUP&-O^HuQEh`3l4Ah8&Xo99^SQ9V4gh7>o z1Kf&3kwl}ihrgceTI;64A z0Lp3GMIZ$*))E?&06?d#KvyM#>xrYFga@vZf>P6AqukI$z5!yGOMHN5fGebgfMvu0 zaQOhLlt2c8{AFkc^*5-N0@e8OCE$pw6-Kn0Kt(L5PKV8}fT}z{0S1NuGiWhzfafT1Mh3J`TpV8l4jqg{1n&tzeOx5Mz!2}_ z7~~Ggg6^(C;4}^za|lW;$N|lEIOi96q!js;=B5^9CcC7jW#*+8gX?Y~VQ~2bT0jaK z3PGw4Ky_*=D4au4jRpm#A{zrk0JyvW1!gG&0|O{9jg8_3s5m5N#)DcCkmgrBbQujedO_`YNOKOPI7Wbh0Xc)Y z`h|H0`TNC(8H0;s&=@nabU+Yfgc%%6;Fhqjze}i(D>#vZroKQeK%}-Ebif>xmvPI2 zf+z}0*$b}ySp*muK>d?Mc%`xnQO9K#=f@W$CTFLXAUAP9Q3lFVXgLa0!hI8BU~qE` z3JCId2AdAbLf{%0+}s7FJy9VB25?*_=jWwBQ#B|`p@UVvj=`X1WE|jWR!Evdn`MO- zC!i@rh&=iXVtffW9zclRnCD57!sKbj3Qd3jFS?9O_G?Za}0S5^voWZdH_5`R+SC$x`1DfdtB@xi5 z2U`2c2;B7m4W**E2Qicy52Fz%MPL4kQ0U`0O9*}-hFt~pQT1f!)C(Kjv#U+U)rN!XF8f+N2es=Q*H+w+w z?-Uv03a;)!Lv$!!0F_{nt~>f*UwjET1VO7xK#jA2;84(frN19I%*-GyV{mT`l&q#8 zViQ`(A+={fm5M8!iyA=n6R0~7 z4lYqaMuBvO!crZmm;#l!J^^4qg4%hDK&4i=p9?suL2?i&P?-rzukqj!3~*frswF_n zOrgPvNQdCv0-&K4P=Nwkd;wJf4{%7G0CEkukqQp);1F;nAq_1SA!A6P(D7JAAxWGf zP!mrQRHK3d1gB9T=V7#D0}?@FxABlhFKCPc+@IlO;1JXlU|=Z81t$d1QUyptKvZRr z$`)g#0<@sPXekE4MjxRC4QL3eJTosX1zbpjO7wWFMLH02Cl*CXhM}+&KcbeLy|FgWxj1xFkLUG#mwT2q?8d`zoNmjW8@u5D^Nm^+3r1 z)Tk**Ooy~8u+1KjxnH=RI@o&Y4DfD8pyjwoS;R6ByA7?is}=>U|>oL!MBTn04; z4nfe!C4q5EaE!b`YKg!TGPo@Qa>FJ>{sXtPky~$|b_}lk3CcsD&PqJamKLbuI4sD( z0BVnyCFX!jDNtL@Cji=517&g0a!c?UMsVQ(E}&h*KqENdaRN|BJ07j44RRD{0S_bz zKx+ulG?WWN@1tBhSKz{o_I7qa1>P&|*2*(>K5e zwEPn?!w(J$&|Gp!Vmf378QjX&VBiq+g6ePv4PAu>#JdOihk}*{fEK&KR|qiZGjM=c zV?msZUc|twaOh$zXfGZ#4+GHvjZKt!7-;iaQHX&7GOh_O-$BDZ0pL*|P|*)cMWBVS z;Bk&`;Km9{6o-Qwo6ayVz}7QBvl|0w1kW8NiR?cHkk3KGBUlqTO4|lh&AW>*FhD05 za`N-DOAEjiF{m#NuEanE4X9WF4{g93g#VDod*kE5BQoj)>XLX!YaG<{B2p>HZczGy zR4GB=Rf8OYputvH21e;PfcCCH6F#Csj|ZoH&@fO3qKrjJ`ru&3DGAH(kai@fr3ac; zMu~as)5_4A2s8r;YoIyjr=)u36_+IDD9Jne_&EFfg@MNoKnrj{4Ipr9+0Qiux@ykHGdKj?8AfZ! z$Ac{ZE#U=e0xz6~wwpj@5NK>Jz!_ZKfC>gq#0XwaK4b(B)Jy@@c1TqONFylDf?VB$ z9eu$WTMrTNkjxNYl$x7g1{vlD9e#6y3pB~bz#zbQ@k3qr-ZU-!YpZw4S}qBD$-v;w z01|(_VBN2SYc>SS%>BT-NA{2;14B1hT!r=FeRW|Y<((nC_mm^8IT#o~hv*3~?o!<% zkvQX|jXG-%?~>oYPBAbDGlI+s&V06|%s&3Kypd#-US>lV14ArWe0{{^xsU%<{c%}0 z42sMkbDYkpx&{j!Th?!M=Xd|kovsWF>0t2+V|j(B-(1B)l_e&pT$$kBMis%QUQjyzb! zz+l4yGXGfhrH1odHg6 z@ZOaVKbLp)eKfE?Jv)+tL4g%y&R4N3b0r`eRjId zz+k}!GJpOY!GsGOQU~Q_cseZ4tb4@3Pz4r$xM|-NJ;l7}xS0nuFK|ZKGcX(ki$^*) z1X)f=l4}3OJ#p%$Hai9e4t9_^O;=82-(4mq6jY)5t4;Tb6a#}FSiCV#{-=xs`~BU8 z@8@c!TNW}fOa+UxZrB_!$=UGTw53Nb*+558KjaQypKv8B<-#&OT#c z(B=Y}Qy3<-bcdCKMBY;d!*#o-#4<4CfyF2IN2+*yR}ye-vQrIK58!5C*a;TzxW*~8 z{oU*dI%l6AIz6$%iGkq{SUk6ki|Iz!mWjH|_x1>Rzqri6;K&U!|3mS|T?Y%k{W~!G z{Wp18%>xV!tzhv=$%4Rj;&ChaC%0A1yRIJ0z;GHY9;f}37JqZ`QB`6(_x}j1_q%o{Ror1>^X~qhEhoo0T>(FsucO+x5gPbd2lzEm+Lrt24KB9|OZz zuz1~7trd-T*M^I}X85g|x#2bggDoG({1dkd-hDpuJkI0M$4v*Pdnq$8w1CC;EZ8~2 zig)cBRR=i+_qBIcGccS6i?3h$CuogL*NvsC`UO-NPAD@l2=IfO(OM4Eh2f^C$IZ9#C@E%w7NUaZl{0ZBH2(%E97An~K&o z%?|&@^kL7XhjUsA7#Mbf#ovGBk9?Tr;MpO&Hpe-k9(1#ZAjq7GTod=)Sq2$T=KqUG zzr61V1A{AAyhkGa!t@|{2{R$q*?|eiLFEis{C8s2=Aw$T$%3bAf7u$g+c7X)1dBVU zY_iw9x$xNi@SoX z5(9&tFv$F*#I+}QA8uhz{8@Co`Q7{p3=9QeasR@YrVj^#q>WFz?@9T?YstU>TDC91 zsGGjw?m_P3f^`C3|Lt_GD;XF-4LAYD`!k}1sE7W<3$3DZh}i$dDM=+*0f(zFzNAgMFxgrA|UrnetW{D;8dQ) zM0Gj6%C*OSFfj0ng2YYc&%VH+6!dDNYl;YGj@E4kh7hp$rp!D>3#-D_O2_zbszqct zGce2mi-#t5Y!}*G`8cWaUgGA~SNjHK%9IF$ADMcFb21_oV8kogCbgWlbkf1i8d)+c49u?vM6 z7|OunUTq5sob&fZ$Q$WhG~PYs3j@Pmuz1D}shc5-lpVGy1qAuLo|nkLz#;`Q=XaGr z;Kt0r%-L#5lRXnYKV@L>1dE6HORYRnHQ|OnXOgw^%cxKWhJLWP)O9~@EtPBkr2LOR zEwR7V&cJXDEY1#Tm1*;o;_kW!(DxIW&6{?^B5RDg2khBl?9m-`tD`nG1JnPEg#-)ll0SUXJGIF zi=SbN_$S9)6q5gd@&Bs&l9LP!Q^4YHvJb|^B&x2Rp(HMs`+LoK28J78@qUy3Pe<<= z)tMHAOu5@o9>>6-A_p=*LHF*a*v!h0w|UzB-8|oUih-d3EN;U(xB5qUUeU&{^0JEy zZmwrw*a{Y(an)>Psl0sLwSO{+8Ei%`85mgQLFO>rIsSd~nM|$f%1bAfzu6?lz~BuQ zpDDzAZCdZKwSV5^F!oM;AjrTl0W4nWsWGc}fnoJz@0tRQ-788N7(O#FFkA2R1__|Y`QDcSIoD!_+gB*G5Gh$+Y~0FB`5Wq^*DA={MP;)>iH3e6}g zNT$$)^31%X#Nt#6O#zJ(6oWTx6;o(ZQ9*J_GR4kG%!w~9EhwPSEl9qix^X2%naL%@ zxUVb|d`M9-(ji4<@bg__Ac0PdIe5}DvOi1nQc}|>G_Rm2zaTS(3TZp9IFmxBK!#4h z9;DEu-5O({+(gRUq=a#Lw>YEf}aZemGEMrt{zSjtLGE-8i{n4@c`XP{?^ zje~xa4rRqrc4|>xY7UaC$S&B*GxG{kizrP*pi-%%IE9$-CX_`|GV_Ts22Tzt&CAX! z&x063a%_RlBa2DS2d!#@n1DZI@%sk6PK_92@c5>nI0ICF8B%Brbef+SQ}FvKEjh1* z($b&S#LpWoSuBOftY9 zT6w7@<=K=Plb1(S0}X#@6;~F=fX2z80fRsG@OUaO$=HBW4`t>NnaA+BBPAu3;+Ah& zYEe;f5mAAQ$0g;Nd3iaM25Wv!Drj2*g&~`glTN8a$}{t*Qci$!9)-Ti&q+0+)QF@k zP#b_4QwU_Al9ZgxB+AXn$;{0xp)`(is!}To67z^^*WgdM$wigK)h>99$)koL#TltN zIf(_7Hr0zuiV|}&)1g%qC=HU?CI-!7#iKM%NHz@IWXsGeA-dEhm;w`vpj`*@+)`YU zl9@+TTLMpP7pE4L6%^%{5t9}07y}Agiu;J=nR&%!R4BfSlM{<5%}mhtFr@`nInk*F zPv906BfY*9gSVsRyLtz0}Qwxle-l&Inje?eOgTC${ZdHF_r5CApxIg3_D`N;3ud`ILGoH@CR5xFj`~ zn25p?G6hA&8AMf;c+AMmrPLLmu?Eon3B-5?e<@s+NQKeO zEl$!)COo-|-(SV$1x1;8C215lM@oxwa$$`C3Oond-Cc~@GbX!b0t#=+OXJME#1x8q zJJ15qLN9}XA(@wfA&-H9fg8MH48-DMXyj#JumX#^`9N7*3?Bp;7>dAR zU!W{51`E)BcCeTYl*PpWI=LVhECxDH0mR~BC=g;`FawK~Kv`T29YPEYpv#=N8G4{B zF7SFPC$PF@LJSNb78k=oAqEC#u-H*3i;Ll@5Ca3~qHAu3mrxcL1D7xZgDY4aAC$$# zU@FYO;06}6gtE98K>HFw>wLKxGKC>4ez_PXf;L8h)lG%6xEQtyGcb69#dbnjTnx{I z85q34Vy~bqE(SIc1_p1i7#Ebq#jsz5fx!nXb{NXyV%Q|gz~BoO+XiKEF-#X@VDJNr z&4#kL7^a9bF!+PTWiGd*rtXB-m;$kpRVql171Lai{D2t21M~Q*K2&^su%Hm?kQet2*0gL59SzHWV zN(>B%V6i?Zi;H2g66kI#ka^3YEG~vaN(>CBXV6n$g78k=WB?g9c zu-HE+i;F=-nSlXxIT<&D1eC?apsmcnkO5Yw4`p#NxGOU-fG*GFX7GlxxEPX^85pv_ z>e8VsE`|nW28L{~SPPWJ#Q@r!66~bl7~shOy8H@!ylD$uBBNO#zET zwuFKXrEzw44`6T%_6_j}buwlM^K=B$t|3AGeqdIJCzx{ciSTgt^k4uT<8JH`>IBjX zmIw`Y0&$`D{xIm~@3%TqsO8o*NiHMt*?M(>{dblcq+Sx7AkT2Xe`ny^4!*9BJclm` zc8D@8ILWr}1_K&!JiM^N()F_7j$VcX{%ZpZ6XyLfOFeR4up!LFH5in28tks#+c+0= zOC6fdq0MywU9HBzz|aA`!47oo-B9!qp@;!pn>vvGf(9>6ClGQ!PK{KO09{Lo&!~ZR zAE=ZzWB~2t0bM}2oE^k!U|?YAW(Ki37#J8l!K?`k3=HSMtQiap4EMpT1q=)fo58FV zpvzIgEYP*~JHV_R3=9lUz^nrd3=A*9EYPLYrC>Wi*BpNZi-C%a9f9KZx~a|9F2%?V5}H)k-x++4r}b8`g~%*_o5CdmFEM$nC$@!6^cC2`#8C&&UwL3~9A6 zGGs6_F#H0?M*%Yf!$MY&>noTU7?y!q4a^J-hrz54W(J0jVAcd?28IN%>t`@CFmQue z3z!)grhr*1m?8V07#TJ&Gcc5Z#Xva+k~R)7GcXu|#ZE9YFsuNxE-*7NtOc`fFf%aR z1hfAC|NkFWzR;p90bOvR2M!a^#j>EwrWqMP=RJVxGe!mwsS1`gU|?VX?I2`iuwY9H8&DX*?Of1Sc}510WJZr(5eJW6mx%?S6v_a) zny-ohlx+CnM?-=<3CaW@numdb;W04h8|EN+G=P+2YpkJghVnPDEyZxlQ_V^j=0I&)Mk zJi1?cbbs{dtWk0B=)URk{cc)X8ozuC$SMYp=9B-84|sI{`?SuZmqpv-`$docCq1kW z77Ot2;|7(N3?BavcR2rlea)jAY!t}QZjedMM-<{d9|m=g`ay*$1E^&J3gHw61_nI_ z)DQ+$2V4x0Y-$fb*^;5Opdhsfbe=OPKta(Db`lB!3Qz$CK|zqOLFb+LGZvQ=F@VAn z6q2B%085`-c0sCqyZCNqPgC>w)l2?qmL2s;C-2`Du|3PX@CPwRm6|WGysW*D)|O zfb3rnjYd#5;09+e5Q_^Oc_0=yI2C|cTnxsSj1Qz8cQj#O@aPP*@#qY6N$Z>#!UEz> z%wb_*@aYBF$l%d@Fvh3T@qqv!oZN$*~rDhz|iZYfXG0dfj@jY89M?w zJURmfJem(Gc>F(6`ttK(&_;RCfD8*bjev3n=o~*gv|t3KLXcNM-N8qoNCa^ZXTCu< zr-MqJ_{_Xa&^f30iXKo-!5*Zb?mxt6NcRyGq#%``VGxk`Mre?3V_*Q)#SD8G7#cuB z8v7U+8bJN2{R|8Zpkajr3=9pRA%cSp3=JSRABG0~On43gvA7sODHg=yX6RvHU;weW z7(gYG0H{Qg2nQEX-8VhDJzb37g32sTNLkaF?ZUs!S*qngNtlP_YEXQX_(Tuex$Nrh2C49{)UhlP@#yBU1e@X0JsTwI)u|&7GV1>^kLKeX)*osvdUThl z7wCBKz;y4C@NNP09}X;DMnHA8w02u1(kO&4Iq0#sRL9(Fd#mtUOCIa&@czov}a&wSjxb_ zaGrsoVLQYx4acG4Ab(wgrk;85)B|F1fzu3##SO0GKrAi>khvhYL7l_^5`~n%5Edvk zFF`4PK`sQT28A+04TJ^q9jH^m3?8rnnGI42!Vq~>J*yz*vNAESra;PFnAsp(Av!=N zLRg?|3^5yI9!w>O4UtDR8={htpN)Y(goA?636||q$xpW^hz65H=^g90E2~w|p!h`v6r;m!pPEfPc zqtiu20b)n%fzogY%cc7q*l3UL)2#P z$6-iLWkA$GoeZD>O4PO)DCp5APGI1sF4P>58x*)07(lIJ zP;ChkZew6*05#Wp85kNsDWac&p#e0RGMRy)p`L*O)b?#?W?*2L%D~V7^4|;wh6d2U z!9oUxhSdxV42u{T8g?@$)&u-4a~U9(7$5NIOaaxyzkRx&eOl+M{nX?8MNjK9#e&E=#;5z> zYi8f>Bc8oJx(puOmmx+$@;o$Cf%NdB>Urqh%cA4couXoJ%thlrgG*;AgGci}mNG?; z-dYxq-nc*f`}n~ob+FsSlrkSIWr8<+)Z=|Nba+8(s&mxbXD0|UcPu&f#*0|TUo6voKF z02*#Wpn0|Nu-yeWT1ux1GcLGUr|pvg3U#-jZElK6t6)U?bBaJB@s2SE7; zVl4v$$UUGu39A1=bvj6VB?ChPsN=ngfuR9ZR)HGipzizz28IUEq~<1QD{(tCkM3Y# zXaJR3I~f=nKrKU1>vACj0|Tg42^wMpwIW3r85oW+Ff=GJg3Gi99ncUM149F7Xbsff zFow!oGlI*;22l8b+8Lmp@nv{r17dN3b0>(!%>eQVh{eSKQV;SA$o(J;5{2Yb2n&=? zZ-VnFtp5fp>_EvHp$5VN)%Kv48#99xBLmoMkeMJ1kw?{YA8szl%;g|u;IzTO08tIH z8^Qva`x>koqzYs(-Jkw-Nf zqEZpmE-7JW;7Z|RU=0DKeg?2TAYCByAUZ*PP6!Ls=Y)g{NCn6q5Dmf*c~m6jQVQ>fr_ZWJ?4uI6z9^E%QS`U;ecwiCa-tqhY z|No#?dGukAUT}lLqx&>eUnit&Y&}qFfk#dTw_M3WY<5aw5#(= z5e-&N{jgvLn@g-KuKuA-Sk!{eCDs-GVAa$Qi|@Zdz9ZHZC&8+z?}|dOxx~7{8LXQ6 zu6X^6l(5(fR!x0Zq=L;QHZ07+s;Tda`#(tui;ZB_)OSTB*j!@6LL01_`mVVA<3DKp zzxjwl^kGg028M}@3=Ayb{$L-N1sc3Y#08)h4a5a&85kHK zE&z?7HGxe5^?4ztfX0(R3%DR{?|QH-sC@*HeZv4*-o*lLf!Ba#85v>j15Nls^n#{& zA-2geGB7|~pvwpg7f>4%;sQ5D28K$oDgJO%K<#@_IIu7zF)}cefn~GdvPF!L#bhiD zb&L!Q#bDWXxGcyfh~9Z{+m^sxuo*74lMxmMXBZh6KvT>t3|HZ%++l<)PGeyJP5tJA z?f3|n{Q;L{VPas&0?YC;!NNd<38q(tiGd**b`=u?Lo`?xG|dYN8y1HBaIvFs z7l0;rBf#n&!c759?t&I1vM_vMVqgdb%l?JSvM@uIE3zKYh-psHth+_s#@`3UU=ul2bTFYaGEPrHSsA6Vd@B!P=47Z~TE<25x zfx#0jJ0C8)3@*D3ZrdKX3r@quF2Y>^S_}b7jVugr;ii0HhAg&Z0XdAp8Egk=X#>Q4 z0xU3D85RZx2e7Ov3oHzD;Ig3OK_Ow_!~zS0Ko(dSgo7qRz{=Hdq*B!o~90U}4b2#=sy3R@V(TWfB`?NiGY+JT}O|yDSXL z;j-)Cvb(@Xwt|xDVYuumxa=*sZ4clscn=r*3U>kMfLC6y3k2C=VIaW{Spdw!pu*0; zzy+4oh0B`2WgXZV7}&wGo^aU!xGbpO3hJ$b7U=4ujo75JGl1vzYu+PhYavx|i8$1#Unh5~)ltCC|CTP?JWE^O07bJF>fuR93`*4MUp#e0K z_XIi;3gUxCn65G~G>C$Z>1AMOmKlYyaOITHiJEe3`LU1kP`+YAg1 zo0%CvV^j^6EDQ{H85kP&voJ8+V_;}-Wo2Nv&%n@dnw5d!0RuxrAR7Y%Xo&wh8v_Gq zh#$111vJDD@+-)G(CEuQ_~;9W#RXon3Sx0HfaZ@tEXXJ+$WI`DfG|iDGWr5xfyOIX zz-w<9*_asEjF=3NZqy2AK;k$eb3knHeM@19Ii;zt72#l|C?a6>C?X7wDP@iUp2kLc zDLFX|=x4lRTq6-qScxNHB`_5z7reoZMiGUZh9U|xz$LY~q$s}Jc$&F#~Dtou4dvh_fz4}@jQ%*en{qHTNUWW#1ek6cJQc}y}!8dJ6F$fBRCh9w$^R$75B983mf3Gn0|Xc7T3xfh?Amy(K@EC3DY!yE(h3#i)SV_*QUz5$7U zg)YAO#=y`38ruENz|a6%ZTf?Op}`R{P0|1g>%R;P4WJ!8{}>n=Ks!$UGcYuORvs}j zGBivE4RkX?78S5CGBhk^U|?WnWM}|&4%rzQ8bD#k0bM3HjS;jf0~Asq78j@*V*s(Z z8J;jOfLW002;^3f`#=~Z52=nIEKqec2T~o0a4?9Za50F4a59LPa4?7j2^3&NjdOl! zPKrWaeu+YUQb}TFo&qT1l2a8x0j>ZFS%tLxA_Z`;DX5lODX11RI0T1=g*%3LG`~qe zovn-L-l76(3HWwD^z8lt%`4wZMO}LRgj|ge7+>=2J_Ak3oy;Ds|4Sl|v%|B>@$PF7 zxz+=vjt~|&tMIpgRumJFT}q(YOZPe7?jy#Rj=QK>fUN?}j6+Pv zu*ZXufq@izKpk$VJqE7EPds`bfdOK1^N*?$1Kbul z_J*i1gYrMzL!k9H-99P?;MqxNk?;dFgCLJueDnsO=zCptoB@;?TtIqZ4h6f?r~9~1 zXNn4{6HAFHlVEQ0=sx~h7u9xHxdn9~dYR?X?V}QbG%K0l7!w~C8+{m*-yqYHpnZX$ z+{6OjwFN1;QsD~*Knsl^C088-0|TVw0!_>v1eaW(*725sfdQfyR3Jn2f;v;6U41MJHjE4m5WS#O0nrN@F4+y%3mPtg=*?kd zV1Vca4ckB_P(htNQ2ETlFqIKz2WUV9qV6JST|T%h1`T;YOn%JBz_1l;@+-Iw1}2!v zJWLD>o4~TdOfd5l;If)buJ7^jhG#6S5y7`$Aw4WASsDla`ltLY(4pel47G3)@g628lxIB?t>t60HN*OOjG-4BVU853m-nBrpd+CQd=g2s9}RnK*^*woWWA zPAw|Q%+FIuOU%qkO;ONQ$S5f(u+rDhEl$bPgC9b!mzg^ zY;I{}X<(?ASX@w{kXfuyUX-7guE&rJukR9*L8q50z!N>Bw$n&VE-6jS(ZsCwkaXsN zu5>K{Rg%!u1ksCJQxaiQN@;FxB^HY?s$?`LB3lElkU^C?TuppRDkSeZg7!`@H2>r* zljoOrVPG)6)P2zL`-j#`CH#)f2bdhY4>^BEZ$v=|r|iWnIhK)Jmbnv#!!Q!S`S z0I|5htvV13vZflug0ABOE#Xt}Xa=?H7#Kh;{GTNfSn4)N#Rh4x8(#wRnol$C1U1*2 ze{+^e@yk1a0{QUwkFA$Vc$yC~bsywkf6)4H(JSLi-C)sD*5<=Zug~^+GlDL*MR#12B2jF@!*9%py3Nv z@LrSK;F<%p&KaB5Rj#Mpk4GF44~!p zkeY2O0|R(qgoOdL1m+6Z6j0F&F?loGWLTd8)Uz-|OF>r{AWQ#2(;pm&`X{3#F)2Q| zC^fMJl8Qi$HBgwKVWh>th)M;tb{rJ(&~%lW16~cp07+HIZG4d3pi~8FbAUDyfDEr< zWM}}DUe%0{g+VpY^1XqPp#jt)X=Y?-0G$`m0xE|Y7#LbXkDY1a6cnM!%hYU2GG_Q&|*f=Rv3_9L444V(`k6B1hF7nVL&X%Ru~Wq(DKou7xCZ~dnvW&#y426=!q?}X+ z)igOjUIH#ntxb(TnTKn;YM^Z&SG_W_UQ!vY@G zKZ?L>RSlr4QNTJqy1~;~!T?&63Q54A zMj&LZI%xh5A`7Z!AS}>Eeuz5IzA8vI0408ICeTPOXkHJZ4wU2}rhrzELBwFm8+3pH z`sNbQdTWq8Xzlo0P>lwPKL$vcr$ENPz};a`cM>9nLOL))(=MnYL~eP3%mpP~&`c+2 zR|81bbWjx!+M~b-*&{TU5i+_u57dNUU|^UJZHj=zLCxnyj11uQri&RNYulGV3rf(o zOGuRuVsU}9IEcj!KC%GB;$i^#2jm8jy&wz{g(OJ`3zQ_Efvb1e8Z=PR3{nXS4TKs9 z3$#Xx3$%d|v<4PzHb^B1L*!BQyn&kwG82@`K`K$zK=gsk1vPq@!Oa%Xwi%F05QfO3 z>iGmW7i1=A6(C3@sv3wskh%ZBszItiVF^+R!Vq~>J)qf2W(M%uHWN1RCP0ubkZMpU zL3Dsjgs?z~1Y$O_D?q9t@~CD*RD#VeVPQZH4_szL!UI_)F0&yj!Dgp`aufsDe2{8f zW<%l-qyl6r~Ba!R#659$GxBx zxUH8;M6(Yldi+1ge29OaVC$vQkF5tB`CX2>KuRNMd18FY@%txG5fssSsr!{9zsuY1 zquqBsm=8F1^Be{(58lGSz+ip0)XuZp^|esdccF<^@peSAJ|?({%wr> z+e9q250$ce{6E-wsq|gzfl~JFqc1_z?T)=(|BNqnAN~H(rPqlO+?H~*zERHQ*nP-R z`vCKe*UXOEH>~fLcy=H5U_Rj5&2!kr`fRBgvZXK^yN`e^W#Hc?z`u>hLi-}fz5}f% zOW%RYSJ3>AYwO9!2)fwudk>G=LV#oMmKa04WM}{_HGag%&;Xhwe!+85%^H7#RM5`Wj3O41XCJ8bB%JKO;kf9_XkICdf8i&^ZK% zNM8fQ;$k?@$iM&!Gf+5zFh~?qg+f@M{3r&l6k$~;XbA{NC8!EOsDZFR6^Ig8HAof6 zY>-M2hRCDpkpZiO6z!1qB}f-YHON+o4v>iu7N|;sm<>_^Qwd^2`Q;RhjZ2UrfeC!w;!aW+_fKm#yL;`OZX#o#EcmHbs#aPU4eBdRhLFdsqM+J1E zhVkvzOC{>?&9B`TJ$ijq6kLrDKn7)750sj8`=}`VKWu%!=n-g?)WFsFq~i|I9v`?0 zA&?#eaAD@r4IY7IF+T8G#H0HJRP22B4KNE-a6zo~=f&v;cD3_C3mYM_J!T~C2?t;hez*{(^p<6g0nhO$(Qu9i{TmL|2 zfXCxNO<&|*8^|A^at2hczR}P zD4ZA*Lj!05pCl8c2`t3~+0G%&#LxiR<}1s@&;V*K$}vHDbMj1(tyl`s{B6nvo0$Qz zxIhaK7(gs;@Ei?@#RcB50dgxW@Ia!F{0(7&a+)un!?mwRcD1|I*mAD+!NKN(6{J-YwBX7TK{`RUnx*i-vAL>^lM zuEfIe-vL*vLq&%`#fJlIh6n7n(moGpYs&ZlXq#66ivM78;E|ly_d#1Qk0`{)MIQ$B zVIe~=poRiuR~D$hnhkC&fcoR04YrW!T1cY@w2BEL3);N}X}CBs!ghCqA{Mk32$a;( zcW;F=GJvOxK+_yfh~gr%I6ko;6M7jNxRAg-Gy~d63Ce|#rUT?oIR?<^3}|Q%q|Ki( zu^^KHRDOVzJqDKw#i<3Ly_Mj8FDNk~mq8#mfwDfR%?c{?KuI)^3DU#}W@2aniH9;V zH0U!hFoZKfdcP4&3=N>-G?Iy-0n|fJhZY4H!^f1TvR}f#C=j149UCWC3!pCrAg# zEQl^pVF6)*5(UJ3P|*sq1Edm!A@Zo^$AMj<$j8FKN3!`KUxMranGM3&%uj)s586S7 z=5|o1L3E({0^)X%c_8yaGzddfqPiWTl97Xjfy0QUfH{H505rOVye+f{_SG9WFIJRmq?>^vp~&HPv~CN|1DrO z&A$~&jZu~L20w-=a_LRJ{aU1Z$~=&9t(QtT{~zjvaF9D)ppq#9G_;oB*eMTMViMrk zeFQYJ>=+N)Na`39e;Aa!LEF1oz~{Sy+QTg1Q!7E|Z?G`5GcYjJg9|9o$Z-vrg_xgR z$H2f)2^QN5T4@1hfwDYgcJv{5n>T0(4m4AX+SdV%IUAt0aX?*W(011E3=9lQLFp3| zqYMn7d#2)(a}qOi36xl%6OTZhokif4Ch!xFWTC4`K!;HIGiK&Nr+MO`a~2?7pusuN z{2sVSiw7N_4KBf;{UlJq0&xlh1IUe_LJZUu1I++}#B-S#8bI#OV`69k^`DBE7#cwJ za48dHw7HB4a@~VA7ADBn@m3~= z2GHnp8xunV=#04zCWeMnpi}Ia7#gmEMz5I|8tySLF!VDqG`s?BMTfR?Kqs6*`Y|9D z7X#?bIuMH+bgT*khz03AfcymV2MB{iA%zx%#lgV9PzKJNj50h7GATR^G9layGA3LM zGDZ>~#2$!T5IP`$JX&2^lCKMnEQQ3pO2mX5axCJR5d_6GSa*DKeraBbLV04bLSBAe zRccW__}mu6F%1f!bG5o74LrJkLKD14uZaUVbMkL%**<}RfuVU%GbnQ~)EUA={`Y`I zU|g7jQUU&LQ@~n0x=(|RfEn2hnwaS>Q2~uiE5yG9g%BvFA^8Q=E`j71(E6YraOwx0 z6$_CC9R`4!=0V3Rp${>G@)zjXgJK2-1_9WlJ2cG~5j;|Bu8bS8!dkQ-(&L5^3M#RQo>nFmeB^O+z=9V~#R z3#Bqa>@D7#cwCUjt2dt?)v;ntP8^c%_ z7=##)HKv1(vpd!p3Zgt(|Cj2Zm8Id#u)_g*-T#2gMo>WsI#|OX{;)^4zl%?=kBWy+ zuZxNUbkiz0X*B;}D%IlO?xNz5*4Z4#!oUDxd!%(XC$KOuK<4t`Cv<=fa(6+sco(Rw z_vk(cUQ+}%5^V2ruwmJ;|z+JoK)cBOt;^d;tf|C3qaES~`eV{l*!_eU;P~#AB)(@-!2`Oz0GE=}!N{||e zNLgkIr04~;9+5kaAh&@ME^^1wff3eSJi5V(`L~_=cgUwx<%CtRRMBf!qyL~Hpu+gA;|@?; zcNb`dm2c~l5>d}?$XOY##!tY4uDvcQoGw3vZ-}1L^1C7QWaOB^1-UGCh z5EN6Oychr?B061E5;|N|Quwzyo2I#Rx~N2Tx~K&3Z$FsU>7x>n#(l`8*H;u&C=Iy6V({obf80ey1JtPj^`Ju<*g(d^*ASMP!n%}@L3QLs z!@Z%*p55nsI&+{i1I=guJN`TVQt1Ex|IIZj4x;?6hZrHnPFz~^4^I9j(7rtW?H@p! z@)(+r@pND7{s#_cpY8{sFg8Ffe|iH@jR(!gdN}sxsC)(4vgY6a|32NvjW59l!d&>b zMVo@kI2W+OG{;UC6*foyZO6eZ4tNmux_tqQaDl?W0d!CjC_sF>kHCVXvqVM1wNpj~ z)bCeFb3E>%!qUJ7AC5D}9UkC02y7w3@bCYB>k<_Q{#MW&uOrBjd}-D$DsiQijtw;` zyi6t9s9wiu(zd_<|MPFZ01iP%{%zmE!3R5}t&`;=jM;4Sk)fo>6>O77H_u1U-VhbY zG&U&g3jY58Po#ye#4DBh`~N>Um%L^IRWBtf6&~Hte9~Q`QUF?unSnGS3Cg3;wte(r zP^k!NPP2e73xJG1fR=VZ#u5S;85k~t>kQCj31s;qXtD%!Y%L2zCg{jtuqG2XsgH>A4+S8d)niLN`4Gq-N1NE+;BQmLF zpc5`LQ@|_iK{Y636t*a}B)%AQnyDmog}u56$eiSq_@vUb_~MNGq7p<6n*f@jg*p)A zM^Ft5>bitL#p9VFU79Rr$cZ}H%#ekWxy+FB7xS1I8bGTr@|htgnHDfJG=ThF$js0H zT5VCx%+LT@X;8)t>B3YpL#BFanHd^DT&x{NV)0r6>KvlpjW`+h< zP+DPTXaLPpFJfkB03G?f7*w+}F)*xTW@rEv|Ld3;8bE1cJu^eY6D9`GA;k?ZnHU(h zgY+{qFzf)eD3}=-b}=(Fs53J#>}F!=JTBr$9h`Hz#rxujury#xH1)hj`G}z)S+?FPlrh!_5FuU~_ za27a7rb3p&;&v5UsDT{?8uEv?@<7dQ59rb`$kA;DF5PQXK&M`UdRxBT4_*1UeE>D} zx^H^4UIMKUbMk4hU@Xz{>GV-ifHq~I6(Ov*1FliQ=OMj3$H>6YP$j_tYVLswi&F2s zpe~VP_u1~NU}YZN=ejRISgi+2bou2O8Y(0hN@f2a#i6G3{%dyrZ4MG0?h^dl+$CBL zU|q)G0cupGKpRyMr+`lJ>Ts5D=_oek-{x-e?|?^VwM~b!Nkg?H1Al8RxS3GE23X{Qn{1E>={^f-vhDZ-I{K-5jS46R zL2Zx%q&5i1jnFnoT=ZcV%N&*TQYC1DfF=)cQw$|WUN83Oc2V*1?LOksebuA08Ptyl ziG+A`pY}j>wPVsco6|tu?rqJW9)5?j6#q6CmAH;(P)8r^#?}KR+%6s2QZ5~s1e&4#dpS)dIHkd{st0|R(Mkp;XG z4|K)^3j=6~7Bmsa0v`T@h=B$TnZbHNn-(DEy@N0K1#N?20Ly|FOhH;~&5R5T|G_P+ zE=C3hhz`)U9f-Z4MHY}Y9;gn6=wJsev;gbi16`H?Hcu5)GlLfzgO*$T1j~XhZh%aG zr!z4yfUZA)oY?`f12hN?vEwAD_6F+!ov{JY3u+5~1&e`B)_~{$kq{jw%nS^lz_QlN zFgJU^+kKOn85lr4a>Vi*P~t#e;5?6+0el`RhzC*GK+A=gA1@4pl!|X%nS{ntucR?85;gFGBEsOW@rE{zxvP2&|n10wk!+{ zpzT>2EDQ~?ObiT6EDR0c`70KNh889U238h^hBhV!26h&P2G9^D4+}#BD0lF(Ff?2R zE$3okXt=|~z#zcF(D0OrfkB9cq2V(V_^Ou%K4u06F&4=A2r?`T4L-~a4C*Wl4Z+L| z3{or%4WOYE5I>QbfkBdmp#gMl2Z*1~489De0o1Pn@oSkG7{o#Df$9fcc%#U|&@dg! z2aRT3hqp;VEG`C6SbZVUQ@KO$uRwhIH;i+K!;C9|CH{ zF))Bujet~xWFhK6tx*UIq~bkT2Ph0d;RjL)!Vq~-n-RhS>3$4W32X1d%tciLQ4O*I zVlGG($ZU|AAPkX5)dOnlGc$mfSdipqka-~UK{NQ5*#{eRFc5;um|)u zhF;%dm%WXv=gHhbpO!tR#0&w1Ui!!Lyr31=QXHH%bk>dP__a zKvNYFF5PXQrJJDE9%ut3sF4V7qVM%20>J2eT08LYTztv#LP%7%t+ad>gF9^Lmmzuy6^%z>}WgDepS-|OPp%Oc|ezt=??{azPHtMV8d!)sRXni|i> zqo6|Ev+)?1`hT9k_5Z*B|2H$Dm~Z^Q`#Ar$%O05rK&m`?eOMB}VcB}1l=J`b=Kst^ z_g}MuDDHoU8-BACoi{r0nwfvwVUO-!P;!7bS-a<`d;q1F#v`C)1D_m^i#-ggPrrl5 zn?TEt6~XNo(A)xq1!{X;0=F?h6S{I>SI@+KArWk%Sk zNc$LJXETFNQ-f?(2AzWjTFt=1;0$UPfn5MfY@oRt&~!TbL?YfakP9C-8&(2a!S{p-mOgrB1M>3P>KYFAFqH{s4646L@kRc3uMm=op6= z%nS_JHv58B5P@daUBQiyoc#Rk(gN^c6=>%UC|p4Yw5LO++d&NyP(uYGjA)R6Con)&;VK}4pL{x#J~{C!q5O} zi${ap0Xlh(1u{Cs54u1Ld|?cT#RVP{0ykQyi_zdW@_AuThf zB(+EZy2`5*bRiO&7*q%+nLzf1RVM+?gmZ;$TN{M#5E{~z%9f6&IaR0_fI zEagRT;!D^aEG$c}yq0q2-^atzJEc?L|NsBYmmL2efC$uZU2yC^;M8El!BDD#<`hsf z4sG6PWTLSIt2c=AShX!Ff$Ap#jv#E?|Mo8yB-MG%R9ZU?^dMEYzuFVQ2s?gsNs?XaJqzUdO`F0IH7aSr{64 zK!aW^3=P7J3=FN%@~Dl4p}~=nfuVzip#c=$ozU_?4PG9ASX|%(V?Zo!29RkW78hvc z2l(VlsFxT(qLA_c!UB~CI^gmE)_MjVXaG_TsznfLAS_Vp8FW=3Gx)M-kXt}1K^P*B zss}XR0^Ji=0 zwOCIfv^X;_T_GhkEwMDGM4>D(r!*DR@Wz$aaW`>6ZC6+$6`o7L3zpCurwc%bOgFv( ztrbBYVr>Q8$>`A;dIGxA1X`AObh=)EGL8Rxbh_R!KH$+A`k>QAr2r}nYQH9Ubh^HP z@{Mor1oi8C!#P}yzquN}1rbjiLC5Mbcyzk{02Q?rKAoi(EfSf)^8z3filq4G03qD9<8@a z1U+C&ua3K@fXV}gZXXp7Nz%oFNQ4D0*yQ-pcd}E!Au|@ zKx&znO`Hr2%|Dq+Dm=PfS3p&_f`&MJx_yp504?sWK&bZU1Uc~le~UXO1A|9z1&c>F zWRE^*#MA*466&B3RDfCtH4ePh4Lno|4z!n`qcTBr{hp{KT>DA0SIAz{if|`SgO_=-7Q7w2lDG1{HIVMsn+c(jo{8e5g{1 z9&`W~>Kw=>>rNLH4dkI#Bu{pqhv@cbKK~!&9Z=BBa5aA7YW&~h{{d)HfI7Oz8?-#b zmV<%exQhztQdx%AoUW};_*?Wi7#O;HzkoIb^iBocx$26(!=^;6yA>o44J^=MO)pP@ z&&clusRxG@XoUi3eFZ3J^&!fUeF60V=oBR;kbbZp&+a=f3s@My>7z5YrPuL)^AE=I zDo~Fo#;4b}!J~I7D1JeqY2eZ8+Tyqa)Y<`sql=0LsIURaz&l1I?9DYQF)Sspk$7b5 zK?>o42&(@P?t!qw;rXoD)KH41h_^G_yZcXXcznPb4;0vfdP=yhG-xC7M6 z1$EOfU1JA!O{sae>w?w;CCSibX+A0mkoW}0Ei_cXDGro-p(#Cv8I(W4L4@H6&^USk zsy-KJs|OZby*?@xV9lU>=fc13LGw>W{#jiDr-9R?x}<$ci11_d%rwC~OptyQsu~IFNMd)19M| z(0ZWM0qSZLPlN3D>^=+D26iqqdBHpfl?O|?8lQyuuKT=euOlPKQb`6TP+A6EpA4Uj zxdF;`{4Fw|DUDti6=*U7HG>#H7HN3&wlXk*%C!R?-KRm01r<;r8E7){=sw;31LFAB z|NO02{{8>o9ix)d{M!M2+i!0;Gi)pFaTk?{AE4X?I%*qyhDfj1N3gp+dV4|Ed30a! zfEnx2?RwzXPDZfXz zvqXahBY!LCVCC1G%|Ds>+hakwwc7`}vDl}(L?yu!G}YGq17dCW2hbf!t)P>$nrl=% zK+A+mRl!LRHIRD)n2^#P=r}uQBJhBi&;lyyjQ^({cL3dQ3B7itGr-5Av%nYPZ+d%U>9=&ccz5WVmNSDNRR{Zej6maOM;PB|I z5b$U|py2WUWa$f!?$90GKA@E_t`j^uO)hx+KlJ~gM`!2`kM7V7ojxiB)~AYMn-4j7 zbf56(4Bg;y@DVe_zn!k&+RYK&cOZ|0Re+)hv_1_S2B1}%4&ZX#r8`9>!>7Bn!}0&| zmtsHv{|99mpWZT)?t`F$U?~#=!~YZfEud4${+}p`1hGMD;XzRXH6%tQpuvKvbR#&o z_;jE4=|1M!ebuD{Hapq;<8R57)&r#zQ0+7R=J@|OxYm9-|HuFTumUqiCBTJ$n`?_t z_i4}Ws~+9w;ALf}i%LZ6fzkkv?%ER`-Pb(2As0_UT+w=Kis1p zo$O$hAPLnU|Nl4t_`~1&8Z>w1q5^6uGrYX_@Be?#<~jie{?>D#LcZHY#liT$XQ!Kh zBmcG|plZg!qt~PX+D!2{_>9$q`GaR?nS^W0lM*h+hCfXFZJ>2*p51W*9<8@QTeZ%= z7KV)%@pxjZd#5qeu5;PiRxcw>wV27vfg9jh>);!QeJRW#Kl0WkIg_e-i8ykc}WUf}Y)O z3Lf3(J^mkb>4;(c|Jo7aez1D59AxC||G{G}jQ<&4D?t(t%GyD+`oOc-O=Bmh(SR6? z>okDnnJ+IjL8GMIF`&+8jYi65R@1szWx6X&K+PAz*61c;YsD!SCDLtN(Cr`xOCU3ZQ<_H39Sc8lsvlsb>G0N8r1&efVDpzLAR~-f?M9O3)Z^lsB8dT!rOQR)I!HT z4hUM_4;lev0dJUT1NX*32Zn;q)@NY=^%rfxqjjK>e$ep-EDWF>X^^#dp!q4t+B?uW z=MWa?7y}3kH1i6&YMljqF9T=}hlK$&E(PhogAQB+9lyrHaGVixV;2hpXvH09{SgZT zXu~^12WUMML0RNxQ- ztvD+L>p02GzyQ$!y8IoYLze|MJ_@QVK(`sNFhsM!)PYX>ho~!Kf%&6}g@GX(Y~EzJ zI?&1f5OteDiw3~5FIiyonMQB*1~0%z|YG+$jZQw1XlNq6?XRgM^@Mw@SJQ64Dn!D0XCQ&(rhq0Oxa)uQFySy z?y;B+I+-3k(!7R^fdMj)e~yiT0o3YaVYmu6QU zv0u#1!0-_?&;S}%U|@jV8VcGT51B`b&&e!?Tw4vw*br4HBy<2gfCaQz5^|350u}}a z#K;wB7-|Iz1H*gp0C;>#W^r;#YFROO{|#s$Egn3|jX10rG@=bETadQPgT~N7&0J9P zA8G6xBn-Ox7_#6KKC})RKEJ@szyL9zxTGklGz~o74l0)+Mu7I}C+6hD7ngvJS_6&6 zKVV{DI04>@3o{3DI3~z7pglVfec6@U@c18w+Ojz`(}J&>+stz`()E(4fuCz`)7M&;Yu}g`1V30hHr- zSQ#2Xd0&K;p#fB?iL){^tOL#GvobW?0nPKXGBkj0Q}JPCXaG&E$g?sufV!FrtPBmG zLHEY6GBkkhL~&zfXmAEqRv>dgWhE;^1L)=xS5}6GWh@K~-mDA_+d)^!vqJ7w2w-Js zIL*Sq5W>pPaFK<9A)J+=;R*`_Lj)^B!vhuuhDcV1hPNyX3{k8M4PRLp7-Cr&8n{^* z7~)wO8U$Dw7}QxA8bCLaXs|Lgq_HwEXtFXiG_o=<=&&+0tY&3k&}C(4*viVlV8F`I z@CtO-3CJ8)1_mQmhK9ea3=GDs3=M2-3=F2M3=Q&Z3=C$h3=KML3=9^m3=NiS3=Ed6 z3=KYP3=CGR3=K(a44~4tAstjsvNAM)#(q;-85+9S7#MO`85*XtF)-w@GBnI*V_?W< zWoX#U#=ua(%FwWfje((%m7(Dv8v{cLD?`IGHU@@LQ24PiFjTNIH2h#=V5nqeX!ys* zz);P~(2xNt`#}C+XJDvfWoYPSXJDvjWoVed&cM*X%FwWcoq?f|m7!rJI|D-#D?`H} zb_RxKR)&UC>SQ#45vokR428AO#0|O|1zGG)#=wfAP_{7e@&<6@P4hDw9tPBkz z91ILcSs5B!I3VhRKm#hQ3=N4K3=CUX85-I-7#Oy)GBk8^FfeRqWoVei!N9N+WIt5> zCMf?9lz*B7V()DZ28KPL^uocwu%DHo;SC1^!$DSthL0Q!46|4n8vbxFFwA9TXkh1L zV3^0s(4fZ2z%ZYcp}~}sfng~tLqirP1H&>72O+Vh!{nN(Vwq)?uj zlLJ0@J}FfJw%P-BCU1!zLr4bb;L4nw{Bp>EJ80*E0(6@hWMa_@JzOB(RDjlSkOko2 zY7Vp?4x$GfT%f=KkNP8tL8^SPiJ(#WqEt`?2C_LZPa(6oxHMHk19Z)`m4a#tD13^u zGYbkp*MTF)3h0EQvQ!0-PUL9=B%^f{U>d>pBQ(SANQTCNLS_mi=3xtJ@`_6oR3i}D zkx~tKzM>=}l?<&Iw!${LBP<7n70$L1uEe3BtB{sonwO%Gn-7{($w7r*J}L?>-3P#Zd2p{Dw2(!?rTY+K zSR6bi)dH&Mn@|1s=sp24p!EQMD`-mXKX`DEzw-lhVmbhH08IpFxFNx#*A`T5d-TeJ zCMfyk8U71P`pF64-ZMxY zFH9Z8B0sJ*S0htafkz7stB5Eha9R3 zYHqMFfG$;B3vSSBGk~|YFt9Ly=3_uxqF5L}!#XR#vY;)qptI>%7@9yQGlRQspeybn z$JKz&LthS72RhdXq?QGIvQ;Kn-F5~B2GC`4kWMf}7IeN9#AMLvZxAui(T7XHrhqmd zL&QKn1$8-D7(g3pA!48l&LJj)uF!(W$}%!AWPxo1b)_Lx6($&j&5N0fjB7vO&Ypo(JgAW6;tYP;US^@|cUFdm6b1%{ z-=GE-0|Ub!P{q!`!0?w9a&FdtP{qo?z`)4H&;VLS&cw#h02(l0W`msH$I8ag0J@EV zosFRZbW$S+8$$zVn1hRrp#ijTg`16`0kr&phmD~DbO;YG8$*L2X!$rBWI?U~8{}Gb zK{m)?JVI;?4WJABMA#S_Ko=5pj zNF^u*Ak;uuph@n9#s!$@h#|(9wr8c5N?nn@R7VA2FO;34v>iu z7N|E1F&pFpkoh2$APkX5HG3}D6^fv<5=wX&xI(xYSWO^{hCsSOxY=}In9T1h0qD%~IMNFV^F7V0mAh$yrKajRSJm|tXRRfC%29Iv=SqvVX zOdj2hppku#PA3lj?Tw(({j^Re0Y^|l06H@Peo8&41aU??6$W$~Jjg|$ZHYfYo&a&M zcJUGW!@$c@AnGtk=&}@$vk{9>Kz(hH*$Uu2mr13dZCBt$_@EGi92}F8UtAKOnwOH9 zm~BELH&J1O^5MWj2NeP@Yy{V`xxkU|>*VgPahf4o$hB zYw#c`7sTRX04;+DvA7vP`vpKOF7N@~zTFr2w;i$ylq%xd@eedv1v)R=qkAG~8U?fy zOPhb&0gq;zLkuN~9^E2`JiAZvZ+Bwyv_9y=?{vbq`yi-91)Wg=(gxlDASJ6A8$$zVS*Rtb!~&g9%m%qX1f&k+ z2opAj22gl`_@EMM2e=yo@-m3U1wP*v#NuWEwO>FiNS+0`3FHnC28lvSC-zwLxav&|`n5;>13Sx1C z51<6GAdwGp1JpSTAW=xo=tg(YIzI3cMo`>AjAdW|*$0XmCswOiNb26(^QyAb8_&>=36sDjs2bEFi$2x*q z2OxKW-0%%E%#(BSiy=2|fD~cD4vY+-KnH2Z8t9-p4HP3VtswhAVGdfk3%Yn6BpwB= z(_*1v9tREE`|z*@u^?d!VnM#KBetL3fOU(;q|)28k~yK&1;PbRoqCq!t3#`OxYE zxx@gu2^2)gB}O7Nh?1bmGX+|Wq_RO8=4qe?FarZaHXG#9n@ni)Ad8Km0pvH3IH<$` zjRHfO1t1pW)JYHva_S_Ag>>nSgGYCy0_eD8jv4_-;{ZIn+kC_!{;=@@&_Oq#!DJWy z?WaJSmkmIxS2P?qa2j6%aUn~HK-JD5NNXut53nJ)|fBU;V5YO43s4;lasvp1+ye@2kefjv1QJ^f%?WFu zIbj{N&{z*GG`_+^5yawR03E3aVsV2HU_+(1frSNjC^?7)DNjHwNO=NcQ6Ur(OG*-xGvZMKV?aXT2s9LqLPOygG!!`D zp#Wk*LIK2rgaU{~g-`%psy8S?;UqK^PC-NAG&B_W;GqCwK|%q_+(A^^mKHg7+QFeL@a> z{pr!mL0hLc*dW&~+=ND>1Uwo+ zEG`DndGsI_H~8Xl5DU^00+|gm4}?LYkd_dH1xiwKETG+sjG!S*wBufpPyOw7H1O!Y z>CqhkNefj1pkseQyAS^d6to^FRr=;^+0Y%bxd3vM-wu#R(p>mm55jhGfHvQu9O`=* zG`gV;j!TeYP>l+@TmrpD1-0Wqhvb5K_9 zJmx?wNX-jkL26zQ3lei6H-KUdgh8T^n1irDF{edo%vDe;=0ImNSfb@Akn3^BTxM}T zbs`R&mk7n&duYskgvQ(_Xv}?s#>jVQ%>97I+#hJn{e#Bbf2cYGc+7!VkeCCpATbAG zVa6Ot6cTd~7AWS-D2%xYpyh0>2TFxNS|vO~Iuoa~ShU@msZoi*I-kda_Mc7_Jf zl3M|Gh6a!ygxDc-Q`YbZ1F;};Qy>;(ZVJSLL>R~oplk-hAW=w!L0F&&b0i|dKm{cK zHcu=5Z3kOU^0$CaFt%ajZ&}H}z@Woq!&sgSDkDp!zd2iQl!$^`)}Y?L187r#2k2%t z(COFC1|HoW3LeSK9^IADBG%Ezqx&?tl;v*)?Q#W~;t1Z|3@K$D`CSjV@NYlx60}9u zqubelf7?aqKqSbl&Jg&~a30;B0!V|B;F*l>7|<0kB`QR?pyFjEXzrsMryJp^5|koA zDHAnSBKs6{5oi#&@Lvt;-hx@68($&gpDK(D4207x=!S1lngv}ff|O=ql{U1BK&c&& zdkLVZhGJ-i4H_1~ew;hFkO4I>pc)uJc7xI^sPhXtiyb5`$_^QzmVl;FId;hT?egr9 zdzIALAwwDp>OLmLoQ7LiGvyi zZt%1WVnNa}hy_W@AQmJogWLvk4+w)qA!!-H0;Odiq_oV*z;D9Az#qh2fGgNw$K=5J z-3p*1EkN6KJ-|%@2L(vKcme1vE?7kl>Ka?4RR^FWaX~Hug&3CD0x!D)9q9@xXuvf& zNHG=+t;sY(MryG$fC^9s9d?EWkU@Iv3=JT6=|fA6aCk_A zSdd~K#DWy_AQpH?z`&y$?tRcm5y%QqI|f?;3vvd?YLGQJy$?&Pkb`VN%CTTV0RUMQ zjNG~e*^M3qM$jNIfd+vYGziS0K@bBE0uT$5*gz~uVgs?jQ==CA+XAilw;gJ^RO0vV zgbfoYQIreA!=?F%g~$H|ps)cIMf}??!3!o&0i=Qny-;dCVsRK`5}G-nBxVMhW&jr# zpkf}h8v%00GNjq?o1LKnn5NiBjMa?)TVI|KMu zun=~J22h^QVTYVJn9B~i=OGW8vh(377R2IW04=rvvA7vP8(2Xskn13B2e}u7L86cp z3t@p$Y$>E71CQZzFmMI2!7DM$D1fYMO-)ho)c03NEh@?{0qUEmZ3 zy0jJ2$N{x1AZZPhh(UG4as~zl^hP*jpB7}t7?yMenWaTdRX9p0XdMBv7QK=rBUOQ_ zRFF}icmQFLJ3(m*6g03UH-*sBtOVL{uVZIu08Mh&uroA(@*Ic{Dy-D79{RLc7W^xVUQ>!?jbBt+_yvG9&{HrQfY-AM4-}20d$*$1n8_e0pt_wn%@|J zZX0VpXyMxZ(Ghfo#x2mH9gqWHU5%fBc6Wnr!R>B=9<}?LU!K9W^&5Ym5a=Si=2|ue z{ua>EPS0N70LTC5z)8WgJJ!Ru*VVzJ`89_}uQP|I^??$z?obAPdC;yN1_n^WzL&?r zGNik}qqn5HphVcCJ6Zrqb?M#LY>uGaG7KPN!DhO){^xH2E&TB44ijj!0fFyTN6f>YEcW8h({y*Z;e3Zk*`T>8_Q_v>lUSA8adqE>T zb5uZeHKL4dMSCT< zssI@Wn%xFhA@HgK6ndaVqM-Z*!XUSU@-)aFpaU~NVvW!iNe4Sa1E`?sgm$uQ3@!!HH~hUM&#lW144GcwvnBo0d%v*CTP9X4=g%1dWL?LApgas;_rb5alIW7h{6F~;KAgK=$55z8r91toH zOb`gbo-7dC7$B#0D&!`XBxis&Pr&Lj@V1Mz6b01^28Upe<~Ir+-M3m#mI#Axf(0!T zhAcj4KB5qP*rVANP?6!_p?$(*$6lwZr&p)!zXm#a$-(3ML(oA79tU5EcM4}-YM3^I zLHkhlfs{^X7MNY2Y8X@jvoaWhjv50mk^?1TQ1hP!yoDUHJ|5hS0Ly~fRFL)Yphgeq zas(CzkZKTSVF0bgg6IGZQ$yChgRVe@=m0gXAS>HJAr27(jd6e`Cs-Ijx3fcJK~2Y1 z;GzX|li*4)3)Un6T}Ogmw17rJK+~CWj0_A?m_v{(+v&`BHz z1L%-=hIkIhKqBfqMnS;sWm$0I|3kKv@UGLZ1u=rABn$fO0L!eV`T; z(ozs)-@w;ug4AKb_!h;0;tSl_L-r-ePV@*%hWavv1G4ZT73#~Ka9@I0kXc|53o;7~ zVsSAX0&Uu1U;y=3KwdY;krqKtM_Lw%>_w_9jYOW{2Bk%i7eVPCHo=_+^8MIbAp=tcEiVrDMwR(e53@(4w6Ce-&?&$Bj zfLL7Mq8r5GW&oWl2V$Xz5@@steUk>rMgnPtF6#mbrImbWC=@_Lp%5AhXW^j$VnNah zhy_V2AQpNkfW~*w7rY>c0@6xA)EqcQ#n2Eafrh{(cnE-4kQI?27Gy;v zh=m>kptCdV&`Lz)5WrFBQ*{j>A>WoleOm_gZ8_Ap*Wtbeu^?l{AQoiI7{o&NEocj> z8y?>xji@8XH*^vXbDah#w_w50p>7v>7R1*e7R1*e z7P_xNjcQM_eT{Xo0LYtIFm-%h2laV9)aMOQpFe~99K_-R$1;e;4PN65VxjvSl&8^0 z`;qfBj#N(ct~kLVeo=^=&iMx3A&81+gG`8pML+X%GwDx7b#~5$#*pumog8 z3rpOBgb4YUxcuA#^>HiI$8As_e}MZK#Dc7V1F;}0;6N;NA5UWdjjp5KF^cTtD(u~k zWXBR?7UOc*QfKC8b@W3L-4IYH`fDYDx_SrLl)}cTcouEcB z14yq0>`003(@--Jax%E(N)}?XQxc0He@iiF&6$cf#Z<7l#JVCKtQryt)C>!Lu(`y#;vwh|OB#elC)iwKT@ejdP5rQ7 z2AfN)E3Sf0mZw2j)Pl_=))oF>)zlA*@4x^5$C4>avFDMKVAa%jMIqQ+V#C52teX0+ zc>Rl%u-FS$O?_9Sg3Tp1EX={Gsqc#WKS>FTjbPQ(cSR)FTw=pQ8?2i8uDJYzl(1L| zR!x0Z_=3$PHZ0`9s;TdasSs45n7#KkFLo5uSk?Uz-SnG(mk~4t3N{Zk(F>6UT`>u<4K$Mhae*!) z0|P`1G*u1>12;wnhIX(ipp$?gE&!bc1lq>H!jQzsz|aDg1x>F)WI>k@KxFF}!G||8 zurRd4T>!EPA`3coA7a}QMp!I>rr9B4pzR|N7o1@P9}UUC!f+LC${j`qhG6hq-3vzW zL6QtC44@0aATIa;mt|oBA3Mpw!obS}3qR1sZVHGiF#UfR2xbho}fK|0(N z(BY||YmiwOKu2IFfMr34a6??s#mv9}k)6g2KFpMXg#mO3HAEIPg9?$|#te&vJ#ZJC zhKpTBdTeu6pFf%ZKmhXY5PeBK&GO#d!HYq~v5C9#r3JxLAP0%4=y{as* zFwlX^f(~|?%D~_RmNkUSf{v4g=mnVyu?^%0hznv_VPOD@c}N(Pu`)2& zgH5T2o6^S004@z#7$&hYFxY@)XTxO|!DZL6f)ANxU;!Pm3N6j{!DT_W_CQ>4g%uVH zkKrzO$qEaDKdj)RYZ+J=SlM8{&6RU8c9D+pK^wsC-uqGn)W*bkRI2A93W!N9-_)(bj9 z7!n4L;Ig3OgR>bJ7&sVUYeGP)M$j)uXXIpH01aCG=3rnzS^`j>nFl%r9dy18c;*eq zN)YJmKWOFvb@m@T$P8*_z=pIy_JF3*#2FaCYa2k~Z#WnlKz6@{uGL`VgzRwv@%tGV z7~X-_cz`bd=3r=;&B(y;frFtzk%@ufBL_pnawZ0bPaF&ly37m=pE(#BKud}Rzc?5gV%ZrOeseH1 zJZ5KL_`|`_kjcTo@Rx(3;XMZf!+#EjhMyb^3=EtM4WRG=xev5f;}?8@48-DMs9^vf zG|s>cUZ?;O1Njf+XAlj-AW_I#4G0TlEU46FhOgBK&&&%gPKtNSDJ{+j$Sg<=XFwNm z#1MfAID*a@M$rTpfop<`z%&Jc4v;|61Q&s8f{Va3IYV~ug%l;`6{n>Z!5xVv4mSWz z9A->-QD#XhirsJ#xK_9bOjA&5VhV~Lm;hW0OaP|CJ+%a+As{~|Gr1D(RuoaVUKCN7 z0l`=eKoNx-fFcSrAh0yGs1oD`xb1KexJI}LOp|+RiF0XDQEFa^Bj`%kyu^~!V8}E$ z+!WkO;Kt%s0<$NWusyhy!0o}U1ZEG|gD$C{6Qe!z((<8~lf(UjT^epac4-u|Jz?i0 zLxZUp)ocuDRI@RpVP?Chmbj!ACl_TFl;k6lI*KUVBot93100Ks^OG|ZOHxzd*1#R- zo?3!M8reuJ(lE2#ic*ovh@#X~xIT~!OqFL|W(nkkGPtb>A-E2N5a?*>(&8k&l$;#o zC03w@K6=#wS`h&%+CZykkd|0Ms}7=9SAnYvPz?ey3xq-Df~pD-4eCgP#8^1NWh(xJh z_5axaqaMwN6+D`c3wSjDQ>a-3TIyb-QUTh*TL3y5Is>$!Hvx3Pn*-d5&|OeI$w#3p z-$5Im3_SlIfGm3lU3}bqwlhaX!@Ju>!34T29;61cDGD+(;nIDh`3F;pVDriU-~e!J z{>{qodhm6_jz9nZ|9@Hb|Nno`T0>CVft8`1fdO=)0|N^KXjLO*0~F}cLr|NW1$@c% zZg2~PjS+S^3~1RrNG)QSJNPsAU;^42%D@0y>;_ux1kndt<_2MbnshtBCV*6d>;u^Y!Vq~- zs}aHi*|iC*Qc;qNLGlR)gGdQK1Ahu116K$y11m{(fy@Wl2ckh3VgssO5LYpBFf(v8 zv0Pv}0Ny|dYL0@F1!8eKhzmPpU$t041HNtybSD6KN0tL=c@aSd-WoHp+{^s#${`tRz4U%m9-%mY^Xgkhnf4r1@>i3E4Ah!O747GSQL~ zvO~iP+8np$WN2_>U|_J}gq)@aQU`Lk12j1wh9_qb3zD2cEJ$(&vA7sO>OpP**$cuT zQAl!zut4E=5|YF~(hLj?u*q{!C?eEASfIpx6|5Sh3S>4^6X>2626S`JgHP0?=7Y=y*#V+K7$T4ACWuPtlIsG8P-uPQ0IFy_l3yKn zQ31zg4AA8`OxK(XK&sKDdkQ&v#jV*tL|xBI@MMU74h ze;;TkAvD?k{$I-KVD#-Zr)Rf|P7ePz6J|%y5?cn3UKf=F2mWo>Tzeh=dqVG5g(cqK z|M^=$H#vb6WjKO{Mj1d#J-g4kb{{srKv4$DjG$Aw9nk8cXwZ4~pp$1A z85ocj=fW~$KIFv9RM5fU;L`#jt5iT68$d|{4MVdgD9SOiCTKA#Xe$V0;VI-4M$jq_ zkYdQLD$rht{L&Ke{tA#vQ2zI4ECBakz^lL z4M!Om7-BgY8lHg;R_0`AU_drxKdT}s#m9Q~5n(#4j6|r4lIlu(2cqBm0O9fD+WB@G)KnI0-B>(d0&JghE zzF8^?DG|V@zJf2;1noaR4BDm+%KIJ-7EJstzZn=9S}*apfUarq==QXLY+`CXS;7XY zu1Z}zy1flRccME$@>pjL{LB`}?V{ahLH9g^uKe%-?R$c^B%L8!E+M<5dfgd&!~c6Q zAMofcIjrH+eGFn4=*kw*aUvea+5Uq7c)G3mg&2R!Sq26M-G!j5;_RA#`0%%Yj-Q7$ zS0O8ckeZ_!;P$FV_gRqRz#Bcm{(iZXfq`MiFHkFVHUk3#)MZHWpv8n9-QPW!zj<`~ zd^GTAJy}u!@^ncSl80LllzNe1v&V6l&lVuRKz!KzLyW)G`Tzg_;MVYKF>n}pbh>=D z=&aT-KJc0qvXrSCbjl4{G=cIOqo^%2K$p31;AChx0h-(7WM}}z4ai@h5*TzzDP+3_hy^(m0mR}4 zkG+CepdKCr11PLu;RX_gl#~z_s4V;rE>js@I2c?~I2rguxEc6OxWFg;AX?$DE5cwy zFbb+E;I?;KVrEWiib6@gLSku2zHTxoktiUV=mrWJMX80QnMDva5NXvEh4Rdj3ofc;%srVPiH@ic)h@6N^)kya8HM3Ti#Tq8EvVW+_(04(57Q3O@Za=gEa)6Ve z0dyDfAy5N?fq?;}9yArZ2ihk=7VSuhM0(IHpCUM9tP;ju;zmnj@<`foz}n~po?QfJeq&~FX8j( z76kFwK)g~BkN*c8{~z#ZJ}BVP{6nGUa`TD*haI~SNA!c1ZKJn`LA#hiP5~XYfjKq< zx{tRkF((tWH?$)t}B3+;GpB+VY)%~gOU~~SV0GSg2Yck2LR7< zGJr4exCm;4GB7ZJ_@E4Ql@oF<+BIm>y2J@NDg?v_B_Snv5(2Rx%ez4=$ntIw3wlni z@ok@8PYa*kC;?aFOP<}#9-tvRHILQLK|W_-fR}plNtN(U2zXi!B9B3OFoMr@0EJ&Vc{#t1qvKp zaGqrZbp%Wp863bTx_C6dserf53k^KFe|mJgDR^|YsDQS6dvrSpfY_i*t~`<%J$iK< zJh~kdKtiA$_lO>Sg=0*7T7MzM}!CPAV|IWPIDB z`GAE-x5p1qjU)oDk@!5iIY2x}&p^lnls-M04+waG(&m-s)Bii?sDOHUt+y+6JbI^q z*&eiWtBR@74n)T;L|}%M3;ahHi*@kL1f9y*?@iprYviA)n41l?sM+Fpg-xw20 z!y76YIZFdQx*>thzpVjujYXQJBU6bHNF6BDp`8L~X9C=#0o&%-eHKiEL+K@Gi@wKk zH&9SBye{+Uc2Dr=7If`C=h=PUv-tq{EMg50(AYdEX+Wy&)&r$(5SHyz(2-;A&^`nX zi$Sv!;E@cltuWi0PyByv>DYbDqtlJU<2W0r-45~%$lpGlIqM62I&0Qfcyw-A503E8 zmi3^R?wGS4G*oSTz^5A&klmnw?2b_>K#OZo%>?OQfa;=XaK`{NMgU=f@*so-I(Hhv z0v#??0KP2IhmnB+v>=6rVI^pA1gsa-unYsUcEP&?hZq?cAZKF#W`r#TVP%4K5rml- z7$BVrB_;-jV6a|ICI$wGDHcqyDF6p1m?@xo4AiLr1%M0Mu*(7_$ZaFjm>3w4_Ci6M zWzfxjST}%yj<5km92$o1l>ym>zTZ!dK~NAR4hkiI#$?FkDpG3+)WiXmaG=IJ%v6y3 zKqVY#WCnC(14#S>bZF%-Cqsi50|SF07vxxp|C|gBpjI0L7vz*0CN9Vj3Nsf&!z!pc z(2i(UE`|nB|DBDCq2WIR0|Pr3981%Rp8bC)h7;rH(fZ_|}Z%|2W1TTp}EG`C+A3-c`22g1UVsSBm zPEiMiB`Ewr7$gcQi6JadCba;U#EJ|IU=u(We}Vug^&r$hSfE@0T5iS608#}q8>AA1 zA@Znt>>%cX#(uwWGq7IaMKK>_7DN}Q9EPw!)h@(*kY7M{fXoJAh&-zK5S5CYEDW3` zd<+avKqf+#k%4r8co1Ev<_CaX1zKzdvIC?Ngdr+X&G!PU1h*>D%m#%TLC}oa7t=gVrfo^LVjKf4}k`#x_u5>fGRm3aFyrg$iM9Zq#SQOP-*}z#L;REaN*s38c}|O znrY2P45AN%yK4r~hp}q_m-XP<5aI$*BtVK}&?pXMEh?zN0x2Xx-6GJ6KNbd%njCO( z32JXc#%e%k`+!ykvVgaeLS#W>FA!N!RDlZ4^`P-gw1N|qwLo1#P$h?Si~=lPQcDm8 z8~O;+r1u0I^PEY_(=z|Jdm?a?hf(la5_!wy3 z6eMoK1(|%Z z-5CO&y&fhWy+s;`RSyyIak0^`7OF@0HJ{EkkdyX0U3M2B+Nryd+Nrz2%@%k&bvLN> z;=;ep*%F*Fe3Da)+Fd)EdFi5mM-1i zEk4bSc~@OECyrAp{AhOeP>x~&IF9U)}}q|N7quedmiC@vhkAxAWVntMjj zc3!u$3#irS(^;~+z^5~1H>jBh4lke1J&=IvShE}CA5c3F;xnIaNC5bB*Qf;ebVGx` z`3NLtKqD)lf`gR-)Hi~(=s?|M2n$rWKv@HnVZ%siYrV;LKuRVCVs} zKuZ-Mh07}jSZh!pGz|k@>}t*knPOpKaD)#DgC=(%MHy(jMkm;mSVow6`S4aFXowlo zYJ?SApkfaF3>;8<1T_DAo)J%b5A$#bke5NZ4h=&ad!Ph~-q-^*=Agq0;3Nap39=tl z3`sFCfVaJXg#EZ6$B9L9L5>S+=3;2DV_;y2=7Jpk9}6u;;f zpi>9axfmKi!}OV43=N?3?y|TT8bH08Tu?iUk%1wfi=hFujH3W#J|hD|5f?*)H6sH< z2^T|yJ?MNqP;th{z);4;&``|Cz);S`&`{0Dz)%5dZ-KU@a4|H1HonwwK~5R0=VEAB z!N>qQau+->+{DGu018i#yFtYn=(a=1z%Pge8Rh`7Aj2FW78k>DMg|5@Sb+Qw!XQyd zaRy<5inA(kaRzFSfmDDF(+AO@*hQ#;ut2SkHn3`tDv;SAl^_g}N7Vyb@5{`fXu!r` z@P&&({fQ6*2PpO!7#KjhLApRKC5TQ?OANvSb&DZ(fK2}mR{PXW9Z z1yStlDnQP<&OttOkpa|Ghn#l}FRC3CT==&g^5~8b@aV17C>4N=HN%gdKI{Q1w!5!` z({by8N^Pu#E9Br+NV^0{Yw`(DTgc=8K@aAW9^E|WAthbwfl_mP#T-(r2s{M_8nyzh zKr;YcL5aixMLeWGTJ?`g9;Tu zcS^tq#SnvG$g}Vuw}6TkP~rvo4U{z7xInp-fuWa+p#ikwX&$I30PV5kVrT$eC)E!s z0vH$=CU8M+8=1%jnR}YV#n1p+(gIQsS~)k33vyug3{cmPfq`Kr7vvSDhj5+TQ(pTGLGA`ELB$+GpxQ|);1(@% z5(3!^if<4NTcWxga!w(`N>Ek6z`(GI3$jFY1w0-=EXe&2AQt5Q2M`N-oCd7_h^#-Nw^{#^&lDKC<7%ED26s2K)oGM<>Swo3DXA7-Jo$GP&*B(ngL`lD6&Bl;GixB zNPI1{`?8e_GO~S)i=jb{fq`K=7i5Xe4rnId$HmY9x-Z}W7i6aEAZQ$ifq~%=sGetF zU;ya@6^lo?AosC>_@LuQcXBZ_fbLP<#l_G7@-Ijnl&ROk6BCF9NlYLXBr$FANJ^+10EIj=v)ICckkSy z0xIM{eH74vsIb0)NAvL%NAMy}pWaLh&+c3X(71GfNB325jp@-Hz~RviKCj)vqdNdP z4(+1i0Xo6mq4jp1L-%FR?lWMu-H=)oq`v^6-vgrG2ec;516jY1ibLz|`U4)IquoI* zKab|W|M^=$8>WqK8-KHq=kEh;qxR@_=kVx0%fC%T0-imMq1n@;+n)nko%3%Kkp%TF zG@!%Up!3qfOJrb<1DV6WO@z7SQl*1O_gRX~qK2FJ_p$#!23ooIfxk!O|NsA<%|``5 zi)20jpW|;W{P+LAPdBWavql9JX&&8>Nc8B2Mrt=Cl8p~|AYvXgp9E=EfY!}k0hbh@ zr8AI|*cUOtMwUS-93soe2-~m+YI#G-AaOkn`9;EXa9mAQq$~ z1o;u>UyvxIB!sX)CE;;MNf^S%5b{Kb!RLx3gG-78gH4DygNcb412>~E1Iq!X0*oe) zMnPslsseO|R6*6iC_)pttb?kDZ{|}VpdQ+4MTvT-8Hlo!fEkQ|3P^_{W4qrSRC|KL z0yHOybUGQ-a=IK$25w4$7MOtC0m2|RfzlwT<_EHLL znp8L8aSviaP8bETASaB1SSaU1gHF^iK^sE_84I!s)N(}H_nMraTaaIzSpr%~lS$~3 zaZn}$B_Xt}uV62NG9So%5C+)=@*;?awHCP`n?)J8xgi^xc%WXp2lpC?1!+=(SdgQy zK`a!nfd)tLc@1e_7Q$;pZp{LDL4;{91>;{FIN3W>_69a=o%ia(c28I$&&+aq-#aa)P z3jaUs!1Ujv@ffK6*!-KN=q_jv6=;Q3cMhn&E&<&}SOdO|P{A?gFer6_+M$SzNremy z4CtW;TH^#7Ap-4qLn@mQp$F>egBM?bI)!6v!T!P7oWEKtSa# zXj~5@F2W5t*j|(yQVvUSGc5L?PuSgau0U?;z!-6c>Y32`7V8 z3I~H!2s?w62^)iyk=Ox`<~JIkrOn?OKvBj4+C!tj#K7Rud_?0gXg>vNJb-wnXc-hV zDF7-HK2_2AO>-T5!0OlS!Vu&6KfwbODxg6TP#*>Td{NMt8OUVNKm^h%LF7=wT&oMx zfCWRt59BC}gbdor0I~xz0R-8}07~4T5JfKCLGA&CD9FvA{0Fke6k2AOK||J@8?vO! z0veM4;2{ZOL00>LSdi6zAQl&cPq!x`TzoiUJpU&Kfb0N;3us!*11&Xy+ySy1F z$^#1Esm}ml0Z^5)P)ke1)9Mq|)Lf1^6u}h~bZ7g_3*)kQq6tC8-La1?;KC zC6IA_P$NbFG!Lr)y6?~UHhAS=fr2Y&L1}=6Pp@B&XEzggHK`tG6{#k4HK`(EHK~{j z|2B6^et8Das#0I1Ri%ePt4a?+SC#%&sM+Sx?MEQ#fft&Cx6*-Eo44MsIPH;q7<8@W z!3V4!-5~}sprL#N$Uat(5|95$1)xzk$gCk~+lo3kQG!OJP!lC6`J%7o0(I{}<71#X zF?@*^KSOPbs2b;0Vpv+dK}OdZ>T{8o-!KxNvi@iX_?|kTA*Zy zejNrVScyqm7zgB&m$JZR9igO^0Zm$2(4>_QOT4m6rRRB#|rO>1W5(gzM z9eC0Lu^>qc#DXL(5DPPDfkYum3&H{=EhFNR7D^Cdq^v>()-~(2lZWoLK z%kzIi0;rP$nQsK$67CF6RiNQ?)B>xIfq?;i<_L84A}CdDWME)Gnmt71M)3SoJbVHX zcVYsy>Od7IMjIJ4fe31|fV3i3)q@A(APpMiR0eVndI44mO=VTkR94Ro*_GDF&Ct-w zz`)SN&Cmc^>(s{0&;Xh}ZQy2TmSY0~jW_V<4p4C7-`3Iy>aT#BLLT6z z(EmlCkx@`X2GnN9cFQ@etpZwwfVED6Og=!{Ip8ii$mLitbixPZ2dvE-NOU0g1VMI# zq64`n*a>Z4c5^c{fVK_yK%=J*+C%S$wlh88!3|OmgbygZVBv%9 zE(wquL7pWLK8VQ~{9PGPb&E5EK=m!5@RCo_*0SzBtc=&)=knjPq zAmIaIkv2BuL6fl|P>MvKfdmydQVa|XILC%i#&1Ev4a)nVI6}kFP7u~&1JdCES3@BC zU^+o;P>MtzBbp5zBboyZ;rY-pqJ_{gqD9a#qQ%fLq9xEVB9J_&v#|m?Mzjh#Mzk6l zLqYHu0h6HG@QmA8?NAnv4(786A$uE48KY4VQ3;1-u1YO{q z;L&~F_!77;+I^$-K#37rPZc!o?a_U%(?vxAq6oY_tpK#F*)h&B7P5EAMJ2(fGesrC zv-_Gyw}*fS^CjQzXPyV2u!7Dq=`C5y;L)vf(X-pfCdc?TXazPG*eK7=7@HjaZ7yF~ zS`L&{^KZKVK5PUkA|n6E5lnjYPkJ-S`K3V_Z1 zf0%!p3lozkXba;Z1;-8-j{jgS);DTyfetE202}Mm9q;4VV9i|0>)3tG6S@)TH4|u| zWr_;;94!=&f$GEpa9aU1HJ=Y=feN=AFblL57t($JUE~C+M_CxQGcYiKj$2@1;9~?| zY0tpI0J;%^n0$pMU5?5n_4A^NfL58TcnIJ>dx=fJ84|+@t4WKpK`b?0a zX9Fh4c0OMwh6a!$jhPr4KrMX}CWZ#ki4SH>3=N<)UlvRZ4WP@1t(h1aKw)Xa1UY}i zmWiPOWVZtoL&HS|1_nnahKBnL3=AMX=+qY{CWZ#k2>`B43=N>Q#U4zMJ61iJAm?uR zFflZM!XIQmDDIQs#T$sl1wNGo#NuWE`5eT86mKBEgZvA^AW=y124R7Uw+u+}R>Z|n zbcB~dz=V%MAc*Gy*9DFO_5?Qg)yx=CjMzF4x>p;zNkRb>1CWCTtrSv=it>vTR8znM z3j&}i5(!XFSMcbLRPX?0^Ov9#<3u4_A-ZEga~(M}-^;h2kj3WGq zz;D718t6!X_BV4>uuS*ClC?+oKiBRDL?vC41_#oGLvvGjpsH_x2blcmBQ-8}aovaa1Sb6i_*mmF=q zT_X1Xbm?BmW-`ZkP>Tw*A3XZ7M>p6_@H_57tIeQCs{vGnM6QBg3yu;cZ&*Wp`uIo9Ps{{ zP8XFLm(CcK3eWDNphi=Lr}jC}p-~l(o9`>YH{XNS05N15xTZ3I4B1Js}a&8KoOfW~G) zVl3dJ_CaDS3`q=-L3|eQP(G-EzyiKgaRJzreGCi?^T8}ow1P4%3;6tm70jT?lRpd$ z44@<9Aq_K#$s&vl45091VK8I_&F_QMfp)h*#M~Jf7*?`?#2Vo0Cc;^uLwF!|fOgle z0;^lb$iM(`)mBCZ2GC*>76#Cs+a+KZfIIQ!d~$v%=&&Aedk@^t1YJ}Q zvk2r?Pyqs}3_(X6fyDQ*LmGTX*dd$rj)hpZj@!_LqE zx{l^CJ43@)1_p+w>85*P+85o|kLw3=;U}tEsWn^G@&CbvOTA}xrouOe7 z=)ib($ni-ZLH2;wma#($GSD>xklq!D1(_WMu^_XfAQq$`1BC&|-ypmQTxfw}8Nvb; zWOKn{i~<~>2Hyv+2OJlm`)3Ux1(-+U8&Kl%fE@ndVSEI1_CW?CXgdEPB&)!#6720! z31DPkaOpk(O5F^gjra^caKS^yCn3sxx<7z=P5RK4qo{p3$KEhz&^9-CU(T`D?d!{x z%nS_8r~Z3%pMV(AdZ5G#t9J0DC5nE}?sE`5;7;1hcxDC$(0W|Zz9Z0jT+q1z9-UiM zb})j(_o!5WJl45K1$5+?tMUK;pfNLsz2FXJFZg5|{#MXo0-&PK!1$8m4p9CC`xY#6 z+(pFzB;wKuI>rThPIBvkk{Zh#6^GKYZWk4k<{zx3G2JdI7R^5xOWmQRBIHatXcrf3 z9GGZ5P*R8*JTU)(rNQ&EFH@Nq7_5($N_K)0F~jT4%|F* zW0d3GFaQ7le+lXadi2_Y1|mFqO;<26Fo2dPiF-622dzr-u>M!`-f=JJvDU{{2nl45PBstFfqY_23=IE|do&;8u>MaN}ZPyzsZ@Fi$fJ;;Vju(X4uO&X`R*YVIPY^c4U{gxUo@YDH-Geg?=5 z`pXOs39zGFyWc}Yl)n|UUB?x)Xc{!y>;nnsl6a49UQot@h6toyfmf2P2THV1UEX~a zu`n835AFgT`G}$$!tsHmD(HE>oG?LakLJT19{^=jJoRftF!Ibb!t> zgp8Yr#1JcY`1Ug&=tYaly#}>E_ zP$>$kmRJ}rGchon2CKWp#J~VrfX%}2jERBa6j|JnStRb*tTS5nBQ`lVMo4{ zz;)C!GcYU#r?ob?SPwHSMNEc^Erg40VTOg@ez@2%xY$`{1_nr2-GIy9hl_!3^a3pt zXJL2`_uGGF1_nsujDrPcuQLk+188#w3j=7a(;=`w;#pw+C}4s4160w2nscCo{Lv5X zu4G|g0G$&LqLJ1N!^ZO9m*s%6E~x2%h8-ChxEQPiLHXRDk&!_Jan`U3NNYTJSuSWz zF=&ecVofoq`v+VaDz`(GL3DTU~!^F^F&%gkxv%zO7>|=r)x3!-MGS7H`iJ<{B zPH~h8GQW5XIxcsdiJ<{>(*Fr2h6V=E_6a6P^XxnmuOptSdFEcSTfVNj$VPa^= z1m#gCh6d1<@uy4-4K<7m3@+r!p}# zfVNuP0NKyTz;K%ha@frsCWeOBj0_BSnHU;CTLtbhF*JN*WMFv5#Lxh`z3)8}LxU(2 z1H)I4`0(N>HuL#L&C$9 zm>C*CIZ&CIp#hY46_^}6(PP-kXnILyqzpux=0aEh6ML5rE8;Tkgo zgElim!yRS@1|5*QnHd=Lm>C*gFf%Y1GBY%Q?#nY`W@z}#%)ns6%+SEh!oXn4%+SEY z!oXn0%+O%Y!oXn8%m6;H>n9UKLkSB5!!IUCvwJyw`~bw_VgT)G1>N7p4K7nbEXWzr zAX&&6(I6HV1L*KCP`ZVsVUQ?fOaa0IwHVfdo8sU*5WeU!FqG&sFr=6>Foc*fFqnWk zd<@_*U62W&5p0M)&=On-3)C~(4>kehevo}2l^_g}2bBg87RWBpJ!FWnIM7%zNF}No zh-%Qt8N^(WDv;SAl^_g}N7b_v>;gp%E(VP+dJGCB`V0~&<_rQMW(*u8`2l1;$UYDa z!r1JBxJpuh1Eb5g}J3A zsTJ5QMp0LkT3nEySDdO)oSK_hkda@MimWLlBePfmT9hi}r-6=~1$D|5GK&@b{6i3H z|B$>@lvn>%aZGMvNl8X(c}zi3epYI7 zNpTEhxuUM2o`IevDyPECBnG-V7bF3~rNv1gl`&<>h6Vqy|+NXfqNsBPbVuhVKX=(?gf7rI`ygE)HK@8k!x{*?mK^?#6o&6XS{NWl@uBJh#S}9mNH0i< z{xqp82)jUAEkU9nHK@8kWgj9m+T32eLFm!}b<-Fa7(i-Jb%DB42p2v%>8pj%Y%%%> zU7*{CL3V-Epy~pR2O{kH{Xat!p$l}9H%J#q4XAm+z;GWlOAHcXfT?;9Znr~(AZkEk zDWG%#5@TWj7t8S_1qcz4I4`JG0%E|;5eKzL;3CNRO9+%R86Pl1w!~T;0`D?{s)TKx z1gU}8?!&|YI*pV8A(F|&zyPX85hBe@3=E(aD?+3Xv_yx20ZA9={zlLVVh}ZYNyVU3 zjKH>nwg)jYf)0}eb5V#rAV)AlE{6e?6buY!LH#p;h!G;7)|Uf{u0^21G8B>Z%nS^mW;#L_s0{|% zc#IGMwZalmblqfTU;x#~2sN*n85lrAYzPt15DTbBj1U3cTMX)bAVkzz7#Ki3WP}Ll zrs4@Gc15u;Fn|WW5o#(}7#Kh;afHY$76t~;hy_Aq4+{eWsCSJJIm^Pp02<{$h&*Cp zU^swc*LM~M2GEK12sP}i3=E(nD-j}~TVFv36d^?PSs55Wy*z}711kdq=-zIG2h%9FX-MtFY1yQq=m4QJ3MGfdWA<(`!kS`!=F0nE& z{DHd=WZ8381_lijU7uJP7z|KEK$8KWu^WU>h1nqa6yz_6$trA+yCD!F)@%$6pt(bY zh(8+x11KFr%+V`JtpH6rf?NTb_+e%QmB1ig=An}tASD!X8vwN1gP9SuasyN!gVc$F zt~doT7~(-yD+2?AD1!n6GXt{8pbdV^j3C#8ie9!wL0d6R2DROp89`GAFq6f>CYKfz zq!wjXfmHK4MhP0u(Nq6_4pN~n9lY8dn?5V}AUSdcaVNSDgD z=^6-Kpu3tuy1{A~^pNZV9dnJa>qS(UK0+7hd?S!9uo@J*Ks^y=Mli|1z@Y!_pDIGv zdZ-H_vdDIU2GtREosc;&5uppTu^nU=SPhC@pj8csnrQyZ6=eur7om26)i9LggTobM z3Xu}6c7g!BST!4;>L8P&c z4e@3OU7#DaLAtLZbVi#y;f*Cyf2ujZei6V^% zU6Y}@z-mzJ(gc|U&pRnm9Q_DgJD|G2YEbOb0_y^`f{Rq0p$jx_3lasZVMr@V z1?O6j2xb}sja(zrnC0>tk(lwN1GWpfOwfkM*MF!BwJ}lxXvT+`5i~9hD(AfojE*vZ z`!~qtm>$?TiAhq6KLUn=EK+NF>bx@#J z@PX1K1A`e<1Y#F*?ErEuGh+%P0|O{Z%@l={Fyjj}&cnhNR)b;}Xod(;N{Fo4 z8iCMt3aSgN2E{HLa5{vg`P9hQNTKl%stc?J#V*kN8lu)qyYIOLVb>3+F0dLDyFkZs zBK-CC&|IX@;0I-91_lPO8Wg)gVET{;`D2PZ6Tm)otZfb6F0cg(wNC5*# z1UVOg4uEB5Ol4o7Epj5ICAzsLKi1!(1L-10i*_17ieEHGb5<=3(~bG z>-0;6E*+>YkQ!87p5QQq>B_zz{1u@q45|yH22~emH7zqEsP7N5E712qEJ7Ff1SSRs z29O$5U7+=Ph|nnL)%=CfwGwI+S^9u3HaPb?=(B6J;x>H?`j)df1> zkeLzGLI&wtUaT<}q3a7&7f21NF3{j8LRZ1D4UGt0TF~wkNDZnk&@wq@Mo=3bWY?uL z-24b#2~b@iHK@8k+me_WVId!IGw2>d*Hox3kQ!87pi}D+y4rJ29YW|j1=R&ogQ^R3 z1qm}FsKpL);jTar8H6s#x(EjFm0YO0K)p?bzy9)eO+x4b-Jbw53#0~B7wAAqgf6We zLVXBbnS3BUko#Uyb%D;Eh14=26|)!htVQUW2h{~qgQ^R3X#z7Ns80&gWi8`13!&>0 zR2N7MsxHuqaD=WmD=)PnbTNX45~25(qUr*Ts3TJEHBZojAxPc8z@QJ+1yX~m3v})S zLYK(@&>sl9VxhV~YEX574(UYbI_!1!2|`ylR2N7MsxHuY2qLF+?TkZ88#|%8Kx$BR zfrk4LWmIA{4;#X+XHZ=rHK@8kt27Yhp-bl`9)vD#XqN({22~fRdPeA)Y@;QB&}9PE z1yX~m3v|d5q-6z)H?`j)dgCs!ORF6 z;Q`rI@MzvAgsx>!T_826xN2fz+Vt0`1R0=xY7qu?eB;AXFDf4XQ5C>@*_v z?!Tk*1)=L1R2N7MsxHuBl?Z=5y`Y5@hMdr*0Z0w1F3_kKLYGnMCZsUbgX#jQfs_g% zP!Ui%LNy1p+XLa#^j^?N2t*G9Lnc%gNDV}+4=MsN2ShGJ5ka0E0IhmLgvP-=3y|uR z9Z+2$HK=1mpuv1*M$n2dQ0MPzsZ|MPdlfXY$jk^Dr900ygsyi`U0^jR?N!j((U4vM$hRkDB`XoSKu2VPM8RqpN{f>+<8$&sSqnDy zRfHHD1f4Q~C~f#Tt+NnmLmryNL26KA2Q(wf%n0iLg6yd%44Q|~E3GcYiK)S&7D?J{I$1dX47bU8FQ zBegdopt?Y6P<4Tp+%hwQde$IaoQ%^iA?%t6)df<6stdGYl9>@S>H^ZGov~s$Lf2`i zE|3~jT}|Lng|&MVOE3RL=wg93Q9)`@(+22VD1-|qDu5QpgJK1F6brNigqabv$`+Qt zn!#x!v$&urGZ$1(F)%bk(gxBPEa+SbW=7D$e^Ar!TaTj)W~u}2^I>L0?rFAyO$Pbf z2H@1l8KnVj z;78ci9Z=GX(B%x(1y+M%7wE8Bgk7e``sxw7BB8p#YEbL~9ae|1tKgEvZ-lOVs4lP? z6uUqRQ1IH5;l6tOms{(CQCJy#orv)K|qw zVYm^h3#d<_gc*SH5cr! z9;7uFbKv{<*CLr^*dMM&On_B9AyhoHK^YCzHqSD+%$_(E!Hfv!JbW(3U^ffQ!R<$gw# zqR*hZKx!amxB{qQ0#XPWJ4G@Fbix3l*LI7m#Tj9a0aO=A4Qd$rcBT!5RiEg zSjoQvo-%hrOMnvxl8KY^;t{$&L3M%E zprjViY%jvD09k`S2wlRUX?6w%2Cy0wyVip30;Lv^U0xPbI}y4}pt`_nQ0xMo5`nO* zw$kz$LRTnM7g!C7U7)=xkX!(2EAjhzmLhbOKy`uDpv-rJc7-!DhC^3o6>j(@ju|_k z9p$KfnGNvRnF2L=14itCR{0@(v316^X$W15pt`_nP<#Q}Xo@H|?yWJ+M(ElJ)dg0A z5@Mj^{SkHrJ*(6}=(+&a1y+M%7w9-gW=2qygJLK9OnEs%*K?>Yuo@J*KywrbyIvly zdW_KZ52_2S2E{JW87m080=E5WM(7d+71^NcRY0i)#V*kNFT$?ES^a?sT{=)*U^OUq zfvymPqy&(^95Z~~5W1Y9y1;5s>;mlxLD*&FmUIcBD+;O$tOms{(2gmHE>KCb+$`z^ zLRUUi7g!BLaY<20K4|a*q!3b$A=O`dKz?WBWdt4Y%fN6}BjprkI@}9ZgWRXy15byo zP`mbEq(jgaYlsU$p^++AWQ))>0jdkE2E||d!FGXGr+}QBd%K+*p=%LT7g!BS%N(>i z2r;Knr8LC=QLb)<>H?`jEmuJ!35b=$`Z|6{GuQ8-xR{gCPE7N!(g9+`X->&Bj3(ne~uaQpneuJBk0N(SowSy9`Z?0 zlMiEr{86yUus+e@o_~=DUHMR5U^OTqe+;Y(R6c|JwY<^)Ekai_R2NtcNSa{=R0Pvs z$HC@+*8hS=X&RT$zJuv6(CM4ZjG$GIFn=9~`)ecAj3FuID5ey5z8XbyQpuLH(_&N`dFHY!$ z(s_*d0-dUaC;>ik^Up=-QiAFNt3ipcOJMha(jlnaU<|uvg3#px)dg0AQi_5$`XlTT zH%&c+(3J+&1y+M%7idHR63!sIY*(ZyA#`;>b%E8O*afa*vL^^y8)df<6ni4?!b(k4J zYa~Fr_$5BYAap5#qL~4*g9%mFO|V_C@eP}I=aF_&L_&3e)S&9R1=a;xlK`^ocKrsV zIiN{UT_826x^9DYf!1Sybg@;|BjvBtP+cH3sJiZebwMk8hFd3=<|6#X3|c}6y@VB2 z*IlqK(0UAzU0jp4UPkCLf$9ROfwcK^p&}r)ObofHxy7lVL1hpZqxQT9HhCU10|RIl zyp_4~5@y~3ohio5_yuY0{5^QyX@=T$4R(SZ!R?M})3^s4lP?lr;7b>>gOV zmtASaAB3(YP+ed(DCrq=+8M&GuIIVw2wgj&y1;5s?0O8g3zknMN}tCfbe)6h0;@r> z>j_vFtPGb~HoF|5>oHUpSPhC@pkq4_EvvH&q}mX=en54B)u7n*48^W5^EW&}=;DQT z!oX@!?0OE?1u8B<`PB8lVi`i00#p}R4N5)*?cax#B%p+HEd5_JQW}Hm0;xewnJ>Y1 zfmX+XbXBIwx*>GsLv?}Fpy~o$w9L#1T3HIx#d@kW8=-3jR2N7MBt1Weih$Ijn)4cL zJ7{$iNbY9whsg+YenNGD)S&7DwMLj3q0J+PLl+v6=A?|FQ}-Y>5Zeo(A|M-3&3Oy9 z9kj*aOs{%gf4HWF0dMuv_({6V}6 zP+cH3sJcLBPB1fq>ST~Q2!^Bs28Op#T_826u>;zP&&(Ld2-$VkaV&N3#OXkgmf_nGy(Htx#QHH7It0&bmO@ z74f-eCPLRTs4lP?6ubU|{RK-uojP_62wg{^y1;5sQXObPG&3V;bvGzJqnBnWBht@P zs4kEi)Re%;$iTqN2y0zTDx05*(4_&*^dL2;x)k*rikjOB%rR3PXk|DvqYn5YNRW#d7+BzY z9WFpkW?@86b!=ewz*3zI+mgo!T`!=zz-mxphaId7Bn>JPWCb^}Aat>VHVrT^Fo4y7 z9ik2u!7NunXP+WwySli_kyhMULv?}FK=Ne?R0Pu;POy7mJt@a{AEXv+H&ho$4HH9A zD)Q1;P)`cv#G_C(m?m?9O$M!j1gSf@(y0uQHm*Z;fz+VJGB;QkEFC6FPexi}CJx#j z0Xn;%5o8kboE>OqDq`Gt!@X)DkP48!3=Dx#T_826c7euKm>Hqc3_jbKdl9-WLWMzU zP<4S$14iT&#l4_53M7;n7Amiu;VSlE;pzykQ!87pgoPu zjG(o+AiwD7B|!JEfOz##T_826x=rS|HT)58a zG1B^|A5dK&HK@9TQT)}CcDokgFC%DY1*8U57wGUWW=2@cYWJzv4hUVjP+cH3sJcYK zc7gh6ApeJMsntN}S_ahxQiG~X46F;Zf)}Lg=Bn+#5xTBHb%E5N>H=LRi`d;zx;H^J=Gc&^Ku76HxNOREIP+cH3sAZHS*oB}OC{VM`-&yS!W*H>~Rs-6f z2{T<1UPie>O_szcqd*7eA!?A98us1@T|rP?U^OUZlnmG|Sj|{d%`S@21=`CD3P-RS zl-f!btP55io_4ZcjL=mFwF|5U#V$FpE>LX+su>??ADWBMH3g~*tOms{d9W^+UA8wr zup@M>g6aaRL9q+8y9d$>0NK@eq`)1a>i|?2SPhC@iYRtXm>94Iq3aq{7g!C7T}ohG zpfCiL^Ey&%I}y5GL3M%EfC7`@KU4(7fs`d;ut_lZSfvhzh&5aURvLT2MPR8l2}K07 z3?#1vHXH`hga|-D4XJ*D2q!zv! z+~hk@lhq(5Bdt`?0GkX;QGD;89YN^&1=R&sgA&W2bInlasSK^xi_7#P56P-d63 zz;=OF!-9MvoT(px=?iVJ8ssrpEx0dSp(bl#_yTm+0wTYwE^w4V=*oiX0;@ssg)Z1G z(0DK?EOzcLVM{wGuy zNDXQ^Zw%H2+Jgqtb;{Zh>AVYB&?ZID+1ij+3R3Dd0qX*#F_5la@3$KCz| zT0PUV=_{tmmKY{mz)h}$nrs0v87aqEfpvjG1C)M_Ek8F2p=$WJ z1EUf`*G{M|uo{pw!)>Stv~`LUVm2t|#NL{|9@Af-vkI9RL8F?m5VL{%>oe438;HM< zOtwQY`Eb(Ic1)A)!D>L`z%Y~T;3o4z8{>8uCWB6$faD91=kl6&Y{fJgbbkTr3P1H@0)Ni(p4Hc5k7;FbeYn)d^n11lwxlh^IU z3^9MO8qnAyEX4fa{t||o?1$km&?zbie}PH~gf0!JF0dLDe+7c=LiQIzmkU%ESPj@W ziBJ*DQX&X!4$NPR{vImA^j9!g4YI$2;QlIvnjD1TuMn^<!j6uW8!&wl4OW9($3?+? zAq?7x&%nSCh2aZOTM^+4MwhBh2wmDxU0^jRzK8|e1@ncAbaW#^mlsqQSPe>h12q1L z82jq>5Ic@&Z)8Drfz+V3H{!u|!DiMPmWZh%bj^b50;xgmSAtG;LF^~G`O?P|GsF_X zCWBTofI=0N9TMOnb`ffF0wlzc@_Q0k7j)r1!^&w7v8*Bho&L$p2wF=3GdT%v@^h%k zNf;)BcKtImf~NF9<=DIEXm?CEgU$;^O{*zzlmA0aPJx(=R6?eK-3-fdS@Wed5W2*n z!-`-vD6tGWQ4GH@1liDl4g97HUyu4L9j#8((p7f20ie1XnMg`A)Q zsvRD_SgD2S_bjk4KzRxls+n-Vw?R$L#PEAISQpIihd({~i_oyFhh;)S#x8O0Wx|O%{e6 z{ijH~rwgIFKx!ak7ptKnkhBU4g?(@lkZs7L8C77DL1P-AjetBp51BASwHmBu3(}ZF z6+BdLKuxZ~2vyKI$dLR6D(fWDy>BCQy@Tokt3e4>&?)GM5^3>@n_m#RxS<=)z-mC= zV$g(&fH)ApyQ7F8`?L=13y@nts(a;ky~p%vJy;ELySEPR(AF8m(Y8$f3~!H@O#TatnsZpz|gXW6Rjx+zvJwxlhyvH+eqPZt?@D$z2#GgT}oHxw#i?GH9(A z%*{P;lm9_Y?!hp*53CEnn?d&npq^jX2RB(1bPy2(14AE%$)K|o3Aq_`!4PWuX9C=0 zJ*deOFif6AgqtUW)gZU5Cc#bihnhSI!{jMoUHC%-bfFIFUb881lk=e_Pr)#G8WAQ> z2de?C@`c6VG`Pu=p(anmFd1}0C82Ph2{swI1v>+7@>;0LGcZh^1=fW>G-iXK&m>EIG^@7%)t@Q$(Ukd7XA&-88?#w_vy=o5JhzOF`*2wh*Gy1;5s>WlecU%*-*p!x!#iybv+NAgbR4;XnYzANUok;uWU7@-_YEX57u5Uu@uolS8%t6?d57h-ygQ{yW zid~5-Uv?pM&4B6xsX^5RI<*(!uWd4gNPCJ8L3M%Dpz2x*whL7MgF?W^Gau=+=hskO zAT_AEK$nOi>}s94IvL?Y5zsMX3=9k)HK@9lgYANaVUUh-JwlfqR2N7MsxHtut%xx6 zn(+(iWU36PE|3~jT`R$M!DduvxV9qA`A&rD0;xgOwF*U-{|8y5x$J{bT_826x>kdA z!P@g}ax0Kd()b9~1yX~mYYkWzEHugv-k6UF4F%{je~=nfU29QvEi7?pM(FZ{>H?`j z)wK?+3l__Q;#x>M$BUu5Kx$BRtw+(-AUYYTpE3uk3#0~B7w8mSM0|xW;6~cra1^Qw zqy|;jMzCG5F^4r543W}1RVnd14s?3uFWXA zxKx9XMk<`3x?(lj0;xgO1-fJp(dPe{bww1RYc5n5NDZnk z(ET6?U26AzkV4}$R2N7Ms;=!|e?hloGjP>-Agu@Z3DpHsgQ^R3#xWui&+VE|MYNDZnk(8X4Ww88blZZ{${s-U_+YEX57Zb?DxviamX zX9q&pVyG^V8dP0-z@Y(~Ia2+=f|M(7Ky`uCpy~qMtAsc|D#7wS(kb!0&;uJlYEX57 zdZq{$h9!tBMYzxjstcqBRo8wL7dBq)*@@6q4%G!xgQ^R30yV;g1wU`SM(A1t)df<6 zsta^FJ2NA6$ufh|LLNbcu7^-vAT_AE4uM?=)Adzk3NJ#J1av_SNDZp4!(d&|#qEsX91yX~m>j+pE%&yLP72gqdwLo=&)S&7*ilQq{`vFpD?1t(BsX^6s46F<0 z!ovc`-XrY#1l0vngQ^R3ks=~jcDJ{iAarR!H$8yVpy~ph5020kVN*S71)G)Ld-5&PNrs_NT_826y3V2K z%Bm@SjIgT$stcqBRo8j2F3{KxsBP27xkenJYYtQwNDZnk(CO`nvE^*Gt4M3(_d|7o z)S&9R2(}A0ZoFr+FVgP3S5RFbHK@8Sfpx*!06(s6_e8i*6uLkjqy|+N=$<#k{y{^% zGNiRw_E23QHK=1~pq1f-Mk+w}(lIlF&K7|6Wv;+m?@3UTuRvPwNMj(^z`g*j900Ai zZVGe6GDmhDtOm654QBE+xXF1?ldnNcM(P)U&do>k3rv)mdl0&+pt`_nQ2GTo!FGXG zqJqXaygX0(B6Rgbb%E8OtcC*JnTN0|{o6-Ngsvq}U0^jRcHKs?Yu@&Cw-LH_LUn=F zpxAW>tP7MfK`wk;Iav##>l{=USPhC@cj3A~>G|-~|N01B523oiYEb$+_fT{_;BnwU zq_MA1T_826X$*9C2QwpdDFB1Kz8%tiE)t-nF$|FVJy6paX!I3w<~gYRSfRY?73Rp& zL$G^5du?DT;Q>4)L_ke`fRPd&fpx(`EQ2*;0zy|RR2NtcN{BrM>jJeZLE)@&C)pdJ zs~V~ctOg}^o`7}1>_4v<}E4qiKh(6t<@3#NU8Bl)+U6mi%?x)H7N6ppc^Kb89_6NpwR)LEhjf& z#?DKydq6Wdu-JJ4kDX^wlV4!O&MUAkm@imtsUcnh4beR)b;}=$0GEo(NDreG;|V7@=!3R2NtcO6-7c`(S1SrD0Gla#udp z5;Jx{_W?39f?5l(*!cjDooi5&KVZbpClp_-&}>Ra=z0s)1y+ONi_c(Ppb!K3;-#kY z3WP3h&=JlI3=Cj3D5cF8urBCU8HSgB`;o>Iw4k~`YEVm?uV7uEGnPSinJl(NIxjaH zstcqBRTt=1M8v7Blk+4B5hdGFs4kEiR9)Y}c0rpp3|e1{$(&|%e}{X2{xlaS{fKzFV(GlGua1C@uG8$ct}=p$yoz$PQtj6dOV8VEJ{ zCq|rt?oC3}R*F(*Cn0oYL3M%Epu{QYE*4121m!q`)i0D0x_Y3xz-mx(!C$ZoVY%R} zSjbs~u60mdU^OUq{R8U)r5})8bADT=BXnJW>H@1lvFkrr7tF3-D*K)zbbW&A0;@r> z3v}@sYI%szB?Q}Kzy!Vt4yoP32ohlgozV?Sb%!tAH^9tsOkg$0YhW0eK)%24AuoXm5zboXK%6`rpchYJee6mE8k#wnHg@fAJk-Kh{;GTB37`;u<*IR zj(Y||R|-@YSPe?}uz_{KMoM{^{@z3AYJ}H@1l@dX!H7pyj)dfMv~Lf12>F0dMu z6vYkJ1+(jA5bJG(Ezv9(GTUq4y*>H1`!79 zg4H0el2Tbgr7Fk-1_p1aE|413@>v9|3pRStz1s$ZKgF*+Shk;=)R2N7MsxBF@F4#JU`;U$yjfa1Q z>H?`j?QzJ0b%FYTpkB1lg}h~$;VcJM16pqYE2CuL;j9I^Hi3bGK^7yN<-xjO;q265 zI}M@B4XO*Q1|^(9_n#r!vka7bQk2Q(w_91lr zh3W#UK}kQVV7p-HXX6DKq%m_v=*BgW8q|~kx~CDcn+assTj_H(i1d>H)df<6s!JVg z7ql>9u=vn~G}ks6stcqBHT{6@qGM(RooNHQeB-Rl)?Cc=qX{+{v|j+0el+0e=N!~z z4UF`o1=a-%=Vw8SA0l);fa(IPK?!GVxGs?2K`YY`x_&}+fz_advkq7nC?$Y&y*s;h zBO=6vK}*IM7#KimP(w@?tP7NHK)TA^i}(<_e4)BPYEX6QfptNLv>2*CS0l|Ol|yxb z)S!m5K3Eqhor3JbzD@>o3m`Ki=wvWhIP1g1c@xxReMmSXwY3bvCWB781C_MrE$>ud z#-I^c4QOW{%w$8j$;Y848$wJ*YHJyTb-`j#;cIR&Lf1X0F0dMu7&HOvLM~|$y8b|Q zfz_bIpea}vbioIMrsZU$5ou}A#VHI73?MbAabX751?!cpeDDY9T>TKJE|3~jUFKk2 zu+);=CW>@QPcu{(NDXQXg6=S7W(4IsP@A6XMO7STI9q~E2CXQDg|h`bocBUaw!jEy zE3htDIRB_>TY=DZ5vmKU1|^)W!Mb2&OVGv(;s{-Dpt`_nP{P>;tP8fFQ=q2$4kFES zfUcThU|;~LK@Bm`Ije}1x9=6bJ&w@j2Gs>pgR098Y!@iBKxsZM)fMS>fEK7OkQ!87 z_F!Ew7aqB%gESAa0jdk62GS;Z2Ni*|NswD04q$UYBRwG7b6b};V#b#vSPkerA6R@j zz~k#5)MN)pd?DpHC$KL3dD$7P26_FM6WnA8(B(V~3=B>fCcA)j;Wyb8tOj|E+68X1 zI@Dwr43pi!xILnhMd)&c z>H@1lNxhz6U7-F2D0b#f-~SV#D;lZ`tOlh=<^|RT%DEt4Dbi0KP&uo~nwR9%^`4; zxj>gzF)%QMKuktTnPFgE@RYfG$$5k>9jGp_8k9H<2kSzPQ-rQis4lP?lyVhxMjv8U zI{&k&9ioJ+hw1{UK`rYd!FIuFy@kB1LJ_*QKy`uCpw>iDU|paT4hk`5X{F_uAr=i* z13FCz7Ryoa5PJ(XISM1hV!*m!A=VV*yb_^{2XxIB=;kAk8k7)=1&M&iu|atmwAT!w z%Lu9qtOg~-;=sCKJ=TOn zkKy-3ur6f3BXq5U>H@1l@jK{DDoB3^=68gy%TQflH7I^h2HORjJI*r=N4kmNCsY?m z4XWQ$z`8)|Awlu(Te|cbrr%S+YCvb>z~Vgx?st9Am1_(P3@I3XPXp_M`TeZtn|}yh zE>K-yH7I^h2kU~3Z-C+*p(_EZ3#Gv$K$rq6BDb9rZeHGN?Oo-o+%FJxAF6eO~3<7P5JeVfufYl(IoDDbm5Y*&s z43l%gx?pwg{^Z?Q&Zy4=t3fW=a^WW5fts8PF&U|3%LnU%#TTf~Md;2rMg16FASh27eai26!OJj zU7&r_Wm!NTYGNe5?yF3`y>pu7rJ zgAzVvU|q2Asn)ZfiqO>twF|5Uq@7_oR0P`cMA{Wq4mJn2r|-^w<-9aa7z-gsv2*F0dMuP^|&$0+kY=Qmbg6=q7}&R;Vtp8kA9* zTCgsdUB60wnGw2{L3M%Epx9Lh)&**%fb44hVB?6;bsVY-tOmudday2-UGqYmxDmQu zKy`uDpxD&_)&=qxC>p*89esq*#SXeUl7WE%tOg}FHG*}4?%V;zPVUt5hHe*!Mb3+i0uiPiqPc&)dg0A;)@orE?AlewZjp*3ZS~cYEXR93f2W$ z>jl<1H7XJ_jkST*fL12Ma&9Z!7c-$Iw=#iKFH+8J2kV0QVwS7OHH5AmP+ed(D8A?b z>jK3)C@%iGde$Oz-Gk}^s{u(fu!64W1hZf{Oc_JO1VbbcMMTBN&kVYVk^vMNY$)N= z33g8<3j+h_Ue8&-JF)Ed>;kI^U}j)|^-(+F;Zq2;s}m!ZyTQ6(;bZn8Fc_h$4yp^R z1|@uYz`9^7f>NI-?MLXE0@VdpgOV?L!Mb2}?I?X{iO{tQstc?J#jZZEE>OMz z^*IP#2cWvZYEbOz2kU~_m1_H45uxiER2Ntcid_@Hx?ujY{9tK~(DeqY3# zFuPXf{JE-s3vBD!Bp-T*^3#YkZkU9eHLulH?`Zi-<8U7X9nzyMMMagP&J1kwfoxyK(a0H?`j)inpK3)Z*VSnP^48+aV53#5jL z0lIey9P@L*x5i;J^En5QF#q@}N?dw`>px4VODNRYoDhP;`l zzlV>zyQ7Cgh$n`mxsRilqraDjvxA#Ygom@I2a3HGZq9zL{%#&F4j}&+gMtUePrj~R zE^clC0U$qN7;Wb2=L>Q-Ocupta~~HUH@^UPKTzDI@a4hQ!j6{N$X(%-r~#{N!u~_fSul zco)|&Prne?AU8*6*Z9z2r+5$l;E;G{f4`6*e;*&$ARMYd+MHc+NP2`iL1g?weSC}< zoP8XFgX6)r`FJ{k?102PvV^n0Z-9TWXNW69fwNDrr;A%rer|9{QD$B`LqTwANoj#g zrh96Mb53G$u}f-Mu_Ij6HLo<+CABOwIn^^SEg!3JNorAAVsdIRT+%(Y1f~Tl=aO2I zn3;nx)g`sKq$s}{IA{;E@oReRi3NpdjH{Lz9Bt9UqC^fHy0m^gE$jnKB zae_0GazJ4Lm4mn|-qXdA0hFnWlj1$|GD|WOb3m~S6>%#{O@+z2rBLODsu+8URxPic9<|!1f1Z7Qp=woLU0n2IS{tCRZYvgDDu4nwSC-g((Uz z$}CAm7I4nbD=Es)2`NgdDtHw^Tu(p|#IXj%m_$Gk#3Z~ff`$Y> zHL!rlNX$#gNkt8#)S{yNqWI#HB3J;x3__AXvjQOlZBsb8JGlEfy81dhx;upCW#{FW z=h>TrRoR;+=clCFo7$^5yOlyJE2th9R|hvI7e8NbPk3F1O$$h;r&~U#K=Dm2c3_B) z&&(}|hYNu6lOscXab7`DCg|`~sNtsWt^rN~0ghe{_9|{ZAj?ziRowhQ?f|!QQj5S| z&df`9us5`~$MCX)gQbHd)Gqhb5}(B45?4?-F%&0)%GIjW_=3ce3|NSns-Ou&5($Pd zBr;8~tHuz9s5Zu~8bcVO+6cR93}J|BG*?4o8C5hs-aXg@oNS7mGg6bYVQoYccPAH5 ze-}?j2YVxXBYP8jBS`GV#}}t2mlkD~RK_Rg=Vxc8G9Zh9On`}lGGu&8PEIi_7?A{^ zPC%irJI!_UjxAt*H+R$qogtcI)cboOxe^>p<^R^y1G#@E5a$KNBs&&?58 z4T=&cX9o`_=KwcvM}LqSaPa&~a{^YQQx@bkh@iE6ErlY_gDpQEdblM9AQ z6wCb_yuF=WTpj%!98=0113Zn5>`hW~a!}MbyEyo{xO)0|yZbvJT11dK7`?>-Z`wP% zIQRzmIl2eh%*~!hx#gTYTPVNqFZq6=_ey%V*D6J&4Aar+d^78febaQmU zsv0dA-5k6<+&vv#yx{IZF&ibAoctZ!o&8*Voc;Y^Mq_Qvp*hIk!NcFx$I-*Z8?P=j zhxs`K_;@=8xI6mb)rI0fXJ-d@M?YUzZ%;RvCV0yc-rjKYK>=1hVn zCkHPtUmq`5Ur*vSIr%xbyE{9%csRo&61j;DZ8{dC1)raThqsTHr*i;2KCx*+3q4;4 zKW9f5XKznmc4EL#LpqX-P6O@*$HYgsC$o5dN?^bxOjUzdwMv!JD_#2&>ZUI;Oy?= z?c(g`gsu?HjgAif&VF8wzAhLhqBzge$J5E((aY1z!QaOfTfye!;^61u?&as|@92Qh zzd>`Hi-WIEfRnqEiwCAsH0L=xcsV(G`Fi`fV=6^)pp&D6i<`H< zgR_^5yO*=CE1Eh~n*$vD{XHF>{X7EDl%d$_@8Id^F?m>>*(v@ z?Bj=`2-QA62UqU^cQ;>W6g4Q81vvOSx;y&@z>R@)HBl`KaBy<=^7jG_;6S4Rq6%so zq$TE_S`tu{pX`{DQj}U;3~L?uJ2-oK`#Acz!MzO83ULHPr%!%jice-zQDRZ0BciG0 zo1apelL~2ZIKqtcb8z-|_HlIc@pW)cOV3R&LP<8D{syS^pO=;&pORRT2y0JZibI`n9XOYBYalS&dZ z^XyGQu1QX{H_gmT%eOa8Ni1<-0GXEw>uATPfQJ|0Egu|`NY2Hg71V}Jt;j4 zwS)zgn~#Hwr>~=@Q-HHWK~a8sQDUyWX<~74Y7wYIZf}~Fn3)3_g|oM`H_a$1DX=$& z*C{UE4&DJSo=#qlP7cXPzDi6^PAx75`KAOia02#HqP;0Xr=x>cfQzfIud_F*&YYb5 z937y$Fq74gronUe1pGXc`Gy>Ez(;>+I#>?1VK2Q0+r@tCPEfx3{C4i;sst zIFjKiVUYrf=?u^iT5?fpVhOxwh#~}y8)PwP;&AqKaCP_c@C)#E#}OFC1&N^4k(OU% zZ<>)TUqnN6oio&`tsG^WQg9%o(=%Ns{##q&&i$c^I zVO5JR3Q=o_RV}(GM6Cf$3$Leqq^w}ZcDfS<3IyFW?-OernM$%JIbV(>_+y(uIK zq9j0MlPui=0-U`3+*}~(4`eMQ6~SzBbnx~GaQF1_M@xN~#rCFYr8zmE4!5%>r2lQ2 znpaYknObbG;_QWDikY*Mhr6q-74K@)~}149^M zwJCPh7{UOp_ zatyB0B<)pAC%C|%u7oxvNsL$bg?%K@N}^^%}=v8 z^>B8vH_d>DualpHufMauhog@Zd=w}EoZVf*T>auf+1|jU!d}JM-NiKwiR)&s;_MBb zx`MjG$=AWj$mzJ3xj|fwE zOUzgWw+cvB#HRw17mNs+flmd*4BW1O#w<<+&;WJuaqxHab8+%>_ID`FORXqKO$N`t zLcCsD1fHJ(wN%0LJn$%W@pbU_a0+nu5AY;Ko3p2bldqqzv#*D<1Gpue2paeW1v0u# zC7?!68r(itM+bL*UuS<8C$!8BZ2+P>7p~F8&%w#n%`d>kHvlEwg6}~DH#t$X!u5fs zt9`uOT)e!!9dLyqYAOqG@OAZf^zm@Q-YQ11#@;jqHbe~>i1W;c&Mh%O#xlW^6tLpY zNCia@lD^OcA<4lIn@Ti6h)M%&D$xWXDpBl)rYdAHXhL%Gb#Qj|aPklEb98VAb#h8! z1N^XFPH{mhxJRMl>;`RQLbbX$J9xXhyZO6$dE(2U#-L;fny`gOlC!HrfWNP=r-yTZ z1I!kC3s8AdY;R$23Tj>C<=dO)3aRA$yu8%p5?IKChlL?MNLa7P#oxih$=%1< z$JGNRwWOz(fVys=849Q&nfZC3iUjTyCvOK2cQ0ozCr8wDmS2#XXK$KOngnj*xE0$Q z!x-SHen=PB8Qgzx%gjlIcV%7O9Xx#feVqLQyaiCiM=Uux5(GQ!`nN+CBV(s0VxqcastS5 zP*bI(vH;#0LKTB19~42T%bZ*t+}&KAUEQ5s9CGr@LGhKA37Q4AH-$8PAa)>B`}+F& zczd`xJAfzq>`n2gHuD3O9KIg@4p@vb^6__e_xE!EnGeGb48^IS=~d{W7NiOnTB#bU z;8Xy~o_G{MvXucL6Ywa2n1Is-&``!D4-G}n#09*4f;J5X?;RF{G5}~S zATvELAD-x49Uc4w{QdmB-FzHC0|uo~VaP=;Z4&L6LKHl!0J_K?Da{6_E&*Op;93+Lu=YSSuKw}X$pNAn0 z4MAM;(B@caUQucqwBZFSL7Y7ud|ljKeLa0$QA!Y`P8A}sO$!no7*aBelk>|`i&DXD zI8bB105tCoizPn?e@7P=7Y`@Ykq_uizV@ad|3LFF*gepK09?PJxy{wf!O!2%&DF=x z(*Y@*$`gz2P4n||DnaFI3AFwP4Nv8O>&F6kEI4~Pc>4J}xx2c!5{QM8{Cs=U+(ej8 zLuYRXFMl6LFCSNMHgf?*ZYqc<0}+`ZA{j)0#lVZq@<7}Y5CIk|0gC|&YSYX^31$+P;h~&Bkj1g_E5#lg+l-^tD0JpfiatXOQ;>3dQ%Ih)H$}9vTznjSJ^j4AJp)kNFtDj!gpV^*>`ef+gw+l;Od9kJ%AJhC7^JFIUYl+vxB#zmy4^H8)^#2VkvlB6z)$aPX`ZI zR~JtwPj3etITa-lxOzJHczXN$d*DsIrl3+TEx$A`1#Xe4pPQSLzn8NYWSt(0p~jy6 zetz!GPJW<8dJq|yTR?-ZuqK=de2oW06jDi`i$cnEW2|b?MIma9u&PBDg{Vb!7g`Yq zb{3>H5(HW35}cZwSdful1e%!#t)&P_Ey~RVEy)UjEJ%VV4o)p`Ed#AS0~ruske>ry zZU&JHPs}WF%P$Jf%uCNn^-s!5O)h~B;6oZba2w#Q9w$c!4{tYLcQ+4LXg&oGbb?xR z1{M*J;DwkCngoL^mI6&Hq!t%@reG`W5nVSFSx93XsbdF=Cs-JPY6L8b&;kv+Dr7Sf zlS?wouyiD`*@sHe@ThS?5kc%s_^5koT#EC|iUehyxq9!}0~p6>7*1(JpYJXDQ~ zn}fHzlaGrF-l`a!jlfwRQ41%7)-7U*2Wa09E(2*1AoU8-{eeXRnx`;TK#F}(mmai) zFCMlE4Q?ss*a|EplXFrNi{dj9a}evoia;y=V6`huU3O|wUTO|(RU9OO;KnDGlq4o+ z#G|NzOM<3(@JND}l%m@PaTUxPkhNN9%^Ivq&;kmZ8t{m5T2X3hd|C=aacNR+W=VWf zX-+mG(4ZD!mxJ1XRT6A;VoD0Qq(GRSS)7l{a8xN&vr*)r_9a8sXyP&sQySGs40%}W zLXC$7I7X6$1QS9UYAi18(9GoI>EPw#?CIg><_gboXf~l_J|`~+7bj1@8HOQ^=2vui zgkL?JUHn{qJrI6HQws4b%pRD-;*%3|azJZH(E}Ze0yL*!ssN`z=mJNCY<_M*PAX{T z6V{G*@^*0X_i*v^a(9MD3_>~7JrL)@yypR0ZRF?Y@8jYCY2txKJ3Q?T{b6eyQM>*y zUqao2%a0h+Xg)-jhq=bnA;8<&$v?m;0PcP?r4ZMnIU^NRnZt)UaY$l!0#qx^0qzc- zo&nx|j)O4;R#Nm$b~h6!7>%ZemGt2Dr@)i3DgbrzkZy zzbqA2n7~^G{$;5}If(@YsVPCJ#idB)b~0$z3bgPTw6q#MHK9qOc@k9?ZdGt)aY<@! zNM>%TV=-s|2gHIla-i)fU+|LcQpDC4aFd1sSpd{_LJ)}7I}>F7g-IYyn-r0 z@eD);k~UI{ic#c}^9w5BWf^4U2XwJIXaox>6@cbzAVP?^hl@c|s*|&Whoi5Xr?WG7 zJ#uJqQapTdKkBj=&~i^-H$NATfB?|SWfYarr7+aFrOAyZifld$~Kp0~4+i)pAb%*kl#QJv%L;NjvM;N%MrUHDcJG_;l-mWg*PF`-9DpBora&YqXbaC?Wg(nu+z7;gPoj`W`JGsGp z1XG4)v7>{Nw}+d%tD`%*LR5R*9Xx%VeEs|p_JY=QWfr7DcGjR-?(X2_=;`VXTKNRs zSA?P(%?)m#MTUL>ZjN3sH=w9ScZjRAqqDQCKRm^vZ1KTxh?~Ecx0jO(+-MZl7!GlD z^Ko%?_rPv8szaO|JpDWzoqhe_i4wf}8*7g6a`N}|@^XYHN4QEf2RJ!+`Z@diySu`3 z1Y9MG<<2e+uKr#={(dgrNI`~u_Y`~}!x=QNSZDepiIR!X) zdIWd}I74JkYUgLyJ^@2M;%Y4BiJFXB*Cqq)ej=nHotXrm>nd;A=nTmt-k-JIYB3P=sA<-QJHE}rf# zj!y851yX}zlaq^syNk24i(`NfEDa#Gd7|3r*3<$=jVc&BEWM(}#m^7C?hR@k$OXt2LQ*nldvPYx1g?jJzmK!Ohnoj@?ggAwP(uikaiD>V z+1EtR1Xxr+k{LXCU{L`{9N?|7AQxa!0Wkxg3WyoF-HDnEFs*><1Wg5$CFW$NAgvXE zhazY#1}u-k`kOc;q1IuSh1vz}YeW0N@UAV)WO#9jQynB!2&;pHjVY{5CSV?6brAF5 z1qT812&;pb2ajC><`Gs0F^^CvL!*d*GDHF4J7+r7Idz~-ZZ}?1GL7b1Uixi z*}?!C@b~l!bM*0ai4XVmb8`U=34^j0&JiVOK8Cq3wFHs=kq4es&;kvYI;bC<9Ua`f zd|kX;ojn}jS;5{kx3sv#-V`)j4=&_DB~@BxQ89R#0K8apc69J}b9VA{f($d`b3ID9 zIr}+yyZd;1dV9hfvv@iZFb_k9{ZWU#pkV@Uj6l;Rnj%OhB%lbABGGdKR+9)Qf|!KY z*=TWu&1;DGad-Cj^6>VDH|0USUVBs6a149{5$c#XRJ)U}gNv(^mrH;Ttf_@9h)`n3 z)z!h%#oOE6$=%xlvf>T0SOYvTY;OuHT_J*rdG@CHNUbjT{2erAprL>?#)+0bkz^1~ z_Vssmc6AGYcgzt(RcJXFy#5599-W*WyxhIqJv@BfV7^5dkK#ucKL;NtH!lw_A7@hi z2pRu`)(Egn3lT&NilX`+Ll!mq(WRl`;Ns%o;_2b<<>HEW6@@XV0RpNI5y9Z$0NNhv z;^PGC6~v=iff5#=<)kiN-j4nr@NPYPs1rxxg2pP!5H+foQKeA*iy{Z}tfPaUlcTST zqX)bXiWKSgD$bq-nFXM=Ly%pK;Fgjb+{Z4C4!+)A-Y)(=@B#%sR18*%SGSX^gNr-p zOkjH!7B@-V`^~LT?oyX%{qh} zv}l6nEsWL{5ehNfj>|}BvU7HJ@O1R?ad-3qt%!oHLB*~Kk=k4wJe^%Vyght<9l(p8 z!TV3_O_5Gig9lEry=jR9atL87>M>#h>HxIL2bbqil|g;x6yOlx=NaG$+DC&Ca40$; z=^H~0%JdN~7osY{n49Av;P549Ah0_a*E@DdeBvle+N7c3mT9Q-`}{GGkL!38Mzs4aA-K*AEL!P&>b z-`Ua2-^mAk-DF}4Y?}&blm|At3E$%d>ic0j1Lk^gQx(xFh6Oly@CNKC3=pt}&J4`;~=&6$MNp;?5}K$uA=v+&TP(Nf{tJPD~nvkiw~ zkhy*E@OMCJ5qK&fFFDm2bkEP$@9N^;Pgu3RVJTbEb zw92{&t{HLy9_Sna$fhMwqeI2g(A>-b8ot4)C6Gm_j%jHi$5r|!7Q;`V0{eZ4%~yip^l zD78302egdb#m5JY{lcs&m2)JceI-BU}#AV(a64zPr#8)ruc&j2SE z(8*NbaZmWx5!lFSF>LuUY{(R90aU-AgOk6nV}OebxKjmB)hGozcmT!6#n~|cwLphO z7cMKf^bHM+6_9|Tv8kDbxw*NK1(KkGf`Xxefti_^f`YNBk%<9VDuFAd&68n)|APRB z5(b8c(35rbQi@WOOUhukfFieH2fv99)z-HbJ1_p*Tp$rTy(1V6?nI{HP2UUa5ye$k242QxP7|OySs&JVH za@xFb28Pd2b)e(NvAGX)nXzC51H<14H1oiP97GI6f({5*jbvajj0Eu*7(nJZ2pBl% zRe;Zlfe11%Fo43@AF2i>2v&!5)dff#bklfvBm={As9Mkw(%9U0g@J)#btD5reH2I+ zQhZ=>-|{F1hRslQ_}q69ss>^r0|Peqfr9O36a#}nG(;81JZ$a*g`ZzE1A|ozL>)Xn zu(&TNhJhgust#lx*j_B**8^1pF%i4_Kv$MeiD6*409A`C{6LpxJ&9ppH~`8}(92-J z=^2arUc@pme1WRN=RTo0n9CqE*dJ)|>(0QyAQi{JkO)-^G7nq$f#SD5j)5UK9%2^0 z@T-nzU}%S`1DOZ57fbjpg{py=h&}v3MZwy51_s6ih$>v+2g<*q2@DKxq3ZCtPc)H% zK`{|x9zOTkL)Ac3Vs{_t>J#@w28JT2TF^23xWca{k%1u~31S*P_f;e@Ftk9`;d9?2 zs2Yfg*xhH&z`(F7iGkrER4p#|fzsdWBnF1#$q>`*8VPMz_RSU8gTlj%4hq{}>!0-@S^MKUh${(C*3=E=a5L4qY9V@*pOIfguB39h!NdYew2K7#L=utHWa6jtmBdBk1a|nD+>(2I3R!;RmWe zzGW~ln1SxfV}R8A*uoE#{=7077}T;Lrr`@ezbpoZD5yGI;RmYUDxhj0CSrHrSw;qi zhAajK-yDc4Q2mL`eG3>F7>?#JFr?-|)ZueqZyp1~OsG0s?gPc|_B;lLd@i?bj1gMJ_Cb#KE!=+d$E}3n$N%xh^`KcdHMMa4DIOZu$Z?rpMhZ`x;ixT zK>j@sRReJ$_V@r@2Yf%Df#C&IEw1tkbfMg*dr1rq?b9Us)I!G8q^JK`wE&iU}=FEh>)jO)M$NNG*>ED9Q(Ib1aU53{mMC>KW)+ zqH-$COk$v013(fWTw0t2QW*p3Zx(}w<3T+dz5Jvs1}g>|L52hdh6@a!)F3^V5l;JN zCKu%w=ckn@Xas30_!pF9=4Mu9=A|ouF5}3|NiAaVVX+ltNG?xdAjh4##bwD1$vF(k zRv=%24hU2LZEz@7(5SF5(~Lpb9+p{LnwX;yTvD2nnXh1Ipl1*h<{XohnHN)GVHTg5 zn_^}XLAj1>L;-oc#2B1>JCC1>NunT?Ji# zBL!XXbhj~#VP*mn@$qy5QO-dj@xiXnp+T{jzNB&e(u2_nNUAZXMY!01zi_7 z%RN_DLD$uz7(^s1==z2z=z`Ry6<8G%r6y+##ghH^3w}OUOX%V8iGeSsJLSQ zm4ByX7#M^Y*ac06K!Xv%j`6;!B^miC45Cmm2997y(3K>Kxv3?oMGVRe?1I|h>mHpv z{ak`W9795b7^0Is5zhxjKh<`nfa6L*sc)6X4Ar6yD*C$dT;yOET_!i)=9X=pIWJV$2_R~KjhfJg=< zsCnGTih^CC0UH?V8XUqP$-pk?3=aIzAfG6IKi7CqzmOnDKi3cjScvf=YX==$5)v8U z>KNwe>Er0+6_A6YFp;DRIloc#k_gB(LV{rwnJ zpy~vW)w%k)psIoef*`UguxX(I@Ca3e8YPUZ$kopUNeRpx5o9F+LH;5B&i+2&D~3E> z7-XR4h$1U;1sxj%N`AUfSuteUFxMbYH&0g=%rJwc32|iQ5St(g!^htl5)v?LC6HCR zxH|iTat8w}JSCB3L0uv?L|JJdZ&K>S`%u z?Vt;qT>U~^JcGg4CVBe%IfjHdI(smvLsiS5s0LlB#OUon62RVj=JO)aF@bs;KtRNuBKO)k_H3XXN6`+n* zL{A+GTdH^LRF<5U>r>gDPj0#~SkQ(-`m zzi&VYgB~xCRA#28X!%fiCC*I~MLESO^**s|V+AP)Z5%_ko*eh@!&Z4`dut zGJ+Kc46t&}2w6QiR$U`P0(=}j{d_%xeH}xbJ>Uu47+GmRsFROpu!n09A}zr(lnJsr zklj9xk*GxwtY|SsRv8@Z6B-fk=NRVXH^OhW+c;=wLODFR{n$Q(tr zpQoFft4lm2Te~3KD$T$yXbsMc&>}a;)jb~CDPfR+N-{DaNqTtu_%ety@CwR-`xKyj zjC4yB$UI?i5gykjVJZARo9S3sf@5-#^5~-#OG5lpkP5vO*={5}=|MWEVSB!WC3Hy2g73$A|j4 z20J?jxPmhqNC^j23AiK!D}gEim3JTooKOV;jv*fLZbAOOV0Xb}xuCM4K|T;kkTM2g zs9(9EvY?0pH#$HD@<0WH!I20T=7kA6d${^K!j0gA34`v91C^d2Blw|$F8;obo__G4 z6@UuE%WP1=22w8wm4F8=R3pqhA*ejm>mm&7f`*WI3=V}S2vGKO7h+)GVh9X%4T=PX zCb+Ei@o{x=^$Q7#1c#|OI6b+!I);FHA^uLFA|W1>NkNqpsBHvNz{mho0Iuj=eO$vJ zl?=$iAO%ct1)!jd2iG1T17PyZsPe&}6b_OH-4&d^q!`!*LF(Ax>YQ9X9K$^QgMz^g1CSg$T+YQa z7}N}j_w|m4RoQTxIN+*4apU9b=n~Nxqw@4Aj`Pm z(lGzTJ35DWhPg&SV*+j=52i{`sRyzQR4X%patO#oUbs3(7Z-oOcqHG08f_pYd~hW& zZz0^R4|O*`T#ZLaNI-mOuxk*gu!|3H3=R(W4|0iz1`fEU1Q{v-*AVRJ<{A&GW<&fT zsRi8f1*s8)s|odUjt_PWb9Djv!P&#r*_#1ovk+X7yK4w2YsS0y`^JORfpQ`!zk~C> z3j-+mf=m^LYY1_4a&mQvcM9?k2enrj#GsxLfvW(Q#^81(NT(=V9O@fTIqm5VPPy^H z{-J&@!Qd(yq*e?=t&gj_qjO|DsOb!Lm<-r2>~ z*#}&@frOYCoSox+gPj8$gPk3Hz@0Lf;*X3RMBB89*wSkW~b`hJf+|Bp^Yu%xJQ( zstcT$z_lJo6$`Q|cUM2xAV(i?2NWd9iYy7;2?1*Kf)YANo()+Z;#xOHPajtoaNXh$ zj;AokAaEk{bY|dVU>CF(0uA7Yg~WRrfn!b+91wo~E}+gBc&i1tjQ15{VBmqaFoHb& z+~Wfv_o;%KYjAyx3}Ah(K9I5$R9AzHV}b}fhJ*xpI)#R~f|CMBf*B$a;u;YG_CH9B z1tR9`;uzux8rT9A-(dfPBv~Pnu6`k)BpBrC<{ISc=j;k@e}Y^H>#~7e=;q_-4lZTl zL;T~R<%|H-#~ch{A@NSZAwl4j0ty38kO-*J25$O+(htZ&He?Io{^Wp&I{W*A>kLpn z11aW&2*ctPT*5nogV)(VC_W6-$^{pB7Eo?;Taqf z3|GPoR^spDf~f>%0}EIQD7(Zv`}?{1cshqL7&5R6f^1*~%Y_7m28V#c(9_Km(mMqg ztNx&2j(A_sU~p*;>MVh@uz|I>Mu7TIK5p?ruI`}j1*Cf)AL8lj>K_^c?o)#lvx60f z`hhE@5dU~bC;y-jaQO?8%LH_QZF5n~p5@&^rJ34zix`PKUz`^e=1RBi>Ey@Iy>H)4nA(8Q* z<`Xz2nuD`5NDh3rv5Q|Y*dCBD69Zh>Ga$@_!I*(vP#)}NPzv{Pj0AG~i21BeTf&(fA>dywdxdwp~ zZ@g2ek2g3^g48fGU{wRQC@3@_gh8HxLr_nU0d^$;=#a*=lz7P5Nh$HkNer?K9D>>y z3KCONQo+)q3><=n2x-t#=jWxwgRVP3O3=BU0pyDwkh=G@ZLy(z`fx#yr%-_=m%vEM!UgdNH!oVST8{uB?;e@FS(hMAe;=&9JprSAoT=Bw-(O?E41`fe+h$ld~A5?FF z#X=!sF0R3#Tj*RE1Q|F4j|zeu0!opf3;?#hMgSxf8V)K3K}v!l+JYm4!6u0@a0r4* zn3BYFP!Z$n>I;rtuxX&Gq$Dvt%rOY86y%o@1_p-IqN2R~_!0&I1`ff~f(#7cMj6;X zkO;{0p`g$KVX%KeWp+toI;bfKO<5q57{Tsx2D?j~fkP0K3F6~@Jzad_JwfT(z`(!| z955RZ!3B!-qWqlrV$h}93~~${f}TR~xGyeA%u7iu0wpT&I#00gL9Qt(&a6s}FJS!GpmHn7)g5dODBXjC#3H@~oSc*x7#KnVK*f77sF4hE z2`J-0@(n2a#|VHGfEs+@W~i%Qm}ii`UwoJ`I3a-AsmLK15CmzZf`e-pB9(ylNECo> zjxIr7kq;_BKmmdl9w5hy3L%#RC1A@yg&JhW4!+wa9(1xH*k_=)_4Esg4*)kUI0TOi zKn;MEKj2^n`PT*1Nn!w{Z%~PimcEU^*#k6(5$qW6SW;3Hl30|U3Q0bokOB9OUBM-z zF(eM$ef*sqef$GL;$1x;1yV2rDEWed+9@)`6>K1=hYw2Q0l}f5PNcsdIDxu?Vk{&e zKEU7K2kZ$@yn~%*W&(CDXr4XX*~2jitQ;g83iBf-BILMWt)(5y$;AG$s)D&P~D9Ht;Hn9fbwNYvC5h>^jTEiOn+2G?PM&}a?z^bPOMWEbrbD_2;38aufkV&>s>2ynA%zCSy9fD)g8F`b&aOW2E+9A$IKx!J`i0Q2 zVvu0q5Ojx0A{zrQKEX8rIDddLHmHFC%}j{HkRjO#RP}Wr>UBtk7!TPM2zCTcNl=Rd z)OdqsD(C!^RL?x{apv*h$^#T$h{O{Q>IrcOg3_QzkZW+LPYAd|SPM=t;A@iLnHN+h zfcll7uygbQ-NqXRu53VEbx_6vw`%-cL!e__KAyoL48jZ?f@tMPJlF!zFdaw}cyJV& zA3^C7RR0A)sy_yXFANL}H#kAva0Uhe#!63(S-lGkt0#Nc6lm;TQOdyJ!2l8u^OstA zqH4koea<9n=a*5T3=Dl>@rxhoy7#7O>0evDQ`T}x*h>Zm(4tQPMvlOqx@2MdsV;Zl z>OVO5>=6Tl3?s;#*9+GDI=E&-u*}>KynAF1Nir}bfW_BGOrHDrU)3L%byHqOzUtFv zU|0$k-=(@mB5}q^8+Fzk-X*_(onl~k4Hgg1e72>`KK``4kz|x!W1Jon7;9|J=YSUhp}Bk%S{j>a2SJ^Sx+jemz@b!@%$sES{a=5x@|_x~j)m^!w(`KfW_Cn6iM(-?D>k z-g8q{8O3*>7$*EW5zWBR3KloMlc%w2&*}CouN;=SOo9g)7|w&mk5yl4IL~!sS?lsk z=2jLzBN-TESwZG}6}vKb@*@YP`{$)hlGoq(z`&3U7T>g6@ZOaVKbLp)eKfE?Jv)+t zVJ%qP^7GMWi%%$9m+s*W;@@oB4HbL9yB-grlG1_Of}2gv+Y;Yo@s z?Cbdade5`7T>tupfgv3%KI5v{%2IjxxNHAp5;NG0UNSIj2aEfp)lHsRcSLaJp1sd! zPkQFX!0-nw9^HS#S@(+3zXx|(->fpb$Irmv$O$rk=f3|fa^)>Qr{qqXA+zerN(P37 zVDa6`;hfJyOm%$uW=wS{JNt}*;RRT{FidLc4l4zTyr&F?>vm6xWnj?e0-4isjZgQ1nEn2n zysYK{28Qoo@k+^pz;)trEBPn4Rm{7t9?ZaC%MCI=PWvgxxo4;MUx-_I+2-4lXa

fdWhVGd6q$g`FBZq^Q^nigX+r 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