summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/galaxian.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/galaxian.cpp')
-rw-r--r--src/mame/drivers/galaxian.cpp52
1 files changed, 49 insertions, 3 deletions
diff --git a/src/mame/drivers/galaxian.cpp b/src/mame/drivers/galaxian.cpp
index ae94d827a53..3f1307ce6db 100644
--- a/src/mame/drivers/galaxian.cpp
+++ b/src/mame/drivers/galaxian.cpp
@@ -1762,6 +1762,12 @@ void galaxian_state::theend_map(address_map &map)
map(0x8000, 0xffff).rw(FUNC(galaxian_state::theend_ppi8255_r), FUNC(galaxian_state::theend_ppi8255_w));
}
+void galaxian_state::froggervd_map(address_map &map)
+{
+ theend_map(map);
+ map(0x7800, 0x7800).mirror(0x07ff).r("watchdog", FUNC(watchdog_timer_device::reset_r));
+}
+
/* map not derived from schematics. Used by explorer and takeoff */
void galaxian_state::explorer_map(address_map &map)
{
@@ -5935,8 +5941,7 @@ MACHINE_CONFIG_START(galaxian_state::galaxian_base)
MCFG_DEVICE_ADD("maincpu", Z80, GALAXIAN_PIXEL_CLOCK/3/2)
MCFG_DEVICE_PROGRAM_MAP(galaxian_map)
- MCFG_WATCHDOG_ADD("watchdog")
- MCFG_WATCHDOG_VBLANK_INIT("screen", 8)
+ WATCHDOG_TIMER(config, "watchdog").set_vblank_count("screen", 8);
/* video hardware */
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_galaxian)
@@ -6334,6 +6339,16 @@ MACHINE_CONFIG_START(galaxian_state::froggers)
MACHINE_CONFIG_END
+MACHINE_CONFIG_START(galaxian_state::froggervd)
+ konami_base(config);
+ konami_sound_1x_ay8910(config);
+
+ /* alternate memory map */
+ MCFG_DEVICE_MODIFY("maincpu")
+ MCFG_DEVICE_PROGRAM_MAP(froggervd_map)
+MACHINE_CONFIG_END
+
+
MACHINE_CONFIG_START(galaxian_state::frogf)
konami_base(config);
konami_sound_1x_ay8910(config);
@@ -10725,6 +10740,36 @@ ROM_START( froggrs )
ROM_LOAD( "pr-91.6l", 0x0000, 0x0020, CRC(413703bf) SHA1(66648b2b28d3dcbda5bdb2605d1977428939dd3c) )
ROM_END
+/* Video Dens Frogger */
+ROM_START( froggervd )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "frogvd_r1-libro-s1.ac9", 0x0000, 0x0800, CRC(81c2020e) SHA1(8c9292b399a408795e78b7dc5c706d3b526d3751) ) // 2716
+ ROM_LOAD( "frogvd_r2-libro-s2.ae9", 0x0800, 0x0800, CRC(a892ab61) SHA1(828cc04d73738ea17055c152098d592b776f4fb1) BAD_DUMP ) // 2716 (hand-patched at XX0)
+ ROM_LOAD( "frogvd_r3-libro-s3.af9", 0x1000, 0x0800, CRC(637a2ff8) SHA1(e9b9fc692ca5d8deb9cd30d9d73ad25c8d8bafe1) ) // 2716
+ ROM_LOAD( "frogvd_r4-libro-s4.ah9", 0x1800, 0x0800, CRC(1dc9ab15) SHA1(94b327dd2eaf0ffb19fee86a2a890a0012d52849) ) // 2716
+ ROM_LOAD( "frogvd_r5-libro-s5.aj9", 0x2000, 0x0800, CRC(35e11cd2) SHA1(c2d01324c052d79ad9de00d13ddc4322f9c44292) ) // 2716
+ ROM_LOAD( "frogvd_r6-libro-s6.al9", 0x2800, 0x0800, CRC(5db899ed) SHA1(e8d75daba8dfdb89078068a29a0ccf040dfca4da) ) // 2716
+
+ ROM_REGION( 0x10000, "audiocpu", 0 )
+ ROM_LOAD( "frogvd_r11-ot1.bc5", 0x0000, 0x0800, CRC(79326efe) SHA1(087cd61ba9c09be6ff71be8f89933a4a0f620650) ) // 2716
+ ROM_LOAD( "frogvd_r12-ot2.bd5", 0x0800, 0x0800, CRC(7380a48f) SHA1(75582a94b696062cbdb66a4c5cf0bc0bb94f81ee) BAD_DUMP ) // 2716 (hand-patched at XXe)
+ ROM_LOAD( "frogvd_r13-ot3.be5", 0x1000, 0x0800, CRC(31d7eb27) SHA1(2e1d34ae4da385fd7cac94707d25eeddf4604e1a) ) // 2716
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "frogvd_r9-libro-c1.af9", 0x0000, 0x0800, CRC(05f7d883) SHA1(78831fd287da18928651a8adb7e578d291493eff) ) // 2716
+ ROM_LOAD( "frogvd_r10-libro-c2.ah9", 0x0800, 0x0800, CRC(658745f8) SHA1(e4e5c3e011c8a7233a36d29e10e08905873500aa) ) // 2716
+
+ ROM_REGION( 0x0020, "proms", 0 )
+ ROM_LOAD( "frogvd.5e", 0x0000, 0x0004, CRC(c5f12bc3) SHA1(b746ba06b596d4227fdc730a23bdf495f84e6a72) ) // 74s288n dumped as 82s123
+ ROM_CONTINUE( 0x0010, 0x0004 )
+ ROM_CONTINUE( 0x0004, 0x0004 )
+ ROM_CONTINUE( 0x0014, 0x0004 )
+ ROM_CONTINUE( 0x0008, 0x0004 )
+ ROM_CONTINUE( 0x0018, 0x0004 )
+ ROM_CONTINUE( 0x000c, 0x0004 )
+ ROM_CONTINUE( 0x001c, 0x0004 )
+ROM_END
+
ROM_START( quaak )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "1f.bin", 0x0000, 0x0800, CRC(5d0e2716) SHA1(c484ae162bfe5ef9d5d2a6930c9c476394e70bbd) )
@@ -12536,7 +12581,8 @@ GAME( 1981, froggermc, frogger, froggermc, froggermc, galaxian_state, init_
GAME( 1981, froggers, frogger, froggers, frogger, galaxian_state, init_froggers, ROT90, "bootleg", "Frog", MACHINE_SUPPORTS_SAVE )
GAME( 1981, frogf, frogger, frogf, frogger, galaxian_state, init_froggers, ROT90, "bootleg (Falcon)", "Frog (Falcon bootleg)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, frogg, frogger, frogg, frogg, galaxian_state, init_frogg, ROT90, "bootleg", "Frog (Galaxian hardware)", MACHINE_SUPPORTS_SAVE )
-GAME( 1981, froggrs, frogger, froggers, frogger, galaxian_state, init_froggrs, ROT90, "bootleg (Coin Music)", "Frogger (Scramble hardware)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, froggrs, frogger, froggers, frogger, galaxian_state, init_froggrs, ROT90, "bootleg (Coin Music)", "Frogger (Coin Music, bootleg on Scramble hardware)", MACHINE_SUPPORTS_SAVE )
+GAME( 1981, froggervd, frogger, froggervd, frogger, galaxian_state, init_quaak, ROT90, "bootleg (Video Dens)", "Frogger (Video Dens, bootleg on Scramble hardware)", MACHINE_SUPPORTS_SAVE )
GAME( 1981, quaak, frogger, quaak, frogger, galaxian_state, init_quaak, ROT90, "bootleg", "Quaak (bootleg of Frogger)", MACHINE_SUPPORTS_SAVE ) // closest to Super Cobra hardware, presumably a bootleg from Germany (Quaak is the German frog sound)
GAME( 1981, froggeram, frogger, froggeram, froggeram, galaxian_state, init_quaak, ROT90, "bootleg", "Frogger (bootleg on Amigo? hardware)", MACHINE_SUPPORTS_SAVE ) // meant to be Amigo hardware, but maybe a different bootleg than the one we have?