45

TL;DR Because it needs the least chip count and thus makes it the cheapest. It's a Sinclair. Full Story: The Sinclair ZX80 used a Z80A running at 3.25 MHz. But this chip was rated for 4 MHz. Why was it run below rated speed? And the chip would have run for sure at more than 4 MHz. A computer design isn't about what a chip is rated, but what it's for. ...


43

Sinclair didn't always use the Z80 for its computers. The MK14 computer, sold in kit form (like the ZX80 was), used a National Semiconductor INS8060. The ZX range of home computers have a video display hardware that is very closely tied to the architecture of the Z80. On the two first models, ZX80 and ZX81, the video display hardware was kept to a minimum, ...


37

These tricks are usually done to increase speed or reduce space. For most (especially Microsoft) BASIC, constants are stored within a tokenized line as ASCII (as entered), and converted to a floating point number every time they are evaluated. This is a time consuming process. Assigning the number once to a variable to be used thereafter will skip this part ...


35

Contrary to other answers, obliging the user to enter BASIC tokens directly doesn't really save meaningful amounts of RAM. Many of its contemporaries such as the BBC Micro had BASICs where you typed keywords in full which were then immediately tokenised when you pressed enter. If anything, tokenised Sinclair BASIC generally had longer byte sequences than ...


18

A purely speculative answer: it's a user experience improvement. The ZX80 is unable both to process keyboard input and to maintain a stable display. It has the Z80 itself step through display bytes and programmatically generate vertical syncs, which requires it to be in a loop that is tightly synchronised to the video signal. It's able to do a fixed-length ...


16

The answer by Raffzahn is very good, except that I disagree that ZX80/81 background is all that important and I also feel he missed one important trick. I personally know most of these tricks from studying BASIC loaders for ZX Spectrum games. You see, yes, Spectrum has more memory, but when the machine code program is loaded, it was absolutely not uncommon ...


14

I know it's bad style to answer ones own question. Still,I feel the need to publish my findings (*1): Over the last 3 18 months, I've been able to collect serial numbers of 38 different Z88s, with 62271 being the largest. Using the so called German Tank Formula, as traal suggested, yields 63909 as a result. So it might be safe to assume that there were ...


9

It was neither due history or electronic but for design reason: The 16 KiB RAM pack was intended to be sold to existing (and new *1) ZX80 users as well. The ZX80 has its expansion port on bavk side, all the way to the left, while the ZX81 got it moved over to the right side. Only a package not much wider than the connector would fit both equally well. ZX80 ...


9

But as I understand it, the then current 16kbit RAM chips actually required three different voltages: -5, +5, +12. Right, and the 'missing' voltages (-5V,+12V) get generated from the +9V source via a discrete DC-DC converter - that's all the little pieces on the second board. The difference between the RAM-Packs for ZX80/81 is all in the colour :) In fact, ...


8

[...] Sinclair ZX80 is much faster than Sinclair Spectrum on all tests despite the fact that both computers use the same CPU. It's not about the CPU, but because these are vastly different BASIC implementations. In this case it's due to integer vs. floating point maths. The fact is marked in the ZX80 entry by noting 'integer only'. The numbers shown are ...


8

Did one or the other have a pass-through for the expansion bus? There was no other peripheral (by Sinclair) for the ZX80 than the 1..3 KiB static RAM or the later 16 KiB DRAM version (*1). Most (*2) third party vendors made theirs offering a pass-through. Did one or the other have a pass-through for the expansion bus? When the ZX-Printer came for the ...


7

I wasn't necessarily easier - it was down to money. Remember these were the days when the single most expensive component of a computer was its memory. For many micros of the time, a simple memory expansion kit would cost more than the base model machine itself. Sinclair was very clever at squeezing a working system into the smallest possible memory ...


7

The usual answer to questions on early Sinclair machines is "Because it was cheaper that way." In this case, a 40-column screen, implied by 4MHz, would have increased the screen buffer size to at least 960 bytes, leaving only 64 bytes for BASIC code. Increasing the RAM size would have raised the price point, and "Under £100" was crucial to the early ...


6

Answering your rephrased question: The master clock could have run at 8 MHz, but that would have meant pixels being narrower than if generated by a 6.5 MHz clock. As the computer was built with a horizontal resolution of 256 pixels in mind (the time spent by 32 NOP instructions), the border area would have been enlarged, resulting in a smaller display. ...


5

The easiest way to tell is by looking at the traces on the board. If they look curvy, as though hand-drawn, it's an issue 1. If they're in more or less straight lines, it's a 2 or 3. Seeing as issue 2 boards are exceedingly rare in the wild, it's almost certainly the latter. You can confirm this by looking for the issue number on the board, which should ...


4

Pokemon on the German ZX Forum has designed a number of video improvement circuits (ZX81CPP, ZX81SCP) that allow connection of a composite video monitor and produce a crystal clear picture once properly adjusted. https://www.sinclairzxworld.com/viewtopic.php?f=8&t=841&sid=9e23e93b43bfcc0bb782a80803430e70 The circuit basically completely re-creates ...


2

The 128K model (and its Amstrad made successors) did use a tokenizer in 128 Basic mode. In this mode, you had to type in the command lines in full text, then syntax checking was made upon line validation rather than on the fly as with 48 Basic, and if correct, then the line was tokenized, then either stored (if preceded by a line number) or executed. So ...


2

I am in doubt it was due to a special technical reason. Finally I can not judge really but I am convinced there are a couple of advantages of this design. My first computer/programming experience was with ZX Spectrum+. In contrast to its predecessors the keyboard of this model was outstanding till today. It was very well designed and very responsive. For ...


1

My bet is because of small amount of RAM in BASIC. You need to take in mind there is the framebuffer, heap/variables and stack. If the code where represented as ASCII text it would be considerably longer. I often hit the memory limit in BASIC while writing small games in my early days of programming. For example this (first BASIC program I found in my ...


Only top voted, non community-wiki answers of a minimum length are eligible