Spectrum

Sinclair ZX Spectrum

The Sinclair ZX Spectrum is a home computer that was released in the United Kingdom on April 23, 1982 by Sinclair Research

Based on the 3.50 MHz Zilog Z80A CPU, the Spectrum supported 16 KB or 48 KB of RAM

Spectrum logo

The hardware designer was Richard Altwasser for Sinclair Research and the software was written by Steve Vickers under contract to Nine Tiles Ltd, the authors of Sinclair BASIC

Sinclair industrial designer Rick Dickinson was responsible for the machine's exterior appearance

Originally called the ZX82, Sinclair renamed the machine “Spectrum” to highlight the machine's color screen, compared to the black and white of its predecessors, the ZX80 and ZX81

Description

The video output was intended for a television, for color graphic display

The rubber keyboard (similar to calculator keys) was marked with the Sinclair BASIC keywords, so, for example, pressing “G” in programming mode would insert the BASIC language command, GO TO

The experienced programmers were able to create BASIC programs much faster than machines of that era

Programs and data were stored using a cassette recorder normal

The Spectrum's video display, although rudimentary by today's standards, was perfect at the time for use in portable televisions, and did not present much of a barrier to game development

Text could be displayed with 32 columns × 24 rows of characters using the Spectrum character set, with a choice of 8 colors in normal or bright mode, which provided 15 shades (black was the same in both modes)

Image resolution was 256 × 192 with the same color limitations

The Spectrum had an interesting method of handling color; color attributes were kept on a 32×24 grid, separate from text or graphic data, but remained limited to only two colors in any given character cell

This led to the so-called colour clash or attribute clash with some weird effects in games arcade style

This problem became a distinctive feature of the Spectrum and a joke among Spectrum users, as well as a source of ridicule for proponents of other systems

Other machines available at that time, for example the Amstrad CPC, not suffered this problem

The Commodore 64 used color attributes, but hardware sprites and scrolling were used to avoid attribute clash

The Spectrum was the first home computer in the United Kingdom, with similar relevance to that of the Commodore 64 in the united States

The Commodore 64, often abbreviated as C64, being the main rival to the Spectrum in the UK market

An improved version of the Spectrum with better sound, graphics and other modifications was marketed in the United States by Timex Corporation called TS2068

Features

Features of the original ZX Spectrum included:

  • Zilog Z80A 3.5 MHz microprocessor (8 bit data bus and 16 bit address bus). Accompanying the main processor was the ULA (Uncommitted Logic Array), in charge of performing auxiliary functions
  • Two RAM configurations with 16 kB or 48 kB. It is interesting to note that, contrary to what the marketing might have recommended, the 16 kB of ROM was not included on each machine. Thus, the total memory of both models was actually 32 and 64 kB. The limit for 16 bit addressing was 64 kB
  • These 16 kB of ROM included an interpreter of the BASIC SINCLAIR language developed by the company Nine Tiles Ltd. for Sinclair and that was an evolution of the one already developed for the two previous commercial machines of the brand, the ZX80 and the ZX81, and of the that the Spectrum was the successor. In the same memory area was the ASCII character set used by the machine by default (although you could point to other memory areas and define alternative characters) and a reserved area just before the screen memory, ideal for EPROMs that they could connect in the rear slot
  • Rubber keyboard integrated into the computer, in the 16 kB model and in the first version of 48 kB. The original rubber keyboard pressed two membranes with conductive tracks to detect pressure. The membrane of the ZX Spectrum Plus had 3, this third layer widens the keys using the pressure of 2 contacts at the same time, to generate for example the quotation marks, these on the Spectrum 48K is done by pressing SYMBOL SHIFT and P (in the Plus could also be done in the same way). Such a membrane used to be the most fragile part of the computer and it was common for years to change it up to several times
  • Common audio cassette tape storage system. The data was accessed at a rate of 1,500 bit/s on average. A 48 kB set took on average just under 4 minutes to load. There were games that used their own charging system, called "turbo", at a faster speed than the ROM operating system standard, although slightly more likely to cause load errors. As an additional peripheral, from 1983 Sinclair launched the ZX Interface 1 that could be connected to up to eight fast tape drives called a frequently used microdrive between software developers, which accessed the data at a speed of 120,000 bit/s (15 kB/s)

