Jump to content
LaunchBox Community Forums

Different Default Controllers for MAME & RA


VMCosco
 Share

Recommended Posts

I am working on an arcade box that will be running MAME along with emulators for console games. My goal is is to use the built in arcade controls for MAME and then be able to plug in USB gamepad(s) to use for console games (RetroArch). This is all running on a PC. Thinking about going with Mag-Stick plus and Mini-PAC and using the USB connection. 

Is there a way to setup MAME to ignore the USB gamepads and only recognize commands from the Mini-PAC?  Conversely, if I bind the P1 and P2 controls in RA to the gamepads, the Mini-PAC joysticks will be ignored correct? 

Edited by VMCosco
Link to comment
Share on other sites

3 hours ago, VMCosco said:

I am working on an arcade box that will be running MAME along with emulators for console games. My goal is is to use the built in arcade controls for MAME and then be able to plug in USB gamepad(s) to use for console games (RetroArch). This is all running on a PC. Thinking about going with Mag-Stick plus and Mini-PAC and using the USB connection. 

Is there a way to setup MAME to ignore the USB gamepads and only recognize commands from the Mini-PAC?  Conversely, if I bind the P1 and P2 controls in RA to the gamepads, the Mini-PAC joysticks will be ignored correct? 

If you set the miniPac to keyboard mode, you can use keystrokes in MAME and than set no keys in your Retroarch default.cfg and it will use the usb gamepads only in Retroarch. No need to worry about joystick indexes than,

I have mine set up like that, except I have my default.cfg in Retroarch mapped to the Arcade controls so I can use them or my XBox controllers.  

 

Link to comment
Share on other sites

1 hour ago, Headrush69 said:

If you set the miniPac to keyboard mode, you can use keystrokes in MAME and than set no keys in your Retroarch default.cfg and it will use the usb gamepads only in Retroarch. No need to worry about joystick indexes than,

I have mine set up like that, except I have my default.cfg in Retroarch mapped to the Arcade controls so I can use them or my XBox controllers.  

 

So in doing it this way, will I be able to leave the gamepads plugged in all the time?  I am trying to avoid having to plug and unplug. Right now I am using a USB Mayflash stick for MAME and I have to completely unplug it and plug in a gamepad for the console games. 

Link to comment
Share on other sites

30 minutes ago, VMCosco said:

So in doing it this way, will I be able to leave the gamepads plugged in all the time?  I am trying to avoid having to plug and unplug. Right now I am using a USB Mayflash stick for MAME and I have to completely unplug it and plug in a gamepad for the console games. 

If you are replacing the USB Mayflash stick with a Mini-Pac in keyboard mode, you will greatly simplify your set up and avoid most issues.

If you want to use multiple USB devices, especially ones that are hot pluggable, that doc DOS76 posted is a must read to maintain a static device order so your MAME set key mappings stay consistent. Be aware that MAME deletes key mappings to hot pluggable devices if they aren't attached when MAME is started. To avoid that you'll have to set cfg files for those games to read-only.

Link to comment
Share on other sites

56 minutes ago, Headrush69 said:

If you want to use multiple USB devices, especially ones that are hot pluggable, that doc DOS76 posted is a must read to maintain a static device order so your MAME set key mappings stay consistent.

The Mayflash is only temporary until I build my cabinet. Then it will be replaced with the miniPac.  No other devices will be used for MAME.  The two game pads will stay plugged in but will only be used RetroArch console emulators. Does than mean that I need to set static key mappings so that the miniPac is static?

Link to comment
Share on other sites

5 minutes ago, VMCosco said:

The Mayflash is only temporary until I build my cabinet. Then it will be replaced with the miniPac.  No other devices will be used for MAME.  The two game pads will stay plugged in but will only be used RetroArch console emulators. Does than mean that I need to set static key mappings so that the miniPac is static?

You will NOT need a static mapping for the Mini-iPac.

Normally MAME does not use multi-keyboard mode and all keyboards and keyboard encoders (like the Mini-iPac), appear as the one device. 

 

Edited by Headrush69
Link to comment
Share on other sites

17 minutes ago, Headrush69 said:

You will NOT need a static mapping for the Mini-iPac.

Normally MAME does not use multi-keyboard mode and all keyboards and keyboard encoders (like the Mini-iPac), appear as the one device. 

 

Great. Sounds much easier. Back to you first reply:

