From 230702d378f2d45cf0e4316282a25be3941896be Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Thu, 2 Mar 2023 04:28:54 +1100 Subject: ROM label updates and new dumps: * dataeast/cninja: Added an early version of Mutant Fighter called Heroes. [Domenico Cervini] * jaleco/psychic5.cpp: Updated ROM labels and locations for psychic5j. [Domenico Cervini] * konami/nemesis.cpp: Updated ROM labels and mask numbers for lifefrce. [Domenico Cervini] * seibu/seibuspi.cpp: Added cartridge PAL dumps for Raiden Fighters 2. [Domenico Cervini] * thepit/thepit.cpp: Added a version of The Pit that shows a Centuri Inc copyright notice. [Domenico Cervini] * util/jedparse.cpp: Fixed a bug when logging parsed fuse values, and added more useful error log messages. New working clones ------------------ Heroes (World ver EM-1) [Domenico Cervini] The Pit (Centuri Inc) [Domenico Cervini] --- src/lib/util/jedparse.cpp | 51 ++++++++++++++++++++++++++++++++++++---- src/mame/dataeast/cninja.cpp | 46 ++++++++++++++++++++++++++++++++++++ src/mame/jaleco/psychic5.cpp | 18 ++++++++------- src/mame/konami/nemesis.cpp | 14 +++++------ src/mame/mame.lst | 2 ++ src/mame/seibu/seibuspi.cpp | 55 ++++++++++++++++++++++++++++++++++++++++++++ src/mame/thepit/thepit.cpp | 20 ++++++++++++++++ 7 files changed, 186 insertions(+), 20 deletions(-) diff --git a/src/lib/util/jedparse.cpp b/src/lib/util/jedparse.cpp index ac552abdcd3..3b77c4abe35 100644 --- a/src/lib/util/jedparse.cpp +++ b/src/lib/util/jedparse.cpp @@ -133,6 +133,7 @@ static void process_field(jed_data *data, const uint8_t *cursrc, const uint8_t * case 'F': cursrc++; pinfo->explicit_numfuses = data->numfuses = suck_number(&cursrc); + if (LOG_PARSE) printf("QF\n %lu\n", (unsigned long)data->numfuses); break; } break; @@ -162,7 +163,7 @@ static void process_field(jed_data *data, const uint8_t *cursrc, const uint8_t * if (*cursrc == '0' || *cursrc == '1') { jed_set_fuse(data, curfuse, *cursrc - '0'); - if (LOG_PARSE) printf(" fuse %u = %d\n", curfuse, 0); + if (LOG_PARSE) printf(" fuse %u = %d\n", curfuse, jed_get_fuse(data, curfuse)); if (curfuse >= data->numfuses) data->numfuses = curfuse + 1; curfuse++; @@ -195,6 +196,7 @@ int jed_parse(util::random_read &src, jed_data *result) jed_parse_info pinfo; int i; std::size_t actual; + std::error_condition err; /* initialize the output and the intermediate info struct */ memset(result, 0, sizeof(*result)); @@ -204,8 +206,17 @@ int jed_parse(util::random_read &src, jed_data *result) uint8_t ch; do { - if (src.read(&ch, 1, actual) || actual != 1) + err = src.read(&ch, 1, actual); + if (err) + { + if (LOG_PARSE) printf("Read error searching for JED start marker\n"); + return JEDERR_INVALID_DATA; + } + else if (actual != 1) + { + if (LOG_PARSE) printf("End of file encountered while searching for JED start marker\n"); return JEDERR_INVALID_DATA; + } } while (ch != 0x02); @@ -214,15 +225,27 @@ int jed_parse(util::random_read &src, jed_data *result) uint16_t checksum = ch; do { - if (src.read(&ch, 1, actual) || actual != 1) + err = src.read(&ch, 1, actual); + if (err) + { + if (LOG_PARSE) printf("Read error searching for JED end marker\n"); return JEDERR_INVALID_DATA; + } + else if (actual != 1) + { + if (LOG_PARSE) printf("End of file encountered while searching for JED end marker\n"); + return JEDERR_INVALID_DATA; + } checksum += ch & 0x7f; /* mark end of comment field */ if (ch == '*' && startpos == 0) { if (src.tell(startpos)) + { + if (LOG_PARSE) printf("Error getting file position for end of design specification\n"); return JEDERR_INVALID_DATA; + } } } while (ch != 0x03); @@ -230,7 +253,10 @@ int jed_parse(util::random_read &src, jed_data *result) /* the ETX becomes the real srcend */ uint64_t endpos; if (src.tell(endpos)) + { + if (LOG_PARSE) printf("Error getting file position for end JED data\n"); return JEDERR_INVALID_DATA; + } endpos--; /* see if there is a transmission checksum at the end */ @@ -239,15 +265,27 @@ int jed_parse(util::random_read &src, jed_data *result) { uint16_t dessum = (hexval(sumbuf[0]) << 12) | (hexval(sumbuf[1]) << 8) | (hexval(sumbuf[2]) << 4) | hexval(sumbuf[3] << 0); if (dessum != 0 && dessum != checksum) + { + if (LOG_PARSE) printf("Bad transmission checksum %04X (expected %04X)\n", dessum, checksum); return JEDERR_BAD_XMIT_SUM; + } } /* blast through the comment field */ - if (startpos == 0 || src.seek(startpos, SEEK_SET)) - return JEDERR_INVALID_DATA; + if (startpos != 0) + { + if (src.seek(startpos, SEEK_SET)) + { + if (LOG_PARSE) printf("Error seeking start of JED data\n"); + return JEDERR_INVALID_DATA; + } + } auto srcdata = std::make_unique(endpos - startpos); if (src.read(&srcdata[0], endpos - startpos, actual) || actual != endpos - startpos) + { + if (LOG_PARSE) printf("Error reading JED data\n"); return JEDERR_INVALID_DATA; + } const uint8_t *cursrc = &srcdata[0]; const uint8_t *const srcend = &srcdata[endpos - startpos]; @@ -290,7 +328,10 @@ int jed_parse(util::random_read &src, jed_data *result) for (i = 0; i < (result->numfuses + 7) / 8; i++) checksum += result->fusemap[i]; if (pinfo.checksum != 0 && checksum != pinfo.checksum) + { + if (LOG_PARSE) printf("Bad fuse checksum %04X (expected %04X)\n", pinfo.checksum, checksum); return JEDERR_BAD_FUSE_SUM; + } return JEDERR_NONE; } diff --git a/src/mame/dataeast/cninja.cpp b/src/mame/dataeast/cninja.cpp index 4412efb3ed8..70e4887514a 100644 --- a/src/mame/dataeast/cninja.cpp +++ b/src/mame/dataeast/cninja.cpp @@ -12,6 +12,7 @@ Robocop 2 (c) 1991 Data East Corporation (World version) Stone Age (Italian bootleg) Mutant Fighter (c) 1991 Data East Corporation (World version) + Heroes (c) 1991 Data East Corporation (World version) Death Brade (c) 1991 Data East Corporation (Japanese version) Edward Randy runs on the same board as Caveman Ninja but the protection @@ -2130,6 +2131,50 @@ ROM_START( mutantf2 ) /* World ver 2 */ ROM_LOAD( "maf-09.18l", 0x00000, 0x80000, CRC(28e7ed81) SHA1(e168a2748b75c647f6f9c0d7d25d4f046aa98094) ) ROM_END +ROM_START( mutantf1 ) /* World ver 1 DE-0346-4 PCB */ + ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */ + ROM_LOAD16_BYTE("hd-03-s.2c", 0x00000, 0x20000, CRC(c80a7f4b) SHA1(7a18bd542c09a6a0d5909a4de27ffa6af530fb4f) ) + ROM_LOAD16_BYTE("hd-00-s.2a", 0x00001, 0x20000, CRC(ddf7788d) SHA1(7ae13b026b11fbb3c113096cc0043135745b620f) ) + ROM_LOAD16_BYTE("hd-04-s.4c", 0x40000, 0x20000, CRC(b137d6d1) SHA1(70c819d1618272bfde38fbda08154da9a0cd5120) ) + ROM_LOAD16_BYTE("hd-01-s.4a", 0x40001, 0x20000, CRC(d76cb272) SHA1(bd29b64003aebfdfcc74a92c7ac14099f0c31b57) ) + + ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound CPU */ + ROM_LOAD( "hd-12-s.21j", 0x00000, 0x10000, CRC(13d55f11) SHA1(6438dca57f43b3ca6d273bf82b62104a49260132) ) + + ROM_REGION( 0x0a0000, "chars", 0 ) /* chars */ + ROM_LOAD16_BYTE( "hd-06-s.8d", 0x000000, 0x10000, CRC(c1d99cd8) SHA1(41536ed114e9288e6b3bb1142c1358886f54d1d0) ) + ROM_LOAD16_BYTE( "hd-07-s.9d", 0x000001, 0x10000, CRC(b9ea3ec7) SHA1(b0e9f0d4e42935895bc844ef07b572cac5280458) ) + + ROM_REGION( 0x080000, "tiles1", 0 ) /* tiles 1 */ + ROM_LOAD( "maf-00.8a", 0x000000, 0x80000, CRC(e56f528d) SHA1(3908d9b189fa4895c532d1d1f133df0913810cf9) ) + + ROM_REGION( 0x100000, "tiles2", 0 ) /* tiles 2 */ + ROM_LOAD( "maf-01.9a", 0x000000, 0x40000, CRC(c3d5173d) SHA1(2b6559bf65d7cc5b957ad347b64cf6a18f661686) ) + ROM_CONTINUE( 0x080000, 0x40000 ) + ROM_LOAD( "maf-02.11a", 0x040000, 0x40000, CRC(0b37d849) SHA1(a0606fb8130a2e86a241ce5ce0b4f61373a88c17) ) + ROM_CONTINUE( 0x0c0000, 0x40000 ) + + ROM_REGION( 0x500000, "sprites1", 0 ) /* sprites */ + ROM_LOAD( "maf-06.18d", 0x000000, 0x100000, CRC(f5c7a9b5) SHA1(92efc9401347598c90acf62c9aef30109c990ad6) ) + ROM_LOAD( "maf-07.20d", 0x100000, 0x100000, CRC(fd6008a3) SHA1(7b680424eca3804c70fa0c4dc415d665c8626498) ) + ROM_LOAD( "maf-08.21d", 0x200000, 0x080000, CRC(e41cf1e7) SHA1(06524e1aed0adc4c32c92e16a00dc983014f4994) ) + ROM_LOAD( "maf-03.18a", 0x280000, 0x100000, CRC(f4366d2c) SHA1(20964d0e1b879b3e5cb5d18a46d2a17dca2b4171) ) + ROM_LOAD( "maf-04.20a", 0x380000, 0x100000, CRC(0c8f654e) SHA1(e566d4b789b345e20caf7e061e43be7c2e1be9b2) ) + ROM_LOAD( "maf-05.21a", 0x480000, 0x080000, CRC(b0cfeb80) SHA1(b8519c604b03eb8bcf26d00a43b39d48f1b45ab5) ) + + ROM_REGION( 0x40000, "sprites2", 0 ) /* sprites 2 */ + ROM_LOAD16_BYTE("hd-08-s.15a", 0x00000, 0x10000, CRC(93b7279f) SHA1(14304a1ffe1bc791bfa83f8200793d897449133c) ) + ROM_LOAD16_BYTE("hd-09-s.17a", 0x00001, 0x10000, CRC(05e2c074) SHA1(ec95303e8196424864964b5d2ae862bf75571e83) ) + ROM_LOAD16_BYTE("hd-10-s.15c", 0x20000, 0x10000, CRC(9b06f418) SHA1(d1579ae36676e38c96ee55a1ffa20aa307a21654) ) + ROM_LOAD16_BYTE("hd-11-s.17c", 0x20001, 0x10000, CRC(3859a531) SHA1(a2a0c1aa28181b5ef6c075ff0118178340389693) ) + + ROM_REGION( 0x40000, "oki1", 0 ) /* ADPCM samples */ + ROM_LOAD( "maf-10.20l", 0x00000, 0x40000, CRC(7c57f48b) SHA1(9a5624553b3b038d70f9b517f410a635c00a8771) ) + + ROM_REGION( 0x80000, "oki2", 0 ) /* ADPCM samples */ + ROM_LOAD( "maf-09.18l", 0x00000, 0x80000, CRC(28e7ed81) SHA1(e168a2748b75c647f6f9c0d7d25d4f046aa98094) ) +ROM_END + ROM_START( deathbrd ) /* Japan ver 3 */ ROM_REGION( 0x80000, "maincpu", 0 ) /* 68000 code */ ROM_LOAD16_BYTE("hf-03-2.2c", 0x00000, 0x20000, CRC(fb86fff3) SHA1(af4cfc19ec85e0aa49b5e46d95bdd94a20922cce) ) @@ -2219,4 +2264,5 @@ GAME( 1991, mutantf, 0, mutantf, mutantf, cninja_state, init_mutant GAME( 1991, mutantf4, mutantf, mutantf, mutantf, cninja_state, init_mutantf, ROT0, "Data East Corporation", "Mutant Fighter (World ver EM-4)", MACHINE_SUPPORTS_SAVE ) GAME( 1991, mutantf3, mutantf, mutantf, mutantf, cninja_state, init_mutantf, ROT0, "Data East Corporation", "Mutant Fighter (World ver EM-3)", MACHINE_SUPPORTS_SAVE ) GAME( 1991, mutantf2, mutantf, mutantf, mutantf, cninja_state, init_mutantf, ROT0, "Data East Corporation", "Mutant Fighter (World ver EM-2)", MACHINE_SUPPORTS_SAVE ) +GAME( 1991, mutantf1, mutantf, mutantf, mutantf, cninja_state, init_mutantf, ROT0, "Data East Corporation", "Heroes (World ver EM-1)", MACHINE_SUPPORTS_SAVE ) GAME( 1991, deathbrd, mutantf, mutantf, mutantf, cninja_state, init_mutantf, ROT0, "Data East Corporation", "Death Brade (Japan ver JM-3)", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/jaleco/psychic5.cpp b/src/mame/jaleco/psychic5.cpp index 710fc1edd43..369264ff210 100644 --- a/src/mame/jaleco/psychic5.cpp +++ b/src/mame/jaleco/psychic5.cpp @@ -821,24 +821,26 @@ void psychic5_state::bombsa(machine_config &config) ***************************************************************************/ +// Main PCB PS-8634 +// Tilemap PCB PS-8635 ROM_START( psychic5j ) ROM_REGION( 0x20000, "maincpu", 0 ) /* Main CPU */ - ROM_LOAD( "p5d", 0x00000, 0x08000, CRC(90259249) SHA1(ac2d8dd95f6c04b6ad726136931e37dcd537e977) ) - ROM_LOAD( "p5e", 0x10000, 0x10000, CRC(72298f34) SHA1(725be2fbf5f3622f646c0fb8e6677cbddf0b1fc2) ) + ROM_LOAD( "4.7a", 0x00000, 0x08000, CRC(90259249) SHA1(ac2d8dd95f6c04b6ad726136931e37dcd537e977) ) + ROM_LOAD( "5.7c", 0x10000, 0x10000, CRC(72298f34) SHA1(725be2fbf5f3622f646c0fb8e6677cbddf0b1fc2) ) ROM_REGION( 0x10000, "audiocpu", 0 ) /* Sound CPU */ - ROM_LOAD( "p5a", 0x00000, 0x10000, CRC(6efee094) SHA1(ae2b5bf6199121520bf8428b8b160b987f5b474f) ) + ROM_LOAD( "1.2b", 0x00000, 0x10000, CRC(6efee094) SHA1(ae2b5bf6199121520bf8428b8b160b987f5b474f) ) ROM_REGION( 0x20000, "gfx1", 0 ) /* sprite tiles */ - ROM_LOAD( "p5b", 0x00000, 0x10000, CRC(7e3f87d4) SHA1(b8e7fa3f96d2e3937e4cb530f105bb84d5743b43) ) - ROM_LOAD( "p5c", 0x10000, 0x10000, CRC(8710fedb) SHA1(c7e8dc6b733e4ecce37d56fc429c00ade8736ff3) ) + ROM_LOAD( "2.4p", 0x00000, 0x10000, CRC(7e3f87d4) SHA1(b8e7fa3f96d2e3937e4cb530f105bb84d5743b43) ) + ROM_LOAD( "3.4r", 0x10000, 0x10000, CRC(8710fedb) SHA1(c7e8dc6b733e4ecce37d56fc429c00ade8736ff3) ) ROM_REGION( 0x20000, "gfx2", 0 ) /* background tiles */ - ROM_LOAD( "p5g", 0x00000, 0x10000, CRC(f9262f32) SHA1(bae2dc77be7024bd85f213e4da746c5903db6ea5) ) - ROM_LOAD( "p5h", 0x10000, 0x10000, CRC(c411171a) SHA1(d5893563715ba231e42b084b88f5176bb94a4da9) ) + ROM_LOAD( "7.2k", 0x00000, 0x10000, CRC(f9262f32) SHA1(bae2dc77be7024bd85f213e4da746c5903db6ea5) ) + ROM_LOAD( "8.2m", 0x10000, 0x10000, CRC(c411171a) SHA1(d5893563715ba231e42b084b88f5176bb94a4da9) ) ROM_REGION( 0x08000, "gfx3", 0 ) /* foreground tiles */ - ROM_LOAD( "p5f", 0x00000, 0x08000, CRC(04d7e21c) SHA1(6046c506bdedc233e3730f90c7897e847bec8758) ) + ROM_LOAD( "6.5f", 0x00000, 0x08000, CRC(04d7e21c) SHA1(6046c506bdedc233e3730f90c7897e847bec8758) ) ROM_REGION( 0x08000, "proms", 0 ) /* Proms */ ROM_LOAD( "my10.7l", 0x000, 0x200, CRC(6a7d13c0) SHA1(2a835a4ac1acb7663d0b915d0339af9800284da6) ) diff --git a/src/mame/konami/nemesis.cpp b/src/mame/konami/nemesis.cpp index a0e38a4602f..cc42f5d1183 100644 --- a/src/mame/konami/nemesis.cpp +++ b/src/mame/konami/nemesis.cpp @@ -2400,19 +2400,19 @@ ROM_END ROM_START( lifefrce ) ROM_REGION( 0x80000, "maincpu", 0 ) - ROM_LOAD16_BYTE( "587-k02.18b", 0x00000, 0x10000, CRC(4a44da18) SHA1(8e76bc2b9c48bfc65664fb6ee4d1d33622ee1eb8) ) - ROM_LOAD16_BYTE( "587-k05.18c", 0x00001, 0x10000, CRC(2f8c1cbd) SHA1(aa309d509be69f315e50047abff42d9b30334e1d) ) - ROM_LOAD16_BYTE( "587-c03.17b", 0x40000, 0x20000, CRC(e5caf6e6) SHA1(f5df4fbc43cfa6e2866558c99dd95ba8dc89dc7a) ) /* Mask rom */ - ROM_LOAD16_BYTE( "587-c06.17c", 0x40001, 0x20000, CRC(c2f567ea) SHA1(0c38fea53f3d4a9ae0deada5669deca4be8c9fd3) ) /* Mask rom */ + ROM_LOAD16_BYTE( "587-l02.18b", 0x00000, 0x10000, CRC(4a44da18) SHA1(8e76bc2b9c48bfc65664fb6ee4d1d33622ee1eb8) ) + ROM_LOAD16_BYTE( "587-l05.18c", 0x00001, 0x10000, CRC(2f8c1cbd) SHA1(aa309d509be69f315e50047abff42d9b30334e1d) ) + ROM_LOAD16_BYTE( "6107.17b", 0x40000, 0x20000, CRC(e5caf6e6) SHA1(f5df4fbc43cfa6e2866558c99dd95ba8dc89dc7a) ) /* Mask rom */ + ROM_LOAD16_BYTE( "6108.17c", 0x40001, 0x20000, CRC(c2f567ea) SHA1(0c38fea53f3d4a9ae0deada5669deca4be8c9fd3) ) /* Mask rom */ ROM_REGION( 0x10000, "audiocpu", 0 ) /* 64k for sound */ - ROM_LOAD( "587-k09.11j", 0x00000, 0x08000, CRC(2255fe8c) SHA1(6ee35575a15f593642b29020857ec466094ef495) ) + ROM_LOAD( "587-k09.11j", 0x00000, 0x08000, CRC(2255fe8c) SHA1(6ee35575a15f593642b29020857ec466094ef495) ) ROM_REGION( 0x04000, "vlm", 0 ) /* VLM5030 data */ - ROM_LOAD( "587-k08.8g", 0x00000, 0x04000, CRC(7f0e9b41) SHA1(c9fc2723fac55691dfbb4cf9b3c472a42efa97c9) ) + ROM_LOAD( "587-k08.8g", 0x00000, 0x04000, CRC(7f0e9b41) SHA1(c9fc2723fac55691dfbb4cf9b3c472a42efa97c9) ) ROM_REGION( 0x20000, "k007232", 0 ) /* 007232 data */ - ROM_LOAD( "587-c01.10a", 0x00000, 0x20000, CRC(09fe0632) SHA1(4c3b29c623d70bbe8a938a0beb4638912c46fb6a) ) /* Mask rom */ + ROM_LOAD( "6106.10a", 0x00000, 0x20000, CRC(09fe0632) SHA1(4c3b29c623d70bbe8a938a0beb4638912c46fb6a) ) /* Mask rom */ ROM_END ROM_START( lifefrcej ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index d6d5493f306..c97ce582952 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -16344,6 +16344,7 @@ edrandy2 // MAD (c) 1990 Data East Corporation (World) edrandyj // MAD (c) 1990 Data East Corporation (Japan) joemac // MAG (c) 1991 Data East Corporation (Japan) mutantf // MAF (c) 1991 Data East Corporation (World) +mutantf1 // MAF (c) 1991 Data East Corporation (World) mutantf2 // MAF (c) 1991 Data East Corporation (World) mutantf3 // MAF (c) 1991 Data East Corporation (World) mutantf4 // MAF (c) 1991 Data East Corporation (World) @@ -43354,6 +43355,7 @@ rtriv // (c) 198? Romar suprmous // (c) 1982 Taito thehole // bootleg thepit // (c) 1982 Zilec +thepitc // (c) 1982 Centuri Inc thepitj // (c) 1982 Taito (licensed) thepitu1 // (c) 1982 Centuri (licensed) thepitu2 // (c) 1982 Centuri (licensed) diff --git a/src/mame/seibu/seibuspi.cpp b/src/mame/seibu/seibuspi.cpp index b2963553f0f..fbeba4e9579 100644 --- a/src/mame/seibu/seibuspi.cpp +++ b/src/mame/seibu/seibuspi.cpp @@ -3385,6 +3385,11 @@ ROM_START( rdft2 ) /* SPI Cart, Europe */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region80.u1053", 0x000000, 0x100000, CRC(e2adaff5) SHA1(9297afaf78209724515d8f78de8cee7bc7cb796b) ) ROM_END @@ -3422,6 +3427,11 @@ ROM_START( rdft2u ) /* SPI Cart, USA */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region10.u1053", 0x000000, 0x100000, CRC(4319d998) SHA1(a064ce647453a9b3bccf7f1d6d0d52b5a72e09dd) ) ROM_END @@ -3459,6 +3469,11 @@ ROM_START( rdft2j ) /* SPI Cart, Japan */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) ) ROM_END @@ -3496,6 +3511,11 @@ ROM_START( rdft2ja ) /* SPI Cart, Japan */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) ) ROM_END @@ -3533,6 +3553,11 @@ ROM_START( rdft2jb ) /* SPI Cart, Japan */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) ) ROM_END @@ -3570,6 +3595,11 @@ ROM_START( rdft2jc ) /* SPI SXX2C ROM SUB8 Cart, Japan */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region01.u1053", 0x000000, 0x100000, CRC(7ae7ab76) SHA1(a2b196f470bf64af94002fc4e2640fadad00418f) ) ROM_END @@ -3607,6 +3637,11 @@ ROM_START( rdft2it ) /* SPI Cart, Italy */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("seibu8.bin", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region92.u1053", 0x000000, 0x100000, CRC(204d82d0) SHA1(444f4aefa27d8f5d1a2f7f08f826ea84b0ccbd02) ) ROM_END @@ -3645,6 +3680,11 @@ ROM_START( rdft2a ) /* SPI Cart, Asia (Metrotainment license); SPI PCB is marked ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("seibu__8.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) // socket is silkscreened on pcb SOUND1 + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region22.u1053", 0x000000, 0x100000, CRC(5fee8413) SHA1(6d6a62fa01293b4ba4b349a39820d024add6ea22) ) ROM_END @@ -3682,6 +3722,11 @@ ROM_START( rdft2aa ) /* SPI Cart, Asia (Dream Island license) */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region24.u1053", 0x000000, 0x100000, CRC(72a33dc4) SHA1(65a52f576ca4d240418fedd9a4922edcd6c0c8d1) ) ROM_END @@ -3719,6 +3764,11 @@ ROM_START( rdft2t ) /* SPI Cart, Taiwan */ ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("sound1.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region20.u1053", 0x000000, 0x100000, CRC(f2051161) SHA1(45cbd5fd9ae0ca0c5c3450bca5f6806ddce3c56f) ) ROM_END @@ -3756,6 +3806,11 @@ ROM_START( rdft2s ) /* SPI Cart, Switzerland; SPI PCB is marked "(C)1997 SXX2C R ROM_CONTINUE( 0x400000, 0x100000 ) ROM_LOAD32_BYTE("seibu__8.u0222", 0x800000, 0x080000, CRC(b7bd3703) SHA1(6427a7e6de10d6743d6e64b984a1d1c647f5643a) ) // socket is silkscreened on pcb SOUND1 + ROM_REGION( 0x0345, "pals", 0 ) /* pals */ + ROM_LOAD("rm81.u0529.bin", 0x0000, 0x0117, CRC(acd55c8e) SHA1(b965e828fecd61b836aca337637e53d7360d9dc4) ) // PALCE16V8 + ROM_LOAD("rm82.u0330.bin", 0x0117, 0x0117, CRC(64c71423) SHA1(1da3502bec0c843b7198d1d9ab60f9fd4b110a8e) ) // PALCE16V8 + ROM_LOAD("rm83.u0331.bin", 0x022e, 0x0117, CRC(6e10d66b) SHA1(995d2a0da680ec19ee253098c91a4780dd8403c6) ) // PALCE16V8 + ROM_REGION( 0x100000, "soundflash1", 0 ) /* on SPI motherboard */ ROM_LOAD("flash0_blank_region9c.u1053", 0x000000, 0x100000, CRC(d73d640c) SHA1(61a99af2a153de9d53e28872a2493e2ba797a325) ) ROM_END diff --git a/src/mame/thepit/thepit.cpp b/src/mame/thepit/thepit.cpp index f844be406d5..fd13538e069 100644 --- a/src/mame/thepit/thepit.cpp +++ b/src/mame/thepit/thepit.cpp @@ -933,6 +933,25 @@ ROM_START( thepitj ) ROM_LOAD( "82s123.ic4", 0x0000, 0x0020, CRC(a758b567) SHA1(d188c90dba10fe3abaae92488786b555b35218c5) ) ROM_END +ROM_START( thepitc ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "pi-38.ic38", 0x0000, 0x1000, CRC(71affecc) SHA1(e64cb2f8d546f5d44dc10a4178f3d211882c45a9) ) + ROM_LOAD( "pi-39.ic39", 0x1000, 0x1000, CRC(894063cd) SHA1(772ff81cf44d21981f9768f017af5cb81ff57be3) ) + ROM_LOAD( "pi-40.ic40", 0x2000, 0x1000, CRC(1b488543) SHA1(8991c6424f008ddd15edac953635aecdba4ea696) ) + ROM_LOAD( "pi-41.ic41", 0x3000, 0x1000, CRC(f33aab67) SHA1(edcc4222c78ce7d8accd4e6ef9f81600a066bda0) ) + ROM_LOAD( "pi-33.ic33", 0x4000, 0x1000, CRC(394ef216) SHA1(e9f7a3697183e15507b81147ac7b87c24802c65c) ) + + ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_LOAD( "pi-30.ic30", 0x0000, 0x0800, CRC(1b79dfb6) SHA1(ba78b035a91a67732414ba327640fb771d4323c5) ) + + ROM_REGION( 0x1800, "gfx1", 0 ) /* chars and sprites */ + ROM_LOAD( "pi-9.ic9", 0x0000, 0x0800, CRC(69502afc) SHA1(9baf094baab8325af659879cfb6984eeca0d94bd) ) + ROM_LOAD( "pi-8.ic8", 0x1000, 0x0800, CRC(2ddd5045) SHA1(baa962a874f00e56c15c264980b1e31a2c9dc270) ) + + ROM_REGION( 0x0020, "proms", 0 ) + ROM_LOAD( "82s123.ic4", 0x0000, 0x0020, CRC(a758b567) SHA1(d188c90dba10fe3abaae92488786b555b35218c5) ) // not dumped for this set +ROM_END + ROM_START( thehole ) // uses many components (i.e. the Z80s) marked by SGS, an Italian company. ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "1.6e", 0x0000, 0x1000, CRC(71affecc) SHA1(e64cb2f8d546f5d44dc10a4178f3d211882c45a9) ) @@ -1441,6 +1460,7 @@ GAME( 1982, thepit, 0, thepit, thepit, thepit_state, empty_init, GAME( 1982, thepitu1, thepit, thepit, thepit, thepit_state, empty_init, ROT90, "Zilec Electronics (Centuri license)", "The Pit (US set 1)", MACHINE_SUPPORTS_SAVE ) GAME( 1982, thepitu2, thepit, thepit, thepit, thepit_state, empty_init, ROT90, "Zilec Electronics (Centuri license)", "The Pit (US set 2)", MACHINE_SUPPORTS_SAVE ) // Bally PCB GAME( 1982, thepitj, thepit, thepit, thepit, thepit_state, empty_init, ROT90, "Zilec Electronics (Taito license)", "The Pit (Japan)", MACHINE_SUPPORTS_SAVE ) +GAME( 1982, thepitc, thepit, thepit, thepit, thepit_state, empty_init, ROT90, "Centuri Inc", "The Pit (Centuri Inc)", MACHINE_SUPPORTS_SAVE ) GAME( 1982, thehole, thepit, thepit, thepit, thepit_state, empty_init, ROT90, "bootleg", "The Hole (bootleg of The Pit)", MACHINE_SUPPORTS_SAVE ) GAME( 1982, dockman, 0, intrepid, dockman, thepit_state, empty_init, ROT90, "Taito Corporation", "Dock Man (set 1)", MACHINE_SUPPORTS_SAVE ) -- cgit v1.2.3