A new case was later developed, consisting of an improved keyboard with hard keys and 4 layers of membrane, to allow the pressing of two function keys in one, and the more professional case, with squared edges instead of rounded, which was named ZX Spectrum + (ZX Spectrum Plus)

This development was also sold as an upgrade and was often included along with a 16 kB Spectrum memory upgrade, which added a reset button and better ventilation

In short, the design of the computer was incredibly optimized and made the most of its seemingly small possibilities

All these features made the ZX Spectrum a very affordable and versatile device, bringing microcomputing closer to a large number of people

Graphic system

One of the peculiarities of the ZX Spectrum is its video system, being able to display an array of 256 x 192 pixels, but the color resolution was only 32 x 24, so groups of 8 x 8 pixels shared color information

Such color or attribute information consisted of: Background or paper color, ink or ink color, brightness attribute, and a flash attribute

The background color applied to pixels 0, and the ink color applied to pixels 1, each being selected from seven colors

The brightness attribute increased the brightness of colors (except black, which did not vary), so up to 15 colors (seven by two brightness levels, plus black) could be displayed on the screen

The flash attribute caused the two background/ink color attributes to be exchanged several times per second, giving a flickering effect.

Thus, we have 256 x 192 x 49152 bits x 6144 bytes destined for the bitmap (2048 bytes for every third of the screen) and 32 x 24 x 768 bytes dedicated to color, brightness, and flash, totaling a total of 6912 bytes

The problem of having different resolutions for bitmap and color forced game programmers, especially during the last stages of the computer's life, to adopt ingenious solutions to minimize collisions between colors, a phenomenon known as "attribute clash" in the anglo-saxon world

This was due to the ZX-Spectrum was not intended to operate as a video game machine

Although the “attribute clash” allowed the necessary video size to be reduced to 6.75 kB, this made some of the displayed graphics appear low quality if the design was not thorough

History and evolution

The hardware was designed by Richard Altwasser and the casing and appearance is a design by Rick Dickinson

The software (ROM firmware), as well as the extensive instruction manual was the work of Steve Vickers

All of them had participated in the design of Sinclair's previous models, the ZX80 and ZX81

In April 1982 two models appeared: one with 16 Kb for £125 (upgradable to 48 Kb for £60) and another with 48 Kb ex works for £175

With color image output and very acceptable sound, its small size and keyboard with hard rubber keys stood out, maintaining the traditional way of previous models of presenting complete words with keystrokes

With such a tight price, especially compared to competing models at that time, orders skyrocketed, Sinclair and the machine's assembly company, Timex, could not cope

In July 1982 there were already 30,000 orders pending and at the end of August (due to the staff's summer holidays, which were scrupulously respected) there were already 40,000 orders delayed, with the consequent annoyance of many buyers

Clive Sinclair himself made a public apology in the media and promised to have the orders delivered in September of that same year, which he fulfilled

By March 1983, more than 200,000 units of the ZX-Spectrum had already been sold, and the home video game market had become a profitable worldwide phenomenon

In just a few months, Sinclair Research Ltd. became one of the most solid and valuable companies in the sector at the time

The price of their machines dropped to £99.95 for the ZX-Spectrum 16 Kb, £ 129.95 for the ZX-Spectrum 48 Kb and £ 39.95 for the previous model, the ZX81

In 1981, Altwasser and Vickers left Sinclair to form their own company, which they called Jupiter Cantab (an abbreviation of Cantabridgian)

There they launched a machine with an identical architecture to the one used in the company they came from, the Jupiter Ace, on the market; however, it had practically no impact (only about 5,000 units were sold)

Educational application

Between 1980 and 1982 the UK Department of Education and Science started the Microelectronics Education Program to introduce microprocessing concepts and educational materials

Between 1982 and 1986, the Department of Industry allocated funds to help local education authorities in the United Kingdom supply their schools with a set of computers; the ZX Spectrum was very useful for control projects

Models

ZX Spectrum 16K / 48K (1982)


Released by Sinclair in 1982 and available with 16 kB (£125, later £99) or 48 kB (£175, later £129) of RAM and 16 kB ROM, the original ZX Spectrum is remembered for its rubber keyboard and tiny size

Owners of the 16 kB model could purchase an upgrade motherboard with 32 kB internal RAM, which consisted of 8 dynamic RAM and TTL chips

Users could mail their 16K Spectrums to Sinclair to upgrade to the 48K versions

To reduce the price, the 32 kB extension was composed of 8 simplified 64 kilobit chips with only half their active capacity

External 32 kB RAMpacks that mounted in the rear expansion slot were also available

As with the ZX81, RAMpack instability caused by a poor connection to the expansion caused disaster for many users, causing instant hangs and sometimes ULA or CPU fire

ZX Spectrum+ (1984)

ZX Spectrum+

This 48kB Spectrum, codenamed TB, introduced the new style of QL case with an injection-encapsulated keyboard and reset button, selling for a price of £ 180

There was also available an upgrade package for older machines

Most of the most common users, programmers and gamers, did not like the new keyboard

ZX Spectrum 128 (1986)

ZX Spectrum+ 128K

Sinclair developed the 128, codenamed Derby, together with its Spanish distributor Investrónica

Investrónica had helped adapt the ZX Spectrum + to the Spanish market after Spanish courts decreed that all computers with 64 kB of RAM or less must be compatible with the Spanish alphabet (including the letter ñ) and display messages in Spanish

New features included 128 kB of RAM, three-channel audio via the AY-3-8912 chip, MIDI support, RS-232 serial port, RGB monitor port, 32 kB ROM including an improved BASIC editor and an external keyboard

The machine was presented at the SIMO ’85 fair in Spain, with a price of 44,250 pesetas (€266), where it was later launched

The UK version remained without an external keyboard available, although it had the necessary ROM routines to use it and the port, which was renamed "AUX"

The Z80 processor used in the Spectrum had a 16-bit address bus, meaning only 64 kB of memory could be used

To facilitate access to the additional 80 kB of RAM, the designers used the bank switching technique to make the additional memory available in 6 16 kB pages at the top of the address space

The same technique was also used to perform lookups between the new 16 kB ROM for the editor and the original 16 kB BASIC ROM at the bottom of the address space

The new sound chip and MIDI output capabilities resulted in improvements to the BASIC programming language with the PLAY command and the new SPECTRUM command was added so that the machine could switch to 48K mode

To allow BASIC programmers access to the additional memory, a RAM disk was created where files could be stored in the additional 80 kB of RAM

The new commands occupied the space allocated to two of the user-defined characters, which caused compatibility problems with certain BASIC programs

ZX Spectrum +2 (1986)

ZX Spectrum+2

The Spectrum +2 was Amstrad's first Spectrum, shortly after the purchase of the Spectrum range and the “Sinclair” brand

The machine featured a new gray cabinet with a spring-loaded keyboard, two joystick ports, and a built-in cassette recorder called the “Datacorder” (such as the Amstrad CPC 464), but it was (in all aspects visible to the user), identical to the ZX Spectrum 128

Production costs reduced and the price fell to £ 139 – £ 149

The new keyboard did not include the BASIC keywords found on previous Spectrums, except for the LOAD, CODE, and RUN keywords, which were useful for loading software

However, the design remained identical to that of the 128

ZX Spectrum +3 (1987)


ZX Spectrum +3

The Spectrum +3 was similar in appearance to the Spectrum +2 but featured a built-in 3 inch floppy drive (such as the Amstrad CPC 6128) in place of the tape drive

It initially sold for £ 249, later for £ 199 and was the only Spectrum capable of running CP/M without additional hardware

The Spectrum +3 saw the addition of two more 16K ROMs, now physically implemented as two 32K chips

One was the home of the second part of the ROM reorganised 128K and the other housed the operating system disk

To facilitate the new ROMs and CP/M, bank-switching was refined, allowing the ROM to be paged to another 16 KB of RAM, in addition to offering three 16 KB pages for display RAM

Such changes caused:

  • Removing multiple lines on the expansion bus edge connector (video, power, ROMCS, and IORQGE); caused many problems on external devices; some like the VTX5000 modem could be used through the "FixIt" device
  • Reading a non-existent I/O port no longer returns the last attribute; causing some games like Arkanoid to be injurable
  • Changes in memory synchronization; some of the RAM banks suffered collisions, causing high-speed color change effects to fail
  • The routines for scanning the keyboard were removed from the ROM
  • Some older 48K games and some of the older 128K games were incompatible with the machine

    The ZX Spectrum +3 was the final official Spectrum model to be manufactured, remaining in production until December 1990

    Although it still accounted for a third of all home equipment sales at the time, Amstrad ceased production of the model in an attempt to transfer customers to the entire CPC

    ZX Spectrum +2A /+2B (1987)

    ZX Spectrum +2A

    The Spectrum +2A was produced to homogenize the range of Amstrad

    Although the case said “ZX Spectrum +2”, the Spectrum +2A/B was easily distinguished from the original Spectrum +2 by restoring the black casing of the standard Spectrum

    The Spectrum +2A became the +3 4.1 ROM model of Amstrad, which housed a new motherboard that greatly reduced the total number of chips, integrating many of them into a new ASIC

    The Spectrum +2A replaced the Spectrum +3's disk drive and associated hardware with a tape drive, as in the original Spectrum +2

    Spectrum menu

    Originally, Amstrad planned to introduce an additional disk interface, but it never appeared

    If an external drive was added, the operating system menu of “Spectrum +2A” would be changed on the Spectrum +3

    As with the ZX Spectrum +3, some older 48K games and some of the older 128K games were incompatible with the machine

    The Spectrum +2B signified that the manufacturing process changed from Hong Kong to Taiwan

    Clones

    Sinclair licensed the Spectrum design to Timex in the United States, which produced its own, largely incompatible derivatives

    However, some of Timex's innovations were later adopted by Sinclair Research

    An example of this was the abortive Spectrum “Pandora” laptop, whose ULA had a pioneering high-resolution video mode with the TS2068

    “Pandora” had a flat screen TV monitor, Microdrives and was intended to be Sinclair's business laptop

    After Alan Sugar bought his share of the computer from Sinclair, he took one look at it and it was abandoned

    A conversation between him and UK computer journalist Guy Kewney went like this:

    GK: Are you going to do anything with Pandora?
    AS: Have you seen it?
    GK: Yes
    AS: Well then

    In the UK, Spectrum peripheral supplier Miles Gordon Technology (MGT) launched the SAM Coupé as its natural successor with some Spectrum compatibility

    However, the Commodore Amiga and Atari ST had taken over the market, leaving MGT in eventual suspension of payments

    Many unofficial Spectrum clones were produced, especially in Eastern Europe and South America

    In Russia, for example, ZX Spectrum clones were assembled by thousands of small startups and distributed through billboards and street stalls

    A non-exhaustive list on Planet Sinclair lists more than 50 such clones

    Some of them continued to be produced until 2003, such as the Sprinter

    Peripheral

    Several peripherals were marketed by Sinclair for the Spectrum: the ZX printer was already on the market, since 1983 at an initial price of $39.95, as the Spectrum had retained the ZX81's protocol and expansion bus

    The ZX Interface 1 companion module included an 8 kB ROM, an RS-232 serial port, a patented LAN interface (called ZX Net) and the ability to connect up to eight ZX Microdrives, an unreliable but fast-speed tape cartridge storage devices

    These were later used in a revised version in the Sinclair QL, whose storage format was electrically compatible but logically incompatible with that of the Spectrum

    Sinclair also released the ZX Interface 2, which added two joystick ports and a ROM cartridge port

    There were also a plethora of third-party hardware add-ons

    The best known of these included the Kempston joystick interface, the Morex Peripherals Centronics/RS-232 interface, the Currah Microspeech unit (speech synthesis), the RAM and SpecDrum package (drum machine), and the Multiface (extraction tool). and disassembly), by Romantic Robot

    There were numerous disk drive interfaces, including Abbeydale Designers/Watford Electronics SPDOS, Abbeydale Designers/Kempston KDOS, Opus Discovery, and DISCiPLE/PlusD by Miles Gordon Technology

    The SPDOS and KDOS interfaces were the first to include Office productivity software (Tasword Word Processor, Masterfile database and OmniCalc spreadsheet)

    This package, along with OCP's Stock Control, Finance and Payroll systems, introduced many small businesses to computing with simplified operations

    In the mid-1980s, the company Micronet800 launched a service that allowed users to connect their ZX Spectrums to a network known as Micronet hosted by Prestel

    This service had some similarities to the Internet, but was proprietary and fee-based

    Software

    The Spectrum family enjoyed a software library of at least 20,000 titles

    Even though Spectrum's hardware was limited by most standards, its software library was very diverse:

    • programming languages C, Pascal
    • Prolog PROLOG, Modula-2,​ LISP o Forth
    • Z80 assemblers/disassemblers OCP Editor/Assembler, HiSoft Devpac, ZEUS Assembler, Artic Assembler
    • Sinclair BASIC compilers MCoder, COLT, HiSoft BASIC
    • Sinclair BASIC extensions Beta BASIC, Mega Basic
    • databases VU-Calc
    • graphic design tools OCP Art Studio, Artist, Paintbox, Melbourne Draw de James Hutchby
    • 3D modeled VU-3D
    • video games

    A number of game developers and development companies began their careers on the ZX Spectrum, including Peter Molyneux (ex-Bullfrog Games), David Perry of Shiny Entertainment and Ultimate Play The Game (now known as Rare, creator of many famous titles) for Nintendo consoles)

    Other notable game developers include Matthew Smith (Manic Miner, Jet Set Willy) and Jon Ritman (Match Day, Head Over Heels)

    Most Spectrum software was originally distributed on cassette tapes

    The software was encoded on tape as a sequence of pulses that sounded similar to the sounds of a modern modem

    As the ZX Spectrum only had a rudimentary tape interface, data was recorded using an unusually simple and very secure modulation similar to pulse width modulation, but without a constant clock rate

    Pulses of different widths (durations) represent 0s and 1s

    A “zero” is represented by ~244 μs pulse and then space of the same duration for (855 clock ticks each at 3.5 MHz) for a total of ~489 μs, and “one” is twice as long, totaling ~977 μs

    This allows recording 1023 “ones” or 2047 “zeroes” per second

    Assuming an equal ratio, the resulting average speed was ~1365 bit/s

    They achieved higher speeds by using chargers of codes machine custom in place of the ROM routine

    Complex loaders with unusual speeds or encoding were the basis of the ZX Spectrum's copy prevention schemes, although other methods were used, such as asking for a specific word included in the game's documentation, often a novella, or the notorious Lenslok system

    It had a set of plastic prisms in a fold-out red plastic stand: the idea was that a coded word would appear on the screen, which could only be read by holding the prisms at a fixed distance from the screen, courtesy of the plastic stand

    It relied too much of that all over the world use the same size of tv and Lenslok became a joke recurring between users of Spectrum

    Theoretically, a standard 48K program would take about 5 minutes to load: 49152 bytes * 8 = 393216 bits; 393216 bits / 1350 baud ~ 300 seconds = 5 minutes

    But the reality was, a 48K program usually took between 3-4 minutes to load (due to a different number of 0s and 1s encoded using pulse-width modulation), and 128K programs could take 12 or more minutes to load

    Experienced users could often deduce the type of file, for example: machine code, BASIC program, or screen image, by the way the tape sounded when loaded

    A very interesting type of software was copiers

    Most were piracy oriented, and their only function was tape duplication, but when Sinclair Research released the ZX Microdrive (later with a floppy disk system), copiers were developed to copy programs from audio tape to microdrive tapes. or floppy disks

    The best known were the LERM copiers produced by Lerm Software, Omni Copy 2 and others

    As protections became more complex (e.g. Speedlock 1-8) it was almost impossible to use copiers to copy tapes, and magazines had to be cracked by hand, producing unprotected versions

    This was illegal in some areas, but in the 1980s most of southern and eastern Europe did not have software copyright laws

    The Spectrum was designed to work with almost any cassette tape player, and despite differences in audio playback fidelity, the software loading process was quite secure; However, all Spectrum users knew and feared the message "R tape load error, 0:1"

    A common cause was using a cassette copy with a recorder with a different head alignment than the one used

    This could often be solved by pressing down on the top of the player during loading, or by adjusting the cassette with pieces of folded paper, to physically move the tape into the required alignment

    After a series of tape players, it was also possible to realign the head with a small screwdriver

    Typical settings for loading were 3/4 volume, 100% treble, 0% bass

    Audio filters such as loudness and Dolby noise reduction had to be disabled, and using a Hi-Fi player to load programs was not recommended

    There were some recorders built especially for digital use, such as the Timex Computer 2010 Tape Recorder

    In addition to tapes, the software was also distributed through print media, fan magazines or books

    The language prevailing for the distribution was the dialect BASIC Spectrum Sinclair BASIC

    The reader wrote the software on the computer by hand, ran it, and saved it to tape for later use

    Software distributed in this way was generally simpler and slower than its assembly language counterparts, and lacked graphics, but soon, magazines were printing long lists of hexadecimal digits alongside codes for games or tools

    There was an active scientific community built around such software, ranging from satellite dish alignment programs to programs for teaching in school classrooms

    An unusual software distribution method was a radio or television program, in Belgrade (on ventilator 202), Poland, Czechoslovakia or Romania for example, where the presenter would describe the program, urge the audience to connect a cassette recorder to the radio or TV and then broadcast the program via radio waves in audio format

    Another unusual method was floppy disks, not vinyl records, which were played on a standard hi-fi turntable

    These disks were known as “floppy ROMs”

    This method was used by some French magazines

    Some pop musicians included Sinclair shows on their albums

    Ex-Buzzcock Peter Shelly put on a Spectrum that included some of his lyrics, and additional information on the last song of his album XL-1

    Festival favorites Hawkwind put together a Spectrum database of the band's 1984 release 'New Anatomy'

    Also in 1984, Thompson Twins released a set on vinyl

    The Freshies had a brief flirtation with fame and Spectrum games, and Aphex Twin included several loading noises on their Richard D. James album in 1996, most notably the Saber Wulf loading screen in Corn Mouth. Shakin' Stevens included his Shaky Game at the end of his album The Bop Will Not Stop

    The objective of the game was to guide your character through a maze, avoiding the bats

    Upon completion, your score would be given in terms of disc rank, for example, gold or platinum

    The game had a minor connection to one of its tracks, It Late

    As audio tapes have a limited lifespan, most Spectrum software has been digitized in recent years and is available for download in digital format

    The legality of this practice is still questionable

    However, it seems unlikely that any action will be taken on so called “abandonware”

    A popular program for digitizing Spectrum software is Taper: it allows you to connect a cassette player to the line port of a sound card or, through a homemade device, to the parallel port of a PC

    Once in digital form, the software can be run using any of the existing emulators, on virtually any platform available today

    Today, the largest online archive of ZX Spectrum software is the site The World of Spectrum with more than 12,000 titles

    The Spectrum enjoys an active and dedicated community of fans

    It was cheap, learning how to use it was simple, and just like learning to program on it, the Spectrum was the starting point for many programmers and technophiles who remember it with nostalgia

    The hardware limitations of the Spectrum meant a special level of creativity in game designers, and for this reason, many Spectrum games are so creative and playable even by today's standards