Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

FR-8 MIDI Imp E1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

MIDI Implementation

Model: FR-8x Date: June 25, 2013


Version: 1.00 {{ Volume (Controller Number 7)
Status 2nd byte 3rd byte
BnH 07H vvH
1. Receive Data n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Volume: 00H-7FH (0-127),
„„ Channel Voice Messages Initial Value = 64H (100)

• Volume messages are used to adjust the volume balance of each Part.
zzNote off • Not received when “Real Time RX-TX” part parameters= Off.
Status 2nd byte 3rd byte • Not received when “External Seq. Playback”parameters= Off. (Initial value
8nH kkH vvH is Off ))
9nH kkH 00H

n = MIDI channel number: 0H-FH (ch.1-ch.16)


{{ Pan (Controller Number 10)
Status 2nd byte 3rd byte
kk = note number: 00H-7FH (0-127)
BnH 0AH vvH
vv = note off velocity: 00H-7FH (0-127)
• Not received when “Real Time RX-TX” part parameters= Off.
n = MIDI channel number: 0H-FH (ch.1-ch.16)
• Not received when “External Seq. Playback”parameters= Off. (Initial value
vv = pan: 00H-40H-7FH (Left-Center-Right),
is Off ))
Initial Value = 40H (Center)
zzNote on • Not received when “Real Time RX-TX” part parameters= Off.
Status 2nd byte 3rd byte
9nH kkH vvH • Not received when “External Seq. Playback”parameters= Off. (Initial value
is Off ))
n = MIDI channel number: 0H-FH (ch.1-ch.16)
kk = note number: : 00H-7FH (0-127) {{ Expression (Controller Number 11)
vv = note on velocity: 01H-7FH (1-127) Status 2nd byte 3rd byte
BnH 0BH vvH
• Not received when “Real Time RX-TX” part parameters= Off.
• Not received when “External Seq. Playback”parameters= Off. (Initial value n = MIDI channel number: 0H-FH (ch.1-ch.16)
is Off )) vv = Expression: 00H-7FH (0-127),
Initial Value = 7FH (127)

zzControl Change • Not received when “Real Time RX-TX” part parameters= Off.
• The value specified by a Control Change message will not be reset even • Not received when “External Seq. Playback”parameters= Off. (Initial value
by a Program Change, etc. is Off ))

{{ Bank Select (Controller Number 0, 32) {{ Hold 1 (Controller Number 64)


Status 2nd byte 3rd byte Status 2nd byte 3rd byte
BnH 00H mmH BnH 40H vvH
BnH 20H llH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
n = MIDI channel number: 0H-FH (ch.1-ch.16) vv = Control Value: 00H-7FH (0-127), Initial Value = 00H
mm, ll = Bank number: 00H, 00H-7FH, 7FH (bank.1- (0)
bank.16384), • Not received when “Real Time RX-TX” part parameters= Off.
Initial Value = 00 00H (bank.1) • Not received when “External Seq. Playback”parameters= Off. (Initial value
• Not received when “Real Time RX-TX” part parameters= Off. is Off ))
• Not received when “External Seq. Playback”parameters= Off. (Initial value
is Off )) {{ Effect 1 (Reverb Send Level) (Controller Number 91)
Status 2nd bytes 3rd byte
{{ Modulation (Controller Number 1) BnH 5BH vvH
Status 2nd byte 3rd byte
BnH 01H vvH n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value : 00H-7FH (0-127)
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Modulation depth: 00H-7FH (0-127) • Not received when “Real Time RX-TX” part parameters= Off.
• Not received when “External Seq. Playback”parameters= Off. (Initial value
• Only for Orchestral Parts. is Off ))
• Not received when “Real Time RX-TX” part parameters= Off.
• Not received when “External Seq. Playback”parameters= Off. (Initial value {{ Effect 3 (Chorus Send Level) (Controller Number 93)
is Off )) Status 2nd byte 3rd byte
BnH 5DH vvH

n = MIDI channel number: 0H-FH (ch.1-ch.16)


vv = Control value: 00H-7FH (0-127)
Initial Value = 00H (0)
• Not received when “Real Time RX-TX” part parameters= Off.
• Not received when “External Seq. Playback”parameters= Off. (Initial value
is Off ))

Copyright © 2013 ROLAND EUROPE


All rights reserved. No part of this publication may be reproduced in any form without the written permission of ROLAND EUROPE. 1
MIDI Implementation

2. Transmitted Data
zzProgram Change
Status 2nd byte
CnH ppH „„ Channel Voice Messages
n = MIDI channel number: 0H-FH (ch.1-ch.16)
pp = Program number: 00H~0DH: Treble Register 1~14 zzNote Off
00H~1BH: Orchestra Register 1~28
00H~06H: Bass/Free Bass/Orch.Bass/ Status 2nd byte 3rd byte
Orch Chord, Orch Free Bass Register 1~7 8nH kkH vvH
00H~63H: Set 1~100
n = MIDI channel number: 0H-FH (ch.1-ch.16)
• Not received when “Real Time RX-TX” part parameters= Off. kk = note number: 00H-7FH (0-127)
• Not received when “External Seq. Playback”parameters= Off. (Initial value vv = note off velocity: 00H-7FH (0-127)
is Off )) • Not transmitted when “Real Time RX-TX” part parameters is “Off”.
• After a Program Change message is received, the sound will change • Not transmitted when the “Note Tx” parameter of the “Global Setting”
beginning with the next Note-on. Voices already sounding when the group is “Off”
Program Change message was received will not be affected. • Not transmitted when the “Note Tx” parameter in the part “MIDI TX”
group is “Off”

Bank Select & Program Change RX zzNote On


BANK Select Program Status 2nd byte 3rd byte
Registers 9nH kkH vvH
MSB CC00 LSB CC32 Change
0 0 1-14 Accordion n = MIDI channel number: 0H-FH (ch.1-ch.16)
0 0 1-7 Bass kk = note number: 00H-7FH (0-127)
vv = note on velocity: 01H-7FH (1-127)
0 1 1-7 Free Bass
• Not transmitted when “Real Time RX-TX” part parameters is “Off”.
0 0 1-7 Orch Bass • Not transmitted when the “Note Tx” parameter of the “Global Setting”
0 0 1-7 Orch Chord group is “Off”
• Not transmitted when the “Note Tx” parameter in the part “MIDI TX”
0 0 1-7 Orch Free Bass group is “Off”
0 0 1-28 Orch1
0 0 1-28 Orch2
zzControl Change
0 1 1-28 Organ {{ Bank Select (Controller Number 0, 32)
0 0 1-100 Sets* Status 2nd byte 3rd byte
BnH 00H mmH
The Sets Progran Change MIDI messages are received via Basic Channel BnH 20H llH
(Default 0DH)
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll = Bank number: 00H, 00H-7FH, 7FH (bank.1
zzPitch Bend Change bank.16384)
Status 2nd byte 3rd byte • Not transmitted when “Real Time RX-TX” part parameters= Off.
EnH llH mmH • Not transmitted when the “CC00 ” parameter of the “Global Setting”
group is “Off”
n = MIDI channel number: 0H-FH (ch.1-ch.16) • Not transmitted when the “CC32 ” parameter of the “Global Setting”
mm, ll = Pitch Bend value: 00 00H - 40 00H - 7F 7FH group is “Off”
(-8192 - 0 - +8191) • Not transmitted when the “CC00” parameter in the part “MIDI TX” group
is “Off”
• Not received when “Real Time RX-TX” part parameters= Off. • Not transmitted when the “CC32” parameter in the part “MIDI TX” group
• Not received when “External Seq. Playback”parameters= Off. (Initial value is “Off”
is Off ))
{{ Modulation (Controller number 1)
Status 2nd byte 3rd byte
BnH 01H vvH

n = MIDI channel number: 0H-FH (ch.1-ch.16)


vv = Control value: 00H-7FH (0-127)

{{ Volume (Controller Number 7)


Status 2nd byte 3rd byte
BnH 07H vvH

n = MIDI channel number: 0H-FH (ch.1-ch.16)


vv = Volume: 00H-7FH (0-127), Initial Value = 64H
(100)

• Volume messages are used to adjust the volume balance of each Part.
• Not transmitted when “Real Time RX-TX” part parameters is “Off”.
• Not transmitted when the “Volume” parameter of the “Global Setting”
group is “Off”
2
MIDI Implementation
• Not transmitted when the “Volume” parameter in the part “MIDI TX”
group is “Off”
zzProgram Change
Status 2nd byte
CnH ppH
{{ Pan (Controller Number 10)
Status 2nd byte 3rd byte n = MIDI channel number: 0H-FH (ch.1-ch.16)
BnH 0AH vvH pp = Program number: 00H~0DH: Treble Register 1~14
00H~1BH: Orchestra Register 1~28
n = MIDI channel number: 0H-FH (ch.1-ch.16) 00H~06H: Bass/Free Bass/Orch.Bass/
vv = pan: 00H-40H-7FH (Left-Center-Right), Orch Chord, Orch Free Bass Register 1~7
Initial Value = 40H (Center) 00H~63H: Set 1~100
• Not transmitted when “Real Time RX-TX” part parameters is “Off”.
• Not transmitted when “Real Time RX-TX” part parameters is “Off”. • Not transmitted when the “PC” parameter of the “Global Setting” group
• Not transmitted when the “Panpot” parameter of the “Global Setting” is “Off”
group is “Off” • Not transmitted when the “PC” parameter in the part “MIDI TX” group is
• Not transmitted when the “Panpot” parameter in the part “MIDI TX” “Off”
group is “Off”
Bank Select & Program Change TX
{{ Expression (Controller number 11) BANK Select Program
Status 2nd byte 3rd byte Registers
MSB CC00 LSB CC32 Change
BnH 0BH vvH
0 0 1-14 Accordion
n = MIDI channel number: 0H-FH (ch.1-ch.16) 0 0 1-7 Bass
vv = Control value: 00H-7FH (0-127)
• Not transmitted when “Real Time RX-TX” part parameters is “Off”. 0 1 1-7 Free Bass
• Not transmitted when the “Expression” parameter of the “Global Setting” 0 0 1-7 Orch Bass
group is “Off” 0 0 1-7 Orch Chord
• Not transmitted when the “Expression” parameter in the part “MIDI TX”
group is “Off” 0 0 1-7 Orch Free Bass
0 0 1-28 Orch1
{{ Hold 1 (Controller Number 64) 0 0 1-28 Orch2
Status 2nd byte 3rd byte
0 1 1-28 Organ
BnH 40H vvH
0 0 1-100 Sets*
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127) The Sets Progran Change MIDI messages are sent via Basic Channel
• Not transmitted when the “Sustain” parameter in the part “MIDI TX” (Default 0DH)
group is “Off”
zzPitch Bend Change
Status 2nd byte 3rd byte
{{ Effect 1 (Reverb Send Level) (Controller Number 91)
EnH IIH mmH
Status 2nd byte 3rd byte
BnH 5BH vvH
n = MIDI channel number: 0H-FH (ch.1-ch.16)
mm, ll= Pitch Bend value: 00 00H~40 00H~7F 7FH (–8192~0~+8191)
n = MIDI channel number: 0H-FH (ch.1-ch.16)
vv = Control value: 00H-7FH (0-127)
• Not transmitted when “Real Time RX-TX” part parameters is “Off”.
• Not transmitted when the “Reverb” parameter of the “Global Setting”
zzChannel Pressure
Status 2nd byte
group is “Off” DnH vvH
• Not transmitted when the “Reverb” parameter in the part “MIDI TX” n = MIDI channel number: 0H-FH (ch.1-ch.16)
group is “Off” vv = Channel Pressure : 00H-7FH (0-127)
• Not transmitted when the “Aftertouch TX” parameter of the “Global
{{ Effect 3 (Chorus Send Level) (Controller Number 93) Setting” group is “Off”
Status 2nd byte 3rd byte • Not transmitted when the “Aftertouch” parameter in the part “MIDI TX”
BnH 5DH vvH group is “Off”

n = MIDI channel number: 0H-FH (ch.1-ch.16)


vv = Control value: 00H-7FH (0-127), Initial Value = 00H „„ System Realtime Message
(0)
zzStart
• Not transmitted when “Real Time RX-TX” part parameters is “Off”. Status
• Not transmitted when the “Chorus” parameter of the “Global Setting” FAH
group is “Off” • Not transmitted when “Global Setting” “Start/Stop TX “ parameter= Off.
• Not transmitted when the “Chorus” parameter in the part “MIDI TX”
group is “Off” zzStop
Status
FCH
• Not transmitted when “Global Setting” “Start/Stop TX “ parameter= Off.

3
MIDI Implementation

zzActive Sensing 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.
Status
FEH • Data marked “nibbled” 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.
• This will be transmitted constantly at intervals of approximately 250 ms.
<Example1>
What is the decimal expression of 5AH?
From the preceding table, 5AH = 90
„„ FR-8x Default MIDI Channel <Example2>
What is the decimal expression of the value 12 34H given as hexadecimal
FR-8x Parts
for each 7 bits?
Part MIDI channel From the preceding table, since 12H = 18 and 34H = 52
Accordion,”2nd Bass Out”* 1 18 x 128 + 52 = 2356

Bass/Free Bass 2 <Example3>


Chord 3 What is the decimal expression of the nibbled value 0A 03 09 0D?
Orch1/Organ 4 From the preceding table, since 0AH = 10, 03H = 3, 09H = 9, 0DH = 13
((10 x 16 + 3) x 16 + 9) x 16 + 13 = 41885
Orch Bass 5
Orch Chord 6 <Example4>
What is the nibbled expression of the decimal value 1258?
Orch Free Bass 7
Drum 10 16) 1258
Orch2 11 16) 78... 10
16) 4... 14
Basic Channel 13
0... 4
* The “2nd Bass Out” MIDI channel is “Off” at default. Since from the preceding table, 0 = 00H, 4 = 04H, 14 = 0EH, 10 = 0AH, the
answer is 00 04 0E 0AH.

3. Supplementary Material Examples of Actual MIDI Messages


<Example1> 92 3E 5F
zzDecimal and Hexadecimal Table 9n is the Note-on status, and n is the MIDI channel number. Since 2H = 2,
In MIDI documentation, data values and addresses/sizes of exclusive 3EH = 62, and 5FH = 95, this is a Note-on message with MIDI CH = 3, note
messages etc. are expressed as hexadecimal values for each 7 bits. number 62 (note name is D4), and velocity 95.
The following table shows how these correspond to decimal numbers.
<Example2> CE 49
+------+------++------+------++------+------++------+------+
| D | H || D | H || D | H || D | H | 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
| 0 | 00H || 32 | 20H || 64 | 40H || 96 | 60H |
| 1 | 01H || 33 | 21H || 65 | 41H || 97 | 61H | CH = 15, program number 74 (Flute in GS).
| 2 | 02H || 34 | 22H || 66 | 42H || 98 | 62H |
| 3 | 03H || 35 | 23H || 67 | 43H || 99 | 63H |
| 4 | 04H || 36 | 24H || 68 | 44H || 100 | 64H | <Example3> EA 00 28
| 5 | 05H || 37 | 25H || 69 | 45H || 101 | 65H | EnH is the Pitch Bend Change status, and n is the MIDI channel number.
| 6 | 06H || 38 | 26H || 70 | 46H || 102 | 66H |
| 7 | 07H || 39 | 27H || 71 | 47H || 103 | 67H | The 2nd byte (00H = 0) is the LSB and the 3rd byte (28H = 40) is the MSB,
| 8 | 08H || 40 | 28H || 72 | 48H || 104 | 68H | but Pitch Bend Value is a signed number in which 40 00H (= 64 x 128 + 0 =
| 9 | 09H || 41 | 29H || 73 | 49H || 105 | 69H |
| 10 | 0AH || 42 | 2AH || 74 | 4AH || 106 | 6AH |
8192) is 0, so this Pitch Bend Value is 28 00H - 40 00H = 40 x 128 + 0 - (64 x
| 11 | 0BH || 43 | 2BH || 75 | 4BH || 107 | 6BH | 128 + 0) = 5120 - 8192 = -3072
| 12 | 0CH || 44 | 2CH || 76 | 4CH || 108 | 6CH |
| 13 | 0DH || 45 | 2DH || 77 | 4DH || 109 | 6DH |
| 14 | 0EH || 46 | 2EH || 78 | 4EH || 110 | 6EH | If the Pitch Bend Sensitivity is set to 2 semitones, -8192 (00 00H) will cause
| 15 | 0FH || 47 | 2FH || 79 | 4FH || 111 | 6FH | the pitch to change 200 cents, so in this case -200 x (-3072) / (-8192) = -75
| 16 | 10H || 48 | 30H || 80 | 50H || 112 | 70H |
| 17 | 11H || 49 | 31H || 81 | 51H || 113 | 71H | cents of Pitch Bend is being applied to MIDI channel 11.
| 18 | 12H || 50 | 32H || 82 | 52H || 114 | 72H |
| 19 | 13H || 51 | 33H || 83 | 53H || 115 | 73H |
| 20 | 14H || 52 | 34H || 84 | 54H || 116 | 74H | <Example4> B3 64 00 65 00 06 0C 26 00 64 7F 65 7F
| 21 | 15H || 53 | 35H || 85 | 55H || 117 | 75H | BnH is the Control Change status, and n is the MIDI channel number. For
| 22 | 16H || 54 | 36H || 86 | 56H || 118 | 76H |
| 23 | 17H || 55 | 37H || 87 | 57H || 119 | 77H | Control Changes, the 2nd byte is the control number, and the 3rd byte is
| 24 | 18H || 56 | 38H || 88 | 58H || 120 | 78H | the value. In a case in which two or more messages consecutive messages
| 25 | 19H || 57 | 39H || 89 | 59H || 121 | 79H |
| 26 | 1AH || 58 | 3AH || 90 | 5AH || 122 | 7AH | have the same status, MIDI has a provision called “running status” which al-
| 27 | 1BH || 59 | 3BH || 91 | 5BH || 123 | 7BH | lows the status byte of the second and following messages to be omitted.
| 28 | 1CH || 60 | 3CH || 92 | 5CH || 124 | 7CH |
| 29 | 1DH || 61 | 3DH || 93 | 5DH || 125 | 7DH |
Thus, the above messages have the following meaning.
| 30 | 1EH || 62 | 3EH || 94 | 5EH || 126 | 7EH |
| 31 | 1FH || 63 | 3FH || 95 | 5FH || 127 | 7FH | B3 00 00 MIDI ch.4, lower byte of CC00 parameter number: 00H
+------+------++------+------++------+------++------+------+
(B3) 20 05 (MIDI ch.4) upper byte of CC32 parameter number: 05H
D: decimal
H: hexadecimal
• 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 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
4
MIDI Implementation Chart
V-Accordion Date: June 2013
Model: FR-8x Version: 1.00

Function... Transmitted Recognized Remarks


1= Treble, 2=Bass/Freebass, 3=Chord,
4=Orch1/Organ, 5= Orch Bass,
Basic Default 1-16 1–16 6=Orch Chord, 7=Orch Free Bass. 11=
Orch2
Channel Changed 1–16, Off 1–16, Off 2 Logical parts: 13= Basic MIDI
Channel for SET change, 13= Control
MIDI Channel only TX
Default Mode 3 Mode 3
Mode Messages ************** **************
Altered ************** **************
Note 0~127 *1 0–127
True Voice
Number : ************* 0–127
Note On O *1 O
Velocity
Note Off X X
After Key’s X X
Touch Channel’s O *1 O
Pitch Bend O O
0, 32 O *1 O Bank Select
1 O O Modulation
7 O *1 X Volume
Control 10 O *1 X Panpot
Change 11 O *1 O Expression
64 O O Hold 1
91 O *1 X Reverb Send
93 O *1 X Chorus Send
Program Number 1~128 transmitted
Recognized: 1~100:
- 1~14 Accordion Register
- 1~7 Bass
- 1~7 Free Bass
Program O *1 O
- 1~7 Orchestra Bass
Change True Number 0~127 0–13
- 1~7 Orchestra Chord
- 1~7 Orchestra Free Bass
- 1~28 Orchestra 1, Orchestra 2,
Organ
- 1~100 SET
System Exclusive X X
Song Position Pointer X X
System
Song Select X X
Common
Tune Request X X
System Clock X X
Real Time Commands O *1 *3 X
All Sound Off X X
Reset All Controllers X X
Aux Local On/Off X X
Messages All Notes Off X X
Active Sensing O O
System Reset X X
*1 O X is selectable
Notes *2 Recognized as M = 1 even if M 1.
*3 Transmit Start (FA), Stop (FC)

Mode 1 : OMNI ON, POLY Mode 2 : OMNI ON, MONO O : Yes


Mode 3 : OMNI OFF, POLY Mode 4 : OMNI OFF, MONO X : No

You might also like