(c) Copyright 2005-2020 by Oliver Stöneberg
mame_regtest is a tool designed to mass-test drivers of MAME-based applications like MAME, MESS and PinMAME.
The latest stable version is 0.74 which includes the new XML-based configuration instead of command-line parameters to make the usage easier and XPath support to select drivers for testing as well as the optional XML output with all the information about a driver run.
Note on XPath: You have to complete the /mame/game or /mess/machine expression with one, that returns a valid list of game or machine nodes. You have to use the placeholder DRIVER_ROOT for the application-specific beginning. See some examples for the removed options in the sample mame_regtest.xml. A tutorial on XPath can be found at http://www.zvon.org/xxl/XPathTutorial/General/examples.html
Note on multiple configurations: You have to add a new element to the configuration with the options you want to override and specify the name as command-line parameter. I added a sample mess configuration to the default mame_regtest.xml.
Note on 0.113 cycle:
- 0.113u2: Won't work at all, because -str doesn't skips the disclaimer screens in this version.
Note on big-endian systems: >ou have to comment the LITTLE_ENDIAN and uncomment the BIG_ENDIAN define
Building mame_regtest: As of version 0.75 mame_regtest is utilizing CMake and conan. libxml2 and zlib are required to compile.
How to use devices: You have to create a file with the following syntax:
mrt_<drivername>.xml
It has to contain a list of filenames specified with the full path and you have to put it in the same directory as the mame_regtest binary.
<images>
<image cart="/path/to/superchargercart.rom" cassette="/path/to/superchargergame.cas"/>
<image cart="/path/to/superchargercart1.rom" cassette="/path/to/superchargergame1.cas"/>
<image cart="/path/to/cart2.rom"/>
</images>Here is a sample mess section for the mame_regtest.xml which tests the a2600 set:
<mess>
<option name='executable' value='/path/to/messd'/>
<option name='rompath' value='/path/to/biosroms'/>
<option name='xpath_expr' value='DRIVER_ROOT[@sourcefile="a2600.c"]'/>
<option name='str' value='3'/>
<option name='use_debug' value='0'/>
</mess>1 - terminated / unknown error
2 - missing roms
3 - assertion / fatalerror
4 - no image specified (MESS-only)
5 - no such game
6 - invalid config
128 - ???
100 - exception
-1073741819 - exception (SDLMAME/SDLMESS)
0 - OK
1 - error
- is built as part of the MAME/MESS "tools" target - please copy it from an existing installation to the mame_regtest folder
- retruncodes:
0- images are identical - no diff written1- images are identical - diff written-1- an error occured