JON BATES talks to himself about Casio’s favourite synth

OVER the past few months a steady trickle of mail has plopped over the threshold of the Bates Motel. Much of it has referred to a series of synths that seem tailor-made for low budget music setups. I refer of course to the CZ series from Casio.

Casio has aiways made its mark in the low-budget end of the music market with some notable successes, such as the ‘VL tone’ keyboard, and one or two clangers — the keyboard that combined with a ghetto blaster, for instance. Anyway, Casio signed up the revered ‘classical’ synthesist Isao Tomita a few years back as design consultant.

Whether this had any effect I don’t know. but in any case a 49-note minikeyed synth, the CZ-101, was launched at the beginning at 1985 after a few rumblings and sneak previews in the music press. With it was the discovery that Casio was using an entirely new form of sound-generation — phase distortion.

Tailor-made for a low budget: Casio’s CZ synth


The principle of phase distortion is that the angle of the original waveform can be distorted by some fancy maths applied to the wave table as it streams out of the ROM. The beauty of the system is that the level of induced distortion can be governed to a user preset level set in a manner not unlike the analog synthesizer’s filter envelope.

Casio carried this a little further and offered a choice of waveforms to be distorted and combined, plus other goodies like selectable envelopes with up to eight stages if you wish, ring-modulation, noise and two sound sources that can be combined or tuned against one another. In short, there’s an awful lot in the CZ-101.

More importantly, the MIDI specs are very favourable. The CZ-101 has a mono mode that allows you to play four different sounds monophonically over four different channels. It’s excellent for cheapo MIDI sequencing and multitracking but its big drawback is that it can only accommodate 16 voices. The factory presets don’t help either — they’re a pretty weedy bunch.

There is a cartridge you can insert that adds another 16 voices to your CZ-101, but really this is where it falls in the face of the competition; the Yamaha DX100 offers 256 voices without so much as an external source in sight. But the DX range will not respond to more than one MIDI channel at a time.

The original price for the CZ-101 was £395, but this was soon undercut and nowadays you can pick one up at real bargain prices — £150 or less. The cheap and simple short cut to the indifferent sounds is to buy them. A quick flip through the ads of any high-tech music magazine will reveal quite a few companies marketing books of patches (as synth voices are termed).

But where does the Spectrum come into this? The application of a computer to a MIDI instrument should put us in control of the whole instrument and all its secrets — but it depends how generous the manufacturers have been in allocating MIDI codes. The CZ series (101, 1000, 3000, 1) allows us to control musical peripherals quite well, though velocity sensing (touch sensitivity) is only available on the more expensive models. It will also allow us access to the Exclusive part of MIDI and allow you to program and store voices from any suitable input device, in this case the Spectrum.


Obviously to write music into the computer and to have the CZ play it back is the first function of a Spectrum/CZ setup. If you have a Spectrum 128K it’s not so much of a problem — the RS232 socket can serve as a MIDI OUT port. But if you have only 48K under your fingers there is only really one way out — to purchase a bespoke interface and program.

Really there are several paths with MIDI and the CZ. It depends on your particular needs, the state of your piggy bank, and what Spectrum you have.

If you want to write and record music and program the voices from the 48K Speccy, you have a choice of either the Micon interface from XRI systems or the Ram/Flare Music Machine. These voice-edit programs have been reviewed in full in CRASH Issues 38 and 34 respectively; the gist of it is that the programming peripherals are displayed onscreen in full instead of on LCD in part, and it’s very easy to see what you’ve done and need to do.

There is also a very useful voice-storage feature which gives you a greatly enhanced voice bank and instant access to the voices in it.

Both interfaces support quite a wealth of software, including a CZ program is one of them; indeed, the Micon interface and Music Machine are very similar in approach. An added bonus is that the Music Machine samples sounds as well, and there’s lots of software springing up to support this well-designed interface, including an eight track MIDI recorder (see Issue 45).


It goes without saying that all 48K programs will run on the 128K, though they rarely use the full memory capacity. But what if you don’t have an interface? Well, there are still a couple of options left. Life is a little more difficult with a 48K and no MIDI interface but not impossible — that is, you have an Interface 1 at your disposal.

