diff options
author | R. Belmont <rb6502@users.noreply.github.com> | 2017-06-24 08:01:42 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-24 08:01:42 -0400 |
commit | 6e685359dd2acc541fb43c368254120ae84b2a8b (patch) | |
tree | d213025f32b5710f8a60c1e7dcfbd23c6ee3213e | |
parent | 4a4883dd6504c7172a9ad62eebc123c1389ca347 (diff) | |
parent | 91f06f53530a7ea8c420d6576ec2aef9369c1b3b (diff) |
Merge pull request #2401 from DavidHaywood/200617
new working clone Lock'n'Chase (DECO Cassette) (Japan) [??]
-rw-r--r-- | src/mame/drivers/decocass.cpp | 50 | ||||
-rw-r--r-- | src/mame/includes/decocass.h | 1 | ||||
-rw-r--r-- | src/mame/machine/decocass.cpp | 29 | ||||
-rw-r--r-- | src/mame/mame.lst | 4 |
4 files changed, 84 insertions, 0 deletions
diff --git a/src/mame/drivers/decocass.cpp b/src/mame/drivers/decocass.cpp index 55b11a0c13b..3511199961d 100644 --- a/src/mame/drivers/decocass.cpp +++ b/src/mame/drivers/decocass.cpp @@ -892,6 +892,11 @@ static MACHINE_CONFIG_DERIVED( clocknch, decocass ) MCFG_MACHINE_RESET_OVERRIDE(decocass_state,clocknch) MACHINE_CONFIG_END +static MACHINE_CONFIG_DERIVED( clocknchj, decocass ) + + /* basic machine hardware */ + MCFG_MACHINE_RESET_OVERRIDE(decocass_state,clocknchj) +MACHINE_CONFIG_END static MACHINE_CONFIG_DERIVED( cfboy0a1, decocass ) /* 12 */ @@ -1271,6 +1276,16 @@ ROM_START( clocknch ) ROM_LOAD( "clocknch.cas", 0x0000, 0x8000, CRC(c9d163a4) SHA1(3ef55a8d8f603059e263776c08eb81f2cf18b75c) ) ROM_END +ROM_START( clocknchj ) + DECOCASS_BIOS_A_ROMS + + ROM_REGION( 0x00020, "dongle", 0 ) /* dongle data */ + ROM_LOAD( "a-0061.dgl", 0x0000, 0x0020, CRC(1bc9fccb) SHA1(ffc59c7660d5c87a8deca294f80260b6bc7c3027) ) /* ? */ + + ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ + ROM_LOAD( "dt-1111-a-0.bin", 0x0000, 0x6300, CRC(9753e815) SHA1(fd0c8e4733e1548fe47a4d34a2f6ce48d9303e22) ) +ROM_END + /* 12 Flash Boy (early vertical Japan version, then horizontal version), The Deco Kid (early vertical World version, then vertical version) */ ROM_START( cfboy0a1 ) // version MD 0-A-1 verified, 105 blocks, decrypted main data CRC(7ca358f0) DECOCASS_BIOS_AO_ROMS @@ -1462,6 +1477,17 @@ ROM_START( cptennis ) ROM_LOAD( "cptennis.cas", 0x0000, 0x8000, CRC(6bb257fe) SHA1(7554bf1996bc9e9c04a276aab050708d70103f54) ) ROM_END +ROM_START( cptennisj ) + DECOCASS_BIOS_A_ROMS + + ROM_REGION( 0x00800, "dongle", 0 ) /* dongle data */ + ROM_LOAD( "dp-1220-a-0.rom", 0x0000, 0x0800, CRC(1c603239) SHA1(6c97cfbb581f72e8c26a3fc5f06f9d6aa56883ba) ) + + ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ + ROM_LOAD( "dt-1222-a-0.bin", 0x0000, 0x6a00, CRC(ee29eba7) SHA1(fd3aebb81d83120d1afb4d9a216332363d695234) ) +ROM_END + + /* The Following use Dongle Type 3 (unknown part number?) (dongle data differs for each game) */ @@ -1542,6 +1568,16 @@ ROM_START( cbnj ) ROM_LOAD( "cbnj.cas", 0x0000, 0x8000, CRC(eed41560) SHA1(85d5df76efac33cd10427f659c4259afabb3daaf) ) ROM_END +ROM_START( cburnrubj ) + DECOCASS_BIOS_A_ROMS + + ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ + ROM_LOAD( "dp-127_b.pro", 0x0000, 0x1000, CRC(9f396832) SHA1(0e302fd094474ac792882948a018c73ce76e0759) ) + + ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ + ROM_LOAD( "dt-1271-a-0.bin", 0x0000, 0x7800, CRC(6bd0adab) SHA1(4c536991e4ec6cbdf4b74497dae9f0dba17ebb95) ) +ROM_END + /* 28 Graplop / Cluster Buster */ ROM_START( cgraplop ) DECOCASS_BIOS_B_ROMS @@ -1553,6 +1589,16 @@ ROM_START( cgraplop ) ROM_LOAD( "cgraplop.cas", 0x0000, 0x8000, CRC(d2c1c1bb) SHA1(db67304caa11540363735e7d4bf03507ccbe9980) ) ROM_END +ROM_START( cgraplopj ) + DECOCASS_BIOS_A_ROMS + + ROM_REGION( 0x01000, "dongle", 0 ) /* dongle data */ + ROM_LOAD( "cgraplop.pro", 0x0000, 0x1000, CRC(ee93787d) SHA1(0c753d62fdce2fdbd5b329a5aa259a967d07a651) ) + + ROM_REGION( 0x10000, "cassette", 0 ) /* (max) 64k for cassette image */ + ROM_LOAD( "dt-1280-a-0.bin", 0x0000, 0x7800, CRC(a0d7d1a7) SHA1(4260edd19786b6cf4cd0c426783637f0c61ca007) ) +ROM_END + ROM_START( cgraplop2 ) DECOCASS_BIOS_B_ROMS @@ -1833,6 +1879,7 @@ DRIVER_INIT_MEMBER(decocass_state,cdsteljn) /* 10 */ GAME( 1981, cocean1a, decocass, cocean1a, cocean1a, decocass_state, decocass, ROT270, "Data East Corporation", "Ocean to Ocean (Medal) (DECO Cassette MD) (No.10/Ver.1,Japan)", 0 ) /* no lever, 1P/2P buttons used to switch player, cocktail mode not emulated */ /* */ GAME( 1981, cocean6b, cocean1a, cocean1a, cocean1a, decocass_state, decocass, ROT270, "Data East Corporation", "Ocean to Ocean (Medal) (DECO Cassette MD) (No.10/Ver.6,US)", 0 ) /* lever, 1P/2P buttons used to switch player, cocktail mode not emulated */ /* 11 */ GAME( 1981, clocknch, decocass, clocknch, clocknch, decocass_state, decocass, ROT270, "Data East Corporation", "Lock'n'Chase (DECO Cassette) (US)", 0 ) +/* */ GAME( 1981, clocknchj, clocknch, clocknchj,clocknch, decocass_state, decocass, ROT270, "Data East Corporation", "Lock'n'Chase (DECO Cassette) (Japan)", 0 ) /* 12 */ GAME( 1981, cfboy0a1, decocass, cfboy0a1, cfboy0a1, decocass_state, decocass, ROT270, "Data East Corporation", "Flash Boy (vertical) [DECO Cassette MD] (No.12/Ver.0/Set.1,Japan)", 0 ) /* 13 */ GAME( 1981, cprogolf, decocass, cprogolf, cprogolf, decocass_state, decocass, ROT270, "Data East Corporation", "Tournament Pro Golf (DECO Cassette) (US)", 0 ) /* */ GAME( 1981, cprogolfj, cprogolf, cprogolfj,cprogolf, decocass_state, decocass, ROT270, "Data East Corporation", "Tournament Pro Golf (DECO Cassette) (Japan)", 0 ) @@ -1848,6 +1895,7 @@ DRIVER_INIT_MEMBER(decocass_state,cdsteljn) /* 20 */ GAME( 1982, ctornado, decocass, ctornado, ctornado, decocass_state, decocass, ROT270, "Data East Corporation", "Tornado (DECO Cassette) (US)", 0 ) /* 21 */ GAME( 1982, cmissnx, decocass, cmissnx, cmissnx, decocass_state, decocass, ROT270, "Data East Corporation", "Mission-X (DECO Cassette) (US)", 0 ) /* 22 */ GAME( 1982, cptennis, decocass, cptennis, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Pro Tennis (DECO Cassette) (US)", 0 ) +/* */ GAME( 1982, cptennisj, cptennis, cptennis, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Pro Tennis (DECO Cassette) (Japan)", 0 ) /* 23 */ GAME( 1982, cprogolf18,cprogolf, cprogolfj,cprogolf, decocass_state, decocass, ROT270, "Data East Corporation", "18 Challenge Pro Golf (DECO Cassette) (Japan)", 0 ) // 1982.?? 18 Hole Pro Golf /* 24 */ // 1982.07 Tsumego Kaisyou /* 25 */ GAME( 1982, cadanglr, decocass, cfishing, cfishing, decocass_state, decocass, ROT270, "Data East Corporation", "Angler Dangler (DECO Cassette) (US)", 0 ) @@ -1856,8 +1904,10 @@ DRIVER_INIT_MEMBER(decocass_state,cdsteljn) /* */ GAME( 1982, chamburger,cbtime, cbtime, cbtime, decocass_state, decocass, ROT270, "Data East Corporation", "Hamburger (DECO Cassette) (Japan)", 0 ) /* 27 */ GAME( 1982, cburnrub, decocass, cburnrub, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (DECO Cassette) (US) (set 1)", 0 ) /* */ GAME( 1982, cburnrub2, cburnrub, cburnrub, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (DECO Cassette) (US) (set 2)", 0 ) +/* */ GAME( 1982, cburnrubj, cburnrub, cburnrub, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Burnin' Rubber (DECO Cassette) (Japan)", 0 ) /* */ GAME( 1982, cbnj, cburnrub, cburnrub, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Bump 'n' Jump (DECO Cassette) (US)", 0 ) // was marked 'Japan' but uses the type B (US) bios /* 28 */ GAME( 1983, cgraplop, decocass, cgraplop, cgraplop, decocass_state, decocass, ROT270, "Data East Corporation", "Cluster Buster (DECO Cassette) (US)", 0 ) +/* */ GAME( 1983, cgraplopj, cgraplop, cgraplop, cgraplop, decocass_state, decocass, ROT270, "Data East Corporation", "Graplop (DECO Cassette) (Japan)", 0 ) /* */ GAME( 1983, cgraplop2, cgraplop, cgraplop2,cgraplop, decocass_state, decocass, ROT270, "Data East Corporation", "Graplop (no title screen) (DECO Cassette) (US)", 0 ) // a version with title screen exists, see reference videos /* 29 */ GAME( 1983, clapapa, decocass, clapapa, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' / La-Pa-Pa (DECO Cassette) (US)" , 0) /* Displays 'La-Pa-Pa during attract */ /* */ GAME( 1983, clapapa2, clapapa, clapapa, decocass, decocass_state, decocass, ROT270, "Data East Corporation", "Rootin' Tootin' (DECO Cassette) (US)" , 0) /* Displays 'Rootin' Tootin' during attract */ diff --git a/src/mame/includes/decocass.h b/src/mame/includes/decocass.h index 89f7e80b338..74ef1cc5f01 100644 --- a/src/mame/includes/decocass.h +++ b/src/mame/includes/decocass.h @@ -185,6 +185,7 @@ public: DECLARE_MACHINE_RESET(cflyball); DECLARE_MACHINE_RESET(cmanhat); DECLARE_MACHINE_RESET(cocean1a); /* 10 */ + DECLARE_MACHINE_RESET(clocknchj); /* 11 */ DECLARE_MACHINE_RESET(cfboy0a1); /* 12 */ uint32_t screen_update_decocass(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); DECLARE_WRITE8_MEMBER(decocass_coin_counter_w); diff --git a/src/mame/machine/decocass.cpp b/src/mame/machine/decocass.cpp index 94d38b9a5d9..184a087717c 100644 --- a/src/mame/machine/decocass.cpp +++ b/src/mame/machine/decocass.cpp @@ -462,6 +462,35 @@ MACHINE_RESET_MEMBER(decocass_state,cfboy0a1) /* 12 */ m_type1_outmap = MAKE_MAP(0,1,2,3,4,5,6,7); } +/* + +TYPE 1 +* Latched bits = $48 (2 latch bits) +* Input bits that are passed uninverted = $04 (1 true bits) +* Input bits that are passed inverted = $00 (0 inverted bits) +* Remaining bits for addressing PROM = $B3 (5 bits) +* Latched bit #0: +- Input bit position = 3 +- Output bit position = 3 +- Type = Inverting latch +* Latched bit #1: +- Input bit position = 6 +- Output bit position = 6 +- Type = Non-inverting latch + +*/ + +static uint8_t type1_map_clocknchj[8] = { T1PROM,T1PROM,T1DIRECT,T1LATCHINV,T1PROM,T1PROM,T1LATCH,T1PROM }; + +MACHINE_RESET_MEMBER(decocass_state,clocknchj) /* 11 */ +{ + decocass_state::machine_reset(); + LOG(0,("dongle type #1x (type1_map_clocknchj map)\n")); + m_dongle_r = read8_delegate(FUNC(decocass_state::decocass_type1_r),this); + m_type1_map = type1_map_clocknchj; + m_type1_inmap = MAKE_MAP(0,1,2,3,4,5,6,7); + m_type1_outmap = MAKE_MAP(0,1,2,3,4,5,6,7); +} /*************************************************************************** diff --git a/src/mame/mame.lst b/src/mame/mame.lst index 29b49c722d8..78a90d3df27 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -11084,6 +11084,7 @@ cbnj // 27 Bump 'n' Jump cbtime // 26 1982.08 Hamburger/Burger Time cburnrub // 27 1982.11 Burnin' Rubber cburnrub2 // 27 +cburnrubj // cdiscon1 // 19 1982.04 Disco No.1 cdsteljn // 14 1981.06 DS Telejan cexplore // 18 1982.02 Explorer @@ -11092,12 +11093,14 @@ cfghtice // 40 1984.04 Fighting Ice Hockey cfishing // 25 1982.10 Fishing cflyball // 35 1983.?? Flying Ball/Bampoline cgraplop // 28 1982.11 Cluster Buster / Graplop +cgraplopj // cgraplop2 // 28 chamburger // 26 1982.08 Hamburger (Japan) chwy // 01 1980.12 Highway Chase clapapa // 29 1982.11 La-Pa-Pa clapapa2 // 29 Rootin' Tootin' // this one doesn't display lapapa anywhere clocknch // 11 1981.04 Lock'n'Chase +clocknchj // cluckypo // 15 1981.?? Lucky Poker cmanhat // 03 1981.01 Manhattan cmissnx // 21 1982.04 Mission-X/Zoar @@ -11115,6 +11118,7 @@ cprogolfj // 13 1981.08 Tournament Pro Golf (Japan) cpsoccer // 33 1982.08 Pro Soccer cpsoccerj // 33 1982.08 Pro Soccer (Japan) cptennis // 22 1982.06 Pro Tennis +cptennisj cscrtry // 38 1984.03 Scrum Try cscrtry2 // 38 csdtenis // 34 1983.09 Super Doubles Tennis |