MAME stands for Multiple Arcade Machine Emulator, it is a great free emulator that lets you play thousands of games for PC. When used in conjunction with an arcade game’s data files (ROMs), MAME will more or less faithfully reproduce that game on a PC. MAME can currently emulate over 2600 unique (and over 4600 in total) classic arcade video games from the three decades of video games – the ’70s, ’80s, and ’90s, and some from the current millennium. MAME’s purpose is to preserve these decades of video-game history. As gaming technology continues to rush forward, MAME prevents these important “vintage” games from being lost and forgotten.
What is MAME?
When this program was developed, MAME allowed people to play thousands of games for free. Nowadays MAME is used to not only introduce a new generation to arcade games but with over 4,500 entries, it serves as a time capsule of sorts. MAME is also one of the oldest emulators on the internet.
Back in the day when a game developer released a game, it went to an arcade, and that was the only place people could play. If you lived far from an arcade, you were unable to play video games. Nowadays, the same video game is available on a minimum of five consoles, and you can buy it online.
Because of these slight differences in how people played games, MAME is a good way for people to look at how gaming has evolved. The emulator itself runs fine, but it has a lot of quirks to it. For example, ROMs have to be placed in a special rom folder in the MAME folder, and the rom has to be in a zip file. If ROMs are not placed exactly like this MAME will be unable to read it.
Another quirk is whenever the game opens, you have to press the five key repeatedly. This is done to tell the rom that you have ‘coins’ to play the game. Another interesting feature is that there is a pause, and a save state feature. However, the save state feature only works 80% of the time.
A new toolchain for Windows, based on GCC 4.4.3 prerelease, is now REQUIRED. Go to http://mamedev.org/tools to get the new tools. The code included with 0.137 WILL NOT BUILD with the old tools. The new toolchain has support for building 64-bit MAME builds with gcc, as well as built-in DirectX headers, and C++ support, which was missing from the old tools.
What made this program so astounding was that it brought all the games from an arcade, and allowed people to turn their computer into a free arcade.
Non-Unicode builds of Windows MAME are no longer supported. The options to turn this off in the makefile have been removed, and future changes are likely to solidify this requirement. If you are still (God forbid) running on Win9x, you will need the unicows.dll library to run MAME. Download unicows from Microsoft.
All code in MAME is now compiled as C++, plus there have been a few small changes that take advantage of the C++ language. For the most part, there is no effect on how drivers are written, except for some nicer accessors to devices and address spaces. Future improvements to take advantage of the C++ syntax will evolve slowly and will be done internally. We are not interested in outside attempts to do this work
The SDL OSD for MAME is now shipped as part of the main source package. SDL builds for Windows are now regularly built as part of the validation sequence for a new release. Thanks to R. Belmont, couriersud, and Olivier Galibert for their work on the SDL port over the years.
Important Note: As of this release of MAME, several important things about the system have changed. Please read the following items before attempting to compile this new version.