30 #include "sidplayfp/siddefs.h"
31 #include "sidplayfp/SidConfig.h"
32 #include "sidplayfp/SidTuneInfo.h"
34 #include "SidInfoImpl.h"
35 #include "sidrandom.h"
51 namespace libsidplayfp
81 const char *m_errorString;
83 std::atomic<state_t> m_isPlaying;
117 bool forced,
const std::vector<unsigned int> &extraSidAddresses);
127 void sidParams(
double cpuFreq,
int frequency,
130 inline void run(
unsigned int events);
136 const SidConfig &config()
const {
return m_cfg; }
138 const SidInfo &info()
const {
return m_info; }
140 bool config(
const SidConfig &cfg,
bool force=
false);
142 bool fastForward(
unsigned int percent);
146 uint_least32_t play(
short *buffer, uint_least32_t samples);
148 bool isPlaying()
const {
return m_isPlaying != state_t::STOPPED; }
152 uint_least32_t timeMs()
const {
return m_c64.getTimeMs(); }
154 void debug(
const bool enable, FILE *out) { m_c64.debug(enable, out); }
156 void mute(
unsigned int sidNum,
unsigned int voice,
bool enable);
158 void filter(
unsigned int sidNum,
bool enable);
160 const char *error()
const {
return m_errorString; }
162 void setKernal(
const uint8_t* rom);
163 void setBasic(
const uint8_t* rom);
164 void setChargen(
const uint8_t* rom);
166 uint_least16_t getCia1TimerA()
const {
return m_c64.getCia1TimerA(); }
168 bool getSidStatus(
unsigned int sidNum, uint8_t regs[32]);
Definition: SidConfig.h:40
sid_model_t
SID chip model.
Definition: SidConfig.h:51
sampling_method_t
Sampling method.
Definition: SidConfig.h:84
c64_model_t
C64 model.
Definition: SidConfig.h:74
Definition: SidInfoImpl.h:53
model_t
Definition: c64.h:76
Definition: sidrandom.h:31
Definition: sidbuilder.h:41