SYNTAX ZX80

A PUBLICATION OF THE HARVARD GROUP

VOL.3 NO.3

IN THIS ISSUE

8K Programs

Theome. Tax. 6.08 os bees 8 Flashing Prompts, «..... Lg Video Artist......... 10

Beginners’ Column Translating Programs. .3 Book Review Machine Language Pro- gramming Made Simple. 20

Classified AdS....«%.<%4 rai Curing 16K Dumping..... 20 Dear Bat COr so xsain cede Zt 14 Hardware

Ze. PETREING, .tse sn eas 4 4

Kit Misunderstanding.1l Hardware Hints...s4vs.s. 7 Hardware Review

Marex ROM Switch..... 16 Machine Language

Flags Register....... 17 News/New products..... 2 Numbers Held Inaccurately

On the: ZKB Ee sds 1 wae 4 6 Program corrections and

improvements..... Z

Software Review Computacalc and

Video-Plan........... 18 Software Hint........... 5 USETS” “GROUDS <i sea decas 15

Index of Advertisers

Bani T6Ch sexs ie Saeed 17 Kopak Creations........ 19 LIN Enterprises... i024 11 Minidware: GGucs 5. a2 dick 6,16 BERD SY St CMSs: we ae ae ee 20 OCS Nats od arcs oa aes 18 Sinclair Research...12,13 DORUS VN Ge asa 5 era'3: was tt oat s) SyCAK cA eee Santee ne eA. Zeta SOLtware.« i icuksass 7

ISSN 0273-2696 MAR., 1982

IAN LOGAN WINS FIRST ANNUAL ROSETTA STONE

Dr. Ian Logan of Skellingthorpe, UK, a frequent SYNTAX contributor, won the first annual Rosetta Stone award sponsored by Mindware Co. of Wayland, MA. Given for the best independent product--application, soft- ware package or peripheral--for ZX80/1s, future prizes will be awarded by SYNTAX editors. Dr. Logan won $100, a US computer magazine subscription, and a Rosetta Stone replica for his 8K ROM disassembly.

To nominate a product for next year's award, send the developer's name, address, and phone number with a description. To enter a product, also send the item plus documentation to SYNTAX Rosetta Stone Award, RD 2 Box 457, Harvard, MA, 01451.

TIMEX TO MARKET SR PRODUCTS IN NORTH AMERICA

Sinclair just announced a license with Timex to manufacture and retail Sinclair computers, peripherals and software via Timex outlets in N. America. Expect the change this fall. Sinclair will then stop selling by mail and you can buy Sinclair products at stores. We don't know which stores yet.

64K RAM AVAILABLE MID-MARCH

Memotech's new 64K plug-in RAM will be available in March for $199 US. Contact distributor Gladstone Electronics, 901 Fuhrmann Blvd, Buffalo, NY 14203, or 1736 Avenue Rd, Toronto, Ontario M5M 3Y7.

AUTHORIZED SINCLAIR REPAIR SERVICES

MicroSync Services will take over Sinclair's repair work for ZX80s and ZX8ls (kits and assembled) and 16K RAMs. They also offer $10 yearly maintenance contracts. Send SASE to MicroSynec Services, Customer Service Dept, 162R Marlboro St, Keene, NH, 03431.

SYNTAX ERROR: Lawrence Souder reported an error in his 4K Phone Number Word Generator program (Feb. 82). Line 110 should read NEXT Z, not NEXT X. Lori Olson's simultaneous equa- tion program contained two typos: 80 FOR H=1 TO I-1 110 NEXT J

PROGRAM IMPROVEMENTS Tom Finley sent these improvements

to R.F. Fraser-Smith's 8K Digital Clock (Nov. 81):

200 IF H<10 THEN LET D=19 201 IF H>=10 THEN LET D=18 202 IF M<10 THEN LET E=22 203 IF M>=10 THEN LET E=21 206 PRINT AT 21,D;H;":00" 208 PRINT AT 21,E;M;" "smM$

To run Hexadecimal Math (Dec. 81) with an 8K ROM, make these changes from Leo Morgan of Peabody, MA:

90 DIM (2)

180 “LET N (1) =D

230 LET N(2)=p

240 IF C=2 THEN LET D=N(1)+N(2) 250 IF C=3 THEN LET D=N(1)-N(2) 260 IF C=4 THEN LET D=N(1) *N(2) 270 IF C=5 THEN LET D=N(1)/N(2) 370 FOR X=1 TO 4

500 DIM H(4)

580 PRINT CHR$ (H(4));CHR$ (H(3 ));CHR$ (H(2));CHR$ (H(1));

Clifford Efaw of Morton, WA, sent these changes to run 4K Blackjack (Jan.82) with 8K ROM:

370 LET X=INT (X*52)+1

670 PRINT P(Z),CHR$ (15)

DEFENSIVE AWARI

I finally figured out the computer's defensive moves for my Awari program (Feb.82) to improve the play for better players. These additions foresee the consequences of a second move by the human, improving the original version in Basic Computer Games. The addi- tions yield approximations only-- they don't add a point to the

opponent's score for passing home on the way to a zero pile or fora second move--but in general they'll make the right move. The change in line 330 avoids repeating a previ- ous move. You can eliminate lines 270-290 since the Sinclair won't invariably move pile 1 following pile 4 and leave you to move pile 5 for 6 points. Unfortunately the initial move is always pile 4, which is a bit repetitious.

Change these lines:

330 LET H1=-99

371 LET Q=0

372 FOR T=1 TO 6

373 IF A(T)=0 THEN GOTO 381 374 LET R=0

375 LET U=A(T)+T

376 IF U>14 THEN LET U=U-14 377 IF U=7 THEN LET A(T)=0

378 IF U=7 THEN GOTO 372

379 IF A(U)=0 THEN LET R=A(14-U )+1

380 IF R>Q THEN LET Q=R

381 NEXT T

382 LET H2=A(14)-A(7)-Q

390 IF M=14 AND K=2 THEN LET H2 =H2+2+0

400 IF ABS (H1-H2)<1 THEN LET H2 =H2+RND-.5

Jon Passler, Beverly, MA EDUCATIONAL SOFTWARE VENDOR

Edson Electronics now offers educational programs for ZX80/81l1s with elementary school level arith- metic, spelling, and counting exercises (9 learning plus 3 game programs). Programs require 8K ROM/2K RAM. Listings plus documen- tation are $14.95, tapes are $12.95 (both for $24.95). Edson also has a digital VU meter for $28.95 to monitor cassette loading and help eliminate loading problems. Edson Electronics, PO Box 151211, Tampa, FL 33684, 813/870-0282.

Remember to return your white renewal card within two weeks of our postmark to get a free SYNTAX

| magazine binder.

——

TRANSLATING PROGRAMS: ON...GO TO

Revising some programs for use on your ZX80/81 requires total knowledge of that computer language and its usage. One such term that you will stumble over is the ON...GO TO or ON...GO SUB state- ment. A program line might read:

90 ON X GO TO 100,10,333,2000,59

The computer compares the value of X with the line. If X=1 then it will GO TO line 100, if X=2 then line 10, if X=3 then line 333, etc. The same thing will happen if the line reads:

90 ON X GO SUB 100,10,333,2000,59 Notice that if X does not equal any number 1-5, the computer moves to line 91. In other words,

if X equals a negative number, zero, or a number greater than 5, the computer skips that line.

One revision method is to list the numbers:

90 IF X=1 THEN GOTO 100 91 IF X=2 THEN GOTO 10 92 IF X=3 THEN GOTO 333

If you use GO SUB instead of GOTO, check for RETURN statements. For instance, if line 92 reads IF X=3 THEN GO SUB 333, then a line following line 333 must have a RETURN statement.

A second revision method is the COMPUTED way, like 90 GO TO X*100. If X=3, the computer goes to line 300. Using this method, the computer will go to any value of X (it will even search for a negative line number).

A third revision method is the DIM-ARRAY way, using a dimensioned array containing the line numbers. See SYNTAX (Dec.81 p.18) for this type of data storage.

The computed method uses the fewest bytes and runs at the slow- est speed, since it must compute each GO TO. The listed way is somewhat faster. The array method is quick if the DIM statement is near the beginning of the program. Mort Butler,

BW Sabre, Houston, TX

iy pr; i oo 5 Srey ZXCHESS is the fastest, most

li, versatile chess program

available for the Sinclair. With seven levels of play, ZXCHESS has the ability to accept and play all standard chess moves in- cluding castling and en passant captures.

This sophisticated program has a detailed = display of the playing board and allows you to ——=_-———" \ change sides and even levels of difficulty during agame.

You can set up the board at any point in the game to examine a special position. If you get stymied, the program will even suggest a move for you.

mm i6K

SUPER INVASION REVERSI ROAD TO RICHES CYBORG WARS WALLBUSTERS SPACE TREK

MACHINE LANGUAGE UNDERSTANDING YOUR PROGRAMMING... ZX81 ROM

TEN EXCITING PROGRAMS _ DIRECTORY/RECORD FOR THE 2X81: 1K

ch i he i El Be i ese ee WRITE FOR FREE CATALOG

C1 Please sendme copiesof ZXCHESS @ $24.95 each.

Please send me

copies of

(i Please send me a free software catalog lenclose

Please add $1.50 shipping & handling New York residents add sales tax.

SEND CHECK OR MONEY ORDER TO:

SOFTSYNG INC.

PO. Box 480, Murray Hill Station, New York, NY. 10156 (212) 685-2080

| Foreign orders must be paid by International Money Order or foreign draft in U.S. Dollars drawn on a New York bank.

NAME

ADDRESS

CITY

STATE/ZIP

TECHNICAL DETAILS FOR ZX PRINTING

Although Sinclair's printer is not available in the US yet, we got a British model and dissected it. We suggest that when and if you get one, you NOT dissect it--it's surprisingly tough to reassemble. Here's how the ZX printer talks to the 8K ZX80/81. (The 4K ROM does NOT support printing.) With this info you can start interfacing dot print mechanisms to ZX8ls.

Your computer contains a 33- byte buffer in RAM, named PR-BUFF, starting at address 16444. In the ROM, routines for LPRINT, LLIST and COPY take character codes from this buffer, transform them to dot patterns using patterns stored in ROM beginning at 1EOOH, and send them to the bus for the printer to use. The ZX printer accepts this SERIAL data and prints DOTS to form characters.

Data to the printer consists of instructions to draw a picture of the characters, one 32-character (or 256-dot) line at a time. Eight consecutive lines of dots form one row of characters.

Although the computer and the printer exchange several pieces of data, the principal data are the request from the printer to send the next dot and the instruction from the computer to print the next dot. Auxiliary signals tell the printer how to control the motor and inform the computer that the printer is connected and the stylus is on the paper. All signals pass in and out through the Z80 accumu- lator, or A register.

ZX printers function like a TV picture, scanning from left to right. A belt pulls a conductive stylus quickly across the paper, and where a black dot is wanted a pulse of current is passed through the stylus. This evaporates the aluminum coating on the paper, exposing the black backing. To avoid the need to return the stylus rapidly to the left hand edge of

the paper, two styli, equally spaced on a moving belt, follow each other. Thus one leaves the paper as the other arrives in quick succession. The belt and the paper feed roller are both driven contin- uously while printing, so when the next stylus comes round the paper has moved up to the next line.

So that the styli always stop off the paper, the BASIC commands slow the motor for the last two scans before stopping--this makes the graphics join up if done in several goes; put this feature in any machine language program that requires the printer to stop while the computer works out the next line. At full speed, each pen is on the paper for about 32mS and off it for about 16mS. Since the motor speed can vary, an encoder disc is used to give 256 pulses across a 92mm printing width (allowing 4mm margins). These pulses are syn- chronized with the stylus hitting the paper to keep the printing vertical.

There are about 60uS between the starts of successive pulses at full speed.

The printer is wired as a Z80 I/O port, selected by A2 being at a low level--no other address lines are recognized. Sinclair always calls this port as OOFBH (25ldec) in software, but does not fully decode the address in hardware. So to send information to the printer use the Z80 command: OUT(FB) ,A-- OPCODE D3 FB, assuming the data is in register A. The data bits have the following meanings:

D2 high means stop the motor, low means start it.

Dl high means put the motor at slow speed--D2 high overrides this

D7 high applies power to stylus.

side of the lines remain in last, until new printer. At pressing the

On the printer interface all these the state they were data is sent to the switch on, or after

feed button, Dl and D7 are set low; D2 stays high after feed. The other data lines aren't used.

To fetch information from the printer, the Z80 instruction: IN A, (FB)--OPCODE DB FB--will put data into the accumulator. These bits are used:

D6 will be read as low if the printer is there, high if it isn't, and is used solely to check if printer is connected.

DO is the signal from the encoder disc.

D7 is high when the stylus hits the paper.

DO and D7 are both latched on the printer side of the interface so they remain high until the computer writes something to the printer.

So even if you don't make use of the information you read in, use an output instruction with appropriate data to reset the latches until the next signal. These bits may be in either state on switch on, and are unaffected by the feed button. The paper detect signal is also used internally by the printer to make sure the styli stop off the paper. If power is applied to the stylus, the paper signal will go high even if the printer is between scans; turn the stylus off before trying to detect the paper edge.

All printing is done in FAST mode. The COPY command prints a full screen in 12 seconds.

All ROM code to control print- ing appears to lie between 0802H and 0918H, based on a quick look at Ian Logan's ROM disassembly. A call to 0871H (USR 2161) prints the characters stored in the printer buffer, then clears the buffer.

SYNTAX (02/08/13) describes a port interface, including a schema- tic for another address, that you can easily modify. Simply use address lines AO-A7, IORQ, and RD or WR to.select address, port, and direction. Use DO-D7 to carry data to and from the accumulator. Use

74LS75s to latch the data in and out, and use LS-series gates else- where when they connect to the ZX80/81 bus.

You can use Ian Logan's anno- tated ROM disassembly to examine the Sinclair software that executes the LPRINT, LLIST, and COPY func- tions. You can move the COPY-BUFF and output routines to RAM using a program suggested in Sinclair's printer manual. First POKE 16389, 124 and NEW to set aside memory for the machine language routine.

Next, use the following code to move the ROM routine to RAM.

5 FOR I=0 TO 112

6 POKE 31744+1,PEEK (2161+1)

7 NEXT

9 POKE Call this

q 31857,201 routine using USR 31744.

routine will now read codes, which you must POKE into PR-BUFF, and translate them into dot codes using the patterns in ROM. The buffer is NOT cleared by this routine.

If you want to store different patterns, POKE them into the 256 bytes starting at 32256 (the space is already set aside) and POKE 31800,63 (to restore the ROM as dot source POKE 31800,15).

Each successive byte stores the 8 dots for a row of printout of one character. The ninth byte thus contains the first row of the second character in the set. By defining bit patterns here you can define a new character set. Speci- fy all 8 bytes for each character.

This character

SOFTWARE HINT

My son finished off a recent program for me thusly: 9950 SAVE ''Name of. Program" 9960 GOTO (First line of Program) To SAVE this on tape, I just type GOTO 9950 instead of the more time- consuming SAVE 'Name of Program!’.

Herb Sturges, Orinda, CA

. . powerful combination at a bargain price!

MINDWARE introduces COMPUTACALC, a low priced software package for the ZX81. COMPUTACALC is an electronic worksheet with an almost unlimited range

of applications.

CONSIDER:

Financial forecasts Engineering calculations Productivity analyses Pricing

Job costing

Estimating

Production scheduling

A versatile tool for $39.95 Requires 16K RAMPAK MINDWARE has a catalog of software. hardware and books for the ZX81. Write MINOWARE CO.

“> Bostac Orst Qeas weds ara MA T*778

MINDWARE CO.

Products that supplement nature 4 computer

NUMBERS HELD INEXACTLY ON THE ZX81

This is the first of several articles by Dr. Frank O'Hara on numerical errors in the ZX81's 8K ROM floating point.--AZ

All floating-point systems require certain techniques of rounding, general approximation and slightly over- or under-stating numbers to make the arithmetic work. The problem is particularly acute in the ZX81 because 1) all numbers, even integers, are held in floating-point form; 2) of the almost total lack of instruction in floating-point techniques in the manual or the literature; and 3) the limitation of the ROM to 8K and the premium on every byte.

In doing arithmetic on the ZX81, it helps to know just which numbers are held exactly in its BASIC and which are not. This small program shows you exactly how any number is held on the ZxX81:

Program 1 10 INPUT X 20 LET V=PEEK 16400 +256*PEEK 16401 30 FOR I=V+l1 TO V+5 40° PRINT PEEK. 2s". 50 NEXT I 60 PRINT 70 GOTO 10 INTEGER POWERS OF 2: To use this program, RUN it and first enter 0 to satisfy yourself that 0 is held as five zeros as the manual says. Then try some oe, aoe powers of 2, like 1 (or 2 Qig Ob. 20% You'll get 129 0 0 : 0: 130 0 0 0 Oe Loe OO. Oi S and: 232 0.0 30 0. Before explaining this, let me give you a program to generate all integer powers of 2 from 1 to 126. First delete line 10 from Program 1 and replace :ine 70 with 70 RETURN. Then add these lines to give: Program 2 (lines 30-7C .rom Program 1) 100 LET X=1 120 FOR J=1 TO 126 130 PRINT ds (4% 140 LET X=2*xX 150 GOSUB 30 160 NEXT J Finally, make line 20 be line 110 and delete the old line 20. To run, press GOTO 100 then NEWLINE (NL) or ENTER. The first 22 powers of 2 will appear, each in the form (129 plus n) 0 0 0 O for the nth power. To see the other 5 screen- fuls, continue in FAST at about 7 seconds per screenful. You should then be convinced the manual has got it right on this point. After seeing the 126th power (255 0 0 0 O)y ey PRINT: 252., » You" 11 get report 6/0 for arithmetic overflow. The ZX81 cannot hold 2 to the 127. To see the negative powers of 2, replace line 140 by LET X=Xx/2 and change 126 to 140 in line 120. RUN 100 and you get the powers from 274196000 One. 2 (1000 0). From -129 to -140 the powers should all be hcid as zero (0 000 0), but here we meet our first quirk of the ROM. On division by

2, 9-128 becomes 9-129 and_ is

