summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/votrtnt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/votrtnt.cpp')
-rw-r--r--src/mame/drivers/votrtnt.cpp34
1 files changed, 16 insertions, 18 deletions
diff --git a/src/mame/drivers/votrtnt.cpp b/src/mame/drivers/votrtnt.cpp
index 2c3c0e9c7f7..6653e3af148 100644
--- a/src/mame/drivers/votrtnt.cpp
+++ b/src/mame/drivers/votrtnt.cpp
@@ -26,7 +26,6 @@
* ToDo:
* - Votrax device needs considerable improvement in sound quality.
*
-*
******************************************************************************/
/* Core includes */
@@ -54,7 +53,7 @@ public:
void votrtnt(machine_config &config);
private:
- DECLARE_MACHINE_RESET(votrtnt);
+ virtual void machine_reset() override;
void _6802_mem(address_map &map);
@@ -114,7 +113,7 @@ static INPUT_PORTS_START(votrtnt)
PORT_DIPSETTING( 0x80, "9600" )
INPUT_PORTS_END
-MACHINE_RESET_MEMBER( votrtnt_state, votrtnt )
+void votrtnt_state::machine_reset()
{
// Read the dips, whichever one is found to be on first is accepted
u8 dips = ioport("DSW1")->read();
@@ -137,24 +136,23 @@ MACHINE_RESET_MEMBER( votrtnt_state, votrtnt )
Machine Drivers
******************************************************************************/
-MACHINE_CONFIG_START(votrtnt_state::votrtnt)
+void votrtnt_state::votrtnt(machine_config &config)
+{
/* basic machine hardware */
- MCFG_DEVICE_ADD("maincpu", M6802, XTAL(2'457'600)) /* 2.4576MHz XTAL, verified; divided by 4 inside the m6802*/
- MCFG_DEVICE_PROGRAM_MAP(_6802_mem)
-
- MCFG_MACHINE_RESET_OVERRIDE(votrtnt_state, votrtnt)
+ M6802(config, m_maincpu, 2.4576_MHz_XTAL); // 2.4576MHz XTAL, verified; divided by 4 inside the MC6802
+ m_maincpu->set_addrmap(AS_PROGRAM, &votrtnt_state::_6802_mem);
/* video hardware */
//MCFG_DEFAULT_LAYOUT(layout_votrtnt)
/* serial hardware */
- MCFG_DEVICE_ADD("acia", ACIA6850, 0)
- MCFG_ACIA6850_TXD_HANDLER(WRITELINE("rs232", rs232_port_device, write_txd))
- MCFG_ACIA6850_RTS_HANDLER(WRITELINE("rs232", rs232_port_device, write_rts))
+ acia6850_device &acia(ACIA6850(config, "acia"));
+ acia.txd_handler().set("rs232", FUNC(rs232_port_device::write_txd));
+ acia.rts_handler().set("rs232", FUNC(rs232_port_device::write_rts));
- MCFG_DEVICE_ADD("rs232", RS232_PORT, default_rs232_devices, "terminal")
- MCFG_RS232_RXD_HANDLER(WRITELINE("acia", acia6850_device, write_rxd))
- MCFG_RS232_CTS_HANDLER(WRITELINE("acia", acia6850_device, write_cts))
+ rs232_port_device &rs232(RS232_PORT(config, "rs232", default_rs232_devices, "terminal"));
+ rs232.rxd_handler().set("acia", FUNC(acia6850_device::write_rxd));
+ rs232.cts_handler().set("acia", FUNC(acia6850_device::write_cts));
CLOCK(config, m_clock, 153600);
m_clock->signal_handler().set("acia", FUNC(acia6850_device::write_txc));
@@ -162,10 +160,10 @@ MACHINE_CONFIG_START(votrtnt_state::votrtnt)
/* sound hardware */
SPEAKER(config, "mono").front_center();
- MCFG_DEVICE_ADD("votrax", VOTRAX_SC01, 720000) /* 720kHz? needs verify */
- MCFG_VOTRAX_SC01_REQUEST_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0))
- MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
-MACHINE_CONFIG_END
+ VOTRAX_SC01(config, m_votrax, 720000); // 720kHz? needs verify
+ m_votrax->ar_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
+ m_votrax->add_route(ALL_OUTPUTS, "mono", 1.00);
+}