Casio MZ-2000 User Manual

0 (0)

MZ-2000 MIDI Implementation

CASIO Computer Electronic Musical Instrument Division

Jan 7, 2000

MZ-2000 MIDI Implementation

CONTENTS

+ Receive

* 1 MIDI Message Format Overview

+ Send

o 1.1 Configuration

+ 2.3.13 Sound Controller 2 (Resonance)

o 1.2 messages and Channels

+ Format

+ 1.2.1 Performance Block

+ Receive

+ 1.2.2 Sound Source Common Sub-block

+ Send

+ 1.2.3 Parts Sub-block

+ 2.3.14 Sound Controller 3 (Release Time)

* 2 Channel messages

+ Format

o 2.1 Note messages

+ Receive

+ 2.1.1 Note Off

+ Send

+ 2.1.1.1 Receive

+ 2.3.15 Sound Controller 4 (Attack Time)

+ Format

+ Format

+ Operation

+ Receive

+ 2.1.1.2 Send

+ Send

+ Format

+ 2.3.16 Sound Controller 5 (Brightness)

+ Operation

+ Format

+ 2.1.2 Note On

+ Receive

+ 2.1.2.1 Receive

+ Send

+ Format

+ 2.3.17 Portamento Control

+ Operation

+ Format

+ 2.1.2.2 Send

+ Receive

+ Format

+ Send

+ Operation

+ 2.3.18 Effect 1 (Reverb Send Level)

o 2.2 Polyphonic Key Pressure

+ Format

+ Format

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.19 Effect 3 (Chorus Send Level)

o 2.3 Control Change

+ Format

+ 2.3.1 Bank Select

+ Receive

+ Format

+ Send

+ Receive

+ 2.3.20 NRPN

+ Send

+ Format

+ 2.3.2 Modulation Wheel

+ Receive

+ Format

+ Send

+ Receive

+ 2.3.20.1 Vibrato Rate

+ Send

+ Receive

+ 2.3.3 Portamento Time

+ Send

+ Format

+ 2.3.20.2 Vibrato Depth

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.4 Data Entry

+ 2.3.20.3 Vibrato Delay

+ Format

+ Receive

+ 2.3.5 Channel Volume

+ Send

+ Format

+ 2.3.20.4 TVF Cutoff Frequency

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.6 Pan

+ 2.3.20.5 TVF Resonance

+ Format

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.20.6 TVF/TVA Envelope Attack Time

+ 2.3.7 Expression Controller

+ Receive

+ Format

+ Send

+ Receive

+ 2.3.20.7 TVF/TVA Envelope Decay Time

+ Send

+ Receive

+ 2.3.8 General Controller 1 to 8

+ Send

+ Format

+ 2.3.20.8 TVF/TVA Envelope Release Time

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.9 Hold 1 (Damper Pedal)

+ 2.3.20.9 Drawbar Control

+ Format

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.21 RPN

+ 2.3.10 Portamento

+ Format

+ Format

+ Receive

+ Receive

+ Send

+ Send

+ 2.3.21.1 Pitch Bend Sensitivity

+ 2.3.11 Sostenuto

+ Receive

+ Format

+ Send

+ Receive

+ 2.3.21.2 Master Fine Tuning

+ Send

+ Receive

+ 2.3.12 Soft

+ Send

+ Format

+ 2.3.21.3 Master Coarse Tuning

 

 

1

MZ-2000 MIDI Implementation

+ Receive

+ Format

+ Send

+ Receive

+ 2.3.21.4 RPN Null

+ Send

+ Receive

+ 3.3.2 MZ-2000 Sound Source System Exclusive Overview

+ Send

+ Format

o 2.4 Program Change

* 4 MZ-2000 Sound Source System Exclusive Messages

+ Format

o 4.1 MZ-2000 Sound Source Common System Exclusive Format

+ Receive

+ 4.1.1 General

+ Send

+ 4.1.2 MZ-2000 Sound Source Common System Exclusive Data Blocks

o 2.5 Channel Pressure

+ 4.1.3 Parameter Configuration

+ Format

+ 4.1.4 Individual Parameter Operations

+ Receive

+ IPR Communication Flow

+ Send

+ IPC/IPR

o 2.6 Pitch Bend Change

+ 4.1.5 Parameter Set Bulk Dump

+ Format

+ One-Way Communication Flow

+ Receive

+ Hand Shake Protocol

+ Send

+ Parameter Set HDJ/HDA/HDE

o 2.7 Channel Mode messages

+ Parameter Set BDS/HDS

+ 2.7.1 All Sound Off

+ Parameter Set BDR/HDR

+ Format

o 4.2 MZ-2000 System Control

+ Receive

+ 4.2.1 General

+ Send

+ 4.2.2 MZ-2000 System Control Message Format

+ 2.7.2 Reset All Controller

+ 4.2.3 IDs and Operations of Each Control Parameter

+ Format

+ MIDI Setup Save/Resume

+ Receive

+ Tone Generator/Effect/Mixer Initialize

+ Send

+ DSP Initialize

+ 2.7.3 All Note Off

+ 4.2.3.1 Setting Examples

+ Format

o 4.3 Patch MIDI Overview

+ Receive

+ 4.3.1 MIDI Messages Received by Patch

+ Send

+ 4.3.1.1 Patch Parameter Configuration

+ 2.7.4 Omni Mode Off

+ 4.3.1.2 Patch Parameter Set Bulk Dump

+ Format

o 4.4 Patch Tone Generator

+ Receive

+ 4.4.1 General

+ Send

+ 4.4.2 Patch Tone Generator Parameter Control Message Format

+ 2.7.5 Omni Mode On

+ 4.4.3 Patch Common Parameters

+ Format

+ 4.4.3.1 System Reverb

+ Receive

+ 4.4.3.2 System Chorus

+ Send

+ 4.4.3.3 Master

+ 2.7.6 Mono Mode On

+ 4.4.4 Patch Part Parameter

+ Format

+ 4.4.4.1 Receive Filter Parameter

+ Receive

+ 4.4.4.2 Modulation Effects

+ Send

+ 4.4.4.3 Bender Effects

+ 2.7.7 Poly Mode On

+ 4.4.4.4 Channel After Touch

+ Format

+ 4.4.4.5 Polyphonic After Touch Effects

+ Receive

+ 4.4.4.6 Continuous Controller 1 Effects

+ Send

+ 4.4.4.7 Continuous Controller 2

* 3 System Messages

+ 4.4.4.8 Scale Tuning

o 3.1 System Real-Time Messages

+ 4.4.4.9 Other Parameters

+ 3.1.1 Active Sensing

