summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/at_keybc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/at_keybc.h')
-rw-r--r--src/devices/machine/at_keybc.h20
1 files changed, 13 insertions, 7 deletions
diff --git a/src/devices/machine/at_keybc.h b/src/devices/machine/at_keybc.h
index d57ca81f565..784ecb803b5 100644
--- a/src/devices/machine/at_keybc.h
+++ b/src/devices/machine/at_keybc.h
@@ -20,6 +20,8 @@
class at_kbc_device_base : public device_t
{
public:
+ virtual ~at_kbc_device_base();
+
// outputs to host
auto hot_res() { return m_hot_res_cb.bind(); }
auto gate_a20() { return m_gate_a20_cb.bind(); }
@@ -44,7 +46,7 @@ protected:
at_kbc_device_base(machine_config const &mconfig, device_type type, char const *tag, device_t *owner, u32 clock);
// device_t implementation
- virtual void device_start() override;
+ virtual void device_start() override ATTR_COLD;
// host outputs - use 1 = asserted, 0 = deasserted
void set_hot_res(u8 state);
@@ -83,12 +85,13 @@ class at_keyboard_controller_device : public at_kbc_device_base
public:
// standard constructor
at_keyboard_controller_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
+ virtual ~at_keyboard_controller_device();
protected:
// device_t implementation
- virtual tiny_rom_entry const *device_rom_region() const override;
- virtual void device_add_mconfig(machine_config &config) override;
- virtual ioport_constructor device_input_ports() const override;
+ virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD;
+ virtual void device_add_mconfig(machine_config &config) override ATTR_COLD;
+ virtual ioport_constructor device_input_ports() const override ATTR_COLD;
private:
// MCU I/O handlers
@@ -120,12 +123,13 @@ public:
// standard constructor
ps2_keyboard_controller_device(machine_config const &mconfig, char const *tag, device_t *owner, u32 clock);
+ virtual ~ps2_keyboard_controller_device();
protected:
// device_t implementation
- virtual tiny_rom_entry const *device_rom_region() const override;
- virtual void device_add_mconfig(machine_config &config) override;
- virtual void device_start() override;
+ virtual tiny_rom_entry const *device_rom_region() const override ATTR_COLD;
+ virtual void device_add_mconfig(machine_config &config) override ATTR_COLD;
+ virtual void device_start() override ATTR_COLD;
private:
// host outputs - use 1 = asserted, 0 = deasserted
@@ -140,11 +144,13 @@ private:
// internal sync helpers
TIMER_CALLBACK_MEMBER(set_aux_clk_in);
TIMER_CALLBACK_MEMBER(set_aux_data_in);
+ TIMER_CALLBACK_MEMBER(set_aux_irq_timer_callback);
// MCU I/O handlers
uint8_t p1_r();
void p2_w(uint8_t data);
+ emu_timer* m_aux_irq_timer;
devcb_write_line m_aux_irq_cb;
devcb_write_line m_aux_clk_cb, m_aux_data_cb;