summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/einstein/userport/userport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/einstein/userport/userport.cpp')
-rw-r--r--src/devices/bus/einstein/userport/userport.cpp23
1 files changed, 6 insertions, 17 deletions
diff --git a/src/devices/bus/einstein/userport/userport.cpp b/src/devices/bus/einstein/userport/userport.cpp
index 419c24d94d4..dac68cc1181 100644
--- a/src/devices/bus/einstein/userport/userport.cpp
+++ b/src/devices/bus/einstein/userport/userport.cpp
@@ -31,7 +31,7 @@ DEFINE_DEVICE_TYPE(EINSTEIN_USERPORT, einstein_userport_device, "einstein_userpo
einstein_userport_device::einstein_userport_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, EINSTEIN_USERPORT, tag, owner, clock),
- device_slot_interface(mconfig, *this),
+ device_single_card_slot_interface<device_einstein_userport_interface>(mconfig, *this),
m_card(nullptr),
m_bstb_handler(*this)
{
@@ -51,18 +51,7 @@ einstein_userport_device::~einstein_userport_device()
void einstein_userport_device::device_start()
{
- // resolve callbacks
- m_bstb_handler.resolve_safe();
-
- m_card = dynamic_cast<device_einstein_userport_interface *>(get_card_device());
-}
-
-//-------------------------------------------------
-// device_reset - device-specific reset
-//-------------------------------------------------
-
-void einstein_userport_device::device_reset()
-{
+ m_card = get_card_device();
}
@@ -70,7 +59,7 @@ void einstein_userport_device::device_reset()
// I/O PORTS
//**************************************************************************
-READ8_MEMBER( einstein_userport_device::read )
+uint8_t einstein_userport_device::read()
{
if (m_card)
return m_card->read();
@@ -78,13 +67,13 @@ READ8_MEMBER( einstein_userport_device::read )
return 0xff;
}
-WRITE8_MEMBER( einstein_userport_device::write )
+void einstein_userport_device::write(uint8_t data)
{
if (m_card)
m_card->write(data);
}
-WRITE_LINE_MEMBER( einstein_userport_device::brdy_w )
+void einstein_userport_device::brdy_w(int state)
{
if (m_card)
m_card->brdy_w(state);
@@ -100,7 +89,7 @@ WRITE_LINE_MEMBER( einstein_userport_device::brdy_w )
//-------------------------------------------------
device_einstein_userport_interface::device_einstein_userport_interface(const machine_config &mconfig, device_t &device) :
- device_slot_card_interface(mconfig, device)
+ device_interface(device, "einsteinuser")
{
m_slot = dynamic_cast<einstein_userport_device *>(device.owner());
}