RG351P Arcade Games Guide

Last updated: 31OCT2020 (see Changelog for details)

With its upgraded RK3326 (1.3GHz) CPU, the RG351P can play arcade games at more accurate speeds than Anbernic’s previous handheld system, the RG350 series. But setting up arcade games is rather complicated, so I’d like to walk you through the process.

Table of Contents:
Available arcade emulators
MAME setup
FinalBurn Neo setup
Neo Geo setup
Organize and add media to your romsets
Screen orientation for vertical games
Button mapping for vertical games
Button mapping for fighting games
Notes

Changelog

Available arcade emulators

Arcade emulation has always been tricky, because of the staggering amount of variety available to users. For example, here are the emulators available on the modified EmuELEC operating system that ships with the RG351P:

Standalone emulator:
AdvanceMAME (MAME 0.106 romset, May 2006)

RetroArch cores:
FinalBurn Alpha 2012 (FBA 0.2.97.24 romset)
FinalBurn Neo (latest FBN romset)
MAME 2003-Plus (latest MAME 2003-Plus romset)
MAME 2010 (MAME 0.139 romset, Aug 2010)

Note that the romsets for MAME and FinalBurn Neo, the two arcade emulators I recommend, have some differing game files. So if you’re looking to play a specific game, it may only be available in one of the two romsets, or will play better in one and not the other. In general, this is how I distinguish which emulator to use for certain games:

MAME – best for classic and non-fighting games. More variety and accuracy.
FinalBurn Neo – best for fighting games and beat-em-ups. Less variety but better speed.

If you’re wondering about the difference between a ROM and a romset, here is how RetroArch defines them:

ROM, ROM set, and romset: Arcade games are packaged as zip files, most of which are composed of more than one individual ‘ROM’ file. That is why some resources refer to an individual arcade game as a ROM (like people use to describe a zipped game cartridge ROM) while other resources refer to an individual game as a ROM set or romset.

ROM version or romset version: Each version of an arcade emulator must be used with ROMs that have the same exact version number. For example, MAME 0.37b5 ROMs are required by the MAME 2000 emulator, but will not work correctly with the MAME 2010 emulator, which requires MAME 0.139 ROMs.

Sample: Some games require an additional zip file with recorded sounds or music in order for audio to work correctly. The path where these samples should be copied varies from emulator to emulator.

CHD: Some MAME games require data from an internal hard drive, CD-ROM, laserdisk, or other media in order to be emulated — those forms of media are packaged as CHD files. CHD files should be copied to subfolders within the folder where the MAME ROM zips have been installed.

Source: Libretro Docs

MAME setup

I prefer the MAME 2003-Plus core and romset, because as RetroArch says, it has “the closest integration with the libretro frontend API”, which means that you can tweak the settings directly in RetroArch instead of the clunky MAME menu.

Note that MAME 2003-Plus romset is actually 33.8GB in size, but a lot of that comes from CHD files for heavy-duty games that don’t run well on the RG351P anyway. If you remove those CHD files, the romset is reduced to about 20GB. Either way, that’s something to think about when considering your microSD card storage space. I actually like using the MAME 2003 (0.78) romset, which is 13.8GB in size altogether (minus CHDs). There is also a simple method to reduce a romset size by removing clones, hacks, duplicates, mahjong, and unplayable games using an app called LaunchBox — here is a video tutorial on the process, and I plan on making a similar video in the future as well.

To load the MAME romset on your device, transfer all of the zipped files to the roms/mame folder. If you’re running the base (3.7) version of EmuELEC that comes with your device, you can simply transfer everything over onto the card using an SD card reader. If you’re using the test v3.8 EmuELEC, then you will have to transfer everything via WiFi FTP (which will take a while). Here’s my RG351P file transfer guide if you need more help moving files over. Once you have added all of the games, press START in EmuELEC and go to Game Settings > Update Game Lists to refresh the content.

By default, the AdvanceMAME standalone emulator will launch when you try and start a MAME game. I don’t like this emulator for several reasons, but primarily because the user interface is much worse than what you can find in the MAME RetroArch cores (like MAME 2003-Plus). To change the default launcher to MAME 2003-Plus, press START while in EmuELEC to bring up the Main Menu, then go into Game Settings > Per Game Advanced Configuration > Arcade MAME > Emulator and select “LIBRETRO/MAME2003 PLUS”. From now on, when you launch a MAME game from the EmuELEC menu, it will launch with MAME 2003-Plus.

While playing a game with MAME, you can press the L3 button to bring up the in-game configuration options screen.

FinalBurn Neo setup

You have two FinalBurn options: FinalBurn Alpha 2012 and FinalBurn Neo. Both of these emulators focus on speed (whereas MAME focuses on accuracy), so if you have a game that plays poorly in MAME, try it out with one of these. I prefer FinalBurn Neo, and this is the emulator that RetroArch recommends for SBC (single board computer) devices like the RG351P. The latest FinalBurn Neo romset is 17.6GB in size altogether, so that’s something to think about when considering your microSD card storage space.

To load the FinalBurn Neo romset on your device, transfer all of the zipped files to the roms/fbneo folder. If you’re running the base (3.7) version of EmuELEC that comes with your device, you can simply transfer everything over onto the card using an SD card reader. If you’re using the test v3.8 EmuELEC, then you will have to transfer everything via WiFi FTP (which will take a while). Here’s my RG351P file transfer guide if you need more help moving files over. Once you have added all of the games, press START in EmuELEC and go to Game Settings > Update Game Lists to refresh the content.

While playing a game with FBNeo, you can press and hold the START button to bring up the in-game configuration options screen.

Neo Geo setup

Neo Geo is a hybrid arcade/home console system that runs best with the FinalBurn Neo core (that’s the default launcher for these games in EmuELEC as well). The entire Neo Geo romset collection is actually included in the FinalBurn Neo and MAME romsets, but many people like to have it as a separate folder within the menus. The Neo Geo romset is between 2GB and 4GB depending on the collection.

To load the Neo Geo romset on your device, transfer all of the zipped files to the roms/neogeo folder. If you’re running the base (3.7) version of EmuELEC that comes with your device, you can simply transfer everything over onto the card using an SD card reader. If you’re using the test v3.8 EmuELEC, then you will have to transfer everything via WiFi FTP (which will take a while). Here’s my RG351P file transfer guide if you need more help moving files over. Once you have added all of the games, press START in EmuELEC and go to Game Settings > Update Game Lists to refresh the content.

While playing a game with FBNeo, you can press and hold the START button to bring up the Neo Geo in-game configuration options screen.

Organize and add media to your romsets

The best way to take advantage of some of the unique themes in EmuELEC is to make sure that you have saved all the media associated with your games: box art, videos, ratings, descriptions, etc. For more info about themes, see my Themes Guide. With previous systems, like the RG350, this process was complicated and tedious. Luckily, the RG351P can scrape media directly onto the device using WiFi (see my Transfer Guide to set up your WiFi connection).

The first thing you’ll want to do is set up an account with ScreenScraper.fr — it takes just a couple minutes. There are times when this scraping services is limited to registered users, so by making an account you’ll have better luck getting the service to work.

** NOTE: If you decide to scrape your media, the scraping process also removes file information from the game title in EmuELEC. For example, it will rename both your “Alien vs. Predator (Asia)” and “Alien vs. Predator (Euro)” ROMs to just “Aliens vs. Predator”. This can be frustrating when you have half a dozen versions of a game in your romset but you cannot distinguish which one is which.

Press START to get to the main EmuELEC menu. Go to the “Scrape” setting and adjust the settings to your liking. This is what I prefer for arcade games in particular:

Scrape from: ScreenScraper
Image source: Screenshot (or Title Screenshot)
Box source: None
Logo source: Wheel
Scrape ratings: Yes
Scrape videos: Yes
Scrape fanart: No
Scape manual: No
Username: (ScreenScraper username)
Password: (ScreenScraper password)

After you’ve adjusted your settings, select the “Scrape Now” button. The next screen will allow you to filter to only missing media, or re-scrape all your games. You can also specify which systems you want scraped. Once you’re ready, select the “Start” icon and let the system get to work. For the arcade emulators in particular, expect this to take a long time.

Once your media has been scraped, go back to the main EmuELEC menu, select Game Settings > Update Game Lists. That will refresh your library with all of the new beautiful media.

Screen orientation for vertical games

One of my favorite aspects of playing arcade games on the RG351P is how AWESOME certain games look when in vertical orientation. The RG351P’s 3:2 aspect ratio can be a real bummer for some systems (check out my Screen Configuration Guide for more info), but it works really well for vertical games. Not only do classics like Donkey Kong, Space Invaders, Galaga, Centipede, Frogger, Pac Man, Dig Dug, and Q*Bert look great, but more recent shoot-em-ups like Aero Fighters, 1943, Dragon Blaze, DoDonPachi, and Strikers 1945 all look perfect, too.

NOTE: You will need to use the “Overrides” function to save the orientation for certain games. Override options are hidden by default, so if you haven’t already set them up in my Screen Config Guide, let’s do it now. Go into RetroArch without a core loaded. You can do this by pressing START while in EmuELEC to get to the EmuELEC main menu , then select Quit > Start RetroArch, or you can select “Close Content” in the Quick Menu when you have a game loaded in RetroArch. Once you’re in RetroArch, go to Settings > User Interface > Menu Item Visibility > Quick Menu. Scroll down until you find “Show Save Core Overrides”, then turn that ON, as well as “Save Game Overrides”. Back out to the Main Menu (on the far left) and select Configuration File > Save Current Configuration. Now, you will have the option to save overrides that are specific to that core or game.

MAME 2003-Plus and FinalBurn Neo both support vertical orientation games, but the process is a bit different for each.

MAME 2003-Plus: Launch any vertical game, then press L3 + R3 to bring up the RetroArch Quick Menu. Scroll to Options > TATE Mode – Rotating display (Restart core) and turn it ON. Back out to the Quick Menu and scroll down to Overrides > Save Core Override. You will need to close out of RetroArch and start it back up in order to see your changes. Now, every time you start up a game that supports vertical orientation, it will automatically rotate the display for you — super convenient!

FinalBurn Neo: Launch any vertical game, then press L3 + R3 to bring up the RetroArch Quick Menu. Scroll to Options > Vertical Mode > Alternate. Note that some games may display upside-down; if that happens, scroll to your Quick Menu Options > Vertical Mode and change it to “On” instead of “Alternate”. Next, scroll to Options > Save Game Options File — this will save the vertical orientation settings for that specific game. Note that you will have to do this for every vertical game the first time you boot it up.

Rather than save a new game options file every time you set a game to vertical orientation, you could just make your own option (.opt) files using the backend of the system. To make .opt files, go to /storage/.config/retroarch/config/FinalBurn Neo/ and create a file that is named after the original ROM zip file but with an .opt extension — for example, “1943.opt”. Inside this 1943.opt file, place this one line of code, then save and close the file:

fbneo-vertical-mode = "alternate"

So as you can see, vertical orientation in MAME 2003-Plus is a bit easier to configure, so you may want to use that primarily for your vertical games and resort to FBNeo only when you have a game that doesn’t run well in MAME.

If you try and play a vertical game at this point, you’ll probably notice that the controls are all wonky. So let’s fix that now.

Button mapping for vertical games

The process for mapping buttons for vertical orientation is the same for both MAME Plus-2003 and FinalBurn Neo, so let’s dive right in:

Launch any vertical game, then press L3 + R3 to bring up the RetroArch Quick Menu. Scroll to Controls > Port 1 Controls > Analog to Digital Type > Right Analog. This will map the right analog stick to the d-pad controls. Now let’s adjust the directions to match the vertical orientation of your screen. Still within the Controls > Port 1 Controls section, scroll down to the d-pad controls. Change them to this configuration:

D-Pad Up: Right
D-Pad Down: Left
D-Pad Left: Up
D-Pad Right: Down

If you’d like to remap the face buttons, you can do that here as well, but I tend to leave them as-is.

Once you have your controls set up the way you want, back out to the Controls menu, then select “Save Game Remap File”. This will create a remap file specific to this game. Not only that, you can load this remap file to work with other games, instead of having to remap the buttons all over again. Open a different game, then go into the Quick Menu > Controls, then select “Load Remap File”, and select a game you know is correctly configured. Once you’ve loaded it, you can then select “Save Game Remap File” and it will save a new remap file specific to the game you actually have loaded.

You can also create individual remap files so you don’t have to set this up per game like in the paragraph above. Go to /storage/remappings/, then pick either the MAME 2003-Plus or FinalBurn Neo folder, and inside you should find whatever remap files you’ve already saved (they have a file extension of “.rmp”). Inside these files you should find the following code:

input_libretro_device_p1 = "1"
 input_libretro_device_p2 = "1"
 input_libretro_device_p3 = "1"
 input_libretro_device_p4 = "1"
 input_libretro_device_p5 = "1"
 input_player1_analog_dpad_mode = "2"
 input_player1_btn_down = "6"
 input_player1_btn_left = "4"
 input_player1_btn_right = "5"
 input_player1_btn_up = "7"
 input_player2_analog_dpad_mode = "1"
 input_player3_analog_dpad_mode = "1"
 input_player4_analog_dpad_mode = "1"
 input_player5_analog_dpad_mode = "0"

So all you have to do is make a new “.rmp” file for every vertical game, open it up with a text editor, and paste the code above into the file and save it. This is handy if you just want to create these files in bulk. If you want to know which games are vertically oriented (and what their zip files are named), check out these pages for MAME and FBNeo — any game that has a “V” in its line of code is a vertical game.

Button mapping for fighting games

The button mappings in FBNeo for games like Mortal Kombat and Street Fighter II are pretty good, but the MAME button mappings don’t make any sense to me. So let’s map these two series’ games right now.

To access the controls, launch the game, then press L3 + R3 to bring up the RetroArch Quick Menu. Scroll to Controls > Port 1 Controls > Analog to Digital Type > Left Analog. This will map the left analog stick to the d-pad controls. Still within the Controls > Port 1 Controls section, let’s map the face and shoulder buttons.

For Mortal Kombat games, it’s important to remember that there are low and high attacks. In RetroArch, these moves equate to the following buttons on the cabinet:

Low punch: 1
High punch: 2
Low kick: 4
High kick: 3
Block: 5 (and 6 for MK1/MK2)
Run (MK3): 6

So knowing how the keys are coded, this is how I have my mapping for all of the Mortal Kombat games:

A button: 4
B button: 1
X button: 3
Y button: 2
R1 button: 5
L1 button: 6

Once you have your controls set up the way you want, back out to the Controls menu, then select “Save Game Remap File”. This will create a remap file specific to this game. Not only that, you can load this remap file to work with other games, instead of having to remap the buttons all over again. Open a different game (like Mortal Kombat II), then go into the Quick Menu > Controls, then select “Load Remap File”, and select the Mortal Kombat remap file (“mk.rmp”). Once you’ve loaded it, you can then select “Save Game Remap File” and it will save a new remap file specific to the game you actually have loaded.

The Street Fighter II (and subsequent six-button Capcom) games all follow the same pattern in their key codes, which is:

Light punch: 1
Medium punch: 2
Heavy punch: 3
Light kick: 4
Medium kick: 5
Heavy kick: 6

When I play a Capcom fighting game on a gamepad, I prefer to use the shoulder buttons as my light attacks and to map my medium and heavy attacks to the face buttons. So this is my setup:

A button: 6
B button: 5
X button: 3
Y button: 2
R1 button: 4
L1 button: 1

Some of you may prefer the SNES controls (where the shoulder buttons are the heavy attacks). If so, use this configuration instead:

A button: 5
B button: 4
X button: 2
Y button: 1
R1 button: 6
L1 button: 3

Once you have your controls set up the way you want, back out to the Controls menu, then select “Save Game Remap File”. This will create a remap file specific to this game. Not only that, you can load this remap file to work with other games, instead of having to remap the buttons all over again. Open a different game (like Marvel vs. Capcom), then go into the Quick Menu > Controls, then select “Load Remap File”, and select the Street Fighter 2 remap file (“sf2.rmp”). Once you’ve loaded it, you can then select “Save Game Remap File” and it will save a new remap file specific to the game you actually have loaded.

Notes

You may find the prospect of scrolling through all of your games daunting. Here are a couple tips:

  • When in EmuELEC, you can press and hold R2 or L2 to scroll more quickly through the games list. If you hold it down for a while, it’ll go even faster. This will let you navigate from A to Z pretty quickly. If you want to scroll through the games list in RetroArch, you can do the same by pressing L1 or R1 to scroll to the next letter of the alphabet.
  • There are often duplicate versions of certain games, and some will work better than others (some may not work at all). I have found that this is a great time to use the “Favorites” function in EmuELEC. Simply press the Y button when you’re hovering over a game to save it to your Favorites menu (or press Y again to remove it). You could essential spend an hour whittling down the thousands of games in the MAME and FBN directories to just the essentials through this Favorites feature.

RetroAchievements work with FinalBurn Neo, but only for some games (about 115 total). Here is a list of supported games. You will need to set up an account and have an active WiFi connection for RetroAchivements to work.

Audio sample files should be placed in roms/bios/mame2003-plus/samples and roms/bios/fbneo/samples folders.

Twin-stick shooters like SMASH T.V. and Robotron 2048 work great in both emulators. For MAME 2003-Plus, be sure to go into Quick Menu > Options > Control Mapping and make sure it’s set to “analog”. You may also want to reduce your analog deadzone (right below “Control Mapping” in the menu) to 5 or 0 for the best experience.

For more information about the specific RetroArch arcade cores, here are the Libretro Docs:

MAME 2003-Plus
FinalBurnNeo


Changelog

31OCT2020
– added fighting game button mapping

29OCT2020
– published guide

16 thoughts on “RG351P Arcade Games Guide

  1. Great guides and videos. Really appreciate these.
    I wonder if there is an easy way to remap the controls for verical games when using TATE Mode?
    There’s a ton a games to go through, and as I’m settign this up for someone else, I don’t want them to have to do this each time for each game – equally though I don’t want to spend the time on it myself upfront! Haha. Any ideas?

    Like

    1. There is actually a pretty simple method, this is what I did and it works great for me. Alright since the games are automatically oriented so that you have to use the right stick and horizontal games only use the left, you can theoretically not even mess with the dpad settings. Ok so what you do is, go to retroarch, change back the dpad controls to regular horizontal orientation. Set device type “classic gamepad” and analog to digital type “left analog”. Scroll down to the bottom and you’ll see the right analog stick controls. Change Y- to right, y+ to left, x- to up and x+ to down. Afterwards just go to save core remap file and save core overrides and you’re done. When you play horizontal games your left stick and dpad will work as normal and if you’re playing vertical games your right stick controls are already set up.

      Like

  2. Even though I follow your instructions of setting “Right Analog” on “Analog to Digital Type” and also “analog” on “Control Mapping” (options Menu) I still ALWAYS get the Left Analog as my control when I set TATE Mode. Actually, Tate mode or normal landscape mode I’m not able to have to right analog joystick as my controller.
    I’m guessing there’s another setting that must be changed for that as I have found other comments of people having the same issue (no solutions though).
    Any suggestion will be appreciated as I would love to be able to set vertical mode for some games….

    Like

    1. Found the solution…..On the first menu (OPTIONS), you HAVE to set “Digital” on “Control Mapping”, THEN you go to CONTROLS, set the “Right Analog” and re-map the thumbstick directions.
      This is counter intuitive and works ONLY for TATE mode, as you must set “analog” on the options menu in order to control the game via thumbstick, otherwise the control would be done via gamepad.

      Like

  3. Great guide! Thanks for the detailed explanations you provide, it is very helpful.
    In the MAME category, I used you tweaks for tate mode, which is excellent indeed. What I cannot succeed in doing is loading cheats in order to use autofire for shmups…
    I went into content updated and downloaded cheats. But I can’t find a way to access them. The MAME menu always tells me that there is no cheat.dat file to be found.
    I am using MAME 2003-Plus on 351elec.

    Like

      1. Thanks for your answer!
        As the DAT files for MAME2003 are available on GitHub, I could SSH and push cheat.dat on the RGP351P. I just could not find where.
        Would you know where the system folder is? I will ask as well in the 351elec Discord and inform here if I find a solution.

        Like

  4. I’m sorry, I must be being incredibly stupid, but I’m having nothing but issues with MAME on the RG351P, with my own roms. 90% will not run on 2003,2010 or FBAlpha. The ones that do run are sluggish and horrible with sound lagging massively. Comepletely unplayable. I feel like I’m missing something absolutely obvious. I know the ROMS work because I’ve tried them on a PC with MAME on its own so it’s something specific to the installs on the RG351P

    Each has its own crash report that I can’t get to before it goes back to the main screen
    I feel like either my mame drivers need reinstalling or just wiping entirely but there must be a way for me to “fix” mame that gives it the right drivers or something without nuking the whole device and starting again.

    Like

  5. I’m getting a sideways text error message on a lot of my MAME roms and ALL of my NeoGeo roms. Any idea how to fix that?

    Also, the sideways screen flip works awesome, that’s a great mod thanks.

    Charles.

    Like

  6. Hi. So I grabbed the latest non-beta elect351 and when I copy my mame2003 files to the sdcard, Made or Arcade doesn’t show up in my menu. So nothing shows up. Am I missing a core or some extra file? Thanks for the great videos and site!

    Like

Leave a comment