Emulator:MESS

From Wah!ki
Jump to navigation Jump to search

About

MESS stands for Multi Emulator Super System, the goal of the project was simlar to MAME where MAME only emulated arcade systems MESS took the MAME source code and extended it to include support for consoles, computer systems and calculators. That is not to say the scope was limited to only these 3 classes of device, The MESS project was happy to emulate any non-arcade system, leaving the arcade work up to the MAME project.

Being based on the same source code oas the MAME project means the project shared similar goals, that is accuracy and documentation over playability with the byproduct of accurate emulation being the ability to load ROMs.

As of MAME 0.167 the MESS source code was integrated into the main MAME source tree and the projects unified. This made sense because of the lot of the contributors to MESS were also MAME developers and the projects shared a common codebase.

The default MAME compilation as of 0.167 will build a unified MAME/MESS project (commonly referred to as UME) although as of MAME 0.217 it is still possible to build MESS alone by passing a SUBPROJECT variable during compilation.

Project Homepage

Configuration

Platform Version Device Exec Type commandline_format
Linux 000000 N/A README D N.A


Usage

Some general usage notes are listed here, due to the scope of the MESS project these should get you most of the way when using any system that isn't explicitly covered in its own article.

Fundamentals

Let start with some key fundamentals you will benefit from understanding when approaching mess for the first time.

Term Description
Full Emulation This term does not relate to the status of the emulation of the device nor machine but is instead a runtime state for MESS and as it happens the default state for MESS when you launch a machine/device. When in Full Emulation the MESS UI is no longer accessible using the standard keys and if the machine you are running supports a keyboard all applicable keys (TAB) will be assigned to the machine NOT your host when the emulator has focus.
Partial Emulation Just like Full Emulation this is a runtime state for MESS, when in this mode the emulator returns control of the Keyboard to the host even if you are using a machine with a full keyboard that has a TAB key assigned as part of the input configuration, the TAB key operation will interact with you host not the emulator internally. In this case pressing tab will open the MESS UI and allow you manage attached devices, disks, tapes, inputs etc.
System A system is equivilent in all respects to a machine, although multiple machine versions may be grouped under a system.
Machine A machine is an emulated device (e.g. an Atari 2600 or an MSX). Machines are defined in drivers by stipulating their specific hardware. They may as be as complicated as they need to or just a clone/branding change (e.g. CreatiVision as Dick Smith Electronics Wizzard). You start a machine, that machine may be configured with slotted devices and software. Some machines require software or slotted devices be filled (e.g. Amstrad CPC464) before they will do anything, MESS should warn you of this as you start the machine.
Interface An Interface just like on a real device is somewhere you connect external items, a cartridge interface is a good example of this. This is different from a slot in so far it is externally facing, interfaces depending on how they are defined may still show up in the Slot Devices UI menu.
Slot A slot just like on a real device is somewhere you connect devices, taking a relatable example on the ct486 device you can add ISA cards to a slot. Internal slots are available for expanding the machine. This is different from an interface where an interface is externally facing.
Media Media is the supported forms for software that the machine can handle, this is different for every machine, and example of this would be the Nintendo N64 machine with a game cartridge. The media that is supported will be assigned to a type and accept various types of file. So looking at the N64 again, the cartridge media type will support files of .v64, .z64, .rom, .n64, .bin.
Software List A software list is a predefined XML for a system that is able to recognise known good working version of a ROM, Disk Images, CD-ROM etc. These are specific to the machine to which they built for and are built to define compatible software for specific interfaces within that machine definition.