Here is the current state of my program wherein I noticed the strange behavior:
<Cabbage>
form caption("Primitive FM-synth") size(600, 600), guiMode("queue"), pluginId("def1")
signaldisplay bounds(4, 6, 500, 300), colour("lime") displayType("waveform"), signalVariable("aOutput")
keyboard bounds(2, 525, 588, 75)
rslider bounds(100, 256, 80, 80) channel("att") range(0.001, 0.25, 0.1, 1, 0.001) colour(255, 0, 0, 255) text("Attack") textColour(255, 245, 0, 255)
rslider bounds(188, 256, 80, 80) channel("dec") range(0.001, 0.25, 0.1, 1, 0.001) colour(255, 0, 0, 255) text("Decay") textColour(255, 245, 0, 255)
rslider bounds(274, 256, 80, 80) channel("sus") range(0, 1, 0.7, 1, 0.001) colour(255, 0, 0, 255) text("Sustain") textColour(255, 245, 0, 255)
rslider bounds(362, 256, 80, 80) channel("rel") range(0, 1, 0.1, 1, 0.001) colour(255, 0, 0, 255) text("Release") textColour(255, 245, 0, 255)
rslider bounds(10, 256, 80, 80) channel("ampcar") range(0, 1, 0.5, 1, 0.001) colour(255, 0, 0, 255) text("Volume") textColour(255, 255, 0, 255)
rslider bounds(486, 256, 80, 80) channel("modind") range(0, 1000, 500, 1, 0.001) colour(255, 0, 0, 255) text("Mod index") textColour(255, 255, 0, 255)
rslider bounds(484, 358, 80, 80) channel("freqrat") range(0, 5, 1, 1, 0.001) colour(255, 0, 0, 255) text("Freq ratio") textColour(255, 255, 0, 255)
rslider bounds(10, 436, 80, 80) channel("msin") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Sine") textColour(255, 255, 0, 255)
rslider bounds(100, 436, 80, 80) channel("msaw") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Saw") textColour(255, 255, 0, 255)
rslider bounds(188, 436, 80, 80) channel("msqu") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Square") textColour(255, 255, 0, 255)
rslider bounds(270, 436, 80, 80) channel("mtri") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Triangle") textColour(255, 255, 0, 255)
rslider bounds(362, 436, 80, 80) channel("mimp") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Impulse") textColour(255, 255, 0, 255)
label bounds(412, 114, 80, 16) channel("label10013") text("Modulator") colour(255, 255, 255, 255) fontColour(255, 0, 0, 255)
rslider bounds(8, 346, 80, 80) channel("sin") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Sine") textColour(255, 255, 0, 255)
rslider bounds(100, 346, 80, 80) channel("saw") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Saw") textColour(255, 255, 0, 255)
rslider bounds(188, 348, 80, 80) channel("squ") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Square") textColour(255, 255, 0, 255)
rslider bounds(274, 346, 80, 80) channel("tri") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Triangle") textColour(255, 255, 0, 255)
rslider bounds(366, 348, 82, 80) channel("imp") range(0, 1, 0.2, 1, 0.001) colour(255, 0, 0, 255) text("Impulse") textColour(255, 255, 0, 255)
label bounds(412, 162, 80, 16) channel("label10013") text("Carrier") colour(255, 255, 255, 128) fontColour(255, 0, 0, 255)
</Cabbage>
<CsoundSynthesizer>
<CsOptions>
-n -d -+rtmidi=NULL -M0 -m0d --midi-key-cps=4 --midi-velocity-amp=5 --displays
</CsOptions>
<CsInstruments>
sr = 44100
ksmps = 32
nchnls = 2
0dbfs = 1
instr 1
giSin ftgen 0, 0, 2^10, 10, 1
giSaw ftgen 0, 0, 2^10, 10, 1, 1/2, 1/3, 1/4, 1/5, 1/6, 1/7, 1/8, 1/9
giSqu ftgen 0, 0, 2^10, 10, 1, 0, 1/3, 0, 1/5, 0, 1/7, 0, 1/9
giTri ftgen 0, 0, 2^10, 10, 1, 0, -1/9, 0, 1/25, 0, -1/49, 0, 1/81
giImp ftgen 0, 0, 2^10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1
iAtt chnget "att"
iDec chnget "dec"
iSus chnget "sus"
iRel chnget "rel"
kAmpc chnget "ampcar"
kAmpm chnget "ampmod"
kModi chnget "modind"
kFrat chnget "freqrat"
kMSin chnget "msin"
kMSaw chnget "msaw"
kMSqu chnget "msqu"
kMTri chnget "mtri"
kMImp chnget "mimp"
kSin chnget "sin"
kSaw chnget "saw"
kSqu chnget "squ"
kTri chnget "tri"
kImp chnget "imp"
kres1 madsr iAtt, iDec, iSus, iRel
aModulatorSin poscil p5, p4*kFrat, giSin
aModulatorSaw poscil p5, p4*kFrat, giSaw
aModulatorSqu poscil p5, p4*kFrat, giSqu
aModulatorTri poscil p5, p4*kFrat, giTri
aModulatorImp poscil p5, p4*kFrat, giImp
kres madsr iAtt, iDec, iSus, iRel
aModulator = kMSin*aModulatorSin + kMSaw*aModulatorSaw + kMSqu*aModulatorSqu + kMTri*aModulatorTri + kMImp*aModulatorImp
aCarSin poscil p5, kres*(p4 + kModi*(kres1*aModulator)), giSin
kres1 madsr iAtt, iDec, iSus, iRel
aModulatorSin poscil p5, p4*kFrat, giSin
aModulatorSaw poscil p5, p4*kFrat, giSaw
aModulatorSqu poscil p5, p4*kFrat, giSqu
aModulatorTri poscil p5, p4*kFrat, giTri
aModulatorImp poscil p5, p4*kFrat, giImp
kres madsr iAtt, iDec, iSus, iRel
aModulator = kMSin*aModulatorSin + kMSaw*aModulatorSaw + kMSqu*aModulatorSqu + kMTri*aModulatorTri + kMImp*aModulatorImp
aCarSaw poscil p5, kres*(p4 + kModi*(kres1*aModulator)), giSaw
kres1 madsr iAtt, iDec, iSus, iRel
aModulatorSin poscil p5, p4*kFrat, giSin
aModulatorSaw poscil p5, p4*kFrat, giSaw
aModulatorSqu poscil p5, p4*kFrat, giSqu
aModulatorTri poscil p5, p4*kFrat, giTri
aModulatorImp poscil p5, p4*kFrat, giImp
kres madsr iAtt, iDec, iSus, iRel
aModulator = kMSin*aModulatorSin + kMSaw*aModulatorSaw + kMSqu*aModulatorSqu + kMTri*aModulatorTri + kMImp*aModulatorImp
aCarSqu poscil p5, kres*(p4 + kModi*(kres1*aModulator)), giSqu
kres1 madsr iAtt, iDec, iSus, iRel
aModulatorSin poscil p5, p4*kFrat, giSin
aModulatorSaw poscil p5, p4*kFrat, giSaw
aModulatorSqu poscil p5, p4*kFrat, giSqu
aModulatorTri poscil p5, p4*kFrat, giTri
aModulatorImp poscil p5, p4*kFrat, giImp
kres madsr iAtt, iDec, iSus, iRel
aModulator = kMSin*aModulatorSin + kMSaw*aModulatorSaw + kMSqu*aModulatorSqu + kMTri*aModulatorTri + kMImp*aModulatorImp
aCarTri poscil p5, kres*(p4 + kModi*(kAmpm*kres1*aModulator)), giTri
kres1 madsr iAtt, iDec, iSus, iRel
aModulatorSin poscil p5, p4*kFrat, giSin
aModulatorSaw poscil p5, p4*kFrat, giSaw
aModulatorSqu poscil p5, p4*kFrat, giSqu
aModulatorTri poscil p5, p4*kFrat, giTri
aModulatorImp poscil p5, p4*kFrat, giImp
kres madsr iAtt, iDec, iSus, iRel
aModulator = kMSin*aModulatorSin + kMSaw*aModulatorSaw + kMSqu*aModulatorSqu + kMTri*aModulatorTri + kMImp*aModulatorImp
aCarImp poscil p5, kres*(p4 + kModi*(kres1*aModulator)), giImp
aOutput = kres*kAmpc*(kSin*aCarSin + kSaw*aCarSaw + kSqu*aCarSqu + kTri*aCarTri + kImp*aCarImp)
out aOutput, aOutput
display aOutput, .1, 1
endin
</CsInstruments>
<CsScore>
;causes Csound to run for about 7000 years...
f0 z
</CsScore>
</CsoundSynthesizer>