[sdiy] MIDI too fast?
Colin f
colin at colinfraser.com
Tue Jun 15 20:09:37 CEST 2010
> It plays the note for a fraction of a second. It's just an
> audible hiccup, barely recognizable as the note. I'd say less
> than 10ms of on time then silence.
I've seen similar problems to this in other old synths.
I think the issue is one of poor programming practice.
There needs to be some code to allocate voices, some code to receive MIDI
notes and some code to scan the keyboard.
If you are going to allocate voices to the combination of the notes played
on the keyboard and received by MIDI, then the simplest way to do it is to
have the MIDI receive code write into some status variables that are then
read by then read by the voice allocation code - the voice allocation being
called at the end of the keyboard scan loop.
This has the effect that MIDI reception is 'quantised' to the keyboard scan
interval.
That is *bad* for latency, as well as poor response to very short notes.
My Jupiter 8 with Groove MIDI takes several milliseconds to respond to a
note on, and misses any rapid note on-then-offs, or off-then-ons shorter
than that time too.
But if you want faster response, you'll need to re-write the voice
allocation code to be re-entrant, and thereby callable from both the MIDI
reception IRQ and the keyboard scan routine.
Cheers,
Colin f
More information about the Synth-diy
mailing list