•A Note-on received immediately after a Portamento Control message will
change continuously in pitch, starting from the pitch of the Source Note
Number.
• If a voice is already sounding for a note number identical to the Source
Note Number, this voice will continue sounding (i.e., legato) and will,
when the next Note-on is received, smoothly change to the pitch of that
Note-on.
• The rate of the pitch change caused by Portamento Control is determined
by the Portamento Time value.
Example 1
On MIDI
DescriptionResult
90 3C 40Note on C4C4 on
B0 54 3CPortamento Control from C4no change
90 40 40Note on E4 glide fromC4 to E4
80 3C 40Note off C4no change
80 40 40Note off E4E4 off
Example 2
On MIDIDescriptionResult
B0 54 3CPortamento Control from C4no change
90 40 40Note on E4E4 is played with glide from
C4 to E4
80 40 40Note off E4E4 off
Effect 1 (Reverb Send Level) (Controller number 91)
❍
Status
2nd byte3rd byte
BnH5BHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Reverb Send Level:00H~7FH (0~127)
• This message adjusts the Reverb Send Level of each Part.
•Not received when “Reverb” RX Event is Off.
❍
Effect 3 (Chorus Send Level) (Controller number 93)
Status
2nd byte3rd byte
BnH5DHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Chorus Send Level:00H~7FH (0~127)
• This message adjusts the Chorus Send Level of each Part.
•Not received when “Chorus” RX Event is Off.
❍
NRPN MSB/LSB (Controller number 99, 98)
Status
2nd byte3rd byte
BnH63HmmH
BnH62HllH
n= MIDI channel number:0H~FH (Ch.1~16)
mm= upper byte (MSB) of the parameter number specified by NRPN
ll= lower byte (LSB) of the parameter number specified by NRPN
• The value set by NRPN will not be reset even if Program Change or Reset
All Controllers is received.
•Not received when “NRPN” RX Event is Off.
**NRPN**
The NRPN (Non Registered Parameter Number) message allows an extended
range of control changes to be used. On the JM-8, NRPN messages can be
used to modify sound parameters, etc.
To use these messages, you must first use NRPN messages (Controller number 98 and 99, their order does not matter) to specify the parameter to be controlled, and then use Data Entry messages (Controller number 6) to specify the
value of the specified parameter.
Once an NRPN parameter has been specified, all Data Entry messages
received on that channel will modify the value of that parameter. To prevent
accidents, it is recommended that you set RPN Null (RPN Number= 7FH 7FH)
when you have finished setting the value of the desired parameter.
On the JM-8, Data entry LSB (Controller number 38) of NRPN is ignored, so it
is no problem to send Data entry MSB (Controller number 6) only (without Data
entry LSB).
On the JM-8, NRPN can be used to modify the following parameters:
NRPNData entry
MSB LSB
MSBFunction and range
01H 08HmmHVibrato Rate (relative change)
mm: 00H~40H~7FH (-64~0~+63)
01H 09HmmHVibrato Depth (relative change)
mm: 00H~40H~7FH (-64~0~+63)
01H 0AHmmHVibrato Delay (relative change)
mm: 00H~40H~7FH (-64~0~+63)
01H 20HmmHTVF Cutoff Frequency (relative change)
mm: 00H~40H~7FH (-64~0~+63)
2
●
●
●
■
●
●
JM-8 MIDI Implementation
01H 21HmmHTVF Resonance (relative change)
01H 63HmmHTVF&TVA Envelope Attack Time (rel. change)
01H 64HmmHTVF&TVA Envelope Decay Time (rel. change)
01H 66HmmHTVF&TVA Env. Release Time (relative change)
n= MIDI channel number:0H~FH (Ch.1~16)
mm= upper byte (MSB)of parameter number specified by RPN
ll= lower byte (LSB) of parameter number specified by RPN
•Not received when "RPN" RX Event is Off.
• The value specified by RPN will not be reset even by messages such as
Program Change or Reset All Controller.
**RPN**
The RPN (Registered Parameter Number) messages are expanded control
changes, and each function of an RPN is described by the MIDI Standard.
To use these messages, you must first use RPN (Controller number 101 and
100, their order does not matter) to specify the parameter to be controlled, and
then use Data Entry messages (Controller number 6, 38) to specify the value
of the specified parameter. Once an RPN parameter has been specified, all
Data Entry messages received on that channel will modify the value of that
parameter.
To prevent accidents, it is recommended that you set RPN to Null (RPN Number= 7FH 7FH) when you have finished setting the value of the desired parameter.
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
rr: Drum Instrument note number
mm: 00H~40H~7FH (-64~0~+63 semitone)
rr: Drum Instrument note number
mm: 00H~7FH (0~max)
Set condition where RPN and NRPN are
unspecified. The data entry messages after
set RPN null will be ignored. (No Data entry
messages are required after RPN null).
Settings already made will not change.
mm, ll: ignored
Program Change
Status
CnHppH
n= MIDI channel number:0H~FH (Ch.1~16)
pp= Program number:00H~7FH (prog.1~prog.128)
•Not received when “Program Change” RX Event is Off.
•After a Program Change message is received, the sound will change
beginning with the next Note-on. Voices already sounding when the Program Change message was received will not be affected.
Modulation0 (off)
Expression127 (max)
Hold 10 (off)
Portamento0 (off)
Sostenuto0 (off)
Soft0 (off)
RPNunset; previously set data do not change
NRPNunset; previously set data do not change
All Notes Off (Controller number 123)
Status
BnH7BH00H
n= MIDI channel number:0H~FH (Ch.1~16)
•When All Notes Off is received, all notes on the corresponding channel
will be turned off. However, if Hold 1 or Sostenuto is ON, the sound will
be continued until these are turned off.
2nd byte3rd byte
OMNI OFF (Controller number 124)
Status
BnH7CH00H
n= MIDI channel number:0H~FH (Ch.1~16)
• The same processing will be carried out as when All Notes Off is received.
2nd byte3rd byte
OMNI ON (Controller number 125)
Status
BnH7DH00H
n= MIDI channel number:0H~FH (Ch.1~16)
• The same processing will be carried out as when All Notes Off is
received.OMNI ON will not be turned on.
• The same processing will be carried out as when All Sounds Off and All
Notes Off is received, and the corresponding channel will be set to Mode
4 (M= 1) regardless of the value of “mm (mono number).”
2nd byte3rd byte
POLY (Controller number 127)
Status
BnH7FH00H
n= MIDI channel number:0H~FH (Ch.1~16)
• The same processing will be carried out as when All Sounds Off and All
Notes Off is received, and the corresponding channel will be set to
Mode 3.
2nd byte3rd byte
System Realtime Messages
Active Sensing
Status
FEH
•When Active Sensing is received, the unit will begin monitoring the intervals of all further messages. While monitoring, if the interval between
messages exceeds 420 ms, the same processing will be carried out as
when All Sounds Off, All Notes Off and Reset All Controllers are received,
and message interval monitoring will be halted.
Timing Clock
Status
F8H
* SONG: Received when Song RX parameter (MIDI) is set to AUTO or
MIDI.
•When “Timing Clock” message is received, theSong is synchronized to an
external clock according to the following table.
Song Sync RXResponse
InternalA Song will neither start/stop nor follow the tempo of
the external Timing Clock (F8) and “Start /Stop” (FA/
FC) messages.
AutoIf a Song receives MIDI “Start/Stop” (FA/FC), it will fol-
low Internal or External clock, depending on whether
“MIDI Clock” (F8) messages are received.
MIDIIf a Song receives MIDI “Start/Stop” (FA/FC) it will fol-
low External “MIDI Clock” (F8) messages and herefore wait until they are received.
RemoteIf a Song receives MIDI “Start/Stop” (FA/FC) it will fol-
low only Internal tempo and thus ignore incoming
“MIDI Clock” (F8) messages.
Start
Status
FAH
* SONG: Received when Song RX parameter (MIDI) is set to AUTO, MIDI
or REMOTE.
Continue(Song playback only)
Status
FBH
•Received when Song RX parameter (MIDI) is set to AUTO, MIDI or
REMOTE.
•When a “Continue” message is received, the Song continues playing from
the current position.
Stop
Status
FCH
* SONG: Received when Song RX parameter (MIDI) is set to AUTO, MIDI
or REMOTE.
•When a “Stop” message is received, the Song stops playing.
System Common Messages
Song Position Pointer
Status2nd byte3rd byte
F2HXXHYYH
XX= Song Position ( Bar ) LSB
YY= Song Position ( Bar ) MSB
JM-8 MIDI Implementation
System Exclusive Messages
Status
F0HiiH, ddH, ......,eeHF7H
F0H:System Exclusive Message status
F7H:EOX (End Of Exclusive)
❍
GM1 System On
This message resets the internal settings of the unit to the General MIDI 1 initial
state.
Status
F0H7EH, 7FH, 09H, 01HF7H
Byte
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
01HSub ID#2 (General MIDI 1 On)
F7HEOX (End Of Exclusive)
•When this message is received, Rx.BANK SELECT will be OFF and
Rx.NRPN will be OFF.
• There must be an interval of at least 50 ms between this message and the
next message.
•Only for the Song parts.
GM2 System On
❍
Status
F0H7EH 7FH 09H 03H
ByteExplanation
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
03HSub ID#2 (General MIDI 2 On)
F7HEOX (End Of Exclusive)
•When this message is received, the JM-8 will be able to receive the messages specified by General MIDI 2, and use the General MIDI 2 sound
map.
•Only for the Song parts.
❍
GM System Off
GM System Off is a command message that resets the internal state of the
JM-8 from the GM state to its native condition. The JM-8 will reset to the GS
default state.
Status
F0HF0H 7EH 7FH 09H 02HF7H
Byte
F0HExclusive status
7EHID number (Universal Non-realtime Message)
7FHDevice ID (Broadcast)
09HSub ID#1 (General MIDI Message)
02HSub ID#2 (General MIDI Off)
F7HEOX (End Of Exclusive)
•When this message is received, the JM-8 will reset to the GS default
state.
•Only for the Song parts.
Data byteStatus
ii= ID number: an ID number (manufacturer ID) to indicate the manufacturer whose Exclusive message this
is. Roland 's manufacturer ID is 41H.
ID numbers 7EH and 7FH are extensions of the MIDI
standard; Universal Non-realtime Messages (7EH) and
Universal Realtime Messages (7FH).
dd,...,ee= data:00H~7FH (0~127)
Data byteStatus
Explanation
Data byteStatus
F7H
Data byteStatus
Explanation
■
●
GS reset
❍
GS Reset is a command message that resets the internal settings of a device
to the GS initial state. This message appears at the beginning of GS music
data, and a GS device that receives this message will automatically be set to
the proper state to correctly play back GS music data.
Status
F0H41H, dev, 42H, 12H, 40H, 00H, 7FH, 00H, 41HF7H
Byte
F0HExclusive status
41HID number (Roland)
devDevice ID (dev: 00H~1FH (1~32),
42HModel ID (GS)
12HCommand ID (DT1)
40HAddress MSB
00HAddress
7FHAddress LSB
00HData (GS reset)
41HChecksum
F7HEOX (End Of Exclusive)
•When this message is received, Rx.NRPN will be ON.
•There must be an interval of at least 50 ms between this message and the
•Only for the Song parts.
Exit GS Mode
❍
“Exit GS Mode” resets the internal settings of the unit to Arranger Mode I initial
state .
Status
F0H41H, dev, 42H, 12H, 40H, 00H, 7FH, 7FH,
Byte
F0HExclusive status
41HID number (Roland)
devDevice ID (dev: 00H~1FH (1~32) Initial value is
42HModel ID (GS)
12HCommand ID (DT1)
40HAddress MSB
00HAddress
7FHAddressLSB
7FHData (Exit GS Mode)
42HChecksum
F7HEOX (End Of Exclusive)
•There must be an interval of at least 100 ms between this message and
•Only for the Song parts.
Data byteStatus
Explanation
Initial value is 10H (17))
next.
Data byteStatus
F7H
42H
Explanation
10H(17))
the next message.
Universal Realtime System Exclusive Messages
❍
Master Volume
Status
F0H7FH, 7FH, 04H, 01H, llH, mmHF7H
Byte
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control messages)
01HSub ID#2 (Master Volume)
llHMaster Volume lower byte
mmHMaster Volume upper byte
F7HEOX (End Of Exclusive)
•The lower byte (llH) of Master Volume will be handled as 00H.
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
03HSub ID#2 (Master Fine Tuning)
llHMaster Fine Tuning LSB
mmHMaster Fine Tuning MSB
F7HEOX (End Of Exclusive)
mm, ll : 00 00H~40 00H~7F 7FH (-100~0~+99.9 [cents])
❍
Master Coarse Tuning
Status
Data byteStatus
F0H7FH,7FH,04H,04H,llH,mmHF7
Byte
Explanation
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
04HSub ID#2 (Master Coarse Tuning)
llHMaster Coarse Tuning LSB
mmHMaster Coarse Tuning MSB
F7HEOX (End Of Exclusive)
llH:ignored (processed as 00H)
mmH:28H~40H~58H (-24~0~+24 [semitones])
Global Parameter Control
Global Parameter Control messages are newly provided for General MIDI 2.
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
05HSub ID#2 (Global Parameter Control)
01HSlot path length
01HParameter ID width
01HValue width
01HSlot path MSB
01HSlot path LSB (Effect 0101: Reverb)
ppHParameter to be controlled.
vvHValue for the parameter.
F7HEOX (End Of Exclusive)
pp=0Reverb Type
vv= 00H Small Room (Room1)
vv= 01H Medium Room (Room2)
vv= 02H Large Room (Room3)
vv= 03H Medium Hall (Hall1)
vv= 04H Large Hall (Hall2)
vv= 08H Plate (Plate)
pp=1Reverb Time
vv= 00H~7FH0~127
Chorus Parameters
❍
Status
Data byteStatus
F0H7FH, 7FH, 04H, 05H, 01H, 01H, 01H, 01H,
02H, ppH, vvH
Byte
Explanation
F0HExclusive status
7FHID number (universal realtime message)
7FHDevice ID (Broadcast)
04HSub ID#1 (Device Control)
05HSub ID#2 (Global Parameter Control)
01HSlot path length
01HParameter width
01HValue width
01HSlot path MSB
02HSlot path LSB (Effect 0102: Chorus)
ppHParameter to be controlled.
vvHValue for the parameter.
F7HEOX (End Of Exclusive)
• This adjusts the volume of a Part. It can be used independently from Volume messages. Expression messages are used for musical expression
within a performance, e.g., expression pedal movements, crescendo and
decrescendo.
•Not transmitted when "Expression" TX Event is Off.
Hold 1 (Controller number 64)
❍
Status
2nd byte3rd byte
BnH40HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Control value:00H~7FH (0~127)
•Not trabsnitted when “Hold” TX Event is Off.
❍
Portamento (Controller number 65)
Status
2nd byte3rd byte
BnH41HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Control value:00H~7FH (0~127) 0~63= OFF, 64~127=
ON
Sostenuto (Controller number 66)
❍
Status
2nd byte3rd byte
BnH42HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Control value:00H~7FH (0~127) 0~63= OFF, 64~127= ON
•Not transmitted when “Sostenuto” TX Event is Off.
❍
Soft (Controller number 67)
Status
2nd byte3rd byte
BnH43HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Control value:00H~7FH (0~127) 0~63= OFF, 64~127= ON
•Not transmitted when “Soft” TX Event is Off.
❍
Hold 2 (Controller number 69)
Status
2nd byte3rd byte
BnH45HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Control value:00H~7FH (0~127) 0~63= OFF, 64~127= ON
•Not transmitted when “Hold” TX Event is Off.
❍
Filter Resonance (Timbre/Harmonic Intensity) (Controller number 71)
Status
2nd byte3rd byte
BnH47HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Resonance value
(relative change):
Release Time (Controller number 72)
❍
00H~7FH (-64~0~+63),
Initial value= 40H (no change)
Status2nd byte3rd byte
BnH48HvvH
n= MIDI channel number:0H~FH(Ch.1~16)
vv= Release Time value
(relative change):
❍
Attack time (Controller number 73)
00H~7FH (-64~0~+63),
Initial value= 40H (no change)
Status2nd byte3rd byte
BnH49HvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Attack time value
(relative change):
00H~7FH (-64~0~+63),
Initial value=40H (no change)
Cutoff (Controller number 74)
❍
Status
2nd byte3rd byte
BnH4AHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Cutoff value
(relative change):
❍
Decay Time (Controller number 75)
00H~7FH(-64~0~+63),
Initial value= 40H (no change)
Status2nd byte3rd byte
BnH4BHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Decay Time value
(relative change):
❍
Vibrato Rate (Controller number 76)
00H~7FH (-64~0~+63),
Initial value= 40H (no change)
Status2nd byte3rd byte
BnH4CHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Vibrato Rate value
(relative change):
Vibrato Depth (Controller number 77)
❍
00H~7FH (-64~0~+63),
Initial value= 40H (no change)
Status2nd byte3rd byte
BnH4DHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Vibrato Depth Value
(relative change):
❍
Vibrato Delay (Controller number 78)
00H~7FH (-64~0~+63),
Initial Value= 40H (no change)
Status2nd byte3rd byte
BnH4EHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Vibrato Delay value
(relative change):
Portamento control (Controller number 84)
❍
00H~7FH (-64~0~+63),
Initial value=40H (no change)
Effect 1 (Reverb Send Level) (Controller number 91)
Status
2nd byte3rd byte
BnH5BHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Reverb Send Level:00H~7FH (0~127)
• This message adjusts the Reverb Send Level of each Part.
•Not transmitted when “Reverb” TX Event is Off.
❍
Effect 3 (Chorus Send Level) (Controller number 93)
Status
2nd byte3rd byte
BnH5DHvvH
n= MIDI channel number:0H~FH (Ch.1~16)
vv= Chorus Send Level:00H~7FH (0~127)
• This message adjusts the Chorus Send Level of each Part.
•Not transmitted when “Chorus” TX Event is Off.
❍
NRPN MSB/LSB (Controller number 99, 98)
Status
2nd byte3rd byte
BnH63HmmH
BnH62HllH
n= MIDI channel number:0H~FH (Ch.1~16)
mm= upper byte (MSB) of the parameter number specified by NRPN
ll= lower byte (LSB) of the parameter number specified by NRPN
•Not transmitted when “NRPN” TX Event is Off.
**NRPN**
The NRPN (Non Registered Parameter Number) message allows you to use
an extended range of control changes, which are not defined by the MIDI specification. NRPNs provide a great deal of freedom, and can be used with any
manufacturer’s devices. As a result, any particular parameter number can easily mean one thing when used for a certain device, and mean something completely different on another device.
Note that RPNs and NRPNs require that a multiple number of messages be
processed in the correct order. However, a majority of the sequencers currently
on the market cannot always be relied on to consistently send messages in the
proper order if the messages are located at almost exactly the same point in
time.
8
JM-8 MIDI Implementation
●
●
■
●
●
●
On GS instruments, NRPN can be used to modify the following parameters.
The range of values for relative change parameters will be different with certain
models. Please see the explanation that follows the chart.:
NRPNData entry
MSB LSB
01H 08HmmHVibrato Rate (relative change)
01H 09HmmHVibrato Depth (relative change)
01H 0AHmmHVibrato Delay (relative change)
01H 20HmmHTVF Cutoff Frequency (relative change)
01H 21HmmHTVF Resonance (relative change)
01H 63HmmHTVF&TVA Envelope Attack Time (rel. change)
01H 64HmmHTVF&TVA Envelope Decay Time (rel. change)
01H 66HmmHTVF&TVA Env. Release Time (relative change)
n= MIDI channel number:0H~FH (Ch.1~16)
mm= upper byte (MSB)of parameter number specified by RPN
ll= lower byte (LSB) of parameter number specified by RPN
•Not transmitted when "RPN" RX Event is Off.
**RPN**
The RPN (Registered Parameter Number) messages are expanded control
changes, and each function of an RPN is described by the MIDI Standard.
MSBFunction and range
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
mm: 00H~40H~7FH (-64~0~+63)
rr: Drum Instrument note number
mm: 00H~40H~7FH (-64~0~+63 semitone)
rr: Drum Instrument note number
mm: 00H~7FH (0~max)
Set condition where RPN and NRPN are
unspecified. The data entry messages after
set RPN null will be ignored. (No Data entry
messages are required after RPN null).
Settings already made will not change.
mm, ll: ignored
Program Change
Status
CnHppH
n= MIDI channel number:0H~FH (Ch.1~16)
pp= Program number:00H~7FH (prog.1~prog.128)
•Not transmitted when “Program Change” TX Event is Off.
2nd byte
Pitch Bend Change
Status
EnHllHmmH
n= MIDI channel number:0H~FH (Ch.1~16)
mm, ll= Pitch Bend value:00 00H~40 00H~7F 7FH (–8192~0~+8191)
•Not transmitted when “Pitch Bender ” TX Event is Off.
2nd byte3rd byte
Channel Mode Messages
All Sounds Off (Controller number 120)
Status
BnH78H00H
n= MIDI channel number:0H~FH (Ch.1~16)
•When the message is transmitted , all notes currently sounding on the
corresponding channel will be turned Off.
Reset All Controllers (Controller number 121)
Status
BnH79H00H
n= MIDI channel number:0H~FH (Ch.1~16)
•When this message is transmitted, the following controllers will be set to
their reset values.
Controller
Pitch Bend Change+/-0 (center)
Polyphonic Key Pressure0 (off)
Channel Pressure0 (off)
Modulation0 (off)
Expression127 (max)
Hold 10 (off)
Portamento0 (off)
Sostenuto0 (off)
Soft0 (off)
RPNunset; previously set data do not change
NRPNunset; previously set data do not change
•The corresponding channel is set to Mode 4 (M= 1).
2nd byte3rd byte
2nd byte3rd byte
Reset value
2nd byte3rd byte
9
JM-8 MIDI Implementation
10●
■
●
POLY (Controller number 127)
Status
BnH7FH00H
n= MIDI channel number:0H~FH (Ch.1~16)
• The corresponding channel is set to Mode 3.
2nd byte3rd byte
System Realtime Messages
Active Sensing
Status
FEH
• This message is transmitted at intervals of approximately 250 ms.
● Timing Clock
Status
F8H
● Start
Status
FAH
● Continue(Song playback only)
Status
FBH
• This message is transmitted when the sequencer is not started from the
beginning.
● Stop
Status
FCH
■ System Common Messages
● Song Position Pointer
Status
F2HXXHYYH
XX= Song Position ( Bar ) LSB
YY= Song Position ( Bar ) MSB
2nd byte3rd byte
■ System Exclusive Messages
Status
F0HiiH, ddH, ......,eeHF7H
F0H:System Exclusive Message status
F7H:EOX (End Of Exclusive)
❍
GS reset
GS Reset is a message that resets the internal settings of a device to the GS
initial state. This message appears at the beginning of GS music data, and a
GS device that receives this message will automatically be set to the proper
state to correctly play back GS music data.
Status
F0H41H, dev, 42H, 12H, 40H, 00H, 7FH, 00H, 41HF7H
Byte
F0HExclusive status
41HID number (Roland)
devDevice ID (dev: 00H~1FH (1~32),
42HModel ID (GS)
12HCommand ID (DT1)
40HAddress MSB
00HAddress
7FHAddress LSB
00HData (GS reset)
41HChecksum
F7HEOX (End Of Exclusive)
Data byteStatus
ii= ID number: an ID number (manufacturer ID) to indicate the
manufacturer whose Exclusive message this is. Roland 's manufacturer ID is 41H.
ID numbers 7EH and 7FH are extensions of the MIDI standard;
Universal Non-realtime Messages (7EH) and Universal Realtime Messages (7FH).
dd,...,ee= data:00H~7FH (0~127)
Data byteStatus
Explanation
Initial value is 10H (17))
3. Individual parameter transmission and
reception
Individual Parameter Transmission transmits data (or requests data) for one
parameter as one exclusive message (one packet of “F0 ..... F7”).
In Individual Parameter Transmission, you must use the Address and Size listed in the following "Parameter Address Map". Addresses marked at "#" cannot
be used as starting addresses.
■ System Exclusive messages
Data Set 1 (DT1) is the only System Exclusive messages transmitted by the
JM-8.
41HID number (Roland)
devDevice ID (dev: 00H~1FH, Initial value is 10H)
42HModel ID (GS)
12HCommand ID (DT1)
aaHAddress MSB: upper byte of the starting address of the
bbHAddress: middle byte of the starting address of the data
ccHAddress LSB: lower byte of the starting address of the
ddHData: the actual data to be sent. Multiple bytes of data
: :
eeHData
sumChecksum
F7HEOX (End Of Exclusive)
• The amount of data that can be transmitted at one time depends on the
•Data larger than 128 bytes will be divided into packets of 128 bytes or
•Regarding the checksum, please refer to “Example of an Exclusive mes-
Data byteStatus
Explanation
data to be sent
to be sent
data to be sent.
are transmitted in order starting from the address.
type of data, and data will be transmitted from the specified starting
address and size.
less, and each packet will be sent at an interval of about 40 ms.
sage checksum calculation” on page 15.
JM-8 MIDI Implementation
● Patch parameters
❍
Patch common parameters
Parameters that apply to all Parts of each module are called “Patch Common” parameters.
Address(H)
Size(H)Data (H)ParameterDescriptionDefault Value (H) Description
• REVERB MACRO is a macro parameter that allows global setting of reverb parameters. When you select the reverb type with REVERB MACRO, each
reverb parameter will be set to their most suitable value.
• REVERB CHARACTER is a parameter that changes the reverb algorithm. The value of REVERB CHARACTER corresponds to the REVERB MACRO of
the same number.
• CHORUS MACRO is a macro parameter that allows global setting of chorus parameters. When you select the chorus type with CHORUS MACRO, each
chorus parameter will be set to their most suitable value.
11
JM-8 MIDI Implementation
❍
Patch Part parameters
The JM-8 has 19 Parts: 3 parts assigned to External In, and 16 parts for Songs.
For External part control, use the address [50 xx xx]
For Song part control, use the address [40 xx xx]
The 19 Parts are:
9——9Part 99X= 9
10——10Part 1010X= 0
11——11Part 1111X= A
12——12Part 1212X= B
13——13Part 1313X= C
14——14Part 1414X= D
1515Part 1515X= E
16——16Part 1616X= F
The relation between Part number and Block number is as follows.
x...BLOCK NUMBER (0~F)Part 1(default MIDIch = 1)x=1
• n... MIDI channel number (0~F) of the BLOCK.
In the following map, the control numbers of the control changes are indicated as CC#.
Address(H)
40 1x 0000 00 0200~7FTONE NUMBERCC#00 VALUE 0~127000
•This parameter sets the Drum Map of the Part used as the Drum Part. The JM-8 can simultaneously (in different Parts) use up to two Drum Maps (MAP1,
MAP2). With the initial settings, Part10 (MIDI CH=10, x=0) is set to MAP1 (1), and other Parts are set to normal instrumental Parts (OFF(0)).
•Only for Song parts.
Size(H)Data (H)ParameterDescriptionDefault Value (H) Description
• PITCH OFFSET FINE allows you to alter, by a specified frequency amount, the pitch at which notes will sound. This parameter differs from the conventional
Fine Tuning (RPN #1) parameter in that the amount of frequency alteration (in Hertz) will be identical no matter which note is played. When a multiple number
of Parts, each of which has been given a different setting for PITCH OFFSET FINE, are sounded by means of an identical note number, you can obtain a
Celeste effect.
• SCALE TUNING is a function that allows fine adjustment to the pitch of each note in the octave. The pitch of each identically-named note in all octaves will
change simultaneously. A setting of +/–0 cents (40H) is equal temperament.
•You may not always be able to obtain the desired effect by modifying the LFO 1 and LFO 2 parameters.
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.
•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.
[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]
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]
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 (Flute in GS).
[Example 3]
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]
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.
In other words, the above messages specify a value of 0C 00H for RPN parameter number 00 00H on MIDI channel 4, and then set the RPN parameter number to 7F 7FH.
RPN parameter number 00 00H is Pitch Bend Sensitivity, and the MSB of the
value indicates semitone units, so a value of 0CH = 12 sets the maximum pitch
bend range to ±12 semitones (1 octave). (On GS sound generators the LSB of
Pitch Bend Sensitivity is ignored, but the LSB should be transmitted anyway
(with a value of 0) so that operation will be correct on any device.)
Once the parameter number has been specified for RPN or NRPN, all Data
Entry messages transmitted on that same channel will be valid, so after the
desired value has been transmitted, it is a good idea to set the parameter number to 7F 7FH to prevent accidents.
This is the reason for the (B3) 64 7F (B3) 65 7F at the end. It is not desirable
for performance data (such as Standard MIDI File data) to contain many events
with running status as given in [Example 4]. This is because if playback is halted during the song and then rewound or fast-forwarded, the sequencer may not
be able to transmit the correct status, and the sound generator will then misinterpret the data. Take care to give each event its own status.
It is also necessary that the RPN or NRPN parameter number setting and the
value setting be done in the proper order. On some sequencers, events occurring in the same (or consecutive) clock may be transmitted in an order different
than the order in which they were received. For this reason it is a good idea to
slightly skew the time of each event (about 1 tick for TPQN = 96, and about 5
ticks for TPQN = 480).
* TPQN: Ticks Per Quarter Note
● Example of an Exclusive message checksum calculation
Roland Exclusive messages (RQ1, DT1) are transmitted with a checksum at
the end (before F7) to make sure that the message was correctly received. The
value of the checksum is determined by the address and data (or size) of the
transmitted Exclusive message.
How to calculate the checksum (hexadecimal numbers are indicated by “H”)
❍
The checksum is a value derived by adding the address, size, and checksum
itself and inverting the lower 7 bits.
Here’s an example of how the checksum is calculated. We will assume that in
the exclusive (SysEx) message we are transmitting, the address is aa bb ccH
and the data or size is “dd ee ffH”.
aa+bb+cc+dd+ee+ff = sum
sum ÷ 128 = quotient ... remainder
128 – remainder = checksum
[Example 1]
According to the “Patch parameters” on page 11, the REVERB MACRO
Address is “40 01 30H”, and ROOM 3 corresponds to “02H”. Thus…
checksum = 128 - 0 (remainder) = 128 = 80H
In this case, however, the checksum value should be 00H, not 80H. You should
use 00H if the remainder is 0. This means that F0 41 10 42 12 40 01 33 0C 00
F7 is the message we transmit.
Setting REVERB LEVEL to “12”
● About the Tuning
In MIDI, individual Parts are tuned by sending RPN #1 (Master Fine Tuning) to
the appropriate MIDI channel.
In MIDI, an entire device is tuned by either sending RPN #1 to all MIDI channels
being used, or by sending a System Exclusive MASTER TUNE (address 40 00
00H).
RPN #1 allows tuning to be specified in steps of approximately 0.012 cents (to
be precise, 100/8192 cent), and System Exclusive MASTER TUNE allows tuning in steps of 0.1 cent. One cent is 1/100th of a semitone.
The values of RPN #1 (Master Fine Tuning) and System Exclusive MASTER
TUNE are added together to determine the actual pitch sounded by each Part.
Frequently used tuning values are given in the following table for your reference. Values are in hexadecimal (decimal in parentheses).
Hz at A4centsRPN #1Sys.Ex. 40 00 00
445.0 +19.56 4C 43(+1603) 00 04 0C 04(+196)
444.0 +15.67 4A 03(+1283) 00 04 09 0D(+157)
443.0 +11.76 47 44(+ 964) 00 04 07 06(+118)
442.0 + 7.85 45 03(+ 643) 00 04 04 0F(+79)
441.0 + 3.93 42 42(+ 322) 00 04 02 07(+39)
440.0 0 40 00(0) 00 04 00 00(0)
439.0 - 3.94 3D 3D(- 323) 00 03 0D 09(–39)
438.0 - 7.89 3A 7A(- 646) 00 03 0B 01(–79)
[Example]
Send RPN#1 to MIDI channel 3. From the above table, the value is 45 03H.
Setting the tuning of MIDI channel 3 to A4 = 442.0 Hz
checksum = 128 - 115 (remainder) = 13 = 0DH
This means that F0 41 10 42 12 40 01 30 02 0D F7 is the message we need to
transmit.
15
JM-8 MIDI Implementation
INDIVIDUAL PARAMETER TRANSMISSION XV GENERATION
(Model ID JM-8 = 00H, 00H, 08H)
Individual Parameter Transmission transmits data (or requests data) for one
parameter as one exclusive message (one packet of “F0…F7”).
In Individual Parameter Transmission, you must use the Address and Size listed in the following “Parameter Address Map”. Addresses marked at "#" cannot
be used as starting addresses.
■ System Exclusive messages
Data Set 1 (DT1) is the only System Exclusive messages transmitted by the
JM-8.
O*1
O*1
O*1
O*1
O
O*1
O*1
O
O
O
O
O
O
O
O
O
O
O*1
O*1
O*1
O*1
O*1
*****
O*1
X
X
O*1
O*1
X
X
X
X
O
X
*1 O X is selectable
*2 Recognized as M= 1 even if M≠ 1
Mode 2: OMNI ON, MONO
Mode 4: OMNI OFF, MONO
1~16
1~16, Off
Mode 3
Mode 3, 4 (M=1)*2
0~127
0~127
O*1
X
O*1
O*1
O *1
O*1
O
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O*1
O
O
O
O
O
O
O
O
O
O
O (Reverb)*1
O (Chorus)*1
O*1
O*1
O*1
0~127
O
X
X
O*1
O*1
O (120, 126, 127)
O (121)
X
O (123-125)
O
X
16 parts (SMF songs)
3 parts (External In)
Bank Select
Modulation
Portamento Time
Data Entry
Vol um e
Panpot
Expression
Hold 1
Portamento
Sostenuto
Soft
Hold 2
Resonance
Realease Time
Attack Time
Cutoff
Decay Time
Vibrato Rate
Vibrato Depth
Vibrato Delay
Portamento Control
Effect 1 Depth
Effect 3 Depth
NRPN LSB, MSB
RPN LSB, MSB
Program Number 1~128
O: Yes
X: No
20
Loading...
+ hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.