nsyshid: Make Libusb the Windows backend #1471
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
After doing some extensive testing, I am opening this PR to make Libusb the default backed across all platforms, including now Windows.
The motivations for this being, that other emulators also use Libusb as their default backend on all platforms, which on Windows requires the device to have libusb drivers installed. However, if users were jumping between emulators and playing games that required a usb peripheral, they would have to constantly uninstall and reinstall different drivers for their device.
Also, having one backend for all operating systems allows for any changes made to be applied to all OSs, which should make future updates to the nsyshid methods simpler.
Libusb on windows also fixes the Skylanders: Trap Team portal audio issues seen with Windows HID.
Updates to nsyshid methods and method parameters have been made based on updates to the WUT nyshid header file. Updates to the libusb backend (including the addition of set protocol and set idle) have been made based on the updates to the nsyshid parameters, and the information in section 7 of the HID 1.1 specifications