diff options
Diffstat (limited to 'src/devices/sound/aica.h')
-rw-r--r-- | src/devices/sound/aica.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/devices/sound/aica.h b/src/devices/sound/aica.h index 91e7be6f6d2..3c78692ee97 100644 --- a/src/devices/sound/aica.h +++ b/src/devices/sound/aica.h @@ -51,6 +51,7 @@ public: protected: // device-level overrides virtual void device_start() override; + virtual void device_clock_changed() override; // sound stream update overrides virtual void sound_stream_update(sound_stream &stream, stream_sample_t **inputs, stream_sample_t **outputs, int samples) override; @@ -128,6 +129,7 @@ private: void StartSlot(AICA_SLOT *slot); void StopSlot(AICA_SLOT *slot,int keyoff); void Init(); + void ClockChange(); void UpdateSlotReg(int s,int r); void UpdateReg(address_space &space, int reg); void UpdateSlotRegR(int slot,int reg); @@ -145,6 +147,7 @@ private: void AICALFO_ComputeStep(AICA_LFO_t *LFO,uint32_t LFOF,uint32_t LFOWS,uint32_t LFOS,int ALFO); bool m_master; + double m_rate; int m_roffset; /* offset in the region */ devcb_write_line m_irq_cb; devcb_write_line m_main_irq_cb; @@ -165,8 +168,8 @@ private: uint32_t m_AICARAM_LENGTH, m_RAM_MASK, m_RAM_MASK16; sound_stream * m_stream; - std::unique_ptr<int32_t[]> m_buffertmpl; - std::unique_ptr<int32_t[]> m_buffertmpr; + std::vector<int32_t> m_buffertmpl; + std::vector<int32_t> m_buffertmpr; uint32_t m_IrqTimA; uint32_t m_IrqTimBC; |