summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/mhavoc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/mhavoc.cpp')
-rw-r--r--src/mame/drivers/mhavoc.cpp90
1 files changed, 44 insertions, 46 deletions
diff --git a/src/mame/drivers/mhavoc.cpp b/src/mame/drivers/mhavoc.cpp
index 50d0017fbc9..6cacca4895f 100644
--- a/src/mame/drivers/mhavoc.cpp
+++ b/src/mame/drivers/mhavoc.cpp
@@ -516,28 +516,28 @@ INPUT_PORTS_END
*
*************************************/
-MACHINE_CONFIG_START(mhavoc_state::mhavoc)
-
+void mhavoc_state::mhavoc(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("alpha", M6502, MHAVOC_CLOCK_2_5M) /* 2.5 MHz */
- MCFG_DEVICE_PROGRAM_MAP(alpha_map)
+ M6502(config, m_alpha, MHAVOC_CLOCK_2_5M); /* 2.5 MHz */
+ m_alpha->set_addrmap(AS_PROGRAM, &mhavoc_state::alpha_map);
- MCFG_DEVICE_ADD("gamma", M6502, MHAVOC_CLOCK_1_25M) /* 1.25 MHz */
- MCFG_DEVICE_PROGRAM_MAP(gamma_map)
+ M6502(config, m_gamma, MHAVOC_CLOCK_1_25M); /* 1.25 MHz */
+ m_gamma->set_addrmap(AS_PROGRAM, &mhavoc_state::gamma_map);
EEPROM_2804(config, "eeprom");
- MCFG_TIMER_DRIVER_ADD_PERIODIC("5k_timer", mhavoc_state, mhavoc_cpu_irq_clock, attotime::from_hz(MHAVOC_CLOCK_5K))
+ TIMER(config, "5k_timer").configure_periodic(FUNC(mhavoc_state::mhavoc_cpu_irq_clock), attotime::from_hz(MHAVOC_CLOCK_5K));
WATCHDOG_TIMER(config, "watchdog");
/* video hardware */
- MCFG_VECTOR_ADD("vector")
- MCFG_SCREEN_ADD("screen", VECTOR)
- MCFG_SCREEN_REFRESH_RATE(50)
- MCFG_SCREEN_SIZE(400, 300)
- MCFG_SCREEN_VISIBLE_AREA(0, 300, 0, 260)
- MCFG_SCREEN_UPDATE_DEVICE("vector", vector_device, screen_update)
+ VECTOR(config, "vector");
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_VECTOR));
+ screen.set_refresh_hz(50);
+ screen.set_size(400, 300);
+ screen.set_visarea(0, 300, 0, 260);
+ screen.set_screen_update("vector", FUNC(vector_device::screen_update));
avg_device &avg(AVG_MHAVOC(config, "avg", 0));
avg.set_vector_tag("vector");
@@ -551,54 +551,52 @@ MACHINE_CONFIG_START(mhavoc_state::mhavoc)
* ==> DISCRETE emulation, below is just an approximation.
*/
- MCFG_DEVICE_ADD("pokey1", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_POKEY_ALLPOT_R_CB(IOPORT("DSW1"))
- MCFG_POKEY_OUTPUT_OPAMP(RES_K(1), CAP_U(0.001), 5.0)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-
- MCFG_DEVICE_ADD("pokey2", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_POKEY_OUTPUT_OPAMP(RES_K(1), CAP_U(0.001), 5.0)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
+ POKEY(config, m_pokey[0], MHAVOC_CLOCK_1_25M);
+ m_pokey[0]->allpot_r().set_ioport("DSW1");
+ m_pokey[0]->set_output_opamp(RES_K(1), CAP_U(0.001), 5.0);
+ m_pokey[0]->add_route(ALL_OUTPUTS, "mono", 0.25);
- MCFG_DEVICE_ADD("pokey3", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_POKEY_OUTPUT_OPAMP(RES_K(1), CAP_U(0.001), 5.0)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
+ POKEY(config, m_pokey[1], MHAVOC_CLOCK_1_25M);
+ m_pokey[1]->set_output_opamp(RES_K(1), CAP_U(0.001), 5.0);
+ m_pokey[1]->add_route(ALL_OUTPUTS, "mono", 0.25);
- MCFG_DEVICE_ADD("pokey4", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_POKEY_OUTPUT_OPAMP(RES_K(1), CAP_U(0.001), 5.0)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.25)
-MACHINE_CONFIG_END
+ POKEY(config, m_pokey[2], MHAVOC_CLOCK_1_25M);
+ m_pokey[2]->set_output_opamp(RES_K(1), CAP_U(0.001), 5.0);
+ m_pokey[2]->add_route(ALL_OUTPUTS, "mono", 0.25);
+ POKEY(config, m_pokey[3], MHAVOC_CLOCK_1_25M);
+ m_pokey[3]->set_output_opamp(RES_K(1), CAP_U(0.001), 5.0);
+ m_pokey[3]->add_route(ALL_OUTPUTS, "mono", 0.25);
+}
-MACHINE_CONFIG_START(mhavoc_state::mhavocrv)
+void mhavoc_state::mhavocrv(machine_config &config)
+{
mhavoc(config);
- MCFG_DEVICE_ADD("tms", TMS5220, MHAVOC_CLOCK/2/9)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.0)
-MACHINE_CONFIG_END
-
+ TMS5220(config, m_tms, MHAVOC_CLOCK/2/9);
+ m_tms->add_route(ALL_OUTPUTS, "mono", 1.0);
+}
-MACHINE_CONFIG_START(mhavoc_state::alphaone)
+void mhavoc_state::alphaone(machine_config &config)
+{
mhavoc(config);
/* basic machine hardware */
- MCFG_DEVICE_MODIFY("alpha")
- MCFG_DEVICE_PROGRAM_MAP(alphaone_map)
- MCFG_DEVICE_REMOVE("gamma")
+ m_alpha->set_addrmap(AS_PROGRAM, &mhavoc_state::alphaone_map);
+ config.device_remove("gamma");
- MCFG_SCREEN_MODIFY("screen")
- MCFG_SCREEN_VISIBLE_AREA(0, 580, 0, 500)
+ subdevice<screen_device>("screen")->set_visarea(0, 580, 0, 500);
/* sound hardware */
- MCFG_DEVICE_REPLACE("pokey1", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
+ POKEY(config.replace(), m_pokey[0], MHAVOC_CLOCK_1_25M);
+ m_pokey[0]->add_route(ALL_OUTPUTS, "mono", 0.50);
- MCFG_DEVICE_REPLACE("pokey2", POKEY, MHAVOC_CLOCK_1_25M)
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 0.50)
+ POKEY(config.replace(), m_pokey[1], MHAVOC_CLOCK_1_25M);
+ m_pokey[1]->add_route(ALL_OUTPUTS, "mono", 0.50);
- MCFG_DEVICE_REMOVE("pokey3")
- MCFG_DEVICE_REMOVE("pokey4")
-MACHINE_CONFIG_END
+ config.device_remove("pokey3");
+ config.device_remove("pokey4");
+}