90
MIDI implementation
❍Legato(controller number 68)
Status 2nd byte 3rd byte
--------------------------------------------------------------------
BnH 44H xxH
❍Hold 2 (controller number 69)
Status 2nd byte 3rd byte
--------------------------------------------------------------------
BnH 45H xxH
❍Sound Controllers 1--10 (controller numbers 70--79)
Status 2nd byte 3rd byte
--------------------------------------------------------------------
BnH 46 - 4FH vvH
❍General Purpose Controllers 5--8 (controller numbers 80--83)
Status 2nd byte 3rd byte
--------------------------------------------------------------------
BnH 50 - 53FH vvH
❍Portamento Control (controller number 84)
Status 2nd byte 3rd byte
--------------------------------------------------------------------
BnH 54H vvH
❍Effect Depth 2-5 (controller number 92-95)
Status 2nd byte 3rd byte
---------------------------------------------------------------------
BnH 5C - 5FH vvH
●Program Change
Status 2nd byte
-----------------------------------------
CnH ppH
pp= program number
* These messages select channel A and channel B inputs, memory settings, and how the
sub channel is mixed in Presentation mode. For details, refer to the section on Bank
Select.
* If a non-selectable Program Change is received, it will be ignored.
●Channel Pressure
Status 2nd byte
-----------------------------------------
DnH vvH
* Just as for Control Change messages, you can make settings in MIDI Setup to use
Channel Pressure messages to control a wide variety of things. For details on the factory
settings, refer to “Settings Transmitted/Received Using MIDI” (p. 95).
●Pitch Bend Change
Status 2nd byte 3rd byte
--------------------------------------------------------------------
EnH llH mmH
mm, ll= pitch bend value:00 00H - 40 00H - 7F 7FH (-8192 - 0 -+8191)
* Just as for Control Change messages, you can make settings in MIDI Setup to use Pitch
Bend Change messages to control a wide variety of things. For details on the factory
settings, refer to “Settings Transmitted/Received Using MIDI” (p. 95).
■System realtime messages
●Active Sensing
Status
-------
FEH
* Once an Active Sensing message is received, the system will begin monitoring the
interval between all subsequent messages. If there is an interval of greater than
approximately 400 ms between messages while monitoring is occurring, the system will
perform reception error processing and will then stop monitoring the message interval.
●Timing Clock
Status
-------
F8H
* Used to synchronize BPM SYNC.
●Start
Status
-------
FAH
* Specifies the beginning of the beat for BPM SYNC.
●Continue
Status
-------
FBH
* Specifies the beginning of the beat for BPM SYNC.
■System exclusive messages
Status Data bytes Status
------------------------------------------------------------------
F0H iiH, ddH,...,eeH F7H
F0H: System Exclusive Message status
ii= ID number: An ID number (manufacturer ID) that indicates the manufacturer to which
the exclusive message belongs. Roland’s manufacturer ID is 41H. ID numbers 7EH and 7FH
are used for Universal Non-realtime Messages (7EH) and Universal Realtime Messages
(7FH) to extend the MIDI specification.
dd, ... ee= data: 00H--7FH (0--127)
F7H: EOX (End Of Exclusive)
●Data Set 1 (DT1)
This is the message that transfers actual data, and is used to specify data for a device.
Status Data bytes Status
----------------------------------------------------------------------------------------------
F0H 41H, dev, 00H, 5BH, 12H, F7H
aaH, bbH, ccH, ddH,..eeH, sum
Byte Explanation
-------------------------------------------------------------------------------------------------------------------------
F0H Exclusive status
41H ID number (Roland)
dev Device ID (dev: 00H--1FH, factory setting is 00H)
00H Upper byte of model ID (V-4, V-LINK message is 00H)
5BH Lower byte of model ID (V-4, V-LINK message is 51H)
12H Command ID (DT1)
aaH Upper byte of address
bbH Address
ccH Address
ddH Data: the actual data to be transmitted. Multi-byte data is transmitted
in the order of the address.
:
eeH Data
sum Checksum
F7H EOX (End Of Exclusive)
* For details on setting the address, size, and checksum, refer to “Example of exclusive
message and checksum calculation” (p. 95).
* Data that exceeds 256 bytes must be divided into packets of 256 bytes or less for
transmission. If a subsequent “Data Set 1” message is transmitted, an interval of at least
20 ms must be left between packets.