26 #include "siddefs-fp.h"
31 #include "FilterModelConfig.h"
325 const unsigned short* f0_dac;
327 unsigned short** mixer;
328 unsigned short** summer;
329 unsigned short** gain;
331 const int voiceScaleS14;
335 std::unique_ptr<Integrator>
const hpIntegrator;
338 std::unique_ptr<Integrator>
const bpIntegrator;
371 int clock(
int voice1,
int voice2,
int voice3)
override;
373 void input(
int sample)
override {
ve = (sample * voiceScaleS14 * 3 >> 10) + mixer[0][0]; }
385 #if RESID_INLINING || defined(FILTER6581_CPP)
387 #include "Integrator.h"
395 voice1 = (voice1 * voiceScaleS14 >> 18) + voiceDC;
396 voice2 = (voice2 * voiceScaleS14 >> 18) + voiceDC;
398 voice3 = filt3 || !
voice3off ? (voice3 * voiceScaleS14 >> 18) + voiceDC : 0;
403 (
filt1 ? Vi : Vo) += voice1;
404 (filt2 ? Vi : Vo) += voice2;
405 (filt3 ? Vi : Vo) += voice3;
406 (filtE ? Vi : Vo) +=
ve;
409 Vbp = hpIntegrator->solve(
Vhp);
410 Vlp = bpIntegrator->solve(
Vbp);