On Thu, Dec 20, 2018 at 11:01:32AM +0000, John ff wrote: > I noticed that and changed the code to zero affect That's.... really strange! No further ideas right now. -- Pete -- :> > > On Dec 20, 2018, 06:42, at 06:42, Pete Goodeve wrote: > >I'd guess this is the problem: > > > >In fm4op.c: hammondB3(...): > > > > .... > > if (*p->modDepth > FL(0.0)) { > > p->v_rate = *p->vibFreq * p->vibWave->flen * csound->onedsr; > > temp = FL(1.0) + (*p->modDepth * FL(0.1) * > > Wave_tick(&p->v_time, (int)p->vibWave->flen, > > p->vibWave->ftable, p->v_rate, FL(0.0))); > > temp *= p->baseFreq * csound->onedsr; > > p->w_rate[0] = p->ratios[0] * temp * p->waves[0]->flen; > > p->w_rate[1] = p->ratios[1] * temp * p->waves[1]->flen; > > p->w_rate[2] = p->ratios[2] * temp * p->waves[2]->flen; > > p->w_rate[3] = p->ratios[3] * temp * p->waves[3]->flen; > > } > > lastOutput = FM4Alg8_tick(p, c1, c2); > > .... > > > >All those variables never get set if modDepth is never > >greater-than-zero, > >but FM4Alg8_tick(...) uses them! Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here