2. SYSTEM EXCLUSIVE MESSAGE FORMAT
Exchange of non-musical data such as voices and remote front panel programming is accomplished via MIDI System-
Exclusive messages. The K150FS message system uses a closed-loop handshaking protocol to regulate the flow of system-
exclusive data. The formats of the messages and the protocol are described below.
2.1 MESSAGE HEADER
Every system-exclusive message, in either direction, consists of a header, optional data, and MIDI EOX status code ($F7). A
message thus consists of the following bytes:
$F0
MIDI system-exclusive status code
$07
Kurzweil ID code
sel
Device Select. For several identical units connected together, specifies which one should respond.
Range is $00-$0F and for K150FS, the device ID is the same as the basic MIDI channel.
$0F
Product code for K150FS
cc
Command/status code (see list below)
data
optional
$F7
MIDI end-of-exclusive
COMMAND/STATUS CODES
MEANING
$01
Load master parameter block
$02
Dump master parameter block
$03
Load program
$04
Dump program
$05
Load voice
$06
Dump voice
$07
Block data transfer
$08
Remote button push
$09
Request display content
$0A
Display text (acknowledgment to
$09
)
$7E
NAK (negative acknowledge; error)
$7F
ACK (positive acknowledge; OK)
Only Dump Voice, Load Voice, Block Data Transfer, NAK, and ACK are described in this document. The others are
described in a document titled: "K150FS Version 1.6 Software" (applies to 1.7 and later versions as well).
2.2 ENCODING OF 8-BIT BINARY DATA
The data portion, if present, of messages usually consists of full 8-bit bytes. These are sent as pairs of MIDI bytes, 4 bits for
each member of the pair. The most significant 4 bits are sent first. Thus the MIDI bytes $4D $69 $64 $69 would be sent as
$04 $0D $06 $09 $06 $04 $06 $09. Although other packing techniques may be more efficient, this simple method is human
readable from a MIDI data logger and quite efficient enough for the relatively small amount of data required to represent
additive synthesis sounds.
2.3 HANDSHAKING PROTOCOL
The K150FS is connected to a computer with two MIDI cables. One connects the computer’s MIDI output to the K150FS
MIDI input and the other connects the K150FS MIDI output to the computer’s MIDI input. Note that the K150FS MIDI
output does not retransmit the normal musical messages it receives; it is only used to reply to system-exclusive messages.
Different message types use different protocols. The protocol for messages associated with voice loading dumping are
described below. Protocols for the other message types are outlined in K150FS Version 1.6 Software.