<bank#> = 0..15 selects any bank in the A6, where:
0 = USER
1 = PRESET1
2 = PRESET2
3-15 = CARD BANKS (MAX number depends on size of card)
<program#>= 0..127 selects individual programs from within bank
<data> is in a packed format in order to optimize data transfer. Eight MIDI bytes are used to
transmit each block of 7 A6 data bytes. If the 7 data bytes are looked at as one 56-bit word, the
format for transmission is eight 7-bit words beginning with the most significant bit of the first byte,
as follows:
<bank#> = 0..15 selects any bank in the A6, where:
0 = USER
1 = PRESET1
2 = PRESET2
3-15 = CARD BANKS (MAX number depends on size of card)
<program#> = 0..127 selects individual user programs
When received, the A6 will respond to this message with a MIDI program dump (00) of the
<bank#> = 0..15 selects any bank in the A6, where:
0 = USER
1 = PRESET1
2-15 = CARD BANKS (MAX number depends on size of card)
<mix#> = 0..127 selects individual mixes in bank
<data> is in the same format as described in 00, but with a different number of bytes due to the
difference in the mix parameters. The total number of data bytes sent for a single mix dump is
1171, which corresponds to 1024 bytes of mix data. With the header, the total number of bytes
transmitted with a program dump is 1180.
For librarian purposes, it is often useful to rename a patch ‘offline.’ The bytes involved, in a 1024-
byte unpacked patch, useful for this purpose are as follows:
Byte 0-1: Patch Version Number: Currently B6h 0Ah
Byte 2-17: 16 Character Name stored in ASCII format
<bank#> = 0..15 selects any bank in the A6, where:
0 = USER
1 = PRESET1
2-15 = CARD BANKS (MAX number depends on size of card)
<mix#> = 0..127 selects individual mixes in bank
When received, the A6 will respond to this message with a MIDI Mix dump (04) of the mix
When received, the A6 will respond to this message with a MIDI mix edit buffer dump (06) of the
edited mix. In the current OS, there is only one mix edit buffer, hence the command is shown with
00 as the edit buffer.
08 - MIDI Global Data Dump F0 00 00 0E 1D 08 <data> F7
<data> is in the same format as described in 00, but with a different number of bytes due to the
difference in the global parameter size. The total number of data bytes sent for a global data dump
is 15904, which corresponds to 18176 bytes of global data. With the header, the total number of
bytes transmitted with a program dump is 18183.
09 - MIDI Global Data Dump Request F0 00 00 0E 1D 09 00 F7
When received, the A6 will respond to this message with a MIDI global data dump (08).
0A - MIDI Program Bank Request F0 00 00 0E 1D 0A <bank#> F7
<bank#> = 0..15 selects any bank in the A6, where:
0 = USER
1 = PRESET1
2 = PRESET2
3-15 = CARD BANKS (MAX number depends on size of card)
When received, the A6 will respond to this message with 128 MIDI Program Dumps (00), sent
This command is will dump out MIDI all data stored in the non-volitile RAM within the A6. When
received, the A6 will respond to this message with a 128 MIDI Program dumps (00) from the User
bank, 128 MIDI Mix dumps (04) from the User bank, and a Global data dump (08), for a total of
470023 MIDI bytes.
0D - MIDI Mode Select F0 00 00 0E 1D 0D <mode> F7
<mode> = 0 = Program mode; 1 = Mix mode
When received, the A6 will change to the mode that was selected. The settings will be retained
<parent page> = The parent page of the parameter to be edited
<child ID> = child ID of parameter to be edited
<data2> = Mix channel number and most significant bits (bits 14-16) of parameter’s data
<data1> = Bits 7-13 of parameter’s data
<data0> = Least significant bits (bits 0-6) of parameter’s data
All parameters to be edited must be sent in this format (12 MIDI bytes), regardless of the number
of bits required to transmit the value of the parameter. When the A6 receives this message, it will
change the specified parameter in the specified mix channel to the new data value. The mix
channel number is specified in <data2> with the format 0xxx xyyy, where xxxx is the mix channel
number (0-15) and yyy are the uppermost bits (bits 14-16) of the parameter data. In program
mode, the mix channel number is ignored and the edit will be applied to the program edit buffer
and A6’s screen will show the result of the edit. In mix mode, the result of the edit will be shown
only if the edit occurred in the currently selected mix channel on the A6. If the edit happened to a
mix channel not currently selected on the A6, the edit will still occur, but it won’t be displayed.
The parameter data is a 17-bit number 2’s complement signed number.
If the parent page and child ID selected does not exist in the current configuration, the command
will be ignored. The function and page numbers for each parameter are shown in the next section.
The following specific parameter information shows the locations in which each Program parameter resides
after unpacking the data from its 7 bit MIDI format into the 8 bit format as described in Opcode 00, Program
Data Dump.
A6 Program Description 09/13/2001
Byte Offset Description Range
0-1 Key describing program structure.
MSB is always 0xA6,
LSB is version number of program. 10 = Version 1.0 MSB=0xA6, LSB=0x0A ushort
2-17 Program Name ASCII char
18-105 Actual ASIC Control Values for Initial Condition Do not Modify ushort
106-107 Reserved Do not Modify char
108-111 Actual ASIC Switch Values for Initial Condition Do not Modify uint
112-115 Actual ASIC Switch Values for Initial Condition Do not Modify uint
Mod Route 1:
116-117 Mod 1 Percentage -32768 to +32767 short
118-119 Mod 1 Offset Amount -32768 to +32767 short
120-121 Mod 1 Control Percentage -32768 to +32767 short
122 Mod 1 Source 0-255 byte
123 Mod 1 Destination 0-255 byte
124 Mod 1 Control Source 0-255 byte
125:0 Mod 1 Enable/Disable 0-1 byte
125:1 Mod 1 Polarity 0-1
125:2-7 Reserved n/a
126-131 Reserved n/a byte
132-147 Mod Route 2: See Mod Route 1
148-163 Mod Route 3: See Mod Route 1
164-179 Mod Route 4: See Mod Route 1
180-195 Mod Route 5: See Mod Route 1
196-211 Mod Route 6: See Mod Route 1
212-227 Mod Route 7: See Mod Route 1
228-243 Mod Route 8: See Mod Route 1
244-259 Mod Route 9: See Mod Route 1
260-275 Mod Route 10: See Mod Route 1
276-291 Mod Route 11: See Mod Route 1
292-307 Mod Route 12: See Mod Route 1
308-323 Mod Route 13: See Mod Route 1
324-339 Mod Route 14: See Mod Route 1
340-355 Mod Route 15: See Mod Route 1
356-371 Mod Route 16: See Mod Route 1
372-387 Mod Route 17: See Mod Route 1
388-403 Mod Route 18: See Mod Route 1
404-419 Mod Route 19: See Mod Route 1
420-435 Mod Route 20: See Mod Route 1
436-451 Mod Route 21: See Mod Route 1
452-467 Mod Route 22: See Mod Route 1
468-483 Mod Route 23: See Mod Route 1
484-499 Mod Route 24: See Mod Route 1
500-515 Mod Route 25: See Mod Route 1
516-531 Mod Route 26: See Mod Route 1
532-547 Mod Route 27: See Mod Route 1
548-563 Mod Route 28: See Mod Route 1
564-579 Mod Route 29: See Mod Route 1
580-595 Mod Route 30: See Mod Route 1
596-611 Mod Route 31: See Mod Route 1
612-627 Mod Route 32: See Mod Route 1
628-643 Mod Route 33: See Mod Route 1
644-659 Mod Route 34: See Mod Route 1
660-675 Mod Route 35: See Mod Route 1
676-691 Mod Route 36:
692-947 Reserved n/a
948-949 Filter 1 Level -32768 to +32767 short
950-951 Panning for Main Outs -32768 to +32767 ushort
952-953 Panning for Aux 1 and 2 Outs -32768 to +32767
954-955 Reserved n/a
956-957 Panning for Digital FX Send -32768 to +32767
958-959 Oscillator 1 Semitone -32768 to +32767 short
960-961 Oscillator 1 Cents -32768 to +32767 short
962-963 Oscillator 1 Fine -32768 to +32767 short
964-965 Oscillator 2 Semitone -32768 to +32767 short
966-967 Oscillator 2 Cents -32768 to +32767 short
968-969 Oscillator 2 Fine -32768 to +32767 short
970-971 Reserved n/a char
Tracking Gen:
972-1031 Tracking Generator Slope Values (15 4-byte values) 0-15 uint
1032-1035 Reserved n/a
1036-1067 Tracking Generator Y Values (16 2-byte values) -32768 to +32767 short
1068-1099 Tracking Generator X Values (16 2-byte values) -32768 to +32767 short
1100-1101 Tracking Generator Percentage -32768 to +32767 short
1102-1103 Tracking Generator Offset -32768 to +32767 short
1104 Tracking Generator Source 0-255 byte
1105:0 Tracking Generator Ramp/Step 0-255 byte
1105:1 Tracking Generator Enable 0-255 byte
1105:2-7 Reserved n/a
1106 Tracking Generator Size
1107-1115 Reserved n/a byte
LFO 1:
1116-1119 LFO 1 Multiplier 1 Do not Modify uint
1120-1123 LFO 1 Multiplier 2 Do not Modify uint
1124-1127 LFO 1 Sine Multiplier Do not Modify uint
1128-1129 LFO 1 Start Phase ushort
1130-1131 LFO 1 Amplitude ushort
1132-1133 LFO 1 Period ushort
1134-1135 LFO 1 Delay ushort
1136-1137 LFO 1 Offset -32768 to +32767 short
1138-1139 LFO 1 Trigger Level -32768 to +32767 short
1140-1141 LFO 1 Modulation Percentage -32768 to +32767 short
1142-1143 LFO 1 Modulation Offset -32768 to +32767 short
1144-1145 LFO 1 Ticks per Period ushort
1146-1147 LFO 1 Duty Cycle ushort
1148:0-2 LFO 1 Mode byte
1148:3-4 LFO 1 Polarity
1148:5 LFO 1 Freerun
1148:6 LFO 1 Modulation Enable
1148:7 LFO 1 Trigger Enable
1149:0 LFO 1 Voice Launch Trigger Enable byte
1149:1-2 LFO 1 Sync Source
1149:3-7 Reserved n/a
1150 LFO 1 Trigger Source 0-255 byte
1151 LFO 1 Trigger Polarity 0-255 byte
1152 LFO 1 Modulation Source 0-255 byte
Envelope 2:
1360-1447 Envelope 2 See Envelope 1 for byte breakdown
Envelope 3:
1448-1535 Envelope 3 See Envelope 1 for byte breakdown
Sample and Hold:
1536-1537 Sample and Hold Clock frequency ushort
1538-1539 Sample and Hold Modulation Offset -32768 to +32767 short
1540-1541 Sample and Hold Modulation Percent -32768 to +32767 short
1542-1543 Sample and Hold Input Offset -32768 to +32767 short
1544-1545 Sample and Hold Input Percent ushort
1546-1547 Sample and Hold Trigger Level -32768 to +32767 short
1548-1549 Sample and Hold Ticks Per Step ushort
1550 Sample and Hold Trigger Source byte
1551 Sample and Hold Modulation Source byte
1552 Sample and Hold Input Source byte
1553 Sample and Hold Trigger Polarity byte
1554:0 Sample and Hold Enable byte
1554:1 Sample and Hold Modulation Enable
1554:2 Sample and Hold Trigger Enable
1554:3-7 Reserved n/a
1555:0 Sample and Hold Trigger on Voice Launch Enable byte
1555:1-2 Sample and Hold Sync Source
1555:3 Sample and Hold Sample on Trigger Enable
1555:4-7 Reserved n/a
1556-1567 Reserved n/a byte
CLOCK:
1568-1569 Master Clock Period ushort
1570-1571 Master Clock Modulation Percent -32768 to +32767 short
1572-1573 Master Clock Modulation Offset -32768 to +32767 short
1574 Master Clock Modulation Source byte
1575 Master Clock MIDI Sync Channel byte
1576 Master Clock Ticks per Beat byte
1577:0 Master Clock Modulation Enable byte
1577:1-2 Master Clock Modulation Voice
1577:3-4 Master Clock Source
1577:5 Master Clock Reset on Key Down Enable
1577:6-7 Reserved n/a
1578-1587 Reserved n/a byte
Sequencer:
1588-1589 Sequencer Period ushort
1590-1591 Sequencer Tempo Modulation Offset -32768 to +32767 short
1592-1593 Sequencer Trigger Level -32768 to +32767 short
1594-1595 Sequencer Tempo Modulation Percent -32768 to +32767 short
1596-1597 Sequencer Ticks per Step -32768 to +32767 short
1598-1629 Sequencer Row A Values (16 16-bit signed) -32768 to +32767 short
1630-1661 Sequencer Row B Values (16 16-bit signed) -32768 to +32767 short
1662-1693 Sequencer Row C Values (16 16-bit signed) -32768 to +32767 short
1694-1695 Sequencer Hi Bits for Row A -32768 to +32767 short
1696-1697 Sequencer Hi Bits for Row B -32768 to +32767 short
1698-1699 Sequencer Hi Bits for Row C -32768 to +32767 short
1700-1707 Sequencer Note Type (16 4-bit Values) byte
1708 Sequencer Progressor Value char
1709 Sequencer Progressor Max Value char
1710 Sequencer Progressor Min Value char
1711 Sequencer Length byte
1712 Sequencer Loop Type char
1713 Sequencer Loop Count byte