I originally posted something about this in the teletype : code exchange but I thought I’d start a separate thread to make things easier to follow.
The general idea here is that I’m trying to develop a quad (possibly octo! via Ansible/expanders) pingable LFO generator on Teletype.
I succeeded at creating very basic pingable Triangle waves with the following script, modified slightly for scripts 1-4 to change outputs and variable names.
Y AVG Y SUB TIME X
CV.SLEW 1 DIV Y 2
DEL DIV Y 2 : CV 1 0
DEL DIV Y 2 : TR.PULSE 1
PARAM controls the LFO amount, but now I’m trying to get PARAM to control the LFO shape. Essentially I just want to morph the triangle into a sawtooth as I turn either direction past 12 o clock.
I can’t for the life of me figure out how to get this simple concept into few enough characters that it will fit in a single script.
Y AVG Y SUB TIME X
Z SCALE 0 V 10 0 Y PARAM
CV.SLEW 1 Z
DEL Z : CV.SLEW 1 SUB Y Z
DEL Z : CV 1 0
Even while removing the (very useful) trigger when the LFO is high, I’m still stuck with 7 lines of code… can anyone help me get this down to 6 lines? Looks like this would solve my problem – but I feel like I should be able to accomplish this with some clever arithmetic
I have some thoughts about implementing function generators within teletype, but I fear that their usefulness is going to be limited at the moment by the CV update rate. The stepping is notable to my ears, especially when patched into something like the Rossum Morpheus, where alias jumps on the modulation inputs can produce clicks.
The Telex expanders add this type of functionality… as does Ansible via Arc. I’m not sure TT is the right place for full on function generators, it feels like it’s starting to stray too far from what TT is all about. It feels more right to use TT to trigger something like a Function or Pip Slope in an interesting or generative way.