On Thu, Nov 22, 2018 at 05:59:39AM +1100, Brendan McGrath wrote:
Thanks for the confirmation Aric.
So what's the procedure for getting Andrew's commit in to the wine master repo? Is there something I should be doing? (I'm hoping to see it in 3.21).
I can send it on Monday when I'm back in the office, or you can send it any time. I don't care if you put my name in the From or just take ownership of it.
It might be nice to add the VID/PID registry overrides like you had planned, so users could maybe go back to using native xinput with the override. I don't know if there's any demand for that, though.
Andrew
On 21/11/18 6:30 am, Aric Stewart wrote:
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 ;-)