TOP

MAMEUI Tutorial

Last updated April 6, 2022

Share

About MAMEUI

A preview of MAMEUI A preview of MAMEUI

MAME is the most compatible and capable multiple arcade machine emulator. It supports thousands of games. There is a large community of contributors working persistently to expand and perfect MAME's library of supported arcade games.

This tutorial is to help you with MAMEUI (short for 'MAME user-interface'), a once-popular build of MAME. Unfortunately, it hasn't been updated since 2014 and has since been abandoned. However, as you'll read in this guide, that's not a bad thing! The arcade ROMs that are readily available in ROM sites work best on old arcade emulators. I'll explain why.

*If you would like to download MAMEUI, I have it on my emulators page.

Should you use MAMEUI?

With all the emulator offerings as of 2022, should you use MAMEUI? Well, it depends. RetroArch, a popular multi-system emulator, is a great option for arcade games. It includes multiple 'cores' (multiple emulators) for arcade games. At the time I'm writing this, it includes the following: FB Alpha, FinalBurn Neo, MAME (latest), MAME 2000, MAME 2003, and MAME 2010. This selection of cores is valuable when it comes to getting old arcade ROMs to work. And in my RetroArch tutorial, I have dedicated sections that cover emulating arcade games.

Emulation quality between RetroArch and MAME is generally the same. RetroArch may run better/smoother simply because it's in active development and optimized for Windows 10. MAMEUI's benefit is that it's far easier to use and offers more features and options. I can't say which emulator is better because they both have their pros and cons. I recommend trying both to see what works best for your needs.

About the latest MAME

MAMEUI, RetroArch, FB Alpha... I'm throwing a lot of names at you. I know this can be confusing for newcomers. So why not just use the original and latest version of MAME, and not bother using anything else? With Super Nintendo, for example, most of us just use Snes9x. We don't need to fuss with multiple emulators to get Super Nintendo games to work. So why is arcade emulation so complicated?

The official build of MAME How the official build of MAME looks

The source of this problem is the latest version of the official build of MAME. If you download a bunch of ROMs from a random ROM site, they won't work with the latest MAME. The latest version of FinalBurn Alpha shares the same complications. Additionally, the latest MAME is not user-friendly at all. I classify it as an advanced emulator, so I do not recommend it for newcomers and casual gamers.

As I mentioned earlier, my recommendation is to use RetroArch or MAMEUI instead of the latest MAME. The arcade ROMs that are readily available in ROM sites work on these 'old' arcade emulators.

Installation

Windows versions of MAME are all a standalone program so they do not have an install wizard. Installation is simple: just extract MAMEUI from its zip file. Not sure how to extract zip files? Here's a video tutorial showing you how: how to unzip files on Windows.

IMPORTANT! MAMEUI must be placed in a common folder on your computer. I recommend Documents, Downloads, or create a folder on your desktop. If you place MAMEUI somewhere else on your main C drive, then you may be restricting it to read-only access. Doing so prevents MAMEUI from saving anything.

To open MAMEUI, double-click on Mame's EXE. If you opted to use an older version of MAME such as MAME32, double-click on Mame32's EXE to open it.

Understanding MAME's ROM structure

Upon opening MAMEUI, the first thing you see is the All Games tab (shown below). This is a list of all the games supported by MAMEUI. MAMEUI does not include these games. You need to download them separately.

View of all the games that MAMEUI supports

In this list, notice the indented games. And notice that the first game of the same title is not indented. The first game is the parent ROM and all the indented games below are the child ROMs. See:

Parent ROMs and Child ROMs in MAMEUI

In the picture below, I'm showing you how this parent/child relationship applies to actual ROMs in the roms folder. This is how all arcade emulators work with arcade ROMs.

Parent ROMs and Child ROMs in MAMEUI

In other words:

  • If you want to play the parent of a game, you need to download the parent ROM.
  • If you want to play a child of a game, you need to download both the child ROM and the parent ROM.

You'll notice that all arcade ROMs are abbreviated. You must never rename or extract an arcade ROM! Its exact filename is how MAMEUI can detect it.

NeoGeo games need neogeo.zip

NeoGeo games require the NeoGeo BIOS in order to boot. You can download it below. Additionally, old versions of MAME emulators may require an older version of the NeoGeo BIOS. If you're finding that the first NeoGeo BIOS doesn't work, download the old version.

  • NeoGeo BIOS (931 KB) - Required in order to boot NeoGeo games. Do not rename or extract this zip file!
  • NeoGeo BIOS (old version) (236 KB) - May be required if you're using an old version of MAMEUI. Rename it to “neogeo.zip”.

*To setup the NeoGeo BIOS with MAMEUI, simply move it into Mame's ROMs folder . That's it!

