diff options
Diffstat (limited to 'src/devices/machine/at_keybc.h')
-rw-r--r-- | src/devices/machine/at_keybc.h | 20 |
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; |