+ 4.4.4.10 Example Settings

+ Format

o 4.5 Selecting Patch Effects

+ Receive

+ 4.5.1 General

+ Send

+ 4.5.2 Common Format for Patch Effect Selection Parameter Control

+ 3.1.2 Timing Clock

+ 4.5.3 Parameter Ids and Bit Sizes

+ Format

+ 4.5.4 Patch Parameter Effect Select Bulk Dump

+ Receive

o 4.6 Patch Effect Macro Select

+ Send

+ 4.6.1 Patch Parameter Effect Macro Select

+ 3.1.3 Start

+ 4.6.2 Effect Macro Select Parameter Control Message Format

+ Format

+ 4.6.3 Parameter IDs and Bit Sizes

+ Receive

o 4.7 Drawbar Tone Generator

+ Send

+ 4.7.1 Drawbar TG Parameter Settings

+ 3.1.4 Stop

+ 4.7.2 Parameter Operations

+ Format

+ 4.7.3 Parameter IDs and Value Ranges

+ Receive

+ 4.7.3.1 Drawbar TG Common Parameter

+ Send

+ 4.7.3.2 Setting Parameters

o 3.2 System Common Messages

+ 4.7.4 Sample Message

o 3.3 System Exclusive Messages

+ 4.7.4.1 Enabling On Click

+ 3.3.1 Universal System Exclusive Messages

o 4.8 Effects

+ 3.3.1.1 GM System On

+ 4.8.1 Organization of Effects

+ Format

+ 4.8.2 Effect Select Operation

+ Receive

+ 4.8.3 Effect Load Precautions

+ Send

+ 4.8.3.1 Parts

+ 3.3.1.2 Master Volume

+ 4.8.3.2 Effect Connections

 

 

2

MZ-2000 MIDI Implementation

+ Monaural Effect and Stereo Effect Connection

Parameter List

+ Stereo Effect and Monaural Effect Connection

Operation

+ Assignment of a Stereo Effect to a DSP

Preset List

+ Parallel Use of Two Monoaural Effects

4.8.6.14 Distortion

+ 4.8.3.3 Resource Problem

Specifications

+ 4.8.3.4 Distortion

Parameter List

+ 4.8.4 Effect Parameter Change Operation

Operation

+ 4.8.5 Effect Parameter Control Message Common Format

Preset List

+ 4.8.6 Effector Types

4.8.6.15 Guitar Amp Simulator

+ 4.8.6.1 Thru

Specifications

+ Specifications

Parameter List

+ Parameter List

Operation

+ Operation

Preset List

+ Preset List

4.8.6.16 Rotary Speaker

+ 4.8.6.2 Stereo Thru

Specifications

+ Specifications

Parameter List

+ Parameter List

Operation

+ Operation

Preset List

+ Preset List

4.8.6.17 Phaser

+ 4.8.6.3 Noise Gate

Specifications

+ Specifications

Parameter List

+ Specifications

Operation

+ Parameter List

Preset List

+ Operation

4.8.6.18 Stereo Phaser

+ Preset List

Specifications

+ 4.8.6.4 System Noise Gate

Parameter List

+ Specifications

Operation

+ Parameter List

Preset List

+ Operation

4.8.6.19 Chorus

+ Preset List

Specifications

+ 4.8.6.5 Compressor/Limiter

Operation

+ Specifications

Preset List

+ Parameter List

4.8.6.20 Stereo Chorus

+ Operation

Specifications

+ Compressor

Parameter List

+ Limiter

Operation

+ Preset List

Preset List

+ 4.8.6.6 Stereo Compressor/Limiter

4.8.6.21 System Chorus

+ Specifications

Specifications

+ Parameter List

Parameter List

+ Operation

Operation

+ Preset List

Preset List

+ 4.8.6.7 Slow Attack

4.8.6.22 Flanger

+ Specifications

Specifications

+ Operation

Parameter List

+ Preset List

Operation

+ 4.8.6.8 3-Band EQ

Preset List

+ Specifications

4.8.6.23 Delay

+ Parameter List

Specifications

+ Operation

Parameter List

+ Equalizer Frequencies

Operation

+ Preset List

Preset List

+ 4.8.6.9 Stereo 3-Band EQ

4.8.6.24 Stereo Delay

+ Specifications

Specifications

+ Parameter List

Parameter List

+ Operation

Operation

+ Preset List

Preset List

+ 4.8.6.10 Enhancer

4.8.6.25 Stereo Tap Delay

+ Specifications

Specifications

+ Operation

Parameter List

+ Preset List

Operation

+ 4.8.6.11 Stereo Enhancer

Preset List

+ Specifications

4.8.6.26 System Reverb

+ Parameter List

Specifications

+ Operation

Parameter List

+ Preset List

Operation

+ 4.8.6.12 Wah

Preset List

+ Specifications

4.8.6.27 Gate Reverb

+ Operation

Specifications

+ Preset List

Parameter List

+ 4.8.6.13 Auto Wah

Operation

+ Specifications

Preset List

 

 

3

Casio MZ-2000 User Manual

MZ-2000 MIDI Implementation

+4.8.6.28 Surround

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.6.29 Ring Modulator

+Specifications

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.6.30 Tremolo

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.6.31 Auto Pan

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.6.32 Lo-Fi

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.6.33 Stereo Lo-Fi

+Specifications

+Parameter List

+Operation

+Preset List

+4.8.7 FX Parameter Set Bulk Dump o 4.9 Mixer

+4.9.1 General

+4.9.2 Parameter Operations Using MIDI Messages

+4.9.2.1 Mixer Parameter IDs and Value Ranges

+4.9.2.2 Mix Parameter Set Bulk Dump

o 4.10 Drum Setup

+4.10.1 Drum Setup Parameter Control Message Format

+4.10.1.1 Drum Setup ParameterID and Value Range

+4.10.1.2 Setup Example

o 4.11 Effect Macro

+4.11.1 Effect Macro Overview

+4.11.2 Effect Parameter Control Message Format

+4.11.3 Parameter Type ID, Size, Index Num, Bit Width, Value Range

+4.11.4 Effect Macro Parameter Set Bulk Dump

+4.11.5 Control Using the Val Control Change Message

+Channel

+Number

1 MIDI Message Format Overview

1.1 Configuration

The MZ-2000 is made up of a Performance Block and a Sound Source Block as shown below. The Performance Block includes the keyboard, wheels, and other real-time controllers, as well as auto accompaniment, the sequencer, the control panel, etc.

The Sound Source Block consists of a Common Sub-block that includes tone generator settings, effector, and mixer, and a Parts Sub-block that includes a 32-tone tone generator.

