0% found this document useful (0 votes)
45 views

Alesis DM Pro MIDIImplementation

This document contains specifications for MIDI system exclusive data dumps and edits for the Alesis DMPro drum module. It describes: - The system exclusive format with manufacturer and family IDs. - Opcodes for dumping and editing user drum programs, effects, trigger data, and global parameters. - Data formats for drumkit, drum program, effect, and trigger parameter dumps containing detailed parameter locations and data lengths. - Opcodes for requesting dumps, erasing and writing flash memory sectors for editing, and acknowledging commands.

Uploaded by

Seb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
45 views

Alesis DM Pro MIDIImplementation

This document contains specifications for MIDI system exclusive data dumps and edits for the Alesis DMPro drum module. It describes: - The system exclusive format with manufacturer and family IDs. - Opcodes for dumping and editing user drum programs, effects, trigger data, and global parameters. - Data formats for drumkit, drum program, effect, and trigger parameter dumps containing detailed parameter locations and data lengths. - Opcodes for requesting dumps, erasing and writing flash memory sectors for editing, and acknowledging commands.

Uploaded by

Seb
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

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:

F0 System exclusive status


00 00 0E Alesis manufacturer id#
19 DMPro family id#
cc Opcode
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


12h - Sector Write Command

F0 00 00 0E 19 12 <sector#> <block#> <data> <sum> F7

<sector#>= 0..63 selects 128K byte sector number to be written in FLASH PCMCIA card
<block#>= 0..127 selects 1024 byte block of data to be written in FLASH PCMCIA card
<sum>= 0..127 seven bit checksum of previous 1173 bytes.

<data> is in a packed format in order to optimize data transfer. Eight MIDI bytes are
used to transmit each block of 7 FLASH card data bytes. Like with program dumps, 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 FLASH CARD 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 1171 data bytes sent for a single block of a FLASH card sector, which
corresponds to 1024 bytes of FLASH card data. With the header, the total number of
bytes transmitted with a program dump is 1181. This will take a minimum of 377.92
milliseconds to transmit. Additional commands should not be sent until receiving an
ACK or NACK (described below) from the DMPro. Writes should only be performed
on sector blocks known to contain all FFH data. This can be verified by reading the
block first (with the next command), or sending an erase command first.

DMPro MIDI Sysex Specification _________________ Page 8


13h - Sector Request Command

F0 00 00 0E 19 13 <sector#> <block#> F7

<sector#>= 0..63 selects 128K byte sector number to be written in FLASH PCMCIA card
<block#>= 0..127 selects 1024 byte block of data to be written in FLASH PCMCIA card

This command will cause the DMPro to respond with an opcode 12H (sector write
command), with the contents of the sector block that was requested. If there is no card
present, the DMPro will respond with an opcode 15H.

14h - FLASH Command ACK Response

F0 00 00 0E 19 14 F7

This command is ignored if received by the DMPro. It is sent out by the DMPro after
completing an erase command, or receiving a complete sector block write command.

15h - FLASH Command NACK Response

F0 00 00 0E 19 15 <error> F7

<error>= 0..4 as follows:


0 = No card present / Not a FLASH card
1 = Card write protected
2 = Erase failed (FLASH chip timeout error)
3 = Checksum didn’t match
4 = Programming failed (usually because block was not erased first)

This command is ignored if received by the DMPro. It is sent out by the DMPro after
receiving an erase command that could not be completed, or receiving a complete sector
block write command that could not be programmed or whose checksum was invalid.
In the case of invalid checksum, the sending device is expected to resend the data at
least once before aborting.

DMPro MIDI Sysex Specification _________________ Page 9


18h - Sysex Note Chase Command

F0 00 00 0E 19 18 <note#> F7

When this command is received by the DMPro, it will cause the display to jump in the
same way the Note Chase function operates. It works regardless of whether the
DMPro’s Note Chase function is on or not.

<note#> = 0..127, only notes 33..96 actually do anything since the DMPro only has
notes from 33..96.

NOTES ON FLASH CARDS:


• Best case programming time for each megabyte in a FLASH card will be 7 minutes, 45
seconds, assuming a typical FLASH programming time of 65 milliseconds per sector
block, and a typical erase time of 1.5 seconds per sector. This results in a transfer rate
of approximately 43 times slower than real time, assuming the samples are at 48KHz.

• The burden is placed on the sending device to avoid possible errors that can occur if a
sector above the total memory of a card is erased or written to (due to possible address
aliasing). It is not possible for the DMPro to determine the amount of memory in the
card.

• The FLASH card must be a 5 volt only card (no 12 volt required for programming),
must have 64K byte sectors, must have 150 nanosecond or better chip enable read
access time, and must be compatible with the programming commands and
Manufacturer’s ID codes of an Am29F040 4-Megabit FLASH memory from AMD.

DMPro MIDI Sysex Specification _________________ Page 10


DEVICE INQUIRY
The DMPro responds to the Universal Device Inquiry message < F0 7E 7F 06 01 F7 >
Upon receiving this message the DMPro will respond with the following:

F0 7E 7F 06 02 Universal Device Reply


00 00 0E Alesis Manufacturer ID
19 00 DMPro Family ID, LSB first
00 00 DMPro Family Member, LSB first
xx xx xx xx Software revision, ASCI (ex. 30 31 30 30 = '0100' = 1.00)
F7 End-Of-Exclusive

DMPro MIDI Sysex Specification _________________ Page 11


PARAMETER FORMAT
The following specific parameter information shows the locations in which each 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.

GLOBAL DATA FORMAT

The Global parameters are comprised of 14 bytes of data. Unlike the Program, Mix, and Effects
parameters, the Global parameters are not packed into each available bit, so that each parameter
occupies its own byte. This results in unused bits for most of the parameter's bytes. These bits
must remain at 0. In addition, the signed parameters are kept in 2's complement format, so no
offset adjustment is necessary. For direct parameter editing (sysex command 10H), the function
and page number are shown. The Mode should be set to 0 (=Global), and the Sound and Channel
parameters are ignored.

# Parameter name Func Page LoLimHiLim bits bit address


0. Basic MIDI Channel 3 0 0 15 4 0:3-0:0
1. Controller A number 3 3 0 120 7 1:6-1:0
2. Controller B number 3 4 0 120 7 2:6-2:0
3. Controller C number 3 5 0 120 7 3:6-3:0
4. Controller D number 3 6 0 120 7 4:6-4:0
5. Receive MIDI Program Change 3 1 0 1 1 5:0-5:0
6. Transmit MIDI Program Change 3 2 0 1 1 6:0-6:0
7. Trigger Setup Number 5 7 0 3 2 7:1-7:0
8. Aux Pedal Controller # 3 7 0 120 7 8:6-8:0
9. Aux Pedal MIDI Channel 3 8 0 16 5 9:4-9:0
10. Hat Pedal Controller # 3 9 0 120 7 10:6-10:0
11. Hat Pedal MIDI Channel 3 10 0 16 5 11:4-11:0
12. MIDI Local On/Off 3 11 0 1 1 12:0-12:0
13. MIDI Start Enable On/Off 3 12 0 1 1 13:7-13:0

DMPro MIDI Sysex Specification _________________ Page 12


DRUMKIT DATA FORMAT

Drumkits contain 560 bytes of packed parameter data. The bit addresses shown are from most
significant bit to least significant bit for each parameter, with the byte number first, followed by a
colon (:), followed by the bit number. Each parameter should never exceed the limit shown in the
table. For bipolar parameters, the limits shown are offset binary, since this is the format that the
parameters are stored in. To view the parameters as two's complement numbers, add the value
shown in the Offset column.

For direct parameter editing (sysex command 10H), the function and page number are shown.
The Edit type <mmm> should be set to 1 (=Kit) for all parameters except Trig 1-16 Note#, MIDI
Song, Card Seq #, and Aux Pedal where the edit type <mmm> should be set to 4 (Trigger). The
Sound parameter is ignored. The Channel parameter should be set to 0 through 63, for Drums 1
through 64, respectively. If the edit type is Trigger, the Channel parameter is ignored. Signed
parameters should be sent in 2's complement format.

# Parameter name Func Page Offset Limit bits bit address


0. Spare 5 0:4-0:0
1. Kit name digit 0 4 0 0 95 7 1:3-0:5
2. Kit name digit 1 4 1 0 95 7 2:2-1:4
3. Kit name digit 2 4 2 0 95 7 3:1-2:3
4. Kit name digit 3 4 3 0 95 7 4:0-3:2
5. Kit name digit 4 4 4 0 95 7 4:7-4:1
6. Kit name digit 5 4 5 0 95 7 5:6-5:0
7. Kit name digit 6 4 6 0 95 7 6:5-5:7
8. Kit name digit 7 4 7 0 95 7 7:4-6:6
9. Kit name digit 8 4 8 0 95 7 8:3-7:5
10. Kit name digit 9 4 9 0 95 7 9:2-8:4
11. Trig 1 Note # 5 0 0 64 7 10:1-9:3
12. Trig 2 Note # 6 0 0 64 7 11:0-10:2
13. Trig 3 Note # 7 0 0 64 7 11:7-11:1
14. Trig 4 Note # 8 0 0 64 7 12:6-12:0
15. Trig 5 Note # 9 0 0 64 7 13:5-12:7
16. Trig 6 Note # 10 0 0 64 7 14:4-13:6
17. Trig 7 Note # 11 0 0 64 7 15:3-14:5
18. Trig 8 Note # 12 0 0 64 7 16:2-15:4
19. Trig 9 Note # 13 0 0 64 7 17:1-16:3
20. Trig 10 Note # 14 0 0 64 7 18:0-17:2
21. Trig 11 Note # 15 0 0 64 7 18:7-18:1
22. Trig 12 Note # 16 0 0 64 7 19:6-19:0
23. Trig 13 Note Down # 17 0 0 64 7 20:5-19:7
24. Trig 14 Note Down # 18 0 0 64 7 21:4-20:6
25. Trig 15 Note # 19 0 0 64 7 22:3-21:5
26. Trig 16 Note # 20 0 0 64 7 23:2-22:4
27. Trig 13 Note Up # 17 1 0 64 7 24:1-23:3

DMPro MIDI Sysex Specification _________________ Page 13


28. Trig 14 Note Up # 18 1 0 64 7 25:0-24:2
29. Trig 1 MIDI Song 5 8 0 7 3 25:3-25:1
30. Trig 2 MIDI Song 6 8 0 7 3 25:6-25:4
31. Trig 3 MIDI Song 7 8 0 7 3 26:1-25:7
32. Trig 4 MIDI Song 8 8 0 7 3 26:4-26:2
33. Trig 5 MIDI Song 9 8 0 7 3 26:7-26:5
34. Trig 6 MIDI Song 10 8 0 7 3 27:2-27:0
35. Trig 7 MIDI Song 11 8 0 7 3 27:5-27:3
36. Trig 8 MIDI Song 12 8 0 7 3 28:0-27:6
37. Trig 9 MIDI Song 13 8 0 7 3 28:3-28:1
38. Trig 10 MIDI Song 14 8 0 7 3 28:6-28:4
39. Trig 11 MIDI Song 15 8 0 7 3 29:1-28:7
40. Trig 12 MIDI Song 16 8 0 7 3 29:4-29:2
41. Trig 13 MIDI Song 17 9 0 7 3 29:7-29:5
42. Trig 14 MIDI Song 18 9 0 7 3 30:2-30:0
43. Trig 15 MIDI Song 19 8 0 7 3 30:5-30:3
44. Trig 16 MIDI Song 20 7 0 7 3 31:0-30:6
45. Trig 1 Card Seq Num 5 9 0 49 6 31:6-31:1
46. Trig 2 Card Seq Num 6 9 0 49 6 32:4-31:7
47. Trig 3 Card Seq Num 7 9 0 49 6 33:2-32:5
48. Trig 4 Card Seq Num 8 9 0 49 6 34:0-33:3
49. Trig 5 Card Seq Num 9 9 0 49 6 34:6-34:1
50. Trig 6 Card Seq Num 10 9 0 49 6 35:4-34:7
51. Trig 7 Card Seq Num 11 9 0 49 6 36:2-35:5
52. Trig 8 Card Seq Num 12 9 0 49 6 37:0-36:3
53. Trig 9 Card Seq Num 13 9 0 49 6 37:6-37:1
54. Trig 10 Card Seq Num 14 9 0 49 6 38:4-37:7
55. Trig 11 Card Seq Num 15 9 0 49 6 39:2-38:5
56. Trig 12 Card Seq Num 16 9 0 49 6 40:0-39:3
57. Trig 13 Card Seq Num 17 10 0 49 6 40:6-40:1
58. Trig 14 Card Seq Num 18 10 0 49 6 41:4-40:7
59. Trig 15 Card Seq Num 19 9 0 49 6 42:2-41:5
60. Trig 16 Card Seq Num 20 8 0 49 6 43:0-42:3
61. AUX Pedal Note Num 20 10 0 64 7 43:7-43:1

DMPro MIDI Sysex Specification _________________ Page 14


62. Drum 1 Program Number 0 1 0 127 7 44:6-44:0
63. Drum 1 Program Type 0 0 0 31 5 45:3-44:7
64. Drum 1 enable 2 7 0 1 1 45:4
65. Drum 1 volume 2 0 0 99 7 46:3-45:5
66. Drum 1 pan 2 1 0 7 3 46:6-46:4
67. Drum 1 output 2 2 0 4 3 47:1-46:7
68. Drum 1 effect level 2 3 0 99 7 48:0-47:2
69. Drum 1 effect bus 2 4 0 1 1 48:1
70. Drum 1 Pitch 1 0 -96 192 8 49:1-48:2
71. Drum 1 Mute Group 2 5 0 4 3 49:4-49:2
72. Drum 1 midi in on/off 3 14 0 1 1 49:5
73. Drum 1 midi out on/off 3 15 0 1 1 49:6
74. Drum 1 MIDI Channel 3 13 0 16 5 50:3-49:7
75. Drum 1 Drum Link 2 6 0 64 7 51:2-50:4
76. Drum 1 Spare 51:7-51:3

77-91. Drum 2 parameters (see above) 59:7-52:0


