diff options
Diffstat (limited to 'src/mame/audio/dsbz80.cpp')
-rw-r--r-- | src/mame/audio/dsbz80.cpp | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/mame/audio/dsbz80.cpp b/src/mame/audio/dsbz80.cpp index ea7a83ae824..c521ac825b6 100644 --- a/src/mame/audio/dsbz80.cpp +++ b/src/mame/audio/dsbz80.cpp @@ -45,19 +45,20 @@ DEFINE_DEVICE_TYPE(DSBZ80, dsbz80_device, "dsbz80_device", "Sega Z80-based Digit // device_add_mconfig - add device configuration //------------------------------------------------- -MACHINE_CONFIG_START(dsbz80_device::device_add_mconfig) - MCFG_DEVICE_ADD(Z80_TAG, Z80, 4000000) /* unknown clock, but probably pretty slow considering the z80 does like nothing */ - MCFG_DEVICE_PROGRAM_MAP(dsbz80_map) - MCFG_DEVICE_IO_MAP(dsbz80io_map) - - MCFG_DEVICE_ADD("uart", I8251, 4000000) - MCFG_I8251_RXRDY_HANDLER(INPUTLINE(Z80_TAG, INPUT_LINE_IRQ0)) - MCFG_I8251_TXD_HANDLER(WRITELINE(*this, dsbz80_device, output_txd)) - - MCFG_CLOCK_ADD("uart_clock", 500000) // 16 times 31.25MHz (standard Sega/MIDI sound data rate) - MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE("uart", i8251_device, write_rxc)) - MCFG_DEVCB_CHAIN_OUTPUT(WRITELINE("uart", i8251_device, write_txc)) -MACHINE_CONFIG_END +void dsbz80_device::device_add_mconfig(machine_config &config) +{ + Z80(config, m_ourcpu, 4000000); // unknown clock, but probably pretty slow considering the z80 does like nothing + m_ourcpu->set_addrmap(AS_PROGRAM, &dsbz80_device::dsbz80_map); + m_ourcpu->set_addrmap(AS_IO, &dsbz80_device::dsbz80io_map); + + I8251(config, m_uart, 4000000); + m_uart->rxrdy_handler().set_inputline(m_ourcpu, INPUT_LINE_IRQ0); + m_uart->txd_handler().set(FUNC(dsbz80_device::output_txd)); + + clock_device &uart_clock(CLOCK(config, "uart_clock", 500000)); // 16 times 31.25MHz (standard Sega/MIDI sound data rate) + uart_clock.signal_handler().set("uart", FUNC(i8251_device::write_rxc)); + uart_clock.signal_handler().append("uart", FUNC(i8251_device::write_txc)); +} //************************************************************************** // LIVE DEVICE |