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

"Analog to Digital Type" and "Device Type" changes being written in global config if you make a remap file. #10622

Closed
bslenul opened this issue May 12, 2020 · 5 comments · Fixed by #12534

Comments

@bslenul
Copy link
Contributor

bslenul commented May 12, 2020

Description

While ingame if you change "Analog to Digital Type" and/or "Device Type" in Quick Menu > Controls then create a core/game remap file, when you close content the changes are also applied globally in Settings > Input.

Expected behavior

Settings should be applied only for that core/game if you create a remap file, not globally.

Actual behavior

Changes are saved properly in the .rmp file but they're also saved in retroarch.cfg!

Steps to reproduce the bug

  1. With no content loaded, go to Settings > Input > Port 1 Binds, check your current settings for "Analog to Digital Type" and "Device Type".
  2. Load a game, go to Quick Menu > Controls > Port 1 Controls and change "Analog to Digital Type" and "Device Type" to anything else.
  3. Create a core/game remap file then close content.
  4. Go back to Settings > Input > Port 1 Binds and your settings should now be different from step 1.

Bisect Results

I tested with the oldest stable version available on the buildbot (1.7.5) and this is already happening :x

Version/Commit

Environment information

  • OS: tested on both Windows 10 and a Linux Mint VM.
@hizzlekizzle
Copy link
Contributor

I got confirmation from another user on this, as well, just for the record. https://forums.libretro.com/t/setting-analog-d-pad-mode-in-remap-file-changes-global-config/29284/2

@bslenul
Copy link
Contributor Author

bslenul commented Jul 11, 2020

BTW, not sure if it really matters but I noticed that the issue doesn't affect both options in the exact same way: "Device Type" will only be applied globally on the 1st launch before creating the remap file, "Analog to Digital Type" however will ALWAYS change the global value to the remap file value.

Not sure if I'm being clear, so let's take Beetle PSX as an example:

  1. With no content loaded, go to Settings > Input > Port 1 Controls and make sure "Device Type" is set to "RetroPad", "Analog to Digital Type" to "None" and that you don't have an existing remap file for the core.
  2. Start a game, change "Device Type" from "PlayStation Controller" to "DualShock" and "Analog to Digital Type" to "Left Analog".
  3. Save core remap and close content.
  4. Check Settings > Input > Port 1 Controls again, you should now see "Unknown" and "Left Analog", switch them back to "RetroPad" and "None".
  5. Start the game again and close content.
  6. Check Settings > Input > Port 1 Controls again, this time "Device Type" should be "RetroPad", which is the intended behavior, however "Analog to Digital Type" should be "Left Analog" again, which is undesired :/

@sonninnos
Copy link
Collaborator

Sure the AtD setting totally should not get saved globally, but using both DualShock and AtD does not make sense, since AtD copies the D-Pad to the analog stick, thus losing the actual analog control.

But I guess that example was just for demonstrative purposes. And indeed before that recent commit they were both read at the same time, creating even more wonky controls.

@bslenul
Copy link
Contributor Author

bslenul commented Aug 19, 2020

Yes sorry about the DualShock and Analog to Digital, indeed it makes no sense but it was just for the example/steps to reproduce :D But yeah that issue can be annoying, like if you want to play SNES with analog and then you switch to N64 you have to turn it OFF, then turn it back ON if you switch back to SNES, etc. :/

@bslenul
Copy link
Contributor Author

bslenul commented Jun 10, 2021

Revisiting this issue, looks like the "Device Type" now works properly with remap files, it doesn't change it globally anymore :) No idea when that was fixed, but that's good! 👍

The "Analog to Digital Type" however is still changed globally.

edit: Ah nope, talked too soon, after a full restart of RA the issue is back...

@bslenul bslenul changed the title "Analog to Digital Type" and "Device Type" changes being written in global config if you make a remap file. "Analog to Digital Type" setting is being written in global config if you make a remap file. Jun 10, 2021
@bslenul bslenul changed the title "Analog to Digital Type" setting is being written in global config if you make a remap file. "Analog to Digital Type" and "Device Type" changes being written in global config if you make a remap file. Jun 10, 2021
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.

3 participants