promptly rounded up to 27-128 again! NEW ZX81 1K PROGRAMS by ZETA Software So our innocuous little program has on cassette tape with listings Try LET X=X/4, |

got us stuck here.

then GOTO 30 (NOT RUN 30) and you ZETAPAK #1; WAR GAMES will get 0 0 0 O O and of course Bomb Run, Sub Hunter, Barrage, report 7/70 (RETURN with no GOSUB). Fighter Pilot*, Torpedo Alley*, If you have the patience to run the & Dragon's Teeth*(tank battle) program again with 128 in line 120, ZETAPAK #2:BASICALLY BASIC you can use this same method to get RANDom POKEr, Loop de loop, IF a zero result for 2-130. If you I May, InVariablely DisARRAYed, want a zero result for 27129 you Return Address, & PseudoPause have to fall back on the the ZETAPAK #33 SCIFI FANTASY otherwise less accurate type of Planetfall*, Hyperspace Display, expression LET X=2**-129. Wormhole*, Arcade Invaders, Star So we have a simple way of Catcher*, & Turret Laser

generating the exact representation

of integral powers of 2 on the ZX8l (Gece ey te eee cae TO ORDER. ..Sena payment plus $2.50

as we expect from the manual, 2 is S&H to; ZETA SOFTWARE/PO Box 3522 given by (129 plus n) 0 0 O O where Greenville, SC 29608-3522

n equals -128 to 126 inclusive.

Now compare these exact results with the expression 2**N, To do this, produce Program 3 from Program 2: Make sure that line 120 contains 126 and change line 140 to LET X=2**J. RUN 100 and note the s 19 inaccuracies at the powers 13, HARDWARE HINTS 26, 27, 31, 52-54, 61, 62, 104-108 and 121-125. Running the negative Overheating: EZUG (Educational powers reveals similar inaccuracies | Users' Group) newsletter re-ncrts a

Or write for catalog of 50+ titles. In Europe, send inquiries only and U$1 bill or DM2 stamp to: DELTASOFT ZP2, Osterfeldstr.79d,D-2000 Hamburg 54,GER

at corresponding negative powers. reader's solution to over: .. ing. Note in particular that PRINT He filed off the raised Zxui name, 2**13-8192 gives .000022888184. then put a solid, block of steel rnaG sexere 6 in the last byte is about the size of a. pack of cigar- 3/217 , about .00002. The inaccur- ettes on top of the case. A simi- acy arises because the ROM evalu- lar copper block copper keeps the ates 2**13 by approximate methods transformer cool. Reprinted by as EXP (13*LN2). Of course, permission, EZUG Newsletter, Jan/

8192.00002 may be accurate enough Feb 82, p.16, Highgate School, for most purposes, but it may help Balsall Heath Road, Birmingham B12

you to know that it is not com- 9DS England.

pletely accurate and you can always

get it exactly if you need it by Memory Loss: One of SYNTAX's 2*2**12. The same holds for any machines displayed memory loss, other inaccurately held powers. For | partial characters and other example, the important number 2 strange symptoms. We tracked it to is given exactly by 2*2**30 or by defective solder joints on the 2**32/2. So Euler's famous prime component side of the board at the can be got quickly by 2**32/2-1. regulator IC. Under a magnifier, Next month: Positive integral defective joints look like conical powers of 10. pits around one or more of the 7805

pins. Touching up the solder cured Frank O'Hara, Surbiton, Surrey, UK | all the symptoms.

INCOME TAX--8K/16K

It's that time of year again and I hope that TAX will reduce some of the nuisance of tax return preparation, if not the pain in the pocket. It is designed to aid in year-end form preparation and also to allow periodic monitoring of tax liability during the year. You may be able to reduce the amount with- held from your salary or the amount of your quarterly payments if self- employed. Personally, I'd rather have the money during the year than have the IRS hold it for me.

Lines 100-152 provide the main menu of functions with line 170 serving as an error trap for acci- dental entries. You can quickly see the program's various capabil- ities. Tax calculation includes all arithmetic and transferring totals to appropriate lines.

The PAUSE subroutine at lines 6000-6030 allow you to view various displays as long as desired before proceeding. The form selection subroutine is at lines 7000-7214. Although this listing includes only Form 1040 and Schedule A, you can add any additional forms using the same principles illustrated. The particular variables allow this flexibility. Z is the offset in line numbers for each form with allows all line numbers and des- criptions to be stored in a single sequential array but allows you to enter the line numbers on the IRS form. P is the number of "pages" used to display the given form. Each value of J is the starting line for each display page; each value of K is the ending line.

This allows overlap of displays as appropriate.

Lines 1000-1120 provide the data entry function and begin with form selection through GOSUB 7000. You are then prompted for line number and amount. The amount is added to the previous total for this line and the new total displayed. This allows periodic

updating during the year and revisions during year-end form preparation. Make negative correc- tions by entering negative numbers.

Lines 2000-2248 perform all arithmetic for lines that require it. Schedule A (lines 2200-2248) must be done first so that Form 1040 (lines 2100-2182) will have that information. Lines 2120-2122 require you to refer to the tax tables for the tax on the amount in Form 1040 line 34. Lines 2124-2126 request any additional taxes. The "bottom line'' is displayed by lines 2174-2178. In the calculation of Schedule A, the total deduction is displayed by 2242.

Lines 3000-3080 allow you to view all line items on the form selected. GOSUB 7000 illustrates its usefulness here by allowing a short subroutine to serve for all present and future forms. Line numbers, descriptions and amounts are presented. Changing the line number I to I$ makes for a more attractive display.

Lines 4000-4060 record the program and all variables, includ- ing line descriptions and amounts. This also makes the program self- starting upon LOADing and elimin- ates the danger of erasing every- thing with a RUN instead of a GOTO.

Lines 5000-5030 erase all line amounts to let you keep the line descriptions intact when starting a new tax year.

Lines 9000-9050 are for initializing the program. The REM statements indicate direct commands that should be entered when the program is being initialized. Line descriptions are typed in by first commanding GOTO 9020. The prompt provides a guide to the maximum length of the description (18 spaces) by printing 16 *s after the line number. The direct command LET J=1 allows later addition of forms and line descriptions. Setting J to the new line number saves previous entries. The number 107 is the total lines in Form 1040

and Schedule A. If you add more forms to the program, you must increase 107 wherever it occurs. After initializing TAX, enter GOTO 100 to get to the main menu and either begin using it or record it for later use. Lane Lester, Lynchburg, VA Enter all data that cannot be computed on Form 1040 or Schedule A. Run CALCULATE TAX routine on Schedule A first; totals are auto- matically transferred to Form 1040. For lines on Form 1040 with sub-. lines a, b, c and d, enter each sub-item to the main line number. The screen shows the latest entry and the total. You can only go forward through the form; enter zeros until the main menu comes up to go back.--KO (Mar.82 listings are printed on a Sinclair ZX printer. Comments?)

3.6; “INCOME TAX RE 6.4; “PRESS DESIRED ‘8,6; 72. ENTER DATS oR: 8,8) "2. CALCULATE Ae PRINT AT 16,6; °S. REVIEW oF 150: PRINT AT 22.6; "4. RECORD DA ‘ise. [PRINT AT 22,6; "5. ERASE ALi. eee ee 488 SQ LET KEcENKEYS WIF Kee"R" OR REESE 1987 os VAL Keei00o _

AZ@..PRINT RT AT

THEN 30

PRINT ‘aes, Si “LINE S StS Lg 4 L NUMBER ‘PRINT. AT 6.26; pau

. 8.8) “ar " SERS a iGUNT §

+a PRINT AT 16,8; “Tora. §" GOSUB 68G0

oh. f

2izé4 PRINT

fay RY} iB Fi

itil

APSO

BP DU

} rs 3 -L (32a) -L (33 “ENTER TAX FO -

“yet Sat "ow?

wool pte (AY pot

big eat eh orrr aa Ser

Oh Ow ro note nnn ip fe bo fo po peo pe pd 1

KH

ra

7]

c

pat i =~ Ror Pos

-@; “ESNMPFER ADDITET = ONGL TAXES

i)

=L (S35) 46 (362

TQ 45 sh (4G) +h 723

beLta?yi -L (46) aie LET LtS4) =@

Bhatia FOR T=4? FTO zt Ht Ba) tL td}

=

= TO 61

#252 LET LtSa) sh (62) 4L¢9} @LSda NEXT FT

#i56 LET X=L (62) -L (S43

f 1S wo Mini ar

Fe Be or G3 ai Ori Pit bar Bool gm, EL gen, yim | a ed oO sf errs ui

HiS6

HiSsS IF X<8 FHEN GOTOQ 2356 #AG@ kL pita

BAGS LET LtGei =k (63! -k yeh. 2164 GOTO 2174

2266 LET Lees) =

BLOG L€64) =

2278 LET LtGS)=<

#2: LET Lot(Gay =x#+2

2ird FOR TS TT 66

276 PRINT OY F-SB,ws x; 7 CS (T)

Ces L {O03 Tho) (6a HEM LET Lt? 3 LUF@i ah pyal eh 723 eee a eWeek (Bs aR Eies Lt7aY-L ¢ 74) Bie (P32 THEN LET Lt?y Let LET. .f L C873 4h FSI re EF LiF) eh TFB) eh (7S) Le) “he fe 16. LET £ CSB’ oL TAS +h (BS) 1&5 Er Lt@P2 4h 88) +L t6a) ae Er L(Q43 4h (821 4+ (953 e@m@e LET Lo ak (O62 +h R72 @e2d LET Lt sh. ¢FG3 2e26 LET L.¢ bal (Sa) Sead LET L. ¢ tha skh th Base LEP Let wd of Tiaehd Ba3e LEY Lo 2a) <b ts eaeoed LET Lt bei ab goes eG LEY LORDS? sh (ok ah P2A@) +h 03 WAP PL CLS) LCR) +h Phe S236 LEP Lt ier) «bh (28S) (186) eae Lth@e: si ¢4@5) THEN LET L

273 =@ racee Oe eed ee Pins 25,8; “423 “;OS(1@?7}

eed GOSUB Geee =

Bheun a7eee

FOR N=2 TO FOR I=.itNi Fa KUM} LET Ie=<STRe Tf

3030 PRINT t4;"% “sOetrer3;" g*sn| VIDEO ARTIST--8K/2K CI+Z)} 3080 BOSUB Seoe This program shows the ZX81's

ability to draw pictures under BASIC control. Run the program and enter the title of your work. Hit

CLs PRINT AT 6&6,

cone 73 PREPARE RECCH! NEWLINE of ENTER, and you. get. a 4a2 aNT oe 20.5; “PRESS ANY KE| flashing cursor in the center of

the screen. This is the editing cursor. Control the direction of this cursor in real-time with keys 5-8. The cursor moves in the direction of the arrows on the keys. In this mode you can move anywhere on the screen.