*Performance Block o Keyboard

o Wheels and other real-time controllers o Auto accompaniment

o Sequencer

*Sound Source Block

o Common Sub-block

+Tone generator settings

+Effector

+Mixer

o Parts Sub-block

+Parts that cannot be received by the tone generator (Parts 1 to 16)

+Parts that can be received by the tone generator (Parts 17 to 32)

1.2messages and Channels

1.2.1 Performance Block

The Performance Block generates messages for keyboard, wheel, pedal and other real-time controller operations, and for the sequencer, auto accompaniment, the control panel, etc. messages for each type of operation are sent both to the sound source and to the MIDI OUT terminal. Though the Performance Block has only send functions, it also performs chord recognitions when note data is received.

Send message channel numbers are in accordance with the MZ-2000 send (Tx) channel settings.

Accompaniment part send messages are sent when the MZ-2000 Accomp MIDI Out parameter is turned on.

1.2.2 Sound Source Common Sub-block

The Common Sub-block consists of a tone generator for tones that do not depend on in the sound source, an effector, a mixer, etc. The settings of these items can be changed by system exclusive messages or by channel messages with channel numbers set by the MIDI Global Channel.

1.2.3 Parts Sub-block

Operation and setting changes of the Parts Sub-block of the Sound Source Block can be controlled using system exclusive messages and channel messages. Channel messages used for such control are limited to those with channel numbers set by the MIDI channel assigned to the applicable part.

Also note that Parts 17 through 32 only can receive channel messages.

2 Channel messages

The channel numbers of the channel messages received by each part are in accordance with the MZ-2000 receive (Rx) channel settingfor each part. Channel messages are not received for any part whose receive channel setting is off.

When the MZ-2000 MIDI In Chord Judge option is turned on, MZ-2000 auto accompaniment chords can be specified using note messages within the chord judge keyboard range specified by the MZ-2000 by sending the note messages over the channel that is specified as the receive channel for Part 1.

4

MZ-2000 MIDI Implementation

2.1 Note messages

2.1.1 Note Off

2.1.1.1 Receive

Format

 

 

Byte 1

Byte 2

Byte 3

8nH

kkH

vvH

9nH

kkH

00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Note Number = 00H to 7FH

vv : Note Off Velocity = 00H to 7FH

Operation

The Note Off Velocity value is ignored.

For drum parts, Note Off is not received by each instrument when Rx.Note Off = ON.

2.1.1.2 Send

Format

Byte 1 Byte 2 Byte 3 8nH kkH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Note Number = 18H to 6CH

vv : Note Off Velocity = 40H

Operation

Normally, the range of the Note Number is 24H to 60H. Changing the Pattern Sequencer's Octave Shift value (-1 to 1) causes the value of kk to change within the range shown below.

Octave

Note Number Range (kk)

-1

18H to 54H

0

24H to 60H

+1

30H to 6CH

2.1.2 Note On

2.1.2.1 Receive

Format

Byte 1 Byte 2 Byte 3 9nH kkH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Note Number = 00H to 7FH

vv : Note On Velocity = 00H to 7FH

Operation

Note On is not received when Rx.Note message is turned off.

For drum parts, Note On is when Rx.Note On = OFF for each instrument.

2.1.2.2 Send

Format

Byte 1 Byte 2 Byte 3 9nH kkH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Note Number = 18H to 6CH

vv : Note On Velocity = 01 to 7FH

Operation

Normally, the range of the Note Number is 24H to 60H.

Changing the Pattern Sequencer's Octave Shift value (-1 to 1) causes the value of kk to change within the range shown below.

Octave

Note Number Range (kk)

-1

18H to 54H

0

24H to 60H

+1

30H to 6CH

2.2 Polyphonic Key Pressure

Format

Byte 1 Byte 2 Byte 3

AnH kkH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Note Number = 00H to 7FH

vv : Pressure Value = 00H to 7FH

Receive

Polyphonic Key Pressure is not received when Rx.Poly Pressure = OFF.

Send

Polyphonic Key Pressure cannot be sent.

2.3 Control Change

When Rx.Control Change = OFF, all Control change messages for that part are not received.

2.3.1 Bank Select

Format

Byte 1

Byte 2

Byte 3

BnH

00H

mmH (Bank SelectMSB)

BnH

20H

llH (Bank SelectLSB)

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) mm : Bank NumberMSB = 00H to 7FH

ll : Bank NumberLSB = 00H to 7FH

Receive

The ll value is used for tone map switching, but since 00H is the only value currently stored in the tone map, any setting other than 00H is ignored.

Program change messages received with a bank number value other than 00H are ignored.

Bank Select is not received when Rx.Bank Select = Off.

The Bank Number LSB is always treated as 00H when Rx.Bank Select LSB = Off.

Send

The Bank Select message is sent whenever the tone selection is changed.

2.3.2 Modulation Wheel

Format

Byte 1 Byte 2 Byte 3

BnH 01H mmH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Modulation Depth = 00H to 7FH

5

MZ-2000 MIDI Implementation

Receive

The Modulation Wheel message is not received when Rx.Modulation = OFF. The modulation type can be specified using a system exclusive message.

Send

Modulation Wheel messages are sent when you operate the modulation wheel when Tone Preset is selected for the modulation wheel or the assignable switch when Tone Preset (Mod.) is selected for the assignable switch.

2.3.3 Portamento Time

Format

Byte 1 Byte 2 Byte 3

BnH 05H mmH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Modulation Depth = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

Modulation Wheel messages are sent when you operate the modulation wheel when Portamento Time is selected for the modulation wheel or the assignable switch when Portamento On/Off is selected for the assignable switch.

2.3.4 Data Entry

Format

Byte 1

Byte 2

Byte 3

BnH

06H

mmH (Data Entry MSB)

BnH

26H

llH (Data Entry LSB)

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) mm : MSB of parameter specified by RPN, NRPN

ll : LSB of parameter specified by RPN, NRPN

2.3.5 Channel Volume

Format

Byte 1 Byte 2 Byte 3

BnH 07H vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Volume = 00H to 7FH

Receive

The Channel Volume message is no received when Rx.Volume = OFF.

Send

The Channel Volume message is sent whenever a change is made in mixer volume, accomp volume, disk volume, or U1/U2 balance settings.

2.3.6 Pan

Format

Byte 1 Byte 2 Byte 3

BnH 0AH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Pan = 00H (Left) to 40H (Center) to 7FH (Right)

Receive

The Pan message is not received when Rx.Panpot = OFF.

For drum parts, the pan settings are changed relative to the pan setting of each drum part note number.

Send

The Pan message is sent whenever the mixer's pan setting is changed.

