Sinclair ZX81.

quick facts

Overview Photograph

FCC ID

None

Model or Part #

ZX81

My unit's vintage

No serial number, but probably manufactured in 1981 or 1982. I could make a better
guess at that by opening the machine and checking the date codes on the chips inside, but the ZX81's screws are
obscured by rubber feet and I don't want to damage those feet.

CPU

Z-80A (actually an NEC 780-1, which is a pin-compatible part).

Memory

1K SRAM, 8K ROM

Operating System

Sinclair floating-point BASIC.

Ports

Standard 3.5mm mono jacks for tape recorder microphone and earphone connections,
and an expansion edge connector at the rear of the machine.

Video/audio output

The ZX81 has essentially text-only, black and white video, and no sound output capability.
Primitive block graphics are available (four pixels per character space).

Although the character set is reprogrammable, and could in theory be used to generate high-resolution graphics,
due to a hardware quirk the character set must be fetched from ROM and therefore can't be usefully altered.

Available peripherals

The most popular - practically mandatory - peripheral is the ZX 16K RAM Pack. (The
unit pictured above has the expansion pack fitted).

Sinclair also released a discharge-type printer (it requires metallized thermal paper, and isn't easy to resupply
in this day and age), and third parties released various other peripherals. I know of a UK-built I/O device for
robotics control; it had several I/O terminals on top and 4K of expansion RAM internally. Third-party memory expansions
went as high as 48K, but these needed special handling because the hardware and BASIC don't properly support RAM
above $8000 in the memory map.

The ZX81 was a lower-chip-count successor to the ZX80 (a machine I would dearly love to add to my collection).
For its day, it was incredibly small and densely integrated; the mainboard has two 40-pin ICs (Z-80 and a custom
Sinclair chip), one 28-pin ROM chip, and (usually) one 24-pin RAM chip. (This RAM chip was usually a fairly rare
Mostek 1K x 8 SRAM, though the board was also laid out to accept two 2114 1K x 4 SRAMs. You can expand the ZX81
to 2K internally by substituting a 6116 2K x 8 SRAM. I expanded my first ZX81 to 16K internally by using half a
62256 32K x 8 SRAM salvaged from a BBC Model B).

NOTE: Please refer to the Timex/Sinclair 1000 page for some hi-res scans of the circuitry and documentation of the TS1000/ZX81 and TS1016/ZX 16K RAM.

One place where Sinclair saved money is by eliminating a video chip - the ZX81
uses the Z-80 CPU itself to output the display data. This means that while the computer is displaying a picture,
actual processing can only be carried out in the blanking intervals, which makes ZX BASIC about the slowest dialect
ever known to man. In order to alleviate this problem for computation-intensive programs, the computer has two
modes - FAST and SLOW. In SLOW mode, the computer displays a steady picture at all times and programs run very
slowly. In FAST mode, the computer stops displaying a picture while it is processing; this makes programs run MUCH
faster.

One of the many queer things about an unexpanded ZX81 is that you can make the
machine run out of memory just by printing a message onscreen. Because Sinclair implemented their video output
in software, they could and did optimize it for the ZX81's critically tiny memory space - they only allocate the
screen as much memory as is required to display whatever text the user wants to see. If you print something onscreen,
you might have to expand that "display file", and that could make the machine run out of memory. The
ZX81 might not even have enough memory left to display an out of memory error!

Another cost-saving maneuver is the use of a membrane keyboard; it has horrible
tactile response (i.e. none) and the membranes tend to fail after prolonged use. They can sometimes be repaired
with conductive paint, but it's an exhausting operation. Much better to stock up on spare ZX81s and TS1000s for the day your keyboard goes bad.

One unusual feature of Sinclair ZX BASIC which survived into every subsequent
ZX series machine is the system of syntax-checking during program entry (rather than at runtime). This, combined
with the use of single-keystroke tokens for all the BASIC keywords, helps to reduce memory use and improve execution
speed.

My association with the ZX81 goes back to my very early computer forays. I had
been working on the Apple II series of machines (and playing on them too), and I was constantly pestering my parents
to buy me a computer. The ZX-81 was selling for $99 (Australian; about $65 American) at the time, so I figured
that would be the easiest computer to wheedle out of Mum and Dad. One marvelous Sunday night, we were out in Acland
Street, St. Kilda, Melbourne, Australia (to be precise, we were outside the entrance to Luna Park, coming back
from the legendary Monarch cake shop Acland Street). I was arguing my case for a computer, and my mother finally
said "Yes, we'll go out and buy one tomorrow". Amazingly, we actually did go out - to a Dick Smith's
store. I showed my mother the ZX81, and she said "But it isn't a proper computer - it doesn't have a proper
keyboard". After some discussion, we ended up buying the Commodore VIC-20 ($399 Australian at the time) instead.
The VIC was color-capable, but that didn't help me because we didn't own a color TV! (In fact, I never once saw
that VIC-20 running on a color TV; I sold it some years later to a schoolmate, still attached to a B&W TV that
I got at a garage sale for $2).

Several years later, in 1986 or thereabouts (I was in my eighth year of school),
I went through a phase of digging up old computer magazines and writing to the advertisers to ask if they still
sold the various old equipment they advertised. Almost all of those letters were either returned to sender, or
disappeared without answer. However, I DID get an exciting parcel from Barson Computers, the former distributors
of Sinclair hardware. The parcel contained a ZX81 and a 16K RAM pack, and a note saying that since they were no
longer the distributors, they were legally unable to sell me a ZX81, but that they had located one behind a dusty
filing cabinet and were sending it to me as a gift. That was the first computer I personally owned, and it will
always be special to me as a result.

One thing I have noticed about my North American ZX81 is that the manual is only
cosmetically similar to the UK version that was sold in Australia. The US version is thinner, and the text is dryer
and lacks some of the humorous interludes that were in the UK version. I find it hard to believe that Sinclair
was trying to cater to a "serious user" market in the US, so this transatlantic editing is a tad baffling.

The US and UK versions of the ZX81 can still be found on ebay for around US$40-50
(as of August 2000), including 16K RAM pack. The ZX81 was also sold in kit form, and there is at least one vendor
selling old stock of ZX81 kits.

downloads

Because there isn't a vast software library for the ZX81, it has not attracted
many emulator authors. One candidate is Paul Robson's freeware ZX80/ZX81 emulator for MS-DOS. With the permission
of the author, I have a locally mirrored copy of this emulator, along with its sourcecode. The emulator archive
itself contains everything you need to run ZX-81 programs - the emulator itself along with ROMs to emulate both
ZX80 and ZX81.

zx81.zip (The ZX81 emulator for MS-DOS, along
with ROMs for ZX80 and ZX81 emulation).