summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/comx35/exp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/comx35/exp.cpp')
-rw-r--r--src/devices/bus/comx35/exp.cpp19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/devices/bus/comx35/exp.cpp b/src/devices/bus/comx35/exp.cpp
index 75036fb6ea8..6848ade4f92 100644
--- a/src/devices/bus/comx35/exp.cpp
+++ b/src/devices/bus/comx35/exp.cpp
@@ -27,7 +27,7 @@ DEFINE_DEVICE_TYPE(COMX_EXPANSION_SLOT, comx_expansion_slot_device, "comx_expans
//-------------------------------------------------
device_comx_expansion_card_interface::device_comx_expansion_card_interface(const machine_config &mconfig, device_t &device) :
- device_slot_card_interface(mconfig, device),
+ device_interface(device, "comxexp"),
m_ds(1)
{
m_slot = dynamic_cast<comx_expansion_slot_device *>(device.owner());
@@ -45,7 +45,7 @@ device_comx_expansion_card_interface::device_comx_expansion_card_interface(const
comx_expansion_slot_device::comx_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, COMX_EXPANSION_SLOT, tag, owner, clock),
- device_slot_interface(mconfig, *this),
+ device_single_card_slot_interface<device_comx_expansion_card_interface>(mconfig, *this),
m_write_irq(*this), m_card(nullptr)
{
}
@@ -57,10 +57,7 @@ comx_expansion_slot_device::comx_expansion_slot_device(const machine_config &mco
void comx_expansion_slot_device::device_start()
{
- m_card = dynamic_cast<device_comx_expansion_card_interface *>(get_card_device());
-
- // resolve callbacks
- m_write_irq.resolve_safe();
+ m_card = get_card_device();
}
@@ -120,7 +117,7 @@ void comx_expansion_slot_device::io_w(offs_t offset, uint8_t data)
// ds_w - device select write
//-------------------------------------------------
-WRITE_LINE_MEMBER(comx_expansion_slot_device::ds_w)
+void comx_expansion_slot_device::ds_w(int state)
{
if (m_card != nullptr)
m_card->comx_ds_w(state);
@@ -131,7 +128,7 @@ WRITE_LINE_MEMBER(comx_expansion_slot_device::ds_w)
// q_w - Q write
//-------------------------------------------------
-WRITE_LINE_MEMBER(comx_expansion_slot_device::q_w)
+void comx_expansion_slot_device::q_w(int state)
{
if (m_card != nullptr)
m_card->comx_q_w(state);
@@ -142,7 +139,7 @@ WRITE_LINE_MEMBER(comx_expansion_slot_device::q_w)
// ef4_r - EF4 poll
//-------------------------------------------------
-READ_LINE_MEMBER(comx_expansion_slot_device::ef4_r)
+int comx_expansion_slot_device::ef4_r()
{
int state = CLEAR_LINE;
@@ -157,7 +154,7 @@ READ_LINE_MEMBER(comx_expansion_slot_device::ef4_r)
// sc_w - state code/N0-N2 write
//-------------------------------------------------
-WRITE8_MEMBER(comx_expansion_slot_device::sc_w)
+void comx_expansion_slot_device::sc_w(offs_t offset, uint8_t data)
{
if (m_card != nullptr)
m_card->comx_sc_w(offset, data);
@@ -168,7 +165,7 @@ WRITE8_MEMBER(comx_expansion_slot_device::sc_w)
// tpb_w - TPB write
//-------------------------------------------------
-WRITE_LINE_MEMBER(comx_expansion_slot_device::tpb_w)
+void comx_expansion_slot_device::tpb_w(int state)
{
if (m_card != nullptr)
m_card->comx_tpb_w(state);