Operation Manual

MIDI Data Format
● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● A5000/A4000 • Appendix 277
If the sample contains a release loop, this message is transmitted after the sample dump.
Alternatively, this message is transmitted in reply to a Loop Point Request message.
4.2.2. Loop Point Request
0 01110000 $F0
1 01111110 $7E
2 0nnnnnnn nnnnnnn = Channel Number
3 00000101 $05
4 00000010 $02
5 0sssssss sssssss = Sample number(LSB first)
6 0sssssss sssssss =
7 0bbbbbbb bbbbbbb = Loop number(LSB first)
8 0bbbbbbb bbbbbbb =
9 01110111 $F7
This message requests loop points.
Name Range Contents
Loop number 0 — 16383 Loop number
16383($7F,$7F)Loop number
16383 ($7F, $7F) requests all loops
This message is only received.
4.3. INQUIRY MESSAGE
4.3.1. Identity Request
0 01110000 $F0
1 01111110 $7E
2 0nnnnnnn nnnnnnn = Channel Number
3 00000110 $06
4 00000001 $01
5 01110111 $F7
This message requests device-specific information.
This message is only received.
4.3.2. Identity Reply
0 11110000 $F0
1 01111110 $7E
2 0nnnnnnn nnnnnnn = Channel Number
3 00000110 $06
4 00000010 $02
5 01000011 $43 = Manufacturers System Exclusive ID code
6 0fffffff fffffff = Device family code(LSB first)
7 0fffffff fffffff =
8 0ddddddd ddddddd = Device family number code(LSB first)
9 0ddddddd ddddddd =
10 0vvvvvvv vvvvvvv = Software revision level.
Format device specific
11 0vvvvvvv vvvvvvv = (LSB first)
12 0vvvvvvv vvvvvvv =
13 0vvvvvvv vvvvvvv =
14 11110111 $F7
This message is returned in response to an Identity Request message asking for device-specific
information.
Name Range Contents
Device family code $0041 LM
Device family number code $01DA #0474 (*1)
Software revision level $nnnn A5000/A4000 software version
(*1) For the A5000 the range is $01DB, and the content is #0475.
This message is only transmitted in response to an Identity Request message.
5. YAMAHA SYSTEM EXCLUSIVE
5.1. Bulk dump
Transmission occurs when a bulk dump transmit command is executed or a dump request is
received.
This message can be received if bulk protect is off.
Data format
0 01110000 $F0
1 01000011 $43
2 0000nnnn nnnn = Device Number
3 01111010 $7A
4 0bbbbbbb byte count
5 0bbbbbbb
6 01001100 $4C(ASCII"L")
7 01001101 $4D(ASCII"M")
8 00100000 $20(ASCII" ")
9 00100000 $20(ASCII" ")
10 00110000 $30(ASCII"0")
11 00110100 $34(ASCII"4")
12 00110111 $37(ASCII"7")
13 00110100 $34(ASCII"4") (*1)
14 0mmmmmmm mmmmmmm = data format name ending
15 0mmmmmmm mmmmmmm = data format name ending
16 0ccccccc
⇓ object name(ASCII 16byte)
31 0ccccccc
32 0ddddddd ddddddd = data
0sssssss sssssss = check_sum
11110111 $F7
(*1) 00110101 $35(ASCII”5”) for the A5000.
The data format name ending in bytes 14 and 15 specifies the type of bulk data, as follows.
mm Data type
"SY" System parameter bulk dump
"PG" Program bulk dump
"SB" Sample bank bulk dump
"SP" Sample bulk dump
"WD" Wave data bulk dump
"SQ" Sequence bulk dump
"OL" Object list bulk dump
Note) mm is ASCII code
object name is a 16-character name for each object. Program object names are the program num-
ber of each program (example: “001 “). System parameters and object lists are always “Sys-
temParameters” and “Object List “, respectively.
The data section is divided into byte 1, which is the upper nibble, and byte 2, which is the lower
nibble. See chart 1 for details.
The byte is all data between the byte count and checksum.
The checksum is the exclusive-or value of all bytes between the byte count and checksum.
For each bulk dump, the number of transmitted bytes between the byte count and checksum is less
than 4096. When the amount of data to be transmitted is greater than this, it is divided into 4096
byte blocks transmitted between byte count and checksum data. F7 is transmitted when all data
has been transmitted. From the second block onward the header from byte 6 to byte 31 is not
included.
5.2. Dump request
Bulk dump transmission is performed when a dump request is received.
0 01110000 $F0
1 01000011 $43
2 0010nnnn nnnn = Device Number
3 01111010 $7A
4 01001100 $4C(ASCII"L")
5 01001101 $4D(ASCII"M")
6 00100000 $20(ASCII" ")
7 00100000 $20(ASCII" ")
8 00110000 $30(ASCII"0")
9 00110100 $34(ASCII"4")
10 00110111 $37(ASCII"7")
11 00110100 $34(ASCII"4") (*1)
12 0mmmmmmm mmmmmmm = data format name ending
13 0mmmmmmm mmmmmmm = data format name ending
14 0ccccccc
⇓ object name(ASCII 16byte)
29 0ccccccc
30 11110111 $F7
(*1) 00110101 $35(ASCII”5”) for the A5000.
The data format name ending in bytes 12 and 13 specifies the type of transmitted data, as follows.
mm Data type
"SY" System parameter bulk dump
"PG" Program bulk dump
"SB" Sample bank bulk dump
"SP" Sample bulk dump
"WD" Wave data bulk dump
"SQ" Sequence bulk dump
"OL" Object list bulk dump
Note) mm is ASCII code
object name is a 16-character name for each object. Program object names are the program num-
ber of each program (example: “001 “). System parameters and object lists do not have an
object name, and are recognized by their data format name.
5.3. Parameter change
For changes to the value of an object parameter, first the object is selected via parameter change
(object select) reception, then the value is changed via parameter change (object edit) reception.
The object selection remains effective until the next object select is received, thus a number of
changes to the value of the same object can be carried through successive object edit reception.
Transmitted when a parameter value request is received.