Loading a game

  1. Before we do anything, I must first inform you to never extract or rename the zip file of an arcade ROM! The exact filename is how MAMEUI detects it.
  2. Move your arcade ROMs into Mame's ROMs folder .
  3. Performing a game audit in MAMEUI to detect new games Scanning for new games
    Next we need to have MAMEUI scan your ROMs folder for new games. You can do so by going to File > Audit all games (shown to the right), or just press the F5 key. A progress bar will appear on the bottom of MAMEUI's window:
    The progress bar for MAMEUI's game audit
    The audit usually takes just a few seconds. Sometimes it could take a few minutes.
  4. Click on Available to view the list of games that MAMEUI has detected as playable, as shown below:
    The 'Available' section in MAMEUI where playable games are listed
    Double-click on a game to play it.

*If your games are not being detected or giving you 'not found' errors, read the next section.

Troubleshooting undetected games & loading errors

A sample prompt of 'missing file' errors A sample prompt of 'missing file' errors

Unfortunately, it's common for MAMEUI to refuse to detect your games. Or, MAMEUI will detect your games, but give you 'not found' errors upon loading a game. These two problems have the same source.

This is happening because the authors of arcade emulators are purists who insist on everything to be perfect. As soon as an arcade game has a better ROM dump, MAME is updated to support the newer dump. This renders older ROMs incompatible. This problem gets more complicated with the reality that pretty much every ROM site distributes only old ROMs. These old ROMs are incompatible with newer builds of MAME.

The first step in troubleshooting this is to run through the following checklist:

  • Double-check to make sure your arcade ROMs are indeed in the ROMs folder .
  • Did you rename or extract your arcade ROMs? You must never do that! If you did then that's why they're not working.
  • Is it a NeoGeo game? Make sure neogeo.zip is in the ROMs folder.
  • Did you run a game audit? You can do so by going to File > Audit all games, or just press the F5 key.
  • Make sure you have the parent of the game you're trying to play. Learn more about parents and children in Understanding MAMEUI's ROM structure.
  • Still getting errors? Try downloading all versions of the game you're trying to play. Meaning, download its parent and all of its chidlren. MAMEUI can help you find all the ROMs that belong to a specific game.

The workaround: If you're good on the above bullet points then you're doing everything correctly. This means the arcade ROMs you downloaded are definitely old. So how do you get old ROMs to work? That's simple - use an old version of MAMEUI! In my emulators page I provide a version of MAMEUI32 from 2007. It has a high success rate of detecting ROMs that are being distributed in popular ROM sites.

Another option: A rising star in the emulator scene is RetroArch, a multi-system emulator. It includes multiple 'cores' (multiple emulators) for arcade games. At the time I'm writing this, it includes the following: FB Alpha, FinalBurn Neo, MAMEUI (latest), MAMEUI 2000, MAMEUI 2003, and MAMEUI 2010. That's a fantastic selection of options for getting arcade games to work. “MAME 2003” in particular is ideal for getting 'old' arcade ROMs to work.

Loading a CHD (hard drive) game

Arcade games based on a hard drive require some extra steps. You need two things: (1) the parent ROM, and (2) the CHD file (the hard drive file). The size of the parent ROM is tiny, but expect the CHD file to be around 100 MB. I'll use Killer Instinct as an example in these directions:

  1. The parent ROM for Killer Instinct is “kinst.zip” and the CHD file is “kinst.chd“. Place “kinst.zip” into Mame's ROMs folder as you would with any other MAMEUI ROM.
  2. Within the ROMs folder, create a new folder and call it kinst (which is the exact name of the ROM).
  3. Move “kinst.chd“ over to this new kinst folder.
  4. Open MAMEUI and do a game audit. You can do so by going to File > Audit all games, or just press the F5 key.
  5. You should see Killer Instinct come up in the Available list. Double-click to play. If Killer Instinct did not show as available, read the section in this tutorial about troubleshooting undetected games.

*If these directions aren't enough and you're still lost, here's a YouTube video showing you exactly how to load CHD games.

How to play games

Arcade games on MAMEUI work in the same fashion as the real thing. Upon loading an arcade game, to play you must insert virtual coins. You can insert as many as you want (which gives you infinite lives). Then press Start to begin. Each player has their own coin bank and Start button.

A sample of an arcade deck A sample of an arcade deck (the X-Arcade)

Players 1-4

  • Player 1 Start = Press 1
  • Player 2 Start = Press 2
  • Player 3 Start = Press 3
  • Player 4 Start = Press 4
  • Player 1 Coin = Press 5
  • Player 2 Coin = Press 6
  • Player 3 Coin = Press 7
  • Player 4 Coin = Press 8

Player 1 Keys

  • Player 1 Button 1 = Left Ctrl
  • Player 1 Button 2 = Left Alt
  • Player 1 Button 3 = Space
  • Player 1 Button 4 = Left Shift

General MAMEUI Keys

  • Press left Ctrl + Alt + Enter for Window mode. Press it again to go back to full screen.
  • Press F3 to reset.
  • Press P to pause.
  • Press F12 to capture a screenshot. It will be captured in PNG format and tossed into the “Snap” folder.
  • Press Esc to quit your game.

