diff options
Diffstat (limited to 'src/mame/akai/mpc2000.cpp')
| -rw-r--r-- | src/mame/akai/mpc2000.cpp | 22 |
1 files changed, 9 insertions, 13 deletions
diff --git a/src/mame/akai/mpc2000.cpp b/src/mame/akai/mpc2000.cpp index 89da6b203a8..af7619e30b4 100644 --- a/src/mame/akai/mpc2000.cpp +++ b/src/mame/akai/mpc2000.cpp @@ -229,7 +229,7 @@ E0 = IDECS1N */ void mpc2000_state::mpc2000_io_map(address_map &map) { - map(0x0000, 0x001f).m("scsi:7:spc", FUNC(mb89352_device::map)).umask16(0x00ff); + map(0x0000, 0x001f).m("spc", FUNC(mb89352_device::map)).umask16(0x00ff); map(0x0020, 0x0023).m(m_fdc, FUNC(upd72069_device::map)).umask16(0x00ff); map(0x0060, 0x0063).rw(FUNC(mpc2000_state::lcd_csr), FUNC(mpc2000_state::lcd_csw<0>)).umask16(0x00ff); map(0x0080, 0x008f).m(m_dsp, FUNC(l7a1045_sound_device::map)); @@ -592,8 +592,8 @@ void mpc2000_state::mpc2000(machine_config &config) m_maincpu->in_mem16r_cb().set(FUNC(mpc2000_state::dma_mem16r_cb)); m_maincpu->out_mem16w_cb().set(FUNC(mpc2000_state::dma_mem16w_cb)); m_maincpu->out_eop_cb().set("tc", FUNC(input_merger_device::in_w<0>)).invert(); - m_maincpu->in_ior_cb<0>().set("scsi:7:spc", FUNC(mb89352_device::dma_r)); - m_maincpu->out_iow_cb<0>().set("scsi:7:spc", FUNC(mb89352_device::dma_w)); + m_maincpu->in_ior_cb<0>().set("spc", FUNC(mb89352_device::dma_r)); + m_maincpu->out_iow_cb<0>().set("spc", FUNC(mb89352_device::dma_w)); m_maincpu->in_ior_cb<1>().set(m_fdc, FUNC(upd72069_device::dma_r)); m_maincpu->out_iow_cb<1>().set(m_fdc, FUNC(upd72069_device::dma_w)); m_maincpu->in_io16r_cb<1>().set(m_ata, FUNC(ata_interface_device::read_dma)); @@ -684,7 +684,7 @@ void mpc2000_state::mpc2000(machine_config &config) MIDI_PORT(config, "mdout1", midiout_slot, "midiout"); MIDI_PORT(config, "mdout2", midiout_slot, "midiout"); - NSCSI_BUS(config, "scsi"); + auto &scsi(NSCSI_BUS(config, "scsi")); NSCSI_CONNECTOR(config, "scsi:0", default_scsi_devices, nullptr); NSCSI_CONNECTOR(config, "scsi:1", default_scsi_devices, nullptr); NSCSI_CONNECTOR(config, "scsi:2", default_scsi_devices, nullptr); @@ -692,16 +692,12 @@ void mpc2000_state::mpc2000(machine_config &config) NSCSI_CONNECTOR(config, "scsi:4", default_scsi_devices, nullptr); NSCSI_CONNECTOR(config, "scsi:5", default_scsi_devices, nullptr); NSCSI_CONNECTOR(config, "scsi:6", default_scsi_devices, nullptr); - NSCSI_CONNECTOR(config, "scsi:7").option_set("spc", MB89352).machine_config( - [this](device_t *device) - { - mb89352_device &spc = downcast<mb89352_device &>(*device); - - spc.set_clock(32_MHz_XTAL / 4); // PCLKOUT - spc.out_irq_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ2); - spc.out_dreq_callback().set(m_maincpu, FUNC(v53a_device::dreq_w<0>)); - }); + auto &spc(MB89352(config, "spc", 32_MHz_XTAL / 4)); + scsi.set_external_device(7, spc); + spc.out_irq_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ2); + spc.out_dreq_callback().set(m_maincpu, FUNC(v53a_device::dreq_w<0>)); + TIMER(config, "dialtimer").configure_periodic(FUNC(mpc2000_state::dial_timer_tick), attotime::from_hz(60.0)); SPEAKER(config, "speaker", 2).front(); |
