> > Maybe the current tempo map could do with some tweaking though. > > What tempo ranges do people use ? > lowest i would ever use would be around 130, highest about 200. > grtz Chiel So the general consensus seems to be - we all use different tempos ! Anyway... in the firmware version I'm working on, I've ripped out the lookup tables for the 16 bit timer values for each tempo, and replaced it with a routine to calculate the timer value from the tempo value directly. The divide routine uses the same ROM space as the lookup tables, so the code size is the same. The tempo value is now held as the 'real' number i.e. the tempo in BPM. Before it was held as an index to the lookup tables. There is still a lookup table to hold the real tempo value for each position on the tempo pot, since the tempo pot only has 128 positions. I have spread the map out a bit - it now runs from 30 to 253 BPM. 30 is the minimum possible with the timer, 253 just happened to be where I got to with the new spacing. The maximum that could be held in the tempo variable is 255 anyway. The extra resolution will be provided by the fact the the tempo value is multiplied by 10 before it is passed to the 'calculate timer' routine. So I can easily add a 'fine tempo adjust' variable that will be added to the 10x integer tempo value when the clock period is calculated - giving the fine tune value a resolution of 0.1 BPM. The question now is how to make this value accessible through the UI. I was thinking of making FUNC+data adjust the tempo fine tune over a range of 0 to 5 BPM, in 0.1 BPM steps, very much like the fine tempo control on a TR808. This will fill in the 'gaps' between the integer tempo values for those of you who need to fine tune to the tempo to an audio sample, but can be ignored by the rest who are happy with tempo adjustment in 1 BPM steps (or 2 and 4 BPM steps as you approach the limits). Cheers, Colin f
Message
RE: [analogue-sequencer] Re: little weirdnesses
2004-06-06 by Colin f
Attachments
- No local attachments were found for this message.