|
Last updated: 30th June 2004 Version 1.92, 2.00 or 2.50?There are three RomCenter file formats:
I would strongly urge you to create your data files in the 2.50 format because it includes some important information that is impossible to represent in the older formats. For example, 2.50 format has proper support for the MAME resources and also supports more complicated merging definitions. Everyone should use the latest version of RomCenter nowadays so nothing should hold you back from using the new format! The main differences between the 1.92 and 2.00 formats are:
The main differences between the 2.00 and 2.50 formats are:
HeaderRomCenter data files have a header at the top to specify details such as the emulator name, description, category and the data file version. [CREDITS] author=Logiqx, http://www.logiqx.com/ version=20021031 comment=Laserdisk Emulator [DAT] version=2.50 plugin=arcade.dll split=1 merge=1 [EMULATOR] refname=Daphne version=Daphne v0.99.5a The meanings of these fields is as follows:
Game ROMsGame details and ROM details are specified together as follows: [GAMES] ¬invaders¬Space Invaders¬invaders¬Space Invaders¬invaders.h¬734f5ad8¬2048¬¬¬ ¬invaders¬Space Invaders¬invaders¬Space Invaders¬invaders.g¬6bfaca4a¬2048¬¬¬ ¬invaders¬Space Invaders¬invaders¬Space Invaders¬invaders.f¬0ccead96¬2048¬¬¬ ¬invaders¬Space Invaders¬invaders¬Space Invaders¬invaders.e¬14e538b0¬2048¬¬¬ The fields are: ¬parent name¬parent description¬game name¬game description¬rom name¬rom crc¬rom size¬romof name¬merge name¬ In CMPro terms these are cloneof, description (from parent), name (game), description, name (rom), crc, size, romof, merge. If you maintain RomCenter data files by hand it is very easy to make mistakes (due to the duplication of game details) so I recommend you create data files in CMPro format then convert them to RomCenter using DatUtil. Merging is specified by having a different 'parent name/game name' and by using the last two fields of each line in the data file. No matter whether a ROM is available in the parent set or not, the 'romof' field should always be specified. The 'merge name' field should only be specified where the ROM exists in the parent game though. e.g. ¬invaders¬Space Invaders¬sisv¬Space Invaders (SV Version)¬sv0h.bin¬86bb8cb6¬1024¬invaders¬¬ ¬invaders¬Space Invaders¬sisv¬Space Invaders (SV Version)¬sv02.bin¬0e159534¬1024¬invaders¬¬ ¬invaders¬Space Invaders¬sisv¬Space Invaders (SV Version)¬invaders.g¬6bfaca4a¬2048¬invaders¬invaders.g¬ ¬invaders¬Space Invaders¬sisv¬Space Invaders (SV Version)¬invaders.f¬0ccead96¬2048¬invaders¬invaders.f¬ ¬invaders¬Space Invaders¬sisv¬Space Invaders (SV Version)¬tv04.m1¬cd2c67f6¬2048¬invaders¬¬ Disks and SamplesThe RomCenter file format has no support for disks or samples at this time. If you convert a CMPro data file to RomCenter format then convert it back again you will lose the disk and sample information. ResourcesResources are used by MAME for the sharing of common ROMs for a particular system (e.g. NeoGeo, PlayChoice-10, Deco Cassette, CVS). resource ( name neogeo description "Neo Geo BIOS" rom ( name neo-geo.rom size 131072 crc 9036d879 ) rom ( name ng-sm1.rom size 131072 crc 97cf998b ) rom ( name ng-sfix.rom size 131072 crc 354029fc ) ) Resources are included in the [RESOURCES] section of RomCenter data files. For example: [RESOURCES] ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sp-s2.sp1¬9036d879¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sp-s.sp1¬c7f2fa45¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬usa_2slt.bin¬e72943de¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sp-e.sp1¬2723a5b5¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬asia-s3.rom¬91b64be3¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬vs-bios.rom¬f0e8f27d¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sp-j2.rom¬acede59c¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sm1.sm1¬97cf998b¬131072¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬000-lo.lo¬e09e253c¬65536¬¬¬ ¬neogeo¬Neo-Geo¬neogeo¬Neo-Geo¬sfix.sfx¬354029fc¬131072¬¬¬ As with CMPro data files, you should use the 'romof' field in games that should use the resource ZIP but the 'merge' field should only be used for ROMs that are shared. e.g. ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_p1.rom¬f8a63983¬524288¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_p2.rom¬3024bbb3¬131072¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_s1.rom¬b246204d¬131072¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬ng-sfix.rom¬354029fc¬131072¬neogeo¬ng-sfix.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬neo-geo.rom¬9036d879¬131072¬neogeo¬neo-geo.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬ng-sm1.rom¬97cf998b¬131072¬neogeo¬ng-sm1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_m1.rom¬9b4f34c6¬131072¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_v1.rom¬23663295¬1048576¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_v2.rom¬f61e6765¬1048576¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_c1.rom¬b4eb82a1¬1048576¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_c2.rom¬d55c550d¬1048576¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_c3.rom¬ed51ef65¬1048576¬neogeo¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengoku¬Sengoku Denshou (set 1)¬sngku_c4.rom¬f4f3c9cb¬1048576¬neogeo¬¬ In the case of games that are clones and need access to the resource ROMs, they should only specify the parent game. e.g. ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngkh_p1.rom¬33eccae0¬524288¬sengoku¬¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_p2.rom¬3024bbb3¬131072¬sengoku¬sngku_p2.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_s1.rom¬b246204d¬131072¬sengoku¬sngku_s1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬ng-sfix.rom¬354029fc¬131072¬sengoku¬ng-sfix.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬neo-geo.rom¬9036d879¬131072¬sengoku¬neo-geo.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬ng-sm1.rom¬97cf998b¬131072¬sengoku¬ng-sm1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_m1.rom¬9b4f34c6¬131072¬sengoku¬sngku_m1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_v1.rom¬23663295¬1048576¬sengoku¬sngku_v1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_v2.rom¬f61e6765¬1048576¬sengoku¬sngku_v2.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_c1.rom¬b4eb82a1¬1048576¬sengoku¬sngku_c1.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_c2.rom¬d55c550d¬1048576¬sengoku¬sngku_c2.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_c3.rom¬ed51ef65¬1048576¬sengoku¬sngku_c3.rom¬ ¬sengoku¬Sengoku Denshou (set 1)¬sengokh¬Sengoku Denshou (set 2)¬sngku_c4.rom¬f4f3c9cb¬1048576¬sengoku¬sngku_c4.rom¬ |