Lime-3DS-Emulator
Lime-3DS-Emulator copied to clipboard
Azahar emulator doesn't work with steam input while citra and other major emulators does.
Is there an existing issue for this?
- [x] I have searched the existing issues
Affected Build(s)
2121.1
Description of Issue
Any of my controllers doesn't pick up on steam input for azahar. While citra and other major emulators like retroarch, dolphin, pcsx2, duckstation and MAME works perfectly with steam input.
ViGEmBus driver from nefarius was retired at 2 years ago and there is no successor in works for it. So that means DS4windows and GlosSI doesn't work anymore. Steam input is only proper option left for various of my 3rd party controllers along with unique ones like NSO snes and n64 controllers.
Expected Behavior
If azahar emulators works with steam input, it will works asap for assigning the controller buttons in controller configuration inside azahar.
Reproduction Steps
Add azahar emulator to steam library as non-steam game. Then launch azahar through steam library's "Play" button. Then go to controller config page inside azahar settings. Then will see that its not responding for any of buttons that I tried to assign to it.
Log File
azahar_log.txt azahar_log.old.txt
System Configuration
CPU: 5900X GPU/Driver: RTX 4080 with driver 576.40 RAM: 64 gb OS: W11 10.0.26100 Build 26100
I just tested this process on Windows - added Azahar (mysys2 version) to steam as a non-steam game, set my dualsense to map as Xbox controller with touchpad as a keyboard command (f11) and gyro as a mouse, and then launched Azahar and configured the controller. It took a weirdly long time for each button press to be detected, but it did work - and automap worked too. Once configured it worked fine including both they gyro and the trackpad button.
There is nothing in the Azahar code that either supports or does not support steam input on windows - it has always been finicky. Most controllers will work out of the box with Azahar without needing it, since it uses SDL which supports most controllers.
Okay, following up, I wasn't quite correct. Automap still works, but you have to use one of the analog triggers to get it to work - no other buttons are detected in the controller config if running a DualSense or Dualshock through SteamInput on windows, but somehow they DO get detected when playing the actual game after automap works. Something very strange is happening with SDL button detection for the virtual steam gamepad.
I was able to download a controller tool and test old versions of the windows SDL DLL and found that starting in version 2.0.18 (November 2021) it starts getting confused about the controller - even when running through steam with steam input enabled, it "sees" the dualsense natively and I guess then ignores the steam virtual gamepad? Except for some reason the triggers still go through. Very strange. This may be intentional on the part of the SDL designers, but I can see that it is limiting for people who prefer to use SteamInput for everything.
Since azahar does not use the standard SDL2.dll on windows, I'm not sure if there is an easy fix here - if we did, then users with this particular need could copy in the old, working DLL, version 2.0.14.
SDL 3 does seem to have significantly more hooks into steaminput directly, so the eventual inevitable upgrade to sdl3 may fix this? Or may break it worse, who knows.
I've found that RPCS3 and Dolphin work great, but it's only because I can go out of my way to say "Hey! Go use XInput 0!" So if we're able to customize our input device separately from our controls (and have them sync between inputs - press A on Xbox, swap to DS4, press X to do the same thing) then this should be fixed anyways.
#1251
This issue has been marked as stale. If there is no activity within the next 10 days, this issue will be closed.
This issue has been closed as stale.