Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enabling "Analog To Digital" still passes the analog input to the core, causing dual inputs #9299

Closed
rsn8887 opened this issue Aug 13, 2019 · 6 comments · Fixed by #11205
Closed

Comments

@rsn8887
Copy link
Contributor

rsn8887 commented Aug 13, 2019

Description

When I set Analog To Digital to Left Joystick, my left joystick causes DPAD input, but also is still seen as analog input by the core.

Note: The Analog To Digital option should not be removed. It allows for easy and quick assignment of dpad controls to the analog stick depending on game and system, useful for emulating all the old systems like NES/SNES/C64/PC Engine etc. It is needed especially on the Switch (libnx) platform. The stock Joycon controllers on Switch don't have a dpad. They have four buttons instead of a dpad, making dpad control quite difficult. That's why it is important on Switch to be able to quickly map and un-map analog to dpad controls.

Expected behavior

Analog to Digital should behave like the mappings in quickmenu->controls: When it is on, the dpad input should be generated, and the analog input suppressed.

Actual behavior

Dual input is passed to the core, both a DPAD press and an analog axis change.

Steps to reproduce the bug

  1. Start a core that uses analog and digital input
  2. Go to quickmenu->controls
  3. Set "User 1 Analog To Digital" to "Left Joystick"
  4. Move the left joystick and observe that the core receives both dpad AND analog inputs.

Bisect Results

Version/Commit

  • RetroArch: Latest nightly August 13

Environment information

  • OS: Nintendo Switch, Windows
  • Compiler: N/A (buildbot nightly version)
@barbudreadmon
Copy link
Contributor

barbudreadmon commented Aug 20, 2019

imho, "Analog To Digital" is causing harm without being useful, and as such should be removed. In the first place it was implemented in the past when remapping didn't allow to remap between analog & digital. Nowaday you can do that, so it's only a buggy shortcut setting, which can't account for systems using both dpad & analog at the same time.

Edit : i was assuming remapping was working properly for this case, it seems it doesn't, so yeah this setting is needed as long as remapping isn't fixed for this use case.

@rsn8887
Copy link
Contributor Author

rsn8887 commented Aug 20, 2019

The "Analog to Digital" setting is definitely needed. Even the way it is now it is super useful.

Users will always expect their analog sticks to just control the game, even if it is a digital-controls-only game.

@barbudreadmon
Copy link
Contributor

barbudreadmon commented Aug 21, 2019

Users will always expect their analog sticks to just control the game

Users will always expect a setting, especially something that seems to be the default on switch, to not break any game, this setting will inevitably break controls for any game/system having both dpad & analog left stick at the same time, which is pretty much anything above snes and a number of arcade games.

Even the way it is now it is super useful.

Because using real remapping doesn't work properly at the moment, otherwise it would only be a buggy shortcut for lazy people.

@rsn8887
Copy link
Contributor Author

rsn8887 commented Aug 21, 2019

Users will always expect their analog sticks to just control the game

Users will always expect a setting, especially something that seems to be the default on switch, to not break any game, this setting will inevitably break controls for any game/system having both dpad & analog left stick at the same time, which is pretty much anything above snes and a number of arcade games.

Of course it will do that. That is already apparent from the name of the option though, so I don't see any problem with that.

Even the way it is now it is super useful.

Because using real remapping doesn't work properly at the moment, otherwise it would only be a buggy shortcut for lazy people.

Real remapping is way too complicated and involved for this simple use case that the Analog To Digital option offers. Calling me lazy doesn't help your argument.

I am not sure what you are trying to do, but it seems like you are hi-jacking my issue.

My issue is clearly stated. My issue is not about removing the Analog To Digital option, on the contrary I love the option. My issue is only about the specific implementation causing double-input.

If you have your own, different issue, then please open your own issue instead of hi-jacking my issue via unrelated comments. Thank you.

@barbudreadmon
Copy link
Contributor

it seems like you are hi-jacking my issue

I'm just stating what might happen, it was already discussed on discord, you prefer being kept in the dark ? At the very least if this option is kept around, its inner working has to change, because it should never be allowed if a core is already mapping controls to analog. Best case scenario might be that's it's automatically done without needing a setting if appliable (i.e left analog free so we map dpad there too, the reverse might be nice too)

Calling me lazy doesn't help your argument.

It's still what it is : keeping a setting that will cause harm in certain cases, for people who don't want to bother going through the proper steps to remap. I'm not against shortcuts, i just want them to be safe, especially if they are used as default.

@rsn8887
Copy link
Contributor Author

rsn8887 commented Aug 21, 2019

I updated the issue description to specifically mention how important this setting is on Switch (libnx) platform, because that platform doesn't have a proper dpad.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants