Roland VGA7 Service Manual

Page 1
V-GUITAR AMPLIFIER Model: VGA-7
MIDI Implementation
Date: Aug. 1. 2000
Version: 1.00
1. RECOGNIZED DATA
Channel Voice Message
Syetem Exclusive Message
Status Data byte Status F0H iiH, ddH ...eeH F7H F0H = System Exclusive ii = Manufacturer ID: 41H (Roland) dd ,..ee = Data: 00H - 7FH (0 - 127) F7H = EOX (End of Exclusive/System common)
Bank Select
Status 2nd byte 3rd byte BnH 00H mmH
n= MIDI Channel: 0H - FH (ch.1 - ch.16) mm= Bank Number (MSB): 00H, 01H (0,1) 0 = USER
* With Bank Select, only the MSB is received; the LSB is disregarded.
1 = PRESET
Control Change Nimber
Status 2nd byte 3rd byte BnH ccH vvH
n= MIDI Channel: 0H - FH (ch.1 - ch.16) cc = Controller Nimber: 01H - 1FH (1 - 31)
vv = Value: 00H - 7FH (0 - 127) * You can control VOLUME, WAH, MANUAL/MEMORY, USER/PRESET, TUNER
(ON/OFF), CAPO (ON/OFF), EFX (ON/OFF), DELAY (ON/OFF), TAP, CHORUS (ON/OFF), and REVERB (ON/OFF) with Control Change. Transmit 7FH for the ON/ OFF value, and transmit 00H after switching ON/OFF to complete the action.
: 40H - 5FH ( 64 - 95)
Program Change
Status 2nd byte CnH ppH
n = MIDI Channel: 0H - FH (ch.1 - ch.16) pp = Program Number: 00H - 4FH (1 - 80) * Patches are switched according to the Program Changes received. * 4FH or above is disregarded.
BANK PROG BANK PROG BANK PROG BANK PROG MSB LSB CHG VGA-7 MSB LSB CHG VGA-7 MSB LSB CHG VGA-7 MSB LSB CHG VGA-7
--- --- --- ----- --- --- --- ----- --- --- --- ----- --- --- --- ----­ 0 0 1 U01 0 0 41 U41 1 0 1 P01 1 0 41 P41 0 0 2 U02 0 0 42 U42 1 0 2 P02 1 0 42 P42 0 0 3 U03 0 0 43 U43 1 0 3 P03 1 0 43 P43 0 0 4 U04 0 0 44 U44 1 0 4 P04 1 0 44 P44 0 0 5 U05 0 0 45 U45 1 0 5 P05 1 0 45 P45 0 0 6 U06 0 0 46 U46 1 0 6 P06 1 0 46 P46 0 0 7 U07 0 0 47 U47 1 0 7 P07 1 0 47 P47 0 0 8 U08 0 0 48 U48 1 0 8 P08 1 0 48 P48 0 0 9 U09 0 0 49 U49 1 0 9 P09 1 0 49 P49 0 0 10 U00. 0 0 50 U40. 1 0 10 P00. 1 0 50 P40. 0 0 11 U11 0 0 51 U51 1 0 11 P11 1 0 51 P51 0 0 12 U12 0 0 52 U52 1 0 12 P12 1 0 52 P52 0 0 13 U13 0 0 53 U53 1 0 13 P13 1 0 53 P53 0 0 14 U14 0 0 54 U54 1 0 14 P14 1 0 54 P54 0 0 15 U15 0 0 55 U55 1 0 15 P15 1 0 55 P55 0 0 16 U16 0 0 56 U56 1 0 16 P16 1 0 56 P56 0 0 17 U17 0 0 57 U57 1 0 17 P17 1 0 57 P57 0 0 18 U18 0 0 58 U58 1 0 18 P18 1 0 58 P58 0 0 19 U19 0 0 59 U59 1 0 19 P19 1 0 59 P59 0 0 20 U10. 0 0 60 U50. 1 0 20 P10. 1 0 60 P50. 0 0 21 U21 0 0 61 U61 1 0 21 P21 1 0 61 P61 0 0 22 U22 0 0 62 U62 1 0 22 P22 1 0 62 P62 0 0 23 U23 0 0 63 U63 1 0 23 P23 1 0 63 P63 0 0 24 U24 0 0 64 U64 1 0 24 P24 1 0 64 P64 0 0 25 U25 0 0 65 U65 1 0 25 P25 1 0 65 P65 0 0 26 U26 0 0 66 U66 1 0 26 P26 1 0 66 P66 0 0 27 U27 0 0 67 U67 1 0 27 P27 1 0 67 P67 0 0 28 U28 0 0 68 U68 1 0 28 P28 1 0 68 P68 0 0 29 U29 0 0 69 U69 1 0 29 P29 1 0 69 P69 0 0 30 U20. 0 0 70 U60. 1 0 30 P20. 1 0 70 P60. 0 0 31 U31 0 0 71 U71 1 0 31 P31 1 0 71 P71 0 0 32 U32 0 0 72 U72 1 0 32 P32 1 0 72 P72 0 0 33 U33 0 0 73 U73 1 0 33 P33 1 0 73 P73 0 0 34 U34 0 0 74 U74 1 0 34 P34 1 0 74 P74 0 0 35 U35 0 0 75 U75 1 0 35 P35 1 0 75 P75 0 0 36 U36 0 0 76 U76 1 0 36 P36 1 0 76 P76 0 0 37 U37 0 0 77 U77 1 0 37 P37 1 0 77 P77 0 0 38 U38 0 0 78 U78 1 0 38 P38 1 0 78 P78 0 0 39 U39 0 0 79 U79 1 0 39 P39 1 0 79 P79 0 0 40 U30. 0 0 80 U70. 1 0 40 P30. 1 0 80 P70.
* For details refer to "Roland Exclusive Messeges."
2. TRANSMITTED DATA
System EXclusive Message
Status Data byte Status F0H iiH, ddH...eeH F7H
F0H = System Exclusive ii = Manufacturer ID: 41H (Roland) dd ,..ee = Data: 00H - 7FH (0 - 127) F7H = EOX (End of Exclusive/System common)
* For details refer to "Roland Exclusive Messeges."
3. Exclusive Communications
The VGA-7 can receive all of the unit's settings data with Exclusive messages. The Model ID Exclusive messages that can be used with the VGA-7 are 00H–34H.
One Way Communication
Data Set 1 DT1 (12H)
Byte Description F0H Exclusive Status 41H Manufacturer ID (Roland) Dev Device ID (Dev=01H) 00H Model ID (VGA-7) MSB 34H Model ID (VGA-7) LSB 12H Command ID (DT1) aaH Address MSB bbH Address ccH Address ddH Address LSB eeH Data : : ffH Data sum Checksum F7H EOX (End of Exclusive)
Byte Description F0H Exclusive Status 41H Manufacturer ID (Roland) Dev Device ID (Dev=7FH) 00H Model ID (FC-200) MSB 72H Model ID (FC-200) LSB 12H Command ID (DT1) aaH Address MSB bbH Address ccH Address ddH Address LSB eeH Data : : ffH Data sum Checksum F7H EOX (End of Exclusive)
1
Page 2
MIDI Implementation
4. Parameter Address Map
Address are shown in every 7-bit hexadecimal
Address MSB LSB Binary 0aaa aaaa 0bbb bbbb 0ccc cccc 0ddd dddd 7 bit hex. AA BB CC DD
Size MSB LSB Binary 0sss ssss 0ttt tttt 0uuu uuuu 0vvv vvvv 7 bit hex. SS TT UU VV
Address Block Map
Address Block Sub Block Note 00 00 00 00 +———————————————————+ +————————————————————+
| SYSTEM | | GK SET | *Refer to Table 'GK SET' | | +————————————————————+ 01 00 00 00 | | +————————————————————+ | | | TUNER | *Refer to Table 'TUNER' | | +————————————————————+ 02 00 00 00 | | +————————————————————+ | | | NS | *Refer to Table 'SYSTEM' | | +————————————————————+ 03 00 00 00 | | +————————————————————+ | | | SYSTEM | *Refer to Table 'NS' | | +————————————————————+ 04 00 00 00 | | +————————————————————+ | | | MIDI | *Refer to Table 'MIDI' +———————————————————+ +————————————————————+ 0C 00 00 00 +———————————————————+ +————————————————————+ | USER Patch | | U01 | *Refer to Table 'PATCH' | | +————————————————————+ 0C 01 00 00 | | +————————————————————+ | | | U02 | | | +————————————————————+ : | | : : | | : 0C 4E 00 00 | | +————————————————————+ | | | U79 | | | +————————————————————+ 0C 4F 00 00 | | +————————————————————+ | | | U70. | +———————————————————+ +————————————————————+ 0C 50 00 00 +——————————————————————————————————————————+ | USER Patch Dummy Address | | for One Patch BULK DUMP/LOAD | +——————————————————————————————————————————+
* Bulk data can be received during Load Standby in the MIDI Parameter screen. * Be sure to splits parameters with a value of 2 or above when transmitting; always transmit these parameters in the same packet. * When One Patch is use for the BULK DUMP operation, Dummy is supplied for the Address. When BULK DUMP is carried out using this Address, the data is stored to the current patch.
Table 'GK SET'
-------------------------------------------------------------------------------------­Address(H) |Size(H) |Data(H) |Parameter Description
-------------------------------------------------------------------------------------­00 00 00 00 00 00 00 01 00 - 02 TYPE 00 : GK-2A 01 : GK-2 02 : PIEZO 00 00 00 01 00 00 00 01 00 - 2A SCALE 00 : St 01 : Lp 02 : 20 03 : 21 : : : : 2A : 60 00 00 00 02 00 00 00 01 00 - 14 BRIDGE1 10 - 30 00 00 00 03 00 00 00 01 00 - 14 BRIDGE2 10 - 30 00 00 00 04 00 00 00 01 00 - 14 BRIDGE3 10 - 30 00 00 00 05 00 00 00 01 00 - 14 BRIDGE4 10 - 30 00 00 00 06 00 00 00 01 00 - 14 BRIDGE5 10 - 30 00 00 00 07 00 00 00 01 00 - 14 BRIDGE6 10 - 30 00 00 00 08 00 00 00 01 00 - 63 SENS1 0 - 99 00 00 00 09 00 00 00 01 00 - 63 SENS2 0 - 99 00 00 00 0A 00 00 00 01 00 - 63 SENS3 0 - 99 00 00 00 0B 00 00 00 01 00 - 63 SENS4 0 - 99 00 00 00 0C 00 00 00 01 00 - 63 SENS5 0 - 99 00 00 00 0D 00 00 00 01 00 - 63 SENS6 0 - 99 00 00 00 0E 00 00 00 01 00 - 01 DIRECTION 0 : NORMAL 1 : REVERSE 00 00 00 0F 00 00 00 01 00 - 01 PHASE 0 : NORMAL 1 : INVERSE 00 00 00 10 00 00 00 01 00 - 0A LEVEL -5 - 5 00 00 00 11 00 00 00 01 00 - 03 S1/S2 0 : PICKUP SEL 1 : NUMBER SEL 2 : BANK SEL 3 : TUNER 00 00 00 12 00 00 00 02 dummy data
--------------------------------------------------------------------------------------
Table 'TUNER'
-------------------------------------------------------------------------------------­Address(H) |Size(H) |Data(H) |Parameter Description
-------------------------------------------------------------------------------------­01 00 00 00 00 00 00 01 00 - 0A PITCH 435Hz - 445Hz 01 00 00 01 00 00 00 01 00 - 0A LEVEL 0(OFF) - 10
--------------------------------------------------------------------------------------
2
Page 3
MIDI Implementation
Table 'NS'
-------------------------------------------------------------------------------------­Address(H) |Size(H) |Data(H) |Parameter Description
-------------------------------------------------------------------------------------­02 00 00 00 00 00 00 01 00 - 0A THRESHOLD 0 - 10
--------------------------------------------------------------------------------------
Table 'SYSTEM'
-------------------------------------------------------------------------------------­Address(H) |Size(H) |Data(H) |Parameter Description
-------------------------------------------------------------------------------------­03 00 00 00 00 00 00 01 00 - 02 FOOT SW TYPE 00 : EFFECTS (MOMENTARY) 01 : EFFECTS (LATCH) 02 : PROGRAM 03 00 00 01 00 00 00 01 00 - 01 EXP PEDAL HOLD 00 : ON 01 : OFF 03 00 00 02 00 00 00 04 dummy data 03 00 00 06 00 00 00 01 00 - 02 BULK DUMP 00 : ALL 01 : PATCH (ALL) 02 : PATCH (ONE)
--------------------------------------------------------------------------------------
Table 'MIDI'
-------------------------------------------------------------------------------------­Address(H) |Size(H) |Data(H) |Parameter Description
-------------------------------------------------------------------------------------­04 00 00 00 00 00 00 01 00 - 01 MIDI OUT SELECT 00 : OUT 01 : THRU
--------------------------------------------------------------------------------------
Table 'PATCH'
-------------------------------------------------------------------------------------­Offset(H) |Size(H) |Data(H) |Parameter Description
--------------------------------------------------------------------------------------
* All the data is sent as nibble data.
===== COSM GUITAR =====
0C ** 00 00 00 00 00 02 00 - 05 TYPE 00 : ST 01 : LP 02 : TEL 03 : HOLLOW 04 : ACOUSTIC 05 : SPECIAL
* Depending on the TYPE, data values may be limited for the following parameters.
----- TYPE = 00 : ST -----
0C ** 00 02 00 00 00 02 00 - 02 VARIATION 00 : CLASSIC 01 : MODERN 02 : HS 0C ** 00 04 00 00 00 02 01 PICKUP 01 : FRONT 02 02 : FRONT + CENTER 03 03 : CENTER 04 04 : CENTER + REAR 06 06 : REAR
----- TYPE = 01 : LP -----
0C ** 00 02 00 00 00 02 00 - 02 VARIATION 00 : CLASSIC 01 : MODERN 02 : JR 0C ** 00 04 00 00 00 02 01 PICKUP 01 : FRONT 05 05 : FRONT + REAR 06 06 : REAR
----- TYPE = 02 : TEL -----
0C ** 00 02 00 00 00 02 00 - 02 VARIATION 00 : CLASSIC 01 : MODERN 02 : HS 0C ** 00 04 00 00 00 02 01 PICKUP 01 : FRONT 05 05 : FRONT + REAR 06 06 : REAR
----- TYPE = 03 : HOLLOW -----
0C ** 00 02 00 00 00 02 00 - 02 VARIATION 00 : SEMI 01 : FULL 02 : RICK 0C ** 00 04 00 00 00 02 01 PICKUP 01 : FRONT 05 05 : FRONT + REAR 06 06 : REAR
----- TYPE = 04 : ACOUSTIC -----
0C ** 00 02 00 00 00 02 00 - 05 VARIATION 00 : STANDARD 01 : ROUND 02 : METAL 03 : NYLON STR 04 : BANJO 05 : UKULELE 0C ** 00 04 00 00 00 02 07 - 08 PICKUP 07 : PIEZO 08 : MIC
----- TYPE = 05 : SPECIAL -----
0C ** 00 02 00 00 00 02 00 - 07 VARIATION 00 : BOWED 01 : PIPE 02 : ORGAN 03 : BRASS 04 : SOLO 05 : SYNTH1 06 : SYNTH2 07 : FILTER BASS
3
Page 4
0C ** 00 04 00 00 00 02 00 PICKUP 0C ** 00 06 00 00 00 02 dummy data 0C ** 00 08 00 00 00 02 00 - 04 TUNING TYPE 00 : NORMAL 01 : 12 STRING 02 : OPEN TYPE 03 : NASHVILLE 04 : USER
* Depending on the TUNING TYPE, data values may be limited for the following parameters.
----- TUNING TYPE = 00 : NORMAL -----
0C ** 00 0A 00 00 00 02 00 VARIATION
----- TUNING TYPE = 01 : 12 STRING -----
0C ** 00 0A 00 00 00 02 00 - 02 VARIATION 00 : REGULAR 01 : OCTAVE 02 : DETUNE
----- TUNING TYPE = 02 : OPEN TYPE -----
0C ** 00 0A 00 00 00 02 00 - 02 VARIATION 00 : OPEN D 01 : OPEN G 02 : DROPPED D
----- TUNING TYPE = 03 : NASHVILLE -----
0C ** 00 0A 00 00 00 02 00 - 01 VARIATION 00 : TYPE 1 01 : TYPE 2
----- TUNING TYPE = 04 : USER -----
0C ** 00 0A 00 00 00 02 00 VARIATION 0C ** 00 0C 00 00 00 04 dummy data 0C ** 00 10 00 00 00 02 00 - 18 STRING1 E- E - E 0C ** 00 12 00 00 00 02 00 - 18 STRING2 B- B - B 0C ** 00 14 00 00 00 02 00 - 18 STRING3 G- G - G 0C ** 00 16 00 00 00 02 00 - 18 STRING4 D- D - D 0C ** 00 18 00 00 00 02 00 - 18 STRING5 A- A - A 0C ** 00 1A 00 00 00 02 00 - 18 STRING6 E- E - E 0C ** 00 1C 00 00 00 04 dummy data 0C ** 00 20 00 00 00 02 00 - 01 CAPO 00 : OFF 01 : ON 0C ** 00 22 00 00 00 02 00 - 0B CAPO FRET -12 - -1 0D - 18 1 - 12 0C ** 00 24 00 00 00 04 dummy data
MIDI Implementation
===== COSM AMPLIFIER =====
0C ** 00 28 00 00 00 02 00 - 04 TYPE 00 : CLEAN 01 : CRUNCH 02 : LEAD 03 : SPECIAL 04 : FULL RANGE
* Depending on the TYPE, data values may be limited for the following parameters.
----- TYPE = 00 : CLEAN -----
0C ** 00 2A 00 00 00 02 00 - 03 VARIATION 00 : JC 01 : CLASSIC1 02 : CLASSIC2 03 : MELLOW
----- TYPE = 01 : CRUNCH -----
0C ** 00 2A 00 00 00 02 00 - 03 VARIATIOM 00 : CLASSIC1 01 : CLASSIC2 02 : CLASSIC3 03 : MODERN
----- TYPE = 02 : LEAD -----
0C ** 00 2A 00 00 00 02 00 - 05 VARIATION 00 : CLASSIC I 01 : CLASSIC I+II 02 : MODERN1 03 : MODERN2 04 : METAL1 05 : METAL2
----- TYPE = 03 : SPECIAL -----
0C ** 00 2A 00 00 00 02 00 - 02 VARIATION 00 : LAYER1 01 : LAYER2 02 : FUZZ
----- TYPE = 04 : FULL RANGE -----
0C ** 00 2A 00 00 00 02 00 - 02 VARIATION 00 : FLAT 01 : SHAPED 02 : FAT 0C ** 00 2C 00 00 00 04 dummy data 0C ** 00 30 00 00 00 02 00 - 63 GAIN 0 - 99 0C ** 00 32 00 00 00 02 00 - 63 VOLUME 0 - 99 0C ** 00 34 00 00 00 02 00 - 63 BASS 0 - 99 0C ** 00 36 00 00 00 02 00 - 63 MIDDLE 0 - 99 0C ** 00 38 00 00 00 02 00 - 63 TREBLE 0 - 99 0C ** 00 3A 00 00 00 02 00 - 63 PRESENCE 0 - 99 0C ** 00 3C 00 00 00 04 dummy data 0C ** 00 40 00 00 00 02 00 - 04 SPEAKER TYPE 00 : ORIGINAL 01 : 1-12" OPEN 02 : 2-12" OPEN 03 : 4-10" OPEN 04 : 4-12" CLOSED
* Depending on the SPEAKER TYPE, data values may be limited for the following parameters.
----- SPEAKER TYPE = 00 : ORIGINAL-----
0C ** 00 42 00 00 00 02 00 VARIATION
----- SPEAKER TYPE = 01 : 1-12" OPEN -----
0C ** 00 42 00 00 00 02 00 - 01 VARIATION 00 : CLASSIC 01 : MODERN
----- SPEAKER TYPE = 02 : 2-12" OPEN -----
0C ** 00 42 00 00 00 02 00 - 01 VARIATION 00 : CLASSIC 01 : MODERN
4
Page 5
MIDI Implementation
----- SPEAKER TYPE = 03 : 4-10" OPEN -----
0C ** 00 42 00 00 00 02 00 - 01 VARIATION 00 : CLASSIC 01 : MODERN
----- SPEAKER TYPE = 04 : 4-12" CLOSED -----
0C ** 00 42 00 00 00 02 00 - 03 VARIATION 00 : CLASSIC 01 : MODERN 02 : CLASSIC STACK 03 : MODERN STACK 0C ** 00 44 00 00 00 04 dummy data
===== EFFECTS =====
0C ** 00 48 00 00 00 02 00 - 01 EFX 00 : OFF 01 : ON 0C ** 00 4A 00 00 00 02 00 - 05 SELECT 00 : WAH 01 : SLOW GEAR 02 : COMP 03 : TREMOLO 04 : PHASER 05 : FLANGER 0C ** 00 4C 00 00 00 04 dummy data 0C ** 00 50 00 00 00 02 00 - 63 WAH PEDAL 0 - 99 0C ** 00 52 00 00 00 02 dummy data 0C ** 00 54 00 00 00 02 00 - 63 SLOW GEAR SENS 0 - 99 0C ** 00 56 00 00 00 02 00 - 63 SLOW GEAR RISE TIME 0 - 99 0C ** 00 58 00 00 00 02 00 - 63 COMP SUSTAIN 0 - 99 0C ** 00 5A 00 00 00 02 00 - 63 COMP ATTACK 0 - 99 0C ** 00 5C 00 00 00 02 00 - 63 TREMOLO RATE 0 - 99 0C ** 00 5E 00 00 00 02 00 - 63 TREMOLO INTENSITY 0 - 99 0C ** 00 60 00 00 00 02 00 - 63 PHASER RATE 0 - 99 0C ** 00 62 00 00 00 02 00 - 63 PHASER INTENSITY 0 - 99 0C ** 00 64 00 00 00 02 00 - 63 FLANGER RATE 0 - 99 0C ** 00 66 00 00 00 02 00 - 63 FLANGER INTENSITY 0 - 99 0C ** 00 68 00 00 00 02 00 - 01 DELAY 00 : OFF 01 : ON 0C ** 00 6A 00 00 00 02 00 - 02 DELAY VARIATION 00 : MONO 01 : PANNING 02 : HOLD 0C ** 00 6C 00 00 00 04 0000 DELAY TIME 0 - 1800
- 0708 0C ** 00 70 00 00 00 02 00 - 63 FEEDBACK 0 - 99 0C ** 00 72 00 00 00 02 00 - 63 DELAY LEVEL 0 - 99 0C ** 00 74 00 00 00 04 dummy data 0C ** 00 78 00 00 00 02 00 - 01 CHORUS 00 : OFF 01 : ON 0C ** 00 7A 00 00 00 02 00 - 02 CHORUS VARIATION 00 : SPACE 01 : WARM 02 : BRIGHT 0C ** 00 7C 00 00 00 02 00 - 63 CHORUS INTENSITY 0 - 99 0C ** 00 7E 00 00 00 02 dummy data 0C ** 01 00 00 00 00 02 00 - 01 REVERB 00 : OFF 01 : ON 0C ** 01 02 00 00 00 02 00 - 02 REVERB VARIATION 00 : PLATE 01 : ROOM 02 : HALL 0C ** 01 04 00 00 00 02 00 - 63 REVERB LEVEL 0 - 99 0C ** 01 06 00 00 00 02 dummy data 0C ** 01 08 00 00 00 02 00 - 63 CHORUS RATE 0 - 99 0C ** 01 0A 00 00 00 76 dummy data 0C ** 02 00 00 00 00 18 dummy data
5
Page 6
5. Supplementary material
Decimal/Hexadecimal table
(hexadecimal values are indicated by a following "H")
MIDI uses 7-bit hexadecimal values to indicate data values and the address and size of exclusive messages. The following table shows the correspondence between decimal and hexadecimal numbers.
+——————+——————++——————+——————++——————+——————++——————+——————+ | D | H || D | H || D | H || D | H | +——————+——————++——————+——————++——————+——————++——————+——————+ | 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 | +——————+——————++——————+——————++——————+——————++——————+——————+
D: decimal H: hexadecimal
MIDI Implementation
Decimal expressions such as used for MIDI channel, Bank Select, and Program Change will be the value 1 greater than the decimal value given in the above table.
<Example> What is the decimal equivalent of 5AH? From the above table, 5AH = 90.
Examples of actual MIDI messages
<Example> C0 32 CnH is the Program Change status and oIis the MIDI channel number. Since 0H = 0, and 32H = 50, this is a Program Change message of MIDI CH = 1, Program number 50.
Examples of exclusive messages and calculating the checksum
Roland exclusive messages (DT1) are transmitted with a checksum at the end of the data (before F7) to check that the data was received correctly. The value of the checksum is determined by the address and data (or size) of the exclusive message.
How to calculate the checksum
(hexadecimal values are indicated by a following "H")
The checksum consists of a value whose lower 7 bits are 0 when the address, size and checksum itself are added. The following formula shows how to calculate the checksum when the exclusive message to be transmitted has an address of aa bb cc ddH, and data or size of ee ffH.
aa + bb + cc + dd + ee + ff = total total / 128 = quotient ... remainder 128 - remainder = checksum
Checksum is 0 if the remainder is 0.
6
Page 7
Roland Exclusive Messages
1. Data Format for Exclusive Messages
Rolands MIDI implementation uses the following data format for all
Exclusive messages (type IV):
Byte F0H 41H DEV MDL CMD [BODY] F7H
•MIDI status: F0H, F7H
An Exclusive message must be flanked by a pair of status codes, starting with a Manufacturer ID immediately after F0H (MIDI version 1.0).
•Manufacturer ID: 41H
The Manufacturer ID identifies the manufacturer of a MIDI instrument that sends an Exclusive message. Value 41H represents Rolands Manufacturer ID.
•Device ID: DEV
The Device ID contains a unique value that identifies individual devices in
the implementation of several MIDI instruments. It is usually set to 00H–0FH, a value smaller by one than that of a basic channel, but value 00H–1FH may be used for a device with several basic channels.
•Model ID: MDL
The Model ID contains a value that identifies one model from another. Different models, however, may share an identical Model ID if they handle
similar data.
The Model ID format may contain 00H in one or more places to provide an extended data field. The following are examples of valid Model IDs, each representing a unique model:
01H 02H 03H 00H, 01H 00H, 02H 00H, 00H, 01H
Description Exclusive Status Manufacturer ID (Roland) Device ID Model ID Command ID Main data End of exclusive
•One-way transfer procedure (See Section 3 for details.)
This procedure is suited to the transfer of a small amount of data. It sends out an Exclusive message completely independent of the receiving device's status.
Connection Diagram
Device A Device B
MIDI OUT
MIDI IN
Connection at point 2 is essential for Request data procedures. (See Section 3.)
1
MIDI IN
2
MIDI OUT
•Handshake-transfer procedure (This device does not use this procedure)
This procedure initiates a predetermined transfer sequence (handshaking) across the interface before data transfer takes place. Handshaking ensures that
reliability and transfer speed are high enough to handle a large amount of data.
Connection Diagram
Device A Device B
MIDI OUT
MIDI IN
Connection at points 1 and 2 is essential.
1
MIDI IN
2
MIDI OUT
Notes on the above procedures
* There are separate Command IDs for different transfer procedures. * Devices A and B cannot exchange data unless they use the same transfer procedure,
share identical Device ID and Model ID, and are ready for communication.
3. One-way Transfer Procedure
This procedure sends out data until it has all been sent and is used when the messages are so short that answerbacks need not be checked. For longer messages, however, the receiving device must acquire each message in time with the transfer sequence, which inserts 20 milliseconds
intervals.
Types of Messages
Message Request data 1 Data set 1
Command ID RQ1 (11H) DT1 (12H)
•Command ID: CMD
The Command ID indicates the function of an Exclusive message. The Command ID format may contain 00H in one or more places to provide an extended data field. The following are examples of valid Command IDs, each representing a unique function:
01H 02H 03H 00H, 01H 00H, 02H 00H, 00H, 01H
•Main data: BODY
This field contains a message to be exchanged across an interface. The exact
data size and content will vary with the Model ID and Command ID.
2. Address-mapped Data Transfer
Address mapping is a technique for transferring messages conforming to the
data format given in Section 1. It assigns a series of memory-resident recordswaveform and tone data, switch status, and parameters, for example, to specific locations in a machine-dependent address space, thereby
allowing access to data residing at the address a message specifies.
Address-mapped data transfer is therefore independent of models and data categories. This technique allows use of two different transfer procedures: one-way transfer and handshake transfer.
•Request data #1: RQ1 (11H)
(This device does not use this procedure)
This message is sent out when there is a need to acquire data from a device at the other end of the interface. It contains data for the address and size that specify designation and length, respectively, of data required. On receiving an RQ1 message, the remote device checks its memory for the data address and size that satisfy the request. If it finds them and is ready for communication, the device will transmit a Data set 1 (DT1) message, which contains the requested data. Otherwise,
the device won't send out anything.
Byte F0H 41H DEV MDL 11H aaH | |
ssH | |
sum F7H
Description Exclusive Status Manufacturer ID (Roland) Device ID Model ID Command ID Address MSB | | LSB Size MSB | | LSB Check sum End of exclusive
7
Page 8
* The size of the requested data does not indicate the number of bytes that will make
up a DT1 message, but represents the address fields where the requested data resides.
* Some models are subject to limitations in data format used for a single transaction.
Requested data, for example, may have a limit in length or must be divided into predetermined address fields before it is exchanged across the interface.
* The same number of bytes comprises address and size data, which, however, vary
with the Model ID.
* The error-checking process uses a checksum that provides a bit pattern where the
last 7 bits are zero when values for an address, size, and that checksum are summed.
Data set 1: DT1 (12H)
This message corresponds to the actual data transfer process. Because every byte in the data is assigned a unique address, a DT1 message can convey the starting address of one or more bits of data as well as a series of data formatted in an address-dependent order.
The MIDI standards inhibit non real-time messages from interrupting an Exclusive one. This fact is inconvenient for devices that support a “soft-thru” function. To maintain compatibility with such devices, Roland has limited the DT1 to 256 bytes so that an excessively long message is sent out in
separate segments.
Byte F0H 41H DEV MDL 12H aaH | |
ddH | |
sum F7H
* A DT1 message is capable of providing only the valid data among those specified by
an RQ1 message.
* Some models are subject to limitations in data format used for a single transaction.
Requested data, for example, may have a limit in length or must be divided into
predetermined address fields before it is exchanged across the interface. * The number of bytes comprising address data varies from one Model ID to another. * The error-checking process uses a checksum that provides a bit pattern where the
last 7 bits are zero when values for an address, size, and that checksum are
summed.
Description Exclusive Status Manufacturer ID (Roland) Device ID Model ID Command ID Address MSB | | LSB Data MSB | | LSB Check sum End of exclusive
Example of Message Transactions
Device A sending data to Device B
Transfer of a DT1 message is all that takes place.
Device A Device B [Data set 1]
* More than 20m sec time interval.
[Data set 1]
[Data set 1]
Device B requesting data from Device A
Device B sends an RQ1 message to Device A. Checking the message, Device A sends a DT1 message back to Device B.
Device A Device B
[Request data]
[Data set 1]
* More than 20m sec time interval.
[Data set 1]
[Data set 1]
8
Loading...