Dear Editor

Author(s): Joseph Mariconda; Rolf Miller; John Sampson; Mike Neidich; Steve Martinez
Publication: Syntax
Pub Details: Syntax/Syntax ZX80 v2 n4 (Volume 2, Issue 4)
Date: April 1981
Pages: 6-7

I found a way to eliminate distracting interference patterns, requiring only patience and lots of tin foil. Just wrap the TV adaptor and antenna terminals with the foil. If done neatly with no punctures, the shield covers both adaptor and antenna terminals. For complete shielding, insert the adaptor into the TV and completely cover the sides of the TV, being careful not to ground anything with the foil. This plan uses Gauss’s law–no electrical field exists within hollow spherical conductors.

Joseph Mariconda, Toronto, Ontario


You can save several bytes in REM or PRINT statements by using single-key keywords where possible instead of entering words letter by letter. For example, to remind yourself to write down some data, you might have a line:

100 PRINT "STOP THEN INPUT X,Y,Z"

Letter by letter, the whole line consumes 27 bytes. But if after the line number you hit I for INPUT, SHIFT 5 to move the cursor left, Shift 3 for THEN, SHIFT 5, S for STOP, SHIFT 5, O for PRINT, SHIFT Y for “, SHIFT 8 3 times to move cursor past INPUT, and finish out X,Y,Z” you can consume only 14 bytes, a savings of 1/2. When you have only 1K of user memory, every byte helps.

Rolf L. Miller, Ventura, CA


I adapted the memory test program in the Additional RAM story last month (p.3) to work in my 1K ZX80. I changed line 10 to:

  10 FOR I=152 TO 987

This program runs successfully. But when I change line 10 to:

  10 FOR I=152 TO 988

I get error code 9/80 but it prints error at 17372 twice. This indicates that the memory address at 17372 is unavailable. If I change the high number in line 10, it prints error messages for all addresses from 17372 to 17403. In a previous issue of SYNTAX, you said the largest available address was 17408. This seems to be a loss of 36 bytes. What gives?

John A. Sampson, College Point, NY

As you saw, the program in the March issue ended at 8000, not 8192 (8×1024, or the new total bytes available with the 8K RAM). Your machine keeps a variable length reminder file, or stack, at the top (high addresses) of total memory. By checking only up to 16384+8000, we avoided the stack area, simplified the test program and got a memory check adequate for our purposes. You POKEd high addresses in your 1K RAM; the computer used (and changed) them before you PEEKed at the contents. So it didn’t see what you POKEd and gave an error.

Every time your computer powers up or executes NEW, it checks to see how much memory is connected. Use this machine code program, courtesy of Sinclair, to see the number of bytes found:

   1 POKE 17000,33
2 POKE 17001,11
3 POKE 17002,0
4 POKE 17003,57
5 POKE 17004,201
6 PRINT USR(17000)-16383

On 1K machines, the answer will be 1024, or 2048 on 2K machines.–AZ


I was using a 19″ color TV as a monitor with my MicroAce and absent-mindedly touched the screen and the keyboard at the same time. ZZZAP!! The static discharged through my body into the keyboard and the U11 buffer. It died on the spot. A local distributor told me that the NSC 74LS365 did not have input diode protection, although other brands do. Because this chip is required, users should be careful when operating near a TV screen and in the dry winter months. Static charge can definitely cause damage to the expensive MOS circuits (the Z80A & ROM) and the keyboard buffer.

Mike Neidich, Syosset, NY

To avoid static problems, don’t touch both your TV screen and computer at the same time. Don’t wear wool clothes, or other fibers that generate static. Discharge static in your body before touching the computer by touching a metal object (you’ll get a small shock), especially if the room is carpeted.–AZ


After I assembled my MicroAce kit and inserted the recommended jumpers, it worked perfectly for about a week. Then the cursor motion in 3 directions, quotation marks and opening parenthesis became erratic and stopped working altogether. With nothing but blind instinct to guide me, I found that tying the positive end of diode 5 to ground through a .68 Meg resistor solved the problem.

Steve Martinez, Albuquerque, NM