summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/klax.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/klax.cpp')
-rw-r--r--src/mame/drivers/klax.cpp55
1 files changed, 27 insertions, 28 deletions
diff --git a/src/mame/drivers/klax.cpp b/src/mame/drivers/klax.cpp
index fe67297a324..bec9aec2143 100644
--- a/src/mame/drivers/klax.cpp
+++ b/src/mame/drivers/klax.cpp
@@ -194,67 +194,66 @@ GFXDECODE_END
*
*************************************/
-MACHINE_CONFIG_START(klax_state::klax)
-
+void klax_state::klax(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", M68000, ATARI_CLOCK_14MHz/2)
- MCFG_DEVICE_PROGRAM_MAP(klax_map)
+ M68000(config, m_maincpu, ATARI_CLOCK_14MHz/2);
+ m_maincpu->set_addrmap(AS_PROGRAM, &klax_state::klax_map);
EEPROM_2816(config, "eeprom").lock_after_write(true);
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
- MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_klax)
+ GFXDECODE(config, m_gfxdecode, "palette", gfx_klax);
PALETTE(config, "palette").set_format(palette_device::IRGB_1555, 512).set_membits(8);
- MCFG_TILEMAP_ADD_STANDARD("playfield", "gfxdecode", 2, klax_state, get_playfield_tile_info, 8,8, SCAN_COLS, 64,32)
+ TILEMAP(config, m_playfield_tilemap, m_gfxdecode, 2, 8, 8, TILEMAP_SCAN_COLS, 64, 32);
+ m_playfield_tilemap->set_info_callback(FUNC(klax_state::get_playfield_tile_info));
ATARI_MOTION_OBJECTS(config, m_mob, 0, m_screen, klax_state::s_mob_config);
m_mob->set_gfxdecode(m_gfxdecode);
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)
+ SCREEN(config, m_screen, SCREEN_TYPE_RASTER);
+ m_screen->set_video_attributes(VIDEO_UPDATE_BEFORE_VBLANK);
/* note: these parameters are from published specs, not derived */
/* the board uses an SOS-2 chip to generate video signals */
- MCFG_SCREEN_RAW_PARAMS(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240)
- MCFG_SCREEN_UPDATE_DRIVER(klax_state, screen_update_klax)
- MCFG_SCREEN_PALETTE("palette")
- MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(*this, klax_state, video_int_write_line))
+ m_screen->set_raw(ATARI_CLOCK_14MHz/2, 456, 0, 336, 262, 0, 240);
+ m_screen->set_screen_update(FUNC(klax_state::screen_update_klax));
+ m_screen->set_palette("palette");
+ m_screen->screen_vblank().set(FUNC(klax_state::video_int_write_line));
/* sound hardware */
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("oki", OKIM6295, ATARI_CLOCK_14MHz/4/4, okim6295_device::PIN7_HIGH)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_CONFIG_END
+ OKIM6295(config, "oki", ATARI_CLOCK_14MHz/4/4, okim6295_device::PIN7_HIGH).add_route(ALL_OUTPUTS, "mono", 1.0);
+}
void klax_state::bootleg_sound_map(address_map &map)
{
map(0x0000, 0x7fff).rom();
}
-MACHINE_CONFIG_START(klax_state::klax2bl)
+void klax_state::klax2bl(machine_config &config)
+{
klax(config);
- MCFG_DEVICE_MODIFY("maincpu")
- MCFG_DEVICE_PROGRAM_MAP(klax2bl_map)
+ m_maincpu->set_addrmap(AS_PROGRAM, &klax_state::klax2bl_map);
- MCFG_DEVICE_REMOVE("oki") // no 6295 here
+ config.device_remove("oki"); // no 6295 here
- MCFG_DEVICE_ADD("audiocpu", Z80, 6000000) /* ? */
- MCFG_DEVICE_PROGRAM_MAP(bootleg_sound_map)
+ z80_device &audiocpu(Z80(config, "audiocpu", 6000000)); /* ? */
+ audiocpu.set_addrmap(AS_PROGRAM, &klax_state::bootleg_sound_map);
- MCFG_GFXDECODE_MODIFY("gfxdecode", gfx_klax2bl)
+ m_gfxdecode->set_info(gfx_klax2bl);
// guess, probably something like this
// 2 x msm at least on bootleg set 2 (ic18 and ic19)
- MCFG_DEVICE_ADD("msm", MSM5205, 375000) /* ? */
-// MCFG_MSM5205_VCLK_CB(WRITELINE(*this, klax_state, m5205_int1)) /* interrupt function */
-// MCFG_MSM5205_PRESCALER_SELECTOR(MSM5205_S96_4B) /* 4KHz 4-bit */
-// MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-
-MACHINE_CONFIG_END
+ MSM5205(config, "msm", 375000); /* ? */
+// msm.vck_legacy_callback().set(FUNC(klax_state::m5205_int1)); /* interrupt function */
+// msm.set_prescaler_selector(msm5205_device::MSM5205_S96_4B); /* 4KHz 4-bit */
+// msm.add_route(ALL_OUTPUTS, "mono", 0.25);
+}
/*************************************
*