diff options
Diffstat (limited to 'docs/release/src')
50 files changed, 4187 insertions, 2410 deletions
diff --git a/docs/release/src/frontend/mame/info.cpp b/docs/release/src/frontend/mame/info.cpp index fe5ffad3468..1479978ceb9 100644 --- a/docs/release/src/frontend/mame/info.cpp +++ b/docs/release/src/frontend/mame/info.cpp @@ -216,7 +216,7 @@ void info_xml_creator::output(FILE *out, bool nodevices) #endif "\" mameconfig=\"%d\">\n", XML_ROOT, - xml_normalize_string(emulator_info::get_build_version()), + util::xml::normalize_string(emulator_info::get_build_version()), CONFIG_VERSION ); @@ -283,7 +283,7 @@ void info_xml_creator::output_one() // print the header and the game name fprintf(m_output, "\t<%s",XML_TOP); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(driver.name)); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(driver.name)); // strip away any path information from the source_file and output it const char *start = strrchr(driver.source_file, '/'); @@ -291,7 +291,7 @@ void info_xml_creator::output_one() start = strrchr(driver.source_file, '\\'); if (start == nullptr) start = driver.source_file - 1; - fprintf(m_output, " sourcefile=\"%s\"", xml_normalize_string(start + 1)); + fprintf(m_output, " sourcefile=\"%s\"", util::xml::normalize_string(start + 1)); // append bios and runnable flags if (driver.flags & MACHINE_IS_BIOS_ROOT) @@ -304,9 +304,9 @@ void info_xml_creator::output_one() // display clone information int clone_of = m_drivlist.find(driver.parent); if (clone_of != -1 && !(m_drivlist.driver(clone_of).flags & MACHINE_IS_BIOS_ROOT)) - fprintf(m_output, " cloneof=\"%s\"", xml_normalize_string(m_drivlist.driver(clone_of).name)); + fprintf(m_output, " cloneof=\"%s\"", util::xml::normalize_string(m_drivlist.driver(clone_of).name)); if (clone_of != -1) - fprintf(m_output, " romof=\"%s\"", xml_normalize_string(m_drivlist.driver(clone_of).name)); + fprintf(m_output, " romof=\"%s\"", util::xml::normalize_string(m_drivlist.driver(clone_of).name)); // display sample information and close the game tag output_sampleof(); @@ -314,15 +314,15 @@ void info_xml_creator::output_one() // output game description if (driver.description != nullptr) - fprintf(m_output, "\t\t<description>%s</description>\n", xml_normalize_string(driver.description)); + fprintf(m_output, "\t\t<description>%s</description>\n", util::xml::normalize_string(driver.description)); // print the year only if is a number or another allowed character (? or +) if (driver.year != nullptr && strspn(driver.year, "0123456789?+") == strlen(driver.year)) - fprintf(m_output, "\t\t<year>%s</year>\n", xml_normalize_string(driver.year)); + fprintf(m_output, "\t\t<year>%s</year>\n", util::xml::normalize_string(driver.year)); // print the manufacturer information if (driver.manufacturer != nullptr) - fprintf(m_output, "\t\t<manufacturer>%s</manufacturer>\n", xml_normalize_string(driver.manufacturer)); + fprintf(m_output, "\t\t<manufacturer>%s</manufacturer>\n", util::xml::normalize_string(driver.manufacturer)); // now print various additional information output_bios(); @@ -376,15 +376,15 @@ void info_xml_creator::output_one_device(device_t &device, const char *devtag) // start to output info fprintf(m_output, "\t<%s", XML_TOP); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(device.shortname())); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(device.shortname())); std::string src(device.source()); strreplace(src,"../", ""); - fprintf(m_output, " sourcefile=\"%s\"", xml_normalize_string(src.c_str())); + fprintf(m_output, " sourcefile=\"%s\"", util::xml::normalize_string(src.c_str())); fprintf(m_output, " isdevice=\"yes\""); fprintf(m_output, " runnable=\"no\""); output_sampleof(); fprintf(m_output, ">\n"); - fprintf(m_output, "\t\t<description>%s</description>\n", xml_normalize_string(device.name())); + fprintf(m_output, "\t\t<description>%s</description>\n", util::xml::normalize_string(device.name())); output_rom(device); @@ -478,7 +478,7 @@ void info_xml_creator::output_device_roms() { for (device_t &device : device_iterator(m_drivlist.config().root_device())) if (device.owner() != nullptr && device.shortname() != nullptr && device.shortname()[0] != '\0') - fprintf(m_output, "\t\t<device_ref name=\"%s\"/>\n", xml_normalize_string(device.shortname())); + fprintf(m_output, "\t\t<device_ref name=\"%s\"/>\n", util::xml::normalize_string(device.shortname())); } @@ -495,7 +495,7 @@ void info_xml_creator::output_sampleof() samples_iterator sampiter(device); if (sampiter.altbasename() != nullptr) { - fprintf(m_output, " sampleof=\"%s\"", xml_normalize_string(sampiter.altbasename())); + fprintf(m_output, " sampleof=\"%s\"", util::xml::normalize_string(sampiter.altbasename())); // must stop here, as there can only be one attribute of the same name return; @@ -529,8 +529,8 @@ void info_xml_creator::output_bios() { // output extracted name and descriptions fprintf(m_output, "\t\t<biosset"); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(ROM_GETNAME(&rom))); - fprintf(m_output, " description=\"%s\"", xml_normalize_string(ROM_GETHASHDATA(&rom))); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(ROM_GETNAME(&rom))); + fprintf(m_output, " description=\"%s\"", util::xml::normalize_string(ROM_GETHASHDATA(&rom))); if (defaultname == ROM_GETNAME(&rom)) fprintf(m_output, " default=\"yes\""); fprintf(m_output, "/>\n"); @@ -597,13 +597,13 @@ void info_xml_creator::output_rom(device_t &device) // add name, merge, bios, and size tags */ if (name != nullptr && name[0] != 0) - util::stream_format(output, " name=\"%s\"", xml_normalize_string(name)); + util::stream_format(output, " name=\"%s\"", util::xml::normalize_string(name)); if (merge_name != nullptr) - util::stream_format(output, " merge=\"%s\"", xml_normalize_string(merge_name)); + util::stream_format(output, " merge=\"%s\"", util::xml::normalize_string(merge_name)); if (bios_name[0] != 0) - util::stream_format(output, " bios=\"%s\"", xml_normalize_string(bios_name)); + util::stream_format(output, " bios=\"%s\"", util::xml::normalize_string(bios_name)); if (!is_disk) - util::stream_format(output, " size=\"%d\"", rom_file_size(rom)); + util::stream_format(output, " size=\"%u\"", rom_file_size(rom)); // dump checksum information only if there is a known dump if (!hashes.flag(util::hash_collection::FLAG_NO_DUMP)) @@ -659,7 +659,7 @@ void info_xml_creator::output_sample(device_t &device) continue; // output the sample name - fprintf(m_output, "\t\t<sample name=\"%s\"/>\n", xml_normalize_string(samplename)); + fprintf(m_output, "\t\t<sample name=\"%s\"/>\n", util::xml::normalize_string(samplename)); } } } @@ -682,8 +682,8 @@ void info_xml_creator::output_chips(device_t &device, const char *root_tag) fprintf(m_output, "\t\t<chip"); fprintf(m_output, " type=\"cpu\""); - fprintf(m_output, " tag=\"%s\"", xml_normalize_string(newtag.c_str())); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(exec.device().name())); + fprintf(m_output, " tag=\"%s\"", util::xml::normalize_string(newtag.c_str())); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(exec.device().name())); fprintf(m_output, " clock=\"%d\"", exec.device().clock()); fprintf(m_output, "/>\n"); } @@ -699,8 +699,8 @@ void info_xml_creator::output_chips(device_t &device, const char *root_tag) fprintf(m_output, "\t\t<chip"); fprintf(m_output, " type=\"audio\""); - fprintf(m_output, " tag=\"%s\"", xml_normalize_string(newtag.c_str())); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(sound.device().name())); + fprintf(m_output, " tag=\"%s\"", util::xml::normalize_string(newtag.c_str())); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(sound.device().name())); if (sound.device().clock() != 0) fprintf(m_output, " clock=\"%d\"", sound.device().clock()); fprintf(m_output, "/>\n"); @@ -725,7 +725,7 @@ void info_xml_creator::output_display(device_t &device, const char *root_tag) newtag = newtag.substr(newtag.find(oldtag.append(root_tag)) + oldtag.length()); fprintf(m_output, "\t\t<display"); - fprintf(m_output, " tag=\"%s\"", xml_normalize_string(newtag.c_str())); + fprintf(m_output, " tag=\"%s\"", util::xml::normalize_string(newtag.c_str())); switch (screendev.screen_type()) { @@ -1230,7 +1230,7 @@ void info_xml_creator::output_input(const ioport_list &portlist) //printf("type %s - player %d - buttons %d\n", elem.type, elem.player, elem.nbuttons); if (elem.analog) { - fprintf(m_output, "\t\t\t<control type=\"%s\"", xml_normalize_string(elem.type)); + fprintf(m_output, "\t\t\t<control type=\"%s\"", util::xml::normalize_string(elem.type)); if (nplayer > 1) fprintf(m_output, " player=\"%d\"", elem.player); if (elem.nbuttons > 0) @@ -1259,7 +1259,7 @@ void info_xml_creator::output_input(const ioport_list &portlist) if (elem.helper[0] == 0 && elem.helper[1] != 0) { elem.helper[0] = elem.helper[1]; elem.helper[1] = 0; } if (elem.helper[1] == 0 && elem.helper[2] != 0) { elem.helper[1] = elem.helper[2]; elem.helper[2] = 0; } const char *joys = (elem.helper[2] != 0) ? "triple" : (elem.helper[1] != 0) ? "double" : ""; - fprintf(m_output, "\t\t\t<control type=\"%s%s\"", joys, xml_normalize_string(elem.type)); + fprintf(m_output, "\t\t\t<control type=\"%s%s\"", joys, util::xml::normalize_string(elem.type)); if (nplayer > 1) fprintf(m_output, " player=\"%d\"", elem.player); if (elem.nbuttons > 0) @@ -1329,14 +1329,14 @@ void info_xml_creator::output_switches(const ioport_list &portlist, const char * newtag = newtag.substr(newtag.find(oldtag.append(root_tag)) + oldtag.length()); // output the switch name information - std::string normalized_field_name(xml_normalize_string(field.name())); - std::string normalized_newtag(xml_normalize_string(newtag.c_str())); + std::string normalized_field_name(util::xml::normalize_string(field.name())); + std::string normalized_newtag(util::xml::normalize_string(newtag.c_str())); util::stream_format(output,"\t\t<%s name=\"%s\" tag=\"%s\" mask=\"%u\">\n", outertag, normalized_field_name.c_str(), normalized_newtag.c_str(), field.mask()); // loop over settings for (ioport_setting &setting : field.settings()) { - util::stream_format(output,"\t\t\t<%s name=\"%s\" value=\"%u\"%s/>\n", innertag, xml_normalize_string(setting.name()), setting.value(), setting.value() == field.defvalue() ? " default=\"yes\"" : ""); + util::stream_format(output,"\t\t\t<%s name=\"%s\" value=\"%u\"%s/>\n", innertag, util::xml::normalize_string(setting.name()), setting.value(), setting.value() == field.defvalue() ? " default=\"yes\"" : ""); } // terminate the switch entry @@ -1355,7 +1355,7 @@ void info_xml_creator::output_ports(const ioport_list &portlist) // cycle through ports for (auto &port : portlist) { - fprintf(m_output,"\t\t<port tag=\"%s\">\n", xml_normalize_string(port.second->tag())); + fprintf(m_output,"\t\t<port tag=\"%s\">\n", util::xml::normalize_string(port.second->tag())); for (ioport_field &field : port.second->fields()) { if(field.is_analog()) @@ -1378,7 +1378,7 @@ void info_xml_creator::output_adjusters(const ioport_list &portlist) for (auto &port : portlist) for (ioport_field &field : port.second->fields()) if (field.type() == IPT_ADJUSTER) - fprintf(m_output, "\t\t<adjuster name=\"%s\" default=\"%d\"/>\n", xml_normalize_string(field.name()), field.defvalue()); + fprintf(m_output, "\t\t<adjuster name=\"%s\" default=\"%d\"/>\n", util::xml::normalize_string(field.name()), field.defvalue()); } @@ -1460,11 +1460,11 @@ void info_xml_creator::output_images(device_t &device, const char *root_tag) newtag = newtag.substr(newtag.find(oldtag.append(root_tag)) + oldtag.length()); // print m_output device type - fprintf(m_output, "\t\t<device type=\"%s\"", xml_normalize_string(imagedev.image_type_name())); + fprintf(m_output, "\t\t<device type=\"%s\"", util::xml::normalize_string(imagedev.image_type_name())); // does this device have a tag? if (imagedev.device().tag()) - fprintf(m_output, " tag=\"%s\"", xml_normalize_string(newtag.c_str())); + fprintf(m_output, " tag=\"%s\"", util::xml::normalize_string(newtag.c_str())); // is this device available as media switch? if (!loadable) @@ -1475,7 +1475,7 @@ void info_xml_creator::output_images(device_t &device, const char *root_tag) fprintf(m_output, " mandatory=\"1\""); if (imagedev.image_interface() && imagedev.image_interface()[0]) - fprintf(m_output, " interface=\"%s\"", xml_normalize_string(imagedev.image_interface())); + fprintf(m_output, " interface=\"%s\"", util::xml::normalize_string(imagedev.image_interface())); // close the XML tag fprintf(m_output, ">\n"); @@ -1486,8 +1486,8 @@ void info_xml_creator::output_images(device_t &device, const char *root_tag) const char *shortname = imagedev.brief_instance_name(); fprintf(m_output, "\t\t\t<instance"); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(name)); - fprintf(m_output, " briefname=\"%s\"", xml_normalize_string(shortname)); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(name)); + fprintf(m_output, " briefname=\"%s\"", util::xml::normalize_string(shortname)); fprintf(m_output, "/>\n"); std::string extensions(imagedev.file_extensions()); @@ -1496,7 +1496,7 @@ void info_xml_creator::output_images(device_t &device, const char *root_tag) while (ext != nullptr) { fprintf(m_output, "\t\t\t<extension"); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(ext)); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(ext)); fprintf(m_output, "/>\n"); ext = strtok(nullptr, ","); } @@ -1523,11 +1523,11 @@ void info_xml_creator::output_slots(device_t &device, const char *root_tag) newtag = newtag.substr(newtag.find(oldtag.append(root_tag)) + oldtag.length()); // print m_output device type - fprintf(m_output, "\t\t<slot name=\"%s\">\n", xml_normalize_string(newtag.c_str())); + fprintf(m_output, "\t\t<slot name=\"%s\">\n", util::xml::normalize_string(newtag.c_str())); /* if (slot.slot_interface()[0]) - fprintf(m_output, " interface=\"%s\"", xml_normalize_string(slot.slot_interface())); + fprintf(m_output, " interface=\"%s\"", util::xml::normalize_string(slot.slot_interface())); */ for (auto &option : slot.option_list()) @@ -1539,8 +1539,8 @@ void info_xml_creator::output_slots(device_t &device, const char *root_tag) dev->config_complete(); fprintf(m_output, "\t\t\t<slotoption"); - fprintf(m_output, " name=\"%s\"", xml_normalize_string(option.second->name())); - fprintf(m_output, " devname=\"%s\"", xml_normalize_string(dev->shortname())); + fprintf(m_output, " name=\"%s\"", util::xml::normalize_string(option.second->name())); + fprintf(m_output, " devname=\"%s\"", util::xml::normalize_string(dev->shortname())); if (slot.default_option() != nullptr && strcmp(slot.default_option(), option.second->name())==0) fprintf(m_output, " default=\"yes\""); fprintf(m_output, "/>\n"); diff --git a/docs/release/src/hbmame/drivers/arkanoid.cpp b/docs/release/src/hbmame/drivers/arkanoid.cpp index 23feba70bcb..45a393c2b25 100644 --- a/docs/release/src/hbmame/drivers/arkanoid.cpp +++ b/docs/release/src/hbmame/drivers/arkanoid.cpp @@ -52,7 +52,7 @@ ROM_START( arkll32 ) ROM_LOAD( "lle_a75_01-1.rom", 0x0000, 0x8000, CRC(8e6d7e7f) SHA1(3682c548c1bc3ceea2ff685fc5b82e61ed0044d2) ) ROM_LOAD( "lle_a75_11.rom", 0x8000, 0x8000, CRC(845fa7b0) SHA1(e89ab456281bcb83a61a89b347dc93303928d365) ) - ROM_REGION( 0x0800, "mcu", 0 ) + ROM_REGION( 0x0800, "mcu:mcu", 0 ) ROM_LOAD( "arkanoid.uc", 0x0000, 0x0800, CRC(515d77b6) SHA1(a302937683d11f663abd56a2fd7c174374e4d7fb) ) ROM_REGION( 0x18000, "gfx1", 0 ) @@ -70,4 +70,4 @@ ROM_END GAME( 2000, akblc2dx, arkanoid, bootleg, arkangc, arkanoid_state, arkblock, ROT90, "hack", "Block Deluxe (Game Corporation)", 0 ) GAME( 2000, akgcdx, arkanoid, bootleg, arkangc, arkanoid_state, arkgcbl, ROT90, "hack", "Arkanoid Deluxe (Game Corporation)", 0 ) GAME( 2000, aktaytdx, arkanoid, bootleg, arktayt2, driver_device, 0, ROT90, "hack", "Arkanoid Deluxe (Japan, Tayto)", 0 ) -GAME( 2000, arkll32, arkanoid, arkanoid, arkanoidj, driver_device, 0, ROT90, "hack", "Arkanoid LL32", 0 ) +GAME( 2000, arkll32, arkanoid, p3mcu, arkanoidj, driver_device, 0, ROT90, "hack", "Arkanoid LL32", 0 ) diff --git a/docs/release/src/hbmame/drivers/bublbobl.cpp b/docs/release/src/hbmame/drivers/bublbobl.cpp index b55c17e6c6f..5c863bd70a8 100644 --- a/docs/release/src/hbmame/drivers/bublbobl.cpp +++ b/docs/release/src/hbmame/drivers/bublbobl.cpp @@ -111,9 +111,9 @@ ROM_END //Press P1+P2 while playing, to advance ROM_START( bbredux1 ) ROM_REGION( 0x30000, "maincpu", 0 ) - ROM_LOAD( "bb3", 0x00000, 0x8000, CRC(b802046d) SHA1(93dba2507c67f3f61eca80908a7a4409d2cd1b75) ) - ROM_LOAD( "bb5", 0x10000, 0x8000, CRC(d29d3444) SHA1(3db694a6ba2ba2ed85d31c2bc4c7c94911b99b85) ) - ROM_LOAD( "bb4", 0x18000, 0x8000, CRC(19a5a0fa) SHA1(e7fff3643d7922a494ad8118d1a0f74e52443f9f) ) + ROM_LOAD( "bb3.1", 0x00000, 0x8000, CRC(b802046d) SHA1(93dba2507c67f3f61eca80908a7a4409d2cd1b75) ) + ROM_LOAD( "bb5.1", 0x10000, 0x8000, CRC(d29d3444) SHA1(3db694a6ba2ba2ed85d31c2bc4c7c94911b99b85) ) + ROM_LOAD( "bb4.1", 0x18000, 0x8000, CRC(19a5a0fa) SHA1(e7fff3643d7922a494ad8118d1a0f74e52443f9f) ) ROM_REGION( 0x10000, "slave", 0 ) ROM_LOAD( "a78-08.37", 0x0000, 0x08000, CRC(ae11a07b) SHA1(af7a335c8da637103103cc274e077f123908ebb7) ) @@ -147,9 +147,9 @@ ROM_END // When you die for the last time, it momentarily says says press P1. Do so, to continue. ROM_START( bbredux2 ) ROM_REGION( 0x30000, "maincpu", 0 ) - ROM_LOAD( "bb3", 0x00000, 0x8000, CRC(198dc44e) SHA1(de9538b47703c468f85ba318deb8aa0b65174a26) ) + ROM_LOAD( "bb3.2", 0x00000, 0x8000, CRC(198dc44e) SHA1(de9538b47703c468f85ba318deb8aa0b65174a26) ) ROM_LOAD( "bb5", 0x10000, 0x8000, CRC(d29d3444) SHA1(3db694a6ba2ba2ed85d31c2bc4c7c94911b99b85) ) - ROM_LOAD( "bb4", 0x18000, 0x8000, CRC(9b819b62) SHA1(79d7208cb81fa36ed317f4776b1eda3082b1a21c) ) + ROM_LOAD( "bb4.2", 0x18000, 0x8000, CRC(9b819b62) SHA1(79d7208cb81fa36ed317f4776b1eda3082b1a21c) ) ROM_REGION( 0x10000, "slave", 0 ) ROM_LOAD( "a78-08.37", 0x0000, 0x08000, CRC(ae11a07b) SHA1(af7a335c8da637103103cc274e077f123908ebb7) ) @@ -183,9 +183,9 @@ ROM_END // High score save is not working as yet ROM_START( bbredux3 ) ROM_REGION( 0x30000, "maincpu", 0 ) - ROM_LOAD( "bb3", 0x00000, 0x8000, CRC(959cafca) SHA1(9c541e45326d27f4d25a1fd9d66f234ce7f969c9) ) + ROM_LOAD( "bb3.3", 0x00000, 0x8000, CRC(959cafca) SHA1(9c541e45326d27f4d25a1fd9d66f234ce7f969c9) ) ROM_LOAD( "bb5", 0x10000, 0x8000, CRC(d29d3444) SHA1(3db694a6ba2ba2ed85d31c2bc4c7c94911b99b85) ) - ROM_LOAD( "bb4", 0x18000, 0x8000, CRC(3f350047) SHA1(7e23d1c9b1a29760d96dcc7f7784ae610ac860d9) ) + ROM_LOAD( "bb4.3", 0x18000, 0x8000, CRC(3f350047) SHA1(7e23d1c9b1a29760d96dcc7f7784ae610ac860d9) ) ROM_REGION( 0x10000, "slave", 0 ) ROM_LOAD( "a78-08.37", 0x0000, 0x08000, CRC(ae11a07b) SHA1(af7a335c8da637103103cc274e077f123908ebb7) ) @@ -219,7 +219,7 @@ ROM_END ROM_START( sboblboblh ) ROM_REGION( 0x30000, "maincpu", 0 ) ROM_LOAD( "bb3.u28", 0x00000, 0x08000, CRC(c23cd704) SHA1(a389ecc8d55d1b0c915fd3814d93338b9e402701) ) - ROM_LOAD( "bb5", 0x10000, 0x08000, CRC(13118eb1) SHA1(5a5da40c2cc82420f70bc58ffa32de1088c6c82f) ) + ROM_LOAD( "bb5.s", 0x10000, 0x08000, CRC(13118eb1) SHA1(5a5da40c2cc82420f70bc58ffa32de1088c6c82f) ) ROM_LOAD( "bbb-4.rom", 0x18000, 0x08000, CRC(94c75591) SHA1(7698bc4b7d20e554a73a489cd3a15ae61b350e37) ) ROM_REGION( 0x10000, "slave", 0 ) diff --git a/docs/release/src/hbmame/drivers/cps1mis.cpp b/docs/release/src/hbmame/drivers/cps1mis.cpp index 630ff912498..87830a715fb 100644 --- a/docs/release/src/hbmame/drivers/cps1mis.cpp +++ b/docs/release/src/hbmame/drivers/cps1mis.cpp @@ -718,7 +718,7 @@ MACHINE_CONFIG_END ***********************************************************************/ ROM_START( 3wondrud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "3wondrud.30", 0x00000, 0x20000, CRC(b0953ff4) SHA1(79d0b68948a9b5be8eacd33810ddcf4fa08dbe71) ) ROM_LOAD16_BYTE( "3wondrud.35", 0x00001, 0x20000, CRC(7695e8c6) SHA1(f78e7cb1098d77ce84d58a0d4509a77f5c483a77) ) ROM_LOAD16_BYTE( "3wondrud.31", 0x40000, 0x20000, CRC(8cf00a3c) SHA1(dceb5bccf7c96802e7c228ea52f82fbb49388e0d) ) @@ -763,7 +763,7 @@ ROM_END ROM_START( captcocc ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP("captcocc.23", 0x000000, 0x80000, CRC(1e5c9f79) SHA1(09f7356b5badae26f24a2afac2cbe0d8e0c9481a) ) ROM_LOAD16_WORD_SWAP("captcocc.22", 0x080000, 0x80000, CRC(6ea50796) SHA1(62d0cd0203c2bb75bd0b69e3b25a492c37658da4) ) ROM_LOAD16_BYTE( "cc_24f.9e", 0x100000, 0x20000, CRC(3a794f25) SHA1(7f3722a4ef0c1d7acb73e6bac9dd6ae7b35e6374) ) @@ -805,7 +805,7 @@ ROM_START( captcocc ) ROM_END ROM_START( captcomc ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cc23", 0x000000, 0x80000, CRC(a5e73e49) SHA1(7bb75fa0e1122a85a421c50607c0ad57a387783e) ) ROM_LOAD16_WORD_SWAP( "cc22", 0x080000, 0x80000, CRC(919777c5) SHA1(2bd9b1527e8486ae89ddcdb0694c63c5859080b6) ) ROM_LOAD16_BYTE( "cc24", 0x100000, 0x20000, CRC(f3d6f147) SHA1(937822148c0f6f295d468024ce7887ee0353e669) ) @@ -847,7 +847,7 @@ ROM_START( captcomc ) ROM_END ROM_START( captcomh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cce_23dh.rom", 0x000000, 0x80000, CRC(d97f921c) SHA1(451ab11ddd845ecddeaf60b3c46903d784c3389c) ) ROM_LOAD16_WORD_SWAP( "cc_22d.rom", 0x080000, 0x80000, CRC(a91949b7) SHA1(c027af89cd8f6bd3aaed61114582322c42e0c74f) ) ROM_LOAD16_BYTE( "cc_24d.rom", 0x100000, 0x20000, CRC(680e543f) SHA1(cfa963ab6329f615807db213bf53841860ed3149) ) @@ -889,7 +889,7 @@ ROM_START( captcomh ) ROM_END ROM_START( captcoud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP("captcoud.23", 0x000000, 0x80000, CRC(1d338c25) SHA1(4aba7e5a78bf20d887b3493e0d2a83098f877f9f) ) ROM_LOAD16_WORD_SWAP("captcoud.22", 0x080000, 0x80000, CRC(c5310f13) SHA1(97a3751630f10cf67515200ce435c34fda1d9a52) ) ROM_LOAD16_BYTE( "ccu_24b.9e", 0x100000, 0x20000, CRC(84ff99b2) SHA1(5b02c91f3d0f8fb46db9596136b683f5a22dc15f) ) @@ -931,7 +931,7 @@ ROM_START( captcoud ) ROM_END ROM_START( captcovs ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP("captcovs.23", 0x000000, 0x80000, CRC(c1ad4e2a) SHA1(0b7843fec92261b2e727147aa6df60f4b5fc8fc7) ) ROM_LOAD16_WORD_SWAP("captcovs.22", 0x080000, 0x80000, CRC(8e19a05a) SHA1(b60dd9b1693630e9e3fe73c1b3f8a026945fb23d) ) ROM_LOAD16_BYTE( "cc_24f.9e", 0x100000, 0x20000, CRC(3a794f25) SHA1(7f3722a4ef0c1d7acb73e6bac9dd6ae7b35e6374) ) @@ -974,7 +974,7 @@ ROM_END ROM_START( cps1demo ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "cd30-36.bin", 0x00000, 0x20000, CRC(5eb617d6) SHA1(9d4656d2b29244eb2a01058f5b80752d94065a6e) ) ROM_LOAD16_BYTE( "cd35-42.bin", 0x00001, 0x20000, CRC(1f1c0a62) SHA1(12d1950921fff6d52ae969a4c7357f4e7bc28d1e) ) ROM_LOAD16_WORD_SWAP( "ff32-32m.bin", 0x80000, 0x80000, CRC(c747696e) SHA1(d3362dadded31ccb7eaf71ef282d698d18edd722) ) @@ -995,7 +995,7 @@ ROM_START( cps1demo ) ROM_END ROM_START( cps1frog ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "frog30-36.bin", 0x00000, 0x20000, CRC(8eb8ddbe) SHA1(298c72b3eb6f2721f204cf80ec4a7c52dc8b23fd) ) ROM_LOAD16_BYTE( "frog35-42.bin", 0x00001, 0x20000, CRC(acb5a988) SHA1(7264bb94f7bacef9bf03713d0a6d32e81ca1f8e2) ) ROM_LOAD16_WORD_SWAP( "frog32-32m.bin", 0x80000, 0x80000, CRC(75660aac) SHA1(6a521e1d2a632c26e53b83d2cc4b0edecfc1e68c) ) @@ -1016,7 +1016,7 @@ ROM_START( cps1frog ) ROM_END ROM_START( cps1test ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cps1test.bin", 0x000000, 0x80000, CRC(938c72fe) SHA1(0a48661d5638ed6b841f646ebb9f948a01b8e2d3) ) ROM_LOAD16_WORD_SWAP( "s92_22b.7f", 0x080000, 0x80000, CRC(2bbe15ed) SHA1(a8e2edef62fa99c5ef701b28bfb6bc42f3af183d) ) ROM_LOAD16_WORD_SWAP( "s92_21a.6f", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) @@ -1061,7 +1061,7 @@ ROM_START( cps1test ) ROM_END ROM_START( cps1testa ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cps1testa.bin", 0x000000, 0x80000, CRC(35a39adb) SHA1(dcb93102108a02f1f169833cfd355bd492cd9065) ) ROM_LOAD16_WORD_SWAP( "rcmu_22b.7f", 0x080000, 0x80000, CRC(708268c4) SHA1(554e011cad285b95dd1b6aa19be61b2413662a3a) ) ROM_LOAD16_WORD_SWAP( "rcmu_21a.6f", 0x100000, 0x80000, CRC(4376ea95) SHA1(7370ceffca513aa9f68a74f6869d561476589200) ) @@ -1169,7 +1169,7 @@ ROM_END ROM_START( dino08h2 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dino08h2.23", 0x000000, 0x80000, CRC(39ebeee2) SHA1(b48c3174e4ca26517958b3e58a3a693ce4e9ee88) ) ROM_LOAD16_WORD_SWAP( "dino08h2.22", 0x080000, 0x80000, CRC(09307e79) SHA1(cff0af94c6118a852351a7b624db65963c91f577) ) ROM_LOAD16_WORD_SWAP( "dino08h2.21", 0x100000, 0x80000, CRC(c2a0f051) SHA1(57e4a569824fb2a9d726ba610d13e451ab0b36cb) ) @@ -1202,7 +1202,7 @@ ROM_START( dino08h2 ) ROM_END ROM_START( dino08h3 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dino08h3.23", 0x000000, 0x80000, CRC(642a2380) SHA1(79d9f427740d7f86b81f560e71636097d10cccf1) ) ROM_LOAD16_WORD_SWAP( "dino08h3.22", 0x080000, 0x80000, CRC(7a3c6b73) SHA1(e7f75c286ced541d4d6e399a54fa39fc1a85773f) ) ROM_LOAD16_WORD_SWAP( "dino08h3.21", 0x100000, 0x80000, CRC(3383646e) SHA1(f3d220e79cb8f86ba799580541e790d9a1d2cdf5) ) @@ -1235,7 +1235,7 @@ ROM_START( dino08h3 ) ROM_END ROM_START( dino08hp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dino08hp.23", 0x000000, 0x80000, CRC(394826e3) SHA1(7b295e263ab7f38a57a118de0f4308debfe14591) ) ROM_LOAD16_WORD_SWAP( "dino08hp.22", 0x080000, 0x80000, CRC(a4894b10) SHA1(6c6d4319af544383007190cfe8835189089e4ac3) ) ROM_LOAD16_WORD_SWAP( "dino08h2.21", 0x100000, 0x80000, CRC(c2a0f051) SHA1(57e4a569824fb2a9d726ba610d13e451ab0b36cb) ) @@ -1268,7 +1268,7 @@ ROM_START( dino08hp ) ROM_END ROM_START( dinob ) // program same as dinopic in mame, but this one has working sound - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "3.bin", 0x000001, 0x80000, CRC(13dfeb08) SHA1(cd2f9dd64f4fabe93901247e36dff3763169716d) ) ROM_LOAD16_BYTE( "5.bin", 0x000000, 0x80000, CRC(96dfcbf1) SHA1(a8bda6edae2c1b79db7ae8a8976fd2457f874373) ) ROM_LOAD16_BYTE( "2.bin", 0x100001, 0x80000, CRC(0e4058ba) SHA1(346f9e34ea53dd1bf5cdafa1e38bf2edb09b9a7f) ) @@ -1305,7 +1305,7 @@ ROM_START( dinob ) // program same as dinopic in mame, but this one has working ROM_END ROM_START( dinobt ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinobt.23", 0x000000, 0x80000, CRC(3b1ed744) SHA1(7f9e062f97ef497c8993f574a3a51ae9e4e3e4f6) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1338,7 +1338,7 @@ ROM_START( dinobt ) ROM_END ROM_START( dinobtpp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinobtpp.23", 0x000000, 0x80000, CRC(41f954c9) SHA1(494ca6b9a5df7c9f491e54e45da41b2dcb4936a9) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1371,7 +1371,7 @@ ROM_START( dinobtpp ) ROM_END ROM_START( dinocgba ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinocgba.23", 0x000000, 0x80000, CRC(7545d8b0) SHA1(b2400f558753e2c5d26a20ed94aff63d96424d1b) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "dinoeh.21", 0x100000, 0x80000, CRC(b89a0548) SHA1(13b79e18c3cced34b28a34a591e2bd3bd18739be) ) @@ -1404,7 +1404,7 @@ ROM_START( dinocgba ) ROM_END ROM_START( dinocgbb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinocgbb.23", 0x000000, 0x80000, CRC(2afc047c) SHA1(2d8831ae1faed2c8393db95835e157326a00f3f1) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "dinoeh.21", 0x100000, 0x80000, CRC(b89a0548) SHA1(13b79e18c3cced34b28a34a591e2bd3bd18739be) ) @@ -1437,7 +1437,7 @@ ROM_START( dinocgbb ) ROM_END ROM_START( dinocgbc ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinocgbc.23", 0x000000, 0x80000, CRC(d7be3ebd) SHA1(0af400aa73b93908efe7e81f187ad0809b36593b) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "dinoeh.21", 0x100000, 0x80000, CRC(b89a0548) SHA1(13b79e18c3cced34b28a34a591e2bd3bd18739be) ) @@ -1470,7 +1470,7 @@ ROM_START( dinocgbc ) ROM_END ROM_START( dinoeh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinoeh.23", 0x000000, 0x80000, CRC(a6b88364) SHA1(71d2d66df77ba3cc856c2ecd317f4be122ed1feb) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "dinoeh.21", 0x100000, 0x80000, CRC(b89a0548) SHA1(13b79e18c3cced34b28a34a591e2bd3bd18739be) ) @@ -1497,7 +1497,7 @@ ROM_START( dinoeh ) ROM_END ROM_START( dinoex ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinoex.23", 0x000000, 0x80000, CRC(c871b733) SHA1(0c2030a9ca0be8b14edbc4f2ae44184ab81b5e03) ) ROM_LOAD16_WORD_SWAP( "dinoex.22", 0x080000, 0x80000, CRC(b503e1ad) SHA1(73e53061b01940a9deb13c0ff5d874b4a8380f15) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1524,7 +1524,7 @@ ROM_START( dinoex ) ROM_END ROM_START( dinoh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cda_23h.rom", 0x000000, 0x80000, CRC(8e2a9cf0) SHA1(01111582e579bd3b43b52d0e0c445c32fe5e053b) ) ROM_LOAD16_WORD_SWAP( "cda_22h.rom", 0x080000, 0x80000, CRC(f72cd219) SHA1(a3f580bd328b54d2546ae7e94262c1a706d27172) ) ROM_LOAD16_WORD_SWAP( "cda_21h.rom", 0x100000, 0x80000, CRC(bc275b76) SHA1(1f7f7533b4ccb511dc479f531d9d6740d3ca6712) ) @@ -1552,7 +1552,7 @@ ROM_START( dinoh ) ROM_END ROM_START( dinoha ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "kl2-r1.800", 0x080000, 0x080000, CRC(4c70dca7) SHA1(2e7a10c90924e0f87903eddb04313f61233a998f) ) ROM_CONTINUE( 0x000000, 0x080000 ) ROM_LOAD16_WORD_SWAP( "kl2-l2.800", 0x180000, 0x080000, CRC(c6ae7338) SHA1(4b8543cf1ac89ae95fe63e6d81c87d2bda52da69) ) @@ -1580,7 +1580,7 @@ ROM_START( dinoha ) ROM_END ROM_START( dinohb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cd-d.800", 0x000000, 0x100000, CRC(2a7b2915) SHA1(817d24c5206a60c4d93affffc9bd5a72abccbb01) ) ROM_LOAD16_WORD_SWAP( "cd-e.800", 0x100000, 0x100000, CRC(e8370226) SHA1(9c6915ad9e48ccd2020fcad58ec56e6f7cd0c25c) ) @@ -1606,7 +1606,7 @@ ROM_START( dinohb ) ROM_END ROM_START( dinohp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinohp.23", 0x000000, 0x80000, CRC(c96a1d20) SHA1(76d2ce4727ad6f546148cc3c7338a6243cecce2d) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1639,7 +1639,7 @@ ROM_START( dinohp ) ROM_END ROM_START( dinohx ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinohx.23", 0x000000, 0x80000, CRC(a013a81f) SHA1(81c84ad76adfe1345d5e41bcddb47f2428de5006) ) ROM_LOAD16_WORD_SWAP( "cda_22h.rom", 0x080000, 0x80000, CRC(f72cd219) SHA1(a3f580bd328b54d2546ae7e94262c1a706d27172) ) ROM_LOAD16_WORD_SWAP( "cda_21h.rom", 0x100000, 0x80000, CRC(bc275b76) SHA1(1f7f7533b4ccb511dc479f531d9d6740d3ca6712) ) @@ -1667,7 +1667,7 @@ ROM_START( dinohx ) ROM_END ROM_START( dinojp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cdjp-23a.8f", 0x000000, 0x80000, CRC(9cd746de) SHA1(d8b9c824e4b8adb66a273debce63128a16bb147a) ) ROM_LOAD16_WORD_SWAP( "cdjp-22a.7f", 0x080000, 0x80000, CRC(082f645d) SHA1(6865d6cf6464846b9aa423dc4e807932ae98a86d) ) ROM_LOAD16_WORD_SWAP( "cdep_21a.rom", 0x100000, 0x80000, CRC(95bd8020) SHA1(249746eb20483ec87b6ad5a74e8b790afdb389de) ) @@ -1714,7 +1714,7 @@ ROM_START( dinojp ) ROM_END ROM_START( dinorp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinorp.23", 0x000000, 0x80000, CRC(373282a0) SHA1(b02bf02c9ef21cfa2606f3c6e38542fcb0be45ab) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "dinorp.21", 0x100000, 0x80000, CRC(d0d89d2c) SHA1(36f510ca6a2713518c3dba8fb49a314fd0de4d75) ) @@ -1747,7 +1747,7 @@ ROM_START( dinorp ) ROM_END ROM_START( dinoslice ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "cdeslice.rom", 0x000000, 0x200000, CRC(9da95eab) SHA1(370bf3bbd76de5ae638c6fdab67c7cea98744e7b) ) ROM_REGION( 0x400000, "gfx", 0 ) @@ -1792,7 +1792,7 @@ ROM_START( dinoslice ) ROM_END ROM_START( dinouphp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinouphp.23", 0x000000, 0x80000, CRC(1bf35c82) SHA1(82496d6c8fa853b0c28932f0f36e37219c0adfc8) ) ROM_LOAD16_WORD_SWAP( "cde_22a.rom", 0x080000, 0x80000, CRC(9278aa12) SHA1(58cbbd53a98abe640ccb233f8dbd8ca6d63475e7) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1825,7 +1825,7 @@ ROM_START( dinouphp ) ROM_END ROM_START( dinoz ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dinoz_23a.8f", 0x000000, 0x80000, CRC(0129f422) SHA1(968e6d25a1aa2116f9e9a6b4b76c83bd63f4f477) ) ROM_LOAD16_WORD_SWAP( "dinoz_22a.7f", 0x080000, 0x80000, CRC(3861d9d8) SHA1(11dac49f09dfc325b9f529271dc5921d7aacb630) ) ROM_LOAD16_WORD_SWAP( "cde_21a.6f", 0x100000, 0x80000, CRC(66d23de2) SHA1(19b8a365f630411d524d055459020f4c8cf930f1) ) @@ -1876,7 +1876,7 @@ ROM_END ROM_START( ffightb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "ffu_36b.11f", 0x00000, 0x20000, CRC(a9fa0174) SHA1(a6f669370f1f822b2988c297a8e26bcb6300692d) ) ROM_LOAD16_BYTE( "ffu_42b.11h", 0x00001, 0x20000, CRC(d47cb6b7) SHA1(26c94b0d91a4343b58a7cc542417d8d36e9f2e34) ) ROM_LOAD16_BYTE( "ffu_37b.12f", 0x40000, 0x20000, CRC(3fc9f9e3) SHA1(0982c40d5967e5068ec592db022eb16172f95005) ) @@ -1911,7 +1911,7 @@ ROM_END ROM_START( knight21 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "kr_2321.8f",0x00000, 0x80000, CRC(aacaebcd) SHA1(3c243d59b86b2a51c219c296c12090058851c77d) ) ROM_LOAD16_WORD_SWAP( "kr_22.7f", 0x80000, 0x80000, CRC(d0b671a9) SHA1(9865472c5fc3f617345e23b5de5a9ba177945b5a) ) @@ -1951,7 +1951,7 @@ ROM_START( knight21 ) ROM_END ROM_START( knightsa ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "kr_23h.rom", 0x00000, 0x80000, CRC(bc3b60f5) SHA1(f8c5e49535bb191d46f4c32e336b2ca92517109a) ) ROM_LOAD16_WORD_SWAP( "kr_22.7f", 0x80000, 0x80000, CRC(d0b671a9) SHA1(9865472c5fc3f617345e23b5de5a9ba177945b5a) ) @@ -1991,7 +1991,7 @@ ROM_START( knightsa ) ROM_END ROM_START( knightsb2 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "040-z.02", 0x00000, 0x80000, CRC(95d00a7e) SHA1(2da1c47aa15d44aa842a8d79e030e7e7b69bec19) ) ROM_LOAD16_BYTE( "040-r.02", 0x00001, 0x80000, CRC(5a9d0b64) SHA1(6ff312879c3d675ceee6fd3e262f797fabb9871e) ) @@ -2015,7 +2015,7 @@ ROM_START( knightsb2 ) ROM_END ROM_START( knightsh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "krh_23.rom", 0x00000, 0x80000, CRC(fa2ff63d) SHA1(f3800102aadeccd13ed49c88039732453266283a) ) ROM_LOAD16_WORD_SWAP( "krh_22.rom", 0x80000, 0x80000, CRC(1438d070) SHA1(4f6fad844c3e8eb960bb6cb85ac570979c0ae973) ) @@ -2039,7 +2039,7 @@ ROM_START( knightsh ) ROM_END ROM_START( knightsha ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "krha_23.rom", 0x00000, 0x80000, CRC(a7fd309a) SHA1(b4f163d9588e9d8dd6f2ba6d6ae520efb620c1ac) ) ROM_LOAD16_WORD_SWAP( "krh_22.rom", 0x80000, 0x80000, CRC(1438d070) SHA1(4f6fad844c3e8eb960bb6cb85ac570979c0ae973) ) ROM_FILL(0xb7d,1,0x66) @@ -2064,7 +2064,7 @@ ROM_START( knightsha ) ROM_END ROM_START( knightsjb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "23.096", 0x00000, 0x80000, CRC(7733b8a6) SHA1(ecf1a0d2b4631b9d4ba46e4987d226d938ee6628) ) ROM_LOAD16_WORD_SWAP( "22.096", 0x80000, 0x80000, CRC(d0b671a9) SHA1(9865472c5fc3f617345e23b5de5a9ba177945b5a) ) @@ -2128,7 +2128,7 @@ ROM_START( knightsro ) ROM_END ROM_START( knightud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "knightud.23", 0x00000, 0x80000, CRC(5fe98e7f) SHA1(3e01b9e06663ade831750de3ecd0d3925889a5da) ) ROM_LOAD16_WORD_SWAP( "kr_22.7f", 0x80000, 0x80000, CRC(d0b671a9) SHA1(9865472c5fc3f617345e23b5de5a9ba177945b5a) ) @@ -2169,7 +2169,7 @@ ROM_END ROM_START( kodd ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "kodd.30", 0x00000, 0x20000, CRC(8eb281a4) SHA1(6e6e316321c500796bba6b888db8e0445b63bea3) ) ROM_LOAD16_BYTE( "kodd.37", 0x00001, 0x20000, CRC(9c16c2b9) SHA1(1c04419f1223b7a9a0ae2de8f11010b478d58c63) ) ROM_LOAD16_BYTE( "kodd.31", 0x40000, 0x20000, CRC(b4aeee54) SHA1(ed0b965b2f16a6aeb117e7b12ab10d7d0b87dcdf) ) @@ -2208,7 +2208,7 @@ ROM_END // - Actor preview flickers instead of wriggling // - No music in attract mode ROM_START( kodh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "23.096", 0x00000, 0x80000, CRC(daf89cfb) SHA1(de0944884d0e64c6b0410294d25308201508afbe) ) ROM_LOAD16_WORD_SWAP( "22.096", 0x80000, 0x80000, CRC(c83e19d8) SHA1(8c342818a1c5337ad4b259700e184972f821aca4) ) @@ -2235,7 +2235,7 @@ ROM_END // - Actor preview flickers instead of wriggling // - No music in attract mode ROM_START( kodsp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "kde_30.11e", 0x00000, 0x20000, CRC(c7414fd4) SHA1(37d27fbe7c617a26b53bfdfcd532cf573d42f33b) ) ROM_LOAD16_BYTE( "kde_37.11f", 0x00001, 0x20000, CRC(a5bf40d2) SHA1(cd34dbeabd0974709411579e669f01d0d799c2a1) ) ROM_LOAD16_BYTE( "kde_31.12e", 0x40000, 0x20000, CRC(1fffc7bd) SHA1(822c9ad996ca51a99a2bb1fe08fa19e18413030d) ) @@ -2272,7 +2272,7 @@ ROM_START( kodsp ) ROM_END ROM_START( kodud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "kodud.30", 0x00000, 0x20000, CRC(c5ada5eb) SHA1(c989c747abfc6f80871d0ee763d5573b321fb48e) ) ROM_LOAD16_BYTE( "kodud.37", 0x00001, 0x20000, CRC(b8169b17) SHA1(55176bb92fc422d4ce03a011190a7cc6caa082ff) ) ROM_LOAD16_BYTE( "kodud.31", 0x40000, 0x20000, CRC(72dd68a5) SHA1(db077c2c4716da59880e49af1d066b3c596143e1) ) @@ -2310,7 +2310,7 @@ ROM_END ROM_START( pnicku ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "pnij36.bin", 0x00000, 0x20000, CRC(2d4ffb2b) SHA1(6e49cf89a36834fd1de8b4b860fe66f3d7d67a84) ) ROM_LOAD16_BYTE( "pniu42.bin", 0x00001, 0x20000, CRC(22d20227) SHA1(a103c9b1f6134c529405bd258da9f601c1459c47) ) @@ -2358,7 +2358,7 @@ ROM_END ROM_START( punisherb ) // punipic in mame - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "3.bin", 0x000001, 0x80000, CRC(8c2593ac) SHA1(4261bc72b96c3a5690df35c5d8b71524765693d9) ) ROM_LOAD16_BYTE( "5.bin", 0x000000, 0x80000, CRC(c3151563) SHA1(61d3a20c25fea8a94ae6e473a87c21968867cba0) ) ROM_LOAD16_BYTE( "2.bin", 0x100001, 0x80000, CRC(d7b13f39) SHA1(eb7cd92b44fdef3b72672b0be6786c526421b627) ) @@ -2417,7 +2417,7 @@ ROM_START( punisherb ) // punipic in mame ROM_END ROM_START( punisherf ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "punisherf.23", 0x000000, 0x80000, CRC(ebab7576) SHA1(2a1664ebaf813a21986c97c16142ffd7c93c7a3b) ) ROM_LOAD16_WORD_SWAP( "psj22h.bin", 0x080000, 0x80000, CRC(84c5783e) SHA1(19571cdc4bf4cc1e59694fc8064cc88a49656449) ) ROM_LOAD16_WORD_SWAP( "punisherf.21", 0x100000, 0x80000, CRC(2bccb0ed) SHA1(44f45431d7ecca6eb8942be3d44b99cf856d12ab) ) @@ -2448,7 +2448,7 @@ ROM_START( punisherf ) ROM_END ROM_START( punisherje1 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "psj23ex.bin", 0x000000, 0x80000, CRC(fa084bab) SHA1(af323e6399ab5d3091a57188d3cedc1d0600dd3d) ) ROM_LOAD16_WORD_SWAP( "psj22ex.bin", 0x080000, 0x80000, CRC(69433b02) SHA1(cc7127170fad47562aaded71a3c1e216084667f8) ) ROM_LOAD16_WORD_SWAP( "psje1.21", 0x100000, 0x80000, CRC(86aa8774) SHA1(501db3229c49ecd60eab72391f575f7df47e8782) ) @@ -2481,7 +2481,7 @@ ROM_START( punisherje1 ) ROM_END ROM_START( punisherjh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "psj23h.bin", 0x000000, 0x80000, CRC(41cb77e9) SHA1(7e2a21bd217c976b448a51ba8bdbab820a30851a) ) ROM_LOAD16_WORD_SWAP( "psj22h.bin", 0x080000, 0x80000, CRC(84c5783e) SHA1(19571cdc4bf4cc1e59694fc8064cc88a49656449) ) ROM_LOAD16_WORD_SWAP( "ps_21.rom", 0x100000, 0x80000, CRC(8affa5a9) SHA1(268760b83b1723ff50a019ec51ef7af2e49935bf) ) @@ -2528,7 +2528,7 @@ ROM_START( punisherjh ) ROM_END ROM_START( punisherjh1 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "psjh1.23", 0x000000, 0x80000, CRC(75ed76a4) SHA1(8ba66fd6a1912aae4c382ac8900f522474884771) ) ROM_LOAD16_WORD_SWAP( "psjh1.22", 0x080000, 0x80000, CRC(b17f61f0) SHA1(a5550bb359941bea96cefb818ccbb175a0b20687) ) ROM_LOAD16_WORD_SWAP( "ps_21.6f", 0x100000, 0x80000, CRC(8affa5a9) SHA1(268760b83b1723ff50a019ec51ef7af2e49935bf) ) @@ -2561,7 +2561,7 @@ ROM_START( punisherjh1 ) ROM_END ROM_START( punisherjha ) // punishje2: The Punisher (SM Experience Edition hack by Zhyxxxx set 2 13/06/09) : multijet - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "psj23ex.bin", 0x000000, 0x80000, CRC(fa084bab) SHA1(af323e6399ab5d3091a57188d3cedc1d0600dd3d) ) ROM_LOAD16_WORD_SWAP( "psj22ex.bin", 0x080000, 0x80000, CRC(69433b02) SHA1(cc7127170fad47562aaded71a3c1e216084667f8) ) ROM_LOAD16_WORD_SWAP( "ps_21ex.rom", 0x100000, 0x80000, CRC(e4e15e4a) SHA1(405d57983ed33276e6fde155d4c78c2973466483) ) @@ -2608,7 +2608,7 @@ ROM_START( punisherjha ) // punishje2: The Punisher (SM Experience Edition hack ROM_END ROM_START( punisherud1 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE ( "psud1_26.11e", 0x000000, 0x20000, CRC(f820e620) SHA1(7c2e55b4dc7aaf27badceafd7bde483f33676351) ) ROM_LOAD16_BYTE ( "psud1_30.11f", 0x000001, 0x20000, CRC(90afc70a) SHA1(73d5325a482becf46ef75456134242db7f1a31f8) ) ROM_LOAD16_BYTE ( "psu_27.12e", 0x040000, 0x20000, CRC(61c960a1) SHA1(f8fe651283cc1f138d013cab65b833505de6df9f) ) @@ -2647,7 +2647,7 @@ ROM_START( punisherud1 ) ROM_END ROM_START( punisherud2 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "psud2.23", 0x000000, 0x80000, CRC(019efb28) SHA1(1790db51ce7cd1281932359de6e4e1e046db0369) ) ROM_LOAD16_WORD_SWAP( "psud2.22", 0x080000, 0x80000, CRC(c0110a4e) SHA1(43f6086634c332a58d95b0b51995ba1ab8ed1367) ) ROM_LOAD16_WORD_SWAP( "ps_21.6f", 0x100000, 0x80000, CRC(8affa5a9) SHA1(268760b83b1723ff50a019ec51ef7af2e49935bf) ) @@ -2680,8 +2680,50 @@ ROM_START( punisherud2 ) ROM_END +// sf2uc with first 2 roms changed +ROM_START( sf2bhj ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_BYTE( "sf2bhj.30", 0x00000, 0x20000, CRC(1699140f) SHA1(967f2a958ffe3886ce60568e2a63ee119757fa57) ) + ROM_LOAD16_BYTE( "sf2bhj.37", 0x00001, 0x20000, CRC(4d563eb4) SHA1(a238129d867dc3f0b8b4e458d597b0d11bbeda05) ) + ROM_LOAD16_BYTE( "sf2u_31c.12e", 0x40000, 0x20000, CRC(c4fff4a9) SHA1(4b593ace201fe7f5a00b5cd7f4e8fc3f8dd4ceed) ) + ROM_LOAD16_BYTE( "sf2u_38c.12f", 0x40001, 0x20000, CRC(8210fc0e) SHA1(7d6cfb99afa89d0e6e991d9f7c1808b740def125) ) + ROM_LOAD16_BYTE( "sf2u_28c.9e", 0x80000, 0x20000, CRC(6eddd5e8) SHA1(62bd1c2fc0321809421c9a592f691b5b1a1d8807) ) + ROM_LOAD16_BYTE( "sf2u_35c.9f", 0x80001, 0x20000, CRC(6bcb404c) SHA1(b5f24556c633c521aadd94e016d78db6922e3dfa) ) + ROM_LOAD16_BYTE( "sf2_29b.10e", 0xc0000, 0x20000, CRC(bb4af315) SHA1(75f0827f4f7e9f292add46467f8d4fe19b2514c9) ) + ROM_LOAD16_BYTE( "sf2_36b.10f", 0xc0001, 0x20000, CRC(c02a13eb) SHA1(b807cc495bff3f95d03b061fc629c95f965cb6d8) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "sf2-5m.4a", 0x000000, 0x80000, CRC(22c9cc8e) SHA1(b9194fb337b30502c1c9501cd6c64ae4035544d4) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-7m.6a", 0x000002, 0x80000, CRC(57213be8) SHA1(3759b851ac0904ec79cbb67a2264d384b6f2f9f9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-1m.3a", 0x000004, 0x80000, CRC(ba529b4f) SHA1(520840d727161cf09ca784919fa37bc9b54cc3ce) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-3m.5a", 0x000006, 0x80000, CRC(4b1b33a8) SHA1(2360cff890551f76775739e2d6563858bff80e41) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-6m.4c", 0x200000, 0x80000, CRC(2c7e2229) SHA1(357c2275af9133fd0bd6fbb1fa9ad5e0b490b3a2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-8m.6c", 0x200002, 0x80000, CRC(b5548f17) SHA1(baa92b91cf616bc9e2a8a66adc777ffbf962a51b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-2m.3c", 0x200004, 0x80000, CRC(14b84312) SHA1(2eea16673e60ba7a10bd4d8f6c217bb2441a5b0e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-4m.5c", 0x200006, 0x80000, CRC(5e9cd89a) SHA1(f787aab98668d4c2c54fc4ba677c0cb808e4f31e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-13m.4d", 0x400000, 0x80000, CRC(994bfa58) SHA1(5669b845f624b10e7be56bfc89b76592258ce48b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-15m.6d", 0x400002, 0x80000, CRC(3e66ad9d) SHA1(9af9df0826988872662753e9717c48d46f2974b0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-9m.3d", 0x400004, 0x80000, CRC(c1befaa8) SHA1(a6a7f4725e52678cbd8d557285c01cdccb2c2602) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sf2-11m.5d", 0x400006, 0x80000, CRC(0627c831) SHA1(f9a92d614e8877d648449de2612fc8b43c85e4c2) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sf2_9.12a", 0x00000, 0x08000, CRC(a4823a1b) SHA1(7b6bf59dfd578bfbbdb64c27988796783442d659) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) /* Samples */ + ROM_LOAD( "sf2_18.11c", 0x00000, 0x20000, CRC(7f162009) SHA1(346bf42992b4c36c593e21901e22c87ae4a7d86d) ) + ROM_LOAD( "sf2_19.12c", 0x20000, 0x20000, CRC(beade53f) SHA1(277c397dc12752719ec6b47d2224750bd1c07f79) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + ROM_START( sf2c ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf2j_30", 0x00000, 0x20000, CRC(70813e5e) SHA1(39219a98d368dcb67cbd0a756f3e1fab7b9352f4) ) ROM_LOAD16_BYTE( "sf2j_37", 0x00001, 0x20000, CRC(d0659611) SHA1(1368228cc2c41a361f0e8eb516610522a38394b2) ) ROM_LOAD16_BYTE( "sf2j31.bin", 0x40000, 0x20000, CRC(fe15cb39) SHA1(383478524881ea70d9e04c9b6143b8735b637eee) ) @@ -2729,7 +2771,7 @@ ROM_START( sf2c ) ROM_END ROM_START( sf2cebr ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2cebr.23", 0x000000, 0x80000, CRC(74e848ee) SHA1(6DCE8D0C7D439E6D1D08C8169A3ECDF178E82C16) ) ROM_LOAD16_WORD_SWAP( "sf2cebr.22", 0x080000, 0x80000, CRC(c3c49626) SHA1(D0FAE1D2758360B56E6E583FEB4BDF7D4E2E1EBA) ) ROM_LOAD16_WORD_SWAP( "s92_21a.bin", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) @@ -2765,7 +2807,7 @@ ROM_START( sf2cebr ) ROM_END ROM_START( sf2ced ) // Drakon 7.1 - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2ced_23b.8f", 0x000000, 0x80000, CRC(8628f0e2) SHA1(da1f89ccbfb175d39f7e5c69c1c7088205109187) ) ROM_LOAD16_WORD_SWAP( "sf2ced_22b.7f", 0x080000, 0x80000, CRC(b7b87a54) SHA1(ab441c30ba6b0e2e8b9785d77b96535357818e0b) ) ROM_LOAD16_WORD_SWAP( "sf2ced_21a.6f", 0x100000, 0x80000, CRC(b4f13bef) SHA1(5e6501c157890899848bccb34db06b3570e84c17) ) @@ -2809,8 +2851,8 @@ ROM_START( sf2ced ) // Drakon 7.1 ROM_LOAD_OPTIONAL( "c632.ic1", 0x0000, 0x0117, CRC(0fbd9270) SHA1(d7e737b20c44d41e29ca94be56114b31934dde81) ) ROM_END -ROM_START( sf2ceda ) // Drakon unknown version - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ +ROM_START( sf2ceda ) // Drakon unknown version + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2ceda_23b.8f", 0x000000, 0x80000, CRC(a8a81db7) SHA1(dd0d12ea049292bad48f1009419581695ea41618) ) ROM_LOAD16_WORD_SWAP( "sf2ceda_22b.7f", 0x080000, 0x80000, CRC(3c9ee969) SHA1(714fb726c336c5807a1b1d2112e89d3aa5c4af91) ) ROM_LOAD16_WORD_SWAP( "s92_21a.6f", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) @@ -2855,7 +2897,7 @@ ROM_START( sf2ceda ) // Drakon unknown version ROM_END ROM_START( sf2ceh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2ceh.23", 0x000000, 0x80000, CRC(25dc14c8) SHA1(fc7b5de3a50d7d9ee977091bab5f82f824e386f2) ) ROM_LOAD16_WORD_SWAP( "sf2ceh.22", 0x080000, 0x80000, CRC(1c9dd91c) SHA1(66fbd10958d3b9f027bc3ba85c99b649cf866ab7) ) ROM_LOAD16_WORD_SWAP( "s92_21a.bin", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) @@ -2890,8 +2932,119 @@ ROM_START( sf2ceh ) ROM_LOAD_OPTIONAL( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) ROM_END +// sf2ceea with one rom changed +ROM_START( sf2cehk ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2cehk.23", 0x000000, 0x80000, CRC(a233c4c8) SHA1(0446ac1bcd9ded6951c6857600e5c30f56d8c430) ) + ROM_LOAD16_WORD_SWAP( "s92_22a.7f", 0x080000, 0x80000, CRC(99f1cca4) SHA1(64111eba81d743fc3fd51d7a89cd0b2eefcc900d) ) + ROM_LOAD16_WORD_SWAP( "s92_21a.6f", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "s92-1m.3a", 0x000000, 0x80000, CRC(03b0d852) SHA1(f370f25c96ad2b94f8c53d6b7139100285a25bef) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-3m.5a", 0x000002, 0x80000, CRC(840289ec) SHA1(2fb42a242f60ba7e74009b5a90eb26e035ba1e82) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-2m.4a", 0x000004, 0x80000, CRC(cdb5f027) SHA1(4c7d944fef200fdfcaf57758b901b5511188ed2e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-4m.6a", 0x000006, 0x80000, CRC(e2799472) SHA1(27d3796429338d82a8de246a0ea06dd487a87768) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-5m.7a", 0x200000, 0x80000, CRC(ba8a2761) SHA1(4b696d66c51611e43522bed752654314e76d33b6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-7m.9a", 0x200002, 0x80000, CRC(e584bfb5) SHA1(ebdf1f5e2638eed3a65dda82b1ed9151a355f4c9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-6m.8a", 0x200004, 0x80000, CRC(21e3f87d) SHA1(4a4961bb68c3a1ce15f9d393d9c03ecb2466cc29) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-8m.10a", 0x200006, 0x80000, CRC(befc47df) SHA1(520390420da3a0271ba90b0a933e65143265e5cf) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-10m.3c", 0x400000, 0x80000, CRC(960687d5) SHA1(2868c31121b1c7564e9767b9a19cdbf655c7ed1d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-12m.5c", 0x400002, 0x80000, CRC(978ecd18) SHA1(648a59706b93c84b4206a968ecbdc3e834c476f6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-11m.4c", 0x400004, 0x80000, CRC(d6ec9a0a) SHA1(ed6143f8737013b6ef1684e37c05e037e7a80dae) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-13m.6c", 0x400006, 0x80000, CRC(ed2c67f6) SHA1(0083c0ffaf6fe7659ff0cf822be4346cd6e61329) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "s92_09.11a", 0x00000, 0x08000, CRC(08f6b60e) SHA1(8258fcaca4ac419312531eec67079b97f471179c) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) /* Samples */ + ROM_LOAD( "s92_18.11c", 0x00000, 0x20000, CRC(7f162009) SHA1(346bf42992b4c36c593e21901e22c87ae4a7d86d) ) + ROM_LOAD( "s92_19.12c", 0x20000, 0x20000, CRC(beade53f) SHA1(277c397dc12752719ec6b47d2224750bd1c07f79) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + +// sf2ceea with 2 roms changed +ROM_START( sf2cehp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2cehp.23", 0x000000, 0x80000, CRC(7796519f) SHA1(a420cdca5d5d7898a99afbc62cb33d17010f2def) ) + ROM_LOAD16_WORD_SWAP( "sf2cehp.22", 0x080000, 0x80000, CRC(a99e9f23) SHA1(9c8a10d1382b289eb2fb0be73198c30e44e0c8af) ) + ROM_LOAD16_WORD_SWAP( "s92_21a.6f", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "s92-1m.3a", 0x000000, 0x80000, CRC(03b0d852) SHA1(f370f25c96ad2b94f8c53d6b7139100285a25bef) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-3m.5a", 0x000002, 0x80000, CRC(840289ec) SHA1(2fb42a242f60ba7e74009b5a90eb26e035ba1e82) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-2m.4a", 0x000004, 0x80000, CRC(cdb5f027) SHA1(4c7d944fef200fdfcaf57758b901b5511188ed2e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-4m.6a", 0x000006, 0x80000, CRC(e2799472) SHA1(27d3796429338d82a8de246a0ea06dd487a87768) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-5m.7a", 0x200000, 0x80000, CRC(ba8a2761) SHA1(4b696d66c51611e43522bed752654314e76d33b6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-7m.9a", 0x200002, 0x80000, CRC(e584bfb5) SHA1(ebdf1f5e2638eed3a65dda82b1ed9151a355f4c9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-6m.8a", 0x200004, 0x80000, CRC(21e3f87d) SHA1(4a4961bb68c3a1ce15f9d393d9c03ecb2466cc29) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-8m.10a", 0x200006, 0x80000, CRC(befc47df) SHA1(520390420da3a0271ba90b0a933e65143265e5cf) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-10m.3c", 0x400000, 0x80000, CRC(960687d5) SHA1(2868c31121b1c7564e9767b9a19cdbf655c7ed1d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-12m.5c", 0x400002, 0x80000, CRC(978ecd18) SHA1(648a59706b93c84b4206a968ecbdc3e834c476f6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-11m.4c", 0x400004, 0x80000, CRC(d6ec9a0a) SHA1(ed6143f8737013b6ef1684e37c05e037e7a80dae) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-13m.6c", 0x400006, 0x80000, CRC(ed2c67f6) SHA1(0083c0ffaf6fe7659ff0cf822be4346cd6e61329) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "s92_09.11a", 0x00000, 0x08000, CRC(08f6b60e) SHA1(8258fcaca4ac419312531eec67079b97f471179c) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) /* Samples */ + ROM_LOAD( "s92_18.11c", 0x00000, 0x20000, CRC(7f162009) SHA1(346bf42992b4c36c593e21901e22c87ae4a7d86d) ) + ROM_LOAD( "s92_19.12c", 0x20000, 0x20000, CRC(beade53f) SHA1(277c397dc12752719ec6b47d2224750bd1c07f79) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + +// sf2ceea with 2 roms changed +ROM_START( sf2cejem ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sf2cejem.23", 0x000000, 0x80000, CRC(13310615) SHA1(6749c62d19fe554c521ca28e80175ec84450a45d) ) + ROM_LOAD16_WORD_SWAP( "sf2cejem.22", 0x080000, 0x80000, CRC(d73ee1f8) SHA1(8d6083bf7487867146f091a1cb4bae8d539de46e) ) + ROM_LOAD16_WORD_SWAP( "s92_21a.6f", 0x100000, 0x80000, CRC(925a7877) SHA1(1960dca35f0ca6f2b399a9fccfbc0132ac6425d1) ) + + ROM_REGION( 0x600000, "gfx", 0 ) + ROMX_LOAD( "s92-1m.3a", 0x000000, 0x80000, CRC(03b0d852) SHA1(f370f25c96ad2b94f8c53d6b7139100285a25bef) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-3m.5a", 0x000002, 0x80000, CRC(840289ec) SHA1(2fb42a242f60ba7e74009b5a90eb26e035ba1e82) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-2m.4a", 0x000004, 0x80000, CRC(cdb5f027) SHA1(4c7d944fef200fdfcaf57758b901b5511188ed2e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-4m.6a", 0x000006, 0x80000, CRC(e2799472) SHA1(27d3796429338d82a8de246a0ea06dd487a87768) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-5m.7a", 0x200000, 0x80000, CRC(ba8a2761) SHA1(4b696d66c51611e43522bed752654314e76d33b6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-7m.9a", 0x200002, 0x80000, CRC(e584bfb5) SHA1(ebdf1f5e2638eed3a65dda82b1ed9151a355f4c9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-6m.8a", 0x200004, 0x80000, CRC(21e3f87d) SHA1(4a4961bb68c3a1ce15f9d393d9c03ecb2466cc29) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-8m.10a", 0x200006, 0x80000, CRC(befc47df) SHA1(520390420da3a0271ba90b0a933e65143265e5cf) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-10m.3c", 0x400000, 0x80000, CRC(960687d5) SHA1(2868c31121b1c7564e9767b9a19cdbf655c7ed1d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-12m.5c", 0x400002, 0x80000, CRC(978ecd18) SHA1(648a59706b93c84b4206a968ecbdc3e834c476f6) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-11m.4c", 0x400004, 0x80000, CRC(d6ec9a0a) SHA1(ed6143f8737013b6ef1684e37c05e037e7a80dae) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "s92-13m.6c", 0x400006, 0x80000, CRC(ed2c67f6) SHA1(0083c0ffaf6fe7659ff0cf822be4346cd6e61329) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x18000, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "s92_09.11a", 0x00000, 0x08000, CRC(08f6b60e) SHA1(8258fcaca4ac419312531eec67079b97f471179c) ) + ROM_CONTINUE( 0x10000, 0x08000 ) + + ROM_REGION( 0x40000, "oki", 0 ) /* Samples */ + ROM_LOAD( "s92_18.11c", 0x00000, 0x20000, CRC(7f162009) SHA1(346bf42992b4c36c593e21901e22c87ae4a7d86d) ) + ROM_LOAD( "s92_19.12c", 0x20000, 0x20000, CRC(beade53f) SHA1(277c397dc12752719ec6b47d2224750bd1c07f79) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + ROM_START( sf2koryuh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "u222.rom", 0x000000, 0x80000, CRC(9236a79a) SHA1(39c47b0b0ca2f5f569ff07ebb91040b95d0cb43b) ) ROM_LOAD16_BYTE( "u196.rom", 0x000001, 0x80000, CRC(2722741f) SHA1(d2a2ea29894fbf731f6c8573b85e046dd52e2c97) ) ROM_LOAD16_BYTE( "u221.rom", 0x100000, 0x20000, CRC(64e6e091) SHA1(32ec05db955e538d4ada26d19ee50926f74b684f) ) @@ -2921,7 +3074,7 @@ ROM_START( sf2koryuh ) ROM_END ROM_START( sf2h9 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf3a-1.040", 0x000000, 0x80000, CRC(9e6d058a) SHA1(8c9adca7b65dc929c325c0a62304d24dc0902c08) ) ROM_LOAD16_BYTE( "sf3a-3.040", 0x000001, 0x80000, CRC(518d8404) SHA1(635d8ac07126caf3c623d1f28aad38c5bc4c4bae) ) ROM_LOAD16_BYTE( "sf3a-2", 0x100000, 0x20000, CRC(fca4fc1e) SHA1(2b05d67443af099f95ef50f5e25d7a74b957e7a5) ) @@ -2951,7 +3104,7 @@ ROM_START( sf2h9 ) ROM_END ROM_START( sf2h10 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sfu9-1.040", 0x000000, 0x80000, CRC(95306baf) SHA1(471d1578607ae1090aa46cb111a8c2745d1fd47b) ) ROM_LOAD16_BYTE( "sfu9-3.040", 0x000001, 0x80000, CRC(21024d5f) SHA1(986b3910ce749f4ad42e1f86537a8fc3f0f3f867) ) ROM_LOAD16_BYTE( "sfu9-2.020", 0x100000, 0x40000, CRC(0b3fe5dd) SHA1(9b66cb867da61595f53d1c9e6b48c6bb7e06e1e0) ) @@ -2981,7 +3134,7 @@ ROM_START( sf2h10 ) ROM_END ROM_START( sf2h11 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sfu7-1.040", 0x000000, 0x80000, CRC(866a9b31) SHA1(92f89084293b69a9d5cd8d282ffaaca0739f1b03) ) ROM_LOAD16_BYTE( "sfu7-3.040", 0x000001, 0x80000, CRC(f3a45593) SHA1(0ba0d05f904ac17cd34c0a7c9dd0a20759ff4e78) ) ROM_LOAD16_BYTE( "sfu7-2.010", 0x100000, 0x20000, CRC(d1707134) SHA1(5bfdf7bc57bdb85183647ebb175346070dd102ee) ) @@ -3011,7 +3164,7 @@ ROM_START( sf2h11 ) ROM_END ROM_START( sf2h12 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sfu8-1.040", 0x000000, 0x80000, CRC(10ec67fe) SHA1(9eb30a0f64bf29028f89f9af74cb9d840ed197e2) ) ROM_LOAD16_BYTE( "sfu8-3.040", 0x000001, 0x80000, CRC(92eb3a1c) SHA1(0ee294c8b82b100f98da697562f9644b71cabcdd) ) ROM_LOAD16_BYTE( "sfu8-2.010", 0x100000, 0x20000, CRC(1073b7b6) SHA1(81ca1eab65ceac69520584bb23a684ccb9d92f89) ) @@ -3041,7 +3194,7 @@ ROM_START( sf2h12 ) ROM_END ROM_START( sf2h13 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "222-040.13", 0x000000, 0x80000, CRC(ec6f5cb3) SHA1(24b3fc88a08a721985b053120997090bc394bc8e) ) ROM_LOAD16_BYTE( "196-040.13", 0x000001, 0x80000, CRC(0e9ac52b) SHA1(2c5faf7d8b598f2110f389aefa1a02e2281382ee) ) ROM_LOAD16_BYTE( "221-010.13", 0x100000, 0x20000, CRC(8226c11c) SHA1(9588bd64e338901394805aca8a234f880674dc60) ) @@ -3071,7 +3224,7 @@ ROM_START( sf2h13 ) ROM_END ROM_START( sf2pun ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2pun.23", 0x000000, 0x80000, CRC(8c3bb8f8) SHA1(756ae3980c15d037ff6e70d0c309d9caed6bac4f) ) ROM_LOAD16_WORD_SWAP( "sf2pun.22", 0x080000, 0x80000, CRC(0786f114) SHA1(4a6b52c98c839fcde2b7f425739569abc74c91f4) ) ROM_LOAD16_WORD_SWAP( "sf2red.21", 0x100000, 0x80000, CRC(52c486bb) SHA1(b7df7b10faa4c9a2f86ebf64cd63ac148d62dd09) ) @@ -3116,7 +3269,7 @@ ROM_START( sf2pun ) ROM_END ROM_START( sf2sl73a ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sf2sl73a.23", 0x000000, 0x80000, CRC(190f5419) SHA1(7fc7f3b6788d25b190bda3b3b6cf76a396d7d586) ) ROM_LOAD16_WORD_SWAP( "sf2sl73a.22", 0x080000, 0x80000, CRC(2b329193) SHA1(b1576b610e384fbeaef7be711888fb3fa3f10b1a) ) ROM_LOAD16_WORD_SWAP( "sf2sl73a.21", 0x100000, 0x80000, CRC(b4f13bef) SHA1(5e6501c157890899848bccb34db06b3570e84c17) ) @@ -3161,7 +3314,7 @@ ROM_START( sf2sl73a ) ROM_END ROM_START( sf2th ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "u222", 0x000000, 0x80000, CRC(03991fba) SHA1(6c42bf15248640fdb3e98fb01b0a870649deb410) ) ROM_LOAD16_BYTE( "4.amf", 0x000001, 0x80000, CRC(39f15a1e) SHA1(901c4fea76bf5bff7330ed07ffde54cdccdaa680) ) ROM_LOAD16_BYTE( "u2221.rom", 0x100000, 0x20000, CRC(64e6e091) SHA1(32ec05db955e538d4ada26d19ee50926f74b684f) ) @@ -3196,7 +3349,7 @@ ROM_START( sf2th ) ROM_END ROM_START( sf2tha ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "t-2.u52", 0x000000, 0x80000, CRC(0d305e8b) SHA1(7094160abbf24c119a575d93e3fe1ab84b537de0) ) ROM_LOAD16_BYTE( "t-1.u36", 0x000001, 0x80000, CRC(137d8665) SHA1(cf4805a11ab614ce5b7e1302ac14ba50fb01e5f4) ) ROM_LOAD16_BYTE( "t-4.u54", 0x100000, 0x40000, CRC(0b3fe5dd) SHA1(9b66cb867da61595f53d1c9e6b48c6bb7e06e1e0) ) @@ -3231,7 +3384,7 @@ ROM_START( sf2tha ) ROM_END ROM_START( sf2tlona ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "tl4mt.1", 0x000000, 0x80000, CRC(158635ca) SHA1(878b56064861993ac92fbd88eb1117d3680fe7d7) ) ROM_LOAD16_BYTE( "tl4m.2", 0x000001, 0x80000, CRC(882cd1c4) SHA1(0cb971756352b1022ecd309b1bc3688c1f1acbd8) ) ROM_LOAD16_BYTE( "u221t.1m", 0x100000, 0x20000, CRC(1073b7b6) SHA1(81ca1eab65ceac69520584bb23a684ccb9d92f89) ) @@ -3261,7 +3414,7 @@ ROM_START( sf2tlona ) ROM_END ROM_START( sf2tlonb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "tl4m.1", 0x000000, 0x80000, CRC(afc7bd18) SHA1(ef7af7fb3563073b96563274ec48783feb2be757) ) ROM_LOAD16_BYTE( "tl4m.2", 0x000001, 0x80000, CRC(882cd1c4) SHA1(0cb971756352b1022ecd309b1bc3688c1f1acbd8) ) ROM_LOAD16_BYTE( "u221.1m", 0x100000, 0x20000, CRC(d1707134) SHA1(5bfdf7bc57bdb85183647ebb175346070dd102ee) ) @@ -3291,7 +3444,7 @@ ROM_START( sf2tlonb ) ROM_END ROM_START( sf2tlonc ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf11-1.040", 0x000000, 0x80000, CRC(afc7bd18) SHA1(ef7af7fb3563073b96563274ec48783feb2be757) ) ROM_LOAD16_BYTE( "sf11-3.040", 0x000001, 0x80000, CRC(882cd1c4) SHA1(0cb971756352b1022ecd309b1bc3688c1f1acbd8) ) ROM_LOAD16_BYTE( "sf11-2.010", 0x100000, 0x20000, CRC(f8a5cd53) SHA1(f474e6d24f25ca9a126bd68b02089a0161e2cc0d) ) @@ -3321,7 +3474,7 @@ ROM_START( sf2tlonc ) ROM_END ROM_START( sf2turyu ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "u222-f83.040", 0x000000, 0x100000, CRC(47468198) SHA1(D68D6342DA9B53163F36F44517F6DADF35E2A279) ) ROM_LOAD16_BYTE( "u196-99d.040", 0x000001, 0x100000, CRC(47d34191) SHA1(6718FDC8A0DAFEBCA7C35553CC270D16CE3F5D3E) ) ROM_LOAD16_BYTE( "u221-59e.010", 0x100000, 0x40000, CRC(5507bac9) SHA1(7797CA13CB02DB469DCBA00A07B1517C3586423E) ) @@ -3351,7 +3504,7 @@ ROM_START( sf2turyu ) ROM_END ROM_START( sf2yyc3d5 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf3d5-1040", 0x000000, 0x80000, CRC(bcdd2c3a) SHA1(eff98e425f283afc69064e8bc73f769e0aab93ed) ) ROM_LOAD16_BYTE( "sf3d5-3040", 0x000001, 0x80000, CRC(01965987) SHA1(42abce3aa983ac4143490c0ab2e772a154905860) ) ROM_LOAD16_BYTE( "sf3d5-2010", 0x100000, 0x20000, CRC(dd2e1d31) SHA1(22b341a7365ba4a52c9ee2244d68409c5e86bcf0) ) @@ -3383,7 +3536,7 @@ ROM_START( sf2yyc3d5 ) ROM_END ROM_START( sf2yyc3g ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf3g-1040", 0x000000, 0x80000, CRC(c90559a5) SHA1(f45563c79cf5ce610f92ca84c96d337cf6c9a979) ) ROM_LOAD16_BYTE( "sf3g-3040", 0x000001, 0x80000, CRC(81f36682) SHA1(53776084c973c0b7aafb203e8efcfd5f5c659c93) ) ROM_LOAD16_BYTE( "sf3g-2010", 0x100000, 0x20000, CRC(9eee20a1) SHA1(a6769744094dc0e65f9f34ef36929e7e8ae6155b) ) @@ -3415,7 +3568,7 @@ ROM_START( sf2yyc3g ) ROM_END ROM_START( sf2yyc6 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "sf6-1040", 0x000000, 0x80000, CRC(ccd74822) SHA1(5f64585335ccc0fb1a97339532a6694076e2b6f2) ) ROM_LOAD16_BYTE( "sf6-3040", 0x000001, 0x80000, CRC(2a48b557) SHA1(2e74925a925f86619d4f8e633af718a5eaa8c585) ) ROM_LOAD16_BYTE( "u2221.rom", 0x100000, 0x20000, CRC(64e6e091) SHA1(32ec05db955e538d4ada26d19ee50926f74b684f) ) @@ -3470,7 +3623,7 @@ ROM_START( sk2h1 ) ROM_END ROM_START( sk2h1q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sgyx.800", 0x000000, 0x100000, CRC(3703a650) SHA1(6cb8d6f99df5e2e5cf04aee8737bb585f9328ffd) ) ROM_REGION( 0x400000, "gfx", 0 ) @@ -3518,7 +3671,7 @@ ROM_START( sk2h2 ) ROM_END ROM_START( sk2h2q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "fg-c.040", 0x000000, 0x80000, CRC(d046fc86) SHA1(0ae0b9310e3a122cb69df4bb23672149794242f0) ) ROM_LOAD16_BYTE( "fg-a.040", 0x000001, 0x80000, CRC(f176ee8f) SHA1(fba357c31774aeecef88f70df4294514585df3a0) ) @@ -3572,8 +3725,83 @@ ROM_START( sk2h3 ) // same as MAME sgyxz - here until it gets fixed ROM_LOAD( "sgyxz_snd1.bin", 0x00000, 0x40000, CRC(c15ac0f2) SHA1(8d9e5519d9820e4ac4f70555088c80e64d052c9d) ) ROM_END +ROM_START( sk2h4q ) // wofjheo in mame++ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sk2h4q.23", 0x000000, 0x100000, CRC(03eeb1cf) SHA1(4adffc4eadc5174e2185e923021fa17b113c8a7e) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "sgyx-1.160", 0x000000, 0x80000, CRC(a60be9f6) SHA1(2298a4b6a2c83b76dc106a1efa19606b298d378a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000004, 0x80000 ) + ROM_CONTINUE( 0x200000, 0x80000 ) + ROM_CONTINUE( 0x200004, 0x80000 ) + ROMX_LOAD( "sgyx-2.160", 0x000002, 0x80000, CRC(6ad9d048) SHA1(d47212d28d0a1ce349e4c59e5d0d99c541b3458e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000006, 0x80000 ) + ROM_CONTINUE( 0x200002, 0x80000 ) + ROM_CONTINUE( 0x200006, 0x80000 ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code + space for decrypted opcodes */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) +ROM_END + +ROM_START( sk2h5q ) // wofhrvwx in mame++ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sk2h5q.23", 0x000000, 0x100000, CRC(750dfc1d) SHA1(05967381446b54cea501c09ec033b16708f895e1) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "sgyx-1.160", 0x000000, 0x80000, CRC(a60be9f6) SHA1(2298a4b6a2c83b76dc106a1efa19606b298d378a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000004, 0x80000 ) + ROM_CONTINUE( 0x200000, 0x80000 ) + ROM_CONTINUE( 0x200004, 0x80000 ) + ROMX_LOAD( "sgyx-2.160", 0x000002, 0x80000, CRC(6ad9d048) SHA1(d47212d28d0a1ce349e4c59e5d0d99c541b3458e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000006, 0x80000 ) + ROM_CONTINUE( 0x200002, 0x80000 ) + ROM_CONTINUE( 0x200006, 0x80000 ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code + space for decrypted opcodes */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) +ROM_END + +ROM_START( sk2h6q ) // wofhbw in mame++ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sk2h6q.23", 0x000000, 0x100000, CRC(8080acc7) SHA1(b9e9d126c4e63748bd77947e9c50888c701ea165) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "sgyx-1.160", 0x000000, 0x80000, CRC(a60be9f6) SHA1(2298a4b6a2c83b76dc106a1efa19606b298d378a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000004, 0x80000 ) + ROM_CONTINUE( 0x200000, 0x80000 ) + ROM_CONTINUE( 0x200004, 0x80000 ) + ROMX_LOAD( "sgyx-2.160", 0x000002, 0x80000, CRC(6ad9d048) SHA1(d47212d28d0a1ce349e4c59e5d0d99c541b3458e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROM_CONTINUE( 0x000006, 0x80000 ) + ROM_CONTINUE( 0x200002, 0x80000 ) + ROM_CONTINUE( 0x200006, 0x80000 ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code + space for decrypted opcodes */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) +ROM_END + ROM_START( sk2h11 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "htk2a_23b.rom", 0x000000, 0x80000, CRC(1b17fc85) SHA1(d8c2bd31474dce2330adb05b859ce3fd13040d23) ) ROM_LOAD16_WORD_SWAP( "htk2a_22b.rom", 0x080000, 0x80000, CRC(900ad4cd) SHA1(988007447f93f3467029b9c29fd9670a7ecadaa3) ) @@ -3619,7 +3847,7 @@ ROM_START( sk2h11 ) ROM_END ROM_START( sk2h12 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "htk2ah_23b.rom", 0x000000, 0x80000, CRC(6e3ff382) SHA1(14ef2c708da134f925efa0c3886a104c3ef9e5d7) ) ROM_LOAD16_WORD_SWAP( "htk2a_22b.rom", 0x080000, 0x80000, CRC(900ad4cd) SHA1(988007447f93f3467029b9c29fd9670a7ecadaa3) ) @@ -3645,7 +3873,7 @@ ROM_START( sk2h12 ) ROM_END ROM_START( sk2h13 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "tk2ah_23b.rom", 0x000000, 0x80000, CRC(48fd83c6) SHA1(8f33124979d7ca4c2af10f2a98b524e5463458cc) ) ROM_LOAD16_WORD_SWAP( "htk2a_22b.rom", 0x080000, 0x80000, CRC(900ad4cd) SHA1(988007447f93f3467029b9c29fd9670a7ecadaa3) ) @@ -3671,7 +3899,7 @@ ROM_START( sk2h13 ) ROM_END ROM_START( sk2h14 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofchs.23", 0x000000, 0x80000, CRC(2d70231a) SHA1(57c05c5685e8b3b6de81ab4eed05bd2ad08dbe57) ) ROM_LOAD16_WORD_SWAP( "wofchs.22", 0x080000, 0x80000, CRC(5eac2794) SHA1(76c50ef1fea35f86122ede62acfcd56abb866608) ) @@ -3697,7 +3925,7 @@ ROM_START( sk2h14 ) ROM_END ROM_START( sk2h15 ) // wofaehp - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sk2h15.8f", 0x000000, 0x80000, CRC(261766b2) SHA1(25cf51d0fb90e4a4e39492162f67de0defbc4285) ) ROM_LOAD16_WORD_SWAP( "tk2a_22c.7f", 0x080000, 0x80000, CRC(900ad4cd) SHA1(988007447f93f3467029b9c29fd9670a7ecadaa3) ) @@ -3723,7 +3951,7 @@ ROM_START( sk2h15 ) // wofaehp ROM_END ROM_START( sk2h16 ) // wofahp2 - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sk2h16.8f", 0x000000, 0x80000, CRC(7aed1751) SHA1(e5e10cae12a90c10831ad62669f8c2293a2ab263) ) ROM_LOAD16_WORD_SWAP( "sk2h16.7f", 0x080000, 0x80000, CRC(89483936) SHA1(8f5d19e9c9660908d2bc256418e63b2c89f64fc4) ) @@ -3749,7 +3977,7 @@ ROM_START( sk2h16 ) // wofahp2 ROM_END ROM_START( sk2h21 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "3js_23.rom", 0x000000, 0x80000, CRC(1ebb76da) SHA1(a3d9643a03e964477abd5164202566fe4a11b902) ) ROM_LOAD16_WORD_SWAP( "3js_22.rom", 0x080000, 0x80000, CRC(f41d6153) SHA1(a2cafea8402ab58e8022020242397e7cdce57aff) ) ROM_LOAD16_BYTE( "3js_24.rom", 0x0c0000, 0x20000, CRC(06ead409) SHA1(7289afd15fecd185350d2705476d74baa6909782) ) @@ -3835,7 +4063,7 @@ ROM_START( sk2h31 ) ROM_END ROM_START( sk2h31q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "k6b.040", 0x000000, 0x80000, CRC(7b365108) SHA1(e4ef6e7267ecf36d8b15c7df0351b38777cd559d) ) ROM_LOAD16_BYTE( "k6a.040", 0x000001, 0x80000, CRC(10488a51) SHA1(061d5139f4289cbca9e0a743954d9c65a9384c06) ) @@ -3884,7 +4112,7 @@ ROM_START( sk2h32 ) ROM_END ROM_START( sk2h32q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "3js.800", 0x000000, 0x100000, CRC(812f9200) SHA1(ddf4261c21762e8168d83393a59aa1450762a89a) ) ROM_REGION( 0x400000, "gfx", 0 ) @@ -3933,7 +4161,7 @@ ROM_START( sk2h33 ) ROM_END ROM_START( sk2h33q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "c-c47b.040", 0x000000, 0x80000, CRC(b1809761) SHA1(99a17ed193654f61622eb721e20b69894c96d3d8) ) ROM_LOAD16_BYTE( "a-2402.040", 0x000001, 0x80000, CRC(4fab4232) SHA1(d8ffd06cce73e1c4bc6abb69a2e81277ce901563) ) @@ -3982,7 +4210,7 @@ ROM_START( sk2h34 ) ROM_END ROM_START( sk2h34q ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "one.800", 0x000000, 0x100000, CRC(0507584d) SHA1(5a9df64b7c2c54c5aa0d4c9486c7404157c6119e) ) ROM_REGION( 0x400000, "gfx", 0 ) @@ -4007,7 +4235,7 @@ ROM_START( sk2h34q ) ROM_END ROM_START( sk2h35 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "c-d140.040", 0x000000, 0x80000, CRC(e6d933a6) SHA1(c1f08bbbfc855bbc96b844eed7b1e4f9a0a07fbf) ) ROM_LOAD16_BYTE( "a-0050.040", 0x000001, 0x80000, CRC(403eaead) SHA1(ce6d061e5ee91de779c8d0c19bed273dc4769900) ) @@ -4034,7 +4262,7 @@ ROM_END ROM_START( slammastud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mbu_23ed.8f", 0x000000, 0x80000, CRC(7697273f) SHA1(d42ce6414b42db14305f0497fb760e8a3e868b9d) ) ROM_LOAD16_BYTE( "mbu_24b.9e", 0x080000, 0x20000, CRC(95d5e729) SHA1(df3be896e55c92eb50887a4317178a3d11048433) ) ROM_LOAD16_BYTE( "mbu_28b.9f", 0x080001, 0x20000, CRC(b1c7cbcb) SHA1(cf5ad72be4a055db876e7347b1826325b9bf81d9) ) @@ -4083,7 +4311,7 @@ ROM_END ROM_START( stridergf ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "30.11f", 0x00000, 0x20000, CRC(da997474) SHA1(3e4ac98f9a6967d61899281b31c7de779723397b) ) ROM_LOAD16_BYTE( "35.11h", 0x00001, 0x20000, CRC(5463aaa3) SHA1(e2d07ec2d818e9a2e2d7a77ff0309ae4011c0083) ) ROM_LOAD16_BYTE( "31.12f", 0x40000, 0x20000, CRC(d20786db) SHA1(c9c75488e6bb37cfd0d56073faf87ff5713bc9a0) ) @@ -4124,7 +4352,7 @@ ROM_START( stridergf ) ROM_END ROM_START( stridergh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "30.11f", 0x00000, 0x20000, CRC(da997474) SHA1(3e4ac98f9a6967d61899281b31c7de779723397b) ) ROM_LOAD16_BYTE( "35.11h", 0x00001, 0x20000, CRC(5463aaa3) SHA1(e2d07ec2d818e9a2e2d7a77ff0309ae4011c0083) ) ROM_LOAD16_BYTE( "31.12f", 0x40000, 0x20000, CRC(d20786db) SHA1(c9c75488e6bb37cfd0d56073faf87ff5713bc9a0) ) @@ -4166,7 +4394,7 @@ ROM_END ROM_START( wofb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "3-f2ab.040", 0x000000, 0x80000, CRC(61fd0a01) SHA1(a7b5bdddd7b31645e33314c1d3649e1506cecfea) ) ROM_LOAD16_BYTE( "1-9207.040", 0x000001, 0x80000, CRC(7f59e24c) SHA1(34c294328d00c65086622bd15e17210f07f37237) ) ROM_LOAD16_BYTE( "4-d4d2.010", 0x100000, 0x20000, CRC(fe5eee87) SHA1(be1230f64c1e59ae3ff3e58593070613966ac79d) ) @@ -4201,8 +4429,88 @@ ROM_START( wofb ) ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) ROM_END +ROM_START( wofbio ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofbio.23", 0x000000, 0x80000, CRC(9725b5f4) SHA1(28c72348769eac95753dd469859edb8ca1f0b120) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofbt ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofbt.23", 0x000000, 0x80000, CRC(eac7f675) SHA1(e5df8cfeb1ed32e7a8c5bb8e40035b6f8e5b6ec5) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofch_v3 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofch_v3.23", 0x000000, 0x80000, CRC(898a4e67) SHA1(3f45cc2e15bd398bdc84303f6cde6322394f6456) ) ROM_LOAD16_WORD_SWAP( "wofch_v3.22", 0x080000, 0x80000, CRC(e734ee51) SHA1(1dff1a6cccc1551a4489542ee1f5b38b2233349e) ) @@ -4228,7 +4536,7 @@ ROM_START( wofch_v3 ) ROM_END ROM_START( wofchdx ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofchdx.23", 0x000000, 0x80000, CRC(b5f70324) SHA1(9cd8ca9dab1b2642810f50534186b575b1378ab8) ) ROM_LOAD16_WORD_SWAP( "wofchdx.22", 0x080000, 0x80000, CRC(5c453e70) SHA1(0ffad50e2f93881c6e9848f707eec7d0ee18f688) ) @@ -4254,7 +4562,7 @@ ROM_START( wofchdx ) ROM_END ROM_START( wofchdx1 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofchdx.23", 0x000000, 0x80000, CRC(b5f70324) SHA1(9cd8ca9dab1b2642810f50534186b575b1378ab8) ) ROM_LOAD16_WORD_SWAP( "wofchdx1.22", 0x080000, 0x80000, CRC(55ed1b42) SHA1(0ea12b9298721aac20f351a894b4e7587bb38f88) ) @@ -4306,7 +4614,7 @@ ROM_START( wofchdx2 ) ROM_END ROM_START( wofchspp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofchspp.8f", 0x000000, 0x80000, CRC(61cf24c1) SHA1(e075432449923e69310040a268f81b74c31f5bcc) ) ROM_LOAD16_WORD_SWAP( "wofchspp.7f", 0x080000, 0x80000, CRC(a3cd1c51) SHA1(459c90bea4045a8ad79a36529d169951ac802fc3) ) @@ -4331,8 +4639,194 @@ ROM_START( wofchspp ) ROM_LOAD( "tk2-q4.4k", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) ROM_END +ROM_START( wofctj ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofctj.23", 0x000000, 0x80000, CRC(d3d14501) SHA1(700c41b9e03c8568291266e5b991dd34e1c6f9c2) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofdy ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofdy.23", 0x000000, 0x80000, CRC(f48bb903) SHA1(4aff9e8beb6a6bd32c9fdb83e28effa42234ab5c) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofdyg ) // same as wofjh except for program roms + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofdyg.23", 0x000000, 0x80000, CRC(e91705df) SHA1(8c6969aae190b9e99d0879a7159718d8c2e9523c) ) + ROM_LOAD16_WORD_SWAP( "wofzhs.22", 0x080000, 0x80000, CRC(4b2591c4) SHA1(8ba8efa94057fd7d183b9266009051ac81fe0581) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofes ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofes.23", 0x000000, 0x80000, CRC(4935e2ce) SHA1(e6b6e6499738579b3c4f5dff44c8930257fe619b) ) + ROM_LOAD16_WORD_SWAP( "tk2e_22b.rom", 0x080000, 0x80000, CRC(479b3f24) SHA1(9fb8ae06856fe115addfb6794c28978a4f6716ec) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-5m.7a", 0x200000, 0x80000, CRC(291f0f0b) SHA1(094baf0f960f25fc2525b3b1cc378a49d9a0955d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-7m.9a", 0x200002, 0x80000, CRC(3edeb949) SHA1(c155698dd9ee9eb24bbc97a21118ef2e897ea82f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-6m.8a", 0x200004, 0x80000, CRC(1abd14d6) SHA1(dffff3126f102b4ec028a81405fc5b9bd7bb65b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-8m.10a", 0x200006, 0x80000, CRC(b27948e3) SHA1(870d5d23f56798831c641e877ea94217058b2ddc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) +ROM_END + +ROM_START( woffh ) // same as wofjh except for program roms - colours are a bit weird + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "tk2j_23c.8f", 0x000000, 0x80000, CRC(9b215a68) SHA1(fc83ed26441fbfb15e21b093c7a6bed44b586e51) ) // from wofj + ROM_LOAD16_WORD_SWAP( "woffh.22", 0x080000, 0x80000, CRC(9fe4adf4) SHA1(ff1713880ad8b81d23f40dc3842aabcf6f444d65) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( woffr ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "tk2e_23bfr.rom", 0x000000, 0x80000, CRC(e006e81e) SHA1(dad6cd3a1175b6f366e8bf02d1af35af5f1b50cc) ) ROM_LOAD16_WORD_SWAP( "tk2e_22b.rom", 0x080000, 0x80000, CRC(479b3f24) SHA1(9fb8ae06856fe115addfb6794c28978a4f6716ec) ) @@ -4357,8 +4851,168 @@ ROM_START( woffr ) ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) ROM_END +ROM_START( wofgyc ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofgyc.23", 0x000000, 0x80000, CRC(44d321f3) SHA1(abea7e417e05413ed41ab222d5ccbdf6dcbecc53) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofgyq ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofgyq.23", 0x000000, 0x80000, CRC(bba39347) SHA1(296f8d124bde76dc5114a6210ed618dfa4d07d57) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofhgz ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofhgz.23", 0x000000, 0x80000, CRC(4f480a16) SHA1(b000f1ec2742e9403943b95bdd890069378dc9ed) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofhzj ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofhzj.23", 0x000000, 0x80000, CRC(643f9ef9) SHA1(2fe32edd38c2380a0dd7f9fc9bc44c4049d84646) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofjcn ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofjcn_23c.8f", 0x000000, 0x80000, CRC(e1dd01d8) SHA1(2d243fa39c784ce5164c7a58ffd4884a60eac81c) ) ROM_LOAD16_WORD_SWAP( "tk2j_22c.7f", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) @@ -4409,8 +5063,89 @@ ROM_START( wofjcn ) ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) ROM_END +ROM_START( wofjd ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjd.23", 0x000000, 0x80000, CRC(08631657) SHA1(2d2e0f302dbd64bb8a37577171e6e2194524abdf) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except first rom +ROM_START( wofjehp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjehp.23", 0x000000, 0x80000, CRC(93347af2) SHA1(2b2f02e3529ebaa06ea55b5648aa988d0542f1c6) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofjh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xtk2j23h.bin", 0x000000, 0x80000, CRC(84d38575) SHA1(537f12180adfcea7bceb24b0fa9af9165dbbe2e4) ) ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) @@ -4455,8 +5190,41 @@ ROM_START( wofjh ) ROM_LOAD_OPTIONAL( "d10f1.10f", 0x0000, 0x0117, CRC(6619c494) SHA1(3aef656c07182a2186f810f30e0d854dd5bd8d18) ) ROM_END +ROM_START( wofjh2 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjh2.23", 0x000000, 0x80000, CRC(8fa725f0) SHA1(81c89f5bf1d180356a66d1cd216ea73c6e69f6df) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD_OPTIONAL( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + ROM_START( wofjhb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "tk2j.23c", 0x00000, 0x80000, CRC(432a74ff) SHA1(5675970143134c0cc3ae4964a8817fafee7876fa) ) ROM_LOAD16_WORD_SWAP( "tk2j_22c.7f", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) @@ -4482,7 +5250,7 @@ ROM_START( wofjhb ) ROM_END ROM_START( wofjhc ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "tk2j2.23c", 0x00000, 0x80000, CRC(671b0c62) SHA1(7bba05e5e513edd878a30ef998b3beb4fd053cc6) ) ROM_LOAD16_WORD_SWAP( "tk2j_22c.7f", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) @@ -4507,8 +5275,131 @@ ROM_START( wofjhc ) ROM_LOAD( "tk2-q4.4k", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) ROM_END +// same as wofjh except first rom +ROM_START( wofjhdwb ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjhdwb.23", 0x000000, 0x80000, CRC(e5534d5a) SHA1(497abf790ad0450545f02a1614ef197492b71159) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except for the program roms +ROM_START( wofjhp2 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjhp2.23", 0x000000, 0x80000, CRC(cfce0b11) SHA1(16f2376c8666cd48ea4b30711b0a3b1508a97482) ) + ROM_LOAD16_WORD_SWAP( "wofjhp2.22", 0x080000, 0x80000, CRC(ae09e457) SHA1(1feb645d2371b58613db8d2eb871448b4b20041d) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except first rom +ROM_START( wofjjq ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjjq.23", 0x000000, 0x80000, CRC(58ea0ddc) SHA1(3510b09abd261a896fda855130fd867c92aa030b) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofjm ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofjm.23", 0x000000, 0x80000, CRC(6dba1d2f) SHA1(310e9472d4da8ed4bdccdcd52004030b8799693c) ) ROM_LOAD16_WORD_SWAP( "wofjm.22", 0x080000, 0x80000, CRC(7630fd8a) SHA1(02c2164f191c2efb647b517ee2e8f46d870f9c93) ) @@ -4533,8 +5424,319 @@ ROM_START( wofjm ) ROM_LOAD( "tk2-q4.4k", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) ROM_END +// same as wofjh except for the program roms +ROM_START( wofjmsp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjmsp.23", 0x000000, 0x80000, CRC(a6f22395) SHA1(d2d8a6156c44383c48e4caf97799e231158b7cf2) ) + ROM_LOAD16_WORD_SWAP( "wofjmsp.22", 0x080000, 0x80000, CRC(11bcbbb9) SHA1(bebef41b4ce27fef3f037d8188903334a41b35f4) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except for the program roms +ROM_START( wofjpsrw ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjpsrw.23", 0x000000, 0x80000, CRC(6e392dd2) SHA1(b25f299dc7b8d87de1e42de97db04d3443eff167) ) + ROM_LOAD16_WORD_SWAP( "wofjpsrw.22", 0x080000, 0x80000, CRC(838dff10) SHA1(56a9d5e2d9df843005f6bd0886f612a3c90b8e60) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofjqz ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjqz.23", 0x000000, 0x80000, CRC(98878d8d) SHA1(8a23813e0df0d9ef8fa2761ac355ef5da0f44021) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except first rom +ROM_START( wofjrabh ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjrabh.23", 0x000000, 0x80000, CRC(51979a5a) SHA1(9beaba7d06be4c2b893e6fd3a0dbc157537d9913) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofjh except first rom +ROM_START( wofjrlb ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjrlb.23", 0x000000, 0x80000, CRC(19f49030) SHA1(3e500db79361b747a75d7712f3367754ee8771c7) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofjrpbs ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjrpbs.23", 0x000000, 0x80000, CRC(6c1683ee) SHA1(f22df63cae994fca6955f72313dd204a4734aa94) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD_OPTIONAL( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + +ROM_START( wofjv10s ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjv10s.23", 0x000000, 0x80000, CRC(86c23608) SHA1(0629d82779f6973514582e4a218f63429dccd080) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg1", 0x0000, 0x0117, CRC(f1129744) SHA1(a5300f301c1a08a7da768f0773fa0fe3f683b237) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + ROM_LOAD_OPTIONAL( "sou1", 0x0000, 0x0117, CRC(84f4b2fe) SHA1(dcc9e86cc36316fe42eace02d6df75d08bc8bb6d) ) +ROM_END + +// same as wofjh except first rom +ROM_START( wofjzcr1 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofjzcr1.23", 0x000000, 0x80000, CRC(7df522ad) SHA1(dece17bd0c3a0a10bb3433fe878da4e66e84cc9f) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofjzero ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "wofjzero.8f", 0x000000, 0x80000, CRC(7896998d) SHA1(7f59015ec00232f2b40836127f143415678f7058) ) ROM_LOAD16_WORD_SWAP( "wofjzero.7f", 0x080000, 0x80000, CRC(43e57b1a) SHA1(f7469eb77a74601f94488c23466a6648a91fcbfc) ) ROM_LOAD16_WORD_SWAP( "wofjzero.6f", 0x100000, 0x80000, CRC(7a5f60c0) SHA1(b4d864e39811d1407ce2ba9580bd1e230edf37ff) ) @@ -4580,8 +5782,48 @@ ROM_START( wofjzero ) ROM_LOAD_OPTIONAL( "d10f1.10f", 0x0000, 0x0117, CRC(6619c494) SHA1(3aef656c07182a2186f810f30e0d854dd5bd8d18) ) ROM_END +ROM_START( wofmr ) // same as wofjh except for program roms + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofmr.23", 0x000000, 0x80000, CRC(c1c0192c) SHA1(501225c58e25aaea4c0a4bb348f6a0150a742762) ) + ROM_LOAD16_WORD_SWAP( "wofzhs.22", 0x080000, 0x80000, CRC(4b2591c4) SHA1(8ba8efa94057fd7d183b9266009051ac81fe0581) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + ROM_START( wofr1h ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "tk2e_23b.8f", 0x000000, 0x80000, CRC(0fc9e89c) SHA1(7e098ad77172a16dc234b144c98eb6be433df215) ) ROM_LOAD16_WORD_SWAP( "tk2e_22b.7f", 0x080000, 0x80000, CRC(e3f7cbf1) SHA1(f22d799d13eef6ef24db4689b7ddb1ce4eca505b) ) @@ -4626,10 +5868,50 @@ ROM_START( wofr1h ) ROM_LOAD_OPTIONAL( "d10f1.10f", 0x0000, 0x0117, CRC(6619c494) SHA1(3aef656c07182a2186f810f30e0d854dd5bd8d18) ) ROM_END +ROM_START( wofsbl ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofsbl.23", 0x000000, 0x80000, CRC(5bd65308) SHA1(15065656433bbf582c1910180a04298c13ff0b60) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + // This is a rom kit to convert SF2 to WOF. There's no oki sound even though the roms are present, because // the device isn't being addressed properly (no reads, and only a few writes). Also, demo sound doesn't work. ROM_START( wofsf2 ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_BYTE( "wof_30.rom", 0x000000, 0x020000, CRC(15886428) SHA1(d528766346e52deb97b9f49f836064ab2891c6cd) ) ROM_LOAD16_BYTE( "wof_35.rom", 0x000001, 0x020000, CRC(2b9bd156) SHA1(ec12b4a5e0f257d852830a81d8a9ebe1aec12676) ) ROM_LOAD16_BYTE( "wof_31.rom", 0x040000, 0x020000, CRC(6dc0158b) SHA1(c148bea4b40b9a0c9bced022e42343973969cc20) ) @@ -4666,6 +5948,413 @@ ROM_START( wofsf2 ) ROM_LOAD( "wof_19.rom", 0x020000, 0x20000, CRC(068741db) SHA1(ab48aff639a7ac218b7d5304145e10e92d61fd9f) ) ROM_END +ROM_START( wofsjj ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofsjj.23", 0x000000, 0x80000, CRC(86b71709) SHA1(7a5c12966520b48d23f6a7f5661746cb9d714939) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofsz ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofsz.23", 0x000000, 0x80000, CRC(49b3eaf1) SHA1(fc6c5b0efbb4776bdfb47097ac58a9f6b452b136) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +// same as wofu except first rom +ROM_START( wofud ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofud.23", 0x000000, 0x80000, CRC(9bab998f) SHA1(6afe212d7816bde23aecb92f57d075c3e411d4c6) ) + ROM_LOAD16_WORD_SWAP( "tk2u_22c.7f", 0x080000, 0x80000, CRC(f5af4774) SHA1(f6d53cf5b330e6d68f84da3e8c831a475585b93e) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2-1m.3a", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-3m.5a", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-2m.4a", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-4m.6a", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-5m.7a", 0x200000, 0x80000, CRC(291f0f0b) SHA1(094baf0f960f25fc2525b3b1cc378a49d9a0955d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-7m.9a", 0x200002, 0x80000, CRC(3edeb949) SHA1(c155698dd9ee9eb24bbc97a21118ef2e897ea82f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-6m.8a", 0x200004, 0x80000, CRC(1abd14d6) SHA1(dffff3126f102b4ec028a81405fc5b9bd7bb65b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2-8m.10a", 0x200006, 0x80000, CRC(b27948e3) SHA1(870d5d23f56798831c641e877ea94217058b2ddc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.5k", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2-q1.1k", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2-q2.2k", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2-q3.3k", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2-q4.4k", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) + + ROM_REGION( 0x0200, "dboardplds", 0 ) + ROM_LOAD( "d7l1.7l", 0x0000, 0x0117, CRC(27b7410d) SHA1(06d0cba0226850f100ff1f539bd7d5db0f90c730) ) + ROM_LOAD( "d8l1.8l", 0x0000, 0x0117, CRC(539fc7da) SHA1(cad5c91629c6247e49ccbbcbfe6b08229eafae07) ) + ROM_LOAD( "d9k1.9k", 0x0000, 0x0117, NO_DUMP ) + ROM_LOAD( "d10f1.10f", 0x0000, 0x0117, CRC(6619c494) SHA1(3aef656c07182a2186f810f30e0d854dd5bd8d18) ) +ROM_END + +ROM_START( wofyjs ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofzhy.23", 0x000000, 0x80000, CRC(341aa13d) SHA1(eed3be83078a86675068c52ca835fc27136a746b) ) // from wofzhy + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofyxg ) // same as wofjh except for program roms + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofyxg.23", 0x000000, 0x80000, CRC(c6497c7d) SHA1(c6235edc15ccff4e8813690b1c4ea25de2b9858b) ) + ROM_LOAD16_WORD_SWAP( "wofzhs.22", 0x080000, 0x80000, CRC(4b2591c4) SHA1(8ba8efa94057fd7d183b9266009051ac81fe0581) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofzhs ) // same as wofjh except for program roms + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "tk2j_23c.8f", 0x000000, 0x80000, CRC(9b215a68) SHA1(fc83ed26441fbfb15e21b093c7a6bed44b586e51) ) // from wofj + ROM_LOAD16_WORD_SWAP( "wofzhs.22", 0x080000, 0x80000, CRC(4b2591c4) SHA1(8ba8efa94057fd7d183b9266009051ac81fe0581) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofzhy ) // same as wofjh except for program roms + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofzhy.23", 0x000000, 0x80000, CRC(341aa13d) SHA1(eed3be83078a86675068c52ca835fc27136a746b) ) + ROM_LOAD16_WORD_SWAP( "wofzhs.22", 0x080000, 0x80000, CRC(4b2591c4) SHA1(8ba8efa94057fd7d183b9266009051ac81fe0581) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofzy2 ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofzy2.23", 0x000000, 0x80000, CRC(288ab565) SHA1(834e2d5cef1d0ae486e201bedf6281540c5ded13) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofzy3 ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofzy3.23", 0x000000, 0x80000, CRC(420b3a40) SHA1(6d06b980f4afdcde5ff4cc2509e3ee398b79a19c) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + +ROM_START( wofzyq ) // same as wofjh except for first rom + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "wofzyq.23", 0x000000, 0x80000, CRC(f46755f1) SHA1(f6efa2d886f89d6ab95f919356b574a9b87ba69b) ) + ROM_LOAD16_WORD_SWAP( "xtk2j22c.bin", 0x080000, 0x80000, CRC(b74b09ac) SHA1(3a44d6db5f51e1b5d2b43ef0ad1191da21e48427) ) + + ROM_REGION( 0x400000, "gfx", 0 ) + ROMX_LOAD( "tk2_gfx1.rom", 0x000000, 0x80000, CRC(0d9cb9bf) SHA1(cc7140e9a01a14b252cb1090bcea32b0de461928) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx3.rom", 0x000002, 0x80000, CRC(45227027) SHA1(b21afc593f0d4d8909dfa621d659cbb40507d1b2) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx2.rom", 0x000004, 0x80000, CRC(c5ca2460) SHA1(cbe14867f7b94b638ca80db7c8e0c60881183469) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_gfx4.rom", 0x000006, 0x80000, CRC(e349551c) SHA1(1d977bdf256accf750ad9930ec4a0a19bbf86964) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_05.7a", 0x200000, 0x80000, CRC(e4a44d53) SHA1(b747679f4d63e5e62d9fd81b3120fba0401fadfb) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_06.8a", 0x200002, 0x80000, CRC(58066ba8) SHA1(c93af968e21094d020e4b2002e0c6fc0d746af0b) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_07.9a", 0x200004, 0x80000, CRC(d706568e) SHA1(7886414dc86c42e35d24b85c4bfa41a9f0c167ac) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "tk2_08.10a", 0x200006, 0x80000, CRC(d4a19a02) SHA1(ff396b1d33d9b4842140f2c6d085fe05748e3244) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( 0x28000, "audiocpu", 0 ) /* QSound Z80 code */ + ROM_LOAD( "tk2_qa.rom", 0x00000, 0x08000, CRC(c9183a0d) SHA1(d8b1d41c572f08581f8ab9eb878de77d6ea8615d) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x200000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "tk2_q1.rom", 0x000000, 0x80000, CRC(611268cf) SHA1(83ab059f2110fb25fdcff928d56b790fc1f5c975) ) + ROM_LOAD( "tk2_q2.rom", 0x080000, 0x80000, CRC(20f55ca9) SHA1(90134e9a9c4749bb65c728b66ea4dac1fd4d88a4) ) + ROM_LOAD( "tk2_q3.rom", 0x100000, 0x80000, CRC(bfcf6f52) SHA1(2a85ff3fc89b4cbabd20779ec12da2e116333c7c) ) + ROM_LOAD( "tk2_q4.rom", 0x180000, 0x80000, CRC(36642e88) SHA1(8ab25b19e2b67215a5cb1f3aa81b9d26009cfeb8) ) + + ROM_REGION( 0x0200, "aboardplds", 0 ) + ROM_LOAD_OPTIONAL( "buf1", 0x0000, 0x0117, CRC(eb122de7) SHA1(b26b5bfe258e3e184f069719f9fd008d6b8f6b9b) ) + ROM_LOAD_OPTIONAL( "ioa1", 0x0000, 0x0117, CRC(59c7ee3b) SHA1(fbb887c5b4f5cb8df77cec710eaac2985bc482a6) ) + ROM_LOAD_OPTIONAL( "prg2", 0x0000, 0x0117, CRC(4386879a) SHA1(c36896d169d8c78393609acbbe4397931292a033) ) + ROM_LOAD_OPTIONAL( "rom1", 0x0000, 0x0117, CRC(41dc73b9) SHA1(7d4c9f1693c821fbf84e32dd6ef62ddf14967845) ) + + ROM_REGION( 0x0200, "bboardplds", 0 ) + ROM_LOAD_OPTIONAL( "tk263b.1a", 0x0000, 0x0117, CRC(c4b0349b) SHA1(b4873dd5ad8735048deb3475222dde3c0b67eaaf) ) + ROM_LOAD_OPTIONAL( "iob1.12d", 0x0000, 0x0117, CRC(3abc0700) SHA1(973043aa46ec6d5d1db20dc9d5937005a0f9f6ae) ) + ROM_LOAD_OPTIONAL( "bprg1.11d", 0x0000, 0x0117, CRC(31793da7) SHA1(400fa7ac517421c978c1ee7773c30b9ed0c5d3f3) ) + + ROM_REGION( 0x0200, "cboardplds", 0 ) + ROM_LOAD_OPTIONAL( "ioc1.ic1", 0x0000, 0x0117, CRC(0d182081) SHA1(475b3d417785da4bc512cce2b274bb00d4cc6792) ) +ROM_END + /*************************************************************************** @@ -4728,33 +6417,40 @@ GAME( 2009, punisherjh1, punisher, qsound, punisher, cps_state, punisher, RO GAME( 1993, punisherjha, punisher, qsound, punisher, cps_state, punisher, ROT0, "Zhyxxxx", "The Punisher (930422 Japan, SM Experience Edition)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, punisherud1, punisher, qsound, punisher, cps_state, punisher, ROT0, "hack", "The Punisher (US 930422 Phoenix Edition (8b/32p))", MACHINE_SUPPORTS_SAVE ) GAME( 1993, punisherud2, punisher, qsound, punisher, cps_state, punisher, ROT0, "hack", "The Punisher (US 930422 Phoenix Edition (16b/40p))", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sf2bhj, sf2, cps1_10MHz, sf2j, cps_state, cps1, ROT0, "hack", "Street Fighter II: The World Warrior (Boss hack by Yumeji)", MACHINE_SUPPORTS_SAVE ) GAME( 1991, sf2c, sf2, cps1_10MHz, sf2j, cps_state, cps1, ROT0, "hack", "Street Fighter II: The World Warrior (Chinese 911210)", MACHINE_SUPPORTS_SAVE ) -GAME( 1999, sf2cebr, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Neogeo BR team", "Street Fighter II' - Champion Edition (Brasil 920313)", MACHINE_SUPPORTS_SAVE ) +GAME( 1999, sf2cebr, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Neogeo BR team", "Street Fighter II': Champion Edition (Brasil 920313)", MACHINE_SUPPORTS_SAVE ) GAME( 2012, sf2ced, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Sheng Long Hack v7.1)", MACHINE_SUPPORTS_SAVE ) // "ETC" GAME( 2012, sf2ceda, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Hack)", MACHINE_SUPPORTS_SAVE ) // "ETC" -GAME( 1999, sf2ceh, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II' - Champion Edition (Hispanic 990804)", MACHINE_SUPPORTS_SAVE ) +GAME( 1999, sf2ceh, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II': Champion Edition (Hispanic 990804)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sf2cehk, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Kawada7278", "Street Fighter II': Champion Edition (Hack Unknown by Kawada7278)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sf2cehp, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Pipi899", "Street Fighter II': Champion Edition (Moves hack by Pipi899 2009-01-10)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sf2cejem, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Blackheart", "Street Fighter II': Champion Edition (Easy Moves hack by Blackheart 2009-07-30)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, sf2koryuh, sf2ce, cps1_12MHz, sf2hack, cps_state, cps1, ROT0, "TT", "Street Fighter II': Champion Edition (Hack by TT)", MACHINE_SUPPORTS_SAVE ) // 811102 !!! - based on World version -GAME( 1992, sf2h9, sf2ce, cps1_12MHz, sf2, cps_state, sf2h9, ROT0, "Mega Co", "Street Fighter II - Champion Edition (H9, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2h10, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II' - Champion Edition (H10, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2h11, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II' - Champion Edition (H11, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2h12, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II' - Champion Edition (H12, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2h13, sf2ce, cps1_12MHz, sf2j, cps_state, sf2h13, ROT0, "hack", "Street Fighter II' Turbo - Hyper Fighting (H13, bootleg)", MACHINE_SUPPORTS_SAVE ) // bad tile for Blanka on player select screen +GAME( 1992, sf2h9, sf2ce, cps1_12MHz, sf2, cps_state, sf2h9, ROT0, "Mega Co", "Street Fighter II: Champion Edition (H9, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2h10, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II': Champion Edition (H10, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2h11, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II': Champion Edition (H11, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2h12, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II': Champion Edition (H12, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2h13, sf2ce, cps1_12MHz, sf2j, cps_state, sf2h13, ROT0, "hack", "Street Fighter II' Turbo: Hyper Fighting (H13, bootleg)", MACHINE_SUPPORTS_SAVE ) // bad tile for Blanka on player select screen GAME( 2012, sf2pun, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Punishment Edition v1 Final)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, sf2sl73a, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Drakon", "Street Fighter II': Champion Edition (Sheng Long v7.3a)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2th, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (Turbo set 1, bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sf2tha, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (Turbo set 2, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2tlona, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Tu Long", "Street Fighter II' - Champion Edition (Slay the Dragon set 1)", MACHINE_SUPPORTS_SAVE ) // These 2 are Chinese bootlegs -GAME( 1992, sf2tlonb, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Tu Long", "Street Fighter II' - Champion Edition (Slay the Dragon set 2)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2tlonc, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "Tu Long", "Street Fighter II' - Champion Edition (Slay the Dragon set 3)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2turyu, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II - Champion Edition (Tu Long prototype)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2yyc3d5, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II' - Champion Edition (YYC, 3D5, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2yyc3g, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II' - Champion Edition (YYC, 3G, bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1992, sf2yyc6, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II' - Champion Edition (YYC, 6, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2tlona, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Tu Long", "Street Fighter II': Champion Edition (Slay the Dragon set 1)", MACHINE_SUPPORTS_SAVE ) // These 2 are Chinese bootlegs +GAME( 1992, sf2tlonb, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "Tu Long", "Street Fighter II': Champion Edition (Slay the Dragon set 2)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2tlonc, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "Tu Long", "Street Fighter II': Champion Edition (Slay the Dragon set 3)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2turyu, sf2ce, cps1_12MHz, sf2, cps_state, cps1, ROT0, "hack", "Street Fighter II: Champion Edition (Tu Long prototype)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2yyc3d5, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (YYC, 3D5, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2yyc3g, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (YYC, 3G, bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, sf2yyc6, sf2ce, cps1_12MHz, sf2hack, cps_state, sf2hack, ROT0, "hack", "Street Fighter II': Champion Edition (YYC, 6, bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 1999, sk2h1, wof, sk2h3, sk2h1, cps_state, sk2h1, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H1)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1999, sk2h1q, wof, sk2h1q, sk2h1, cps_state, sk2h1q, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H1Q)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1999, sk2h2, wof, sk2h3, sk2h1, cps_state, sk2h1, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H2)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1999, sk2h2q, wof, sk2h1q, sk2h1, cps_state, sk2h1q, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H2Q)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1999, sk2h3, wof, sk2h3, sk2h3, cps_state, sk2h3, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H3)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, sk2h4q, wof, sk2h1q, sk2h1, cps_state, sk2h1q, ROT0, "All-In Co Ltd", "Sangokushi II (Asia 921005) (set H4Q)(Chinese hack v2.0)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sk2h5q, wof, sk2h1q, sk2h1, cps_state, sk2h1q, ROT0, "Winuxx", "Sangokushi II (Asia 921005) (set H5Q)(Revised Version hack by Winuxx 2009-09-09)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) +GAME( 1999, sk2h6q, wof, sk2h1q, sk2h1, cps_state, sk2h1q, ROT0, "Winuxx", "Sangokushi II (Asia 921005) (set H6Q)(Boss hack by Winuxx)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) GAME( 1992, sk2h11, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Sangokushi II (Asia 921005) (set H11)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sk2h12, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Sangokushi II (Asia 921005) (set H12)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, sk2h13, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Sangokushi II (Asia 921005) (set H13)", MACHINE_SUPPORTS_SAVE ) @@ -4776,20 +6472,57 @@ GAME( 1993, slammastud, slammast, qsound, slammast, cps_state, slammast, RO GAME( 2014, stridergf, strider, cps1_10MHz, stridrua, cps_state, cps1, ROT0, "Willkaotix", "Strider (Gfx fix)", MACHINE_SUPPORTS_SAVE ) GAME( 2014, stridergh, strider, cps1_10MHz, stridrua, cps_state, cps1, ROT0, "Willkaotix", "Strider (gfx fix, uncensored)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofb, wof, qsound, wof, cps_state, wofb, ROT0, "hack", "Warriors of Fate (ETC 921002) (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofbio, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Boss Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofbt, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhang Fei Enhanced)", MACHINE_SUPPORTS_SAVE ) GAME( 1994, wofch_v3, wofch, qsound, wofch, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II: Sekiheki no Tatakai (CPS Changer, Japan 921031) (Set 2)", MACHINE_SUPPORTS_SAVE ) GAME( 2010, wofchdx, wofch, qsound, wofch, cps_state, wof, ROT0, "hack", "Sangokushi 3 Gaiden Kakou-on's Revenge DX (red)", MACHINE_SUPPORTS_SAVE ) GAME( 2010, wofchdx1, wofch, qsound, wofch, cps_state, wof, ROT0, "hack", "Sangokushi 3 Gaiden Kakou-on's Revenge DX (green set 1)", MACHINE_SUPPORTS_SAVE ) GAME( 2010, wofchdx2, wofch, qsound, wofch, cps_state, wof, ROT0, "hack", "Sangokushi 3 Gaiden Kakou-on's Revenge DX (green set 2)", MACHINE_SUPPORTS_SAVE ) GAME( 2010, wofchspp, wofch, qsound, wofch, cps_state, wof, ROT0, "Pipi899", "CPS Changer - Tenchi Wo Kurau II (Super Jian Huang hack by Pipi899 2010-01-29)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofctj, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Cao Zhi Jian Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofdy, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Di Yu Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofdyg, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Di Yi Guan Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofes, wof, qsound, wof, cps_state, wof, ROT0, "Chaihe", "Warriors of Fate (Enhanced Super Version hack by Chaihe)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, woffh, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Fen Hong Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, woffr, wof, qsound, wof, cps_state, wof, ROT0, "Arkatrad", "Warriors of Fate (France 030728)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofgyc, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Guan Yu Chi Tu Ma Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofgyq, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Guan Yu Enhanced Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofhgz, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Han Guang Zhan Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofhzj, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Huang Zhong Enhanced)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofjcn, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Japan 921031) (Chinese)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) -GAME( 1992, woffr, wof, qsound, wof, cps_state, wof, ROT0, "Arkatrad", "Warriors of Fate (France 030728)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjd, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Japan 921031 Phoenix Edition)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjehp, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Hack by Pipi899 2009-01-02)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofjh, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Japan 921031) (Hack set 1)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjh2, wof, qsound, wof, cps_state, wof, ROT0, "Shinwa", "Tenchi wo Kurau II (Hack by Shinwa)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofjhb, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Japan 921031) (Hack set 2)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofjhc, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Japan 921031) (Hack set 3)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjhdwb, wof, qsound, wof, cps_state, wof, ROT0, "Winuxx, Blackheart", "Tenchi wo Kurau II (Heaven and Earth Double Attack Test Version hack by Winuxx, Blackheart 2009-12-14)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjhp2, wof, qsound, wof, cps_state, wof, ROT0, "Pipi899", "Tenchi wo Kurau II (Easy Moves hack by Pipi899 2009-01-12)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjjq, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Xue Xing Enhanced)", MACHINE_SUPPORTS_SAVE ) GAME( 2013, wofjm, wof, qsound, wof, cps_state, wof, ROT0, "AXDX", "Tenchi wo Kurau 2 (Japan 921031)", MACHINE_SUPPORTS_SAVE ) +GAME( 2010, wofjmsp, wof, qsound, wof, cps_state, wof, ROT0, "Pipi899", "Tenchi wo Kurau II (Modified SubVersion hack by Pipi899 2010-01-26)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjpsrw, wof, qsound, wof, cps_state, wof, ROT0, "Rockywall", "Tenchi wo Kurau II (Playstation Version hack by Rockywall 2009-12-09)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjqz, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Jian Qi Zong Heng Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjrabh, wof, qsound, wof, cps_state, wof, ROT0, "Blacheart", "Tenchi wo Kurau II (Revised Alternate hack by Blackheart 2009-12-17)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjrlb, wof, qsound, wof, cps_state, wof, ROT0, "LB70", "Tenchi wo Kurau II (Revised Version hack by Lb70 2009-03-21)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjrpbs, wof, qsound, wof, cps_state, wof, ROT0, "Shinwa", "Tenchi wo Kurau II (Revised beta hack by Shinwa)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofjv10s, wof, qsound, wof, cps_state, wof, ROT0, "Shinwa", "Tenchi wo Kurau II (Revised v1.0 hack by Shinwa)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) +GAME( 2009, wofjzcr1, wof, qsound, wof, cps_state, wof, ROT0, "Blackheart", "Tenchi wo Kurau II (Zhao Chain Revised v1.0 hack by Blackheart 2009-12-16)", MACHINE_SUPPORTS_SAVE ) GAME( 2012, wofjzero, wof, qsound, wof, cps_state, wof, ROT0, "Zero", "Tenchi wo Kurau II (Power edition)(Japan 921031)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofmr, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Mei ren Guan Enhanced)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofr1h, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Warriors of Fate (ETC 921002) hack", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofsbl, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Shen Bing Li Qi Enhanced)", MACHINE_SUPPORTS_SAVE ) GAME( 1992, wofsf2, wof, wofsf2, wof, cps_state, cps1, ROT0, "hack", "Warriors of Fate (conversion for SF2 HW) (ETC 921031)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofsjj, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Shen Jian + Jian Qi Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofsz, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Shao Zhu Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofud, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Warriors of Fate (USA 921031 Phoenix Edition)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofyjs, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Yu Jian Shu Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofyxg, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Ying Xiong Guan Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofzhs, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhao Huan Shou Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofzhy, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhao Huan Shou + Yu Jian Shu Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofzy2, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhao Yun Lian Ti Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofzy3, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhao Yun Sheng Long Enhanced)", MACHINE_SUPPORTS_SAVE ) +GAME( 1992, wofzyq, wof, qsound, wof, cps_state, wof, ROT0, "hack", "Tenchi wo Kurau II (Chinese hack: Zhao Yun Bao Li Enhanced)", MACHINE_SUPPORTS_SAVE ) /*************************************************************************************************************************/ @@ -4803,7 +6536,7 @@ GAME( 1992, wofsf2, wof, wofsf2, wof, cps_state, cps1, RO DRIVER_INIT_MEMBER( cps_state, dinoeh ) { - machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x800180, 0x800181, write16_delegate(FUNC(cps_state::dinoh_sound_command_w),this)); + machine().device("maincpu")->memory().space(AS_PROGRAM).install_write_handler(0x800180, 0x800181, write16_delegate(FUNC(cps_state::dinoh_sound_command_w),this)); kabuki_setup(dino_decode); DRIVER_INIT_CALL(cps1); } @@ -4811,16 +6544,16 @@ DRIVER_INIT_MEMBER( cps_state, dinoeh ) DRIVER_INIT_MEMBER( cps_state, dinoh ) { /* Patch out Q-Sound test */ - uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); + uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); rom[0xaacf4/2] = 0x4e71; DRIVER_INIT_CALL(dinoeh); } DRIVER_INIT_MEMBER( cps_state, dinoz ) { - uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); - rom[0xaaa82/2] = 0x4e71; // Patch out Q-Sound test - rom[0x1cfb4/2] = 0x4e71; // patch out invalid instruction + uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); + rom[0xaaa82/2] = 0x4e71; // Patch out Q-Sound test + rom[0x1cfb4/2] = 0x4e71; // patch out invalid instruction DRIVER_INIT_CALL(dinoeh); } @@ -5121,7 +6854,7 @@ DRIVER_INIT_MEMBER( cps_state, punisherb ) DRIVER_INIT_MEMBER( cps_state, sf2h9 ) { /* Patch out protection check */ - uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); + uint16_t *rom = (uint16_t *)memregion("maincpu")->base(); rom[0xc0670/2] = 0x4e71; DRIVER_INIT_CALL(cps1); } diff --git a/docs/release/src/hbmame/drivers/cps2.cpp b/docs/release/src/hbmame/drivers/cps2.cpp index b61b89a5e85..87cb011a812 100644 --- a/docs/release/src/hbmame/drivers/cps2.cpp +++ b/docs/release/src/hbmame/drivers/cps2.cpp @@ -3,7 +3,7 @@ #include "../mame/drivers/cps2.cpp" ROM_START( 1944da ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "nffu_da.03", 0x000000, 0x80000, CRC(78188e42) SHA1(add31daba3e6916a1facfaf32feeaba228e9a6ab) ) ROM_LOAD16_WORD_SWAP( "nff.04", 0x080000, 0x80000, CRC(dba1c66e) SHA1(4764e77d4da5d19d9acded27df1e1bcba06b0fcf) ) ROM_LOAD16_WORD_SWAP( "nffu.05", 0x100000, 0x80000, CRC(ea813eb7) SHA1(34e0175a5f22d08c3538369b4bfd077a7427a128) ) @@ -31,7 +31,7 @@ ROM_START( 1944da ) ROM_END ROM_START( 1944fp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "nffu.03fp", 0x000000, 0x80000, CRC(3239f3a2) SHA1(22f6e5772c3f2f98db79c9ec6809cb0343b7c877) ) ROM_LOAD16_WORD_SWAP( "nff.04fp", 0x080000, 0x80000, CRC(91297ec9) SHA1(3ef111613e758540a3187d972018b100bcb1652a) ) ROM_LOAD16_WORD_SWAP( "nffu.05", 0x100000, 0x80000, CRC(ea813eb7) SHA1(34e0175a5f22d08c3538369b4bfd077a7427a128) ) @@ -60,7 +60,7 @@ ROM_END ROM_START( ddsomavs ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "ddsomavs.03g", 0x000000, 0x80000, CRC(e28c61f2) SHA1(a15ba7e4d1c6e2e2c047e12edefc6b1564464496) ) ROM_LOAD16_WORD_SWAP( "ddsomavs.04g", 0x080000, 0x80000, CRC(145efa6f) SHA1(2da422bf43c4b4abd20ddcf7b0dd4a37f23d756a) ) ROM_LOAD16_WORD_SWAP( "dd2.05g", 0x100000, 0x80000, CRC(5eb1991c) SHA1(429a60b5396ff4192904867fbe0524268f0edbcb) ) @@ -94,7 +94,7 @@ ROM_START( ddsomavs ) ROM_END ROM_START( ddsomchs ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "dd2j.03g", 0x000000, 0x80000, CRC(e6c8c985) SHA1(0736a84d7d9d37d51826eac6826a7728260bc625) ) ROM_LOAD16_WORD_SWAP( "dd2j.04g", 0x080000, 0x80000, CRC(8386c0bd) SHA1(59bfc71914ec2bb7d1b9f327b25d2399181d4bb2) ) ROM_LOAD16_WORD_SWAP( "dd2.05g", 0x100000, 0x80000, CRC(5eb1991c) SHA1(429a60b5396ff4192904867fbe0524268f0edbcb) ) @@ -122,7 +122,7 @@ ROM_START( ddsomchs ) ROM_END ROM_START( ddsomhp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "ddsomhp.03e", 0x000000, 0x80000, CRC(5a9574e5) SHA1(c810b9bf495d4cd44305e27992848aab207da922) ) ROM_LOAD16_WORD_SWAP( "dd2e.04e", 0x080000, 0x80000, CRC(5b7052b6) SHA1(8a5f069f450da939d0f02518751cd9815d621d81) ) ROM_LOAD16_WORD_SWAP( "ddsomhp.05e", 0x100000, 0x80000, CRC(554e9b24) SHA1(6b78662c0e377f5595cef9d2b49d6af0ece19fd1) ) @@ -156,7 +156,7 @@ ROM_START( ddsomhp ) ROM_END ROM_START( ddsomjfs ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "ddsomjfs.03g", 0x000000, 0x80000, CRC(cc650f5b) SHA1(b39dd217b8a4cf82f994e1657909ff001fc4721b) ) ROM_LOAD16_WORD_SWAP( "dd2j.04g", 0x080000, 0x80000, CRC(8386c0bd) SHA1(59bfc71914ec2bb7d1b9f327b25d2399181d4bb2) ) ROM_LOAD16_WORD_SWAP( "dd2.05g", 0x100000, 0x80000, CRC(5eb1991c) SHA1(429a60b5396ff4192904867fbe0524268f0edbcb) ) @@ -191,7 +191,7 @@ ROM_END ROM_START( halfway ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "halfway.03", 0x000000, 0x080000, CRC(55ce8d4a) SHA1(3b7342afbfa1244cb5cbf5be7391d3e1f8231822) ) ROM_LOAD16_WORD_SWAP( "tohell.04", 0x080000, 0x080000, CRC(71060b9e) SHA1(007a174ceca6ae080f19f088bf0fc6cd0fe2510c) ) @@ -215,7 +215,7 @@ ROM_END ROM_START( mpangjd ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mpnj_d.03a", 0x000000, 0x80000, CRC(dac63128) SHA1(e5ee8f6d698a28dbf54520473520e40efadf30e3) ) ROM_LOAD16_WORD_SWAP( "mpnj_d.04a", 0x080000, 0x80000, CRC(d0b2592b) SHA1(f18c026776326f9bab70d1a8f66dd5fffb115b1b) ) @@ -243,7 +243,7 @@ ROM_END ROM_START( mshjphp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mshjphp.03", 0x000000, 0x80000, CRC(31ae1efc) SHA1(02d3447edceb07ae4e40b068d8a5637547cbc17e) ) ROM_LOAD16_WORD_SWAP( "mshj.04g", 0x080000, 0x80000, CRC(61d791c6) SHA1(9f883bcc48058a99c4ba653d0855c58c5d081243) ) ROM_LOAD16_WORD_SWAP( "msh.05a", 0x100000, 0x80000, CRC(f37539e6) SHA1(770febc25ca5615b6c2023727edab3c68b15b2c4) ) @@ -276,8 +276,113 @@ ROM_START( mshjphp ) ROM_LOAD( "mshj.key", 0x000000, 0x000014, CRC(888761ac) SHA1(a1c72deedab2bafe5d594bba905a6274575b6e56) ) ROM_END +// mshvsfj with a rom changed +ROM_START( mshvsemb ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "mshvsemb.03", 0x000000, 0x80000, CRC(86672cbb) SHA1(7dc683ed8cf5bc205851375deab0438a1105d581) ) + ROM_LOAD16_WORD_SWAP( "mvsj.04i", 0x080000, 0x80000, CRC(32741ace) SHA1(36db3a3aeaf29369977593c051bf5665cffefb2d) ) + ROM_LOAD16_WORD_SWAP( "mvs.05h", 0x100000, 0x80000, CRC(77870dc3) SHA1(924a7c82456bb44d7b0be65af11dbe1a2420a3f0) ) + ROM_LOAD16_WORD_SWAP( "mvs.06a", 0x180000, 0x80000, CRC(959f3030) SHA1(fbbaa915324815246738f3426232e623f039ce26) ) + ROM_LOAD16_WORD_SWAP( "mvs.07b", 0x200000, 0x80000, CRC(7f915bdb) SHA1(683da09c5ba55e31b59aa95a8e13c45dc574ab3c) ) + ROM_LOAD16_WORD_SWAP( "mvs.08a", 0x280000, 0x80000, CRC(c2813884) SHA1(49e5d4bc48f90c8146cb6aafb9240aff0119f1a7) ) + ROM_LOAD16_WORD_SWAP( "mvs.09b", 0x300000, 0x80000, CRC(3ba08818) SHA1(9ab132a3cac55fcccebe6c99b6fb0ba1305f8f6e) ) + ROM_LOAD16_WORD_SWAP( "mvs.10b", 0x380000, 0x80000, CRC(cf0dba98) SHA1(f4c1f8a6e7a79ecc6241d5268b3039f8a09ea516) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "mvs.13m", 0x0000000, 0x400000, CRC(29b05fd9) SHA1(e8fdb1ee5515a560eb4256ae4fd99bb1192e1a87) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.15m", 0x0000002, 0x400000, CRC(faddccf1) SHA1(4ed03ea91883a0413325f57edcc1614120b5922c) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.17m", 0x0000004, 0x400000, CRC(97aaf4c7) SHA1(6a054921cc14fe080cb3f62c391f8ae3cc7e8ba9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.19m", 0x0000006, 0x400000, CRC(cb70e915) SHA1(da4d2480d348ac6dfd01256a88f4f3db8357ae46) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.14m", 0x1000000, 0x400000, CRC(b3b1972d) SHA1(0f2c3fb7de014181ee481ec35d0578b2c116c2dc) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.16m", 0x1000002, 0x400000, CRC(08aadb5d) SHA1(3a2c222eca3e7df80ce69951b3db6442312751a4) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.18m", 0x1000004, 0x400000, CRC(c1228b35) SHA1(7afdfb552888c79d0fbb30242b3d917b87fad57a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.20m", 0x1000006, 0x400000, CRC(366cc6c2) SHA1(6f2a789087c8e404c5227b927fa8328c03593243) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "mvs.01", 0x00000, 0x08000, CRC(68252324) SHA1(138ef320ef27956b2ab5591d49a1315b7b0a194c) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "mvs.02", 0x28000, 0x20000, CRC(b34e773d) SHA1(3bcf44bf06c35814cff29d244142db7abe05bd39) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "mvs.11m", 0x000000, 0x400000, CRC(86219770) SHA1(4e5b68d382a5aa37f8b0b6434c53a2b95f5f9a4d) ) + ROM_LOAD16_WORD_SWAP( "mvs.12m", 0x400000, 0x400000, CRC(f2fd7f68) SHA1(28a30d55d3eaf963006c7cbe7c288099cd3ba536) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "mshvsfj.key", 0x000000, 0x000014, CRC(565eeebb) SHA1(762844b59b2fcf529a26ad3dde8282415db926b3) ) +ROM_END + +// mshvsfj with 2 roms changed +ROM_START( mshvsfjh ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "mshvsfjh.03", 0x000000, 0x80000, CRC(54ecd389) SHA1(be6d34587de852d93d575f7d1e5001e43f4be9e9) ) + ROM_LOAD16_WORD_SWAP( "mshvsfjh.04", 0x080000, 0x80000, CRC(6031012f) SHA1(8905d52110f5c9da35ce4ec497c48ec73eb35e13) ) + ROM_LOAD16_WORD_SWAP( "mvs.05h", 0x100000, 0x80000, CRC(77870dc3) SHA1(924a7c82456bb44d7b0be65af11dbe1a2420a3f0) ) + ROM_LOAD16_WORD_SWAP( "mvs.06a", 0x180000, 0x80000, CRC(959f3030) SHA1(fbbaa915324815246738f3426232e623f039ce26) ) + ROM_LOAD16_WORD_SWAP( "mvs.07b", 0x200000, 0x80000, CRC(7f915bdb) SHA1(683da09c5ba55e31b59aa95a8e13c45dc574ab3c) ) + ROM_LOAD16_WORD_SWAP( "mvs.08a", 0x280000, 0x80000, CRC(c2813884) SHA1(49e5d4bc48f90c8146cb6aafb9240aff0119f1a7) ) + ROM_LOAD16_WORD_SWAP( "mvs.09b", 0x300000, 0x80000, CRC(3ba08818) SHA1(9ab132a3cac55fcccebe6c99b6fb0ba1305f8f6e) ) + ROM_LOAD16_WORD_SWAP( "mvs.10b", 0x380000, 0x80000, CRC(cf0dba98) SHA1(f4c1f8a6e7a79ecc6241d5268b3039f8a09ea516) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "mvs.13m", 0x0000000, 0x400000, CRC(29b05fd9) SHA1(e8fdb1ee5515a560eb4256ae4fd99bb1192e1a87) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.15m", 0x0000002, 0x400000, CRC(faddccf1) SHA1(4ed03ea91883a0413325f57edcc1614120b5922c) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.17m", 0x0000004, 0x400000, CRC(97aaf4c7) SHA1(6a054921cc14fe080cb3f62c391f8ae3cc7e8ba9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.19m", 0x0000006, 0x400000, CRC(cb70e915) SHA1(da4d2480d348ac6dfd01256a88f4f3db8357ae46) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.14m", 0x1000000, 0x400000, CRC(b3b1972d) SHA1(0f2c3fb7de014181ee481ec35d0578b2c116c2dc) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.16m", 0x1000002, 0x400000, CRC(08aadb5d) SHA1(3a2c222eca3e7df80ce69951b3db6442312751a4) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.18m", 0x1000004, 0x400000, CRC(c1228b35) SHA1(7afdfb552888c79d0fbb30242b3d917b87fad57a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.20m", 0x1000006, 0x400000, CRC(366cc6c2) SHA1(6f2a789087c8e404c5227b927fa8328c03593243) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "mvs.01", 0x00000, 0x08000, CRC(68252324) SHA1(138ef320ef27956b2ab5591d49a1315b7b0a194c) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "mvs.02", 0x28000, 0x20000, CRC(b34e773d) SHA1(3bcf44bf06c35814cff29d244142db7abe05bd39) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "mvs.11m", 0x000000, 0x400000, CRC(86219770) SHA1(4e5b68d382a5aa37f8b0b6434c53a2b95f5f9a4d) ) + ROM_LOAD16_WORD_SWAP( "mvs.12m", 0x400000, 0x400000, CRC(f2fd7f68) SHA1(28a30d55d3eaf963006c7cbe7c288099cd3ba536) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "mshvsfj.key", 0x000000, 0x000014, CRC(565eeebb) SHA1(762844b59b2fcf529a26ad3dde8282415db926b3) ) +ROM_END + +// mshvsfj with a rom changed +ROM_START( mshvsfjphp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "mshvsfjphp.03", 0x000000, 0x80000, CRC(4c50cabc) SHA1(6139e3974d83fb4220aca84fa0ac6adcf23f45a5) ) + ROM_LOAD16_WORD_SWAP( "mvsj.04i", 0x080000, 0x80000, CRC(32741ace) SHA1(36db3a3aeaf29369977593c051bf5665cffefb2d) ) + ROM_LOAD16_WORD_SWAP( "mvs.05h", 0x100000, 0x80000, CRC(77870dc3) SHA1(924a7c82456bb44d7b0be65af11dbe1a2420a3f0) ) + ROM_LOAD16_WORD_SWAP( "mvs.06a", 0x180000, 0x80000, CRC(959f3030) SHA1(fbbaa915324815246738f3426232e623f039ce26) ) + ROM_LOAD16_WORD_SWAP( "mvs.07b", 0x200000, 0x80000, CRC(7f915bdb) SHA1(683da09c5ba55e31b59aa95a8e13c45dc574ab3c) ) + ROM_LOAD16_WORD_SWAP( "mvs.08a", 0x280000, 0x80000, CRC(c2813884) SHA1(49e5d4bc48f90c8146cb6aafb9240aff0119f1a7) ) + ROM_LOAD16_WORD_SWAP( "mvs.09b", 0x300000, 0x80000, CRC(3ba08818) SHA1(9ab132a3cac55fcccebe6c99b6fb0ba1305f8f6e) ) + ROM_LOAD16_WORD_SWAP( "mvs.10b", 0x380000, 0x80000, CRC(cf0dba98) SHA1(f4c1f8a6e7a79ecc6241d5268b3039f8a09ea516) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "mvs.13m", 0x0000000, 0x400000, CRC(29b05fd9) SHA1(e8fdb1ee5515a560eb4256ae4fd99bb1192e1a87) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.15m", 0x0000002, 0x400000, CRC(faddccf1) SHA1(4ed03ea91883a0413325f57edcc1614120b5922c) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.17m", 0x0000004, 0x400000, CRC(97aaf4c7) SHA1(6a054921cc14fe080cb3f62c391f8ae3cc7e8ba9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.19m", 0x0000006, 0x400000, CRC(cb70e915) SHA1(da4d2480d348ac6dfd01256a88f4f3db8357ae46) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.14m", 0x1000000, 0x400000, CRC(b3b1972d) SHA1(0f2c3fb7de014181ee481ec35d0578b2c116c2dc) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.16m", 0x1000002, 0x400000, CRC(08aadb5d) SHA1(3a2c222eca3e7df80ce69951b3db6442312751a4) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.18m", 0x1000004, 0x400000, CRC(c1228b35) SHA1(7afdfb552888c79d0fbb30242b3d917b87fad57a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "mvs.20m", 0x1000006, 0x400000, CRC(366cc6c2) SHA1(6f2a789087c8e404c5227b927fa8328c03593243) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "mvs.01", 0x00000, 0x08000, CRC(68252324) SHA1(138ef320ef27956b2ab5591d49a1315b7b0a194c) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "mvs.02", 0x28000, 0x20000, CRC(b34e773d) SHA1(3bcf44bf06c35814cff29d244142db7abe05bd39) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "mvs.11m", 0x000000, 0x400000, CRC(86219770) SHA1(4e5b68d382a5aa37f8b0b6434c53a2b95f5f9a4d) ) + ROM_LOAD16_WORD_SWAP( "mvs.12m", 0x400000, 0x400000, CRC(f2fd7f68) SHA1(28a30d55d3eaf963006c7cbe7c288099cd3ba536) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "mshvsfj.key", 0x000000, 0x000014, CRC(565eeebb) SHA1(762844b59b2fcf529a26ad3dde8282415db926b3) ) +ROM_END + ROM_START( mshyh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mshe.03e", 0x000000, 0x80000, CRC(bd951414) SHA1(5585bdd1484dc18c7630d689f60d91c068aafc97) ) ROM_LOAD16_WORD_SWAP( "mshyh.04", 0x080000, 0x80000, CRC(adbd5707) SHA1(79d56d5a28328ababec10e080e46d1bfa6d8cab7) ) ROM_LOAD16_WORD_SWAP( "msh.05", 0x100000, 0x80000, CRC(6a091b9e) SHA1(7fa54e69e1a1ca348cb08d892d55023e9a3ff4cb) ) @@ -312,7 +417,7 @@ ROM_END ROM_START( mvscjemb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mvscjemb.03", 0x000000, 0x80000, CRC(8a50f418) SHA1(17db6f6afbe7866a4803bf2a20fb9b01b2b80250) ) ROM_LOAD16_WORD_SWAP( "mvcj.04a", 0x080000, 0x80000, CRC(07d212e8) SHA1(c5420e9bd580910c1f1d0264240aeef20aac30a7) ) ROM_LOAD16_WORD_SWAP( "mvc.05a", 0x100000, 0x80000, CRC(2d8c8e86) SHA1(b07d640a734c5d336054ed05195786224c9a6cd4) ) @@ -346,7 +451,7 @@ ROM_START( mvscjemb ) ROM_END ROM_START( mvscjphp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mvscjphp.03", 0x000000, 0x80000, CRC(8f886e52) SHA1(5fcd465361452b3b163cbd62b6cd73835e2f9f54) ) ROM_LOAD16_WORD_SWAP( "mvcj.04a", 0x080000, 0x80000, CRC(07d212e8) SHA1(c5420e9bd580910c1f1d0264240aeef20aac30a7) ) ROM_LOAD16_WORD_SWAP( "mvc.05a", 0x100000, 0x80000, CRC(2d8c8e86) SHA1(b07d640a734c5d336054ed05195786224c9a6cd4) ) @@ -380,7 +485,7 @@ ROM_START( mvscjphp ) ROM_END ROM_START( mvscrcp ) // doesn't work - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mvce.03a", 0x000000, 0x80000, CRC(824e4a90) SHA1(5c79c166d988d8a75d9941f4ee6fa4d6476e55e1) ) ROM_LOAD16_WORD_SWAP( "mvce.04a", 0x080000, 0x80000, CRC(436c5a4e) SHA1(82f4586e888f2550c53bfdc93a53791a595e05bd) ) ROM_LOAD16_WORD_SWAP( "mvc.05a", 0x100000, 0x80000, CRC(2d8c8e86) SHA1(b07d640a734c5d336054ed05195786224c9a6cd4) ) @@ -414,7 +519,7 @@ ROM_START( mvscrcp ) // doesn't work ROM_END ROM_START( mvscuh ) // doesn't work - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "mvscuh.03", 0x000000, 0x80000, CRC(95eb2af9) SHA1(b5ba9ced0bb67783a00a07423b8b68bd3b89aaf9) ) ROM_LOAD16_WORD_SWAP( "mvscuh.04", 0x080000, 0x80000, CRC(05e4ba51) SHA1(21e7107d53c2416b215c9ff442a85e98489ac8ba) ) ROM_LOAD16_WORD_SWAP( "mvc.05a", 0x100000, 0x80000, CRC(2d8c8e86) SHA1(b07d640a734c5d336054ed05195786224c9a6cd4) ) @@ -448,7 +553,7 @@ ROM_START( mvscuh ) // doesn't work ROM_END ROM_START( pfghtjrm ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "pfghtjrm.03", 0x000000, 0x80000, CRC(5b91a900) SHA1(503fc8b5e687c11bfa5a3b55a7df8b22b8a02103) ) ROM_LOAD16_WORD_SWAP( "pcf.04", 0x080000, 0x80000, CRC(f4314c96) SHA1(c40ed74039bf0096eb3648b7243a8e697638e0a6) ) ROM_LOAD16_WORD_SWAP( "pcf.05", 0x100000, 0x80000, CRC(215655f6) SHA1(242c0f4401520f2a3b0deafc3a807b18b987e496) ) @@ -480,7 +585,7 @@ ROM_END ROM_START( sfa2h ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sz2eh.03", 0x000000, 0x80000, CRC(f24e7b3a) SHA1(0cf5169fcf46dcea5a100bf75a5dcd791c51b671) ) ROM_LOAD16_WORD_SWAP( "sz2e.04", 0x080000, 0x80000, CRC(22d17b26) SHA1(2d7a9cedae1bb2b7cfb80d2bfcf24cb7738df0bf) ) ROM_LOAD16_WORD_SWAP( "sz2.05", 0x100000, 0x80000, CRC(4b442a7c) SHA1(a0d7d229cff8efb2a253ff06270258b0b4d2761e) ) @@ -511,8 +616,178 @@ ROM_START( sfa2h ) ROM_LOAD( "sfa2.key", 0x000000, 0x000014, CRC(1578dcb0) SHA1(a8bc83b341f9ea2bcc18861419bd574d159c6fcc) ) ROM_END +ROM_START( sfa3br ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfa3br.03", 0x000000, 0x80000, CRC(b2a99137) SHA1(cba8777cd241e270c19fe375489efc421cc01549) ) + ROM_LOAD16_WORD_SWAP( "sfa3br.04", 0x080000, 0x80000, CRC(3e5cefe6) SHA1(f889bc9f7212e27d5df50ebda909b60e85dbfe29) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sfa3br.13", 0x0000000, 0x400000, CRC(f18ffe2d) SHA1(3b7251f3027461a847749c8238ff9b0a9ab1c405) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfa3br.15", 0x0000002, 0x400000, CRC(3283878c) SHA1(e879ad81be09f73949c188e45506f63a114999c9) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfa3br.17", 0x0000004, 0x400000, CRC(869e0ae2) SHA1(30e018f3b38dbdac6cd1d228865627811886624f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfa3br.19", 0x0000006, 0x400000, CRC(81e0ebfa) SHA1(449b7afc0c88edbab51b27abef4be5ff3698470c) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfa3u.key", 0x000000, 0x000014, CRC(4a8f98c1) SHA1(11953de12ed8fbb6f60ad03b1ba5e22a429b7cfa) ) +ROM_END + +ROM_START( sfa3dp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfa3dp.03", 0x000000, 0x80000, CRC(9411ced4) SHA1(45c963125242eb78992d7d13c3f773f00115ba97) ) + ROM_LOAD16_WORD_SWAP( "sfa3dp.04", 0x080000, 0x80000, CRC(01a7b266) SHA1(32bec1fa10641c6c155e71827aaa9853e946f8c6) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfa3.key", 0x000000, 0x000014, CRC(54fa39c6) SHA1(a0d2f8e697a7a4201762cb02842581840b2a7f78) ) +ROM_END + +ROM_START( sfa3sp2 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfa3sp2.03", 0x000000, 0x80000, CRC(41b961b4) SHA1(e2865fa71b647b4a8a86cc260b13d6f9616859fa) ) + ROM_LOAD16_WORD_SWAP( "sz3e.04c", 0x080000, 0x80000, CRC(5ad3f721) SHA1(fec11cc5f63593f0181eb28ae85ad916686793eb) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfa3.key", 0x000000, 0x000014, CRC(54fa39c6) SHA1(a0d2f8e697a7a4201762cb02842581840b2a7f78) ) +ROM_END + +ROM_START( sfa3spp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfa3spp.03", 0x000000, 0x80000, CRC(8267ee23) SHA1(ff86b54bcc7bdfb95bd537a3be2c03093c6865e1) ) + ROM_LOAD16_WORD_SWAP( "sz3e.04c", 0x080000, 0x80000, CRC(5ad3f721) SHA1(fec11cc5f63593f0181eb28ae85ad916686793eb) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfa3.key", 0x000000, 0x000014, CRC(54fa39c6) SHA1(a0d2f8e697a7a4201762cb02842581840b2a7f78) ) +ROM_END + +ROM_START( sfa3uhd ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfa3uhd.03", 0x000000, 0x80000, CRC(eb1a8aeb) SHA1(fc6ae740eeeeb1c2a0e65b154f81904e59925a50) ) + ROM_LOAD16_WORD_SWAP( "sz3u.04c", 0x080000, 0x80000, CRC(5f78f0e7) SHA1(f4df30fd3515fe9f1125f470b96028052c61f57b) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfa3u.key", 0x000000, 0x000014, CRC(4a8f98c1) SHA1(11953de12ed8fbb6f60ad03b1ba5e22a429b7cfa) ) +ROM_END + ROM_START( sfaud ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sfzu_d.03d", 0x000000, 0x80000, CRC(9f2ff577) SHA1(e78d7e8e0a5703dea09aed2ac4055d45844cead5) ) ROM_LOAD16_WORD_SWAP( "sfz.04b", 0x080000, 0x80000, CRC(8b73b0e5) SHA1(5318761f615c21395366b5333e75eaaa73ef2073) ) ROM_LOAD16_WORD_SWAP( "sfz.05a", 0x100000, 0x80000, CRC(0810544d) SHA1(5f39bda3e7b16508eb58e5a2e0cc58c09cf428ce) ) @@ -540,7 +815,7 @@ ROM_END ROM_START( sfz2abr ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "szabr.03", 0x000000, 0x80000, CRC(0e8e719b) SHA1(ef013adf386925c68f3d38159adfe447c8f259de) ) ROM_LOAD16_WORD_SWAP( "szabr.04", 0x080000, 0x80000, CRC(bc7271a0) SHA1(601a0e21926a1d9aebebf41e6dc08523b6773338) ) ROM_LOAD16_WORD_SWAP( "szabr.05", 0x100000, 0x80000, CRC(e19eee58) SHA1(f0a2f8606136450c375d9b43f182e4cee2ec1208) ) @@ -571,9 +846,329 @@ ROM_START( sfz2abr ) ROM_LOAD( "sfz2al.key", 0x000000, 0x000014, CRC(2904963e) SHA1(f4fa44646746ab4c6f2e76eaba57a7aee32e2933) ) ROM_END +ROM_START( sfz2ajhp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfzajhp.03", 0x000000, 0x80000, CRC(b2d81a68) SHA1(f59d1417fed645d1b4edec47195cf2e85d1c4fc4) ) + ROM_LOAD16_WORD_SWAP( "szaj.04a", 0x080000, 0x80000, CRC(e7ca87c7) SHA1(e44c930b27431dd2b983d93471a440d292e7a8bb) ) + ROM_LOAD16_WORD_SWAP( "szaj.05a", 0x100000, 0x80000, CRC(c88ebf88) SHA1(e37cf232fc70b9a3254dea99754e288232f04e25) ) + ROM_LOAD16_WORD_SWAP( "szaj.06a", 0x180000, 0x80000, CRC(35ed5b7a) SHA1(b03cb92f594eb35fa374445f74930e9040a2baff) ) + ROM_LOAD16_WORD_SWAP( "szaj.07a", 0x200000, 0x80000, CRC(975dcb3e) SHA1(a2ca8e5a768e49cce9e2137ec0dcba9337ed2ad5) ) + ROM_LOAD16_WORD_SWAP( "szaj.08a", 0x280000, 0x80000, CRC(dc73f2d7) SHA1(09fa10e7d1ff5f0dac87a6cf3d66730e3ab9ad25) ) + + ROM_REGION( 0x1400000, "gfx", 0 ) + ROMX_LOAD( "sza.13m", 0x0000000, 0x400000, CRC(4d1f1f22) SHA1(659fb4305bcf0cbbbbec97ede6e68a8323b13308) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.15m", 0x0000002, 0x400000, CRC(19cea680) SHA1(4cb88963a0fbcef191c8419b6379387c01b4c81e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.17m", 0x0000004, 0x400000, CRC(e01b4588) SHA1(c2936608fd75ff6cd5fa94c6d6d6f0c77c44a450) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.19m", 0x0000006, 0x400000, CRC(0feeda64) SHA1(f5b350601437bd94b70d97feb23d791df19da6b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.14m", 0x1000000, 0x100000, CRC(0560c6aa) SHA1(f2bed3a8efef18052b51a7f0f6a888a18db813a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.16m", 0x1000002, 0x100000, CRC(ae940f87) SHA1(39ee26333abbe302ba76dced0196a2e6b3b1d02a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.18m", 0x1000004, 0x100000, CRC(4bc3c8bc) SHA1(6256963c515bf56f39b6e559afefd653ead56c54) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.20m", 0x1000006, 0x100000, CRC(39e674c0) SHA1(8e771a2d8c2accad0463bccd21d7b23af0c895a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sza.01", 0x00000, 0x08000, CRC(1bc323cf) SHA1(83fbd6e9b327700dc9f1c59700b7385bc3705749) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sza.02", 0x28000, 0x20000, CRC(ba6a5013) SHA1(7814f3e56b69529b9860dd61c3b1e8d700244b03) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sza.11m", 0x000000, 0x200000, CRC(aa47a601) SHA1(a4d1ee89c84a3b9db06469bb66e85293b5aa9ac9) ) + ROM_LOAD16_WORD_SWAP( "sza.12m", 0x200000, 0x200000, CRC(2237bc53) SHA1(96d5693047e4cf1ed10a8ee1905cea267a278e92) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz2alj.key", 0x000000, 0x000014, CRC(4c42320f) SHA1(0fabdab677416c5a8060526d997e6f80b26f9bb3) ) +ROM_END + +ROM_START( sfz2aldp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfzaldp.03", 0x000000, 0x80000, CRC(d6493cc5) SHA1(b7123783b9f77a0ec2e995b599a96f291b178c95) ) + ROM_LOAD16_WORD_SWAP( "sfzaldp.04", 0x080000, 0x80000, CRC(a3f56672) SHA1(7351929b857b710a658a0be7c9fb82edca89ddfe) ) + ROM_LOAD16_WORD_SWAP( "szaj.05a", 0x100000, 0x80000, CRC(c88ebf88) SHA1(e37cf232fc70b9a3254dea99754e288232f04e25) ) + ROM_LOAD16_WORD_SWAP( "szaj.06a", 0x180000, 0x80000, CRC(35ed5b7a) SHA1(b03cb92f594eb35fa374445f74930e9040a2baff) ) + ROM_LOAD16_WORD_SWAP( "szaj.07a", 0x200000, 0x80000, CRC(975dcb3e) SHA1(a2ca8e5a768e49cce9e2137ec0dcba9337ed2ad5) ) + ROM_LOAD16_WORD_SWAP( "szaj.08a", 0x280000, 0x80000, CRC(dc73f2d7) SHA1(09fa10e7d1ff5f0dac87a6cf3d66730e3ab9ad25) ) + + ROM_REGION( 0x1400000, "gfx", 0 ) + ROMX_LOAD( "sza.13m", 0x0000000, 0x400000, CRC(4d1f1f22) SHA1(659fb4305bcf0cbbbbec97ede6e68a8323b13308) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.15m", 0x0000002, 0x400000, CRC(19cea680) SHA1(4cb88963a0fbcef191c8419b6379387c01b4c81e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.17m", 0x0000004, 0x400000, CRC(e01b4588) SHA1(c2936608fd75ff6cd5fa94c6d6d6f0c77c44a450) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.19m", 0x0000006, 0x400000, CRC(0feeda64) SHA1(f5b350601437bd94b70d97feb23d791df19da6b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.14m", 0x1000000, 0x100000, CRC(0560c6aa) SHA1(f2bed3a8efef18052b51a7f0f6a888a18db813a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.16m", 0x1000002, 0x100000, CRC(ae940f87) SHA1(39ee26333abbe302ba76dced0196a2e6b3b1d02a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.18m", 0x1000004, 0x100000, CRC(4bc3c8bc) SHA1(6256963c515bf56f39b6e559afefd653ead56c54) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.20m", 0x1000006, 0x100000, CRC(39e674c0) SHA1(8e771a2d8c2accad0463bccd21d7b23af0c895a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sza.01", 0x00000, 0x08000, CRC(1bc323cf) SHA1(83fbd6e9b327700dc9f1c59700b7385bc3705749) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sza.02", 0x28000, 0x20000, CRC(ba6a5013) SHA1(7814f3e56b69529b9860dd61c3b1e8d700244b03) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sza.11m", 0x000000, 0x200000, CRC(aa47a601) SHA1(a4d1ee89c84a3b9db06469bb66e85293b5aa9ac9) ) + ROM_LOAD16_WORD_SWAP( "sza.12m", 0x200000, 0x200000, CRC(2237bc53) SHA1(96d5693047e4cf1ed10a8ee1905cea267a278e92) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz2alj.key", 0x000000, 0x000014, CRC(4c42320f) SHA1(0fabdab677416c5a8060526d997e6f80b26f9bb3) ) +ROM_END + +ROM_START( sfz2aldp2 ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfzaldp2.03", 0x000000, 0x80000, CRC(67bc6f45) SHA1(d810865d890fc7830078e5dc13002f4447a0b3ea) ) + ROM_LOAD16_WORD_SWAP( "sfzaldp2.04", 0x080000, 0x80000, CRC(b124800a) SHA1(560e708e1296ac3e7e6b74bee99a152a0d1f6894) ) + ROM_LOAD16_WORD_SWAP( "szaj.05a", 0x100000, 0x80000, CRC(c88ebf88) SHA1(e37cf232fc70b9a3254dea99754e288232f04e25) ) + ROM_LOAD16_WORD_SWAP( "szaj.06a", 0x180000, 0x80000, CRC(35ed5b7a) SHA1(b03cb92f594eb35fa374445f74930e9040a2baff) ) + ROM_LOAD16_WORD_SWAP( "szaj.07a", 0x200000, 0x80000, CRC(975dcb3e) SHA1(a2ca8e5a768e49cce9e2137ec0dcba9337ed2ad5) ) + ROM_LOAD16_WORD_SWAP( "szaj.08a", 0x280000, 0x80000, CRC(dc73f2d7) SHA1(09fa10e7d1ff5f0dac87a6cf3d66730e3ab9ad25) ) + + ROM_REGION( 0x1400000, "gfx", 0 ) + ROMX_LOAD( "sza.13m", 0x0000000, 0x400000, CRC(4d1f1f22) SHA1(659fb4305bcf0cbbbbec97ede6e68a8323b13308) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.15m", 0x0000002, 0x400000, CRC(19cea680) SHA1(4cb88963a0fbcef191c8419b6379387c01b4c81e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.17m", 0x0000004, 0x400000, CRC(e01b4588) SHA1(c2936608fd75ff6cd5fa94c6d6d6f0c77c44a450) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.19m", 0x0000006, 0x400000, CRC(0feeda64) SHA1(f5b350601437bd94b70d97feb23d791df19da6b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.14m", 0x1000000, 0x100000, CRC(0560c6aa) SHA1(f2bed3a8efef18052b51a7f0f6a888a18db813a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.16m", 0x1000002, 0x100000, CRC(ae940f87) SHA1(39ee26333abbe302ba76dced0196a2e6b3b1d02a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.18m", 0x1000004, 0x100000, CRC(4bc3c8bc) SHA1(6256963c515bf56f39b6e559afefd653ead56c54) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sza.20m", 0x1000006, 0x100000, CRC(39e674c0) SHA1(8e771a2d8c2accad0463bccd21d7b23af0c895a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sza.01", 0x00000, 0x08000, CRC(1bc323cf) SHA1(83fbd6e9b327700dc9f1c59700b7385bc3705749) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sza.02", 0x28000, 0x20000, CRC(ba6a5013) SHA1(7814f3e56b69529b9860dd61c3b1e8d700244b03) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sza.11m", 0x000000, 0x200000, CRC(aa47a601) SHA1(a4d1ee89c84a3b9db06469bb66e85293b5aa9ac9) ) + ROM_LOAD16_WORD_SWAP( "sza.12m", 0x200000, 0x200000, CRC(2237bc53) SHA1(96d5693047e4cf1ed10a8ee1905cea267a278e92) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz2alj.key", 0x000000, 0x000014, CRC(4c42320f) SHA1(0fabdab677416c5a8060526d997e6f80b26f9bb3) ) +ROM_END + +ROM_START( sfz2jyh ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfz2jyh.03", 0x000000, 0x80000, CRC(4afbba27) SHA1(9bba80417763d3dd9614efc810908ef3d011c49d) ) + ROM_LOAD16_WORD_SWAP( "sz2j.04a", 0x080000, 0x80000, CRC(ae4851a9) SHA1(4771bc22fe1b376b753a68506c012c52bd4b886d) ) + ROM_LOAD16_WORD_SWAP( "sz2.05a", 0x100000, 0x80000, CRC(98e8e992) SHA1(41745b63e6b3888081d189b8315ed3b7526b3d20) ) + ROM_LOAD16_WORD_SWAP( "sz2.06", 0x180000, 0x80000, CRC(5b1d49c0) SHA1(f0a0c894c9cbe2b18e7f59058665949ee0025732) ) + ROM_LOAD16_WORD_SWAP( "sz2j.07a", 0x200000, 0x80000, CRC(d910b2a2) SHA1(aa201660caa9cef993c147a1077c9e7767b34a78) ) + ROM_LOAD16_WORD_SWAP( "sz2.08", 0x280000, 0x80000, CRC(0fe8585d) SHA1(0cd5369a5aa90c98d8dc1ff3342cd4d990631cff) ) + + ROM_REGION( 0x1400000, "gfx", 0 ) + ROMX_LOAD( "sz2.13m", 0x0000000, 0x400000, CRC(4d1f1f22) SHA1(659fb4305bcf0cbbbbec97ede6e68a8323b13308) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.15m", 0x0000002, 0x400000, CRC(19cea680) SHA1(4cb88963a0fbcef191c8419b6379387c01b4c81e) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.17m", 0x0000004, 0x400000, CRC(e01b4588) SHA1(c2936608fd75ff6cd5fa94c6d6d6f0c77c44a450) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.19m", 0x0000006, 0x400000, CRC(0feeda64) SHA1(f5b350601437bd94b70d97feb23d791df19da6b3) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.14m", 0x1000000, 0x100000, CRC(0560c6aa) SHA1(f2bed3a8efef18052b51a7f0f6a888a18db813a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.16m", 0x1000002, 0x100000, CRC(ae940f87) SHA1(39ee26333abbe302ba76dced0196a2e6b3b1d02a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.18m", 0x1000004, 0x100000, CRC(4bc3c8bc) SHA1(6256963c515bf56f39b6e559afefd653ead56c54) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz2.20m", 0x1000006, 0x100000, CRC(39e674c0) SHA1(8e771a2d8c2accad0463bccd21d7b23af0c895a1) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz2.01a", 0x00000, 0x08000, CRC(1bc323cf) SHA1(83fbd6e9b327700dc9f1c59700b7385bc3705749) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz2.02a", 0x28000, 0x20000, CRC(ba6a5013) SHA1(7814f3e56b69529b9860dd61c3b1e8d700244b03) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz2.11m", 0x000000, 0x200000, CRC(aa47a601) SHA1(a4d1ee89c84a3b9db06469bb66e85293b5aa9ac9) ) + ROM_LOAD16_WORD_SWAP( "sz2.12m", 0x200000, 0x200000, CRC(2237bc53) SHA1(96d5693047e4cf1ed10a8ee1905cea267a278e92) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz2j.key", 0x000000, 0x000014, CRC(455bd098) SHA1(6a928a2d44f416ccdb0c09a8dd7466ac12f38110) ) +ROM_END + + +ROM_START( sfz3jb ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfz3jb.03", 0x000000, 0x80000, CRC(d7eca311) SHA1(cb2156bb5b545782bf4c0387ba6995136d14452d) ) + ROM_LOAD16_WORD_SWAP( "sfz3jb.04", 0x080000, 0x80000, CRC(ee836561) SHA1(9b3f6a7a7b11b76e4849698c7ce5f09c23bcdad0) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz3j.key", 0x000000, 0x000014, CRC(d30cca8d) SHA1(b05869902d4d5968d5f79ed6165eb4b78e1ddcdd) ) +ROM_END + +ROM_START( sfz3jemb ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfz3jemb.03", 0x000000, 0x80000, CRC(1e103c5e) SHA1(2a96b8f62f4dcefadb4485c60e40074a6357a22a) ) + ROM_LOAD16_WORD_SWAP( "sz3j.04c", 0x080000, 0x80000, CRC(fcb31228) SHA1(093f40083b5a4e4cae433d5856c48014063fe6ad) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz3j.key", 0x000000, 0x000014, CRC(d30cca8d) SHA1(b05869902d4d5968d5f79ed6165eb4b78e1ddcdd) ) +ROM_END + +ROM_START( sfz3jhp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfz3jhp.03", 0x000000, 0x80000, CRC(5719fd0c) SHA1(edfdbbc36173a00652ef136005e55171b446b6c2) ) + ROM_LOAD16_WORD_SWAP( "sz3j.04c", 0x080000, 0x80000, CRC(fcb31228) SHA1(093f40083b5a4e4cae433d5856c48014063fe6ad) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz3j.key", 0x000000, 0x000014, CRC(d30cca8d) SHA1(b05869902d4d5968d5f79ed6165eb4b78e1ddcdd) ) +ROM_END + +ROM_START( sfz3jsep ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfz3jsep.03", 0x000000, 0x80000, CRC(248da619) SHA1(54155279822dc8f754d753c696eeec1fd0e90c18) ) + ROM_LOAD16_WORD_SWAP( "sz3j.04c", 0x080000, 0x80000, CRC(fcb31228) SHA1(093f40083b5a4e4cae433d5856c48014063fe6ad) ) + ROM_LOAD16_WORD_SWAP( "sz3.05c", 0x100000, 0x80000, CRC(57fd0a40) SHA1(bc2d5f4d57117bbf58b1adb088e00424ef489e92) ) + ROM_LOAD16_WORD_SWAP( "sz3.06c", 0x180000, 0x80000, CRC(f6305f8b) SHA1(3fd1ebdbad96103aca604e950b488e52460a71ec) ) + ROM_LOAD16_WORD_SWAP( "sz3.07c", 0x200000, 0x80000, CRC(6eab0f6f) SHA1(f8d093dda65cf4e8a3000dc1b96355bb03dcb495) ) + ROM_LOAD16_WORD_SWAP( "sz3.08c", 0x280000, 0x80000, CRC(910c4a3b) SHA1(dbd41280f9b16ad6a5b8f12092549970349395f1) ) + ROM_LOAD16_WORD_SWAP( "sz3.09c", 0x300000, 0x80000, CRC(b29e5199) SHA1(c6c215eb5aa37f678a9cafcbd8620969fb5ca12f) ) + ROM_LOAD16_WORD_SWAP( "sz3.10b", 0x380000, 0x80000, CRC(deb2ff52) SHA1(0aa4722aad68a04164946c78bf05752f947b4322) ) + + ROM_REGION( 0x2000000, "gfx", 0 ) + ROMX_LOAD( "sz3.13m", 0x0000000, 0x400000, CRC(0f7a60d9) SHA1(c69e0ee22537312909dacc86d2e4be319d54e426) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.15m", 0x0000002, 0x400000, CRC(8e933741) SHA1(f4ac4bfe830dc7df9fe4f680e4e0c053e7cbd8fe) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.17m", 0x0000004, 0x400000, CRC(d6e98147) SHA1(37f331fbb1284db446faecade6f484f58c0e1b2a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.19m", 0x0000006, 0x400000, CRC(f31a728a) SHA1(f14136564648f006c1b74afda78349f260524b5f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.14m", 0x1000000, 0x400000, CRC(5ff98297) SHA1(9e0ce43380b776c7a03872bafd4856f6fa60bda7) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.16m", 0x1000002, 0x400000, CRC(52b5bdee) SHA1(7918204dc457f7a146d8fb8cf7242dfed3109fd8) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.18m", 0x1000004, 0x400000, CRC(40631ed5) SHA1(c18c56822b90a71ca5fbdf3440eb2671011f3d8f) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sz3.20m", 0x1000006, 0x400000, CRC(763409b4) SHA1(af60a5116c1ca9050366a35ea29128921867f3cc) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sz3.01", 0x00000, 0x08000, CRC(de810084) SHA1(fd0b969b732921ed8b40c16fbfa30ee09c7a7cbd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sz3.02", 0x28000, 0x20000, CRC(72445dc4) SHA1(14fca7596ac45ba655016eef5b6120f9f9671c23) ) + + ROM_REGION( 0x800000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sz3.11m", 0x000000, 0x400000, CRC(1c89eed1) SHA1(649a0b0a3eb72e2e69e9fb1ac51a58b70daa39f3) ) + ROM_LOAD16_WORD_SWAP( "sz3.12m", 0x400000, 0x400000, CRC(f392b13a) SHA1(fa04ce0370144a49bd1d5acd873eef87b0dc9d15) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfz3j.key", 0x000000, 0x000014, CRC(d30cca8d) SHA1(b05869902d4d5968d5f79ed6165eb4b78e1ddcdd) ) +ROM_END + + +ROM_START( sfzjboss ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfzjboss.03", 0x000000, 0x80000, CRC(0a2e2f39) SHA1(654e05c1598ec932de03fd1ff8b9fa66ec4ceb60) ) + ROM_LOAD16_WORD_SWAP( "sfz.04b", 0x080000, 0x80000, CRC(8b73b0e5) SHA1(5318761f615c21395366b5333e75eaaa73ef2073) ) + ROM_LOAD16_WORD_SWAP( "sfz.05a", 0x100000, 0x80000, CRC(0810544d) SHA1(5f39bda3e7b16508eb58e5a2e0cc58c09cf428ce) ) + ROM_LOAD16_WORD_SWAP( "sfzjboss.06", 0x180000, 0x80000, CRC(b6c4fec7) SHA1(602c9acb8034219334df05ff4d5dc67514823182) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROM_FILL( 0x000000, 0x800000, 0x00 ) + ROMX_LOAD( "sfz.14m", 0x800000, 0x200000, CRC(90fefdb3) SHA1(5eb28c8de57acfeaefebdd01509c7d9ba5244705) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.16m", 0x800002, 0x200000, CRC(5354c948) SHA1(07588f1ba6addc04fef3274c971174aaf3e632ab) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.18m", 0x800004, 0x200000, CRC(41a1e790) SHA1(ce25dad542308691dbe9606b26279bbd59ea4b81) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.20m", 0x800006, 0x200000, CRC(a549df98) SHA1(f054e95df650a891ef56da8bfb31cb2c945a9aed) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfz.01", 0x00000, 0x08000, CRC(ffffec7d) SHA1(75b4aef001b72a0f571b51b2b97803facc1832dd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfz.02", 0x28000, 0x20000, CRC(45f46a08) SHA1(e32dbd27b52ab708278045b5a829376e55a4ca81) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfz.11m", 0x000000, 0x200000, CRC(c4b093cd) SHA1(256526bb693a0b72443f047e060304c9b739acd1) ) + ROM_LOAD16_WORD_SWAP( "sfz.12m", 0x200000, 0x200000, CRC(8bdbc4b4) SHA1(0e21c9a75a17a7e7dfd8bb51098c2b9dc4c933ec) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfzj.key", 0x000000, 0x000014, CRC(355d85b8) SHA1(5da2c407852ce7b28153f3f94de8328802ff2f2d) ) +ROM_END + +ROM_START( sfzjyh ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "sfzjyh.03", 0x000000, 0x80000, CRC(6b0366bf) SHA1(6138f48027beaba73cc744ffc75589fe26ec1339) ) + ROM_LOAD16_WORD_SWAP( "sfz.04b", 0x080000, 0x80000, CRC(8b73b0e5) SHA1(5318761f615c21395366b5333e75eaaa73ef2073) ) + ROM_LOAD16_WORD_SWAP( "sfz.05a", 0x100000, 0x80000, CRC(0810544d) SHA1(5f39bda3e7b16508eb58e5a2e0cc58c09cf428ce) ) + ROM_LOAD16_WORD_SWAP( "sfzjyh.06", 0x180000, 0x80000, CRC(e7bb5d20) SHA1(0f2e4516ba93f02e6869b182d225718e845d1093) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROM_FILL( 0x000000, 0x800000, 0x00 ) + ROMX_LOAD( "sfz.14m", 0x800000, 0x200000, CRC(90fefdb3) SHA1(5eb28c8de57acfeaefebdd01509c7d9ba5244705) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.16m", 0x800002, 0x200000, CRC(5354c948) SHA1(07588f1ba6addc04fef3274c971174aaf3e632ab) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.18m", 0x800004, 0x200000, CRC(41a1e790) SHA1(ce25dad542308691dbe9606b26279bbd59ea4b81) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfz.20m", 0x800006, 0x200000, CRC(a549df98) SHA1(f054e95df650a891ef56da8bfb31cb2c945a9aed) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfz.01", 0x00000, 0x08000, CRC(ffffec7d) SHA1(75b4aef001b72a0f571b51b2b97803facc1832dd) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfz.02", 0x28000, 0x20000, CRC(45f46a08) SHA1(e32dbd27b52ab708278045b5a829376e55a4ca81) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfz.11m", 0x000000, 0x200000, CRC(c4b093cd) SHA1(256526bb693a0b72443f047e060304c9b739acd1) ) + ROM_LOAD16_WORD_SWAP( "sfz.12m", 0x200000, 0x200000, CRC(8bdbc4b4) SHA1(0e21c9a75a17a7e7dfd8bb51098c2b9dc4c933ec) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "sfzj.key", 0x000000, 0x000014, CRC(355d85b8) SHA1(5da2c407852ce7b28153f3f94de8328802ff2f2d) ) +ROM_END + ROM_START( sgemfch ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "pcfu.03", 0x000000, 0x80000, CRC(ac2e8566) SHA1(5975aae46bded231c0f478f40c7257434ade36b0) ) ROM_LOAD16_WORD_SWAP( "pcf.04", 0x080000, 0x80000, CRC(f4314c96) SHA1(c40ed74039bf0096eb3648b7243a8e697638e0a6) ) ROM_LOAD16_WORD_SWAP( "pcf.05", 0x100000, 0x80000, CRC(215655f6) SHA1(242c0f4401520f2a3b0deafc3a807b18b987e496) ) @@ -605,7 +1200,7 @@ ROM_END ROM_START( spf2tb ) - ROM_REGION(CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION(CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "pzfu_boss.03a", 0x000000, 0x80000, CRC(ca1f3e42) SHA1(784214517f3ac3f5f727a18f50992d4fa3417726) ) ROM_LOAD16_WORD_SWAP( "pzf.04", 0x080000, 0x80000, CRC(b80649e2) SHA1(5bfccd656aea7ff82e9a20bb5856f4ab99b5a007) ) @@ -631,7 +1226,7 @@ ROM_END ROM_START( ssf2r1d ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "ssfud.03a", 0x000000, 0x80000, CRC(fad5daf8) SHA1(5bed5d5af8dffc54d3b3371274a3905f46384f79) ) ROM_LOAD16_WORD_SWAP( "ssfud.04a", 0x080000, 0x80000, CRC(0d31af65) SHA1(7e903e18cb899627fedd8ad92594b75b5d8ee8fd) ) ROM_LOAD16_WORD_SWAP( "ssfud.05", 0x100000, 0x80000, CRC(75c651ef) SHA1(8c6f60d3cf10d802190438c403a719bc30ccbeaa) ) @@ -667,7 +1262,7 @@ ROM_START( ssf2r1d ) ROM_END ROM_START( ssf2td ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "sfxe_d.03c", 0x000000, 0x80000, CRC(ed99d850) SHA1(d2dcb8395d630fcd1776fd32a9c685646e1f18be) ) ROM_LOAD16_WORD_SWAP( "sfxe_d.04a", 0x080000, 0x80000, CRC(38d9b364) SHA1(814e67441a9d92ed89edf20dacb17a0f100020e3) ) ROM_LOAD16_WORD_SWAP( "sfxe_d.05", 0x100000, 0x80000, CRC(c63358d0) SHA1(dde4d9e9adce4dee02322c0fd71615eed0af62e6) ) @@ -703,6 +1298,264 @@ ROM_START( ssf2td ) ROM_LOAD( "phoenix.key", 0x000000, 0x000014, CRC(2cf772b0) SHA1(eff33c65a4f3862c231f9e4d6fefa7b34398dbf2) ) ROM_END +ROM_START( ssf2tfp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2tfp.03", 0x000000, 0x80000, CRC(8f7d4954) SHA1(ace9981370b8f6df3186c9d9a1d3a614cc519af1) ) + ROM_LOAD16_WORD_SWAP( "sfxe.04a", 0x080000, 0x80000, CRC(d0bc29c6) SHA1(d9f89bcd79cba26db2100a00dd7bd8ee6ecb75f3) ) + ROM_LOAD16_WORD_SWAP( "sfxe.05", 0x100000, 0x80000, CRC(65222964) SHA1(025bb708dc5b6365cc7fe60fc3f242511ad8f384) ) + ROM_LOAD16_WORD_SWAP( "sfxe.06a", 0x180000, 0x80000, CRC(8fe9f531) SHA1(b5d9ed498f730fdb968992bdec33605db1a007f4) ) + ROM_LOAD16_WORD_SWAP( "sfxe.07", 0x200000, 0x80000, CRC(8a7d0cb6) SHA1(27ea0cea73a93c27257bf2a170d1deaf938cc311) ) + ROM_LOAD16_WORD_SWAP( "sfxe.08", 0x280000, 0x80000, CRC(74c24062) SHA1(f3eca09e0544c6aa46b0c4bead2246ab1e9a97d9) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2t.key", 0x000000, 0x000014, CRC(524d608e) SHA1(fcd2b9a1a640a0dee4a674dc9cfb3975466f7757) ) +ROM_END + +ROM_START( ssf2tfr ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2tfr.03", 0x000000, 0x80000, CRC(c8c491d1) SHA1(5e12ccd36c8cd086d3d628e7f121aefcbc17340e) ) + ROM_LOAD16_WORD_SWAP( "ssf2tfr.04", 0x080000, 0x80000, CRC(b018ceea) SHA1(75fa14f93c82ade94713556cffcfd17dfcef3e35) ) + ROM_LOAD16_WORD_SWAP( "sfxe.05", 0x100000, 0x80000, CRC(65222964) SHA1(025bb708dc5b6365cc7fe60fc3f242511ad8f384) ) + ROM_LOAD16_WORD_SWAP( "sfxe.06a", 0x180000, 0x80000, CRC(8fe9f531) SHA1(b5d9ed498f730fdb968992bdec33605db1a007f4) ) + ROM_LOAD16_WORD_SWAP( "sfxe.07", 0x200000, 0x80000, CRC(8a7d0cb6) SHA1(27ea0cea73a93c27257bf2a170d1deaf938cc311) ) + ROM_LOAD16_WORD_SWAP( "sfxe.08", 0x280000, 0x80000, CRC(74c24062) SHA1(f3eca09e0544c6aa46b0c4bead2246ab1e9a97d9) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2t.key", 0x000000, 0x000014, CRC(524d608e) SHA1(fcd2b9a1a640a0dee4a674dc9cfb3975466f7757) ) +ROM_END + +ROM_START( ssf2tpls ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2tpls.03", 0x000000, 0x80000, CRC(abd7a3e0) SHA1(088166ab28e7a3abf90720c1c6108ff8946b6f7b) ) + ROM_LOAD16_WORD_SWAP( "ssf2tpls.04", 0x080000, 0x80000, CRC(94a4434b) SHA1(1729bed0121995ddffc21b3d3841f6eaddab8064) ) + ROM_LOAD16_WORD_SWAP( "sfxe.05", 0x100000, 0x80000, CRC(65222964) SHA1(025bb708dc5b6365cc7fe60fc3f242511ad8f384) ) + ROM_LOAD16_WORD_SWAP( "sfxe.06a", 0x180000, 0x80000, CRC(8fe9f531) SHA1(b5d9ed498f730fdb968992bdec33605db1a007f4) ) + ROM_LOAD16_WORD_SWAP( "sfxe.07", 0x200000, 0x80000, CRC(8a7d0cb6) SHA1(27ea0cea73a93c27257bf2a170d1deaf938cc311) ) + ROM_LOAD16_WORD_SWAP( "sfxe.08", 0x280000, 0x80000, CRC(74c24062) SHA1(f3eca09e0544c6aa46b0c4bead2246ab1e9a97d9) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2t.key", 0x000000, 0x000014, CRC(524d608e) SHA1(fcd2b9a1a640a0dee4a674dc9cfb3975466f7757) ) +ROM_END + +ROM_START( ssf2xjhy ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2xjhy.03", 0x000000, 0x80000, CRC(62b59bf0) SHA1(b8ef9a39dd594f243dab3b440c871730356403c8) ) + ROM_LOAD16_WORD_SWAP( "sfxj.04a", 0x080000, 0x80000, CRC(af7767b4) SHA1(61e7364408bf07c01634913c112b6245acce48ab) ) + ROM_LOAD16_WORD_SWAP( "sfxj.05", 0x100000, 0x80000, CRC(f4ff18f5) SHA1(aa713c9e1a2eba35bf1c9b40bb262ff7e46b9ce4) ) + ROM_LOAD16_WORD_SWAP( "sfxj.06a", 0x180000, 0x80000, CRC(260d0370) SHA1(5339cf87000caef74d491815391be59cfd701c8b) ) + ROM_LOAD16_WORD_SWAP( "sfxj.07", 0x200000, 0x80000, CRC(1324d02a) SHA1(c23a6ea09819bd33b6e2f58aa28c317ce53a46a0) ) + ROM_LOAD16_WORD_SWAP( "sfxj.08", 0x280000, 0x80000, CRC(2de76f10) SHA1(8cbe96dfeaa41306caa2819b82272ce3b0b9f926) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2xj.key", 0x000000, 0x000014, CRC(160d1424) SHA1(187baff83b54acfdcedd9b9222a4cc768040c622) ) +ROM_END + +ROM_START( ssf2xjjs ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2xjjs.03", 0x000000, 0x80000, CRC(183e95df) SHA1(009bfc636f67481ae0147a96e9a9b8eaa6137e52) ) + ROM_LOAD16_WORD_SWAP( "ssf2xjjs.04", 0x080000, 0x80000, CRC(6ce1a901) SHA1(dd8d82b744bb40d1c07ad8feabfc02c62cd868aa) ) + ROM_LOAD16_WORD_SWAP( "sfxj.05", 0x100000, 0x80000, CRC(f4ff18f5) SHA1(aa713c9e1a2eba35bf1c9b40bb262ff7e46b9ce4) ) + ROM_LOAD16_WORD_SWAP( "sfxj.06a", 0x180000, 0x80000, CRC(260d0370) SHA1(5339cf87000caef74d491815391be59cfd701c8b) ) + ROM_LOAD16_WORD_SWAP( "sfxj.07", 0x200000, 0x80000, CRC(1324d02a) SHA1(c23a6ea09819bd33b6e2f58aa28c317ce53a46a0) ) + ROM_LOAD16_WORD_SWAP( "sfxj.08", 0x280000, 0x80000, CRC(2de76f10) SHA1(8cbe96dfeaa41306caa2819b82272ce3b0b9f926) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2xj.key", 0x000000, 0x000014, CRC(160d1424) SHA1(187baff83b54acfdcedd9b9222a4cc768040c622) ) +ROM_END + +ROM_START( ssf2xjnc ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2xjnc.03", 0x000000, 0x80000, CRC(c0b5e5b8) SHA1(8cedb674aac5918dbb38d2efa4036ea602b92f8a) ) + ROM_LOAD16_WORD_SWAP( "ssf2xjnc.04", 0x080000, 0x80000, CRC(4e17998f) SHA1(24b10b541191dfd522f024259d530451785abc2d) ) + ROM_LOAD16_WORD_SWAP( "sfxj.05", 0x100000, 0x80000, CRC(f4ff18f5) SHA1(aa713c9e1a2eba35bf1c9b40bb262ff7e46b9ce4) ) + ROM_LOAD16_WORD_SWAP( "sfxj.06a", 0x180000, 0x80000, CRC(260d0370) SHA1(5339cf87000caef74d491815391be59cfd701c8b) ) + ROM_LOAD16_WORD_SWAP( "sfxj.07", 0x200000, 0x80000, CRC(1324d02a) SHA1(c23a6ea09819bd33b6e2f58aa28c317ce53a46a0) ) + ROM_LOAD16_WORD_SWAP( "ssf2xjnc.08", 0x280000, 0x80000, CRC(6745612c) SHA1(d21b010d25d19b1c31b7f02d85978cd4a4444d60) ) + ROM_LOAD16_WORD_SWAP( "sfx.09", 0x300000, 0x80000, CRC(642fae3f) SHA1(746df99b826b9837bba267104132161153c1daff) ) + + ROM_REGION( 0x1000000, "gfx", 0 ) + ROMX_LOAD( "sfx.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.21m", 0xc00000, 0x100000, CRC(e32854af) SHA1(1a5e11e9caa2b96108d89ae660ef1f6bcb469a74) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.23m", 0xc00002, 0x100000, CRC(760f2927) SHA1(491e28e14ee06821fc9e709efa7b91313bc0c2db) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.25m", 0xc00004, 0x100000, CRC(1ee90208) SHA1(83df1d9953560edddc2951ea426d29fb014e6a8a) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "sfx.27m", 0xc00006, 0x100000, CRC(f814400f) SHA1(ad6921af36d0bd5dfb89b1fb53c3ca3fd92d7204) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "sfx.01", 0x00000, 0x08000, CRC(b47b8835) SHA1(c8b2d50fe3a329bd0592ea160d505155d873dab1) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + ROM_LOAD( "sfx.02", 0x28000, 0x20000, CRC(0022633f) SHA1(cab3afc79da53e3887eb1ccd1f4d19790728e6cd) ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD16_WORD_SWAP( "sfx.11m", 0x000000, 0x200000, CRC(9bdbd476) SHA1(a8520f77f30b97aae36408e0c4ca1ebbde1808a5) ) + ROM_LOAD16_WORD_SWAP( "sfx.12m", 0x200000, 0x200000, CRC(a05e3aab) SHA1(d4eb9cae66c74e956569fea8b815156fbd420f83) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2xj.key", 0x000000, 0x000014, CRC(160d1424) SHA1(187baff83b54acfdcedd9b9222a4cc768040c622) ) +ROM_END + +ROM_START( ssf2zhp ) + ROM_REGION( CODE_SIZE, "maincpu", 0 ) + ROM_LOAD16_WORD_SWAP( "ssf2zhp.03", 0x000000, 0x80000, CRC(e7dcfc8d) SHA1(7a6e703a5cfd9fbdceab84e5f5e0d443e6c95dcc) ) + ROM_LOAD16_WORD_SWAP( "ssfe.04", 0x080000, 0x80000, CRC(b082aa67) SHA1(ca26b4bb1947cb30eaf6b61f606b859d18da4c4c) ) + ROM_LOAD16_WORD_SWAP( "ssfe.05", 0x100000, 0x80000, CRC(02b9c137) SHA1(ba624441e1b4bfb67c71f6a116fe43539eaa4a15) ) + ROM_LOAD16_WORD_SWAP( "ssfe.06", 0x180000, 0x80000, CRC(70d470c5) SHA1(ba03c8f4c76f72f4483e91547e03d1a0cf6db485) ) + ROM_LOAD16_WORD_SWAP( "ssfe.07", 0x200000, 0x80000, CRC(2409001d) SHA1(f532ebb2efbb8f8ba311d10ff897490352c87f97) ) + + ROM_REGION( 0xc00000, "gfx", 0 ) + ROMX_LOAD( "ssf.13m", 0x000000, 0x200000, CRC(cf94d275) SHA1(bf2a6d98a656d1cb5734da7836686242d3211137) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.15m", 0x000002, 0x200000, CRC(5eb703af) SHA1(4b302dbb66e8a5c2ad92798699391e981bada427) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.17m", 0x000004, 0x200000, CRC(ffa60e0f) SHA1(b21b1c749a8241440879bf8e7cb33968ccef97e5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.19m", 0x000006, 0x200000, CRC(34e825c5) SHA1(4d320fc96d1ef0b9928a8ce801734245a4c097a5) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.14m", 0x800000, 0x100000, CRC(b7cc32e7) SHA1(0f4d26af338dab5dce5b7b34d32ad0c573434ace) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.16m", 0x800002, 0x100000, CRC(8376ad18) SHA1(f4456833fb396e6501f4174c0fe5fd63ea40a188) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.18m", 0x800004, 0x100000, CRC(f5b1b336) SHA1(4b060501e56b9d61294748da5387cdae5280ec4d) , ROM_GROUPWORD | ROM_SKIP(6) ) + ROMX_LOAD( "ssf.20m", 0x800006, 0x100000, CRC(459d5c6b) SHA1(32b11ba7a12004aff810d719bff7508204c7b7c0) , ROM_GROUPWORD | ROM_SKIP(6) ) + + ROM_REGION( QSOUND_SIZE, "audiocpu", 0 ) /* 64k for the audio CPU (+banks) */ + ROM_LOAD( "ssf.01", 0x00000, 0x08000, CRC(eb247e8c) SHA1(24296c18d9b1136d69712bf1c9d9d15463041e83) ) + ROM_CONTINUE( 0x10000, 0x18000 ) + + ROM_REGION( 0x400000, "qsound", 0 ) /* QSound samples */ + ROM_LOAD( "ssf.q01", 0x000000, 0x080000, CRC(a6f9da5c) SHA1(6d19f83a01bd25b838d5c2871f7964529d926c98) ) + ROM_LOAD( "ssf.q02", 0x080000, 0x080000, CRC(8c66ae26) SHA1(32a82aee6ed4480e5a990f9af161734c7c0a1403) ) + ROM_LOAD( "ssf.q03", 0x100000, 0x080000, CRC(695cc2ca) SHA1(c2675f0233608b76de528d2a6ef19846d1348060) ) + ROM_LOAD( "ssf.q04", 0x180000, 0x080000, CRC(9d9ebe32) SHA1(9b26329370041374f1a90b479a172d2bc2801c4d) ) + ROM_LOAD( "ssf.q05", 0x200000, 0x080000, CRC(4770e7b7) SHA1(0e764f0befb9227b0b36508d8ca8ec9be31bcb05) ) + ROM_LOAD( "ssf.q06", 0x280000, 0x080000, CRC(4e79c951) SHA1(1144781d7dc57ef8a6458d982f5c91548ff59e27) ) + ROM_LOAD( "ssf.q07", 0x300000, 0x080000, CRC(cdd14313) SHA1(ebe767a9d4b51dba4282fa0a36a546a88620dd59) ) + ROM_LOAD( "ssf.q08", 0x380000, 0x080000, CRC(6f5a088c) SHA1(6c0b4690479647a99d76335f174be8455b4ff118) ) + + ROM_REGION( 0x20, "key", 0 ) + ROM_LOAD( "ssf2.key", 0x000000, 0x000014, CRC(e469ccbb) SHA1(43d49107e96a4a14f1f25931ad3ae6065958150e) ) +ROM_END + ROM_START( suicide ) ROM_REGION(CODE_SIZE, "maincpu", 0 ) @@ -754,7 +1607,7 @@ ROM_END ROM_START( vampjb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "vampjb.03a", 0x000000, 0x80000, CRC(55c1be82) SHA1(948e1e322945adc775da8b22165697b5c7999b1b) ) ROM_LOAD16_WORD_SWAP( "vampjb.04b", 0x080000, 0x80000, CRC(9c12017e) SHA1(0800802748ce61b01a18c06b61fcb8fd7bb34f62) ) ROM_LOAD16_WORD_SWAP( "vamj.05a", 0x100000, 0x80000, CRC(6c497e92) SHA1(7c1ccdfd77fb50afe024c8402376daaeab641a24) ) @@ -789,7 +1642,7 @@ ROM_END ROM_START( vsav2emb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "vsav2emb.03", 0x000000, 0x80000, CRC(31676894) SHA1(0cb25d691213accb43e81f284d29812de893b296) ) ROM_LOAD16_WORD_SWAP( "vs2j.04", 0x080000, 0x80000, CRC(107c091b) SHA1(bf5c2e4339e1a66b3c819900cc9b723a537adf6b) ) ROM_LOAD16_WORD_SWAP( "vs2j.05", 0x100000, 0x80000, CRC(61979638) SHA1(4d5625a9a06926c1a42c8f6e3a4c943f17750ec2) ) @@ -824,7 +1677,7 @@ ROM_END ROM_START( xmcotajb ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xmcotajb.03", 0x000000, 0x80000, CRC(bd2f0b84) SHA1(2b5c6deb2bb7e10a142a490781231d2ccfceee1c) ) ROM_LOAD16_WORD_SWAP( "xmnj.04b", 0x080000, 0x80000, CRC(54b3fba3) SHA1(47eaff5d36a45e4196f87ed3d02e54d5407e7962) ) // used in xmcotaj2 ROM_LOAD16_WORD_SWAP( "xmn.05", 0x100000, 0x80000, CRC(c3ed62a2) SHA1(4e3317d7ca981e33318822103a16e59f4ce20deb) ) @@ -858,7 +1711,7 @@ ROM_START( xmcotajb ) ROM_END ROM_START( xmcotajphp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xmcotajphp.03", 0x000000, 0x80000, CRC(654c6b83) SHA1(b61d8891edb105ad72a76ee0c1018bc5edc64b6c) ) ROM_LOAD16_WORD_SWAP( "xmnj.04d", 0x080000, 0x80000, CRC(38eed613) SHA1(86ecb58bf03adda705a39a9779862fe2c85cadad) ) ROM_LOAD16_WORD_SWAP( "xmn.05", 0x100000, 0x80000, CRC(c3ed62a2) SHA1(4e3317d7ca981e33318822103a16e59f4ce20deb) ) @@ -893,7 +1746,7 @@ ROM_END ROM_START( xmvsfjphp ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xmvsfjphp.03", 0x000000, 0x80000, CRC(1d46fdba) SHA1(fceec89ca0fa163b0edc8e055a6c7198f3520851) ) ROM_LOAD16_WORD_SWAP( "xvsj.04", 0x080000, 0x80000, CRC(70a59b35) SHA1(786d9b243373024735848f785503c6aa883b1c2f) ) ROM_LOAD16_WORD_SWAP( "xvs.05a", 0x100000, 0x80000, CRC(7db6025d) SHA1(2d74f48f83f45359bfaca28ab686625766af12ee) ) @@ -926,7 +1779,7 @@ ROM_START( xmvsfjphp ) ROM_END ROM_START( xmvsfrm ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xmvsfrm.03", 0x000000, 0x80000, CRC(be94fd2b) SHA1(f668d8fe1932434dfb9aec865a79ddac6c6496ef) ) ROM_LOAD16_WORD_SWAP( "xvse.04d", 0x080000, 0x80000, CRC(5eb9c02e) SHA1(25a392913213b98ce1bbd463bf5e5e10729bde0c) ) ROM_LOAD16_WORD_SWAP( "xvs.05a", 0x100000, 0x80000, CRC(7db6025d) SHA1(2d74f48f83f45359bfaca28ab686625766af12ee) ) @@ -959,7 +1812,7 @@ ROM_START( xmvsfrm ) ROM_END ROM_START( xmvsfryh ) - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "xmvsfryh.03", 0x000000, 0x80000, CRC(ed7c235a) SHA1(c49bfeef0351165ee30c8433feb026acebd7a36a) ) ROM_LOAD16_WORD_SWAP( "xmvsfryh.04", 0x080000, 0x80000, CRC(3a527f69) SHA1(72312d4aeaac07c4b4f91a0301948faf2f17d74d) ) ROM_LOAD16_WORD_SWAP( "xvs.05a", 0x100000, 0x80000, CRC(7db6025d) SHA1(2d74f48f83f45359bfaca28ab686625766af12ee) ) @@ -1008,13 +1861,38 @@ GAME( 2009, mvscjemb, mvsc, cps2, cps2_2p6b, cps_state, cps2, ROT0, " GAME( 1998, mvscjphp, mvsc, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Marvel Vs. Capcom: Clash of Super Heroes (Power hack by Pipi899)", MACHINE_SUPPORTS_SAVE ) GAME( 2016, mvscrcp, mvsc, cps2, cps2_2p6b, cps_state, cps2, ROT0, "CPS-2 Evolved", "Marvel Vs. Capcom RCP", MACHINE_SUPPORTS_SAVE ) GAME( 1998, mvscuh, mvsc, cps2, cps2_2p6b, cps_state, cps2, ROT0, "EGCG", "Marvel Vs. Capcom: Clash of Super Heroes (ExChar hack (EGCG))", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, mshvsemb, mshvsf, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Blackheart", "Marvel Super Heroes Vs. Street Fighter (Easy Moves hack by Blackheart 2009-04-23)", MACHINE_SUPPORTS_SAVE ) +GAME( 1997, mshvsfjh, mshvsf, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Marvel Super Heroes Vs. Street Fighter (Boss hack by Yumeji)", MACHINE_SUPPORTS_SAVE ) +GAME( 1997, mshvsfjphp, mshvsf, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Marvel Super Heroes Vs. Street Fighter (Power hack by Pipi899)", MACHINE_SUPPORTS_SAVE ) GAME( 2009, pfghtjrm, sgemf, cps2, cps2_2p3b, cps_state, cps2, ROT0, "Blackheart", "Pocket Fighter (Easy Moves hack by Blackheart 2009-04-20)", MACHINE_SUPPORTS_SAVE ) GAME( 1996, sfa2h, sfa2, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Alpha 2 (Euro 960229) Boss Hack", MACHINE_SUPPORTS_SAVE ) +GAME( 2005, sfa3br, sfa3, cps2, cps2_2p6bt,cps_state, cps2, ROT0, "Neogeo BR team", "Street Fighter Alpha 3 (Brasil 050513)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfa3dp, sfa3, cps2, cps2_2p6bt,cps_state, cps2, ROT0, "Pipi899", "Street Fighter Alpha 3 (Dragon Edition hack by Pipi899 2009-05-10)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfa3sp2, sfa3, cps2, cps2_2p6bt,cps_state, cps2, ROT0, "Pipi899", "Street Fighter Alpha 3 (Boss Special Fix hack by Pipi899 2009-09-27)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfa3spp, sfa3, cps2, cps2_2p6bt,cps_state, cps2, ROT0, "Pipi899", "Street Fighter Alpha 3 (Boss Special hack by Pipi899 2009-07-03)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfa3uhd, sfa3, cps2, cps2_2p6bt,cps_state, cps2, ROT0, "Dodowang", "Street Fighter Alpha 3 (Revision hack by Dodowang (ECGC))", MACHINE_SUPPORTS_SAVE ) GAME( 1995, sfaud, sfa, dead_cps2, cps2_2p6b, cps_state, cps2, ROT0, "Razoola", "Street Fighter Alpha: Warriors' Dreams (USA 950727 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 1996, sfz2abr, sfa2, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Neogeo BR team", "Street Fighter Zero 2 Alpha (Brasil 061225)", MACHINE_SUPPORTS_SAVE ) // portuguese-brazilian hack fix +GAME( 2008, sfz2ajhp, sfz2al, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Zero 2 Alpha (Enhanced Dan Version hack by Pipi899 2008-12-11)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfz2aldp, sfz2al, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Zero 2 Alpha (Dragon Edition v1.0 hack by Pipi899 2009-03-17)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfz2aldp2, sfz2al, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Zero 2 Alpha (Dragon Edition v2.0 hack by Pipi899 2009-04-24)", MACHINE_SUPPORTS_SAVE ) +GAME( 1996, sfz2jyh, sfa2, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Street Fighter Zero 2 (Boss hack by Yumeji)", MACHINE_SUPPORTS_SAVE ) +GAME( 1998, sfz3jb, sfa3, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Street Fighter Zero 3 (Boss hack by Yumeji)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfz3jemb, sfa3, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Blacheart", "Street Fighter Zero 3 (Easy Moves hack by Blackheart 2009-05-01)", MACHINE_SUPPORTS_SAVE ) +GAME( 1998, sfz3jhp, sfa3, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Zero 3 (Hack by Pipi899)", MACHINE_SUPPORTS_SAVE ) +GAME( 2009, sfz3jsep, sfa3, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Street Fighter Zero 3 (Shin Edition hack by Pipi899 2009-01-01)", MACHINE_SUPPORTS_SAVE ) +GAME( 1995, sfzjboss, sfa, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Street Fighter Zero (Boss hack set 2 by Yumeji)", MACHINE_SUPPORTS_SAVE ) +GAME( 1995, sfzjyh, sfa, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Street Fighter Zero (Boss hack set 1 by Yumeji)", MACHINE_SUPPORTS_SAVE ) GAME( 1997, sgemfch, sgemf, cps2, cps2_2p3b, cps_state, cps2, ROT0, "hack", "Super Gem Fighter Mini Mix (Color remix)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, ssf2r1d, ssf2, dead_cps2, cps2_2p6b, cps_state, cps2, ROT0, "Razoola", "Super Street Fighter II: The New Challengers (ETC 930911 Phoenix Edition)", MACHINE_SUPPORTS_SAVE ) -GAME( 1994, ssf2td, ssf2t, dead_cps2, cps2_2p6b, cps_state, cps2, ROT0, "Eazoola", "Super Street Fighter II Turbo (World 940223 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2td, ssf2t, dead_cps2, cps2_2p6b, cps_state, cps2, ROT0, "Razoola", "Super Street Fighter II Turbo (World 940223 Phoenix Edition) (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2tfp, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Cigarette Patch", "Super Street Fighter II Turbo (French Parody by Cigarette Patch)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2tfr, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "NEOARC", "Super Street Fighter II Turbo (French by NEOARC Team)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2tpls, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "KrysoFun", "Super Street Fighter II Turbo (Plus v0.9 beta KrysoFun hack)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2xjhy, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Yumeji", "Super Street Fighter II X: Grand Master Challenge (Gouki Edition hack by Yumeji)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2xjjs, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "FGCH", "Super Street Fighter II X: Grand Master Challenge (Original Color FGCH hack)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2xjnc, ssf2t, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Shiro", "Super Street Fighter II X: Grand Master Challenge (Nude hack by Shiro)", MACHINE_SUPPORTS_SAVE ) +GAME( 1994, ssf2zhp, ssf2, cps2, cps2_2p6b, cps_state, cps2, ROT0, "Pipi899", "Super Street Fighter II (Easy Move Zangief Edition hack by Pipi899 2009-01-05)", MACHINE_SUPPORTS_SAVE ) GAME( 1996, spf2tb, spf2t, cps2, cps2_2p2b, cps_state, cps2, ROT0, "hack", "Super Puzzle Fighter II Turbo Boss Hack (USA 960620)", MACHINE_SUPPORTS_SAVE ) GAME( 1996, suicide, 0, dead_cps2, cps2_2p2b, cps_state, cps2, ROT0, "Razoola", "Suicide Test", MACHINE_SUPPORTS_SAVE ) GAME( 2015, suicide2, suicide, dead_cps2, cps2_2p2b, cps_state, cps2, ROT0, "Razoola", "Suicide Test v2", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/fcrash.cpp b/docs/release/src/hbmame/drivers/fcrash.cpp index 955c17f621a..90642c4072b 100644 --- a/docs/release/src/hbmame/drivers/fcrash.cpp +++ b/docs/release/src/hbmame/drivers/fcrash.cpp @@ -493,7 +493,8 @@ void cps_state::fcrash_render_sprites( screen_device &screen, bitmap_ind16 &bitm int num_sprites = m_gfxdecode->gfx(2)->elements(); int last_sprite_offset = 0x1ffc; uint16_t *sprite_ram = m_gfxram; - uint16_t tileno,flipx,flipy,colour,xpos,ypos; + uint16_t tileno,colour,xpos,ypos; + bool flipx, flipy; /* if we have separate sprite ram, use it */ if (m_bootleg_sprite_ram) sprite_ram = m_bootleg_sprite_ram.get(); @@ -511,13 +512,16 @@ void cps_state::fcrash_render_sprites( screen_device &screen, bitmap_ind16 &bitm if (tileno >= num_sprites) continue; /* don't render anything outside our tiles */ xpos = sprite_ram[base + pos + 2] & 0x1ff; ypos = sprite_ram[base + pos - 1] & 0x1ff; - flipx = sprite_ram[base + pos + 1] & 0x20; - flipy = sprite_ram[base + pos + 1] & 0x40; + flipx = BIT(sprite_ram[base + pos + 1], 5); + flipy = BIT(sprite_ram[base + pos + 1], 6); colour = sprite_ram[base + pos + 1] & 0x1f; ypos = 256 - ypos - 16; xpos = xpos + m_sprite_x_offset + 49; - m_gfxdecode->gfx(2)->prio_transpen(bitmap,cliprect, tileno, colour, flipx, flipy, xpos, ypos, screen.priority(), 0x02, 15); + if (flip_screen()) + m_gfxdecode->gfx(2)->prio_transpen(bitmap, cliprect, tileno, colour, !flipx, !flipy, 512-16-xpos, 256-16-ypos, screen.priority(), 2, 15); + else + m_gfxdecode->gfx(2)->prio_transpen(bitmap, cliprect, tileno, colour, flipx, flipy, xpos, ypos, screen.priority(), 2, 15); } } } diff --git a/docs/release/src/hbmame/drivers/galaxian.cpp b/docs/release/src/hbmame/drivers/galaxian.cpp index c2fc0bb2bbb..4bf9d52b8ac 100644 --- a/docs/release/src/hbmame/drivers/galaxian.cpp +++ b/docs/release/src/hbmame/drivers/galaxian.cpp @@ -188,14 +188,33 @@ DRIVER_INIT_MEMBER( galaxian_state, trukker ) -/************************************************************ +/*************************************************************** * - * Frogger Sound Test rom - have to disable the watchdog + * Frogger Sound Test rom - watchdog has been disabled. + * You can lengthen the time, but holding down an arrow key + * will still eventually trigger it. * - ************************************************************/ + ***************************************************************/ + +static ADDRESS_MAP_START( tst_frog_map, AS_PROGRAM, 8, galaxian_state ) + ADDRESS_MAP_UNMAP_HIGH + AM_RANGE(0x0000, 0x3fff) AM_ROM + AM_RANGE(0x8000, 0x87ff) AM_RAM + AM_RANGE(0x8800, 0x8800) AM_READNOP //AM_DEVREAD("watchdog", watchdog_timer_device, reset_r) + AM_RANGE(0xa800, 0xabff) AM_MIRROR(0x0400) AM_RAM_WRITE(galaxian_videoram_w) AM_SHARE("videoram") + AM_RANGE(0xb000, 0xb0ff) AM_MIRROR(0x0700) AM_RAM_WRITE(galaxian_objram_w) AM_SHARE("spriteram") + AM_RANGE(0xb808, 0xb808) AM_MIRROR(0x07e3) AM_WRITE(irq_enable_w) + AM_RANGE(0xb80c, 0xb80c) AM_MIRROR(0x07e3) AM_WRITE(galaxian_flip_screen_y_w) + AM_RANGE(0xb810, 0xb810) AM_MIRROR(0x07e3) AM_WRITE(galaxian_flip_screen_x_w) + AM_RANGE(0xb818, 0xb818) AM_MIRROR(0x07e3) AM_WRITE(coin_count_0_w) /* IOPC7 */ + AM_RANGE(0xb81c, 0xb81c) AM_MIRROR(0x07e3) AM_WRITE(coin_count_1_w) /* POUT1 */ + AM_RANGE(0xc000, 0xffff) AM_READWRITE(frogger_ppi8255_r, frogger_ppi8255_w) +ADDRESS_MAP_END static MACHINE_CONFIG_DERIVED( tst_frog, frogger ) - //MCFG_WATCHDOG_VBLANK_INIT(0) + MCFG_CPU_MODIFY("maincpu") + MCFG_CPU_PROGRAM_MAP(tst_frog_map) + MCFG_DEVICE_REMOVE("watchdog") MACHINE_CONFIG_END diff --git a/docs/release/src/hbmame/drivers/m52.cpp b/docs/release/src/hbmame/drivers/m52.cpp index 019930dfb78..7fd49646eab 100644 --- a/docs/release/src/hbmame/drivers/m52.cpp +++ b/docs/release/src/hbmame/drivers/m52.cpp @@ -13,15 +13,15 @@ ROM_START( spatrol ) ROM_LOAD( "mp-s1.1a", 0x7000, 0x1000, CRC(561d3108) SHA1(4998c68a9e9a8002251fa8f07aa1082444a9dc80) ) ROM_REGION( 0x2000, "gfx1", 0 ) - ROM_LOAD( "spatrol.3e", 0x0000, 0x1000, CRC(130709e8) SHA1(fa3d0aca3179073c92a39c50f535d945f9b58725) ) /* chars */ + ROM_LOAD( "spatrol.3e", 0x0000, 0x1000, CRC(130709e8) SHA1(fa3d0aca3179073c92a39c50f535d945f9b58725) ) ROM_LOAD( "spatrol.3f", 0x1000, 0x1000, CRC(1ac58abc) SHA1(1a945c4efa6ef4a7d68cb6cb7b91a76be956837e) ) ROM_REGION( 0x2000, "gfx2", 0 ) - ROM_LOAD( "spatrol.3m", 0x0000, 0x1000, CRC(09e18f9a) SHA1(9f41aacbc5352b8783422fdffef949426bada588) ) /* sprites */ + ROM_LOAD( "spatrol.3m", 0x0000, 0x1000, CRC(09e18f9a) SHA1(9f41aacbc5352b8783422fdffef949426bada588) ) ROM_LOAD( "spatrol.3n", 0x1000, 0x1000, CRC(36b1891e) SHA1(e204c259ca9c37d0843b5c877debf2171c40249a) ) ROM_REGION( 0x1000, "gfx3", 0 ) - ROM_LOAD( "spatrol.3l", 0x0000, 0x1000, CRC(49877023) SHA1(a76b18afb20ab416318812f66bfdd57733441cb5) ) /* background graphics */ + ROM_LOAD( "spatrol.3l", 0x0000, 0x1000, CRC(49877023) SHA1(a76b18afb20ab416318812f66bfdd57733441cb5) ) ROM_REGION( 0x1000, "gfx4", 0 ) ROM_LOAD( "mpe-2.3k", 0x0000, 0x1000, CRC(c7aa1fb0) SHA1(14c6c76e1d0db2c0745e5d6d33ea6945fac8e9ee) ) @@ -31,10 +31,94 @@ ROM_START( spatrol ) ROM_REGION( 0x0340, "proms", 0 ) ROM_LOAD( "mpc-4.2a", 0x0000, 0x0200, CRC(07f99284) SHA1(dfc52958f2520e1ce4446dd4c84c91413bbacf76) ) - ROM_LOAD( "mpc-3.1m", 0x0200, 0x0020, CRC(6a57eff2) SHA1(2d1c12dab5915da2ccd466e39436c88be434d634) ) /* background palette */ - ROM_LOAD( "mpc-1.1f", 0x0220, 0x0020, CRC(26979b13) SHA1(8c41a8cce4f3384c392a9f7a223a50d7be0e14a5) ) /* sprite palette */ - ROM_LOAD( "mpc-2.2h", 0x0240, 0x0100, CRC(7ae4cd97) SHA1(bc0662fac82ffe65f02092d912b2c2b0c7a8ac2b) ) /* sprite lookup table */ + ROM_LOAD( "mpc-3.1m", 0x0200, 0x0020, CRC(6a57eff2) SHA1(2d1c12dab5915da2ccd466e39436c88be434d634) ) + ROM_LOAD( "mpc-1.1f", 0x0220, 0x0020, CRC(26979b13) SHA1(8c41a8cce4f3384c392a9f7a223a50d7be0e14a5) ) + ROM_LOAD( "mpc-2.2h", 0x0240, 0x0100, CRC(7ae4cd97) SHA1(bc0662fac82ffe65f02092d912b2c2b0c7a8ac2b) ) ROM_END GAME( 2008, spatrol, mpatrol, m52, mpatrol, driver_device, 0, ROT0, "Gatinho", "Sponge Patrol", MACHINE_SUPPORTS_SAVE ) + +// alpha1vx, here for playing around with +// Issues: sometimes you die for no reason; and the sprites seem to be missing solidarity and colours +// It's safer to stay near the bottom, you can get through a few levels that way. Keep firing or you will self-destruct within a few seconds. +// The POW bonus (which is made of 4 bytes) only shows the bottom half or the left half... probably a code bug + +static ADDRESS_MAP_START( alpha1vx_map, AS_PROGRAM, 8, m52_state ) + AM_RANGE(0x0000, 0x6fff) AM_ROM + AM_RANGE(0x8000, 0x83ff) AM_RAM_WRITE(m52_videoram_w) AM_SHARE("videoram") + AM_RANGE(0x8400, 0x87ff) AM_RAM_WRITE(m52_colorram_w) AM_SHARE("colorram") + AM_RANGE(0x8800, 0x8800) AM_READNOP // watchdog? HBMAME + AM_RANGE(0xc800, 0xc9ff) AM_WRITEONLY AM_SHARE("spriteram") // bigger or mirrored? + AM_RANGE(0xd000, 0xd000) AM_READ_PORT("IN0") AM_DEVWRITE("irem_audio", irem_audio_device, cmd_w) + AM_RANGE(0xd001, 0xd001) AM_READ_PORT("IN1") AM_WRITE(alpha1v_flipscreen_w) + AM_RANGE(0xd002, 0xd002) AM_READ_PORT("IN2") + AM_RANGE(0xd003, 0xd003) AM_READ_PORT("DSW1") + AM_RANGE(0xd004, 0xd004) AM_READ_PORT("DSW2") + AM_RANGE(0xe000, 0xefff) AM_RAM // bigger or mirrored? +ADDRESS_MAP_END + +static MACHINE_CONFIG_START( alpha1vx, m52_state ) + /* basic machine hardware */ + MCFG_CPU_ADD("maincpu", Z80, MASTER_CLOCK/6) + MCFG_CPU_PROGRAM_MAP(alpha1vx_map) + MCFG_CPU_IO_MAP(main_portmap) + MCFG_CPU_VBLANK_INT_DRIVER("screen", m52_state, irq0_line_hold) + + /* video hardware */ + MCFG_GFXDECODE_ADD("gfxdecode", "palette", m52) + MCFG_PALETTE_ADD("palette", 128*4+16*4+3*4) + MCFG_PALETTE_INDIRECT_ENTRIES(512+32+32) + MCFG_PALETTE_INIT_OWNER(m52_state, m52) + + MCFG_SCREEN_ADD("screen", RASTER) + MCFG_SCREEN_RAW_PARAMS(MASTER_CLOCK/3, 384, 136, 376, 282, 16, 272) // HBMAME + MCFG_SCREEN_UPDATE_DRIVER(m52_state, screen_update_m52) + MCFG_SCREEN_PALETTE("palette") + + /* sound hardware */ + MCFG_DEVICE_ADD("irem_audio", IREM_M52_SOUNDC_AUDIO, 0) + +MACHINE_CONFIG_END + + +ROM_START( alpha1vx ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "2-m3", 0x0000, 0x1000, CRC(3a679d34) SHA1(1a54a43070c56dc91d4d258f29e29613bb309f1c) ) + ROM_LOAD( "3-l3", 0x1000, 0x1000, CRC(2f09df64) SHA1(e91602e9e41ad24dd1d7f384ed81b9bdaadd03e1) ) + ROM_LOAD( "4-k3", 0x2000, 0x1000, CRC(64fb9c8a) SHA1(735fd00cc42193a417e6cde75f12b4cf2e804942) ) + ROM_LOAD( "5-j3", 0x3000, 0x1000, CRC(d1643d18) SHA1(7c794b82e17e2ba0a6237e3fc20d8314f6c2481c) ) + ROM_LOAD( "6-h3", 0x4000, 0x1000, CRC(cf34ab51) SHA1(3696da71e2bc7edd1ee7aeaac87be5386608c09e) ) + ROM_LOAD( "7-f3", 0x5000, 0x1000, CRC(99db9781) SHA1(a56a675cc4cbc9681bfe8052f51f19336eb2a0a6) ) + ROM_LOAD( "7a e3", 0x6000, 0x1000, CRC(3b0b4b0d) SHA1(0d8eea1e2db269943611289b3490a578ee347f85) ) + + ROM_REGION( 0x8000, "irem_audio:iremsound", 0 ) + ROM_LOAD( "1-a1", 0x7000, 0x1000, CRC(9e07fdd5) SHA1(ed4f462fcfe91fa8e88bfeaaba0a0c11fa0b4601) ) + + ROM_REGION( 0x2000, "gfx1", 0 ) + ROM_LOAD( "14-e3", 0x0000, 0x1000, CRC(cf00c737) SHA1(415e90289039cac4d04cb1d559f1378ca6a32132) ) + ROM_LOAD( "13-f3", 0x1000, 0x1000, CRC(4b799229) SHA1(42cbdcf787b08b041d30504d699a12c378224933) ) + + ROM_REGION( 0x3000, "gfx2", 0 ) // 3bpp? (mpatrol is 2bpp..) + ROM_LOAD( "15-n3", 0x0000, 0x1000, CRC(dc26df76) SHA1(dd1cff7935f5559f9d1b440e02d5e5aa521b0054) ) + ROM_LOAD( "16-l3", 0x1000, 0x1000, CRC(39b9863b) SHA1(da9da9a1066188f050c422dfed1bbbd3ba612ccc) ) + ROM_LOAD( "17-k3", 0x2000, 0x1000, CRC(cfd90773) SHA1(052e126888b6de636db9c521a090699c282b620b) ) + + ROM_REGION( 0x1000, "gfx3", 0 ) + ROM_LOAD( "11-k3", 0x0000, 0x1000, CRC(7659440a) SHA1(2efd27c82913513dd03e799f1ed3c10b0863677d) ) + + ROM_REGION( 0x1000, "gfx4", 0 ) + ROM_LOAD( "9-n3", 0x0000, 0x1000, CRC(0fdb7d13) SHA1(e828254a4f94df633d338b5772719276d41c6b7f) ) + + ROM_REGION( 0x1000, "gfx5", 0 ) + ROM_LOAD( "10-lm3", 0x0000, 0x1000, CRC(9dde3a75) SHA1(293d093485be19bfb20685d76a08ac78e24062bf) ) + + ROM_REGION( 0x0340, "proms", 0 ) + ROM_LOAD( "63s481-a2", 0x0000, 0x0200, CRC(58678ea8) SHA1(b13a78a5bca8ad5bdec1293512b53654768a7a7a) ) + ROM_LOAD( "18s030-m1", 0x0200, 0x0020, CRC(6a57eff2) SHA1(2d1c12dab5915da2ccd466e39436c88be434d634) ) + ROM_LOAD( "mb7051-f1", 0x0220, 0x0020, CRC(d8bdd0df) SHA1(ca522428927911808214d319af314f601497ded4) ) + ROM_LOAD( "mb7052-h2", 0x0240, 0x0100, CRC(ce9f0ef9) SHA1(3afb94ed033f272983bbed22a59856df7824ef8a) ) +ROM_END + +GAME( 1988, alpha1vx, alpha1v, alpha1vx, alpha1v, driver_device, 0, ROT0, "Vision Electronics", "Alpha One (test)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE ) + diff --git a/docs/release/src/hbmame/drivers/maketrax.cpp b/docs/release/src/hbmame/drivers/maketrax.cpp index 79e22b62596..a352ead04d7 100644 --- a/docs/release/src/hbmame/drivers/maketrax.cpp +++ b/docs/release/src/hbmame/drivers/maketrax.cpp @@ -535,6 +535,18 @@ ROM_START( pactest ) PACMAN_PROMS ROM_END +ROM_START( pactetris ) // No text, no scores. When the game ends, it goes crazy. + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "pactetris.1", 0x0000, 0x1929, CRC(f67b4604) SHA1(21dfb16e524734cf180b7a3c514575dfc9cb8bbc) ) + ROM_REGION( 0x2000, "gfx1", 0 ) + ROM_LOAD( "puckman.5e", 0x0000, 0x0800, CRC(2066a0b7) SHA1(6d4ccc27d6be185589e08aa9f18702b679e49a4a) ) + ROM_LOAD( "puckman.5h", 0x0800, 0x0800, CRC(3591b89d) SHA1(79bb456be6c39c1ccd7d077fbe181523131fb300) ) + ROM_LOAD( "puckman.5f", 0x1000, 0x0800, CRC(9e39323a) SHA1(be933e691df4dbe7d12123913c3b7b7b585b7a35) ) + ROM_LOAD( "puckman.5j", 0x1800, 0x0800, CRC(1b1d9096) SHA1(53771c573051db43e7185b1d188533056290a620) ) + + PACMAN_PROMS +ROM_END + ROM_START( piranha ) ROM_REGION( 0x10000, "maincpu",0 ) ROM_LOAD( "pir1.bin", 0x0000, 0x0800, CRC(69a3e6ea) SHA1(c54e5d039a03d3cbee7a5e21bf1e23f4fd913ea6) ) @@ -748,41 +760,39 @@ GAME( 1981, piranhao, puckman, piranha, mspacman, pacman_state, eyes, ROT /* Dave Widel's Games - http://www.widel.com */ -GAME( 2003, aa, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Alien Armada", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, bace, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Balloon Ace", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, dderby, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Death Derby", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, kangaroh, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Kagaroo (Qbertish) (incomplete)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) -GAME( 2003, ladybugh, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Ladybug on Pacman Hardware", MACHINE_SUPPORTS_SAVE ) -GAME( 1981, lazybug, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Lazy Bug", MACHINE_SUPPORTS_SAVE ) -GAME( 1981, lazybug1, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Lazy Bug (Slower)", MACHINE_SUPPORTS_SAVE ) -GAME( 19??, pactest, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Test - Pacman board test", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, ppong, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Pong (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, ppong2, ppong, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Pong (Pacman Hardware) v2", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, rainboh, 0, pacman, mspacpls, driver_device, 0, ROT90, "David Widel", "Rainbow (Incomplete)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) -GAME( 1981, wavybug, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Wavy Bug", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, zap, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Space Zap Tribute", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, aa, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Alien Armada", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, bace, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Balloon Ace", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, dderby, 0, widel, mspacpls, driver_device, 0, ROT90, "David Widel", "Death Derby", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, kangaroh, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Kagaroo (Qbertish) (incomplete)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) +GAME( 2003, ladybugh, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Ladybug on Pacman Hardware", MACHINE_SUPPORTS_SAVE ) +GAME( 1981, lazybug, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Lazy Bug", MACHINE_SUPPORTS_SAVE ) +GAME( 1981, lazybug1, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Lazy Bug (Slower)", MACHINE_SUPPORTS_SAVE ) +GAME( 19??, pactest, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Test - Pacman board test", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, ppong, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Pong (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, ppong2, ppong, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Pong (Pacman Hardware) v2", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, rainboh, 0, pacman, mspacpls, driver_device, 0, ROT90, "David Widel", "Rainbow (Incomplete)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) +GAME( 1981, wavybug, lazybug, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Wavy Bug", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, zap, 0, woodpek, mspacpls, driver_device, 0, ROT90, "David Widel", "Space Zap Tribute", MACHINE_SUPPORTS_SAVE ) /* Jerronimo's Progs - www.umlautllama.com */ -GAME( 2006, absurd, 0, pacman, mspacman, driver_device, 0, ROT90, "Scott Lawrence", "Absurd!/QuadBlok (non-working alpha ver 3)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) -GAME( 2003, alpaca7, alpaca8, pacman, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Alpaca v0.7 (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, alpaca8, 0, pacman, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Alpaca v0.8 (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) -GAME( 2001, pachello, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Hello, World!", MACHINE_SUPPORTS_SAVE ) -GAME( 2001, pacmatri, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Matrix Effect", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, seq1, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "16 Step Simple Sequencer", MACHINE_SUPPORTS_SAVE ) -GAME( 2003, seq2, seq1, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Sequencer and Music Player", MACHINE_SUPPORTS_SAVE ) -GAME( 2012, tinyworld,0, pacman, mspacman, driver_device, 0, ROT90, "Scott Lawrence", "Tiny World 82 (demo)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) +GAME( 2006, absurd, 0, pacman, mspacman, driver_device, 0, ROT90, "Scott Lawrence", "Absurd!/QuadBlok (non-working alpha ver 3)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) +GAME( 2003, alpaca7, alpaca8, pacman, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Alpaca v0.7 (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, alpaca8, 0, pacman, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Alpaca v0.8 (Pacman Hardware)", MACHINE_SUPPORTS_SAVE ) +GAME( 2001, pachello, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Hello, World!", MACHINE_SUPPORTS_SAVE ) +GAME( 2001, pacmatri, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Matrix Effect", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, seq1, 0, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "16 Step Simple Sequencer", MACHINE_SUPPORTS_SAVE ) +GAME( 2003, seq2, seq1, pachack, pacman0, driver_device, 0, ROT90, "Scott Lawrence", "Sequencer and Music Player", MACHINE_SUPPORTS_SAVE ) +GAME( 2012, tinyworld,0, pacman, mspacman, driver_device, 0, ROT90, "Scott Lawrence", "Tiny World 82 (demo)", MACHINE_IS_INCOMPLETE | MACHINE_SUPPORTS_SAVE ) /* Other Misc Hacks */ -GAME( 2002, crashh, 0, woodpek, mspacpls, driver_device, 0, ROT90, "hack", "Crash", MACHINE_SUPPORTS_SAVE ) -GAME( 1981, mtturbo, 0, pacmanp, maketrax, pacman_state, maketrax, ROT270,"Tim Arcadecollecting", "Make Trax (Turbo Hack)", MACHINE_SUPPORTS_SAVE ) // http://www.arcadecollecting.com/hacks/maketrax -GAME( 1999, tst_pacm, 0, pacman, mspacpls, driver_device, 0, ROT90, "David Caldwell", "Test - Pacman Hardware", MACHINE_SUPPORTS_SAVE ) // http://www.porkrind.org/arcade/ - -/* Other misc unemulated dumps */ - +GAME( 2002, crashh, 0, woodpek, mspacpls, driver_device, 0, ROT90, "hack", "Crash", MACHINE_SUPPORTS_SAVE ) +GAME( 1981, mtturbo, 0, pacmanp, maketrax, pacman_state, maketrax, ROT270, "Tim Arcadecollecting", "Make Trax (Turbo Hack)", MACHINE_SUPPORTS_SAVE ) // http://www.arcadecollecting.com/hacks/maketrax +GAME( 1999, tst_pacm, 0, pacman, mspacpls, driver_device, 0, ROT90, "David Caldwell", "Test - Pacman Hardware", MACHINE_SUPPORTS_SAVE ) // http://www.porkrind.org/arcade/ GAME( 1982, eyesb, eyes, pacman, eyes, pacman_state, eyes, ROT90, "bootleg", "Eyes (unknown bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 2016, ghohunt, puckman, pacman, pacman0, driver_device, 0, ROT90, "Hurray Banana", "Ghost Hunt", MACHINE_SUPPORTS_SAVE ) +GAME( 2012, pactetris,puckman, pacman, pacman0, driver_device, 0, ROT90, "Ben Leperchey", "Tetris on Pacman hardware (incomplete)", MACHINE_SUPPORTS_SAVE ) /*************************************************************************************************************************/ diff --git a/docs/release/src/hbmame/drivers/model2.cpp b/docs/release/src/hbmame/drivers/model2.cpp new file mode 100644 index 00000000000..3e7488fcf06 --- /dev/null +++ b/docs/release/src/hbmame/drivers/model2.cpp @@ -0,0 +1,53 @@ +// license:BSD-3-Clause +// copyright-holders:Robbbert +#include "../mame/drivers/model2.cpp" + +ROM_START( srallyp ) + ROM_REGION( 0x200000, "maincpu", 0 ) // i960 program + ROM_LOAD32_WORD( "srallyp.ic12", 0x000000, 0x080000, CRC(926632ab) SHA1(7a37813f3d59b8e6e68220aa3120460b1ce5b33d) ) + ROM_LOAD32_WORD( "srallyp.ic13", 0x000002, 0x080000, CRC(c93b33f1) SHA1(8477a05e44c1c9ee5e99eaa9d31cd9905ebf8c26) ) + + ROM_REGION32_LE( 0x2400000, "user1", 0 ) // Data + ROM_LOAD32_WORD( "mpr-17746.10", 0x000000, 0x200000, CRC(8fe311f4) SHA1(f4ada8e5c906fc384bed1b96f09cdf313f89e825) ) + ROM_LOAD32_WORD( "mpr-17747.11", 0x000002, 0x200000, CRC(543593fd) SHA1(5ba63a77e9fc70569af21d50b3171bc8ff4522b8) ) + ROM_LOAD32_WORD( "mpr-17744.8", 0x400000, 0x200000, CRC(71fed098) SHA1(1d187cad375121a45348d640edd3cc7dce658d28) ) + ROM_LOAD32_WORD( "mpr-17745.9", 0x400002, 0x200000, CRC(8ecca705) SHA1(ed2b3298aad6f4e52dc672a0168183e457564b43) ) + ROM_LOAD32_WORD( "mpr-17884.6", 0x800000, 0x200000, CRC(4cfc95e1) SHA1(81d927b8c4f9d0c4c5e29d676b30f30f83751fdc) ) + ROM_LOAD32_WORD( "mpr-17885.7", 0x800002, 0x200000, CRC(a08d2467) SHA1(9449ac8f8f9ce8d8e536b05a91e46841fed7f2d0) ) + + ROM_REGION( 0x800000, "tgp", 0 ) // TGP program? (COPRO socket) + ROM_LOAD32_WORD( "mpr-17754.28", 0x000000, 0x200000, CRC(81a84f67) SHA1(c0a9b690523a529e4015e9af10dc3fb2a1726f08) ) + ROM_LOAD32_WORD( "mpr-17755.29", 0x000002, 0x200000, CRC(2a6e7da4) SHA1(e60803ae951489fe47d66731d15c32249ca547b4) ) + + ROM_REGION( 0x010000, "drivecpu", 0 ) // Drive I/O program + ROM_LOAD( "epr-17891.ic12", 0x000000, 0x010000, CRC(9a33b437) SHA1(3e8f210aa5159e78f640126cb5ce7f05f22560f2) ) + + ROM_REGION( 0x2000000, "user2", 0 ) // Models + ROM_LOAD32_WORD( "mpr-17748.16", 0x000000, 0x200000, CRC(3148a2b2) SHA1(283cc49bfb6c6381a7ead9273fd097dca5b981b6) ) + ROM_LOAD32_WORD( "mpr-17750.20", 0x000002, 0x200000, CRC(232aec29) SHA1(4d470e71df61298282c356814e2d151fda323fb6) ) + ROM_LOAD32_WORD( "mpr-17749.17", 0x400000, 0x200000, CRC(0838d184) SHA1(704175c8b29e4c989afcb7be42e7e0e096740eaf) ) + ROM_LOAD32_WORD( "mpr-17751.21", 0x400002, 0x200000, CRC(ed87ac62) SHA1(601542149d33ca52a47536b4b0af47bf1fd87eb2) ) + + ROM_REGION( 0x1000000, "user3", 0 ) // Textures + ROM_LOAD32_WORD( "mpr-17753.25", 0x000000, 0x200000, CRC(6db0eb36) SHA1(dd5fd3c9592360d3e95623ac2491e6faabe9dbcb) ) + ROM_LOAD32_WORD( "mpr-17752.24", 0x000002, 0x200000, CRC(d6aa86ce) SHA1(1d342f87d1af1e5438d1ae818b1b14268e765897) ) + + ROM_REGION( 0x20000, "cpu4", 0) // Communication program + ROM_LOAD( "epr-16726.bin", 0x000000, 0x020000, CRC(c179b8c7) SHA1(86d3e65c77fb53b1d380b629348f4ab5b3d39228) ) + + ROM_REGION( 0x100000, "audiocpu", 0 ) // Sound program + ROM_LOAD16_WORD_SWAP( "epr-17890a.30", 0x080000, 0x040000, CRC(5bac3fa1) SHA1(3635333d36463b6fab25560ed918e05138f964dc) ) + + ROM_REGION( 0x800000, "scsp", 0 ) // Samples + ROM_LOAD( "mpr-17756.31", 0x000000, 0x200000, CRC(7725f111) SHA1(1f1ee3f19a6bcf57bc5a1c7dd64ee83f8b81f084) ) + ROM_LOAD( "mpr-17757.32", 0x200000, 0x200000, CRC(1616e649) SHA1(1d3a0e441d150ada0535a9d50e2f69dd4b99c584) ) + ROM_LOAD( "mpr-17886.36", 0x400000, 0x200000, CRC(54a72923) SHA1(103c4838b27378c834c08d29d6fb6ba95e7f9d03) ) + ROM_LOAD( "mpr-17887.37", 0x600000, 0x200000, CRC(38c31fdd) SHA1(a85f05160b060d9d4a431aaa73cfc03f24214fb9) ) + + MODEL2_CPU_BOARD + MODEL2A_VID_BOARD +ROM_END + + + +GAME( 2000?, srallyp, srallyc, srallyc, srallyc, model2_state, srallyc, ROT0, "Kyle Hodgetts", "Sega Rally Pro Drivin'", 0 ) diff --git a/docs/release/src/hbmame/drivers/neogeo1.cpp b/docs/release/src/hbmame/drivers/neogeo1.cpp index 238a63c6eec..db8ad5901ad 100644 --- a/docs/release/src/hbmame/drivers/neogeo1.cpp +++ b/docs/release/src/hbmame/drivers/neogeo1.cpp @@ -1793,26 +1793,6 @@ ROM_START( ragnagrdeh ) /* Operation Ragnagard - Enhance by Ydmis - (Can choose ROM_END -ROM_START( roboarma ) - ROM_REGION( 0x100000, "maincpu", 0 ) - ROM_LOAD16_WORD_SWAP( "032a.p1", 0x000000, 0x080000, CRC(27c773cb) SHA1(597ca73f142b1129cc7780540bb9cfacd47bc6ce) ) - - NEO_SFIX_128K( "032-s1.s1", CRC(ac0daa1b) SHA1(93bae4697dc403fce19422752a514326ccf66a91) ) - - NEO_BIOS_AUDIO_128K( "032-m1.m1", CRC(35ec952d) SHA1(8aed30e26d7e2c70dbce5de752df416091066f7b) ) - - ROM_REGION( 0x200000, "ymsnd", 0 ) - ROM_LOAD( "032-v1.v1", 0x000000, 0x100000, CRC(63791533) SHA1(4479e9308cdc906b9e03b985303f4ebedd00512f) ) - ROM_LOAD( "032-v2.v2", 0x100000, 0x100000, CRC(eb95de70) SHA1(b34885201116d2b3bbdee15ec7b5961cf5c069e1) ) - - ROM_REGION( 0x300000, "sprites", 0 ) - ROM_LOAD16_BYTE( "032-c1.c1", 0x000000, 0x100000, CRC(97984c6c) SHA1(deea59c0892f05dc7db98cb57b3eb83688dc57f0) ) - ROM_LOAD16_BYTE( "032-c2.c2", 0x000001, 0x100000, CRC(65773122) SHA1(2c0162a8e971e5e57933e4ae16040bf824ffdefe) ) - ROM_LOAD16_BYTE( "032-c3.c3", 0x200000, 0x080000, CRC(40adfccd) SHA1(b11f866dd70ba0ed9123424508355cb948b19bdc) ) - ROM_LOAD16_BYTE( "032-c4.c4", 0x200001, 0x080000, CRC(462571de) SHA1(5c3d610d492f91564423873b3b434dcda700373f) ) -ROM_END - - ROM_START( s1945pd ) ROM_REGION( 0x500000, "maincpu", 0 ) ROM_LOAD16_WORD_SWAP( "254-p1.p1", 0x000000, 0x100000, CRC(ff8efcff) SHA1(dcaeaca573385c172ecc43ee6bee355359091893) ) @@ -2526,8 +2506,6 @@ GAME( 1994, pspikes2cd, pspikes2, neogeo_noslot, neogeo, neogeo_state, GAME( 1996, ragnagrdeh, zedblade, neogeo_noslot, neogeo, neogeo_state, neogeo, ROT0, "Ydmis", "Operation Ragnagard (Add Char)", MACHINE_SUPPORTS_SAVE ) // Lucifer, Eelis and Behemoth -GAME( 1991, roboarma, roboarmy, neogeo_noslot, neogeo, neogeo_state, neogeo, ROT0, "hack", "Robo Army (hack)", MACHINE_SUPPORTS_SAVE ) - GAME( 1999, s1945pd, s1945p, neogeo_noslot, neogeo, neogeo_hbmame, cmc42sfix, ROT0, "Psikyo", "Strikers 1945 Plus (decrypted C)", MACHINE_SUPPORTS_SAVE ) GAME( 1999, s1945pwe, s1945p, neogeo_noslot, neogeo, neogeo_noslot_state, s1945p, ROT0, "Wesker", "Strikers 1945 Plus (Hack)", MACHINE_SUPPORTS_SAVE ) diff --git a/docs/release/src/hbmame/drivers/retofinv.cpp b/docs/release/src/hbmame/drivers/retofinv.cpp index 555962d2380..dfe0eb21f47 100644 --- a/docs/release/src/hbmame/drivers/retofinv.cpp +++ b/docs/release/src/hbmame/drivers/retofinv.cpp @@ -14,7 +14,7 @@ ROM_START( retofinv4 ) ROM_REGION( 0x10000, "audiocpu", 0 ) ROM_LOAD( "a37-05.17", 0x0000, 0x2000, CRC(9025abea) SHA1(2f03e8572f23624d7cd1215a55109e97fd66e271) ) - ROM_REGION( 0x0800, "68705", 0 ) + ROM_REGION( 0x0800, "68705:mcu", 0 ) ROM_LOAD( "a37-09.37", 0x00000, 0x0800, BAD_DUMP CRC(79bd6ded) SHA1(4967e95b4461c1bfb4e933d1804677799014f77b) ) ROM_REGION( 0x02000, "gfx1", 0 ) diff --git a/docs/release/src/hbmame/drivers/segas16b.cpp b/docs/release/src/hbmame/drivers/segas16b.cpp index f5c706bf097..badecf5e8e2 100644 --- a/docs/release/src/hbmame/drivers/segas16b.cpp +++ b/docs/release/src/hbmame/drivers/segas16b.cpp @@ -3,16 +3,16 @@ #include "../mame/drivers/segas16b.cpp" ROM_START( altbeastfr ) - ROM_REGION( 0x040000, "maincpu", 0 ) /* 68000 code */ - ROM_LOAD16_BYTE( "epr-11907.a7fr", 0x000000, 0x20000, CRC(309d3a0a) SHA1(646dcafe7ac2831e241eb0643a06f8c32bdba77a) ) - ROM_LOAD16_BYTE( "epr-11906.a5fr", 0x000001, 0x20000, CRC(39cd8368) SHA1(6b5890d44b549c3bbe18345ac86943c55f7b9d26) ) + ROM_REGION( 0x040000, "maincpu", 0 ) // 68000 code + ROM_LOAD16_BYTE( "altbeastfr.a7", 0x000000, 0x20000, CRC(309d3a0a) SHA1(646dcafe7ac2831e241eb0643a06f8c32bdba77a) ) + ROM_LOAD16_BYTE( "altbeastfr.a5", 0x000001, 0x20000, CRC(39cd8368) SHA1(6b5890d44b549c3bbe18345ac86943c55f7b9d26) ) - ROM_REGION( 0x60000, "gfx1", 0 ) /* tiles */ + ROM_REGION( 0x60000, "gfx1", 0 ) // tiles ROM_LOAD( "opr-11674.a14", 0x00000, 0x20000, CRC(a57a66d5) SHA1(5103583d48997abad12a0c5fee26431c486ced52) ) ROM_LOAD( "opr-11675.a15", 0x20000, 0x20000, CRC(2ef2f144) SHA1(38d22d609db2d9b6067b5d12f6499436de4605cb) ) ROM_LOAD( "opr-11676.a16", 0x40000, 0x20000, CRC(0c04acac) SHA1(87fe2a0dd9913f9550e9b4cbc7e7465b61640e07) ) - ROM_REGION16_BE( 0x100000, "gfx2", 0 ) /* sprites */ + ROM_REGION16_BE( 0x100000, "sprites", 0 ) // sprites ROM_LOAD16_BYTE( "epr-11677.b1", 0x00001, 0x20000, CRC(a01425cd) SHA1(72be5ec29e476601f9bf6aaedef9b73cedeb42f0) ) ROM_LOAD16_BYTE( "epr-11681.b5", 0x00000, 0x20000, CRC(d9e03363) SHA1(995a7c6a8f0c61468b57a3bb407461a2a3ae8adc) ) ROM_LOAD16_BYTE( "epr-11678.b2", 0x40001, 0x20000, CRC(17a9fc53) SHA1(85a9a605742ae5aab86db37189b9ee4d54c70e56) ) @@ -22,13 +22,13 @@ ROM_START( altbeastfr ) ROM_LOAD16_BYTE( "epr-11680.b4", 0xc0001, 0x20000, CRC(f43dcdec) SHA1(2941500cf33afca487f19f2329033d5d17aad826) ) ROM_LOAD16_BYTE( "epr-11684.b8", 0xc0000, 0x20000, CRC(b20c0edb) SHA1(6c8694d05e3adac37c9015037ab800233371db36) ) - ROM_REGION( 0x50000, "soundcpu", 0 ) /* sound CPU */ + ROM_REGION( 0x50000, "soundcpu", 0 ) // sound CPU ROM_LOAD( "epr-11671.a10", 0x00000, 0x08000, CRC(2b71343b) SHA1(8a657f787de2b9d5161ed2c109642a148348af09) ) ROM_LOAD( "opr-11672.a11", 0x10000, 0x20000, CRC(bbd7f460) SHA1(bbc5c2219cb3a827d84062b19affd9780da2a3cf) ) ROM_LOAD( "opr-11673.a12", 0x30000, 0x20000, CRC(400c4a36) SHA1(de4bdfa91734410e0a7f6a16bf8336db172f458a) ) - ROM_REGION( 0x10000, "mcu", 0 ) /* Intel i8751 protection MCU */ - ROM_LOAD( "317-0078.c2", 0x00000, 0x1000, NO_DUMP ) + ROM_REGION( 0x1000, "mcu", 0 ) // Intel i8751 protection MCU + ROM_LOAD( "317-0078.c2", 0x00000, 0x1000, CRC(8101925f) SHA1(a45d772ebe2fd1a577a6ccac8c6c76bb622258bb) ) ROM_END -GAME( 1988, altbeastfr, altbeast, system16b_i8751, altbeast, segas16b_state, altbeast_5521, ROT0, "Arkatrad", "Altered Beast (French)", MACHINE_NOT_WORKING ) +GAME( 1988, altbeastfr, altbeast, system16b_i8751, altbeast, segas16b_state, generic_5521, ROT0, "Arkatrad", "Altered Beast (French)", MACHINE_NOT_WORKING ) diff --git a/docs/release/src/hbmame/drivers/snk6502.cpp b/docs/release/src/hbmame/drivers/snk6502.cpp index 4301d2e7747..543ddf8c95a 100644 --- a/docs/release/src/hbmame/drivers/snk6502.cpp +++ b/docs/release/src/hbmame/drivers/snk6502.cpp @@ -16,7 +16,7 @@ ROM_START( vantris ) ROM_RELOAD( 0x0020, 0x0020 ) ROM_REGION( 0x1000, "snk6502", 0 ) - ROM_LOAD( "vantris.ic51", 0x0000, 0x0800, CRC(fd4d8bb0) SHA1(d59ec7569147263aed50041b15aed2ca4f395c23) ) + ROM_LOAD( "vantris.ic53", 0x0000, 0x0800, CRC(fd4d8bb0) SHA1(d59ec7569147263aed50041b15aed2ca4f395c23) ) ROM_LOAD( "sk4_ic52.bin", 0x0800, 0x0800, CRC(cc4a0b6f) SHA1(251b24d60083d516c4ba686d75b41e04d10f7198) ) ROM_REGION( 0x5800, "speech", ROMREGION_ERASE00 ) diff --git a/docs/release/src/hbmame/drivers/toaplan1.cpp b/docs/release/src/hbmame/drivers/toaplan1.cpp deleted file mode 100644 index f82d1ec127f..00000000000 --- a/docs/release/src/hbmame/drivers/toaplan1.cpp +++ /dev/null @@ -1,32 +0,0 @@ -// license:BSD-3-Clause -// copyright-holders:Robbbert -#include "../mame/drivers/toaplan1.cpp" - -ROM_START( samenew ) - ROM_REGION( 0x080000, "maincpu", 0 ) - ROM_LOAD16_BYTE( "o17_09n.8j", 0x000000, 0x08000, CRC(f60af2f9) SHA1(ce41efd5ca4f4adc8bf1976f61a8a8d357fb234a) ) - ROM_LOAD16_BYTE( "o17_10n.8l", 0x000001, 0x08000, CRC(023bcb95) SHA1(69a051fb223e6cacaf1cda8bf5430933d24fb8a7) ) - ROM_LOAD16_BYTE( "o17_11.7j", 0x040000, 0x20000, CRC(be07d101) SHA1(1eda14ba24532b565d6ad57490b73ff312f98b53) ) - ROM_LOAD16_BYTE( "o17_12.7l", 0x040001, 0x20000, CRC(ef698811) SHA1(4c729704eba0bf469599c79009327e4fa5dc540b) ) - - ROM_REGION( 0x8000, "audiocpu", 0 ) - ROM_LOAD( "hd647180.017", 0x00000, 0x08000, NO_DUMP ) - - ROM_REGION( 0x80000, "gfx1", 0 ) - ROM_LOAD16_BYTE( "o17_05.12j", 0x00000, 0x20000, CRC(565315f8) SHA1(6b1c5ef52359483228b329c89c2e1174e3fbf017) ) - ROM_LOAD16_BYTE( "o17_06.13j", 0x00001, 0x20000, CRC(95262d4c) SHA1(16f3aabecb1c87ce7eadf4f0ff61b29a4c017614) ) - ROM_LOAD16_BYTE( "o17_07.12l", 0x40000, 0x20000, CRC(4c4b735c) SHA1(812c3bf46bd7764b2bb812bd2b9eb0331ed257ae) ) - ROM_LOAD16_BYTE( "o17_08.13l", 0x40001, 0x20000, CRC(95c6586c) SHA1(ff87901f79d80f73ad09664b0c0d892898570616) ) - - ROM_REGION( 0x80000, "gfx2", 0 ) - ROM_LOAD16_BYTE( "o17_01.1d", 0x00000, 0x20000, CRC(ea12e491) SHA1(02190722b7c5383471e0af9596be7039a5367240) ) - ROM_LOAD16_BYTE( "o17_02.3d", 0x00001, 0x20000, CRC(32a13a9f) SHA1(1446acdfd21cd41f3d97aaf30f498c0c5d890605) ) - ROM_LOAD16_BYTE( "o17_03.5d", 0x40000, 0x20000, CRC(68723dc9) SHA1(4f1b7aa2469c955e03737b611a7d2524f1e4f61e) ) - ROM_LOAD16_BYTE( "o17_04.7d", 0x40001, 0x20000, CRC(fe0ecb13) SHA1(634a49262b9c092c25f11b14c6757fe94ea9eddc) ) - - ROM_REGION( 0x40, "proms", 0 ) - ROM_LOAD( "prom14.25b", 0x00, 0x20, CRC(bc88cced) SHA1(5055362710c0f58823c05fb4c0e0eec638b91e3d) ) - ROM_LOAD( "prom15.20c", 0x20, 0x20, CRC(a1e17492) SHA1(9ddec4c97f2d541f69f3c32c47aaa21fd9699ae2) ) -ROM_END - -GAME( 2014, samenew, fireshrk, samesame, samesame, toaplan1_state, toaplan1, ROT270, "Trap15", "Same! Same! Same! (NEW VER!)", MACHINE_NO_SOUND ) diff --git a/docs/release/src/hbmame/hbmame.lst b/docs/release/src/hbmame/hbmame.lst index a5b2fe66a8b..67cc6e981d8 100644 --- a/docs/release/src/hbmame/hbmame.lst +++ b/docs/release/src/hbmame/hbmame.lst @@ -11,6 +11,7 @@ /* 1942 */ 1942 //parent +1942h 1942c64 // 1942 with C64 sounds (by minwah) 1942fpa // 1942 with free play (by cmonkey) galagax /* Jerky - Chris Moore hack of 1942 */ @@ -223,11 +224,15 @@ punisherjh1 punisherjha punisherud1 punisherud2 +sf2bhj sf2c // sf2, chinese sf2cebr /* hack, Brasil 920313 */ sf2ced /* hack, Hispanic 990804 */ sf2ceda /* hack, Hispanic 990804 */ sf2ceh /* hack, Hispanic 990804 */ +sf2cehk +sf2cehp +sf2cejem sf2koryuh /* Hack by TT */ sf2h9 /* Found in Mame Plus */ sf2h10 /* Found in Mame Plus */ @@ -246,8 +251,13 @@ sf2yyc3d5 sf2yyc3g sf2yyc6 sk2h1 /* 1999 Legend of Three Kingdoms' Heroes / Sanguo Yingxiong Zhuan */ +sk2h1q // qsound version of sk2h1 sk2h2 /* 1999 Legend of Three Kingdoms' Heroes / Sanguo Yingxiong Zhuan */ +sk2h2q sk2h3 // mame sgyxz for testing +sk2h4q +sk2h5q +sk2h6q sk2h11 /* 1992 Sangokushi II (Hack 1) */ sk2h12 /* 1992 Sangokushi II (Hack 2) */ sk2h13 /* 1992 Sangokushi II (Hack 3) */ @@ -259,8 +269,6 @@ sk2h32 /* 1997 Three Holy Swords / San Sheng Jian */ sk2h33 /* 1995 Holy Sword Three Kingdoms / Sheng Jian San Guo */ sk2h34 /* 1995 Holy Sword Three Kingdoms / Sheng Jian San Guo */ sk2h35 /* 1995 Holy Sword Three Kingdoms / Sheng Jian San Guo */ -sk2h1q // qsound version of sk2h1 -sk2h2q sk2h31q sk2h32q sk2h33q @@ -271,21 +279,58 @@ stridergh // as above, and uncensored sk2h15 // wofaehp sk2h16 // wofahp2 wofb +wofbio +wofbt wofch wofch_v3 wofchdx wofchdx1 wofchdx2 wofchspp -wofjcn // chinese language +wofctj +wofdy +wofdyg +wofes +woffh woffr /* Neo-Arc French Trans */ +wofgyc +wofgyq +wofhgz +wofhzj +wofjcn // chinese language +wofjd +wofjehp wofjh +wofjh2 wofjhb // was dynwarjh in another life wofjhc // was dynwarj2 in another life +wofjhdwb +wofjhp2 +wofjjq wofjm +wofjmsp +wofjpsrw +wofjqz +wofjrabh +wofjrlb +//wofjrpbs exception in first demo +//wofjv10s exception in first demo +wofjzcr1 wofjzero +wofmr wofr1h +wofsbl wofsf2 +wofsjj +wofsz +wofud +wofyjs +wofyxg +wofzhs +wofzhy +wofzy2 +wofzy3 +wofzyq /* cps2 */ // CPS2 PARENTS *** @@ -333,6 +378,9 @@ ddsomhp ddsomjfs halfway // progear hack by The Halfway House mshjphp +mshvsemb +mshvsfjh +mshvsfjphp mshyh mvscjemb mvscjphp @@ -342,9 +390,31 @@ pfghtjrm suicide /* Razoola */ suicide2 /* Razoola */ sfa2h +sfa3br +sfa3dp +sfa3sp2 +sfa3spp +sfa3uhd sfz2abr +sfz2ajhp +sfz2aldp +sfz2aldp2 +sfz2jyh +sfz3jb +sfz3jemb +sfz3jhp +sfz3jsep +sfzjboss +sfzjyh sgemfch spf2tb // boss hack +ssf2tfp +ssf2tfr +ssf2tpls +ssf2xjhy +ssf2xjjs +ssf2xjnc +ssf2zhp vampjb vsav2emb xmcotajb @@ -1293,16 +1363,18 @@ airwolf //parent airwolffr // french /* m52 */ -alpha1v // Kyle Hodgetts +alpha1v //parent +alpha1vx // Kyle Hodgetts mpatrol //parent spatrol /* Sponge Patrol - Gatinho 2008 */ /* maketrax */ eyes //parent aa /* Widel's Games */ +abscam // GL 1982 absurd /* scott - nonworking alpha ver 3 */ -//alpaca7 /* Jerronimo (useless) */ -//alpaca8 /* Jerronimo (useless) */ +alpaca7 /* Jerronimo (useless) */ +alpaca8 /* Jerronimo (useless) */ bace /* Widel's Games */ crashh /* PacMAME Hacks */ dderby /* Widel's Games */ @@ -1315,6 +1387,7 @@ mtturbo /* Tim - Make Trax Turbo Hack */ pachello /* Jerronimo */ pacmatri /* Jerronimo */ pactest /* Widel's Games */ +pactetris ppong /* Widel's Games */ ppong2 /* Widel's Games */ rainboh /* Widel's Games */ @@ -1322,7 +1395,7 @@ seq1 /* Jerronimo */ seq2 /* Jerronimo */ tst_pacm wavybug -zap /* Widel's Games */ +zap /* Widel's Games */ /* mappy */ mappy //parent @@ -1419,6 +1492,10 @@ mitcdemo /* Charles Doty */ /* mmagic */ mmagic // with sound + /* model2 */ +srallyc //parent +srallyp // Kyle Hodgetts Sega Rally Pro Drivin' + /* monaco */ monaco @@ -2000,7 +2077,6 @@ pnyaad preisle2d //pspikes2cd // not working ragnagrdeh -roboarma s1945pd s1945pwe savageredb @@ -2452,8 +2528,8 @@ pengo //parent pacpen pengopop vecpengo /* T-Bone hack of Pengo */ -//alpacap7 /* "Jerronimo", "Alpaca v0.7 (Pengo Hardware) useless */ -//alpacap8 /* "Jerronimo", "Alpaca v0.8 (Pengo Hardware) useless */ +alpacap7 /* "Jerronimo", "Alpaca v0.7 (Pengo Hardware) useless */ +alpacap8 /* "Jerronimo", "Alpaca v0.8 (Pengo Hardware) useless */ /* pgm */ pgm //required bios @@ -2605,6 +2681,9 @@ astrob2h kicker //parent kfjohnny /* hack by Smitdogg*/ + /* skimaxx */ +skimaxx // Kyle Hodgetts + /* snk6502 */ vantris /* (c) 1998 Norbert Kehrer */ @@ -2699,7 +2778,7 @@ ssridersaex /* toaplan1 */ fireshrk //parent -samenew // Trap15 +samesamenh // Trap15 /* toaplan2 */ kingdmgp //parent diff --git a/docs/release/src/hbmame/video/cps1.cpp b/docs/release/src/hbmame/video/cps1.cpp index 7c9d9c4a035..d4e88ee7ba1 100644 --- a/docs/release/src/hbmame/video/cps1.cpp +++ b/docs/release/src/hbmame/video/cps1.cpp @@ -1697,11 +1697,15 @@ static const struct CPS1config cps1_config_table[]= {"punisherjha", CPS_B_21_QS3, mapper_PS63B }, //works {"punisherud1", CPS_B_21_DEF, mapper_PS63B }, //works {"punisherud2", CPS_B_21_DEF, mapper_PS63B }, //works + {"sf2bhj", CPS_B_12, mapper_STF29, 0x36 }, //works {"sf2c", CPS_B_13, mapper_STF29, 0x36 }, //works {"sf2cebr", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works {"sf2ced", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works {"sf2ceda", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works {"sf2ceh", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works + {"sf2cehk", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works + {"sf2cehp", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works + {"sf2cejem", CPS_B_21_DEF, mapper_S9263B, 0x36 }, //works {"sf2koryuh", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 0x41 }, //works {"sf2h9", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 0x41 }, //works {"sf2h10", CPS_B_21_DEF, mapper_S9263B, 0x36, 0, 0, 0x41 }, //works @@ -1724,6 +1728,9 @@ static const struct CPS1config cps1_config_table[]= {"sk2h2", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities {"sk2h2q", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities {"sk2h3", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities + {"sk2h4q", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities + {"sk2h5q", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities + {"sk2h6q", HACK_H_2, mapper_TK263B, 0, 0, 0, 0x8F }, //works, priorities {"sk2h11", CPS_B_21_DEF, mapper_TK263B }, //works {"sk2h12", CPS_B_21_DEF, mapper_TK263B }, //works {"sk2h13", CPS_B_21_DEF, mapper_TK263B }, //works @@ -1746,20 +1753,57 @@ static const struct CPS1config cps1_config_table[]= {"stridergh", CPS_B_01, mapper_ST24M1 }, //works {"varthb", CPS_B_04, mapper_VA63B, 0, 0, 0, 0x0F }, //works {"wofb", CPS_B_21_DEF, mapper_TK263B }, //works + {"wofbio", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofbt", CPS_B_21_QS1, mapper_TK263B }, //works {"wofch_v3", CPS_B_21_DEF, mapper_sfzch }, //works {"wofchdx", CPS_B_21_DEF, mapper_sfzch }, //works {"wofchdx1", CPS_B_21_DEF, mapper_TK263B }, //works {"wofchdx2", CPS_B_21_DEF, mapper_TK263B }, //works {"wofchspp", CPS_B_21_DEF, mapper_TK263B }, //works - {"wofjcn", CPS_B_21_QS1, mapper_TK263B }, // problem with chinese language roms + {"wofctj", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofdy", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofdyg", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofes", CPS_B_21_DEF, mapper_TK263B }, //works + {"woffh", CPS_B_21_QS1, mapper_TK263B }, //works {"woffr", CPS_B_21_DEF, mapper_sfzch }, //works + {"wofgyc", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofgyq", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofhgz", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofhzj", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjcn", CPS_B_21_QS1, mapper_TK263B }, // problem with chinese language roms + {"wofjd", CPS_B_21_DEF, mapper_TK263B }, //works + {"wofjehp", CPS_B_21_QS1, mapper_TK263B }, //works {"wofjh", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjh2", CPS_B_21_QS1, mapper_TK263B }, //works {"wofjhb", CPS_B_21_QS1, mapper_TK263B }, //works {"wofjhc", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjhdwb", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjhp2", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjjq", CPS_B_21_QS1, mapper_TK263B }, //works {"wofjm", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjmsp", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjpsrw", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjqz", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjrabh", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjrlb", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjrpbs", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjv10s", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofjzcr1", CPS_B_21_QS1, mapper_TK263B }, //works {"wofjzero", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofmr", CPS_B_21_QS1, mapper_TK263B }, //works {"wofr1h", CPS_B_21_DEF, mapper_TK263B }, //works + {"wofsbl", CPS_B_21_QS1, mapper_TK263B }, //works {"wofsf2", CPS_B_21_QS1, mapper_TK263B, 0x36 }, //works + {"wofsjj", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofsz", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofud", CPS_B_21_DEF, mapper_TK263B }, //works + {"wofyjs", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofyxg", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofzhs", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofzhy", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofzy2", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofzy3", CPS_B_21_QS1, mapper_TK263B }, //works + {"wofzyq", CPS_B_21_QS1, mapper_TK263B }, //works // HBMAME end {nullptr} /* End of table */ diff --git a/docs/release/src/osd/winui/bitmask.cpp b/docs/release/src/osd/winui/bitmask.cpp index 8175e4a11d0..c8b542dce5d 100644 --- a/docs/release/src/osd/winui/bitmask.cpp +++ b/docs/release/src/osd/winui/bitmask.cpp @@ -3,7 +3,6 @@ /* bitmask.c - Bitmask support routines - MSH 11/19/1998 */ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // standard C headers diff --git a/docs/release/src/osd/winui/columnedit.cpp b/docs/release/src/osd/winui/columnedit.cpp index 020ef7240ab..21cac963e76 100644 --- a/docs/release/src/osd/winui/columnedit.cpp +++ b/docs/release/src/osd/winui/columnedit.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <shellapi.h> diff --git a/docs/release/src/osd/winui/datafile.cpp b/docs/release/src/osd/winui/datafile.cpp deleted file mode 100644 index 546ac5a5d30..00000000000 --- a/docs/release/src/osd/winui/datafile.cpp +++ /dev/null @@ -1,931 +0,0 @@ -// For licensing and usage information, read docs/winui_license.txt -//**************************************************************************** -// MASTER -/**************************************************************************** - * datafile.c - * History database engine - * - * Token parsing by Neil Bradley - * Modifications and higher-level functions by John Butler - ****************************************************************************/ - -#define WIN32_LEAN_AND_MEAN -#include <windows.h> - -// MAME/MAMEUI headers -#include "emu.h" -#include "datafile.h" -#include "mui_opts.h" -#include "mui_util.h" -#include "sound/samples.h" -#include "drivenum.h" // MESSUI only - -#define MAX_TOKEN_LENGTH 256 -#define DATAFILE_TAG '$' - -/**************************************************************************** - * datafile constants - ****************************************************************************/ -static const char *DATAFILE_TAG_KEY = "$info"; -static const char *DATAFILE_TAG_BIO = "$bio"; -static const char *DATAFILE_TAG_MAME = "$mame"; -static const char *DATAFILE_TAG_DRIV = "$drv"; -static const char *DATAFILE_TAG_CMD = "$cmd"; -static const char *DATAFILE_TAG_SCORE = "$story"; -static const char *DATAFILE_TAG_END = "$end"; - -/**************************************************************************** - * private data for parsing functions - ****************************************************************************/ -static FILE *fp = nullptr; /* Our file pointer */ -static UINT64 dwFilePos = 0; /* file position */ -static char filename[MAX_PATH]; /* datafile name */ - -struct tDatafileIndex -{ - long offset; - const game_driver *driver; -}; - -static struct tDatafileIndex *gameinit_idx = nullptr; -static struct tDatafileIndex *hist_idx = nullptr; -static struct tDatafileIndex *mame_idx = nullptr; -static struct tDatafileIndex *driv_idx = nullptr; -static struct tDatafileIndex *sysinfo_idx = nullptr; -static struct tDatafileIndex *mess_idx = nullptr; -static struct tDatafileIndex *messdriv_idx = nullptr; -static struct tDatafileIndex *cmd_idx = nullptr; -static struct tDatafileIndex *score_idx = nullptr; - -/**************************************************************************** -* Create an array with sorted sourcedrivers for the function -* index_datafile_drivinfo to speed up the datafile access -****************************************************************************/ - -typedef struct -{ - const char *srcdriver; - int index; -} srcdriver_data_type; - -static srcdriver_data_type *sorted_srcdrivers = nullptr; - -static int SrcDriverDataCompareFunc(const void *arg1, const void *arg2) -{ - return strcmp(((srcdriver_data_type *)arg1)->srcdriver, ((srcdriver_data_type *)arg2)->srcdriver); -} - -static int GetSrcDriverIndex(const char *srcdriver) -{ - srcdriver_data_type *srcdriver_index_info; - srcdriver_data_type key; - key.srcdriver = srcdriver; - int num_games = driver_list::total(); - - if (sorted_srcdrivers == NULL) - { - /* initialize array of game names/indices */ - sorted_srcdrivers = (srcdriver_data_type *)malloc(sizeof(srcdriver_data_type) * num_games); - for (int i = 0; i < num_games; i++) - { - sorted_srcdrivers[i].srcdriver = driver_list::driver(i).source_file+32; - sorted_srcdrivers[i].index = i; - } - qsort(sorted_srcdrivers,num_games,sizeof(srcdriver_data_type),SrcDriverDataCompareFunc); - } - - srcdriver_index_info = (srcdriver_data_type *)bsearch(&key, sorted_srcdrivers, num_games, sizeof(srcdriver_data_type), SrcDriverDataCompareFunc); - - if (srcdriver_index_info) - return srcdriver_index_info->index; - else - return -1; -} - -/**************************************************************************** - * ParseClose - Closes the existing opened file (if any) - ****************************************************************************/ -static void ParseClose(void) -{ - /* If the file is open, time for fclose. */ - if (fp) - fclose(fp); -} - -/**************************************************************************** - * ParseOpen - Open up file for reading - ****************************************************************************/ -static BOOL ParseOpen(const char *pszFilename) -{ - /* MAME core file parsing functions fail in recognizing UNICODE chars in UTF-8 without BOM, - so it's better and faster use standard C fileio functions */ - fp = fopen(pszFilename, "r"); - - if (fp == NULL) - return FALSE; - - /* Otherwise, prepare! */ - dwFilePos = 0; - /* identify text file type first */ - fgetc(fp); - fseek(fp, dwFilePos, SEEK_SET); - return TRUE; -} - -/**************************************************************************** - * ParseSeek - Move the file position indicator - ****************************************************************************/ -static UINT8 ParseSeek(UINT64 offset, int whence) -{ - int result = fseek(fp, offset, whence); - - if (result == 0) - dwFilePos = ftell(fp); - - return (UINT8)result; -} - -/************************************************************************** - ************************************************************************** - * - * Datafile functions - * - ************************************************************************** - **************************************************************************/ - - /************************************************************************** - * index_datafile - * Create an index for the records in the currently open datafile. - * - * Returns 0 on error, or the number of index entries created. - **************************************************************************/ -static int index_datafile(struct tDatafileIndex **_index, int source) -{ - struct tDatafileIndex *idx; - int count = 0; - char readbuf[512]; - char name[40]; - int num_games = driver_list::total(); - - /* rewind file */ - if (ParseSeek (0L, SEEK_SET)) - return 0; - - /* allocate index */ - idx = *_index = global_alloc_array(tDatafileIndex, (num_games + 1) * sizeof (struct tDatafileIndex)); - - if (!idx) - return 0; - - while (fgets(readbuf, 512, fp)) - { - /* DATAFILE_TAG_KEY identifies the driver */ - if (!core_strnicmp(DATAFILE_TAG_KEY, readbuf, strlen(DATAFILE_TAG_KEY))) - { - int game_index = 0; - char *curpoint = &readbuf[strlen(DATAFILE_TAG_KEY) + 1]; - char *pch = NULL; - char *ends = &readbuf[strlen(readbuf) - 1]; - - while (curpoint < ends) - { - // search for comma - pch = strpbrk(curpoint, ","); - - // found it - if (pch) - { - // copy data and validate driver - int len = pch - curpoint; - strncpy(name, curpoint, len); - name[len] = '\0'; - - if (!source) - game_index = GetGameNameIndex(name); - else - game_index = GetSrcDriverIndex(name); - - if (game_index >= 0) - { - idx->driver = &driver_list::driver(game_index); - idx->offset = ftell(fp); - idx++; - count++; - } - - // update current point - curpoint = pch + 1; - } - // if comma not found, copy data while until reach the end of string - else if (!pch && curpoint < ends) - { - int len = ends - curpoint; - strncpy(name, curpoint, len); - name[len] = '\0'; - - if (!source) - game_index = GetGameNameIndex(name); - else - game_index = GetSrcDriverIndex(name); - - if (game_index >= 0) - { - idx->driver = &driver_list::driver(game_index); - idx->offset = ftell(fp); - idx++; - count++; - } - - // update current point - curpoint = ends; - } - } - } - } - - /* mark end of index */ - idx->offset = 0L; - idx->driver = 0; - return count; -} - -/************************************************************************** - * load_datafile_text - * - * Loads text field for a driver into the buffer specified. Specify the - * driver, a pointer to the buffer, the buffer size, the index created by - * index_datafile(), and the desired text field (e.g., DATAFILE_TAG_BIO). - * - * Returns 0 if successful. - **************************************************************************/ -static int load_datafile_text(const game_driver *drv, char *buffer, int bufsize, struct tDatafileIndex *idx, const char *tag, int source_file, int mameinfo) -{ - char readbuf[16384]; - - *buffer = '\0'; - - if (!source_file) - { - /* find driver in datafile index */ - while (idx->driver) - { - if (idx->driver == drv) - break; - - idx++; - } - } - else - { - /* find source file in datafile index */ - while (idx->driver) - { - if (idx->driver->source_file == drv->source_file) - break; - - idx++; - } - } - - if (idx->driver == 0) - return 1; /* driver not found in index */ - - /* seek to correct point in datafile */ - if (ParseSeek (idx->offset, SEEK_SET)) - return 1; - - /* read text until buffer is full or end of entry is encountered */ - while (fgets(readbuf, 16384, fp)) - { - if (!core_strnicmp(DATAFILE_TAG_END, readbuf, strlen(DATAFILE_TAG_END))) - break; - - if (!core_strnicmp(tag, readbuf, strlen(tag))) - continue; - - if (strlen(buffer) + strlen(readbuf) > bufsize) - break; - - if (mameinfo) - { - char *temp = strtok(readbuf, "\r\n\r\n"); - if (temp != nullptr) - strcat(buffer, temp); - else - strcat(buffer, readbuf); - } - else - strcat(buffer, readbuf); - } - - return 0; -} - -/************************************************************************** - * load_driver_history - * Load history text for the specified driver into the specified buffer. - * Combines $bio field of HISTORY.DAT with $mame field of MAMEINFO.DAT. - * - * Returns 0 if successful. - * - * NOTE: For efficiency the indices are never freed (intentional leak). - **************************************************************************/ -int load_driver_history(const game_driver *drv, char *buffer, int bufsize, int filenum) -{ - int history = 0; - - *buffer = 0; - - if (filenum) - snprintf(filename, ARRAY_LENGTH(filename), "%s\\sysinfo.dat", GetDatsDir()); - else - snprintf(filename, ARRAY_LENGTH(filename), "%s\\history.dat", GetDatsDir()); - - /* try to open history datafile */ - if (filenum) - { - if (ParseOpen(filename)) - { - /* create index if necessary */ - if (sysinfo_idx) - history = 1; - else - history = (index_datafile (&sysinfo_idx, 0) != 0); - - /* load history text (append)*/ - if (sysinfo_idx) - { - strcat(buffer, "\n**** SYSINFO: ****\n\n"); - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, sysinfo_idx, DATAFILE_TAG_BIO, 0, 0); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - history = 0; - } - - ParseClose(); - } - } - else - { - if (ParseOpen(filename)) - { - /* create index if necessary */ - if (hist_idx) - history = 1; - else - history = (index_datafile (&hist_idx, 0) != 0); - - /* load history text (append)*/ - if (hist_idx) - { - strcat(buffer, "\n**** HISTORY: ****\n\n"); - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, hist_idx, DATAFILE_TAG_BIO, 0, 0); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - history = 0; - } - - ParseClose(); - } - } - - strcat(buffer, "\n"); - return (history == 0); -} - -int load_driver_mameinfo(const game_driver *drv, char *buffer, int bufsize, int filenum) -{ - machine_config config(*drv, MameUIGlobal()); - const game_driver *parent = NULL; - char name[512]; - int mameinfo = 0; - int is_bios = 0; - - *buffer = 0; - - switch (filenum) - { - case 0: - snprintf(filename, ARRAY_LENGTH(filename), "%s\\mameinfo.dat", GetDatsDir()); - strcat(buffer, "\n**** MAMEINFO: ****\n\n"); - break; - case 1: - snprintf(filename, ARRAY_LENGTH(filename), "%s\\messinfo.dat", GetDatsDir()); - strcat(buffer, "\n**** MESSINFO: ****\n\n"); - break; - case 2: - snprintf(filename, ARRAY_LENGTH(filename), "%s\\gameinit.dat", GetDatsDir()); - strcat(buffer, "\n**** GAMEINIT: ****\n\n"); - break; - default: - break; - } - - if (filenum < 2) - { - /* List the game info 'flags' */ - if (drv->flags & MACHINE_NOT_WORKING) - strcat(buffer, "THIS GAME DOESN'T WORK PROPERLY\n"); - - if (drv->flags & MACHINE_UNEMULATED_PROTECTION) - strcat(buffer, "The game has protection which isn't fully emulated.\n"); - - if (drv->flags & MACHINE_IMPERFECT_GRAPHICS) - strcat(buffer, "The video emulation isn't 100% accurate.\n"); - - if (drv->flags & MACHINE_WRONG_COLORS) - strcat(buffer, "The colors are completely wrong.\n"); - - if (drv->flags & MACHINE_IMPERFECT_COLORS) - strcat(buffer, "The colors aren't 100% accurate.\n"); - - if (drv->flags & MACHINE_NO_SOUND) - strcat(buffer, "The game lacks sound.\n"); - - if (drv->flags & MACHINE_IMPERFECT_SOUND) - strcat(buffer, "The sound emulation isn't 100% accurate.\n"); - - if (drv->flags & MACHINE_SUPPORTS_SAVE) - strcat(buffer, "Save state support.\n"); - - if (drv->flags & MACHINE_MECHANICAL) - strcat(buffer, "The game contains mechanical parts.\n"); - - strcat(buffer, "\n"); - - if (drv->flags & MACHINE_IS_BIOS_ROOT) - is_bios = 1; - } - - /* try to open mameinfo datafile */ - if (ParseOpen(filename)) - { - if (filenum == 2) - { - /* create index if necessary */ - if (gameinit_idx) - mameinfo = 1; - else - mameinfo = (index_datafile (&gameinit_idx, 0) != 0); - - /* load informational text (append) */ - if (gameinit_idx) - { - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, gameinit_idx, DATAFILE_TAG_MAME, 0, 1); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - mameinfo = 0; - } - } - else - if (filenum == 1) - { - /* create index if necessary */ - if (mess_idx) - mameinfo = 1; - else - mameinfo = (index_datafile (&mess_idx, 0) != 0); - - /* load informational text (append) */ - if (mess_idx) - { - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, mess_idx, DATAFILE_TAG_MAME, 0, 1); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - mameinfo = 0; - } - } - else - if (filenum == 0) - { - /* create index if necessary */ - if (mame_idx) - mameinfo = 1; - else - mameinfo = (index_datafile (&mame_idx, 0) != 0); - - /* load informational text (append) */ - if (mame_idx) - { - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, mame_idx, DATAFILE_TAG_MAME, 0, 1); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - mameinfo = 0; - } - } - - ParseClose(); - } - - if (filenum > 1) - return (mameinfo == 0); - - /* GAME INFORMATIONS */ - snprintf(name, ARRAY_LENGTH(name), "\nGAME: %s\n", drv->name); - strcat(buffer, name); - snprintf(name, ARRAY_LENGTH(name), "%s", drv->description); - strcat(buffer, name); - snprintf(name, ARRAY_LENGTH(name), " (%s %s)\n\nCPU:\n", drv->manufacturer, drv->year); - strcat(buffer, name); - /* iterate over CPUs */ - for (device_execute_interface &cpu : execute_interface_iterator(config.root_device())) - { - if (cpu.device().clock() >= 1000000) - snprintf(name, ARRAY_LENGTH(name), "%s %d.%06d MHz\n", cpu.device().name(), cpu.device().clock() / 1000000, cpu.device().clock() % 1000000); - else - snprintf(name, ARRAY_LENGTH(name), "%s %d.%03d kHz\n", cpu.device().name(), cpu.device().clock() / 1000, cpu.device().clock() % 1000); - - strcat(buffer, name); - } - - strcat(buffer, "\nSOUND:\n"); - int has_sound = 0; - /* iterate over sound chips */ - - for (device_sound_interface &sound : sound_interface_iterator(config.root_device())) - { - char tmpname[1024]; - - snprintf(tmpname, ARRAY_LENGTH(tmpname), "%s", sound.device().name()); - int clock = sound.device().clock(); - has_sound = 1; - - strcat(buffer, tmpname); - - if (clock) - { - if (clock >= 1000000) - snprintf(name, ARRAY_LENGTH(name), " %d.%06d MHz", clock / 1000000, clock % 1000000); - else - snprintf(name, ARRAY_LENGTH(name), " %d.%03d kHz", clock / 1000, clock % 1000); - - strcat(buffer, name); - } - - strcat(buffer, "\n"); - } - - if (has_sound) - { - speaker_device_iterator iter(config.root_device()); - int channels = iter.count(); - - if(channels == 1) - snprintf(name, ARRAY_LENGTH(name), "%d Channel\n",channels); - else - snprintf(name, ARRAY_LENGTH(name), "%dx Channels\n",channels); - - strcat(buffer, name); - } - - strcat(buffer, "\nVIDEO:\n"); - screen_device_iterator screeniter(config.root_device()); - const screen_device *screen1 = screeniter.first(); - - if (screen1 == nullptr) - strcat(buffer, "Screenless\n"); - else if (screen1->screen_type() == SCREEN_TYPE_VECTOR) - strcat(buffer,"Vector\n"); - else - { - for (screen_device &screen : screen_device_iterator(config.root_device())) - { - if (drv->flags & ORIENTATION_SWAP_XY) - snprintf(name, ARRAY_LENGTH(name), "%d x %d (V)", screen.visible_area().height(), screen.visible_area().width()); - else - snprintf(name, ARRAY_LENGTH(name), "%d x %d (H)", screen.visible_area().width(), screen.visible_area().height()); - - strcat(buffer, name); - snprintf(name, ARRAY_LENGTH(name), " %f Hz", ATTOSECONDS_TO_HZ(screen.refresh_attoseconds())); - strcat(buffer, name); - strcat(buffer, "\n"); - } - } - - strcat(buffer, "\nROM REGION:\n"); - int g = driver_list::clone(*drv); - - if (g != -1) - parent = &driver_list::driver(g); - - for (device_t &device : device_iterator(config.root_device())) - { - for (const rom_entry *region = rom_first_region(device); region; region = rom_next_region(region)) - { - for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) - { - util::hash_collection hashes(ROM_GETHASHDATA(rom)); - - if (g != -1) - { - machine_config pconfig(*parent, MameUIGlobal()); - device_iterator deviter(pconfig.root_device()); - - for (device_t &device : device_iterator(pconfig.root_device())) - for (const rom_entry *pregion = rom_first_region(device); pregion; pregion = rom_next_region(pregion)) - for (const rom_entry *prom = rom_first_file(pregion); prom; prom = rom_next_file(prom)) - { - util::hash_collection phashes(ROM_GETHASHDATA(prom)); - - if (hashes == phashes) - break; - } - } - - snprintf(name, ARRAY_LENGTH(name), "%-16s \t", ROM_GETNAME(rom)); - strcat(buffer, name); - snprintf(name, ARRAY_LENGTH(name), "%09d \t", rom_file_size(rom)); - strcat(buffer, name); - snprintf(name, ARRAY_LENGTH(name), "%-10s", ROMREGION_GETTAG(region)); - strcat(buffer, name); - strcat(buffer, "\n"); - } - } - } - - for (samples_device &device : samples_device_iterator(config.root_device())) - { - samples_iterator sampiter(device); - - if (sampiter.altbasename() ) - { - snprintf(name, ARRAY_LENGTH(name), "\nSAMPLES (%s):\n", sampiter.altbasename()); - strcat(buffer, name); - } - - std::unordered_set<std::string> already_printed; - - for (const char *samplename = sampiter.first(); samplename; samplename = sampiter.next()) - { - // filter out duplicates - if (!already_printed.insert(samplename).second) - continue; - - // output the sample name - snprintf(name, ARRAY_LENGTH(name), "%s.wav\n", samplename); - strcat(buffer, name); - } - } - - if (!is_bios) - { - int g = driver_list::clone(*drv); - - if (g != -1) - drv = &driver_list::driver(g); - - strcat(buffer, "\nORIGINAL:\n"); - strcat(buffer, drv->description); - strcat(buffer, "\n\nCLONES:\n"); - - for (int i = 0; i < driver_list::total(); i++) - { - if (!strcmp (drv->name, driver_list::driver(i).parent)) - { - strcat(buffer, driver_list::driver(i).description); - strcat(buffer, "\n"); - } - } - } - - strcat(buffer, "\n"); - return (mameinfo == 0); -} - -int load_driver_driverinfo(const game_driver *drv, char *buffer, int bufsize, int filenum) -{ - int drivinfo = 0; - char source_file[40]; - char tmp[100]; - std::string temp = core_filename_extract_base(drv->source_file); - strcpy(source_file, temp.c_str()); - - *buffer = 0; - - if (filenum) - snprintf(filename, ARRAY_LENGTH(filename), "%s\\messinfo.dat", GetDatsDir()); - else - snprintf(filename, ARRAY_LENGTH(filename), "%s\\mameinfo.dat", GetDatsDir()); - - /* Print source code file */ - snprintf(tmp, ARRAY_LENGTH(tmp), "\n\nSOURCE: %s\n\n", source_file); - strcat(buffer, tmp); - - /* Try to open mameinfo datafile - driver section*/ - if (ParseOpen(filename)) - { - if (filenum) - { - /* create index if necessary */ - if (messdriv_idx) - drivinfo = 1; - else - drivinfo = (index_datafile (&messdriv_idx, 1) != 0); - - /* load informational text (append) */ - if (messdriv_idx) - { - int len = strlen(buffer); - int err = load_datafile_text(drv, buffer + len, bufsize - len, messdriv_idx, DATAFILE_TAG_DRIV, 1, 1); - - if (err) - drivinfo = 0; - } - } - else - { - /* create index if necessary */ - if (driv_idx) - drivinfo = 1; - else - drivinfo = (index_datafile (&driv_idx, 1) != 0); - - /* load informational text (append) */ - if (driv_idx) - { - int len = strlen(buffer); - int err = load_datafile_text(drv, buffer + len, bufsize - len, driv_idx, DATAFILE_TAG_DRIV, 1, 1); - - if (err) - drivinfo = 0; - } - } - ParseClose(); - } - - strcat(buffer, "\nGAMES SUPPORTED:\n"); - - for (int i = 0; i < driver_list::total(); i++) - { - if (!strcmp(source_file, GetDriverFilename(i)) && !(DriverIsBios(i))) - { - strcat(buffer, driver_list::driver(i).description); - strcat(buffer,"\n"); - } - } - - strcat(buffer, "\n\n"); - return (drivinfo == 0); -} - -int load_driver_command(const game_driver *drv, char *buffer, int bufsize) -{ - int command = 0; - - *buffer = 0; - snprintf(filename, ARRAY_LENGTH(filename), "%s\\command.dat", GetDatsDir()); - strcat(buffer, "\n**** COMMAND: ****\n\n"); - - /* try to open command datafile */ - if (ParseOpen(filename)) - { - /* create index if necessary */ - if (cmd_idx) - command = 1; - else - command = (index_datafile (&cmd_idx, 0) != 0); - - /* load informational text (append) */ - if (cmd_idx) - { - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, cmd_idx, DATAFILE_TAG_CMD, 0, 0); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - command = 0; - } - - ParseClose(); - } - - strcat(buffer, "\n\n"); - return (command == 0); -} - -int load_driver_scoreinfo(const game_driver *drv, char *buffer, int bufsize) -{ - int scoreinfo = 0; - - *buffer = 0; - snprintf(filename, ARRAY_LENGTH(filename), "%s\\story.dat", GetDatsDir()); - - /* try to open story datafile */ - if (ParseOpen(filename)) - { - /* create index if necessary */ - if (score_idx) - scoreinfo = 1; - else - scoreinfo = (index_datafile (&score_idx, 0) != 0); - - /* load informational text (append) */ - if (score_idx) - { - int len = strlen(buffer); - int err = 0; - const game_driver *gdrv; - gdrv = drv; - - do - { - err = load_datafile_text(gdrv, buffer + len, bufsize - len, score_idx, DATAFILE_TAG_SCORE, 0, 0); - int g = driver_list::clone(*gdrv); - - if (g!=-1) - gdrv = &driver_list::driver(g); - else - gdrv = NULL; - } while (err && gdrv); - - if (err) - scoreinfo = 0; - } - - ParseClose(); - } - - return (scoreinfo == 0); -} diff --git a/docs/release/src/osd/winui/datafile.h b/docs/release/src/osd/winui/datafile.h deleted file mode 100644 index a6ef9952e25..00000000000 --- a/docs/release/src/osd/winui/datafile.h +++ /dev/null @@ -1,15 +0,0 @@ -// For licensing and usage information, read docs/winui_license.txt -//**************************************************************************** - -#pragma once - -#ifndef DATAFILE_H -#define DATAFILE_H - -int load_driver_history(const game_driver *drv, char *buffer, int bufsize, int filenum); -int load_driver_mameinfo(const game_driver *drv, char *buffer, int bufsize, int filenum); -int load_driver_driverinfo(const game_driver *drv, char *buffer, int bufsize, int filenum); -int load_driver_command(const game_driver *drv, char *buffer, int bufsize); -int load_driver_scoreinfo(const game_driver *drv, char *buffer, int bufsize); - -#endif diff --git a/docs/release/src/osd/winui/datamap.cpp b/docs/release/src/osd/winui/datamap.cpp index 58873d356e8..fa4d6e05b4d 100644 --- a/docs/release/src/osd/winui/datamap.cpp +++ b/docs/release/src/osd/winui/datamap.cpp @@ -8,7 +8,6 @@ //============================================================ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <commctrl.h> diff --git a/docs/release/src/osd/winui/dialogs.cpp b/docs/release/src/osd/winui/dialogs.cpp index 5212e76300f..d39fd6c7656 100644 --- a/docs/release/src/osd/winui/dialogs.cpp +++ b/docs/release/src/osd/winui/dialogs.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ -#define WIN32_LEAN_AND_MEAN #ifdef _MSC_VER #ifndef NONAMELESSUNION diff --git a/docs/release/src/osd/winui/dijoystick.cpp b/docs/release/src/osd/winui/dijoystick.cpp index 34251a9595a..1136c7f0179 100644 --- a/docs/release/src/osd/winui/dijoystick.cpp +++ b/docs/release/src/osd/winui/dijoystick.cpp @@ -8,7 +8,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // standard C headers diff --git a/docs/release/src/osd/winui/directdraw.cpp b/docs/release/src/osd/winui/directdraw.cpp index 0d2c1a298d0..c85f97f8a76 100644 --- a/docs/release/src/osd/winui/directdraw.cpp +++ b/docs/release/src/osd/winui/directdraw.cpp @@ -9,7 +9,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // MAME/MAMEUI headers diff --git a/docs/release/src/osd/winui/directinput.cpp b/docs/release/src/osd/winui/directinput.cpp index fca5ff8cac7..5e5c554a95c 100644 --- a/docs/release/src/osd/winui/directinput.cpp +++ b/docs/release/src/osd/winui/directinput.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // MAME/MAMEUI headers diff --git a/docs/release/src/osd/winui/directories.cpp b/docs/release/src/osd/winui/directories.cpp index f1e0e0a0167..25928d136be 100644 --- a/docs/release/src/osd/winui/directories.cpp +++ b/docs/release/src/osd/winui/directories.cpp @@ -9,7 +9,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> diff --git a/docs/release/src/osd/winui/dirwatch.cpp b/docs/release/src/osd/winui/dirwatch.cpp index b4a3537b005..62d0ac7d7e9 100644 --- a/docs/release/src/osd/winui/dirwatch.cpp +++ b/docs/release/src/osd/winui/dirwatch.cpp @@ -2,7 +2,6 @@ //**************************************************************************** // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // standard C headers diff --git a/docs/release/src/osd/winui/dxdecode.cpp b/docs/release/src/osd/winui/dxdecode.cpp index 3009084f0c7..7fd82828fe8 100644 --- a/docs/release/src/osd/winui/dxdecode.cpp +++ b/docs/release/src/osd/winui/dxdecode.cpp @@ -2,7 +2,6 @@ //**************************************************************************** // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <ddraw.h> diff --git a/docs/release/src/osd/winui/game_opts.h b/docs/release/src/osd/winui/game_opts.h index d53638ef5e0..5f5f98d737b 100644 --- a/docs/release/src/osd/winui/game_opts.h +++ b/docs/release/src/osd/winui/game_opts.h @@ -4,72 +4,6 @@ #ifndef __GAME_OPTS_H__ #define __GAME_OPTS_H__ -#include "emu.h" -#include "drivenum.h" -#include "win_options.h" - -class string_iterator -{ -public: - // simple construction/destruction - string_iterator() { copy(""); } - string_iterator(const char *str) { copy(str); } - - // copy helpers - void copy(const char *str) - { - /* reset the structure */ - m_str.clear(); - m_base = (str != NULL) ? str : ""; - m_cur = m_base; - } - - // character searching helpers - int next(int separator, bool duplicate = false) - { - const char *semi; - - /* if none left, return FALSE to indicate we are done */ - if (m_index != 0 && *m_cur == 0) - return false; - - /* ignore duplicates of the separator */ - while (duplicate && m_index == 0 && *m_cur == separator) - m_cur++; - - if (duplicate && *m_cur == 0) - return false; - - /* copy up to the next separator */ - semi = strchr(m_cur, separator); - - if (semi == NULL) - semi = m_cur + strlen(m_cur); - - m_str.assign(m_cur, semi - m_cur); - m_cur = (*semi == 0) ? semi : semi + 1; - - /* ignore duplicates of the separator */ - while (duplicate && *m_cur && *m_cur == separator) - m_cur++; - - /* bump the index and return true */ - m_index++; - - return true; - } - - // C string conversion operators and helpers - operator const char *() const { return m_str.c_str(); } - const char *c_str() const { return m_str.c_str(); } - -private: - std::string m_str; - const char * m_base; - const char * m_cur; - int m_index; -}; - class game_options { public: @@ -105,7 +39,7 @@ public: options_entry entry[2] = { { 0 }, { 0 } }; // 1:Rom, 2:Sample, 3:Cache, 4:Play Count, 5:Play Time - entry[0].defvalue = "-1,-1,-1"; + entry[0].defvalue = "-1;-1;-1"; entry[0].flags = OPTION_STRING; entry[0].description = NULL; @@ -134,14 +68,11 @@ public: void output_ini(std::string &buffer, const char *header = NULL) { - std::string inibuffer; - //inibuffer.expand(768*1024); - - m_info.output_ini(inibuffer); + std::string inibuffer = m_info.output_ini(); if (header && !inibuffer.empty()) { - buffer.append(string_format("\n#\n# %s\n#\n", header)); + buffer.append(string_format("#\n# %s\n#\n", header)); buffer.append(inibuffer); } } @@ -161,14 +92,15 @@ public: void load_settings(const char *str, int index) { - string_iterator value_str(str); + path_iterator path(str); + std::string curpath; int value_int; for (int i = 0; i < 5; i++) { - if ( value_str.next(',') ) + if ( path.next(curpath) ) { - if (value_str && (sscanf(value_str.c_str(), "%d", &value_int) == 1)) + if (!curpath.empty() && (sscanf(curpath.c_str(), "%d", &value_int) == 1)) { switch (i) { @@ -192,7 +124,7 @@ public: for (int i = 0; i < m_total; i++) { - value_str = string_format("%d,%d,%d,%d,%d", m_list[i].rom, m_list[i].sample, m_list[i].cache, m_list[i].play_count, m_list[i].play_time); + value_str = string_format("%d;%d;%d;%d;%d", m_list[i].rom, m_list[i].sample, m_list[i].cache, m_list[i].play_count, m_list[i].play_time); m_info.set_value(driver_list::driver(i).name, value_str.c_str(), OPTION_PRIORITY_CMDLINE, error_string); } } @@ -215,7 +147,7 @@ public: } private: - win_options m_info; + core_options m_info; int m_total; struct driver_options diff --git a/docs/release/src/osd/winui/help.cpp b/docs/release/src/osd/winui/help.cpp index a6def8f630c..971c369bd86 100644 --- a/docs/release/src/osd/winui/help.cpp +++ b/docs/release/src/osd/winui/help.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> // MAME/MAMEUI headers diff --git a/docs/release/src/osd/winui/history.cpp b/docs/release/src/osd/winui/history.cpp index 1fcd5d388a1..b625ed6760d 100644 --- a/docs/release/src/osd/winui/history.cpp +++ b/docs/release/src/osd/winui/history.cpp @@ -1,25 +1,941 @@ // For licensing and usage information, read docs/winui_license.txt +// MASTER //**************************************************************************** /*************************************************************************** - history.c + history.cpp - history functions. + * history functions. + * History database engine + * Collect all information on the selected driver, and return it as + * a string. Called by winui.cpp + * + * Token parsing by Neil Bradley + * Modifications and higher-level functions by John Butler + + * Further work by Mamesick and Robbbert ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> -#include <stdio.h> // MAME/MAMEUI headers #include "emu.h" #include "drivenum.h" #include "mui_util.h" -#include "datafile.h" -#include "history.h" +#include "mui_opts.h" +#include "sound/samples.h" + +#define MAX_TOKEN_LENGTH 256 +#define DATAFILE_TAG '$' + +/**************************************************************************** + * datafile constants + ****************************************************************************/ +static const char *DATAFILE_TAG_KEY = "$info"; +static const char *DATAFILE_TAG_BIO = "$bio"; +static const char *DATAFILE_TAG_MAME = "$mame"; +static const char *DATAFILE_TAG_DRIV = "$drv"; +static const char *DATAFILE_TAG_CMD = "$cmd"; +static const char *DATAFILE_TAG_SCORE = "$story"; +static const char *DATAFILE_TAG_END = "$end"; + +/**************************************************************************** + * private data for parsing functions + ****************************************************************************/ +static FILE *fp = nullptr; /* Our file pointer */ +static UINT64 dwFilePos = 0; /* file position */ +static char filename[MAX_PATH]; /* datafile name */ + +struct tDatafileIndex +{ + long offset; + const game_driver *driver; +}; + +static struct tDatafileIndex *gameinit_idx = nullptr; +static struct tDatafileIndex *hist_idx = nullptr; +static struct tDatafileIndex *mame_idx = nullptr; +static struct tDatafileIndex *driv_idx = nullptr; +static struct tDatafileIndex *sysinfo_idx = nullptr; +static struct tDatafileIndex *mess_idx = nullptr; +static struct tDatafileIndex *messdriv_idx = nullptr; +static struct tDatafileIndex *cmd_idx = nullptr; +static struct tDatafileIndex *score_idx = nullptr; + +/**************************************************************************** +* Create an array with sorted sourcedrivers for the function +* index_datafile_drivinfo to speed up the datafile access +****************************************************************************/ + +typedef struct +{ + const char *srcdriver; + int index; +} srcdriver_data_type; + +static srcdriver_data_type *sorted_srcdrivers = nullptr; + +static int SrcDriverDataCompareFunc(const void *arg1, const void *arg2) +{ + return strcmp(((srcdriver_data_type *)arg1)->srcdriver, ((srcdriver_data_type *)arg2)->srcdriver); +} + +static int GetSrcDriverIndex(const char *srcdriver) +{ + srcdriver_data_type *srcdriver_index_info; + srcdriver_data_type key; + key.srcdriver = srcdriver; + int num_games = driver_list::total(); + + if (sorted_srcdrivers == NULL) + { + /* initialize array of game names/indices */ + sorted_srcdrivers = (srcdriver_data_type *)malloc(sizeof(srcdriver_data_type) * num_games); + for (int i = 0; i < num_games; i++) + { + sorted_srcdrivers[i].srcdriver = driver_list::driver(i).source_file+32; + sorted_srcdrivers[i].index = i; + } + qsort(sorted_srcdrivers,num_games,sizeof(srcdriver_data_type),SrcDriverDataCompareFunc); + } + + srcdriver_index_info = (srcdriver_data_type *)bsearch(&key, sorted_srcdrivers, num_games, sizeof(srcdriver_data_type), SrcDriverDataCompareFunc); + + if (srcdriver_index_info) + return srcdriver_index_info->index; + else + return -1; +} + +/**************************************************************************** + * ParseClose - Closes the existing opened file (if any) + ****************************************************************************/ +static void ParseClose(void) +{ + /* If the file is open, time for fclose. */ + if (fp) + fclose(fp); +} + +/**************************************************************************** + * ParseOpen - Open up file for reading + ****************************************************************************/ +static BOOL ParseOpen(const char *pszFilename) +{ + /* MAME core file parsing functions fail in recognizing UNICODE chars in UTF-8 without BOM, + so it's better and faster use standard C fileio functions */ + fp = fopen(pszFilename, "r"); + + if (fp == NULL) + return FALSE; + + /* Otherwise, prepare! */ + dwFilePos = 0; + /* identify text file type first */ + fgetc(fp); + fseek(fp, dwFilePos, SEEK_SET); + return TRUE; +} + +/**************************************************************************** + * ParseSeek - Move the file position indicator + ****************************************************************************/ +static UINT8 ParseSeek(UINT64 offset, int whence) +{ + int result = fseek(fp, offset, whence); + + if (result == 0) + dwFilePos = ftell(fp); + + return (UINT8)result; +} + +/************************************************************************** + ************************************************************************** + * + * Datafile functions + * + ************************************************************************** + **************************************************************************/ + + /************************************************************************** + * index_datafile + * Create an index for the records in the currently open datafile. + * + * Returns 0 on error, or the number of index entries created. + **************************************************************************/ +static int index_datafile(struct tDatafileIndex **_index, int source) +{ + struct tDatafileIndex *idx; + int count = 0; + char readbuf[512]; + char name[40]; + int num_games = driver_list::total(); + + /* rewind file */ + if (ParseSeek (0L, SEEK_SET)) + return 0; + + /* allocate index */ + idx = *_index = global_alloc_array(tDatafileIndex, (num_games + 1) * sizeof (struct tDatafileIndex)); + + if (!idx) + return 0; + + while (fgets(readbuf, 512, fp)) + { + /* DATAFILE_TAG_KEY identifies the driver */ + if (!core_strnicmp(DATAFILE_TAG_KEY, readbuf, strlen(DATAFILE_TAG_KEY))) + { + int game_index = 0; + char *curpoint = &readbuf[strlen(DATAFILE_TAG_KEY) + 1]; + char *pch = NULL; + char *ends = &readbuf[strlen(readbuf) - 1]; + + while (curpoint < ends) + { + // search for comma + pch = strpbrk(curpoint, ","); + + // found it + if (pch) + { + // copy data and validate driver + int len = pch - curpoint; + strncpy(name, curpoint, len); + name[len] = '\0'; + + if (!source) + game_index = GetGameNameIndex(name); + else + game_index = GetSrcDriverIndex(name); + + if (game_index >= 0) + { + idx->driver = &driver_list::driver(game_index); + idx->offset = ftell(fp); + idx++; + count++; + } + + // update current point + curpoint = pch + 1; + } + // if comma not found, copy data while until reach the end of string + else if (!pch && curpoint < ends) + { + int len = ends - curpoint; + strncpy(name, curpoint, len); + name[len] = '\0'; + + if (!source) + game_index = GetGameNameIndex(name); + else + game_index = GetSrcDriverIndex(name); + + if (game_index >= 0) + { + idx->driver = &driver_list::driver(game_index); + idx->offset = ftell(fp); + idx++; + count++; + } + + // update current point + curpoint = ends; + } + } + } + } + + /* mark end of index */ + idx->offset = 0L; + idx->driver = 0; + return count; +} + +/************************************************************************** + * load_datafile_text + * + * Loads text field for a driver into the buffer specified. Specify the + * driver, a pointer to the buffer, the buffer size, the index created by + * index_datafile(), and the desired text field (e.g., DATAFILE_TAG_BIO). + * + * Returns 0 if successful. + **************************************************************************/ +static int load_datafile_text(const game_driver *drv, char *buffer, int bufsize, struct tDatafileIndex *idx, const char *tag, int source_file, int mameinfo) +{ + char readbuf[16384]; + + *buffer = '\0'; + + if (!source_file) + { + /* find driver in datafile index */ + while (idx->driver) + { + if (idx->driver == drv) + break; + + idx++; + } + } + else + { + /* find source file in datafile index */ + while (idx->driver) + { + if (idx->driver->source_file == drv->source_file) + break; + + idx++; + } + } + + if (idx->driver == 0) + return 1; /* driver not found in index */ + + /* seek to correct point in datafile */ + if (ParseSeek (idx->offset, SEEK_SET)) + return 1; + + /* read text until buffer is full or end of entry is encountered */ + while (fgets(readbuf, 16384, fp)) + { + if (!core_strnicmp(DATAFILE_TAG_END, readbuf, strlen(DATAFILE_TAG_END))) + break; + + if (!core_strnicmp(tag, readbuf, strlen(tag))) + continue; + + if (strlen(buffer) + strlen(readbuf) > bufsize) + break; + + if (mameinfo) + { + char *temp = strtok(readbuf, "\r\n\r\n"); + if (temp != nullptr) + strcat(buffer, temp); + else + strcat(buffer, readbuf); + } + else + strcat(buffer, readbuf); + } + + return 0; +} + +/************************************************************************** + * load_driver_history + * Load history text for the specified driver into the specified buffer. + * Combines $bio field of HISTORY.DAT with $mame field of MAMEINFO.DAT. + * + * Returns 0 if successful. + * + * NOTE: For efficiency the indices are never freed (intentional leak). + **************************************************************************/ +static int load_driver_history(const game_driver *drv, char *buffer, int bufsize, int filenum) +{ + int history = 0; + + *buffer = 0; + + if (filenum) + snprintf(filename, ARRAY_LENGTH(filename), "%s\\sysinfo.dat", GetDatsDir()); + else + snprintf(filename, ARRAY_LENGTH(filename), "%s\\history.dat", GetDatsDir()); + + /* try to open history datafile */ + if (filenum) + { + if (ParseOpen(filename)) + { + /* create index if necessary */ + if (sysinfo_idx) + history = 1; + else + history = (index_datafile (&sysinfo_idx, 0) != 0); + + /* load history text (append)*/ + if (sysinfo_idx) + { + strcat(buffer, "\n**** SYSINFO: ****\n\n"); + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, sysinfo_idx, DATAFILE_TAG_BIO, 0, 0); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + history = 0; + } + + ParseClose(); + } + } + else + { + if (ParseOpen(filename)) + { + /* create index if necessary */ + if (hist_idx) + history = 1; + else + history = (index_datafile (&hist_idx, 0) != 0); + + /* load history text (append)*/ + if (hist_idx) + { + strcat(buffer, "\n**** HISTORY: ****\n\n"); + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, hist_idx, DATAFILE_TAG_BIO, 0, 0); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + history = 0; + } + + ParseClose(); + } + } + + strcat(buffer, "\n"); + return (history == 0); +} + +static int load_driver_mameinfo(const game_driver *drv, char *buffer, int bufsize, int filenum) +{ + machine_config config(*drv, MameUIGlobal()); + const game_driver *parent = NULL; + char name[512]; + int mameinfo = 0; + int is_bios = 0; + + *buffer = 0; + + switch (filenum) + { + case 0: + snprintf(filename, ARRAY_LENGTH(filename), "%s\\mameinfo.dat", GetDatsDir()); + strcat(buffer, "\n**** MAMEINFO: ****\n\n"); + break; + case 1: + snprintf(filename, ARRAY_LENGTH(filename), "%s\\messinfo.dat", GetDatsDir()); + strcat(buffer, "\n**** MESSINFO: ****\n\n"); + break; + case 2: + snprintf(filename, ARRAY_LENGTH(filename), "%s\\gameinit.dat", GetDatsDir()); + strcat(buffer, "\n**** GAMEINIT: ****\n\n"); + break; + default: + break; + } + + if (filenum < 2) + { + /* List the game info 'flags' */ + if (drv->flags & MACHINE_NOT_WORKING) + strcat(buffer, "THIS GAME DOESN'T WORK PROPERLY\n"); + + if (drv->flags & MACHINE_UNEMULATED_PROTECTION) + strcat(buffer, "The game has protection which isn't fully emulated.\n"); + + if (drv->flags & MACHINE_IMPERFECT_GRAPHICS) + strcat(buffer, "The video emulation isn't 100% accurate.\n"); + + if (drv->flags & MACHINE_WRONG_COLORS) + strcat(buffer, "The colors are completely wrong.\n"); + if (drv->flags & MACHINE_IMPERFECT_COLORS) + strcat(buffer, "The colors aren't 100% accurate.\n"); + + if (drv->flags & MACHINE_NO_SOUND) + strcat(buffer, "The game lacks sound.\n"); + + if (drv->flags & MACHINE_IMPERFECT_SOUND) + strcat(buffer, "The sound emulation isn't 100% accurate.\n"); + + if (drv->flags & MACHINE_SUPPORTS_SAVE) + strcat(buffer, "Save state support.\n"); + + if (drv->flags & MACHINE_MECHANICAL) + strcat(buffer, "The game contains mechanical parts.\n"); + + strcat(buffer, "\n"); + + if (drv->flags & MACHINE_IS_BIOS_ROOT) + is_bios = 1; + } + + /* try to open mameinfo datafile */ + if (ParseOpen(filename)) + { + if (filenum == 2) + { + /* create index if necessary */ + if (gameinit_idx) + mameinfo = 1; + else + mameinfo = (index_datafile (&gameinit_idx, 0) != 0); + + /* load informational text (append) */ + if (gameinit_idx) + { + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, gameinit_idx, DATAFILE_TAG_MAME, 0, 1); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + mameinfo = 0; + } + } + else + if (filenum == 1) + { + /* create index if necessary */ + if (mess_idx) + mameinfo = 1; + else + mameinfo = (index_datafile (&mess_idx, 0) != 0); + + /* load informational text (append) */ + if (mess_idx) + { + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, mess_idx, DATAFILE_TAG_MAME, 0, 1); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + mameinfo = 0; + } + } + else + if (filenum == 0) + { + /* create index if necessary */ + if (mame_idx) + mameinfo = 1; + else + mameinfo = (index_datafile (&mame_idx, 0) != 0); + + /* load informational text (append) */ + if (mame_idx) + { + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, mame_idx, DATAFILE_TAG_MAME, 0, 1); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + mameinfo = 0; + } + } + + ParseClose(); + } + + if (filenum > 1) + return (mameinfo == 0); + + /* GAME INFORMATIONS */ + snprintf(name, ARRAY_LENGTH(name), "\nGAME: %s\n", drv->name); + strcat(buffer, name); + snprintf(name, ARRAY_LENGTH(name), "%s", drv->description); + strcat(buffer, name); + snprintf(name, ARRAY_LENGTH(name), " (%s %s)\n\nCPU:\n", drv->manufacturer, drv->year); + strcat(buffer, name); + /* iterate over CPUs */ + for (device_execute_interface &cpu : execute_interface_iterator(config.root_device())) + { + if (cpu.device().clock() >= 1000000) + snprintf(name, ARRAY_LENGTH(name), "%s %d.%06d MHz\n", cpu.device().name(), cpu.device().clock() / 1000000, cpu.device().clock() % 1000000); + else + snprintf(name, ARRAY_LENGTH(name), "%s %d.%03d kHz\n", cpu.device().name(), cpu.device().clock() / 1000, cpu.device().clock() % 1000); + + strcat(buffer, name); + } + + strcat(buffer, "\nSOUND:\n"); + int has_sound = 0; + /* iterate over sound chips */ + + for (device_sound_interface &sound : sound_interface_iterator(config.root_device())) + { + char tmpname[1024]; + + snprintf(tmpname, ARRAY_LENGTH(tmpname), "%s", sound.device().name()); + int clock = sound.device().clock(); + has_sound = 1; + + strcat(buffer, tmpname); + + if (clock) + { + if (clock >= 1000000) + snprintf(name, ARRAY_LENGTH(name), " %d.%06d MHz", clock / 1000000, clock % 1000000); + else + snprintf(name, ARRAY_LENGTH(name), " %d.%03d kHz", clock / 1000, clock % 1000); + + strcat(buffer, name); + } + + strcat(buffer, "\n"); + } + + if (has_sound) + { + speaker_device_iterator iter(config.root_device()); + int channels = iter.count(); + + if(channels == 1) + snprintf(name, ARRAY_LENGTH(name), "%d Channel\n",channels); + else + snprintf(name, ARRAY_LENGTH(name), "%dx Channels\n",channels); + + strcat(buffer, name); + } + + strcat(buffer, "\nVIDEO:\n"); + screen_device_iterator screeniter(config.root_device()); + const screen_device *screen1 = screeniter.first(); + + if (screen1 == nullptr) + strcat(buffer, "Screenless\n"); + else if (screen1->screen_type() == SCREEN_TYPE_VECTOR) + strcat(buffer,"Vector\n"); + else + { + for (screen_device &screen : screen_device_iterator(config.root_device())) + { + if (drv->flags & ORIENTATION_SWAP_XY) + snprintf(name, ARRAY_LENGTH(name), "%d x %d (V)", screen.visible_area().height(), screen.visible_area().width()); + else + snprintf(name, ARRAY_LENGTH(name), "%d x %d (H)", screen.visible_area().width(), screen.visible_area().height()); + + strcat(buffer, name); + snprintf(name, ARRAY_LENGTH(name), " %f Hz", ATTOSECONDS_TO_HZ(screen.refresh_attoseconds())); + strcat(buffer, name); + strcat(buffer, "\n"); + } + } + + strcat(buffer, "\nROM REGION:\n"); + int g = driver_list::clone(*drv); + + if (g != -1) + parent = &driver_list::driver(g); + + for (device_t &device : device_iterator(config.root_device())) + { + for (const rom_entry *region = rom_first_region(device); region; region = rom_next_region(region)) + { + for (const rom_entry *rom = rom_first_file(region); rom; rom = rom_next_file(rom)) + { + util::hash_collection hashes(ROM_GETHASHDATA(rom)); + + if (g != -1) + { + machine_config pconfig(*parent, MameUIGlobal()); + device_iterator deviter(pconfig.root_device()); + + for (device_t &device : device_iterator(pconfig.root_device())) + for (const rom_entry *pregion = rom_first_region(device); pregion; pregion = rom_next_region(pregion)) + for (const rom_entry *prom = rom_first_file(pregion); prom; prom = rom_next_file(prom)) + { + util::hash_collection phashes(ROM_GETHASHDATA(prom)); + + if (hashes == phashes) + break; + } + } + + snprintf(name, ARRAY_LENGTH(name), "%-16s \t", ROM_GETNAME(rom)); + strcat(buffer, name); + snprintf(name, ARRAY_LENGTH(name), "%09d \t", rom_file_size(rom)); + strcat(buffer, name); + snprintf(name, ARRAY_LENGTH(name), "%-10s", ROMREGION_GETTAG(region)); + strcat(buffer, name); + strcat(buffer, "\n"); + } + } + } + + for (samples_device &device : samples_device_iterator(config.root_device())) + { + samples_iterator sampiter(device); + + if (sampiter.altbasename() ) + { + snprintf(name, ARRAY_LENGTH(name), "\nSAMPLES (%s):\n", sampiter.altbasename()); + strcat(buffer, name); + } + + std::unordered_set<std::string> already_printed; + + for (const char *samplename = sampiter.first(); samplename; samplename = sampiter.next()) + { + // filter out duplicates + if (!already_printed.insert(samplename).second) + continue; + + // output the sample name + snprintf(name, ARRAY_LENGTH(name), "%s.wav\n", samplename); + strcat(buffer, name); + } + } + + if (!is_bios) + { + int g = driver_list::clone(*drv); + + if (g != -1) + drv = &driver_list::driver(g); + + strcat(buffer, "\nORIGINAL:\n"); + strcat(buffer, drv->description); + strcat(buffer, "\n\nCLONES:\n"); + + for (int i = 0; i < driver_list::total(); i++) + { + if (!strcmp (drv->name, driver_list::driver(i).parent)) + { + strcat(buffer, driver_list::driver(i).description); + strcat(buffer, "\n"); + } + } + } + + strcat(buffer, "\n"); + return (mameinfo == 0); +} + +static int load_driver_driverinfo(const game_driver *drv, char *buffer, int bufsize, int filenum) +{ + int drivinfo = 0; + char source_file[40]; + char tmp[100]; + std::string temp = core_filename_extract_base(drv->source_file); + strcpy(source_file, temp.c_str()); + + *buffer = 0; + + if (filenum) + snprintf(filename, ARRAY_LENGTH(filename), "%s\\messinfo.dat", GetDatsDir()); + else + snprintf(filename, ARRAY_LENGTH(filename), "%s\\mameinfo.dat", GetDatsDir()); + + /* Print source code file */ + snprintf(tmp, ARRAY_LENGTH(tmp), "\n\nSOURCE: %s\n\n", source_file); + strcat(buffer, tmp); + + /* Try to open mameinfo datafile - driver section*/ + if (ParseOpen(filename)) + { + if (filenum) + { + /* create index if necessary */ + if (messdriv_idx) + drivinfo = 1; + else + drivinfo = (index_datafile (&messdriv_idx, 1) != 0); + + /* load informational text (append) */ + if (messdriv_idx) + { + int len = strlen(buffer); + int err = load_datafile_text(drv, buffer + len, bufsize - len, messdriv_idx, DATAFILE_TAG_DRIV, 1, 1); + + if (err) + drivinfo = 0; + } + } + else + { + /* create index if necessary */ + if (driv_idx) + drivinfo = 1; + else + drivinfo = (index_datafile (&driv_idx, 1) != 0); + + /* load informational text (append) */ + if (driv_idx) + { + int len = strlen(buffer); + int err = load_datafile_text(drv, buffer + len, bufsize - len, driv_idx, DATAFILE_TAG_DRIV, 1, 1); + + if (err) + drivinfo = 0; + } + } + ParseClose(); + } + + strcat(buffer, "\nGAMES SUPPORTED:\n"); + + for (int i = 0; i < driver_list::total(); i++) + { + if (!strcmp(source_file, GetDriverFilename(i)) && !(DriverIsBios(i))) + { + strcat(buffer, driver_list::driver(i).description); + strcat(buffer,"\n"); + } + } + + strcat(buffer, "\n\n"); + return (drivinfo == 0); +} + +static int load_driver_command(const game_driver *drv, char *buffer, int bufsize) +{ + int command = 0; + + *buffer = 0; + snprintf(filename, ARRAY_LENGTH(filename), "%s\\command.dat", GetDatsDir()); + strcat(buffer, "\n**** COMMAND: ****\n\n"); + + /* try to open command datafile */ + if (ParseOpen(filename)) + { + /* create index if necessary */ + if (cmd_idx) + command = 1; + else + command = (index_datafile (&cmd_idx, 0) != 0); + + /* load informational text (append) */ + if (cmd_idx) + { + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, cmd_idx, DATAFILE_TAG_CMD, 0, 0); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + command = 0; + } + + ParseClose(); + } + + strcat(buffer, "\n\n"); + return (command == 0); +} + +static int load_driver_scoreinfo(const game_driver *drv, char *buffer, int bufsize) +{ + int scoreinfo = 0; + + *buffer = 0; + snprintf(filename, ARRAY_LENGTH(filename), "%s\\story.dat", GetDatsDir()); + + /* try to open story datafile */ + if (ParseOpen(filename)) + { + /* create index if necessary */ + if (score_idx) + scoreinfo = 1; + else + scoreinfo = (index_datafile (&score_idx, 0) != 0); + + /* load informational text (append) */ + if (score_idx) + { + int len = strlen(buffer); + int err = 0; + const game_driver *gdrv; + gdrv = drv; + + do + { + err = load_datafile_text(gdrv, buffer + len, bufsize - len, score_idx, DATAFILE_TAG_SCORE, 0, 0); + int g = driver_list::clone(*gdrv); + + if (g!=-1) + gdrv = &driver_list::driver(g); + else + gdrv = NULL; + } while (err && gdrv); + + if (err) + scoreinfo = 0; + } + + ParseClose(); + } + + return (scoreinfo == 0); +} /************************************************************** * functions **************************************************************/ diff --git a/docs/release/src/osd/winui/history.h b/docs/release/src/osd/winui/history.h index 65fbf6ec505..1bf846d94fd 100644 --- a/docs/release/src/osd/winui/history.h +++ b/docs/release/src/osd/winui/history.h @@ -1,7 +1,8 @@ // For licensing and usage information, read docs/winui_license.txt +// MASTER //**************************************************************************** -#pragma once +#pragma once #ifndef HISTORY_H #define HISTORY_H diff --git a/docs/release/src/osd/winui/layout.cpp b/docs/release/src/osd/winui/layout.cpp index 56ff54ea15e..a4ced439c48 100644 --- a/docs/release/src/osd/winui/layout.cpp +++ b/docs/release/src/osd/winui/layout.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <commctrl.h> @@ -126,19 +125,22 @@ extern const FOLDERDATA g_folderData[] = #ifdef MESS extern const FILTER_ITEM g_filterList[] = { - { F_COMPUTER, IDC_FILTER_COMPUTER, DriverIsComputer, TRUE }, - { F_CONSOLE, IDC_FILTER_CONSOLE, DriverIsConsole, TRUE }, - { F_MODIFIED, IDC_FILTER_MODIFIED, DriverIsModified, TRUE }, - { F_CLONES, IDC_FILTER_CLONES, DriverIsClone, TRUE }, - { F_NONWORKING, IDC_FILTER_NONWORKING, DriverIsBroken, TRUE }, - { F_UNAVAILABLE, IDC_FILTER_UNAVAILABLE, FilterAvailable, FALSE }, - { F_RASTER, IDC_FILTER_RASTER, DriverIsVector, FALSE }, { F_VECTOR, IDC_FILTER_VECTOR, DriverIsVector, TRUE }, + { F_RASTER, IDC_FILTER_RASTER, DriverIsVector, FALSE }, + { F_CLONES, IDC_FILTER_CLONES, DriverIsClone, TRUE }, { F_ORIGINALS, IDC_FILTER_ORIGINALS, DriverIsClone, FALSE }, + { F_NONWORKING, IDC_FILTER_NONWORKING, DriverIsBroken, TRUE }, { F_WORKING, IDC_FILTER_WORKING, DriverIsBroken, FALSE }, - { F_AVAILABLE, IDC_FILTER_AVAILABLE, FilterAvailable, TRUE }, + { F_HORIZONTAL, IDC_FILTER_HORIZONTAL, DriverIsVertical, FALSE }, + { F_VERTICAL, IDC_FILTER_VERTICAL, DriverIsVertical, TRUE }, + { F_COMPUTER, IDC_FILTER_COMPUTER, DriverIsComputer, TRUE }, + { F_CONSOLE, IDC_FILTER_CONSOLE, DriverIsConsole, TRUE }, + { F_UNAVAILABLE, IDC_FILTER_UNAVAILABLE, FilterAvailable, FALSE }, + { F_MECHANICAL, IDC_FILTER_MECHANICAL, DriverIsMechanical, TRUE }, { F_ARCADE, IDC_FILTER_ARCADE, DriverIsArcade, TRUE }, { F_MESS, IDC_FILTER_MESS, DriverIsArcade, FALSE }, +// { F_MODIFIED, IDC_FILTER_MODIFIED, DriverIsModified, TRUE }, +// { F_AVAILABLE, IDC_FILTER_AVAILABLE, FilterAvailable, TRUE }, { 0 } }; #else @@ -162,23 +164,6 @@ extern const FILTER_ITEM g_filterList[] = #endif #ifdef MESS -extern const SPLITTERINFO g_splitterInfo[] = -{ - { 0.2, IDC_SPLITTER, IDC_TREE, IDC_LIST, AdjustSplitter1Rect }, - { 0.4, IDC_SPLITTER2, IDC_LIST, IDC_SWLIST, AdjustSplitter1Rect }, - { 0.6, IDC_SPLITTER3, IDC_SWTAB, IDC_SSFRAME, AdjustSplitter2Rect }, - { -1 } -}; -#else -extern const SPLITTERINFO g_splitterInfo[] = -{ - { 0.25, IDC_SPLITTER, IDC_TREE, IDC_LIST, AdjustSplitter1Rect }, - { 0.5, IDC_SPLITTER2, IDC_LIST, IDC_SSFRAME, AdjustSplitter2Rect }, - { -1 } -}; -#endif - -#ifdef MESS extern const MAMEHELPINFO g_helpInfo[] = { //{ ID_HELP_CONTENTS, TRUE, TEXT(MAMEUIHELP"::/windows/main.htm") }, diff --git a/docs/release/src/osd/winui/mui_audit.cpp b/docs/release/src/osd/winui/mui_audit.cpp index 676c6446a16..97ca2210ae3 100644 --- a/docs/release/src/osd/winui/mui_audit.cpp +++ b/docs/release/src/osd/winui/mui_audit.cpp @@ -11,7 +11,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <commctrl.h> diff --git a/docs/release/src/osd/winui/mui_opts.cpp b/docs/release/src/osd/winui/mui_opts.cpp index 60ecbccc34a..e4513406284 100644 --- a/docs/release/src/osd/winui/mui_opts.cpp +++ b/docs/release/src/osd/winui/mui_opts.cpp @@ -11,7 +11,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <winreg.h> diff --git a/docs/release/src/osd/winui/mui_util.cpp b/docs/release/src/osd/winui/mui_util.cpp index b069157d3af..f9587c64f9a 100644 --- a/docs/release/src/osd/winui/mui_util.cpp +++ b/docs/release/src/osd/winui/mui_util.cpp @@ -9,7 +9,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <shellapi.h> diff --git a/docs/release/src/osd/winui/newui.cpp b/docs/release/src/osd/winui/newui.cpp index 06802a71aa1..5ee6d76e5dd 100644 --- a/docs/release/src/osd/winui/newui.cpp +++ b/docs/release/src/osd/winui/newui.cpp @@ -19,7 +19,6 @@ // standard windows headers -#define WIN32_LEAN_AND_MEAN // leave out not-needed libraries #include "newui.h" #include <shellapi.h> diff --git a/docs/release/src/osd/winui/picker.cpp b/docs/release/src/osd/winui/picker.cpp index a18e1d901f3..894687b9a2f 100644 --- a/docs/release/src/osd/winui/picker.cpp +++ b/docs/release/src/osd/winui/picker.cpp @@ -2,7 +2,6 @@ //**************************************************************************** // standard windows headers -#define WIN32_LEAN_AND_MEAN #define _WIN32_IE 0x0501 #include <windows.h> #include <windowsx.h> diff --git a/docs/release/src/osd/winui/properties.cpp b/docs/release/src/osd/winui/properties.cpp index 7fa903c9e9a..31941d3066f 100644 --- a/docs/release/src/osd/winui/properties.cpp +++ b/docs/release/src/osd/winui/properties.cpp @@ -95,7 +95,6 @@ b) Exit the dialog. ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> @@ -251,6 +250,8 @@ static struct ComboBoxSound { TEXT("None"), "none" }, { TEXT("Auto"), "auto" }, { TEXT("DirectSound"), "dsound" }, + { TEXT("PortAudio"), "portaudio" }, +// { TEXT("XAudio2"), "xaudio2" }, // invalid option }; #define NUMSOUND (sizeof(g_ComboBoxSound) / sizeof(g_ComboBoxSound[0])) diff --git a/docs/release/src/osd/winui/screenshot.cpp b/docs/release/src/osd/winui/screenshot.cpp index 0c2a37147b4..c85f712007b 100644 --- a/docs/release/src/osd/winui/screenshot.cpp +++ b/docs/release/src/osd/winui/screenshot.cpp @@ -19,7 +19,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> diff --git a/docs/release/src/osd/winui/splitters.cpp b/docs/release/src/osd/winui/splitters.cpp index 02b81285a56..ce934a14731 100644 --- a/docs/release/src/osd/winui/splitters.cpp +++ b/docs/release/src/osd/winui/splitters.cpp @@ -1,11 +1,12 @@ // For licensing and usage information, read docs/winui_license.txt +// MASTER //**************************************************************************** /*************************************************************************** splitters.c - Splitter GUI code. - Tree, spliiter, list, splitter, pict + Splitter GUI code. - Tree, splitter, list, splitter, pict Created 12/03/98 (C) by Mike Haaland (mhaaland@hypertech.com) @@ -13,37 +14,29 @@ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> -#include <commctrl.h> -#include <stdlib.h> -#include <assert.h> // MAME/MAMEUI headers #include "splitters.h" #include "mui_opts.h" -#include "resource.h" -#include "winui.h" /* Local Variables */ static BOOL bTracking = 0; static int numSplitters = 0; static int currentSplitter = 0; static HZSPLITTER *splitter; -static LPHZSPLITTER lpCurSpltr = nullptr; -static HCURSOR hSplitterCursor = nullptr; +static LPHZSPLITTER lpCurSpltr = 0; +static HCURSOR hSplitterCursor = 0; int *nSplitterOffset; BOOL InitSplitters(void) { - int nSplitterCount; - /* load the cursor for the splitter */ hSplitterCursor = LoadCursor(GetModuleHandle(0), MAKEINTRESOURCE(IDC_CURSOR_HSPLIT)); - nSplitterCount = GetSplitterCount(); + int nSplitterCount = GetSplitterCount(); splitter = (HZSPLITTER*)malloc(sizeof(HZSPLITTER) * nSplitterCount); if (!splitter) @@ -80,15 +73,15 @@ void SplittersExit(void) /* Called with hWnd = Parent Window */ static void CalcSplitter(HWND hWnd, LPHZSPLITTER lpSplitter) { - POINT p = {0,0}; - RECT leftRect, rightRect; - int dragWidth; + POINT p = {0,0}; + RECT leftRect, rightRect; + int dragWidth; ClientToScreen(hWnd, &p); - GetWindowRect(lpSplitter->m_hWnd, &lpSplitter->m_dragRect); - GetWindowRect(lpSplitter->m_hWndLeft, &leftRect); - GetWindowRect(lpSplitter->m_hWndRight, &rightRect); + GetWindowRect(lpSplitter->m_hWnd, &lpSplitter->m_dragRect); + GetWindowRect(lpSplitter->m_hWndLeft, &leftRect); + GetWindowRect(lpSplitter->m_hWndRight, &rightRect); OffsetRect(&lpSplitter->m_dragRect, -p.x, -p.y); OffsetRect(&leftRect, -p.x, -p.y); @@ -96,10 +89,10 @@ static void CalcSplitter(HWND hWnd, LPHZSPLITTER lpSplitter) dragWidth = lpSplitter->m_dragRect.right - lpSplitter->m_dragRect.left; - lpSplitter->m_limitRect.left = leftRect.left + 20; - lpSplitter->m_limitRect.right = rightRect.right - 20; - lpSplitter->m_limitRect.top = lpSplitter->m_dragRect.top; - lpSplitter->m_limitRect.bottom = lpSplitter->m_dragRect.bottom; + lpSplitter->m_limitRect.left = leftRect.left + 20; + lpSplitter->m_limitRect.right = rightRect.right - 20; + lpSplitter->m_limitRect.top = lpSplitter->m_dragRect.top; + lpSplitter->m_limitRect.bottom = lpSplitter->m_dragRect.bottom; if (lpSplitter->m_func) lpSplitter->m_func(hWnd, &lpSplitter->m_limitRect); @@ -132,7 +125,7 @@ void AdjustSplitter1Rect(HWND hWnd, LPRECT lpRect) void RecalcSplitters(void) { - int i; + int i; for (i = 0; i < numSplitters; i++) { @@ -150,13 +143,12 @@ void RecalcSplitters(void) void OnSizeSplitter(HWND hWnd) { - static int firstTime = TRUE; - int changed = FALSE; + static bool firstTime = true; + bool changed = false; RECT rWindowRect; POINT p = {0,0}; int i; int nSplitterCount; - BOOL bMustChange; nSplitterCount = GetSplitterCount(); @@ -164,8 +156,8 @@ void OnSizeSplitter(HWND hWnd) { for (i = 0; i < nSplitterCount; i++) nSplitterOffset[i] = GetSplitterPos(i); - changed = TRUE; - firstTime = FALSE; + changed = true; + firstTime = false; } GetWindowRect(hWnd, &rWindowRect); @@ -177,20 +169,25 @@ void OnSizeSplitter(HWND hWnd) ClientToScreen(splitter[i].m_hWnd, &p); /* We must change if our window is not in the window rect */ - bMustChange = !PtInRect(&rWindowRect, p); + bool bMustChange = !PtInRect(&rWindowRect, p); /* We should also change if we are ahead the next splitter */ if ((i < nSplitterCount-1) && (nSplitterOffset[i] >= nSplitterOffset[i+1])) - bMustChange = TRUE; + bMustChange = true; /* ...or if we are behind the previous splitter */ if ((i > 0) && (nSplitterOffset[i] <= nSplitterOffset[i-1])) - bMustChange = TRUE; - + bMustChange = true; +#ifdef MESS + if ((i==1)&&(!GetShowSoftware())) + bMustChange = false; + if ((i==2)&&(!GetShowScreenShot())) + bMustChange = false; +#endif if (bMustChange) { nSplitterOffset[i] = (rWindowRect.right - rWindowRect.left) * g_splitterInfo[i].dPosition; - changed = TRUE; + changed = true; } } @@ -220,9 +217,9 @@ void AddSplitter(HWND hWnd, HWND hWndLeft, HWND hWndRight, void (*func)(HWND hWn static void OnInvertTracker(HWND hWnd, const RECT *rect) { - HDC hDC = GetDC(hWnd); - HBRUSH hBrush = CreateSolidBrush(RGB(0xFF, 0xFF, 0xFF)); - HBRUSH hOldBrush = 0; + HDC hDC = GetDC(hWnd); + HBRUSH hBrush = CreateSolidBrush(RGB(0xFF, 0xFF, 0xFF)); + HBRUSH hOldBrush = 0; if (hBrush != 0) hOldBrush = (HBRUSH)SelectObject(hDC, hBrush); @@ -299,11 +296,11 @@ static UINT SplitterHitTest(HWND hWnd, POINTS p) void OnMouseMove(HWND hWnd, UINT nFlags, POINTS p) { - if (bTracking) // move the tracking image + if (bTracking) // move the tracking image { - int nWidth; - RECT rect; - POINT pt; + int nWidth; + RECT rect; + POINT pt; pt.x = (int)p.x; pt.y = (int)p.y; diff --git a/docs/release/src/osd/winui/splitters.h b/docs/release/src/osd/winui/splitters.h index 6595f704186..bbf700b0f32 100644 --- a/docs/release/src/osd/winui/splitters.h +++ b/docs/release/src/osd/winui/splitters.h @@ -1,4 +1,5 @@ // For licensing and usage information, read docs/winui_license.txt +// MASTER //**************************************************************************** /* Written by Mike Haaland <mhaaland@hypertech.com> */ @@ -11,6 +12,11 @@ #define MAX(a, b) ((a) > (b) ? (a) : (b)) #endif +#include "resource.h" +#include "winui.h" +#define SPLITTER_WIDTH 4 +#define MIN_VIEW_WIDTH 10 + enum eSplitterHits { SPLITTER_HITNOTHING = 0, @@ -52,7 +58,24 @@ typedef struct void (*pfnAdjust)(HWND hWnd,LPRECT lpRect); } SPLITTERINFO; -extern const SPLITTERINFO g_splitterInfo[]; +#ifdef MESS +const SPLITTERINFO g_splitterInfo[] = +{ + { 0.2, IDC_SPLITTER, IDC_TREE, IDC_LIST, AdjustSplitter1Rect }, + { 0.4, IDC_SPLITTER2, IDC_LIST, IDC_SWLIST, AdjustSplitter1Rect }, + { 0.6, IDC_SPLITTER3, IDC_SWTAB, IDC_SSFRAME, AdjustSplitter2Rect }, + { -1 } +}; +#else +const SPLITTERINFO g_splitterInfo[] = +{ + { 0.25, IDC_SPLITTER, IDC_TREE, IDC_LIST, AdjustSplitter1Rect }, + { 0.5, IDC_SPLITTER2, IDC_LIST, IDC_SSFRAME, AdjustSplitter2Rect }, + { -1 } +}; +#endif + +//extern const SPLITTERINFO g_splitterInfo[]; #endif /* SPLITTER_H */ diff --git a/docs/release/src/osd/winui/tabview.cpp b/docs/release/src/osd/winui/tabview.cpp index 84adbe78fcb..d5971275819 100644 --- a/docs/release/src/osd/winui/tabview.cpp +++ b/docs/release/src/osd/winui/tabview.cpp @@ -2,7 +2,6 @@ //**************************************************************************** // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <shellapi.h> diff --git a/docs/release/src/osd/winui/treeview.cpp b/docs/release/src/osd/winui/treeview.cpp index a369a6c254a..afc98c2a372 100644 --- a/docs/release/src/osd/winui/treeview.cpp +++ b/docs/release/src/osd/winui/treeview.cpp @@ -10,7 +10,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #include <windows.h> #include <windowsx.h> #include <shellapi.h> diff --git a/docs/release/src/osd/winui/win_options.cpp b/docs/release/src/osd/winui/win_options.cpp deleted file mode 100644 index 8886b331672..00000000000 --- a/docs/release/src/osd/winui/win_options.cpp +++ /dev/null @@ -1,809 +0,0 @@ -// For licensing and usage information, read docs/winui_license.txt -// MASTER -//**************************************************************************** -/*************************************************************************** - - win_options.cpp - - Core options code - -***************************************************************************/ - -#include <stdarg.h> -#include <stdlib.h> -#include <ctype.h> -#include "win_options.h" - - -//************************************************************************** -// REPLACE MACRO: option --> win_options -//************************************************************************** - -#define options win_options - - -//************************************************************************** -// GLOBAL VARIABLES -//************************************************************************** - -const char *const options::s_option_unadorned[MAX_UNADORNED_OPTIONS] = -{ - "<UNADORNED0>", - "<UNADORNED1>", - "<UNADORNED2>", - "<UNADORNED3>", - "<UNADORNED4>", - "<UNADORNED5>", - "<UNADORNED6>", - "<UNADORNED7>", - "<UNADORNED8>", - "<UNADORNED9>", - "<UNADORNED10>", - "<UNADORNED11>", - "<UNADORNED12>", - "<UNADORNED13>", - "<UNADORNED14>", - "<UNADORNED15>" -}; - - - -//************************************************************************** -// CORE OPTIONS ENTRY -//************************************************************************** - -//------------------------------------------------- -// entry - constructor -//------------------------------------------------- - -options::entry::entry(const char *name, const char *description, uint32_t flags, const char *defvalue) - : m_next(NULL), - m_flags(flags), - m_seqid(0), - m_error_reported(false), - m_priority(OPTION_PRIORITY_DEFAULT), - m_description(description) -{ - // copy in the name(s) as appropriate - if (name != nullptr) - { - // first extract any range - std::string namestr(name); - int lparen = namestr.find('('); - int dash = namestr.find(lparen + 1, '-'); - int rparen = namestr.find(dash + 1, ')'); - if (lparen != -1 && dash != -1 && rparen != -1) - { - m_minimum.assign(namestr.substr(lparen + 1, dash - (lparen + 1))); - strtrimspace(m_minimum); - m_maximum.assign(namestr.substr(dash + 1, rparen - (dash + 1))); - strtrimspace(m_maximum); - namestr.erase(lparen, rparen + 1 - lparen); - } - - // then chop up any semicolon-separated names - int semi; - int nameindex = 0; - while ((semi = namestr.find(';')) != -1 && nameindex < ARRAY_LENGTH(m_name)) - { - m_name[nameindex++].assign(namestr.substr(0, semi)); - namestr.erase(0, semi + 1); - } - - // finally add the last item - if (nameindex < ARRAY_LENGTH(m_name)) - m_name[nameindex++] = namestr; - } - - // set the default value - if (defvalue != nullptr) - m_defdata = defvalue; - m_data = m_defdata; -} - - -//------------------------------------------------- -// set_value - update our data value -//------------------------------------------------- - -void options::entry::set_value(const char *newdata, int priority) -{ - // ignore if we don't have priority - if (priority < m_priority) - return; - - // set the data and priority, then bump the sequence - m_data = newdata; - m_priority = priority; - m_seqid++; -} - - -//------------------------------------------------- -// set_default_value - set the default value of -// an option, and reset the current value to it -//------------------------------------------------- - -void options::entry::set_default_value(const char *defvalue) -{ - m_data = defvalue; - m_defdata = defvalue; - m_priority = OPTION_PRIORITY_DEFAULT; -} - - -//------------------------------------------------- -// set_description - set the description of -// an option -//------------------------------------------------- - -void options::entry::set_description(const char *description) -{ - m_description = description; -} - - -void options::entry::set_flag(uint32_t mask, uint32_t flag) -{ - m_flags = ( m_flags & mask ) | flag; -} - - -//------------------------------------------------- -// revert - revert back to our default if we are -// at or below the given priority -//------------------------------------------------- - -void options::entry::revert(int priority) -{ - // if our priority is low enough, revert to the default - if (m_priority <= priority) - { - m_data = m_defdata; - m_priority = OPTION_PRIORITY_DEFAULT; - } -} - - - -//************************************************************************** -// CORE OPTIONS -//************************************************************************** - -//------------------------------------------------- -// options - constructor -//------------------------------------------------- - -options::options() -{ -} - -options::options(const options_entry *entrylist) -{ - add_entries(entrylist); -} - -options::options(const options_entry *entrylist1, const options_entry *entrylist2) -{ - add_entries(entrylist1); - add_entries(entrylist2); -} - -options::options(const options_entry *entrylist1, const options_entry *entrylist2, const options_entry *entrylist3) -{ - add_entries(entrylist1); - add_entries(entrylist2); - add_entries(entrylist3); -} - -options::options(const options &src) -{ - copyfrom(src); -} - - -//------------------------------------------------- -// ~options - destructor -//------------------------------------------------- - -options::~options() -{ -} - - -//------------------------------------------------- -// operator= - assignment operator -//------------------------------------------------- - -options &options::operator=(const options &rhs) -{ - // ignore self-assignment - if (this != &rhs) - copyfrom(rhs); - return *this; -} - - -//------------------------------------------------- -// operator== - compare two sets of options -//------------------------------------------------- - -bool options::operator==(const options &rhs) -{ - // iterate over options in the first list - for (entry *curentry = m_entrylist.first(); curentry != nullptr; curentry = curentry->next()) - if (!curentry->is_header()) - { - // if the values differ, return false - if (strcmp(curentry->value(), rhs.value(curentry->name())) != 0) - return false; - } - - return true; -} - - -//------------------------------------------------- -// operator!= - compare two sets of options -//------------------------------------------------- - -bool options::operator!=(const options &rhs) -{ - return !operator==(rhs); -} - - -//------------------------------------------------- -// add_entry - add an entry to the current -// options set -//------------------------------------------------- - -void options::add_entry(const char *name, const char *description, uint32_t flags, const char *defvalue, bool override_existing) -{ - // allocate a new entry - entry *newentry = global_alloc(entry(name, description, flags, defvalue)); - if (newentry->name() != nullptr) - { - // see if we match an existing entry - auto checkentry = m_entrymap.find(newentry->name()); - if (checkentry != m_entrymap.end()) - { - entry *existing = checkentry->second; - // if we're overriding existing entries, then remove the old one - if (override_existing) - m_entrylist.remove(*existing); - - // otherwise, just override the default and current values and throw out the new entry - else - { - existing->set_default_value(newentry->value()); - global_free(newentry); - return; - } - } - } - - // add us to the list and maps - append_entry(*newentry); -} - - -//------------------------------------------------- -// add_entries - add entries to the current -// options sets -//------------------------------------------------- - -void options::add_entries(const options_entry *entrylist, bool override_existing) -{ - // loop over entries until we hit a NULL name - for (; entrylist->name != nullptr || (entrylist->flags & OPTION_HEADER) != 0; entrylist++) - add_entry(*entrylist, override_existing); -} - - -//------------------------------------------------- -// set_default_value - change the default value -// of an option -//------------------------------------------------- - -void options::set_default_value(const char *name, const char *defvalue) -{ - // find the entry and bail if we can't - auto curentry = m_entrymap.find(name); - if (curentry == m_entrymap.end()) - return; - - // update the data and default data - curentry->second->set_default_value(defvalue); -} - - -//------------------------------------------------- -// set_description - change the description -// of an option -//------------------------------------------------- - -void options::set_description(const char *name, const char *description) -{ - // find the entry and bail if we can't - auto curentry = m_entrymap.find(name); - if (curentry == m_entrymap.end()) - return; - - // update the data and default data - curentry->second->set_description(description); -} - - -//------------------------------------------------- -// parse_command_line - parse a series of -// command line arguments -//------------------------------------------------- - -bool options::parse_command_line(int argc, char **argv, int priority, std::string &error_string) -{ - // reset the errors and the command - error_string.clear(); - m_command.clear(); - - // iterate through arguments - int unadorned_index = 0; - bool retval = true; - for (int arg = 1; arg < argc; arg++) - { - // determine the entry name to search for - const char *curarg = argv[arg]; - bool is_unadorned = (curarg[0] != '-'); - const char *optionname = is_unadorned ? options::unadorned(unadorned_index++) : &curarg[1]; - - // find our entry; if not found, indicate invalid option - auto curentry = m_entrymap.find(optionname); - if (curentry == m_entrymap.end()) - { - error_string.append(string_format("Error: unknown option: %s\n", curarg)); - retval = false; - if (!is_unadorned) arg++; - continue; - } - - // process commands first - if (curentry->second->type() == OPTION_COMMAND) - { - // can only have one command - if (!m_command.empty()) - { - error_string.append(string_format("Error: multiple commands specified -%s and %s\n", m_command.c_str(), curarg)); - return false; - } - m_command = curentry->second->name(); - continue; - } - - // get the data for this argument, special casing booleans - const char *newdata; - if (curentry->second->type() == OPTION_BOOLEAN) - newdata = (strncmp(&curarg[1], "no", 2) == 0) ? "0" : "1"; - else if (is_unadorned) - newdata = curarg; - else if (arg + 1 < argc) - newdata = argv[++arg]; - else - { - error_string.append(string_format("Error: option %s expected a parameter\n", curarg)); - return false; - } - - // set the new data - validate_and_set_data(*curentry->second, newdata, priority, error_string); - } - return retval; -} - - -//------------------------------------------------- -// parse_ini_file - parse a series of entries in -// an INI file -//------------------------------------------------- - -bool options::parse_ini_file(util::core_file &inifile, int priority, int ignore_priority, std::string &error_string) -{ - // loop over lines in the file - char buffer[4096]; - while (inifile.gets(buffer, ARRAY_LENGTH(buffer)) != nullptr) - { - // find the extent of the name - char *optionname; - for (optionname = buffer; *optionname != 0; optionname++) - if (!isspace((uint8_t)*optionname)) - break; - - // skip comments - if (*optionname == 0 || *optionname == '#') - continue; - - // scan forward to find the first space - char *temp; - for (temp = optionname; *temp != 0; temp++) - if (isspace((uint8_t)*temp)) - break; - - // if we hit the end early, print a warning and continue - if (*temp == 0) - { - error_string.append(string_format("Warning: invalid line in INI: %s", buffer)); - continue; - } - - // NULL-terminate - *temp++ = 0; - char *optiondata = temp; - - // scan the data, stopping when we hit a comment - bool inquotes = false; - for (temp = optiondata; *temp != 0; temp++) - { - if (*temp == '"') - inquotes = !inquotes; - if (*temp == '#' && !inquotes) - break; - } - *temp = 0; - - // find our entry - auto curentry = m_entrymap.find(optionname); - if (curentry == m_entrymap.end()) - { - if (priority >= ignore_priority) - error_string.append(string_format("Warning: unknown option in INI: %s\n", optionname)); - continue; - } - - // set the new data - validate_and_set_data(*curentry->second, optiondata, priority, error_string); - } - return true; -} - - -//------------------------------------------------- -// revert - revert options at or below a certain -// priority back to their defaults -//------------------------------------------------- - -void options::revert(int priority) -{ - // iterate over options and revert to defaults if below the given priority - for (entry *curentry = m_entrylist.first(); curentry != nullptr; curentry = curentry->next()) - curentry->revert(priority); -} - - -//------------------------------------------------- -// output_ini - output the options in INI format, -// only outputting entries that different from -// the optional diff -//------------------------------------------------- - -const char *options::output_ini(std::string &buffer, const options *diff) -{ - // INI files are complete, so always start with a blank buffer - buffer.clear(); - - int num_valid_headers = 0; - int unadorned_index = 0; - const char *last_header = NULL; - - // loop over all items - for (entry *curentry = m_entrylist.first(); curentry != nullptr; curentry = curentry->next()) - { - const char *name = curentry->name(); - const char *value = curentry->value(); - bool is_unadorned = false; - - // check if it's unadorned - if (name && strlen(name) && !strcmp(name, options::unadorned(unadorned_index))) - { - unadorned_index++; - is_unadorned = true; - } - - // header: record description - if (curentry->is_header()) - last_header = curentry->description(); - - // otherwise, output entries for all non-command items - else if (!curentry->is_command()) - { - if ( !curentry->is_internal() ) - { - // look up counterpart in diff, if diff is specified - if (diff == nullptr || strcmp(value, diff->value(name)) != 0) - { - // output header, if we have one - if (last_header) - { - if (num_valid_headers++) - buffer += '\n'; - buffer.append(string_format("#\n# %s\n#\n", last_header)); - last_header = nullptr; - } - - // and finally output the data, skip if unadorned - if (!is_unadorned) - { - if (strchr(value, ' ')) - buffer.append(string_format("%-25s \"%s\"\n", name, value)); - else - buffer.append(string_format("%-25s %s\n", name, value)); - } - } - } - } - } - return buffer.c_str(); -} - - -//------------------------------------------------- -// output_help - output option help to a string -//------------------------------------------------- - -const char *options::output_help(std::string &buffer) -{ - // start empty - buffer.clear(); - - // loop over all items - for (entry *curentry = m_entrylist.first(); curentry; curentry = curentry->next()) - { - // header: just print - if (curentry->is_header()) - buffer.append(string_format("\n#\n# %s\n#\n", curentry->description())); - - // otherwise, output entries for all non-deprecated items - else if (curentry->description()) - buffer.append(string_format("-%-20s%s\n", curentry->name(), curentry->description())); - } - return buffer.c_str(); -} - - -//------------------------------------------------- -// value - return the raw option value -//------------------------------------------------- - -const char *options::value(const char *name) const -{ - auto curentry = m_entrymap.find(name); - return (curentry != m_entrymap.end()) ? curentry->second->value() : ""; -} - - -//------------------------------------------------- -// description - return description of option -//------------------------------------------------- - -const char *options::description(const char *name) const -{ - auto curentry = m_entrymap.find(name); - return (curentry != m_entrymap.end()) ? curentry->second->description() : ""; -} - - -//------------------------------------------------- -// priority - return the priority of option -//------------------------------------------------- - -int options::priority(const char *name) const -{ - auto curentry = m_entrymap.find(name); - return (curentry != m_entrymap.end()) ? curentry->second->priority() : 0; -} - - -//------------------------------------------------- -// seqid - return the seqid for a given option -//------------------------------------------------- - -uint32_t options::seqid(const char *name) const -{ - auto curentry = m_entrymap.find(name); - return (curentry != m_entrymap.end()) ? curentry->second->seqid() : 0; -} - -//------------------------------------------------- -// exists - return if option exists in list -//------------------------------------------------- - -bool options::exists(const char *name) const -{ - return (m_entrymap.find(name) != m_entrymap.end()); -} - -//------------------------------------------------- -// set_value - set the raw option value -//------------------------------------------------- - -bool options::set_value(const char *name, const char *value, int priority, std::string &error_string) -{ - // find the entry first - auto curentry = m_entrymap.find(name); - if (curentry == m_entrymap.end()) - { - error_string.append(string_format("Attempted to set unknown option %s\n", name)); - return false; - } - - // validate and set the item normally - return validate_and_set_data(*curentry->second, value, priority, error_string); -} - -bool options::set_value(const char *name, int value, int priority, std::string &error_string) -{ - return set_value(name, string_format("%d", value).c_str(), priority, error_string); -} - -bool options::set_value(const char *name, float value, int priority, std::string &error_string) -{ - return set_value(name, string_format("%f", value).c_str(), priority, error_string); -} - - -void options::set_flag(const char *name, uint32_t mask, uint32_t flag) -{ - // find the entry first - auto curentry = m_entrymap.find(name); - if ( curentry == m_entrymap.end()) - { - return; - } - curentry->second->set_flag(mask, flag); -} - - -//------------------------------------------------- -// reset - reset the options state, removing -// everything -//------------------------------------------------- - -void options::reset() -{ - m_entrylist.reset(); - m_entrymap.clear(); -} - - -//------------------------------------------------- -// append_entry - append an entry to our list -// and index it in the map -//------------------------------------------------- - -void options::append_entry(options::entry &newentry) -{ - m_entrylist.append(newentry); - - // if we have names, add them to the map - for (int name = 0; name < ARRAY_LENGTH(newentry.m_name); name++) - if (newentry.name(name) != nullptr) - { - m_entrymap.insert(std::make_pair(newentry.name(name), &newentry)); - - // for boolean options add a "no" variant as well - if (newentry.type() == OPTION_BOOLEAN) - m_entrymap.insert(std::make_pair(std::string("no").append(newentry.name(name)), &newentry)); - } -} - - -//------------------------------------------------- -// remove_entry - remove an entry from our list -// and map -//------------------------------------------------- - -void options::remove_entry(options::entry &delentry) -{ - // remove all names from the map - for (int name = 0; name < ARRAY_LENGTH(delentry.m_name); name++) - if (!delentry.m_name[name].empty()) - { - auto entry = m_entrymap.find(delentry.m_name[name]); - if (entry!= m_entrymap.end()) m_entrymap.erase(entry); - } - - // remove the entry from the list - m_entrylist.remove(delentry); -} - - -//------------------------------------------------- -// copyfrom - copy options from another set -//------------------------------------------------- - -void options::copyfrom(const options &src) -{ - // reset ourselves first - reset(); - - // iterate through the src options and make our own - for (entry *curentry = src.m_entrylist.first(); curentry != nullptr; curentry = curentry->next()) - append_entry(*global_alloc(entry(curentry->name(), curentry->description(), curentry->flags(), curentry->default_value()))); -} - - -//------------------------------------------------- -// validate_and_set_data - make sure the data is -// of the appropriate type and within range, -// then set it -//------------------------------------------------- - -bool options::validate_and_set_data(options::entry &curentry, const char *newdata, int priority, std::string &error_string) -{ - // trim any whitespace - std::string data(newdata); - strtrimspace(data); - - // trim quotes - if (data.find('"') == 0 && data.find_last_of('"') == data.length() - 1) - { - data.erase(0, 1); - data.erase(data.length() - 1, 1); - } - - // validate the type of data and optionally the range - float fval; - int ival; - switch (curentry.type()) - { - // booleans must be 0 or 1 - case OPTION_BOOLEAN: - if (sscanf(data.c_str(), "%d", &ival) != 1 || ival < 0 || ival > 1) - { - error_string.append(string_format("Illegal boolean value for %s: \"%s\"; reverting to %s\n", curentry.name(), data.c_str(), curentry.value())); - return false; - } - break; - - // integers must be integral - case OPTION_INTEGER: - if (sscanf(data.c_str(), "%d", &ival) != 1) - { - error_string.append(string_format("Illegal integer value for %s: \"%s\"; reverting to %s\n", curentry.name(), data.c_str(), curentry.value())); - return false; - } - if (curentry.has_range() && (ival < atoi(curentry.minimum()) || ival > atoi(curentry.maximum()))) - { - error_string.append(string_format("Out-of-range integer value for %s: \"%s\" (must be between %s and %s); reverting to %s\n", curentry.name(), data.c_str(), curentry.minimum(), curentry.maximum(), curentry.value())); - return false; - } - break; - - // floating-point values must be numeric - case OPTION_FLOAT: - if (sscanf(data.c_str(), "%f", &fval) != 1) - { - error_string.append(string_format("Illegal float value for %s: \"%s\"; reverting to %s\n", curentry.name(), data.c_str(), curentry.value())); - return false; - } - if (curentry.has_range() && (fval < atof(curentry.minimum()) || fval > atof(curentry.maximum()))) - { - error_string.append(string_format("Out-of-range float value for %s: \"%s\" (must be between %s and %s); reverting to %s\n", curentry.name(), data.c_str(), curentry.minimum(), curentry.maximum(), curentry.value())); - return false; - } - break; - - // strings can be anything - case OPTION_STRING: - break; - - // anything else is invalid - case OPTION_INVALID: - case OPTION_HEADER: - default: - error_string.append(string_format("Attempted to set invalid option %s\n", curentry.name())); - return false; - } - - // set the data - curentry.set_value(data.c_str(), priority); - return true; -} diff --git a/docs/release/src/osd/winui/win_options.h b/docs/release/src/osd/winui/win_options.h deleted file mode 100644 index c23ee18d2fd..00000000000 --- a/docs/release/src/osd/winui/win_options.h +++ /dev/null @@ -1,154 +0,0 @@ -// For licensing and usage information, read docs/winui_license.txt -//**************************************************************************** -// MASTER -/*************************************************************************** - - win_options.h - - Core options code code - -**************************************************************************** - - - -***************************************************************************/ - -#pragma once - -#ifndef __WIN_OPTIONS_H__ -#define __WIN_OPTIONS_H__ - -#include "options.h" - - -//************************************************************************** -// TYPE DEFINITIONS -//************************************************************************** - -// structure holding information about a collection of options -class win_options -{ - static const int MAX_UNADORNED_OPTIONS = 16; - -public: - // information about a single entry in the options - class entry - { - friend class win_options; - friend class simple_list<entry>; - - // construction/destruction - entry(const char *name, const char *description, uint32_t flags = 0, const char *defvalue = NULL); - - public: - // getters - entry *next() const { return m_next; } - const char *name(int index = 0) const { return (index < ARRAY_LENGTH(m_name) && !m_name[index].empty()) ? m_name[index].c_str() : NULL; } - const char *description() const { return m_description; } - const char *value() const { return m_data.c_str(); } - const char *default_value() const { return m_defdata.c_str(); } - const char *minimum() const { return m_minimum.c_str(); } - const char *maximum() const { return m_maximum.c_str(); } - uint32_t seqid() const { return m_seqid; } - int type() const { return (m_flags & OPTION_TYPE_MASK); } - uint32_t flags() const { return m_flags; } - bool is_header() const { return type() == OPTION_HEADER; } - bool is_command() const { return type() == OPTION_COMMAND; } - bool is_internal() const { return m_flags & OPTION_FLAG_INTERNAL; } - bool has_range() const { return (!m_minimum.empty() && !m_maximum.empty()); } - int priority() const { return m_priority; } - - // setters - void set_value(const char *newvalue, int priority); - void set_default_value(const char *defvalue); - void set_description(const char *description); - void set_flag(uint32_t mask, uint32_t flag); - void revert(int priority); - - private: - // internal state - entry * m_next; // link to the next data - uint32_t m_flags; // flags from the entry - uint32_t m_seqid; // sequence ID; bumped on each change - bool m_error_reported; // have we reported an error on this option yet? - int m_priority; // priority of the data set - const char * m_description; // description for this item - std::string m_name[4]; // up to 4 names for the item - std::string m_data; // data for this item - std::string m_defdata; // default data for this item - std::string m_minimum; // minimum value - std::string m_maximum; // maximum value - }; - - // construction/destruction - win_options(); - win_options(const options_entry *entrylist); - win_options(const options_entry *entrylist1, const options_entry *entrylist2); - win_options(const options_entry *entrylist1, const options_entry *entrylist2, const options_entry *entrylist3); - win_options(const win_options &src); - virtual ~win_options(); - - // operators - win_options &operator=(const win_options &rhs); - bool operator==(const win_options &rhs); - bool operator!=(const win_options &rhs); - - // getters - entry *first() const { return m_entrylist.first(); } - const char *command() const { return m_command.c_str(); } - - // configuration - void add_entry(const char *name, const char *description, uint32_t flags = 0, const char *defvalue = NULL, bool override_existing = false); - void add_entry(const options_entry &data, bool override_existing = false) { add_entry(data.name, data.description, data.flags, data.defvalue, override_existing); } - void add_entries(const options_entry *entrylist, bool override_existing = false); - void set_default_value(const char *name, const char *defvalue); - void set_description(const char *name, const char *description); - void remove_entry(entry &delentry); - - // parsing/input - bool parse_command_line(int argc, char **argv, int priority, std::string &error_string); - bool parse_ini_file(util::core_file &inifile, int priority, int ignore_priority, std::string &error_string); - - // reverting - void revert(int priority = OPTION_PRIORITY_MAXIMUM); - - // output - const char *output_ini(std::string &buffer, const win_options *diff = NULL); - const char *output_help(std::string &buffer); - - // reading - const char *value(const char *option) const; - const char *description(const char *option) const; - int priority(const char *option) const; - bool bool_value(const char *name) const { return (atoi(value(name)) != 0); } - int int_value(const char *name) const { return atoi(value(name)); } - float float_value(const char *name) const { return atof(value(name)); } - uint32_t seqid(const char *name) const; - bool exists(const char *name) const; - - // setting - void set_command(const char *command); - bool set_value(const char *name, const char *value, int priority, std::string &error_string); - bool set_value(const char *name, int value, int priority, std::string &error_string); - bool set_value(const char *name, float value, int priority, std::string &error_string); - void set_flag(const char *name, uint32_t mask, uint32_t flags); - - // misc - static const char *unadorned(int x = 0) { return s_option_unadorned[(std::min)(x, MAX_UNADORNED_OPTIONS)]; } - int options_count() const { return m_entrylist.count(); } - -private: - // internal helpers - void reset(); - void append_entry(entry &newentry); - void copyfrom(const win_options &src); - bool validate_and_set_data(entry &curentry, const char *newdata, int priority, std::string &error_string); - - // internal state - simple_list<entry> m_entrylist; // head of list of entries - std::unordered_map<std::string, entry *> m_entrymap; // map for fast lookup - std::string m_command; // command found - static const char *const s_option_unadorned[]; // array of unadorned option "names" -}; - -#endif diff --git a/docs/release/src/osd/winui/winui.cpp b/docs/release/src/osd/winui/winui.cpp index 9f37b54151f..1ed311b46e6 100644 --- a/docs/release/src/osd/winui/winui.cpp +++ b/docs/release/src/osd/winui/winui.cpp @@ -16,7 +16,6 @@ ***************************************************************************/ // standard windows headers -#define WIN32_LEAN_AND_MEAN #define _WIN32_IE 0x0501 #include <windows.h> #include <windowsx.h> @@ -940,7 +939,9 @@ static DWORD RunMAME(int nGameIndex, const play_options *playopts) osd.register_options(); mame_machine_manager *manager = mame_machine_manager::instance(global_opts, osd); load_translation(global_opts); + manager->start_http_server(); manager->start_luaengine(); + manager->start_context(); manager->execute(); osd_output::pop(&winerror); global_free(manager); diff --git a/docs/release/src/osd/winui/winui.h b/docs/release/src/osd/winui/winui.h index a771ef56091..5579d9c3943 100644 --- a/docs/release/src/osd/winui/winui.h +++ b/docs/release/src/osd/winui/winui.h @@ -4,7 +4,6 @@ #ifndef WINUI_H #define WINUI_H -#define WIN32_LEAN_AND_MEAN #include <commctrl.h> #include <commdlg.h> #include "emu.h" diff --git a/docs/release/src/version.cpp b/docs/release/src/version.cpp index d4e6dbe90c4..fed8039bb85 100644 --- a/docs/release/src/version.cpp +++ b/docs/release/src/version.cpp @@ -8,7 +8,7 @@ ***************************************************************************/ -#define BARE_BUILD_VERSION "0.180" +#define BARE_BUILD_VERSION "0.182" extern const char bare_build_version[]; extern const char build_version[]; |