2.3.7 Expression Controller

Format

Byte 1 Byte 2 Byte 3

BnH 0BH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Expression = 00H to 7FH

Receive

The Expression Controller message is not received when Rx.Expression = OFF.

Send

The Expression Controller message is sent whenever an expression pedal operation is performed.

2.3.8 General Controller 1 to 8

General Controller messages are assigned to the effect parameters in the Common Sub-block.

Format

Byte 1 Byte 2 Byte 3

BnH kkH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : cc Number = 4cH to 53H

vv : Effect Value = 00H to 7fH

The following shows the relationship between cc numbers and effect parameters.

cc

Parameter )

4CH DSP1

Parameter 1

4DH DSP1

Parameter 2

4EH DSP2

Parameter 1

4FH DSP2

Parameter 2

50H

DSP3

Parameter 1

51H

DSP3

Parameter 2

52H

DSP4

Parameter 1

53H

DSP4

Parameter 2

Receive

This message is received when its channel matches the MIDI Global channel.

For details about the receive operation General Controller messages, see "4.11.5 Control Using the Val Control Change Message."

Send

A General Controller message is sent whenever an effect parameter is changed.

2.3.9 Hold 1 (Damper Pedal)

Format

Byte 1 Byte 2 Byte 3

BnH 40H vvH

6

MZ-2000 MIDI Implementation

Receive

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Hold 1 = 00H to 7FH

The Hold 1 message is not received when Rx.Hold1 = OFF.

Send

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Hold 1 = 00H, 7fH (00H:OFF, 7fH:ON)

The Hold 1 message is sent whenever the MZ-2000 sustain pedal is operated while the sustain effect is assigned to the pedal, or when the sustain switch of the MZ-2000 is operated.

2.3.10 Portamento

Format

Byte 1 Byte 2 Byte 3

BnH 41H vvH

Receive

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

vv : Portamento = 00H to 7FH (00H to 3fH:OFF, 40H to 7FH:ON)

The Portamento message is not received when Rx.Portamento = OFF.

Send

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Portamento = 00H, 7fH (00H:OFF, 7fH:ON)

The Portamento message is sent whenever the assignable button of the MZ-2000 is operated when the portamento effect is assigned to the button.

2.3.11 Sostenuto

Format

Byte 1 Byte 2 Byte 3

BnH 42H vvH

Receive

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

vv : Sostenuto = 00H to 7FH (00H to 3fH:OFF, 40H to 7FH:ON)

Sostenuto is not received when Rx.Sostenuto = OFF.

Send

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Sostenuto = 00H,7fH(00H:OFF,7fH:ON)

The Sostenuto message is sent whenever the MZ-2000 sustain pedal is operated when the sostenuto effect is assigned to the pedal.

2.3.12 Soft

Format

Byte 1 Byte 2 Byte 3

BnH 43H vvH

Receive

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

vv : Soft = 00H to 7FH (00H to 3fH:OFF, 40H to 7FH:ON)

The Soft message is not received when Rx.Soft = OFF.

Send

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Soft = 00H, 7fH(00H:OFF, 7fH:ON)

The Soft message is sent whenever the MZ-2000 sustain pedal is operated when the soft effect is assigned to the pedal.

2.3.13 Sound Controller 2 (Resonance)

Format

Byte 1 Byte 2 Byte 3

BnH 47H vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : TVF Resonance = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Sound Controller 2 message cannot be sent.

2.3.14 Sound Controller 3 (Release Time)

Format

Byte 1 Byte 2 Byte 3

BnH 48H vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : TVA Release Time = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Sound Controller 3 message cannot be sent.

2.3.15 Sound Controller 4 (Attack Time)

Format

Byte 1 Byte 2 Byte 3

BnH 49H vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : TVA Attack Time = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Sound Controller 4 message cannot be sent.

7

MZ-2000 MIDI Implementation

2.3.16 Sound Controller 5 (Brightness)

Format

Byte 1 Byte 2 Byte 3

BnH 4AH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : TVF Cutoff Frequency = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Sound Controller 5 message cannot be sent.

2.3.17 Portamento Control

Format

Byte 1 Byte 2 Byte 3

BnH 54H kkH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) kk : Source Note Number = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Portamento Control message cannot be sent.

2.3.18 Effect 1 (Reverb Send Level)

Format

Byte 1 Byte 2 Byte 3

BnH 5BH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Reverb Send Level = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Effect 1 message is sent whenever a mixer reverb depth, accomp reverb depth, or melody reverb depth operation is performed.

2.3.19 Effect 3 (Chorus Send Level)

Format

Byte 1 Byte 2 Byte 3

BnH 5DH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Chorus Send Level = 00H to 7FH

Receive

This message is received when Rx.Control Change = ON and its channel matches the part MIDI channel.

Send

The Effect 1 message is sent whenever a mixer chorus depth, accomp chorus depth, or melody chorus depth operation is performed.

2.3.20 NRPN

Format

Byte 1

Byte 2

Byte 3

BnH

63H

pmH (MSB)

BnH

62H

plH (LSB)

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) pm : NRPN MSB

pl : NRPN LSB

Receive

NPRN are not received when Rx.Nrpn = OFF. Though undefined NRPN can be received and stored, subsequent data entry values following undefined NRPN messages are ignored. Applicable parameters are set following receipt of the NRPN MSB and LSB, the data entry MSB is received and the value is set in accordance with the data entry MSB. The data entry LSB is ignored.

Send

An NRPN and data entry are sent whenever the parameter assigned to the NRPN is changed.

2.3.20.1 Vibrato Rate

NRPN MSB = 01H

NRPN LSB = 08H

Data Entry MSB = mmH

mm : Vibrato Rate = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the Vibrato Rate message, the reset vibrato rate value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The Vibrato Rate message is sent whenever a vibrato rate operation is performed.

2.3.20.2 Vibrato Depth

NRPN MSB = 01H

NRPN LSB = 09H

Data Entry MSB = mmH

mm : Vibrato Depth = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the Vibrato Depth message, the reset vibrato depth value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The Vibrato Depth message is sent whenever a vibrato depth operation is performed.

2.3.20.3 Vibrato Delay

NRPN MSB = 01H

NRPN LSB = 0AH

Data Entry MSB = mmH

mm : Vibrato Delay = 00H to 40H to 7FH (-64 to 0 to +63)

8

MZ-2000 MIDI Implementation

Receive

When the MZ-2000 receives the Vibrato Delay message, the reset vibrato delay value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The Vibrato Delay message cannot be sent.

2.3.20.4 TVF Cutoff Frequency

NRPN MSB = 01H

