diff options
Diffstat (limited to 'src/devices/bus/cbmiec/cbmiec.cpp')
-rw-r--r-- | src/devices/bus/cbmiec/cbmiec.cpp | 53 |
1 files changed, 21 insertions, 32 deletions
diff --git a/src/devices/bus/cbmiec/cbmiec.cpp b/src/devices/bus/cbmiec/cbmiec.cpp index c9a04f863e2..43faf6e17a3 100644 --- a/src/devices/bus/cbmiec/cbmiec.cpp +++ b/src/devices/bus/cbmiec/cbmiec.cpp @@ -222,8 +222,8 @@ DEFINE_DEVICE_TYPE(CBM_IEC_SLOT, cbm_iec_slot_device, "cbm_iec_slot", "CBM IEC s // device_cbm_iec_interface - constructor //------------------------------------------------- -device_cbm_iec_interface::device_cbm_iec_interface(const machine_config &mconfig, device_t &device) - : device_slot_card_interface(mconfig, device), m_next(nullptr), m_bus(nullptr), m_slot(nullptr) +device_cbm_iec_interface::device_cbm_iec_interface(const machine_config &mconfig, device_t &device) : + device_interface(device, "cbmiec"), m_next(nullptr), m_bus(nullptr), m_slot(nullptr) { } @@ -247,8 +247,8 @@ device_cbm_iec_interface::~device_cbm_iec_interface() //------------------------------------------------- cbm_iec_slot_device::cbm_iec_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : - device_t(mconfig, CBM_IEC_SLOT, tag, owner, clock), - device_slot_interface(mconfig, *this), m_address(0) + device_t(mconfig, CBM_IEC_SLOT, tag, owner, clock), + device_slot_interface(mconfig, *this), m_address(0) { } @@ -273,14 +273,6 @@ void cbm_iec_slot_device::device_start() if (dev) bus->add_device(this, get_card_device()); } -void cbm_iec_slot_device::add_slot(machine_config &config, const char *_tag, int _address, const char *_def_slot) -{ - cbm_iec_slot_device &slot(CBM_IEC_SLOT(config, _tag, 0)); - cbm_iec_devices(slot); - slot.set_default_option(_def_slot); - slot.set_address(_address); -} - //************************************************************************** // LIVE DEVICE //************************************************************************** @@ -289,13 +281,13 @@ void cbm_iec_slot_device::add_slot(machine_config &config, const char *_tag, int // cbm_iec_device - constructor //------------------------------------------------- -cbm_iec_device::cbm_iec_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) - : device_t(mconfig, CBM_IEC, tag, owner, clock), - m_write_srq(*this), - m_write_atn(*this), - m_write_clk(*this), - m_write_data(*this), - m_write_reset(*this) +cbm_iec_device::cbm_iec_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) : + device_t(mconfig, CBM_IEC, tag, owner, clock), + m_write_srq(*this), + m_write_atn(*this), + m_write_clk(*this), + m_write_data(*this), + m_write_reset(*this) { for (auto & elem : m_line) { @@ -310,12 +302,6 @@ cbm_iec_device::cbm_iec_device(const machine_config &mconfig, const char *tag, d void cbm_iec_device::device_start() { - // resolve callbacks - m_write_srq.resolve_safe(); - m_write_atn.resolve_safe(); - m_write_clk.resolve_safe(); - m_write_data.resolve_safe(); - m_write_reset.resolve_safe(); } @@ -346,7 +332,7 @@ void cbm_iec_device::device_stop() void cbm_iec_device::add_device(cbm_iec_slot_device *slot, device_t *target) { - auto entry = global_alloc(daisy_entry(target)); + auto entry = new daisy_entry(target); entry->m_interface->m_slot = slot; entry->m_interface->m_bus = this; @@ -359,10 +345,10 @@ void cbm_iec_device::add_device(cbm_iec_slot_device *slot, device_t *target) // daisy_entry - constructor //------------------------------------------------- -cbm_iec_device::daisy_entry::daisy_entry(device_t *device) - : m_next(nullptr), - m_device(device), - m_interface(nullptr) +cbm_iec_device::daisy_entry::daisy_entry(device_t *device) : + m_next(nullptr), + m_device(device), + m_interface(nullptr) { for (auto & elem : m_line) { @@ -502,6 +488,7 @@ int cbm_iec_device::get_signal(int signal) #include "vic1515.h" #include "vic1520.h" #include "c1526.h" +#include "mps1200.h" void cbm_iec_devices(device_slot_interface &device) { @@ -522,9 +509,9 @@ void cbm_iec_devices(device_slot_interface &device) device.option_add("cmdhd", CMD_HD); device.option_add("fd2000", FD2000); device.option_add("fd4000", FD4000); - device.option_add("interpod", INTERPOD); + device.option_add("interpod", CBM_INTERPOD); device.option_add("minichief", MINI_CHIEF); - device.option_add("serialbox", SERIAL_BOX); + device.option_add("serialbox", CBM_SERIAL_BOX); device.option_add("diag264", DIAG264_SERIAL_LOOPBACK); device.option_add("nl10", C64_NL10_INTERFACE); device.option_add("vic1515", VIC1515); @@ -537,4 +524,6 @@ void cbm_iec_devices(device_slot_interface &device) device.option_add("fd148", FD148); device.option_add("msdsd1", MSD_SD1); device.option_add("msdsd2", MSD_SD2); + device.option_add("mps1200", MPS1200); + device.option_add("mps1250", MPS1250); } |