Sinclair’s ZX80: Review of a Very, Very Small Computer

Authors

Publication

Pub Details

Date

Pages

A few days ago, I received a Sinclair ZX80 in the mail. I took it out of the box and got it to work after finding a portable TV that would tolerate the Channel 2 output of the built-in VHF video modulator. I was pleased with the ZX80’s overall performance, but I was disappointed with the quality of the video display.

Before I give a rundown of all my likes and dislikes, let me first review what the Sinclair ZX80 is and what it is not. 1 hope this will aid others who may be thinking about the purchase of a personal computer in the $200 price range.

The ZX80, as you might guess, is built around a Z-80 microprocessor. It has a built-in 4K integer BASIC and 1K of RAM for programs you write. A very tiny keyboard is part of the 7 inch by 8-1/2 inch (about 21 mm by 19 mm) plastic wafer that encloses everything except the power supply. Connections for recorder, TV and power supply are on the backside, where the wafer thickens to 1-1/2 inches (3-1/2 mm).

As I mentioned earlier, the ZX80 comes with a VHF video modulator builtin and preset to Channel 2 for use in North or South America. (The ZX80 is made in England.) You also get a nice, 128 page operating manual that explains how to install the unit and how to program in Sinclair’s version of BASIC.

The 9-volt, external power supply has a long cord and looks very much like the units you often see with calculators and transistor radios. Of course, the unit I received was for use on 120 volt, 60 Hz., and it has a “UL” label on it.

Now here are some things you do not get for $200. You do not get a TV set nor any kind of display that would allow you to use the ZX80 without a TV set. Neither do you get a cassette recorder. I tried it on a well-used Hitachi portable TV and a worn out Sony cassette. Both seem to work satisfactorily.

Sinclair does not include any cassette programs with the unit. They say they will provide such in the future. For now, the user must do his own programming. There are no built-in games or pictures, only primitive, low-resolution graphics.

An expansion interface is provided by a nearly standard edge connector. A 50-pin, flat cable card edge connector, like the ones that fit a Shugart 8 -inch drive, can be made to fit the Sinclair ZX80 after some minor surgery with a sharp knife. Sinclair says they will sell additional memory in the future. There is no provision for the user to add memory himself. There is not even a wire diagram for the unit.

Now let’s get to the details. Overall, I like the ZX80, but it has some real weak spots. I will give my harsh comments first and save the praise for last.

Video Display: why did I give it such a low score? Because I really had a hard time getting a picture I could read. Sinclair warns you on page eleven of the manual that you have to try tuning the TV set and adjusting the contrast and brightness controls. When I first got the unit I was in Silicon Valley, where the airways are full of all kinds of VHF activity. I just could not keep out interference.

Either the ZX80 does not have enough output or else it can not reject common mode signals that come via the power supply. I found that the display would improve when I used a long extension cord for the power supply. There was no provision for using an alternate UHF or VHF channel, so I dug into the little tin box inside of the ZX80. 1 found the air-wound coil and spread it open until I could tune in the display on Channel 3. That did help, but not enough. We have a cable system here and every channel in the low VHF is used.

Even if Sinclair would provide a VHF/UHF option, I suspect there would still be trouble with the display. The bandwidth of the modulator seems to be too wide for the low-cost, black-andwhite TV set that I wish to use. If I try to tune to the very edge of the channel to increase the high frequency detail, I get a lot of trash that appears to come from the ZX80. I can not see buying a better TV set just to correct this problem. Perhaps a bandwidth compromise could help. (Take a look at Lancaster’s TV Cookbook.)

Now about the keyboard: it is too small. I can not get four fingers of my left hand over the A, S, D, and F keys. The forty keys are not keys at all. A flat surface with the keypads marked in blue, it is impossible to develop a touch for the keys. You have to revert to typing with one finger. (One good thing, the BASIC allows single-key entries.) And the internal code is not ASCII (it is a 6-bit alpha-numeric code that may be converted to a subset of ASCII). This means you can not use another keyboard, or a printer, without quite a bit of work. Most of the raw information about the internal code is documented in the user’s manual. What is needed now are some good, detailed examples of how to enjoy the ZX80 without tearing it apart (which is fun!).