NRPN LSB = 20H

Data Entry MSB = mmH

mm : Cutoff Frequency = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the TVF Cutoff Frequency message, the reset TVF cutoff frequency value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The TVF Cutoff Frequency message is sent whenever a cutoff frequency operation is performed using the initial screen in the Synthesizer Mode.

2.3.20.5 TVF Resonance

NRPN MSB = 01H

NRPN LSB = 21H

Data Entry MSB = mmH

mm : TVF Resonance = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the TVF Resonance message, the reset TVF resonance value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The TVF Cutoff Frequency message is sent whenever a resonance operation is performed using the initial screen in the Synthesizer Mode.

2.3.20.6 TVF/TVA Envelope Attack Time

NRPN MSB = 01H

NRPN LSB = 63H

Data Entry MSB = mmH

mm : TVF/TVA Envelope Attack Time = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the TVF/TVA Envelope Attack Time message, the reset TVF/TVA envelope attack time value for the tone is changed accordingly. There is no change when the value of the data entry MSB is 40H (0).

Send

The TVF/TVA Envelope Attack Time message is sent whenever an attack time operation is performed using the initial screen in the Synthesizer Mode.

2.3.20.7 TVF/TVA Envelope Decay Time

NRPN MSB = 01H

NRPN LSB = 64H

Data Entry MSB = mmH

mm : TVF/TVA Envelope Decay Time = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the TVF/TVA Envelope Decay Time message, the reset TVF/TVA envelope decay time value for the tone is changed accordingly.

There is no change when the value of the data entry MSB is 40H (0).

Send

The TVF/TVA Envelope Decay Time message cannot be sent.

2.3.20.8 TVF/TVA Envelope Release Time

NRPN MSB = 01H

NRPN LSB = 66H

Data Entry MSB = mmH

mm : TVF/TVA Envelope Release Time = 00H to 40H to 7FH (-64 to 0 to +63)

Receive

When the MZ-2000 receives the TVF/TVA Envelope Release Time message, the reset TVF/TVA envelope release time value for the tone is changed accordingly.

There is no change when the value of the data entry MSB is 40H (0).

Send

The TVF/TVA Envelope Release Time message is sent whenever whenever a release time operation is performed using the initial screen in the Synthesizer Mode.

2.3.20.9 Drawbar Control

NRPN MSB = 40H

NRPN LSB = 00H to 08H (16' to 1')

Data Entry MSB = mmH

mm : Bar Position = 00H to 7FH (0 to 8)

The following shows the relationship between the NRPN and the drawbar numbers.

MSB

LSB

Drawbar Number

40H

00H

16'

40H

01H

5 1/3'

40H

02H

8'

40H

03H

4'

40H

04H

2 1/3'

40H

05H

2'

40H

06H

1 3/5'

40H

07H

1 1/3'

40H

08H

1'

The following shows the drawbar position for each mm value.

mm : Bar Position

00H to 0EH

0

0FH to 1CH

1

1DH to 2AH

2

2BH to 38H

3

39H to 47H

4

48H to 55H

5

56H to 63H

6

64H to 71H

7

72H to 7FH

8

Receive

While a Preset Drawbar Organ tone (Bank Number 60H) or User Drawbar Organ (Bank Number 61H) is selected on the MZ-2000, you can use Drawbar Control messages for external adjustment of harmonic component levels.

9

MZ-2000 MIDI Implementation

Send

The Drawbar Control message is sent whenever a drawbar operation is performed.

2.3.21 RPN

Format

Byte 1

Byte 2

Byte 3

BnH

65H

qmH (MSB)

BnH

64H

qlH (LSB)

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) qm : RPN MSB

ql : RPNÇÃLSB

Receive

An RPN cannot be received when Rx.Rpn = OFF.

Though undefined RPN can be received and stored, subsequent data entry values following undefined RPN messages are ignored.

Applicable parameters are set following receipt of the RPN MSB and LSB, the data entry MSB is received and the value is set in accordance with the data entry MSB. The data entry LSB is ignored.

Send

An RPN and data entry are sent whenever the parameter assigned to the RPN is changed.

2.3.21.1 Pitch Bend Sensitivity

RPN MSB = 00H

RPN LSB = 00H

Data Entry MSB = mmH

mm : Pitch Bend Sensitivity = 00H to 18H (0 to 24îºâπ )

Receive

The data entry LSB is always ignored.

Send

The Pitch Bend Sensitivity message is sent when accompaniment starts.

2.3.21.2 Master Fine Tuning

RPN MSB = 00H

RPN LSB = 01H

Data Entry MSB = mmH

Data Entry LSB = llH

mm : ll Master Fine Tuning = 00 00H to 40H, 00H to 7FH 7FH (-100 to 0 to +99.99 cents)

Receive

The Master Fine Tuning message is always received when the MIDI Global Channel and RPN match.

Send

The Master Fine Tuning message sent whenever a mixer fine tuning operation is performed.

2.3.21.3 Master Coarse Tuning

RPN MSB = 00H

RPN LSB = 02H

Data Entry MSB = mmH

mm : Master Coarse Tuning = 28H to 40H to 58H (-24 to 0 to +24 semitones)

Receive

The data entry LSB is always ignored.

Send

The Master Coarse Tuning message sent whenever a mixer coarse tuning operation is performed.

2.3.21.4 RPN Null

RPN MSB = 7FH

RPN LSB = 7FH

Receive

Receipt of an RPN null causes all received RPN and NRPN data entry MSBs and LSBs to be ignored until another non-null RPN message is received.

Send

A Null RPN message is sent whenever a drawbar operation performed or when an operation is performed using the initial screen in the Synthesizer Mode.

2.4 Program Change

Format

Byte 1 Byte 2

CnH ppH

pp : Program Number = 00H to 7FH

Receive

The Program Change message is not received when Rx.Program Change = OFF.

The Bank Select MSB is always 00H for a drum part program change, regardless of the MSB value received in the Program Change message.

Send

The Program Change message is sent whenever a tone selection operation is performed.

2.5 Channel Pressure

Format

Byte 1 Byte 2

DnH vvH

vv : Pressure Value = 00H to 7FH

Receive

The Channel Pressure message is not received when Rx.Pressure Change = OFF.

The Bank Select MSB is always 00H for drum part channel pressure, regardless of the MSB value received in the Channel Pressure Change message.

Send

The Channel Pressure Change message is sent whenever an tone preset operation is performed.

2.6 Pitch Bend Change

Format

Byte 1 Byte 2 Byte 3

EnH llH mmH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

ll: Pitch Bend Change LSB = 00H to 7FH

mm: Pitch Bend Change MSB = 00H to 7FH

