Roland SonicCell User Manual page 274

2xsrx series
Hide thumbs Also See for SonicCell:
Table of Contents

Advertisement

MIDI Implementation
4. Supplementary Material
■Decimal and Hexadecimal Table
(An "H" is appended to the end of numbers in hexadecimal
notation.)
In MIDI documentation, data values and addresses/sizes of
Exclusive messages, etc. are expressed as hexadecimal values for
each 7 bits.
The following table shows how these correspond to decimal
numbers.
+------+------++------+------++------+------++------+------+
| D
| H
|| D
| H
+------+------++------+------++------+------++------+------+
|
0 | 00H ||
32 | 20H ||
|
1 | 01H ||
33 | 21H ||
|
2 | 02H ||
34 | 22H ||
|
3 | 03H ||
35 | 23H ||
|
4 | 04H ||
36 | 24H ||
|
5 | 05H ||
37 | 25H ||
|
6 | 06H ||
38 | 26H ||
|
7 | 07H ||
39 | 27H ||
|
8 | 08H ||
40 | 28H ||
|
9 | 09H ||
41 | 29H ||
|
10 | 0AH ||
42 | 2AH ||
|
11 | 0BH ||
43 | 2BH ||
|
12 | 0CH ||
44 | 2CH ||
|
13 | 0DH ||
45 | 2DH ||
|
14 | 0EH ||
46 | 2EH ||
|
15 | 0FH ||
47 | 2FH ||
|
16 | 10H ||
48 | 30H ||
|
17 | 11H ||
49 | 31H ||
|
18 | 12H ||
50 | 32H ||
|
19 | 13H ||
51 | 33H ||
|
20 | 14H ||
52 | 34H ||
|
21 | 15H ||
53 | 35H ||
|
22 | 16H ||
54 | 36H ||
|
23 | 17H ||
55 | 37H ||
|
24 | 18H ||
56 | 38H ||
|
25 | 19H ||
57 | 39H ||
|
26 | 1AH ||
58 | 3AH ||
|
27 | 1BH ||
59 | 3BH ||
|
28 | 1CH ||
60 | 3CH ||
|
29 | 1DH ||
61 | 3DH ||
|
30 | 1EH ||
62 | 3EH ||
|
31 | 1FH ||
63 | 3FH ||
+------+------++------+------++------+------++------+------+
D: decimal
H: hexadecimal
* Decimal values such as MIDI channel, bank select, and program
change are listed as one 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 expressing
two 7-bit bytes would indicate a value of aa x 128+bb.
* In the case of values which have a +/- sign, 00H = -64, 40H = +/-0,
and 7FH = +63, so that the decimal expression would be 64 less
than the value given in the above chart. In the case of two types, 00
00H = -8192, 40 00H = +/-0, and 7F 7FH = +8191. For example, if
aa bbH were expressed as decimal, this would be aa bbH - 40 00H
= aa x 128+bb - 64 x 128.
* Data marked "Use nibbled data" is expressed in hexadecimal in 4-
bit units. A value expressed as a 2-byte nibble 0a 0bH has the
value of a x 16+b.
274
|| D
| H
|| D
| H
64 | 40H ||
96 | 60H |
65 | 41H ||
97 | 61H |
66 | 42H ||
98 | 62H |
67 | 43H ||
99 | 63H |
68 | 44H || 100 | 64H |
69 | 45H || 101 | 65H |
70 | 46H || 102 | 66H |
71 | 47H || 103 | 67H |
72 | 48H || 104 | 68H |
73 | 49H || 105 | 69H |
74 | 4AH || 106 | 6AH |
75 | 4BH || 107 | 6BH |
76 | 4CH || 108 | 6CH |
77 | 4DH || 109 | 6DH |
78 | 4EH || 110 | 6EH |
79 | 4FH || 111 | 6FH |
80 | 50H || 112 | 70H |
81 | 51H || 113 | 71H |
82 | 52H || 114 | 72H |
83 | 53H || 115 | 73H |
84 | 54H || 116 | 74H |
85 | 55H || 117 | 75H |
86 | 56H || 118 | 76H |
87 | 57H || 119 | 77H |
88 | 58H || 120 | 78H |
89 | 59H || 121 | 79H |
90 | 5AH || 122 | 7AH |
91 | 5BH || 123 | 7BH |
92 | 5CH || 124 | 7CH |
93 | 5DH || 125 | 7DH |
94 | 5EH || 126 | 7EH |
95 | 5FH || 127 | 7FH |
<Example 1> What is the decimal expression of 5AH?
From the preceding table, 5AH = 90
<Example 2> What is the decimal expression of the value 12 34H
given as hexadecimal for each 7 bits?
From the preceding table, since 12H = 18 and 34H = 52
18 x 128+52 = 2356
<Example 3> What is the decimal expression of the nibbled value 0A
03 09 0D?
From the preceding table, since 0AH = 10, 03H = 3, 09H = 9, 0DH =
13
((10 x 16+3) x 16+9) x 16+13 = 41885
|
<Example 4> What is the nibbled expression of the decimal value
1258?
16 ) 1258
16 )
78 ...10
16 )
4 ...14
0 ... 4
Since from the preceding table, 0 = 00H, 4 = 04H, 14 = 0EH, 10 =
0AH, the result is: 00 04 0E 0AH.
■Examples of Actual MIDI Messages
<Example 1> 92 3E 5F
9n is the Note-on status, and n is the MIDI channel number. Since 2H
= 2, 3EH = 62, and 5FH = 95, this is a Note-on message with MIDI
CH = 3, note number 62 (note name is D4), and velocity 95.
<Example 2> CE 49
CnH is the Program Change status, and n is the MIDI channel
number. Since EH = 14 and 49H = 73, this is a Program Change
message with MIDI CH = 15, program number 74.
<Example 3> EA 00 28
EnH is the Pitch Bend Change status, and n is the MIDI channel
number. The 2nd byte (00H = 0) is the LSB and the 3rd byte (28H =
40) is the MSB, but Pitch Bend Value is a signed number in which 40
00H (= 64 x 12+80 = 8192) is 0, so this Pitch Bend Value is
28 00H - 40 00H = 40 x 12+80 - (64 x 12+80) = 5120 - 8192 = -3072
If the Pitch Bend Sensitivity is set to 2 semitones, -8192 (00 00H) will
cause the pitch to change -200 cents, so in this case -200 x (-3072) ÷ (-
8192) = -75 cents of Pitch Bend is being applied to MIDI channel 11.
<Example 4> B3 64 00 65 00 06 0C 26 00 64 7F 65 7F
BnH is the Control Change status, and n is the MIDI channel
number. For Control Changes, the 2nd byte is the control number,
and the 3rd byte is the value. In a case in which two or more
messages consecutive messages have the same status, MIDI has a
provision called "running status" which allows the status byte of the
second and following messages to be omitted. Thus, the above
messages have the following meaning.

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents