26 #include "siddefs-fp.h" 50 const char* getMessage() {
return message; }
60 static const int BUS_TTL;
105 unsigned char delayedValue;
108 unsigned char busValue;
120 void writeImmediate(
int offset,
unsigned char value);
127 void ageBusValue(
int n);
142 void voiceSync(
bool sync);
153 void setChipModel(ChipModel model);
173 void input(
int value);
195 unsigned char read(
int offset);
203 void write(
int offset,
unsigned char value);
211 void mute(
int channel,
bool enable) { muted[channel] = enable; }
237 void setSamplingParameters(
double clockFrequency, SamplingMethod method,
double samplingFrequency,
double highestAccurateFrequency);
246 int clock(
int cycles,
short* buf);
258 void clockSilent(
int cycles);
265 void setFilter6581Curve(
double filterCurve);
272 void setFilter8580Curve(
double filterCurve);
279 void enableFilter(
bool enable);
284 #if RESID_INLINING || defined(SID_CPP) 289 #include "ExternalFilter.h" 291 #include "resample/Resampler.h" 297 void SID::ageBusValue(
int n)
299 if (likely(busValueTtl != 0))
303 if (unlikely(busValueTtl <= 0))
312 int SID::output()
const 314 const int v1 = voice[0]->output(voice[2]->wave());
315 const int v2 = voice[1]->output(voice[0]->wave());
316 const int v3 = voice[2]->output(voice[1]->wave());
318 return externalFilter->clock(filter->clock(v1, v2, v3));
330 int delta_t = std::min(nextVoiceSync, cycles);
332 if (likely(delta_t > 0))
334 if (unlikely(delayedOffset != -1))
339 for (
int i = 0; i < delta_t; i++)
342 voice[0]->wave()->clock();
343 voice[1]->wave()->clock();
344 voice[2]->wave()->clock();
347 voice[0]->envelope()->clock();
348 voice[1]->envelope()->clock();
349 voice[2]->envelope()->clock();
351 if (unlikely(resampler->input(output())))
353 buf[s++] = resampler->getOutput();
357 if (unlikely(delayedOffset != -1))
359 writeImmediate(delayedOffset, delayedValue);
364 nextVoiceSync -= delta_t;
367 if (unlikely(nextVoiceSync == 0))
Definition: Filter8580.h:85
Definition: Potentiometer.h:37
int clock(int cycles, short *buf)
Definition: SID.h:323
Definition: ExternalFilter.h:47
Definition: Resampler.h:32
Definition: Filter6581.h:320
ChipModel getChipModel() const
Definition: SID.h:158
void mute(int channel, bool enable)
Definition: SID.h:211