summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/nubus
diff options
context:
space:
mode:
author mooglyguy <therealmogminer@gmail.com>2018-08-04 23:03:02 +0200
committer mooglyguy <therealmogminer@gmail.com>2018-08-04 23:03:13 +0200
commit0f028a8bd2afcb32ccdab0291eb3a798a98a1afc (patch)
treed9f2a50c85a01bad10e37124c55538e1f13cf967 /src/devices/bus/nubus
parent782466772f94b5b32bc939a8ad177c752b20043b (diff)
-mac: MACHINE_CONFIG removal, nw
Diffstat (limited to 'src/devices/bus/nubus')
-rw-r--r--src/devices/bus/nubus/nubus.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/devices/bus/nubus/nubus.h b/src/devices/bus/nubus/nubus.h
index 37c5700df6e..919f989ebfb 100644
--- a/src/devices/bus/nubus/nubus.h
+++ b/src/devices/bus/nubus/nubus.h
@@ -62,6 +62,16 @@ class nubus_slot_device : public device_t, public device_slot_interface
{
public:
// construction/destruction
+ template <typename T>
+ nubus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *nbtag, T &&opts, const char *dflt)
+ : nubus_slot_device(mconfig, tag, owner, (uint32_t)0)
+ {
+ option_reset();
+ opts(*this);
+ set_default_option(dflt);
+ set_nubus_slot(nbtag, tag);
+ }
+
nubus_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// inline configuration
@@ -97,6 +107,12 @@ public:
template <class Object> devcb_base &set_out_irqc_callback(Object &&cb) { return m_out_irqc_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_out_irqd_callback(Object &&cb) { return m_out_irqd_cb.set_callback(std::forward<Object>(cb)); }
template <class Object> devcb_base &set_out_irqe_callback(Object &&cb) { return m_out_irqe_cb.set_callback(std::forward<Object>(cb)); }
+ auto out_irq9_callback() { return m_out_irq9_cb.bind(); }
+ auto out_irqa_callback() { return m_out_irqa_cb.bind(); }
+ auto out_irqb_callback() { return m_out_irqb_cb.bind(); }
+ auto out_irqc_callback() { return m_out_irqc_cb.bind(); }
+ auto out_irqd_callback() { return m_out_irqd_cb.bind(); }
+ auto out_irqe_callback() { return m_out_irqe_cb.bind(); }
void add_nubus_card(device_nubus_card_interface *card);
void install_device(offs_t start, offs_t end, read8_delegate rhandler, write8_delegate whandler, uint32_t mask=0xffffffff);