Author Topic: Tutorial: Using MAME  (Read 943 times)

Pieter Hulshoff

  • Administrator
  • Hero Member
  • *****
  • Posts: 1002
  • Karma: +17/-0
    • View Profile
    • Towel 42
Tutorial: Using MAME
« on: December 12, 2017, 03:02:03 PM »
Using MAME for emulation within RetroFE requires a bit of background:

MAME emulates machines: arcade machines, console machines, handheld console machines, home computer machines, etc. Each of these, whether that's Pacman or SNES or the NMS8250 MSX computer is considered a separate machine. Machines in MAME are launched as follows:
mame64.exe <machine name>
e.g.
mame64.exe pacman
mame64.exe snes
mame64.exe nms8250
The roms required for this should be placed in MAME's rompath, defined in the mame.ini file.

Some of these machines, like the SNES and NMS8250, allow software to be loaded. MAME has two methods to do this:
1. Software lists, XML files placed in MAME's hash directory.
2. Direct call.

Games from the software list can be called by adding the name of the software after the machine, e.g.
mame64.exe snes sturrican
The roms required for this should be placed in MAME's rompath, defined in the mame.ini file.

Games from a direct call need to be called using the type of software, e.g. -cart, -cart1/cart2 (if more than one cartridge slot is available), -floppy, etc. followed by the path to the file, e.g.
mame64.exe snes -cart "C:\RetroFE\collections\Super Nintendo Entertainment System\roms\Super Turrican.zip"
Since you use the complete path to the software here, these files can be outside the rompath defined in the mame.ini file.


A launcher configuration for MAME arcade games could look something like this:
executable = emulators\MAME\mame64.exe
arguments = "%ITEM_NAME%"

A launcher configuration for SNES games using direct calls could look something like this:
executable = emulators\MAME\mame64.exe
arguments = snes -cart "%ITEM_FILEPATH%"

A launcher configuration for MSX games using software lists could look something like this:
executable = emulators\MAME\mame64.exe
arguments = nms8250 "%ITEM_NAME%"


I've taken the liberty of creating a downloadable set for you to take a look at: https://mega.nz/#!jBMyxTaS!dPgNjfq9BJN3ScY5RlhLscgLa7wdejIUlBBXNdMQEss
It contains a working and configured MAME emulator (0.192) with a set of collections (containing settings.conf files) and corresponding launcher configurations for Windows and Linux. Perhaps this can help you get started using MAME for emulating a wide variety of systems.