68 virtual void writePort(
bool port, uint8_t value,
int offset) = 0;
75 virtual void pokeReg(uint8_t reg, uint8_t value) = 0;
83 [[nodiscard]]
virtual uint8_t
peekReg(uint8_t reg)
const = 0;
Abstract interface for the YM2413 core.
virtual void setSpeed(double)
Sets real-time speed factor (aka the openMSX 'speed' setting).
virtual float getAmplificationFactor() const =0
Returns normalization factor.
virtual void pokeReg(uint8_t reg, uint8_t value)=0
Write to a YM2413 register (for debug).
virtual ~YM2413Core()=default
virtual void reset()=0
Reset this YM2413 core.
virtual uint8_t peekReg(uint8_t reg) const =0
Read from a YM2413 register (for debug).
virtual void generateChannels(std::span< float *, 9+5 > bufs, unsigned num)=0
Generate the sound output.
virtual void writePort(bool port, uint8_t value, int offset)=0
Write to the YM2413 register/data port.
static constexpr int CLOCK_FREQ
Input clock frequency.
This file implemented 3 utility functions: