summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/kr2376.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/kr2376.h')
-rw-r--r--src/devices/machine/kr2376.h26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/devices/machine/kr2376.h b/src/devices/machine/kr2376.h
index a6c3048eb14..7d6eb9dc92e 100644
--- a/src/devices/machine/kr2376.h
+++ b/src/devices/machine/kr2376.h
@@ -69,23 +69,24 @@ public:
int get_output_pin( output_pin_t pin );
protected:
- // device-level overrides
+ // device_t overrides
virtual void device_start() override ATTR_COLD;
+
virtual uint8_t key_codes(int mode, int x, int y) { return 0x00; }
TIMER_CALLBACK_MEMBER(perform_scan);
private:
// internal state
- int m_pins[41];
+ uint8_t m_pins[41];
- int m_ring11; /* sense input scan counter */
- int m_ring8; /* drive output scan counter */
+ uint8_t m_ring11; /* sense input scan counter */
+ uint8_t m_ring8; /* drive output scan counter */
- int m_strobe; /* strobe output */
- int m_strobe_old;
- int m_parity;
- int m_data;
+ uint8_t m_strobe; /* strobe output */
+ uint8_t m_strobe_old;
+ uint8_t m_parity;
+ uint8_t m_data;
/* timers */
emu_timer *m_scan_timer; /* keyboard scan timer */
@@ -98,22 +99,27 @@ private:
void detect_keypress();
};
+
class kr2376_st_device : public kr2376_device
{
public:
kr2376_st_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
protected:
virtual uint8_t key_codes(int mode, int x, int y) override;
};
+
class kr2376_12_device : public kr2376_device
{
public:
- kr2376_12_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+ kr2376_12_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
protected:
- virtual uint8_t key_codes(int mode, int x, int y) override;
+ virtual uint8_t key_codes(int mode, int x, int y) override;
};
+
DECLARE_DEVICE_TYPE(KR2376_ST, kr2376_st_device)
DECLARE_DEVICE_TYPE(KR2376_12, kr2376_12_device)