Personal Computer News


Spectrum 48K & Spectrum Plus

 
Published in Personal Computer News #093

Sinclair's best-seller still holds its own against the competition. Gavin Monk evaluates the reasons for its success.

Still Going Strong

Sinclair's best-seller still holds its own against strong competition. Gavin Monk evaluates the reasons for its success

When the ZX Spectrum was launched in spring 1982 it offered fantastic value for money, and demand soon exceeded supply. Now things have changed, and competitors have had a chance to catch up enough to influence Sinclair's plans. For instance, the 16K version is not now being manufactured. With Atari and Commodore chopping their prices, will Sinclair follows?

The answer to these questions lies mainly with Sinclair but it's a fair bet that very soon the 48K model will cost around £100, which would offer better value.

In order to give the Spectrum a new lease of life the Spectrum Plus has been launched.

Features

The Spectrum offers 16K ROM, 48K RAM (16K models may still be available), 192 by 256 pixel graphics, eight colours plus flash and bright options, 21 user-definable graphics, single channel sound, single key entry with syntax checking, a membrane qwerty keyboard, cassette interface, TV output, and a user port.

The 16K ROM contains both the Basic and Operating System which are both more or less bug free. Of the 48K approximately 41K can be used to store programs, data, etc. The screen takes up almost all the other 7K and the rest is taken up by the systems variables, printer buffer, and user defined graphics area.

Although the graphics are 192 by 256 pixels, an area of only 176 by 256 pixels can be used for high-resolution work in Basic, as the bottom two lines of the screen are for input messages and error reports. The two lines, however, can be used in the same way as any other screen area from machine language. The screen is memory mapped but in a non-standard fashion.

Screen memory starts from 4000 hex and ends at 5800 hex, then followed by the attributes file. The screen is mapped by dividing it into three sections: top, middle and bottom, each containing eight screen lines. The memory map for the screen is now laid out as follows: The top row of line 0 followed by the top row of line 1 etc up to line 7, then the second row of line 0, then the second row of line 1 etc up to line 7. This is repeated until the top section is mapped and then the same occurs for the middle and bottom sections. If you have access to a Spectrum, run the following program to show you the effect:

10 FOR I=16384 TO 22527:REM screen map
20 POKE I,255
30 NEXT I

This of course doesn't matter in Basic much, but it's a headache for machine code programmers. This is why several commercial programs use the screen in three different parts.

The Spectrum supports eight colours which can be set to appear on the screen extra bright, flashing, bright and flashing or just normally. However, the colour resolution is only 32 by 24 from both Basic and machine language. This causes great problems as high-resolution graphics colours tend to get mixed up. This means that careful planning is needed when programming.

The user defined graphics (UDG) allow another 21 characters to be added to the character set. An almost infinite range of characters can be defined for games writing but Greek letters, subscripts, and the like are possible too. The UDG area on the memory map occupies the top 168 bytes of RAM although it can be moved by poking suitable values into the system variables.

Sound is one of the Spectrum's failings. Without an external audio amplifier it sounds like a small squeaky animal, and it is not only quiet but also limited. The program execution halts during sound output so continuous sound from Basic is near impossible. However, sound output is also present on both the mic and the ear sockets at the rear of the computer, so it can be amplified or recorded easily.

The single key entry method is often criticised but it's easy to use once you learn which functions are on which keys. Unfortunately system keyboards must be used, so even small words like TO must be entered using the correct function keys - both symbol shift and F must be pressed. Why not T, then O? However, it does prevent the entry of invalid commands and along with the built-in syntax checker prevents many errors in program entry.

Once a line has been typed in and the Enter key pressed the line is checked by the computer to see if it contains a syntax error. If so, the line is kept in the edit area of the screen (the bottom two lines) and a flashing question mark appears where the error was detected. This means silly typing errors can be detected and corrected before the program is run. Once the line's syntax has been checked and found to be correct, the line is accepted and displayed on the upper screen along with the lines close to it. This neat idea means the program lines always appear in order on the screen even when editing.

The Spectrum's keyboard (or lack of it) is famous. It is made from a special membrance onto which rubber keys are pressed causing contact. It may be acceptable to the novice who just wants to learn to program and play a few games, but a lot of typing requires the addition of a full-size keyboard (see hardware section).

Sinclair must have realised its mistake with the keyboard as the Spectrum Plus is really only a normal Spectrum with a 'real' keyboard added.

The reliable cassette interface operates at 1500 baud. A slight quirk is that the ear lead must be removed when saving to prevent feedback. No cassette motor control is present which can be annoying should you forget to switch off the tape recorder. Basic programs, data files (numeric and character), machine code, and screen displays can be saved and all except for screens can be verified. Cassette files can be given a ten-character filename which is displayed on the screen when the files are loaded back. This means that you don't have to remember the filenames or load each file to see what it is.

The TV output is excellent and a clear stable picture is displayed. Early issue one and two Spectrums play up when used with certain makes of TV but this has been cleared up with the release of the issue three board. A composite colour or black and white monitor can be run straight from the new issue three Spectrums as the video signal is present on the user port. Issues one and two need a small link to be addde to the circuit board first. Output on a composite monitor matches that of a good TV.