92-106. Drum 3 parameters (see above) 67:7-60:0
107-121. Drum 4 parameters (see above) 75:7-68:0
122-136. Drum 5 parameters (see above) 83:7-76:0
137-151. Drum 6 parameters (see above) 91:7-84:0
152-166. Drum 7 parameters (see above) 99:7-92:0
167-181. Drum 8 parameters (see above) 107:7-100:0
182-196. Drum 9 parameters (see above) 115:7-108:0
197-211. Drum 10 parameters (see above) 123:7-116:0
212-226. Drum 11 parameters (see above) 131:7-124:0
227-241. Drum 12 parameters (see above) 139:7-129:0
242-256. Drum 13 parameters (see above) 147:7-140:0
257-271. Drum 14 parameters (see above) 155:7-148:0
272-286. Drum 15 parameters (see above) 163:7-156:0
287-301. Drum 16 parameters (see above) 171:7-164:0
302-316. Drum 17 parameters (see above) 179:7-172:0
317-331. Drum 18 parameters (see above) 187:7-180:0
332-346. Drum 19 parameters (see above) 195:7-188:0
347-361. Drum 20 parameters (see above) 203:7-196:0
362-376. Drum 21 parameters (see above) 211:7-204:0
377-391. Drum 22 parameters (see above) 219:7-212:0
392-406. Drum 23 parameters (see above) 227:7-220:0
407-421. Drum 24 parameters (see above) 235:7-228:0
422-436. Drum 25 parameters (see above) 243:7-236:0
437-451. Drum 26 parameters (see above) 251:7-244:0
452-466. Drum 27 parameters (see above) 259:7-252:0
467-481. Drum 28 parameters (see above) 267:7-260:0
482-496. Drum 29 parameters (see above) 275:7-268:0
497-511. Drum 30 parameters (see above) 283:7-276:0

DMPro MIDI Sysex Specification _________________ Page 15


512-526. Drum 31 parameters (see above) 291:7-284:0
527-541. Drum 32 parameters (see above) 299:7-292:0
542-556. Drum 33 parameters (see above) 307:7-300:0
557-571. Drum 34 parameters (see above) 315:7-308:0
572-586. Drum 35 parameters (see above) 323:7-316:0
587-601. Drum 36 parameters (see above) 331:7-324:0
602-616. Drum 37 parameters (see above) 339:7-332:0
617-631. Drum 38 parameters (see above) 347:7-340:0
632-646. Drum 39 parameters (see above) 355:7-348:0
647-661. Drum 40 parameters (see above) 363:7-356:0
662-676. Drum 41 parameters (see above) 371:7-364:0
677-691. Drum 42 parameters (see above) 379:7-372:0
692-706. Drum 43 parameters (see above) 387:7-380:0
707-721. Drum 44 parameters (see above) 395:7-388:0
722-736. Drum 45 parameters (see above) 403:7-396:0
737-751. Drum 46 parameters (see above) 411:7-404:0
752-766. Drum 47 parameters (see above) 419:7-412:0
767-781. Drum 48 parameters (see above) 427:7-420:0
782-796. Drum 49 parameters (see above) 435:7-428:0
797-811. Drum 50 parameters (see above) 443:7-436:0
812-826. Drum 51 parameters (see above) 451:7-444:0
827-841. Drum 52 parameters (see above) 459:7-452:0
842-856. Drum 53 parameters (see above) 467:7-460:0
857-871. Drum 54 parameters (see above) 475:7-468:0
872-886. Drum 55 parameters (see above) 483:7-476:0
887-901. Drum 56 parameters (see above) 491:7-484:0
902-916. Drum 57 parameters (see above) 499:7-492:0
917-931. Drum 58 parameters (see above) 507:7-500:0
932-946. Drum 59 parameters (see above) 515:7-508:0
947-961. Drum 60 parameters (see above) 523:7-516:0
962-976. Drum 61 parameters (see above) 531:7-524:0
977-991. Drum 62 parameters (see above) 539:7-532:0
992-1006. Drum 63 parameters (see above) 547:7-540:0
1007-1021. Drum 64 parameters (see above) 555:7-548:0
Drumkit Spare 559:7-556:0

DMPro MIDI Sysex Specification _________________ Page 16


DRUM PROGRAM DATA FORMAT

Drum Programs contain 166 bytes of packed parameter data. The first 9 bytes are common
parameters for all four sounds. The next four sets of 39 bytes contain each of the four sound's
parameters. The bit addresses must have the correct offset added to them in order to address the
correct sound relative to the beginning of the program. Sound 1's address begins at 9, Sound 2 at
48, Sound 3 at 87, and Sound 4 at 126. This is followed by 1 spare byte The bit addresses shown
are from most significant bit to least significant bit for each parameter, with the byte number first,
followed by a colon (:), followed by the bit number. Each parameter should never exceed the
limit shown in the table. For bipolar parameters, the limits shown are offset binary, since this is
the format that the parameters are stored in. To view them as two's complement numbers, add the
value shown in the Offset column. For direct parameter editing (sysex command 10H), the
function and page number are shown. The Edit Type <mmm> should be set to 2 (=Drum
Program), the Sound parameter set to 0 through 3 for sounds 1 through 4, respectively, and the
Channel parameter should be set to 0 through 63, for channels 1 through 64, respectively. Signed
parameters should be sent in 2's complement format.

# Parameter name Func Page Offset Limit bits bit address


0. Program name digit 0 10 0 0 95 7 0:6-0:0
1. Program name digit 1 10 1 0 95 7 1:5-0:7
2. Program name digit 2 10 2 0 95 7 2:4-1:6
3. Program name digit 3 10 3 0 95 7 3:3-2:5
4. Program name digit 4 10 4 0 95 7 4:2-3:4
5. Program name digit 5 10 5 0 95 7 5:1-4:3
6. Program name digit 6 10 6 0 95 7 6:0-5:2
7. Program name digit 7 10 7 0 95 7 6:7-6:1
Program Spare 8:7-7:0

# Parameter name Func Page Offset Limit bits bit address


0. Sample group* 0 1 0 23 6 0:5-0:0
1. Sample number 0 2 0 127 7 1:4-0:6
2. Sound volume 1 0 0 99 7 2:3-1:5
3. Sound pan 1 1 0 6 3 2:6-2:4
4. Sound pitch semitone 2 0 -24 48 6 3:4-2:7
5. Sound pitch detune 2 1 -99 198 8 4:4-3:5
6. Sound pitch wheel mod 2 2 0 12 4 5:0-4:5
7. Sound pitch env mod 2 3 -99 198 8 6:0-5:1
8. Sound filter frequency 3 0 0 99 7 6:7-6:1
9. Sound filter velocity mod 3 1 -99 198 8 7:7-7:0
10. Sound filter mod wheel mod 3 2 -99 198 8 8:7-8:0
11. Sound filter env mod 3 3 -99 198 8 9:7-9:0
12. Sound amp velocity curve 4 0 0 12 4 10:3-10:0
13. Sound overlap 4 1 0 99 7 11:2-10:4

DMPro MIDI Sysex Specification _________________ Page 17


14. Sound mod 1 source 8 0 0 15 5 11:7-11:3
15. Sound mod 1 destination 8 1 0 20 5 12:4-12:0
16. Sound mod 1 amplitude 8 2 -99 198 8 13:4-12:5
17. Sound mod 2 source 9 0 0 15 5 14:1-13:5
18. Sound mod 2 destination 9 1 0 20 5 14:6-14:2
19. Sound mod 2 amplitude 9 2 -99 198 8 15:6-14:7
20. Sound pitch env attack 5 1 0 99 7 16:5-15:7
21. Sound pitch env decay 5 2 0 99 7 17:4-16:6
22. Sound pitch env sustain 5 3 0 99 7 18:3-17:5
23. Sound pitch env release 5 5 0 99 7 19:2-18:4
24. Sound pitch env delay 5 0 0 100 7 20:1-19:3
25. Sound pitch env sustain decay 5 4 0 99 7 21:0-20:2
26. Sound pitch env trig type 5 7 0 3 2 21:2-21:1
27. Sound pitch env sustain pedal 5 8 0 1 1 21:3
28. Sound pitch env level 5 6 0 99 7 22:2-21:4
29. Sound pitch env velocity mod 5 9 -99 198 8 23:2-22:3
30. Sound filter env attack 6 1 0 99 7 24:1-23:3
31. Sound filter env decay 6 2 0 99 7 25:0-24:2
32. Sound filter env sustain 6 3 0 99 7 25:7-25:1
33. Sound filter env release 6 5 0 99 7 26:6-26:0
34. Sound filter env delay 6 0 0 100 7 27:5-26:7
35. Sound filter env sustain decay 6 4 0 99 7 28:4-27:6
36. Sound filter env trig type 6 7 0 3 2 28:6-28:5
37. Sound filter env sustain pedal 6 8 0 1 1 28:7
38. Sound filter env level 6 6 0 99 7 29:6-29:0
39. Sound filter env velocity mod 6 9 -99 198 8 30:6-29:7
40. Sound amp env attack 7 2 0 99 7 31:5-30:7
41. Sound amp env decay 7 3 0 99 7 32:4-31:6
42. Sound amp env sustain 7 4 0 99 7 33:3-32:5
43. Sound amp env release 7 6 0 99 7 34:2-33:4
44. Sound amp env delay 7 1 0 100 7 35:1-34:3
45. Sound amp env sustain decay 7 5 0 99 7 36:0-35:2
46. Sound amp env trig type 7 8 0 3 2 36:2-36:1
47. Sound amp env sustain pedal 7 9 0 1 1 36:3
48. Sound amp env level 7 7 0 99 7 37:2-36:4
49. Sound Enable 0 0 0 1 1 37:3
50. Sound amp env Gate Time 7 0 0 100 7 38:2-37:4
Sound Spare 38:7-38:3

