summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Ivan Vangelista <mesgnet@yahoo.it>2019-02-11 18:57:36 +0100
committer Ivan Vangelista <mesgnet@yahoo.it>2019-02-11 18:57:36 +0100
commit5247983c43946c83229468c7c1b1ef81668b6f2d (patch)
treef909227ace36af56fc46a12a5170c4d383ffd33f
parent26c85d7e25fc451d05ff7ed0cc572f89b6c1e99c (diff)
new not working clone
------------------------------------- Boggy '84 (bootleg, set 2) [f205v]
-rw-r--r--src/mame/drivers/fastfred.cpp72
-rw-r--r--src/mame/mame.lst1
2 files changed, 49 insertions, 24 deletions
diff --git a/src/mame/drivers/fastfred.cpp b/src/mame/drivers/fastfred.cpp
index 3cd6921cf56..c68294e5164 100644
--- a/src/mame/drivers/fastfred.cpp
+++ b/src/mame/drivers/fastfred.cpp
@@ -632,15 +632,15 @@ INTERRUPT_GEN_MEMBER(fastfred_state::sound_timer_irq)
device.execute().pulse_input_line(INPUT_LINE_NMI, attotime::zero);
}
-MACHINE_CONFIG_START(fastfred_state::fastfred)
-
+void fastfred_state::fastfred(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", Z80, XTAL(12'432'000)/4) /* 3.108 MHz; xtal from pcb pics, divider not verified */
- MCFG_DEVICE_PROGRAM_MAP(fastfred_map)
+ Z80(config, m_maincpu, XTAL(12'432'000)/4); /* 3.108 MHz; xtal from pcb pics, divider not verified */
+ m_maincpu->set_addrmap(AS_PROGRAM, &fastfred_state::fastfred_map);
- MCFG_DEVICE_ADD("audiocpu", Z80, XTAL(12'432'000)/8) /* 1.554 MHz; xtal from pcb pics, divider not verified */
- MCFG_DEVICE_PROGRAM_MAP(sound_map)
- MCFG_DEVICE_PERIODIC_INT_DRIVER(fastfred_state, sound_timer_irq, 4*60)
+ Z80(config, m_audiocpu, XTAL(12'432'000)/8); /* 1.554 MHz; xtal from pcb pics, divider not verified */
+ m_audiocpu->set_addrmap(AS_PROGRAM, &fastfred_state::sound_map);
+ m_audiocpu->set_periodic_int(FUNC(fastfred_state::sound_timer_irq), attotime::from_hz(4*60));
LS259(config, m_outlatch); // "Control Signal Latch" at D10
m_outlatch->q_out_cb<1>().set(FUNC(fastfred_state::nmi_mask_w));
@@ -654,14 +654,14 @@ MACHINE_CONFIG_START(fastfred_state::fastfred)
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0)) //CLOCK/16/60
- MCFG_SCREEN_SIZE(32*8, 32*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1)
- MCFG_SCREEN_UPDATE_DRIVER(fastfred_state, screen_update_fastfred)
- MCFG_SCREEN_PALETTE(m_palette)
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, fastfred_state, vblank_irq))
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_refresh_hz(60);
+ m_screen->set_vblank_time(ATTOSECONDS_IN_USEC(0)); //CLOCK/16/60
+ m_screen->set_size(32*8, 32*8);
+ m_screen->set_visarea(0*8, 32*8-1, 2*8, 30*8-1);
+ m_screen->set_screen_update(FUNC(fastfred_state::screen_update_fastfred));
+ m_screen->set_palette(m_palette);
+ m_screen->screen_vblank().set(FUNC(fastfred_state::vblank_irq));
GFXDECODE(config, "gfxdecode", m_palette, gfx_fastfred);
@@ -678,12 +678,12 @@ MACHINE_CONFIG_START(fastfred_state::fastfred)
AY8910(config, "ay8910.2", XTAL(12'432'000)/8).add_route(ALL_OUTPUTS, "mono", 0.25); /* 1.554 MHz; xtal from pcb pics, divider not verified */
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(fastfred_state::jumpcoas)
+void fastfred_state::jumpcoas(machine_config &config)
+{
fastfred(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(jumpcoas_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &fastfred_state::jumpcoas_map);
config.device_remove("audiocpu");
@@ -693,14 +693,14 @@ MACHINE_CONFIG_START(fastfred_state::jumpcoas)
/* sound hardware */
config.device_remove("soundlatch");
config.device_remove("ay8910.2");
-MACHINE_CONFIG_END
+}
-MACHINE_CONFIG_START(fastfred_state::imago)
+void fastfred_state::imago(machine_config &config)
+{
fastfred(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(imago_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &fastfred_state::imago_map);
m_outlatch->q_out_cb<0>().set_nop(); // writes 1 when level starts, 0 when game over
m_outlatch->q_out_cb<4>().set(FUNC(fastfred_state::imago_dma_irq_w));
@@ -714,7 +714,7 @@ MACHINE_CONFIG_START(fastfred_state::imago)
MCFG_VIDEO_START_OVERRIDE(fastfred_state,imago)
subdevice<screen_device>("screen")->set_screen_update(FUNC(fastfred_state::screen_update_imago));
-MACHINE_CONFIG_END
+}
#undef CLOCK
@@ -916,6 +916,29 @@ ROM_START( boggy84b )
ROM_LOAD( "b12e", 0x0200, 0x0100, CRC(52b7f445) SHA1(6395ac705a35e602a355cbf700025ff917e89b37) )
ROM_END
+// main PCB is marked: "MC9003" and "MADE IN ITALY" on component side
+// main PCB is marked: "MADE IN ITALY" on solder side
+// ROMs PCB is marked: "MG25157" on component side
+ROM_START( boggy84b2 )
+ ROM_REGION( 0x10000, "maincpu", 0 )
+ ROM_LOAD( "boggy84-1.bin", 0x0000, 0x1000, CRC(97235e3a) SHA1(f493efd03331416a392cab7d73e39029d7e8098c) )
+ ROM_LOAD( "boggy84-2.bin", 0x1000, 0x1000, CRC(282f8830) SHA1(10c2c3d3b14fbe44ef4ad81607c61361fa2f25ae) )
+ ROM_LOAD( "boggy84-3.bin", 0x2000, 0x1000, CRC(b49c835a) SHA1(c6782643ff44e6cf972f0d2fc47ecc0a220c0e26) )
+ ROM_LOAD( "boggy84-4.bin", 0x3000, 0x1000, CRC(1f98ce07) SHA1(4145785ea55db3940ff4d3834ab736825e5c8712) )
+ ROM_LOAD( "boggy84-5.bin", 0x4000, 0x1000, CRC(7b3fd5fb) SHA1(630e7553fc76e59448cedca5dcb34dae3b08d9ba) )
+ ROM_LOAD( "boggy84-6.bin", 0x5000, 0x1000, CRC(a4083cc2) SHA1(a266ff0935288678d6e0286ac67ea17b9b42371a) )
+ ROM_LOAD( "boggy84-7.bin", 0x6000, 0x1000, CRC(9da29eb9) SHA1(d8802b9b67f9993aa26b8fe7941fc662a6719172) )
+ ROM_LOAD( "boggy84-8.bin", 0x7000, 0x1000, NO_DUMP ) // broken, unreadable
+
+ ROM_REGION( 0x3000, "gfx1", 0 )
+ ROM_LOAD( "boggy84-11.7a", 0x0000, 0x1000, CRC(f4238c68) SHA1(a14cedb126e49e40bab6f46870af64c04ccb01f4) )
+ ROM_LOAD( "boggy84-10.9a", 0x1000, 0x1000, CRC(1979d9a6) SHA1(9da387179e6f09ba113219689d3aa039e87bd5e1) )
+ ROM_LOAD( "boggy84-9.bin", 0x2000, 0x0800, CRC(de3d8f06) SHA1(0ccc261fe15f63d5bd000b3a7008e294b78837a2) )
+
+ ROM_REGION( 0x20, "proms", 0 )
+ ROM_LOAD( "6331.10f", 0x00, 0x20, CRC(24652bc4) SHA1(d89575f3749c75dc963317fe451ffeffd9856e4d) )
+ROM_END
+
ROM_START( redrobin )
ROM_REGION( 0x10000, "maincpu", 0 )
ROM_LOAD( "redro01f.16d", 0x0000, 0x1000, CRC(0788ce10) SHA1(32084714fe005d0489ab1a7e6684a49bd103ce5e) )
@@ -1078,7 +1101,8 @@ GAME( 1983, jumpcoas, 0, jumpcoas, jumpcoas, fastfred_state, init_jumpco
GAME( 1983, jumpcoasa, jumpcoas, jumpcoas, jumpcoas, fastfred_state, init_jumpcoas, ROT90, "Kaneko", "Jump Coaster", MACHINE_SUPPORTS_SAVE )
GAME( 1983, jumpcoast, jumpcoas, jumpcoas, jumpcoas, fastfred_state, init_jumpcoas, ROT90, "Kaneko (Taito license)", "Jump Coaster (Taito)", MACHINE_SUPPORTS_SAVE )
GAME( 1983, boggy84, 0, jumpcoas, boggy84, fastfred_state, init_boggy84, ROT90, "Kaneko", "Boggy '84", MACHINE_SUPPORTS_SAVE )
-GAME( 1983, boggy84b, boggy84, jumpcoas, boggy84, fastfred_state, init_boggy84b, ROT90, "bootleg (Eddie's Games)", "Boggy '84 (bootleg)", MACHINE_SUPPORTS_SAVE )
+GAME( 1983, boggy84b, boggy84, jumpcoas, boggy84, fastfred_state, init_boggy84b, ROT90, "bootleg (Eddie's Games)", "Boggy '84 (bootleg, set 1)", MACHINE_SUPPORTS_SAVE )
+GAME( 1983, boggy84b2, boggy84, jumpcoas, boggy84, fastfred_state, init_boggy84, ROT90, "bootleg", "Boggy '84 (bootleg, set 2)", MACHINE_NOT_WORKING | MACHINE_SUPPORTS_SAVE ) // one program ROM isn't dumped
GAME( 1986, redrobin, 0, fastfred, redrobin, fastfred_state, init_flyboyb, ROT90, "Elettronolo", "Red Robin", MACHINE_SUPPORTS_SAVE )
GAME( 1984, imago, 0, imago, imago, fastfred_state, init_imago, ROT90, "Acom", "Imago (cocktail set)", 0 )
GAME( 1983, imagoa, imago, imago, imagoa, fastfred_state, init_imago, ROT90, "Acom", "Imago (no cocktail set)", 0 )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index 7a959e6d5e2..fae708e3ae9 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -12764,6 +12764,7 @@ fanucspgm // 1983
@source:fastfred.cpp
boggy84 // (c) 1984 Kaneko
boggy84b // bootleg
+boggy84b2 // bootleg
fastfred // 136009 (c) 1982 Atari
flyboy // (c) 1982 Kaneko
flyboyb // bootleg