diff options
Diffstat (limited to 'src/devices/bus/sgikbd/sgikbd.cpp')
-rw-r--r-- | src/devices/bus/sgikbd/sgikbd.cpp | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/src/devices/bus/sgikbd/sgikbd.cpp b/src/devices/bus/sgikbd/sgikbd.cpp index 4ad2d1f925a..478a65243b5 100644 --- a/src/devices/bus/sgikbd/sgikbd.cpp +++ b/src/devices/bus/sgikbd/sgikbd.cpp @@ -21,7 +21,7 @@ sgi_keyboard_port_device::sgi_keyboard_port_device(machine_config const &mconfig sgi_keyboard_port_device::sgi_keyboard_port_device(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, uint32_t clock) : device_t(mconfig, type, tag, owner, clock) - , device_slot_interface(mconfig, *this) + , device_single_card_slot_interface<device_sgi_keyboard_port_interface>(mconfig, *this) , m_rxd(0) , m_rxd_handler(*this) , m_dev(nullptr) @@ -34,16 +34,7 @@ sgi_keyboard_port_device::~sgi_keyboard_port_device() void sgi_keyboard_port_device::device_config_complete() { - m_dev = dynamic_cast<device_sgi_keyboard_port_interface *>(get_card_device()); -} - -void sgi_keyboard_port_device::device_validity_check(validity_checker &valid) const -{ - device_t *const card(get_card_device()); - if (card && !dynamic_cast<device_sgi_keyboard_port_interface *>(card)) - { - logerror("Card device %s (%s) does not implement device_sgi_keyboard_port_interface\n", card->tag(), card->name()); - } + m_dev = get_card_device(); } void sgi_keyboard_port_device::device_resolve_objects() @@ -53,11 +44,6 @@ void sgi_keyboard_port_device::device_resolve_objects() void sgi_keyboard_port_device::device_start() { - if (get_card_device() && !m_dev) - { - throw emu_fatalerror("Card device %s (%s) does not implement device_sgi_keyboard_port_interface\n", get_card_device()->tag(), get_card_device()->name()); - } - save_item(NAME(m_rxd)); m_rxd = 1; @@ -71,7 +57,7 @@ WRITE_LINE_MEMBER(sgi_keyboard_port_device::write_txd) } device_sgi_keyboard_port_interface::device_sgi_keyboard_port_interface(machine_config const &mconfig, device_t &device) - : device_slot_card_interface(mconfig, device) + : device_interface(device, "sgikbd") , m_port(dynamic_cast<sgi_keyboard_port_device *>(device.owner())) { } |