diff options
Diffstat (limited to 'src/mame/drivers/ts802.cpp')
-rw-r--r-- | src/mame/drivers/ts802.cpp | 33 |
1 files changed, 17 insertions, 16 deletions
diff --git a/src/mame/drivers/ts802.cpp b/src/mame/drivers/ts802.cpp index 8eca9a44c79..459c2e06aad 100644 --- a/src/mame/drivers/ts802.cpp +++ b/src/mame/drivers/ts802.cpp @@ -64,7 +64,7 @@ private: uint8_t m_term_data; address_space *m_mem; address_space *m_io; - required_device<cpu_device> m_maincpu; + required_device<z80_device> m_maincpu; required_device<generic_terminal_device> m_terminal; }; @@ -190,29 +190,30 @@ void ts802_state::init_ts802() MACHINE_CONFIG_START(ts802_state::ts802) /* basic machine hardware */ - MCFG_DEVICE_ADD("maincpu", Z80, 16_MHz_XTAL / 4) - MCFG_DEVICE_PROGRAM_MAP(ts802_mem) - MCFG_DEVICE_IO_MAP(ts802_io) - //MCFG_Z80_DAISY_CHAIN(daisy_chain_intf) // causes problems + Z80(config, m_maincpu, 16_MHz_XTAL / 4); + m_maincpu->set_addrmap(AS_PROGRAM, &ts802_state::ts802_mem); + m_maincpu->set_addrmap(AS_IO, &ts802_state::ts802_io); + //m_maincpu->set_daisy_config(daisy_chain_intf); // causes problems + MCFG_MACHINE_RESET_OVERRIDE(ts802_state, ts802) /* Devices */ MCFG_DEVICE_ADD(m_terminal, GENERIC_TERMINAL, 0) MCFG_GENERIC_TERMINAL_KEYBOARD_CB(PUT(ts802_state, kbd_put)) - MCFG_DEVICE_ADD("dma", Z80DMA, 16_MHz_XTAL / 4) - MCFG_Z80DMA_OUT_BUSREQ_CB(INPUTLINE("maincpu", INPUT_LINE_HALT)) - MCFG_Z80DMA_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) - MCFG_Z80DMA_IN_MREQ_CB(READ8(*this, ts802_state, memory_read_byte)) - MCFG_Z80DMA_OUT_MREQ_CB(WRITE8(*this, ts802_state, memory_write_byte)) - MCFG_Z80DMA_IN_IORQ_CB(READ8(*this, ts802_state, io_read_byte)) - MCFG_Z80DMA_OUT_IORQ_CB(WRITE8(*this, ts802_state, io_write_byte)) + z80dma_device& dma(Z80DMA(config, "dma", 16_MHz_XTAL / 4)); + dma.out_busreq_callback().set_inputline(m_maincpu, INPUT_LINE_HALT); + dma.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); + dma.in_mreq_callback().set(FUNC(ts802_state::memory_read_byte)); + dma.out_mreq_callback().set(FUNC(ts802_state::memory_write_byte)); + dma.in_iorq_callback().set(FUNC(ts802_state::io_read_byte)); + dma.out_iorq_callback().set(FUNC(ts802_state::io_write_byte)); - MCFG_DEVICE_ADD("dart1", Z80DART, 16_MHz_XTAL / 4) - MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) + z80dart_device& dart1(Z80DART(config, "dart1", 16_MHz_XTAL / 4)); + dart1.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); - MCFG_DEVICE_ADD("dart2", Z80DART, 16_MHz_XTAL / 4) - MCFG_Z80DART_OUT_INT_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) + z80dart_device& dart2(Z80DART(config, "dart2", 16_MHz_XTAL / 4)); + dart2.out_int_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0); MCFG_DEVICE_ADD("ctc", Z80CTC, 16_MHz_XTAL / 4) MCFG_Z80CTC_INTR_CB(INPUTLINE("maincpu", INPUT_LINE_IRQ0)) |