[sdiy] Top Octave Generator
Tom Wiltshire
tom at electricdruid.net
Thu May 1 12:23:39 CEST 2008
On 1 May 2008, at 02:01, Veronica Merryfield wrote:
> I suspect you could probably roll any differences of 3 to 4 cycles
> say together thus reducing the table size. Now if these micros
> could have an instruction 'stall Rs' that stalled the micro for a
> number of clocks, the code would be very simple - just walk an
> index down a table outputting the word from one table, waiting the
> amount in the other table then incrementing the index. The table of
> time differences could have the code execution time for the loop
> removed hence the adding events together.
>
> I am surprised it was as little as 5820 distinct events. So, about
> 15KB for the data table and a hand full for the code. Neat.
I found a mistake in my table. It's pretty obvious.
I started the run at the point at which every output is low, and
everything goes high on the first clock edge.
I stopped the list when I returned to the state at which I started -
eg all zeros.
But the mistake is that that state can arise without all the counters
being back at zero. In fact, it's much more likely to arise when the
counters *aren't* all back at zero. So I corrected it and am redoing
the list.
The original faulty version is still here:
http://www.electricdruid.com/TopOctave.html
Only trouble is, now it's a *really* long list (100,000 events and
counting...), so a uP solution is looking less likely. If its not a
huge download, I'll put the corrected one up as TopOctave2.html.
Sorry to get your hopes up!
T.
More information about the Synth-diy
mailing list