22 January 2016

Welcome, Mac Retrogamers!

MAME gives you the perfect retrogaming experience - also on your Mac 

Mac-specific documentation for MAME is scarce. I try to close this gap a bit by explaining my setup and other approaches/ideas in this blog. Although I have written this documentation for Macs, most of this documentation will help for other platforms as well.

My current setup
  • Hardware: iMac 27 (Late 2013), 3.5 GHz i7 with 32 GB RAM, 3 TB Fusion Drive and Nvidia TTX 780M 4 GB; MacBook Pro 13'' (early 2013) as a fallback station for enhanced testing
  • Software: MacOS High Sierra 10.13.2, SDL framework 2.0.7
  • MAME: 0.193 (R0ni binary from here: http://sdlmame.lngn.net), because here the Metal backend works :-)
  • Frontends: QMC2 0.192 (pre-compiled Binary); Attract Mode 2.3.0 (unofficial self-complied binary with some imitations)

Basic homework prior to setting up MAME as a beginner
  1. Download SDL MAME for Machttp://sdlmame.lngn.net/
  2. Download and install SDL Runtime Libraryhttp://www.libsdl.org/download-2.0.php and put it into /Library/Frameworks
  3. Download the QMC2 Frontend for Machttp://qmc2.batcom-it.net/
  4. Have some ROMs - please do not ask me where to find them, unfortunately, the legal situation is blurry (to say the least), which is a shame. With many machines dying over time time, Arcade manufacturers should love to see that there is a scene that preserves this work in the emulated sphere. Let's hope that emulation gets more acknowledgement from manufacturers and other rightholders for these incredible efforts.
  5. You might want to look for the following MAME Extras, which can be displayed in the relevant QMC2 tabs (Screenshots, Titles, Cabinet photos, Marquee photos, PCB Board photos (very very nerdy :-)
  6. If you are more adventurous, you may try Attract Mode - see my recent post on that new frontend. If you are willing to spend your time, it's simply the best experience you can get right now.
Comments are very welcome

I am writing this documentation from a non-coder perspective. If I should be on a wrong path in any case, please be so kind and post a note here.


  1. As someone relatively new to Macs, what are your recommendations for the paths where each of these things are installed? In other words, how do you keep ROMs and applications organized? I have a NAS to keep all my ROMs, but what do I do when a new version of MAME or any of these components comes out? Do you run other emulators as well, like OpenEmu?

    Specific instructions on where to put things would be really helpful. Great job on your instructions so far!

    1. Many thanks Simon. Folder structure is a very good question. This topic matters so mich because with every new MAME version, I think that it is mandatory to restart with a fresh directory structure. So the more you put into the MAME file structure, the more you need to move. With QMC2, I had much of the actual data outside of the MAME structure. Now with MEWUI, I become more and more centric with the data because you have least troubles, in particular with MESS, where I am still relatively new. My current setip is: Install MAME whereever you like and rename the main folder to mame. Then move all data into this directory. Advantage: It is like MAME is probably intnded to work, and with the renaming of the main dir into mame, all ini configurations continue to work. Disadvantage: Much work when moving to a new MAME version, and you must be sure not to migrate old stuff that replaces new stuff. That is probably the 'pure setup' and as soon as I am more sure about that, I will probably make a post on it. Cheers, Stefan

  2. On my late 2013 21.5-inch Mac (2.7 core i5), hlsl runs slower -- but only for the 4:3 games (i.e. Defender and Joust), and not for the 3:4 games (i.e. Donkey Kong and Pac-Man). Even if the games are running at close to normal speed, the sound stutters. But when I adjust the "view" in video options to "full" instead of "cropped," everything runs at normal speed. I'm assuming this is because the simulated monitor screen is smaller and therefore takes less effort to adjust. Yet I experience NO hlsl problems when running the vertical games -- in either cropped or full mode. The other effects don't cause a problem, either, and running it as metal or OPENSSL doesn't make a difference. It's only when I use hlsl. Is there an adjustment I need to make to one of the many hlsl options to make the horizontal games run at normal speed? Any suggestions/help is much appreciated!

    1. Hi, if you are talking about HLSL, I assume that you refer to the HLSL configuration within BGFX, right? This is a very interesting observation, which I have to check. And is it the most recent MAME that you are referring to? How is GLSL - i.e. OpenGL - working? Cheers, Stefan

    2. PS: Since BGFX is currently not entirely stable (according to MAME Devs), I currently run GLSL with the most recent shader as described here: https://mameonmacs.blogspot.co.at/2016/06/glsl-revisited-newer-crt-geom-shader.html Means that BGFX is right now a bit on the waiting list for me.

  3. Thanks for the reply. I am referring to the HLSL configuration within BGFX. Also, I'm running MAME .175 and QMC2SDLMAME .65. I haven't had any luck with GLSL thus far. BGFX -- at least to me -- seemed much easier to use and configure. But I should try GLSL again.

    1. Hey, look into my new performance test post, which somehow confirms that BGFX/HLSL is performing worse in horizontal games. You should really have a look into the CRT-GEOM shader for BGFX. It looks really nice, IMHO nicer than the default MAME shader in vertical games, and performs far better. Maybe you get rid of the performance problems. Setting up OpenGL shaders in QMC2 is not much of a difference, but again, be sure that you take the latest CRT-GEOM shader with halation. Both shaders look evenly terrific under OpenGL and BGFX. Good luck!

  4. First of all, love the blog, finally a mac centric place. Anyhow I use Homebrew to install MAME. Have you tried it before?


Any comments are welcome!