PRINT. (AF 280 02 RES ERR SES To start drawing, press l. ERASED a - A 999 REM Sees | " This puts the computer in plot coves ease A aes 23, "PRESS ANY KE mode. Again, you have real-time 60.8 PAUSE 4ee8ce directional control by pressing Sone SE TURN keys 5-8. To erase, go back to Spee CL ae edit mode (hit 0) and move the 7ea8.f PRINT AT 6,7; "PRESS DESIRED Oe ose ae Syne bye 7O20: PRINT ar 6.9; "2. FORM 1648") you can save it on tape. Turn on 783: PRINT 9.9: "2. SCHEDULE Al your recorder and press $. It rose. PAUSE. 49020 saves under the title you gave it. Bae ae KSeTa Sa Kes"2" THEN GO You can exit just about any rer 2b time by pressing BREAK. This 7eee sos 6suB vat Ke2100+7000 | program should run in 2K RAM for rd those of you who have modified your y ae @ PRINT AT «Foret .@ «| 2X81's or added a 16K RAM pack. 7i@e° LET z2@ * PL@4 LET Pet _ ne We i MI a $ LET OUD 97, Lance Ward, Lansing, PUI@ CET 3(3) =37 S LET x=232 otaa CET Rta) aed 4@ LET ¥ 1 tips 2 : 7226 LET K 68) =37 415 PRINT RENTER TITLE 7izs. Ler K £3) =54 Se Gls. % fies berate oe Scar Zeae PRINT AT cir Aida cat atal so UNPLOT | ces THEN LET X=X-= ri 3 vee4 LET Pee 6@ IF INKEYS="6" THEN LET Y=Y- eee rer Jf} 23, ; ir 2 aS == £ othe ~y oeoe LET Ktid =20 | 7@ IF INKEYS="7" THEN LET Yay+ fede Ler ole) eet | 88 IF INKEY$="S" THEN LET X=X+ 22 iF_ENKEY $="2" THER GOTQ 166 1@Q PLOT X,Y anne TF INKEY $="S" THEN LET X=xX- ; 1228 IF INKEY&="6" THEN LET YevY- TT 23@ IF INKEY$="?7" THEN LET Y=VY+ pa 1 93625 LET I =STRS Ir attest =k 9838 PRINT AT 21.0; TG; “eeeeeeees Ate RE RPE ee SR ME er aes HLXERE ab aies e 348" Hcur osm 50 3 HMEVES SHEN 2802 2g Base NEXT : 17@ GOTO 16@ SYNTACTIC SUM: S2566. 5K SYNTACTIC SUM: 23487. 68K

10

ANOTHER $100 MISUNDERSTANDING

I just finished rebuilding my ZX81 kit. If Sinclair had sent complete instructions with my kit (delivered in early Jan.82) I would not have needed to reopen the case, desolder and remove two components, and add seven new ones. I can't believe that Sinclair singled me out to receive a kit with incom- plete instructions, so what follows may help others whose ZX81s won't work and wonder why they have two resistors, two capacitors, two little red coils and an oddly shaped metal strip left over after finishing the assembly per instructions.

Instructions with my kit called for only 12 capacitors (Cl- C12) to be installed on the board. They didn't mention two red-wire induction coils. They offered no special instructions for installing R27 and R29. And they didn't even mention a grounding strip, let alone describe how to installi one. If the instructions you got are similarly lacking, take note.

Sinclair advises (after I wrote) that you install R27 and R29 vertically. You should find two pairs of resistors of the correct values (R27=1K, R29=1M). Use the pair that are preformed for verti- cal installation.

You will also find two surplus 47nF capacitors (marked 473 Z) when you finish the assembly per the instructions. These are C13 and C14. It's easy to spot the board location tor. .613;, but the callout

for C14 is hidden under the 9V jack. The C14 location is between the end of the jack and the edge of the board.

It is easy to spot the locations for inductors I1 and 12, just above the regulator. Plug the

red-wire coils into these locations (Il and 12 bring the 9V supply to the regulator, without them the board is stone-cold dead). Solder all these components to the board.

NOW AVAILABLE

CRON onc

e Standard Computer Keyboard

¢ Type programs in half the time ° Minimize errors

e Wired keyboard hooks up in minutes

Plans for keyboard conversion with reverse video NOW $5.00

Keyboard with complete parts and plans NOW $55.00 Wired keyboard, complete with plans NOW $75.00

Add $5.00 mailing charge for continental U.S. Other locations write for details.

Mail for information: L.J.H. Enterprises

P.O. Box 6305, Orange, CA 92667 or call 714/547-8717

Finally, install the left-over weird-looking metal strip so that its long bent-up end passes between the heat sink and the edge of the board, with that end in position to contact the top of the case once the board is screwed down. Solder the other end of the strip to the arrow-shaped area just below the slot in the board. Then solder the other portion of the strip with a single small hole in it to the rectangular area provided adjacent to the regulator.

My 8K/1K ZX81 ran satisfactor- ily with horizontal rather than vertical resistors, without the two additional capacitors, and without the grounding strip. It runs even better now with the changes and added components. The TV display is clearer and more steady and seemingly, keyboard entry is faster and easier.

Bob Nadler, Englewood, NJ

Introducing the Sinclair ZX81

If you're ever going to buy a personal computer, now is the time to do it.

The new Sinclair ZX81 is the most powerful, yet easy-to-use computer ever offered for anywhere near.the price: only $149.95* completely assembled.

Don’t let the price fool you. The ZX81 has just about everything you could ask for in a personal computer.

A breakthrough in personal computers

The ZX81 is a major advance over the original Sinclair ZX80—the world’s largest selling personal computer and the first for under $200.

In fact, the ZX81’s new 8K Extended BASIC offers features found only on com- puters costing two or three times as much.

Just look at what you get:

B Continuous display, including moving graphics

B Multi-dimensional string and numerical arrays

*Plus shipping and handling. Price includes connectors for TV and cassette, AC adaptor, and FREE manual.

@ Mathematical and scientific functions

accurate to 8 decimal places

M Unique one-touch entry of key words

like PRINT, RUN and LIST

@ Automatic syntax error detection and

easy editing

Randomize function useful for both

games and serious applications

Built-in interface for ZX Printer

@ 1K of memory expandable to 16K The ZX81 is also very convenient

to use. It hooks up to any television set

to produce a clear 32-column by 24-line

display. And you can use a regular

cassette recorder to store and recall

programs by name.

If you already own a ZX80 The 8K Extended BASIC chip used in the ZX81 is available as a plug-in replacement for your ZX80 for only $39.95, plus shipping and handling—complete with new key- board overlay and the ZX81 manual.

So in just a few minutes, with no special skills or tools required, you can upgrade your ZX80 to have all the powerful features of the ZX81. (You'll have everything except continuous dis- play, but you can still use the PAUSE and SCROLL commands to get moving graphics.)

With the 8K BASIC chip, your ZX80 will also be equipped to use the ZX Printer and Sinclair software.

Order at no risk**

We'll give you 10 days to try out the ZX81. If you’re not completely satis- fied, just return it to Sinclair Research and we'll give you a full refund.

And if you have a problem with your ZX81, send it to Sinclair Research within 90 days and we'll repair or replace

it at no charge. **Does not apply to ZX81 kits.

NEW SOFTWARE:Sinclair has published pre-recorded pro- grams on cassettes for your ZX81, or ZX80 with 8K BASIC. We're constantly coming out with new programs, so we'll send you our latest software catalog with your computer.

ZX PRINTER: The Sinclair ZX Printer will work with your ZX81, or ZX80 with 8K BASIC. It will be available in the near future and will cost less than $100.

16K MEMORY MODULE: Like any powerful, full fledged computer, the ZX81 is expand- able. Sinclair’s 16K memory module plugs right onto the back of your ZX81 (or ZX80, with or without 8K BASIC). Cost is $99.95, plus shipping and handling.

ZX81 MANUAL: The 2X81 comes with a comprehensive 164-page programming guide and operating manual de- signed for both beginners and experienced computer users. A $10.95 value, it’s yours free with the ZX81.

Introducing the ZX81 kit

If you really want to save money, and you enjoy building electronic kits, you can order the 2X81 in kit form for the incredible price of just $99.95* It's the same, full-featured computer, only you put it together yourself. We’ll send complete, easy- to-follow instructions on how you can assemble your ZX81 in just a few hours. All you have to supply is the soldering iron,

How to order

Sinclair Research is the world's larg- est manufacturer of personal computers.

The ZX81 represents the latest technology in microelectronics, and it picks up right where the ZX80 left off. Thousands are selling every week.

We urge you to place your order for the new ZX81 today. The sooner you order, the sooner you can start enjoying your own computer.

To order, simply call our toll free number, and use your MasterCard or VISA.

ae To order by mail, please use the al PRICEt QTY. AMOUNT \.

s Zx81 | $149.95 aad ZX81 Kit 8K BASIC chip (for ZX80)

6K Memory Module (for ZX81 or ZX80) | 99.95 | Shipping and Handling | ___4.95 | $4.95 TOTAL

MAIL TO: Sinclair Research Ltd., One Sinclair Plaza, Nashua, NH 03061.

doupon. And send your check or money order. We regret that we cannot accept purchase orders or C.O.D's.

CALL 800-543-3000. Ask for op- erator #509. In Ohio call 800-582-1364. In Canada call 513-729-4300. Ask for operator #509. Phones open 24 hours a day, 7 days a week. Have your Master- / Card or VISA ready. é

These numbers are for orders only. For information, you must write to Sinclair Research Ltd., 2 Sinclair Plaza, Nashua, NH 03061.

Smciair |

hs

han,

NAME

ADDRESS

CITY/STATE/ZIP. t U.S. Dollars

DEAR EDITOR:

Here's a better way to stop the listing and editing of an 8K program. Make the first line of your program 1 REM X. After typing in your program, enter with no line number POKE 16514,118 and POKE 16509,40. This will stop the list- ing. When you try EDIT or LIST, it gives you A241 REM no matter where the program cursor is.

To get out of this mode, 16509,0 and POKE 16514,6l1.

POKE

Andrew Lederman, Pittsford, NY

In the Feb.82 issue, George Luhrs asked for a linear regression program. We have one for 8K ROM/ 1K RAM or more for $2.50. It puts the best line through x,y data points. Ask about our business Linear Programming system.

If you're strung for bytes, use LET A=0 and LET A=A+l instead of DIM A(1) and LET A(1)=A(1)+1 for the sum-to-memory and counter method I described in Feb. 82.

Paul Ezra, Ezra Group II, Box 5222, San Diego, CA, 92105, 714/584-8291

In spite of Gary Vincent's authoritarian tone in his Feb.82 letter about painting heat sinks, I believe he is incorrect.

Copies of applicable sections of the Motorola and National Volt- age Regulator Handbooks are enclosed to document the positive effects of painting aluminum heat sinks black. The effect of increased emissivity varies with the heat sink's parameters but black paint always helps!

Chuck Hutton, Atlanta, GA Chuck included tables from the Handbooks showing emissivity values for various surfaces. Painted or varnished surfaces have higher emissivities than polished or oxidized surfaces.--AZ

L'd like to hear from anyone interested in putting FORTH on the ZX80/81 or in defining a "standard" mapping between the ASCII and 2X81 character sets.

Rich Holmes, 1303 E. Wilson #204,

Batavia, IL, 60510

I bought an 8K ROM and 16K RAM module for my ZX80. Here are some problems I found and my solutions:

1. The ZX81 keyboard overlay won't lay flat and bows up in the center when attached. Apply double sticky tape and press it onto the existing keyboard. It lays flat and keyboard sensitivity is unchanged.

2. The 16K RAM fits loosely, as it's only attached by the edge connector. If it comes loose with power on, the RAM may be damaged. Fit a 2"x5" piece of thin PC board material between the RAM foot. pads, through the edge connector slot in the ZX80 case (1 whittled mine out a little with a pen knife) and under the ZX80 PC board. Attach it to the RAM and to the bottom half of the ZX80 case with short, self- tapping screws. Reconnect the internal gournd spring (supplies ground from the PC board to the lower case coating) elsewhere.

3. The 16K RAM internal ribbon connector leads were not clipped during assembly at the factory. the leads intermittently contact the conductive coating inside the case. As the coating has ground applied, the consequences are disastrous. Clip the leads.

So

Larry Lockwood, Yorba Linda,

Is anyone selling the MicroAce Flicker-Free kit for upgraded ZX80s and MicroAces stateside?

I got two surplus keyboards from John J. Meshna Inc. A fantas- tic buy for $20 each. On my 4K/16K system I mounted the computer (out of its case), 16K RAM and power supply in the keyboard. I removed

the cassette ports and remounted them at the back of the keyboard housing. I used the keyboard's 4 red keycaps for cursor functions, 10 black keycaps for numerics, and the remaining keys for standard alpha functions and separate tokens (such as TO, THEN, AND). I used the circuitry mentioned in SYNTAX (Vol.1 No.2) for the use of the extra keys without holding the SHIFT down. This keyboard was fairly easy to wire following the instructions in SYNTAX and Sinclair's schematic.

On my second system I wired the new keyboard to an externally accessable plug. I tapped off necessary connections on the ZX80 (8K/16K) and mounted its plug at the top of the case where my modu- lator used to be (I removed the modulator after I ran direct video out). This way I have portability or big keyboard features depending on where I'm computing.

Key caps on both keyboards were made from photocopied origin- als. Elmers glue holds them down. Spread a little extra on the tops to protect them from wear (it dries clear).

The keyboard also has a myriad of other helpful hardware such as a speaker with volume control, four switches (I used one for power and one for video select) and a number of small lights. Allin all, a very worthwhile investment.

Russ Gagnon, Oscoda, MI

I don't know of anyone in the US selling the MicroAce board now. For info about Meshna's keyboard (#SPL-19), contact Doug Meshna, PO Box 62, E. Lynn, MA, 01904, 617/ 595-2275.--AZ

Jan.82 p.9 "More Hardware Hints" contains a number of useful hints, but you might find Cramolin better for cleaning and preserving metal-metal contacts. Old Colony Sound Labs, Audio Amateur, Box 243,

Peterborough, NH 03458, sells both Cramolin cleaner and preservative for $9.95 (there are other sources). I would clean and protect the board edge contact of any ZX80/1 sent to me with return postage and $2.00.

Ron Miller, 3488 Douglas Drive, Murraysville, PA, 15668

USERS' GROUPS

We have received notice of these users's groups since last month.

To check for a group in your area, call or drop us a note with a SASE. If you belong to or want to start a ZX80/81 users' group, let us know and we'll pass it on.--AZ

Los Angeles, CA: George Kuby, 213/550-5035 after noon or P.O. Box 34545, Los Angeles, CA, 90034.

San Francisco/San Jose, CA: Paul

Perrault, Stanford Telecommunica- tions Inc., 1195 Bordeaux Dr.., Sunnyvale, CA 94086, 408/734-5300 x267.

Seattle/Tacoma/Everett, WA: Dan Gallery, 1619 E. John St., #414, Seattle, WA 98112, 206/325-8186.

Denver, CO: Cap Hamilton, 767 S. Gaylord St., Denver, CO 80209, 733-6857.

Fort Wayne, IN: Sinclair Midwest Users' Group, Robert Carroll, P.O. Box 13042, Fort Wayne, IN 46866.

Lynchburg, VA: Lynchburg Microcom- puters Users Group, Lane Lester, 804/237-5961 Div. of Natural Science.

Central Pennsylvania: Bill Russell, RD 1 Box 539, Centre Hall, PA 16828, 814/364-1325.

New York, NY: ZX Users' Group of New York, Box 560 Wall St., New York, NY 10005.

COMPUTER CHESS JUST $24.95

ZX81 CHESS: a challenging game written in superfast machine code for the SINCLAIR ZX81 (req. 16K rampak)

Improve your game: Choose from six levels of play, novice to expert. The ZX81 gives a graphic display of board position and keeps separate records of your moves and the computer’s. Make any legal move, including Castling and Enpassant; illegal moves not accepted.

Refine your strategy: Set up board to any configuration, even change sides midgame. Elect ‘‘Random Mode”’ computer won’t always make the same move in identical situations. Another bonus: a chess clock that records and displays time per move.

To purchase your ZX81 CHESS package, send check or money order

@) MINDWARE CO.

70 Boston Post Road Wayland, MA 01778

(postpaid, but add sales tax in Mass.) to:

HARDWARE REVIEW

Product: 4K/8K ROM Switch From: Marex Electronics, 2805 Abbeyville Rd., Valley City, OH 44280 Price: basic kit, $24.95,

assembled, $30.95; full- feature kit, $34.95, assembled, $49.95

The Marex ROM switch lets you use both your 4K and 8K ROMs on a ZX80 (a 4K ROM won't work on a ZX81). The basic kit comes with a 3" square PC board with plated- through holes, sockets and compon- ents, plus spacers and screws to put the case back together with the PC board inside. An extra $10 gets you the full-feature kit, which also gives cassette-load automatic gain control, a keyboard beeper and a reset-upon-ROM-switch so you don't have to pull the plug every time you switch ROMs. For kit assembly, you need wire cutters, a

16

soldering iron, small screwdriver and pliers, drill and pen knife.

I put together the basic kit. It came with step-by-step direc- tions, parts list, schematic and board layout drawing showing where everything goes. All the parts arrived, including about a foot of solder. Although not a hardware person, I had no trouble soldering the components to the board and plugging it into the computer.

But I did have trouble getting it to work. First, the directions, though very clear and simple, don't tell you how to avoid zapping your ROMs with static electricity. Not a big problem here at SYNTAX, where ROMs abound, but if you have only 2, it could be tough. Then we found a short between 2 ROM pins on the PC board. Rex Rickly of Marex tells us he caught this fault in one other board, and no one else has gotten one. It seems that some plated holes are too large, so the traces sometimes run too close, causing shorts.

Rex sent an assembled, tested board, and it works quite nicely. One of our ZX80s, which always resets slowly (several seconds with 1K RAM), would not work with the ROM switch board. But this machine only works marginally as it is.

If your luck runs better than mine and you get a good board, keep these things in mind: ground your- self when handling ROMs. When removing a ROM from the ZX80, touch the modulator (silver box in the rear). When you plug the ROMs into the new board, push them all the way in (till the pins pop into place) to make good contact. Yet be careful not to bend the pins-- they might snap. Three capacitors on the ZX80 board will get in the way--bend these down carefully until the ROM socket pins can plug into the socket on the ZX80 board. With these precautions and a gocd PC board, you'll be able to use either ROM without removing one each time, risking broken pins.--AZ

THE FLAGS REGISTER

(This is part 3 of 12 short pieces on machine code programming on the ZX80/1--AZ)

The Flags register, F, is the other half of the Accumulator pair, AF. The Accumulator (or A regis- ter) is where the results of operations (like add and subtract) are stored. The Flags register tells you something about the value in the A register. AF is just like the other register pairs HL, BC, DE, etc., except that the AF pair changes with each manipulation; all of the others change only when specifically instructed to do so.

Instead of values for each bit position, the Flags register holds information for testing. Each bit stands for a different condition and can be either 0 or 1 (0=flag not set, l=flag set). Each bit represents the information:

FLAGS (F)

S Z- = Ho~ P/O N.C (bit)0 0000 0 0 0 ACCUMULATOR (A)

128 64 32 16 8 42> 7 (bt#). 90. Oh OO 2G OO 26

Bit 7--S sign (0 if +, 1 if -)

6--Z zero (0 if result of oper- ation WAS NOT 0, 1 if result WAS 0)

5--not used

4--H half carry (used intern- ally, not testable)

3--not used

2--P/O parity/overflow (parity is testable)

1--N add or subtract (used internally, not testable)

O--C carry (l is a carry from the Accumulator)

Most nonprofessional machine code programmers need thoroughly understand only the Z flag. The others can be studied when neces- sary. For instance, if you have an

address in REM for data (<128; + or - value), you can load A with that value, test bit 7 (the Z flag) to see if it is positive or negative, then continue depending on what is in the Z bit.

Here's what happens: when bit 7 is tested, the Z flag will show 0 if the bit is 1 (negative value) or 1 if the bit is 0 (positive value). It sounds confusing, but just remember 0 in the Z flag means negative; 1 means positive. If the next instruction is JR Z (jump relative to Z), then the computer will jump if Z=1 (similar to IFf...THEN GOTO in BASIC). If Z=0, the computer just goes to the next instruction.

The Z80 offers thousands of possible bit-test/test-and-branch combinations...try a few.

Next: LOADING REGISTERS WITH DATA Jon Bobst, 35225

Zeta Software, PO Box SC, 29608-3522

Greenville,

BANI-l ECH

Software of the Month Club

Get the most from your ZX81 with 16K, use it to its full potential, while building an impressive in- ventory of software. Receive twelve listed programs— one a month. Programs like Income Tax Recording, Auto Maintenance, Household Expenses, Price of Gold Forecasting, Diet Planning, Scrooge’s Christmas Gift and Card List and many, many more for the incredibly low price of just $19.95 per year. Save your valuable time and get down to basics! Make checks payable to BANI-TECH

P.O. Box 1568

Princeton, N.J. 08540

O My check for $19.95 is enclosed. Please charge my O Mastercard O Visa

Account Number Exp

Signature

Name Address

City

SYNCHRO-SETTE

FOR THE ZX-80 & ZX-81 8K ROM 1K- 16K GAMES-EDUCATIONAL-BUSINESS GRAPHICS-TUTORIAL-ETC.

SOFTWARE REVIEW

Programs: Video-Plan, Computacalc Price: V-P £9.95 deluxe, £7.95 standard cc $39.95 US ROM/RAM: 8K/16K, ZX81 only From: V-P--Video Software Ltd.

Stone Lane, Kinver, Stourbridge, West ‘''dlands, UK DY7 6EQ CC--Mindware Co., 70 Boston-:-Post Rd., Wayland, MA 01778 (written by Silicon Tricks, London)

Electronic spread sheets (like Visi-Calc) let you analyze or model business and financial problems quickly and easily. You can try changes, make corrections, and play with alternatives. Any task using rows/columns of numbers you can carry out with these two programs.

Computacale and Video-Plan run on ZX8l1s with 16K RAM. Neither runs on upgraded ZX80s. Both are written in BASIC, run slowly, can

18

be LISTed, work with ZX printers, have mostly OK input error trapping and recovery, left-justify entries (decimal points do not line up), and let you force recomputation.

Neither program lets you move rows or columns automatically, nor can you insert rows or columns. As a user, I miss these functions. As a rotten typist, I also miss the ability to edit complex formulas.

Each program emphasizes a different approach to analysis--CC is cell-oriented, V-P is column- oriented.

Documentation for each program is poor. The notion persists among software suppliers that one manual can serve to sell, instruct, exem- plify, explain, and catalog. Once you learn to use the program, you will find looking through the examples just to find a command annoying. Of the two, V-P did the better job.

CC's manual fits in the cassette case--4 1/2 columns of type set 13 lines to the inch. get an example that demonstrates most commands, a list of options to respond to the major prompt, and two hints to modify the program.

V-P uses larger type and provides a 19-page booklet that covers similar topics. Three pages describe suggested applications, and three are devoted to titles and contents. Each menu option is fully described by telling the consequences of each permissible response. Chapter 5 on functions lacks clarity and does not explain which columns may have subtotals.

In most cases the effect of erroneous entries is explained. Both programs can behave badly without warning the user, though CC exhibited fewer of these problems. Any long tape can load with a few errors which may cause the program to crash after a while. That's a needless annoyance--run the Syntactic Sum of these programs when you first get them and at every load thereafter.

You

V-P exhibited defects so serious that I must rate it

unacceptable until they are cleared KOPAK GIVES

to eucnd) el tie: algal eos sar YOU THE POWER! totals can be arithmetically incorrect; and you can confuse the

KOPAK’STM Touch-A-Matic gives you KOPAKT is now offering The Source* the power to type more accurately and ‘America’s Information Utility’, The

program so that the s prea d sheet much faster. No wires, no soldering, Source* gives you the power to access 7 simple to install. Our unique vinyl over- a wide array of services including: calculates . ub totals at int ervals lay guides your fingers to the correct e Barter e Shopping ¢ Business Infor- other than those you asked it to. keys. Touch typing now possible with mation ¢ Career Network @ Electronic 1 1 your Sinclair* or MicroAce*! Mail ¢ Medical Advice ¢ UPI News All of these pieaiaea without warning. $9.95 Service and much more. A modem is CC can give the usual least- required to use The Source*. signicant-digit error between row The KOPAKTM Sinclair* female Con- sence SA . nector gives you the power to use the and co lumn totals » res (hte ing from Z-80 bus. Edgecard connectors specif- More POWER on the way! KOPAK’STM round-off error. ically made for Sinclair* computers. Coming Creations: * © 46 Pins, 23/23 « All pins are gold The KOPAKTM RS-232 Interface

* Both pro grams 7 prov1 de huge plated ¢ polarizing pin for correct The KOPAKTM Bus grids, much to their detriment. alignment everytime! Available with The KOPAMATICTM Keyboard

- . * Solder-Tail, Wire-Rap and PCBoard. The KOPAKTM Printer Neither gives you any direct con- $14.95 KOPAKTM Memory Products trol over grid size, and both The KOPAKT™ Disc calculate the whole grid every ‘KOPAK has the POWER to deliver!” time. V-P took about 10 minutes to

© 1982 KOPAK Creations Inc. reto tal the sheet after changes “ie KOPAK Creations Inc. TM Trademark of KUPAK Creations Inc. most annoying. CC is much faster Dept. SX Sinclair* is a trademark of Sinclair* . 448 West 55th Street Research LTD.

when you use sma Le por tions of the New York, NY 10019 MicroAce* is a trademark of MicroAce*

sheet since it only calculates (212) 757-8698 formulas you put in, whereas V-P always does all row functions and column totals--nice, but slow.

V-P only allows functions 8K FLASHING PROMPTS SUBROUTINE between columns, but displays the function below the column at all To avoid screen flicker, I times. In CC, you define cell came up with this subroutine (at relationships freely, but you'll 200 in this example). The example never see them again unless you program gives 6 flashing prompts. write them down. The function To change the number of flashes, labels just serially number the change 6 in line 145. For differ- formulas you put in. ent periods between flashes, change

V-P handles titles separately 3 in line 215. Run in SLOW mode. from data, so they don't scroll off the screen, but V-P doesn't move Rois Harder, N. Van, B.C., Canada the row titles and data together as |............. dre well af no Canes it does the column labels. CC treats the labels as data, and

48@ PRINT AT 21,6;"“10 TO 143"

scrolls them off screen on large 2@5 PRINT AT 21,0; “INPUT” grids. Neither program provides a oc BeSue Soe title lock, nor does either let you 120 PRINT AT 21.08; “Re adjust the row title size 125 GOSUB 2a a - independent of the data block. ace Basue Bon te sii a

Despite the shortcomings, I am 240 LET P=Pii delighted to see programs of this wee cota see Saha oe type becoming available for the ISS INPUT AS : ZX81. Computacale is a usable Sec oe oe aa : program and both are recommended 2i@ IF T=S THEN RETURN =

for programmers who want to see how

SYNTACTIC SUM: 19457, 68K to do these functions in BASIC.--KO ° ce ceeds

19:

INCREDIBLE!

2X80/1 Users

RKE16 Expanded Memory - 16K RKL-32 Expanded Memory - 32K RKL-J1" Single Joystick System RKL-J2* Dual Joystick System 30-Day Money Back Guarantee Fully Assembled and Tested * Includes Demonstration Program

SUPER PACKAGES!

79.95 149.95 69.95 89.95

Super RKL-A

32K Memory plus 199.95

Single Joystick System

Super RKL- B 32K Memory plus Dual Joystick System

RKL Systems

POBox 515 Leominster MA 01453

219.95

Incluge 4.95/shipping + handling Check or money order

CURING 16K RAM RANDOM DUMPING

My 16K RAM pack tended to dump its memory if my ZX81 was moved, wiggled, or tapped, or if the RAM pack was squeezed. Sometimes it dumped for no apparent reason. I suspected the problem was caused by dirty contacts at the edge connec- tor, but cleaning the contacts had no effect. The cause was mechani- cal instability in the RAM pack itself. The problem took only five minutes to fix, and now my ZX81l with 16K attached can withstand any amount of wiggling, shaking or thumping without a memory dump. This procedure worked for me:

e Open the RAM pack case by remov- ing the 4 screws and pulling the halves apart gently. Inside are 2 boards hinged together at the top by a ribbon cable, book-fashion.

e Inside the front and rear halves of the case you'll find large tan- colored cardboard insulators. With a: pair of ‘scissors; trim the

BOOK REVIEW Title: Machine Language Program- ming Made Simple for Your Sinclair ZX80 and ZxX81

By: Melbourne House Publishers Price: $19.95, 160 pgs, paperback

I wanted to review this book because I'm the person it was written for. The ZX80 and ZX81 have been my only computers. I taught myself BASIC and can now do most of the things I want to with it. I felt that machine language (ML) would be a good addition to speed up some programs and improve display. The idea of ML "made simple'' appealed to me.

This quality spiral-bound volume starts on a very elementary level, explaining how the computer counts and stores numbers. It goes through the various registers for both the ZX80 and ZX81. You learn to manipulate the registers and keep track of them. |

Each ML command is explained with exercises as learning aids.

At the end two fine indexes list the Z80 commands both by number and alphabetically by mnemonic code. All instructions are in hexidecimal

notches in the insulators so they just clear the screw posts.

e On a lower corner of the front board (the one with the blue plug attached) you will note 2 grounding springs that are designed to make contact with the metallized coating of the case when it is assembled. Inspect this area of the board to see if the pins running from the blue plug project far enough above the rear of the board to make contact with the grounding springs when they are flexed. If this appears possible, nip off the projecting pin ends as close as possible to the surface of the board and cover them with a piece of vinyl electrical tape.

e On the boards in my unit, only 2 of the electrolytic capacitor cans

20

numbers, not decimal. Most articles I've seen are in decimals. Being uninitiated to ML, my main problem was: what do you do with it? I felt like I learned all the skills of woodworking but not to build anything. A program com- bining BASIC and ML is included at the end, but I found it hard to follow and felt it lacked suffici- ent explanation to make it useful. Don't order this book for quick ML routines to plug into your programs. Instead, you'll find a book that seems to give a good background in ML to help you under- stand and build on further informa- tion found in other articles. Michael Roberts, Des Moines, IA This book doesn't offer immediate applications, but it's the best explanation of ML for ML beginners I've seen. Its friendly style is painless reading and simple analo- gies help make this language clear. This introduction is a must before moving to books like Zak's Program- ming the Z80. From from Gladstone Electronics, 901 Fuhrmann Blvd., Buffalo, NY, 14203, or 1736 Avenue Rd., Toronto, Ontario, M5M 3Y7.--AZ

had vinyl electrical tape on top of the cans to prevent shorting to the opposing board when the boards were folded together. Place vinyl tape on top of ALL the cans, and as an extra precaution stick a strip of tape on the bottom surface of the opposing board.

e Reassemble the RAM pack, making sure that the lower grounding spring on the front board makes contact with the metallized coating on the inside of the of rear half of the case. If necessary, bend it gently to insure that it makes _ proper contact. The side grounding spring will be pinched between the two halves of the case when it is properly assembled.

Burt Haberman, Tuscon, AZ

21

CLASSIFIED ADS

Reach 19,000 ZX80 and ZX81 users for $2.75/line, 4-line min. Send ad, typed 35 char/line, with check/ credit card no. by 15th of month for next month's issue to SYNTAX, RD 2 Box 457, Harvard, MA 01451.

Coming soon - ZX81 Monopoly

16K RAM-up to 6 players-imported from the UK. British board version family game. Savage PO Box 2681 Kirkland, Washington. 98033

7 1K ZX81 GAMES ON CASSETTE--$10.00 Mastermind, Slot Machine, Craps, Sub Rescue, White Hot Number, and more. NEW ENGLAND SOFTWARE, Box 691, Hyannis, MA 02601. (Also for ZX80)

Get loaded every time on ZX-80/81 with LED monitor. Plans $1; Kit $6+ $1 ship. Play basketball (2 sep. games avail.) in 4K/1K & 8K/2K, $1.50 per list. Send money

+ SASE to: R&H Enterprises, 1408 N. Newton,

4th Ave. E., IA 50208

Available from SYNTAX...

For computing beginners

Crash Course in Microcomputerts.............. $17.50 Covers hardware, machine language and applications. Reviewed in SYNTAX, Oct. 1981. Add $1.50 shipping.

ZX80 Pocket Book..............ssssssccssssssssseseseess $14.95 Includes ZX81 supplement. Covers Sinclair BASIC, data and program listings.

Add $1.50 postage. For advanced hardware/software users

Zilog’s Z80-Z80A CPU

Technical Manal.............ccccsssssssssccsesssreeceves $7.50 Zilog’s Assembly Language Programming Manuall................sscccssssceoses $15.00

Add 5% for shipping.

4K ROM Listing with Sinclair’s Original Designer’s Annotations................ssccseseeeees $40.00 Original listing plus utility programs.

SYNTAX back issues available, $4 each. Call or write for our group subscription discounts.

SYNTAX ¢e RD2Box457 ¢ Harvard, MA 01451 617 / 456-3661

SIMULATED LEARNING for your ZX81/0! Think of animal; computer tries to

guess it.Computer learns from mis-— takes for next time. List, instr.,

cassette (good stuff! 8/16K)$12.50. Foreign add US$3. SMUG PROJECT, PO

Box 13042, Fort Wayne, IN 46866

FOR SALE: ZX-81,16K RAM,Radio Shack Minnisette recorder,cables,manuals $225.00. Also ZX-80,8K ROM,cables, manuals, $100.00. Send cashiers ck or M.0O.:V.R.Haupin, Hydrostorage, Confederate Dr,Franklin TN 37064.

OFFICIAL SHOW GUIDE for 2nd ZX Microfair held Jan. 30 1982--46 pages, listing all major suppliers of ZX81 software and peripherals-- $2.49 each.

ANIMATED GRAPHICS SUBROUTINE--very clear, well written primer on how to do graphics on the Zx8l. Includes demo program, listings and subroutines--$2.95 each. Send check or m.o. to Mindware Co., 70 Boston Post Rd., Wayland, MA 01778

WANTED: ZX-80, 8K ROM, 1K RAM and all paraphernalia that came with the machine upon original purchase, especially programmers manual. State sales offer in writing, including telephone number, and mail to: Michael Wido

2922 Kendale, Apt.

Dallas, TX 75220

142

BANTA SOFTWARE now offers Football, Murder in the RAM,Casino,& our ori- ginal-Super Monzxer-taped for $3.95 each.Also,we will write programs to your specs for reasonable $$. BANTA SOFTWARE,RD #7,Bethlehem, PA 18015

TAX RETURN HELPER: A set of ZX81 (16K RAM) programs let you easily enter/examine/modify the forms and immediately compute the results of any change. You can also save the data for future use. Form 1040 and Sched A,B,C $10 (tax deductible), Same plus Sched D,E $14. KSOFT, 845 Wellner, Naperville, IL 60540.

22

Coming Soon - CP Productions. We will have everything from Adventure Games to Chess, Cooking,to SAT Vocabulary and Space Games to Checking Account Balancing. Send for a free list of coming programs. CP Productions, P.O. Box 247, Big Horn, Wyoming, 82833.

ZX81/16K QUICK CUBE--guaranteed to solve any’ Rubik's Cube (TM) or triple your money back. Cube is set up by entering 54 color faces of cube. Cube is then solved via 150-200 rotations. Pause control available at each cube rotation display. Very interesting program. Also available for TRS-80 (TM) I/III, 16K, Level II BASIC. Send $19.95 for either program, plus $1.50 postage and handling, to Alpha Queue Systems, Dept. D, P.O. Box 20885, Dallas, Texas 75220. Texas residents add 5% ($1) state sales tax. Remit checks or money orders only please. TM--registered trademarks of Ideal Toy Company and Radio Shack.

"Coin Collection''Mass data storage. Menu: add/delete, check inventory, change cost/value,total cost/value, search,self running/saving & more. (Listable)8K ROM/16K RAM.TapetInst. $9.95+$1.05P/H.Programs custom/made Send a SASE with descript.,example, and title for free est. M.C.Hoffman 542 Clinton Rd, Paramus, N.J. 07652

16K GAMES FOR THE ZX81/ZX80 8K ROM

ZX8 TREK - 5 levels of difficulty with 20 battle command options.

CRIBBAGE - the computer challenges you at the game of Cribbage.

TANK BATTLE - find the computer's tank before it locates yours.

Cassette + manual - $14.95 ea. game

A.Nisbet, 6 Moffat Court, Rexdale,

Ontario, Canada, M9V 4El1.

#6116 2K x 8 150 NS Static Ram Chip Available for delivery @ $19.00 plus $1.00 for shipping. Send check or MO to: Support Systems One, PO Box 1794, Phila., PA 19105

MAGIC SQUARE. World's Most Magic!!! 16x16 More Magic thn BEN FRANKLIN's Probe with ZX. $2.00 EZRA GROUP II Box 5222 San Diego,California 92105

LATEST SOFTWARE FOR ZX81 - Games, practical, math and more! Lowest Prices Anywhere! Also, Loading Filter plus other accessories. Write for FREE catalog to:

GREAT LAKES SOFTWARE, 201 Burlington Road, Valparaiso, IN 46383

OUR POLICY ON CONTRIBUTED MATERIAL

SYNTAX ZX80 invites you to express opinions related to the ZX80 and the newsletter. We will print, as space allows, letters discussing items of general interest. Of course, we reserve the right to edit letters to a suitable length and to refuse publication of any material.

We welcome program listings for all levels of expertise. Programs can be for any fun or useful purpose. We will test run each one before publishing it, but we will not debug programs; please send only workable listings.

In return for your listing, we will pay you a token fee of $2.00 per program we use. This payment gives us the nonexclusive right to use that program in any form, world-wide. This means you can still use it, sell it, or give it away, and so can we.

We will consider submissions of news and hardware or software reviews. Please keep articles short (350-400 words). Again, we reserve the right to edit accepted articles to a suitable length. We will pay 7 cents per 6 characters, including spaces and punctuation, for accepted articles.

When you send in programs for possible publication in SYNTAX, please include the following information:

¢ How to operate the program, including what to input if it does not contain

prompts.

© Whether you can run the program over again and how.

© How to exit the program.

° The Syntactic Sum (using the Syntactic Sum program in the February, 1981,

issue).

© Whether it fits in IK or 2K RAM (or 16K when available).

© Whether it uses the 4K or 8K ROM.

We pay for this explanatory text at the same rate as for articles in addition to payment for the program itself.

If you want us to return your original program listing or article, please include a self-addressed, stamped envelope. Otherwise, we cannot return submitted material.

SYNTAX ZX80 is published

monthly by a wholly-owned subsidiary of The Harvard Group.

Syntax ZX80, Inc.

RD 2, Box 457, Harvard, MA 01451. Telephone 617/456-3661.

account number

**KKLOOKING FOR SOMETHING DIFFERENT *to run on your Z81? How about some *thing that lets you investigate *your past life,...or,find out just *what turns on that special person. *How? 'Astrology'--based on ancient *knowledge about the harmonic quan- *tazation of energy -Astrology does *work! And now,you can write a pro- *fessional personal horoscope. Check *mate compatability,analyse person- *alities.Not only locates 9 planets *moon,node,houses,but prints out an *interpretive analysis,-making it a *sreat party game.Tape $16.Visa/MC. *914-2555521.LS,POB 935,New Paltz, *NY.12561.Astrology trainer incll6K

LAND THE SPACE SHUTTLE. Your TV screen becomes the instrument panel and windshield of the spacecraft. The runway appears before you, giving the effect of a flight simu- lator. Game has several endings, each dependent upon your skill. LAND/AIR BATTLE. Destroy the enemy (the computer) before it destroys you. Fly the aircraft through flak dropping bombs on target. For ZX81 and slow screen Microace 8K Rom.16K Ram. Get both games on one tape for $6.95. Funware 7119 Santa Fe Ave. Dallas, Tx. 75223

YES! Please send me 12 issues of SYNTAX for $29.

My check for $29 is enclosed. Make checks payable to: SYNTAX ZX80, INC.

(] Please charge my [1] MasterCard C] Diner’s Club (J American Express [] VISA ( Carte Blanche account

| | i] | t 1 | 12 issues, $29. Single issue, $4. 1) ADs date bank number (MC only) | Signature Publisher: Kirtland H. Olson Dar Title Editor: Ann L. Zevnik I woe Printed by Joseph E. Marhefka, Jr. Oretizaion Clinton Offset Printers ! Address Clinton, MA 01510 | City State Zip © Syntax ZX80, Inc., 1981. All ; Day Phone_( eae Evening Phone ( ) | |

rights reserved. Photecopying prohibited. ISSN 0273-2696

I own a LJ Sinclair ZX80 UC Sinclair ZX81

617-456-3661

ZX815

Telephone orders call

BUFFERED EXPANSION BUSS for ZX80/81

For memory mapped peripherals.

Unlimited applications. Perfect for

experimenting w/computer hardware.

BARE BOARD AVAILABLE NOW

*fully buffered, w/decoders to open 8K of I/O space. Needs 8 chips.

*4 connector positions to fit .156" c/c 44 pins popular circuit cards.

*2 connector positions to fit .1" c/c. *Room for wire wrap.

*all components readily available.

*fingers for 16K memory pak.

*complete documentation plus free plan for T/0 port:

*plated thru holes..legend..solder mask..gold plated fingers

*provision for 3A voltage regulator

BARE BOARD (w/one connector

GO CRE COMPUDEL) cause ewes! od S30: Shipping and handling........ oot Calif.residents add $1.95 S.Tax

Allow 4-6 weeks delivery.

To order: specify for ZX80 or

ZX81 and send check to:

COMPUTER CONTINUUM, 301 16th Ave.

San Francisco, CA 94118

Product price/availability subject to change without notice.

(ZX80 w/8K ROM will require minor

circuit modification).

Complete kit available next month.

TELE HARVARD GROUP

Bolton Road, Harvard, Mass. 01451

24

EZRA GROUP II EZRA GROUP II The ZX80/81's are making a name with LOW prices... WE CHALLENGE THE SOFTWARE COMPANIES TO LOWER THEIR PRICES! for ZX81/ZX80/8k ROM 1K and 16K RAM versions BLGTNYE NMS: s-5 sn xa) Ree ead! Snort Graphics Billboard os ees wiw Rader 3 b.00 SPINNER T.M. (like Rubik's) 16K..2.00 Skew-a-Sketch(like Etch) Improved Pause(ZX81)........... Linear “Proer ami ne hc vee ee Ask. Self Addressed Stamped Envelope Gets YOU Our goodies catalog ALL ORDERS AND CATALOG REQUESTS GET FREE Galactic Messages PROGRAM. EZRA GROUP II EZRA GROUP II P.O. Box 5222 San Diego, (714) 584-8291

California 92105

TEXT EDITOR: (8KROM/16KRAM) Enter and edit any text or graphic, list/docmt $10.w/all updates $20. D.O'connell

1219 W.Russell,San Antonio TX 78201

PUT THAT ZX80/81 TO WORK with SORT. This great collating tool can count and file 1000s of items in over 29 categories with just 1K! $3 gets

you list & notes to learn/build on. Tom Woods Box 64 Jefferson,NH 03583

U.S. Postage PAID Harvard, MA Permit No. 8 01451

First Class