As original author of the code I do believe it was to support native XInput.
If our builtin XInput is good enough then this change is just fine.
-aric
On 11/20/18 7:56 AM, Andrew Eikum wrote:
On Tue, Nov 20, 2018 at 12:53:21PM +1100, Brendan McGrath wrote:
Here's the commit from Proton that removed the masquerade. Native xinput wasn't something I had thought of. That could be why it's there.
Oh yeah, I remember that now. I wonder if the right answer isn't just to apply that same change to Wine.
Andrew
commit 4d49baf4566d8343055424467bad5e2958390103 Author: Andrew Eikum aeikum@codeweavers.com Date: Fri Aug 3 12:36:21 2018 -0500
winebus: Don't override real VID/PID for controllers
It's unclear what this was useful for, possibly native xinput requires it. Our built-in xinput is good enough now, though, so let's keep the real VID/PID. This lets applications match setupapi devices with dinput devices, see:
"XInput and DirectInput" https://docs.microsoft.com/en-us/windows/desktop/xinput/xinput-and-directinp...
On 20/11/18 12:37 pm, Brendan McGrath wrote:
I'm not a fan of the registry hack either - it should be plug and play.
To match Windows functionality would be to remove the masquerade (as Proton has). That would fix my problem - but potentially create an issue for other games that are dependant on this masquerade (although I'm not familiar with the reasons behind its inclusion).
Perhaps a compromise is to keep this registry hack but have it default to use the real VID and PID. Then it matches Windows but there is still an option for those who need the masquerade (and they can choose the device to which they masquerade).
On 20/11/18 12:17 pm, Zebediah Figura wrote:
Be that as it may, I'm not sure that a registry hack is the approach we want to take. If the game doesn't work with controllers that don't report themselves as gamepads, but should, then we should fix it to work.
At the same time, as regards your original problem, we should look to rewrite the dinput joystick code on top of Wine's HID stack, so that it will report the same VID/PID as xinput does. I believe Aric is working on some patches to this effect ;-)