weihuoya / citra

A Nintendo 3DS Emulator
https://citra-emu.org
GNU General Public License v2.0
2.11k stars 194 forks source link

Y and ZR trigger each other when one is cleared #662

Open dfilskov opened 2 years ago

dfilskov commented 2 years ago

On XP Plus using the latest Citra 20220907 b28b2e6 - when I map the thin controller (the one with buttons only: •, 1, 2, 3, 4 on the front) 's right trigger to Y it keeps activating both ZR and Y when pressed.

Even when ZR is mapped to another button - e.g. the button named 4 the right trigger still activates both Y and ZR.

Either there's a hardcode mapping of ZR to the trigger or earlier mappings aren't cleared properly, I guess.

Tappy-tech commented 2 years ago

In config-mmj.ini file, how are buttons mapped?

dfilskov commented 2 years ago

[Controls] button_a = code:108 button_b = code:96 button_down = code:16,dir:+ button_home = code:106 button_l = code:102 button_left = code:15,dir:- button_r = code:103 button_right = code:15,dir:+ button_start = code:100 button_up = code:16,dir:- button_x = code:97 button_y = code:109 button_zl = code:104 circle_pad_x = code:0,dir:+ circle_pad_y = code:1,dir:- [Renderer] landscape_layout_option = 2

dfilskov commented 2 years ago

Took me quite a few attempts to reproduce the issue. I had to map several buttons and move them around afterwards.

dfilskov commented 2 years ago

Here's how it looks in the Settings UI

Screenshot_20220914-230446~2 Screenshot_20220914-230456~2 Screenshot_20220914-230456~3 Screenshot_20220914-230503~2 Screenshot_20220914-230509~3

dfilskov commented 2 years ago

Here's a video of what happens - notice the game both pauses (the small screen switches to showing Items instead of a map) and triggers a whirling weapon.

https://www.dropbox.com/s/bxzhah2z8iventg/item-view_and_whirl-weapon.mkv?dl=0

Tappy-tech commented 2 years ago

[Controls] button_a = code:108 button_b = code:96 button_down = code:16,dir:+ button_home = code:106 button_l = code:102 button_left = code:15,dir:- button_r = code:103 button_right = code:15,dir:+ button_start = code:100 button_up = code:16,dir:- button_x = code:97 button_y = code:109 button_zl = code:104 circle_pad_x = code:0,dir:+ circle_pad_y = code:1,dir:- [Renderer] landscape_layout_option = 2

Looks same as in Settings Ui... I fear that it's controller issues, although, I didn't look up much.

dfilskov commented 2 years ago

Can I somehow test if it's a controller issue with the XP Plus?

dfilskov commented 2 years ago

Wait ... the ZR isn't mapped at all. So how can it be an issue with the controller and not the software?

Tappy-tech commented 2 years ago

Wait ... the ZR isn't mapped at all. So how can it be an issue with the controller and not the software?

I think because of how it is interpreted by Citra MMJ, if you don't have issues with other emulators.

dfilskov commented 2 years ago

Yeah. Wrong interpretation I'd say since I'm quite sure I don't have this issue in other emulators.

Hey - when I map ZR to another button than R2 (I'm using a button simply called '4') and I clear Y that button '4' now triggers both Y and ZR. Really odd.

Like this: Screenshot_20220914-234005~2

... but notice that my '4' button is also called 109 - just like R2 when it was mapped to Y.