Sinclair ZX81 - 1981
To try to fix some of the ZX80 issues, the ZX81 was released a year later. It was easy to spot with its black go-faster casing compared with the lumpy white case on the ZX80. I have heard of some finding a final resting place as a door jam!
The memory was the same miserable 1KB though the ROM had doubled from 4 to 8KB bringing with it floating point arithmetic as well as limited graphics and it could print to the Sinclair ZX Printer.
This was a tiny little printer with paper just 4" (100mm) wide. The "paper" was actually covered in a thin layer of tinfoil. The printer did not spray ink or hit a key against an ink ribbon, instead, it was a tiny spark which burnt a small hole in the tinfoil exposing the black paper underneath. It was quite a smelly job to print very much and it also seemed to get quite hot after a while. As it used a single fairly cheap motor both to feed the paper and move the spark across the paper, printing was somewhat erratic. Below is a copy of some output from mine:
The keyboard was even more complex than the ZX80. The K key, for example, still had the LIST keyword and the + key but also, by pressing the SHIFT and Enter key and then the K key, you got the LEN keyword (for anyone interested, LEN(a$) would return the length of the a$ string variable - in other words, how many characters long it was). This finger dexterity was just a taster for what was to follow.
The other novelty of the ZX81 was the FAST and SLOW option. As mentioned with the ZX80, the processor ran your program and refreshed the screen. It could not do both together so the screen went blank every time the computer had work to do. FAST mode was exactly the same. SLOW mode relied on the fact that although the standard television has 625 lines from top to bottom of the screen, only 576 were actually visible (even less on Granny's television which had a faulty vertical hold - those were the days!). Teletext was actually carried in some of those missing lines. In SLOW mode, the ZX81 would refresh the screen for 576 lines then, during the missing ones, would not have to refresh these so it had time to carry out some of the program. At last, Space Invaders was possible on a Sinclair computer even if the invaders were rather slow!
Program loading and saving was just as unreliable and the memory expansion was still prone to moving on the back. Crashed computers were the norm rather than the exception.
One very interesting point about the ZX81, normally hidden from you but essential for later computers, was the advent of the ULA or uncommitted logic array. Inside the ZX80 were the processor (a Zilog Z80 in this case) the RAM (memory) and ROM chips plus loads of other small chips to glue everything together. This meant a lot more complication in design and soldering.