ZX81

Sinclair ZX81
Sinclair-ZX81.png
Sinclair ZX81
Developer Sinclair Research
Manufacturer Timex Corporation
Type Home computer
Release date 5 March 1981; 36 years ago (1981-03-05) [1]
Introductory price £49.95 kit, £69.95 assembled [2] (£173–£242; $234–$327 at 2017 prices)
Discontinued 1984
Units sold More than 1.5 million [3]
Operating system Sinclair BASIC [4]
CPU Z80 at 3.25 MHz [4]
Memory KB (64 KB max. 56 KB usable) [4]
Storage External cassette tape recorder at a claimed 250 bps [4] or an average 300 bps [5]
Display Monochrome display on UHF television [4]
Graphics 24 lines × 32 characters or
64 × 48 pixels graphics mode [4]
Power 9V DC [4]
Dimensions 167 millimetres (6.6 in) deep by 40 millimetres (1.6 in) high [4]
Weight 350 grams (12 oz) [4]
Predecessor ZX80
Successor ZX Spectrum
Related articles Timex Sinclair 1000,
Timex Sinclair 1500

The ZX81 is a home computer produced by Sinclair Research and manufactured in Scotland by Timex Corporation. It was launched in the United Kingdom in March 1981 as the successor to Sinclair's ZX80 and was designed to be a low-cost introduction to home computing for the general public. It was hugely successful, and more than 1.5 million units were sold before it was discontinued. The ZX81 found commercial success in many other countries, notably the United States, where it was initially sold as the ZX-81. Timex manufactured and distributed it under licence and enjoyed a substantial but brief boom in sales. Timex later produced its own versions of the ZX81 for the US market – the Timex Sinclair 1000 and Timex Sinclair 1500. Unauthorised clones of the ZX81 were produced in several countries.

The ZX81 was designed to be small, simple, and above all cheap, using as few components as possible to keep the cost down. Video output was to a television set rather than a dedicated monitor. Programs and data were loaded and saved onto audio tape cassettes. It had only four silicon chips on board and a mere 1 KB of memory. The machine had no power switch or any moving parts (with the exception of a VHF TV channel selector switch present on early "ZX81 USA" models and the Timex-Sinclair 1000) and used a pressure-sensitive membrane keyboard for manual input. The ZX81's limitations prompted the emergence of a flourishing market in third-party peripherals to improve its capabilities. Such limitations, however, achieved Sinclair's objective of keeping the cost of the machine as low as possible. Its distinctive case and keyboard brought its designer, Rick Dickinson, a Design Council award.

The ZX81 could be bought by mail order in kit form or pre-assembled. In what was then a major innovation, it was the first cheap mass-market home computer that could be bought from high street stores, led by W. H. Smith and soon many other retailers. The ZX81 marked the first time that computing in Britain became an activity for the general public, rather than the preserve of businesspeople and electronics hobbyists. It inspired the creation of a huge community of enthusiasts, some of whom founded their own businesses producing software and hardware for the ZX81. Many went on to play a major role in the British computer industry in later years. The ZX81's commercial success made Sinclair Research one of Britain's leading computer manufacturers and earned a fortune and an eventual knighthood for the company's founder, Sir Clive Sinclair.

Features

Sinclair ZX81 PCB Revision 3 keyboard

The ZX81 has a base configuration of 1 KB of on-board memory that can officially be expanded externally to 16 KB. Its single circuit board is housed inside a wedge-shaped plastic case measuring 167 millimetres (6.6 in) deep by 40 millimetres (1.6 in) high. The memory is provided by either a single 4118 (1024 bit × 8) or two 2114 (1024 bit × 4) RAM chips. There are only three other onboard chips: a 3.5 MHz Z80A 8-bit microprocessor from NEC, an uncommitted logic array (ULA) chip from Ferranti, and an 8 KB ROM providing a simple BASIC interpreter. The entire machine weighs just 350 grams (12 oz). [4] Early versions of the external RAM cartridge contain 15 KB of memory using an assortment of memory chips, while later versions contain 16 KB of chips, but the lowest addressed kilobyte is disabled.

