(Why doesn't MAME support RAR/7-Zip/xxxx compression?)
(Do I need to put my CHD files into a ZIP?)
Line 53: Line 53:
  
 
==Do I need to put my CHD files into a ZIP?==
 
==Do I need to put my CHD files into a ZIP?==
No. In fact, it is a very bad idea. CHD files are already compressed in such a way that they can access the data quickly without the need for decompressing the whole CHD all at once. If you put a CHD file in a ZIP, MAME will try to extract the giant CHD file from the ZIP into your system's memory, and then will decompress bits and pieces of the extracted CHD out of memory. This is highly inefficient, and really defeats the purpose of the CHD files.
+
No. In fact, it is a '''VERY BAD IDEA'''. CHD files are already compressed in such a way that they can access the data quickly without the need for decompressing the whole CHD all at once. If you put a CHD file in a ZIP, MAME will try to extract the giant CHD file from the ZIP into your system's memory, and then will decompress bits and pieces of the extracted CHD out of memory. This is highly inefficient, and really defeats the purpose of the CHD files.
  
 
==Why doesn't MAME support RAR/xxxx compression?==
 
==Why doesn't MAME support RAR/xxxx compression?==

Revision as of 21:41, 3 April 2012

Return to the main Frequently Asked Questions page.

Where can I get MAME?

MAME is always available from the Latest Release page on the official MAME developer site. Many other sites have MAME online, too, but you will always find the latest version at the sites mentioned above.

What is a frontend? Do I need one? If so, which one should I use, and where can I get it?

A frontend is a GUI (Graphical User Interface) for the command-line versions of MAME. A frontend is generally responsible for discovering what games are installed on your system and presenting you with a nice user interface for choosing which one to run using MAME. Frontends often have many spiffy features like cool animations, pictures of cabinets and artwork, details about the games, and other useful tidbits.

Most frontends are separate from MAME itself. One common exception is MAMEUI, which is a version of the standard Windows MAME build with the frontend built directly into the application.

Where can I get the games (ROMs) for MAME?

There are several means of obtaining ROM images for use in MAME:

  • A small number of ROM images are now available with the copyright holders' permission at the mamedev.org ROMs page.
  • The HotRod Joystick control panel from Hanaho Games, Inc. comes bundled with a CD that includes MAME and a selection of Capcom ROMs. Hanaho also sells the ArcadePC cabinet with a different selection of Capcom ROMs.
  • You can purchase your own arcade game PCBs (on eBay for example), buy a ROM reader, and use it to copy the ROM chips' contents into files for your personal use.

Always check if the particular arcade games' copyright owner is selling the ROMs legally (as with Capcom). That way you will support the companies that support emulation.

Once I get the game ROMs, where do I put them?

Put them in the "roms" subdirectory of your main MAME directory. You do not need to uncompress the ZIP files. For example:

mame.exe 
roms\
   gridlee.zip

What are samples and why do I need them?

Samples are digitized sound files. Some games need them, in addition to the ROM files, to provide the complete range of sound effects. For example, the sound routines of Donkey Kong Jr. are not yet fully emulated. If you play the game without samples, you will miss the "jumping" and "climbing" sounds.

It is the MAME team's goal to eventually do away with samples; however, at the moment many older games' audio circuitry is too complex to emulate accurately.

Where do I put samples? Will MAME know they are there?

Put sample files in the "samples" subdirectory of your main MAME directory. MAME will automatically load samples as long as they have the right names and are in the right place.

mame.exe 
samples\
   gridlee.zip

Note: the samples for a game's "parent" (base) version cover all the other versions of that game. So if you have samples for dkongjr in your "samples" directory, dkongjrb (Donkey Kong Jr. Bootleg) and dkongjrj (Donkey Kong Jr. Japanese) will use these samples properly. You do not need three copies of the same samples.

Where do I place the .CHD (compressed hard disk image) files?

Put them into a subdirectory of your "roms" directory with the name of the game the CHD is for. In addition the CHD, you also need the corresponding ROMs for the game to work. To demonstrate:

mame.exe 
roms\
   area51.zip
   area51\
      area51.chd 

Note that the CHD name does not always directly correspond to the game now. For example, the CHD for Beatmania is named 753jaa11.chd. It would go in a directory called "bm1stmix".

The ROMs and samples are in ZIP (compressed) format. Do I need to extract them?

You do not need to unzip these files. MAME automatically reads and extracts the data from zipped ROM and sample files, so you do not need to extract this data yourself. It also helps to keep all the ROM files for each game together in a single package.

Do I need to put my CHD files into a ZIP?

No. In fact, it is a VERY BAD IDEA. CHD files are already compressed in such a way that they can access the data quickly without the need for decompressing the whole CHD all at once. If you put a CHD file in a ZIP, MAME will try to extract the giant CHD file from the ZIP into your system's memory, and then will decompress bits and pieces of the extracted CHD out of memory. This is highly inefficient, and really defeats the purpose of the CHD files.

Why doesn't MAME support RAR/xxxx compression?

ZIP is extremely well-supported through a free, cross-platform library, and has been a standard for at well over a decade and is still the suggested and preferred method of storage for all things MAME deals with.

MAME does now support internally 7-zip (7z) archives for holding data (alongside ZIP) as of MAME 0.145u1. It had matured to the point where it was thought to be a more of a potential plus to the project rather than a hinderance, in particular usage for large CD-Based titles (CHD's) used in MAME and MESS.

RAR (.rar) is still a unique compression algorithm which, unfortunately, is proprietary. Given MAME's licensing and its source available status, for this reason, you will never see RAR support in MAME. At this moment the choices of .ZIP or .7z archives should cover everyone compression needs.