summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/x68k/x68k_scsiext.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/x68k/x68k_scsiext.cpp')
-rw-r--r--src/devices/bus/x68k/x68k_scsiext.cpp17
1 files changed, 6 insertions, 11 deletions
diff --git a/src/devices/bus/x68k/x68k_scsiext.cpp b/src/devices/bus/x68k/x68k_scsiext.cpp
index dbf1e9a04cd..95ed9d0b6cb 100644
--- a/src/devices/bus/x68k/x68k_scsiext.cpp
+++ b/src/devices/bus/x68k/x68k_scsiext.cpp
@@ -43,7 +43,7 @@ static void scsi_devices(device_slot_interface &device)
// device machine config
void x68k_scsiext_device::device_add_mconfig(machine_config &config)
{
- NSCSI_BUS(config, "scsi");
+ auto &scsi(NSCSI_BUS(config, "scsi"));
NSCSI_CONNECTOR(config, "scsi:0", scsi_devices, "harddisk");
NSCSI_CONNECTOR(config, "scsi:1", scsi_devices, nullptr);
NSCSI_CONNECTOR(config, "scsi:2", scsi_devices, nullptr);
@@ -51,22 +51,17 @@ void x68k_scsiext_device::device_add_mconfig(machine_config &config)
NSCSI_CONNECTOR(config, "scsi:4", scsi_devices, nullptr);
NSCSI_CONNECTOR(config, "scsi:5", scsi_devices, nullptr);
NSCSI_CONNECTOR(config, "scsi:6", 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(10'000'000 / 2); // 10MHz clock from bus
- spc.out_irq_callback().set(*this, FUNC(x68k_scsiext_device::irq_w));
- spc.out_dreq_callback().set(*this, FUNC(x68k_scsiext_device::drq_w));
- });
+ MB89352(config, m_spc, 10'000'000 / 2); // 10MHz clock from bus
+ scsi.set_external_device(7, m_spc);
+ m_spc->out_irq_callback().set(DEVICE_SELF, FUNC(x68k_scsiext_device::irq_w));
+ m_spc->out_dreq_callback().set(DEVICE_SELF, FUNC(x68k_scsiext_device::drq_w));
}
x68k_scsiext_device::x68k_scsiext_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
: device_t(mconfig, X68K_SCSIEXT, tag, owner, clock)
, device_x68k_expansion_card_interface(mconfig, *this)
, m_slot(nullptr)
- , m_spc(*this, "scsi:7:spc")
+ , m_spc(*this, "spc")
, m_rom(*this, "scsiexrom")
, m_drq(false)
{