SYNTAX :
se & SERVING — Tye: TiMex-SINCLAIR FAMILY
r. PERSONAL COMPUTERS
A PUBLICATION OF THE HARVARD GROUP
VOL ..3' NOi7
IN THIS ISSUE
4K Programs Pie Tae -TOG..+ vss 2d see 6 8K Programs Fbying Birra. .sacsee seed Grandson of Big Characters...««e<seeeL7 Household Finances....4 Improved Data Input..18 Beginners' BASIC More: On INKBYS <<.< <2 e003 Beginners' Machine Code
PUSHing and POPping..15.
Classified Ads.........21 Déar. EGLCOf.i<%ss we'wana 2 Hardware Project
4K-8K ROM Switch......8 Hardware Review
CAI/O Board and
PEINCELs +. cas ceaeesecel Machine Language
Keyboard Scanning.....6 News, New Products..1,2,3 Numbers Held Inexactly.14 Program Improvements...21 Subscription InfO.s.:0.623 Users” Groups. <6sscsesad
Index of Advertisers
Byte-Back..cccccccccsee ed LJH Enterprises........18 Memotech Corp.......eeee19 Microcomputers Plus.....9 Mindware, Inc.......10,11 Sinclair Research......./7 S SS. COs seu Speier sees SO€ftsync; INGssksaedess 63 Zeta Software...eee..eeel4
Subscribers: Remember to return your white renewal card early to get a free SYNTAX binder.
ISSN 0273-2696 JUL, 1982
TIMEX TO RETAIL TS1000 PRODUCTS IN JULY
Although not specific, Timex Computer Corporation plans to have TS1000 products in some "major department and discount stores" by late July according to a Timex spokes- person. Timex has 14 software packages, ranging $9.95 to $19.95, in addition to $99.95 TS1000 computers and $49.95 16K RAMs.
TS1000 service will be in Timex' Little Rock, AR, repair facility; current 2ZX80/81 owners should still send their machines to Microsync for in-warranty service. No details yet on an 800 number support line.
MINDWARE INTRODUCES ZX-TS1000 PRINTER
At the recent Consumer Electronics Show in Chicago, Mindware, Inc. revealed their new MW 100 printer. The 16-column, 5x7 dot- matrix printer works with 8K ZX computers and TS1000s, using disposable endless-loop ribbon (blue or black) and 1 3/4" plain paper tape from office supply stores.
You need no interface or extra power supply; the MW100 plugs directly on the rear edge connector and extends the buss for your use. Using keyboard commands LLIST, LPRINT and COPY, the MW printer operates in 3 modes: wraparound, 16 column truncated, and split
screen. Split screen dumps the left half of a screen, then the right half, to the printer. Print speed is 16 cps.
According to Mike Levy of Mindware, shipments will start in late July. Price: about $120. (Watch SYNTAX for an early review.) Mindware, Inc., 70 Boston Post Road, Wayland, MA 01778, 617/358-7175.
NATIONAL ELECTRONICS III CLOSES SHOP
National Electronics III of Concord, TN, is no longer in operation. They formerly repaired out-of-warranty ZX80/8ls, as reported in SYNTAX, Feb.82.
NEW PRODUCTS AND SERVICES
Exclusively for users in the LA-MS area: Nonauthorized out-of-warranty service on ZX81 kits. brice: $8.50/hr (1 hr. min.) plus parts. Tracy Norris says turnaround runs 48 hours. Send your computer with a detailed description of the prob- lem; they will write or call col- lect with an estimate. Norris Radio and Electronics, 144 Terry Dr., Slidell, LA 70458.
ZX80/81 Users' Library will run a user-generated program library. Subscription service will sell pro- grams ($1.50 for 1K, $3 for 16K) to members and trade two free programs for accepted submissions. A news- letter will be published periodic-— ally, according to a Users' Library release. Yearly subscription $25 in US, $32 outside US. New sub- scribers before 7/31/82 get 15 months for the year price. 2ZX80/81 Users' Library, Suite 434, 4614 Kilauea Ave., Honolulu, HI 96816.
You can now buy the 2X99 automatic tape controller in the US. You get software control of up to 4 tape recorders using a 2K ROM containing the tape operating system, accessed by USR calls. It also has a built- in RS 232 printer interface and ASCII converter so you can hook any serial printer to an 8K computer. Price: $150. Also availble, a cased big keyboard with repeat key for $75 and game and application software under $20. Data-assette, 52 Ss 3rd St., Oxford, PA 19363, 215/932-3626.
Cheap 16K memory for ZX81s costs only £19.95 (about $34.90). It uses NMOS 4116 dynamic RAM chips and runs on the computer's power supply. According to EconoTech, it has snug-fitting gold-plated con- tacts, is fully compatible with ZX printers and comes with a 6-month guarantee. EconoTech, 30 Brocken- hurst Way, London, UK SW16 4UD.
Call 800/225-4876 (toll-free) 9-4 EST M-F to discuss microcomputer interference problems. Free 40- page product catalog. Electronic Specialists, 171 S. Main St., Natick, MA 01760, 617/655-1532.
VOTEM, an analog interface, plugs directly into 8K ZXs with no hard- ware mods, allowing your computer to measure voltage and temperature. Price: $39.95 kit; $59.95 built 4 and tested. Down East also offers
6116 memory (2Kx8) to upgrade ZX8lis
to 2K for $11.95. Contact Down
East Computers, P.O. Box 3096, Greenville, NC 27834.
aes Te
LJH now offers painted aluminum keyboard enclosures to fit their big keyboards. The 13xl0x4" case houses one computer and 16K or 64K memory pack. $45+$5 shipping ex- cludes keyboard. LJH Enterprises, PO Box 6305, Orange, CA 92667, 714/780-1422.
Get 16K-64K of directly addressable RAM with Memotech's stackable mem- Ory modules. Prices: 16K-$59.95; 32K-$94.95; 64K-S179.95. Another plug-in provides high res graphics with 192x248 memory- and bit-mapped pixels, $149.95. A Centronics par- allel printer interface works with dot matrix or daisywheel printers. It uses keyboard printer commands, converts to ASCII, and can print in lower case, $94.95. Memotech Corp., 7550 W. Yale Ave., Denver, CO 80227.
CONFUSING THE ISSUE
Radio Shack has discontinued the TRS-80 4K color computer. Now you can buy the 16K machine ($399), BUT without Extended Color BASIC. i Take care in comparing this machine : to Sinclair's Spectrum specs, Ex- tended Color BASIC adds 30 state- ‘ ments and 14 functions to COLOR BASIC and you pay $99 more to get them. Spectrum offers 16K and full color control in the basic machine.
USERS' GROUPS
Here are the groups we've heard from recently. If you'd like to list your group, call 617/456- 3661 or drop us a note. We'll send interested people in your area. To locate a group, call or write (send a self-addressed stamped envelope). We'll send you the address of any local group we know of.--AZ
ROAD TO RICHES
ROAD TO RICHES is an entertaining and educational computer game in which up to four players are given
opportunities to invest in business ventures in an attempt to increase their assets. The program simulates a fast-moving world of investment
Central Virginia: Central Virginia in which you are confronted with all kinds of investments
Users' Group, Herb Miller, Rt. l ranging from conservative real estate opportunities to highly Box 192, Troy, VA 22974, 804/589- risky Broadway shows.
8151 Pit yourself against a wheeler-dealer and see if. over a
period of seven years, you can come out on top. ROAD TO RICHES is fun and informative, realistically portraying the risk and skill of high finance.
16K $14.95
HANG MAN_=
We've created a Iéarning tool for you and your children which contains seven versions of Hangman for the 2X81. Your child can play against the computer's five pre-recorded libraries of categorized words: Animals, Science, Countries of the World, States of America and Fruits and Vegetables.
You can also play against opponents and the computer will request players names and keep score.
The seventh option allows you to save. your own versions of Hangman with up to 500 words each. This is ideal for parents to create special spelling drills for their children.
As a special feature, each program picks a word from its own library and compares it with the last 50 words played so you will not get
Pittsburgh, PA: Pittsburgh Area Computer Club, Special Interest Group--Sinclair, c/o Dick Welsh, 1605 Middlecrest Dr., Glenshaw, PA 15116, 412/487-0789.
North Suncoast, FL: Pasco-Hernando Users' Group, John Dowlan, PO Box 5021, Spring Hill, FL 33526, 904/683-3961.
Atlanta, GA: Atlanta ZX80/81 Users
Group, c/o Phil Hoffstadter, PO Box 5
2842 ; Atlanta : GA 30301 : 40 4/2 96- eiaa co a running account of how many words you
8009 after 6 PM. 16K $14.95
a I Ee Ee ee Ee es a Ee PLUS MANY MORE ZX81 PROGRAMS!
WRITE FOR FREE CATALOG
O Please send me copies of ROAD TO RICHES @ $14.95 ea. O Please send me copies of HANGMAN @ $14.95 ea.
Mastercard/VISA # Exp date
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 Gladstone Electron ics, 901 Fuhrmann foreign draft in U.S. Dollars drawn on a New York bank.
Blvd., Buffalo, NY 14203, 716/849- NAME 0735, or 1736 Avenue Rd., Toronto, Ontario M5M 3Y7, 416/787-1448.
Milwaukee, WI: Robert C, Harris, 5827 N. Maitland Ct., Milwaukee, WI 53217.
Chattanooga, TN: Chattanooga Area Sinclair Users, c/o Dan Williams, PO Box 1321, Collegedale, TN 37315.
San Diego, CA: Contact Robert Jorgenson, 3814 Coleman Ave., San Diego, CA 92154, 714/424-6202.
NEW CATALOGS AVAILABLE--FREE
ADDRESS
Se
CITY _
Softsync, Inc., PO Box 480, Murray Hill Sta., New York, NY 10156, 212/685-2080.
STATE/ZIP
RR
64K MEMORY BYTE-BACK Co. M- 64 $139.95 KIT ze
154.95 WIRED & TESTED IN STOCK. SAME DAY SHIPMENT
All standard features included, plus lower 8K of RAM can be disabled in 2K segments to allow PROM or peripherals to be added.
EXPAND YOUR 16K SYSTEM $59: 95
If you have a Sinclair 16K RAM module and need more memory, expand it to 32K and beyond by using BYTE-BACK M-16 MEMORY MODULES.
You can’t connect two Sinclair 16K RAM modules together, but you can connect one Sinclair 16 K and one or more BYTE- BACK 16K modules to get all the memory you need.
THOUSANDS IN USE WITH PROVEN RELIABILITY
M-16 $59.95 Kit. $69.95 wired and tested. IN STOCK. SAME DAY SHIPMENT
BB-1 Control Module. with 8 relays, 8 leds &8 inputs. $59 Kit. 69 wire and tested. WSTOCK SAME DAY SHIPMENT
MODEM with RS232 Port. $99.%; $119.95 wire
& tested. 90-Day Warranty On All Modules. 10-Day Return Priviledge
ORDER PHONE 803-532-5812
Add $4.95 shipping & handling to all orders. BYTE-BACK CO. alle eas Rt.3. Box 147 Brodie Rd. cml) Zn! LEESVILLE, SOUTH CAROLINA 29070
HOUSEHOLD FINANCES--8K/16K
This program can help put your household finances on a business- like basis. It requires 8K ROM and 16K RAM.
To conserve memory for data, the set-up procedure is done in the immediate mode, thus using no pro- gram storage space. Type in the program (ignore inverse video in line 630; the computer switches it after a save and reload), then follow these steps:
1. Type DIM AS$(10,13) and press ENTER or NEWLINE.
2. Type in this program:
800 FOR K=1 TO 10
810 INPUT AS$(K)
820 NEXT K Press GOTO 800. Then type in 8 expense categories, such as FOOD, HOUSE, AUTO, and so on, pressing ENTER or NEWLINE after each. Use the last two categories for income, such as SALARY and BONUSES. Each category can have up to 13 charac-
ters. After entering your cate- gories, delete lines 800-829. 3+ Press GOTO:10. Your 10 cate= gories will come up with corres- ponding letters. 4, Select M (for CLEAR MONTH) N (for CLEAR YEAR). You're ready to go. The program is self-saving (option L) and self- starting on reload to protect data from accidental erasure by RUN. After viewing a statement tion K), the menu. With a 16K RAH, this program leaves you about 12.6K bytes to fill. The inverse characters are HOUSEHOLD FINANCES in line 20 and CURRENT STATEMENT in line 150.
then
(Op- press CONT to go pack to
Variables and Strings
A$ category name array
A(K) monthly array
B(K) yearly array
K For/To (primary)
J For/To (secondary)
M(J) Print scratchpad
Q Monthly total R annual total S Address T Line pointer
U Tab pointer ZS Entry string
James W. Holder,
Huntsville, AL
E : 3 be TRE 14; "H=CLEAR MONTH FRB |; "l= SAVE" >) TRS 34; UN=CLERR YEAR’; AT a & ,@,° INSURANCE BSENEFITS RARE NEGA JTIVE.NEGAT IVE BALANCE | SHOWS BENE FITS EXCEED PREMIUMS.
3@ INPUT £5
40 IF COPE 28=48 THEN GOTO 128
S50 IF COPE S§=-49 THEN GOTO 622
6@ IF COPE 2#=Sa THEN BIN ATL 3
7@ IF COPE 2$=S2 THEN PIM Btls 3
SB@ IF CObeE 38:47 THEN GOTO 3&
Q]@ LET RtCQPE 2Zs-SB ri =Aticope Zs -GYIHVAL Zsti TO 3
1@@ LET Bicoce Fe-sF:=eicope zs -S7P)IHURL 28i2e Ta :
12@ CLs 13@ DIN #H
E
Rie. 118 GoTa 382
tft 14@ LET 3=358
FOR vG=si Fo 2 Mid) <8 FHEN GOTO 25a Mid) «Lees THEN LEFT Usl+
ABS Mii) ¢Leee FHEN LET VU RES Nivdis ¢2@& FHEN LET Ue ABS Midi <2 THEN LET Us BT J ,b8s Mis83
IF PRINT
a K=8 OR S=<46G O88 S=54AQ Th
28 PRINT AT T.8; “TOTAL EXPENSE STAB er TAB 12; °.88 $°:; TRE
PRINT AT T. 1437S"; TAB.
8 LET Mtlishi LET Nt2ei =6 ¢
“TOTAL INCOME"
TRE 2
PRINT AT T.&; VPROF IT “LOSS” : "BITRE 1298;"°.88 a8"
=A 19) +A 018) -5 Mize ar tB}4H 018) -R
“PREPARE TO SF FOUC
PRINT AY 6,8; aH ele eile RUNNING; “640 PRUSE aaa
650 SAVE “HOUSEHOLD F INANCER" 6608 GOTO 18 SYNTACTIC SUM: GaO53, SK
WANT A SINCLAIR PRINTER but don't want to wait or send to England? Check Gladstone's new catalog--ZxX printer $135 US or $169.95 Can. Gladstone Electronics, 1736 Avenue Rd., Toronto, Ontario, M5M 3Y7, 416/787-1448.
I TRB 2S
BEGINNERS' BASIC--MORE ON INKEYS$
As we saw in May 82, the 8K ROM's INKEYS function "watches" the keyboard and looks for a keypress, When used with PAUSE, INKEYS tells the computer to wait for the user to press something.
You can use INKEYS to either make the computer stop program execution if any key is pressed, stop unless any key is pressed.
In either case, remember the PAUSE statement that makes the computer wait. Because you want to control when the program stops or continues, use a nice big value like PAUSE 40000. This gives you enough time to choose what to do before the computer goes on without you--the bigger the value, the longer the PAUSE.
To stop execution if any key is pressed, add a line like this after the PAUSE statement:
100 IF INKEYS<>"" THEN GOTO 100 This line checks to see if any key is pressed. The null string ("") means no key. Thus any keypress at line 100 (making the IF part true) causes the computer to GOTO 100.
As long as you hold a Key, the program loops back on itself at line 100. This "holding pattern" effectively makes the computer wait until you let up on the key.
This method also lets you program a keyboard-controlled reset. At any time in your pro- gram, you can insert a PAUSE and INKEYS$ combination to allow the user to stop using the program or to start over. Change line 100 to IF INKEYS<>"" THEN STOP to end the program. Or uSe IF INKEYS<>"" THEN GOTO the first program line.
To stop execution unless any key is pressed, use this line:
100 IF INKEYS="" THEN GOTO 100 Here the null string, or no key, causes the computer to stay at line 100. Now the computer waits until a key is pressed (so INKEYS does
or
not equal "") to go on,
KEYBOARD SCANNING FROM MACHINE CODE
One of the problems you must solve when writing machine code for a ZX80/1 with 8K ROM is deciding how best to scan the keyboard. Although there is a Keyboard Scan- ning routine at 02BB and a Keyboard Decode routine at O7BD, it is pref- erable on the whole not to use either of these directly.
In SLOW mode, the system vari-
able LAST K (dec. 16421/2, hex 4025/6) holds the "key-value" of the last key pressed. Pressing a key forces an exit from the display routine after the Keyboard Scanning routine has detected that a key was pressed,
This Key-Value Demonstrator program shows the key-values for the ZX80/l's different keys:
REY -VALUE DEMONSTRATOR if SCROLL).
ee PRINT toe ne YY; PEEK 164
BLISSE2PEEXK 1642 Ga GOTO 12
SAMPLE RUN
65535 65015 6453 63479 61431
& ihe
You'll see the key-value for no-key is 65535, for 1 is 65015, and so on.
Knowing these values ina machine code program in SLOW, you can read the system variable, LAST K, and match it against known key- values. Or you can stay in a loop until you press a certain key.
This method works well, but you have to be careful with multiple keying.
To use this method, you must be sure the machine code program is in the SLOW mode. How can you select FAST and SLOW from machine code?
You can select SLOW by calling either OF28 (old 8K ROM) or OF2B (improved 8K ROM--new 8K ROMS should be improved). Select FAST by calling OF20 (old ROM) or OF23
(new ROM). Because some people may have old ROMs, I use this construc- tion for FAST/SLOW selection to make my program ROM-independent: START LD HL,+NEXT 76 bytes further on PUSH HL ;push address onto stack
LD HL, (SLOW 7 SLOW=0CAC
or FAST) FAST=0CAF JP (HL) scall SLOW or FAST
NEXT eeeeeoee
snow proceed
This routine works by looking up the appropriate address in the "Darameter table." Note that call- ing SLOW is really "going to SLOW mode" if it is available and work- ing.
The FAST/SLOW Keyboard Scan- ning program following is my preferred method of keyboard scan- ning. It is a copy of Sinclair's method and so has the same "feel" as obtained when entering BASIC.
The machine coding is cunning as it uses an apparently never- exited loop:
O04CF SLOW-DISP BIT 0,(HL) JR 2Z,04CF,SLOW- DISP The answer is that in SLOW mode, bit 0 of (HL) becomes set whenever a key is pressed,
This machine code routine also caters to multiple-keying and sets the debounce mechanism to its cor- rect value. Note the routine is set up to return the character code of the unshifted key being pressed. It is printed using a D7 instruc- tion only for for convenience of the demonstration.
19 REHM iSSAREGPTSOR LS RASS PaSGeID AS567S9G 122456 S& REM NOL ENTER THE ROUTINE
s& LET ra
S2SSFCEDABSS4 OCECOFDCESBS6SEFFS22 FLOCDEDO?TSGEGAGTSDTCS™
40 FOR f=2 Ta 36
SO FORE iSSistA, Rs fifOPe ASlAax S-23 -BE} +COHeE Ass {e223 -BS
&G NENT &
¢ REM NOL COLL THE ROUTINE
BCROLL RAND USER 26514 GOTQ Lee
Logan, Skellingthorpe, England
‘SLEBAGCBVPECCS9@2RACBE4
Imagine building your own computer for only $79.95!
That’s exactly what you can do with the ZX81 kit. It comes with all the parts you need and complete diagrams and in- structions for putting it together. All you have to supply is soldering iron, solder, and a screwdriver. Plus, of course, a little bit of work.
But you get a lot more than several hours of kit-building fun. You also get a surprisingly powerful personal computer. The ZX81 hooks up to any TV for a 32- character by 24-line display (we provide the connecting cables). You can also use a standard cassette recorder to store your programs (again, we provide the cables).
Most important, you get a BASIC pro- gramming language that’s powerful enough to challenge and interest the most experienced programmers. The ZX81 can handle multidimensional string and numerical arrays. It has full mathe- matical functions accurate to eight deci- mal places. Single-key entry for every command. Syntax error detection, de- bugging codes, and easy editing. Plus
features that are ideal for creating games,
such as 20 graphic symbols, continuous
Build your own computer for $79.95
nee Cat NOE ae were
The Sinclair 7X81 personal ae kit
display, and random number generator.
The ZX81 can be expanded too. You can increase the memory from 1K to 16K with our Memory Module for $49.95. And you get a comprehensive manual that completely documents the capabili- ties of the ZX81, and teaches program- ming from the ground up.
In short, you get all the features that have made the Sinclair ZX81 the fastest selling personal computer in the world. And you get the satisfaction and fun of building it yourself.
A few years ago, this kind of computer power was simply unavailable to the individual. Even today, most personal computers are too expensive to buy for personal use.
But the ZX81 kit can be yours for only $79.95. Take advantage of this unique offer today. To order, send the coupon along with a check or money order. Or for faster delivery, call our toll-free number and use your MasterCard or VISA.
To order call toll free: 800-543-3000. Ask for operator #509. In Ohio call: 800-
582-1364; in Canada call: 513-729-4300. Ask for operator 4509. Phones open 24 hours a day, 7 days a week. Have your
MasterCard or VISA ready.
These numbers are for orders only. If you just want information, please write: Sinclair Research Ltd., 2 Sinclair Plaza, Nashua, NH 03061.
[ 40 CODE | MAIL TO: Sinclair Research Ltd., One Sinclair Plaza, Nashua, NH 03061. PRICE* QTY. AMOUNT
ZX81 Kit
16K Memory Module
| Shipping and Handling
| Name
[Adaress
Sinclair technology is also available in Timex/Sinclair computers under a license from Sinclair Research Ltd.
— | jm | oo | — ||
SIMPLE 4K-8K ROM SWITCH
I received the 8K ROM upgrade for the ZX80 and was disappointed to find that I could not load pro- grams in integer (4K) BASIC. I interchanged ROMs, and of course, I soon bent some terminals. Faced with the prospect of many hours of rewriting, I decided there had to be a better way. There is! In the Sept. 1981 Microcomputing is an article entitled "DOS Mod" by Scott King. Borrowing his idea, here is how to run integer and 8K BASIC in your ZX80 without unplugging ROMs.
First, be aware that static electricity can instantly destroy ROMs; observe these precautions while working with them. Both you and the surface you work on must be grounded. Attach a flexible copper wire to the central screw holding the face plate of a grounded wall receptacle. Strip 2" of insulation off the free end. Keep this wire in contact with your body during the modification procedure. Loop the bare end around your wrist, or ankle or tuck it in your shoe, but remember to unwind when you leave the work bench! Next, spread a sheet of aluminum foil over the working surface,
You will need a grounded (3- wire) solder iron witha fine tip (less than 1/8" diameter), needle nose pliers and fine wire cutter and stripper.
Use an ultra-miniature single- pole switch you can fit inside the ZX80 case when mounted on the lid. Radio Shack sells a Suitable part. You will also need electronic-grade roSin-cored, fine-gauge solder and 9" of 30 gauge insulated wire.
Remove the cover of the 2X80. Use a small screw driverto lift the ROM from its socket by prying up not more than 1/32" at each end.
Each ROM is coded at one end with a recess, dimple or dot on the top surface. Arrange this feature to point away from you. Pin #24 is now furthest away and to the right
of the key-feature. Gently bend this pin up using needle nose pliers. Do not lever against the ROM package, rather, squeeze the bend in the terminal to straighten it. Repeat for the second ROM.
Pin #24 is Vcc or the positive power supply for the ROM. Switching current to this terminal activates, and interrupting, disables the ROM.
You received your 8K ROM with terminals imbedded in conductive black foam. If you still have it, use it for the next steps.
Insert one ROM into this foam pad up to the shoulders of the terminal. Place the second ROM Piggy-back as shown in the drawing. Align the pins carefully and make sure the lower ROM pins spread out- ward to contact the socket. Tack the ROMs together except at the two pins #24. Use an absolute minimum of solder. Do not allow solder to run below the shoulder of the lower ROM pins or you can't re-insert the assembly in its socket. The foam helps control the solder. If you are unsure about this step, try it on old ICs.
Inspect for shorts and remove excess flux with a Q-Tip dipped in alcohol. Vodka will do. With the key-pad closest to you, the dimple on the ROM packs should point away leaving the two pins #24 to your right. Re-insert the dual ROM assembly in its socket.
Check your connecting switch for size. There should be room to mount it inside the 2X80 case just "north" and slightly "east" of the ROM assembly. Make sure that with the switch mounted and lid closed nothing touches the PC board! I needed to trim about 1/16" off my switch terminals.
Mark the switch position on the lid and drill a mounting hole. in the latter. I sawed about 1/4" off the toggle to reduce its protrusion from the case surface. Mount the switch; this locates it with the lid laid beside the 2X80, about 3" from the ROM assembly.
Software Breakthrough!
Cut three 3" lengths of 30 * covey as gauge wire. Strip and tin 1/16" of “a. each end. * Joystick +i
Leading into the ROM socket at $1495 4 ia pin #24 find a wide printed circuit 2 r xe conductor run. Quickly solder one sdk chacnrad a wire to this run on the PC board. mea a Don't overheat the PC board. The $69 qo other end of this wire goes to the %* Keyboard i i common, usually central, post on $7495 x.
the switch. Connect the other two fullsize assembled
wires between each switch pole and panera ae é; She tho ins. 124 cea cking oue econ RUNS WITHOUT ANY HARDWARE MODIFICATIONS
1) Use with or without our joysticks. 5) 100% Machine Code * 2) Real time Animation r the ROM assembly, | ae aaa anus Carefully replace the 2X80 lid 4) Auto Run 8) 16K Required
taking care not to pinch or break a wire. Power-up your system and see THE INNOVATORS which switch positions correspond ARE COMING
to integer and 8K ROMs. I suggest you disconnect your power supply Call or Write for more information
pefore switchi ng between ROMs. You American Express, Visa, Master Charge, Money order, pc (allow 2-3 weeks to clear) can not, of course, load a program iiitcis eatin Goce cade a alee tal into RAM and then switch ROMs. Visit our Showroom 10:00 - 6:00 Monday thru Saturday
MICROCOMPUTERS PLUS, INC. Martin Oakes, Freeport, IL | : GALESBURG. IL 61601 PHONE: (309) 342-9572
if viewed from a distance. To change the bird's speed, change the PAUSE statements (lines 45 and 55). If you delete 45 and 55, it resembles a bat.
Mike Hastie, Concord, MA
This listing is printed on CAI's 40-column printer in regular mode. For a full review of the printer, see page 20.--AZ
ut ut
FLYING BIRD
This short 8K routine shows how to put graphics in motion. It displays a flying bird, seen best
PRODUCTS THAT SUPPLEMENT NATURE’S COMPUTER
WE HAVE THE PRINTER
The MW100 is the only plain paper printer available in the U.S. for the Sinclair ZX81, at $119.95.
. .. provides hard copy reports for permanent records . .. produces hard copy of program listings, useful when writing programs .. . prints 16 characters per . .. connects to the rear of line, lets you print every- the computer, so you can thing on the screen with plug in RAM pack as well The MW100 easy to use software . ..uses 134” plain paper and commands ...full instructions supplied a standard ribbon cartridge ; . .. uses the standard ZX81 . ..comes with a 14 day . ..is an impact, nota ther- printing commands: L List, money-back trial period and
mal printer L Print, and Copy. a 90 day warranty.
WE HAVE THE PROGRAMS
MATRIX PLANNER-16K An “electronic spreadsheet” that replaces your paper and pencil. In the home, use to establish, maintain and revise the family budget. In the office, use for financial forecasts, engineering cal- culations, productivity anal- yses, pricing, estimating and production scheduling. Hardware required: 16K
SPACE INTRUDERS-16K Play the world famous arcade game! Defend your position with three laser guns under your command. 40 alien ships in each squad- ron, defeat one squadron, another will follow. Action
TO ORDER
QUANTITY ITEM
DATA BASE/FAST FILE-16K
Anall-purpose business ori- ented filing and reporting data-base manager. Ideal for maintaining personnel files, catalogues, expense accounts, controlling sales leads and keeping accurate client records. At home, use for Christmas card lists, family health and dental records. Hard-
ware required: 16K
GULP-16K
Everyone’s favorite game of maze pursuit and counter- pursuit. Try to escape from the relentless ogre through five different maze formats. At the same time, accumu- late points as you gulp everything in your path. Quick reflexes a must! Hardware required: 16K
Complete ae a form below and mail to: MINDWARE,
70 BOSTON post @ WAYLAND, MASSACHUSETTS 01778
ITEM PRICE TOTAL
ADVANCED MACHINE CODE MONITOR-16K Here is the tool to help you direct your machine through the forest of machine code and hexadecimal. Test machine-code instructions in operation. Examine the ROM and see how any BASIC statements you write are stored in the RAM. Comes with a detailed
user manual. Hardware required: 16K
CHESS-1K
Displays board positions and keeps separate records of plays made. Hardware required: 1K
You can pay by check, Visa or MasterCard.
Fill in your complete address in detail and include your zip code. Please allow six to eight weeks for printer delivery.
PAYMENT METHOD
MW 100 PRINTER $119.95
MW 100 SHIPPING PRINTER TOTAL
MATRIX PLANNER
DATA BASE/FAST FILE
L] CHECK ENCLOSED VISA
ia MASTERCARD
ACCOUNT NUMBER
1 E:
GULP
ADVANCED MONITOR
EXPIRATION DATE
SPACE INTRUDERS
SOFTWARE SHIPPING
SOFTWARE TOTAL
TOTAL PRINTER AND SOFTWARE
MASS. RES. 5% SALES TAX
TOTAL
SIGNATURE
NAME (PLEASE PRINT)
ADDRESS
CITY
STATE
ZIP
_
DEAR EDITOR
I wrote a small machine code monitor for my 1K 2X81. Everything works fine but I must go back and forth to BASIC to get into and out of FAST mode (cassette operations only execute in fast mode). How can I do this within my monitor? Clark A. Calkins, Walnut Creek, CA. To call FAST: Jump to OF23. This is a ROM subroutine, ended by RET. To call SLOW: Call OF2B which jumps to 0207 which returns follow- ing 0226.--KO
The newly released Fujitsu MB8416 2Kx8 bit random access mem- ory makes it easy to expand the Sinclair "on-board" RAM to 2K. Since the MB8416 has the same 24- pin configuration as the 4118 RAM, just move jumper Ll to the L2 posi- tion and insert the new RAM in exactly the same position as the old one.
If your ZX81 comes with two 2114 RAMS, replace the 18-pin socket at the IC4a position witha 24-pin one (try the Augat 524AG11D or the Radio Shack 276-1989 sock- et). (SYNTAX suggests uSing a 28- pin socket around the existing 18- pin socket.--KO) Then move the jumper and install the new RAM, Don't bother removing the second 18 pin socket at the IC4b position, just leave it empty. Be careful not to lift the printed circuit foil when removing sockets.
This change is easy because Fujitsu's MB8416 is a static RAM. It does not need the extra pins required to refresh dynamic RAMs like the 4816 (not to be confused with the Fujitsu MB8416) recom- mended by Sinclair for expanding ZX81 memory. So you don't need a new IC socket if a 24-pin one is already installed. Also the static RAM appears to be easier to get to work properly than the dynamic type (see Jan.82, p.12).
Some readers may find parts available only at distributors with large minumum orders. Most dis- tributors will waive this rule if you pay for everything in advance, including postage if necessary.
New England readers should call Comp Rep Associates, Westwood, MA at 617-329-3454 for information on stocking distributors nearest them. Others can contact Fujitsu Microelectronics 1841 Hicks Road, Suite D, Rolling Meadow, IL 60008, 312/934-6400 or Fujitsu Microelec- tronics, 2985 Kifer Road, Santa Clara, CA 95051, 408/727-1700. One MB8416 costs about $13.50 and the socket between 79¢ and $2.85 de- pending on the type you get.
William D. Jordan, Boston, MA
P.S. I have just discovered that besides MB8416, Fujitsu makes an even cheaper RAM, the MB8128. It sells for $11.50 each in quantities of 1-24. It is equivalent to both the Fujitsu MB8416 and the Hitachi 6116. I tried one in my Sinclair ZX81, and it works quite well.
The MB8128 is a very good value since it costs slightly more than half the price of comparable RAM's offered for the Sinclair ZX81. When ordering, use the full catalog number, MB8128-15. The -15 stands for 150 ns access time, adequate for this purpose.
Is it possible to disable the SPACE-key interruption feature during critical stretches of code?
Is it possible to disable screen clearing for the CONT command?
C. Alfred Spencer, Franingham, MA
Put your critical routines in machine code and call them with the USR function. The BREAK function will not work until you return to BASIC. I don't know how to prevent screen clearing after CONT. Try using SCROLL to avoid CONT.--KO
I'm a confused newcomer and would appreciate help! What is the meaning of the numerical value of the Syntactic Sum? For example, in VoOl.2 no.12 p.l7 is a sum of
"53215, 8K". 53215 what? It can't be 53.215 bytes. What then does it mean?
Julian M. Goldman, Brooklyn, NY
The 8K Syntactic Sum program adds the codes for every byte in the computer's BASIC program area. This sum changes if any character, keyword or line length changes. So if you type 1 where we typedI, you'll get a Syntactic Sum differ- ent from the one we publish. Any change except reversing two letters alters the sum.
8K Syntactic Sum was first published in Jun.81; 4K in Feb.81. If you don't have a copy, send us an SASE. See also Fred Nachbaur's letter following.--AZ
When using the 8K version of Syntactic Sum on ZX81s, the machine must be in FAST mode when calling the subroutine with PRINT USR 17376 (or 32736 with 16K RAM.) If the subroutine is called in SLOW mode, the machine invariably crashes. Switch to FAST before entering PRINT USR 17376 (or 32736 for 16K).
If your BASIC program contains a SAVE command, the Suntactic Sum will be less than its true value by 128 before the SAVE command has been executed. This is because after the SAVE is executed, the last character in the label changes to its inverse form (see ZX81 manual, p.81). So to use Syntactic Sum to verify correct entry after typing in a program, first make the computer execute the line(s) containing SAVE before calling the SS routine. Or man- ually change the last character in SAVE statements to inverse video.
Finally, the oriqinal Syntac- tic Sum article warns against typing NEW after Program 2 has run.
13
On the ZX81, you may use NEW to your hearts content once the Syntactic Sum program is safely tucked away beyond RAMTOP (see ZX81 manual chap.26). NEW clears memory only up to RAMTOP; since the computer has been fooled by Step l into thinking it has 31 bytes less than it actually has, NEW will not remove the ML program. To erase Syntactic Sum, POKE 16388,0 and POKE 16389,68 (or 128 for 16K), then NEW. Or simply reset the computer by pulling the plug.
Fred Nachbaur, El Monte, CA
I am working on an add-on for my Microace with 8K ROM to enable it to use the SLOW mode. It ap- pears to work, but with one big defect: in SLOW, all characters are printed with the bottom part above the top part. I would like to hear from anyone who has any idea on how to solve this problem. If I ever get the circuit to work, I will send plans for it it SYNTAX so other people with a Microace or ZX80 can use ZX81 software.
Jason Harper, Rt. 1 Box 3, Sylvester, TX 79560
ZX80 owners--can you help? ATTENTION SUBSCRIBERS
Some makers and distributors of ZX-related and other products have asked about mailing literature to SYNTAX subscribers. We think you would find some of these products useful or interesting.
However, we consider your name and address to be private. If you would not like to receive litera- ture in the mail, please inform us in writing. Send your letter to SYNTAX, RD 2 Box 457, Harvard, MA 01451. If we do not hear from you, we will presume that you would like to receive information from other manufacturers, distributors and publishers in the mail.--AZ
NUMBERS HELD INEXACTLY ON THE ZX81 (Fifth and final part of a series) FOR-NEXT Loop Counters:
The use of non-integral FOR- NEXT loop counters is a powerful facility. The principles discussed previously should help you use them as your servant, not your master. For example, how would you
amend this loop to print the inte- gers 0-10? Before reading the answer, RUN this routine and try to work out what is wrong:
10 FOR X=0 TO 1 STEP .1
20 PRINT INT (10*X;
30 NEXT X One answer is: FOR X=0 TO 1.05 STEP .1 PRINT INT (10*X+.5)
30 NEXT X This illustrates that floating- point systems (like the 2X81) require you to slightly over- or under-state numbers to make the
10 20
arithmetic work. The amended line 20 rounds to the nearest integer; amended line 10 overstates the loop limit a littl2 for safety.
You will often need to round an integer N yet again for safety by LET N=INT (N+.5).
Last Note:
I mentioned a subtraction quirk. Even with the amended ROM, 332-1 rounds 53 hey ont32 rounds to 2%t?4,
PRINT 14+2**-32-
gives 4.6566129E-10 (WHICH “is: 2° "=, not 2 7“); .5 is held as (1/2)- (1/293, but PRINT (1/2)-.5 gives
2.3283064E-10 (which is not 2 but 2°“; and so on. No doubt this "rounding" was done to save bytes. Now you have enough informa- tion, I hope, to be able to cope with it, and not be thrown. By the way, 2>“-l is given accurately by 2**32-2+1. Frank O'Hara,
Surbiton, UK
Surrey,
ZX81 OWNERS with 16K RAM! IT'S READY--~ARE YOU?
FI couse $14.95 + If_so, you get: : *24-row/full-screen displays *Nearly 2K of machine code for FAST real-time graphics *A\ 4K Star Atlas as the moving backdrop during enemy engagements
*Q-each fuel and skili levels that are interlocked for more "reality" *4 ways to lose---no fuel, no oxygen, no gun power, or no shields. 1 way to win---destroy ALL enemy craft. *An enemy data generator imbedded in the run as part of the "action"
*"Blink"-less pauses in BASIC
*Stick-on/peel-off custom keys
*In-depth booklet explaining both the "game" and the program
*Shipped on a certified cassette 1 copy each side
Greenville, SC 29608
PO Box 3522
DELTASOFT/Osterfeldstr.79D/D-2000 Hamburg 54 GER)
16K Programs for either ZX80-8K or ZX81
*PLANE FRAME-modelling for engineers
*FUNDAMENTAL ANALYSIS-for stocks investors
*POLSAT & GEOSAT-space age Ham Radio uses
*MATH PAK-Routines & Fit, Variance Analyzer, Statistics, and RPN Calculator
: *E.S.P-test your precognition *Many others plus 6 1K 6-paks including Machine Code
WRITE for free catalog. (In
Europe, send U$1 bill or DM2 stamp:
| ZETA Software/PO Box 3522/Greenville,SC 29608 lEnclosed is $ Eli eto| eae CO | ene ee | for —— copy(ies) of SCOUT FIGHTER ZX81 16K pe lus $2.50 S&H for the order.
| NAME
| ADDRESS
| CITY/STATE/ZIP
Please allow 4 weeks if paid by check.
14
MC PROGRAMING: PUSHING AND POPPING (Part 7 of a series)
In the 4K (ZX80) ROM, the System Variables are at addresses 16384-17423. When processing input Or program lines, the Z80A central processor uses the IY register pair "indexed" at 16384. In other words, the system variables area is IY's storage for control data.
While you can use any RAM address for data storage, avoid these addresses:
1- 16384-16423 System Variables
2- An address-pair that must hold a line number for a statement (such as 16424-16425--first program line)
3- Any address-pair to be displayed.
ZX80s won't accept a statement without a "function" so the only place left to store data and machine code subroutines is in REM lines, preferably at line l.
However, addresses are not the only place to store data. Regis- ters hold data without needing addresses but only 10 pairs are available, so the 280 keeps regis- ter-stored data in the Stack.
This Last In-First Out "box" is an ideal place to hold transient data during processing. But while it is the easiest storage area to use (only two l-byte instructions to access it), it is also the easi- est tool to crash your MC program.
Unfortunately, ZX80 already stores data in the registers you'll want to use. If you "erase" cer- tain data...ZAP! Scrambled screen.
Solution: PUSH a register pair before you use it and POP it before RETurning to BASIC. PUSH means put data onto the Stack; POP means pull it back off. The com- mands for these functions are of the form PUSH qq and POP qq where qq is a register pair (IY, IX or another). Check Appendix A of the ZX81 manual or a 280 programming book for codes. Three rules:
1- PUSH the register pair before
SYNCHRO-SETTE
FOR THE ZX-80 & ZX-81 8K ROM 1K- 16K GAMES-EDUCATIONAL-BUSINESS GRAPHICS-TUTORIAL-ETC.
24 HR HOTLINE - 800-543-1300 IN OHIO - 800-582-1364 Ask for operator No. 383
12 monthly issues - 6 bi-monthly cassettes containing at least 6 programs each
“== $39.50 —|
ILL. Residents add $2.07 tax outside USA add $10.00 S$&SCO.
388 West Lake Street ¢ Addison, IL, 60101
(312) 628-8955
you use it.
2~ POP the data back into the correct register pair before RETurning to BASIC (C9).
3- Make sure you have one POP for each PUSH: don't push more data than you will POP, and don't POP more data than you have PUSHed.
Remember the Last In-First Out
rule: each time you PUSH data, it
goes on the top of the Stack. When you POP it, it comes off the top of the Stack,
Next month: CP TESTS FOR BRANCHING
Jon Bobst, Zeta Software, PO Box
3522, Greenville, SC 29608-3522
CORRESPONDING ADDRESSES FOR 2X81: Systems Variables 16384-16508 First BASIC line No. 16509-16510 Also, Sinclair warns against using A',F',IX,IY, and R register when using SLOW mode. When you return to BASIC, you must be sure ITY¥=4000h and I=001Eh.--KO
TIC TAC TOE--4K/2K
This game runs on a 4K ROM with at least 2K RAM. Enter the program and RUN. Choose who goes first (input starting with a Y=Yes; anything else=No) then enter the number of the square you want to mark. The ZX80 displays your move and itsown. Its first two moves are chosen at lines 650-750. All others are forced or random. When the game ends you can play again.
Lines 180, 190 and 200 contain directions for entering graphics (eg., line 180: type 3 spaces, shift Q, 2 spaces, shift Q, and 2 spaces in the quotation marks with no extra spaces or commas).
Raymond Fowkes, Coalinga, CA
10 CLS
20 PRINT ,"TIC TAC TOE"
30 PRINT
40 PRINT "DO YOU WANT TO GO FI RST?"
50 INPUT A$
60 LET Q=CODE (A$) =62
70:4ELS
80 PRINT ,"TIC TAC TOE"
90 PRINT
100 PRINT
110 LET X=1
120 GO SUB 180
130 GO SUB 210
140 GO SUB 180
150 GO SUB 210
160 GO SUB 180
170 GO TO 240
180 PRINT ,"3sp shiftQ 2sp shiftQ 2sp"
190 PRINT ,"1sp";X;"1sp shiftQ" ;X+1;"1sp shiftO";X+2;"1sp"
200 RETURN
210 PRINT ,"ShiftF 2shiftw"; CHR$ (133) ;"2shiftW33";CHR$ (133); "Qshiftw"
220 LET X=X+3
230 RETURN
240 RANDOMISE
256 LET A=0
260 LET C=-1
270 LET P=-1
280 DIM C(4)
290 300 310 320 330 340 350 360 370 380 390 400 410 420 430 440 450 460 470 480 490 500 510 520 530 540 550 560 570 580 590 600 610 620 630 640 650 660 670 6 80 690 700 710
DIM P(4)
IF Q THEN GO TO 860 LET Y=RND(5) *2-1
GO TO 780
IF C<1 THEN GO TO 530 FOR B=0 TO C
FOR D=0 TO C
LET X=C(D)
LEP Y=C(B)
GO SUB 1030
IF Z THEN GO TO 510 GO SUB 1050
GO SUB 1070
IF PEEK(A)THEN GO TO 510 GO SUB 1190
PRINT "--I WON--"
PRINT "PLAY AGAIN?" INPUT A$
IF CODE(A$)=62 THEN RUN
LIST
NEXT D
NEXT B
FOR B=0 TO P FOR D=0 TO P LET X=P(D) LET Y=P(B) GO SUB 1030 IF Z THEN GO TO 630 GO SUB 1050 GO SUB 1070
IF PEEK(A) THEN GO TO 630 GO TO 820
NEXT D
NEXT R
IF C>-1 THEN GO TO 680
LET Y=5-2* (P(0)=5)
GO TO 780
IF C>0O THEN GO TO 770
IF NOT Q THEN GO TO 730
LET Y=1
IF E=1 OR F=6 OR E=8 OR P(0
)=6 OR P(0)=8 THEN LET Y=9
vm,
IF ABS (E-P(0))=8 OR (E AND
P(0))=3 THEN LET Y=RND(4) *2
720 730 740
GO TO 780 LET Y=10-C(0) IF (E/2)*2=E OR E=10-C(C) T
HEN LET Y=5
750 }*2 760 770 780
IF C(0)=5 THEN LET Y=9+(E=9
GO TO 780 LET Y=RND(9) GO SUB 1050
790 800 810 820 830 840 850 860 870
880 890 900 910 920 930 940 950 960 970 980 990 1000 1010 1020 1030
LET Z=Y
GO SUB 1240
IF PEEK(A) THEN GO TO 770 GO SUB 1190
LET C=C+1
IF C>3 THEN GO TO 1000
LET C(C)=(Z-29-(2/70) *45) /3 INPUT E
IF E<1 OR E>9 THEN GO TO 86
LET Y=E
GO SUB 1050
LET Z=Y
GO SUB 1240
IF PEEK(A) THEN GO TO 860 POKE A,6
POKE A+1,6
POKE A+18,8
POKE A+19,6
LET P=P+1
LET P(P)=E
IF P<4 THEN GO TO 330 PRINT
PRINT "--TIE GAME--"
GO TO 460
LET Z=( NOT X<Y OR Y=X-5-10
TiS) OR Va 10= (i45* (225):) * 2.08
(X/2)
/2)) 1040 1050 1060 1070 1080 1090 1100 1110 1120 1130 1140 1150 1160 1170
*2=xX AND (Y=5-X/2 OR Y=10-X
RETURN
LET Y=Y*3+29+((¥-1) /3) *45 RETURN
LET X=X*3+29+((X-1) /3) *45 LET Z=2*Y-X
GO SUB 1170
IF A THEN GO TO 1150
LET Z=2*X-Y
GO SUB 1170
IF A THEN GO TO 1150
LET Z=(X+Y) /2
GO SUB 1240
RETURN
LET A=(Z=32 OR Z=35 OR Z=38
OR Z=86 OR Z=89 OR Z=92 OR Z=14
0 OR 1180 1190 1200 1210 1220 1230 1240
Z=143 OR 2=146)
RETURN
POKE A,3
POKE A+1,6
POKE A+18,133
POKE A+19,2
RETURN
LET A=PEEK (16396) +PEEK (1639
7) *256+2
1250
SYNTACTIC SUM:
RETURN 27909, 4K
GRANDSON OF BIG CHARACTERS
John Filley's Son of Big Char- acters (Feb.81) works only on 4K ROM. Here is an update for 8K ROM/1K RAM. The graphics charac- ters are now in a logical order, so you need no REM statement. But, the Boolean operators AND, OR and NOT no longer operate as bit mani- pulators as in John's program (ie., Q AND B). Lines like 100 and 102 replace these operators.
This program can display 2 lines of 16 characters in 1K. For inverse video, add 128 to line 110:
110 PRINT CHRS (ABS (128+C+4*D +2*E-F*135));
William Wentz, Rio Rancho, NM
NOW AVAILABLE
keyboards
Standard Computer Keyboard Designed for ZX81, ZX80, & MicroAce
e« Same switches used on Apple Computers ¢ Two shift keys «¢ 6-inch space bar
t 2 3 4 S567 8 5 O WE R f ¥ Uo 6
A S$ 0 F GH 5 KL
ZX CV 8K mM
Plans for keyboard conversion with reverse video — $5.00 Keyboard with complete parts and plans — $55.00 Wired keyboard, complete with plans — $75.00
Shipping Charge (by UPS) — $5.00
SEND CHECK OR MONEY ORDER TO: SEND SASE FOR INFO Prices Subject To Change
L.J.H. Enterprises
P.O. Box 6305. Orange. CA 92667 (714) 780-1422 Visa & M/C Accepted
IMPROVED DATA INPUT
The way the ZX81 accepts input during program runs is not great compared to most computers. This subroutine improves input using INKEYS. Use it in your programs to enter data at any screen position instead of the bottom line. Data stays on the screen after entry. The subroutine gives a blinking cursor to show the current entry position and you use RUBOUT and NEWLINE (ENTER) as usual.
As noted in SYNTAX, subrou- tines run faster when placed at the beginning of a program. It's par- ticularly important that this sub- routine be the first thing ina program, or you get a noticeable delay when pressing keys. The only line before this subroutine should
18
be a GOTO to the main program start. In fact, the subroutine begins after the RETURN because the first lines are executed only once.
Use GOSUP 400 instead of INPUT statements. A blinking block cursor appears on the screen at the cur- rent print position (determined by the last PRINT statement). Enter data, using RUBOUT to erase the previous character. Use NEWLINE or ENTER to end the data string. The subroutine returns the input data in the variable CS. This is a string variable, so if you want numeric data, use the VAL function to convert it.
Lines 190-230 wait for a key- press and blink the cursor. When you first call the subroutine Pl and P2 are set to the current screen print position by PEEKing the system variable S POSN. S POSN (at 16442) holds a value equal to 33 minus the current column and (at 16442) to 24 minus the current row. P3 switches between 1 and 0 using the NOT function to generate the cursor. Line 320 prevents exiting the subroutine without a keypress other than NEWLINE.
Nels J. Anderson, Chestnut Hill, MA
288 LET CS =CS+AS
272 PRINT AT PL. P2: As
18@ LET Pe=Padi
49@ IF INKEYS<3"" THEN GOTO 196 S@02 LET PO=sNOT PS
SLA IF INKEYS<)"" THEN GOTO 24m S28 PRINT AT Pi, Pe, CHR (Posies ¥
230 IF INKEY&S="" THEN GOTO 2e¢ S4@ LET AS=INKEYS
SS@ IF Ag="" THEN GO;u 288
S68 IF RBS<s"3F" THEN GOTO 168 278 FF COPE Ae=12S THEN GOTO 32 is
FEO LET Of=t8ti TO LEN Cs-1)} QSOS PRINT RT PL,Pe;'"
SE@ LET Peoke-d
3220 GOTO i186
320 CF Cee" THEN GOTO 178
Explore the excellence of your ZX81 with a
ah il
MEMOPBK 64k memory extension for $179.95
Give your diminishing memory more byte.
MEMOPAK 64K RAM $179.95 The Sinclair ZX81 has revolutionized home computing. The MEMOPAK 64K RAM extends the memory of ZX81 bya further 56K to a full 64K. It is neither switched nor paged and is Directly Addressable. The unit is user trans- parent and accepts such basic com- mands as 10 DIM A (9000). !t plugs directly into the back of ZX81 and does not inhibit the use of the printer or other add-on units. There is no need for an additional power supply or leads.
Description of memory 0-8K ... Sinclair ROM 8-16K . . . This section of memory switches in or out in 4K blocks to leave space for memory mapping, holds its contents during cassette loads, allows communication between programs, and can be used to run assembly language routines. 16-32K ... This area can be used for basic programs and assembly language routines. 32-64K .. . 32K of RAM memory for basic variables and large arrays. With the MEMOPAK 64K extension the ZX81 is transformed into a powerful com- puter, suitable for business, leisure and educationai use, at a fraction of the cost of comparable systems.
Memory Extention Specialists
Memotech Corporation 7550 West Yale Ave., Suite 200 Denver, Colorado 80227
Ph. (303) 986 = 1516
MEMOPAK16K RAM $59.95 With the addition of MEMOPAK 16K, your ZX81 will have a full 16K of Di- rectly Addressable RAM. It is neither switched nor paged and enables you to execute longer and more sophisticated programs and to hold an extended data base.
The 16K and 64K Memopaks come in attractive, custom-designed and engi- neered cases which fit snugly on to the back of the ZX81 giving a firm connec- tion.
Free service on your MEMOPAK Within the first six months, should any- thing go wrong with your MEMOPAK, return it to us and we will repair or replace it free of charge.
Try MEMOPAK with no obligation You can use our MEMOPAK in your home without obligation. After 10 days if you are not completely satisfied, simply return it for a full refund.
Coming soon..... A complete range of ZX81 plug-in peripherals:
MEMOTECH Hi-Res Graphics MEMOTECH Digitising Tablets RS232 Interface
Centronic Interface and Software Drivers
All these products are designed to fit “piggy-back” fashion on to each other and use the ZX81 power supply.
Further information forthcoming.
| Yes! | would like to try the Memopak. | understand that if I’m not complete satisfied, | can return it in 10 days for a full refund. Price t Qty Amount
| O) Check
Memopak 64k RAM $ 179.95 | | O Visa Memopak 16k RAM | | O Mc Shipping and Handling : | | Act. No. [ et | | Name | | Street | | City State Zip ; | Me a a ea a al
HARDWARE REVIEW Product: CAI/O Board and 40-column Printer Model CAI/P40 From: CAI Instruments, 2559 Arbutus Ct., Midland, MI 48640, 517/835-6145. Price: CAI/O board $79.95 alone,
$69.95 with any CAI peri- pheral. Printer $119.95.
CAI Instruments has produced and documented an easy-to-use, relatively inexpensive printer and interface for 8K ZX computers. If you held off buying CAI's Widget, you'll find the CAI/0O- printer combination worth the wait.
As CAI's redesigned Widget, the CAI/O board has serial and parallel I/O ports plus CAI's prin- ter interface and tape controller. We only tested the board as it works with the printer. As a side note, the Widget has been stream- lined internally to 7 chips and 3 EPROM sockets on a Single board.
By ZX standards the printer is fairly large, about 10x7x2". Hook-up could not have been easier. The CAI/O board, needed to run the printer, plugs onto the rear edge connector of the computer. Another connector accepts RAM, The prin- ter plugs into the wall for power and into the CAI/O board via ribbon cable. The simple directions re- quire no technical knowledge.
I had only two small problems: After a few hour's operation, the printer skipped characters in the middle of the paper. Also, my computer crashed with a program loaded but not running crashed after 2 hours. CAI replaced I/0 board and printer quickly and the second units have worked perfectly for over a week.
ZX81 keyboard printer commands don't work with CAI's printer. You use USR calls to routines in the printer's internal software. For example, to print out a program in memory, type LET Z=USR 8195. Not as convenient as LLIST, but just as
effective. Six USR calls operate the printer in one of 3 modes: print with variable (like LPRINT), list program in memory (like LLIST) and screen dump (like COPY). Each of these 3 can be printed in either regular or enhanced mode, which is twice normal height. Check page 17 for an example of enhanced mode.
To print, the computer must be in FAST. Internal software creates 3 error codes not used by Sinclair to catch errors, so you won't crash the computer by making a mistake.
You get 40 print columns, which is wider than the ZX80/81's screen display. CAI sells the 4.2" thermal paper at $1.95/roll (but any thermal paper that size works).
Unlike the Widget, this board and printer don't eat up RAM. They work with 16 & 64K RAMS (the 16K pack needs no changes; for 64K cut out the 8-16K block--DIP switches set to 1-OFF 2-OFF 3-OFF 4-ON).
What I like about CAI's printer: It operates quietly (un- like Sinclair's). It can print in large characters. It is available now. And the documentation is easy to follow and provides simple tests of all functions.
What I don't like: Not being able to use the keyboard printer commands is moderately inconvenient at first, although I quickly memorized the most-used USR calls. Because of the layout of the CAI/O board's edge connectors, attaching these units to 8K ZX80s is un- wieldy. The design makes it tough to plug in the power jack. And the 40-column output means you won't get a program listing in screen format, which I find useful for proofreading. Also, the printer puts an extra space after some keywords like LET (see examples on pp. 9 & 17), again messing up the screen format.
But overall, these objections are minor compared to the benefits of these two units. I was very pleased with the performance of my CAI/O board and printer.--AZ
20
PROGRAM IMPROVEMENTS
Dave Tabor of Menlo Park, CA, sent this version of Leo Morgan's sort routine (Oct.81). It's two lines Shorter and avoids Leo's lines 80 and 130 by using an inverted space, which has a higher character code than any standard word. Add back prompts as in Leo's program for a user-friendly routine.
i@ INPUT wn
iS DIM Retin, 242 #0 FOR F=1 TOA N BS INFuY Aeer 3S@ NEXT §F
4@ FOR Yei To N 45 LET Feil
SS FoR M=2 FON SS IF AStK) eASth) THEN LET Fst 6&@ NEXT X
S5 PRINT ASIF: 7O LET AS TF: ="Ee 7S NEXT YY
CLASSIFIED ADS
Reach thousands of ZX80/81 owners! Send your ad, typed 35 char/line, with check to arrive by the 15th of any month for the next month's issue. Ads arriving after the 15th appear in the issue following the next unless you. request its return, Ads are $9 per line and must be resubmitted for each month. No phone orders or credit cards. We take no responsibility for adver- tisers. SYNTAX Classified Ads, RD 2 Box 457, Harvard, MA 01451.
DUNGEON OF DOOM and INTERGALACTIC TRADER.Two high-quality games that run on 16k.DofD is an action packed Adventure.IT is a game of cosmic Ssurvival.Send $7.95 to M.Brletic 1072 N.Sunset,Reedley,CA 93654 ***
For Sale; Sinclair 16K Ram Pack $50.00 W.B. Emery 2000 Burton Dr. Austin, Tx. 78741 ph.
(512) 445-0423
FIFTY NIFTY PROGRAMS FOR YOUR ZX81 Book has 50 Top Quality 1K programs w/instructions+comments. Full of GAMES/GRAPHICS/FUNSTUFF. ONLY $7.95 LEE CARTER Bx 246 Harrison ME 04040
21
RRKEKEKKEKRKEKRKEEREKREREKRKRREEREREREREERERER
A challenging and highly addictive new video game--LETTER RAIDERS, de- veloped by NON-TRIVIAL SOLUTIONS. The strategy is to capture each letter of the alphabet on a 24 x 32 grid without recrossing your path, Also available--LIFE, a simulation of biological systems, with high speed 48 x 64 graphics palette. Both well-documented games are written in machine language for the ZX81 with 16K. Order by mail or phone at $9.95 each from N-TS, P.O. Box 2941, Amarillo, TX 79105, 806/ 376-5723. Check, Visa, MC welcome. Watch for exciting new developments coming soon from NON-TRIVIAL
SOLUTIONS! RK KK KERR KRER EERE KR KEKE RREREREREREERE
***XDISCOUNT ZX-81 (1K) PROGRAMS*** (8)Programs on each 8.00per tape. Tape(l)games:Lunar Lander and more. Tape(2)Business:Salary,Markup% etc. Tape(3)Investment:InterestComp.etc. ROMAN SOFTWARE 788 MERCURY CIRCLE. LITTLETON COLO. 80124
ADVANCED SOFTWARE FOR 16K ZX8l's!!! ZX-FORTH, ZX-CALC (Spreadsheet), ZX- FILE, ZX-BUDGET, ZX-PLAN(Personal Calendar), ZX-INVENTORY. $20 EA. OR 3 for $50 or all for $100. Softek, Box 4232, Santa Fe, NM 87502-4232,
FREE business and personal software - hardware CATALOG for ZX80/81 and M.Ace. Send a SASE to: M.C.Hoffman P.O. Box 117, Oakland, N.J. 07436
2K Memory Hm6116 Static Ram Chip 12.50 &1.00 shipping 28 Pin Solder Tail Socket .95 & .50 Shipping Send Check or MO to: M. S. P.
PO Box 187 New Windsor,Md. 21776
Direct from the author.-Air Mail Understanding your ZX81 Rom Sinclair Rom disassembly partA $15 Sinclair Rom disassembly partB $17 U.S. Personal cheques/money order
Accepted. Ian Logan, 24, Nurses Lane, Skellingthorpe, Lincoln LN6 OTT, UK
KKK KITS ** KITS ** KITS ****
LIGHT PEN: draw and erase right
on your TV screen with this magic
wand. Eliminates PRINT & PLOT !
SUPER GRAPHICS: Control every
DOT on your screen. Transfer any
photo image in minutes !
INTERNAL 6K MEMORY: Upgrade to 4
or 6K as you need it.Convenient!
CONTROL MODULE: 8 inputs-8 outputs
aad your own relays for ROBOTICS! Assembled 69.95 KIT 49.95
ANY PC BOARD 15.00 Easy software.
Write ZODEX, EAST HILL, Oakham,MA. KKKKKKKKEKEKEKK 0106Q RRRKKKRKKKKK
Tired of Playing? BUDGET PROGRAM for 8kROM 16kRAM on cassette.GET TO WORK! $10 To: BAXGRAFAX 322
Ladera#1ll Santa Barbara,CA 93101
Coming Soon!-"ZX81 Monopoly" (c) 16K RAM-up to 6 players-imported from the UK. Spanish Board Version. Savage Sortware P.O.Box 892
New Smyrna Beach, Florida 32069
BUFFERED BUSS/DEVELOPMENT BOARD for ZX80/81: $34=BARE. BOARD+ZX conectr+ Manual. $64=KIT. W/plans: Ram&port. Hundreds sold;no complaints. See ad in Sync. Prices to rise in Aug. UHF MODULATOR $15. Connectors $6. Send stamp for info,or order now. Prompt ship. COMPUTER CONTINUUM, 301-16 Av San Francisco CA 94118. (415) 7526294
COMPUSETTE is a C-10 Cassette which is especially designed for micro- computer application by TAPEMASTERS 25°f0r S20, 00 100 for $70.00 VISA MASTERCARD C.0.D. TX 214-349-0081**OTHER 800-527-1227 10% DISCOUNT for Check with Order P. O. Box 38651*Dallas, Texas 75238 FREIGHT PREPAID*DEFECTIVES REPLACED
LOWEST PRICE VIC 20 COMPUTER: $ 245 KM 1200 VIDEO MONITOR green 20MHZ
6 month unconditional warranty $ 75 For ZX 81 free adaptor & instructio n.call collect for VIC & Commodore oeripherials. checks or money order General Technology. 15 Exeter st Providence, R.T. 02906 401 274 8829
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS$ $ZX80/81 16K RAM Plug in and run.$ $ New product with super connectors $ Fully tested w/90 day warranty. $ $ ONLY $45.95 plus $4 shipping. $ $(Ca,add 6%Tx) Send check or MO to$ SAPROPOS TECHNOLOGY 350 Lantana$ $ Suite 821 Camarillo,Ca. 93010 §$ $ VISA or MC phone 805/482-3604 $ SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS$S$s
Coming Soon! "Trader Jack"
16K RAM - Imported from the U.K. Fantastic - Beats Rubic's Cube! Polynesian Trader - Inter Islands. Hazards, Profits, Losses, Storms. Savage Software PO Box 892
New Smyrna Beach, Florida 32069
ZX81-A DAY IN LAS VAGAS on cassette with HORSERACING STREET-CRAPS BINGO BLACKJACK RED-DOG ROULETTE BANDIT.
Quality+Action+Mult-Player Options
equals a lot of fun - ONLY $19.95. HI-TECH(a),47 Greenwood Cr, REGINA
SASK, CANADA, S4X 1G5
TURN ANY TV INTO A 7 FOOT SCREEN TV All games and TV more fun!EZ Kit$20 HENSLEY, BOX 334, ASHEBORO NC 17203
GRAPHICS pgms that make screen a playground. Sketch, Maze, Mandala, Round 'n Round. Fun for all. 16K ZX-81. Cassette. $15.00 ppd. SCREEN- MAKERS, 351 Badger, Guffey, CO80820
From the SYNTAX bookshelf: NEW! Laminated Microprocessor Instant Reference Cards for 280, 6502, 8080A & 8085A, 8048&relatives, and programmers' Algorithms ref. card, $5.95 each. Zilog Z80A CPU Tech Manual, $7.88; Assembly Lang. Pro- gramming Manual, $15.75. Crash Course in Microcomputers, $19. Pocketbook w/8K supplement SALE $10.95, back issues SYNTAX $4 each. All prices include shipping. SYNTAX, RD 2 Box 457, Harvard, MA 01451, 617/456-3661.
ZX80
EXPAND THE SINCLAIR WITHOUT LIMIT Interface to STD-Bus $79 A&T $29 BB AERCO Box 18093 Austin, TX 78760
22
SPECIAL3 PROGRAMSZX81SEND$1+SASE to PO Box 3073 San Jose,CA 95156
TEACHERS/PARENTS--4 pgms on tape for teaching pre-schoolers, Spec. Educ. students readiness concepts more/less, same/different, no. rec- Oognition, counting. Reports statis-
tics for your evaluations, IEP, etc. Fun ZX-81 graphics. Specify 1K or 16K version. $20 PPd. SCREEN-
MAKERS, 351 Badger, Guffey, CO80820
OUR POLICY ON CONTRIBUTED MATERIAL
SYNTAX invites you to express opinions related to any Sinclair computer or peripheral, or 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 and written in either Sinclair BASIC or Z80 machine code. 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. Programs submitted on cassette can be tested more quickly and with less chance of error.
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 (program published in Feb. 81 and Jun. 81; send SASE
for a free copy).
© What RAM size program requires.
© What ROM program uses.
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.
RRKEKEKKEKKEKKEKKEKKEKREKRRRRRRKRKEKKEKKKKKKEE
*FIND OUT WHAT THE SINCLAIR CAN DO* *The new TS1000/2X81/ZX80/Microace* *SOURCEBOOK lists 100s of programs* *books, and accessories from over * *60 manufacturers.ONLY $4.95+$1.25* *p&h. Send check or MO to Atlantic*
*Computer,POB 936 Norfolk,VA 23501* KEEKRKEKREKRREKRREKRKRRREKRKEKEEKEKKEERRKRKERKEREEE
** SALE ZX-81 CONNECTOR $4.75,5/$20 2K RAM-update to TS1000 RAM,S16.95 0-10 Port I/O ,D/A,A/D, 16-48 K RAM SASE gets details,add 50¢%/item P&H. POWERTRONIX 25E23 BAYONNE,NJ.07002
PUT THAT ZX81 TO WORK!! Low cost-
high performace software, explana- tions that enlighten. Free catalog. Tom Woods Box 64 Jefferson,NH 03583
TEXT EDITOR/WP, Other. D.O'Connell 1219W.Russell,San Antonio TX 78201
ZX81 TEE SHIRT-LARGE 3" RED LETTERS on blue quality shirt.$l0.ea. PPD
(S) (M) (L) (XL) .SHEEPSCOT PRODUCTS TOWNHOUSE RD. N.WHITEFIELD,ME 04353
Load Everytime with LED loader. Kit
$6+ $1 S&H. Play Gumshoe 8K/2K $2.50 +.35 S&H. R.H. Enterprises, 1408 N.
4th Ave., Newton, Ia.-50208
SE ESSE ESS SSE ST SSE ESS SSS ST ESS TS EET SS EES 2 SS GES SSIS OCS
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.
YES! Please send me 12 issues of SYNTAX for $29.
L] My check for $29 is enclosed. Make checks payable to: SYNTAX ZX80, INC.
(] Please charge my 1} MasterCard
LJ VISA CJ] Carte Blanche account
account number
(} Diner’s Club L! American Express
rights reserved. Photocopying
ZX819S
| | | i t I | !
12 issues, $29. Single issue, $4. exp. dale bank number (Mc only) | Signature
Publisher: Kirtland H. Olson ' ; N Titl Editor: Ann L. Zevnik aes si
Levees bane
Printed by Joseph E. Marhefka, Jr. ; ee a
Clinton Offset Printers ! Address Clinton, MA 01510 ' City State Zip
|
©) Syntax ZX80, Inc., 1981. All | Day Phone _( ) Evening Phone ( ) | i]
prohibited. ISSN 0273-2696
23
I own a L] Sinclair ZX80
|_J Sinclair ZX81 Telephone orders call
617-456-3661
T have a 44 key tactile feel key- board that plugs into ZX81 or TIME /SINCLAIR 1000 incldg. all graphics
(4keys=Edit, Delete, ", Functns) Price: $70(Mass. Res. add %5 sales
tax) Shpg. & Hndlg.=$4. Send Chk. or M.O,. tok,%,KEY; Suite 75; 711 Southern Artery;Quincy, Ma. 02169
Loading Problems? -- Our cassette interface is the answer. Complete system, 29.95. Phoenix Engineering Systems, 4240 Lakeshore Rd., Deck- erville, HMI. 48427
--- FANTASTIC SPACE WAR GAME ! ---- X-81 SPACE RAIDERS for 2X-81 w/ 16K ML graphic and math routines create fast, exciting, accurate simulation of space navigation and battle. $19.95 for cassette, manual, and keyboard overlay. NIRAD ELECTRONICS 959 East 460 So., Provo, UT 84601
RKEKKKKKKEKTHR FUNWARE CO. RRRKAKKKKK 1.LAND THE SPACE SHUTTLE 2.LAND/AIR BATTLE 3.SPACE BATTLE 4.HUNTMAN*ALL ZX-81/16KRAM ON QUALITY C-20 TAPES. EACH GAME $4.95 OR ALL FOUR $16.95. 7119 Santa Fe Av. Dallas, Tx. 75223
ZX81/1K listings: Bomb-destroy en- emy. Guess-guess No. using clues $1 +SASE to Mark Neirick, 9105 Hol- lyberry, Des Plaines, IL 60016
THE HARVARD GROUP
Bolton Road, Harvard, Mass. 01451
SYNTAX
24
"TSLE" A war game for 8K/1K Soldiers under your command must se cure foothold on enemy-held island, then move across it and take enemy stronghold.Not a simple prog. List- ing w/map,game instrs, and syntac~ tic sum for $2 CASH ONLY TIMESTOPPER, 31 East Mockingbird Ln Lawrenceville, GA 30245
LOW LOW LOW LOW LOW LOW LOW LOW LOW PRICES! Biorhythms 8K ROM/1K&up........1.00 Graphics Billboard 8/lup.......1.00 Horse Rate 8/7 1UDsiassi eines de SPINNER TM(like Rubik's) 8/16...2.00 Improved ZX81 PAUSE.......-++---1.00 Linear Regression 8/lup........2.00 SASE gets you our GOODIES CATALOG ORDER gets you !!FREE!! PROGRAM EZRA GROUP II EZRA GROUP II POB 5222 San Diego,California 92105
ADVENTURE-DRY GULCH. 16K Search for treasure in a ghost town. Written in BASIC, listable, can be saved in progress. $10 (NY add tax) UPSTATE LABS. 27 ELVIRA ROCHESTER, NY 14606
2 LISTINGS $1 BLACKJACK+SLOTMACHINE just like Las Vegas,Atgraphics 16K
MONEY BACK GUARANTEE Send $1 + SASE to: FLORIDA CREATIONS ,Dept S,PO Box 16422 Jacksonville,FL 32216 Thanks.
U.S Postage PAID
First Class
Permit No. 451
Harvard, MA
8