At the back of the Spectrum is a large hole through which the circuit board is exposed. This is known as the user port or edge connector. It contains almost every single line that any user would ever want, except the RAM CS line has been excluded. This means no memory mapped devices can be added to the Spectrum and all interfaces must be addressed via a port.

Basic

Spectrum Basic was carried over from the ZX80 and ZX81 and was enhanced and extended. For the first time on a Sinclair machine multi-statement lines were allowed. Sound and graphics commands were added along with the keywords ready for the Microdrives when they arrived.

There are some obscure commands in Spectrum Basic and their operation differs slightly from other Basics.

DIM is used to dimension arrays and subscripts start at 1 (not 0 as in most other Basics)

TO is used in string splicing (as well as for loops) i.e. IF a$='ZX Spectrum' THEN a$(5 TO 8)='pect'

ATTR checks the attributes of a given screen position

IN and OUT read and write to a specified port

POINT - gives a 1 or 0 depending on if a specified pixel is set or reset

SCREEN$ gives the character at a specified screen position

VAL$ evaluates a string as a numerical expression and places the result in a string

BEEP produces a note of pitch and duration specified

BORDER, PAPER, INK set colours as specified.

The Spectrum stores numbers to an accuracy of nine digits with the largest around 10 ^ 38 and smaller 4 *10 ^ -39. The main drawback to Spectrum Basic is that line numbers can range only from 1 to 9999 and must be integers. You can soon run out of line numbers if you follow the standard practice of separating lines by 10.

Hardware

The Spectrum has more hardware available for it than any other home computer. Sinclair supplies much of it.

Now that production of Sinclair's low-cost ZX printer has ceased the Alphacom 32 is the only one available that can be plugged straight into the Spectrum. It produces a 32 character per line output on blue heat-sensitive paper, and in all other respects is the same as the ZX printer.

Interface 1

This is really several interfaces in one for £49.95. It provides RS232, networking, and the hardware to drive up to eight Microdrives. The RS232 socket is a nine-pin inverted D-type socket. It can be used for driving printers, modems, and interfacing to other computers. Baud rates from 50 to 19,200 can be set but the transmit and receive baud rates must be the same. This means that connection to most modems is very difficult unless they are going to be used only to transmit or receive all of the time.

Networking between other Spectrums and QLs is possible and fast. Both programs and data can be transmitted and received over the network although it is only really practical to transmit data to a QL. It does however mean that Microdrives, printers etc can be shared by several users. The most useful feature of Interface 1 is its ability to drive up to eight Microdrives. At a cost of £49.95 the Microdrive offers fast storage and reliability. Access time ranges from almost nought to ten seconds per file and once a file has been found data is transmitted at 16K per second.

The Microdrive system does, however, have two main drawbacks. The cartridge cost of £4.95 for 90K storage is expensive, and no mass duplicating service is available yet. The first problem will diminish as cartridge prices should eventually fall to around £2. The second is more serious as duplication is only possible by connecting several Spectrums together via the network and plugging eight microdrives into each.

Interface 2

This provides a ROM cartridge socket and two joystick sockets. The maximum size of a ROM cartridge is 16K and when one of these is inserted the entire Basic ROM in the Spectrum is paged out. This means programs on ROM cartridges cannot call ROM routines and the programmer must start from scratch. What's more, ROM cartridge programs cannot use the Microdrives, so should utilities ever be released on ROM cartridge it seems they will still have to use cassettes for data storage. The joystick sockets mimic keys 1-5 and 6-0 and work as well as can be expected.

Many other interfaces are available from independent suppliers, mainly for joysticks, Centronics printers, speech synthesis, sound synthesisers, and input/output ports.

The Kempston Joystick Interface was one of the very first joystick interfaces for the Spectrum. It is read by using port 31 and also works with the ZX81. The Kempston Pro Joystick Interface is new and works with Sinclair, cursor keys and the Kempston (port 31) protocols. The interface also contains a ROM cartridge socket. Others include the RAM Turbo Joystick Interface which has exactly the same protocol, the AGF cursor interface which is compatible with the cursor keys and the AGF Programmable Interface which makes hardware programmable by flying leads and clips.

The AGF Protocol 4 is hardware programmable by custom cards. As supplied, it can be made compatible with Sinclair, Kempston, cursor key and one other mode. It also contains a computer reset button for clearing machine code programs.

Protek's cursor key interface is the same as the AGF Cursor Interface, while the Protek Pro Interface is compatible with Sinclair, Kempston and cursor key protocols.

DK'Tronics makes several joystick interfaces, which carry several different protocols.

A cheap way to add ROM cartridges to your system for those who prefer keyboard control or already own a programmable interface is provided by the AGP ROM slot.

Currah's Microspeech interface produces speech via the allophone method using built-in software. Each key press is also enunciated with sound output through the TV speaker. This unit has an increasingly large amount of software support. The Cheetah Sweet Talker also uses allophones but the allophone numbers must be output via a port. Many expansions sound boards are available, all rather similar, and offering three-channel sound facilities.

