MIDI Implementation
A-73
MV-8800 Appendices
Specifications
MIDI Implementation
●
Decimal and Hexadecimal table (Hexadecimal number
is shown with H.)
In MIDI documentation, data values and addresses/sizes of system exclusive messages etc.
are expressed as hexadecimal values for each 7 bits.
the following table shows how these correspond to decimal numbers.
+——————+——————++——————+——————++——————+——————++——————+——————+
| dec | hex || dec | hex || dec | hex || dec | hex |
+——————+——————++——————+——————++——————+——————++——————+——————+
| 0 | 00H || 32 | 20H || 64 | 40H || 96 | 60H |
| 1 | 01H || 33 | 21H || 65 | 41H || 97 | 61H |
| 2 | 02H || 34 | 22H || 66 | 42H || 98 | 62H |
| 3 | 03H || 35 | 23H || 67 | 43H || 99 | 63H |
| 4 | 04H || 36 | 24H || 68 | 44H || 100 | 64H |
| 5 | 05H || 37 | 25H || 69 | 45H || 101 | 65H |
| 6 | 06H || 38 | 26H || 70 | 46H || 102 | 66H |
| 7 | 07H || 39 | 27H || 71 | 47H || 103 | 67H |
| 8 | 08H || 40 | 28H || 72 | 48H || 104 | 68H |
| 9 | 09H || 41 | 29H || 73 | 49H || 105 | 69H |
| 10 | 0AH || 42 | 2AH || 74 | 4AH || 106 | 6AH |
| 11 | 0BH || 43 | 2BH || 75 | 4BH || 107 | 6BH |
| 12 | 0CH || 44 | 2CH || 76 | 4CH || 108 | 6CH |
| 13 | 0DH || 45 | 2DH || 77 | 4DH || 109 | 6DH |
| 14 | 0EH || 46 | 2EH || 78 | 4EH || 110 | 6EH |
| 15 | 0FH || 47 | 2FH || 79 | 4FH || 111 | 6FH |
| 16 | 10H || 48 | 30H || 80 | 50H || 112 | 70H |
| 17 | 11H || 49 | 31H || 81 | 51H || 113 | 71H |
| 18 | 12H || 50 | 32H || 82 | 52H || 114 | 72H |
| 19 | 13H || 51 | 33H || 83 | 53H || 115 | 73H |
| 20 | 14H || 52 | 34H || 84 | 54H || 116 | 74H |
| 21 | 15H || 53 | 35H || 85 | 55H || 117 | 75H |
| 22 | 16H || 54 | 36H || 86 | 56H || 118 | 76H |
| 23 | 17H || 55 | 37H || 87 | 57H || 119 | 77H |
| 24 | 18H || 56 | 38H || 88 | 58H || 120 | 78H |
| 25 | 19H || 57 | 39H || 89 | 59H || 121 | 79H |
| 26 | 1AH || 58 | 3AH || 90 | 5AH || 122 | 7AH |
| 27 | 1BH || 59 | 3BH || 91 | 5BH || 123 | 7BH |
| 28 | 1CH || 60 | 3CH || 92 | 5CH || 124 | 7CH |
| 29 | 1DH || 61 | 3DH || 93 | 5DH || 125 | 7DH |
| 30 | 1EH || 62 | 3EH || 94 | 5EH || 126 | 7EH |
| 31 | 1FH || 63 | 3FH || 95 | 5FH || 127 | 7FH |
+——————+——————++——————+——————++——————+——————++——————+——————+
(*) Decimal values such as MIDI channel, bank select, and program change are listed as
one(1) greater than the values given in the above table.
(*) A 7-bit byte can express data in the range of 128 steps. For data where greater precision is
required, we must use two or more bytes. For example, two hexadecimal numbers aa bbH
expression two 7-bit bytes would indicate a value of aa x 128 + bb.
(*) In the case of values which have a +/- sign, 40H=-64, 00H=0, 3FH=+63, so that the
decimal expression would be 64 less than the value given in the above chart.
In the case of two types, 40 00H = -8192, 00 00H = 0, 3F 7FH = +8191.
(*) Data marked “nibbled” is expressed in hexadecimal in 4-bit units.
A value expressed as a 20byte nibble 0a 0bH has the value of a x 16 + b.
<Ex.1> What 5AH in decimal system?
5AH = 90 according to the above table.
<Ex.2> What in decimal system is 12034H in hexadecimal of every 7 bit?
12H = 18, 34H = 52 according to the above table. So 18 x 128 + 52 = 2356.
<Ex.3> What in decimal system is 0A 03 09 0D in nibble system?
0AH = 10, 03H = 3, 09H = 9, 0DH = 13 according to the above table.
So ((10 x 16 + 3) x 16 + 9) x 16 + 3 = 41885.
<Ex.4> What in nibble system is 1258 in decimal system?
____
16)1258
16) 78 ... 10
16) 4 ... 14
0 ... 4
0 = 00H, 4 = 04H, 14 = 0EH, 10 = 0AH according to the above table. So it is 00 04 0E 0AH.
●
Example of system exclusive message and Checksum
calculation
On Roland system exclusive message (DT1), checksum is added at the end of transmitted
data (in front of F7) to check the message is received correctly.
Value of checksum is defined by address and data (or size) of the system exclusive message
to be transmitted.
❍
How to calculate checksum (Hexadecimal number is shown with H.)
checksum is a value which lower 7 bit of the sum of address, size and checksum itself turns
to be 0.
If the address of the system exclusive message to be transmitted is aa bb ccH and data or
size is dd ee ffH,
aa + bb + cc + dd + ee + ff = sum
sum /128 = quotient and odd
When odd is 0, 0 = checksum
When odd is other than 0, 128 - odd = checksum.
■
MIDI Machine Control (MMC) Command,
Information Field/Response Reference
●
Command Recognized
Command Action
----------------- -------
01H STOP STOP
02H PLAY PLAY
03H DEFFERED PLAY PLAY
06H RECORD STROBE REC / PUNCH IN
07H RECORD EXIT PUNCH OUT
44H 00H LOCATE I/F LOCATE (Read Locator)
44H 01H LOCATE TARGET LOCATE (Desiried Time)
●
Commands Transmitted
Command Action
----------------- ------
01H STOP STOP
03H DEFFERED PLAY PLAY
06H RECORD STROBE REC/PUNCH IN
07H RECORD EXIT PUNCH OUT
44H 01H LOCATE TARGET LOCATE
5.Appendices
MV-8800_a_e.book 73 ページ 2006年11月10日 金曜日 午前10時19分