The front part of the case is occupied by an integrated 40-key membrane keyboard displaying 20 graphic and 54 inverse video characters. [4] Each key has up to five functions, accessed via the SHIFT and FUNCTION keys or depending on context. For example, the P key combines the letter P, the " character, and the BASIC commands PRINT and TAB. The ZX81 uses a standard QWERTY keyboard layout. The keyboard is mechanically very simple, consisting of 40 pressure-pad switches and 8 diodes under a plastic overlay, connected in a matrix of 8 rows and 5 columns. [6]

The ZX81's primary input/output is delivered via four sockets on the left side of the case. The machine uses an ordinary UHF television set to deliver a monochrome picture via a built-in RF modulator. It can display 24 lines of 32 characters each, and by using the selection of 2×2 block character graphics from the machine's character set offers an effective 64 × 44 pixel graphics mode, also directly addressable via BASIC using the PLOT and UNPLOT commands, leaving 2 lines free at the bottom. Two 3.5 mm jacks connect the ZX81 to the EAR (output) and MIC (input) sockets of an audio cassette recorder, enabling data to be saved or loaded. This uses an unusual PWM encoding at a single frequency, giving an average rate of 307 bps nominal, varying between 400 bps for all '0's, to 250 bps for all '1's. [5] This provides a somewhat temperamental storage medium for the machine, which has no built-in storage capabilities. The ZX81 requires 420 mA of power at 7–11 V DC, delivered via a custom 9 V Sinclair DC power supply. [4]

The ULA chip, described by the ZX81 manual as the " dogsbody" of the system, has a number of key functions that competing computers share between multiple chips and integrated circuits. These comprise the following: [7]

  • Synchronising the screen display;
  • Generating a 6.5 MHz clock, from which a 3.25 MHz clock is derived for the processor;
  • Outputting an audio signal to a cassette recorder in SAVE mode;
  • Processing the incoming cassette audio signal in LOAD mode;
  • Sensing keystrokes;
  • Using memory addresses provided by the CPU to decide when ROM and RAM should be active;
  • Controlling general system timing.

The ZX81's built-in RF modulator can output a video picture to either a UHF 625-line colour or monochrome television (used in the UK, Australia, and most western European countries). France required a slightly modified version of the machine to match the positive video modulation of SECAM sets, while the USA and Canada required a different ULA chip and modulator to cope with their 525-line VHF ( NTSC) television systems. Both the ZX81 and its predecessor, the ZX80, have a significant drawback in the way that they handle visual output. Neither machine has enough processing power to run at full speed and simultaneously maintain the screen display. On the ZX80, this means that the screen goes blank every time the machine carries out a computation and causes an irritating flicker whenever a shorter computation – such as processing a keystroke – takes place. [8]

Two views of the ZX81, one showing the left side with four sockets marked "TV", "EAR", "MIC" and "9V DC" respectively, and one showing the rear with the edge of the circuit board visible through a gap in the case.
Left side and rear views of the ZX81, showing its edge connector, the three input/output sockets (TV, EAR, MIC) and the 9 V DC power socket

The ZX81's designers adopted an improved approach, involving the use of two modes called SLOW and FAST respectively. In SLOW mode, also called "compute and display" mode, the ZX81 concentrates on driving the display. It runs the current program for only about a quarter of the time – in effect slowing the machine down fourfold, although in practice the speed difference between FAST and SLOW modes depends on what computation is being done. [9] In FAST mode, processing occurs continuously, but the display is abandoned to its own devices – equivalent to the ZX80's standard operating mode. [10]

Another hardware quirk produced one of the most distinctive aspects of the ZX81's screen display – during loading or saving, moving zigzag stripes appear across the screen. The same pin on the ULA is used to handle the video signal and the tape output, producing the stripes as an interference pattern of sorts. The ULA cannot maintain the display during SAVE and LOAD operations, as it has to operate continuously to maintain the correct baud rate for data transfers. The interference produces the zigzag stripes. [7]

