13
EPAD2 Crosstalk Cancel
14
EPAD2 Rim Sens
15
EPAD3 Trig Type
16
EPAD3 Trig Sens
17
EPAD3 Trig Threshold
18
EPAD3 Trig Curve
19
EPAD3 Scan Time
1A
EPAD3 Retrigger Cancel
1B
EPAD3 Mask Time
1C
EPAD3 Crosstalk Cancel
1D
EPAD4 Trig Type
1E
EPAD4 Trig Sens
1F
EPAD4 Trig Threshold
20
EPAD4 Trig Curve
21
EPAD4 Scan Time
22
EPAD4 Retrigger Cancel
23
EPAD4 Mask Time
24
EPAD4 Crosstalk Cancel
Table 4-3 Chain setup
If you want to send Data Request to the SPD-20 in this area, set the address and the size as
follows.
Other data requests specifying address or size are ignored.
Moreover, you cannot choose the address to which the data in this section is transmitted,
nor can you choose the address from which it is received.
address = 02 00 00 00
size = 00 00 01 00
Address Map
Address
Block
==========
===========
00 00 00 00
+——————-+........ +————–+........+——-+
| Patch Param. |
+——————-+.
|
| .
|
| .
|
| .
|
| .
|
|
.
|
|
. +————–+
|
|
. | Patch#98 |
|
|
01 00 00 00
+——————-+..................................... +——-+
| System setup |
02 00 00 00
+——————-+..................................... +——-+
| Chain setup
|
+——————-+..................................... +——-+
5.Useful Information
[Decimal and Hexadecimal]
It is common to use 7-bit Hexadecimal números in MIDI communication.
The following is a conversion table between decimal números and 7-bit Hexadecimal
números.
fig.
* To indicate a decimal number for the MIDI channel and Program number, add 1 to the
Decimal number in the table.
0–6
0–15
0–13
0–15
0–15
0–4
0–30
0–15
0–16
0–6
0–13
0–15
0–15
0–4
0–30
0–15
0–16
0–6
Sub block
Reference
==========
=========
| Patch#0 |
|4-1
|
+————–+........+——-+
| Patch#1 |
+————–+
|
:
|
+————–+
| Patch#97 |
+————–+
| 4-2 |
| 4-3 |
* The resolution of 7-bit Hexadecimal números is 128. Use several bytes for values which
require more resolution.
i.e. The number "aa bbH" in 7-bit Hexadecimal is "aa x 128 + bb" in Decimal form.
* A signed number is indicated as 00H = -64, 40H = ±0, 7FH = +63.
So the signed number "aaH" in 7-bit Hexadecimal is "aa - 64".
A signed number using two bytes is indicated as 00 00H = -8192, 40 00H = ±0, 7F 7FH =
+8191.
So the signed number "aa bbH" in 7-bit Hexadecimal is "aa bbH - 40 00H = aa x 128 +
bb - 64 x 128"
* The data indicated as "nibbled" is a 4-bit Hexadecimal number.
i.e. "0a 0bH" is "a x 16 + b".
<EXAMPLE 1> Convert "5AH" in Hexadecimal to a Decimal number.
(By using the table)
5AH = 90
<EXAMPLE 2> Convert "12 34H" in 7-bit Hexadecimal to a Decimal number.
(By using the table) 12H = 18, 34H = 52
So, 18 x 128 + 52 = 2356
<EXAMPLE 3> Convert "0A 03 09 0D" in nibblized form to a Decimal number.
(By using the table)
0AH = 10, 03H = 3, 09H = 9, 0DH = 13
So, {(10 x 16 + 3) x 16 + 9} x 16 + 13 = 41885
[Example of actual MIDI mensages]
<EXAMPLE> C9 49
"Cn" is a status of a Program change message, and "n" is a MIDI channel number.
The second byte is a Program number. 9H = 9, 49H = 73
So, this is a Program change message of MIDI channel=10, Program number = 74.
[Checksum of Roland System Exclusive
mensages]
Roland System Exclusive mensages (RQ1 and DT1) have a Checksum at the end of the data
(before EOX) to be able to check for communication errors.
The Checksum results from address and data (or size) included in the message.
How to calculate Checksums ("H" indicates Hexadecimal.)
The error checking process uses a Checksum and provides a bit pattern where the last sig-
nificant 7 bits are zero when values for an address, data (or size) and the Checksum are
summed.
If the address is "aa bb ccH" and the data( or the size) is "dd ee ffH"
aa + bb + cc + dd + ee + ff = sum
sum ÷ 128 = quotient—remainder
128 - remainder = checksum
<EXAMPLE 1> Set "FX TYPE" of patch2 to 10
See the "Parameter address map"
Address: 00 01 00 03H the value of FX TYPE = 10 is 09H
F0 41 09 00 0D 12 00 01 00 03 09 ??
(1) (2) (3) (4) (5) address
(1) Exclusive Status
(4) Model ID (SPD-20)
(2) ID (Roland)
(5) Command ID (DT1)
(3) Device ID (09H)
(6) End of Exclusive
The Checksum is:
00H + 01H + 00H + 03H + 09H = 0 + 1 + 0 + 3 + 9 = 13 (sum)
13 (sum) ÷ 128 = 0 (quotient)—13 (remainder)
checksum = 128 - 13 (remainder) = 115 = 73H
Therefore, the message to send is: F0 41 09 60 12 00 01 00 03 09 73 F7.
<EXAMPLE 2> Request to transfer the "MIDI CH" of Pad1 (BANK A), Patch 3.
See the "Parameter address map"
Address: 00 02 01 08H
Size: 00 00 00 01H
See the "Parameter address map"
Address: 00 01 00 03H
F0 41 09 00 0D 11 00 02 01 08 00 00 00 01
(1)(2)(3) (4) (5) address
data
(1) Exclusive Status
(4) Model ID (SPD-20)
(2) ID (Roland)
(5) Command ID (RQ1)
(3) Device ID (09H)
(6) End of Exclusive
The Checksum is:
00H + 02H + 01H + 08H + 00H + 00H +00H + 01H = 0 + 2 + 1 + 8 + 0 + 0 + 0
+ 1 = 12 (sum)
12 (sum) ÷ 128 = 0 (quotient)—12 (remainder)
checksum = 128 - 12 (remainder) = 116 = 74H
Therefore, the message to send is: F0 41 09 60 11 00 02 01 08 00 00 00 01 74 F7.
F7
data checksum (6)
the value of FX TYPE = 10 is 09H
??
F7
checksum (6)
101
1
2
3
4
5