Sample Group range is 0…23


0 …12 = Internal Sound Groups
13…15 = Unused
16…23 = Card Groups 1-8

DMPro MIDI Sysex Specification _________________ Page 18


EFFECT DATA FORMAT

Effects contain 24 bytes of packed parameter data. The bit addresses shown are from most
significant bit to least significant bit for each parameter, with the byte number first, followed by a
colon (:), followed by the bit number. Each parameter should never exceed the limit shown in the
table. For bipolar parameters, the limits shown are offset binary, since this is the format that the
parameters are stored in. To view them as two's complement numbers, add the value shown in the
Offset column. For direct parameter editing (sysex command 10H), the function and page
numbers are shown. The Edit type <mmm> should be set to 3 (=Effects), and the Channel
parameter is not used. Signed parameters should be sent in 2's complement format.

# Parameter name Func Page Offset Limit bits bit address


REVERB
For Reverb Type = 0-3
0. Reverb Level 0 0 0 99 7 0:6-0:0
1. Reverb Type 0 1 0 6 3 1:1-0:7
2. Reverb Predelay 10ms 0 2 0 29 5 1:6-1:2
3. Reverb Predelay 1ms 0 3 0 9 4 2:2-1:7
4. Reverb Input Premix 0 4 -99 198 8 3:2-2:3
5. Reverb Input Filter 0 5 0 99 7 4:1-3:3
6. Reverb decay 0 6 0 99 7 5:0-4:2
7. Reverb low decay 0 7 0 99 7 5:7-5:1
8. Reverb high decay 0 8 0 99 7 6:6-6:0
9. Reverb density 0 9 0 99 7 7:5-6:7

For Reverb Type = 4 (Large)


0. Reverb Level 0 0 0 99 7 0:6-0:0
1. Reverb Type 0 1 0 6 3 1:1-0:7
2. Reverb Predelay 10ms 0 2 0 29 5 1:6-1:2
3. Reverb Predelay 1ms 0 3 0 9 4 2:2-1:7
4. Reverb Input Premix 0 4 -99 198 8 3:2-2:3
5. Reverb Input Filter 0 5 0 99 7 4:1-3:3
6. Reverb decay 0 6 0 99 7 5:0-4:2
7. Reverb low decay 0 7 0 99 7 5:7-5:1
8. Reverb high decay 0 8 0 99 7 6:6-6:0
9. Reverb density UNUSED 7:5-6:7

For Reverb Type = 5-6 (Gate and Reverse)


0. Reverb Level 0 0 0 99 7 0:6-0:0
1. Reverb Type 0 1 0 6 3 1:1-0:7
2. Reverb Predelay 10ms 0 2 0 29 5 1:6-1:2
3. Reverb Predelay 1ms 0 3 0 9 4 2:2-1:7
4. Reverb Input Premix 0 4 -99 198 8 3:2-2:3
5. Reverb Input Filter 0 5 0 99 7 4:1-3:3
6. Reverb decay 0 6 0 99 7 5:0-4:2

DMPro MIDI Sysex Specification _________________ Page 19


7. Reverb low decay UNUSED 5:7-5:1
8. Reverb high decay 0 7 0 99 7 6:6-6:0
9. Reverb density 0 8 0 99 7 7:5-6:7

OVERDRIVE
10. Overdrive Threshold 1 0 0 99 7 8:4-7:6
11. Overdrive Brightness 1 1 0 99 7 9:3-8:5

DELAY
12. Delay Level 2 0 0 99 7 10:2-9:4
13. Delay Input Balance 2 1 -99 198 8 11:2-10:3
14. Delay Time 10ms 2 2 0 79 7 12:1-11:3
15. Delay Time 1ms 2 3 0 9 4 12:5-12:2
16. Delay Feedback 2 4 0 99 7 13:4-12:6
17. Delay Output to Reverb 2 5 0 99 7 14:3-13:5

PITCH
For Pitch Type = 0-3 (Mono & Stereo Chorus and Flange)
18. Pitch Level 3 0 0 99 7 15:2-14:4
19. Pitch Input Balance 3 1 -99 198 8 16:2-15:3
20. Pitch Type 3 2 0 4 3 16:5-16:3
21. Pitch Waveform 3 4 0 1 1 16:6
22. Pitch Speed 3 3 0 99 7 17:5-16:7
23. Pitch Depth 3 5 0 99 7 18:4-17:6
24. Pitch Feedback 3 6 0 99 7 19:3-18:5
25. Pitch Output to Reverb 3 7 0 99 7 20:2-19:4