The unexpanded ZX81's tiny memory presents a major challenge to programmers. Simply displaying a full screen takes up to 793 bytes, the system variables take up another 125 bytes, and the program, input buffer and stacks need more memory on top of that. [11] Nonetheless, ingenious programmers are able to achieve a surprising amount with just 1 KB. One notable example is 1K ZX Chess by David Horne, which manages to include most of the rules of chess into only 672 bytes. The ZX81 conserves its memory to a certain extent by representing entire BASIC commands as one-byte tokens, stored as individual "characters" in the upper reaches of the machine's unique (non- ASCII) character set. [12]

The edge connector or external interface at the rear of the ZX81 is an extension of the main printed circuit board. This provides a set of address, control, and data lines that can be used to communicate with external devices. [13] Enthusiasts and a variety of third-party companies make use of this facility to create a wide range of add-ons for the ZX81.

Comparisons between ZX81 and other computing devices

The following table provides a comparison between the capabilities of the ZX81 and various other competing microcomputers that were already on the market at the time of the ZX81's launch. The prices given are as of December 1982. [14]

Device RAM standard Expandable to CPU Storage Upper- and
lower case
List price Number of
colours
Maximum
resolution
Sound
Apple II Plus 16 KB 64 KB MOS Technology 6502 @ 1 MHz (8-bit) Cassette tape / floppy disk (up to 143 KB per drive) No $1330 16 280 × 192 pixels Clicks via speaker
Atari 800 16 KB 48 KB MOS Technology 6502 @ 1.78 MHz (8-bit) Cassette tape / floppy disk (up to 92 KB per drive) Yes $899.95 256 320 × 192 pixels 4-voice / 4-octave effects
Commodore PET 16 or 32 KB 32 KB MOS Technology 6502 @ 1 MHz (8-bit) Cassette tape / floppy disk (up to 1024 KB per drive) Yes $995 monochrome 80 × 50 pixels 1 voice / 3 octaves
Commodore VIC-20 5 KB 32 KB MOS Technology 6502 @ 1.02 MHz (8-bit) Cassette tape / floppy disk (up to 170 KB per drive) Yes $260 16 176 × 184 pixels 3 voices / white noise
Dragon 32 32 KB 32 KB M6809 @ 1.7 MHz (0.89 operating speed) (8/16-bit) Cassette tape / floppy disk (up to 180 KB per drive) No $175 8 256 × 192 pixels 1 voice
IBM PC 16 KB 512 KB Intel 8088 @ 4.77 MHz (16-bit) Cassette tape / floppy disk (up to 320 KB per drive) Yes $1265 16 640 × 200 pixels 1 voice
Radio Shack TRS-80 Model III 16 KB 48 KB Zilog Z80 @ 1.78 MHz (8-bit) Cassette tape / floppy disk (up to 175 KB per drive) Yes $699 Monochrome 128 × 48 pixels Basic sound via cassette interface
Radio Shack TRS-80 Color Computer 4 KB 64 KB Motorola M6809E @ 0.894 MHz (8/16-bit) Cassette tape / floppy disk (up to 153 KB per drive) No $399 8 256 × 192 pixels 1 voice
Texas Instruments TI-99/4A 16 KB 48 KB TI TMS9900 @ 3.0 MHz (16-bit) Cassette tape / floppy disk (up to 90 KB per drive) Yes $299 16 256 × 192 pixels 3 voices and white noise
ZX81 / TS1000 1 KB / 2 KB 64 KB Zilog Z80 @ 3.25 MHz or NEC Z80 @ 3.25 MHz (8-bit) Cassette tape No $99.95 Monochrome 64 x 48 pixels Basic sound via cassette interface
Other Languages
català: Sinclair ZX81
čeština: ZX81
dansk: ZX81
Deutsch: Sinclair ZX81
Ελληνικά: Sinclair ZX81
español: Sinclair ZX81
Esperanto: Sinclair ZX81
français: ZX81
한국어: ZX81
hrvatski: ZX 81
italiano: Sinclair ZX81
lietuvių: Sinclair ZX81
magyar: ZX81
Nederlands: Sinclair ZX81
norsk nynorsk: Sinclair ZX81
polski: ZX-81
português: Sinclair ZX81
русский: ZX81
српски / srpski: Sinclair ZX81
suomi: ZX81
svenska: ZX81