Reply To: Yamaha TG33 panel

Home Forums General Panels, Components, Macros Yamaha TG33 panel Reply To: Yamaha TG33 panel

Paul Scheidt
  • Topics: 2
  • Replies: 11
  • Total: 13

So for sustain, there’s a lot of weird choices on parameter scales everywhere in the TG33. All of the volume parameters (including the envelope levels) are log-scale functions but implemented with linear-scale SysEx. So if I want to represent them visually in Ctrlr, I have to translate the linear-scale SysEx into log-scale. For example, level 99 is max volume but level 90 is significantly quieter. Things below level 80 get hard to hear at all.

I’ve got no way to “prove” what’s going on, so I had to tweak the envelope graphs based on making changes and listening to the result. And having done these trials, I can tell you that there’s a lot of non-linearity going on. The TG33 is capable of some REALLY long envelope shapes, so the graph display actually scales (“zooms out” if you will) if the shape goes longer than the default settings.

All the code for the envelope graphs is in the DrawEnv functions. I tried to put in some notes in that code to make it easier to understand what’s going on, including the scaling and the linear-to-non-linear translations. It’s been a little while since I wrote all that, so I can’t remember all of it off the top of my head.

And VSTIndex seems to be the only reliable way to figure out which modulator called a function so I don’t have to create a bunch of duplicate functions. The getName function returns userdata type data and not string type data, which I find very frustrating. So VSTIndex it is…