M-Audio black box User Manual page 28

Hide thumbs Also See for black box:
Table of Contents

Advertisement

14-Segment Character Codes
typedef enum
{
_SP = 0,
_0, _1, _2, _3, _4, _5, _6, _7, _8,_9, _DASH,
_A, _B, _C, _D, _E, _F, _G, _H, _I, _J, _K, _L, _M,
_N, _O, _P, _Q, _R, _S, _T, _U, _V, _W, _X, _Y, _Z,
_ASTERISK, _PLUS, _LEFT_PAREN, _RIGHT_PAREN, _BACK_SLASH, _SLASH,
_APOSTROPHE, _LEFT_ARROW, _RIGHT_ARROW, _QUESTION, _UNDERSCORE,
_LEFT_SQ_BRACKET, _RIGHT_SQ_BRACKET, _b,
_14_SEG_END,
} FOURTEEN_SEG_CHARS;
7-Bit Data Packing
The general data packing scheme for preset data dumps groups 7 bytes of data, stripping off the MS bit of each, and packing these
MS bits into an additional byte. 7 bytes of internal memory yields 8 bytes of MIDI data.
Assuming 7 bytes of memory data are:
0: AAAAaaaa . . . . . . . . . Memory byte 0
1:
BBBBbbbb . . . . . . . . . Memory byte 1
2: CCCCcccc . . . . . . . . . Memory byte 2
3: DDDDdddd . . . . . . . . Memory byte 3
4: EEEEeeee . . . . . . . . . . Memory byte 4
5: FFFFffff . . . . . . . . . . . . Memory byte 5
6: GGGGgggg . . . . . . . . Memory byte 6
Then it is sent over MIDI with the MS bits first as follows:
0: 0GFEDCBA . . . . . . . . . Packed MS bits
1:
0AAAaaaa . . . . . . . . . MIDI Data Bytes
2: 0BBBbbbb
3: 0CCCcccc
4: 0DDDdddd
5: 0EEEeeee
6: 0FFFffff
7: 0GGGgggg
Note that fewer than 7 bytes can be sent, and the unused MS bits will be set to zero. For example, if two bytes are sent:
Assuming 2 bytes of memory data are:
0: AAAAaaaa . . . . . . . . . Memory byte 0
1:
BBBBbbbb . . . . . . . . . Memory byte 1
Then it is sent over MIDI as a three byte sequence, with the MS bits first as follows:
0: 000000BA . . . . . . . . . Packed MS bits
1:
0AAAaaaa . . . . . . . . . MIDI Data Bytes
2: 0BBBbbbb
30

Advertisement

Table of Contents
loading

Table of Contents