Robin Bradbeer looks at Sinclair Research's new ZX Spectrum and finds it 'incredible' value at £125
THE SPECTRUM is a colour and sound computer
for the incredibly low price of £125. At that price
it undercuts the BBC Microcomputer Model A, its direct competitor,
by around £175. In designing the ZX-82 it is clear that
the rejection of Sinclair's offer to build the BBC Micro was
foremost in the company's mind. The specification is very
similar and will certainly affect sales of the Acorn-based
machine. It is as if Clive Sinclair has turned to the powers
that be in the Government and BBC and said "I told you
so".
The Spectrum is a
small computer, measuring 233 x 144 x 30mm, or slightly wider
but not so deep as the ZX-81. The basic model has 16KB of
RAM and 16KB of ROM. That compares to most other common computers
for ROM but it is more RAM than most models in the less than
£300 price range.
RAM indicates the amount of memory available
to the user for working data and programs and ROM is an indication
of the power of the computer to run that program and manipulate
the data.
Another 32KB of memory is available at around
£50 and that plugs into some sockets already built into
the main board. The 48KB RAM model, therefore, is potentially
as powerful as the very common Apple II computer costing around
three times the price.
The main difference between the ZX-82 and
the ZX-81 is immediately obvious. The keyboard has 40 keys,
the same as the ZX-81. Some of the keys, notably the enter
key, are slightly larger than the others. Whereas the ZX-81
had a touch-sensitive keyboard, the ZX-82 has a keyboard with
keys which are about half the size of typewriter keys. They
move downwards firmly and feel like the keys on desk-top calculators.
The other noticeable feature is the number
of functions on the keyboard. More than 250 functions are
available and some of them require three shifting operations.
The colour coding of the keys and their functions makes life
very easy, however, and with the single-key access to all
functions, which is similar to the ZX-81, you soon become
familiar with the conventions and could easily prefer them
to the more normal way of doing things.
For example, to obtain the square brackets
symbol involves going into extended mode, accessed by pressing
the symbols shift and capitals shift keys at the same time.
Then you have to press either shift and the Y key. Although
that may seem rather long-winded it is still shorter than
typing VERIFY, which is achieved in a similar way to the square
brackets but is on the 'R' key as a single function.
Colour coding is effective in this case
and the designers are to be complimented on the ergonomic
strength, as well as for the design of the whole package,
which feels very comfortable to hold and looks very presentable
on a desk.
The Spectrum plugs into a normal UHF TV
tuned to channel 36 and all characters are shown lower-case
unless specified by using the capitals shift. There is a capitals
lock, which is very useful. The Basic is based on that of
the ZX-81 and some of the features lacking on the original
model have been included in the latest one.
The screen can display 24 lines of 32 characters,
although the individual pixels which make up each character
- 64 in all - can be accessed and changed at will. That means
that 256 x 192 pixels is available for graphics.
The screen format is very similar to the
Commodore Vic, with a border area and the active screen within
the border. At switch-on, the system automatically enters
a mode where border and screen area, or paper as it is called,
are white and the letters, or ink colour, black. That overcomes
the strange effect noticeable on some colour computers where
the border area is different from the working area, which
makes the screen look smaller than it is.
The colours of the border, paper
and ink can be changed easily with commands of the same name.
Eight colours are available, although judicious use of the
graphics characters available make intermediate colours, like
orange, possible. It is also possible to have 21 user-defined
graphics characters, which will allow Greek or other alphabets
to be used.
Unlike some computers built in the States,
the Spectrum also has a £ sign on the keyboard; everything
can be printed on the ZX printer, which can be used for the
ZX-82 as well as the ZX-81, although the ZX-81 expansion memory
pack cannot be used with the Spectrum.
Many commonly-used routines in the graphics
are available automatically. For example, a circle can be
drawn with the 'circle' command by specifying the centre and
diameter. Lines can be drawn with the 'draw' command by specifying
start and end locations.
The colour control commands are very simple
to use. Brightness can be at two levels, and the character
can be steady or flashing. The attributes of the character
are stored as a single byte and can be accessed and changed
from the Basic.
In addition to the ink and paper commands,
the Basic has brightness and flashing commands. Other useful
graphics functions include an over command which allows characters
to be super-imposed at any point. The six colour control commands
can be used over the whole active screen area or locally within
each individual 8 x 8 pixel group which makes up each character.
Like the ZX-81 the plot command accesses
one pixel at a time and the attributes of each block can be
used to control the characteristics of that pixel. Colour
control codes, which can be accessed directly from the keyboard,
can be inserted into text or program listings and, when displayed,
will override the globally set colours until another control
code is encountered.
All control commands can also be used within
strings and it is entertaining to define a string which has
different-coloured characters and background colours in it.
A simple print command using that string causes it to be printed
to screen just as stored.
Another powerful use of colour in listing
is that certain sections of the listing can be picked out
in different colours -both the colour of the character and
its background. It is also possible to have flashing REM statements.
Any colour used in the listing is not used when running the
program.
The eight colours are given numbers from
0 to 7 and they are shown clearly above the keyboard numbers.
The order gives a graded grey scale on a monochrome TV display.
They are black, blue, red, magenta, green, cyan, yellow and
white. All eight colours may be on the screen at the same
time, with some areas flashing, some steady, some normal brightness
and some extra bright.
Editing is the same as for the ZX-81 but
the addition of autorepeat on every key makes editing easy,
especially when moving the cursor around a long line.
Some additions to the Basic include the
means to enter a binary number directly. That is the method
of generating the user-defined characters, of which there
can be 21 directly-attributable to some of the keys on the
keyboard. The 8 x 8 matrix is made up by defining the character
as a series of eight bytes, each byte being one line of the
character. A 1 indicates a pixel and a 0 the absence of one.
Other new functions include READ, DATA and RESTORE, something
which was sorely missing on the ZX-81. FN and DEF FN are also
there.
One of the best new additions to the specification is the
ability to type in lower-case. That certainly makes reading
and writing programs easier, especially as the keywords are
still capitals. So strings, variables and arrays can be specified
in a way which is simpler to use.
Unlike the ZX-81, the Spectrum uses true
ASCII codes for its alphanumeric characters and control codes.
That means that ZX-81 cassettes cannot be read into the Spectrum.
Other than the absence of SLOW, FAST and SCROLL, however,
the Basic is identical. There is no need for FAST or SLOW,
as the memory-mapped screen overcomes the need for screen
writing during interlacing, as on the ZX-81. The ZX-82 has
the speed of the ZX-81 in fast mode with the screen characteristics
of the ZX-81 in the slow mode.
One of the problems with both the ZX-81
and its predecessor, the ZX-80, was the rather idiosyncratic
working of the cassette storage. The Spectrum incorporates
a new cassette interface which is incompatible with the ZX-81.
A tone leader is recorded before the information to overcome
the automatic record level fluctuations on some recorders.
An electronic circuit, called a Schmitt
trigger, is used to remove noise on playback. All saved information
is started with a header as to its type, title, length and
address information. A number of types of information can
be stored on cassette - programs, blocks of memory and arrays.
The MERGE function allows programs to be
merged and the VERIFY function allows stored data to be checked
before being erased from the computer memory, so programs
and arrays may be merged from tape to combine them with the
existing contents of memory; where two-line numbers or variable
names coincide, the old one is erased.
Programs can also be saved with a line number
to allow execution to start anywhere in the program on successful
loading. By storing the screen memory, it is possible to road
a screen image without having to run any program required
to generate that image.
The ZX-82 has an expansion port similar
to the ZX-81, with the addition of the colour video information.
Thus a colour monitor could be attached to give a high-quality
display. Full data, address and control buses for the Z-80
processor are available and the ZX printer can be plugged-in
directly.
The LPRINT, LLIST and COPY commands work
with Spectrum Basic, with the additional bonus that any user-defined
graphics will also be printed. It is also possible to run
a number of other peripherals at which Sinclair has only hinted.
There will be an RS232C interface, so that standard printers
can be attached. There will also be a network with an interface
which fits on the expansion port, as will the ZX-Microdrive,
to be launched later this year. It is possible to access all
I/O ports by using the IN and OUT commands in the Basic.
The Spectrum has a very basic sound capability.
The internal speaker emits a 'raspberry' like sound, set normally
at a frequency of middle C. The pitch and duration of the
note can be defined in the Basic with the BEEP command. The
centre frequency being middle C, any other note can be defined
by the number of semitones above or below that frequency.
It is also possible to have fractional intervals so that unusual
scales can be generated.
In summary, the ZX Spectrum is a very
fine computer and at the price will give Commodore, Acorn/BBC
and Atari a run for their money.