<div dir="ltr">Hello!<br><br><div class="gmail_quote"><div dir="ltr">Stefan Dösinger <<a href="mailto:stefandoesinger@gmail.com">stefandoesinger@gmail.com</a>> schrieb am Mo., 12. März 2018 um 16:39 Uhr:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
> Am 11.03.2018 um 06:48 schrieb <a href="mailto:wylda@volny.cz" target="_blank">wylda@volny.cz</a>:<br>
><br>
> Sorry for asking here (no more descriptive WWN ;)<br>
Yeah, sorry, I stopped writing these when I became a full time Wine developer again. Feels more productive to write code. Volunteers are welcome :-)<br>
<br>
Aric Steward implemented most of the parts. I am answering your questions from memory, but I may be wrong.<br>
<br>
> 1. what was improved through SDL?<br>
Aric implemented USB HID support a while ago. This contains some infrastructure in Wine for handling HID events, and it originally read HID reports from /dev/hidrawX. That had the major drawback that /dev/hidrawX is not user readable by default. Reading from /dev/input/eventX is the preferred way, but it'd require translating the higher level event data back to hidraw data. If I understand things right the SDL work reads joystick data the way it is supposed to work and feeds the data into the HID code in Wine. This way things should in theory also work on MacOS.<br>
<br>
Recently he implemented xinput.dll on top of the already existing HID code. So xinput should in principle work.<br></blockquote><div><br></div><div>I can confirm it working here. Games detect the gamepad and use all of its functions (e.g., rumble). Previous workarounds with dll injection are no longer needed.</div><div> </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> 2. is anybody working on Plug & Play Xbox controllers support?<br>
I recommend to ask Aric for the state and what TODOs are left.<br></blockquote><div><br></div><div>I'm using and Xbox One S controller with 2017 firmware. You need to use xpadneo kernel module currently to get correct button and axis mapping because the controller pairs in Android mode when paired via BT natively in Linux. But from that point one, with the SDL work (and a small patch posted here to support my model), the controller is detected as Xbox Controller out of the box.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> 3. could this be one of many GSOC topic?<br>
Potentially, but it depends on the amount of work that is left. There are also joystick parts in dinput.dll and winmm.dll that should be re-written on top of HID instead of their Linux/Mac specific codepaths. It's possible that this task is also already done.<br></blockquote><div><br></div><div>As far as I watched the patches, this is not done yet. Also, the controller does not seem to support directional rumble yet. Changes may have to be made to both Wine and the xpadneo driver (currently an out-of-kernel project). It also needs some fixes within Steam configuration because Steam may come up with wrong SDL mappings because it thinks the controller is in Android mode. But actually, xpadneo maps that back to standard Xbox mappings because otherwise you see inconsistent behavior based on which input library is used (xinput, dinput, etc) and which Linux device is used (jsX vs eventX).</div><div><br></div><div>xpadneo: <a href="https://github.com/atar-axis/xpadneo">https://github.com/atar-axis/xpadneo</a></div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
> 4. is it worth opening a bug report for XBOX controller support?<br>
I think so, yes, but check it with Wine git. Things have changed a lot recently.<br></blockquote><div><br></div><div>Please let me know, I'd like to follow that bug report.</div><div><br></div><div><br></div><div>Regards,</div><div>Kai</div></div></div>