This FAQ was written to support MESS. If you have any changes, suggestions or additions please contact the MESS team. Changes will be made as time is available. If you have a question that is not answered in this FAQ, try the searching the MESS message boards. There is a wealth of information there already.
MESS is an acronym that stands for Multiple Emulator Super System. MESS will more or less faithfully reproduce computer and console systems on a PC. MESS can currently emulate over 250 systems from the last 5 decades.
MESS emulates the hardware of the systems and sometimes utilizes ROM images to load programs and games. Therefore, these systems are NOT simulations, but the actual emulations of the hardware.
The primary purpose of MESS is to preserve decades of computer and console history. As technology continues to rush forward, MESS prevents these important "vintage" systems from being lost and forgotten. MESS is based on MAME. Additional information about MESS or MAME can be found at www.mess.org or www.mame.net.
An emulator attempts to recreate the original functions of the hardware. Software run on a emulator should perform exactly as if it were being run on the original hardware.
A simulator attempts to recreate the original functions of the software, essentially imitating the game or software. The end results may look very similar between emulation and simulation but they are very different in how they are implemented.
MESS and MAME are both emulators. They try to emulate the arcade, computer, and console system. This may include bugs or flaws that were on the original system.
Yes, MESS is really free. The source code is freely available, too. It is illegal to sell MESS or its source.
No. MESS is based on MAME, and uses the same underlying engine, but its goals are different. To put it simply, MAME is for arcade machines, and MESS is for home computers and video game consoles.
Although the people involved in developing new versions of both programs are enthusiasts working out of love for the systems involved, the systems are essentially different. Arcade games, which MAME specializes in, are usually unique, in that the hardware for any particular game was a one-time solution arrived at in order to get the game to market. Some game companies, such as SNK, Nintendo and others, did develop systems that could be changed over to play other games relatively easily, but this wasn't the rule in the arcades. To emulate an arcade game, the programmer develops a driver file which mimics hardware surrounding the arcade game's CPU or CPUs. Both MAME and MESS contain the same cores to emulate the same CPUs. The focus of MESS is accurate emulation of the hardware of computer and gaming consoles, hardware which doesn't change depending on which game or program is being run. Fundamentally, MAME and MESS are being created by and are targeted for slightly different segments of the emulation community: gamers and vintage computer enthusiasts. Those two communities do often times overlap, and a merger of the two programs is theoretically possible at some point in the future.
Why isn't there a program called MASS to mimic mainframes? So far it hasn't seemed necessary to split MESS into two programs. The core program inherited on a regular basis from new updates of MAME can accommodate a large number of systems. If you think of each arcade game in MAME as a separate computer or console, the latest version has over 3,000 different machines available, compared to MESS' hundreds of systems listed under its All Systems menu. The border dividing gaming consoles from computers tends to blur the further back you go in time. Is Nippon Electric Company's PC Engine a game system or a computer? Coleco originally marketed its Adam computer as an add-on to the Colecovision gaming system. Nintendo also had big plans to turn its NES and later SNES into full-fledged computers delivering information and services to users over an early version of the internet. The APF Imagination Machine was also built around a game console core. Atari's computers grew from its original gaming consoles, and were probably used more for gaming in their day than any serious computing projects. The simple answer is there is still a lot of room for MESS to include new gaming consoles and computers. The complicated answer is that it is hard to tell the difference.
In general a PC with a decent processor should run most of the systems at a decent speed. There are an enormous variety of systems emulated and each system has its own requirements. The best thing to do is try the system you are interested in. But remember accuracy is the primary goal not speed.
First, it is important to note that in the emulation world, the term ROM is used to refer to two different things:
For the sake of clarity, the official MESS terminology for #1 is "BIOS", after what they are typically called in Intel PC systems, and the term "ROM" is avoided. The term "cartridge image" is used to refer to #2, where "image" is a generic term that applies to downloaded images of removable media, whether they be a cartridge, a floppy drive, or a hard disk.
In most cases, old software is physically incompatible with modern computers. No matter how hard you push, an Atari cartridge just plain won't fit in your computer's floppy drive. Folding up old 5 1/4" diskettes so they fit in a 3 1/2" drive will only break your disks. Obviously there is a problem here - how do I get that software into my PC so an emulator can use it?
It is possible to build special cartridge reading devices for console systems and hook up old computers to new ones to transfer floppy disks. These media get transferred into files on the new computer.
Now, originally emulation was just for hobbyists who had all this special equipment, but some of them put these BIOSes and images up on the Internet for people to download, on the honor system that people would only download the BIOSes and images that they owned the original software for. Unfortunately, a lot of people came along who just wanted to download free games and did not care about preservation, and gave the emulation community a bad name among software companies. There are many BIOSes/images sites on the Internet, using a search engine should turn up the ones you want. But remember: downloading pirated BIOSes/images that you do not own is illegal. Some people say that the copyrights have expired or that you can download it if you delete it after 24 hours, but they are wrong. It is up to you whether you want to ignore the law, as most of the games are not and will not ever be sold again.
Most systems require BIOSes. MESS is very picky about its BIOSes -- they must be exactly the ones it is expecting, otherwise it may not work.
BIOSes should go, still zipped, in the BIOS subfolder of wherever you put MESS. Game images should go into the SOFTWARE\[system name] folder. They can still be zipped, but only one image per zip file.
For DOS, type "mess [system] [device] [game] [options]", where [system] is the system driver name, [device] is the type of ROM, [game] is the filename of the ROM, and options are command line options. Valid [device] names (eg -cart and -flop) can be found by using "mess -listdevices" and valid options are listed in the mess.txt and msdos.txt files.
For example:
mess nes -cart zelda.nes -nosound (This will run the Zelda game on the
Nintendo system without sound. See mess.txt for more examples.
For UNIX/Linux, do the same thing except the name of the program is xmess.
For Macintosh or Windows OS, run the MacMESS or messgui.exe application and click on the system or software you want to run.
There is a message board you can go to for help at http://www.mess.org. But first, make sure you read this FAQ and the rest of the documentation. The answers can often be found there. Also check out the MAME FAQ at http://www.mame.net --it is a very good resource for things common to MAME and MESS, such as sound and graphics setup. Also search through the message board to see if somebody already had the same problem. And at least put some effort into fixing it yourself. People on message boards can get very annoyed with people who ask questions that have already been answered elsewhere, especially in readme.txt and mess.txt.
Because of MESS' goal of compatibility over speed, this is often the case. You might think that your computer should be able to emulate such old machines at full speed, but keep in mind that MESS is not performing any shortcuts in the emulation. Many other emulators perform shortcuts that sacrifice compatibility in favor of performance, which is a valid tradeoff given a different set of design goals. With MESS, your CPU is doing the jobs of the CPU(s), graphics chip(s), sound chip(s), as well as any other special hardware present in the original machine, so it can be bogged down fairly easily, especially by the relatively unoptimized MESS core. MESS is written almost entirely in C, not assembly, for compatibility reasons. Additionally, there is a level of overhead required to get the level of modularity that it takes to have the myriad components in the emulation be usable across a broad set of drivers. There are some tweaks you can do to speed up the performance a bit (see the MAME FAQ), but if you need a big boost, there is not much you can do except buy a faster computer, wait for an update (not likely), or use another emulator.
The snapshot (aka screenshot) folder is the place to store images to be displayed in the GUI. It can display in-game/software images and system images, or anything else as long as it is named correctly.
The snapshot folder can be configured in the Directories… window under the Options menu in the GUI. The default screen folder is snap. Store system images with the system name. Store software/game snapshots in a folder under the system they belong to.
For example:
mess/snap/a2600.png <<< This is a picture of an Atari system. The name
needs to match the driver.
mess/snap/a2600/junglehunt.png <<< This is an in-game screenshot of
the game Jungle Hunt. The name needs to match game name.
You can take your own screen shots by selecting the ‘Save Screenshot’ option in the file menu while in emulation. This will save an image in the png format with the name of the driver (if one does not exist already). If an image already exists an a sequential number will be added to the name (for example coco.png, coco0000.png, coco0001.png etc...).
You can also find many images on various emulation or download images from the internet at various sites. Try your favorite search engine.
If you have programming skills, you can download the source and fix bugs, improve emulation on existing systems or add a new one! If you fix anything, be sure to submit the fixes so they can be included in the source. Be advised that corrections or additions may not be accepted if they are hackish in nature - MESS strives for accuracy both in emulation and in the source code.
If you do not have programming skills, you can help by documenting emulatad systems and software, reporting bugs, submitting artwork and so on - anything to asssit those with programming skills and improve the project.
We are working on this feature; the paste feature in MESS 0.62 laid the foundation for this feature. Sit tight.
If you ask for help on the message board, post it in both English and your native language. Many people there speak more than one language and may be able to help you in your native language. Also, visit http://babelfish.altavista.com. They have a translation program that can translate between English and most European languages as well as a number of other languages. Also look at the MAME FAQ at http://www.mame.net. It is in many different languages, including Greek, Serbian, Romanian, Norwegian, Danish, Hebrew, Czech, Dutch, French, Italian, Korean, Japanese, Chinese, German, Portuguese, Spanish and Finnish.