summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/r9751.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/r9751.cpp')
-rw-r--r--src/mame/drivers/r9751.cpp51
1 files changed, 12 insertions, 39 deletions
diff --git a/src/mame/drivers/r9751.cpp b/src/mame/drivers/r9751.cpp
index 72b20893e84..6ad473ad72d 100644
--- a/src/mame/drivers/r9751.cpp
+++ b/src/mame/drivers/r9751.cpp
@@ -52,11 +52,8 @@
#include "cpu/m68000/m68000.h"
#include "machine/terminal.h"
-#include "machine/nscsi_bus.h"
-#include "machine/nscsi_cd.h"
-#include "machine/nscsi_hd.h"
-
-#include "machine/wd33c9x.h"
+#include "bus/scsi/scsi.h"
+#include "machine/wd33c93.h"
#include "machine/pdc.h"
#include "machine/smioc.h"
@@ -88,7 +85,7 @@ public:
m_maincpu(*this, "maincpu"),
m_pdc(*this, "pdc"),
m_smioc(*this, "smioc"),
- m_wd33c93(*this, "scsi:7:wd33c93"),
+ m_wd33c93(*this, "wd33c93"),
m_main_ram(*this, "main_ram")
{
device_trace_init();
@@ -169,9 +166,6 @@ private:
void device_trace_disable(int device);
void* system_trace_context;
-
- static void scsi_devices(device_slot_interface &device);
- void wd33c93(device_t *device);
};
#if ENABLE_TRACE_ALL_DEVICES
@@ -963,25 +957,11 @@ INPUT_PORTS_END
Machine Drivers
******************************************************************************/
-void r9751_state::scsi_devices(device_slot_interface &device)
-{
- device.option_add("cdrom", NSCSI_CDROM);
- device.option_add("harddisk", NSCSI_HARDDISK);
-}
-
-void r9751_state::wd33c93(device_t *device)
-{
- device->set_clock(10000000);
- // downcast<wd33c93a_device *>(device)->irq_cb().set(*this, FUNC(r9751_state::scsi_irq_w));
- // downcast<wd33c93a_device *>(device)->drq_cb().set(*this, FUNC(r9751_state::scsi_drq_w));
-}
-
-void r9751_state::r9751(machine_config &config)
-{
+MACHINE_CONFIG_START(r9751_state::r9751)
/* basic machine hardware */
- M68030(config, m_maincpu, 20000000);
- m_maincpu->set_addrmap(AS_PROGRAM, &r9751_state::r9751_mem);
- config.m_minimum_quantum = attotime::from_hz(1000);
+ MCFG_DEVICE_ADD("maincpu", M68030, 20000000)
+ MCFG_DEVICE_PROGRAM_MAP(r9751_mem)
+ MCFG_QUANTUM_TIME(attotime::from_hz(1000))
/* i/o hardware */
SMIOC(config, m_smioc, 0);
@@ -992,20 +972,13 @@ void r9751_state::r9751(machine_config &config)
PDC(config, m_pdc, 0);
m_pdc->m68k_r_callback().set(FUNC(r9751_state::pdc_dma_r));
m_pdc->m68k_w_callback().set(FUNC(r9751_state::pdc_dma_w));
-
- NSCSI_BUS(config, "scsi", 0);
- NSCSI_CONNECTOR(config, "scsi:0", scsi_devices, nullptr, false);
- NSCSI_CONNECTOR(config, "scsi:1", scsi_devices, "harddisk", false);
- NSCSI_CONNECTOR(config, "scsi:3", scsi_devices, nullptr, false);
- NSCSI_CONNECTOR(config, "scsi:4", scsi_devices, "cdrom", false);
- NSCSI_CONNECTOR(config, "scsi:5", scsi_devices, nullptr, false);
- NSCSI_CONNECTOR(config, "scsi:6", scsi_devices, nullptr, false);
- NSCSI_CONNECTOR(config, "scsi:7").option_set("wd33c93", WD33C93)
- .machine_config([this](device_t *device) { wd33c93(device); });
+ MCFG_DEVICE_ADD("scsi", SCSI_PORT, 0)
+ WD33C93(config, m_wd33c93);
+ m_wd33c93->set_scsi_port("scsi");
/* software list */
- SOFTWARE_LIST(config, "flop_list").set_original("r9751");
-}
+ MCFG_SOFTWARE_LIST_ADD("flop_list","r9751")
+MACHINE_CONFIG_END