summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/msm6200.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/msm6200.h')
-rw-r--r--src/devices/machine/msm6200.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/devices/machine/msm6200.h b/src/devices/machine/msm6200.h
index 034950d10e7..584511fb808 100644
--- a/src/devices/machine/msm6200.h
+++ b/src/devices/machine/msm6200.h
@@ -20,15 +20,21 @@ public:
u8 read();
protected:
- virtual void device_start() override;
- virtual void device_reset() override;
+ virtual void device_start() override ATTR_COLD;
+ virtual void device_reset() override ATTR_COLD;
private:
+ static constexpr unsigned TIMER_RATE = 256; // arbitrary
+
+ TIMER_CALLBACK_MEMBER(scan_timer);
+
optional_ioport_array<38> m_keys;
optional_ioport m_velocity;
devcb_write_line m_irq_cb;
+ emu_timer *m_timer;
+
u8 m_cmd, m_row, m_key_data;
u8 m_key_state;
u8 m_last_state[38];