Vas the Man’s MacMAMEinfoX
Since you’re here, you probably aleady know that MacMAMEinfoX is a MAME information viewer and “front-end” for Mac OS X. Right now it supports R. Belmont’s SDLMAME and also the rather dated MacMAME. It can be extended to support other MAME derivatives with plug-ins (which you, too, can write if you download the SDK).
What is it?
MacMAMEinfoX is a front-end for MAME – that is, an application that provides a subjectively better user interface than that which is built into MAME. (If you don’t know what MAME is, go and look at its official web site.) MacMAMEinfoX displays a variety of information about games emulated by MAME, and helps you find and select a game to launch. Features include:
- Display information from MAME XML game list (including driver flags, such as imperfect graphics)
- Flexible sorting options
- iTunes-like instant searching
- Display information from mameinfo.dat and history.dat
- Organise games with category files such as catlist (MacMAME or MAME32 format)
- Show screenshots and other associated images
- Quickly open relevant web pages (MAWS, Progetto Emma, etc.)
- Plug-ins allow many versions of MAME to be supported
- Simple user interface for configuring most SDLMAME options
- Per-game options
In addition to the MacMAMEinfoX application, the MMIXCommon framework is available. This framework provides most of what you need to write a MAME front-end – all you need to do is write the user interface. The SDK also includes everything you need for writing MAME integration plug-ins for supporting other variants of MAME. Documentation and sample code are provided.
Before You Ask
Before you go ahead and e-mail me, here are answers to a few questions that you could potentially ask:
- What are the system requirements for MacMAMEinfoX?
- At present, MacMAMEinfoX requires a Mac running OS version 10.3.9 “Panther’ or later. MacMAMEinfoX is a Universal Binary, so Macs with both PowerPC and Intel processors are fully supported.
- How do I use MacMAMEinfoX?
- Try reading the help (choose MacMAMEinfoX Help from the Help menu – surprising as it may seem, I have actually included standard Mac help). It should explain most of what you need to know.
- What versions of SDLMAME are supported?
- MacMAMEinfoX 0.7.7 supports SDLMAME 0.115 and compatible versions. You can also download an updated SDLMAME plug-in that supports SDLMAME 0.119 and compatible versions – see below for more on this. (MAME’s command-line syntax changes regularly, so front-ends have to keep up or be left behind.)
- What versions of MacMAME are supported?
- All versions of MacMAME that can produce an XML format game list are supported. These versions have a MAME Game Info… button on the Reports tab.
- When will MacMAMEinfoX be updated?
- As with most hobbyist projects, when I get around to it. Begging has no effect on release schedules, although polite requests are considered. But contrary to the popular myth, software developers do have lives, families and jobs, too, so I usually have higher priorities than MacMAMEinfoX.
- Why doesn’t MacMAMEinfoX support joysticks?
- Because I don’t believe the needs of people who want a front-end for a dedicated MAME machine are best served by MacMAMEinfoX. An SDK is available to make it easy for others to write front-ends (see below), so maybe someone else could throw together a joystick-driven front-end.
- Where can I get help?
- From the Help menu to begin with, but if you want to connect with the friendly community, head over to the Emuversal Bulletin Board – I’m a regular there, as are many other helpful individuals.
- Why does MacMAMEinfoX use generic icons?
- Because I can’t be bothered drawing proper icons for it, and I’m not going to pay anyone else to.
- MacMAMEinfoX is a stupid name!
- I know, but what are you going to do about it? In case you’re wondering, though, it’s short for “MAMEinfo Viewer for Mac OS X” (originally that was all it did – ability to launch MAME was an afterthought).
Get It!
There are three downloads: MacMAMEinfoX itself, an updated SDLMAME plugin that supports newer versions of SDLMAME and the MMIXCommon SDK (with documentation and sample code).
MacMAMEinfoX 0.7.7
This is the main application. This is probably the first thing you want to download. Changes in version 0.7.7 include:
- Game options manager added
- Updated for SDLMAME 0.115
- Minor UI improvements
- Minor optimisations
MacMAMEinfoX SDK 0.7.7
Download this if you want to write your own MAME front-end, if you want to write a plug-in that supports another MAME variant, or even if you’re just idly curious about how some of this stuff works. Includes sample code for a MAME integration plugin, a front-end and a plug-in test harness application.
Latest SDLMAME Plug-in
An updated plug-in that supports SDLMAME 0.119 and compatible versions. This plug-in requires MacMAMEinfoX, or another application that supports MacMAMEinfoX plug-ins – it’s no use on its own. To use this updated plug-in, please follow these steps carefully:
- Quit MacMAMEinfoX if it’s running
- Decompress the zip archive by double-clicking it in the Finder – you should get a bundle called SDLMAME.integrator
- Move SDLMAME.integrator to /Library/Application Support/MacMAMEinfoX/Plug-ins to install the updated plugin for all users, or to ~/Library/Application Support/MacMAMEinfoX/Plug-ins to install it just for youself
- Select the MacMAMEinfoX application in the Finder and choose Get Info from the File menu
- In the MacMAMEinfoX Info window, expand the Plug-ins section
- Deselect SDLMAME.integrator (i.e. make sure the box is not checked – this disables the built-in SDLMAME plugin so that the updated plugin will be used)