Gary Chambers, late of Newport, Gwent, devised a voice-programming program for such a setup. You can write to him for details of his new CZ editing program. He has sent me details of a basic MIDI OUT routine for the Interface 1 which is as follows:

10 CLEAR 65199
20 FOR f=65200 TO 65275: READ a: POKE f, a: NEXT f
30 SAVE "midiout" CODE 65200, 76
40 DATA 14, 144, 243, 38, 1, 62, 0, 211, 247, 12, 205, 241, 24, 111, 247
41 DATA 15, 205, 241, 254, 211, 247
42 DATA 15, 205, 241, 254, 211, 247
44 DATA 15, 205, 241, 254, 211, 247
45 DATA 15, 205, 241, 254, 211, 247
46 DATA 15, 205, 241, 254, 211, 247
47 DATA 15, 205, 241, 254, 211, 247
48 DATA 124, 205, 241, 254, 211, 247, 251, 201, 6, 3, 16, 254, 214, 0, 0, 0, 0, 0, 201

To use the program POKE 65201 + n, where n is the value to be sent through MIDI. Then RANDOMIZE USR 65200 to actually send the value. Using this it is possible to send MIDI commands for notes, and any other Systems Common commands.

If typed in as printed, it will save to tape (Remember to CLEAR 65199 when reloading.) The diagram shows how to connect the MIDI plug to either of the NET ports.

With luck we’ll see the full programming version, which works on both MIDI IN and MIDI OUT, in the fullness of time. And the old game Zombie Zombie from Quicksilva will also emit MIDI from the NET port, so it may be worth looking for as a cheap alternative.


Over to the 128 department: there’s no voice-programming available here yet from the MIDI output, but quite a lot of useful stuff for the Z codes.

Your friendly 128 handbook is quite helpful when you’re trying to access MIDI. You can either solder the ends of your fingers off and connect pins 1 and 5 on the RS232 port to pins 4 and 5 on the MIDI DIN plug, or you can spend just under a tenner on a lead made up by Cheetah.


IN MIDI codes, the prefix Y sets the MIDI channel, V is velocity (not much use on CZ-101), and Z prefixes the all-important control codes.

Most of the codes here are fairly short and most consist of three bytes.

The first byte gives the type of command and channel number (MIDI code 176 channel 1, 177 for channel 2 etc).

The second byte says what the command is for — vibrato, portamento, etc. For instance, 1 indicates vibrato.

The third byte is used to turn a function on or off or to set a range in between. 0 turns off, 127 turns on.

Thus to set vibrato on channel 1 is: Z176 Z1 Z127
And to turn it off again is: Z176 71 Z0

Considering the first byte:

Program (voice) change: Z192 (can be 193, 194 etc)
Pitch bend: Z224

Considering the second byte:

To change portamento time: Z5
To change the master tune: Z6
To turn portamento on or off: Z65
To turn on mono mode: Z126 (the third byte in this case is 1, 2, 3 or 4, defining the number of channels to follow)

Program (voice) numbers start at Z00 so:

Presets are Z0-15
Internal voices are Z32-47
Cartridge voices are Z64-79

Degree of pitch bend Z0-Z127

(Beware of this one, though — it’s usually sent in great streams of data and not as a single control: you can reset to central position with a code of 64.)

Systems-exclusive messages

These need up to eight bytes
begin system exclusive: Z240
Casio ID code: Z68
sub status: Z0
sub status: Z0
data command: first byte
data command: second byte
data command: third byte
end of exclusive: Z247

Within the systems-exclusive area

Tone mix is controlled by Z112 (tone mix on), Z65-73 (mixing level), and Z1-Z9 (tone mix off)

Transpose is Z112, Z65 Z (new key) (G to B: 69 to 65 C to F#: 0 to 6)

By putting the mono mode code in your 128 program you can give four music lines individual channel numbers and play them on the CZ simultaneously from the 128. But mono mode is a little peculiar; though you can have four channels simultaneously, you have to have them consecutively numbered and the starting channel will be the lowest.

(Thanks to Mark Roberts for supplying some codes)