Do I have to change something in MAME to use keystrokes?  How do I set “no keys” in the RetroArch config?  I may be interested in setting my config up like yours. I may want to use the arcade controls for Atari 2600 games

Link to comment
Share on other sites

4 hours ago, Headrush69 said:

If you set the miniPac to keyboard mode, you can use keystrokes in MAME and than set no keys in your Retroarch default.cfg and it will use the usb gamepads only in Retroarch. No need to worry about joystick indexes than,

I have mine set up like that, except I have my default.cfg in Retroarch mapped to the Arcade controls so I can use them or my XBox controllers.  

 

How do you successfully map the arcade controls in retroarch? I have an xtension control board and want to use it for all ROMs under retroarch. Even the player 1 will bind, but not save under autocofig. Says no core, 1.7.7. Any help would be appreciated!

Link to comment
Share on other sites

3 minutes ago, VMCosco said:

Do I have to change something in MAME to use keystrokes?

No. Just set your keys as needed. I would start with General input and than only change specific games that differ from those defaults.

5 minutes ago, VMCosco said:

How do I set “no keys” in the RetroArch config?

If you look at the file Retroarch-> retroarch.cfg and look for input_player# entries, you can set any not wanted to "nul". I would suggest leaving that until you have the rest of Retroarch set up as you want.

I have my arcade controls set to resemble a Retropad layout, so I have the option to use the arcade controls or the XBox wireless controllers. 

Link to comment
Share on other sites

11 minutes ago, DD13 said:

How do you successfully map the arcade controls in retroarch?

Just edit Retroarch -> retroarch.cfg and set input_player# entries to the keystrokes that match your setup.

Here is part of my retroarch.cfg player 1 control settings, which I believe are the standard iPac layout.

 

Quote

input_player1_a = "z"
input_player1_b = "v"
input_player1_l = "ctrl"
input_player1_l2 = "space"
input_player1_l3 = "u"
input_player1_left = "left"
input_player1_r = "alt"
input_player1_r2 = "x"
input_player1_r3 = "y"
input_player1_right = "right"
input_player1_select = "num5"

input_player1_down = "down"
input_player1_start = "num1"
input_player1_up = "up"
input_player1_y = "c"

input_player1_x = "shift"

 

Edited by Headrush69
Link to comment
Share on other sites

Thank you for your input, Headrush69. That mapping sequence is reasonable. However the issue I ran into is that even with 1st and 2nd player mapping, I seem to have to use both player buttons just to move one character. For example, SNES Castlevania IV, the a button makes the character jump, and the joystick works fine. However I have to press a button in the second player area to make him whip. Even when I isolated the input needed to whip, and place it within the player 1 control, it still defaults to the second player position.

B6A070BB-0BD3-454A-97FE-DE77704DF80D.jpeg

Link to comment
Share on other sites

Headrush69, thank you. Unfortunately it appears that I could literally map the control board in any way but the controls in the game remain the same. I save before exiting retroarch, but get an error message saying ‘no core’ when attempting to ‘user 1 save autoconfig’.

9DF44A28-BDB3-484F-8190-F9E0FBB27F4E.jpeg

4B3C797C-CA86-4F24-AAA0-32E7BE8D6089.jpeg

Link to comment
Share on other sites

You can't map keys in the GUI. You have to edit Retroarch/retroarch.cfg manually.

You can see from the post above a sample of my player1 key mappings in retroarch.cfg.  You will need to know they keys that are mapped to each of your controls, which you can see in the WiniPac application.

My control panel as 8 buttons each player, so I assign them to Retropad buttons A, B, X, Y, L1, R1, L2, R2 and the joystick to the D-Pad.

Link to comment
Share on other sites

  • 1 month later...
On 12/14/2019 at 7:28 AM, DD13 said:

I could use help with setting up confine manually. Sorry, but I’m a noob but dedicated to getting this done! Any video to help with this? Do you want to help me 1:1 via phone or something—I’d pay you for your time.

The file you want to edit is Retroarch/retroarch.cfg

The defaults are probably fairly close to what you the iPac defaults to, but look for the lines beginning with input_player1_ 

You can see from my example above that we are just setting the keys for a Retropad gamepad which is similar to a SNES joypad: Up, Down, Left, Right, A, B, X, Y, L1 = Left Shoulder, R1 = Right Shoulder, Select, Start.

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...