24
MIDI Implementations
■
Exclusive Message and Checksum Calculation
MVC/V-LINK exclusive messages contain a checksum following the data (before F7), which can be used to check whether the
message was received correctly. The checksum value is derived from the address and data of the transmitted exclusive message.
●
Calculating the checksum
(“H” is appended to hexadecimal numbers)
The checksum is a value that produces a lower 7 bits of zero when the address, size, and checksum itself are summed. If the
exclusive message to be transmitted has an address of aaH bbH ccH and the data is ddH eeH, the actual calculation would be as
follows:
aaH + bbH + ccH + ddH + eeH = sum
sum / 128 = quotient ... remainder
128 - remainder = checksum
<Example>
In case you are setting Modulation of Control Change for Dissolve Time Ctrl Assign using MIDI Visual Control ...
From “Parameter Address Map”, the start address of the Dissolve Time Ctrl Assign in MIDI Visual Control is 10H 10H 02H and the
Modulation parameter in Control Change is 00H 01H. Therefore ...
F0H
7EH
00H
0CH 01H 10H 10H 02H 00H
01H
??H
F7H
——- ——- ——- —————– ————————— —————— ——- ——-
(1)
(2)
(3) (4)
(5)
(6)
(7)
(8)
(1)Exclusive Status
(2)ID Number (Universal SysEx Non Realtime)
(3)Device ID(0)
(4)Sub ID(MIDI Visual Control Version 1.0)
(5)Address
(6)Data
(7)Checksum
(8)EOX
Next calculate the checksum. Add (5) to (6).
10H + 10H + 02H + 00H + 01H = 16 + 16 + 2 + 0 + 1 = 35 (sum)
35 (sum) / 128 = 0 (quotient) ... 35 (remainder)
Checksum = 128 - 35 (remainder) = 93 = 5DH
Thus, the message to transmit is :-
F0H 7EH 00H 0CH 01H 10H 10H 02H 00H 01H 5DH F7H