300 MIDI Implementation Details
300
Digital Effects
System
MIDI
Implementation
Details
41
300 MIDI Implementation Details |
Lexicon |
SysEx Protocol
Received Messages
and Responses
Generic System Exclusive Message Format
Value |
Description |
|
|
F0 |
System Exclusive ID |
|
|
06 |
Lexicon ID |
|
|
03 |
M300 ID |
|
|
0ccc nnnn |
c = Message Class |
|
|
|
0 |
= Active Bulk Data |
|
|
1 |
= Stored Bulk Data |
|
|
2 |
= Parameter Data |
|
|
3 |
= Event Data |
|
|
4 |
= Request Data |
(Receive Only) |
|
5 |
= Response Data |
(Transmit Only) |
|
6 |
= Display Data |
(MacIntosh GUI) |
|
n = Midi Chnl |
|
|
0sss dddd |
Subclass, Domain |
|
|
0xxx xxxx... |
(Various Data Bytes) |
|
|
F7 |
End of System Exclusive |
|
|
|
|
|
|
2
300 MIDI Implementation Details
Active Bulk Data Format
I/O format used to transmit and receive bulk data in active use.
Value |
Description |
|
F0 |
M300 System Exclusive Header |
|
06 |
|
|
03 |
|
|
0000 nnnn |
Active Bulk Data Class, Midi Chnl |
|
0sss dddd |
0x02 |
- V1.02 Active Setup |
|
0x03 |
- V1.02 Active Effect |
|
0x10 |
- V1.02 Active Table |
|
0x20 |
- V1.02 Active Event List |
|
0x32 |
- V3.00 Active Setup |
|
0x33 |
- V3.00 Active Effect A |
|
0x34 |
- V3.00 Active Effect B |
|
0x40 |
- V3.00 Active Table |
0iii iiii |
Index |
|
0x00 - 0x7F: Table Entry |
1 - 128 |
|
0x00 - 0x31: EList Entry |
1 - 50 |
|
0ccc cccc |
Data Byte Count (# Nibblized Pairs + 4) |
|
0000 xxxx |
Nibblized Data Byte Pairs, LSB First |
|
0000 xxxx |
|
|
0B, 09, 06, 0D |
Bulk Data Flag |
|
0B, 06, 09, 0D |
|
|
0sss ssss |
Data Checksum |
|
F7 |
End of System Exclusive |
|
|
|
|
3
300 MIDI Implementation Details |
Lexicon |
Stored Bulk Data Format
I/O format used to transmit and receive user register bulk data.
Value |
Description |
F0 |
M300 System Exclusive Header |
06 |
|
03 |
|
0001 nnnn |
Stored Bulk Data Class, Midi Chnl |
0sss dddd |
0x00 - V1.02 Stored Setup |
|
0x10 - V1.02 Stored Effect |
|
0x20 - V3.00 Stored Setup |
|
0x30 - V3.00 Stored Effect |
|
0x40 - V3.00 Preset Setup |
|
0x50 - V3.00 Preset Effect |
0iii iiii |
Index |
0x00 - 0x63: Presets |
1 - 100 |
0x00 - 0x7F: Registers |
1-28 |
0ccc cccc |
Data Byte Count (# Nibblized Pairs + 4) |
0000 xxxx |
Nibblized Data Byte Pairs, LSB First |
0000 xxxx... |
|
0B, 09, 06, 0D |
Bulk data flag |
0B, 06, 09, 0D |
|
0sss ssss |
Data checksum |
F7 |
End of System Exclusive |
|
|
4
300 MIDI Implementation Details
Parameter Data Format
I/O format used to transmit and receive sysex param automation data.
Value |
Description |
|
F0 |
M300 System Exclusive Header |
|
06 |
|
|
03 |
|
|
0010 nnnn |
Parameter Data Class, Midi Chnl |
|
0sss dddd |
s = Subclass |
|
|
0 |
= Param Value |
|
1 |
= Param Limit |
|
2 |
= Param Count |
|
d = Domain |
|
|
0 |
= Utility |
|
1 |
= Run |
|
2 |
= Setup |
|
3 |
= Effect A |
|
4 |
= Effect B |
|
5 |
= Modulation A |
|
6 |
= Modulation B |
0nnn nnnn |
Parameter Number |
|
0x00 - 0x21: Param 1-34 |
|
|
NOTE: The param count is domain dependent. Out of range parameter numbers will be ignored.
0vvv vvvv |
Parameter Value, LSB |
0vvv vvvv |
Parameter Value, MSB |
F7 |
End of System Exclusive |
5
300 MIDI Implementation Details |
Lexicon |
Event Data Format
I/O format used to transmit and receive sysex event automation data.
Value |
Description |
|
F0 |
M300 System Exclusive Header |
|
06 |
|
|
03 |
|
|
0011 nnnn |
Event Data Class, Midi Chnl |
|
0sss dddd |
s = Subclass |
|
|
0 |
= Enqueue Event |
|
d = Domain |
|
|
0 |
= Utility |
|
1 |
= Run |
|
2 |
= Setup |
|
3 |
= Effect A |
|
4 |
= Effect B |
|
5 |
= Modulation A |
|
6 |
= Modulation B |
0nnn nnnn |
Event Number |
|
|
0x00 - 0x7F: Event 1 - 128 |
|
0vvv vvvv |
Event Data, LSB |
|
0vvv vvvv |
Event Data, MSB |
|
F7 |
End of System Exclusive |
|
|
|
|
6
300 MIDI Implementation Details
Request Data Format
Receive only format.
Value |
Description |
F0 |
M300 System Exclusive Header |
06 |
|
03 |
|
0100 nnnn |
Request Data Class, Midi Chnl |
0sss dddd |
s = Subclass |
0ooo oooo |
0 = Request Data |
|
d = Domain |
|
0x00/0x00 - All Preset Setups |
|
0x00/0x01 - All Preset Effects |
|
0x00/0x02 - All Stored Setups |
|
0x00/0x03 - All Stored Effects |
|
0x00/0x04 - Preset Setup |
|
0x00/0x05 - Preset Effect |
|
0x00/0x06 - Stored Setup |
|
0x00/0x07 - Stored Effect |
|
0x02/0x08 - Active Setup |
|
0x03/0x09 - Active Effect A |
|
0x04/0x09 - Active Effect B |
|
0x00/0x0A - Map Table |
|
0x00/0x0B - Map Table Entry |
|
0x00/0x0C - Event List |
|
0x00/0x0D - Event List Entry |
|
0x0n/0x0E - Param Value |
|
n = Domain (As Specified Above) |
|
0x0n/0x0F - Param Limit |
|
0x0n/0x10 - Param Count |
|
0x0n/0x11 - Param Name String (S) |
|
n = Domain (3 or 4) |
|
0x0n/0x12 - Param Name String (L) |
|
0x0n/0x13 - Param Value String (S) |
|
0x0n/0x14 - Param Value String (L) |
|
0x00/0x15 - Setup ID |
|
0x03/0x16 - Effect A ID |
|
0x04/0x16 - Effect B ID |
|
0x00/0x17 - System Data |
|
0x00/0x18 - Preset Effect Data |
|
0x00/0x19 - Stored Effect Data |
|
0x03/0x1A - Active Effect A Data |
|
0x04/0x1A - Active Effect B Data |
0vvv vvvv |
Register/Entry/Param#, LSB |
|
(Opcodes: 4-7, 11, 13-20, 24-25) |
0vvv vvvv |
Register/Entry/Param#, MSB |
F7 |
End of System Exclusive |
|
|
7
300 MIDI Implementation Details |
Lexicon |
Response Data Format
Transmit only format.
Value |
Description |
|
F0 |
M300 System Exclusive Header |
|
06 |
|
|
03 |
|
|
0101 nnnn |
Response Data Class, Midi Chnl |
|
0sss dddd |
s = subclass |
|
0ooo oooo |
Response Data Opcode |
|
|
0x0n/0x12 - Param Name String (L) |
|
|
0x0n/0x13 - Param Value String (S) |
|
|
0x0n/0x14 - Param Value String (L) |
|
|
0x00/0x15 - Setup ID |
|
|
0x03/0x16 - Effect A ID |
|
|
0x04/0x16 - Effect B ID |
|
|
0x00/0x17 - System Data |
|
|
0x00/0x18 - Preset Effect Data |
|
|
0x00/0x19 - Stored Effect Data |
|
|
0x03/0x1A - Active Effect A Data |
|
|
0x04/0x1A - Active Effect B Data |
|
|
0x30/0x1B - Active Meter DataD |
|
|
0x7F - NACK |
(Unrecognized Request) |
0xxx xxxx |
Various Data Bytes, Opcode Dependent. |
|
F7 |
End of System Exclusive |
|
|
|
|
Param String Request - Response |
|
|
(Opcode 17 - 20) Data Format: |
|
|
|
|
|
Value |
Description |
|
0nnn nnnn |
Parameter Number |
|
|
0x00 - 0x7F: Param 1 - 128 |
|
0sss ssss |
String Length (Including Null) |
|
0ccc cccc |
ASCII Char #1 |
|
0ccc cccc |
ASCII Char #n |
|
|
|
|
8
300 MIDI Implementation Details
Register ID Request
Response (Opcode 21, 22) Data Format:
Value |
Description |
0000 000t |
Register Type |
|
0 - Preset |
|
1 - Stored |
0iii iiii |
Index |
|
0x00 - 0x7F: Registers 1 - 128 |
|
|
System Data Request
Response (Opcode 23) Data Format:
Byte Number |
Description |
1 |
Max Setup Preset Registers |
2 |
Max Setup Stored Registers |
3 |
Max Effect Preset Registers |
4 |
Max Effect Stored Registers |
5 |
Max Config Programs |
6 |
Max Effect Programs |
7 |
Max Effect Parameters |
8 |
Max Effect Patches |
|
|
Register Param Data Request
Response (Opcode 24 - 26) Data Format:
Value |
Description |
0iii iiii |
Register Index |
|
0x00 - 0x7F: Registers 1 - 128 |
0nnn nnnn |
Register Param Count |
|
0x00 - 0x21: Params 1 - 34 |
0ccc cccc |
Data Byte Count (# Nibblized Pairs + 4) |
0000 xxxx |
Nibblized Data Byte Pairs, LSB First |
0000 xxxx |
|
0B, 09, 06, 0D |
Bulk data flag |
0B, 06, 09, 0D |
|
0sss ssss |
Data checksum |
|
|
9
300 MIDI Implementation Details |
Lexicon |
Unnibblized Bulk Param Data Format
Byte Number |
Description |
1 |
Param Index |
|
0x00 - 0x21: Params 1 - 34 |
2 |
Status |
|
0 - Inactive |
|
1 - Alg Param |
|
2 - I/O Param |
3 |
Limit LSB |
4 |
Limit MSB |
5-9 |
Short Name String ( 4 chars + 1) |
10-30 |
Long Name String (20 chars + 1) |
31 |
Disp Type |
|
|
Active Meter Data - Response |
|
(Opcode 27) Data Format: |
|
|
|
Value |
Description |
0aaa aaaa |
L Meter Value LSB |
0bbb bbbb |
L Meter Value MSB |
0ccc cccc |
R Meter Value LSB |
0ddd dddd |
R Meter Value MSB |
|
|
10
300 MIDI Implementation Details
Display Data Format
MacIntosh GUI support format.
Value |
Description |
|
F0 |
M300 System Exclusive Header |
|
06 |
|
|
03 |
|
|
0110 nnnn |
Display Data Class, Midi Chnl |
|
0sss dddd |
s = Subclass |
|
|
0 |
- Front Panel |
|
d = Domain |
|
|
0 |
- Utility |
0ooo oooo |
Display Data Opcode |
|
|
0 |
= Display String |
|
1 |
= Display Underline |
|
2 |
=Display Blink |
|
3 |
= Clear String |
|
4 |
= Clear Attributes |
0xxx xxxx |
Various Data Bytes, Opcode Dependent. |
|
F7 |
End of System Exclusive |
|
|
|
|
Display String |
|
|
Display (Opcode 0) Data Format: |
|
|
|
|
|
Value |
Description |
|
0nnn nnnn |
Starting Position |
|
|
0x00 - 0x27: Column 0 - 39 |
|
0sss ssss |
String Length (Including Null) |
|
0ccc cccc |
ASCII Char #1 |
|
0ccc cccc |
ASCII Char #n (Max = 40 chars) |
|
|
|
|
Display String - Display |
|
|
(Opcode 1 - 2) Data Format: |
|
|
|
|
|
Value |
Description |
|
0nnn nnnn |
Starting Position |
|
|
0x00 - 0x27: Column 0 - 39 |
|
0sss ssss |
Character Count |
|
|
|
|
11
300 MIDI Implementation Details |
Lexicon |
Unnibblized Bulk Data Setup Register Format (V1.02)
Byte Number |
Description |
|
1 - 12 |
Setup Name (ASCII) |
|
13 |
0 |
|
14 |
Effect A Number |
|
|
0x00 - 0x4A: Presets 1-75 |
|
|
0x4B - 0x7F: Registers 1-53 |
|
|
0x8B : Available |
Note: Registers 54 - 64 are ignored.
15 |
Effect B Number |
|
|
|
0x00 - Inactive |
|
|
16 |
Single Machine Input Config |
|
|
|
0 =Analog |
|
|
|
1 =Digital |
|
|
|
2 =Ana+Dig |
|
|
17 |
Misc Setup Params |
|
|
|
Bits |
Param |
|
|
7-6 |
Left Meter Assignment |
|
|
|
0 |
=ANA-IN |
|
|
1 |
= DIG-IN |
|
|
2 |
= FX-OUT |
|
Bits |
Param |
|
|
5-4 |
Analog Sample Rate |
|
|
|
0 |
- 48kHz |
|
|
1 |
- 44.1kHz |
|
Bits |
Param |
|
|
3-2 |
Right Meter Assignment |
|
|
|
0 |
- ANA-IN |
|
|
1 |
- DIG-IN |
|
|
2 |
- FX-OUT |
|
Bits |
Param |
|
|
1-0 |
Digital Input Connector |
|
|
|
0 |
= XLR |
|
|
1 |
= RCA |
|
|
2 |
= Optical |
18 |
Misc Setup Params |
|
|
|
Bit |
Param |
|
|
6 |
Digital Copy Protection |
|
|
|
0 |
= No-Copy |
|
|
1 |
= One-Copy |
|
Bit |
Param |
|
|
5 |
Analog Emphasis |
|
|
|
0 |
= Off |
|
|
1 |
= On |
|
Bit |
Param |
|
|
4 |
Digital Emphasis |
|
|
|
0 |
-=Off |
|
|
1 |
= On |
|
Bit |
Param |
|
|
0 |
Digital Output Format |
|
|
|
0 |
= SPDIF (EIAJ-340) |
|
|
1 |
= AES |
12
300 MIDI Implementation Details
Unnibblized Bulk Data Setup Register Format (V3.00)
Byte Number |
Description |
|
|
1-12 |
Setup Name (ASCII) |
|
|
13 |
0 |
|
|
14 |
Effect A Number |
|
|
|
0x00 - 0x63: Presets 1 - 100 |
||
|
0x64 - 0x95: Registers 1 - 50 |
||
15 |
Effect B Number |
|
|
|
0x00 - 0x63: Presets 1 - 100 |
||
|
0x64 - 0x95: Registers 1 - 50 |
||
16 |
Setup Machine Config/Routing |
||
|
Bits |
Param |
|
|
7-6 |
Machine Config |
|
|
|
0 |
= Single |
|
|
1 |
= Dual Mono |
|
|
2 |
= Cascade A->B |
|
|
3 |
= Cascade B->A |
|
5-4 |
LFO Shape |
|
|
|
0 |
- Sine |
|
|
1 |
- Triangle |
|
|
2 |
- Square |
|
|
4 |
- Random |
|
3-2 |
Left Meter Assignment |
|
|
|
Single |
|
|
|
0 |
=ANA-IN |
|
|
1 |
=DIG-IN |
|
|
2 |
= FX-OUT |
Dual Mono
0=LCH-IN
1= RCH-IN
2=LFXOUT
|
|
Cascade |
|
|
|
0 |
= INPUT |
|
|
1 |
= MID-PT |
|
|
2 |
= OUTPUT |
|
1-0 |
Right Meter Assignment |
|
|
|
Single |
|
|
|
0 |
= ANA-IN |
|
|
1 |
= DIG-IN |
|
|
2 |
= FX-OUT |
|
|
Dual Mono |
|
|
|
0 |
= LCH-IN |
|
|
1 |
= RCH-IN |
|
|
2 |
= RFXOUT |
|
|
Cascade |
|
|
|
0 |
= INPUT |
|
|
1 |
= MID-PT |
|
|
2 |
= OUTPUT |
17 |
Softknob |
|
|
|
0x00 - 0x7F: MIDI Controller Value |
||
18 |
LFO Rate |
|
|
13