Skip to content

Software List Search algorithm

ksherlock edited this page Jan 31, 2021 · 3 revisions

mame apple2gs mcs

mcs is an entry in the hash/apple2gs.xml file which looks like this:

<software name="mcs">
	<description>Music Construction Set</description>
	<year>1996</year>
	<publisher>Electronic Arts</publisher>
		<part name="flop1" interface="floppy_3_5">
		<dataarea name="flop" size="819264">
			<rom name="music construction set (1986)(electronic arts)(disk 1 of 2).2mg" size="819264" crc="..." sha1="..." />
		</dataarea>
	</part>
	<part name="flop2" interface="floppy_3_5">
		<dataarea name="flop" size="819264">
			<rom name="music construction set (1986)(electronic arts)(disk 2 of 2).2mg" size="819264" crc="..." sha1="..." />
		</dataarea>
	</part>
</software>

The search path for the disk images is:

  • roms/$list/$name/$disk
  • roms/$list/$name.zip
  • roms/$list.zip
  • roms.zip
  • roms/$name/$disk
  • roms/$name.zip
  • roms/$machine/$disk
  • roms/$machine.zip

where $machine is the machine name (passed on the command line), $name is the software name (passed on the machine name), and $list is the software list name (apple2gs, apple2_cass, apple2_flop_clcracked, etc) where the definition is found, and $disk is the disk image name from the software list. (The software lists are the .xml files in the hash/ directory). In the case of apple2gs, the $list name matches the $machine name.

Compressed files may be in .zip or .7z format. .zip takes precedence.

Clone this wiki locally