[sdiy] Top Octave Generator (was Chinese MG-1s??!?)

Veronica Merryfield veronica.merryfield at shaw.ca
Wed Apr 30 23:08:36 CEST 2008


On 30-Apr-08, at 10:57 AM, Eric Brombaugh wrote:
> Veronica Merryfield wrote:
>
>> The way to make this work is not to have 12 dividers but to use a  
>> rolling scheduler.
>
> Very nice approach.
>
>> A little intelligence will be needed to handle events that come  
>> close together.
>
> You said a mouthful there. Traversing the queue to schedule the next  
> instance of the current edge, then fetching the top of the queue to  
> set the timer for the next event is probably going to eat up enough  
> time to make event crowding a very real issue. A fun problem for  
> someone. :)
Since the event set is limited, or perhaps I should say very well  
defined, and although I know there will be occasions where thing will  
get congested, I think it would work, The queue is a simpler problem  
than most queues, again it is limited and well defined, and I think  
there are a number of optimization opportunities.

Also, the description queue here does not mean a linked list. For  
instance, if the event structures had an extra field that is a next  
index, the events could be an array of structures and a single  
'next_index' variable. The rejigging of the queue is about changing  
the times, the next index fields and the next_index. At the times  
where it gets congested, the event edges might be off by a few clocks  
but that should be no real issue and could add to the character or  
effect :) If you wanted to ensure the errors didn't accumulate, you  
can correct for delayed events, again, that happens in ECUs.



More information about the Synth-diy mailing list