summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/coleco.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/coleco.cpp')
-rw-r--r--src/mame/drivers/coleco.cpp32
1 files changed, 16 insertions, 16 deletions
diff --git a/src/mame/drivers/coleco.cpp b/src/mame/drivers/coleco.cpp
index d4ac205ec16..c554f43ea91 100644
--- a/src/mame/drivers/coleco.cpp
+++ b/src/mame/drivers/coleco.cpp
@@ -374,12 +374,12 @@ void coleco_state::machine_reset()
/* Machine Drivers */
-MACHINE_CONFIG_START(coleco_state::coleco)
-
+void coleco_state::coleco(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", Z80, XTAL(7'159'090)/2) // 3.579545 MHz
- MCFG_DEVICE_PROGRAM_MAP(coleco_map)
- MCFG_DEVICE_IO_MAP(coleco_io_map)
+ Z80(config, m_maincpu, XTAL(7'159'090)/2); // 3.579545 MHz
+ m_maincpu->set_addrmap(AS_PROGRAM, &coleco_state::coleco_map);
+ m_maincpu->set_addrmap(AS_IO, &coleco_state::coleco_io_map);
/* video hardware */
tms9928a_device &vdp(TMS9928A(config, "tms9928a", XTAL(10'738'635)));
@@ -390,19 +390,19 @@ MACHINE_CONFIG_START(coleco_state::coleco)
/* sound hardware */
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("sn76489a", SN76489A, XTAL(7'159'090)/2) // 3.579545 MHz
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
+ sn76489a_device &psg(SN76489A(config, "sn76489a", XTAL(7'159'090)/2)); // 3.579545 MHz
+ psg.add_route(ALL_OUTPUTS, "mono", 1.00);
// TODO: enable when Z80 has better WAIT pin emulation, this currently breaks pitfall2 for example
- //MCFG_SN76496_READY_HANDLER(INPUTLINE("maincpu", Z80_INPUT_LINE_WAIT)) MCFG_DEVCB_INVERT
+ //psg.ready_cb().set_inputline("maincpu", Z80_INPUT_LINE_WAIT).invert();
/* cartridge */
- MCFG_COLECOVISION_CARTRIDGE_SLOT_ADD(COLECOVISION_CARTRIDGE_SLOT_TAG, colecovision_cartridges, nullptr)
+ COLECOVISION_CARTRIDGE_SLOT(config, m_cart, colecovision_cartridges, nullptr);
/* software lists */
- MCFG_SOFTWARE_LIST_ADD("cart_list","coleco")
+ SOFTWARE_LIST(config, "cart_list").set_original("coleco");
- MCFG_TIMER_DRIVER_ADD_PERIODIC("paddle_timer", coleco_state, paddle_update_callback, attotime::from_msec(20))
-MACHINE_CONFIG_END
+ TIMER(config, "paddle_timer").configure_periodic(FUNC(coleco_state::paddle_update_callback), attotime::from_msec(20));
+}
void coleco_state::colecop(machine_config &config)
{
@@ -415,13 +415,13 @@ void coleco_state::colecop(machine_config &config)
vdp.int_callback().set(FUNC(coleco_state::coleco_vdp_interrupt));
}
-MACHINE_CONFIG_START(coleco_state::czz50)
+void coleco_state::czz50(machine_config &config)
+{
coleco(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("maincpu") // note: cpu speed unverified, assume it's the same as ColecoVision
- MCFG_DEVICE_PROGRAM_MAP(czz50_map)
-MACHINE_CONFIG_END
+ m_maincpu->set_addrmap(AS_PROGRAM, &coleco_state::czz50_map); // note: cpu speed unverified, assume it's the same as ColecoVision
+}
void coleco_state::dina(machine_config &config)
{