Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ignore capabilities reported by an XInput device #5742

Merged
merged 1 commit into from
Aug 16, 2017

Conversation

ToadKing
Copy link
Contributor

@ToadKing ToadKing commented Jul 3, 2017

  // XInputGetCaps seems to always claim all capabilities are supported
  // but I will leave all this stuff in, incase m$ fixes xinput up a bit

In actuality, the capabilities reported depend on the device and what it returns for certain reports. All conformant devices report correct values but not all devices behave correctly. I've found that the 8bitdo SNES30/SFC30 in XInput mode return weird and corrupted capabilities from XInputGetCaps. Same with the ViGEm Bus Driver. These are obviously bugs in the devices/drivers and should be fixed, but it appears Dolphin is one of the only apps that actually checks XInput capabilities.

This PR ignores all the capabilities from a device and assumes everything is supported, which fixes the broken devices.

@ToadKing
Copy link
Contributor Author

ToadKing commented Jul 3, 2017

Looking through the bug tracker this could also fix these bugs:

https://bugs.dolphin-emu.org/issues/9589
https://bugs.dolphin-emu.org/issues/10285

@AaronBPaden
Copy link

This patch does work for me, but I've noticed a couple of issues:

The red indicators don't work when pressing buttons, so while I can assign all of the buttons I can't for example I can't see offhand if the analog triggers are actually analog.

The test button for rumble doesn't work, though rumble does appear to work ingame.

@ToadKing
Copy link
Contributor Author

ToadKing commented Jul 5, 2017

I'm not sure what would make them work fine in game but not in the input configuration window. Are you using the new Qt UI or the old one?

@JosJuice
Copy link
Member

JosJuice commented Jul 5, 2017

Inputs not being visible in the input configuration window is an unrelated problem. See PR #5731.

@JosJuice
Copy link
Member

JosJuice commented Aug 9, 2017

@ToadKing Sorry for not starting the buildbot for this PR until now, but there's a small lint failure. Could you fix it and amend the commit?

@ToadKing
Copy link
Contributor Author

ToadKing commented Aug 9, 2017

Attempted to fix it from my phone, if it's not right I'll fix it later tonight.

@JosJuice
Copy link
Member

JosJuice commented Aug 9, 2017

The code is correct now, but you'll need to squash the two commits into one.

@ToadKing
Copy link
Contributor Author

squashed

@JMC47
Copy link
Contributor

JMC47 commented Aug 11, 2017

@JosJuice is this good to go now?

@JosJuice
Copy link
Member

I don't know anything about the XInput API, so I'm not really the right person to review this. I can't see anything blocking merging this, though...

@leoetlino leoetlino merged commit 918b037 into dolphin-emu:master Aug 16, 2017
@RedDawn17
Copy link

Sadly, the Bloom OFF patch (RMHP08, Monster Hunter Tri PAL) is not working with this built, did the address for the patch change? Would really like to have both working

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
6 participants