summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/hp9845_io/hp9845_io.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/hp9845_io/hp9845_io.h')
-rw-r--r--src/devices/bus/hp9845_io/hp9845_io.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/devices/bus/hp9845_io/hp9845_io.h b/src/devices/bus/hp9845_io/hp9845_io.h
index 7252ac25520..c85f7632ffe 100644
--- a/src/devices/bus/hp9845_io/hp9845_io.h
+++ b/src/devices/bus/hp9845_io/hp9845_io.h
@@ -46,22 +46,33 @@ public:
auto irq() { return m_irq_cb_func.bind(); }
auto sts() { return m_sts_cb_func.bind(); }
auto flg() { return m_flg_cb_func.bind(); }
+ auto irq_nextsc() { return m_irq_nextsc_cb_func.bind(); }
+ auto sts_nextsc() { return m_sts_nextsc_cb_func.bind(); }
+ auto flg_nextsc() { return m_flg_nextsc_cb_func.bind(); }
auto dmar() { return m_dmar_cb_func.bind(); }
// irq/sts/flg/dmar signal handlers for card devices
DECLARE_WRITE_LINE_MEMBER(irq_w);
DECLARE_WRITE_LINE_MEMBER(sts_w);
DECLARE_WRITE_LINE_MEMBER(flg_w);
+ DECLARE_WRITE_LINE_MEMBER(irq_nextsc_w);
+ DECLARE_WRITE_LINE_MEMBER(sts_nextsc_w);
+ DECLARE_WRITE_LINE_MEMBER(flg_nextsc_w);
DECLARE_WRITE_LINE_MEMBER(dmar_w);
// getter for r/w handlers
// return value is SC (negative if no card is attached to slot)
int get_rw_handlers(read16_delegate& rhandler , write16_delegate& whandler);
+ bool has_dual_sc() const;
+
private:
devcb_write_line m_irq_cb_func;
devcb_write_line m_sts_cb_func;
devcb_write_line m_flg_cb_func;
+ devcb_write_line m_irq_nextsc_cb_func;
+ devcb_write_line m_sts_nextsc_cb_func;
+ devcb_write_line m_flg_nextsc_cb_func;
devcb_write_line m_dmar_cb_func;
};
@@ -77,6 +88,8 @@ public:
// SC getter
uint8_t get_sc(void);
+ virtual bool has_dual_sc() const;
+
protected:
// construction/destruction
hp9845_io_card_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
@@ -89,6 +102,9 @@ protected:
DECLARE_WRITE_LINE_MEMBER(irq_w);
DECLARE_WRITE_LINE_MEMBER(sts_w);
DECLARE_WRITE_LINE_MEMBER(flg_w);
+ DECLARE_WRITE_LINE_MEMBER(irq_nextsc_w);
+ DECLARE_WRITE_LINE_MEMBER(sts_nextsc_w);
+ DECLARE_WRITE_LINE_MEMBER(flg_nextsc_w);
DECLARE_WRITE_LINE_MEMBER(dmar_w);
};