diff options
Diffstat (limited to '3rdparty/ymfm/src/ymfm_fm.h')
-rw-r--r-- | 3rdparty/ymfm/src/ymfm_fm.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/3rdparty/ymfm/src/ymfm_fm.h b/3rdparty/ymfm/src/ymfm_fm.h index 1b24cc74518..81795f8fe43 100644 --- a/3rdparty/ymfm/src/ymfm_fm.h +++ b/3rdparty/ymfm/src/ymfm_fm.h @@ -33,6 +33,8 @@ #pragma once +#define YMFM_DEBUG_LOG_WAVFILES (0) + namespace ymfm { @@ -397,7 +399,14 @@ public: void set_clock_prescale(uint32_t prescale) { m_clock_prescale = prescale; } // compute sample rate - uint32_t sample_rate(uint32_t baseclock) const { return baseclock / (m_clock_prescale * OPERATORS); } + uint32_t sample_rate(uint32_t baseclock) const + { +#if (YMFM_DEBUG_LOG_WAVFILES) + for (uint32_t chnum = 0; chnum < CHANNELS; chnum++) + m_wavfile[chnum].set_samplerate(baseclock / (m_clock_prescale * OPERATORS)); +#endif + return baseclock / (m_clock_prescale * OPERATORS); + } // return the owning device ymfm_interface &intf() const { return m_intf; } @@ -444,6 +453,9 @@ protected: RegisterType m_regs; // register accessor std::unique_ptr<fm_channel<RegisterType>> m_channel[CHANNELS]; // channel pointers std::unique_ptr<fm_operator<RegisterType>> m_operator[OPERATORS]; // operator pointers +#if (YMFM_DEBUG_LOG_WAVFILES) + mutable ymfm_wavfile<1> m_wavfile[CHANNELS]; // for debugging +#endif }; } |