Several floppy disk interfaces have been announced but few have taken off. The early versions were hard and slow to use but the new Morex one looks promising.

Input/output port interfaces are easy to come by and all seem to offer a standard 8-bit I/O port for connecting relays and so on.

Many Centronics and RS232 interfaces use cassette software to change the standard LPRINT and LLIST commands to they now output via the Centronics port. Companies selling this type of interface include Cobra, Hilderbay, Tasman and Kempston.

Within the last few months, however, two new interfaces have arrived which contain their software on EPROMs - the Kempston E and ZX LPRINT III. These are both Centronics-type and contain software to give screen dumps via the COPY command as well as working with LPRINT and LLIST.

The Rotronics Wafadrive is a direct competitor with the Sinclair Interface 1 and Microdrive. For £129.95 you get two drives, an RS232 port and a Centronics port. The Wafadrive is not compatible with the Interface 1 and a different type of tape is used for storage.

Of course, keyboards are not true interfaces but a series of electrical switches, but a large number are available and most can hold Interface 1 inside. The most popular is the Fuller FDS, but other alternatives worth a look are those from Transform, Dean Electronics, and DK'Tronics.

Software

The Spectrum also has more software than other micros. About 90 per cent is games with the rest being educational, utilities, and specialist interests.

The Spectrum has been treated to versions of almost every arcade game, some of them matching the originals. But the most popular ideas are original ones which have produced such inspired games as Jet Set Willy, Manic Miner, Sabre Wulf, Lunar Jetman, Atic Atac, Ant Attack and The Hobbit.

Educational software ranges from spelling and punctuation practice to GCE O-level revision packages.

The two most popular utilities are Tasword II and Masterfile. These are both Microdrive and full-size printer compatible and Sinclair will be giving them away free with its Interface I Microdrive system.

This review was written using Tasword II, so from personal experience I can recommend it. It produces 64 readable characters per line on the screen with justification of both the left and right-hand margins. The maximum file length is 320 lines and the line and column count is displayed on the bottom line. Printer control characters can be written into the text to give underline, italics, and the like. Pressing the Edit key accesses two useful help pages.

The second page deals more with formatting, setting margins, and block commands. Pressing the Stop key (Symbol Shift A) in text mode takes you to the main menu, which offers several facilities including Save, Load, or Merge text to cassette or Microdrive, print text, return to text or Basic, define graphics/printer, and save Tasword. All are self-explanatory except for define graphics/printer which allows you to alter the codes that will be sent to your printer, to produce special effects such as underline and bold strike. Control codes for your type of printer interface must also be entered and almost every type of Centronics or RS232 interface can be used.

Tasword also drives the ZX and Alphacom 32 printers although print quality is poor. Tasword does fall down on its lack of a block delete command which means large areas of text not required must be deleted line by line.

Sinclair gives away Tasword II when you buy the expansion system consisting of a Microdrive and Interface 1.

Masterfile is possibly the only decent database program available for the Spectrum, with its instant searching and sorting of fields, multiple report formats, up to 51 characters per line, 26 fields per record, and a number of records limited only by memory space. Masterfile holds approximately 32K of data which can be searched for almost anything you care to think up. Numeric, character, greater than, less than, equal and not equal searches can be carried out with immediate results.

Setting the report and data formats ready for Masterfile takes a little time and good planning is needed for best results. However the excellent manual gives details of all of this plus a step by step example to follow. Data files can be saved to cassette or Microdrive as required but printing can only be produced on a ZX or Alphacom printer with the standard package. However, the manufacturer, Campbell, has released MP-Print, which allows printing of data to full-size printers via most of the popular interfaces. Report widths are variable and all this is done without any reduction in data space. Masterfile is another package now given away with the Spectrum expansion system.

Several companies produce Z80 assemblers and monitors for the Spectrum but Hi-Soft and Picturesque stand out. Newcomers to machine code would do best with Picturesque, while the more experienced would prefer Hi-Soft. Both packages offer all the following facilities: storage of files to cassette and Microdrive, assembly from Microdrive of huge files, printouts to both full size and ZX/Alphacom printers.

The main difference between these two packages is in the editors. Hi-Soft's is simple, line-based and operated by uisng single letter commands, like P and G which stand for Put and Get but really are just Save and Load. The Picturesque editor is more user friendly with keywords (as in ZX Basic) and a neat 40 column display. It produces automatic field spacing by pressing the space key.

An abundance of languages is available including Forth (Abersoft and East London Robotics are the most popular producers), Pascal (Hi-Soft), C (Hi-Soft), Micro Prologue (Sinclair), and Logo (Sinclair). None aims to teach the language and only details of use are given. So if you want to learn Pascal, for instance, you must buy the package and instruction book.

Verdict

The Spectrum is ideal for playing games, learning about programming and hardware, word processing and filing. It's a good machine for a good price.

It is probably too limited for a small business, but with a full keyboard. Microdrives and some of the excellent software, it may still be worth considering.

Specifications

Price: £129.99, £179.99 for Spectrum Plus
Processor: Z80A
RAM: 48K
ROM: 16K
Storage: Cassette as standard, Microdrives can be purchased
Available: High street stores

Gavin Monk