Alesis DM Pro Implementation

DMPro Midi Sysex Specification
v. 1.00 01/25/99
This document contains the system exclusive documentation for the DMPro
SYSTEM EXCLUSIVE FORMAT........................................................................................2
OPCODE SUMMARY:..........................................................................................................2
OPCODES:.............................................................................................................................3
00h - MIDI User Drum Program Dump............................................................................3
01h - MIDI User Drum Program Dump Request..............................................................4
02h - MIDI Edit Program Dump.......................................................................................4
03h - MIDI Edit Program Dump Request.........................................................................4
06h - MIDI Effects Dump.................................................................................................4
07h - MIDI Effects Dump Request...................................................................................5
08h - MIDI Trigger Data Dump........................................................................................5
09h - MIDI Trigger Data Dump Request..........................................................................5
0Ah - MIDI Global Data Dump........................................................................................5
0Bh - MIDI Global Data Dump Request ..........................................................................6
0Ch - MIDI All Dump Request.........................................................................................6
0Dh - unused.....................................................................................................................6
0Eh - MIDI Drumkit Dump ..............................................................................................6
0Fh - MIDI Drumkit Dump Request.................................................................................7
10h - MIDI Editing............................................................................................................7
11h - Sector Erase Command ...........................................................................................7
12h - Sector Write Command...........................................................................................8
13h - Sector Request Command ........................................................................................9
14h - FLASH Command ACK Response..........................................................................9
15h - FLASH Command NACK Response ......................................................................9
18h - Sysex Note Chase Command..................................................................................10
NOTES ON FLASH CARDS:..............................................................................................10
DEVICE INQUIRY ..............................................................................................................11
PARAMETER FORMAT.....................................................................................................12
GLOBAL DATA FORMAT.............................................................................................12
DRUMKIT DATA FORMAT..........................................................................................13
DRUM PROGRAM DATA FORMAT............................................................................17
EFFECT DATA FORMAT ..............................................................................................19
TRIGGER DATA FORMAT............................................................................................21
DMPro MIDI Sysex Specification _________________ Page 1
SYSTEM EXCLUSIVE FORMAT
The DMPro MIDI System Exclusive message format is as follows:
dd Data
: : : : F7 End-Of-Exclusive
OPCODE SUMMARY:
00h User Drum Program Dump 01h User Drum Program Dump Request 02h Edit Program Dump 03h Edit Program Dump Request 04h unused 05h unused 06h Effects Dump 07h Effects Dump Request 08h Trigger Data Dump 09h Trigger Data Dump Request 0Ah Global Data Dump 0Bh Global Data Dump Request 0Ch All Dump Request 0Dh unused 0Eh Drumkit Dump 0Fh Drumkit Dump Request 10h Single Parameter Editing 11h Sector Erase Command 12h Sector Write Command 13h Sector Request Command 14h FLASH Command ACK Response 15h FLASH Command NACK Response 16h unused 17h unused 19h Sysex Note Chase
DMPro MIDI Sysex Specification _________________ Page 2
OPCODES:
00h - MIDI User Drum Program Dump
F0 00 00 0E 19 00 <program#> <data> F7
<program#>= 0..127 selects individual user programs
<data> is in a packed format in order to optimize data transfer. Eight MIDI bytes are used to transmit each block of 7 DMPro 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:
SEVEN DMPro BYTES: 0: A7 A6 A5 A4 A3 A2 A1 A0 1: B7 B6 B5 B4 B3 B2 B1 B0 2: C7 C6 C5 C4 C3 C2 C1 C0 3: D7 D6 D5 D4 D3 D2 D1 D0 4: E7 E6 E5 E4 E3 E2 E1 E0 5: F7 F6 F5 F4 F3 F2 F1 F0 6: G7 G6 G5 G4 G3 G2 G1 G0
TRANSMITTED AS: 0: 0 A6 A5 A4 A3 A2 A1 A0 1: 0 B5 B4 B3 B2 B1 B0 A7 2: 0 C4 C3 C2 C1 C0 B7 B6 3: 0 D3 D2 D1 D0 C7 C6 C5 4: 0 E2 E1 E0 D7 D6 D5 D4 5: 0 F1 F0 E7 E6 E5 E4 E3 6: 0 G0 F7 F6 F5 F4 F3 F2 7: 0 G7 G6 G5 G4 G3 G2 G1
There are 190 data bytes sent for a single program dump, which corresponds to 166 bytes of program data. With the header, the total number of bytes transmitted with a program dump is 198. The location of each parameter within a program dump is shown in the next section.
DMPro MIDI Sysex Specification _________________ Page 3
01h - MIDI User Drum Program Dump Request
F0 00 00 0E 19 01 <prog#> F7
<program#>= 0..127 selects individual user programs
When received, the DMPro will respond to this message with a MIDI user program dump (00) of the program number selected.
02h - MIDI Edit Program Dump
F0 00 00 0E 19 02 <edit#> <data> F7
<edit#> = 0-63 = Drum number
<data> is in the same format as described in 00.
03h - MIDI Edit Program Dump Request
F0 00 00 0E 19 03 <edit#> F7
<edit#> = 0-63 = Drum number
When received, the DMPro will respond to this message with a MIDI edit program dump (02) of the edit program selected.
06h - MIDI Effects Dump
F0 00 00 0E 19 06 <effect#> <data> F7
<effect#> = 0..63 selects individual user effects, 64 = Effect Edit Buffer
<data> is in the same format as described in 00, but with a different number of bytes due to the difference in the effects parameters. The total number of data bytes sent for a single effects dump is 28, which corresponds to 24 bytes of effects data. With the header, the total number of bytes transmitted with a program dump is 36. Although a Drumkit is stored along with its Effects, they are dealt with independently via MIDI.
DMPro MIDI Sysex Specification _________________ Page 4
07h - MIDI Effects Dump Request
F0 00 00 0E 19 07 <effect#> F7
<effect#> = 0..63 selects individual user effects, 64 = Effect Edit Buffer
When received, the DMPro will respond to this message with a MIDI user effects dump (06h) of the user effect selected.
08h - MIDI Trigger Data Dump
F0 00 00 0E 19 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 Trigger data dump is 375, which corresponds to 328 bytes of Trigger data. With the header, the total number of bytes transmitted with a Trigger dump is 382.
09h - MIDI Trigger Data Dump Request
F0 00 00 0E 19 09 F7
When received, the DMPro will respond to this message with a MIDI Trigger data dump (08h).
0Ah - MIDI Global Data Dump
F0 00 00 0E 19 0A <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 16, which corresponds to 14 bytes of global data. With the header, the total number of bytes transmitted with a Global dump is 23.
DMPro MIDI Sysex Specification _________________ Page 5
0Bh - MIDI Global Data Dump Request
F0 00 00 0E 19 0B F7
When received, the DMPro will respond to this message with a MIDI global data dump (0Ah).
0Ch - MIDI All Dump Request
F0 00 00 0E 19 0C F7
When received, the DMPro will respond to this message with a 128 MIDI User Drum Program dumps (00), 64 MIDI Effects dumps (06), 64 MIDI Drumkit dumps (0E), a Global data dump (0A), and a Triggers data dump (08) for a total of 68,821 MIDI bytes. With sysex headers, the total number of bytes transmitted is 69525. A delay of 4.25 milliseconds will be placed between each dump. When receiving a complete dump, the DMPro does not require any delay between dumps.
0Dh - unused
0Eh - MIDI Drumkit Dump
F0 00 00 0E 19 0E <kit#> <data> F7
<kit#> = 0..63 selects individual user drumkits; 64=drumkit edit buffer
<data> is in the same format as described in 00, but with a different number of bytes due to the difference in the drumkit parameters. The total number of data bytes sent for a single drumkit dump is 640, which corresponds to 560 bytes of drumkit data. With the header, the total number of bytes transmitted with a drumkit dump is 648. When loading a drumkit into the drumkit edit buffer, none of the 64 drum program edit buffers or the effect buffer will be changed, even if the new drumkit buffer contains drum program numbers different than what is currently selected.
DMPro MIDI Sysex Specification _________________ Page 6
0Fh - MIDI Drumkit Dump Request
F0 00 00 0E 19 0F <kit#> F7
<kit#> = 0..63 selects individual user drumkits; 64=Drumkit edit buffer
When received, the DMPro will respond to this message with a MIDI Drumkit dump (0E) of the drumkit selected.
10h - MIDI Editing
F0 00 00 0E 19 10 <0mmmffff><0ksspppp><0ccccccv><0vvvvvvv>F7
<mmm> = 0=Global, 1=Drumkit, 2=Drum Program, 3=Effects, 4=Triggers <k ffff> = Function number 0 through 20, depending on mode
!!NOTE!! The MSbit is bit <6> of the <0ksspppp> byte!! <ss> = Sound 1-4 (0-3) when <mmm>=2 <pppp> = Page 0 through 9, depending on mode and function <cccccc> = Drum 1 through 64 (0-63) if <mmm> = 1 or 2 <vvvvvvvv>= Parameter value, 8 bit 2’s complement
All parameters to be edited must be sent in this format (11 MIDI bytes), regardless of the number of bits required to transmit the value of the parameter. When the DMPro receives this message, it will edit the specified parameter to the new value and display it. If the function and page selected does not exist in the current configuration, the command will cause the nearest legal function, page, and parameter to be selected, but no edit will occur. If a program edit command is received, it will place the DMPro in Edit mode. If the value received is out of range for the parameter selected, the range will be limited to the nearest legal value. The function and page numbers for each parameter are shown in the next section.
11h - Sector Erase Command
F0 00 00 0E 19 11 <sector#> F7
<sector#>= 0..63 selects 128K byte sector number to be erased in FLASH PCMCIA card
The erase command sets all bytes of a sector to FFH. There can be up to 64 sectors of 128K bytes in a FLASH card, which allows for up to 8 megabytes of FLASH memory. Additional commands should not be sent until receiving an ACK or NACK (described below) from the DMPro. As much as 10 seconds must be allowed before aborting if no ACK or NACK is received.
DMPro MIDI Sysex Specification _________________ Page 7
Loading...
+ 16 hidden pages