Arcade Stick with RetroArch

So i bought an Arcade Stick (RAP 4 Kai), but i have no idea how to use/configure it with RetroArch. I want to have the possibility to just switch between my main controller (Xbox 360, which works like a charm with the default settings) and my arcade stick for mostly SHUMPS/Arcade games in general. Where do i begin?

Plug it in, make sure it says “blah blah connected in port #1” and it’ll probably say that it’s “not configured”, which just means we don’t have any autoconfig profile for it. That’s not a problem, though, because you’re going to make one yourself (and hopefully submit it for inclusion :slight_smile: )

With it connected in the port #1 location, use a keyboard to go to settings > input > port 1 binds, then go down to ‘bind default all’ and then ‘bind all’ and map your buttons. Remember that the retropad face buttons labeled “nintendo-style”. Once that’s done, hit ‘save autoconfig’ and then ‘bind default all’ again.

Now, close RetroArch completely and then reopen it and it should detect and autoconfigure your stick (if it doesn’t for some reason, just try doing the steps again). At this point, you should be all set. In FBNeo’s quick menu > controls, there’s a device type you can change to (I forget the exact name, but it’s something like) arcade stick “modern” or “classic”. If you mapped it according to your stick’s official layout, you’ll want to use the “modern” one (that’s with Fierce and Roundhouse–in Street Fighter parlance–on R1 and R2 instead of R1 and L1 for “classic”).

Your autoconfig profile will still show the retropad labels in menus unless/until you add “button labels” to the profile. You should be able to just steal them from any PS4/xbone (as the case may be) controller’s autoconfig profile.

Im absolutely lost. RetroArch keeps pooping up that message. Also i couldn’t find the options “port 1 binds bind default all”

I’m kinda slow today for sure, hehe. Also my Xbox 360 controller is still conected, do i need to unplug it?

Ah, right. I’ve seen that before. I forget how/if it’s resolved, but I think if you go to settings > driver and change the joypad driver from xinput to either dinput or raw (fully close and then reopen RetroArch between each driver change; don’t choose “null”), it should shut its yap.

Okey, i was able to setup my arcade stick, but now i’m not quite happy with how some games in MAME feel. If there’s a way to configure the controller per core or per game?

Yes, you can move the core’s functions around on the controller/retropad in quick menu > controls, and you can save those remaps on a per-core or per-game basis from the same menu.

Im still kinda lost here, let me explain myself further:

I want to have a configuration that’s useful for most game (mostly fighting games on numerous systems, Neo Geo, MAME 2016, FBAlpha for CPS1 and CPS2, Dreamcast, and SHUMPS in general). I tested the configuration using this layout that’s apparently the most widely accepted for arcade games:

Y X R L B A R2 L2

But it didn’t quite work very well for Neo-Geo games and (specially), Marvel vs Capcom 2 on Dreamcast. I decided to map the buttons in-game, but it doesn’t let me use the buttons i want to call out an assist, which sucks. I decided to do it from RetroArch, but i’m just stuck. I want to freely map the buttons for exactly what i want to do, and save the configuration specifically for Marvel vs Capcom 2

It’s something like this possible?

Yeah, it’s possible. When you map your controller in settings > input, don’t try to do anything tricky. Just map the buttons as it asks for them.

Then, when you load a core, go to quick menu > controls and move the functions around however you want to put them on the buttons you desire. You can pop back into the game and test them as much as you like. Once they’re where you want them, save a game-specific remap from that same menu.

That’s the recommended mapping for 8 buttons arcade stick indeed, but there are 2 problems with your case :

  • you use MAME, MAME’s default mappings aren’t made to be friendly, the MAME emulator expects you open the MAME OSD and remap everything the first time you launch a game, the only exception to that would be mame2003plus which had its mappings heavily customized. Another alternative is FBNeo which is designed to have friendly mappings by default (more details here)
  • usage of arcade sticks on dreamcast is peculiar because the dreamcast arcade sticks had non-standard layout and iirc the console would detect it and do a custom mapping from this, i doubt that would translate very well to a modern 8 buttons arcade stick, some remapping can’t be avoided.

What options do i have at this point? i’m still kinda confused

My previous post contains everything you need to know, the golden rule being that there is no way you’ll have a plug’n’play experience with what you are trying to do.

  • for mvsc2 on dreamcast, you’ll have to apply what @hunterk said in quick menu > controls
  • for mame games, either you keep using that mame2016 core and enter mame osd every time the default mapping is crap, or you switch to one of the cores that have better defaults

I don’t have a problem with mapping everything per-game really, since is a one-time stuff and in the case of Neo-Geo, most game works fine with just a few corrections within the quick menu -> controls option.

The problem i have with FBNeo is that all my games are meant to work with MAME 2016, they won’t run on FBNeo.

Im a total n00b in terms of mapping really, the MAME OSD configuration you need to access can be saved? how do i access to it?

Through tab key from a keyboard, i don’t know if there is another method to access it, and yes it should be saved.

Okey, in the case of MVC2 i just came across another problem. So far i’ve able to map the first 4 buttons following the official layout for the game:

LP HP A1
LK HK A2

But as soon as i go to the quick menu -> configure the buttons for A1 and A2 (R1 and R2 in the stick), everything goes wrong. I’m not sure if the stick is detecting both buttons as one or what but if i set the A1 to R1, R2 acts as the same

Okey yes, apparently RetroArch/Flycast or just the game itself considers R2 as the same button as R1, they act the same :confused:

I was able to successfully map up to A1 (which is L in-game) by using the quick menu and setting Trigger L, but i can’t do it for A2 (that’s supposed to be R-Trigger in-game), the game just won’t call the assist and just mimic R1 button instead

If you go to quick menu > controls > port 1 controls, at the top of the menu, you should see an option for “device type”. If you set that to “arcade stick”, back out of that menu and then come right back (just to refresh it), it should give you the ability to map A, B, X, Y, L-trigger and R-trigger to any of the retropad buttons.

Does this treat you any differently?

It does’t allow me to set the buttons at all with the “arcade stick” option within the quick menu. I cant use neither the keyboard or the arcade stick itself to map them

How are you trying to change them? are you pressing left/right to cycle through the functions?

Yes. I’m trying to use left and right on the keyboard to map the buttons, which doesn’t work

I don’t know what to tell you, then, as it seems to be working just fine on my end: