Dumb input config question

When I started this project, I was using an Xbox360 controller for all my testing and such.

I finally got a control building use an iPac Ultimate. However, when I attempt to configure the controls, it’s still asking me to input xbox360 like buttons.

I go into settings and then input:

Remap Binds Enable - On Autoconfig Enable - On Show Autoconfig description - On Show Core Input Description - On Hide Unbound Core input description - Off

Bind Mode - RetroKeyboard User 1 Device To Digital… - NONE (also tried retropad) User 1 Analog Device - NONE User 1 Device Index - I-PAC Ultimate

So when I go to BIND ALL, I still get options for button X, Y, Shoulder, 2 analogs, Dpad, etc. None of those should be options. I want to be prompted for joyup, joydown, button1, etc.

How can I make this happen?

RetroArch uses an abstraction for controllers known as the ‘retropad’ that is functionally similar to a 360 or PS3 controller. You map those retropad buttons to your physical controls and then those are applied to the individual cores.

In the case of an I-PAC, it shows up as a keyboard with everything pre-mapped to MAME’s defaults. This can be a bit of a problem because some of MAME’s defaults conflict with RetroArch’s default hotkey assignments. You’ll either have to re-map those conflicting functions to other keys or just replace them with ‘null’ in your retroarch.cfg. That is, I recommend edit the retroarch.cfg directly instead of mapping through RGUI. <- I have a J-PAC and I-PAC and this is what I have done to get them working well.

Ok, so is there no way to do the GUI remap where it prompts me for real buttons instead of xbox buttons? Ex: “Enter button 1” instead of “Enter X button (left)”

With the nighty you have an override remap option. So when you bind your controller it does not matter what, you bind it to just as long as its bound to something you can’t remap a null. Just have to write down what you bound to what then remap save to core and it should load that remap when you load the core, one time operation per core.

kenshutt97 - This question pops up fairly regularly so i don’t think it’s dumb at all. The controller mapping in retroarch is very frustrating and confusing if you’re using a controller that doesn’t have the same layout as a 360 pad or make believe “retro pad”. Thankfully there’s a remap option buried somewhere in there now. A little while ago i was told i had to “edit the source code” to be able to remap my controllers (a saturn pad and a qanba arcade stick). So yeah it’s getting there - Baby steps.

Not sure if it’s worth it to create a separate thread, so I think this one will do. Is it possible to rebind Accept and Back buttons in RGUI without changing RetroPad mappings? It’s pretty weird to use A to confirm and B to decline considering AFAIK in most gamepad-oriented interfaces since PS2’s launch it’s the other way round (in the West, at least). I haven’t found an option even in the config file.

If you have a core loaded and show “Show core input descriptor labels” is enabled the labels for core input will be correct, example:

No core loaded https://dl.dropboxusercontent.com/u/149537/Screenshots/Screenshot%202015-04-17%2014.50.53.png

Nestopia loaded https://dl.dropboxusercontent.com/u/149537/Screenshots/Screenshot%202015-04-17%2014.51.14.png

So you should be able to bind just what you want. The prompts don’t use this, but it shouldn’t be to hard either since with each prompt there is a hint (Press A for example has a “Right” hint that means right button of the four face buttons) Also, bear in mind it’s not an XBOX controller, think of it as an XBOX controller with SNES button layout (or just a WiiU pro controller layout). RA is designed as a console.

Anyway, you only have to do this once for most cases. The general idea now would be to map your controller to RetroPad (with the above considerations in mind) and use per-core/per-game remaps as you see fit. This is a new feature and you might not even know about it, I have a small writeup here:

http://blog.andressm.org/new-retroarch-features-2/

Basically this means you can do your gamepad to retropad mapping ONCE, and then do whatever you want per-core/per-game and the remaps will load automatically when found.

[QUOTE=nOptimus;21707]Not sure if it’s worth it to create a separate thread, so I think this one will do. Is it possible to rebind Accept and Back buttons in RGUI without changing RetroPad mappings? It’s pretty weird to use A to confirm and B to decline considering AFAIK in most gamepad-oriented interfaces since PS2’s launch it’s the other way round (in the West, at least). I haven’t found an option even in the config file.[/QUOTE]

The RetroPad interface is SNES inspired, B = XBOX A, A= XBOX B, so the interface is working pretty much as you want but you might be mapping the buttons the other way around. I guess it would be cool to have the option though I’ll take a look, maybe it’s easy to add

[QUOTE=Radius;21711]The RetroPad interface is SNES inspired, B = XBOX A, A= XBOX B, so the interface is working pretty much as you want but you might be mapping the buttons the other way around. I guess it would be cool to have the option though I’ll take a look, maybe it’s easy to add[/QUOTE] Yeah, I’ve understood that. That’s the reason I haven’t mentioned Xbox layout at all and was referring to RetroPad buttons to try to avoid confusion. Weird if I’m the first one to suggest this, this is a basic ergonomic concern IMO. I’m not suggesting to rename the RetroPad buttons by the way.

Isn’t it like that on most games? at least it feels natural for me (RIGHT BUTTON accept DOWN BUTTON decline).

[QUOTE=Radius;21716]Isn’t it like that on most games? at least it feels natural for me (RIGHT BUTTON accept DOWN BUTTON decline).[/QUOTE]Apparently this is the standard mapping mostly on PlayStation consoles in Japan and on Nintendo consoles. As far as I know, Xbox, XInput and Western PlayStation interfaces generally use DOWN BUTTON accept RIGHT BUTTON decline.

I feel bad reviving an old thread, but this exact thing has been bothering me. In looking for information on a solution, I found this thread.

I use an XBox 360 controller with RetroArch and frequently get the A/B buttons mixed up (functionality-wise) when navigating the UI.

When using my actual XBox [ul] [li]the A (green button, down button) is [B]accept /B[/li][li]the B (red button, right button) is decline (or “go back”)[/li][/ul]

It works this way for the XBox games I have, and for the Netflix app, and XBox menu navigation.

Since the A/B buttons on the actual XBox controller (not the hypothetical RetroPad controller abstraction layer) work exactly opposite in RetroArch to the way they work when navigating on an actual XBox, I was looking for a way to remap the behavior of the A/B buttons for only the RetroArch UI (kind of like the way controls can be remapped for a particular core).

I am aware that I could change the “Input Binds” to swap the A/B buttons (so they work the way I’d like them to in the UI) and then define a remapping for each core to map them back for game play.

Anyone have a solution they are happy with? Is there a “RetroArch UI-Only” remapping?

Yes, in your retroarch.cfg, look for: menu_ok_btn = “whatever” menu_cancel_btn = “whatever” and swap them. That will make retropad B accept and retropad A cancel.

Excellent! That did the trick.

Thank you for your quick reply, too