twistedelectrons / TherapSID

Other
35 stars 5 forks source link

Wavetable support #61

Open thomasj opened 1 year ago

thomasj commented 1 year ago

Background

A very common way of making complex SID instruments back in the days were to rapidly switch waveforms at the speed of the tick (50Hz). As the #60 demo shows, the device itself has the power to do it. It would be quite cool to have some kind of support for this on the machine.

Describe alternatives you've considered

I have not yet a solid idea about how it should be done, but main thinking is to have two options:

This will all take more patch storage memory than available, so probably the number of stored presets need to go down a bit if this gets realised.

Next steps

I will make a proof-of-concept and come back to this issue!

Sequence7 commented 1 year ago

This is something I thought could not be accomplished much like the ASID. This is as you know were midibox mb6582 and sidstation are strong. Hard to implement with the lcd on therapsid but I have faith. So excited about therapsid potential

twisted-electrons commented 1 year ago

Hi, this would be fun indeed. I don't think losing 20-30 presets would be a big sacrifice if we gain a richer palette. Another method that comes to mind is holding a button (say filter mode) and inputting a series of waveform presses to define the wavetable.... Might be more immediate (and less "data entry") than shifting through steps...

twisted-electrons commented 1 year ago

This Wavetable magic could be extended to the LFO too...

Sequence7 commented 1 year ago

It would also hold pitch. Pwm sync. Ring etc in these steps. So not just waveshapes @twisted-electrons think like how an elektron can hold every parameter per step. But at 50 times a second. I believe that is Thomas's intention. To make it truly capable of sounds a native c64 tracker can do like the tracks in the ASID demonstration.

thomasj commented 1 year ago

Yes, exactly - each step could contain multiple things, a bit depending on what is most useful and fits in terms of memory/processing power. Some steps might be affected by incoming pitch, some won't etc.