21 void powerUp(EmuTime::param time);
22 void reset(EmuTime::param time);
23 [[nodiscard]]
byte readMem(
byte address,EmuTime::param time);
24 [[nodiscard]]
byte peekMem(
byte address,EmuTime::param time)
const;
25 void writeMem(
byte address,
byte value, EmuTime::param time);
28 template<
typename Archive>
29 void serialize(Archive& ar,
unsigned version);
33 [[nodiscard]]
float getAmplificationFactorImpl()
const override;
34 void generateChannels(
float** bufs,
unsigned num)
override;
36 [[nodiscard]]
byte readWave(
unsigned channel,
unsigned address, EmuTime::param time)
const;
37 void writeWave(
unsigned channel,
unsigned address,
byte value);
38 void setDeformReg(
byte value, EmuTime::param time);
39 void setDeformRegHelper(
byte value);
40 void setFreqVol(
unsigned address,
byte value, EmuTime::param time);
41 [[nodiscard]]
byte getFreqVol(
unsigned address)
const;
44 static constexpr
int CLOCK_FREQ = 3579545;
48 [[nodiscard]]
byte read(
unsigned address, EmuTime::param time)
override;
49 void write(
unsigned address,
byte value, EmuTime::param time)
override;
52 Clock<CLOCK_FREQ> deformTimer;
55 signed char wave[5][32];
56 float volAdjustedWave[5][32];
61 unsigned orgPeriod[5];
void writeMem(byte address, byte value, EmuTime::param time)
void setChipMode(ChipMode newMode)
void serialize(Archive &ar, unsigned version)
void powerUp(EmuTime::param time)
byte readMem(byte address, EmuTime::param time)
void reset(EmuTime::param time)
SCC(const std::string &name, const DeviceConfig &config, EmuTime::param time, ChipMode mode=SCC_Real)
byte peekMem(byte address, EmuTime::param time) const
This file implemented 3 utility functions: