https://bugs.winehq.org/show_bug.cgi?id=53522
Bug ID: 53522 Summary: Need for Speed III: joystick doesn't work after evdev removal Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: dinput Assignee: wine-bugs@winehq.org Reporter: DirtY.iCE.hu@gmail.com CC: rbernon@codeweavers.com Regression SHA1: adfee25b45af8160848f94fdb24279d63d5f91f4 Distribution: Gentoo
Created attachment 72888 --> https://bugs.winehq.org/attachment.cgi?id=72888 WINEDEBUG=+dinput, ds4 usb, overriden, nfs3 demo with git master wine
I decided to try NFS3 after some time and realized that joystick no longer works with newer releases. Git bisect lead me to commit adfee25b45af8160848f94fdb24279d63d5f91f4, where the evdev and js backends were removed. With the new backend, in NFS3 deadzone calibration screen, all axes are at constant 0, and it doesn't respond to any keypress either. I've tried it with DualShock 4 (both usb and bt), DS3 (only usb), and some noname cheap controller, the same results. Interestingly, in joy.cpl the joysticks do work, I've tried to click on override to move the controller from the xinput to the non-xinput list, but no change. I also have no force-feedback support with the new backend. Tested it with the retail version of nfs3 and also with this patch, the results are the same: https://veg.by/en/projects/nfs3/
Also tested it with the demo version and the latest git (bfc73b0b80a1da2b137b5da4a2fcf530ee3a9d7d), same results. 1. Download demo from here: https://archive.org/details/nfs3_demo 2. Create a new 32-bit wine prefix (I've only compiled a 32-bit wine) 3. In winecfg, set windows compatibility to 98 (otherwise the install refuses to start), go to drives and add a (fake) cdrom device (otherwise setup refuses to start), and probably you should set a virtual desktop (the game likes to mess with your resolution) 4. Run setup.exe (it will throw a registry error but still installs the game) 5. Start the game with taskset: `taskset -c 0 path/to/wine nfs3demo -d3d0` (the game crashes/freezes if run on multicore cpu) 6. After the race countdown, press esc, controls, and try to bind some keys or click on dead zone to see axes values. I'm attaching a log with WINEDEBUG=+dinput and overridden joystick on joy.cpl.