For Pitch Type = 4 (Resonator)


18. Pitch Level 3 0 0 99 7 15:2-14:4
19. Pitch Input Balance 3 1 -99 198 8 16:2-15:3
20. Pitch Type 3 2 0 4 3 16:5-16:3
21. Pitch Waveform UNUSED 1 16:6
22. Resonator Tuning 3 3 0 60 7 17:5-16:7
23. Resonator Decay 3 4 0 99 7 18:4-17:6
24. Pitch Feedback UNUSED 7 19:3-18:5
25. Pitch Output to Reverb 3 5 0 99 7 20:2-19:4

EQ
26. EQ High Frequency 4 0 0 5 3 20:5-20:3
27. EQ High Boost 4 1 0 9 4 21:1-20:6
28. EQ Low Frequency 4 2 0 7 3 21:4-21:2
29. EQ Low Boost 4 3 0 12 4 22:0-21:5
FX Spare 23:7..22:1

DMPro MIDI Sysex Specification _________________ Page 20


TRIGGER DATA FORMAT

The Trigger parameters are comprised of 328 bytes of data which contain 4 setups at 82 bytes
each. Like the Global parameters, the Trigger parameters are not packed into each available bit,
so that each parameter occupies its own byte. This results in unused bits for most of the
parameter's bytes. These bits must remain at 0. The Trigger parameters are stored in 2’s
complement. Add the Offset amount to the parameter value to obtain the value displayed. For
direct parameter editing (SysEx command 10H), the function and page numbers are shown. The
Mode should be set to 4 (=Trigger), the Channel parameter should be set to the trigger 0-15, and
the Sound # parameter is ignored.

NOTE: Direct parameter editing only modifies the trigger parameters for the current Trigger
Setup. The current Trigger Setup (0~3) is part of the Global parameters. The parameters for direct
editing the current Trigger Setup are shown here. Bit Addresses are shown for Trigger Setup 1.

# Parameter name FuncPage Offset LoLimHiLim bits bit address


0. Trigger 1 Gain 5 1 0 0 99 7 0:6-0:0
1. Trigger 1 VCurve 5 2 0 0 14 4 1:3-1:0
2. Trigger 1 Threshold 5 3 -80 0 80 7 2:6-2:0
3. Trigger 1 Crosstalk 5 5 -60 0 60 6 3:5-3:0
4. Trigger 1 Retrigger 5 4 +100 -100 100 8 4:7-4:0
5. Trigger 2 Gain 6 1 0 0 99 7 5:6-5:0
6. Trigger 2 VCurve 6 2 0 0 14 4 6:3-6:0
7. Trigger 2 Threshold 6 3 -80 0 80 7 7:6-7:0
8. Trigger 2 Crosstalk 6 5 -60 0 60 6 8:5-8:0
9. Trigger 2 Retrigger 6 4 +100 -100 100 8 9:7-9:0
10. Trigger 3 Gain 7 1 0 0 99 7 10:6-10:0
11. Trigger 3 VCurve 7 2 0 0 14 4 11:3-11:0
12. Trigger 3 Threshold 7 3 -80 0 80 7 12:6-12:0
13. Trigger 3 Crosstalk 7 5 -60 0 60 6 13:5-13:0
14. Trigger 3 Retrigger 7 4 +100 -100 100 8 14:7-14:0
15. Trigger 4 Gain 8 1 0 0 99 7 15:6-15:0
16. Trigger 4 VCurve 8 2 0 0 14 4 16:3-16:0
17. Trigger 4 Threshold 8 3 -80 0 80 7 17:6-17:0
18. Trigger 4 Crosstalk 8 5 -60 0 60 6 18:5-18:0
19. Trigger 4 Retrigger 8 4 +100 -100 100 8 19:7-19:0
20. Trigger 5 Gain 9 1 0 0 99 7 20:6-20:0
21. Trigger 5 VCurve 9 2 0 0 14 4 21:3-21:0
22. Trigger 5 Threshold 9 3 -80 0 80 7 22:6-22:0
23. Trigger 5 Crosstalk 9 5 -60 0 60 6 23:5-23:0
24. Trigger 5 Retrigger 9 4 +100 -100 100 8 24:7-24:0
25. Trigger 6 Gain 10 1 0 0 99 7 25:6-25:0
26. Trigger 6 VCurve 10 2 0 0 14 4 26:3-26:0
27. Trigger 6 Threshold 10 3 -80 0 80 7 27:6-27:0

DMPro MIDI Sysex Specification _________________ Page 21


