## DatFiles

If you want to use clrmamepro with other systems you can write a DatFile for that system, or - if a system has an option to create a filelist- modify the engine.cfg. DatFiles for a lot of systems like emulators can be already found on my homepage.

It's easy to write a datfile for a different systems. Just take a look at so called -listinfo syntax. clrmamepro parses the following tags:

#### Standard tags:

> set, name, cloneof, description, rom (name, size, baddump, nodump, crc, crc32, md5, sha1), sample, sampleof, year 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 md5 3f84d78d59147b9b3c816da72110e55f)
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 specific tags

clrmamepro uses some datfile flags. These are:

- "header"
  Here you can specify a XML header definition which has to be used for the datfile. If the xml definition file isn't in clrmamepro's headers folder or is not actice, you'll see a warning when loading.
  Example: header nes.xml

- "rebuildto"
  Here you can specify a new rebuilder destination path
  for single sets. For example:

> game (
> ...
> rebuildto namco\english
> ...
> )
> rebuilds the files of this set to: rebuilderdestinationpath + "namco/english"

- "forcemerging"
  This can be set to 'none', 'split' and 'full'. Other values will disable this feature. With this option you can force a scanner/rebuilder merge mode. (No merging, split and full merging). It has to be added to a datfile like this:
  clrmamepro (
  forcemerging none
  )
  "forcezipping" This can be set to 'zip' and 'unzip'. Other values will disable this feature. With this option you can force the rebuilder/merger to zip (or unzip) the created files. It has to be added to a datfile like this:
  clrmamepro (
  forcezipping zip
  )

Some profiler specific settings

- "name"
  This is the name which will be displayed in the profiler's name field. E.g. "CPS2".
- "description"
  This is the string which will be displayed in the profiler's description field. E.g. "Capcom Play System 2"
- "version"
  This is the string which will be displayed in the profiler's version field. E.g. "20010511"
- "author"
  Here you can add a copyright string and email addresses. E.g. "Logiqx, http://www.logiqx.com/"
- "comment"
  Here you can add a comment line.

## Engine.cfg

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.

- gamelist

  For XML datfiles only. This specifies the gamelist tag.

- command

  Parameter for the binary to produce a datfile. 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.

- ignore x

  Mean that keyword x is ignored while parsing the datfile. E.g. you can forbid the usage of samples by: 'ignore sampleof' and 'ignore samples'. For a list of possible values of x look at 'replace x y'.

- replace x y

  Means that special keywords x in the datfile 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
> romof
> merge
> description
> game
> name
> crc
> md5
> sha1
> rombaddump
> biosbaddump
> diskimagenodump
> biosnodump
> romnodump
> diskimagenodump
> romname
> size
> date
> rom
> romstatus
> biosromstatus
> diskimagestatus
> sampleof
> samplename
> sample
> manufacturer
> year
> sourcefile
> resource
> resourcexml
> resourcexmlvalue
> biosname
> biosdescription
> bioscrc
> biosromname
> biosdate
> biossize
> biosrom
> biosmd5
> biossha1
> biosmanufacturer
> diskimage
> diskimagename
> diskimagechd_md5
> biosset
> biossetname
> biossetdescription
> bios