31 #include "SidConfig.h" 32 #include "SidTuneInfo.h" 33 #include "SidInfoImpl.h" 34 #include "sidrandom.h" 52 SIDPLAYFP_NAMESPACE_START
66 configError(
const char* msg) : m_msg(msg) {}
67 const char* message()
const {
return m_msg; }
81 const char *m_errorString;
83 volatile bool m_isPlaying;
91 c64::model_t c64model(SidConfig::c64_model_t defaultModel,
bool forced);
94 void sidCreate(
sidbuilder *builder, SidConfig::sid_model_t defaultModel,
95 bool forced,
const std::vector<unsigned int> &extraSidAddresses);
96 void sidParams(
double cpuFreq,
int frequency,
97 SidConfig::sampling_method_t sampling,
bool fastSampling);
99 static SidConfig::sid_model_t getModel (SidTuneInfo::model_t sidModel, SidConfig::sid_model_t defaultModel,
bool forced);
101 #ifdef PC64_TESTSUITE 102 void load(
const char *file);
109 const SidConfig &config()
const {
return m_cfg; }
111 const SidInfo &info()
const {
return m_info; }
115 bool fastForward(
unsigned int percent);
121 uint_least32_t play(
short *buffer, uint_least32_t samples);
123 bool isPlaying()
const {
return m_isPlaying; }
127 uint_least32_t time()
const {
return (uint_least32_t)(m_c64.
getEventScheduler().
getTime(EVENT_CLOCK_PHI1) / cpuFreq()); }
129 void debug(
const bool enable, FILE *out) { m_c64.debug (enable, out); }
131 void mute(
unsigned int sidNum,
unsigned int voice,
bool enable);
133 const char *error()
const {
return m_errorString; }
135 void setRoms(
const uint8_t* kernal,
const uint8_t* basic,
const uint8_t* character);
139 uint_least16_t getCia1TimerA()
const {
return m_c64.getCia1TimerA(); }
142 SIDPLAYFP_NAMESPACE_STOP
double getMainCpuSpeed() const
Definition: c64.h:244
Definition: sidrandom.h:27
Definition: SidInfoImpl.h:49
model_t
Definition: c64.h:80
Definition: SidConfig.h:39
Definition: sidbuilder.h:37
event_clock_t getTime(event_phase_t phase) const
Definition: EventScheduler.h:129
EventScheduler * getEventScheduler()
Definition: c64.h:220