28. Trigger 6 Crosstalk 10 5 -60 0 60 6 28:5-28:0
29. Trigger 6 Retrigger 10 4 +100 -100 100 8 29:7-29:0
30. Trigger 7 Gain 11 1 0 0 99 7 30:6-30:0
31. Trigger 7 VCurve 11 2 0 0 14 4 31:3-31:0
32. Trigger 7 Threshold 11 3 -80 0 80 7 32:6-32:0
33. Trigger 7 Crosstalk 11 5 -60 0 60 6 33:5-33:0
34. Trigger 7 Retrigger 11 4 +100 -100 100 8 34:7-34:0
35. Trigger 8 Gain 12 1 0 0 99 7 35:6-35:0
36. Trigger 8 VCurve 12 2 0 0 14 4 36:3-36:0
37. Trigger 8 Threshold 12 3 -80 0 80 7 37:6-37:0
38. Trigger 8 Crosstalk 12 5 -60 0 60 6 38:5-38:0
39. Trigger 8 Retrigger 12 4 +100 -100 100 8 39:7-39:0
40. Trigger 9 Gain 13 1 0 0 99 7 40:6-40:0
41. Trigger 9 VCurve 13 2 0 0 14 4 41:3-41:0
42. Trigger 9 Threshold 13 3 -80 0 80 7 42:6-42:0
43. Trigger 9 Crosstalk 13 5 -60 0 60 6 43:5-43:0
44. Trigger 9 Retrigger 13 4 +100 -100 100 8 44:7-44:0
45. Trigger 10 Gain 14 1 0 0 99 7 45:6-45:0
46. Trigger 10 VCurve 14 2 0 0 14 4 46:3-46:0
47. Trigger 10 Threshold 14 3 -80 0 80 7 47:6-47:0
48. Trigger 10 Crosstalk 14 5 -60 0 60 6 48:5-48:0
49. Trigger 10 Retrigger 14 4 +100 -100 100 8 49:7-49:0
50. Trigger 11 Gain 15 1 0 0 99 7 50:6-50:0
51. Trigger 11 VCurve 15 2 0 0 14 4 51:3-51:0
52. Trigger 11 Threshold 15 3 -80 0 80 7 52:6-52:0
53. Trigger 11 Crosstalk 15 5 -60 0 60 6 53:5-53:0
54. Trigger 11 Retrigger 15 4 +100 -100 100 8 54:7-54:0
55. Trigger 12 Gain 16 1 0 0 99 7 55:6-55:0
56. Trigger 12 VCurve 16 2 0 0 14 4 56:3-56:0
57. Trigger 12 Threshold 16 3 -80 0 80 7 57:6-57:0
58. Trigger 12 Crosstalk 16 5 -60 0 60 6 58:5-58:0
59. Trigger 12 Retrgger 16 4 +100 -100 100 8 59:7-59:0
60. Trigger 13 Gain 17 2 0 0 99 7 60:6-60:0
61. Trigger 13 VCurve 17 3 0 0 14 4 61:3-61:0
62. Trigger 13 Threshold 17 4 -80 0 80 7 62:6-62:0
63. Trigger 13 Crosstalk 17 6 -60 0 60 6 63:5-63:0
64. Trigger 13 Retrigger 17 5 +100 -100 100 8 64:7-64:0
65. Trigger 14 Gain 18 2 0 0 99 7 65:6-65:0
66. Trigger 14 VCurve 18 3 0 0 14 4 66:3-66:0
67. Trigger 14 Threshold 18 4 -80 0 80 7 67:6-67:0
68. Trigger 14 Crosstalk 18 6 -60 0 60 6 68:5-68:0
69. Trigger 14 Retrigger 18 5 +100 -100 100 8 69:7-69:0
70. Trigger 15 Gain 19 1 0 0 99 7 70:6-70:0
71. Trigger 15 VCurve 19 2 0 0 14 4 71:3-71:0
72. Trigger 15 Hat Threshold 19 3 -80 0 80 7 72:6-72:0

DMPro MIDI Sysex Specification _________________ Page 22


73. Hat Pedal Type 19 5 0 0 1 1 73:0
74. Trigger 15 Retrigger 19 4 +100 -100 100 8 74:7-74:0
75. Trigger 16 Gain 20 1 0 0 99 7 75:6-75:0
76. Trigger 16 VCurve 20 2 0 0 14 4 76:3-76:0
77. AUX Pedal Type 20 9 0 0 1 1 77:0
78. AUX Pedal Gain 20 11 0 0 99 7 78:6-78:0
79. Trigger 16 Retrigger 20 4 +100 -100 100 8 79:7-79:0
80. Noise Suppression 5 6 -60 0 60 6 80:5-80:0
81. Spare 81:7-81:0

80-159. Trigger Setup 2 Trigger 1-16 Parameters 163:7-82:0


160-239. Trigger Setup 3 Trigger 1-16 Parameters 245:7-164:0
319-240. Trigger Setup 4 Trigger 1-16 Parameters 327:7-246:0

DMPro MIDI Sysex Specification _________________ Page 23

You might also like