Using a gamepad (or mouse)

Your gamepad must be plugged in before you open MAMEUI. MAMEUI won't detect it if you plug it in after you open MAMEUI.

  1. Click on the Options > Default Game Options, as shown here .
  2. The “Default Game Properties“ window will pop up. Click on the Controllers tab, as shown here .
  3. Enabling the gamepad
    Put a check in the box for Enable joystick input, as shown to the right. If this option is shaded out , then MAMEUI is not detecting your gamepad.
    • To enable a mouse (for light gun games), put a check in the box for Enable mouse input.
  4. Click on Apply then OK.
  5. That's it! MAMEUI has already configured your gamepad's buttons. Although you still have to use keys 1-8 for player starts and inserting coins.

If MAMEUI didn't detect your gamepad: Test your gamepad with other emulators. If it doesn't work with any other emulator, then your gamepad is faulty. If it does work with other emulators, then MAMEUI isn't compatible with your gamepad.

Reconfiguring the keyboard or gamepad

Mame is a little weird with this. It doesn't offer a way to reconfigure buttons using the frontend GUI. Rather, MAMEUI requires you load a game and use the in-game overlay menus. Here's how:

  1. Mame's in-game overlay menu
    Open up a game. Press the Tab key.
  2. The menu that you see toward the right will pop up over the game. You have two options: globally change the keys (Input general), or just this game that you currently have running (Input this Game). Select the option you'd like.
  3. Selecting a Player's keys in the in-game overlay menu
    Next select the player whose keys you want to reconfigure.
  4. You'll arrive at the list of all the buttons for a player . Press the Enter key on a button you'd like to reconfigure. Next, hold down the keyboard key or gamepad button that you want the button changed to. That's it!
  5. If you want to clear the changed button and reconfigure it with something else, press the Enter key on it and do nothing (wait).

Using save states

'Save states' is a staple feature offered by all video game emulators. It allows you to instantly save your position in a game at any point. You can then load that saved state any time. If you saved at the start of a level or before a boss, you can restart it an infinite amount of times if you die.

When it comes to MAME and save states, I have some bad news. Here's a direct quote from MAME's documentation:

Note that the save state feature is not supported for a large number of drivers. If a given driver is not known to work perfectly, you will receive a warning that the save state may not be valid when attempting to save or load.

In other words, save states won't work with more than half of the games supported by MAME. But it never hurts to try it out and see if save states will work with the game(s) you want to save in! Start playing a game and do the following.

  • Saving a state: Press Left Shift+F7. You will be prompted to press a key.
  • Loading a state: Press F7. You will be prompted to press a key or select from the menu to determine which save state you wish to load.

Finding ROMs

In my links page, I have some good links to sites where you can download arcade ROMs. If you want to try to find more sites than what's in my collection of links, just Google around. For example, if you want to download Killer Instinct┬ájust Google “download killer instinct arcade” or “download killer instinct mame”.

Reddit is also a great resource for finding good places for arcade roms. On Google search for “reddit download arcade roms”.

Knowing which ROMs to download

Downloading arcade games can be confusing. If you read this tutorial, you know that downloading a single ROM for a game doesn't mean you've downloaded the game. You need to download maybe 3-8 separate files in order for a game to work with MAME. ROM sites don't make it any easier for you by separating every piece of an arcade game as a separate ROM. How could you quickly & easily find out exactly which ROM files belong to a game?

This is where MAMEUI comes to the rescue! (Remember, you can download it from my site.) MAMEUI has a search at the top. Start typing in the game in question, and you'll see it appear. In the “Directory” column you'll see the filenames for the ROM files.

Finding out which ROMs to download

For example, let's say you want to download Teenage Mutant Ninja Turtles - Turtles in Time (probably the #1 Turtles game, haha). Looking at the above screenshot, you'll see:

  • Teenage Mutant Ninja Turtles - Turtles in Time (4 players ver (UUA)
  • Teenage Mutant Ninja Turtles - Turtles in Time (2 Players ver EBA)
  • Teenage Mutant Ninja Turtles - Turtles in Time (2 Players ver UDA)
  • Teenage Mutant Ninja Turtles - Turtles in Time (4 Players ver ADA)

Focusing on a game to download

Then remember everything I talked about earlier on parents and children. So to play Teenage Mutant Ninja Turtles - Turtles in Time, you'd need to download these files:

  1. [Parent] Teenage Mutant... - Turtles in Time (4 players ver (UUA) -- which is “tmnt2.zip”
  2. [Child] Teenage Mutant... - Turtles in Time (2 Players ver EBA) -- which is “tmht22pe.zip”
  3. [Child] Teenage Mutant... - Turtles in Time (2 Players ver UDA) -- which is “tmnt22pu.zip”
  4. [Child] Teenage Mutant... - Turtles in Time (4 Players ver ADA) -- which is “tmnt2a.cip”