10

MZ-2000 MIDI Implementation

Receive

The value llH mmH is 00H 00H at the lowest pitch, 00H 40H at mid-pitch, and 7FH 7FH at the highest pitch.

The Pitch Bend Change message is not received when Rx.Pitch Change = OFF.

The LSB and MSB must be sent together to form a 14-bit value in order to be a valid Pitch Bend Change setting.

Send

The Pitch Bend Wheel message is send whenever a ptone preset operation is performed.

2.7 Channel Mode messages

2.7.1 All Sound Off

Format

Byte 1 Byte 2 Byte 3

BnH 78H 00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

Receive

Receipt of the All Sound Off message immediately mutes all notes being received over the MIDI channels.

Send

The All Sound Off message is sent whenever the Fade Out function is used.

2.7.2 Reset All Controller

Format

Byte 1 Byte 2 Byte 3

BnH 79H 00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

Receive

Receipt of the All Controller message causes the following controllers to be reset.

Controller Name

Reset Value

Polyphonic Key Pressure

vvH = 00H

Modulation Wheel

vvH = 00H

Expression Controller

vvH = 7FH

Hold 1

vvH = 00H

Portamento

vvH = 00H

Sostenuto

vvH = 00H

Soft

vvH = 00H

NRPN

msb = 7FH, lsb = 7FH

RPN

msb = 7FH, lsb = 7FH

Channel Pressure

vvH = 00H

Pitch Bend Change

llH mmH = 00H 40H

Send

 

The Reset All Controller message is sent whenever you change modes on the MZ-2000.

2.7.3 All Note Off

Format

Byte 1 Byte 2 Byte 3

BnH 7BH 00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

Receive

Receipt of the All Note Off message mutes all notes being received over the MIDI channels.

If Hold 1 or Sostenuto is turned all when the All Note Off message is received, notes are sustained.

Send

The All Note Off message cannot be sent.

2.7.4 Omni Mode Off

Format

Byte 1 Byte 2 Byte 3

BnH 7CH 00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

Receive

Receipt of the Omni Mode Off message does not enter the MZ-2000 Omni Mode. Instead, it is treated as receipt of an All Note Off message.

Send

The Omni Mode Off message cannot be sent.

2.7.5 Omni Mode On

Format

Byte 1 Byte 2 Byte 3

BnH 7DH 00H

n : Voice Channel Number = 0H to FH (Ch1 to Ch16)

Receive

Receipt of the Omni Mode On message does not enter the MZ-2000 Omni Mode. Instead, it is treated as receipt of an All Note Off message.

Send

The Omni Mode On message cannot be sent.

2.7.6 Mono Mode On

Format

Byte 1 Byte 2 Byte 3

BNH 7EH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Number of Mono Mode Channels = 00H to 10H

Receive

Receipt of the Mono Mode On message does not enter the MZ-2000 Mono Mode. Instead, it functions as the All Sound Off message and All Note Off message.

Send

The Mono Mode On message cannot be sent.

11

MZ-2000 MIDI Implementation

2.7.7 Poly Mode On

Format

Byte 1 Byte 2 Byte 3

BNH 7FH vvH

n : Voice Channel Number = 0H to FH (Ch1 to Ch16) vv : Number of Mono Mode Channels = 00H to 10H

Receive

Receipt of the Poly Mode On message changes the Channel n setting to Mode 3.

The Poly Mode On message functions as the All Sound Off message and All Note Off message.

Send

The Poly Mode On message cannot be sent.

3 System Messages

3.1 System Real-Time Messages

3.1.1 Active Sensing

Format

Byte 1

FEH

Receive

After the Active Sensing message is received, the MZ-2000 stands by for 400 msec waiting for another message to be sent. If nothing is received within 400 msec, the MZ-2000 performs the All Sound Off, All Note Off, and Reset All Controller procedures.

Send

The Active Sensing message cannot be sent.

3.1.2 Timing Clock

Format

Byte 1

F8H

Receive

The Timing Clock message cannot be received.

Send

The Timing Clock message is sent whenever an accompaniment or a song playback is performed while the MZ-2000's Realtime Message Out feature is turned on.

3.1.3 Start

Format

Byte 1

FAH

Receive

The Start message cannot be received.

Send

The Timing Clock message is sent whenever an accompaniment or a song playback is performed while the MZ-2000's Realtime Message Out feature is turned on.

3.1.4 Stop

Format

Byte 1

FCH

Receive

The Stop message cannot be received.

Send

The Timing Clock message is sent whenever an accompaniment or a song playback is performed while the MZ-2000's Realtime Message Out feature is turned on.

3.2 System Common Messages

The MS-2000 does not support sending or receiving of system common messages.

3.3 System Exclusive Messages

3.3.1 Universal System Exclusive Messages

3.3.1.1GM System On

Format

F0H 7EH 7FH 09H 01H F7H

Receive

The GM System On message is not received when Rx.Gm On = OFF.

Send

The GM System On message cannot be sent.

3.3.1.2Master Volume

Format

F0H 7FH 7FH 04H 01H llH mmH F7H

ll: Master VolumeLSB

mm: Master VolumeMSB

Receive

The Master Volume message is always received.

Send

The Master Volume message is whenever a Fade In/Out operation is performed.

12

MZ-2000 MIDI Implementation

3.3.2 MZ-2000 Sound Source System Exclusive Overview

System exclusive messages received by the MZ-2000 sound source start with the following data.

Format

F0H 44H 7EH 02H 00H .... 7FH

Though the purpose of system exclusive messages is mainly to assign parameters, the MZ-2000 also sends system exclusive messages whenever an operation that changes the setting of a parameter is performed.

A system exclusive message also includes a Device ID value, which corresponds to the channel number of a channel message. A Device ID is used when a system exclusive message is sent.

You can change the Device ID value on the MZ-2000.

See "4 MZ-2000 Sound Source System Exclusive Messages" for full details on MZ-2000 sound source system exclusive messages.

4 MZ-2000 Sound Source System Exclusive Messages

4.1 MZ-2000 Sound Source Common System Exclusive Format

4.1.1 General

The MZ-2000 sound source consists of audio signal processor sections for the tone generator, effects, mixer, etc.

The MZ-2000 sound source sends and receives sound source-related system information, parameters, and parameter sets, using the format described later in this chapter.

The format consists of a header block and data block. The same header block is always used within the MZ-2000, but the format of the data block is determined by the data being communicated.

The data content, in turn, depends on the MS-2000 function. The following sections of this chapter provide detailed information about the data content for each function.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Header Block (Hexadecimal)

00

F0

[System Exclusive Status]

01

44

