If you want to use ClrMamePro with other emulators you can write a datfile or - if the emulator has an option to create a romlist- modify the engine.cfg. Datfiles for a lot of emulators can be already found on my homepage.
It's easy to write a datfile for a different emulator. Just take a look at M.A.M.E.'s -listinfo output. ClrMamePro parses the following tags:
set, name, cloneof, description, rom (name, size, crc, crc32), sample, sampleof and manufacturer
The order and the case doesn't matter ! The space between a tagname and its attribute or
a '(' or ')' is important. The description name has to be in quotation marks. If you're using
quotation marks within a name, use '\"'.
Example:
set (
name pacman
cloneof pacman
description "PuckMan (Japan set 1)"
rom ( name namcopac.6e size 4096 crc fee263b3 )
sample shot.wav
sampleof galaxian
)
ClrMamePro is able to read ROMCenter datfiles, too. Use them on your very own risk. ROMCenter is (C) by Eric Bole-Feysot.
ClrMamePro uses some datfile flags. These are:
game (
...
rebuildto namco\english
...
)
rebuilds the files of this set to: rebuilderdestinationpath + "namco/english"
Normally you shouldn't modify engine.cfg !!! If you want to add a new emulator
or new biosroms, you should contact me. But anyway...here is a short description of the
engine.cfg syntax:
engine ( )
Each engine starts with this keyword. Be sure to keep spaces between the keyword and
the brackets.
name
Name of the current engine. This name will be displayed in the settings window.
cachefile
Filename of the cache-file in the <clrmamepro>\cache folder.
command
Parameter for the binary to produce a romlist. E.g. MAME.EXE produces a romlist when
calling MAME.EXE -listinfo. If no command keyword is given, the engine will be a datfile
engine. The enginename isn't a binary and will be handled as a pure datfilename.
replace x y
Means that special keywords x in the romlist will be replaced by new keywords y. For
example: replace crc32 crc will replace crc32 tags with crc. Of course you can only replace
keywords. Available keywords for y are:
cloneof
description
game
name
crc
romname
size
rom
sampleof
sample
manufacturer
biosset ( ... )
Biossets are separate rom sets which normally contain BIOS roms. Like neogeo.zip in
MAME has all neogeo BIOS roms.
name
The name of the file/folder where the emulators look for the biosfiles. E.g. neogeo
description
This name will be displayed in the scanner / rebuilder.
rom ( name ... crc ... size)
name of a bios roms, crc32 of a bios rom and size of a bios rom.
hidein
Use this instead of a name tag if the bios is a modified version of a different set. Clone
sets are activated or deactivated if their parent is activated or deactivated. The name
after cloneof is the name of the parent biosset.
The current MAME engine looks like this:
engine (
name MAME
cachefile _mamedat
command -listinfo
biosset (
name neogeo
description "NeoGeo"
rom ( name neo-geo.rom crc 0x9036d879 size 131072 )
rom ( name ng-sfix.rom crc 0x354029fc size 131072 )
rom ( name ng-sm1.rom crc 0x97cf998b size 131072 )
)
biosset (
hidein neogeo
description "irrmaze NeoGeo BIOS 'im_bios.rom'"
rom ( name im_bios.rom crc 0x853e6b96 size 131072 )
rom ( name ng-sfix.rom crc 0x354029fc size 131072 )
rom ( name ng-sm1.rom crc 0x97cf998b size 131072 )
)
biosset (
name playch10
description "Nintendo Playchoice 10"
rom ( name pch1-c.8k crc 0x9acffb30 size 8192 )
rom ( name pch1-c.8m crc 0xc1232eee size 8192 )
rom ( name pch1-c.8p crc 0x30c15e23 size 8192 )
rom ( name pch1-c.8t crc 0xd52fa07a size 16384 )
rom ( name 82s129.6f crc 0xe5414ca3 size 256 )
rom ( name 82s129.6e crc 0xa2625c6e size 256 )
rom ( name 82s129.6d crc 0x1213ebd4 size 256 )
)
biosset (
name cvs
description "Century Electronic Video System"
rom ( name 5b.bin crc f055a624 size 2048 )
rom ( name 82s185.10h crc c205bca6 size 2048 )
)
)