The ZX80 has an attractive price. To my knowledge it is the lowest cost, assembled and tested unit that provides a TV display and BASIC programming. Here in the United States, there are few kits under two hundred dollars that promise as much as the Sinclair. Personally, I strongly recommend that any novice not try to build such kits unless the kitbuilding is the objective. Will the price of the ZX80 come down? I believe that Sinclair will be able to lower the price of the present ZX80 to about $150 and then introduce a better model for about $250 sometime in 1981.

The cassette interface seems to work quite well. The operating manual says that your recorder must provide 4 volts, peak to peak, to fully drive the input during playback. Recording is not much of a problem, just read the instructions. During playback of your program, you must adjust the volume control until you find the best setting. This may take a few tries. Once you find the right setting, leave it.

My old Sony worked alright on the second try. I believe that is very remarkable. It took me a week to get my APPLE cassette going, and I have heard of some TRS-80 owners who are still trying to adjust the playback volume! With the ZX80 it is quite simple. Turn it up as loud as it will go and then back off just a bit. The video display gives some idea of what is going on. If the display remains blank after playing the tape beyond the area where you recorded data, just rewind and try again with more volume.

If you get a ZX80, do not expect it to work with tapes made by a friend who has a different personal computer. In fact, you may find that your ZX80 can not read tapes made by another ZX80. This is true of most personal computers and is not a problem unique to the ZX80. Quite a while ago, many users got together in Kansas City and came up with a reliable tape system. But the most popular brands of small computers ignore the standard. This makes me mad! Why can I not trade tapes with my friends just because they have brands X and Y, and I have Z?

The graphics are good. In fact, they are better than some more costly systems. Any letter or symbol on the keyboard can be displayed in reverse video by means of the CHR$ function. And there are twenty additional shapes that are to be used in making bar graphs, squares or highlights. The low-resolution graphics are satisfactory. Too bad the letters were not better.

The Z-80 CPU is possibly the most popular among hobbyists. Sinclair’s BASIC allows you to write machine code using POKE. The USR function allows BASIC to call the machine code. A parameter is sent and returned in the HL register pair. The PEEK function allows access to special system variables or any part of memory. The 1K RAM is from 16384 thru 17407. All notation must be in decimal in the BASIC text. (The ZX80 could be used to learn about Z-80 code, but it does not have a system monitor other than the BASIC interpreter. You could write your own and save it on cassette.)

The CPU does the whole show. There is no video display chip. While the CPU is waiting for the user to enter something on the keyboard, it is updating the television screen 60 times a second (or 50 times a second in Europe). This is the secret of how Sinclair can offer so much in a small package. Perhaps you may sense that I am partial to the Z-80. I think that Sinclair has done a good job of using the advantages of the Z-80 CPU.

Sinclair BASIC is very good. It reminds me of Tiny BASIC, but has many more features that make the ZX80 an enjoyable personal computer. All of the standard GOTO, GOSUB, IF THEN, FOR NEXT, PRINT, and other BASIC commands are present. To save space in the IK RAM area and to reduce the programmer’s work, all principle BASIC keywords are entered with a single keystroke. Many of the single-stroke keywords appear on the same keypads as do the letters and numerals. How does BASIC know if you want to type in a keyword or something else? It is automatic. Some other BASIC words are known as “tokens” rather than“keywords.” These are entered with a shift. There are eight lesser-used functions that must be given letter by letter.

This BASIC is not for any operation that requires decimal-point arithmetic. Sinclair’s BASIC will seldom give the right answer to a division problem. There is a good explanation for this in the operating manual, and a program listing that shows how to correct the problem. It would have been nice if the remainder from division had been stored into a special variable.

Strings may be tested and altered with some novel functions. On pages 76 and 77 is a table showing all the codes for ZX80-BASIC. Page 77 explains the use of CHR$( ), CODE$( ) and TL$( ). With this information, you can have many enjoyable hours making up nonsensical programs that display cryptic messages. This is far more important than decimal point arithmetic. After all, the real reasons anyone would buy a low-cost personal computer should not include anything very serious. I work all day doing serious things. With my new pastime, I can hide away and write programs that serve the noble task of bringing me pleasure and relaxation.

What makes this BASIC outstanding is the operating manual. Not too big. Not too little. Just right to go with a computer you can carry in your lunch pail with room left for a sandwich and a banana! There is enough information that a novice could learn to program using the operating manual and his Sinclair. For the more advanced, there is enough detail about how the system works to allow you to try some fancy tricks. There is a program example of how to use the frame refresh to measure reaction time in milliseconds! (No, they do not give ROM source code — sigh.)

Now the best part: the text editor. I did not expect a low-cost personal computer, with the features already described, to have a text editor. Without bothering to read the operating manual all the way through (which is perfectly all right, if you at least browse through it), I noticed four little arrows at the top of the keyboard. I tried one and found, to my surprise, that what happened was per¬ fectly natural. The back arrow allows me to go back and insert more text. The for¬ ward arrow allows me to move forward in the text. The rubout will rubout the character to the right of the cursor.

Compare the above with some of the very popular word processor hardware and software. I used a very expensive, professional Data Entry Terminal to write this review. Over half of the special keys do not work in a logical manner. My big terminal also has four cursor controls. Only one works almost right. You have to learn a bunch of control codes just to do something logical. At work, I spend several hours working on another system that is alien to the one I use at home. And I have to spend some time each day explaining the text editors to newer employees.

A simple and natural cursor movement text editor in the Sinclair was far beyond expectations. Now, I do not mean to say that is is a full text editor. I mean that it is beyond what is often seen in personal computers up to the one thousand dollar price range.

The line currently being written or edited is at the bottom of the display. When you get to the end of the line, you just hit the key called “newline.” It is not called “return.” It is not called “enter.” It is called “newline,” Hit it and your line finds its place in the BASIC list, in the upper part of the video display. The cursor goes to the left of the now clear bottom line and displays an inverted “K” to let you know that the BASIC parser now expects a single-stroke keyword. Hit a single-letter keyword, it appears instantly, and the cursor changes to an inverted “L” to let you know that the parser now expects an argument to the keyword. If you enter an invalid argument, the cursor changes to an inverted “S” to tell you that your syntax is not correct at this point. Move the cursor back, and it becomes an inverted “L” as soon as you pass to the right of the character that caused the syntax error. In some cases, the “S” will appear until you have fully formed an expression. There is no way you will forget the final, left parenthesis!

What about lines you have already entered? Any line you have already entered does not have any syntax errors. The editor will not allow you to hit the newline key if there is an error (a little IC bug may come and bite your finger if you fry)! The newline key is inactive until after the invented letter “S” goes away. But if you need to change a line that was entered earlier for some other reason, simple! Move the up or down cursor control until it is on that line. Then hold the shift key and hit the “edit/newline” key and watch what happens.

The power in this method of text editing is greater than what you expect. Do any of Dr. Dobb’s readers remember the Control A trick in MITS extended BASIC 4.0? It was not fully documented then, and even now the Microsoft manual does not tell all. Something like that is in ZX80 BASIC, and it is explained clearly. Just look in the index of the operating manual (what, an index too?) under EDIT and then read page 26. What? You didn’t find it on page 26?

Sorry, try the last paragraph on page 90.

Yes, it is true. The edit command may be used to change the line number of a program, and the original line is still there! This is perfect for those programs where a dozen lines are duplicates or have only a few changes to be made. Think about it!

If I seem excited about this feature, I am! Do you really need a line editor for a very simple BASIC system? I think so. When the Radio Shack TRS-80 was first introduced about four years ago, it was very hard to program if you were not a perfect typist. The only way you could edit a program line was to re-type the whole line. If you got it wrong the second time, try again and again.

Of course, I cannot compare the Sinclair ZX80 at two hundred dollars with the new Radio Shack Color Computer at four hundred. But at least my Sinclair has a simple way to edit a line. According to Radio Shack, their TRS-80 Color Computer and the TRS-80 Level III (for seven hundred dollars), both use Level I BASIC. This means that anyone who programs either of these will come into the same snag that the first TRS-80 had four years ago. This is why I am so pleased with the edit mode of the Sinclair ZX80.

Products

 

Downloadable Media

 
Scroll to Top