[Manufacturer's ID] CASIO ID = 44H

02

7E

[Model ID MSB] MZ-2000 Sound Source Model-ID MSB

03

02

[Model ID LSB] MZ-2000 Sound Source Model-ID LSB

04

00

[Message Version]

05

**

[SysEx Dev ID] SysEx Device ID 00H to 1FH,7FH (Default: 16)

 

 

Even with system exclusive messages, channel numbers can be specified within the

 

 

range of 00H to 1FH for use as a Device ID number.

 

 

Messages are ignored if their ID Device ID number does not match that of the MZ-

 

 

2000.

A Universal Device ID of 7FH is provided, which means that the MZ-2000 always recognizes any SysExc message with a Device ID of 7FH.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Data Block (Format depends on content.)

06

**

[Message Type] (Category / Action)

07

**

[Data] (Not required when a Handshak Bulk Dump Reject value is present.)

08

**

[Data]

nn-1 **

[Checksum] (Option) Required for Bulk Dump only.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

nn F7 [EOX]

(nn < 256) Indicates there are 256 data bytes or less from F0H to F7H.

4.1.2 MZ-2000 Sound Source Common System Exclusive Data Blocks

The MZ-2000 sound source system exclusive data block always starts with the message type, which indicates the type of communication is being performed. Messages can be broadly classified into the types listed below.

*Individual Parameter Send/Receive

*Individual Parameter Send Request Send/Receive

*One-Way Parameter Set Bulk Send/Receive

*One-Way Parameter Set Bulk Send Request Send/Receive

*Handshake Parameter Set Bulk Send/Receive

*Handshake Parameter Set Bulk Send Request/Receive Rejection/ Error Report Send/Receive

With one-way communication, the sender sends the data and immediately ends the session without any response from the receiver. This type of communication is best for one-way data transfer from a sequencer, etc.

With handshake protocol, the sender sends the data but does not advance to the next session until it receives a response from the receiver. This type of communication helps to reduce time wasted waiting for the receiver to become ready.

About Message Types 0cccaaaa

aaaa Action(Binary)

- - - -

0000...IPC Individual Parameter Change (Individual Parameter Send) 0001...IPR Individual Parameter Request (Individual Parameter Send Request) 0010...BDS One Way Bulk Dump Send (One Way Data Send)

0011...BDR One Way Bulk Dump Request (One Way Data Send Request) 0100...HDS Handshake Bulk Dump Send (Handshake Data Send) 0101...HDR Handshake Bulk Dump Request (Handshake Data Send Request)

0110...HDA Handshake Bulk Dump Acknowledge (Handshake Data Send Request) 0111...HDJ Handshake Bulk Dump Reject (Handshake Data Rejection) 1000...HDE Handshake Bulk Dump Error (Handshake Data Error)

1111...NOP No operation (No Operation)

ccc Category

- - -

100...MZ-2000 Instrument Section (Sound Source)

4.1.3 Parameter Configuration

A parameter is a variable for making sound source operational settings, while a parameter set is a group of multiple parameters.

When using the MZ-2000 sound source system exclusive messages to access parameters and parameter sets, you must specify the location of data you are trying to access. The following shows the location of each type of data.

*Category (4 bits) ....Parameter set category

*Type ID (7 bits - 7 bits).....ID number inside parameter set category

*Mdev ID (7 bits - 7 bits) ..... ID number of memory where parameter set is stored

*Section Number (14 bits) ..... Section number indicating where a parameter set is stored in memory

*PS (Parameter Set) Number (14 bits)....Number indicating where inside a section a parameter set is stored

*Parameter ID (For parameter specification only)(16 bits) ....ID number of a parameter inside a parameter set

*Parameter Block Number (For parameter specification only) (7 bits* 1 to 16)

....Block number to which a parameter is attached inside a parameter set

In a structure where parameters with the same parameter ID are assigned to multiple blocks within the same parameter set, the block numbers must be specified specified using at least one as as many as 16 array data items.

The parameter blocks of the sound source parts and key numbers are a typical example of this. When there are parameters with the same ID for the key numbers in each part, a single parameter can be specified to substitute the part number and key number for at least one of the Block Number arrays.

Exactly how many of these values there are is covered within the explanations for each parameter.

There are two parameter formats, depending on the parameter ID: single data and array data. Array data is sent by specifying the starting element and the number of elements to be sent.

13

MZ-2000 MIDI Implementation

4.1.4 Individual Parameter Operations

This section describes parameter operation formats.

IPR Communication Flow

A session consists of an IPC being sent in reply to an IPR request, or an IPC being sent and the session being terminated with without a request.

When the MZ-2000 receives an IPR, it returns the corresponding parameter IPR.

When the MZ-2000 receives an IPC, it changes the value of the corresponding parameter.

Data Receiver

Data Sender

 

IPR ->

 

Send Request (Optional)

<-

IPC

Data Transfer

For information about how parameters are actually assigned, see sections 4.2 thorugh 4.11.

IPC/IPR

 

 

tt

0100aaaa

aaaa = IPC/IPR

d0[0]

00100000

Parameter Modify Message ID = 20H

d0[1]

0000cccc

cccc = Cat (Parameter Set Category)

d0[2]

0ttttttt

0TTTTTTT0ttttttt = Type ID

d0[3]

0TTTTTTT

 

d0[4]

0mmmmmmm

0MMMMMMM0mmmmmmm = Mdev ID

d0[5]

0MMMMMMM

 

d0[6]

0sssssss

00SSSSSSSsssssss = Section Number

d0[7]

0SSSSSSS

 

d0[8]

0nnnnnnn

00NNNNNNNnnnnnnn = PS Number

d0[9]

0NNNNNNN

 

d0[10]

0ppppppp

qqPPPPPPPppppppp = Parameter ID

d0[11]

0PPPPPPP

 

d0[12]

0rbbbbqq bbbb = number of parameter block - 1

One less than the number nested parameter block levels in the parameter configuration

bbbb==0 is interpreted as one-level parameter block nesting.

This means that at least one parameter must be associated with a parameter block.

r = array flag 0...single data 1...array data

Flag indicating whether the data immediately following it is single data or array data

Parameter block number specification (number of bytes required for parameter blocks) d1[0] 0iiiiiii 0iiiiiii = block-0 number of parameter

:

d1[bbbb] 0IIIIIII 0IIIIIII = block-bbbb number of parameter

Data indicating the block number of the parameter when parameters are nested in a parameter set

Section indicating the number of data in a data array and the number of data array numbers (This data string is not necessary in the case of non-array data.)

d2[0] 0ooooooo

d2[1] 0ppppppp oooooooppppppp = top index number of array to send (Number of array where transfer starts)

d2[2] 0qqqqqqq qqqqqqq = number of array members to send

(Number of send members in current packet)

In the case of an array that does not fit inside one packet, multiple packets are sent for the length specified by the top index number.

One data size (number of bits) minus 1

d3[0] 000zzzzz

zzzzz = number of bits - 1

When zzzz + 1 is: The number of data bytes is:

1 to

7

1

8 to 14

2

15 to 21

3

22 to 28

4

29 to

32

5

Following is actual data transfer format, which is added only in the case of IPC

Single Data

When the data size is 29 bits to 32 bits

d4[0] 0xxxxxxx yyyyXXXXXXX....xxxxxxx = Data

:

d4[3] 0XXXXXXX d4[4] 0000yyyy

When the data size is 22 bits to 28 bits

d4[0] 0xxxxxxx yyyyyyyXXXXXXX....xxxxxxx = Data

:

d4[2] 0XXXXXXX d4[3] 0yyyyyyy

When the data size is 15 bits to 21 bits

d4[0] 0xxxxxxx yyyyyyyXXXXXXXxxxxxxx = Data d4[1] 0XXXXXXX

d4[2] 0yyyyyyy

When the data size is 8 bits to 14 bits

d4[0] 0xxxxxxx XXXXXXXxxxxxxx = Data d4[1] 0XXXXXXX

When the data size is 7 bits or less d4[0] 0xxxxxxx xxxxxxx = Data

Array Data

When an entire array is transferred, the format is the same as that for single data.

d4[0][0] 0xxxxxxx yyyyyyy....xxxxxxx = Data

:

d4[0][X] 0yyyyyyy

d4[1][0] 0xxxxxxx yyyyyyy....xxxxxxx = Data

:

d4[1][X] 0yyyyyyy

:

:

d4[N][0] 0xxxxxxx yyyyyyy....xxxxxxx = Data

:

d4[N][X] 0yyyyyyy

Notes: N = oooooooppppppp - 1

X = depends on data size - 1

When zzzz + 1 is: The number of data bytes is:

1 to

7

0

8 to 14

1

14 to 21

2

22 to 28

3

29 to

32

4

14

MZ-2000 MIDI Implementation

4.1.5 Parameter Set Bulk Dump

This section describes the bulk format for parameter set transfers.

How parameter sets are actually allocated depends on the MZ-2000 sound source specifications. See sections 4.2 thorugh 4.11 for more information.

Unlike the data format for individual parameter changes, a memory image is sent in order to increase the speed of the parameter set bulk dump. Preand post-processing required for each parameter is performed after bulk dump of all the data is complete.

You can transfer multiple parameter sets during a session. When a single parameter set is very large, it can be divided and transferred as multiple packets. In such a case, and address offset is included as part of the data.

Transferring multiple small-size parameter sets using a single packet is not allowed. Each parameter set must always be transferred as a separate packet.

One-Way Communication Flow

A session starts with a BDR request by the data receiver or a BDS data send by the data sender. The session ends after the data sender transfers the required amount of data for the number of parameter sets.

When the MZ-2000 receives a BDR, it uses a BDS to return the corresponding parameter set. When the MZ-2000 receives a BDS, it modifies the setting of the applicable parameter set.

Data is divided into packets of 256 bytes or less and transferred at fixed intervals (20 msec).

Data Receiver

Data Sender

 

BDR ->

Send Request (Optional)

 

<- BDS

Data Transfer

Interval: 20 msec minimum

 

 

<- BDS

Data Transfer

Interval: 20 msec minimum

 

 

<- BDS

Data Transfer

Interval: 20 msec minimum

 

 

:

 

 

:

 

Hand Shake Protocol

A session starts with the data receiving sending an HDR request or an HDS data send from the data sender.

The data sender does not send the next packet until it receives an acknowledgement (ACK) from the data receiver. Be sure to reserve at least 100msec as the maximum wait time. If no response is received within the prescribed time, a time out error occurs and communication is terminated.

If the data receiver returns an HDE (error) due to a checksum error, illegal data format, or any other reason, the data sender resends the data. Resend the data at least one time.

The session ends after the data sender transfers the correct amount of data for the number of parameter sets, and is terminated when an ACK is returned.

Data Receiver

Data Sender

 

HDR ->

 

Send Request(Optional)

<-

HDS

Data Send

HDA ->

 

Acknowledge

<-

HDS

Data Send

HDA ->

 

Acknowledge

:

 

 

:

 

 

Resend is performed after an error due to checksum error or data format error.

Data Receiver Data Sender

 

HDR ->

Send Request (Optional)

<- HDS

Data Send

HDA ->

Acknowledge

<- HDS

Data Send

HDE ->

Acknowledge

<- HDS

Data Resend

:

 

:

 

Send is terminated if there is no acknowledgement (ACK).

Data Receiver Data Sender

 

HDR ->

Send Request (Optional)

<- HDS

Data Send

HDA ->

Acknowledge

<- HDS

Data Send

(Send Terminated)

 

HDJ is sent whenever the session is terminated for any reason. HDJ can be sent from either the sender or receiver. Receipt of HDJ immediately terminates a bulk dump.

Data Receiver

Data Sender

 

HDR ->

Send Request (Optional)

 

<- HDS

Data Send

HDA ->

Acknowledge

 

<- HDS

Data Send

 

:

 

HDJ ->

Data Receive Rejection

(Send Terminated)

 

Data Receiver

Data Sender

 

HDR

->

Send Request (Optional)

HDA ->

Acknowledge

 

<- HDS

Data Send

HDA ->

Acknowledge

 

<- HDS

Data Send

 

:

 

 

<- HDJ

Data Send Rejection

Parameter Set HDJ/HDA/HDE

tt 0100aaaa aaaa = HDJ/HDA/HDE

No data in the case of Rejection, Acknowledge, or Error

Parameter Set BDS/HDS

tt

0100aaaa

aaaa = BDS/HDS

d0[0]

0ooocccc

cccc = Parameter Set Category

 

 

ooo = option (Definition for each category)

d0[1]

0ttttttt

0TTTTTTT0ttttttt = Type ID

d0[2]

0TTTTTTT

 

d0[3]

0mmmmmmm

0MMMMMMM0mmmmmmm = Mdev ID

d0[4]

0MMMMMMM

 

d0[5]

0sssssss

00SSSSSSSsssssss = Section Number

d0[6]

0SSSSSSS

 

d0[7]

0nnnnnnn

00NNNNNNNnnnnnnn = PS Number

d0[8]

0NNNNNNN

 

15

Loading...
+ 35 hidden pages