back to list

byte order again

🔗X. J. Scott <xjscott@earthlink.net>

7/20/2001 7:54:10 PM

> Your thoughts on Continuous Controllers sound good. I've
> gotta go back and refresh my memory on MSB/LSB order; the LSB
> comes last, right?

Hey John,

I just realized we're thinking of two slightly
different things. Yes, LSB comes last if using a 14bit
CCs 0-31 (MSB) / 32-63 (LSB).

Most (all?) synths treat all of these as separate 7bit
controllers though.

(Open question: Do any instruments use 14 bit CCs and
do any sequencers provide support for editing them as
14 bit values??)

--

The MSB/LSB I was speaking of is the [N]RPN MSB/LSB
which are found at CCs #98-101. They work differently
from the 14bit controllers.

The 14bit controllers all represent data and whatever
value you send is instantly updated.

The [N]RPNs editing happens only when the data is
changed using CCs 6,38,96 or 97.

Before you send the data byte[s], you select the
parameter # with CCs 98/99 for RPNs and 100/101
for NRPNs. Here the order is irrelevant because the
edit does not accur until the data arrives. The
comments I made in the last message still apply.

The tricky part is that if you are sending a lot of
[N]RPN edits to an instrument in a sequence, the [N]RPN
edits might get interleaved and so each message needs
to be atomicized (made into a single unit) so that the
messages don't get scrambled. It's a lot easier to
handle this if the sequencer understands what [N]RPN
messages are and doesn't treat them like just another
CC.

- Jeff