Sinclair ZX Spectrum
Your Computer, June 1982
The new Sinclair has arrived at last - a book-sized micro-computer with colour and sound and an extended version of ZX Basic. It came through its test well ahead of the competition but, as Tim Hartnell found, even Sinclair Research cannot work miracles.
LAUNCHING THE SPECTRUM, Clive Sinclair confessed
that there had been considerable disagreement within his organisation
over the name of the new computer. "At one point",
he said, "we thought of calling it `Not the BBC Micro'".
In March last year, Sinclair unleashed an angry tirade against
the BBC for giving Acorn the right to make the computer for
the TV series, saying that he had told the BBC he could produce
a computer - within their specifications - for just over £100.
The ZX Spectrum is the fulfilment of that promise.
The Spectrum has eight colours, a built-in
sound generator and loudspeaker, and the closest Sinclair
Research has come to a "real" keyboard. Its specifications
exceed those of the Model A BBC machine, and come close to
the Model B in many areas. At just £125 for the 16K
model, the Spectrum is the same price as a ZX-81 with 16K
pack when first launched. With 48K the Spectrum costs £175.
The Spectrum uses a "superset"
of ZX-81 Basic, and any ZX-81 program can be typed in with
the minimum of changes; ZX-81 tapes cannot be loaded into
the Spectrum. The new computer loads and saves much more quickly
than does the ZX-81, at 1,500 baud as against around 250,
and the upward compatibility of listings should mean a lot
to organisations like Muse which are building up a library
of educational ZX software. Publishers of ZX literature or
ZX software breathed a sigh of relief on hearing that ZX-81
listings could be entered directly.
The Spectrum works in upper- and lower-case
letters, and does so like a typewriter: capital letters appear
only when you use the shift key. The computer does not differentiate
between upper and lower case when naming variables - so A$
is the same as a$ - and will ignore spaces in variable names.
The range of characters is standard, and
symbols such as ! and # are available on a ZX machine for
the first time. There is a range of three different curly
brackets and a cute little © copyright sign.
The © sign, and the words "Sinclair
Research Ltd" appear on the screen in black letters on
a white ground when you first turn it on. Pressing New LList
or Copy produces some remarkable flashing-border displays,
and in Save and Load you are treated to a lollypop-striped
screen in reds, blues and yellows.
The error codes are fascinating, and in
English rather than the odd little numbers and letters of
the ZX-80 and ZX-81. If all goes well in a Load, a Save, a
program execution or whatever, the computer prints "OK"
at the bottom of the screen. If you manage to make it swallow
an incorrect line or parameter - which is difficult to do,
because all lines are checked for syntax before being accepted
into the main body of the program - the computer prints the
delightful line
Nonsense in BASIC.
Whoever wrote the ROM had a sense of humour.
There is much in Spectrum Basic to tempt
you to enhance your programs. It includes Beep, a single-channel
"music" command with both duration and pitch under
user control, Ink to determine the colour of the Print output
and Paper for the background colour. The Border command allows
the area round the main display to be independently coloured
and changed, Flash sets all Printed material flashing into
its inverse colour, and Bright intensifies the colour of selected
pixels.
All commands can be put into a Print, or Input statement, such as
PRINT PAPER 4; INK 2: AT 10,10;"hi there"
for red letters on a little green strip
just underneath the letters, or can be entered within the
program to alter everything that comes afterwards. A line
reading Ink 1 followed by Paper 6 will make all printed matter
blue, and the whole screen yellow; Border 2 puts a bright
red frame around the screen. The colours are easy to use,
and the keys are clearly marked, with the colours they represent.
The screen is memory-mapped and the computer
runs as fast as the ZX-81 does in Fast mode, but with a rock-steady
permanent display. Nevertheless, the ZX Basic is considerably
slower than BBC Basic. High-resolution graphics of 256 by
192 can be achieved, and the Plot command works on a grid
this size, but the control is not available to the same resolution.
Colour works on a grid of 32 by 22, the same grid as for letters.
Read, Data and Restore are available, as well as Def FN and
FN, and enhance the capabilities of the computer considerably.
It is obvious that Sinclair has listened
to those who have criticised some shortcomings of the ZX-80
and ZX-81. The Load and Save procedures on the earlier machines,
in particular, left a great deal to be desired. The Spectrum
Loads in blocks, sets the record level automatically and suppresses
noise. Once you think you have a program successfully on tape
- and before you New it from the computer - you can play it
back into your computer using the Verify command, to make
sure it is there safely. The very first program I attempted
to save on the Spectrum Saved, Verified and Loaded successfully
at first attempt.
The new Load and Save, along with the fact
that the memory can be relied on not to drop out unexpectedly,
make working with the ZX Spectrum a pleasure. The awful fear
that your carefully keyed-in program is about to vanish into
thin air has been banished. The 16K or 48K memory is permanently
fixed inside the Spectrum. You cannot use the ZX-81's 16K
pack, though the new computer does operate the ZX printer.
The ZX Spectrum is small and flat, rather
wider than the ZX-81 but not as deep. The keys are rubbery,
and appear to press on to a standard ZX keyboard. You can
use them without looking at the keyboard, once you know your
way around it, and a touch-typist will soon feel at home.
The key action is positive - although you need to squeeze
the keys rather than press them - and there is no need to
keep checking the screen to see that each keystroke has been
entered.
All keys have auto repeat, which is a boon
for running out parts of lines or for moving the cursor along
the long line you wish to edit. The Spectrum makes a clicking
noise while auto repeat is working. If you start the auto
repeat with a key which requires Shift such as Delete you
can take one finger off the Shift and just leave it on the
Delete key once the auto repeat is underway. The Edit facility
is the simplest to use of any computer on the market, it is
better than that on the BBC Micro, except that you cannot
join together parts of separate program lines.
Symbols and keywords
The keys on production models are to be
light-blue, with the alphanumeric symbols and keywords marked
in white. Function symbols such as ?, At, Then and + are in
red.
Sinclair invented the "one-touch key"
system for the ZX-80, which ensured that the computer knew
that the first key pressed after a line number, or after the
word Then, would produce a keyword, such as Let, Print, Poke
or Goto. This meant that programming was fast and positive.
The ZX-81 demanded a sequence of key presses - such as Shift,
then Function, then a key - to get the results you wanted.
Sinclair is obviously wedded to the one-touch entry system,
but it is really not suited to the Spectrum. The sequence
of key presses required for Ink and Atn, for example, requires
the same number of key presses as would be needed to type
the word in directly.
There are now two Shift keys, a white one
and a red one. The white one works like the standard shift
key on a typewriter, turning lower-case letters into capitals
and, in the Graphics mode, producing the graphic rather than
the number from the keys 1 to 8. The red Shift key, on the
bottom right-hand corner of the keyboard, is used for words
such as At, Or, And, Then and Step, along with the full stop,
the colon for multi-statement lines, and the $ sign. The =
sign is also accessed by using this shift, then pressing L,
but as these are next to each other, you will soon find yourself
pressing both keys at once with your right hand to enter the
= sign.
You must press both shift keys at once,
followed by another key press, to enter words such as Int,
Rnd, Chr$ and Codes. Other commands, such as Ink, Paper and
Beep, require both shift keys to be pressed at once, then
the red one to be held down while the relevant key is pressed.
Unfortunately, the command New is as easy
to access as Print and Goto - no Shift keys or juggling needed.
This is sure to result in programs being wiped accidentally,
especially as New lies between Copy and Plot. By contrast,
the harmless Stop command, on the same key, needs two key
presses. Designing the New like this suggests that not enough
thought has been given to human behaviour.
Other aspects of the keyboard show more
care in their design. The Then and Goto are on the same key,
as these are often accessed one after the other; the same
goes for For and To. There is a single apostrophe - a wise
lesson learned from Atom and BBC Basic - to move the Print
statement down a line, so
PRINT ' ' "HI"
will skip two lines before printing the word "HI".
The List command takes some getting used to. Pressing List will give you a page of program, then the message
scroll?
will appear in the bottom left-hand corner.
Pressing any key except "n" allows the listing scroll
to continue, page by page. The current-line cursor, an inverse
> symbol on the ZX-81, has been replaced by the same symbol
displayed in normal mode. It is not particularly easy to see,
and you can spend a lot of time running your eyes up and down
the column after the line numbers to find it. Using List n
to find a line you have requested is almost comically difficult.
The Beep command is simple to use, and the volume from the
internal speaker is adequate. The sound output can be tapped
from both the Mic and Ear sockets at the back, to drive an
earpiece or to feed into an amplifier. The word Beep is followed
by two parameters. The first is the duration of the tone in
seconds - fractions of a second, such as .05 or 17/36, are
also accepted - followed by a comma, followed by the frequency.
Middle-C is a 0, so
Beep
1,0
will play middle-C for one second. Higher
numbers produce higher notes, with negative numbers for notes
below middle C. There is a range of around 130 semitones,
and fractions of a tone are accepted.
The graphics are a development from those of the ZX-81. All
the standard ZX symbols are there, made from quarters of a
character square, with black and grey, along with their inverses.
The new Draw command draws a remarkably fine line from the
co-ordinates of the Plot command and can therefore be used
as a substitute for Move. The Draw command can also be used
to draw parts of circles by adding a third parameter, the
angle to be turned through. The Circle command - naturally
enough, it draws a circle - needs three parameters: the x
and y co-ordinates of the centre, and the radius. The circles
drawn appear very close to true circles, especially if a fairly
large radius is used.
Lower-case letters
The lower-case letters, formed on an eight-by-eight
character grid, are fairly good, although the descenders only
go down one pixel.
You can define up to 21 of your own characters, using a remarkable
function called Bin - for binary - which allows character
shapes to be Poked into position. The new character can be
assigned to any key. Chr$8, is a back-space which does not
erase the character, and you either overprint, using the command
Over, or underline. Far more sophisticated than on the ZX-81,
the Spectrum graphics will prove a boon for improving screen
and printer output, although they will also be more difficult
to master.
It is good that Sinclair has decided not
to kill the ZX-81 as it is still the ideal first computer.
Those who know how to program a ZX-81 will find they can gain
reasonable facility with the Spectrum within a couple of hours.
After countless hours staring at the black, greys and whites
of the dumb ZX-81, the brilliant colours and the Beeps from
the Spectrum will ensure that even your dullest programs at
least look interesting.
CONCLUSIONS
-
With powerful colour and sound commands, the ZX Spectrum is a remarkable computer, exceeding the BBC Model A in specification.
-
Its use of a Basic very similar to that of the ZX-81 provides a ready-made source for software, though ZX-81 tapes cannot be loaded into the Spectrum.
-
Programs can be saved and loaded without the problems which plague the ZX-81. Built-in memory means that sudden program loss should no longer be a problem, but ill- considered keyboard design means that programs could still be lost by inadvertently keying New.
-
The
moving-key keyboard is an improvement on the touch-sensitive
board.
-
The
one-touch entry system, retained from the ZX-81, is not
suitable for the Spectrum and leads to complicated multi-shift
operations when keying some functions. It should have been
discarded.
-
Despite
minor faults, the Spectrum is way ahead of its competitors.
There is certain to be a rush for orders.
|