diff options
Diffstat (limited to 'src/devices/machine/z80ctc.h')
-rw-r--r-- | src/devices/machine/z80ctc.h | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/devices/machine/z80ctc.h b/src/devices/machine/z80ctc.h index 9f0d5aa410f..0af27a0211c 100644 --- a/src/devices/machine/z80ctc.h +++ b/src/devices/machine/z80ctc.h @@ -51,8 +51,8 @@ public: protected: // device_t implementation - virtual void device_start() override; - virtual void device_reset() override; + virtual void device_start() override ATTR_COLD; + virtual void device_reset() override ATTR_COLD; u8 read(); void write(u8 data); @@ -100,9 +100,11 @@ public: u16 get_channel_constant(int ch) const { return m_channel[ch]->m_tconst; } protected: + z80ctc_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + // device_t implementation - virtual void device_add_mconfig(machine_config &config) override; - virtual void device_start() override; + virtual void device_add_mconfig(machine_config &config) override ATTR_COLD; + virtual void device_start() override ATTR_COLD; virtual void device_reset_after_children() override; // z80daisy_interface implementation @@ -110,20 +112,18 @@ protected: virtual int z80daisy_irq_ack() override; virtual void z80daisy_irq_reti() override; -private: // internal helpers + u8 channel_int_state(int ch) const noexcept { return m_channel[ch]->m_int_state; } void interrupt_check(); z80ctc_channel_device &channel_config(int ch) { return *m_channel[ch].lookup(); } // internal state - devcb_write_line m_intr_cb; // interrupt callback - devcb_write_line::array<4> m_zc_cb; // zero crossing/timer output callbacks - - u8 m_vector; // interrupt vector + required_device_array<z80ctc_channel_device, 4> m_channel; // subdevice for each channel + devcb_write_line m_intr_cb; // interrupt callback + devcb_write_line::array<4> m_zc_cb; // zero crossing/timer output callbacks - // subdevice for each channel - required_device_array<z80ctc_channel_device, 4> m_channel; + u8 m_vector; // interrupt vector }; |