Skip to main content

Full text of "Compute! Magazine Issue 038"

See other formats


Constructing The Ideal Computer Gome 



COMPUTE! 

The Leading Magazine Of Home, Educational, And Recreational Computing 

Special Games Issue 



$2.50 
July 
1983 
Issue 38 
Vol. 5, No, 7 

£1.85 UK Sa25 Canada 

63J79 

ISSN 0194-357X 



Some Of The Finest 
Games Ever For 
VIC-20, 64, Atari, And 
Other Computers: , 
Roadblock, ih 

Castfe Quest, 
Goblins, And More! 

Circles: A—^ 
Machine Langua ge ; :s?' 
Tutorial For Atari ' 

Backing Up Your^ 
VIC-20 And 64 Disks 

REM Revealed: 
A Tutorial For 
PET, ViC-20, And 

PLUS: 

Build Your Own 
Data Manager, Star 
On The Radio Shack 
Color Computer, 
Gold Miner Game F 
The TI-99/4A 

7 



^74470"633?9" 




Major Feature: 
New Products At The 

OMDEX 
Dealer Show 



BUY A BAHAMA. 

SAVE A BUNCH. 

MORE TO COME. 





-r-. 



Leading Edse Products, (nc, 225 Turnpike StreH Canton; Massachusetts 02021. 
CaW: toll-free V800-343 6833. or in Massachusetts call collect (617) 828-8150 Telex 951 624 



FOR YOUR COMMODORE WORDPROCESSING NEEDS 

INVEST IN THE BEST 



i 



Professional 
Software .^.^,^^,0: 



>^»ff* 









PtUS 



PLUS 




WORDPRO PLUS. IN A OASS BY ITSELF. 



When choosing a Word Processor for your Commodore" computer, there's 
no reason to settle for anything but the best — in a word. , .WordPro"*. 

With over 30,000 happy clients churning out letters and documents all over 
the world, the WordPro Pius'" Series is unquestionably the #1 selling soft- 
ware package on Commodore computers! So when you choose WordPro, 
you know you're investing in a trial-tested program that's a real winner. And 
WordPro is NOW available for your Commodore 64™ computer— at prices 
starting as low as $89.95. 

Designed for the user who has no computer or word processing experience 
whatsoever, WordPro Plus brings a new dimension to the term "user- 
friendly." More than just easy to use. WordPro will turn your Commodore 
computer into a sophisticated time saving word processing tool — loaded 
with the same inventory of features found in systems costing much, much 
more. 

Our nationwide team of over 600 Professional Software/Commodore com- 
puter dealers will help you choose the WordPro Plus system that is best for 
your needs. Our full-service dealers have been set up to provide strong 
customer support, fn addition to helping you choose the right system, many 
Professional Software dealers also offer WordPro Plus training and system 
installation. 

Professional Software offers a complete spectrum of WordPro word process- 
mg software for Commodore computers ranging from the Commodore 64 to 
the more business oriented 8000/9000 series computers. And WordPro 4 
Pfusand 5 Plus also interact with ourdatabase management systems includ- 
ing InfoPro and The Administrator, So whatever your Word Processing 
needs, there's a WordPro system that's right for you. 

/VordPro" and WordPro Plus'" are trademarks of Professional Software Inc. 
rhe WordPro Plus Series was designed and written by Steve Punter of Pro Micro Software Ltd, 
Commodore'* and the Commodore 64" are trademarks of Commodore Electronics. Inc. 
Sealer inquiries invited. 



WordPro 3 P1us/( 




Invest in the best. . 

WordPro Plus. In a class by itself. 

Call us today for the name of the WordPro Pius dealer nearest you. 

Professional Software Inc. 



51 Fremont Street 
Needham, MA 02194 



(617)444-5224 
Telex: 951579 



aliens^Dur Kids can 

reasQii^^ 
instead of destim 





This year, thousands of kids will be 
searching for the most amazing thing 

At5pinnaKer, we don't believe in the 
"hill or be Killed" concept behind most 
connputer games. In fact we believe 
computer games should be instruc- 
tive, riot destructive. Butjustas 
importantly, they should be fun. 

That's why Ih 5EARCh OF THE MOST 
AMAZIMQ TMIhQ'^is designed to let your 
Kids negotiate with aliens instead of destroy- 
^0 ing them. Because given the opportunity 
im^ Kids enjoy using their minds. 
It's Amazingly Fun. 

The host Amazing Thing is out there 
^somewhere. Finding it won't be easy 
But relax, your Kids will have the 
I help of their old uncle 5moKe Bailey 
He'll give them a B-liner (sort of a 
cross between a hot air balloon 
- and a dune buggy) to use on their 
journey They'll have to learn how to 
fly the B-liner and navigate It through 
storms and fog. But before they do 
anything, your kids will have to talK to Old 
5moKe. he'll tell them about the Hire People 
and the strange language that they speak he'll 
also tell them to avoid the dangerous Mire 
Crabs and how to get fuel for the B-liner 

Your Kids will visit the Metallican Auction 
where they'll trade with the aliens for valuable 
chips. Your Kids will then use these chips to buy 
things they'll need for their trip. And your Kids 
will learn how to fly over the planet using their 
jet pacK. 

The Most Amazing Thing 
holds great powers, but it wi 
take great sKill, persistence 
and imagination to find it. 
Ifs Amazingly Educational. 
lh5EARChOFThEh05T 
AMAZIhQThlhC] is written by 
Tom 5nydec educator and 
author of the best-selling 
Snooper Troops'Detective 
Series. ___ 

And IlKe all Spinnaker games, IN 
SEARCh OF ThE MOST AMAZING ThlhCj has real 
educational value. For instance, your Kids wi 
sharpen their ability to estimate distances and 




quantities. And since theyll be navi- 
gating their B-liner, they'll become aware 
of distance, direction and time. They'll also 
develop a KnacK for economic and monetary 

principles through trading with the aliens. 

And they'll solve problems through trial 

and error 
They'll learn all of these things, plus they'll 

learn that nothing is impossible if you put your 
mind to it 
A Novel Approach to Computer C5ames. 

Besides offering your children all of the above, 
Ih SEAf^Ch OF ThE MOST AMAZIhCj Thlh(3 gives 
them an opportunity to develop their reading 
sKiils. Because included with the game is Jim 
Morrow's new novel The Adventures of Smoke 
Bailey* So your children wlil have hours of fun 
reading the book or playing the game. And 
they'll be learning at the same time. 
Parental Discretion Advised. 

If you're a parent who would rather see your 
kids reason with aliens than destroy them, 
you've got plenty of reasons to 
asK your local software retaiier 
forlMSEARChOFThEMOST 
AMAZIhCj ThIhCj. It's compatible 
withApple;- IBM/ Atari;-' and 
Commodore 64"* computers. 
And it offers so much fun you'll 
probably be tempted to play it yourself. 
Or you can write us directly at: 
Spinnaker Software, 215 First Street, 
Cambridge, MA 02142. 

You'll find this is one computer game that 
won't alienate you from your 
children 





s>inff^Mi^ER 



\Afe make learning fun. 



Apple, (AM fSnd AMf [ are fegistefed tradernarKf, of Apple Computer, Irvc, Irslematiorial Business hAcnJOCi Cwp and Atafi, inc, fespecttvcly Ct>mrnodore 64 is a irademarh of Commodore CtecUonics Umued 
© 1985 Stpinrvahef 5oltwafc Corp All rights reserved 







^vc.--.!^«s.'r 



^'^^ ,, o^^^^ r none Dt:^^ 






SS^Sgfess 



i^*'^&^.^s. 










pet*pr:v:/vKSfi\' 



^'''^■' Lra\s af^° ^«<; soc'r> 3^ 






o^v<^rfe^! 



:r>.^'^!,,e^v^«^'= 






























July 1983 Vol. 5. No. 7 



FEATURES 



30 Constructing The Ideal Computer Game, Part) ..,.,. Orson Scott Card 

42 New Products At The Comdex/Spring Computer Show ., . , Tom R. Ha!fhill 

98 Techniques For Writing Your Own Adventure Game ....Charles Perkins 

104 Game POKEr For VIC And 64 Dan Carmichael 



EDUCATION AND RECREATION 



54 RATS! ..,. , ..., MikeSteed 

^ Goblin .....DanGoff 

76 SpeedSki DubScroggin 

85 Castle Guest ...........Timothy G Baldwin 

92 The Fortress Of Adni I George W, Miller 

108 Roadblock , Brian Holness 

116 Time Bomb , DougSmook 



REVIEWS 



120 Copy-Writer Word Processor Louis F. Sander 

123 Mastertype Tjna Holcomb 

124 Claim Jumper For Atari Fred Pinho 

126 Courseware Report Cord And Educational Software Directory Sheila Cor/ 

128 Legionnaire For Atari E. P. McMahon 



COLUMNS AND DEPARTMENTS 



6 The Editor's Notes ., Robert Lock 

10 Readers' Feedback The Editors and Readers of COMPUTE! 

18 Computers And Society: TTie Fifth Generation .,..,... David D.Thornburg 

22 The Beginner's Page , .....Richard Mansfield 

28 Questions Beginners Ask Tom R. Half hill 

136 On The Rood With Fred D'lgnozio Fred D'Ignazio 

142 Friends Of The Turtle ,. .,....,.,.,. David D.Thornburg 

146 Learning With Computers: A Library At Your Fingertips Glenn M. Kleiman 

150 The World inside The Computer: Super baby Meets The Computer Fred D'Ignazio 

186 INSIGHT Atari , Bill Wilkinson 

192 Machine Language: Numeric Output Part III Jim Butterfield 

196 Programming The Tl: Planning Color Sets C, Regena 



THE JOURNAL 



156 How To Create A Data Filing System: Part L Choosing The Right File Type Jim Fowler 

160 How To Moke Backup Disks For VIC And 64 Harvey B. Herman 

165 Circles Jeffrey S. McArthur 

170 PET Uncompactor David L Evans 

172 Statistical Test Of Commodore And Radio Shack RND Brian Flynn 

178 How The VIC/64 Serial Bus Works Jim Butterfield 

200 Atari Sound Experimenter . , ,,,... Matt Giwer 

204 Commodore REM Revealed ......,...,...!!!!!!! John L. Darling 

212 VIC Musician Bloke Wilson 

216 Timex/Sincloir Screenscrolls ,..,.,.. , , Gien Martin 

218 Commodore64 Video -A Guided Tour, Part VI Jim Butterfield 

221 Atari Artifocting Judson Pewther 

224 All About The Commodore USR Command John L Darling 

230 Commodore Programmer's Alarm Clock Bruce Jaeger 

233 Stars , George Trepal 

235 Visiting The VIC-20 Video, Pari III Jim Butterfield 

239 Atari Laser Gunner II: AVerticol Blank Enhancement Thomas A Marshall 

242 Tl Mailing List ^ Doug Hapeman 

246 VIC Bitmapping C.D.Lane 

112 COMPUTEI's Author Guide 

132 How To Type COMPUTEI's Programs 

134 A Beginner's Guide To Typing In Programs 

252 CAPUTE! Modifications Or Corrections To Previous Articfes 

255 News & Products 

268 Product Mart 

272 Advertisers Index 



NOTl: See page 132 
before typing in 
programs. 



GUIDE TO ARTICLES 
AND PROGRAMS 



V/64 



P/64 
V/64/AT/TI/AP 
V 
AT 
T/S 
AT 
V 



AP/P/64 

AT/AP 

AT 



AT 



AT 
Tl 



V/64 

AT 

P 

PA//64/CC 

V/64 

AT 
P/V/64 

V 

T/S 

64 

AT 
P/V/64 
PA//64 

C 

V 

AT 

Tl 

V 



AP Apple, AT Atari, P PET/ 
CBM,VVIC-20,OOSI,C 
Radio Shack Color Com- 
puter, 64 Commodore 64, 
T/S Timex/Sinclatr, Tl Texas 
Instruments , *AII or several 
ofthecbova 



COMPUTE? The Journal for Progressive Computing (USi^: 537250) is published 12 times each year bv COMPUTE! 
I'ublic^tiuns, Inc., P,0. Box 5406, Greensboro, NC 27403 USA. Phone: (919)275-9809, Edilorial Offices'are located at 
305 Edwardia Drive, Greensboro, KC 27409. Domestic Subscriptions: 12 issues, S20.00. Send subscription orders or 
change of address (P.O. form 3579) to Circulation Dept., COMPUTE! Magazine, P.O. Box 3406, Greensboro, NC 
27403. Second class pt^stage paid at Greensboro, NC 27403 and additional mailing offices. Entire contents copvrieht 
© 1983 by COMPUTE! Publications, Inc. All rights reserved. ISSN 0194-357X. 



TOLL FREE 

Subscription 

Order Line 

800-334<0868 

In NC 919-275-9809 




EDITORS NOTES 



The Magazine Epidemic 

It's mildly distressing to observe 
the rash of new computer 
magazines in preparation or 
now being launched. While some 
appear to be the result of dedi- 
cated, sincere efforts at serving a 
market niche^ and serving it 
well, many seem to be efforts to 
simply get something on the 
shelf/ 

It would seem that every 
publisher, large and small, in 
the country has suddenly dis- 
covered the personal computer 
marketplace. We welcome those 
of you providing genuine reader- 
ship; we'll reserve comment on 
those of vou who are slapping a 
computer label on inferior edito- 
rial matter as a medium for 
selling advertising. We're firm 
believers in the inherent 
decision-making strength of the 
free marketplace. Time will telL 

The New Computers 

Will the surge of intelligent 
keyboards for game machines 
have a massive impact on per- 
sonal computer sales? We think 
not. With Atari, Commodore, 
and TI battling it out in the price 
trenches, we expect to see the 
less than $100 market begin to 
expand in the features area. 
Principal change: more memory 



at less cost. And we'll just keep 
growing from there. 

Random Bits 

IBM's home computer (code 
name Peanut) is now rumored 
to appear by August. We expect 
this baby PC to come in as a mid- 
market machine with superb 
design, lots of support, and a 
slightly high price point in the 
$600 range. From a marketing/ 
value added standpoint, the 
IBM name and reputation carries 
clout and has consimier impact. 
If and when it arrives, it will be 
an interesting competitor for the 
Commodore 64 and the soon-to- 
be-introduced Atari 600 and 
800XL. 

We hear that John Wiley, 
the book publishing house, is 
hard at work setting up a 
magazine staff to launch a per- 
sonal computer magazine. Atari, 
Inc. has decided to accept adver- 
tising in their users magazine. 
As with Commodore publica- 
tions, expect serious restraints 
on what type of advertising is 
allov^^ed. Rumor has it that Atari 
won't be accepting game soft- 
ware advertising. We find that 
one hard to believe. 

CBS is now looking for an 
entry into the computer maga- 
zine market. Rich Richmond, 



formerly Adventure Interna- 
tional Marketing Manager, 
prepares to launch an Atari 
magazine (should w^e sav 
"Another one..."?). All of this 
after unsuccessfully trying to 
raid COMPUTErs staff for several 
weeks. 

Commodore, now in the 
publishing business, has become 
distant with COMPUTE! and 
COMPUTE!' s Gazelle editors. 
We've always maintained that 
there's intrinsic value in 
independence. 

Next month: The Consumer 
Electronics Show and a flock of 
exciting new products. We just 
returned from the National Com- 
puter Conference in Anaheim 
and, as far as the personal/home 
market goes, it simply makes us 
long for the arrival of CES. One 
point worth noting: several 
hundred exhibitors at this multi- 
million dollar show were housed 
in quasi-permanent, infla table 
Quonset huts. Air conditioning 
failed and by late Monday, May 
16. internal temperatures ap- 
proached 115. So much for state- 
of-the-art technology at a state- 
of-the-art show. 




6 COMPirrei Juty1983 



ATARI" DOES MORE THAN ANYONE 

ELSE TO GIVE ^U TWD HELPFUL 

KINDS OF ODMPUTER SERVICE. 

LOCAL. LONG DISIANCE. 




" ' ,c„it: of your ATARI system is avait- 
..fOR INFORMATION CALL" 

AUTHORIZED SERVICE 

DIGITALWORLD.INC. 
''In Army Trail Rd. 



7U Arm fr 



/I' ' ,1 

/.foi^VIDEOCORR 



312-628-9222 



'^^fniAT-NWH.gh 
B%nngton, IL 3J2-382-3932 



RexTvstF 

6450 N. n^- 

"K? TV SEI 

18666 I J 

HofTtewoc 

RON'S TV « 

^ Joliet. IL 4 
OLEN'STvtr 



If you need someone to fix your ATARI® Video 
Game or Home Computer, youll find the best 
place is also the closest. 

We have over 1,600 ATARI SERVICE''^ Centers 
coast to coast; just look in the Yellow Pages under 
Video Games or Computers . 

And if you have any 
kind of question about your 



ATARI Home Computer— how to do something 
new with it, how to debug one of your own pro- 
grams, what kind of peripherals are best— call the 
ATARI Help Line and taD< to an ATARI expert. 
Our toll-free number is 1-800-538-8543.* 

At ATARI SERVICE, we 
take care of you. As well as 
your ATARI system. 



HiHmocnvHiC 



FACTORY mJHMZED NETWORK 



WE ANSWERXXfRCALL FOR HELP 



"California: 1-800-672-1404 



am © 1983 Atari, Inc. All Rights Reserved. 0*A Warner Communications Company 



Publ isher/t d itoM n -Cn ief 
Publisher's Asststont 



Robert Clock 
Alice S-Wotte 



Senior Editor 
Monagmg Edilor 
Assistant Managing Editor 
Production Editor 
Features Editor 
Tectinical Editor 
Program Edifor 
Assistant Editors 

Assistant FeaJures Editor 
Assistant Copy Editor 
Editorial Assistont 
programming Assistants 

Administrative Assistants 

CopyAssistonts 

Associate Editors 



P.O 



Richard Monsfield 
Ka'h.ieen E. Marti nek 
Tony Roberts 
Goii Walker 
TomR.Holthill 
Ottis R Cowpef 
ChoriesBronr^on 
Don CornriFchael 
Lance Elko 
John Blockfofd 
Juonfto Lewis 
KattiyYakol 
PatrckParrish 
Gfegg Peele 
Jdnathon B^d 
Vicki Jennings 
Lauro MacFadden 
Julia Fleming 
Becky Hall 
Sa rati Johnston 
Linda Sliow 
Jim fiuttertiefd, 
Toronto, Canada 
HoA/eyHerrrTon, 
Gf eensbof o, NC 
Fred DTgnozJo. 
2117 Coftef Ra S.W, 
RoarX)ke. VA 24016 
David Thornburg 
Box 1317, Los Aitos. CA 94022 



Contributing Editor 



COMPLfT^rs Book Division 

Editor 

Assistant Edilor 

Ad m in ist rative Assi sta nt 

Artist 



Onon Scott Card 
Stephen Levy 
Carol Eddy 
Janice Fa IV 



Art Di rector/Prod u cti on Manage r Geo rg ia Papadopoulos 



Assistant 
Artists 

Typesetting 
llfustratoi 

Promotion Assistant 
Production Assistanl 



trma Swain 
De Potter 
Jeon Hendrix 
Terry Costi 
HcrryBtair 
Todd HeinrrarcJ.' 
DoiRees 



Associate Publi slier/ 
N at iono I Ad ve rtisi ng 
SaSes Manager 
Advertising Coordinator 
Advertising Accounts 
Sales Assistont 



Andy Meehon 
Potti Williams 

Bon ni e Va f enti no 
Rosemane Davis 



Operation s-'Customer 
Service Manoger 
Assistants 

Dealer Coofdinotof 
Assistonts 



Shipping & Receiving 



Carol Lock 
Patty Jones 
Shannon Meyer 
Fro n Lyons 
Gail Jones 
Shoron Minor 
Christine Gordon 
Cossondra Robii^tson 
MarySprogue 
DofOttiyBogan 
Chris Potty 
Rhonda Savage 
LisaFloharly 
Corol Dickerson 

JirT\ Coward 
Larry OConnor 
CtifJs Coin 
John B. McConnel! 



Data Processing Manager 
Assistant 



Leon Stokes 
Joan Compton 



Accourifing Moriager 
Bookkeeper 
Accoun t ing Assista nts 

Assistants 



W Jerry Day 

Ellen Day 

Linda Miller 
Doris Holt 

Ruth Granger 
Anna Harris 
EmilieCovil 

Anne Ferguson 



Robert C. Lock President 

W. Jerry Day, Vice-President and Comptrolier 

E. Normon Groham, Vice-President ond General Counsel 

Kothleen E Martinek. Assistant To The President 

Sonjo Whitesell. Executive Assistant 

Debbie iSlash. Receptiordst 



Coming In August 

The Coming Year: 
Interviews With 
Industry Experts 

CES: The Fall Computer 
Collection 

Weather Forecasting On 
Several Computers 

Neat Numbers For VIC 

Z-0 Color Computer Art 

Atari Verify 

And Three Excellent 
Gomes 



COMPUTE" Publicattona Inc publishes: 



COI«»UTl~ 
COMPUTE! Books 



Tetephone: 919 275-9809 



Corporate office: 

505 Edwardia Drive. 
Greensboro. NC 27/109 USA 

MaJlirvg oddrasi: COMPUTEt 

Post Office Box 54(36 
Greensboro NC 27403 USA 



Subscription Infformatlon 

COMPUTE! Circulation Dept 
P.O. Box 5406 
Greensboro, NC 27403 

TOLL FREE Subscription Order Line 

800-334-0868 

In NC 919-275-9809 



COMPUTE! Subscription Rates 
(12 Issue Year}: 



us 



(oneyr.)$20 Air 



(two yrs.) $36 
(three yrs] S54 
Canada and foreign 
Surface Mail $26 



Europe, Australia $38 
Middle East, Central 
America and North 
Africa $48 

South America, South 
Africa Far East $68 



Advertising Sales 





GB & Assoctotes 

"Gordon Benson^- 
312-362-1821 



Phoebe Thompson 
and Assoc. 

Joann Suilivon 
^213-373-0397 



In British Columbia Canada 
Alosko or Hawaii coll 408-354-5553, 
Elsewhere In Canoda or outside 
North America call 919-275-9809 



V 



The Gittelmon 
Company^ 

/Al Dalton 
^ _?'Ruth Wjllioms 
Jr^617-451^0822 

le Oittelman^ 
Company / 

't Sharon Brodia 
Joe Porter, Mike Stanley 
/' '-'215-646-5700 
NY Metro 212 567-6717 



COMPUTE! Home Office 

/ Horry Blair 
!,_^Soythea stern Safes 
: 1 Representative _ 
\ t919-275-9809'*"^ 





COMPUTE! 
Home Office 

Andy Meehon 

National Advertising 

Soles Monager 

919-275-9809 



Ptioebe Thomp^son 
and Associates 

101 Church Street 
Suite 13 

Los GotosXA 95030 
PHOEBE THOMPSON 



Phoebe Thompson 
and Associates 

2556 Via Tejon 
Polos Verdes Estates, 
CA 90274 
JOANN SULLIVAN 



GB & Associates 

P.O. Box 335 
LibertyvJIle, IL 60048 
GORDON BENSON 



COMPUTE! 

Home Office 

505 Edwardia Drive 
Greensboro, NC 27409 
HARRY BLAIR 

Southeostern Sales Repfesentotive 



The Gitfeimon Company The Gitteiman Company Address all advertising materials to: 

Stotler Office Buildi ng Summit Office Center Potti Wi II iams 

7266 Summit Avenue 
Fort Washington, PA ^9034 
SHARON BRODIE 
JOE PORTER 
MIKE STANLEY 



Suite 518 

20 Providence Street 

Boston, MA 02116 

AL DALTON 

RUTH WILLIAMS 



Advertising Production Coordinator 
COMPUTE! Magazine 
505 Edwardia Drive 
Greensboro, NC 27409 



Authors of manuscripts warrant that oli materials submitted to COMPUTE! are originol materials witti full 
ownership rights resident in said authors. By submitting articles to COMPUTE!, outhors ocknowiedge that 
such materials, upon acceptance for publication, become the exclusive property ot COMPLfTE! Publica- 
tions, Inc. No portion of this magazine may be reproduced in any form without written permission from the 
publisher. Entire contents copyright •* 1983, COMPUTE! Publications, Inc. Rights to programs developed and 
submitted by authors are explained in our author contract. Unsolicited materials not accepted for publica- 
tion in COMPUTE! will be returned if author provides a self-addressed, stamped envelope. Programs (on 
tope or disk) must accompany each submission. Printed listings are optional, but helpful. ArticJes should be 
furnished as typed copy (upper- and lowercase, pleose] with double spacing. Each page of your article 
should bear the titte of the article, date and name of the author. COMPUTE! assumes no liability for errors in 
articles or advertisements. Opinions expressed by authors ore not necessarily those of COMPUTE!. 



P£T. CBM, VIC- 20 and CommodOfe 64 cue ncxJemoria of 

Comrrxxiofe Bustfiess Pitochinsi Inc. orxi/of Commtxlcxe Electronics Limrted 

ApQie IS a tTodemarit o* Apple Computef Componv 



ATAia li o tfodemoric of Atoix Inc. 

TI99/4A IS a tiodemofk oT Texas Instrunwnts. Irx:. 

ftadio Shock Cokx Compolef h5 o trodemork of Tondv. i 



8 COMPUTE! Jufy1983 





V 



Qz commodore 



CBM 



computer 




AN INFORMATION MANAGEMENT SYSTEM 
FOR YOUR COMMODORE COMPUTER 



InfoPro is a menu driven and interactive "information management" 
system for the Commodore 8032 computer, InfoPro uses "friendly" 
screen prompts that "guide" you from function to function. This 
makes InfoPro unusually easy to learn and just as easy to operate. 

For Mailing List applications InfoPro can print up to 8 labels across 
and even has a built in "structure" with fields already pre-set. This 
structure can easily be changed to fit many other types of office jobs. 

Another extremely powerful feature of InfoPro is Super Scan. The 
Super Scan feature acts like an "electronic filing cabinet" and pro- 
vides the user with almost instantaneous access to the data stored 
in a file. The powerful Report Generator allows you to "select" infor- 
mation for printing based on up to 5 different parameters or criteria 
and to perform various math functions. 

Another powerful and indispensable feature is InfoPro 's ability to 
interact with the WordPro family of word processing programs. This 
provides the user with a "link" from the area of data information 



WordPro and InfoPro are registered trademarks of Professional Software 



management to the area of word processing, allowing the user to 
manipulate, sort, and select data by certain criteria, which can then 
be inserted into "personalized" letters, documents, overdue notices, 
etc. InfoPro will also allow you to ADD, DELETE or CHANGE your 
information "fields" any time you wish. This means that as your 
business changes, InfoPro has the flexibility to change with it. 

As with all Professional Software products, InfoPro comes complete 
with a professionally written and fully-tested user oriented manual. 
InfoPro also includes a program ROM, and InfoPro System Diskette . 



Start managing your tnformatton today. 

Call us today for the name of the Professional Software dealer nearest 
you. 

Professional Software Inc. 

51 Fremont Street 
Needham, MA 02194 
Tel: (617) 444-5224 
Telex: 951579 



READERS' FEEDRACK 



The Editors and Readers of COMPUTEi 



64 Screen Problems 

I own a Commodore 64 computer. While I am 
quite pleased with its performance, there is a prob- 
lem. Any program that uses the BASIC commands 
GET or INPUT causes severe interference in the 
form of many white (silver) horizontal lines which 
shoot across the color TV screen. 

I also purchased some software (namely The 
Word Machine and The Name Game) from Commo- 
dore and these programs exhibit that same, quite 
annoying, problem. I might add that three friends 
here in Albany who also own the C-64 have the 
exact same problem. I have heard that Commo- 
dore replaced a video chip in the later models (of 
which mine is one) and that there are problems 
with this new chip. 

My question is: will Commodore solve what 
may be a very large (in number of computers) 
problem? My warranty is close to expiration. 

Donald G. Weiser 

This is probably the question we're asked most about the 
Commodore 64. The problem that you are referring to 
has come to be bwwn as ''sparkle/' 

The problem starts zcith the 64' s character ROM, 
and the sparkle is caused by the way the 64 generates its 
characters to put onto the screen. 

However, this problem can he more than a were 
inconvenience in the early machines. It can cause diffi- 
culties with some programs, especially ganws. When 
utilizing the advanced 64 Sprite features (user defined, 
moveable objects), the sparkles can cause the computer 
to register a sprite collision when none has occurred. 

There are some solutions. Oiw is to make a fetv 
hardware modifications inside the 64, but this solutioti 
isfroioned upon by Commodore, ami may void your 
loarranty. Another is screen relocation. It is said that if 
you relocate the screen memory into another area of 
RAM, the sparkle will disappear. 

As for the intmber of units plagued by this problem. 
Commodore's estimate is five percent. It should be iwted 
though, that ahuost all of the early nmdels had sparkle, 
and as of this writing the problem is apparently still not 
solved. As a matter of fact, COMPUTE! recently pur- 
chased txvo 64s for testing purposes, and one has a very 
severe "sparkle" problem. 

In answer to your question on repairs, Commodore 
has no set policy in this area. For units that are under 

10 COMPUTEi July 1983 



warranty, Conn}iodore says that it "will attempt to repair 
anything ?p/7/? which the customer is dissatisfied. 

Conceriiijjg units out of warranty, Commodore 
had no comnunit. However, a number of computer 
dealers and repair centers have stated that they will 
install the jww or updated character ROMs if they can 
get them froin Comnunhre. Commodore has said that 
they have not yet decided whether or not they will make 
the ncio character ROMs available to the service centers. 



ATimex/SinclairTip 

I have sometimes experienced problems on my 
ZX81 while changing line numbers. A line 30 that 
I am unable to delete, for instance, might appear 
after a line 2000. As a solution of sorts, 1 came up 
with the following short routine (also applicable 
to the T/S 1000) which allows me to locate the line 
in memory and POKE in a valid line number. 
This routine gives the location in memory of a 
program by line number. RUN it by typing GOTO 
9500 - After INPUTing a particular line number, it 
will tell you the length of that line and how long 
the program is through the end of that line. As 
you can see in the sample run, the portion of the 
program considered here is 516 bytes long (inci- 
dentally, line 1 will not work in this test). 

John B. Swetland 



1 LET TEST=9500 

10 LIST 

9500 PRINT "ENTER LINE NUMBER" 

9502 PRINT 

9503 INPUT AQ 

9504 LET N=16509 
950 5 LET N=N+2 

9506 LET N=N+(PEEK N)+ ( PEEK (N+1) *256 ) 

9507 LET N=N+2 

9508 IF (PEEK N*256 ) -i-( PEEK(N+1 ) )=AQ THEN 

PRINT r "LINE ";AQ?" STARTS AT ";N 

9509 IF (PEEK N*256 ) + ( PEEK (N+l ) ) =AQ THE 

N GOTO 9511 

9510 GOTO 9505 

9511 PRINT 

9512 LET I=(N+50) 

9513 FORR J=N TO I 

9514 IF PEEK J=118 THEN PRINT *'LINE ";AQ;" 

ENDS AT ";J 

9515 IF PEEK J=118 THEN GOTO 9517 

9516 NEXT J 

9517 PRINT 



Look to the future with . . . 



^is the *1 selling printer Interface for VIC20® and 
*--' Commodore 64 computers because It works. 



The "CARD/PRINT" works with all 
of these parallel printers without 
any modification to the printer: 
Epson MX-80 & EPSON MX-100 
(with or without GRAFTRAX+), 
EPSON FX-80. EPSON FX-100, 
STAR MICRONICS DP 8480, 
STAR MICRONICS GEMINI 10. 
STAR MICRONICS GEMINI 15, 
PROWRITER,C-ITOH8510, 
STARWRITER, SMITH CORONATP-1, 
BYTEWRITER, MPI 88, MPI 99. 
DATA IMPACT D-92, OKIDATA 80. 
OKIDATA 82, OKIDATA 83, 
OKIDATA 84, OKIDATA 92. 
OKIDATA 93, TRANSTAR 130, 
TRANSTAR 140. IDS MICROPRISM. 
IDS PRISM (IDS printers require 
IDS cable P/N 603-673-9100), 
MENNESMANN TALLY MT-160, 
MANNESMANN TALLY 1000. 
NEC 8023, AXIOM GP- 100. 
TANDY CGP-1 15 PRINTER/ PLOHER 
and many more. 




INCLUDES ALL NECESSARY PLUGS 
CABLES AND HARDWARE 
REQUIRES NO SOFTWARE DRIVERS 
JUST PLUG IT IN AND PRINT 
ALL FUNCTIONS ARE UNDER USER 
OR PROGRAM SOFTWARE 
CONTROL 

ADDS SEVEN NEW COMMANDS TO 
INCREASE PRINTER FLEXIBILITY 
SOFTWARE SELECTABLE ASCII 
CONVERSION AND GRAPHICS 
MODES 



NOTICE: CARDCO, Inc. is now 
offering the "PRINTER UTILITY 
PACKAGE" tape based program 
for use with our interface, a 
VIC 20" or a Commodore 64 and 
a Star Gemini series, and Epson 
MX or FX-80 or 100, or a 
PROWRITER printer. These 
programs include a machine 
language high-res screen 
dump, facilities to print 
Commodore graphics, and 
several sizes and styles of the 
"BANNER HEADLINE" type printing 
all for $19.95. 



See a complete line of American made Cardco Products at a computer store near you, today. 



313 Mathewson • Wichita. Kansas 67214 • (316) 267-6525 



■ V1C20 is a registered trademark ol Commodore Inlemotional 



cardco, inc. 



y 



Can A COMPUTER MAKE YOU CKf? , 



Right now; no one knowsThis is 
partly because many would consider 
the very idea frivolous. But it s also 
because whoever successfully ans- 
wers this question must first have 
answered several others. 

Why do we cry? Why do we 
laugh, or love, or smile? What are the 
touchstones of our emotions? 

Until now, the people who asked 
such questions tended not to be 
the same people who ran software 
companies. Instead, they were 
writers, filmmakers, painters, musi- 
cians. They were, in the traditional 
sense, artists. 

IS We're about to change that 
tradition.The name of our company 
is Electronic Arts. 

SOFTWARE WORTHY 
OF THE MINDS THAT 

USE IT. We are a new association 
of electronic artists united by a com- 
mon goal — to fulfill the enormous 
potential of the personal computer. 

In the short term, this means 
transcending its present use as a facili- 
tator of unimaginative tasks and 
a medium for blasting aliens. In the 
long term, however^ we can expect 
a great deal more. 

These are wondrous machines 
we have created, and in them can be 
seen a bit of their makers. It is as if 
we had invested them with the image 
of our minds. And through them, we 
are learning more and more about 
ourselves. 

B We learn, for instance, that we 
are more entertained by the involve- 
ment of our imaginations than 
by passive viewing and listening. We 
learn that we are better taught by 
experience than by memorization. 
And we learn that the traditional 



distinctions— the ones that are made 
between art and entertainment and 
education — don't always apply 

TOWARD A LANGUAGE 

OF DREAMS. In short, we 
are finding that the computer can be 
more than just a processor of data. 

It is a communications medium: 
an interactive tool that can bring 
people's thoughts and feelings closer 
together^ perhaps closer than ever 
before. And while fifty years from 
now, its creation may seem no more 
important than the advent of motion 
pictures or television, there is a 
chance it will mean something more. 

Something along the lines of 
a universal language of ideas and 
emotions. Something like a smile. 

The first publications of Electronic 
Arts are now available. We suspect 
you'll be hearing a lot about them. 
Some of them are games like you've 
never seen before, that get more 
out of your computer than other 
games ever have. Others are harder 
to categorize— and we like that. 

Watch us. WeVe providing 

a special environment for talented, 
independent software artists. Its 
a supportive environment, in which 
big ideas are given room to grow^. 
And some of Americas most re- 
spected software artists are beginning 
to take notice. 

We think our current work reflects 
this very special commitment. 
And though we are few in number 
today and apart from the main- 
stream of the mass software market- 
place, we are confident that both 
time and vision 
are on our side. 

Join us. 
We see farther. Electronic arts 



m 











Software ARTISTS? 'Tm not so ^ 

sure there are any software artists ytt" 
says Bill Budge/* We've got to cam that 
title." Pictured here are a few people 
who have come as dose to earning it as 
anyone we know 

That's Mr. Budge himself, creator 
of PINBALL CONSTRUCTION 
SET, at the upper right. To his left are 
Anne Westfall and Jon Freeman who, 
along with dieir colleagues at Free Fall 
Associates, created ARCHON and 
MURDER ON THE ZINDERNEUF 

Left of them is Dan Bunten of 
Ozark Softscape, the firm that wrote 
M. U. L.E.To Dans left are Mike Abbot 
(top) and Matt Alexander (bottom), 
authors of HARD HAT MACK. In the 
center is John Field, creator of AXIS 
ASSASSIN and THE LAST GLAD- 
IATOR. David Maynard, lower right, 
is the man responsible for WORMS? 

When you see what they've accom- 
plished, we think you'll agree with us 
that they can call themselves whatever 
they want. 



9518 PRINT"LINE ";AQr*' IS ";J-N;*' BYTES L 

ONG" 

9519 PRINT 

9520 PRINT J-16509;" BYTE PROGRAM (PLUS D 

IMS)" 
9600 STOP 

9990 INPUT H$ 

9991 SAVE"TEST" 

9992 GOTO 1 

9509 IF (PEEK N*256 )+(PEEK (N+l ) )=AQ THEN 

GOTO 9511 
9513 FOR J=N TO I 

Sample Run 

ENTER LINE NUMBER 
LINE 9600 STARTS AT 17020 
LINE 9600 ENDS AT 17025 
LINE 9600 IS 5 BYTES LONG 
516 BYTE PROGRAM (PLUS DIMS) 



Thank you for this handy tip. We can see where this 
program might also be useful in handling machine Ian- 
guage routines. 

VIC Memory Loss Cure 

When using programmable characters, you lose 
some of your present memory. Is there any way 
to regain that memory without turning off the 
VIC? 

Brian Gaetjens 

YeSr and it can be done tvith a few easy POKEs. The 
most common way that monory is reserved for pro- 
grammable chnraclers is by POKEing locations 51 and 
52 (the "pointer" for string storage in RAM), and 
locations 55 and 56 (the pointer for the limit, or "top/' 
of memory). In the unexpanded VIC, the most common 
ivay to reserve character set space is to: POKE 57,0: 
POKE 55,0: POKE 5228: POKE 56^8. This will 
reserve, or partition off, 512 bytes (enough for 64 pro- 
grammable characters) at the top of BASIC RAM, leav- 
ing the programmer with 3069 bytes for BASIC pro- 
grams. To )'esel the VIC to its original parameters, 
)ype: POKE 5h0: POKE 52,30: ^POKE 55,0: POKE 
56,30. This will restore the VIC to its original 
configuration, and give you 3581 bytes for BASIC 
programming. 

Monitor Sound 

I currently have a 48K Atari 800 with a PERCOM 
disk drive. I would like to connect my computer 
to an RGB color monitor instead of a TV, But in 
doing so, I would lose all audio. Is there a way to 
have the sharpness of a color monitor and yet 
retain the sound capability necessary for the 
majority of Atari programs? 

John C. Nardi 

First of all, check the particular brand of color monitor 

you intend to buy. Some monitors do have a built-in 
audio capability. Other solutions would be to connect 

14 COMPUra* July 1983 



the audio output signal (pin 3 of the Atari's numitor 
plug) to your stereo system, or to an iiwxpensive, 
battery-powered amplifier available at nwst electronics 
supply houses. 

An Atari/Commodore 64 Connection 

Can an Atari 810 or other Atari disk drive be in- 
terfaced to a Commodore 64? I am thinking of 
buying a 64 as a second computer and would like 
to use my present Atari peripherals on the 64. 
Also, can the 64' s SID sound chip be hooked up 
to an Atari? 

David Lee 

Both machines could communicate oi^er a telephone 
modem hookup. Alternatively, you could Iux}k them up 
directly using Commodore's RS-232 cartridge and 
Atari's 850 interface module (through its RS-232 piort). 
You would likely be unsatisfied, though, at the slow 
rate by zohich data would be transferred between the 
two computers. Likewise, attempting to connnuiiicate 
to the SID chip from the Atari would be azokward. The 
whole ivould probably be less than the sum of the parts 
if you tried to gang these compmters together and think 
of them as a team. 

Atari and Commodore use very different peripheral 
buses (interface plugs). Although both have a serial 
bus, the 64 uses a variant of the popular RS-232C bus, 
while the Atari uses a complex serial standard. 



VIC Disk Details 

1 own a Commodore VIC-20. I need a disk drive 
now, but I do not want to get a 1541 because I 
may upgrade to a PET in the future and do not 
want to buy a whole new drive. If ! use a VIC to 
lEEE-488 interface to a 2031 drive, will I retain all 
the standard Commodore disk commands? Will I 
need DOS for the 203] or the 1541? Please help. 

Larry Abramowitz 

You will retain all of the standard commands. One of 
the main reasons for the manufacturing of an lEEE-488 

interface is for upgrade adaptations like the one you're 
contemplating. There are several such interfaces on 
the market nozv. DOS is buill into both the 2031 and 
the 1541. 

Automatic BASIC To Machine 
Language Converter 

Is there anything on the market that will convert 
standard BASIC programs into machine language? 
I need this for my Commodore 64 and its graphics. 

Ben Savage 

Your question is about speed: a program written in 
machine language can run a thousand times faster than 
the same thing programmed in BASIC, Some games, 



r>- 



*'>VANce 



'iNDen 



REFINED LUBRICANT 



E^*^ 







You can wait for industry standards 

to mandate improved performance. 

Or you can have it now on IMaxell. 

Tiie Goid Standard. 



The refinements of The Gold Standard, from 
oxide particles to lubricant to jacket, are uniquely 
Maxell. And therefore, so are the benefits. F^'ff^m^ 

Our unique, uniform crystals assure dense |J1^^ 
oxide packing. So you begin with an origi- 
nal signal of extraordinary fidelity. A signal 
we safeguard in ways that leave industry 
standards in our wake. 

An advanced binder bonds oxides 
to the base material preventing time 
and money-wasting dropouts. 
Calendering then smooths the sur- 
face for a read/write signal that stays 



clear and accurate. And lubricants reduce fric- 
tion between head and disk for a longer media 

and head life. To house it, we then 

constructed a new jacket heat- 
resistant to MO'' F to withstand drive 
heat without warp or wear. And 
created the floppy disk that 
leads the industry in error-free 
performance and durability. 

All industry standards exist to 

assure reliable performance. 

The Gold Standard expresses 

a higher aim: perfection. 




maxell 



IT'SWDRTHIT 

Computer Products Division. Maxell Cofporotion of America, 60 Oxford Drive, Moonachie, N J. 07074 201-440-8020 



large sorting tasks, and other kinds of computation 
require that the computer run at maximum velocity. 
That means machine language. 

There are large programs called compilers which 
do something similar to what you loant. They take a 
BASIC program apart and generate a high-speed version 
written in "P-code/' a fast-running language similar 
to forth. You can expect a ''compiled" BASIC program 
to run anywhere from 10 to 40 times faster. One minor 
drawback is that the compiled program will usually be 
someiohat larger than the original BASIC version. 

There are also ''optimizing" compilers which, 
during the process of compilation iiito P-code, also re- 
arrange the program's structure to maximize efficiency. 
For example, the most commonly used variables in the 
program might be stored in zero page (the computer's 
first 256 memory cells) where storage and retrieval is 
far faster than it would be higher up in memory. 

In any case, there is no way to turn BASIC pro- 
grams into true machine language. You might want to 
use compilers for some programs, hut also learn to pro- 
gram in machine language for those situations when 
speed is of the essence. Compiler programs for various 
computers are advertised in COMPUTE!. 

Retirement Planning 

I read with interest the article in COMPUTE! on 
retirement planning (April 1983). It is reassuring 
that retirement planners are finally acknowledging 
that inflation may be here to stay. Unfortunately, 
the program assumes that inflation will stop on 
the day you retire. A pleasant assumption, but 
one that could result in a lot of retirees who may 
not be able to afford subscriptions to COMPUTE! 
ten years down the road. 

1 have found the following program extremely 
useful for computing with my Atari 400, how 
much capital I would actually need in order to 
retire early. The program assumes: 

1, That inflation will continue at a constant 
rate, and your yearly expenses will increase at 
this rate. 

2. That you wish to spend your capital after 
retirement, 

10 



?"ENTER CAPITAL AT RETIREMENT": 

INPUT A:? 

?"ENTER EXPECTED RATE OF INFLATION" 

INPUT B:? 

?"ENTER YEARLY ANTICIPATED RETURN 

ON INVESTMENTS AFTER TAXES AND 

INFLATION:INPUTC:? 

?"ENTER YEARLY EXPENSES LESS ANY 

INDEXED PENSION PLAN OR SOCIAL 

SECURITY BENEFITS":INPUT D:? 

?:?"YEAR";/INCOME";/'CAPITAL" 

Y = 
INC= INT(D*(1 + B/100)'^Y) 

Y = Y+I 
Z = B + C 

90 A = INT(A*Z/100 + A)-INC 
100 ?Y,INC,A 



20 



30 



40 



50 
55 
60 
70 
80 



110 IF A<0 THEN ?"CAPITAL EXHAUSTED":END 

120 GO TO 60 

Craig Cole 

More Atari Automation 

I'm writing in response to Joseph Wrobers pro- 
gram, "Automate Your Atari" (January 1983). 
The following program neatly displays your disk 
directory (in two columns if necessary) each time 
you boot up your system. Just run "Automate" 
and enter each line below for each command. For 
example, command #1 would be 10 GR.O: DIM 
N$(17):T.60 and command #8 would be RUN 
without a line number. Since "Automate" counts 
characters, all spaces have been removed, end 
quotes are left off where possible, and abbrevia- 
tions are used. 

Rainer Forsch 

10 GR.0:DI^4N$(17):T.60 

20 P0S.2,3:PRINT"FIL£S CONTAINED ON THIS 

DISKETTE ARE: 
30 O,#1,6,0"D:*,*":PRINT 

40 I . # 1 ; N$ : PRINTN? : T=T+1 : 1 FT=14THENG0S * 70 
50 G,40 

60 POKE82,2:PRINT:POS.2,20:NEW 
70 POS.2,4:POKE82,20:PRINT:RET. 
RUN 



PET Pause 

While trying out one of Commodore's Model 8032 
microcomputers, I stumbled upon a key function 
which would be handy for program debugging. 1 
mentioned it to one of my instructors at Wake 
Forest, and he suggested that 1 share it with your 
readers. 

Stopping program listing or execution can be 
useful for finding statement errors or viewing 
intermediate results of a calculation. Formerly, 
the only way to stop a program and the screen 
scroll was with the RUN/STOP key. This necessi* 
tates typing in the CONT command and pressing 
RETURN in order to resume execution. However, 
if the program is stopped by means of the colon 
key on the top row, scrolling may be resumed 
merely by tapping the back-arrow key, which 
also serves to slow the scroll if held down. 

Interestingly enough, if a pure timing loop is 
running, the colon key will not halt execution. 
However, inclusion of a PRINT statement in the 
loop will enable the colon/halt function, 

Jonathan Kerfoot 



COMPUTE! we koines questions, coJinuents, or 
solutions to issues raised in this column. Write to: 
Readers' Feedback, COMPUTE! Magazine, P.O. 
Box 5406, Greensboro, NC 27403. COMPUTE! 
reserves the right to edit or abridge published 
letters, " @ 



16 COMPUTll July 1983 




of The Hundreds of Reasons 
You Ought To Be A COMPUTE! 

Magazine Subscriber: 



From "Tlie Editor's Feedback" Card, a monthly part of our continuing 
dialogue with readers of COMPUTE!. These are responses to the question, 

"What do you like best about COMPUTE! ?" 

l*"It is written so a beginner can read and understand it... it's layman oriented..." 8* 
"Clear, clean layout, good presentation..." 3. "The Atari game programs..." 4*"Best 
and most information on PET..." 5."Cover to cover, and all in between..." 6,"Reviews 
of software and hardware..." 7. "Good balance of application and technical articles..." 
8. "It is the best source of info about various levels of VIG/PET/CBM machines and ap- 
plications.. " 9. "The BASIC and machine language programs..." 10, "I Uke programs 
that can be typed into a computer, 3?un, and then used right away (a program without 
bugs!)..." ll,"That it is organized weU, and covers a broad range of information con- 
cerning Atari. Keep it up! please, I'm learning..." 18. "Table of contents listings and 
computer guide to articles is a great idea. Best magazine for personal home computer 
users..." 13. "Best I have fotind for VIC info..." 14. "Informative articles: ^Secrets of 
Atarf, Game programs, especially programs that teach the reader about the Atari..." 
IS. "I like all the articles and programs for my computer, the PET. IVe learned and 
found out things about it that I never even thought existed. Other magazines don't 
have too much material for the PET and, for that reason, I find COMPUTE! invaluable..." 
16."The up-to-date hardware reviews..." 17.'*Maclilne language utihties for Atari..." 
18."Articles are terse but understandable and accurate. Utility and applications pro- 
gram listings very helpful..." 19 ."The April, '82 issue is my first. I am impressed that 
you not only acknowledge the VIC-20,you even have applications for it..." 20»"I really 
enjoy (since I am one) the Beginner's Page..." 81. "The attention it gives to Atari and 
the easy-to-understand language it's written in..." 88. "It is concerned with ex- 
plaining programs, not just listing them. It is the best VIC magazine I could buy..." 
83."The new table of contents 'Guide to Articles and Programs' is excellent, particu- 
larly the indication of 'multiple computer' items..." 84."Broad range (sophistication) 
of programs..." 8S."You don't speak over the average user's head..." 

Whether you*re just getting started with personal computers, or very advanced, you*ll 
find useful, helpful information in every issue of COMPUTE! Magazine. We specialize in 
supporting the Atari, PET/CBM, VIC-20, and Apple computers. Editorial coverage is 
expanding to include the TI-99/4A^ the Sinclair ZX-81, and the Radio Shack Color Computer. 

Every issue of COMPUTE! brings you user-fpiendly articles, applications programs, and 
utilities you can type right into your computer and use. To subscribe to COMPUTE!, or to 
order a sample issue, use the attached reply card or call our toll-free number. COMPUTE!... 
We're the resource for thousands and thousands of home, educational, and small business 
computer users. Shouldn't you be one of them? 

1 year, twelve issue subscription: $20.00 in the US, 



CaU ToU Free in the US 800-334-0868 

In NC caU 919-275-9809 

COMPUTE! Magazine is a publication of Small System Services, Inc. 
625 Pulton Street. P.O. Box 5406. Greensboro, NC 27403. 



Computers And Society 



David D, Thornburg, Associate Editor 



The Fifth Generation 



I can hardly resist the temptation to point out that 
Orwell's vision for 1984 is (thankfully) not going 
to come true. It is interesting to note that, as with 
many other futurists, Orwell overestimated the 
amount of social change that would occur by 1984, 
and seriously underestimated the amount of tech- 
nological innovation that will have been de- 
veloped by then. While it is true that office workers 
in OrwelTs novel dictate their letters into a ''speak 
write/' an automated stenographer/printer, much 
of the remaining technology is neither advanced 
nor inspiring. 

1 was reminded of the impact of technological 
advances as I created the first draft of this month's 
column on my Brother EP-20 battery-operated 
electronic typewriter. This marvel of design is 
quite compact, fits on an airplane tray table, and 
is almost silent. Since it retails for about S200 and 
allows the user to correct up to 16 characters of 
text before it is printed, I would not be surprised 
to see this device open up whole new markets for 
typewriters. 1 never used a typewriter for rough 
drafts before, simplv because they were too bulky. 
Now, this device has become my portable work- 
station (sadly missing the storage that would make 
it a terminal for my wx^rd processor), and 1 take it 
everywhere. 

Is it significant that this innovation was de- 
veloped by a Japanese company? As we look at 
the computer industry, it is clear that it is taking 
on a decidedly international flavor. And yet, so 
far, the big names in personal computers are defi- 
nitely American (Tl, Commodore, Atari, Apple, 
IBM, etc.). 

KIPS Super Computer 

A recently published book. The Fiftli Gciwration 
(Addison-Wesley, $15.95), suggests that we must 
be much more aware of Japanese advances in 
computer technology if we are to survive as a 
technological nation. Far from being a "scare" 
book designed to erect protectionist trade barriers, 
The Fifth Ceiiemtiou is more a call to arms. Its au- 
thors are Edward Feigenbaum, a pioneer in the 

18 COMPUTE! July 1983 



field of artificial intelligence, and Pamela McCor- 
duck, a science writer who has written extensively 
on computers and intelligent behavior in 
machines. The authors say that Japan has em- 
barked on a ten-year crash program to develop a 
new type of super computer -a "fifth generation" 
machine that is called a Knowledge Information 
Processing System (KIPS). The KIPS is expected 
to be markedly different in architecture from the 
computers in use today. Furthermore, it is ex- 
pected that users of the KIPS will interact with it 
very differently from the way people use com- 
puters today. 

What is a KIPS? While most of today's com- 
puters are used for data processing and, with the 
exception of languages like LISP and Logo, most 
computer languages are geared towards data pro- 
cessing tasks, the KIPS is an optimized blend of 
hardware and software, tailored to perform gen- 
eral symbol manipulation and symbolic inference. 
This shift in emphasis recognizes that most of our 
work is nonmathematical in nature. Much of our 
work involves reasoning, not calculating. 

A Reasoning Machine? 

Can one build a "reasoning" machine? According 
to Feigenbaum and McCorduck, the Japanese 
lack our preoccupation with this question. From 
their perspective, it is sufficient to note that com- 
puter systems powerful enough to be fifth gener- 
ation machines will function at a lev^el far beyond 
that with which we are presently familiar. 

Modest projects in the development of sys- 
tems that outperform human "experts" are an 
important result of research in artificial intelli- 
gence. For example, programs that perform certain 
types of medical diagnoses, analyze and propose 
synthetic pathways in the creation of new chemical 
compounds, and predict the location of geological 
deposits hav^e already been implemented on 
existing commercial computers using languages 
such as LISP. Such programs must operate with 
both a '"knowledge base" and a set of "inference 
procedures." To read a map, for instance, one 



SAVE ON ... COMPUTERS • MONITORS 
PRINTERS • PERIPHERALS -SUPPLIES^ 



STAR MICRONICS GEMINI 10 




OMEGA SALE PRICED PRINTER 

DOT MATRIX C O^O 

^^J^ M SALE ENDS 6/30/83 



• Up To 160 cps • 1 1 X 9 Motrix • Pinfeed Platen 

• Proportlonol Spacing • Graphics • Elite Pitch 

• Centronics Parallel Interface • Internol 2 K Ram 
NOW AVAILABLE FOR IMMEDIATE DELIVERY! 

For Our Price. . .CALL 1 -800-343-0873 TODAY I 



SAVE ON LETTER QUALITY PRINTERS 

DIABLO 620 New Low Price 929*00 

DIABLO 630 w/API & cable 1 ,749.00 

NEC 3510 SPINWRITER . 1,399*00 

NEC 7710 SPINWRITER ....... . . 2,045.00 

NEC 7730 SPINWRITER 2,095.00 



DOT MATRIX PRINTER BARGAINS 

C^ITOH PROWRITER 8510 AP 399.00 

IDS MICROPRISM 480. 549,00 

OKIDATA MICROLINE 92 (NEW) 549.00 

OKIDATA MICROLINE 93 (NEW) B59.00 



BIG SAVINGS ON ACCESSORIES 

HAYES SMARTMODEM 300 Baud 

HAYES MiCROMODEM II {APPLE II) 

MICROSOFT SOFTCARD PREMIUM SYSTEM . 

ORANGE MICRO GRAPPLER + . . . 

PKASO PRINTER CARDS 

RANA ELITE I (APPLE II) . . . 

SIGNALMAN MODEMS (MK I) As Low As . . 

ACCESSORIES & SUPPLIES 

OMEGA Has A Complete Line o\ Accessories & 
Supplies for the Apple II ond mony other 
Popular Computers by monufocturers like: 

• D. C. Hayes • Microsoft • Tymac 

• AA & R Enterprises • Mountain Computers 

• Kensington Microwore • Practicol Peripherals 

• T.G. Products • Videx 

SOFTWARE 

Omega Caries Softwore by the following 
companies; 

• American Business Systems • Ashton Tate 

• Dakin 5 • Innovotive Software • Microsoft 

• Sorcim • Stonewore • Visicorp 



MONITOR SPECIALS FROM OMEGA 



230.00 
289.00 
459.00 
1 20.00 
129.00 
299.00 
85.00 



AMDEK 300 G 

AMDEK300A 

NECJB1260 

NECJB1201 M 

USI Pi-2 12" GREEN MONITOR . 
USI Pi-3 12" AMBER MONITOR. 



139.00 
165.00 
119.00 
169.00 
159.00 
179.00 



MAGNETIC MEDIA 

OMEGA Stocks Diskettes by: 

• Dyson • Elephant • Maxell • Verbatim 

• All Equipment Factory Fresh w/ MFT Warronty 

• Prices Do Not Include Shipping Chorges 

• Moss. Residents Add 5% Sales Tox 

• All Returns Subject To Restocking Fee 



CUSTOMER PICKUP KOW AVAILABLE 

334 R Cambridge St., Burlington, Mass. 
(617)229-6464 



CHARGE IT! 

MosterCard / Visa 

WELCOME AT NO 
^ EXTRA CHARGE 



PRICES, SPECIFICATIONS AND 
AVAILABILITY OF ADVERTISED 
MERCHANDISE SUBJECT TO 
CHANGE WITHOUT NOTICE 



UNADVERTISED SPECIALS ON « COMREX « EPSON • NEC • IDS PRISM • OKIDATA 

OMEGA INTERNATIONAL 

334 R CAMBRIDGE STREET. BURLINGTON. MA. 01803 



must have both maps to read and a procedure for 
reading them. 

Intuitive Solutions 

The fifth generation KIPS will be built around the 
collection of vast amounts of data and the collec- 
tion of problem-solving techniques that range 
from rigid deterministic methods to those that 
mimic the human ability to act on "hunches." 
You need not become embroiled in the machine 
intelligence controversy to appreciate that such 
systems have the potential to completely redefine 
computers, their use, and their place in society. 
In order to create the KIPS, advances are re- 
quired in both computer hardware and software. 
The computers we are familiar with operate in 
serial fashion. Instructions are executed one at a 
time. This type of computer architecture was de- 
veloped by John von Neumann, and speed limi- 
tations in such computer systems are caused by 
the "von Neumann bottleneck" - processing in- 
struction by instruction, byte by byte. In order to 
create faster computers, the fifth generation 
machines may favor a system using many proces- 
sors in parallel. 

A Billion inferences Per Second 

To appreciate the need for this approach, you 
should remember that the KIPS is to be used 
primarily for the linking of a knowledge base by 
symbolic representations (e.g., a sparroiv is a kind 
of bird), or for the representation of rules (e.g., // 
the temperature is over 400 degrees, then the boiler 
must be turned down). To be used effectively, a 
problem-solving program must scan its library of 
"IPs" to find one relevant to the problem at hand. 
Finding this needle in the knowledge-based hay- 
stack of the size anticipated by the Japanese will 
require much more computational horsepower 
than we have seen to date. For example, today's 
big computers are capable of executing no more 
than 100,000 logical inferences per second (LIPS). 
(One logical inference corresponds to one IF/ 
THEN statement.) A personal computer such as 
an Apple II might execute (depending on the lan- 
guage chosen) about 100 UPS. The KIPS will be 
designed to execute up to a billion LIPS. 

Such achievements are not the result of 
hardware alone. Interestingly, the language of 
present interest to the KIPS project leaders 
has already been developed by the Europeans - 
PROLOG. 

How feasible is this project? There is much 
diversity of opinion on this topic, but there is con- 
sensus that, even if the project goals are not met 
in the allotted ten years, the interim results will 
most certainly change the nature of computers and 
computing. As Feigenbaum and McCorduck say: 

\Nord literacy has given us power, access to 

20 COMPUTE! July 1983 



an opulent, soari}\^ worhi of mind - an alter- 
ation of thought processes - that is detiied the 
illiterate. Computing literacy, even in its 
present form, opens still a^wther world, one 
that all eventually may enter as routinely as 
they enter the tvorld of letters, and it loill 
confer perhaps even more power than the 
mighty pen and press have already given us. 
This is not idle promotion. As human muscle- 
poxver has been amplified by mam/ special- 
purpose machines, so human mind-poxver 
will be amplified. The computer will change 
not onhj what we think, but how. 



Use the card 

in the back 

of this magazine 

to order your 
COMPUTE! Books 




COMPILE 
ATARI BASIC 
AND FLY! 



With ABC^", Monarch's | new BASIC 
compiler for ATARI 400* and 800, you 
develop and debug pro-M grams using 
your ATARI BASIC car- #tridge, then 
use ABC to transform » them into 
compact code that runs% up to 12 
times faster, without the ^cartridge 
(and protects your source ^code, too). 
40K and disk required. ^ For your ABC 
diskette and manual^send check or 
money order for 4^ $69.95 (or $9.95 for 
manual atone).^' Monarch Data Systems 
^^^P.O. Box 207, Cochituate 
^^ ^^MA 01778, (617) 877-3457. 



Ill Mas 
III inqu 



a 



MastercardA/isa by phone. Dealer 
inquiries invited. Mass. residents add 
5% sales tax. ATARI, ATARI 400. and 
ATARI 800 are trademarks of ATARI. Inc. 



If you wanted lo bet on the horses, you'd get advice from somebody who'd been a success at betttng on the horses. * 

So Its only reasonable to dcmarxi that the blackjack program you buy be one with a PROVEN system from a PROVEN winner at 

blackjack Not from son^ anonymous programmer who can't change the filter in his coffcc-makcr Not from some Sunday afternoon sports 

analyst, but from a man whose "Winntngest System" earned him appearances on CBS Television's 60Mmittes — and a penthouse in Las Vegas 

Ken Uston 

Now. Ken Uston and Intelligent Statements can help make you a winf>er three ways — three ways that add up to make Ken Uston s 

Professtonal Bhckjock truly the winningcst blackjack program ever' 



Ken Us ton's Profesmnal B/ock/ack is a real 
winning program, with features unavailable 
on any other program at any other price. It's 
the most complete and realistic blackjack 
jartic nxsncy can btty, You'H meet the same 
playing opportunities that you'd face at a real 
blackjack table - at your choice of over 70 
Nevada and Atlannc City casinos, each with 
its own set of rules aiKl variations. Or you 
can create your own casino, manipulating 
sixteen different ganx! variables to produce 



an unbelievable 39,813,120 different playing 
situations. Select the number of decks in the 
shoe, vary the dealing speed, and much, 
much more And all your data is accurately 
displayed, so you can play the strategy you 
like and get the feedback you need to win 



Ken Uston s Professtonaf Btockjack js the 
most thorough and authoritative teaching 
system you can buy. Now you can team all of 



Ken Uston 's computer- optimized card- 
counting strategies, from basic to advanced 
levels. Menu -driven interactive drills — 
augmented by superb documentation - lead 
you through each skill level At any point you 
can choose to sec accurate running counts, 
continuous siatisttcal evaluations, discard 
deck totals and instructional prompts, com- 
plete with sound effects So you develop and 
refine the skills you need to WIN BIG. 




Ken 



sTiS" 



In the package containing this winning pro- 
gram, we'll include, absolutely free, a coupon 
that entitles you to a free copy of Millton 
OoHar Bhckjack, Ken Uston s authoritative 
text on the game of black[ack - an S18 95 
value! This book fully describes the blackjack 
system that won Ken Uston a reputation as 
the world's forerrrast blackjack player and 
rocketed him to nationwide fame in his ap- 
pcrances on 60 Mmutes This \s the system 
that made Uston such a threat to casinos that 
he's been barred from their playing tables — 
and It's implemented fully m this program and 
described in-dcpth in this book If you want 
**givestig3te the reasoning behind the win- 
pest blackjack system ever designed, this 
ok IS a must If you want to LEARN the 
system, quickly and painlessly, this program is 
a must We're offering you both — at a 
winning price. 




G FEATURE 112 ■ 

"2vahfy Low Prs^e 
The price for the winningest blackjack sys- 
tern ever is a winner, too. Including the 
software, the coupon and thorough docu- 
irientation. Ken Uston s Prof essionaf Blackjack 
IS an amazingly low $69 95, There are other 
programs that cost less aixi offer less There 



offer less. This program is the winner, hands 
down 

Don't bet your nxjney on losers Play the 
system that made Ken Uston the world *s 
winningcst blackjack player Only from Intelli- 
gent Statements Try your dealer or. if he 
doesn't have it, call 1-800-334-5470 today 

Be a winner with Intelligent Statements 



les been barred from their playing tables - IBM PC ' REQUIREMENTS 48K RAM. disk winningcst blackjack player Only from Intelli 
ind It's implemented fully m this program and dnve. PCDOS'. 80-cfiaracter display Color gent Statements Try your dealer or, if \k 
Jescribed in-dcpth in this book If you want and monochroine versions supplied with each doesn't have it, call 1-800-334-5470 today 
* investigate the reasoning behind the win- package Be a winner with Intelligent Statement* 

pest blackjack system ever designed, this APPLE 11" REQUIREMENTS: DOS 3 3, software, 
ok IS a must If you want to LEARN the 48K RAM. disk drive. 40-character display 
iystem, quickly and painlessly, this program is OSBORNE f ^" REQUIREMENTS Staixiard 
I must We're offering you both — at a Osborr>e I package 
winning price. ATARI" 400 800 1200 REQUIREMENTS: 

48K RAM and one disk drive. j 

Disptay shows actual photograph o( tBM PC g, 

version Apple and Alan color graphics and Os^ ^ 

I borne monochronye graphites are similar Versions /' 

for TRS BO ' ' atKi other bratids will be avatlable 

shority 

*IBM PC andKDOSemt^dem&fki of fSM • * Apple. Osborne, Atari atuS TRS 80 on tra<kmarki of Appk; Compincr, fnc . Osfeorne Computer Corp . Atari Uk . and Tandy Corp . mpectivtly 






THE BEGINNER'S PAGE 



Richard Mansfield. Senior Editor 



Writing A Simulation Game 



There are three basic types of computer games: arcade, 
adventure, and simulation games. Let's briefly look at 
the characteristics of arcade and adventure games and 

then write a simulation. 



Reaitime Action 

Arcade games feature what's called realtime action. 
Unlike chess or bridge, things happen fast. You 
can't sit back and plan your next move; you must 
react immediately to the space invaders. In other 
w^ords, events take place at the same speed as 
they would in reality: realtime. 

Arcade games also hav^e a strong appeal to 
the eye and ear. There is much animation, color, 
and sound. In fact, your ability to respond quickly 
and effectively depends in part on all the clues 
you get from the graphics and sound effects. 
Strategy, while often an aspect of arcade play, is 
clearly secondary. These games are a new kind of 
athletics: the fun of man versus machine. Like 
auto racing, arcade games are essentially isometric 
exercises - you don't run around; you just stay in 
one place flexing and unflexing your muscles, 
tensing and relaxing. 

Story And Strategy 

Strategy, however, is more important in "adven- 
ture" games. The emphasis is on planning ahead 
and solving riddles. It can be like living inside an 
adventure novel. There is drama, characterization, 
and plot. You might start out, for example, in a 
forest with a shovel and a trusty, if enigmatic, 
companion parrot. As you try to figure out what 
to do next, the parrot keeps saying "piny dells, 
piny dells." After wandering aimlessly through 
the trees, it suddenly comes to you that the bird 
is saying "pine needles" and you dig through 
them and find a treasure map. 

Your "character" will travel, meet friends 
and enemies, and hav^e the opportunity to pick 
up or ignore potentially useful items such as food, 
magic wands, and medicine. It's customary that 
you cannot haul tons of provisions. You'd have to 

22 COMPUTil July 1983 



decide whether or not to leave the shovel in the 
forest. Yet you might be sorry that you'd dropped 
it if you're involved in a cave-in later in the game. 
In any case, adventure games are fundamen- 
tally verbal. The computer displays the words: 

YOU ARE IN A BOAT ON A LAKE. NIGHT IS 
FALLING. 

to which you can respond in any number of ways. 
You might type: 

DIVE OFF BOAT. 

and the computer would reply that you now see 
an underwater cave or whatever. You move 
through the scenes the way a character moves 
through a novel. There is generally no penalty if 
you take time to plan your next move. It's not 
realtime. 

Imitations Of Life 

The third category, simulation, is the least com- 
mon kind of computer game. This is because to 
really imitate something, to simulate it effectively, 
you need lots of computer memory to hold lots of 
variables. However, memory has recently become 
far less expensive so we can expect to see increas- 
ingly effective simulation games. Star Trek and 
Hannnurabi, both simulations, have long been 
popular home computer games. Although they 
are similar to adventure games, simulations are 
random. That is, there is no secret to discover, no 
puzzle to solve, no plot. Like real life, things hap- 
pen with unpredictable, complex results. 

Here's a program which simulates investing. 
The key to simulating is to arrange realistic inter- 
actions between variables. Look at line 600. If there 
is "international unrest," the price of gold (PGLD) 
goes up and the price of Bundtfund stock (PB) 
goes down. This relationship between gold, stock, 
and an international crisis is true to life. Alterna- 
tively, stock goes up and gold goes down in line 
700 during a "market rally/' 

The game allows you to make inv^estment 
decisions, and then a "month" passes during 
which the value of your investments will go up or 
down. In line 510, three variables are given ran- 




wm 





JP/MDISKS 
DiSKEGfeS 



DYNACOMP 

The Leading Distributor Of 
Microcomputer Software 

PRESENTS 

PERSONAL FINANCE SYSTEM: 

One of the most complete financial management packages available. Keeps track 
of all tax deductible items, bank deposits, monthly charges, cash payments and 
more. 

Personal Finance System automatically deducts check fees, gives complete finan- 
cial summaries for any category on a per item, monthly or yearly basis, prints 
results in detail or summary form, and even plots results on a monthly bar graph. 
Available on diskette/disk only. Price $39.95 (diskette); $42.45 (disk). 

BRIDGE MASTER™ 

After years of success with BRIDGE 2.0, we have decided to not simply upgrade 
this popular card program, but to totally rewrite it! the result is BRIDGE 
MASTER, the best overall bridge package available. 

BRIDGE MASTER BIDS according to the Goren point count system. It 
PLAYS following the conventions. It SCORES according to the rules of 
duplicate bridge. BRIDGE MASTER'S features include continuous display of 
the bid and score during play, attractive screen display, score keeping and 
analysis, 1,000,000 different hands, and more! 

BRIDGE MASTER has received rave reviews and an "A'' for value (The Book 
of Atari Software 1983). 

Available on diskette only. Requires 48K. 

Price: $29.95 (diskette); $32.45 (disk) 

THESE ARE ONLY TWO OF THE HUNDREDS OF PROGRAMS 
AVAILABLE FROM THE DYNACOMP LIBRARY OF SOFT- 
WARE PROGRAMS: 



Business/Utilities 


■ Education 


■ Engineering 


Adventure 


■ Thought Provokers 


■ Hardware 


Personal Finance 


■ Statistics 


■ Supplies 


Games 


■ Card Games 


■ And Much, Much More! 



Besides being the leading distributor of microcomputer software, DYNACOMP 
currently distributes software in over 60 countries. DYNACOMP provides 
FRIENDLY, ACCESSIBLE CUSTOMER SERVICE through our highly 
qualified and knowledgeable staff. WE'RE AS NEAR AS YOUR TELEPHONE. 

DYNACOMP' S prices are highly competitive and we promise prompt processing 
of every order! 

WRITE FOR A FREE, DETAILED CA TALOG 



Daytime 24 Hour 

Toll Free Order Phones: Message and Order Phone: 
(800) 828-6772 (800) 828-6773 (716) 442-8731 



Office Hotline: 

9-5E.S.T 
(716) 442-8960 



DYNACOMP, INC. 

1427 Monroe Avenue • Rochester, NY 14618 



\^fe dorit care 

which computer you own. 

\W11 help you 

get the most out of it. 



CompuServe puts 
a world of information, 
communications, and 
entertainment at your 
fingertips. 

CompuServe is the versatile, easy to use 
interactive videotex service designed especially 
for the personal computer user It's dynamic, 
growing and changing daily to satisfy 
its subscribers' needs. Ifs an industry 
leader, created and managed by 
the same communications pro- 
fessionals who provide busi- 
ness information and 
network services to 
over one fourth of 
the FORTUNE 500 
companies. 

From current events to current assets, 

CompuServe offers a wealth of useful, profitable 
or just plain interesting information. 
Electronic magazines and national 
news wires plus worldwide weather, 
current movie reviews, electronic 
banking and shop at home services, 
and some of the most sophisticated 
financial information available are 
all offered to current subscribers. 

From words to music. CompuServe offers 
a communications netwoi:k that gives special 




nl 




interest groups from hardware enthusiasts to 
computer composers a chance to get 
together. There's a bulletin board 
for selling, swapping, and 
personal notices and a CB 
simulator for real-time com- 
munications between sub- 
scribers. There's electronic 
mail, the fastest, surest, way to 
communicate with other users across the street 
or across the country plus file retention and 
editing, and lots, lots more. 

Fun and games are expected whenever 
computer users interact, and CompuServe has 
the best. Games you can play alone or with 
other CompuServe subscribers 
anywhere in the country. Classic 
puzzlers, sports and adventure 
games, and fantastic space games 
featuring MegaWars, the "ultimate 
computer conflict." 

But, that's just the tip of 
.the chip. CompuServe offers a 
menu of thousands of items 
that make subscribing edu- 
cational, fun and sometimes downright profitable. 
If you'd like to know more about CompuServe, 
call toll free, 800-848-8199 to receive an illus- 
trated guide to the CompuSerx^e Information 
Service. A videotex service for you no matter 
which computer you own, 

CompuServe 

Consumer Information Service 

2180 Wilson Rd.. Columbus. Ohio 43228 

800-848-8199 

In Ohio Call 614^57-6650 
An H&R Block Company 




dom values. Stock can gain or lose up to 10 points 
(variable X), and gold can change by $20 an ounce 
(Y). Variable Z will be used to simulate flipping a 
coin. Also notice lines 520 and 525. In 520, we 
determine whether or not there will be unrest. 
The variable CH is just a counter. Each "month/' 
CH is raised by one. Two conditions are required 
for unrest to happen: in a given month, CH must 
be greater than 4 and it must be less than whatever 
X turns out to be. If both these conditions are 
met, CH is reset to zero and we've got interna- 
tional unrest. This has the effect of creating unrest 
roughly every four to six months. Likewise, 
another rhythm is set up in line 525 to cause market 
rallies. In both cases, however, you cannot be 
certain exactly when to invest in gold or in stocks. 

The decision to raise or lower stock prices is 
made in line 530 and based on the coin toss vari- 
able, Z. Again, stocks move in opposition to gold. 
Prices will rise about 50 percent of the time, but 
you can never know what will happen in a given 
month. 



Donkey Koh<^ change the play field as you earn 
more points. 

There are several ways to add to the appeal 
of our investment simulation, beyond just making 
it a more complex, more accurate simulation. You 
could add the visuals and sound of arcade games. 
Try creating a tickertape across the top of the 
screen to show price changes and news events. 
Maybe add a bell sound to indicate the end of 
further transactions. If your computer has a voice 
synthesizer, news events couki be announced 
over the ''radio." And from adventure games you 
could borrow two elements: riddles and the neces- 
sity of planning ahead. One easy way to incorpo- 
rate these two elements would be to make paying 
taxes a part of the game. After all, the closer it is 
to real life, the better the simulation. 



20 
So 

Ha 



Suggested Complications 

This is the core, a rough sketch, of an investment 
simulation game. There is much you can do to 
make it a more effective simulation and thereby a 
more enjoyable game. The more variables in a 
simulation, the better. For example, add leverage 
and additional ''incidents'' which affect prices, 
improve the randomizing, and include other types 
of investments. You could even use a separate 
counter which, every five years, causes the X and 
Y variables to swing more widely to reflect reces- 
sion/recovery cycles. 

As you can see, a simulation should be lifelike. 
It has interdependent cycles and a degree of un- 
predictability. Its realism derives from including a 
sufficient number of variables. And those variables 
must interact in plausible ways and wath just the 
right amount of randomness. A simulation is a 
little world you create. You can define cause and 
effect and then fine-tune the whole thing until it 
seems well-balanced. Adventure and arcade 
games are certainly enjoyable, but this investment 
simulation can be built up to the point where it's AQ 
just as much fun as any other kind of K^ime. ^'^ 

Mixing Styles ^« 

Of course, these three categories - arcade, adven- ' 
ture, and simulation - are somewhat arbitrary. 
Some of the best games contain elements of each. 
There are adventure games with graphics - you 
see the forest, the shovel, the pine needles. After 
you say DIVE, your character jumps into a lake 
and the screen transforms into an underwater 
scene. Likewise, arcade games can include the ^•Vg^ 
different "settings" so characteristic of adventure |^ 
games. Popular arcade games such as Tron and mlm 

26 COMPUTE! July 1983 



Special Program Notes: Ifi/ou have an Atari. 
you'll need to add semicolons (;) betiueen I he vari- 
able names and the PRINT statements to make 
everything pri)il on a single line. If you have a 
TI, put each statement on its own separate tiiw. 
In other words, you cannot use colons (:). Line 10 
would he CASI / = lOOOOO and you'd iwed to add 
a line: U PGLD = 400, If you have a Timex/ 
Sinclair, use LET whenever a variable is defined. 
For example, line TO would start: 10 LET 
CASH=100000, [f you have a TRS-80 Color 
Computer, add the followiii^ line: 5 RAN- 
DOMIZE, 



Investment Simulation 

10 CASH=100000:PGLD=400 
PB=80 

PRINT: PRINT" BUNDTFUND IS $"PB" PER 
SHARE* YOU HAVE "B" SHARES, — $"PB*B 
PRINT" GOLD IS [3 SPACES ]$ "PGLD" PER 
UNCE.{2 SPACES} YOU HAVE "GLD" OUNCES, 
— ?"GLD*PGLD 
Ji^ T=PB*B+GLD*PGLD 

Ji^ PRINT" [31 SPACES) TOTAL INVESTMENTS ~ 
4i> $"T 
^6^ PRINT" {31 SPACES} YOU HAVE $"CASH" TO 
/^ SPEND." 

PRINT "I 24 SPACES} GRAND TOTAL ( INVESTM 
ENTS + CASH) ?"T+CASH 
IFCK=lTHENMa %ll^ 

PRINT: PRINT "^, BUY [2 SPACES } 2 . SELL 
{2 SPACES} 3. DONE" 

INPUTA:IFA=3THENCK=1:G0T0M' \xi 
PRINT"WHICH?[3 SPACES } 1 .GOLD 
{2 spaces} OR [2 SPACES} 2. STOCK" 
INPUTF 

PRINT "HOW iVIANY (SHARES OR OUNCES)?" 
INPUTN 

IFF=1THEN«^ VE^e 

PRICE=PB*N:IFA=1THENCASH=CASH-PRICE: 
B=B+N:GOTO«flt ^\^ ^0 

CASH=CASH+PRICE : B=B'N : G0T04#e' ** 
PRICE=PGLD*N:IFA=1THENCASH=CASH-PRIC 
E : GLD=GLD4-N : GOTO4#0. 



jf^ 



1110 



ll0 







ife 



iP 't^J CASH=CASH+PRICE:GLD=GLD-N 

%i^4mr GOTo^fe ^^^ 

-;j^-&^^ GK=0: PRINT: PRINT" ONE MONTH LATER .. 
^ . ":F0RT=1T07 00 :NEXTTi PRINT 
-jJ6.&«^ X=INT ( ( RND ( 1 ) *100 ) /10 ) : Y=INT ( ( RND ( 1 ) 
j« *200 ) /10 ) : Z=RND ( 1 ) 
^.''feflr CH=CH+l:IFCH>4ANDCH<XTHENCH^0:GOTOa« 

♦•^ T2^ IFCH=2GOTO?«f Z^9 

-SOT IF Z> .5THENPB=PB+X:PGLD=PGLD-Y:GOT0^■ 
WjdJffl^ PB=PB-X:PGLD=PGLD+Y;GOTOAl$^ 

..s ap PRINT "INTERNATIONAL UNREST • . . " : PGLD= 
-1?^ PGLD+2^Y:PB=PB-2*X:GOT03a fo 

Md-'PRINT "MARKET RALLY . . . { 2 SPACES } " : PG 
^C LD=PGLD- 2 *Y : PB=PB+ 3 *X : GOTO^l £ q 



Use the handy 

reader service cards 

in the back of the 

magazine for 

information on 
products advertised in 

COMPUTE! 



Home Control 

System 
for the VIC 20 




* Control up to 256 lights & appliances 

*0N, OFF, ALLON, ALLOFF Commands 
* 9 levels of Brightness 
• Manual & Time Control Software 
* Uses BSR remote switches 
* Plugs into User Port 

$RQ95 

only w ^ 

MasterCard or VISA Accepted 
Call 21 5 861 -0850 to Order 

GENESIS COMPUTER CORP. 

1444 Unden Street 
Bethlehem, PA 18016 



LEARN 
TO TYPE 
OR GET 
BLOWN 



TO BITS 




Masteriype"^ makes typing a blast. 

Now there's a typing prosram for the Apple II, Atari 
and IBM PC that dares to be fun. And it's soon to be 
available for the VIC-20. It's MasterType. A combination of 
fast-action blow 'em up video sames with the best instruc- 
tional programs available. The result? Highly motivating 
and enjoyable learning. 

MasteiTVpe earns a ten-gun salute. 

Infoworld was impressed byMasterType's ability to 
teach and entertain. They wrote: 

"MasterType is an excellent instructional typing game. 
We had fun reviewing it, and we highly recommend it 
to those who want to learn typing in an unconven- 
tional but motivating way." 

Infoworld also went on to rate MasterType as 
"excellent'' In all four of its categories. 

Masteiiype teaches your fingers to fly. 

MasterType. With T8 explosive learning levels, youll 
either learn to type or get blown apart. 

39.95. (49.95 forthe IBM PC). 
All require disk drive 
32K for Atari, 

48K for Apple II, ■,■■■, , ^ ^.^ 

64K for IBM PC, | f j So^^^' ^ 





9A50^ 



Questions Beginners Asic 



Tom R Holfhill, Features Editor 



Are you thinking about buying a computer for the first 
time, but don't know anything about computers? Or 
maybe you just purchased a computer and arc still a bit 
baffled. Each month, COMPUTE! xvill tackle the ques- 
tions most often asked by beginners, 

QAre there any problems I could cause 
while using a computer that could perma- 
nently damage it? How about any commands 
used in the wrong way? In other words, what are 
the chances that I could do real damage to the 
computer by not knowing how to use it right? 

There's an old saying in computing that 
goes something like this: 

''The only way you can hurt a computer 
through its keyboard is to hit it with 
a hammer," 

Of course, this isn't completely true; spilling 
liquids into a computer keyboard isn't too healthy 
for it, either. But the general thrust of that adage 
is pretty certain - aside from physical abuse, a 
computer can't be damaged by anything you can 
type on its keyboard. 

There's only one rare exception we've ever 
heard of. A certain POKE command on one Com- 
modore PET computer (PET/CBM's with 4.0 
BASIC) can drastically speed up the process by 
which the computer creates the screen display. If 
this command is left running wild, the computer 
keeps speeding up until it eventually self- 
destructs. The chances of this POKE happening 
by accident are extremely remote. There are 65536 
memory locations in a PET that can be POKEd, 
and there are 256 possible numbers that can be 
POKEd in each location (0 to 255). Therefore, the 
chances of accidentally typing in that fatal POKE 
command are only one in 16,777,216. 

Other than tliis rare example, you really don't 
have to worry about damaging the hardware of 
your computer system by experimenting with 
commands or programs. The same pretty much 
holds true for the devices attached to the com- 
puter. At worst, you might cause an error which 
traps a device in an endless loop - for example, 
the disk drive might keep spinning, or the printer 
might keep spewing forth paper. Conceivably, if 
the system were left unattended, the device could 
eventually overheat or suffer excessive wear. But 
if you're there, you can always stop such "run- 

28 COMPUTE! July 1983 



away" events by switching off the power. Anytime 
you switch off a computer or device and then 
switch it back on again, it resets itself. 

Remember, though, we're talking about 
hardware damage. There are lots of ways you can 
cause perrnanent software damage. Simply typing 
NEW on the keyboard and pressing RETURN will 
wipe out any BASIC program in memory. If the 
program has not been saved on disk or tape, it 
will be lost. Likewise, certain commands can erase 
a program from a disk or tape, or overwrite it 
with something else. A wrong command, a pro- 
gram bug, or a typing error when entering a pro- 
gram listing can cause a system crash - your com- 
puter "locks up" (refuses to accept commands). 
Since the only way to recover, usually, is to switch 
the computer off and on again, the program in 
memory will be lost. But you can rest assured that 
the computer itself is always safe from permanent 
damage. 

Can I do word processing with a tape 
recorder, or must I have a disk drive? 

Alt is quite possible to do word processing 
with a tape recorder. 

Make sure, however, that the word pro- 
cessing program you buy or use is designed to 
work with tape. Some programs are for disk only; 
still others work with both. 

The peripheral device which is most essential 
for word processing is a printer. Without a printer, 
you won't be able to generate a paper printout of 
your writing. And since the whole object of word 
processing is writing, a printer is indispensable. 
If you want to do word processing and must 
choose between buying a disk drive first or a 
printer, opt for the printer. 

For casual word processing (average letter- 
writing, etc.) you may find that a tape recorder is 
a sufficient storage device. However, for more 
serious applications, you'll probably discover that 
a disk drive is necessary. Tape recorders can be 
reliable, but they are very slow compared to disk 
drives. Also, a disk drive adds flexibility to word 
processing. Depending on the word processing 
program, a disk drive can make it possible to easily 
store frequently used paragraphs on disk for merg- 
ing with other files; to link several files together 
for very long documents; to merge files of names 
and addresses with form letters; and other ad- 
vanced functions. © 



PET/CBM/COMMODORE 64 

I^)erClip 

Professional Word Processor at a Breakthrough Price 



PaperClip'"* performs all the advanced 
features found in Word Processors costing 
much more. . . 

1) Full screen editing. 2) Copy/Transfer 
sentences and paragraphs. 3) Insert/ 
Delete sentences and paragraphs. 
4) Headers/Footers/Autom.atic page 
numbering. 5) Justification/Centering. 

6) User defineable keyphrases. 

7) Supports both cassette and disk. 

8) Variable data - Form letters. 

9) Horizontal scrolling up to 
126 characters. 

10) Insert/transfer/erase 

Also available for Commodore 64 

Requires 

Basic 4.0, 32 K memory. 

n2S9P 

Call or write for the 
store nearest you. 

BRTTERiES 
knCLUDED 

71 McCaul Street 
Toronto, Ontario 
Canada M5T 2X1 
(416)596-1405 



columns of numbers. 1 1) Add/subtract 
columns of numbers. 1 2) Supports most 
dot matrix and letter quality printers. In fact, 
a printer set-up routine is supplied to 
take the best advantage of the printer at 
hand. 13) French and Math technical 

character sets 
available. 



Parti 



Constructing The 
Ideal Computer Game 



Orson Scott Cord, COMPUTEi Books Editor 



In this first article of a two-part series, the author 
examines curreutiy available types of home computer 
games ami suggests a new approach: a game lohere the 
player creates his or her own world. As an example, he 
describes the elements of a ''game-building game" called 
"Railroader/' It's something of a cross between tradi- 
tional entertainment and computer programming. 

Next month, the article concludes with advanced 
applications and specific techniques for programming 
Railroader on your computer. 



When I first bought an Atari 400, I told my wife 
all kinds of stories. About how computers were 
the wave of the future. About how our kids had 
to become computer literate. About how useful 
the computer would be. 

I didn't fool her. I didn't even fool myself. I 
knew I was getting the machine because of the 
games. 

And I've done my time. My Super Breakout 
game regularly tells me "Wow!" My Centipede 
scores are respectable, and my wife and 1 make a 
great team playing Ghost Hunter. 

But now, after a couple of years with the ulti- 
mate garne machine, I've discovered a dreadful 
secret: true home computer games are rare. 

Look at your games for a minute. What are 
they actually doing? Most of them are doing what 
pinball machines are designed to do - enticing 
you to try to beat the machine, with the odds 
hopelessly stacked against you. That makes sense 
for arcade games. They are supposed to make 
money, and the only way to make money is to 
force you to play against the clock, pumping in as 
many quarters per hour as possible. When the 
local wizards started playing 30 minutes per quar- 
ter on the Dig-Dug machine in the corner Seven- 
Eleven, they flipped a switch inside it and sud- 

30 COMPUTEI Juty1983 



denly the old patterns stopped working. 1 stopped 
getting 250,000 points a game - and the company 
started getting a lot more quarters. That's business. 

But why do home games have to play that 
way? The arcade games are fun on the home 
machine, at first. But they can get frustrating or 
boring. After a while I begin not to care anymore 
whether I get above 70,000 on Centipede, I'm never 
going to "win," and I don't lose a quarter when I 
don't win. 

There's something worse than boredom. 
Something a little pernicious. Teenagers who 
come to my house to play my games have a great 
time. But when my four-year-old son and I sit 
down to a few games of Sahnon Run or Picnic 
Paranoia, he almost always ends up in tears. Not 
because I always win - I'm a nicer father than 
that - but because the machine always wins. He 
doesn't stand a chance. He can never finish. He 
can never accomplish anything. 

Why should all those wonderful graphics, all 
those fantastic imaginary worlds, be devoted to 
either frustrating my son or programming him 
until he learns how to do his part perfectly? 

Because that's what all but three computer 
games I've tried end up doing ~ programming the 
pilayer. Rewarding and punishing me until 1 learn 
to display the correct behaviors. What are the 
arcade wizards, except human beings who have 
learned to obey the demands of a computer 
program? 

Don't get me wrong. 1 still love a new arcade 
game. I'm in there flapping away at joust, making 
hamburgers and McMuffins with Burgertime, and 
mastering the art of swinging on chains and ropes 
in Donkey Kong lunior. I'm as eager as anyone to 
find out what the next screen will look like, to 
find out what the programmer has created in his 
or her little world. But it's still the programmer's 



Braderbufld 

compuTER erimES 





And ftir VIC-20 owners, Unh 

AmEJ^ A runaway best*seller for the^ 
Apple II and the Atari 400/800, Is a 
winner for VIC-20 

Giant robot stingrays designed to 

fight pollution have run amok and 

are attacking in waves from the sky. 

A.E/** (^'stingray" in Japanese) is a graphic 

masterpiece, with screen after screen of 
spectacular 3-D effects. The arcade-styie action is masterful too, as you launch 
your remotely-triggered missiles and detonate them precisely to coincide 
with the swooping, diving, constantly changing flight patterns of the deadly A.E/s! 
Ask your nearest Br0derbund dealer for a sneak preview of A,EJ^ and our 
other vrC-20 games: Martian Raider/"* Multi-Sound Synthesizer™ Seafox,^ 
Shark Trap;* and Sky Blazer ™ 



round $oftujare 

Br0derbund Software 1938 Fourth Street San Rafael, CA 94901 



Now tor Hie CommodoiB 64 

CHOPLIFTER!™lt*sthe 

best selling game ever for the 
Apple. In Its Atari 400/800 
version, it zoomed to the top 
of the charts. Now CHOP- 
LIFTER!™ is available for 
the Commodore 64. 
Your challenge is to rescue 
peace-conference delegates 
held hostage behind enemy 
lines. Amid heavy fire from 
tanks, missiles and planes, you heroically maneu- 
ver your daredevil chopper. You'll need all your 
courage and skill to survive against treacherous 
odds. The game's remarkable graphics and realistic 
joystick control won*t let you give up. After aO, world 
peace rests in your hands! 
Ask your nearest Br0derbund dealer 
for a sneak preview of Choplifter!™ and our 
other Commodore 64 games; David's 
Midnight Magic ™ Seafox/** and 
Serpentine/** 







Alan7fl!ppiCTiC?5orC^modore 64 and tBM PC. are regisiered 
Itademarks o1 Alan, tnc . AppSe Compuler Inc.. Commodore 
Electronics. Ltd.. and International BLfSmess Machines Corp, 



icR'.UiC.tif- vn!'?;ion'"> "hown! 



Desiflii the best new M *A*S*H 



sometliiiig money canrt inxy. 





Fame. 

That's right, F-A-M-E. 

Because if the game you design 
Is good enough, we'll make it 
and put your name on every one 
we sell 

And remember, you don't have 
to be a computer programmer to 
come up with a great game. You 
just have to have a great imagina- 
tion, and give us a short description 
of your idea. 

IF FAME ISN'T ENOUGH, 
HOW ABOUT A FORTUNE? 

$25,000 to be exact. That's how 
much the game contract will 
bring you. Guaranteed. What's 
more, we're giving away a whole 
list of prizes for the other great 
game ideas we get. 

• Four First Prize AMC Jeeps? 

• 400 Second Prize Texas Instm- 
ments 99/4 A™ Home Computers. 

• 4000 free Fox Video Games. 

EVERYBODY WINS, 

Because the new M*A*S*H 
game comes packaged with a 
smashing M*A*S*H T-shirt. 

Absolutely free. 

HOW DO YOU GET STARTED? 

Just buy the original M*A*S*H 
game. The contest mles and entry 
blanks are in every package. 

And if you win, you might say 
the rewards are monumental. 





Games of the Century 

THE M^A^S^H CONTEST. 
IT'S A SMASH. 



world, not mine. 

Even the adventure games, both text and 
graphics, usually boil down to puzzle-sol \ing, 
out-guessing the programmer. 

But in the home, where the family has un- 
limited access to the computer, there can and 
should be a different type of game. A different 
kind of play. 

What Is Really Fun? 

I've noticed a couple of important things in my 
family. First, about myself. I almost never stay up 
late playing computer games. But I have been 
known to stay up until three or four or six o'clock 
in the morning working on a program. You might 
say that, in a way, programming is much like 
arcading: after all, BASIC is forcing me to react in 
certain patterns, and I'm only just now beginning 
to learn when to PEEK and when to POKE. I have 
been trained, right? 

There is a difference - all the difference in the 
v^orld. When 1 program, I can save the result on 
something a lot more permanent than a vanity 
board. And Fm not just charting through someone 
else's program - I'm creating something that never 
existed before, at least not in the exact form I'm 
giving it. When I'm through, there's a lasting 
result. And I can take all the time in the world. 1 
can take the time to do it right, 

A second thing I've noticed is the way my 
children plav when they arc) I't using the computer. 
They do like a shoot- em-up game as much as 
other kids. But games like that are only a minority 
of the things they do. 

They also like solving puzzles, and spend 
much more time doing mazes or putting together 
picture puzzles than they ever spend on fast-action 
games. 

Most of all, though, their playing time is spent 
making things or pretending things. They spend 
hours with wooden or plastic building blocks, 
making castles or spaceships or houses or any- 
thing they can imagine. They draw and color, 
write stories or act out plays, dress up in costumes 
or read aloud from books - whether they under- 
stand the actual words on the page or not. 

In fact, they do exactly what I like to do with 
the computer: create their own small world that 
works just the way they want it to w^ork. They 
don't want anyone to tell them that they can't 
make a castle that way, or to insist that six legs 
are too many for a horse. "You made your txvos 
backw^ard," we tell our son, and he looks at us 
impatiently and says, ''Let me do it my way." 

How many hundreds of dollars have we sunk 
into our home computer? We own it, don't w^e? 
Why, then, do we have so many programs that 
tell us what to do? Why can't my children - or 
my wiie and I, for that matter - play games that 

34 COMPUni July 1983 



let us tell the computer what to do, that let us create 
something that will last, that let us use the magic 
of the computer to make things we could never 
make before? 

The Few Games That Work At Home 

I've found three games that approach the sort of 
play that only the home computer can allow - 
games that are neither elaborate puzzles nor 
quarter-stealing pinballs. 

Galahad and the Holi/ Grail. At first glance, this 
Atari (APX) adventure game looks pretty much 
like other realtime graphics adventures. Only 
after you've played it awhile do you begin to 
realize that this is the first game to give you the 
freedom to play your own game. True, there are 
fast-moving knights and spiders and a persistent, 
maddening moth to kill you when your reflexes 
are too slow, and there are puzzles to solve. But 
there are no win conditions. The program never 
congratulates you and says, "That's it, you've 
solved it all" It's fun simply to explore the dozens 
of different rooms and find out what secrets they 
hold. It's no coincidence that my son loves to play 
it, and has never found it frustrating, though it is 
always challenging. 

Eastern Front. This APX game isn't for chil- 
dren, and there are definite win conditions, but it 
is a war game that gives you freedom to plan your 
own moves, to develop your own strategy, and 
there are hundreds and hundreds of possible 
ways to play, none of them "wrong." Your deci- 
sions are shaped by events, but the events do not 
control you any more than you control them. 
{ATARI Program Exchange, 155 Moffett Park Drive, 
B-I, P.O. Box 427, Sunnyvale, CA 94086,) 

Pacemaker. It runs slowly, but 1 find that mv 
son never gets impatient with the game from Spin- 
naker. The choice of facial features is very limited, 
but the important thing is the way the program 
and the child interact, ll allows a child whose 
drawings are still very primitive to make faces 
that actually resemble real faces, and program 
them to perform a series of actions. When my son 
plays with Pacemaker, he is creating something, 
and doing things with it that could not possibly 
he done without the computer. (Spinnaker, 215 1st 
St., Cambridge, MA 02142,) 

The Five Types 

There are probably other games that make use of 
the special advantages of the home computer, but 
the point is that they are distressingly rare. Most 
of the games coming out today are variations on 
the same old themes: 

• Target Shoot. The targets move, they dance, 
they are cute or they are menacing, but the game 
always consists of shooting them down. 

• Tag, The same old targets, but you have to 



The Official 




«IP%.- 




s«.' 



The game that puts space games in 
perspective. Zaxxon", one of the most 
popular arcade games of 1982. is now avail- 
able for use with your home computer 
system. 

Zaxxon" technology and creativity present 
a 3-dfmensional-like playfield which sets 
Zaxxon '" apart from other computer games. 

Zaxxon^" looks and sounds like aircraft 
flight, and players can soar to new levels of 



home computer entertainment. From the 
daring attack on the enemy's floating for- 
tress and the blazing battle against the en- 
emy's fighter fleet to the final showdown with 
the deadly armored robot, Zaxxon" chal- 
lenges the skill and imagination of every 
player at every level of skill. 

Imagine yourself the pilot, attacking the 
enemy fortress-climbing, diving, strafing to 
score points and extra fuel. The enemy 
fights back with a barrage of missiles and 
gunfire. Then you face a fleet of enemy fight- 
ers in a gripping dogfight of altitude strategy 
and flying skill. Survive this battle and the 
enemy's fortress, defended with laser bar- 
riers, then you Ve earned the ultimate chal- 
lenge; a blazing confrontation with the pow- 



erful robot, armed with a lethal homing 
missile. 

Zaxxon "" is the one game that you must see 
to believe. You have to play it to feel its im- 
pact. If you're ready to face the challenge, 
check with your local software dealer or 
send check or money order with S2.00 post- 
age handling. California residents add 
6V2% sales tax. Available on cassette or 
diskette. Suggested retail price S39.95. 

Available on Atari ^ 1 6K cassette, and 1 6 32K 
disk, Radio Shack' Color 32K cassette and 
disk, Apple' 48Kdisk. 



Ikiki 



S%iMJL 



y COMPUTER SOFTWARE 
9421 Winnetka Avenue 
Chatsworth. CA91311 
(213)701-5161 
c.1982Datasoft^ Inc. 

, a registered trademark ol Datasoft Inc. ' 



Sega* and Zaxxoo" are regislered trademarHs of Sega Enterprises tnc. 



catch them instead of shooting at them. 

• Corning at You, Tag, only they're trying to 
catch you or shoot you, anci you spend a lot of 
time running and dodging. 

• Scramble. You have to get from here to there, 
and there are things in the way. 

• Maze. Like scramble, only there are several 
routes you can follow, and you have to figure out 
the best one. 

Have 1 missed anything? Even sports simula- 
tions, like the sports that inspired them, are com- 
binations of these elements. Football is tag plus 
scramble - or coming at you, depending on 
whether you're playing offense or defense. 
Hockey is target shoot plus scramble. Baseball is 
scramble, target shoot, and tag. Lots of fun, but 
all these w^onderful new^ games are just combina- 
tions of the same old things. 

New, creative game elements are getting 
rarer. An arcade game like joust, which really 
does introduce a whole new w^ay to move a player 
on a screen, still turns into tag-plus-scramble once 
you master wing-flapping. Donkey Kong Junior 
has that wonderful swinging motion and the dif- 
ference between two-handed and one-handed 
climbing, but it's still a maze with things coming 
at you. 

What else is there? 

Games That Let You Create 

What I want to see are games that let the player 
create things. BASIC and LISP and PASCAL and 
PILOT all fit the bill - but they also require mas- 
tering some pretty sophisticated concepts. They're 
fun, but they aren't exactly play. What 1 would 
like to see is something as simple as building with 
wooden blocks, while exploiting all the strengths 
of the home computer. 

And what are those strengths? 

1. Time. Running out ofquarters doesn't mean 
you have to quit. Nobody's rushing you to finish. 
You can think, instead of letting the computer 
train your reflexes. 

2. Permanence, You can save the result of 
w4iat you've done, change it, re-use it, limited 
only by the number of cassettes or diskettes you 
have on hand. 

3. Wor/d creation. You're manipulating num- 
bers, it's true; but the result can be visible and 
audible, and it can move. You can create worlds 
the way fiction writers create them, and bring 
them to life as, until now, only movie-makers 
could. 

4. Individuality. It's your computer. Why 
shouldn't the results of your play, and your chil- 
dren's play, be uniquely your owai? Why should 
the only difference betw^een you and any other 
player be your score? 



Let's Design A Game 

It's easy to talk about this kind of game. It's only 
a little harder to design it. So I'll give you a detailed 
game design that you can program. But after what 
I've said about individuality and creativity, there's 
no way 1 could provide you with a complete pro- 
gram listing. I'll just offer detailed documentation 
for the game, then a few hints on how^ to program 
it, and let you design the way the program works 
yourself. It can easily be executed in BASIC, 
though at some points you may be happier with 
machine language subroutines. 

(The documentation that follow^s is long and 
detailed, but w4ien you're designing a computer 
game, it's usually a good idea to figure out exactly 
what the player's experience of playing the game 
will be like. This is especiall)^ true if you aren't as 
conversant with your programming language as 
you are with English. By waiting out the instruc- 
tions and rules first, as I have done here, you can 
save yourself debugging and revising time later.) 

Railroader 

You are building a network of railroads. When 
it's all built, you control the switches and make 
your train run on the tracks wherever you want. 

The game, though simple enough for a pre- 
schooler to master, is really an introduction to 
programming. Model railroaders were designing 
loops and branches long before electronic computers 
were a twinkle in Sperry-Rand's eye. If the player 
does not close all the loops and resolve all the 
branches, the program will provide a few re- 
minders. If the player still refuses to tie up loose 
ends, the program will do it. 

And, for those who have the most fun playing 
cooperatively with someone else, the program 
allows two players to design railroads on the same 
screen, and run their trains at once (with some- 
times disastrous effects). 

The Track-Laying Stage 

"Railroader" begins by announcing its name and 
finding out the answers to a few questions. Do 
you want to lay track or run a train on an already- 
created track layout? Will there be one or two 
players? Do you want to lay track at the beginner 
or expert level? Do you want to save the track 
layout you create, and if you plan to save it in a 
disk file, w^hat should the file be named? 

When you have made your selections and 
pressed START, the screen displays a list of 
instructions: 

"Use joystick and joystick button to lay 

track units," 

"Type 1 to go on to the next track unit." 

"Type 2 to choose w^hich railroad spur to 
complete." 



36 COMPUTE! July 1983 



BECOME AN INTREPID SPACE ADVENTURER 




by William Muk 
CoCo version by Roger Schrag 
Atari version by John Anderson 
Far beyond the known galaxies, you 
venture deep into the vast reaches of outer 
space. But you are not alone! In a flash, 
without so much as a how-do-ya-do, they're 
in hot pursuit and you're left to do before 
you're done unto. Can you elude your 
pursuers? Will you elude your pursuers? And 
who are these guys anyway? Find the 
answers to these and other compelling 
questions in AREX. See your dealer today! 

AREX . . . Coin-op arcade realism at home 
for 1 to 2 players. 



AREX 

CoCo 16K TAPE 

TR&80 Model 1 S 3 16K TAPE 
TR&80 Model! & 3 32K DISK . 



0600172 $34.95 
0100172 S34.95 
012-0172 S34.95 



OR FLY HIGH IN THE IKDRLD OF HIGH FINANi 




by George Schwenk 
TRS-80 version by Dave Simmons 

CoCo version by Roger Schrag 
**Yas, after purchasing diamond nnines in 
South Africa, oil wells in Saudi, and rare beer 
cans in Walla Walla, Washington, I had begun 
to wonder what other trendy commodities 
remained to be added to my swelling 
portfolio. Then a snip of a ticket girl dared to 
tell me (ME, Hartley J. Wormsflather III!) that 
my flight was overbooked. To avoid future 
misunderstandings, I bought the airline." 

*M think I'm on to something profitable 
here." Hartley J. Wormsflather 

AIRLINE . . , A no-holds-barred strategy game 
for 1 to 4 players. 

AIRUNE 

ATARI 400 & 800/ CoCo/ Model 1 &316K TAPE., 1400169 



Published by 



U 





INTERNATIONAL 





write for our free catal 






8 



please) or 
ARE INVIT 



"Type 3 when your layout is complete. At this 
point, if you haven't brought every spur back 
to the main line. Railroader will do it for you, 
and if you want to save the layout. Railroader 
will save it." 
"Press any key or joystick button to begin." 

When you give the signal, a light green screen 
appears. If there is one player, a single orange 
square appears about one-quarter of the way in 
from the left on the bottom of the screen. If there 
are two players, a second square appears a quarter 
of the way in from the right. These squares work 
like cursors - they mark the area where you are 
laying track. 

Laying Simple Track Units 
(The Beginner Level) 

To lay track, use your joystick. Push forward to 
make a straight vertical track unit appear in the 
square. Push left for a track that curves to the left, 
right for a track that curves to the right. If you 
change your mind, push a different direction, 
and the track unit changes. However, the first 
track unit always starts at the bottom center of the 
square. 

These simple hack units look like this: 














■\ 


~\ 





When you are satisfied with your choice, you 
reach over to the computer and type 1 . Your square 
now moves to the blank area just beyond the end 
of the track unit you placed on the screen. If you 
put on a straight track, your square will appear 
just above it; if you curved left, your square will 
appear to the left. 

If you are playing alone, you may immediately 
lay the next unit of track; if there is another player, 
you must wait your turn to lay track again; when 
the other player types 1, it will be your turn. 

The next time you lay track, your new track 
unit will begin where the old one left off. If you 
curved left before, your new track unit will start 
in the middle of the right-hand edge of your cur- 
sor, like this: 

Cursor 






- 



i V>/// / /// ////////// 



i- 






Again, to lay simple track units you have 
three choices. Let's say that you curved left on 
your first track unit. Now if you push the joystick 
left, a straight horizontal track unit will appear. If 
you pull the joystick toward you, the track will 
make another curve, this time downward. If you 
push the joystick away from you, the track unit 
wall curve upward. 

With e\ ery simple track unit you lay, the 
track will always begin where the last square left 
off, and will end up heading in one of the three 
valid directions you can push the joystick. 

If you cause the track to end at the edge of 
the screen, your cursor will appear at the opposite 
edge. This means that track that ends on the left 
side of the screen is continued on the right side; 
track that ends at the top is continued at the 
bottom. 

Erasing. If you want to go back and change 
the last track unit you completed, push the joystick 
in the direction of that track unit. Any track unit 
you laid in the new position will be erased, and 
your cursor will move to the former square, where 
you can either lay a track segment or go still farther 
back, erasing each track segment as you leave it 
behind. You may erase as many track units as 
you like, or stop at any point and lay a new track 
segment. But remember, if you are playing with 
another player, your turn ends w^hen vou type 1. 
You can erase as many units as you like, but you 
can lay only one track unit. 

When Tracks Touch. Ai the beginner level, if 
you cause the track to touch an existing track seg- 
ment, either your own or the other player's. Rail- 
roader will automatically create the following 
valid patterns: 



■\ 


^ 


V 



Crossover 



Curved by-pass 



At the beginner level, and whenever you are 
touching the other player's track units, you may 
not cause the two tracks to join. If you are about 
to cross a curved track, you can choose to curve 
onhj in the opposite direction. If you are about to 
cross a straight track, you can lay only a straight 
track across it, not a curve that would join it. And 
if a new track unit would cause your track to run 
into the end of another player's spur, you will be 
allowed to lay only curved tracks that turn away 
from the other player's track: 



38 COMPUTE! July 1983 



miiM*DflTflj SOFTWARE 



FORTHECOMMODORE64; PET:ANDVIC20 



TAKE AN EXCITING TRIP 
DOWN AVENUES OF 
ADVENTURE WITH: 

• Pakacuda* 

• Escape* 

• Logger* 

• Ape Craze* 

• Centropods* 

• Supercuda* 

• Street Maze 

• Caves of Annod 

• Capture the Beast 

• Market 



THROUGH TRAILS OF 
CREATIVITY WITH: 

• Sketch and Paint 

• Music Mentor 







u A 



,g 




12345 _ 

9x9=81 8 



y^ 



I 



& *;i 






ARRANGE PASSAGE TODAY! 



ALONG THE PATH TO 
KNOWLEDGE WITH: 

• Wordspot 

• Math Tutor Series 

• Alphabet Tutor 

• Geography Smash 

• Gotcha Math 

• English Invaders 

• Math Invaders Series 

ASK FOR COMM*DATA 

COMPUTER HOUSE SOFTWARE 

AT YOUR LOCAL DEALER. 

Or Send for FREE Complete Catalog: 

COMM*DATA COMPUTER HOUSE 

320 Summit Avenue 

Milford, Michigan 48042 

(313)685-0113 

Dealer Inquiries Welcome. 



Commodore 64, PET, and VIC 20 are Registered Trademarks of Commodore Business Machines, Inc. 
"High Res Full Machine Code Arcade Style Games. 



Not Allowed 



Allowed 



', 



nu^uutifufun t 



hnffinf futnnnm 






i 




your track 






oth 


er track 






i V 








V 


"^ 


\ 






^ 


^ 





"ifUTTTf iff iimni 



your track 



other track 



your track 








other track 






V v^ 










\ 




^ 




^ 


] 




■\ 


\ 





) I 






J 







your track 



other track 



your track 



other track 



your track 



other track 



Erasing Crossovers and By-passes. If you are 
erasing and come to a unit where your track by- 
passes or crosses over another track, either your 
own or the other player's. Railroader will leave 
the other track intact, and remove only the track 
from the line you are erasing. 

Ending the Track-laying Session, With the 
beginner-level game, that is the whole track-laying 
sequence. You just keep laying track until you 
match up the end of your track with the beginning 
at the bottom of the screen. When you are ready 
to quit, type 3. If you haven't linked your track 
with the beginning track unit. Railroader will 
automatically lay track from the last unit vou 
created until it links with the first unit, so that the 
track always makes a closed loop. 

Next month we'll go on to the Expert l^evel Game, 



COMPUTE! 

The Resource, 




40 COMPUTE! July 1983 






V3-^'%^ 




THE PLACE: a remote outpost on an ice world light years from earth. 

Suddenly the small planet THULE is surrounded by alien life orbs destined to change the atmo- 
sphere to suit themselves. However, this speils certain death for your base as the frozen mountains 
start to melt! 

You take the command of your single seat fighterto destroy the aliens before it's too late. But you 
didn't know the aliens had help. . . 

STAR SENTRY is an arcade-type space action game written entirely in machine language for 
one player. Cassette or disk, 24K. $29.95. 




—^V] 


Wi 


wrmr 

: •A. mi 


.^^Hjt^^^ 


•^ 



RO. BOX23 
\A/ORCESTER. MA 01603 

{61T)892-348S 



Star Sentry is a trademark of A.N.A.L.O.G. Software. 



NEW PRODUCTS 
AT THE COMDEX/SPRING 

COMPUTER SHOW 



Tom R Holfhill Features Editor 



Neza products displayed at the Comdex/Spring confer- 
ence, held in Atlanta during late Aprii show a trend 
toward still more home computers, lower-priced home 
peripherals, and increasing support for the popular 
home computers already on the market. 

This year's Comdex/Spring show was more inter- 
esting than most for home computerists. Known 
officially as the ''National Spring Conference Ex- 
position for Independent Sales Organizations/' 
Comdex is primarily a sliovv for computer dealers, 
manufacturers, and businessmen. Consequently. 
almost all the wares on display at this large show 
are for the more expensive personal and business 
systems. 

At the show this year, however, there seemed 
to be more than the usual number of exhibitors 
displaying products for lower-priced home com- 
puters. Two new home computers were shown - 
both imports; several low-cost printers and other 
peripherals made impressive appearances; and 
software started catching up with hardware (at 
least a little) as new programs were introduced 
for all the popular home computers. Most of these 
products should be on the market by the time this 
article appears. Here's a rundown: 

New Computers 

It's hard to imagine how the low-end home com- 
puter market can absorb many more machines, 
especially with such leading contenders as Com- 
modore, Texas Instruments, Atari, and Tandy 
engaged in runaway price wars. But the home 
market is expanding so fast that no one wants to 
be left out, least of all the Japanese and the 
British. 

That's why you can expect to see more im- 
ports invading the U.S. market. The British suc- 
cess with the Timex/Sinclair isn't easily ignored. 

42 COMPl/TE! July 1983 



The newest British entry is the Oric-1, man- 
ufactured by Oric Products International Ltd., of 
Berkshire, England. Reputedly the second best- 
selling micro in Britain and Europe (next to the 
Sinclair), the Oric-1 appears to be a good computer 
in search of a good U.S. distributor. An Oric rep- 
resentative said the company experimented with 
mail order sales, but quit in favor of setting up a 
more conventional distribution network. Oric 
hopes to have one in place by midsummer. 

The standard Oric-1 includes: 16K of Random 
Access Memory (RAM); a 57-key keyboard, with 
moving keys arranged typewriter-style; full repeat 
on all kevs; standard ASCII character set with 
upper/lowercase; 96 redefinable characters; 16 
colors; 40-column by 28-row screen display in text 
mode; and a 240- by 200-pixel high-resolution 
graphics mode. For sound there is a three-channel 
sound synthesizer with a seven-octave range and 
programmable envelopes, similar to the Commo- 
dore 64, an internal speaker, and connections for 
external speakers. 

A cassette interface works at 300 baud or a 
very fast 2400 baud, and interfaces include a built- 
in Centronics-standard parallel printer interface; 
an expansion port for RAM and Read Only Mem- 
ory (ROM) cartridges; and a Red -Green- Blue 
(RGB) interface for high-resolution color video 
monitors. The built-in BASIC programming lan- 
guage includes such interesting commands as 
INK and PAPER (for color control), DOUBLE, 
FLASH, and INVERSE (for character control), 
DRAW, CIRCLE, and PLOT (for graphics), and 
even SOUND, MUSIC, PLAY, PING, SHOOT, 
EXPLODE, and ZAP (for sound control). 

The Central Processing Unit (CPU) is the 
6502A microprocessor, basically the same chip 
found in Apple, Atari, and Commodore com- 
puters. While this doesn't mean the Oric-1 is 



^P)tf U Wd my KoalaPad TbucftTal 
f kid KoalaWarc software ^^ "" 



J^K ^'M 



I 




Introducing the KoalaPad™ At less than $125 -with software - 
it's the friendliest, least expensive graphics pad on the market. 

Your Atarif Commodore,® Apple,® and IBM® customers will love it. They'll find it faster than 
paddle controllers. More flexible than joysticks* And much easier to use than a keyboard. 

Plus it's compatible with most of their game and educational software. And most KoalaPad sets 
come with a graphics program called Miao -Illustrator™ The most exciting way yet to create colorful, 
high resolution computer graphics. At the touch of a finger. 

There are KoalaWare programs for computer fans of all ages. 
Dancing Bear,"^ the funny, furry computer cabaret. Spider Eater™ the 
lively music learning adventure. And Spellicopter,™ the action- 
packed spelling game. 

Sellmg Koala products is as easy as falling out of a tree. 
Particularly with our 5% co-op allowance, color p.o.p. materials, and 
traffic-building promotions. Not to mention our extensive national 
advertising featuring, ahem, yours truly. 

For the name ofyour nearest Koala distributor, call toll free 



800-227-6703, (in California, 800-632-7979). 
Or write to Koala Technologies Corporation, 
4962 El Camino Real, Los Altos, CA 94022. 



<;;phaala 

Technalagies Carporation 




We make computing more personal,™ 

Trademarks: KoalaPad, KoalaWare, Spider Eater and Dancing Bear are trademarks of Koala Technologies Corp. Micro ^Dlustrator Js a trademark of Island Graphics, and Spellicopter is a 
trademark of DesignWare Inc. r- *- 




X^^"^:' 




■-LI 




Ijookwhat 
tor your VIC 20. 






'ast actioiir Conh plex^^trateg les. 
Interesting characters. Supe- 
■ rior sound effects. Multiple levels 

of play Ij^r-^^^rTSL/ 

These are the things you want 
from your VIC 20™ 

They're also the things you get 
from Tronix. From the people who 
brought you Swarm!, Sidewinder 
and Galactic Blitz. r">-yL. / '7^ 
^7- And now, there'smofe. "^ 
' Now Tronix brings you the same 
rewarding rapid-fire excitement in 
three brand-new game cartridges. 
7^ Each one is something dif 
ferent. Something new. But they a^ 
have one thing in common. 
/ "'^ They're all designed to bring 
/ out the best in your VIC 20. 
You shouldn't settle for any 
thing les 



oii«»* 



BJ^ 




By , 
Jimmy Huey :^ 

In a predatory world ^ 
of killer worms, dragons, stalk-/ '^ 
el's, pods and fly traps, the scor- TW- 
pion prowls the maze in search 7---/^ 
of sustenance. Frogs and their 
eggs rnean survival to the scorpiony 
But they can also mean instant ^ 

death! (Suggested retail $39.95). 





7^ 




r--^-/ 




7-^, 



we have in store 






Your helicopter gun- 
ship hovers over the enemy's 
military bases and missile emplace- 
ments. Your mission is to destroy 
them. But as the sky fills with smart 
bombs and anti-aircraft fire, there's 
less and less room for a wrong 

move! (Suggested retail $39.95) 






By 
Corey Ostman. 

Deep in the earth, a 
7^^ fortune awaits. But the dark 
passageways are filled with peril as 
well as profit. Runaway boxcars. 
Crashing boulders. A claim jumper 
with murder in his eyes. Be careful. 
But be quick— oxygen is in short 
supply! (Suggested retail $39.95) 



8295 South La Cienega Blvd., Inglewood, CA 90301 
Look for Tronix games in your nearest store. If you can't find them there, write to us. 

VIC 20''*' IS a trad^rpar k ol CcHnmodof^Electfomcs I rd 



compatible with these computers^ it does mean 
that machine language programmers could adjust 
to it fairly easily. 

The standard Oric-1 will sell for about $120 in 
U.S. funds. For about $240, there's a 64K RAM 
version with 16K of overlaid ROM, similar in ar- 
rangement to the Commodore 64. 

Oric also makes a full line of peripherals for 
the Oric-1. At Comdex, Oric was showing pro- 
totypes of a microfloppy disk drive using the 
Hitachi 3-inch disks. The microfloppy is expected 
to sell for about $240. 

If Oric succeeds in setting up a good U.S. 
distribution network, the Oric-1 could prove com- 
petitive in this country, especially if its overseas 
software base is also brought to America. 

The Japanese Sord 

Of course, the Japanese aren't standing idly by, 
either. Their newest export to the U.S. is the Sord 
M5, a $199 computer with impressive graphics 
and three different plug-in BASlCs. The M5 is 
made by Sord Computer Systems, the fastest- 
growing microcomputer company in Japan. 
Founded in 1970 with $2500 by 26-year-old 
Takayoshi Shiina, Sord now commands about 15 
percent of the Japanese business microcomputer 
market. Sord is exporting a line of high-end per- 
sonal and business computers to the U.S., and 
the M5 is its first home computer. 

The M5 will be sold in two different config- 
urations: the M5 Fun Computer and the M5 Multi- 
Computer. The basic specifications are the same: 
20K of RAM expandable to 32K (although 16K is 
used for the screen); 8K of ROM with a machine 
language monitor; 16 colors; a 55-key keyboard 
with moving rubber keys; upper/lowercase and 
graphics characters; a flip -up top that conceals a 
cartridge slot for games, programming languages, 
and other plug-in "firmw^are"; built-in Centronics- 
standard parallel printer interface; cassette 
interface for standard tape recorders; sound gen- 
erator; Z80A CPU; and a Texas Instruments video 
chip which allows up to 32 sprites (screen objects 
which can be created and animated by your own 
programs). 

The two packages do vary, however, in terms 
of included accessories. The M5 can accept any of 
three BASIC language cartridges - BASIC-I (Intro- 
ductory), BASIC-G (Graphics), and BASIC-F 
(Floating Point). BASIC-I is for beginners and 
children, BASIC-G is for general home use and 
graphics programming, and BASIC-F is a full- 
fledged floating-point BASIC for business, 
science, and math applications. The M5 Fun Com- 
puter comes with BASlC-1 and a game cartridge. 
The M5 Multi-Computer comes w^ith BASIC-G, 
an interesting dialect with special commands for 
the graphics and sprites. The Multi-Computer 

46 COMPUTE! July 1983 



also has a carrying case and the FALC cartridge, a 
home data base program adapted from Sord's 
business software. 

The M5 will be distributed through local 
dealers by Sord Computer of America, New 
York. 

The Gorilla Banana 

When personal computers cost $1000 or more, it 
seemed reasonable that printers sold for around 
$500 or $600. But now that full-featured home 
computers are widely available for under $100, 
the same printers can seem disproportionately 
expensive. That's why manufacturers are rushing 
to produce printers (and other peripherals) that 
are priced for the hundreds of thousands of 
people who are buying inexpensive mass-market 
computers. 




Vie Gorilla Banana is the first in a new Hue of low-cost 
peripherals from Leading Edge. 

Several new low-cost printers were seen at 
Comdex. Probably the one which attracted the 
most attention was the Gorilla Banana, the first in 
an upcoming line of low-cost peripherals from 
Leading Edge Products, Inc., of Canton, Mas- 
sachusetts (best-known for Elephant Memory 
disks). Due this summer at S249.95, the Banana is 
an 80-column, tractor-feed, unidirectional, dot- 
matrix printer capable of 50 characters per second. 
It has four character sets (U.S., British, Swedish, 
and German), a double-width print mode, and 
upper/lowercase (although without true descen- 
ders). There's also a dot-addressable graphics 
mode with a density of 63 x 60 dots per inch. 

The Banana attaches directly to any computer 
with a Centronics-standard parallel printer inter- 
face. Computers without a parallel port will need 
an interface at extra cost. An interface for Com- 
modore 64 and VlC-20 computers will be available 
for $29.95, and an optional cartridge for the same 
price will allow the Banana to print the special 
Commodore graphics characters. 

Another interesting 80-coIumn dot-matrix 
printer is the STX-80 from Star Micronics, Inc., of 
Dallas^ Texas, Suggested retail is $199. Although 
the STX-80 is a thermal printer- it uses a special 
print head and heat-sensitive paper to form its 
type instead of an inked ribbon - you wouldn't 



HES: 

Expanding 
the Computer 
Experience. 



HES offers a broad range of soft- 
ware and peripherals for Commo- 
dore 64, VIC 20, Timex-Sinclair, 
and Atari computers. 

These products include exciting 
educational programs, versatile 
utilities, and series of hot challeng- 
ing computer games. Contact your 
distributor or HES now for full 
product information. 

< 1983 Human Engtrieered Soltwaie 

commodore 64 and VIC 20 are TMs or Commodore. 



Human Engineered Software 
A Division of USI International 
71 Park Lane 

Brisbane, California 94005 
Telephone: 415 468 4110 



us 



Wm. 




^■■^% 



5^" 




Gartridqe 
fprV!G?0 



^■ife^ 



tM^SJ55oi* 






^'' 



••;5<^i'SifeM'^^|^-| 



guess it from the printouts. The thermal paper 
looks and feels much like standard typing paper. 
Unlike most thermal paper, which is silver, this 
paper is white with crisp black lettering. The STX- 
80 is a unidirectional printer that works at 60 
characters per second, has upper/lowercase with 
true descenders, a double-width text mode, block 
graphics characters, European characters, a dot- 
addressable graphics mode, and a Centronics 
parallel interface. 

Star Micronics also offers a 40-column, inked 
ribbon, dot-matrix printer for $250. The DP-8240 
prints at 50 characters per second, has friction or 
tractor feed, upper/lowercase without true 
descenders, graphics characters, scientific and 
European characters, and a dot-addressable 
graphics mode. 

The lowest-priced printer exhibited was the 
$129.99 Impact Printer from Fidelity Electronics, 
Ltd., of Miami, Florida, The Impact Printer works 
with the VIC-20 and Commodore 64 with no ad- 
ditional interface. Printing at 30 characters per 
second, it has a 24-column line and uses standard 
adding machine roll paper. Other features include 
upper/lowercase, graphics characters, inverse 
characters, and dot-acidressabic graphics. 

Custom Joysticks 

Since the "feel" of a joystick is highly subjective, 
manv independent companies are introducing 
"custom" joysticks for those who dislike the stan- 
dard models (for an overview of custom game 
controllers, see "The Joy Of Joysticks," COM- 
PUTE!, Februaiy 1983). A few more new joysticks 
surfaced at Comdex. 

Suncom, Inc., of Northbrook, Illinois, makers 
of the Slik Stik and Starfighter joysticks for Atari- 
ct^mpatible computers, came out with a Starfighter 
model for the Apple. The Starfighter is about the 
same size and shape as a standard Atari joystick, 
but with comfortably rounded edges. Overall, it's 
a luxurious controller with right- and left-handed 
fire buttons; an alternate fire button for games 
that require two buttons; a centering adjustment 
to fine-tune the stick's neutral position to each 
Apple; a switch to select either a long or short 
throw of the stick; and a high-low sensitivity 
switch to further tune the stick's response. Also, 
Suncom guarantees the Starfighter for two years. 
Suggested retail is $49.95 for the Apple He version 
(a $5.95 adapter is needed for the Apple II/II + ). 

Suncom also introduced two new controllers 
for Atari-compatible machines (Atari 400/800/ 
1200XL, Commodore 64 and VIC-20, Atari VCS 
2600, Sears Telegame). The most unique is the 
Joy-Sensor, a stickless joystick. The Joy-Sensor is 
a hand-holdable box with a flat disc where the 
stick should be. Instead of flexing a stick, you 
rock the disc. It lists for $34.95. 



Suncom's other new joystick is the TAC-2 
(Totally Accurate Controller). This looks like an 
adaptation of the Starfighter, with the addition of 
a longer, ball-tipped stick, and both right- and 
left-handed fire buttons. The TAC-2 is guaranteed 
for two years and lists for $19.95. 

For users of Texas Instruments computers, 
Suncom introduced a $12.95 adapter so that Atari- 
style joysticks will work on the TI-99/4A, and a 
$13.95 dual cassette recorder adapter. 



Since the "feel" of a joystick 

is highly sub|ective, many 

independenf companies are 

Introducing "custom" joysticks 

for those who dislike the 

standard models. 



Two new joysticks were also introduced by 
the Kraft Systems Company of Vista, California. 
The Kraft Joystick is a lightweight Atari-compatible 
controller with an unusually short, tlexible stick 
designed for fingertip action. It includes an extra- 
long eight-foot cord, a one-year warranty, and 
retails for $16.95. Another joystick, the Switch- 
Hitter, has two fire buttons for use by right- or 
left-handed players. Otherwise identical to the 
Kraft joystick, it retails for $19.95. 

Accessories And Peripherals 

Numerous other add-ons were introduced at 
Comdex/Spring, too. Here are some which de- 
serve special note: 

• A low-cost modem for the Apple. The $119 
Networker modem, by Zoom Telephonies, of 
Boston, Massachusetts, plugs into a single expan- 
sion slot and requires no other connections or 
external power source. It's a 300-baud direct- 
connect modem that hooks up to any modular 
phone jack. It has an originate/answer switch, a 
carrier detection LED, and is compatible with any 
standard telecommunications software. For $169, 
the Networker comes with Netmaster, a terminal 
program with upload/download, and a 40K text 
buffer (on a 64K system). 

• Plug-in boards for Commodore and Texas 
Instruments computers. Microtek, Inc., of San 
Diego, California, introduced a $299 64K memory 
board for the TI-99/4A which fits into the expan- 
sion box. A 32K board also is planned. For the 
VIC-20,' Microtek introduced VIGOR (VICs Grand 



48 COMPUTES July 1983 




1983 SpACtro Vid«o, Irtc 



THE PERSONAL COMPUTER 
YOU'LL GROW INTO, NOT OUT OF. 



SPECTRAVIDEO SV.318 COMPUTER COMPARISON CHART 




SPECTRAVIDEO 
SV)1« 


APPLE 11 KUS 


ATARI BOO 


COMHOOORC (4 


NECSOQi 


RADIO SHACK 
COLOR COMPUTER 


BASE PRICE 


S299 


t1,S40 


SBN 


SS9S 


i3^ 


S299 


COMPUTING POWER FEATURES 














BUItT-IN ROM 


33H 


l?K 


1(JK 


2W 


1SK 


m 


EXPANDABLE TO 


WK 


NfA 


«K 


NfA 


33K 


16K 


BUILT-IN EXTENDED MICROSOFT* BASIC 


VES 


YES 


AOOIUONAL COST 


MO 


YES 


ADDITIONAL COST 


BUILMN RAM 


nn' 


*BK 


leK 


64K 


ICK 


*R 


EXPANDABLE TO 


t«Hl" 


64K 


4&K 


N^A 


33K 


lEK 


KEYflOAHD FEATURES 














NUMBER Of= KEYS 


/I 


'jl 


bi 


C« 


n 


Si 


USER DEFINE FUNCTIONS 


10 


N.rA 


4 


8 


10 


NONE 


SPECIAL WORD PflOCESStNC 


I'es 


UO 


NO 


NO 


NO 


NO 


GENERATEDCRAPHICS (FROM KErBOARD* 


^£S 


NO 


YCS 


yts 


NO 


NO 


UfPEfi.'LOWtRCASE 


ihS 


UPPER ONLY 


YES 


YES 


YES 


YES 


GAfMEJAUtJlOFEATuBES 














SEPARATE CARTniDGE SLOTS 


ves 


NO 


YES 


NO 


NO 


NO 


BUILT-IN JOYSTICK 


VES 


NO 


r^O 


NO 


NO 


NO 


COLORS 


le 


li 


12S 


IE 


9 


9 


RESOLUTJON (PIXEL51 


?» r 192 


JSOi 16Q 


3?Q«19J 


320*200 


256*112 


tSfluM 


SPRITES 


M 


NIA 




e 


N/A 


N« 


SOUND CHANNELS 


3 


1 


4 


3 


3 


1 


OCTAVES PER CHANNEL 


e 


4 


* 




a 


10 


AOSR ENVELOPE 


YES 


NO 


NO 


YES 


YES 


NO 


PERIPHERAL SPECIFICATIONS 














CASSETTE 


? CHANNEL 


1 CHANNtL 


?CMA»<NtL 


1 CHANNEL 


I CHANNEL 


1 CHANNEL 


AUOtO iO 


YES 


HQ 


YiS 


NO 


NO 


NO 


BUILT IN MJC 


YtS 


NO 


NO 


NO 


NO 


NO 


DISK DftlVE CAPACITY 


»eK 


143K 


96K 


If OK, 


WA 


1?^ 


(LOW PROFILE) 


YES 


«o 


HO 


NO 


NO 


NO 


CPj¥' COHPATi0!LfTY f M CDlumn programs) 
















ttS 


NO — 


NO 


NO- 






CP/M' 3 


vtS 


HO 


JiO 


NO 


NO 


NO 






' CoiiimnjDft 64 Kx«p(3 40 cciutnn CP/M 






FOR UNDER $300 ^^TWHy/ga7 



This device has nol been approved by the Federal Coinniufticatiofis Commission. 
This device is rat and may not be offered for sale or lease, or sold or leased uniil 
Ihe approval oi the FCC has been obl^ined. 



SV3I8 



Represented Nationwide by The Lexingston Group 
(301)664-6611 



P6RS0NAL COMPUTER 

SPECTRA VIDEO INC . 39 W 37m St N Y , N v >OOm 



Sadiy. many pmsona! computQrs wiH become fomor row's 
junk in the attic. 7heSV'3l8isoneft^at wllinot. Because os 
you get better, it gets better, tt does so because of its 
copobility and BxpandabiHty—both for beyond tt)oseof 
any other aftordable computer. 

CAPABILITY. The SV-316 isn't Just more capable, it's much 
more capabte. No ottier computer at even twice the price 
combines oH these extraordinary features: 32K /?OjM 
expandabte to 96K; 32K RAM expondabie to 144H; 
Extended Microsoft Basic (the industry standard): even 
Standard CPft^ eOcolumn capability soyaucon 
immediate ty utiiize over 10,000 existing software 
programs.The SV-3i8 also has a un/qi/e buitt-in joystick/ 
cursor controi—an immeasurabty useful teature when it 
comes to playing your favorite video game. 

EXPANDABtUTY. As you become more and more skillful 
with computers, you'll love how the SV-31B "sttetches" to 
meet your demands (dnd actuoiiy leads yau in foscinoting. 
new directians). Far one thing, all eleven of our important 
peripherals are available immediately. With most ott}er 
models, you have to wait months. Far another, the SV-318 is 
beautifully designed to interface with new options as they 
became available. 

AFFORDABIUTY. The SV-3W is hot ohty emlnentty afford- 
able, it's the first true bargain of the computer agel Besides 
home budgeting, business applicatians, wotd processing, 
programming and seitteachihg. theSV-3!disthe best 
entertainment value in town. Not only can you use it with 
your TV to play hundreds of different video games, you 
con also use your SV-318 with a TV as a drawing tablet or 
music synthesizer, in play, as in wori(. the SV'3}6 will 
continually expand to meet your patentiai 

Whether you're just wetting your foes in computers, or 
fully asoifon the woofers, the SV-3}6 is a computer that will 
serve you tor many, many years. You see, we believe that 
even in the computer age, you don t become on object of 
real value unless you're around for a white. 



Old RAM-cage). This is a $39.95, three-slot ex- 
pansion board. For both the VIC and Commodore 
64^ there's the CC-2064, a $70 interface cable which 
allows the computers to drive parallel printers, 

• New disk drive for Atari. The Rana 1000 
Atari-compatible disk drive, by Rana Systems, of 
Carson, California, also was shown at the West 
Coast Computer Faire in San Francisco a few 
weeks before Comdex/Spring. Due on the market 
this summer, the Rana 1000 is switchable single/ 
double density and will retail for $449 ($49 extra 
for the double-density Disk Operating System). 




The Rana 1000 disk drive for Atari offers single a} id double 
density for $449. 

It has some unique features not found on other 
drives: a write-protect button, a unit ID button 
(which tells you the drive's position in the daisy 
chain if you have several), an error button (which 
returns an error code), and a button which lets 
you know which track the head is reading or 
writing. What's more, the drive runs very quietly 
and is only about a third the size of a standard 
Atari drive. 

• Network systems for Atari. These systems 
look like tliey'd be ideal for classrooms, computer 
camps, and even users groups. With the Quick 
Share, you can hook up to four Atari computers 
to a single disk drive, 850 Interface Module, and 
printer. The Quick Share continuously scans the 
four computers for input/output commands and 
lets them access the devices on a first-come, first- 
served basis. Four blinking LEDs let users know 
when the devices are busy. It costs $595 and is 
available from Wolsten's Computer Devices, Inc., 
of East Orange, New Jersey. The company also 
introduced a similar, but larger system primarily 
for classroom use. Called the Network 216 and 
Monitor 16, it allows up to 16 Ataris to connect to 
a single drive and printer. In addition, the master 
station hooks up to a TV so the operator can see 
what's happening on any one of the 16 computer 
monitors. A headset with a microphone plugs 
into the station so the operator can converse pri- 
vately with any of the 16 students (the operator's 
voice comes through the TV speaker). This looks 
like a great way for teachers to make sure their 

50 COMPUTE! July 1983 



students aren't playing Centipedes on the sly. It 
will sell for $1995, cables extra. 

• Supermother for VIC-20. What's a Super- 
mother? It appears to be the largest expansion 
board available for the VIC, This huge board has 
eight switch-selectable slots for memory and pro- 
gram cartridges, a system reset button, a pause 
button that freezes games or other programs, and 
a switch that lets you back up cartridges on tape 
or disk. It retails for $149.95, from Compuscope, 
Inc., of Tillamook, Oregon. 

Educational Software 

Now that more schools are acquiring computers 
for their students, and more parents are buying 
home computers for their children, the demand 
for good educational software is becoming almost 
unquenchable. Fortunately, some companies 
with background in other educational fields are 
starting to get involved in software. 

Among these is Scholastic, Inc., of Englewood 
Cliffs, New Jersey. Remember the Weeklif Reader? 
Scholastic is now introducing Wizware, a line of 
programs for Apple, VIC-20, Atari, and Texas 
Instruments computers. The first samples are 
entertaining and colorful and make good use of 
each computer's special features. Among the in- 
teresting programs at the show were Turtle Tracks, 
which uses turtle graphics to teach programming 
by creating drawings and songs; The Square Pairs, 
a memory game; and Your Computer, a how-to 
introduction to computers with a robot narrator. 

Another line of educational software was 
displayed by Edu-Ware Services, Inc., of Agoura 
Hills, California. Most were for the Apple, with a 
few for the Atari. Ranging from preschool to col- 
lege level, the programs cover basic math, algebra, 
spelling, reading, perception, and SA T/PSAT 
preparation. One of the most interesting packages 
was Hands On BASIC Programming, an introduction 
to Applesoft BASIC with additional instruction 
on more advanced BASICs. It includes a 185-page 
manual and two disks of sample programs. 

Microfloppy Update 

More shots were fired during the show in the 
continuing microfloppy wars (see ''Mass Memory 
Now And In The Future," COMPUTE!, March 
1983). Since nobody has agreed yet whether to 
adopt the 3-inch, 3V4-inch, or 3^2- inch standard, 
everyone seems to be going their own way. 

Thus Verbatim Corp. of Sunnyvale, Califor- 
nia, widely known for its larger diskettes, unveiled 
a prototype of a 3^/^-inch microfloppy disk. The 
3V2-inch size is backed by Sony, and Verbatim's 
microfloppy will be manufactured under license 
from Sony. However, Verbatim is varying a bit 
even from Sony's standard in order to conform 
with recommendations of the Microfloppy In- 



Doift let pried get in the ^v^ 
I (downing a quality printei: 



Adding a printer to your computer makes 
sense. But deciding which printer to add can be 
tricl<y. Do you settle for a printer with limited 
functions and an inexpensive price tag or buy a 
more versatile printer that costs more than your 
computer? Neither choice makes sense. 

Here's a refreshing option -the new, compact 
STX-80 printer from Star Micronics. It's the under 
$200 printer that's whisper-quiet, prints 60 cps 
and is ready to run with most popular personal 
computers. 

The STX-80 has deluxe features you would ' 






'^^^H^' 
^^^^y-- 



m 



•f.^^pf>^-i 



expect in higher priced models. It prints a full 80 
columns of crisp, attractive characters with true 
descenders, foreign language characters and 
special symbols. It offers both finely detailed dot- 
addressable graphics and block graphics. ^ 

And, of course, the STX-80 comes with Star^ 
Micronics' 180 day warranty (90 days on thej| 
print element). WSSSSS^: Jlii^^ 

The STX-80 thermal printer from Star 

Micronics. It combines high performance with 
I. a very low price. So now, there is nothing in 

' the way of owning a quality printer. ™^^ 



'Manufacturers suggested retail price, 




micronics* inc 



THE POWER BEHIND THE PfllKTED WORD. 

Computer Pertpherafs Division. 1120 Empire Central Ptace. 
Suite 2ia Dallas. TX 75247 (214J 531-8560 




^!^,%2r'- 







,i^^£r£.; 




t "■• 'r" — "VH 



The newSTX-SO printer 
L for only $1991' 



dustry Committee. Verbatim's microfloppy will 
have 80 tracks instead of 70, an automatic shutter 
which covers the head window when the disk is 
removed from a drive, and a thinner magnetic 
coating. 

Meanwhile, across the convention hall, 
another company was introducing a 3 '/4-inch 
microfloppy drive while distributing photocopies 
of news articles about a rejection of the SV^-inch 
size. The 3'/4-inch drive, hooked up to a Radio 
Shack TRS-80 Color Computer, was exhibited by 
Tabor Corp., of Westford, Massachusetts. It's 
based on the Dysan 3 '/4-inch microfloppy, a chal- 
lenger to Sony's 3y2-inch disk. Instead of selling 
directly to the public, Tabor plans to supply the 
drive to other companies for private labeling. 
The photocopied article was from Computer Si/5- 
tcnis News, reporting on the recent vote by the 
American National Standards Institute not to 
adopt a working paper submitted by Verbatim 
and Shugart pushing the 3 '/2-inch size. 

The decision was far from final, however, 
and all three sizes are still very much alive. And 
just to make things more interesting, IBM recently 
unveiled a 4-inch microfloppy disk drive. It ap- 
pears it will be quite a while before the various 
factions within the microcomputer industry agree 
on how much to shrink disks. © 



Cassettes are slow.< 

If you own a Commodore 64'' or VIC 20'' computer, you 
already know how long it can take to load or save a program. 
How much time are you wasting just waiting for READY to 
appear on the screen? Probably a lot, and that's why you need 

THE SIGNAL^-^ from ZAXIS. 






N 



THE SIGNAL automatically keeps track of cassette 

operations and signals you with 

a pleasant "beep" when both a 

prog^ram header is found and 

when a Load or Save is 

completed. You no longer need 

to stare at the screen for what si^^S^ 

seems like endless minutes^ "^fii**^ 

instead you can go on to other ^^^, 

work and when you hear THE -^^^^ 

SIGNAL, vou know that things /A'- ' 

are READY. THE SIGNAL also *^. ,, 

provides a reassuring power-on ^^ 

beep, and can be activated 

under program control. $28b^^ 

THE SIGNAL plugs right into the back of your VIC 20 or 
Commodore 64 computer, and your cassette cable plugs into THE 
SIGNAL. That's all it lakes to start making your computer 
operations more efficient. After you've used THE SIGNAL, you 
won't know how you got along without it! 

THE SIGNAL is available from your favorite computer dealer, or 
order direct; S29,95 plus $3.00 for UPS shipping and handling iCA 
residents add 6,b'~f sales taxi. We accept VISA. MasterCard, check or 
money order. Do not send cash. Sorry, no CODs. /v*^:^T /nyu""'* Ht/m-iw 

Commodore 64 and VIC 20 are trademarks of Commodore Business Machines, tnc 

I RO. Box 666 

San Carlos, CA 94070 
(4151592*4334 



W' . UJE mflKE fl GREAT CASE 
%r^ FOR VOUR COmPUTER. 

^^^ One size does not fit all. Our cases are designed for specific hardware 

configurations. When you put your computer in our case, it fits hand-in-glove. 
Once your equipment is safely inside the attache-style carrying case, it never has 
to be taken out again. To operate, simply remove the lid and connect the power. 
To store your computer, disconnect the power, enclose your disks, working papers, 
and manuals in the compartment provided , and attach the lid. It's as easy as that. 

• AP101 Apple II with Single Drive , £1 09 

• AP1 02 Apple II with Two Disk Drives 119 

• API 03 Apple II 9-inch Monitor & Two Drives 129 

• API 04 Apple III, Two Drives & Silentype Printer 139 

• AP105 13" Black & White Monitor with Accessories 99 

• AP106 Amdek Color U1 or 111 Monitor... 119 

• FR152 Franklin Ace 1000 or 1200 with Two Drives 119 

• FR1 53 Franklin Ace 1 000 or 1 200 with Two Drives & 9" Monitor ... 1 39 • P409 

• RS201 TRS-80 Model I Computer, Expansion Unit & Drives 109 • IB501 

• RS204 TRS-80 Model ill 129 • IB502 

• AT301 ATARI 400 or 800 Computers with Peripherals 109 • HP601 

• P401 Paper Tiger Printer (400. 445/460) 99 • CM702 

• P402 Centronics 730/737 & Radio Shack Printer 89 • CM703 

• P403 Epson MX70 or MX80, Microline 82A Printer or Color • CM704 
Computer...., 89 • NS010 

• P404 Epson MX100 Printer. 99 • CC80 

• P405 IDS560orPrism 132 Printer 109 • CC90 

• P406 C. Itoh Starwriter. Prlntmaster F-10 Printer. 119 • CC91 

• P407 Okidata Microline 83A or 84 Printer 99 • CC92 

• P408 C. Itoh Prowriter 2 Printer 99 • CC50 




IB502 



IB501 



C. Itoh Prowriter (Apple Dot Matrix) or WEG PC8023 Printer 

IBM Personal Computer with Keyboard — 

IBM Monochrome Monitor. , 

HP41 with Accessories 

Commodore 64 (or Vic 20) with One Drive 

Commodore Model 64 with Two Drives 

Commodore Model 64 with Dataset , 

North Star Advantage. . 

Matching Attache Case (5") 

Matching Attache Case (3") 

Matching Accessories Case (SV*" Diskettes, Paper, etc.) . . . 
5.25" Diskette Case (Holds 75 Diskettes) . 
Case Cart...... 



89 

129 

99 

99 

119 

129 

109 

139 

85 

75 

95 



CALL TOLL FREE: (800) 848-7548 
Computer Case Company, 5650 Indian Mound Court, Columbus, Ohio 43213 (614) 868-9464 




52 COMPUTE! July 1983 



TIMEX MAKES THE 

COMPUTER, 

BUT WE MAKE rr TICK. 

If you own a TS-1000 or ZX-81 computer and want to bring out the power within it, you'll want Memotech. From easier input to high 
quality output and greater memory, Memotech makes the add-ons you demand. Ever\' Memotech peripheral _ ^ 

comes in a black anodized aluminum case and is designed to fit together in "pigg)^ back" fashion enabling you ^^^^^^BlmWm 

to continue to add on and still keep an integrated system look. ^.^1:::::::t::^:'^^... 




Mii^ fl*»o)wliDrt GupNci "^ 





MEMOPAK RAM All Memopak RAMs are directly addressable, user transparent, are neither switched nor 
paged and no additional power supply is required. You can also choose the Memopak I^M which is just 
right for your needs. From economy to powder. 16K RAM The Memopak 16K RAM is the most 
economical way to add memor}' to your TS-1000, It is fully compatible with the Timex or Memotech 16K 
l^Ms to provide you with up to 32K of RAM. The i6K RAM also offers additional add-on capabilities 
through its "piggy back" connection. 32K RAM The 322K Memopak enables you to execute 
sophisticated programs and store large data bases and like the l6K RAM is fully compatible with Timex's or 
Memotech's l6K RAMs to give you a full 48K of RAM. 64K RAM The 64K Memopak is powerful 
enough to turn your TS-1000 into a computer with capabilities suitable for business and educational use. It 
accepts such BASIC commands as 10 DIM A (9000). MEMOCALC Memocalc, our spreadsheet analj^is 
software, enables TS-1000 users to perform complex number crunching routines with eiise, Witli 
the 64k RAM a table of up to 7000 numbers with up to 250 row^ or 99 columns can be specified. 
Quick revisions can be achieved by entering new^ data to your formula. 
MEMOTECH KEYBOARD For ease of operation, the Memotech keyboard is a high qualit\^ 
standard t\pewriter keyboard, with TS-1000 legends. The keyboard is cable connected to a buffered 
interface which is housed in a standard Memopak ciise and plugs directly into the back of the 

TS-1000 or other Memopaks. MEMOPAK HRG The Memopak High Resolution Graphics, with 
up to 192 by 248 pixel resolution, enables display of high resolution "arcade game" style graphics 
through its resident 2K EPROM, programmed with a full range of graphics subroutines. 
CENTRONICS PARAUEL AND RS232 INTERFACES 
Memotech's Interfaces enable your TS-1000 to use a wide range of 
compatible printers. The resident software in the units gives the 
complete ASCII set of characters. BoUi Memopak Interfaces provide lower case character capabilities and 
up to 80 column printing. The RS232 Interface is also compatible with modems and terminals. 
SEIKOSHA GP lOOA PRINTER The Seikosha GP lOOA uses a 5x7 dot matrix printing format with 
ASCII standard upper and lower case character set. Printing speed is 30 characters/second with a 
maximum width of 80 characters. The printer uses standard fanfold paper up to 
9-1/2 inches wide. The GP lOOA is offered as a package including cable and 

interface. Other printer packages are also 
available tlirough Memotech. 
ORDER AT NO RISK. All Memotech 
products carry our 10 day money back 
guarantee. If you're not completely 
satisfied, return it within ten days and we 
will give you a full refund. And ever}^ 
Memotech product comes with a six 
month warrant)^. Should anything be 
defective with your .Memotech product, return it to us and we will repair or replace 
it free of charge. Dealer inquiries welcome. To order any .Memotech product use 
the order coupon or call our toll-free number SOO/662-0949* 

T5-1000 is a zc^stered uademaii of 'Hitkx Cocp. 

CORPORATtON 
7550 West Yale Avenue, Denver, Colorado 80227, 303/986-1516, im 910-320-2917 





Mail To: Memotech Carporaiion, 7550 West Vale Ave., Denwr, 00 80227 
I CoLle rO-7 

I 16KR^M I 49.95 



I -^^}L 



99.95 



I ^1!™„ 



149.95 



Memocalc 



49.95 



99.95 



I High E^lution Graphics 



99.95 



[ Caitronics Paralk! Interface 



74.95 



RS232 lni£Tface 



99.95 



Printer Cable 



19.95 



GP lOOAPrintgrPadagt** 
I Shipping -Mid Handlin| 



399.00 



I T^ (Coioradio r BJdente €nl>) 
I 



4.95 



1495 



TOTAL 



I •Ail pnc& {jLBted in US. dollarj Prices and spaifiaiiora subien to change without notice. 
1 **P3ease add an additional S5 00 for printer shipping chii:ges 
I n Check D MasterCard Q Visa 



1 Accobnt iNo. 
I 



_£xp.. 



I Name 



Zfp 



.-I 



RATS! 



Mike Steed 




\ 




This impressive game 

makes \/oit feel that you 

are inside a maze, nof just 

seeing it from above. Three 

dimensional viezvs appear 

as hallways, doors, and 

corners as you struggle to 

find the way out. It's for Upgrade or 

4,0 BASIC PETs and Commodore 6 



You must find your way through a maze 
displayed from a rat's eye view. After 
you have solved the maze, the program 
displays the top view^ and traces your steps. 

First, you are asked what maze size 
you want, up to 15 by 15 (you may wish 
to change the DIM statement in line 49 - 
add two to the largest dimension you 
want - and line 43). Line 45 checks to see 
if the machine code has been POKEd in, 
so you have to wait for that only the first 
time. 

The space bar is used to move forward, 
and the '7" and 'T" keys are used to turn 
left and right, respectively (turning 
doesn't change your k^ation; it just gives 
you the view in another direction). The 
''M" key will display the top view of 
the maze, mark your position, and 
tell you in w^hich direction you 
are headed. 

There are four machine language 
routines in RATS! (they wall all work 

54 COMPUTE! July 1983 






as is with 
Upgrade or 4.0 
ROMs). LINE, as its 
name implies, draws a 
line; this routine is similar to 
Applesoft's HPLOT TO or Atari 
BASIC'S DRAWTO command. 
PLOT sets the ''hi-res cursor" to 
the position from which the next 
line is to be drawn, and plots that 
point on the screen. 
INIT removes everything that is 
not a letter or number from the screen 
(thus the quarter-square graphics are 
erased, but not the "MOVE XX" at 
the bottom of the screen), and sets 
all the variables used by the other rou- 
tines (locations 826-837) to zero. 

SCR either loads or saves some- 
thing to or from the screen. This routine 
is used to save the screen to memory after 
the top view of the maze has been displayed 
the first time, and from then on is used 
to display the maze almost instantly, so 
you have to wait only once. 
Readers who w^ant a copy of the 
program (PET version only) without 
having to type it in may send a 
blank tape or 8050 disk, an SASE 
mailer, and $3 to: Mike Steed 

712 W, 1280 S, 
Provo, UT 84601 



fBO^A 



^ISAODOI^^ 







i 






"^^^ 


|M 


^^H^ijii 




■K^^ 


P^y:M| 


^1 


^^^^H^^H 




4^ 









SPRITEMASTER "* n not jus; anoth^^r sv.t.'. : inc CommtMort; 64' 

computer. 

It's the finest -utilttv avaibfc^e for mutcicolpr sptiie animation and ^me 

pro^^ramming. 

It wtU have yoti making futlcc^or aniimtsed objects in ju^t minutes. People tunning, 

Nr4s fiv-ing or canks roflmg are a snap with SpntL-ry-s-r-jr. 

It's a cartoan maker for children. 

It will auronutically append your sprites to Qther programs. 

It's i^asv to use and understand and comes with a full 2 1 page tn^truction manual 

and samples of animated sprites to ^ you started. {Sfuggest^i wtail price... J£ 55 ,95 ) 



h your Commodore 64* to the limit-! : -- 

NEUTRAL ZONE^" takes vou to the outer cd«es of' the gabic^ . to ALPM.A W 
cton whi-ise mi^on is to detect alten mrrudcr* trum 



.^.^ v^ .,v.-.v,.-\N'S LAND THE NELTR.U ZONE- . 

NEUTRAL ZONE'' is the uidmate in hi^ resolution, fest action, arcav^e qv^ 

yiiracs- k ii written in lOCK?' TT*^-— ''^-^'•"' 

560 Jeiffee panorama. AH acttL 

fantastic sound etteccs. The realism is \mt 
price S 34.95) 



SPRITEMASTER^- AND NEUTRAL ZONE" ARE AVAILABLE AT VOIR LOC AL COMMODORE DEALER ON EITHER DISK OR TAPE. 

ACCESS SOFTWARE INC 

925 EAST 90^' SOUTH, SALT LAKH CITY. UTAH 84105. TELEPHONE [SCU 5^2-1 ^4 
' ' ' - ^* w A nxt'^tctcl trademark at iA^mrrM^doi* Bwsincfss Machines Inc. 



Program 1: rats; pet version 

3 POKE 59468, 12: PRINT CHR$ (142 ): GOTO 38 

4 REM DRAW 3-D VIEW 

5 N=2:A-H:B=V:FF=2t {F-1):SYS IN 

6 Z=M%{A,B)*FF:IF ((Z/l6) AND 1 ) =1 THEN " 

RL=-1:G0SUB 25:GOTO 8 

7 W=M%(A+S,B-R)*FF:IF ((W/128) AND l)=l '^ 

THEN RL=-1:G0SUB 21 

8 IF ((z/64) AND 1)^1 THEN RL=1 ;G0SUB 25 

:G0T0 10 

9 W=M%(A-S,B+R)*FF:IF ((W/l28) AND 1 ) ==1 ^ 

THEN RL=1:G0SUB 21 

10 IF ((Z/12B) AND 1)=1 THEN 14 

11 N=N+1;IF N>8 THEN 15 

12 A=A+R:B=B+S:IF B<2 THEN 15 

13 GOTO 6 

14 GOSUB 17 

15 RETURN 

16 REM DRAW CENTER BACK 

17 POKE HX,VX+DX{N) :POKE HY,YU(N):SYS PL: 

POKE HY,YD(n):SYS LI 

18 POKE HX,VX-DX(N):SYS LI: POKE HY,YU(N): 

SYS LI: POKE HX, VX+DX (N) : SYS LI 

19 RETURN 

20 REM DRAW BACK SIDE 

21 POKE HX,VX+RL*DX(N-1):P0KE HY,YU(N):SY 

S PL:POKE HX,VX+RL*DX(n) :SYS LI 

22 POKE HY,YD(N):SYS LI:P0KE HX,VX+RL*DX( 

N-1) :SYS LI 
2 3 RETURN 

24 REM DRAW RIGHT OR LEFT SIDE 
2 5 POKE HX,VX+RL*DX(N-1) :POKE HY,YU(N-1): 

SYS PL: POKE HX, VX+RL*DX (N) 
26 POKE HY,YU(n):SYS LI: POKE HY,YD(N):SYS 

LI: POKE HX,VX+RL*DX(N-1) 
2 7 POKE HY,YD(N-1):SYS LI: POKE HY,YU(N-1) 

:IF N>2 THEN SYS LI 
2 8 RETURN 

2 9 REM GET KEYBOARD CHARACTER 

30 GET A$:IF A$="" THEN 30 

31 RETURN 

32 REM ERROR SOUND 

33 POKE 59467, 16: POKE 59466, 51 : POKE 59464 

,80 

34 FOR L=l TO 50: NEXT 

3 5 POKE 59467,0: POKE 59466,0: POKE 59464,0 

36 RETURN 

3 7 REM INITIALIZE 

38 HX=828:HY=B29:LINE=12288:PLOT=12665:IN 

IT=12685:SCR=12725 

39 FL=12726:FH=12 730:TL=12734:TH=12 738 

40 PRINT "{clear} {05 DOWN} {17 RIGHT} RATS I 



41 PRINT "{02 down} {03 

FROM A RAT'S EYE 

42 INPUT "{03 down} {07 

,V) 3,3{05 LEFT} 

43 IF H<3 OR H>15 OR V 

44 PRINT "{clear} {dOWI'J 

45 IF PEEK(LI)=32 AND 

EEK(LI+2)=48 THEN 

46 CK=0:FOR L=12288 TO 

L,A:CK=CK+A:NEXT 

47 IF CKO45230 THEN P 

N DATA STATEMENTS" 

48 N=H*V-1:H=H4-1:V=V+1 

49 DIM M%(17,17),WALK( 

U(8),YD(B) 

50 FOR J=l TO V+1:M%(1 



RIGHT} SOLVE A MAZE 
VIEW 

RIGHT}MAZE SIZE (H 
"?H,V 

<3 OR V>15 THEN 40 
} PLEASE WAIT. . . 
PEEK(LI+1)=33 AND P 
48 

12 761: READ A: POKE '^ 

RINT "{dOWnIeRROR I 

:STOP 

:D=1 

100)iCUT(5),DX(8),Y 

,J)=4:M%(H+1, J)-1:N 



EXT 

51 MX=79:r4Y=49:VX=39:VY=24:X=VX 

52 FOR J = l TO 8:DX(J)=X:YU(J)==INT(VY-X*VY 

/ VX ) : YD ( J ) =INT ( VY+X* ( MY- VY ) /VX ) 

53 X=INT{X*7/l0) :NEXT 

54 FOR 1=2 TO H: M% (l , V+1 )=8 : M% (l , 1 )=2 : FOR 

J=2 TO V:M%(I,J)=15:NEXT:NEXT 
5 5 R=INT(h/2)+1:S=INTCv/2)+1:M%(R,S)-15 
56 PRINT "{clear} {down} GENE RATING MAZE.,. 

"; : GOSUB 33 
5 7 REM GENERATE RANDOM MAZE (ALGORITHM FR 

OM ROGERS AND STRASSBERGER) 

58 FOR IWALK=1 TO N 

59 I=Z 

60 IF M%(R-1,S)>14 then 1=1+1 : CUT( I ) =1 

61 IF M%(R,S-1)>14 THEN 1=1+1 : CUT( I ) =2 

62 IF M%(R+1,S)>14 THEN 1=1+1 :CUT( I ) =3 

63 IF M%(R,S+1)>14 THEN 1=1+1 : CUT ( I ) =4 

64 IF 1=0 THEN 75 

65 IF I<>1 THEN I=INT(RND( 1 ) *I )+l 

66 ON CUT(I) GOTO 67,69,71,73 

67 M%(R,S)=M% CR,S)-(M%(R,S) AND 1 ) : R=R-1 

68 M%(R,S)=M%(R,S)-((M%{R,S)/4) AND 1)*4; 

GOTO 86 

69 M%(R,S)=M%(R,S)-( (M%{RrS)/8) AND 1)*S: 

S=S-1 

70 M%(R,S)=M%(R,S)-((M%(R,S)/2) and 1)*2: 

GOTO 86 

71 M%(R,S)=M%(R,S)-( (M%(R,S)/4) AND 1)*4: 

R=R+1 
7 2 M%(R,S)=M%(R,S)-(M%(R,S) and 1):G0T0 S 
6 

73 M%(R,S)=M%(R,S)-( (M%{R,S)/2) AND l)*2: 

S=S+1 

74 M%(R,S)=M%(R,S)-( (M%(R,S)/8) AND 1)*B: 

GOTO 86 
IF D=-l THEN 79 
IF R<>H THEN 83 
IF S<>V THEN 82 

7 8 R=2:S=2:GOTO 84 
79 IF R<>2 THEN S3 

IF S<>V THEN 82 
R=H:S=2:G0T0 84 

8 2 S=S+1:D=-D:G0T0 84 
8 3 R=R+D 

84 IF M%(R,S)=15 THEN 75 

85 GOTO 59 

86 NEXT I WALK 

8 7 MH=H:MV=V;I=INT(RND(1)*{MH-1)}+2 

88 M%(I,1)=0:M%(I,2)=M%(I,2}-((M%(I,2)/8) 

AND 1)*8 

89 H=INT(RND(1)*{MH-1) )+2 :H1=H:V1=V 

90 PRINT "{clear} {down} MAZE COMPLETED .": G 

OSUB 33: GOTO 105 

91 REM DISPLAY TOP VIEW OF MAZE 

92 HZ=INT(79/mh) :VZ=INT(49/MV) 

93 sys in:poke 216,24:print tab( 25 ) ; " {up} 

{home}"? 

94 poke hx,1+hz:p0ke hy,1+vz:sys pl: poke 

HY,MV*VZ+1:SYS LI 

95 FOR J=l TO MV:FOR 1=2 TO MH:N=M%(l,J): 

X=I*HZ+1 : Y=J*VZ+1 

9 6 IF ((n/2) and 1)=1 THEN POKE HX,X:POKE 

HY,Y:SYS PL:POKE HX,X-HZ:SYS LI 

97 IF ((n/4) and 1)=1 THEN POKE HX,X:POKE 

HY,Y:SYS PL: POKE HY,Y-VZ:SYS LI 

98 NEXT: NEXT 

99 RETURN 

100 REM MARK PLAYER'S POSITION 

101 X=H*HZ-1:Y=V*VZ-1:P0KE HX,X+1:P0KE HY, 
Y+1:SYS PL 



75 
76 

77 



80 
81 



56 COMPUTE! July 1983 



BUSIWRTTER 



BGSIWRITER A Honey of a Word Processor 

Why word processors? 

Word processors allow the user to quickly and easily create letters, 
memos, notes, reports, term papers^ manuals, poetry and any other writ- 
ten information using the memory of the computer as a pencil and 
paper. The computer display or terminal acts as a window through 
which the user views the information as it is entered. The outstanding 
advantage of using BUSIWRITER is that it acts not only as a pencil and 
paper but as a perfect eraser and automatic typewriter. 




Efl^ 



M'^n'a'^ii Q^'o o H n » n a B E3 El 



; ^ a £1 o a d d B Q IB n H D I 

.£1 am oomaacitsiaan os m f^ ' 





For Commodore CBM-64 
Commodore 1515, 1525, Epson, C. Itoh, Qume, Diablo, NEC Spinwriter, Starwriter, 

Prowriter, Okidata, Micro[ine, Gemini-10 
And many more printers 
BUSIWRITER The Queen Bee of Word Processors 

BUSIWRITER allows the user to quickly and easily make any number 
of alterations to the text. BUSIWRITER wiil instantly reformat your text 
and show you exactly and continuously how the final output will appear. 
BUSIWRITER has more functions than any other known microcomputer 
word processor. With BUSIWRITER assisting in the entry of text, provid- 
ing a 20 page memory and performing an enormous number of editing/ 
composing functions, the preparation of written data is far faster and 
outstandingly more accurate than if it were prepared by hand. 

BUSIWRITER With the Sting Removed from the Prices 

BUSIWRITER 64 only $99.00 for the CBM 64 

BUSIWRITER AVAILABLE NOW FROM YOUR LOCAL DEALER 

(800)227-9998 
FOR THE NAME OF YOUR NEAREST DEALER 




California, Canada, Alaska and Hawaii please calt (415) 966-1735 ^ri^- i 




i 



Skyles Electric Works 

231G South Whisman Road 
Mountain View. CA 94041 



Europe please contact Supersoft, Winchester House, Harrow Wealdstone, England HA3 7SJ, Tel. 01 861 1166 



102 

103 
104 

105 

106 
107 

108 
109 
110 
111 
112 

113 

114 

115 

116 

117 
118 
119 

120 

121 
122 
123 
124 
125 
126 
127 
128 
129 
130 
131 

132 

133 

134 
135 
136 

137 

138 

139 

140 
141 
142 
143 
144 

145 

146 
147 



148 
149 
150 
151 



152 



POKE HX,X-HZ+2:P0KE HY, Y-VZ+2 : SYS LI:P 153 
OKE HY,Y+2:SYS PL 

POKE HX,X+2;P0KE HY, Y-VZ+2 :SYS LI 154 

RETURN 155 
FOR X=l TO MH:FOR Y=l TO MV:M% (X, Y)=M% 

(X,Y)+M%(X,Y)*16: NEXT: NEXT 156 
REM PLAY 

F=INT(RND(1)*4)+1:0N F GOTO 108,109,11 157 

0,111 158 

R=0:S=-1:GOTO 112 159 

R=+l: 8=0: GOTO 112 160 

R=0:S=+1:GOTO 112 161 

R=-l!S=0 162 

PRINT "{clear} {DOWN JPRESS {REV}j[0FF] 163 

TO TURN LEFT 164 

PRINT "ID0WN}PRESS {REV}l{OFF} TO TURN 165 

RIGHT 166 

PRINT "t DOWN 1 PRESS { REV } SPACE I OFF} TO 167 

GO FORWARD 168 

PRINT "IdOWN}PRESS {REV}mIOFF} TO DISP 169 

LAY TOP VIEW OF MAZE 170 

PRINT "[03 DOWN} {rev} PRESS ANY KEY TO 171 

CONTINUE " 172 

GOSUB 30:PRINT " IcLEAR} " ? iGOSUB 5 173 

REM GET KEYSTROKE 174 

GOSUB 30 175 

ON -(A? = "J")-2*(A5-"L'*)-3*(A$=" ")-4*{ 176 

A$="M") GOTO 122,124,131,136 177 

GOSUB 33:GOTO 112 178 

F=F-1:IF F<1 THEN F=4 179 

GOTO 12 5 180 

F=F+1:IF F>4 THEN F=l 181 

ON F GOTO 126,127,128,129 182 

R=0:S=-1:GOTO 130 183 

R=+1:S=0:GOTO 130 184 

R-0:S=+1:GOTO 130 185 

R=-1:S=0 186 

GOTO 135 187 

Z=M%(H,V):T=Z*2"(F-1);T=(T/128) AND 1: 188 

IF T=l THEN GOSUB 3 3:GOTO 119 189 

NM=NM+1:P0KE 216, 24: PRINT TAB{25);"{UP 190 

UP}M0VE"?NM? "[home) "; 191 

IF NM<100 THEN WALK(NM)=F 192 

H=H+R:V=V+S:IF V<2 THEN 147 193 

GOSUB 5:G0T0 119 194 

IF NOT MS THEN 138 195 

POKE FL, 218: POKE FH, 49: POKE TL,0:POKE 196 

TH,128:SYS SC : GOTO 139 197 

GOSUB 92: POKE FL,0:POKE FH, 128: POKE TL 198 

,218:POKE TH,49:SYS SC:MS=-1 199 

GOSUB 101: PRINT "{hOME}YOU ARE FACING 200 

";: ON F GOTO 140,141,142,143 201 

PRINT "NORTH"; :GOTO 144 202 

PRINT "EAST"r:GOTO 144 203 

PRINT "SOUTH"; :GOTO 144 204 

PRINT "WEST"; 205 

PRINT ". PRESS ANY KEY TO": PRINT "CON 206 

TINUE":GOSUB 30 207 

PRINT "{home) 2 03 

": PRINT " " 209 

GOSUB 5: GOTO 119 210 

GOSUB 33:V=V1:H=H1:IF MS THEN POKE FL, 211 

2 18: POKE FH,49:P0KE TL,0:POKE TH, 212 

128 213 

IF MS THEN SYS SC:GOTO 150 214 

GOSUB 92 215 

GOSUB 101 216 

PRINT "{home) {down} CONGRATULATIONS- YOU 217 

*RE OUT IN"?NM?''STEPl {left} {INST} 218 

S" 219 

REM DRAW PATH WALKED 2 20 



POKE HX,H*HZ-HZ/2+1:P0KE HY, V*VZ-VZ/2+ 

1 :SYS PL 

FOR N=l TO NM:IF N>100 THEN 158 

F=WALK(N):V=V+(F=1)-(F=3):H=H+(F=4)-'(F 

= 2) 

POKE HX,H*HZ-HZ/2+1:P0KE HY, V*VZ-VZ/2+ 

1 ;SYS LI 

NEXT 

PRINT: END 

DATA 32, 33, 48, 173, 58, 3, 133 

DATA 0, 173, 59, 3, 133, 1, 32 

DATA 0, 49, 173, 62, 3, 205, 63 

DATA 3, 16, 8, 240, 6, 32, 173 

DATA 48, 76, 3, 48, 96, 169, 128 

DATA 24, 109, 60, 3, 56, 237, 58 

DATA 3, 141, 63, 3, 169, 128, 24 

DATA 109, 61, 3, 56, 237, 59, 3 

DATA 141, 64, 3, 162, 128, 142 

DATA 66, 3, 142, 69, 3, 232, 142 

DATA 67, 3, 142, 68, 3, 173, 63 

DATA 3, 201, 128, 176, 11, 169 

DATA 127, 141, 68, 3, 169, 0, 56 

DATA 237, 63, 3, 41, 127, 141 

DATA 63, 3, 173, 64, 3, 201, 128 

DATA 176, 11, 169, 127, 141, 67 

DATA 3, 169, 0, 56, 237, 64, 3 

DATA 41, 127, 141, 64, 3, 173 

DATA 63, 3, 205, 64, 3, 176, 32 

DATA 174, 63, 3, 172, 64, 3, 142 

DATA 64, 3, 140, 63, 3, 173, 68 

DATA 3, 141, 66, 3, 173, 67, 3 

DATA 141, 69, 3, 169, 128, 141 

DATA 67, 3, 141, 68, 3, 173, 63 

DATA 3, 74, 141, 65, 3, 169, 

DATA 141, 62, 3, 96, 173, 68, 3 

DATA 56, 233, 128, 24, 109, 58 

DATA 3, 141, 58, 3, 173, 69, 3 

DATA 56, 233, 128, 24, 109, 59 

DATA 3, 141, 59, 3, 173, 65, 3 

DATA 24, 109, 64, 3, 141, 65, 3 

DATA 238, 62, 3, 173, 65, 3, 205 

DATA 63, 3, 48, 35, 240, 33, 56 

DATA 237, 63, 3, 141, 65, 3, 173 

DATA 66, 3, 56, 233, 128, 24, 109 

DATA 58, 3, 141, 58, 3, 173, 67 

DATA 3, 56, 233, 128, 24, 109 

DATA 59, 3, 141, 59, 3, 96, 169 

DATA 0, 133, 148, 169, 32, 133 

DATA 2, 165, 0, 201, 80, 176, 56 

DATA 16 5, 1, 201, 50, 176, 50 

DATA 234, 234, 234, 234, 70, 

DATA 38, 148, 106, 38, 148, 133 

DATA 1, 10, 10, 101, 1, 10, 10 

DATA 38, 2, 10, 38, 2, 234, 234 

DATA 234, 133, 1, 166, 148, 189 

DATA 99, 49, 133, 148, 164, 

DATA 177, 1, 162, 15, 221, 103 

DATA 49, 240, 4, 202, 16, 248 

DATA 96, 173, 156, 3, 240, 6, 138 

DATA 5, 148, 170, 208, 8, 138 

DATA 73, 255, 5, 148, 73, 255 

DATA 170, 189, 103, 49, 164, 

DATA 145, 1, 96, 1, 1, 2, 4, 8 

DATA 32, 126, 123, 97, 124, 226 

DATA 255, 236, 108, 127, 98, 252 

DATA 225, 251, 254, 160, 234, 

DATA 173, 60, 3, 141, 58, 3, 133 

DATA 0, 173, 61, 3, 141, 59, 3 

DATA 133, 1, 32, 0, 49, 96, 162 

DATA 128, 160, 0, 134, 34, 132 

DATA 33, 177, 33, 41, 127, 201 



58 COMPUTE! July 1983 




Software first, 
computer second. ^ 

Workhorse solutions 
for tough questions, 

OK. You're ready to make the leap. You need a computer and 
you're ready tD buy. But which one? There are so many Every ^y 
store youVe visited has six different lines. At least two were a# 
always right for you. How can you nnake an intelligent 0' 

business decision? "■'' 

D^lde on your software first No computer is 
better than the soto/are that runs the operation. No 
software is better than Southern Solutions. We 
have real business accounting and recond keeping 
software that is right for todays business worid. 
We sell only through professional computer 
dealers. That is where you are going to get the^ 
help you will need to make any computer 
become the productivity too! it 
should be. 

Compare our software solu 
tions with thetrs; 

RleGuand'^' — Protects your 
precious data files. Never allows 
you to lose files, even if the 
electricity goes off while you 
are working. Most other soft- 
ware loses files after pcwer 
loss. 

SuperMath'" — Maybe 
you are small now. but you 
don't plan to stay that way 
Our software with Super- 
Math "' will handle numbers up 
to $1 billion. Most micros stop at 
far less. 

User-Defined Reports — You can 
decide what your Balance Sheet P&L. 
Budget Analysis, etc., will look like. 

Complete Systems or Individual Mod- 
ules " General ledger accounts receivable, 
billing, payroll, accounts payable, mailing list , s. "^ 
management oil accounting, phannr^cy l «.JV 

management encumbrance account- 
ing, etc. 

Printer Compatible - Our software 
uses practically any printer so you can 
get what you m\\ need for other uses. 

Dealer Supported — Sold only 
through professional computer dealers. 

Hardware Rexible — Software for 
almost every Commodore connputer ever 
made, including the exciting new Com- 
modore 64*. 

Real business software for real 
business computers, with ca- 
pability you need, at prices you 
can afford. 

Call or write for the 
name of the dealer nearest 
you. 

Dealer Hotline: 
1-800-527-4S48 



tinuns 

PO. Box P, M^Xinney. Texas jsoffp - (214) 542-0278 



•Commodore 64 is a registered trademark of Commodore 



221 DATA 64, 48, 2, 169, 32, 145, 33 

222 DATA 200, 208, 241, 232, 224, 132 

223 DATA 208, 232, 169, 0, 170, 157 

224 DATA 58, 3, 232, 224, 12, 208 

225 DATA 248, 96, 169, 218, 133, 31 

226 DATA 169, 49, 133, 32, 169, 

227 DATA 133, 33, 169, 128, 133, 34 

228 DATA 162, 4, 160, 0, 177, 31, 145 

229 DATA 33, 136, 208, 249, 230, 32 

230 DATA 230, 34, 202, 48, 2, 208 

231 DATA 240, 96 

Program 2: 

RATS! 64 Version - Setup Program 

Run this program before RUNiiiii^;^ RATS! on the 64. 

100 POKE16384,0:POKE1 6385,0 
110 POKE56578, PEEK ( 56578 )0R3 
120 POKE56576, ( PEEK( 56576 )AND252 )0R1 
130 POKE53272,4:POKE648,128 
140 POKE53280,12:POKE532B1,12 
145 POKE641,0:POKE642,64 

150 POKE43 , 1 : P0KE44 , 64 : P0KE5 5 , : P0KE56 , 1 
28:P0KE646, 1 : PRINT" {CLR} " 

Program 3: 

RATS! 64 Version -Adjustments To Program 1 

RcphKC these lines in Program 1 if you are using the 64. 

3 rPRINT CHR$ (142) :GX = 49152:GOTO 38 

46 CK=0:FdR L=12288 TO 12761:READ A:POKE 

L,A:CK=CK+A:NEXT:FORK=GXTOGX+2 3:READ 
GX 

47 POKEK,GX:NEXT:IF CKO50144 THEN PRINT 

"{DOWNlERROR IN DATA STATEMENTS": STO 

P 
56 PRINT 'MCLR} {DOWN}GENERATING MAZE..." 

; :GOSUB 2000 
90 PRINT "{CLR}{D0WN}MAZE COMPLETED ." :G0 

SUB 2000:GOTO 105 
93 SYS IN: POKE 214, 24: PRINT TAB (25);" 

{UP}{9 SPACES} {HOME}"; 
117 GOSUB 30:PRINT " {CLR} " ? : SyS49152 : GOS 

UB 5 
121 GOSUB2000:GOT0112 

131 Z=M% (H,V) :T=Z*2| (F^l) :T= (T/128) AND 
1:IF T=l THEN GOSUB 2000:GOTO 119 

132 NM=NM+1:P0KE 214,24:PRINT TAB(25);" 
{UP}M0VE";NM; "{HOME}"; 

147 GOSUB2000:V=V1:H=H1:IF MS THEN POKE 
FL, 218: POKE FH, 49: POKE TL,0:POKE TH , 
128 

Program 4: 

Add these lines to Program 1 if ijou are usijig the 64, 

20 00 30=54 272 :FORR=S0TOS0+28:POKEE,0:NEX 

T 
2010 POKE54296, 15 :POKE54277, 51 :P0KE5 

4278, 211 
2020 POKE 54276, 33 :POKE 54273, 63 :POK 

E54272, 75 
2030 F0PT=1T0 200 :NEXT : POKE54276 , 32:FO 

RT=1T0 100 :NEXT 
20 4 FORE=S0TOS0+2 8:POKEE,0:NEXT 
2050 RETURN 

Remove lines 32, 33, 34, 35, and 36 if you are using the 64, 

60 COMPUTE! JLjfy1983 



Gregg Peele 
Programming Assislont 



RATS! For 64 

The Commodore 64 version of "RATS!" uti- 
lizes the same machine language program 
that was used in the PET version. The pro- 
gram was changed significantly in only two 
ways. First, zero-page locations were altered 
because there is limited zero page space on 
the 64. Second, a routine to fill screen with 
color has been added to make the maze visible 
on the newer 64s. (Color RAM must be 
POKEd on newer 64s, or values POKEd to 
the screen are invisible.) 

Whenever you run the 64 version, you 
must prepare the 64 by running Program 2 
first. Program 2 sets screen memory at 32768 
($8000) and places BASIC at 16384 ($4000); 
this emulates the PET screen and provides 
a safe place for both BASIC and the machine 
language program. Since the screen norm- 
ally resides at 1024 ($0400), be carehd not to 
hit the RUN/STOP and RESTORE keys si- 
multaneously while you are within the 
program. If you do this, then the 64 will 
"forget" where your BASIC program resides, 
and you will lose your program. 

To transform Program 1 (the PET ver- 
sion) into a 64 version, type in Program 1 as 
is except replace, add, and delete lines as 
instructed below. Also, all DATA statement 
lines are different (see Program 5). 



Program 5: 

Use none of the DATA statements from Program 1 . Instead, 
use these for the 64. 



160 
170 
180 
190 
200 
210 
220 
230 
240 
250 
260 
270 
280 
290 
300 
310 
320 
330 
340 
350 
360 
370 
380 

390 
400 
410 



DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

41 

DATA 

DATA 

DATA 



32, 33, 48 
173, 59, 3 
173, 62, 3 
240, 6, 32 
96, 169, 1 
237, 58, 
24, 109, 

141, 64, 

142, 69, 
68, 3, 173 
11, 169, 1 
56, 237, 6 
3, 173, 64 
169, 127, 
237, 64, 3 

173, 63, 3 

174, 63, 3 
3, 140, 63 
66, 3, 173 
169, 128, 
173, 63, 3 
0, 141, 62 
56, 233, 1 



, 173, 58, 3, 133, 2 
, 133, 195, 32, 0, 49 
, 205, 63, 3, 16, 8 
, 173, 48, 76, 3, 48 
28, 24, 109, 60, 3, 56 
, 141, 63, 3, 169, 128 
1, 3, 56, 237, 59, 3 
, 162, 128, 142, 66, 3 
, 232, 142, 67, 3, 142 
, 63, 3, 201, 128, 176 

27, 141, 68, 3, 169, 
3, 3, 41, 127, 141, 63 
, 3, 201, 128, 176, 11 
141, 67, 3, 169, 0, 56 
, 41, 127, 141, 64, 3 
, 205, 64, 3, 176, 32 
, 172, 64, 3, 142, 64 
, 3, 173, 68, 3, 141 
, 67, 3, 141, 69, 3 
141, 67, 3, 141, 68, 3 
, 74, 141, 65, 3, 169 
, 3, 96, 173, 68, 3 

28, 24, 109, 58, 3, 1 



58, 3, 173, 69, 3, 56, 233, 128 
24, 109, 59, 3, 141, 59, 3, 173 
65, 3, 24, 109, 64, 3, 141, 65 



DYNAMIC PRINTER INTERFACES 
for the VIC 2r and the COMMODORE 6f 



UNLIKE ANY OTHERS THAT HAVE COME BEFORE ^*7,_» 

Ifs Jiof qttick or my to do thmss right!! After 8 long mcwKta of rosoarch and devatopmont; RAK-Wara, TYMAC COimOLS CORP. and MfCRO-mB€ Ulilli^ 
brougfit the world better paranel interfaces. Better because they both have the abt'Bty to provide TRUE EMULATION of the Coiamodore^ printer. Tbafs r^htff 
Graphic Characters, tabbing. Dot Graphics, and the other features, A formidable task that was ^natfy accompSshad. 

THECONWECTION^ — The Uttimate Parallef interface forth© VIC 20 or Commodore 64. This fu»y intelligent interface plugs into 
the disk (serial) socket just like the standard printer. H can easily be assigned any device number and it will provide virtually 
TOTAL EMULATION of the Commodore® printer. Using the latest technology, this interface will display the full GRAPHIC 
CHARACTERS or convert them to their equivalent representations in clear text It supports all of the standard commands (OPEN, 
PRINT#, and CLOSER Column tabbing, dot tabbing, graphic repeat, dot addressable graphics, and the other features of the 
Commodore® Printer. Software designed to operate with the Comiiiodore*^ Printer will operate using "THE CONNECTION®." 
Beside this, a 2K buffer has been provided, a full printer self test LED Status indicators, Printer Reset switch, skip over perf, 
margin set and programmable line length. This interface is printer specific to take advantage of the special features of your 
printer. In the standard mode (non-graphics), it is designed to interface virtually any parallel priif|tor with a standard Centronics 
configuration and connector. Specify yourprinter when ordering. Additional ROM's may ||jtir!phased for other printer 
applications ... All this for $t 19.00 ^^"^^0 ^^ 

BUFFERED PARALLEL CABLE & DRIVER - A parallel interface for the 



V budget minded. This interface plugs into the USER-port and comes with an 

extensive manual with ilfiver li^gs for the VIC 2ff^ and the Commodore 
64^^. It can be used with viftually any printer that has a standard 
Centronics type configuration and connection. Fully buffered for maximum 
j protection of your computer ONLY $24.95 Add "CABLE BRAINS" cartridge 

^^ for the VIC 20 (diskette for the 64) and get a full Graphi --*--=— -^-^ -- 

V^ With this package you can print all of the Graphic|| 

-^ V \-^ computer has plus EMULATE the Commodore^ prin^i 

V \ printer specific to take full advantage of your printer, i 

/ graphic matrix printers ... " "^ 



DfSTRIBUTING INC. 
1342 B Rt. 23, 
Butler, NJ 07405 
201-838-9027 



Put Your 



Commodore 64 



TbWark. 




PaperQip 

Easy to learn, easy 
to use word processor, 
*' with so many features 
that most people will 
need only a fraction 
of them". -COMPUTE! 
April. 1983 



*125 



Delphi's Oracle^ 

Data Base system with 
powerful features for 
business. 



nso 



PowerFile 

Organize your lists and 
records. Create a personal 
filing system. Select, 
sort and summarize 
information. Print reports 
and mailing labels. 2 free 
applications included. 
(Personal Tax Records & 
Auto Expenses) 

Versions for all 
Commodore computers 
with 1 or 2 disk drives. 



$130 



9 



FOR SAME DAY UPS SHIPPING, 
CALL OUR ORDER DEPT: 

Collect 414-277-1230 

Dealer inquiries invited. 

City Soitware 



PET CBM and Commodore 64 trademarks of Commodore Electronics. Ltd 
"Products of Batteries Included 



ATTENTION PROGRAMMERS 
If you're new to computings please read "How 
To Type COMPUTE! 's Programs" and "A 
Beginner's Guide To Typing In Programs." 



420 DATA 3, 238, 62, 3, 173, 65, 3, 205 
430 DATA 63, 3, 48, 35, 240, 33, 56, 237 
440 DATA 63, 3, 141, 65, 3, 173, 66, 3 
450 DATA 56, 233, 128, 24, 109, 58, 3, 1 

41 
460 DATA 58, 3, 173, 67, 3, 56, 233, 128 
470 DATA 24, 109, 59, 3, 141, 59, 3, 96 
480 DATA 169, 0, 133, 168, 169, 32, 133, 

196 
490 DATA 165, 2, 201, 80, 176, 56, 165, 

195 
500 DATA 201, 50, 176, 50, 234, 234, 234 

, 234 
510 DATA 70, 2, 38, 168, 106, 38, 168, 1 

33 
520 DATA 195, 10, 10, 101, 195, 10, 10, 

38 
530 DATA 196, 10, 38, 196, 234, 234, 234 

, 133 
540 DATA 195, 166, 168, 189, 99, 49, 133 

, 168 
550 DATA 164, 2, 177, 195, 162, 15, 221, 

103 
560 DATA 49, 240, 4, 202, 16, 248, 96, 1 

73 
570 DATA 98, 49, 240, 6, 138, 5, 168, 17 


580 DATA 208, 8, 138, 73, 255, 5, 168, 7 

3 
590 DATA 255, 170, 189, 103, 49, 164, 2, 

145 
600 DATA 195, 96, 1, 1, 2, 4, 8, 32 
610 DATA 126, 123, 97, 124, 226, 255, 23 

6, 108 
620 DATA 127, 98, 252, 225, 251, 254, 16 

0, 234 
630 DATA 0, 173, 60, 3, 141, 58, 3, 133 
640 DATA 2, 173, 61, 3, 141, 59, 3, 133 
650 DATA 195, 32, 0, 49, 96, 162, 128, 1 

60 
660 DATA 0, 134, 254, 132, 253, 177, 253 

. 41 
670 DATA 127, 201, 64, 48, 2, 169, 32, 1 

45 
680 DATA 253, 200, 208, 241, 232, 224, 1 

32, 208 
690 DATA 232, 169, 0, 170, 157, 58, 3, 2 

32 
700 DATA 224, 12, 208, 248, 96, 169, 218 

, 133 
710 DATA 251, 169, 49, 133, 252, 169, 0, 

133 
720 DATA 253, 169, 128, 133, 254, 162, 4 

, 160 
730 DATA 0, 177, 251, 145, 253, 136, 208 

, 249 
740 DATA 230, 252, 230, 254, 202, 48, 2, 

208 
750 DATA 240, 96 
1000 DATA 162, 0, 169, 1, 157, 0, 216, 1 

57 
1010 DATA 0, 217, 157, 0, 218, 157, 0, 2 

19 
1020 DATA 232, 208, 241, 96, 234, 234, 2 
34, i 



T^icAif^iUVcJUc^ifuMuUcaUaK^ 



s^!' 



ooC^^ 



xxa' 



Ava^ 



00\i' 



'^ RTC 



10610 BAYVIEW (Bayview Plaza) 
RICHMOND HILL, ONTARIO, CANADA L4C 3N8 
(416)884-4165 

C64-LINK 

The Smart 64 



^, 



So 



^Oi 



avj 



V^^^56, 



^0 



RTC 



Call or write 
payments 
by VISA, 
MASTERCARD 
or BANK 
TRANSFER. 
Mailorders 
also by 
certified 
check, etc. 



M any more 64s 



^^ 



I 



^^ 



J 



nrrrTTTTTTTTTTTl 



I 



T TT^ T T T rT TTT 



W i y. 'i' .^^V i , 



T 



Spooling 

to 
Printer 



Cartridge 

Expansion Slot 



Serial 
Audio I/O 

Switch RF Video Port 




@ 



C64-LINK 



IEEE Disl<s 

(2031) (4040) 

(8050) (8250) 

(9090) 




VL16 



IEEE Printers 

(4022) (8023) 

(8300) 

etc. 



1541 Drive 


And 


1525 Printer 


or 1515 Printer 



or VL3 Cable 
to Parallel 
Printer 



(future) 

Cartridge 

Mother Board 



IEEE to Parallel 
Interface 

Parallel 
Devices 



IEEE to Serial 
Interface 

True Serial 
Devices 



or VL4 Cable 

to Standard 

M odem 



CP/M 



POWER 
And 



® 



PAL 



© 



Other 
Cartridges 



Give These Expanded 5^^ 

Capabilities To Your 64 N^ 

-k The ability to transfer data from any type of device to another (IEEE, Serial, 
Parallel) 

■A- BASIC 4.0 which allows you to run more PET BASIC programs and gives you 
extended disk and I/O commands. 

-^ The ability to have several 64s on line together - sharing common IEEE 
devices such as disks or printers with Spooling Capability . 

^ Built-in machine language monitor 

i^ A built-in terminal or modem program which allows the system to communi- 
cate through a modem to many buKettn board systems and other computer 
mainframes. 



if; Compatibility with CP/M. 



Contact your local Commodore Dealer or RTC. 



CopyrlghtsandTradomarks 

C64 13 a copyright of Commodore Business Machines, 
Inc. C64-LINK is a copyright of Richvale Tele- 
communications- CP/M Is a registered trademark of 
Digital Research. POWER is a trademark of Pro- 
fessional Software. PAL is a copyright of Brad 
TempJeton. 



GOBLIN 



Dan Goff 



In ''Gohlin" (for the unexpanded VIC, 64, Atari, Th 
and Apple) citstoifi characters are used to create a shnple 
yet entertaining game. The object is to capture tlie 
scozvling creatures with your goblin zvhile avoiding the 
many block-shaped obstacles that lie in your path. 

After obstacles and sad faces have been 
positioned, "Goblin" begins when the main char- 
acter appears at the bottom of the screen. As the 
game progresses, the goblin moves continually 
upward and the player controls only its horizontal 
movement. The "O" and "P" keys, in conjunction 
with the GET command in line 260, enable the 
player to move the goblin left and right, respec- 
tively. Children especially like the cumulative 
effect of the GET statement; they make rapid key 
punches and then wait for the delayed effects. 

As each sad face is captured by the goblin, 
the score is updated and printed at the upper left. 
If the goblin successfully clears the screen of all 
the faces, an entirely new playfield wall be pro- 
vided. A game lasts as long as you wish. 

A single round ends when the goblin crashes 
into an obstacle. At this point, the remaining sad 
faces smile, and you are asked if you wish to play 
again. If you don't, it is probably best to respond 
by typing "N" so that full memory is restored to 
the VIC. 

On the other hand, if you play again, your 
previous highest score will be posted as the new 
game begins. The incentive to exceed a record 
score makes any game more fun. 



64,AtARI,TI-99/4A 
And Apple Version 
Notes 

The 64, Atari, TI-99/4A, and Apple versions 
of Goblin are almost identical to the VIC ver- 
sion. Minor differences do exist, however, in 
the Atari and Apple versions. 

The Atari version uses the " + " and "'*^" 
keys to control left and right movement of 
the goblin. The Apple uses the left and right 
arrow keys. 

The Apple version requires that you 
have a disk drive with the DOS Tool Kit disk 
in the drive when the program is run. This 
version defines certain characters using the 
program "Animatrix'" from this disk. As 
Goblin is run, these custom characters are 
placed in memory as shapes and are later 
drawn on the high-resolution graphics 
screen. When the game begins, they are 
simultaneously POKEd into the areas of 
memory associated with the text and the 
high-resolution graphics screens. So, al- 
though you see these redefined characters 
on the high-resolution page, collision detec- 
tion is actually carried out by PEEKing text 
screen memory. 




Chasing goblins on the VIC-20 version of Goblin. 

64 COMPUTll July 1983 



Goblin on the Commodore 64. 



..:.,. \ 


/^ r^ 






i- 1 // , 


^\\ 


V\^// ^' 


^^m"^^ 
^s^ 


'l^tGOT THEMOW 
LONG RA^4GE" 




S irius 



For more information 
contact your local Sirius 
dealer or contact Sirius 
directly at 10364 
Rockingham Drive, 
Sacramento, CA 95827 
(916)366-1195. 



Game desfgn by Dan Thompson VIO20 version 
pfogfammed by Leonard Bortoni Package, 
program and audio visual c tgas Sirius 
Software, tnc-. Sacramento. Calilornia SS627. All 
rights reserved. 

Sirius and Final Ofbit are trademarks of Sirius 
Software, inc Alan 400, 800 and t200 are 
trademarks of Atari, Inc- VIC- 30 is a uademark of 
Commodore Business Machines, Cofp Sjrius 
IS no! alhiiated with Alan or Commodore. 



Atari 400, 800 & 
1200 Cartridge 

VIC'20 Cartridge 



WESnCKOURG 

THESUND 








1 



i 






RAPMCS WHERE 




TSHMEI 

You'll never see Infocom s graphics on 
any computer screen. Because theres 
ne\^er been a computer built by man 
that could handle the images we pro- 
duce. And, there ne^^er will be. 
We draw oui' graphics from tlie limit- 
less imageO' of youi* imagination— a 
technology so poweiful, it makes 
any picture that's ever come 
out of a screen look like 
graffiti by compaiison. 
And nobody knows how 
to unleash your imag- 
ination like Infocom. 
Through oui' prose, 
your imagination 
^ makes you part of 
i our stories, in con- 
^ trolofwhatyoudo 
and where you go- 
yet unable to pre- 
dict or control the 
course of events. 
You're confi'onted 
with situations and 
logical puzzles the like 
of which you won't find 
elsewhere. And youre im- 
mersed in rich environments alive 
with personalities as real as any 
you'll meet in the flesh— yet all the 
more \d\ad because they're perceived 
directly by your mind's eye, not 
through your external senses. The 
metliod to this magic? We've found 
the way to plug our prose right into 
your psyche, and catapult you into a 
whole new dimension. 

Take some tough critics' words 
about our words. SOFTALK, for 
example, called ZORK® Ill's prose 




"far more graphic than any depiction 
yet achieved by an adventui'e with 
gi^phicsr And the NEW YORK 
TIMES saw fit to print that our 
DEADLINE'^' is "an amazing 
feat of programming." Even a 
journal as video-oriented as ELEC- 
TRONIC GAiMES found Infocom 
prose to be such an eye-opener they 
named one of oui' games their Best 
Adventure of 1983. 

Better still, bring an Infocom game 
home with you. Discover firsdiand 
w^hy thousands upon thousands of 
discriminating game players keep 
turning everything we wTite into 
instantaneous bestsellers. 

Step up to Infocom. All words. No 
graffiti. The secret reaches of youi' 
mind are beckoning. A whole new 
dimension is in there waiting for you. 

ALOCKHDDOGftA DEAD MAN 





inFocom 

The next dimension. 



Infocom, Inc.. 55 Wheeler St., Cambridge, MA 02138 

Fur vour; Apple ][, Atari, Commodore t>), C?A\t 8.' DEC Kainbow, 
DEC RT'll. IBM NEC APC, NEC PC-8000, Oaborm- 1. Tl Professional, 
TRS-80 Model I. TRS-80 Model III. 



BEGINNING PROGRAMMERS 
If you're new to computing, please read "How 
To Type COMPUTE !'s Programs" and "A 
Beginner's Guide To Typing In Programs/' 



Program 1: GobUn - vie version 

100 PRINT" [CLRl": POKE 52, 28: POKE 56,28:C 
LR:POKE 36869 , 255 : POKE 36879,26 

ll0 IFS>HSTHENHS=S 

115 RESTORE :B=230:Z=81 52 :Z 1 = 2+30720 :W==0: 
S=J:G=0 

120 FOR X=1T03 2:READ A: POKEX+7167 , A: NEXT 
: F0RX=1T08 : READA : POKEX+742 3 , A : NEXT 

130 print"Iclr){rvs11grn}{5 rightIg B 

L I N" 
140 PRINT" {home] I red} {2 DOWN} "SPC ( 12 ) " 

IrVS)HS="HS:PRINT"{HOME} [RVSl {BLK} 

{20 D0WN}0=LEFTl9 RIGHT} P=RIGHT" 
150 FOR 1=1 TO 65 
160 X=INT{RND(l)*330)+7746 
170 IFPEEK(X)=BTHEN 160 
180 POKEX,B:POKEX+30720,0:NEXTI 
190 FORI=1TO20 
200 X=INT(RND(l)*330)+7746 
210 IF PEEK(X)=B0RPEEK(X)=10RPEEK{X)=3TH 

EN 200 
220 IFPEEK(X+21)=BANDPEEK{X+22)=BANDPEEK 

( X+23 ) =BTHENPOKEX , 3 : POKEX+30720 , : G= 

G+1:GOTO240 
230 POKEX,l:POKEX+30720,0 
240 NEXT I 
250 P0KEZ,32:Z^Z-22:Z1=Z1-22:IF Z<7746 T 

HEN z;=Z + 374:Zl = ZH-374 
260 GET A? JIFA$="0"THENZ=Z-1:Z1=Z1-1 
270 IFA$="P"THENZ=Z'M:Z1 = Z1 + 1 
280 IFPEEK(Z)=B THEN 410 
290 IFPEEK(Z)=1 THEN GOSUB 330 
300 POKEZ , : POKEZl , : F0RT=1T02 20 : NEXT 
310 IFW=20-G THEN J=S : GOSUB350 ; GOTO110 
320 GOTO 250 
3 30 W=W+l:S=S+25: PRINT" {HOME} I BLU } 

{2 DOWNllRVS)"S:POKE36878,15 
340 F0RT=2 35TO250 : POKE36876 , T :NEXT : P0KE3 

687 6,0: RETURN 
350 PRINT"{H0ME} {RED} {16 DOWN] { RVS ) ***** 

*ALL RIGHTi******" 
355 FORI=1TO10:GETA$:NEXTI:REM COLLECT G 

ARBAGE 
360 F0RI=1T025 
370 X=INT(RND(l)*15)-!-233 
380 POKE36878, 15:P0KE36875,X 
390 FORT=1TO30:NEXTT:NEXTI 
400 POKE36878 , : POKE36875 , : RETURN 
410 POKE36B77 , 200 : FORV=15TO0STEP-1 : P0KE3 

6878 , V : NEXT : P0KE3687 7 , : POKEZ , 2 
420 FORX=7746TO8075:IF PEEK(X) olTHEN NE 

XTX 
430 IFPEEK(X)=:1THEN POKEX, 3 : NEXTX 
440 J=0 

445 FORI=1TO10:GET C$:NEXTI 
450 PRINT" {HOME} I BLU } {18 DOWN) {RIGHT) 

iRVSjpLAY AGAIN? (Y/N)" 
465 GET C$:IF C$="" THEN 465 
470 IFC$,= "Y"THEN 110 
490 POKE 36869,240:POKE36879,27:POKE52,3 

: POKE56 , 30 : PRINT " { CLR) SEE YA I " 
500 DATA126, 219,219, 255, 165,90, 90, 16 5,60 

,66,165,129,153,165,66,60 

68 COMPUnS July 1983 



510 DATA 170,85,170,85,126,219,255,189,6 
0,66, 165,129,165,153,66,60 

520 DATA 0,0,0,0,0,0,0,0 

Program 2: Gobtin - 64 version 

80 POKE 53280, 2 -POKE 53281,1 

90 PRINT"{CLRJ [7 down) {4 RIGHT) PLEASE WA 

IT. . .DEFINING CHARACTERS"; 
100 POKE 52, 48: POKE 56 , 48 : CLR: POKE56334 , 

PEEK(56334)AND254 
105 P0KE1,PEEK( 1)AND251 

108 FORN=0TO2047:POKEN+122Ba,PEEK(N+5324 
8) :NEXTN 

109 FOR N=0 TO 7 : POKEN+12320 , PEEK (N+5406 
4) :NEXT N 

110 IFS>HSTHENHS=S 

112 RESTORE :B=4:Z^1964:Zl=Z+542 72 :W=0:S= 

J:G=0 
115 VS=54296:AD=54277:SR=54278:WF=54276r 

LB-54272;HB=54273 
120 FOR X=0TO31:READ A: POKEX+1 2288 , A: NEX 

T 
123 POKE l,PEEK{i)OR4:POKE56334,PEEK(563 

34)0R1 
125 POKE 53272, (PEEK(53272)AND240)-M2 
130 PRINT" {CLR) {GRN} {14 RIGHT) [RVSJG B 

L I N" 
140 PRINT" {home) {RED} {2 DOWN} { RVS} "SPC ( 1 

7)"HS="HS 
145 PRINT" {home) {BLK} {22 DOWN) { RVS }0=LEF 

T " ; SPC ( 2 7 ) r "P=RIGHT " 
150 FOR 1=1 TO 118 
160 X=INT(RND(1)*680)+1144 
170 IFPEEK(X)=BTHEN 160 
180 POKEX, B:POKEX+54272,0:NEXTI 
190 F0RI=1T036 
195 G1=0 

200 X=INT(RND(1)*680)+1144 
210 IF PEEK(X)=B0RPEEK(X)=10RPEEK(X)=3TH 

EN 200 
220 IFPEEK{X+39)^BANDPEEK(X+40)^BANDPEEK 

(X+41)=BTHENPOKEX,3:POKEX+542 7 2,0:G1 

= 1 
225 IF Gl = l THEN G=G-M : GOTO 240 
230 POKEX, l:POKEX+5427 2,0 
240 NEXT I 
250 POKEZ, 32:Z=Z-40:Z1=Z1-40:IF Z<1144 T 

HEN Z=Z+760:Zl=Zl+760 
260 GET A$:IFA$="0"THENZ=Z-1:Z1=Z1-1 
270 IFA?="P"THENZ=Z+1:Z1=Z1+1 
280 IFPEEK(Z)=B THEN 410 
290 IFPEEK(Z)=1 THEN GOSUB 330 
300 POKEZ , : POKEZ 1,0: FORT=1TO220 : NEXT 
310 IFW=36-G THEN J=S :GOSUB3 50 : GOTO110 
320 GOTO 250 
330 W=W+l:S=S+2 5: PRINT "{home) t BLU } 

{2 down) "S: POKE VS, 15: POKE AD,30:POK 

E SR,200:POKE WF,17 
340 POKEHB ,71: POKELB , 1 2 : FORT= 1TO90 : NEXTT 

: POKEVS , : POKEHB , : POKELB , : RETURN 
3 50 PRINT" {home} {RED} [18 DOWN) {8 RIGHT) 

{RVS}******ALL RIGHTI******" 
355 FORI=1TO10:GETC$: NEXT!: REM COLLECT G 

ARBAGE 
360 POKE VS, 15: POKE AD, 30: POKE SR,200:PO 

KE WF,i7:F0R 1=1 TO 17 
370 H=INT(RND(0)*10)+21:L=INT(RND(0)*45) 

+210: POKE HB,H:POKE LB,L 
380 FOR T=l TO B0:NEXT T:NEXTI:POKE VS , 

:POKE HB,0:POKE LB,0 



The Home Accountant: 
The *1 best-seller. 














^% 



/ ^^i^ -^^'^^-^ 



Any home finance packase will balance your 
checkbook. But to become the #1 best-selfer 
you've sot to be something special. 

The Home Accountant"* is. 

It's the only one that prints a net worth 
statement and a personal finance statement. 
So you know exactly where you stand 
financially every day of the year. It will even 
print your checks, automatically. 

Not only that Jhe Home Accountant"" lets you 
label every transaction. Just imagine sitting 
down to do your taxes and having every 
penny you've spent and earned neatly listed 
by category —and available at the touch of a 
button. It's an incredible time-saver. 

You can also create bar, line and trend 
analysis graphs for every category— In color. 
It's great for realistic budgeting. 

Sound amazing? Wait, there's more. 

Let's say you write a check to pay your 
Visa. The Home Accountant™ automatically 
debits your checking account and credits 
your Visa account. 

And it does this with every one of the two 
hundred* budget categories: credit cards, 
checking accounts, money markets, cash, rent 
checks, insurance payments— you customize 
your own financial package. 

Check out The Home Accountant™ soon. 
You'll find it does a lot more than simply 
manage your money. 

It manages your money simply. 

*The Home Accountant" is available for the 
Apple li/lBM Personal Computer/Atari 400/ 
800 Computers/Osborne/TRS 80 Mode! Ill/ 
Commodore 64/Texas Instruments Profes- 
sional/Zenith Z-100/110.The actual budget 
capacities will vary with each computer. 

Continental 

Software 

A Diviston of Arrays, inc. 








Wil^ 



;>Ar-^ 




1 ^ *! '^ % % ^ 
^ «i j^ ^ ^ ^ ^ 



rrtf^fi at Wmntt Cat munt.tttmi,'^ Ot^nnc m ■ < tjrtlf ' ( J if Klcmvl o'CH&atfit 

VftfUHttar ' -■ - 




It sells the most, 
because it does the most! 



Continental Software Co.,11223 South Hindry Avenue, Los Angeles, California 90045 Telephone (21 J) 417-3003 * (213) 417-8031 



"400 RETURN 

410 POKEZ , 2 : POKEVS ,15: POKEAD , 30 : POKESR, 2 

00:POKEWF, 129:POKE HB,2:P0KE LB, 125 
415 FOR 1=1 TO 400: NEXT I : POKE VS,15:P0K 

E HB,0:POKE LB,0 
420 FORX=1144T01823:IF PEEK (X) <> ITHEN NE 

XTX 
430 IFPEEK(X)=1THEN POKEX, 3 : NEXTX 
440 J=0 

445 FDRI^1TO10:GET C$:NEXTI 
450 PRINT" { HOME HbLU] {20 DOWN ) I RVS } PLAY 

AGAIN? (Y/N)":POKE 646,14 
465 GET C$:IF C$="" THEN 465 
470 IFC$="Y"THEN 110 
490 POKE53272,21 :POKE53280,14:POKE53281, 

6 : POKE 52 , 50: POKE56 , 50 : PRINT" {CLR}SE 

E YAl" 
500 DATA126, 219, 219, 255, 165, 90, 90, 165,60 

,66,165,129,153,165,66,60 
510 DATA 170,85,170,85,126,219,255,189,6 

0,66,16 5,129,165,15 3,66,60 
520 DATA 0,0,0,0,0,0,0,0 



Program 3: Goblm - Atari Version 

90 SCREEN = PEEK (88) +256* PEEK (09) : DIM 

A*<3):0PEN # 1 , 4 , , " K : " 
100 GRAPHICS 1+16: POSITION 1,10:? #6 

; "- - - PLEASE WAIT- . . " 
105 60SUB 2000 

107 IF S>HS THEN HS=S 

108 S=Jl=W=0:2=SCREEN+900: G=0 

110 GRAPHICS 0:POKE 752 , 1 : SETCOLOR 4 

,6, 6:SETC0LOR 2 , 1 , 1 : POS I T I ON 13 

,0: PRINT ■'[? E E [1 £> C" 
115 POKE 756, CHSET/256 
120 POSITION 16,2:? *' CS :"iHS:POSITI 

ON 1,22:? "fMMaj=+ KEY" : POSITION 

28,22:? "l:><e1Elf=t KEY"; 
150 FOR 1=1 TO 120 
160 X = SCREEN+INT (RND (0) *640> +160 



170 
180 
190 
200 
210 

220 



230 
2 40 
245 



250 

260 

270 
280 
290 
300 
310 

320 
330 
340 



IF PEE 
POKE X 
FOR 1 = 
X=SCRE 
IF PEE 
K (X>=3 
IF PEE 
AND P 
G = G+1 : 
POKE X 
NEXT I 
SOUND 
EXT I : 
00: NEX 
POKE Z 
THEN 2 
A=PEEK 
THEN Z 
IF A = 6 
IF PEE 
IF PEE 
POKE Z 
IF W = 3 
TO 1.07 
GOTO 2 
W = W+1 : 
SOUND 
OUND 2 



K(X)=7 THEN 160 
,7:NEXT I 

1 TO 36 

EN+INT (RND(0) * 640) +160 
K(X>=7 OR PEEK(X)=1 OR PEE 

2 THEN 200 

K(X+39)=7 AND PEEK(X+40>=7 
EEK(X+41>=7 THEN POKE X,i: 
GOTO 240 
, 32 



1 , 50, 10, 12:F0R 1=1 TO 50:N 

SOUND 1,0,0,0:FOR 1=1 TO 2 

T I 

,0: Z=2-40: IF Z<SCREEN+120 

=Z+760 

(764):P0KE 764, 255: IF A=7 

= Z+1 

THEN Z=Z~1 
K(Z)^7 THEN 410 
K(Z)=32 THEN GOSUB 3 
,5:F0R T=l TO 100:NE 
6-G THEN J1=S:G0SUB 

50 

S = S + 25= POSITION 3,2: 

2, 20, 14, t2:F0R 1=1 T 

,0,0,0 



30 

XT T 

350:GO 



? S 

O 20:S 



345 RETURN 

350 FOR I=SCREEN+360 TO SCREEN+480:P 

OKE I,0:NEXT I:P0SITION 10,10:? 

"»»»$ ALL RIGHT ***" 
355 J1=S 
360 FOR X=l TO 20:SOUND 1,30-X,10,i2 

: FOR 1=1 TO 40:NEXT I : NEXT X : SOU 

ND 1,0,0,0 
400 RETURN 
410 POKE Z,6 
415 FDR V=12 TO STEP -1:S0UND 1,40 

,2,V:S0UND 2 , 70 , 1 2 , V : SETCOLOR 4, 

V,6:F0R 1=1 TO 40:NEXT I:NEXT V 
418 SETCOLOR 4,6,6:SOUND 1,0,0, 0:SOU 

ND 2,0, 0,0 
420 FOR X=SCREEN+160 TO SCREEN+800:I 

F PEEK(X><>32 THEN NEXT X 
430 IF PEEK(X)=32 THEN POKE X,1:NEXT 

X 
440 J1=0 
450 POKE 764, 255: POSITION 10,21:? "P 

lay Again < Kj/ [I) ? " ; : GET #1,A 
460 IF A=ASC("Y"> THEN 107 
470 GRAPHICS 1 + 1 6 : POS I T I ON 3,10 

; " , . . £f^^ or. . - " : FOR 1 = 1 TO 

EXT I:END 

2000 CHSET= (PEEK ( 106) -8) *256:F0 

TO 1023:POKE CHSET+I,PEEK 
4+I):NEXT I 

2001 RESTORE 2005 

2002 READ A: IF A=-l THEN RETURN 

2003 FOR J=0 TO 7: READ B:POKE CHSET+ 
A*8+J,B:NEXT J 

2004 GOTO 2002 

2005 DATA 1,60, 126, 219,255, 18 9, 195, 1 
26,60 

2006 DATA 5,60,126,219,255,195,153,2 
55, 255 

2007 DATA 6,204,204,51,51,204,126,21 
9,255 

2008 DATA 7, 204, 204, 51, 51, 204, 204, 51 
,51 

2009 DATA 3 2, 60, 126, 21 9, 255, 231, 2 19, 
126,0 

2010 DATA -1 



: ? #6 


800: N 


R 1=0 


(5734 




Atari version of Goblin, 



70 COMPUTE! July 1983 



'?MU, Ti/ekt, 





We are publishers of the top-selling 
Scott Adams Adventure Series and 
other fine Entertainment and 
Applications Programs. 



And we're publishers of some of 
the finest microcomputer 
software programs available. 
If you can write a top-quality 
program, or can convert some of 
our best-sellers to other 
computers, we want to hear 
from you — Now. 
We have the advertising, 
international distribution, 
manufacturing and marl<eting 
know-how to send top-quality 
programs to the top of the 
charts. 

If your program is top quality — 
give us a call, or write for our 
Adventure International Author 
information Kit. 

Copyright © 1983 

dventut6 

INTERNATIONAL 

Box 3435 

Longwood, Florida 32750 
Telephone: (305) 862-6917 
Ask for Author Assistance 




Program 4: Goblm -TI-99/4A version 



100 
1 10 
120 
130 
140 
150 
160 
170 
180 
190 
200 
210 
220 
230 
240 
250 
260 
270 
2G0 
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 
6 1.0 
620 
630 
640 
650 
660 
670 
680 
690 
700 
710 
720 
730 
740 
750 
760 
770 



RANDQHIZE 

GOTO 170 

FOR 1=1 TO LEN(H*> 

R = ASC<SEG* (H*, I , 1 > > 

CALL HCHAR (ROW, XCOL+I , R) 

NEXT I 

RETURN 

A = 96 

B = 97 

C=104 

D=105 

Z = 24 

C0L=16 

W = 

G = 

S = J 

CALL CLEAR 

IF S>HS THEN 290 

GOTO 300 

HS = S 

GOSUB 1270 

CALL SCREEN(16> 

PRINT "C8 SPACES>G O B L I N " 

PRINT 

PRINT "C10 SPACES>HS : '* 

FOR 1=1 TO 19 

PRINT 

NEXT I 

PRINT "Q=LEFTC14 SPACES > P=R I GHT ' 

R0W = 4 

XC0L=17 

H*=STR* (HS) 

GOSUB 120 

FOR 1=1 TO 80 

X=INT (RNDt30) +2 

Y = INT (RND*16> +6 

CALL GCHAR(Y,X,L) 

IF L=B THEN 440 

CALL HCHARCY, X,B) 

NEXT I 

FOR 1^1 TO 27 

X=INT(RND«30) +2 

Y=INT (RND*16) +6 

CALL GCHAR (Y, X, L) 

IF (L=B) + (L=C) + <L=D) THEN 510 

CALL QCHAR<Y+1 , X-1 ,L) 



CALL 
CALL 
IF C 
CALL 
G = 6 + 
GOTO 
CALL 
NEXT 
CALL 
CALL 
IF L 
CALL 
Z = Z" 
IF Z 
Z = 23 
CALL 
IF ( 
IF L 
COL = 
GOTO 
COL = 
CALL 



GCHAR(Y+1 , X,M) 

GCHAR (Y+1 , X+1 , N) 
L<>B>+(M<>B)+(N<>B>THEN 620 

HCHAR(Y, X,D> 
1 

630 

HCHAR (Y, X , C) 

I 

SOUNDC 100,500,6) 

HCHAR(Z,C0L,32) 
< >C THEN 680 

SOUNDS 10,880,4) 
1 
>4 THEN 710 



KEY (0,L,ST) 
L< >79) « (L< >80> THEN 
<>79 THEN 760 
C0L-SGN<C0L-2) 

770 
COL+SGN (30-COL) 

GCHAR(Z,COL,L> 



tt«t ' 



CRASHED. 



3C42A5aiA599423 



770 



780 IF L=B THEN 1060 

790 IF L=C THEN 850 

800 CALL HCHAR (Z, COL, A) 

810 FOR 1=1 TO 25 

820 NEXT I 

830 IF W=27-G THEN 920 

840 GOTO 650 

850 W=W+1 

860 S=S+25 

870 Ht=STR*(S) 

880 R0W=4 

890 XC0L=3 

900 GOSUB 120 

910 GOTO 800 

920 J=S 

930 CALL HCHAR( 10, 1 , 32, 31 ) 

940 GOSUB 120 

950 H*=»'**«* ALL RIGHTf 

960 XC0L=6 

970 ROW=10 

980 GOSUB 120 

990 FOR 1=1 TO 15 

1000 X=INT<RND«100>+300 

1010 CALL SOUND (75, X, 8) 

1020 NEXT I 

1030 FOR 1=1 TO 100 

1040 NEXT I 

1050 GOTO 2 10 

1060 REM WHOOPS! ...YOU 

1070 CALL HCHAR ( Z, COL, 98) 

10S0 FOR 1=3 TO 30 STEP 3 

1090 CALL SOUND (50, -7, I ) 

1100 NEXT I 

1110 CALL CHAR (104, 

C" ) 
1120 J=0 
1130 HS=S 
1140 H*=''PLAY 
1150 RDW=22 
1160 XC0L=2 
1170 GOSUB 120 
1180 CALL KEY(0,L,ST) 
1190 IF ST=0 THEN 1180 
1200 H*=CHR$(L) 
1210 IF H*="Y*' THEN 
1220 CALL CLEAR 
1230 PRINT "SEE YA ! ' 
1240 END 
1250 CALL CHAR(104,' 

C" ) 
1260 GOTO 210 

1270 REM DEFINE CUSTOM CHARS 
1280 REM CHAR 96 - GOBLIN 
1290 CALL CHAR(96, "7EDBDBFFA55A5AA5 

" ) 
1300 REM CHAR 97 - BARRIER 
1310 CALL CHAR(97, "CCCC3333CCCC3333 

" > 
1320 REM CHAR 98 - CRUNCHED GOBLIN 
1330 CALL CHAR(98, "CCCC33337EDBFFBD 

") 
1340 REM CHAR - 104 - FROWN 
1350 CALL CHAR(104, •'3C3CA58199A5423 

C") 
1360 REM CHAR - 105 - SMILE 
1370 CALL CHAR ( 105, "3C42A5B1A599423 

C" ) 
1380 CALL COLOR ( 10,7, 1 ) 
1390 FOR 1=5 TO 8 
1400 CALL COLOR( I, 16, 14) 
1410 NEXT I 
1420 RETURN 



AGAIN (Y / N> 



1250 



'3C3CA58199A54 23 



72 COMPUTE! July 1983 



YOUR PROBLEM IS SOLVED! 

Now you can rely on PACE for ONE STOP ahopping for all your Micro Computer needs. We have picked out the 
BEST 2000 Books, Programs and Accessories— covering ail the major brands and put them into one friendly 
store. And, this is backed up by TIHOUSANDS of additional Items we stock in our central warehouse, ready for 
ovemightshipping to our stores. Magazines? You bet! We carry almost 60 different Micro Magazines on our racks! 
Plan to visit us soon. Can*tvls{t? Then you can order from our gigantic catalog. Just write foryour personal copy 

today, just $ 3.00 per copy. 



pace 



For: COMMODORE VlC-20' I For: COMM< 



OjiiMa 



RIVER RESCUE Thorn-EMI. Save the ex- 
plorers from the jungle as you dodge a var- 
iety of hazards. 2 variations fori Of 2 players 
4325-022001 Cartridfit Sv^Lf: $31.95 

GR1DRUNNER HE5. Avoid a variety of 
alien weapons while destroying the advan- 
cing legions Multiple level 
4428*000312 Cirtrtd0« S>^Li:S31.95 

SPIDERS OF MARS UMI. You are the Mar- 
tian Space Fly protecting your home from 
Web-throwing Martian spidersand Saturian 
bats. Plutonian dragonflJes and Jovian hor- 
nets. 256 skill levels! 
4850-001604 C»rtrlda» SALf $31.95 
AMOK U M I, Fou r levels of treacherous pass- 
ages laced with deadly robots, Save the 

humans, if you're fast enough! 
4850-001611 Cartrldo* SAiL $23.95 

AGGRESSOR HES. Fast paced arcade- 
style action in the 'Avenper" vein. 
4428-000305 Csrtridg* S/^Lf $31.95 
INTRUDER SCRAMBLER American Per 
ipfierals. Avoid the mountains, bomb the 
targets and avoid the missiles- Multilevel 
412S-M>642B CflMott* sa/ i^ $15.95 

GAMES PACAmencan Peripherals A set 
of 6games for your VIC: Galaxy Wars. Cat 
Has9Ltves; Maze of Dragons;Othello; Am- 
bulance; and Barricade 
4125-IOOOOfl Cass. (8) SAIL $31.95 
DEVELOP-20 French Silk Smooth Ware 
The game programmer's toolkit Includes: 
BooK Decoder, Editor. Assembler. Loader 
and Monitor Requires minimum 5K memory 
4365-004020 Cata^tto/Book S49.95 

MASTERING THE VlC'20 Wiley & Sons 
With little knowledge of BASIC, book will 
teach you to write programs, make musiC, 
create picturesand learn tocommunicate 

with 6502 machine language 
4925-088892 Book, 178 Pgs $14.95 

VfC-20* USER GUIDE Osborne/McGraw- 
Hill. How to operate, including peripherals, 
programming, color graphics and sound, 

plus more' 
4665-000086 Book, 388 Pgs $14.95 

TYPING TUTOR Academy Software, Teach 
yourself to type with this easy to use, four 

level program 
40050OO001 Catsette S12.95 

DATA MANAGER Micro Spec Create, 
write and read files, You can 'browse', 
searchand maintain with this data manager 

Requires 16K memory expansion 
4538-000016 Casaotld. 11 K $19.95 

WORDCRAFT 20 UML Great 

new, inexpensive wordprocess- 

for the VIC*. NeedsBK Expan. 

4850-001101 Cartridge $99.95 

VIC* BASIC Prentice-Hall A user-friendly 
guide explainshow-to-do-tt. Make rainbows, 

music and more' 
4690-00837B Book $12.95 

VIC-20' Pf^GGRAMMER'S REFERENCE 
GUIDE Commodore Business Machines, 
Complete BASIC vocabularly guide, mach- 
ine language programming, tips and more, 
4100-000110 Book, 290 Pgs $16.95 

COMPUTE!(«) FIRST BOOK OF VIC* 

A compilation of articles from; COMPUTEf 

magazine, 
4105-000007 Book, 212 PQ a $12.95 

KIDS AND THE VIC Daiamost. Written 
at chtldren. not down to them Turns kids, 
(and unsuspecting parents), into computer 
experts in days! Includes parent's section 

for help over the 'rougher' parts. 
4560-000056 Book,226PgB $19.95 

CARDBOARD 6 Cardco Expansion inter- 
face for the V1C'20' Fuse protected. Will 
hold up to six cartridges, or up to 35K of 
additionalRAM memory Allows switching 
between up to six different games or util- 
ities without shutting off the computer Also 
allows for future expan sfon by "daisy-cha Jn- 
ing" two or more CARDBOARD 6 boards 
4135-000006 Cardboard e $99.95 
CARDETTE 1 Cardco, Universal cassette 
interface for the VlC-20'andCommodore 
64* Don't throw away your old cassette 
player/recorder This interface simulates 
all the functions of the data cassettes 
4135-000001 Cardettel $29,95 



Br 4850-4 



'THE ELEMENTARY e4From 

Datamost. Probably THE BESTi 
book available todate on this sup* 
erb new computer Easy to under- 
stand and master For Commodore 
64' owners everywhere! 
4560-000034 224 P«g«B $14.95 

EASYMAIL 64 Commodore Business 
Machines Fully featured name and address 
program tor business, club or organization 
4100-064204 Disk $49.95 

HES WRITER 64 HES Word processing 
cartridge for the Commodore 64* computer 
Easy editing, preview output and word wrap- 
around Save on tape or disk 
4428-000504 Cartridge $44.95 

WORD M ACH fN E/ NAM E MACH IN E Com 

modore Business Machines. Perfect easy- 
to-understand word processing product 
designed as an entry level item for home 
For notes to kids, letters to friends, etc 
4100-084210 Disk $29.95 

PET eMULATOR~ Commodore Business 
Machines An emulator that will allow a high 
level of existing PET' software to be exec- 
uted on the Commodore 64'. especially 

educational materials 
4100064107 Disk $29.95 



SPEECH SYNTHESIZER 



TYPE-'N-TALK" Votrax Text to speech syn- 
thesizer Self-contained, easy to program. 
Interfaces w/computer, modem or any RS- 
232 compatibte serial device. Contains: low 
data rate Votrax* SCOl; phoneme-based 
speech synthesizer CMOS chip w/unlimited 
vocab. and a microprocessor based text-to- 
speech algonihm Operates mdeoendently 
Hasaone-watt audio amplifier, 750 charac- 
ter buffer, data switching capability. Baud 
(75-9600), 100-hourelevated temperature 
burn-in. data echo of ASCII characters. 

Unit requires cables, (sold below). 
4900-003900 {l.««s Cables) $249.00 

NOTE: Although TYPE-N-TALK" can be 
used wit h a senal pnnte r. (on the same port), 
it cannot be used with a parallel printer, or 
on a parallel port In addition, you MUST have 
the follow equipment to make it operate: 
1) Special Card, as noted: 2) An RS-232 
Option; or. 3) Expansion interface AND 
RS-232 Card- 



TYPE-'N-TALK CABLES (ONLY) 



4900-001002 For Apple It- $34.95 

{Must have SSM A10 Card) TRS-SO 
Model* Jl a III (Must have IMSAI 2810) 

4900-010021 ForApplall- S34.95 

(Must have Apple Parallel Card} 

4900-010022 For Apple If- $34.95 

(Must have Apple Serial Interface Card) 

4900-001003 ForTRS'80 $34.95 

Model I (Must have Expansion Interfaced 
RS-232 Card) and for IBM-PC 

$34.95 



FROGGEE It's easyf Just gel your Froggee from the bottom of the 
screen to the top. Avoid the cars and trucks, hop on the logsand the 
leaves Eight levels, with crocodiles, snakes and other neat stuff 
out to do you in' Uses Joystick. Needs no memory expansion 
4180*020001 For3KVlC-20MCastette} $29.95 

4180-064001 ForCon^modore'64'(Ca»*ette} $29.95 

CENTIPOD Fast paced. decendmg bugs, falling projectiles, boun- 
cing spiders and more' Quick reactions needed here, iust to keep 

alive' Uses Joystick. No memory expansion needed 
4180-020002 For3KVlC-20MCastetteJ $29.95 

MOTOR MOUSE Up and down the grandfather clock ptcking-up 
the cheese. But. watch ouf There are cats hiding in the cheese' 7 
progressively harder levels and a time factortobeat Very fast paced 
arcade quality game. UsesJoystick No memory expansion needed 
4180-020003 For3KVIC-20' (Cassette) $29.95 



or: ATARI 400/800' 



YOUR ATARI' COMPUTER Osborne 
Comprehensive training manual for 400/ 

800* computer systems. 
4665-000065 Book, 458 Pgs $16.95 

ATARI' GAMES & RECREATIONS. Pre- 
ntice-Hall Souriceof pre-programmed pames 
Also teaches graphics and addition of color 

and sound. 
4690-000242 Book $14.95 

ATARt' PI LOT FOR BEG fNNERSPren tire- 
Hal!. Hands-on intro to Atari* Pilot computer 

language, 
4690-000301 Book $12.95 

THE ATARI* ASSEMBLER Prentice-Hall, 
Making the leap from BASIC to Atari* assem- 
bly language 
4690-000236 Book $12.95 

COMPUTE!(a) FIRST BOOK OF ATARI* 
Compilation of articles from Compute' Mag- 

azme. 
41 05-000006 Book $12.95 




fa^nw^gaf- 



APPLE II* USER'S GUIDE Osborne, 
Complete BASIC programming tool. Spec- 
ial features, too 
4665-000046 Book, 388 Pfl« $16.95 

BASIC FOR THE APPLE* Prentice-Hall. 
Introduction to programming and appli- 
cations, including games, graphics, file 

management and word processing, 
4690-000189 flook $14.95 

KIDS AND THE APPLE' Datamost, True 
"first" book Teaches kids the basics of 
simple programming with helpful parents 

guide included 
4560-000019 Book $19.95 



CATALOG 



Ad W£W computer books, software and 
accessories catalog from PACE, Over 200 
pages and thousands of items Wh«n ord- 
ering, pl«iM »p«clfy th« 'type' of com- 
puter you're lnter«»tad In or u*«. 
4990-198300 Summer Dei' ^erK$ 3.0O 



JustWholsP.A.C.E.? 



We want you to have confidence in buying from P. A.C.E,, so, we think that it is im- 
portant to take this opportunity to explain something about our company. 

Drawing from our more than 25 years of merchandising experience, our aim is 
to provide microcomputer users with a ONE STOP Software Source for all your needs 
Software, Books, Magaiinesand Accessories No longerwiliyouhavetorun around 
to different stores looking for whar you want It will be all in ONE place, your local 
PACE Micro Software Center 

By the time that you read this ad, our first P. A.C.E. store in the Western Suburbs 
of Chicago will be open, soon to be followed by many others Until a P. A.C.E. store 
opens in your city, you may order direct from the P.A.C-E. central warehouse with 
confidence, where we stock over 6.000 products 

P. A.C.E. has been founded by businessmen with impeccable reputatfons built 
on over 26 years of experience m the business community and we would be most 
willing to provide references on request 

P. A.C.E. wdlbe concentrating on offering you a ONE STOP SOURCE for Soft- 
ware, Books and Accessonescovermg theloilowmg brandsof personalcomputers 
Apple'. Atari*. Franklin'. Commodore", Texas Instruments', IBM PC'.CP/M' Systems, 
Timex-Sinciair" and Radio Shacit' 

Our President. John Rhodebeck demands that our storesand mail orderdepart- 
ments be friendly and informative to ail (evels of computer users, and he myites you 
to drop in our first store. Of contact us by mad for our latest catalog 



4900-001004 Fof TRS-SO 
Color Computer 

4900-001005 For Atari 400/ $34.95 
800- (Must have Atari 850 Interlace Mod) 

4900*001006 For Apple II* $34.95 
(Must have CCS 77 1 0A Card* and forHeath 

4900-001007 ForVIC -ao $34.95 [ COUPON 

|| hi Mil ^^1 




NEW The COM MODORE 64 PROGRAMMER'SREFERENCE 
GUfDE. Every^thing you need to know toget started programming 
Commodore's" newest, and most versatile personal computer 
Step by step guides in language Ihat is easy to understand Tips 

and a whole lot more' Our most asked for publication' 
4760-022056 $19.95 



JOYSTICK Wico Command Co. Ultimate I 
one hand control Bat handle Two firing! 
buttons. For Atari 2600/400/800*. Sears j 
Arcade Game, and Commodore VJC-20*. | 
4920-159714 S>^LE $23.09 j 

RED BALL Wico Command Co. Ball handle j 
so familiar to arcade game users. 6-ieatI 
switch assembly Two fire buttons. For* 
Atari 2600/400/800*, Sears Arcade Game, I 
and Commodore VlC-20" ■ 

4920-159730 S4i.f $27991 

TRACK BALLWicoCommand Co A phen-| 
olic ball offers the magic of 360 degree] 
movement Same design as tf>e arcade games • 
For all Atari* and Sears* videogamesandl 
the Commodore VlC-20' home computer., 
4920-724545 5-VL^$55.99| 

TRACK BALL Wtco Command Co. A phen- j 
olic ball offers the magic of 360 degreel 
movement Similar to arcade games controls I 
For all Te>;as Instruments* home computers I 
4920-724560 jALt $55.99| 



QTY 



NUMBER 



Please Send Me: 

DESCRIPTtON 



SNIPPING 



TOTAL 



$ 2.50 



Illinois Retldents Ploaae Add 6% Sates Tax. 
Foralgr) Orders, {All outside Continental US), Add 

10% Shipping (Minimum $4.00} 
Catalogs Shippsd Po8iaa« Paid 
PAYMENT ENCLOSED: QCASH QCHECK DMONEY ORDER 
PLEASE CHARGE TO MY: QMASTERCARD GVISA (Min. Chg $25) 

CARD NUMBE R 

EXPIRES 

SHIP TO ^ 



_*NTRBNK# 



STREET ADDRESS _ 
ClTTf_ 



APT 



„STATE_ 



.ZIP„ 



[General Office: 345 East Irving Park Road, Wood Dale, IL60191 
PHONE: (31 2J 595-0238 



RUSH 

ORDER 

DEPART. 




p.a.c.e. 

Department: C-P 

Lock Box 328 

Banaenvilie. I L 601 06 




Goblin, r 1-9914 A version. 



The Apple versiivi ofGobliiL 



Program 5: Goblin -Apple version 



200 
240 
250 



10 



(1);' 



CHR* 



REM *THIS PROGRAM REQUIRES A DISK D 

RIVE 
20 REM AND THE APPLE 'DOS TOOL KIT PR 

OBRAMMING 
30 REM UTILITIES DISK' TO RUN. 
40 REM « PLACE THE ABOVE UTILITY DISK I 

N YOUR 
50 REM DRIVE BEFORE RUNNING THIS PROG 

RAM. 
55 GOSUB 1000 
60 DIM XLr-(23)s FOR I = TO 7:XL7.(I) = 

1024 + 128 t IsXLXCI + 8) == 1064 + 

128 « IrXLXd + 16> = 1104 + 128 t 

Is NEXT I 
85 HOME : HGR : POKE - 16302,0: IF S > 

HS THEN HS = S 
90 ZROW = 23:ZC0L = 19: W = Os S = J1:G = 

O 
100 VTAB 1: HTAB 17: PRINT CHR* 

0"; CHR* (9); "G B L I N"; 
110 VTAB 2: HTAB 19: PRINT "HS'*J 

(14);": ";HSs VTAB 23: PRINT "LEFT 

«"j CHR* <9> ; "LEFT ARROW"; CHR« (1 

4); 
120 HTAB 24: PRINT "RIGHT="; CHR* (9> ; 

"RIGHT ARROW"; CHR* <14); 
125 PRINT CHR* <1);"1"; 
130 FOR I = 1 TO 120 
135 ROW = INT ( RND CI) « 15) + 5: COL = 

INT ( RND (1) > 38> + 2 
140 X == XLr.(ROW) + COL: IF PEEK (X) = 

164 THEN 135 
145 VTAB ROWS HTAB COL: PRINT CHR* (1 

64);: NEXT I 
150 FOR I = 1 TO 36 

160 ROW = INT i RND (1) * 15) + 5: COL = 
INT < RND <1) » 38) + 2sX = XLXtR 

OW - 1) + COL - 1 
170 IF PEEK CX) = 164 OR PEEK (X) ^ 

161 OR PEEK (X) = 163 THEN 160 
ISO IF PEEK CXL%(ROW) + COL - 2) = 16 

4 AND PEEK (XLXCROW) + COL - 1) = 

164 AND PEEK (XL"/- (ROW) + COL) = 1 
64 THEN HTAB COL: VTAB ROW J PRINT 
CHR* (161) ;:G = S + Is GOTO 200 
190 HTAB COL: VTAB ROW: PRINT CHR* (163); 



260 

270 

280 

290 

300 

310 

320 
330 

340 

345 
350 



360 
370 



380 
385 
390 
400 
410 

415 

420 

430 
440 



NEXT I 

POKE 768,5s POKE 769,180: CALL 770 
Z = XL7.(ZR0W) + ZCOLs HTAB ZCOL: VTAB 

ZROW: PRINT CHR* (167);: ZROW " ZR 

OW - is IF ZROW < 3 THEN ZROW = 21 
A = 

,0 

1: 

IF 

ZCOL 



PEEK ( - 16384) t POKE - 16368 
IF A = 136 THEN ZCOL =^ ZCOL - 
IF ZCOL < 1 THEN ZCOL = 39 
A = 149 THEN ZCOL = ZCOL +1: IF 
39 THEN ZCOL = 2 



+ ZCOL - 1 



+ ZCOL - 1 



IF PEEK (XL%(ZROW - 1) 
) = 164 THEN 410 
IF PEEK (XLXCZROW - 1) 
) = 163 THEN GOSUB 330 
HTAB ZCOL: VTAB ZROW: PRINT CHR* 
(165);: FOR T = 1 TO 100: NEXT T 
IF W = 36 - G THEN J = Ss GOSUB 35 
Os GOTO 85 
GOTO 250 
W=W+1:S=S+ 25s VTAB 2s HTAB 
3: PRINT CHR* (1);"0";S; CHR* (14 
) . CHR* C 1 ) " " 1 " ' 
POKE 768,2: 'poke 769,230s CALL 770 

RETURN 

FOR J = 10 TO 12: VTAB Js FOR I = 

O TO 39: HTAB I: PRINT CHR* (167) 

;s NEXT Is NEXT Js VTAB 17s HTAB 1 

O: PRINT CHR* (1 ) | "0" ; "«»»**» ALL 
RIGHT! *»»»*»"; CHR* Cl);"l"; 

FOR I = 1 TO 10 

POKE 768, INT ( RND (1) ♦ 3) + 

769, INT ( RND (1) * 15) + 130 

770 

NEXT I 
Jl = S 

FOR J = 1 TO 500s NEXT 3 

RETURN 

HTAB ZCOLs VTAB ZROW: PRINT CHR* 
(166>;sC = 
X = PEEK ( - 16336) :C = C + 1: IF 

C < 15 THEN 415 

FOR ROW = O TO 23s FOR COL = 1 TO 

38: X = XLX(ROW) + COLs IF PEEK (X 
) < > 163 THEN NEXT COL: NEXT ROW 
IF PEEK (X) = 163 THEN VTAB ROW + 
1: HTAB COL + Is PRINT CHR* (161) 
$3 NEXT COLs NEXT ROW 
Jl = 0: VTAB 21: HTAB 13: PRINT CHR* 
(1>;"0";"PLAY AGAIN ("; CHR* (9);" 



1: POKE 
CALL 



74 COMPUTE! July 1983 



450 

460 



1000 
1020 
1030 
1040 
1050 
1051 
1060 
1061 
1062 
1070 
1080 
1090 

1100 
1110 
1150 
1160 

1170 
1500 
1510 
1520 
1530 
1540 
1545 
1550 
1560 



Y"; CHR* (14> ;•'/"; CHR* (9>;"N"| CHR* | 

(14);"> ?"; I 

POKE - 16368,03 BET C*s IF C* = " 

Y" THEN 85 

TEXT : HOME : VTAB 4s HTAB 2: PRINT 

"SEE YAi-.-HIT RESET..."; FOR I «= 

1 TO 1000: NEXT 1: END 

REM I NIT SUBROUTINE 
ADRS = 

PRINT CHR* (4>;"BL0AD RBOOT" 

CALL 520 
ADRS = USR (0>,"HRCG» 

IF ADRS < THEN ADRS = ADRS + 65536 
CS = ADRS - 768 
CH = INT (CS / 256>:CL = CS - CH <256 

POKE ADRS + 7,CL: POKE ADRS + 8,CH 

HIMEM: CS 

READ A: IF A = - 1 THEN 1100 

FOR J = TO 7: READ B; POKE CS + 
A « 8 + J,B: NEXT : SOTO lOBO 

CALL ADRS + 3 

PRINT CHR$ (16) 

REM SOUND ROUTINE 

FOR I = 770 TO 795: READ M: POKE 
I,M: NEXT 

RETURN 

DATA 1,28,62, 127, 107,127,93,34,28 

DATA 3,28,62, 107,127,99,93,62,28 

DATA 4, 85, 42, 85, 42, 85, 42, 85, 42 

DATA 5,28,62,107, 127, 107,85,127,119 

DATA 6,85,42,85,42,85,62,107,127 

DATA 7,0,0,0,0,0,0^0,0 

DATA -1 

DATA 172,1,3,174, 1,3,169,4,32, 16 
8,252,173,48,192,232,208,253,136,2 
08,239,206,0,3,208,231,96 © 



WICO 
COMMAND 
CONTROL ( 
JOYSTICK) 





^f# 



TRUE 

ARCADE 

ACTION 



SPECIAL INTRODUCTORY OFFER 

JOYSTICK & BASE 
CALL FOR PRICES 

ADO $3 PER ORDER R3R POSTAGE AND HANDUNG • CHECK, MONEY 
OflOER kMSTERCARD OR VrSA, CO.D. IP.O.D. CHARGES ADDED) • FLA. 
RESIDENTS ADD 5% SALES TAX • FOREIGN ORDERS MUST BE PREPAID. 

GATOR MARKETING ENTERPRIZES. INC. 

^ P.O. BOX 296 • CASSELBERRY, FL 32707 
' FOR RETAIL ORDERS AND INFO - {305) 699-5848 

« DEALER INQUIRIES INVITED - PRICES SUBJECT TO CHANGE 




Totally Accurate. Controller 

JOYSTiCK CONTROLLER FOR ATARI 

GAME, SEARS TELEGAME, ATAfll 

400/800, COMMODORE VIC* 

If your joysticks are like most, you 
can't feel when you have made a move. 
You only see it on rtie screen, when it's 
too iate Suncom has a solution. TAC'2. 
Totally Accurate Controller - 2 fire 
buttons. 

With its longer shaft, aicade style ball 
top, ajid exclusive Suncom internal con- 
struction, TAC'2 gives yoti that extra 
control ..you can feef absolutely, 
positively, for sure, exactly when you 
have made a move. And with its 2 fire 
buttons. TAC-2 IS equally fair to left 
handers and right handers. 

TAC'2 comes with Suncom's famous 
2 year warranty. And it comes m\h 
something else. Totally Accurate 
Control. 

•Producte and 



K)VSEHS()R 

TOUCH SENSITIVE JOYSTICK 

CONTROLLER FOR ATARf GAME, 

SEARS TELEGAME, ATARI 400/300, 

COMMODORE VIC* 

Our engfneefing staff has spent 
months creating, designing and refining 
the Joy-Sensor The digltaJly simulated 
jC^tick controller w\h no stick, to bring 
you just the right combination of control 
and responsiveness. Now. the slightest 
touch is all that it takes to effect control 
movements on your game screen. Rock 
your finger or ihumb back and forth, 
and it seems like Jqy-Sensor has read 
your mind, f^^oves are executed much 
raster because there is no stick to move, 
no resistance to movement. 

Your ships will fly across the screen 
as easily as light flies through space. 
Your laser rays will fire exactly when you 
want them to. You will never go back to 
your old |oystick again. 



^= Suncom 



650£ Anthony Trail, Worthbrook, !L 60062 



^tarFic|htGr 

for 

appiG 



JOYSTICK CONTROLLER FOR 
APPLE COMPUTER* 

You own an Apple Computer You probably 
use it for entertainment and io play games. 
We think that you deserve a controller that is 
as up and keeping with new technology as 
your comptiter So we designed one. From 
scratch. Brand nev\/ internally. Starfighter R)r 
Apple. 

Starfighter for Apple has many of its tori- 
compatible counterpan's exterior plrysJcal 
charadenstics. Round-cornered and smooth, 
ft won't fatigue you over those long playing 
sessions. And internally, its new, advanced 
design gives you a kind of feel and response 
during game play that you have never ex- 
perienced before. 

Of course, Starfighter for Apple comes 
with a 2 ^'ear v/arranty. From your friends at 
Suncom. 



trademarks of Atari, Sears, Commodore, Apple Computer 




POWER LINE 
PROBLEMS? 



SPIKESPIKER® ...THE SOLUTION 



Protects, organizes, controls computers & 
sensitive electronic equipment. Helps prevent 
softwore "glitches", unexploined memory loss, 
and equipment domoge. Filter models ottefiuote 
conducted RF interference. 1 20V, 1 5 Amps. 
Other models available. Ask for free literature. 



DELUXE POWEI COMSOLE 

$79.95 

Tron^ient afaiorber, dual 5-stoge 
filter. B individuclty s»ifitch«J 
sockeTi, fus«d. moin iwilch, & lite. 

QUAD-II $59.95 

Transient ab softer. Diwl 3 stage 
filtef 4 iDCkets, lite. 

QUAD-l $49.95 

Transient absodMf, 4 sockets. 

MINI-II $44.95 

Tronsient obsorlier, 3 stog* filter, 
2 sockets. 

MINI-I $34.95 

Tronsient absorber, 7 sockets. 




6581 RuchRd . Dept.CP 
Bethlehem. PA 18017 



215-aa7-0700 

Out of State Order Toll Free 
800-523-9685 
DIALER INQUIRIES INVITED • CODs odd S3 ,00 + Ship. 



July 1983 COMPUTi! 75 



Speed Ski 



Dub Scroggin 



SpeedSki takes VIC BASIC to its limits. Like most good 
action games, SpeedSki is easy to learn and hard to 
master. What's equalh/ unpressive, the program niiis 
extremehj fast , and creates an excelle}it, realistic physical 
challenge. It sounds and feels like skiing - complete 
with jumps, trees, fences, and an ever-changing 
pathway. 

Also, if you're interested in progrannning gaines 
in VIC BASIC, the author provides a complete explana- 
tion of how the program works. He discusses the tech- 
niques which permit such amazing execution speed. 

With five skill levels , for one to four players, on 
any unexpanded VIC. The world's champion SpeedSkier 
(the author himself) lias managed to achieve a score of 
168 during a five-run series. Do better than that and 
you'll he the nezv record holder, 

"SpeedSki" is a fast; action VIO20 game that fits 
in standard memory and makes full use of the 
VICs color and sound capabilities. It is controlled 
from the keyboard and provides up to five rounds 
of play for one to four players, allowing each to 
select from any of five skill levels. 

The game was designed around one central 
concept " speed. Every effort, short of machine 
language, has been used to make the game run as 
fast as possible without sacrificing too much 
realism. The result is an exciting game requiring 
concentration and practice. It's easy to learn the 
basics at skill level one, then step gradually up to 
level five, but mastery will take a lot of practice. 

Avoid The Hazards 

The object is to steer a skier through 10 gates, 
while avoiding the hazards posed by trees and 
fences. The optional jumps will improve your 
time. The best possible hme, about 29 seconds, 
can be achieved at skill level five by avoiding every 
hazard, hitting every gate, and taking every jump. 
But getting this best time is not easy, even for an 
expert. I've played the game several hundred 
times and have made a perfect score only a handful 
of times. And I'm the greatest SpeedSki player in 
the world. The fact that as I write this there are 
only three players in the world could have some- 
thing to do with this, of course. The other two are 
my daughter; who is second best in the world, 
and a friend's son, who has played only once. 
My best score for a five-run series is 168. Beat 
that score and youTlbe the world's champion 
SpeedSki player. 

76 COMPUTE! Jufy1983 



You should take the jumps whenever you 
can - they not only move you ahead, they also 
take you over trees you might otherwise hit, and 
increase your speed. Every time you hit a tree, 
you move up one line on the screen (to a limit of 
ten), and you have more time to react to the slope 
coming up from the bottom. You are also a little 
farther from the finish line. Whenever you hit a 
jump, you move down a line (to a limit of three 
below the center), so you are closer to the finish 
line, but you must also react faster. 

There are a number of REMarks in the pro- 
gram listing as an aid to understanding, but I 
recommend they not be typed in because of the 
memory they consume. 

Defining Characters 

Line 10 prints the title, and line 20 sets the memory 
limits that are necessary in a program employing 
user-defined characters. Moving the end of mem- 
orv indicators hides a section of memorv from 
BASIC, so this section can be used for storing the 
user-defined character values. 

Try this: print FRE(X) and hit RETURN. Then 
type POKE 56,28: POKE 55,250: POKE 52,28: 
POKE 51,250 and hit RETURN. Now type FRE(X) 
and hit RETURN, again. You'll see the difference. 
BASIC has been fooled into thinking the end of 
its memory is closer than it really is, and you ap- 
pear to have lost about 260 bytes of memory. Line 
20 also sets the screen and border colors to white 
and white, like snow. 

Line 30 reads X, a memory location in the 
protected area set up by line 20. If X is 0, then all 
data has been read, and control passes to the in- 
structions starting in line 70. Otherwise, line 40 
reads the values to be placed in X and the seven 
following bytes, and POKEs these values in. For 
instance, line 30 reads '7672", Line 40 then reads 
"16" and POKEs 7672 to 16. Then it reads "56" 
and POKEs 7673 to 56, then 7674 to 56, and so on. 

Control then goes back to line 30 where the 
next value of X is read in and tested. The final 
data step contains a for the value of X following 
the eight values of Y. So when all the data has 
been read in, line 30 ends this part of the program. 

Players And Skill Levels 

Lines 70-90 print the directions. Note that the 
symbol "T'' in line 70 means to press the Commo- 
dore flag key, and then hit the "T" to underline 
the title Line 100 is used for inputting the number 





SOFTWARE 






F 



you own a VIC 20 or 

Commodore '64 get 
ready to explore the 
potential of these fine 
machines with LUNA 
Software. The software 
supplier for the 80 's. 

We have broken free of 
the pack with stunning 
games such as our 
sophisticated, three- 
screen, FINAL CON' 
QUEST, the newest entry 
to our '64 line- 



Experience heart-racing 
surges of adrenalin while 
trying to outrun lightning- 
footed coyotes on our 
HYPER-HEN grid. And, if 
you're the PEDESTRIAN, 
keep a sharp eye on the 
traffic behind you, and 
the muggers ahead. 

LUNA'S full line of arcade 
style games and user- 
friendly business software 
makes us the industry's 
most sought after new 
supplier. 



LUNA Software: Comnr^it- 
ted to providing you with 
State-of-the-Art concepts 
and programming to 
bring out the best possi- 
ble performance from 
your Commodore com- 
puters. Gait LUNA today 
for the name of a dealer 
in your area. 




LUNA SOFTWARE, P, 0. Box 26922, San Jose, CA 95159-6922 (408) 378-7793 






of players and also for rejecting bad input. A value 
outside the allowed range passes control back to 
line 70; the screen is cleared, the instructions are 
reprinted^ and you are asked for the number of 
players again. Line 110 accepts the number of 
rounds desired and rejects bad input in the same 
manner as line 100. 

Line 120 initializes the values of R (the number 
of the present round) and P (the number of the 
present player). Lines 130-140 prompt the player 
skill lev^els, and line 150 accepts the player choice 
as a string variable^ AS. Lines 160-200 assign values 
to SS based on the skill level input, and line 210 
converts AS to the numeric variable SK. It then 
uses SK to establish a value for RN, which will 
control the number of trees printed. 

The number of trees is tied to the skill lev^el, 
so that the higher the skill level, the more trees 
there will be. If you'd like more trees, change the 
"1" to a larger number, but no more than 5. If SK 
is not an integer, or is outside the range of 1 to 5, 
line 210 rejects it. Moving the cursor up ten spaces 
and passing control back to line 130 makes it ap- 
pear that the program does nothing but sit there 
until a correct input is given. 

Speed Versus Obstacles 

Line 220 establishes a new value for SK to control 
the speed of the program - faster for higher skill 
levels. Line 230 POKEs 36869 to 255 and causes 
the user-defined character set to be used instead 
of the normal set. This may cause some problems 
with debugging. 

If an error is present after this step, the pro- 
gram will stop, but all you'll see on the screen 
will be garbage with an occasional skier or tree 
thrown in. If this happens, hit the CTRL and RVS 
keys, then type POKE 36869, 240 and RETURN. 
All that garbage will suddenly make sense. Line 
230 also clears the screen, sets the volume, and 
establishes S as the noise generator. 

Line 240 prints the trees on the screen for the 
initial setup. Each time through this loop, a ran- 
dom value "L" betw^een 1 and 19 is calculated. 
Then a fence section is printed on the left, a tree 
is printed at TAB (L), and a fence section is printed 
on the right. 

The initial value of B is set to 7910 in line 250. 
This is the location of the skier in screen memory. 
C is the difference between the screen map posi- 
tion and the color code map position. F is the 
POKE value for the skier figure; the POKE value 
will be 55 when he's going to the left and 53 when 
he's going to the right. The last three statements 
of line 250 insure that the player is not faced with 
the no-escape situation of having trees directly in 
front of him at the start of a run. 

Line 260 POKEs the flags of the first gate onto 
the screen, and line 270 prints the level that was 

78 COMPUTE! July 1983 



determined in lines 160-200. Line 280 puts the 
line between the flags for the first gate, and line 
290 sounds the warning tones to let you know it's 
time to start. Just after the last tone, line 300 sets 
the timer. Line 310 then waits for you to press a 
key. If you don't hit a key for a while, that's okay, 
but the timer is running. You should use the time 
that the warning tones give you to plan your 
course through the first gate and then take off as 
soon as the last tone sounds. 

Line 320 starts the main program k>op. If SK 
is not zero, then the computer counts to SK before 
proceeding. This time delay, remember, is tied to 
the skill level to start wnth, but it may be reduced 
by hitting the jumps. 

Skier Movement 

If F is 55 in line 330, the skier is going left, and a 
track is POKEd in behind him using a POKE value 
of 58. If not, he's going right and the track's POKE 
value is 59. The track is handled in line 340. 

Lines 350 and 360 are the keyboard control 
steps. If PEEK (197) - which is the memory location 
that contains the current key pressed - is 29, then 
the key for going left has been pressed. D will 
later be used to produce movement to the left; F 
is set to the figure for going left; and S, which is 
the noise generator, is set to 245. If any other key 
is pressed, or even if no key is pressed, then the 
skier will be going to the right, and the values 
needed for D, F, and S are set by line 360. You'll 
notice this slight change in sound when you 
change directions; it should sound like wind. 

Gates And The Finish Line 

G is incremented in line 370. If it's less than 28, 
control passes to line 410, because no gate or finish 
line is required. Otherwise, G is reset to in 
line 380, and E, which counts the gates, is in- 
cremented. If E is 10, a finish line is printed and 
control passes to 460. Line 390, which causes the 
program to end, is executed only if the skier is 
past the finish line. If E is less than 10, then a 
random value between 2 and 11, inclusive, is cal- 
culated. A gate is then printed starting at TAB(X), 
X being the random number just calculated. Con- 
trol then passes to line 460. 

If no gate or finish line needs printing, control 
passes from line 370 to line 410, skipping all the 
above to reduce the time required for a pass 
through the loop. If G is 10, then line 410 prints a 
jump at TAB(X), X now being a random number 
between 4 and 13, inclusive. Fence sections are 
also printed at the left and right sides of the 
screen. 

Line 240 decides whether a tree will be printed 
using the value of RN that was established in line 
210. For skill level five, RN will have a value of .6; 
if a random number is more than this, no tree is 




^f^ m 



im 



\ 






V 




m^s^^^ 






.^ 



^«^^ 




,>"ke3^' 




O 



CO 




printed. This means a tree will be printed roughly 
60 percent of the time. For the lower skill levels, 
this probability is reduced so that the lower the 
skill level, the fewer trees there will be. If no tree 
is to be printed, line 440 prints only the fence 
sections. Otherwise, line 430 prints a tree at 
TAB(L), L being a random value between 1 and 
19, inclusive. 

If PEEK (B) in line 450 is not 32 (a blank), then 
the skier has run into something and control 
passes to line 500 to find out what the skier has 
run into and what to do about it. 

The Illusion Of Motion 

Line 460 POKEs the skier's location blank, then 
calculates a new position by adding the value of 
D (determined in lines 350 and 360) to B, the skier's 
location. It then POKEs the appropriate figure 
into that location. Essentially, the skier is placed 
on a horizontal line on the screen and is allowed 
to move only back and forth on that line. However, 
the screen is scrolling upward beneath him, so 
the illusion of forward motion is created. 

The movement taken care of, control passes 
back to line 320 for another pass through the main 
loop. This loop, lines 320-470, has been kept as 
small as possible in order to minimize the time 
required for each pass through it. I have tried to 
be very stingy with time in this section, figuring 
that even one instruction repeated a few hundred 
times adds a lot of potentially unnecessary time. 

Flags And Fences 

Line 500 is reached when line 450 detects that 
something has been struck. This entire section 
was originally a part of the main loop, but re- 
moving it from the loop and replacing it with the 
single statement in line 450 produced a significant 
increase in speed. Line 500 checks to see if a gate 
was hit. If so, it sounds a high tone to let you know 
you got credit for the gate, then increments H, 
the number of gates hit, and passes control back 
into the main loop. 

Line 510 checks to see if a finish line was 
struck. If so, H is changed to the number of gates 
missed, the elapsed time is placed in TM, and 
control passes to line 640 to end the run. 

If a flag was hit, line 520 sounds a low tone to 
let you know you were close but get no credit for 
the gate. Control then passes to line 570. 

If a jump wasn't hit, line 530 transfers control 
to 570. Lines 540-560 handle the jumps. The skier 
is moved two spaces horizontally in the direction 
(D) that he was going, the value of G is stepped 
up to bring the next gate closer, the screen is skip- 
ped up ten spaces, and the value of SK is reduced, 
which results in a slight increase in speed. The 
skier is moved down one line on the screen unless 
he is already three lines below the center. Moving 

80 COMPUTl! July 1983 



him further down makes seeing what is coming 
very difficult, but if you'd like to try it, one way is 
to put a larger negative value here in place of the 
-3, If, for instance, you put a -10, the skier will 
move down every time you hit a jump. Another 
way would be to start the skier at a lower position 
on the screen. This would require simply changing 
the initial value of B in line 250. 

Line 570 checks to see if a fence section was 
hit. If so, it changes your direction and passes 
control to 610 for the sound effect. Getting out of 
the fence may take a couple of tries. If a tree was 
struck, then line 580 changes the figure to a cross 
and passes control to line 600. Line 590 POKEs 
S-3 to in case it was set by hitting a flag in line 
520, then passes you back to the main loop. 

Shaking The Screen 

Line 600 causes the screen to shake a bit when 
you hit a tree. The inner loop here counts from 3 
to 7, then from 4 to 6, and stops at 5. POKEing 
these values into location 36864, which controls 
horizontal centering, shifts the screen rapidly 
back and forth around the normal value of 5. Line 
610 increments OS, the number of objects that 
have been struck, and also controls both the sound 
effect and the changes in color of the cross in line 
580. If a tree was struck, line 620 moves the skier 
up a line, adjusts the value of U, and checks to 
see if U has reached its limit of 10. If so, the run is 
aborted and you are given another chance. If not, 
line 630 passes control back to the main loop. 

Line 640, the finish line sound effect, is 
reached only if the finish line was detected in line 
510. Lines 650-660 print out the statistics on the 
run just completed and finish off the sound effect. 
Line 660 also POKEs 36869 back to its normal state 
so that the scores can be printed. 

Line 670 computes the player's cumulative 
score, adding the score for the run just completed 
to his total from previous rounds, and also prints 




DownJiiU mcin^^ on the VIC-20 in Speed Ski. 



CREATIVE SOFTWARE 

- the # 1 * independent VIC-20 f ulhline software 

publisher in the U.S. - is proud to announce 

4 new Game Cartridges & 5 Home Applications 

for the COMMODORE 64: 



pCfiEAJIVE 



A GAME ON CARTRIDGE FOR THE COMMODCM^ 64~ 




^^Aa ioyifick confroller requlrad. 



ICgEATIVE 
ISOFTWARE 



PRES0ITS= 



/ISTROBLITZ 



A GAME OK CARTRIDGE FOR TflE COMMODORE 64"* 




4 



Joystick controller r«quli«d. 




TiAil^MAIi 

A GAME OH CARTRIDGE FOR THE COMMODORE 64- 




Joyttidt 00€ttrol1«f roquliwd. 



A HOf/^ APPUCATON Pf*OGfiAM 



f~ 


f r^^ 


m] 




i'r 


frX^^ff^^ 


ys> n 






f^ T^^ 


s. 


<3. 






\{Sptj_^B5 


^ 


\ 




U 1'^^ IVt^^^HUB /' 


' 


© 




r,.,-\iy.y-<;3[p»=^ 


Q> \ 




I -^l mm 


■ :©; 





THIS GAME IS ALSO AVAILABLE FOfi THE V1C'20. THIS GAME IS AL50 AVAILABLE FOR THE VIO20. 





CREATIVE 
SOFTWARE 

A Dtvision of ASCI. Inc. 
230 East Caribbean Drive 
Sunnyvale, CA 94086 



*Bas€d on survey of distributors and retaifers. 

Copyright 1983 by Creative Software. All rights reserved. 

"VIC-SO," "COMMODORE" and "COMMODORE 64" 
are trademarks of COMMODORE ELEQRONICS, LFD. 



These Home Appli- 
cation Prosrams 
are also available 
for the VIC-20. 



the round number. Line 680 then prints the 
cumulative scores for all the players, and line 690 
reinitializes for the next run. 

Line 700 increments the player number; if 
the last player hasn't gone yet, control passes 
back to line 130 to start another run. If the last 
player has just gone, line 710 increments the round 
number and checks to see if the game is over. If 
not, the player number is changed to 1 and a nev^ 
round is begun. Otherwise, line 720 lets you know 
the game is over. It then turns the cursor white. 

To rerun the program, hit RETURN, then 
type RUN and hit RETURN again. The reason for 
this odd procedure: it isn't visible because it's 
white on a white background, but some garbage 
has been picked up during the run and lies on the 
same line as the cursor. During the program this 
garbage is disposed of by the loop that rejects bad 
input for the skill leveL There is no such loop at 
the end of the program, though. 

Okay, time to get the program typed in, then 
hit the slopes. There's a world record waiting to 
be broken. Good luck. 

Variable Listing 

N P N u m be r ti f p ! ay e rs 

NR Numbertif rounds 

R Prese n t rou n d n u m be r 

F Present player number 

S$ Slope title 

SK Time delay factor in main loop 

RN Con t rol s p roba bi I i ty o f a t ree bei n g printed 

S Noise generator (36877) 

L Random variable used to position trees 

B Skier's location 

C Difference between screen map and color code map 

F Skier figure 

TI$ System clock 

D Direction (1 or - 1 ) to be added to skier's location 

G Counts spaces between gates and jumps 

E Counts gates 

X Random \'ariable used to position gates and jumps 

H Counts gates hit 

TM Elapsed time for run 

U Controls \'ertical movement of skier on screen 

OS Counts number of trees and fence sections struck 

SC Player's score for a run 

Z(P) Player's cumulative score where P is the player number 



BEGINNING PROGRAMMERS 
If you're new to computing, please read "How 
To Type COMPUTE! 's Programs" and "A 
Beginner's Guide To Typing In Programs." 



SpeedSki 

10 PRINT"{CLR1 {9 DOWN) I 3 SPACES }SPEED-SK 

I": PRINT" {9 DOWN}" 
20 POKE56 , 28 : POKES 5 ,250: POKES 2 , 28 : POKES 1 

,2S0;POKE36879,25 
30 READX:IFX=0THEN70 
40 F0RI=XT0X+7 : READY : POKE I , Y: NEXTI : G0T03 


82 COMPUTE! July1983 



50 DATA7672,16,56,56,124, 124,254,254,16 

51 DATA7664,0,0, 15, 32, 64, 128,0,0 

52 DATA7656,0,0,240,4,2,1,0,0 

53 DATA7648,40, 40, 40,40, 104, 56,44,40 

54 DATA7640, 32 , 16, 136 , 68, 34, 17 , 8, 4 

55 DATA763 2,4,8,17,34,68, 136,16,32 

56 DATA7624,16,28,30,28,16, 16, 16,56 

57 DATA7616,0,0,0,0, 25 5,8 5, 170, 255 

58 DATA7608,16,24,126,24,26,44,72,16 

59 DATA7424,0,0,0,0,0,0,0,0 

60 DATA7592,8, 24, 126, 24,88, 52, 18,8 

61 DATA7584,0, 0,0,0,0,0, 255,0 

62 DATA7576,8, 8, 28,8,62,8, 127,8 

63 DATA7 568, 8, 8, 62, 8, 8, 8, 0,0,0 

70 PRINT" {CLR} [BLKl is SPACES ) SPEED-SKI " : 
PRINT"i22 T3" 

PRINT" I UP 1 {BLU} YOUR SCORE IS ELAPSED 
TIME + 5 FOR EACH GATEMISSED. 
{2 SPACES) LOWEST SCORE WINS." 
PRINT" (down) PRESS {RVS}<[0FF} TO GO L 
EFT 1 4 SPACES} AND { RVS) > {0FF}T0 GO RIG 
HT . " 

I NPUT " I DOWN } NO . PLAYERS ( 1 -4 ) " ; NP : I F 

NP<1ORNP>4THEN70 

INPUT" I down! NO- ROUNDS {2 SPACES} (1-5 

) " ; NR: I FNR< 10RNR> 5THEN70 

R=l : P=l 
130 PRINT " I DOWN } [RVS} I CYN) SKIER #";P:PRI 

NT" {DOWN} (BLU} SLOPE DESI RED" : PRINT"! 

=BEGINNER" : PRINT"2=INTERMEDI ATE " 

PRINT " 3=ADVANCED " : PRINT " 4==0LYMPI C " : P 

RINT " S^PROFESSIONAL" 

A$=" " :GETA$ : IFA$=" "THEN150 

IFA$= " 1 "THENS?= " [ 2 SPACES } BEGINNER" 

IFA$= " 2 "THENS$= " INTERMEDIATE " 

IFA$="3"THENS$=" (2 SPACES} ADVANCED" 

IFA$= " 4 "THENS$= " I 2 SPACES } OLYMPIC " 

IFA$= " 5 "THENS$=" PROFESSIONAL" 

SK=VAL ( A$ ) : RN= ( SK+1 ) /10 : IFSK< 10RSK> 5 

ORSK<>INT(SK)THENPRINT"U0 UP) ":G0T0 

130 

SK=3 5-5*SK 

P0KE36869, 255 : PRINT" {CLR) " :POKE36878 

,15:8=36877 

F0RI=1T022:L=INT(RND(1)*19)+1:PRINT" 

lRED}<"rTAB{L); " {GRN} ? " ; TAB ( 20 ) " 

(RED}<":NEXTI 

B=7910 : 0^307 20 : F=55 : POKEB , F : POKEB+C , 

3 : POKEB+22 , 32 : POKEB+21 , 32 : POKEB+23 , 3 

2 

POKE8125, 57:POKE8131, S7:POKE8125+C,4 

:POKE8131+C,4 

PRINT" {HOME} {8 DOWN ) 1 4 SPACES} (RVS } " 

;S$; "{13 DOWN}" 

FORI=8126T081 30 : POKEI , 52 : POKEI+C, 4 :N 

EXT I 

F0RI = 1T05 t POKES-1 , 220 + 5*1 : FORT^iTOl0 

: NEXTT : POKES-1 , : NEXTI 

TI$="000000" 

GETA$ : IFA?=" "THEN310 

IFSKTHENFOHT=1TOSK : NEXTT 

IFF=55THENPOKEB-21,58:GOTO350 

POKEB-23, 59 

IFPEEK (197 )=29THEND=-1 : F=55 : POKES, 24 

5:GOTO370 

D=1:F=S3: POKES, 246 

G=G+1:IFG<28THEN410 

G=0tE=E+l : IFE=10THENPRINT*' {PUR} 98888 

8888888888888889 " : GOTO460 



80 



90 



100 



110 



120 



140 

150 
160 
170 
180 
190 
200 
210 



220 

230 

240 



250 



260 

270 

280 

290 

300 
310 
320 
330 
340 
350 

360 
370 
380 



Exterminator By Ken Grant 

Just about as action-packed and 
complex as is nufisically possible in 
your standard 5K VIC 20. This ex- 
tremely well-written, machine code 
game is invariably praised by cus- 
tomers and has been calied the sec- 
ond best tape game made for the VIC 
of 1982 (oh, no, not by us, we don't 
agree with that opinion). Rapidfire 
from the bottom of the screen at 
moving insects and creatures . . . any- 
thing that moves, and even anything 
that doesn't. Just don't be overrun by 
any or all. It's as much fun the hun- 
dredth time you play it as it was the 
first. This game plays stick or key and 
runs in standard 5K ViC 20. 

3-D Man Not just another eat-the- 
dots-in-a-maze game, this! Though 
you find yourself in an edible dot- 
littered floor plan that may seem 
vaguely familiar, we guarantee you 
have never looked at it from this per* 
spective {eye level) before- The dots 
diminish into the distance as you 
race down a hallway eating them one 
after the other. The dot-remaining 
counter on the right clicks downward. 
Race through a 4-way intersection 
and whoops! Head to head with one 
of the ghosts that haunt these halls! 
Back quickly on the stick puts you 
facing the dotless hall you just 
cleaned out when . . . another ghost! 
A quick left turn into that junction 
saves you, but in the confusion 
youVe lost direction momentarily 
and must check the miniature radar 
plotting screen to set things straight. 
. . . Definitely, an ordinary maze game 
this one is not. 3-D Man requires a 
joystick and at least 3K extra mem- 
ory. 

Racefun Extensive use of multi- 
color character graphic capabilities 
of the VIC make this game very ap- 
pealing to the eye. Fast all-machine 
language action, quick response to 
the stick or keyboard-controlled 
throttle, combine with the challenge 
of driving in ever-faster traffic to 
make it appeal to the rest of the body. 
Plays joystick or keyboard. 



i 


"^ 




_5D MAbI ^ 


^ 


H 








^^PT 








/v^^^ 


l|rf^ffH|| 


M 


^^ 


w 


b^^^^^^^^^^^^P^Ty 










WARMING! ~'~~~^^^^=^C^ ^^ J 





Antimatter Splatter* a more 
dastardly alien could scarcely be 
found than one who would wipe out 
an entire civilization by dropping anti- 
matter anti-canisters, right? If your 
opinion of this alien troublemaker is 
the same as ours, probably your first 
thought was, get some matterl We 
say calm down! All is not lost. A 
mobile rapid splatter cannon capable 
of both breaking through his standard 
alien moving force fields and laying 
waste to the ever-increasing number 
of anti-canisters is even now hovering 
above uS- If only our cannoneer 
hadn't called in sick. ..say, what are 
you doing today? AnthMatter Splat- 
ter is 100% machine language and 
runs in standard 5K VIC. 



nUFEKUP 

P.O. Box 156, Shady Cove, Oregon 97539-0156 
C.O.D, Orders„,call (503) 878-2113 

Mastercard and Visa cards accepted 

Ask for our new FREE catalog! 

NOW: Two for the 64! 

Call, write, check your stores and watch our ads! 



Defender on Tri As pilot of the 

experimental Defender-style ship 
"Skyes Limited," you are the only 
hope for an advance party of scien- 
tists trapped in ancient alien sphere 
which suddenly (heat from collision 
course with sun presumably— G.E.) 
came to life. Four screens worth of 
unique defenses, on-off shields, fuel 
deposits, alien treasures, running 
timer, energy, score and very nice 
graphics display make this one that 
does not quickly wax old. Defender 
on TRi requires at least 3K memory 
expander, but will run with any 
memory add-on {8K, 16K, 24K, etc.} we 
have come across. 

Alien Panic Standard 5K VIC 
20/combination stick & keyboard. 
This arcade4ype game pits you 
against time and an alien on a six 
level construction sight with ladders 
and pitfalls, but not to worry! You 
have a shovel. 

And there's more... 

Rescue From Nufon Adventure M2.95 

Collide Crunch M2.95 

Vikman Classic M2.95 

Search Challenging M 2.95 

VlC IS a tradennark of Commodore BusinQSj Machiaes, Inc 



390 IFE>10THENPOKEB,56:GOTO510 

400 X=INT ( RND (1 ) *10 ) +2 : PRINTTAB (X ) " I PUR} 

9444449" :GOTO460 
410 IFG=10THENX=INT ( RND ( 1 ) * 10 ) +4 : PRINT " 

{UPl {RED}<";TAB(X)"[GYN)>^";TAB{20); 

"lRED}<" 
420 IFRND(1)>RNTHEN440 
430 L=INT ( RND ( 1 ) * 19 ) +1 : PRINT " [ RED } < " ? TAB 

(L)"tGRN}?";TAB(20)"{RED)<":GOTO450 
440 PRINT" {red} <" ;TAB(20) r "<" 
450 IFPEEK(B)<>32THEN500 
460 POKEB, 32 ; B=B+D: POKEB, F; POKEB+C, 3 
470 GOTO320 
480 END 
500 IFPEEK ( B ) =52THENH=H+1 r POKES-1 , 240 : FO 

RT=1TO30 : NEXTT : POKES^l , : GOTO460 
510 IFPEEK ( B ) =56THENH=10-H ; TM=INT ( Tl/60 ) 

: POKES-1 , : POKEB+D , F : GOTO640 
520 IFPEEK ( B ) =57THENPOKES-3 , 220 : G0T05 70 
530 IFPEEK(B) <>62ANDPEEK(B) <>61THEN570 
540 POKES , 253 : D=D*2 :G=G+10 : FORI=1TO10 : PR 

INT"{RED}<";TAB(20)"{RED}<":NEXTI:IF 

SK>0THENSK=SK-2 
550 IFU>-'3THENB=B+2 2:U=U-1 
560 GOTO460 
570 IFPEEK(B)==60THENPOKEB,60:D=D*-2:GOTO 

600 
580 IFPEEK(B)=63THENPOKEB-22,50:POKEB,51 

:GOTO600 



590 POKES-3,0:GOTO460 

600 FORJ=2TO0STEP'-i : FORI = 5-JT05+J : POKE36 

864,I:NEXTI,J 
610 08=08+1 :FORT=0TO127 : POKES, 25 5-T: POKE 
B-22+C , INT ( T/ 22 ) +2 : NEXTT : POKES-1 , 

620 IFPEEK(B)=51THEND='-22:U=U+1 : IFU=10TH 
ENPRINT"{RVS} [CLR}TRY AGAIN" :POKE368 
69,240:GOTO690 

630 GOTO460 

640 POKES , : F0RT=1 28T025 5 : POKE8-3 , T : NEXT 
T:POK'^S-3,0 

650 U=0:PRINT"lCLR} {RVSlOBJECTS HIT="rOS 

: PRINT" { RV8 } GATES MISSED= " r H : PRINT " 

lRVS}TIME="TM:8C=TM+5*H 
660 PRINT " I RVS } SCORE= " 8C : POKES-2 , 220 : FOR 

T=1T01 00 : NEXTT : POKES-2 , ; P0KE36869 , 2 

40 
670 Z(P)=Z(P}+SC:PRINT"{2 DOWN} 

{7 SPACES }{ RVS } ROUND ";R: PRINT" " : FOR 

I=1T0NP 
680 PRINT" {3 SPACES} SKIER # " r I ; Z ( I ) : NEXT 

I 
690 SC=0 : G=0 : E=0 : OS=0 : H=0 i IFU=10THENU=0 : 

POKES, 0:GOTO1 30 
700 P=P+1:IFP<NP+1THEN130 
710 R=R+1 : IFR<NR+1THENP=1 :GOTO130 
720 PRINT" 1 2 DOWN} {6 SPACES} I RVS } GAME OV 

ER" : PRINT" IwHT} " :END q 



st^S^I 



audio 



!„Vc distortion, ciea-^^iiity. and 
i Sinclair'^*'" 



0^^^^?om us-^P°^^P^" °Sc ^'--« t^..os. 









\;i°%^nqeic£i^ 



84 COMPUTE* July 1983 



2r 

D 










f' Timothy G Baldwin 



This entrancing, well-designed game for any Atari offers 
you the best of both worlds. It has the drama, variety, and 
mystery of a good adventure game combined with the 
fast-paced excitement of an arcade game. 

Your job is to rid the ki}igdom of the three evd 
wizards. All this would be easy if the wizards weren't 
so zealously guarded by servants whose names reflect 
their personalities: bat-wingers, blinkers, chokers, 
crushers, and stompers. 



You are in love with the Princess Dilayna and have 
asked her father the King for her hand in marriage. 
Her father does not particularly like you. He chal- 
lenges you to demonstrate your worthiness by cap- 
turing the three evil wizards that have been ravaging 
the kingdom for years. They each live in their own 
castle protected by their servants - the bat- wingers, 
the blinkers, the chokers, the stompers, and the 
crushers. The castle rooms are rumored to be 
deadly, with untouchable walls, fast-moving 
enemies, and no exits. You reluctantly accept the 
King's challenge. 

Fortunately, a friendly magician gives you a 
cloak that makes its wearer invisible. But the cloak's 
power works only for a limited time in each room. 
Once the time is up, you are instantly destroyed. 
The magician also gives you a magic spell that 
temporarily freezes all servants in a room. But you 
must use this spell with care: it will consume a por- 
tion of the cloak's power each time it is used. 

Armed with these aids, you leave on your 
quest. The King wishes you good luck - or did he 
say good riddance? 

The Three Wizards 

The object of "Castle Quest" is to capture the three 
wizards. To reach each wizard, you must pass 
through the ten rooms of his castle. The rooms are 
inhabited by the wizard's servants, who mt^ve about 
quickly in an unpredictable manner. The higher 
numbered rooms in each castle have more servants 
(up to 32). The servants move progressively faster 
as you complete more rooms. 

You have three (3) lives to capture the first 
wizard. Capturing a wizard earns you three addi- 
tional lives. Touching a servant or a room wall or 



failing to exit a room within the allotted time will 
cause loss of a life. You cannot exit a room until 
you capture both door keys in that room by touching 
them. One key is invisible until the other key is 
touched. 

Once both keys are captured, the room's exit 
appears - unless you are in a castle's tenth room. In 
this case, the wizard appears, and you must capture 
him before you can escape. Also, once you capture 
the first key, your presence becomes known to the 
wizard, and he causes room wall segments to move 
to block your escape. You must move quickly to 
avoid destruction. 

Secret Passages 

A counter at the top of the screen signals the amount 
of "cloak time" remaining. Pressing the joystick fire 
button will temporarily freeze the action, permitting 
you to move safely past a tight corner, but you lose 
50 units of cloak time each time you use the freeze 
option. The room number and the number of your 
remaining lives are displayed at the top left of the 
screen. Your score - a measure of your ability to 
elude the many dangers involved - is displayed at 
the top right of the screen. 

Room patterns, key locations, servant locations, 
and wizard placement are randomly generated, so 
be prepared to touch keys partially embedded in 
walls, move through weird mazes, etc. Sometimes 
a secret passageway is created at the screen bottom 
or in a room's right wall. You may use these pas- 
sageways for a quicks easy escape. 

I will make tape or disk copies for anyone who 
sends me a blank tape or disk, a stamped, self- 
addressed mailer, and $3. 

T. G. Baldwin 
Box 354, Route 2 
Hayes, VA 23072 



Castle Quest 

10 



PftCESaMEMORY SRUF 



20 



30 



REM i^ 

C0=0: Cl=l : C2=2: C3=3 : C4=4 : C5=5 : C6- 

6: C7=7: 08=8: C9=9: C 1 0= 1 : C t 5= 1 5 : C 1 

6=16: C256=256: RAMTOP=PEEK ( 106) :MI 

SSIDN=C1 

REM 

^7 iJiJsW^ > 



XNXTXRLXZRTXON ROUTXN 



July 1983 COMPUTE! 85 




2S0 



Searching for the keys to the hidden door on Atari's Castle 
Quest. 



40 


GO 




: ? 




C 


50 


Tl 




0: 




= C 


60 


GO 


70 


RE 




i9 


80 


GO 




SU 




OK 


90 


IF 


100 


X 


1 10 


R 




< 


120 


G 




< 


130 


I 


140 


P 




> 







150 


X 



SUB 1080:EOSUB 

" <:CLEAR> " : POKE 
2, C0, C0; GOSUB 3 
=Ca:GOSUB 1150: 
G=C0: L=C3: Q=C0: 


SUB 320 
M C4 

SUB 970:GOSUB 4 
B 1500:POKE 156 
E 53248, 60: POKE 
C=C10 THEN GOS 
=USR ( 1767) : FOR 
I:PDKE 1568, F 
EM i^ 

=G-C1 : IF (PEEK ( 
C0> THEN 400 
F PEEK (203) >204 
OSITION 23-<G>9 
, C0: ? CHR* (B) ; G 

THEN SETCOLOR 
= PEEK (53260) : IF 
POKE 53250, W2:P 
EEK(706)<>N THE 
706, N 



770:GRAPHICS C16 
752, CI : SETCOLOR 
10 

T1=C16-GQSUB 115 
C=C0: X 1=C0: SCORE 



PRCESHROOM SETUP ROUTXN 



50:GOSUB 1340:GO 
8,C1-P0KE 77,0:P 

53249, Wl 
UB 340 
I=C0 TO 100:NEXT 



PRCE^HMniN PROGRRM l_00 



1566} < : C0) OR (G 

THEN 520 
99 > - (G>99) - (G>C9 
; CHRS (B) : IF G< 10 
C2, C4, C0 

( X-Xl ) >=C2 THEN 
OKE 53249, C0: IF 
N GOSUB 380: POKE 



290 


300 


310 


320 


330 


340 


350 


360 


370 



380 

390 
400 

410 
420 

430 

440 

450 



160 


IF X-X1>=C4 THEN POKE 53251, W3:P 






OKE 53250, C0 


460 


170 


IF X>=C6 THEN GOSUB 260 




180 


IF STRIG(C0)=C0 THEN POKE 1568, C 






1:G=G-50:FOR 1=0 TO 250:NEXT I:P 


4 70 




OKE 1568, F 


480 


190 


CHBASE=RAMT0P-C8-C8* ( INT (G/2) =G/ 
2) : POKE 756, CHBASE 


490 


200 


IF PEEK (706) =N THEN IF RND(C0)>0 






-95 THEN PLOT I NT ( RND ( C0 > * 38 ) , I N 


500 




T (RND <C0) *22) : GOSUB 24 




210 


IF STICK (C0) < >15 THEN SOUND C2,l 
00, C6, C8: SOUND C2, C0, C0, C0 


510 


220 


GOTO 120 


5 20 


230 


ISiaM^ft^lSPnCE:Sll"SHODTXNG" 3 0UHP Rl 










TilliiiMa^.^ kf:J:Trf^rf> 




240 


FOR I=C0 TO 30:SOUND C0,I,C0,C15 






:NEXT I : SOUND C0 , C0 , C0 , C0 : RETURN 


530 


250 


■-IfdZH OfltflM F«TT ni^KMlHU RUUIXNt^H 












<4 i--1J;W=^i> 




260 


IF C = C10 THEN IF X014 THEN RETU 






RN 


540 


270 


FOR I=C0 TO C5;P0KE SC+C10*40+I* 





C0 
RE 



40-Cl , C0: NEXT 
OR I=C15 TO C 
, C10, C10, I 
SOUND CI , 1 1,C 
, C10, I+C2: SOU 

I:FOR 1=0 TO 
:NEXT I 
POKE 53251 

53278, 255 
REM 
<:3 ^-lJ;m4=!> 
POSITION C10+ 
game setup " : R 
C=C+C1 : POSITI 
ead y -f or Room 
REM 
C6 h^J;Hm> 
PL= (RAIiTOP-9) 
ND (C0) »151 ) : R 

TO 11:READ Z 
DATA 102, 36, 1 
, 60, 60, 36, 102 
W3=70+INT (RND 
P: RETURN 
REM 



I : POKE 53278, 255: F 
STEP -C1:S0UND C0 

10, I+Cl : SOUND C2, 12 

ND 3, 13, 10, H-3:NEXT 

3:S0UND I,C0,C0,C0 

: POKE 53250, C0: POKE 
TURN 



USER XNFORMRTXON RQUTTNES 



CI , C 10: ? "Wai t for 
ETURN 

ON C10,C10:? "Get r 
" ; C: C = C-C1 : RETURN 



HXZRRD PLOTTIKG ROUTXN 



*256:PL=PL+52+INT(R 
ESTORE 350:FOR I=C0 
: POKE PL+I , Z: NEXT I 
26,90, 126, 126,66, 90 

(C0) *130) : POKE 707, 



KEY TOUCHXNG" SOUND ROUTX 



SOUND C2, 20, C10, C10: SOUND CI, 80, 

C10,C10:FOR 1=0 TO 30:NEXT I : SOU 

ND CI , C0, C0, C0: SOUND C2, C0,C0,C0 

:RETURN 

REM —I I I gJ:^rfK--^i»1=i=tif=1J^rM»}a 

C3 i=1;7sM4-i> JB lull ^'1 |lhi I I 

{21 aHngs> 

FOR I=C0 TO C3:P0KE 53248+1, C1:N 
EXT I:POKE 1568, CI:? ■■<CLEAR>":S 
ETCOLOR C2,C0,C0:IF Q THEN RETUR 
N 

POKE DL+C15, C7:P0SITIQN C4,C10:I 
F Q THEN RETURN 

POKE 756,224:? "TOUGH LUCK '": FOR 
I=C0 TO 200:SOUND C0 , C6 , 1 00 , C8 : 
NEXT IiSQUND C0 , C0 , C0 , C0 : T2=C 1 
POKE DL+C15, C2: L=L-C1 : ? " CCLEAR> 
" : C = C-1 : GOSUB 320: C = C-M : GOTO 80 + 
500* (L<=C0) 
REM l>3i*rfd:3SMMJi:ti*:^Ji:TiTi1SlM 

^:9 aasHSxa SPACES >[3imiiaaESi^si 

>'<H--M:MiJifWTT^C7 K-f J;TH=H> 
A=INT(Ci6*RND(C0) )*Ci6+C6:M=INT( 
C16»RNDCC0) )«C16+C2:N=INT(C16*RN 
D(C0> )*C16+C4:P=INT(C16*RND(C0) ) 
*C16+C8 

B=33+C-C6*(C>5) :C=C+C1:D=C2+C2*( 
C>C1)+C4»(C>C3)+C8*(C>C6)+C16«(C 
>C9) 

E=INT(RND(0)*5+7):POKE 17 63, E 
F=C2+(C>C9)+C2*(MISSIQN-C1> 
G=100+C»50: COLOR B;POKE 1578,31: 
POKE 1566, C0: POKE 756,RAMT0P-C8: 
POKE 53278,255: X1=C0 

SETCOLOR 2, C7* (C = 7) +C2* (C = 8) +C 1 * 
(C=9) +C3* (C=10> , C0: RETURN 
REM Mi;--14:»^-Trf:T:J^-^drIiiaM:M:IiIilS 
t5 anaa^CS SPACES >«IIiin5IIIl 
<22 t--1J; W4-i > 

Q=C1:G0SUB 400:6OSUB 410:POKE 75 
6, 2 24: ? " C3 SP ACES> ATT ABOY 5 " : Q = C 


FOR I=C0 TO C5:S0UND C0,C10,50,C 
8:P0KE 705,C10:POKE 706,C10:POKE 
710,C10:POKE 712,C10:FOR J=C0 T 
O 50: NEXT J 

SOUND C0,C10,100,C8:POKE 705, C0: 
POKE 706,C0:POKE 710,C0:POKE 712 



86 COMPUTE! July 1983 



stake a.Cl^^««fftne most 
excitii|g Ne^ Game for your 
Afaii Hc^poie Cciinpute£]II 




the pfb^rafmining 
I that brought you 
Kobot Attack"^ "Defense 
Command*" and many other 
great Arcade games for 
yourTRS-80- 
' 100% machine language 
-» 16K ROM Cartridge, the 
largest available anywhere! 

• Written specifically for th " 
Atari^ — not a converted 
Apple^- game. i 1 

• Ten different rounds / -^ 
DHRculty adjustment 
High score table 
Demo mode /— 
Spectacular sound^nd 

1 graphics h-^ ; 

• Runs on any f \ - 
400/800 with ' . 
at least 16K / 
memory 

• Only $49.95 || 

Available also 
For the 5200 



^po. flffl?!9p%j^c ^^.^S:^^ C4 91409 am jbz sa^i 



550 



560 

570 
5S0 



,C0 
SOU 
. •-? 

RE + 

IF 

ION 

GOT 

REM 

[3<:8 



600 

610 
620 



630 
640 

650 



660 



770 

780 
790 

800 

810 

820 

830 

840 

850 

860 

870 



: FOR 
ND C 
"CCL 
MISS 
C = C1 
= C3) 
O 80 
C3 aQIIH^a> 



J=C0 TO 
0, C0, C0, C 
EAR> " : GDS 
ION*INT ( ( 
THEN BO 



50:NEXT JrNEXT I 
0: POKE DL+C15, C2 
UB 320: SCORE=SCD 
G*C> /C10> 
TO 580+1 10* (MISS 



590 ? 



L+1 
, C6 

POS 

POS 



CCLE 
1 , C6 
: POK 



AR> " : POKE 
:POKE DL+ 
E 707, C0: 



niJ=feliMrmi^ifcrfr 



DL+C9^ C6: POKE D 
13, C6: POKE DL+15 
IF L<=C0 THEN 66 



ITIDN C2,C4 
:POSITI0N 2 
ITIDN C3,C7 



C5=? "YOU HAVE": 
' "COMPLETED YOUR 

' "QUEST" : C=C0:L= 



■ t 
"Pr 



POSITION 27, Ca 
L + C3 

POSITION C5, 15 
o continue 

POSITION C5, 19: ? 
POKE 53279, CB: IF 

THEN 640 
? " tCLEAR> " : POKE DL+C9 , C2 : POKE D 
L+1 1 , C2:P0KE DL+ 1 3 , C2 : POKE DL+15 
, C2: MISS10N=MISSiaN+ (L>C0) tCl : BO 
TO 60 + 620* (L<=r<?) 

POSITION C7,C4:? "SORRY ? " : POSITI 



: POSITION C5, 17: ? 

I=]4--1=*J to quit" 

"SCORE: "; SCORE 
PEEK (53279) < >C6 



1536 + : 



^08, 2 



30 



RESTORE 790:FOR 1=1536 TO 

47:READ A:POKE I,A:NEXT I 

RETURN 

DATA 173, 4,2 08, 20 1 , 4,240, 2, 

2, 17 3, 99, 228, 14 1 , 36, 2 

DATA 17 3, 100, 228, 141 , 37, 2, 14 1 

,6, 141 ,30,2 08,7 6,98, 228 

DATA 0, 162, 2, 2 02, 240, 42, 138, 72, 1 

73, 10, 210,41,7, 10, 170 

DATA 189, 0, 1 , 133, 206, 133, 20B, 232 

, 189, 0, 1 , 133, 207, 133, 209 

DATA 32, 148, 6, 165,207, 15 7, 0, 1 , 20 

2, 165,206,157,0, 1,104 

DATA 170, 208,21 1 , 1 62 , 5 , 1 73 , 1 20 , 2 

, 202, 240, 19 7, 24, 106, 176, 249 

DATA 72,224,2,240,8,224,1,208,13 

, 230, 203, 208, 2, 198, 203 

DATA 165,203, 14 1,0, 208, 208,32, 16 

9,0, 224, 4, 2 40, S, 168, 145 

DATA 204, 230, 204, 76 , 1 34 , 6 , 1 60 , 7 , 



880 

890 

900 

910 

920 

930 

940 

950 
960 

970 
980 

990 

1000 



145, 204, 198, 204, 16 0, 0, 185 

DATA 240,6,145,204,200,192,8,208 

, 246, 104,76,83,6, 160,0 

DATA 152, 145, 206, 173, 10,210,41,1 



, 208, 15, 169, 56, 141 , 201 , 6 

DATA 169,233, 14 1,204,6, 141,210,6 

,208, 13, 169,24, 141,201 ,6 

DATA 169, 105, 141 ,204, 6,141,210,6 

, 173, 10,210,41, 1,208,2 

DATA 169, 40, 14 1 , 205, 6,216,0, 165, 
0, 133, 206, 165, 207, 
0, 13 3,207, 177, 206, 240, 8, 165 
133, 206, 165, 209, 13 3, 20 7 
169, 1 1 , 145, 206, 96, 104, 168, 1 
169,7,76,92,228,60 
126,90, 126,90, 102, 12 6, 60 



ETUP PLftYER-HrSSTLE GRRPH- 



:M'I*<:[ 





ON 2 


4,C5:? "you blew it,": POS IT I 






ON C2,C7:7 "quests completed ";M 


1010 




ISSION-Cl 




670 


GOTO 620 




680 


RUN 






1020 


690 


REM 


L15ER WXNS THE ^RME ROUTINE! 








iS KlJ=T>J4--11 






700 


GRAPHICS 2:SETC0L0R C2,C0,C0:POS 






ITIOI 
res5 

+ n " 


^J C6,C4:? 4*6; "YOU WON f " : ? " 


P 


1030 




».-%-^-«id2Hrl^H=Ai ^nrl thP-n RUN 


1040 


710 


to , 
POKE 752,1:7 :? "begin a new gam 




720 


POSITION C1,C7:? #6;"final score 
"; SCORE 


1050 


730 


FOR 1=255 TO C0 STEP -CI: SOUND C 






0, I, 10, 10:POKE 712,I:P0KE 710,1: 


1060 




NEXT I 




740 


GOTO 740 


1070 


750 


POKE 


1568, CI : RUN 




760 


REM ( 


F>UT R UERTICBU BLRHK XHTERR 


± 


1080 




(3Q<8 







206, 

DATA 

,208, 

DATA 

62,6, 

DATA 

REM 

«<9 SPACES] 

CIO a3IHS> 

POKE 559,62:PQKE 54279 , RAMTOP-C 1 

6:P0KE 53248, CI : POKE 53277,03 

PL=RAMT0P-12:Y=PEEK(88) ;Z=PEEK<8 

9>:P0KE 88, C0: POKE 89, PL: POKE 10 

6,PL+C3:? " CCLEAR> "; POKE a3,Y:P0 

KE 89, Z 

POKE 106, PL+12: PL=PL*C256+120: IF 

C=C0 OR C=C10 THEN 2=(RAMT0P-C9 
)*C256:F0R I=Z TO 2+255:P0KE I,C 
0:NEXT I 

FOR I=C0 TO C7:PQKE PL+I,PEEK(1 

776+1 >: NEXT I 

POKE 203,60:POKE 204 , PL- I NT ( PL / 

C256) »C256: POKE 205, INT (PL/C256 

) 

PL=(RAMT0P-ll)*C256:PL = PL'i-52+IN 

T (RND (C0) *151 > : RESTORE 1030: FOR 
I=C0 TO C7:READ Z : POKE PL+I,Z: 

NEXT I 

DATA 0,6, 15, 249, 255, 166, 160, 

W1=70+INT(RND(C0)*130) :PL=(RAMT 

OP-C10) *C256: PL = PL + 52+ I NT < RND (C 

0) *151 > iRESTORE 1030:FOR I=C0 T 

O C7 

READ Z:POKE PL+I,Z:NEXT I:W2=70 

+ INT(RND(C0)»130):POKE 705, M: IF 
T2 = C1 THEN C = C--C1 : T2 = C0 

POKE 53249, C0: POKE 53250, C0:RET 

URN 

REM C4 U1sJ;TH=fci > hii*iW^:J:Trt;^:IilU*^! 

GRAPHICS 18:SETC0L0R C2,C0,C0:P 

OKE 708, 202: POSITION C5,C2:'> #C 

6; "CASTLE" : POSITION C9,C4:? #C6 

; "QUEST" 
1090 DL=PEEK<560)+C256«PEEK(561):POK 

E DL+13,C2 
1100 POSITION C3,C8:? #C6;"How many 

roams can you survive?" 
1110 FOR I=C0 TO C3:P0KE 708,C0:SaUN 

D C0, 60,C10, CS: FOR J=C0 TO 100: 

NEXT J: SOUND C0, 160, C10, C8: POKE 
708, 202 
1120 FOR a^C0 TO 100:NEXT JiNEXT I 
1130 SOUND C0, C0, C0, C0: RETURN 
1140 REM j-l-fci '[-■- ! J l>*M- l i^iUL L I-Li Jhrfa<rm=i^l 

^^9 SPACESl t;nilA*4:i5i C22 L--1 iI:Trf =t=! > 
1150 RESTORE lt60:CL=(RAMTOP-Tl>*C25 

6;F0R I=CL+Ca TO CL+95:READ A:P 

OKE I,A:NEXT I 
1160 DATA 204,51,204,51,204,51,204,5 

1, 10 2, 153, 102, 153, 102, 153, 102, 1 

53 
1170 DATA 136,34,136,34, 136, 34, 136, 3 



88 COMPUTE! July 1983 



Let your Atari experience the 
iViPP-1100 Parallel Printer Interface 




No Atari 850™ Interface Module needed. 
Compatible with all software [including Visicalc™, 
Text Wizard™, and Rlemanager 800™. etc.]. 
5 foot cable with Centronic plug [compatible with 
Epson. NEC, IDS. etc.] 

Faster data transfer. . imaq qe 

8 bit data transfer. Only 99«l-«l3 

2 year warranty. 




MPP-11 



III 



IViodem 



• No Atari 850™ Interface Module needed 

• Smart Terminal Software Included 

• 1 6K Tape/Disk 

• Direct Connect To Phone 

• Connects to Joystick Port #4 
Smart Terminal Features: 

• Multiple Buffers 

• Off-Line Editing 

• Upload/Download of Text 
and Programs 

• Binary RIes 

• Full/Half Duplex 



MPP-100Q 

Modem 



QlS Q o 



ASCII/ATASCII Translation 
Allows Transfer of RIes 
Larger than Memory 
Variable Baud Rate 
Parity Options 
100% Machine Language 



only 
$199.00 



miCROBITS PERIPHERAL PRODUCTS 

434 W. Rrst Street • Albany, Oregon 97321 • (503) 967-9075 



4,68, 17,68, 17, 68, 17,68, 17 
1180 DATA 36,146,73,36,146,73,36,146 
,255, 255, 255, 255, 255, 255, 255, 25 



1 1 90 

12 00 

1210 
1220 

1230 
1240 

1250 



1260 
1270 
1280 
1290 
1300 
1310 

1320 
1330 



1340 
1350 

1360 



102, 60, 24, 24, 0, 0, 

25 5, 195, 195, 195, 195, 25 



DATA 195, 
DATA 255, 
5, 255 

DATA 255,255,0,0,0,0,255,255 
DATA 24 , 24, 60, 24, 255, 199, 199, 25 
5 

DATA 24, 255, 0,0,0,0,0,0 
FDR 1=128 TO 224:P0KE CL+I,PEEK 
C 5 7 344+1 ): NEXT I 

DL=PEEK(560)+C256*PEEK<561) ; IF 
T1=C16 THEN RESTORE 1260:FOR 1= 
CL+56 TO CL+95:READ A:POKE I, A: 
NEXT I 

DATA 0,0,0,24,24,60,102,195 
DATA 0,0, 60, 60, 60, 60, 0,0 
DATA 0,0,255,255,255,255,0,0 
DATA 6 0, 24, 24, 24, 60, 60, 0, 
DATA 24, 24, 24, 24, 24, 24, 24, 255 
IF T1=C16 THEN FOR I=CL TO CL+C 
7: POKE I,C0:NEXT I 
RETURN 

REM ^ I I I hUMr4tii]^ M ^ r = KiJa»rtB< ; Mrrs%rf| - 
[i»<9 I III I ^ I IHii I I 

C20 aBEH^: 

? " CCLEAR> " : POKE 752,01 
PLOT C0,C0:DRAWTO 39,C0rDRAWTa 
39,23rDRAWT0 C0,23:DRAWTO 00, C0 
X=C10:Y=C0:Z=C7:GDSUB 1400: X=C1 
5:Y=C5:2=13:6 0SUB 1400:X=C10:Y= 
C16:2=C7;G0SUB 1400 



1370 

1380 

1390 
1 400 



1410 
1420 
1430 
1440 
14 50 
146 
1470 
1480 
1490 



1500 



1510 

1520 
1530 

1540 

1550 



IF 

) *3 

. 1 1 

POS 

OKE 

POS 

C0: 

ON 

0, 1 

, 14 

RET 

PLO 

X = X 

X = X 

GOS 

GOS 

GOS 

POP 

REM 

<:3 



RND(C0><0.5 THEN PLOT RNDCC0 
1+C8,11:DRAWT0 RND(C0)*31+C8 



IT 

7 

IT 

IN 

42 

B0 

UR 

T 

+ 

+ 2 

UB 

UB 

UB 



ION 06,00:';' C;POKE 
05, M 

ION 09,00. : 
SCORE: RETURN 



704, A: P 
L; POSITION 



ION 09,00:7 LsPOSITION 30, 
SCORE: RETURN 

T (RND <C0) *C8 + C1 ) 60SUB 141 
0, 1430, 1440, 1450, 1460, 1470 

N 

X, YiDRAWTO X, Y+Z: RETURN 

10;GOSUB 1420: RETURN 

0: GOSUB 14 20: RETURN 

1420:GOSUB 1430: RETURN 
1430: GOSUB 1430: RETURN 
1420: GOSUB 14 60: RETURN 

GOTO 1360 



WIZARD'S S ERVRNTS PLOTTXHI 



i=1aisIH=44> <:9 



SPA0ES3 l:rU^:1>3K3r33L-V1 
9 SPACES> P?TT3 



^BLCIJLRTXOH ROUT- 



^_RDDRES3ES KEPT XN STRCK 



SO^PEEK (88) +C2 56«PEEK (89) : FOR I 

= 00 TO D-C1:IF I NT ( RND ( C0 ) «C4 ) > 

02 THEN 1520 

H = SC + 4 0+INT (RND ( 00 ) t 279 ) : GOTO 1 

530 

H=SC+680+INT (RND (00) *239) 

HI=INT(H/C256) :L0=H-HI*C256:P0K 

E 0256+1*02, LO: POKE H,E 

POKE C256+I *02+01 , HI : NEXT I:IF 

D=32 THEN RETURN 

FOR I=(D-C1) TO 31:PaKE 0256+1* 

C2+01 , 254: NEXT I:RETURN C 





^'^^^^\^-''> „,...-'-■"■ -,:...■... .... . . : ■■^] 

\i^^^-- '■.^.:.-. ■■ ■■■.■ - ■.■■■■■ ■■■ - .-^ ■:■■■,■■■ .-■ ': ■■■ - ■. ■ ■ -.-^'^ ■ 

.J --For a free catalog of available software or for 
marketing agreement information write: 
MIDNIGHT-OIL 
P.O. Box 1808 Beaverton, Oregon 97075 



90 COMPUTE! July 1983 



f| FOR THE WONDERFUL WORLD OF ATARI 

THE LOVE AFFAIR BEGINS 



► 




THE COMMANDER 
2400 series: 



2400 with KEYPAD, 2400 STA,xiL ...... 

AND 2400 PROFESSIONAL NUMERIC KEYPAD. 



The ULTIMATE STEP UP FOR THE WONDERFUL ATARI!!! 

Special Introductory Pncing Si 1 6 to S 1 99. Regufar Suggested List St 39 (o $229' 

CALL (603)479-471 1 OR WRITE FOR FREE BROCHURE 

TO ORDER: TOLL FREE 80O-S47-2492 

•Depentfing on QptLions - 10 Day Mon#y BacK Guarantee 



WITH YOUR FIRSTTOUCH 

As your fingers caress its sculptured full stroke keys 
and . . . you realize you can install it YOURSELF ... in 
just minutes . . . wittiout any soldering! 

... IT GROWS as you experience . . the 
responsiveness of superbly crafted engineering 
ynder your fingertips . . . the convenience of your own 
^^SONAL and detachable system designed to allow 
of BOTH keyboards . . . t!ie warmth, beauty and 
jance of solid black walnut woods ... the softness, 
uriousness, and durability of fine textured furniture 
"vTnyl in a magnificent enclosure designed by 
NIGHTSTAR ... the totally unique keypad circuit that 
allows rapid calculator function by automatically 
entering basic print statements for you. 

. . . AND IT CULMINATES 

tea lasting happy relationship with your own personal 

Jk)MMANDER 2400. A design engineered to 

return the thrill of personal command to computing! 

ASUPERB ACHIEVMENT. .and 

AVAILABLE NOW AT INTRODUCTORY PRICING 



Ralston Clearvvaters Electronics 

536 N.E 'E' Street 

Grants Pass. Oregon 97526 

VISA / MASTERCARD WELCOME 





INVITES YOU TO 
SAVE UP TO 40% 



RALSTON CLEARWATERS ELECTRONICS 

536 N.E 'E' STREET • GRANTS PASS, OR 97526 

FOR CATALOG WRITE OR CALL: (503) 479-4711 

FOR CUSTOMER SERVICE CALL: (503) 479-471 1 or 479-41 50 



COMPARE : 



OUR PRICES 
OUR SERVICE 



THEN: 



IN OREGON CALL: (503) 479-471 1 



WE ARE A WARRANTY STATION FOR ATARI, FOURTH DIMENSION, MICRO SCI, SANYO, PANASONIC, & FRANKLIN. 

70 Column Graphic Word Processor Package-64K Computer, Drive w/ Apple Dos, 12'* Zenith 
Green Screen, & Gemini 10 Printer. Send for details - SI 799 w/o Printer - $1399 
128K Computer, Drive w/ Apple Dos, CPM, Parallel & Serial Port, & 80 Columns - $1849 
Commodore 64 - $459 Drive - $359 



l.OV/;.^ 



OFF Sr)l??1MG C^riASviS 



PPFF 



UST OUR 
WtCE PRICE 



EPSON with 
GRAFTRAX 



400 (16K) 
aOO (48K) 
1200 (64K) 
MX 60 
FX80 
MX 100 



'% 



$219 
S49S 

|&8f§, $679 
^4S $439 
S^ S598 
1^96 $689 



Daiseywriter with 48K Buffer 

Letter Quality Printer $1249 

Apple Compatible Disk Drives- 1 yearwarranty 

Fourth Dtmension S269 

Controller w/Apple 3.3 DOS $ 89 



teutn.t*tioet»Ki*t ottrtfH 



miCES SU8J£CT to CH«NGE WTTHOUrr NOTICE 
TtRM5 

MTUCNT Cwhi^) c^fcM ct^it-tO CXW** <*Ofl*, ofinn va t*flk «<ii» tionoim tmmmCM»h V«»* A 

*re*' «'Ht *rr"v« '4c.trt*» ( j/ »« nt^voruz f now » «« *it* E>rnMC*n »»iOt*o» Sar>f««M *pe(« t'iWwa *"a 
C«r1><>«dt»Chn<.*ni < Cii «flirtKtinac«tW 

683 



ATAAlriAflOWME 



fllOCtaMCnw* 



1 021M0 Cot Cs*Of Piaswr 

CK iCi Game PtiMles 
CK-lC Joyst.c» 

Epwfl Pfintef Ctiii* 
LrSliCh RAF Stria Jo^liCk 

uicfo le* ijK n*fn Cva 

tuiyvtti* AO-C«umn CflfO 



fc*0 



ti VtmmUMtfO 

43S AMfi VoKL« Bat 



2fi OtteOM ll>S « LttiM Pm 



99 l^4n*tn«i(an Snici 
3M HflrrMOAaTtSM^ 



*?«» CCS 

*rB 4s« sw-nm ??»>* »?« 

MOct*70 83 Ti<notT7«0 lOft 

S*M* CmVPmnttt fitt 

€kt*t S309 WPC 

Cwwoway FQia p <T>na tew :i3KaamAt>-U »r» 

MTERFACE CMOS M«*tl«9lt 

lBlIftAI«Cuat$ PwKMKnitk 4fl» 

UPCAA.1fi .— .- 



OMCUuitfi 
Z«(»l«il2incn 

at.w;»t & WHTTC 

JCS 

ClXOfl 

T»K9B HOB Vi**« I 
Ttian nGB Baicn in 

MODEMS 
AKnvUkTkl 

HAVES 



S9 M P«^1«t 
&9 39Pv«l«t 



SP3 
949 



G«nm IE} >CALL 

a*if.MH IS t CAll 

BftOtKER 

lelter QuINtV SQ'I*) IdSn 

ttl1>HOu4N)vf^ariiit«l im 

SM»rHC0FtD4VA 

(NTEfif*CES 

P«ti £ C*tit« S 6» 

tao 



**tfljBu*!*f iflr. 



t:» 



n 



M» 



»9 



ii|^ ALL BRAND NAMES ARE 
«» REGISTERED TRADE 
^ MARKS 



^ 



The Fortress 
Of Adnil 



George W.M if ler 



''The Fortress ofAdinV is an adventure game for the 
Tirnexl Sinclair 1000 using the graphics mode. The 
program is entirely in BASIC and includes several 
routines youllfind useful in other programs. It 
requires the 16K RAM expansion module, , , [. 



Your objective in this game is to accumulate points 
by gathering energy pellets and recovering the 
treasure, v^hile avoiding obstacles on the display. 
Each move costs you one unit of energy; using 
the laser sword costs more, depending on the 
range and the object you use it on. 

Each move you make is accompanied by ran- 
dom placement of "NAWS" (defined as guards) 
on the screen. If this random placement puts a 
guard in the space you intend to occupy, you are 
captured. If your energy level is greater than 1000, 
the computer v^ill allow you to pay a ransom, 
deduct the ransom from your score, and allow 
you to continue. 

You can use your laser sword to cut a hole 
through any barricade and to oppose the guards. 
But be warned: the odds are even in any battle 
with the guards, and you may lose. 

Since this game is written in BASIC, don't 
expect fast-paced action. The game began as a 
learning exercise in PEEKing and POKEing into 
the display file. 

PEEK And POKE Programming 

Enter lines 50 to 120 into your computer. They 
will print a border around the display and will 
provide a boundary limiting later POKE com- 
mands to the display file. 

Now enter lines 220, 250 - 355, 510, and 
this line: 

520 PRINT AT 21,0;PEEK (PEEK 16396 + PEEK 
16397*256 + 5) 

Then enter lines 530 and 610. 

This will allow you to move a character around 
the screen and also find the CODE of the character 
stored in that address. 

SAVE this before you try it, because if you 
POKE outside the display file, the program will 
crash. YouTl have to turn off the power and 

92 COMPI/rei July 1983 




Now add the missing lines to print a variety 
of characters on the screen, but don't change line 
520 yet. Move around the screen and look at the 
codes returned from the different locations. 

Lines 400 to 430 limit the movement to areas 
in the display file. Lines 450 to 500 check for the 
code at that address. 

If this is new to you, just remember that 
POKEing is putting a value into an address, and 
PEEKing is looking at the value in an address. 

Now change line 520 to the line as shown in 
the program listing. Enter the rest of the listing, 
and you'll have the complete game The Fortress 
of Adnil. 

If you find the game too challenging, you can 
change the level of difficulty by changing the 2000 
in line 525 to some lower value. 

Line 9999 is a utility routine I use to keep 
track of the length of my program. Enter GOTO 
9999, and the screen should say, 'TENGTH OF 
PROGRAM 7456". Since Fm using a 16K RAM, 
with 16,384 bytes available, Fm well within the 
limits of memory. Note that line 9999 indicates all 
memory used, and includes the memory required 
for the variables, the display file, and the 
program. 

Programming Hints 

Now for some hints on making your programs 
look a little more professional. 

The routine starting at line 9991 is self- 
starting. To SAVE the program, start your tape 
recorder and enter GOTO 9991. When you load 
the program again, you won't get the usual 0/0 
display, but the program will begin to run, 
printing the title on the screen. To use this routine, 
change the program name in line 9995 to the name 
of your program, and the line number for the 
GOTO command to the first line in your program. 




BEGINNING PROGRAMMERS 
If you're new to computing, please read ''How 
To Type COMPUTE I's Programs" and "A 
Beginner's Guide To Typing In Programs." 



The Fortress of Adail - an adventure game for the Tiiiicxi 
Siuclair WOO 

This is especially useful in working with files. 
You can store the data in variables, and when the 
program comes up it automatically begins, pre- 
serving your data, and going a long way towards 
making the program user friendly. 

1 have placed this function in the menu of my 
program "ZX-81/TS-1000 Data Management" 
(COMPUTE!, March 1983) and saved the data by a 
step in the program. This makes it a subroutine 
and it becomes very easy for even the most in- 
experienced user to save and run the program 
correctly. 

A further step in making other programs 
user friendly is using INKEYS instead of INPUT 
whenever possible. This keeps control of the pro- 
gram in the computer, and the computer will wait 
for the command it wants to see. (See lines 8020 
to 8040.) INPUT permits any number of possible 
incorrect (or program-stopping) entries. 

Attractive Displays 

In some versions of BASIC, the command FLASH 
will cause the display to print normal and inverse 
characters. The Sinclair computer doesn't have 
this function, hut you can get the same result by a 
routine similar to lines 8203 to 8205 in the listing. 
This makes your display a little more attractive, 
and adds a professional touch to your programs. 

When building a display, make use of the 
graphic mode and the various commands for 
printing, such as TAB and PRINT AT. 

Check each line by entering a GOTO com- 
mand in the immediate mode after entering the 
line. If you don't like what you see on the display, 
press EDIT, 

The upper portion of the display will remain 
unchanged, but the bottom part of the screen will 
now display your last line entered. Use your edit 
functions to move the cursor about the line and 
make any necessary changes. Hit enter, and ex- 
ecute another GOTO command in the immediate 
mode to recheck your work. 



Fortress Of Adnil 

Note: All underlined characters in the program listing 
should be typed in graphics mode. The graphics char- 
acters in lines 530 and 7507 are produced by typing 
graphic shifted 6. 

5 GOTO 8100 

10 LET C=0 

20 LET Z=0 

30 LET G=0 

35 LET T=50 

40 FAST 

50 FOR N=l TO 63 

60 PLOT N,0 

70 PLOT N,43 

80 NEXT N 

90 FOR M=0 TO 43 

100 PLOT 0,M 

110 PLOT 63, M 

120 NEXT M 

130 FOR A=l TO 300 

140 GOSUB 1000 

150 PRINT AT X,Y;"H" 

160 NEXT A 

170 FOR B=l TO 20 

180 GOSUB 1000 

190 PRINT AT X,Y;"*" 

200 NEXT B 

202 IF G=l THEN GOTO 2 50 

205 PRINT AT 21,0;T 

210 SLOW 

220 LET S=347 

230 GOSUB 1000 

240 PRINT AT X,Y; "§" 

250 POKE PEEK 16396+PEEK 16397*256+8,149 

260 POKE PEEK 16396+PEEK 16397*256+5,149 

270 POKE PEEK 16396+PEEK 16397*256+S, 21 

280 IF INKEY$="" THEN GOTO 2 50 

290 LET P=S 

300 LET A$=INKEY$ 

310 LET S=S-(1 AND A$="5") 

320 LET S=S+(33 AND A$="6") 

330 LET S=S-(33 AND A$="7") 

340 LET S=S+(1 AND A$="8") 

350 IF A$="9" THEN GOSUB 2000 

355 IF A$<>"5" AND A?<>"6" AND A$<>"7" A 

ND A$<>"8" AND A$<>"9" THEN GOTO 250 
360 FOR N=l TO 2 
370 GOSUB 1000 
380 PRINT AT X,Y;;'B" 
3 90 NEXT N 
400 IF PEEK (PEEK 16396+PEEK 16397*256+S 

)=5 THEN LET S=P 
410 IF PEEK (PEEK 16396+PEEK 16397*256+8 

)=3 THEN LET S=P 
420 IF PEEK (PEEK 16396+PEEK 16397*256+5 

)=131 THEN LET S=P 
430 IF PEEK (PEEK 16396+PEEK 16397*256+8 

)"133 THEN LET S=P 
440 IF PEEK (PEEK 16396+PEEK 16397*256+8 

)=136 THEN LET S^P 

July 1983 COMPUTE! 93 



Send us your game and THO^ 



.^v?;-^:*' >'■«•'• 







^ 





1 


• 


■ 

1 


1 



Got a great home computer game you've 
programmed? Working on one? We'd like to 
hear about it. Play it. And if we like it, we 
want to help you sell it to the world. 

We're THORN EMI Video, the worldwide 
entertainment I electronics company. One of 
the giants in home computer software. We 
market a full line of computer games to the 
world. So, if your computer giame meets our 
own high standards, it means people all over 
the world could be buying it, playing it. 



fNEMI will give you the world. 




Think you've got a great computer game? Then 
write us to find out how to submit r 
your game to THORN EMI. I 

Just think. The whole world 1 I 

could be playing your computer 
game soon. 

THORN EMI, HOME COMPUTER 
SOFTWARE DEVELOPMENT, 
1370 AVENUE OF THE AMERICAS, 
NEW YORK, NY 10019. 



THORN EMI 



VIDEO 



450 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)-14i THEN LET T=T+200 
460 IF PEEK (PEEK 16396+PEEK 16397*256+5 

)=141 THEN GOSUB 1000 
465 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)=141 THEN PRINT AT X,Yr"$*' 
470 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)=151 THEN LET T=T+10 
480 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)=151 THEN LET C=C+1 
485 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)=151 THEN LET M=l 
490 IF C=15 THEN GOTO 170 
500 IF PEEK (PEEK 16396+PEEK 16397*256+3 

)=128 THEN GOTO 7500 
510 POKE PEEK 16396+PEEK 16397*256+P, 
520 LET T=T-1 

525 IF T>2000 THEN GOTO 8500 
530 PRINT AT 21,0;"^^^^^" 
540 PRINT AT 21,0;T 
550 IF T<=0 THEN GOTO 7000 
560 LET Z=Z+1 

570 IF Z=40 THEN GOSUB 1000 
580 IF Z=40 AND RND> , 3 THEN PRINT AT X,Y 

; " ? *' 
590 IF'2-40 THEN LET 2=0 
600 LET G==l 
610 GOTO 250 

1000 LET X=INT(RND*20)+1 
1010 LET Y=INT(RND*30)+1 
1020 RETURN 

2000 POKE PEEK16396+PEEK16397*256+P,149 
2002 LET B=P 

2005 IF INKEY$="'* THEN GOTO 2000 
2010 IF INKEY$='*9"THEN GOTO 2000 
2015 LET B$=INKEY$ 
2020 IF B$<>*'5" AND B$<>"6" AND B$<>"7" 

AND B$<>"8" THEN GOTO 2000 
2025 FOR N=l TO 5 
2030 LET B=B-(1 AND B$="5") 
2040 LET B=B+(33 AND B$="6") 
2050 LET B=B-(33 AND B$="7") 
2060 LET B=B+(1 AND B$="8") 
2065 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=12B THEN GOSUB 4500 
2070 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=128 THEN LET T=T+100 

2075 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=128 THEN GOTO 4000 
2080 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)-128 THEN LET T-T'3*N 
2090 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=136 THEN GOTO 4000 
3000 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=5 THEN RETURN 
3010 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=3 THEN RETURN 
3020 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=133 THEN RETURN 
3030 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=131 THEN RETURN 
3040 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=151 THEN LET T=T-5*N 
3050 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=151 THEN RETURN 
3060 IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=5 THEN RETURN 
3080 POKE PEEK 16396+PEEK 16397*256+8,22 
3085 POKE PEEK 16396+PEEK 16397*256+8,0 
3090 NEXT N 



4000 
4005 
4010 
4500 
4505 
4510 
4515 
4520 
4525 
4526 
4527 
4528 
4531 
4532 
4533 
4540 
4541 
4542 
4543 
4545 
4555 

4560 
4570 
4575 

4577 

4580 
4590 
7000 

7010 
7500 

7501 
7502 
7503 

7504 

7505 
7506 

7507 



POKE PEEK 16396+PEEK 16397*256+8,0 

LET P=S 

RETURN 

IF RND>.5 THEN RETURN 

IF B$="5" THEN GOTO 4525 

IF B$=:"8" THEN GOTO 45 2 7 

IF B$="6" THEN GOTO 4531 

IF B$="7" THEN GOTO 4533 

LET B$="8" 

GOTO 4540 

LET B$="5" 

GOTO 4540 

LET B$="7" 

GOTO 4540 

LET B?=%" 

FOR X=l TO N 

LET B=B-{1 AND B$="5") 

LET B=B+(33 AND B$="6") 

LET B=B-*(33 AND B$="7") 

LET B=B+(1 AND B$="8") 

POKE PEEK 16396+PEEK 16397*256+8,12 

8 

POKE PEEK 16396+PEEK 16397*256+8,22 

POKE PEEK 16396+PEEK 16397*256+8,0 

IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=149 THEN GOTO 8000 

IF PEEK (PEEK 16396+PEEK 16397*256+ 

B)=21 THEN GOTO 8000 

NEXT X 

GOTO 8000 

PRINT AT 21,0;" YOU HAVE USED ALL Y 

OUR POWER " 

GOTO 8010 

PRINT AT 21,0;" YOU HAVE BEEN CAPTU 

RED BY ADNIL " 

IF T-1000<=0 THEN GOTO 8010 

PAUSE 200 

PRINT AT 21,0; 



YOU HAVE PAID RANSO 



M TO ADNIL " 

LET S=P 

LET T=T-1000 

PAUSE 200 

PRINT AT 21,0; "i 



7 508 PRINT AT 21,0;T 

7509 GOTO 250 

8000 PRINT AT 21,0; "l5 SPACES} YOU HAVE B 

EEN DESTROYED {4 SPACES}" 
8010 PAUSE 200 

8012 PRINT AT 20,0; "{32 SPACES}" 
8015 PRINT AT 20,0; "YOUR SCORE :";T 
8020 PRINT AT 0,0;" PRESS ANY KEY TO PLA 

Y AGAIN {5 SPACES}" 

8030 PRINT AT 0,0;" PRESS ANY KEY TO PLA 

Y AGAIN [5 SPACESp 
8040 IF INKEY$="" THEN 8020 
8050 CLS 

8060 GOTO 8245 

8100 PRINT" [8 SPACES] THE FORTRESS 
{2 SPACES}" 

8101 PRINT 

8102 PRINT" {13 SPACES }0F" 

8103 PRINT 

8104 PRINT" {11 SPACES} ADNIL" 
8140 PAUSE 600 

8145 CLS 

8150 PRINT AT 10,0; "DO YOU NEED INSTRUCT 

IONS?" 
8160 PRINT AT 12,8; "Y OR N" 
8170 IF INKEY$="" THEN GOTO 8170 



96 COMPUTE! July 1983 



8175 LET y$=INKEY$ 

8180 CLS 

8190 IF CODE Y$=51 THEN GOTO 8245 

8200 PRINT "YOU ARE ABOUT TO ENTER THE", 
"FORTRESS OF ADNIL. A POWERFUL" 

8201 PRINT "MAGICIAN-WARRIOR IN THE KING 
DOM", "OF ANNEP. " 

8202 PRINT "YOUR GOAL IS TO FIND AS MUCH 
","0F THE TREASURE (?) ADNIL HAS" 

8203 PRINT "PLACED IN HIS FORTRESS AS YO 
U","CAN." 

8204 PRINT "YOU MUST INCREASE YOUR ENERG 
Y","BY COLLECTING ENERGY PELLETS (* 
)" 

8205 PRINT "WHICH ARE SCATTERED IN THE", 
"FORTRESS. {2 SPACES) YOUR POWER WILL 

ALSO" 

8206 PRINT "INCREASE IF YOU DEFEAT THE", 
"NAWS (■) ADNIL USES AS GUARDS." 

8207 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUE[7 SPACES}" 

8208 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUEt? SPACES} " 

8209 IF INKEY$="" THEN 8207 

8210 CLS 

8211 PRINT "BE CAREFUL. {2 SPACES}lP ADNI 
L IS MORE", "POWERFUL THAN YOU, THEN 

THE NAWS" 

8212 PRINT "WILL DESTROY YOU." 

8213 PRINT "IF YOU ARE CAPTURED, YOU WXL 
L","HAVE A CHANCE TO PAY A RANSOM" 

8214 PRINT "FOR YOUR RELEASE, BUT THE"," 
PRICE IS HIGH AND ADNIL MAY" 

8215 PRINT "NOT ACCEPT YOUR OFFER-" 

8216 PRINT "YOUR ONLY WEAPON IS YOUR LAS 
ER", "SWORD WHICH YOU USE BY PRESSIN 
G" 

8217 PRINT "THE ""9"" KEY AND CHOOSING T 
HE", "DIRECTION TO ATTACK." 

8218 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUEle SPACES}" 

8219 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUE[6 SPACES} " 

8220 IF INKEY$="" THEN GOTO 8218 

8221 CLS 

8222 PRINT "TO MOVE :" 

8223 PRINT TAB 5; "LEFT PRESS 5" 
82 24 PRINT TAB 5; "DOWN PRESS 6" 

8225 PRINT TAB 5; "UP PRESS 7" 

8226 PRINT TAB 5; "RIGHT PRESS 8" 

8227 PRINT TAB 5; "YOUR LASER SWORD IS 9" 

8228 PRINT 

8229 PRINT "USE THE KEYS TO CHOOSE YOUR" 
, "DIRECTION OF ATTACK WITH YOUR" 

8230 PRINT "LASER SWORD." 

8231 PRINT "YOU WILL START WITH AN ENERG 
Y", "LEVEL OF 50 UNITS. {2 SPACES ) EAC 
H MOVE" 

8232 PRINT "WILL COST 1 UNIT AND USE","0 
F THE LASER COSTS MORE." 

8233 PRINT "CAPTURE THE TREASURE ($) AND 
","GAIN ENERGY (*) BY MOVING TO" 

8234 PRINT "THOSE SPACES." 

S235 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUEle spaces)" 

8236 PRINT AT 21,0;" PRESS ANY KEY TO CO 
NTINUEle spaces) " 

8237 IF INKEY$="" THEN GOTO 8235 

8238 CLS 

8239 PRINT "IF YOU ARE TRAPPED IN THE MA 



ZE","YOU MAY USE YOUR LASER SWORD" 

8240 PRINT "TO BLAST THROUGH THE WALL." 

8241 PRINT AT 10,0; "GOOD LUCK... YOU WILL 

NEED IT." 

8242 PRINT AT 21,3; "PRESS ANY KEY WHEN R 
EADY" 

8243 PRINT AT 21, 3; " PRESS ANY KEY WHEN R 
EADY " 

8244 IF INKEY$^""THEN GOTO 8242 

8245 CLS 

8246 PRINT AT 10,0; "THE SCREEN WILL BE B 
LANK FOR" 

8247 PRINT "ABOUT 15 SECONDS WHILE YOU A 
RE 1 2 SPACES} TRANSPORTED TO THE FORT 
RESS OF" 

8248 PRINT "{13 SPACES } ADNIL" 

8249 PAUSE 400 

8250 CLS 

8251 GOTO 10 

8500 CLS 

8501 PRINT AT 10,0; "YOU HAVE DEFEATED AD 
NIL" 

8502 PRINT AT 12,5; "YOUR SCORE :":T 

8503 GOTO 8010 

9990 REM SAVE 

9991 PRINT AT 10,5;" START TAPE " 

9992 PAUSE 200 

9993 POKE 16437,255 

9994 CLS 

9995 SAVE "ADNIL" 

9996 GOTO 5 

9999 PRINT"LENGTH OF PROGRAM ";PEEK 1639 
6+256*PEEK 16397-16583 O 



COMPUTER /BASF 
-DPS 



jTHE WORLD'S FINEST 

> Data media lor all micrQcomputers 
• Used nationwide by software 
manufacturers, hobbyists, schools and businesses 
* Premium 5-screw shell with leader fits all standard recorders 




rft ACTOR FHEO 
OtE'CUT BLANK 

CASsrrrs labels 



CASSETTE STORAGE CADDY 

ORGANIZE 
YOUR TAPES! ^ 

$2^*^ EACH 

GET ONE 

CADDY FREE! Buy 2 doz. Cassettes & One Caddy. Get One Caddy FPEE! 

OffS'iSHf^iPFS AUGUST ■ ij$i 

• SATISFACTION GUARANTEED OR YOUR MONEY BACK • 

FOR IMMEDIATE SHIPMENT PAII ^l^/Tlfl 1 AQfl 

USE YOUR VISA OR MASTERCARD UMLL fc I il/ f III I HuU 

.---.-«-i«» ORDER FORM... »^----- 



ORDER HOW . . . MAIL 70: VORK itf" Computer uiore 



rrcM 1 ooxttt i oo^en 


TOTAL 


34573 Kirtfidge SI . #CM. Canofla Park. CA 91307 


c« f » ijw 




E4C11 cjUBtli! indudei Iwo rORK 10 labels only Boies nt 


CIO BOO n *0 




sold sepafitftly. Shiprnftnts >re by UPS unlns Parcel PosI 


CrO ■ '0 00 ■_ IBDO 




raqLCsred. Bom. ciddies. and bMnk labels >it free ot 


Hftjo/iM - ?w r *!» 




shippEiig chafflfti when ordered wll^ ciMeHei. Whin or- 






dered wittioui tassenei, shippitio chargM. Bdi«— SIUO 
UN., Caddies-{1.00 each MINIMUM SKIPPING'HAN- 
BUNG OH AHY 0HDEH-S2 M 


B**«6*. L ^OO'iuO - DOO-'itXB 




sue TOT^L 






C*** >»tnriu tu i% Mtw 1*1 




Nsma 






Address 


F(» Pmem Pott ^iMd v u(>S ADO S1 










Dry SiM/Z^ 


TOtAL 






fh^h.^un Ctmrom la Crt^l Ctrd 




CiTd Ho Bxp 



I 

I •TKlOKri VISA MASTERCAflO 

_ .^ PLEASE SEWO QUAWTTTY DrSCOUKTS 



Sigrtahga 



July 1963 COMPUTE! 97 



TECHNIQUES FOR WRITING 
YOUR OWN ADVENTURE GAME 



Charles Perkins 



Adventure gmnes are as ititriguing to write as they are 
to play. Here are a feio techniques to help you create an 
intricate drama zoithout running out of memory. These 
suggestions are useful for any computer, but the specific 
examples concern Commodore computers. 



Remember^ you have other tools at your disposal 
beside standard PEEKs, POKEs, and IF...THENs 
when programming games. One-byte pointers 
and ragged tables, for example, can sometimes 
come in handy as techniques to save memory and 
help with complicated game logic. 

Using these techniques, I developed an ad- 
venture game entirely in BASIC for my 8K Com- 
modore PET 2001 (actually 7167 bytes of free 
memory). It includes an adventure with 48 rooms, 
576 vocabulary words, 12 objects (trolls, witches, 
etc.), and many descriptors and interactive re- 
sponses. The game is table driven, and the entire 
adventure, including vocabulary, is stored as data. 
Many different adventures can be developed using 
this same program without change. 

Computer game programs often use numbers 
which do not exceed the range of to 255. Array 
indices and loop variables are common examples. 
The typical personal computer running BASIC 
does not permit one-byte variables (value range 
0-255). A variable (either floating point or integer) 
on my PET is always seven bytes long. If your 
game program needs a good amount of memory 
and you store lots of variables with values in the 
range of 0-255, then this unneeded overhead is a 
problem. 

BASIC (which causes the problem) also offers 
a solution. String manipulation functions permit 
the program to address a single character, and a 
character is stored in a single byte (plus some 
overhead which will be discussed later). With 
these string manipulation functions and simple 
algorithms to convert characters to numbers and 
vice versa, it is possible to efficiently store numbers 
in one byte. 

This approach is particularly useful when a 
game program makes extensive use of pointers. 

98 COMPUTI! July 1983 



Pointers are stored variables which "point" to 
specific pieces of data (i.e<, the indices of a table 
entry). The approach is easily extended to the 
creation and use of "ragged" tables. A ragged 
table is one in which the number of columns varies 
with each row. 

One-Byte Pointers 

In its simplest form, a one-byte pointer is a value 
between and 255 stored as a corresponding 
character in a string variable. Given the character 
(C$), its value (C) is determined by the equation 
C = ASC(C$). Given the value, the appropriate 
character is determined by the function 
C$ = CHRS(C). Storing individual characters as 
individual strings is not efficient (it uses up eight 
bytes in the PET), so multiple variables must be 
stored together in a string (the overhead is con- 
stant, and each character adds only one additional 
byte of memory). To retrieve the Nth character 
from the storage string (A$), the equation is 
C$ = MID$(A$,N,1). To store a new value in the 
string is a bit more trouble, but it's still just string 
manipulation. 

Storing The Variables 

The simple code number approach described 
above works if the one-byte variables are always 
kept internally in the computer. If you want to 
store the variables on tape or examine them on 
the screen, a problem arises: the internal character 
codes include special characters which cannot be 
saved or printed. In fact, only 128 characters 
(seven bits) can be saved or printed, and one of 
these (the quote mark) has special meaning to the 
PET and cannot be used. The usable character set 
in the PET has code numbers between 32 and 95 
and between 160 and 223. The quote mark is 
character 34. 

In my adventure game application, the stor- 
age strings are input from tape as data. I also chose 
to reserve seven characters as special flags and to 
eliminate the quote mark from the allowed char- 
acter set for positive numbers. As a result, I was 
forced to use slightly more complex encoding and 



Educational Software With A Competitive Edge 



Pre-School 

Sammy The Sea Serpent - . (C) $13, (D) $19 
Oswald and the 

Golden Key (C)$13,{D)$19 

Pre-Sctiool I.Q. Buttder . . . . (C) $13, (D) $24 

Hodge Podge (D) S16 

My First Alphabet {D) ... .526 

Ten Little Robots (C) $13, (D) $15 

Basic Math ( + ,-/ 7} (D) .....St9 

Basic Math (Add,. Sub.} or 

Mult., Div.)(C) $10 

Alien Counter/Face Flash (C, D) $26 

Jar Game^Chaos (CD) .... ... $26 

Pre^School Fun (Color, Shape, etc) (C} $16 
Hickory Dickory^' 

Baa Baa Black Sheep (C) , . , . $25 

Humpty Dumpty/Jack and Jill (C) $25 

Counters {CD}.,.... .$19 

Pacemaker (0) .$23 

I'm Different (D) . .$19 

Math 

Monkey up a Tree (C D} $19 

Video Math Flash Cards (CD) $13 

Malh-Tic-Tac-Toe{C, D) $13 

Calculus Demon (CD) $19 

Cubbyholes (C, D) ,$19 

Metric and Problem Solving (D) $26 

AlQicalc(CD) ...$19 

Polycalc{C D) , $19 

Counters (Ages 3^) (C D) $26 

Basic Math (Add.. Sub.) (C) $10 

Basic Mach (Mult,, Div.) (C) $10 

Basic Math( + , ~, *,/)(D) $19 

Ten Little Robots (C)$13,{D)$15 

Compumath-Fractions. . . .(C)$23, (D)$29 

Compumalh-Decimals (C) $23, {D) $29 

Alien Numbers (CD) .$23 

Math Pak 1 (C. D) ....$23 

Alien Counter/Face Flash {CD) $26 

Golf Ciassic/Compubar (Angles) {C D) $26 
JarGames/Chaos (Ages 6-10) {C, D). . .S26 
Gulp and Arrow Graphics (7-12) (C D) .$26 
Battling Bugs/Concen)rat(on(C D). .,$26 
Addition With Caffying , , .(C)$13.(D)$19 

Cash Register ..AC) $13, (D) $19 

Number Series .... . . . . . .(C)$13,{D)$19 

Quantitative Comparisons {€) $15, (D) $19 

Sky Rescue , . .(C) $15, {D) $19 

Big Matfi Attack (C) $17, (D) $22 

Math Facts Level II 

Grade 1-3 (C)$13.(D)$15 

Com'putation/ 

Concentration . (C)$13,(D)$15 

Ship's Ahoy (D) ...$20 

The Market Place (D) $26 



ATARI 



Reading and Language Arts 



Hey Diddle Diddle $20 

Letlerman (C, D) $19 

My First Alphabet (D} ,$26 

Wordmaker(C, D) $19 

Spelling Genie (C, 0) . .. $19 

Word Search Generator (D) ...$19 

Compuread (C)$17,(D)$23 

Astroquotes (C) $13, (D) $19 

Memory Builder! 

Concentration. (C)$13, (0)$19 

Let's Spell (C) $13 

Spelling Builder ... . .{C) $16. (D) $20 

Do-lt'Yourself Spelling (C) $16 

S.A.T College Board Prep.(C) $89 

Story Builder/ 

Word Master (C) $13. {D} $19 

What's Different ,,. .{C)$13.(D)$19 

Analogies ............. .(C)$13,(D)$19 

Prefixes (D) $26 




Vocabulary Bunder 1 (C)$13,(D)$19 

Vocabulary Builder 2 (C)$13,(D)$19 

Mini-Crosswords (C)$13,(D)$19 

Word Scramble Grades 1-4 (C) .$13 

Fishing For Homonyms (C) $13 

Hidden Words 4 Levels {€) .$16 

Snooper Troops #1 (D) .$32 

Snooper Troops #2 (D) $32 

Story Machine (D) . $23 

Word Race (D) $17 

Claim to Fame/Sports Derby ... .$15 

Crossword Magic (D). ............. .$34 

Alphabet Arcade (C) $15, (D) $19 

Funbunch (D) 

Elem $25 

Intermediate $25 

High School (SAT) .$25 

Time Bomb ........... . .(G)$13, (0) $19 

Snake-0-Nyms . , $25 

Skywriter & Pop'r Spell $25 




Music 

Rhyme & Pitch .$26 

Player Prano(C, D) .$19 

Keyboard Organ {C D) .$19 

Musicat Computer— Music Tutor (D) . ,$13 

Music 1— Terms and Notation {D) $26 

Advanced Music System (D) . $25 

Music Composer (CT) $25 

JerryWhite's Music Lessons (C) .... .$20 
Magic Melody Box $14 

Telling Time 

Hickory Dickory{C, D) $13 

Social Studies and Geography 

Earth Science (D) $26 

Flags ot Europe (D) - . . - ■ $19 

Presidents of the U.S. (CD)..., $13 

Astro Word Search (C)$13,(D)$19 

States and Capitals {C) $12 

European Countries & Capitals (C) ... $12 
Computer Stocks and 

Bonds (C)$12.{D)$1S 

Elementary Biology (D) . . . , S26 

Frogmaster{D) $19 

Starware{D) - .$19 

Mapware(D). .......$19 

British Heritage Jigsaw 

Puzzles •• .,.$22 

European Scene Jigsaw Puzzles (0) . .$22 
Geography (D) $26 

Programming Techniques 

Pttot {Cons, or Educator) . . (C) $59, (D) $99 

Invitation to Prog, #2 (C) $22 

Invitation to Prog. #3 (G) $22 

Tricky Tutorials— Santa Cruz 
TT i*l Display Lists (CD) ......... $17 

TT #2 Horiz/Vert, Scrolling (C D) . . .$17 

TT #3 Page Flipping {CD) $17 

TT #4 Basics of Animation (CD) . ..$17 
TT #5 Player Missile Graphics (C 0) $24 

TT m Sound of Music (CD) .$24 

TT #7 DOS Utilities (0) $24 

Pages......... ...^. $20 

The Next Step .$27 

Typing 

Master Type (D) . $27 

Touch Typing (C) .$19 

Type Attack (CD) $26 

Foreign Languages 

Atari Conversational Languages 

French. Spanish, German, Italian (C) $45 

Astro Word Search (Specify 

Spanish or French) {C)$13,(D)$19 




*** BOOKS *** 

KIDS AND THE ATARI .$18 

KIDS AND THE VIC ,$18 

PROGRAMMERS REF. GUIDE (VIC) .$14 

ELEMENTARY COMMODORE .$14 

COMPUTERS FOR PEOPLE . . . , , $8 

GAMES FORTHE ATARI $ 8 

DE RE ATARI $19 

ADVENTURE HINT BOOKS . . .$ 8 

6502 ASSEM. LG. PROG $16 

SOME COMMON BASIC BASIC PROGRAMS $14 

YOUR ATARI COMPUTER $16 

ATARI ASSEMBLER - INMAN .$12 

ATARI GAMES AND RECREATION $14 

ATARI PILOT FOR BEGINNERS ..... $12 

VISICALC BOOK — ATARI EDITION $14 

ATARI BASIC — R. L. ALBRECHT .... $ 8 

Computer Outlet 

Park Place — Upper Level 1095 E. Twain — (702) 796-0296 Las Vegas, 

Call Toll Free 800-634-6766 Order Line On 
We accept Major Credit Cards Mon.-FrL 8 A.M. -6 P M, 



commodore 



Prd*School 

The Sky 9s Falling (CT) .$23 

Mole Attack (CT) ... ........... $23 

Home Babysitter .$23 

Pacemaker 64 , $23 

Kindercomp 64 $20 

Math 

Sky Math (C). .$12 

Space Division $12 

Bingo Speed Math (CT) $23 

Number Crunch (CT) $27 

Number Chaser $l 7 

Number Gulper $17 



Music 

VIC Music Composer (CT) .$29 

HESSynthesound(CT) $49 

Language Arts 

Super Hangman (C) .$14 

Simon/Hess (C) $13 

Concentration (C) . .. . .$13 

Home Babysitting .$23 

Hey Diddle Diddle 64 $20 

Social Studies/Science 

Visible Solar System $23 

Reaganomics (CT) $27 



Programming Techniques 

Introto Basic Prog, I . , $22 

Intro to Basic Prog. II $22 

Programmers aid Cart. .$45 

Turtle Graphics/Hess (CT) ......... .$29 

Groteck & Microchip $23 



Nevada 89109 
ly 




f]omnwdore Puts Excitement 
In Your Life 



^y commodore 

COMMODORE 64 $389 

COMMODORE 64 $389 

1530DATTASETTE $ 59 

1541 DISK DRIVE $329 

1525 GRAPHIC PRINTER $329 
1600 MODEM ,.,. $ 89 

COMINODORE 64 
SOFTWARE 

Avalon Hill Game Company 

B- 1 Nuclear Bomber (C) $12 

Midway Campaign (C) S12 

North Atlantic 

Convoy Raider (C) . . , S12 

Nukewar {C) $12 

Planet Miners (C) $12 

Computer Stocks & Bonds (C) St5 
Andromeda Conquest (C) . . . . $14 
Computer 

Football Strategy (C) $12 

Telengard (C) $16 



180-701 
180-702 
180-703 

180-704 
180-706 
180-713 
180-719 
181-721 

181-732 



EPYX/Automated Simulations 

14E-0S6 Jump Man (D) S27 

Human Engineered 
Software (HES) 

HEE-307 6502 Protessjonal 

Dev System (C) - $23 

HEE-400 Retro Ball (Crt) $27 

HEE-401 Hesmon {Crt) $27 

HEE-402 Turtle Graphics II (Crt} $45 

HEE-404 Heswriter 64 (Crt) ....,.,... $35 
HE6-4 1 2 Gridrunner (Crt) $27 

Infocom 

63E'001 Zork I (0) $27 

63E-002 Zork 11 (D) $27 

63E-003 Deadline (D) S35 

63E-004 Starcross(D) $27 

63E-005 Zork III (O) $27 

Sierra On- Line 

54E-048 Frogger (D) 523 

Sirius Software Co-op! 

70E-036 Blade of BlacKpooie iD) $27 

70E-037 Type Attack (Crt) $27 

70E'043 Repton (Dj $27 

70E-046 Critical Mass (D) $27 

70E-424 Snake Byte (Crt) S23 

70E-445 Spider City (Crt) S27 

70E-447 Squish em (Crt) $23 

70E'448 Final Orbit (Crt) $23 

Spinnaker 

SKE-001 Snooper Troops «1 (Dj ...... $30 

SKE*004 Pacemaker {D) $23 

SKE-006 Kindercomp (D) , $20 

SKE-008 Hey Diddle Diddle (D) $20 

SKE-009 In Search of the 

Most Amazing Thing (D) S27 

Snyapse Software 

SSE-01 1 Ft Apocalyse (D) $23 

SSe*016 Drelbs (D) ... $23 

SSE-019 Sun/ivor (D) . , $23 

SSE-020 Pharoh S Curse (D) ......... $23 

SSE'31 1 Ft Apocalypse (C) $23 

SSE-316 DreltJS (C) , .... $23 

SSE-319 Survivor (C) $23 

SSE'320 Priafoh's Curse (C) $23 

United Microwave 
Industries (UMI) 

92E-302 Renaissance (C) $27 

92E-331 Motor Mama (C) $20 



Creative Software 

Black Ho!e(CT) .,..., ....... .$36 

Trashman (CI) $36 

Astfobhti(CT) $36 

City Borrtbfif & Minen©ld (CT) $20 

Apple Panic (CT) - ■ ^6 

CliOplifter(CT) $36 

Serpentine (CT) S36 

Videomania {CT) $36 

Terraguard (CT) $36 

Thorn EMI 

River Rescue (CT) $29 

VIC Music Composer (CT> .... -$29 

Mutant Herd tCT) $29 

Automated Simulations 

Rescue at Rigel(C) . , , S20 

Ricochet (C) , $15 

Monster Maze {CT) .$27 

Sword of Fargoal , $27 

Spectravlsion 

Cave In (CT) . , $27 

Number Crunch (CT) $27 

Reaganomics (CT) $27 



Tronix 

Galactic 8IUz{C) $17 

Swarm {C) . $20 

Sidewinder (C) $20 

HES Software 

VIC Forth (CT) ., ..$45 

HESMon(CT) $29 

Turtle Graphics (CT) $29 

HES Writer (CT) ... ..... .......$29 

Aggressor (CT) $29 

Shamus(CT) .$29 

Protector (CT) $33 

Synthesound (Music Synthesizer) 

(CT) .....$49 

Skier (C) ......... .$15 

Mazeof Mikof(C) , .$15 

TankWars(C)-... $15 

VictreH(C) .....$15 

Pinball(C) $!3 

Simon (C) $13 

Fuel Pirates (C) , ..... ,$13 

Pak Bomber (C) $13 

Laser Blitz (C) $15 

Tank Trap (C) ...$15 

Concentration (C) .$13 

Dam Bomber (C) , S13 




Park Place - Upper Level, 1095 E. Twain 
(702) 796-0296 — Las Vegas, Nevada 89109 

^^p';j^" 800-634-6766 °^^o'aiy'' 

Information & Order Inquiries (702) 369-5523 
• SPECIALS OF THE MONTH • 

AMDEK COLOR I MONITOR $299 

WICO JOYSTICK S 23 

WICO REDBALL JOYSTICK ... $ 24 

WICO TRACKBALL $ 49 

KIDS & THE VIC $ 18 

PROGRAMMER'S REFERENCE GUIDE (VIC) $ 14 

PROGRAMMER'S REFERENCE GUIDE (64). . .............$ 18 

SLAGH 24K MEMORY BOARD ...... $145 

CARDCO 6 SLOT EXPANSION MOTHERBOARD $ 79 

CARDCO 3 SLOT EXPANSION MOTHERBOARD S 39 

CARDWRITER LIGHT PEN $ 29 

CARDETTE PARALLEL INTERFACE ............$ 59 

DATA 20 40/80 COLUMN 16K BOARD $219 

DATA 20 40/80 COLUMN 64K BOARD $289 

ORDERtNG INFORMATION AND TERMS 

For Fast Delivery send cashie/ checks, money orders or direct bank wire trans- 
fers. Personal and company checks allow 3 weeks to clear COD. orders ($3.00 
minimum} and 1% ot ail orders overS300. School purchase orders welcomed. Prices 
reflect a cash discount only and are sut>ject to change. Please enclose your phone 
number with any orders. Shipping — Software ($2.50 minimum} Shipping — Hard- 
ware (please call} Foreign orders. APO & FPO orders — $10 minimum and 15% of 
all orders over StOO. Nevada residents add 5'/*% sales tax. All goods are new a/Jtf 
include factory warranty. Due to our low prices, all sales are final. All returns must 
have a return authorization number. Call 702-369-5523 to obtain one before returning 
goods for replacement. All returned merchandise is subfect to a restockmg fee and 
must come with their original packaging in order to be accepted. 

NO returns permitted after 21 days from shipping date. 




^C commodore 

VIC 20 ...... ...$139 



VIC 1530 DATASETTE 
VIC 1541 DISK DRIVE 
VIC 1525 
GRAPHICS PRINTER 



$ 59 
$329 

$329 

VIC 1210 3K Memory Expander $ 34 

VIC 1 1 10 8K Memory Expander .....$ 52 
VIC 1111 16K Memory Expander ....$ 89 
VIC1011 RS232TerminaMnterface..$ 43 

VIC 1211 Super Expander . .$ 59 

VIC 1212 Programmers Aid Cartridge $ 45 
VIC 1213 Vicmon Machine Language 

Monitor $ 45 

VL 102 Introduction to Basic 

Programming $ 21 

VT 106A Recreation Pack $ 45 

VT107A HomeCaiculation Pack ...$ 45 
VT 164 Programmable Character Set $ 12 

VIC 1600 Vicmodem ......... $ 89 

VlC131lJoys1iGk ..........,.....$ 8 

VIC 1312 Game Paddles $ 16 

VM Programmers Reference Guide. .$ 14 

VIC Software 

Avenger $ 23 

Superslot ....,.$ 23 

Super ASien. $ 23 

Jupiter Lander % 23 

Draw Poker $ 23 

Midnight Drive ......$ 23 

Radar Rat Race S 23 

Raid on Fort Knox .....$ 23 

Sargon II Chess $ 29 

Super Smash $ 23 

Cosmic Cruncher ....$ 23 

Gorf ..,$ 29 

Omega Race $ 29 

Money W/ars $ 23 

Menagerie . , .....$ 23 

Cosmic Jailbreak $ 23 

Clowns S 23 

Garden Wars $ 23 

Sea Wolf $ 23 

Adventureland . , .........,..$ 2§ 

Pirate Cove. , .$ 29 

Mission Impossible $ 29 

The Count $ 29 

Voodoo Caslie $ 29 

The Sky is Falling .......$ 23 

Mole Attack . , $ 23 

Bingo Speed Math ......$ 23 

Home Babysitter .... . . . .$ 23 

Visible Solar System .$ 23 

Personal Finance $ 29 

Quick Brown Fox ...,.$ 65 

United Microware 

Spiders of Mars (CT) S 34 

Meteor Run (CT) $ 34 

Amok(C) S 17 

Alien Blitz (C} $ 17 

Skymath(C) $ 12 

Space Division (C} $ 12 

Super Hangmari(C) $ 14 

The Alien (C) ,. . .$ 17 

3D Maze (C) S 12 

Kosmic Kamikaze (C) $ 17 

Sub Chase (C) $ 17 

Amok(CT) ..$ 27 

Renaissance (CT) $ 34 

Alien Blitz (CT) $ 27 

Cloud Burst (CT) .$ 27 

Sateltites and Meteorites (CT) $ 34 

Outworld(CT) $ 34 

Wordcraft $270 



The Computer Outlet is an 
associate of The Computer 
Learning Confer For Children. 
. . We are experts tn educaiional technol- 
ogy featuring our own Computer Learning 
Center educational software. Dealers in- 
quiries invited. " 



4^' _ ,»c«ai«e nj^ 




1200 XL .$619 
800 48K .$489 
400 16K .$209 

1010 Recorder S 72 

410 Recorder .,.,..... $ 72 

810 Disk Drive $419 

1025 Printer $409 

830 Modem .,,..$145 

850 ineriace $159, 

481 Entertainer $ 64 

482 Educator , $110 

483ProgrammeT $ 52 

484 Communicator $289 

853l6KRam ...,,,., $ 74 

The Bookkeeper Kit $165 

CX4104 Mailing List .... . . S 19 

CX404 Word Processor .$102 

CXL4007 Music Composer ... $ 42 

Programming 2& 3 .$ 22 

Conversational Languages $ 42 

CX4018 Pilot-. - $ 55 

CX405 Pilot. - ...,....$ 92 

CXL4003 Assembler Editor... $ 42 

CX8126 Microsoft Basic ....... $ 62 

CXL4022 PaoMan ,....,.., $ 30 

CX81 30 Caverns of Mars.... $ 28 

CXL4020 Centipede $ 30 

CXL4006 Super Breaklut. , . .$ 26 

CXL4008 Space invaders ..,......-$ 26 

CXL4009 Computer Chess $ 26 

CXL401 1 Star Raiders S 30 

CXL4012 Missile Command S 26 

CXL4013 Asteroids ....$ 26 

The Bookkeeper $102 

Home Filing Manager $ 30 

Atari Speed Reading S 54 

My First Alphabet $ 28 

Juggles House(D,C)...., .S 22 

Juggles Rainbow (D,C) $ 22 

Home Manager Kit $ 55 

Family Finance .$ 36 

T*meWise $23 

Galaxian... ..$ 30 

Defender S 30 

Qix $30 

Dig Dug ...$30 

ET Home Phone ....S 34 

Atari Writer $ 55 

Business & Utilities 

Vislcalc - ...$169 

Mail Merge .. ., $ 20 

Data Perfect $ 75 

Letter Perfect .$105 

Text Wizard ,........$ 65 

Datasnn 65 2.0 $ 59 

File Manager 800 + ......$ 65 

Syn Assembler. $ 34 

Page6 $ 20 

Atari World ,$ 39 

K-Dos .....$ 59 

Micropainter $ 23 

Color Print $ 27 

Lisp Interpreter , $ 79 

Bishops Square $ 20 

Graphic Master . $ 27 

Graphic Generator ...,.$ 17 

Basic Compiler S 65 

Computari*s Financial Wizard ......$ 45 

Color Accountant ..... .......I 65 

Datalink ..... . , .$ 27 

File It 2 System $ 34 

Diskette Inventory System . $ 17 

P.M. P. Property Management $179 

Programming Techniques 

Display Lists .$ 17 

Hofiz^Vert Scroll $ 17 

Page Flipping $ 17 

Basics of Animation S 17 

Player Missile Graphics ..,........$ 24 

Sound $ 24 

Data Files.. $ 24 



Temple of Apshat $ 27 

Raster Blaster $ 20 

Apple Panic -$ 20 

Crossfire .- $ 20 

Threshold $ 27 

Mousekattack -$ 23 

Krazy Shootout ■$ 34 

Deadline - ■$ 34 

Tumble Bugs $ 20 

PooMS... •■■■$ 23 

Richochet ....-...$ 15 

Empire of the Overmind $ 23 

Wi2 & Princess $ 22 

Mission Asteroid $ 17 

Ali Baba & the Forty Thieves S 22 

The Shattered Alliance S 27 

Canyon Climber S 20 

Shooting Arcade $ 20 

Pacific Coast Highway . -$ 20 

Clowns & Balloons $ 20 

Preppie - • $ 20 

Rear Guard S 17 

Lunar Lander S 17 

War $ 17 

Star Warrior $ 27 

Dragon's Eye S 20 



Crush. Crumble & Chomp .$ 20 

Jawbreaker $ 20 

ZorkI $ 27 

Zork 11 , ..,..$ 27 

Sottporn Adventure ..,.,,.. $ 20 

Deluxe Invaders $ 23 

Chicken $ 23 

Nautilus .......$ 23 

Rescue at Rigef - $ 20 

Frogger ............-..-$ 23 

Choplitter.. $ 23 

Curse of Ra , , ...$ 15 

Ghost Encounters — $ 20 

Ulysses and The Golden Fleece S 23 

Battle of Shiloh ■$ 27 

Tigers-in the Snow - $ 27 

Track Attack $ 20 

Shamus $ 23 

Picknick Paranoia $ 23 

Claim Jumper $ 23 

Embargo ........$ 34 

Firebird, , . $ 34 

Cyclod .......,.....-$ 20 

Space Eggs $ 20 

Sneakers $ 20 

Snake Byte $ 20 




*** SPECIALS OF THE MONTH *** 

ELEPHANT DiSKS(BOX) $20 

HAYES SMARTIVIODEM , $209 

MOSAiC 32K RAM $ 89 

RAMDiSK(12SK) $399 

AMDEK COLOR i I^ONiTOR $299 

PERCOM DOUBLE DENSiTY DRiVE $615 

NEC8023A PRINTER $439 

BASiC A + (OSA + iNCLUDED) .... $ 59 

FLIP N' SORT DISKETTE BOX $ 21 

(Holds 50 Diskettes) 
FLIP-SORT CARTRIDGE BOX $ 21 

(Holds 10 Atari Computer Cartridges) 

MOSAIC 64K RAM . .$149 

00 COLUMN BOARD (ATARI) $279 

ALL APX SOFTWARE $15% TO 20% OFF 

PERCOM SINGLE DENSITY DRIVE .$389 

Computer Outlet 

Park Place — Upper Level 

1095 E. Twain — (702) 796-0296 

Las Vegas, Nevada 89109 

call Toll 800-634-6766 °^^o'nly "' 

Information & Order Inquiries (702) 369-5523 

We accept VISA & Mastercard 

Mon.-Fri. 8 A.M.-6 P.M. 

Sat. 9 A.M. -5 P. M. 
Dealer Inquiries Invited 



New Hit List 

King Arthur's Heir (D) ...,-..$ 20 

Escape from Vuncan's Isle (D) ...,..$ 20 

Crypt of the Undead(D)..... ..... .-5 20 

The Nightmare (D) $ 20 

Danger in Drindisti (D, C) S 15 

Armor Assault (D) ■ ■$ 27 

Monster Maze (CT) S 27 

Alien Garden (CT) ---... S 27 

Plattermania (CQ - ^ 27 

David's Midnight Magic (D) S 23 

StarBlazer(D) - S 22 

Steilar Shuttle {D,C) ■•■^ 20 

Genetic Drift (D,C) . $ 20 

Labyrinth (D. C) % 20 

Serpentine (D) S 23 

Sea Fox (D) .S 20 

Spell Wizard (D) S 53 

Sands of Egypt (D) S 27 

Pool 400 (CT) ..............$ 27 

Speedwajf Blast (CT) ,.......$ 27 

K-razy Kritters(CT) - $ 34 

K-Star Patrol (CT) - S 34 

K^Razy Antiks (CT) S 34 

Crossword Magic (D) .S 34 

Master Type $ 27 

Gorf ...(D)$27,(CT)$ 30 

Wizard otWor . . . .(D)$27.{CT)$ 30 

Cyborg ID)..... - 5 23 

Gold Rush (D).... S 23 

Bandits(D) $ 23 

Way Out (0) $ 27 

Fast Eddy (CT) S 24 

WorldV/arl(CT) $ 24 

Beanie Bopper{CT) .$ 24 

The Cosmic Balance (D) $ 27 

Miner 2049er(CTl-.. S 34 

Attack at EP'CyG-4 (D) $22, (C) $ 20 

Chess (D) ..$ 45 

Checkers (D) $ 34 

Odin(D) -S 34 

Snooper Troops #1 (D) $ 30 

Snooper Troops #2(0).. $ 30 

Story Machine (D) $ 23 

Face Maker(D) S 23 

Haunted Hill (D)$20.(C)S 17 

Trivia Trek (D) .....S 20 

Datalink (D) 5 27 

Space Shuttle (D) S 20 

Jerry White's Music Lessons (D,C) .,$20 
Switty Tach Master ..,.., (D) $20, (C) $ 17 
Apocalypse (D. C) $ 23 

Raptillian(D. C) ..S 23 

Kid Grid (D,C) .....$ 20 

Aliencounter (Face Flash) {D,C) S 26 

TheJarGame;Chaos(D,C) S 26 

Gulp/Arrow Graphics (D, C) $26 

Golf Classic/Compubar $ 26 

Frenzy/Flip Flop (D.C) .$ 26 

Battling Bugs/Concentration {0, C) . . $ 26 

Submarine Commander (CT) $ 34 

Jumbo Jet Pilot (CT) ■■... -■■■$ 34 

Soccef (CT) .... $ 34 

Kickback(CT).... .$ 34 

Darts (C) $ 22 

Pool(C) .$ 22 

Dominoes and Cribbage(C) $ 22 

Pig Pen (D) $ 20 

Starcross (D) .....$ 27 

Zork 111(D) .......$ 27 

Journey to the Planets (D, C) $ 20 

Moon Shuttle (D) $ 27 

Moon Patrol (C) ... $ 17 

Normandfe (D, C) .....$ 27 

Zaxxon(D, C) ........ .....$ 27 

Juggler (D) , $ 20 

Survival of the Fittest $ 27 

Baseball (D) $23. (C) $ 20 

Sentinel I ........ . . . . . .(0)$23.(C)$ 20 

The Guardian of Gorm . . . (D) $23, (C) $ 20 

Miner 2049er(CT) $ 34 

Jeepers Creepers (DJ .$ 20 

Snapper (D) . . .$ 20 

Twerps (D)... $ 23 

Flip Out (D) $ 20 

The Birth of the Phoenix $ 16 

Protector II (D)$23,(CT)$ 2^ 



decoding subroutines: 

Giv^en a character C$, then the value C is 
computed by: 

10 C = ASC(C$):C = C-40 + (C>159)*64:RETURN 
where (C>159)= -1 if C>159 and if C= <159 

Given a number D, then the character D$ is 

determined by: 

20 IF D<56 THEN D$ = CHR$(D + 40):RETURN 
30 DS = CHRS(D + 104):RETURN 

These routines yield a range from -8 to 119 with 
the quote mark at -6. The negative vakies v^ere 
used internally as the special flags in my adv^enture 
game. In these routines, an open parenthesis is a 
zero; a close parenthesis is 1. A shifted back arrow 
is 119; a blank is -8. The encoding and decoding 
subroutines may have to be revised for other com- 
puters, depending on the code number schemes 
used. 

Passages And Exits 

To understand how one-byte pointers can be used 
to save memory in your game programs, consider 
the simple adventure map in Figure 1. You start 
at a crossroad (state 1). Movement to the north, 
south, and west places you in a forest or in houses 
of various colors. There is a secret, one-way pas- 
sage from the red house to the blue house. Going 
east from the crossroad puts you in a cave from 
which there is no escape. 

This adventure map can be expressed as a 
state table, as shown in Table 1. The rows of the 
table correspond to states (locations) in the map. 
The columns correspond to the possible move- 
ment directions (in this case north, south, east, 
and west). If you are in state 1 (the crossroad) and 
wish to move south, you end up in state 5 (the 
red house). (This state transition is shown in Table 
1.) A further attempt to move south (while in state 
5) has no path ("no exit"), indicated by the zero 
pointer. All exits from state 4 (the cave) put you 
back in state 4. This would appear as an endless 
cave to the person playing the game. 

The state table can be programmed into the 
adventure game using the subroutines described 
above. The result is shown in Table 2. This en- 
coded state table requires only 42 bytes of memory 
in the PET (including all overhead, as discussed 
below). Storing the table as a matrix of integer 
numbers would require 59 bytes on the PET. While 
the memory saved is not dramatic for this small 
example, when large tables are used, the memory 
saved can be quite substantial. 

Ragged Tables 

Suppose that we wish to add descriptions of each 
state to our game program. These would be 
printed on the screen each time a state was 
entered. A list for our simple adventure game 

102 COMPUTll July 1983 



map is shown in Table 3. 

These could be stored in strings, but they 
would consume 118 bytes of memory (plus some 
overhead). Alternatively, these descriptions can 
be broken into phrases which are used in various 
combinations to make up the descriptions. These 
phrases are shown in Table 4. These phrases re- 
quire only 53 bytes (plus some overhead), but we 
must also define the rules for combining phrases 
back into descriptions for each state. Once again, 
we use one-byte pointers. These new pointers 
can be simply added to the encoded state table, as 
shown in Table 5. 

The procedure for creating a description when 
a state is entered is shown graphically in Figure 2. 
The BASIC code necessary to print the description 
of state 1 is as follows: 

40 L = LEN(A$(I)) find length of string 

50 FOR J = 5 TO L skip first four characters and scan 

60 C$ = MID$(ASa)J,l) select next character 

70 GOSUB 10 convert to number C (see above) 

80 PRINT BSiCr "; print phrase and blank 

90 NEXT J 

100 PRINT end print line 

Note that the number of characters in each state 
table entry shown in Table 5 is different. It is there- 
fore a "ragged" table. It requires 18 additional 
bytes to store the pointers for all five state 
descriptions, a net savings of 47 bytes compared 
to storing the full descriptions (not including 
overhead). 

Storage Methods 

The techniques described above can be applied to 
computing problems other tiian games. The bigger 
the pointer tables are, the more advantages one- 
byte pointers offer. However, the tradeoff be- 
tween one-byte pointers and simple integers is 
tricky because of the overhead required to set up 
strings or arrays of strings, and because extra 
programming is required to isolate and decode 
the stored character. 

The storage technique used in my PET 2001 
(original ROMs) requires seven bytes plus the 
number of characters for string variables. Thus, a 
single character pointer should never be used. 
When arrays are used, the tradeoff is dependent 
upon the number of rows and columns involved. 
For a ten by ten tv\^o-dimensional array, the mem- 
ory used for a floating point array is 509 bytes. 
This is 500 bytes for the numbers and nine bytes 
for an array header (overhead). An integer array 
requires 209 bytes (200 bytes for the numbers and 
nine bytes for the header). 

Using the one-byte variables reduces this 
array to a one-dimensional array of ten strings. 
Each string is ten characters long. The total mem- 
ory requirement is 137 bytes. This is 100 bytes for 
the numbers, seven bytes for the header, three 



bytes for each string, for a total of 37 bytes over- 
head. As the arrays get larger, the one-byte ap- 
proach uses approximately one-half the memory 
required by integer arrays and one-fifth of the 
memory required by floating point arrays. A more 
detailed explanation of the storage structures of 
Commodore computers can be found in Progmui- 
mmg The PET (COMPUTE! Books, 1982). 

The one-byte storage technique can be espe- 
cially useful when: memory is at a premium, when 
large tables of pointers are needed, and when 
ragged tables provide a programming advantage. 

When you're programming games into com- 
puters with limited memory (such as the 
unexpanded VlC-20), these techniques can be 
very adv^antageous. 



Table 1: 

Sfofe Table For The Adventure Mop 

Movement Direction 
State North South East West ^^ p l/^ 



State 
Transition 



^]T^- 




^ ft 



2 59l)^es Cf 
reqt^red O 

3 inPI^ e> 

4 to st(^ 
2 as' ' 

-45 ^ 






t 



Table 2: l^ooded Stdle Table ^ ^ 



A$(l)= + -,* 
A$(2)=(()( 
AS(3)= + ) + + 
AS(4) ==,,,, 
AS(5)= )((* 



42 bytes 
required 
in PET 




Figure 1: Adventure Map 



state 3 / W 

J Forest K 



North 



East 







State 4 



State 1 




State 5 



"Rlbf^ 3: state Descriptions 



state 1 "YOU ARE AT A CROSSROAD" 
State 2 "YOU ARE IN A BLUE HOUSE'' s^ 118 bytes 

Stale 3 "YOU ARE IN A FOREST" a/ required plus 

State 4 "YOU ARE IN A CAVE, YOU ARE LOST'l^ overhead 
States "YOU ARE IN A RED HOUSE ^ 



4: Phrase Table 



B$(l)== "YOU ARE" 

B${2)= "IN A" 

B$0)- "AT A CROSSROAD'^ 

B$(4).^ "BLUE" 

B${5)^ "RED" 

B$(6)= "HOUSE" 

B$(7)= "FOREST" 

B$(8)= "CAVE," 

B$(9)= "LOST" 



TrMt^ 






53 bytes 
required 
plus 
overhead 



4./-*! j '^ w ;r^-.^v 'u4^ 



Ragged State Table With Descriptor Pointers 



A$(l)^ 
A$(2) = 

A$(3) = 
A$(4) = 
A$(5) = 




pointers 
to phrase 
table 



18 added bytes 
for a total of 
60 bytes 
required 
in PET 



H » TK^z-'LC 








Figure 2: Decoding Example 






state Table 


A$(4) = 


/ t 


8 1 ^9 

(caveO (you are) (lost) 


Pointers to B$: 

Printed 
Description: 


1- 
/ 

(you are) 


/ 

(in a) 



July 1983 COMPimi 103 



Game POKEr 
For VIC And 64 



Dan Carmichoel. Assistant Editor 



With tme touch of the fingerand the ''Screoi-plot/' you 
can easily determine the screen locations of your PEEKs 
and POKEs. This can he of great help when designing 
games or graphics, for the VIC and 64, 



When you're writing or designing programs, espe- 
cially games, that use a lot of POKEs and PEEKs 
to the screen, one of the most time-consuming 
tasks can be to determine the screen locations of 
those POKEs and PEEKs. With the VIC-20 or the 
Commodore 64, you can use the charts supplied 
with either the instruction book or the Program- 
me fs Reference Guide, or you can take a guess 
and do a number of POKEs until you "hit" the 
position you desire. But both methods can be 
time-consuming. 

To solve this problem, you can use this useful 
"Screen-plot" utility program. The program will, 
with the touch of one finger, move a blinking ball 
("•"-CHR$1 13) to any position on the screen while 
continuously displaying both the screen and color 
POKE locations of the blinking ball. 

This is a machine language program written 
to run in the cassette buffer (but you can use it 
even if you don't understand machine language). 
It will require only one BASIC statement; other- 
wise, it will leave your available BASIC pro- 
gramming memory untouched. 

First, type in the program. If you're going to 
use Screen-plot in conjunction with the program 
you are currently working on, either append the 
screen-plotter to it or load your program and then 
type in the screen-plotter after it. The line num- 
bers, starting at 59995, should insure that it will 
always remain at the end of your program. 

After entering the program, SAVE it before 
running. As is true with all machine language 
programs, even a slight error in the DATA state- 
ments can cause your system to crash, forcing 
you to turn off your computer to recover. Then 
run the program bv entering "RUN 59995", and 
after a pause of about two seconds, the "READY" 

104 COMPUTE! July 1983 



will be displayed. The Screen-plot program is 
now POKEd into memory and ready to run. 

To run the Screen-plot utility, enter "RUN 
60000". If you entered the program correctly, a 
blinking ball will be displayed on your screen, 
alongHvith two numbers in the upper left-hand 
corner. The first number is the screen position of 
the blinking ball; the second is the color location. 
As you move the ball around the screen, these 
numbers will change, reflecting the changes in 
the screen and color locations. ' 

Controlling The Prpgram 

Movement of the ball is accomplished via the F- 
keys. The following table shows which F-key con- 
trols which direction of movement. 



F-Key 


Blinking Ball 
Direction 


F-1 


— ^ 


F-3 


4— 


F-5 


i 


F-7 


t 



Screen-plot has a built-in safety feature that 
prevents you from leaving the screen with the 
blinking ball and thereby altering other important 
memory locations in your computer. 

This utility program runs in the cassette buf- 
fer, so you cannot use the cassette tape while this 
program is running. For you machine language 
programmers, the screen-plotter uses the zero- 
page locations hex $FB and $FC; so they are un- 
available to you. • . I 

Also, because of Commodore's automatic 
scrolling feature, the screen display would scroll 
if you were to move the blinking ball to the very 
last position on the screen (lower right-hand 
corner). So the program prevents you from 
moving the ball into this position. To find the 
screen and color POKE locations of this position, 
simply move the blinking ball to the second to 
last position and add 1. 



$40 Can Make 

A Home Computer 

A Business Computer 



If you own a 
VIC-20" or Commodore 647 

someday you may consider getting 
a more sopiiisticated computerfor 
your business. 

That could cost you tliousands of 
dollars. Or just $40. ($50forPractiCalc64.) 

Forty dollars will buy a PractiCalc 
software program for your VIC-20 and 
suddenly your VIC will be able to do many 
business tasks that have made Apple® 
and IBM® computers so popular in the 
,„, _^ j business world. 

.^, .v. With PractiCalc 

4$;|| and a VIC, you can devise 
budgets, and 





MMiXisimMaitiim 




^^r^,.J^^-- make business 
projections - 
instantly! 



See what PractiCalc"can do for you. 

You can keep track of expenses, 
investments and inventory. 

Maintain and /nsfanf/ysearc/?* files 
of customers. 



Alphabetize lists, and rearrange 
long rows of numbers - instantly. 

Even turn numbers into graphs.* 

PractiCalc makes it practical to 
play with numbers, in a 
way you never could 
with pencil and paper. 
Sit down at your VIC, 
putin PractiCalc, and 
tasks that would 
normally take hours, 
take minutes. 

PractiCalc. If you're 
tired of playing games, and want to get 
down to business. 




COMPUTER SOFTWARE ASSOCIATES 



ITM 



PractiCalc 



*Dervotes features available only on PractiCalc 64 and PractiCaic Plus. 

C^4- and \nC-20~ are trademarl^s cf Commodore Business Machines. Inc DiStributerf by; MKJO SOftWQTS htematlOnal hC 

Apple* 13 a registered trademark of Apple CompuiefS. Inc IBM* is a registered tradem^ark of International Business Machines. Irx:. 50 T@3d Onve, Randolph, MA 02368 



Hints And Tips 

After the program has been successhiUy POKEd 
into memor\' and tested, you may delete lines 59994- 
59999 jYiQ only line necessary to support the nm- 
ning of Screen-plot is line 60000. Also, the screen- 
plotter will not clear the screen upon initialization, 
so you may use it successfully with whatever screen 
display your program generates. To stop the screen- 
plotter, simply press the STOP kev. 



BEGINNING PROGRAMMERS 
If you're new to computing, please read "How 
To Type COMPUTErs Programs" and "A 
Beginner's Guide To Typing In Programs." 



Program 1: 

Screen-plot For The Unexpanded VIC 

59994 FORA=828T092 i : READB ; POKEA, B : NEXT ; EN 

D 

59995 DATA165, 197,166,251,164,252,201,39, 

208,6,224,21,240,2,2 30,2 51,201,47, 
208,6,224,0 

59996 DATA240,2, 198,251,201,55,208,6,192, 

22,240,2,230,252,201,6 3,208,6, 192, 
0,240,2, 198 

59997 DATA2 5 2,166,2 52,164,2 51,2 24,2 2,208, 

7, 19 2,21,208,3,202,198,2 51,24,3 2,2 
40,255,169 

59998 DATA113, 32, 210, 255, 162,0, 160,0, 232, 

208,253,200,192,32,208,248,169,157 
,32,210,255 

59999 DATA169,32,32,210,25 5,96,2 34 

60000 SYS82a:A=PEEK(251)+PEEK(25 2)*2 2i-76a 

0: PRINT" [red} [ HOME } "A;A+30720" 
{BLU}":GOTO60000 

Program 2: 

Screen-plot For The Expanded (8K Or More) VIC 

59994 FORA=828T092 1 : READB : POKEA, B : NEXT : EN 

D 
5999 5 DATA165, 197 , 166 , 2 51 , 164 , 252 , 201 , 39 , 

208,6,2 24,21,240,2,2 30,2 51,201,47, 

208,6,224,0 

59996 DATA240,2, 198,251,201,55,208,6,192, 

2 2,240,2,2 30,25 2,201,6 3,208,6,192, 
0,240,2,198 

59997 DATA2 52, 166,252,164,251,224,22,208, 

7,192,21,203, 3,202, 198,251,24,32,2 
40,255, 169 

59998 DATA113, 32 , 210 , 255 , 162 , , 160 , , 232 , 

208,2 5 3,200, 192,32,208,248,169,157 

,32,210,255 
5 9999 DATA16 9, 3 2, 3 2, 210,255,96, 234 
60000 SYS828:A=PEEK(25l)+PEEK(252)*22+409 

6:PRINT"IrED} [HOME] "A; A-^33792 '* 

{BLU}":GOTO60000 

Program 3: Screen^plot For The 64 

59994 F0RA=828T092 1 : READB : POKEA, B : NEXT : EN 

D 

59995 DATA165, 197,166,251,164,252,201,4,2 

08,6,224,3 9,240,2,2 30,2 51,201,5,20 
8 

106 COMPUTE! July 1983 



59996 DATA6 , 224 , , 240 , 2 , 198, 25 1 , 201 , 6 , 208 

,6,19 2,24,240,2,2 30,25 2,201,3,208, 
6 

59997 DATA192,0,240,2,198,252, 166,252,164 

,251,224,24,208,7,192,39,208,3,202 
,198 

59998 DATA25L,24,32,240,255,169,113,32,21 

0,255, 162,0,160,0,232,208,253,200, 
192 

59999 DATA32, 208, 248, 169, 157, 32, 210, 2 55,1 

69,32,32,210,255,96,234 

60000 SYSa28:A=PEEK(251 ) +PEEK ( 2 52 ) *40+102 

4:PRINT" iHOME] "A; A+54272 : GOTO60000 



C-64/VIC 20/PET/CBM OWNERS 

KUADTUAO -" Hop your toad across 5 lanes ot traffic, avo^d deadly 
snakes, and dodge the dreaded toad-eaters, Cross a raging nver fjll of logs 
turtles, alligators, and park your toad m the safety of a harbor. Each time you" 
park 5 toads, you enter a tougher level where the action is taster and the toad- 
eaters are more numerous. ROADTOAD is written in machine tanguage and 
uses high resolution graphics. The sound effects are excellent and you can use 
a joystick or the keyboard to control your toad 

CASS/5K/VIC 2CMC-64 (Includes Shipping/Handling) $19.95 

[CALIF, RES. ADD 6% SALES TAX] 
UrllUKcl\l CHASE - Help your hapless hen avoid hungry chicken 
hawks, sneaky coyotes, and fiendish zompys. if your chicken gets into trouble, 
"hyper-hen ■ to a new spot on the maze. If your chicken travels the entire maze! 
you advance to the next (evef where the action ts faster and the predators more 
numerous. Hires graphics, great sounds, and machine language help make 
CHICKEN CHASE a hilarious fun-filled game for the whole family 
CASS/5KWiC-20IC.64 ...... . , (Includes Shipping/Handling) $19.95 

(CALIF RES ADD 6% SALES TAX] 

Write For IMIBBLeS & BITS. llSie. Write For 

FREE pQ^ Qp3^ eoaa FREE 

Catalog orcutt, ca eaass Catafog 



SUPER DISK 



Floppy Disk Drive For 
VIC -20 & Commodore 64 



Super Disk is a Commodore compatible disk drive design- 
ed to interface to the various Commodore computers such 
as the PET, VIC-20" and the Commodore 64\ The disk drive 
is compatible to the model 4040, 2031 , 1540, and the 1541 
disk drives and recognizes programs generated on any ot 
these disk drives. The capacities are comparable to those 
found on the Commodore drives, and Super Disk' 
recognizes the full instruction set of the Commodore drives. 
Super Disk' offers RAM area within the disk unit, a serial and an 
IEEE bus interface. 

Introductory Offer. . .$395.00 





Also Avarlable: 




Gemini- 10 w/lnterface 


$399. V3K RAM 


25. 


CPI Parallel Interface 


65. V8K RAM 


4S. 


Expancfoport 3 VIC 


25. VI 6K RAM 


75. 


Expandoport 6 VIC 


75. V24K RAM 


105. 


Expandoport 4 C64 


65. CIE (IEEE for C64) 


95. 



CATALOG OF OTHER HARDWARE & SOFTWARE AVAILABLE ON 
REQUEST. We accept: ViSA, Mastercharge, and AE 

Southwest Micro Systems, Inc 

2554 Southwell • Dallas, Texas 75229 
(214) 484-7836 



Trademark of Commodore Int 



^Trademark of MSD 



fiM ^ :i^ lii^ 



^/"l 



By Parry Gripp 






e^^'^ore 




^v. 






l/IS tinTHOII 

DIGITAL PRODUCTIONS 

Copyright T983 Isis Hathor Digital Productrons 



Commodore 64 is a registered trademark 
of Commodore Business Machines Inc. 



mmmS^ 



LASER STRIKE 

Challenge the deadly astericxl field, maneuver the caves of ice, 

feed your lasers on the ripe solar pods, and bomb the enemy 

asteriod cities. Behold the awesome graphics ami sound of LASER 

STRIKE. Written in machine language for the Commodore 64. 



Visa/MC/Check/Money Order accepted 

In U.K. If! U.S. 

Cassette e20.00 VAT Included Cassette $24.95 

Disk E25.00 VAT Included Disk $29.9S 

Andrew Barrow Isis Hathor Digital Productions 

Royden, Pericslane 61 84 Verdura Ave. 

Prestwood, Gt Missenden Goleta, CA 931 17 



Bucks, England H PI 6 OJD 

02405-3224 

Add £1 for postage and handling 



In U.S. 

Cassette $24.95 

Disk $29.95 

Isis Hathor Digital Productions 

6184 Verdura Ave. 

Goleta, CA 931 17 

(805) 964-6335 

Add $2.00 postage and handling 

California residents add 6% sates tax 



ROADBLOCK 



Brion Holness 



There's a bit ofti/pii}^ here, but it's worth it. This game, 
written entire!}/ in machine language, is fast and flexible. 
You have a choice of five speeds, up to four f>tayers 
simultaneously, or you can compete directly against the 
computer. You try to control au ever-growing lijw with- 
out runniiig i}jto a boundary, another player, or your- 
self. For the Atari, 



In COMPUTE! (August 1981) there was an action 
game called "Blockade/' written entirely in 
BASIC. The idea is simple. Each player controls a 
line which continually grows in an enclosed box. 
The first player who crashes into anything (himself 
or herself included) loses a point. Players start 
with nine points, and when they reach zero they're 
out of the game. 

The use of BASIC prevented the possibility 
of allowing increased speeds, multiple players, or 
computer play options. I wrote this version of 
Blockade - called "Roadblock" in machine lan- 
guage to add these options. If you don't know 
machine language you can still type it in and use 
it; the program contains all the DATA statements 
required to run the program via a USR statement. 

One of the major stumbling blocks 1 had in 
writing this program was the use of graphics in 
machine language. Fortunately. Bill Wilkinson's 
"Insight: Atari" article in COMPUTE! (February 
1982) came to my rescue; those familiar with his 
article will recognize his code. 

When the main menu comes up, you are 
instructed to use the select, option, or start button. 
The option button controls the speed, from 1 to 3, 
w^here 1 is the slowest speed. The select button 
co!Ttrols both the number of players (2, 3, or 4) 
and the computer play option. When the computer 
plays, it always plays as player number 2 and is 
included in the total number of pi a vers. Thus, if 
three players are indicated and the computer is 
playing, then player numbers 1 and 3 are the hu- 
mans, and player number 2 is the computer. 

108 COMPUTE! July1983 



BEGINNING PROGRAMMERS 
If you're new to computing, please read ''How 
To Type COMPUTE!'s Programs" and "A 
Beginner's Guide To Typing In Programs," 



Roadblock 

10 FOR 1= 
I , B: NE 

15 A=USR( 
1010 DATA 



1020 
1030 
1040 
1050 
1060 
1070 
1080 
1090 
1 100 
1110 
1 1 20 
1 130 
1 140 

1 150 
i 160 
1 1 70 
1 180 
1 190 
1200 
1210 
1220 
1230 
1240 
1250 
1260 
1270 
1280 
1290 

1300 
1310 
1320 
1330 
1340 
1350 
1360 
1370 
1380 
1390 
1400 



DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 

DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 

DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 



13 
XT 
14 
1 
3 
2 
1 
2 
9 
8 
4 



824 TO 15010:READ BiPOKE 

I 

788) 

6^83, 

7,21 , 

7,40, 

O c- c 

55, 1 , 
.9,8, 
, 12, 
8,0, 



,58, 
, 16, 
: 40, 
, 0, 



10 

12, 1 

:29,2 

11.1 



16,2 
0, 7, 
, 112 

9, 24 
2, 1 1 
14,1 
36, 2 
14,1 



0,2, 
21,1 

29^ 2 
,0,0 
, 1,7 
37, 6 
, 48, 
11,1 
, 114 
0, 24 
1,11 
01,1 
29, 2 
5 5 i 1 



96, 64 
,0,46 
3,5,4 

, 1 

,0 

4,4 

16,17 

4,13 

, 101 , 

4, 233 

4 , 1 55 

15,11 

27, 24 

12,11 



6 

1 1! 



15 

238 



4,3 
4, 1 



01 



243 

102 
, 1 1 



115,32,243,244, 225, 242, 244 

32, 1 16, 1 1 1 , 32, 98, 101 , 103 
105, 110, 155,32, 32, 32, 32 
32, 82, 111, 193, 228, 32, 66 
108,207, 227, 75, 155, 32, 32 
66, 12 1,3 2, 194, 114, 73, 225 
206,32, 104,79,236,206, 101 
33, 243, 155, 155, 32, 83, 30 
69, 69, 68, 58, 32, 180, 155 
3 2, 8 0, 7 6, 6 5, 8 9, 69, 8 2 
83, 58, 32, 178, 155, 32, 67 
79, 7 7, 80, 85, 84, 69, 82 
3 2, 80, 7 6, 6 5, 8 9, 8 3, 58 
32, 206, 155, 78, 89, 231, 225 
237,229, 160,239,246,229,24 

155, 13, 6 6, 4 0, 4 0, 2 3, 23 
5,43,1,255,0,0,0 
0, 1,255, 169,9, 162,3 
157,33, 54, 202, 16, 250, 174 
11, 54, 202, 189, 5, 54, 141 
10, 54, 16 9, 21, 32, 150, 56 
173, 48, 2, 133, 203, 173,4 9 
2, 133, 204, 160, 3, 16 9,71 
145, 203, 160, 6, 152, 145, 203 
169, 3, 160, 3, 32, 195, 56 
169,0, 162, 2, 160, 3, 32 



EXPLORE A NEW DIMENSION IN SOFXmRE 



W 




< 



&^J 



\ 



^ 




ftim!' 





INTRODUCING ACTION! — Now the fastest 8-bit language ^^ 

Another first from OSSl ACTION! is a brand new language designed to run on 6502-based computers, 
including Atari, Apple II, and Commodore 64. A powerful, structured language, ACTION! can draw out a new, 
higher dimension of performance from these machines, with speeds never seen before. ACTION! combines some ■ 
the best features of such languages as Pascal, C, and Algol, and offers speeds over 100 times faster than BASIC interpreters. 

ACTION! is ideal for games, music processing, real-time control, and many other applications. But if what you're really 
looking for is raw speed in compiled code, ACTION! is just for you. There's more . . , ACTION! comes with a 128-column screen 
editor which rivals word processing programs, as well as a monitor mode which allows you to choose between on-line activities. 
ACTIONl's unique one-pass compiler will accept code from memory, disk, or cassette, and ACTION! has the ability to include 
source library files. 

ACTION! is provided in cartridge form only. Introductory price for ATARI Version $99.00 

Call or write for availability of Apple II and Commodore 64 Versions. 



A Strong Software Family 

Other mafor systems software products from OSS include: 



BASIC A + 

C/65 

MAC/65 

BUG/65 



the only logical upgrade to Atari BASIC with extra 
features for games and business programs..,. S80. 00 

the first native mode "small c" compiler for Atari 
and Apple computers....SB0.00 

the finest and fastest complete 6502 macro 
assembler/editor package you can buy..,,S80.00 

a powerful, self-relocatable debugger. FREE with 
MAC/65....S34.95 



And More,,, 

OS/A + , the first and finest operating system for BOTH Atari and Apple II 
computers, is NOW included FREE as a part of every OSS systems software 
package, OS/A-f features a keyboard-driven, easy-to-use command processor, 
several simple resident commands, and logical and readable requests for even the 
most sophisticated utility commands. Versions of OS/A+ for some higher 
capacity drives are available at extra cost. 

NOTE: Unless otherwise noted, all OSS products require 48K and at least 
one disk drive. 
ASK YOUR DEALER, or call or write for our brochure. 

ATARI, APPLE II, and TINY C are iradtmjrks of Atari, titc, Apple Computer, Inc., and 
Tiny C Associates, respectively. MAC/65, C/65, BASIC A + , BUG/65, and OS/A+ are 
trademarks of Optimized Systems Software, Inc. 



m 



Optimized Systems Software, Inc. 10379 Lansdale Avenue • Cupertino • California • 95014 • (408) 446-3099 



1410 


DATA 


1420 


DATA 


1430 


DATA 


1440 


DATA 


1450 


DATA 


14&0 


DATA 


1470 


DATA 


1480 


DATA 


1490 


DATA 


1500 


DATA 


1510 


DATA 


1520 


DATA 


1530 


DATA 


1540 


DATA 


1550 


DATA 


1560 


DATA 


1S70 


DATA 


1580 


DATA 


1590 


DATA 


1600 


DATA 


1610 


DATA 


1620 


DATA 


1630 


DATA 


1640 


DATA 


1650 


DATA 


1660 


DATA 


1670 


DATA 


1680 


DATA 


1690 


DATA 


1700 


DATA 


17 10 


DATA 


1720 


DATA 


1730 


DATA 


17 40 


DATA 


17 50 


DATA 


1760 


DATA 


1770 


DATA 


1780 


DATA 


17 90 


DATA 


18 00 


DATA 


18 10 


DATA 


1820 


DATA 


1830 


DATA 


1S40 


DATA 


1850 


DATA 


1860 


DATA 


1870 


DATA 


1880 


DATA 


1B90 


DATA 


1900 


DATA 


1910 


DATA 


1920 


DATA 


1930 


DATA 


1940 


DATA 


1950 


DATA 


1960 


DATA 


1970 


DATA 


1980 


DATA 


1990 


DATA 


2000 


DATA 


2010 


DATA 


2020 


DATA 


2030 


DATA 


2040 


DATA 


2050 


DATA 


2060 


DATA 


2070 


DATA 


2080 


DATA 


2090 


DATA 


2100 


DATA 


21 10 


DATA 


2120 


DATA 


2130 


DATA 


2140 


DATA 


2150 


DATA 


2160 


DATA 



232, 56, 169, 0, 16 2, 2, 160 
46, 32, 23, 57, 169,0, 162 
79, 160, 46, 32, 23, 57, 169 
0, 162, 79, 160, 3, 32, 23 
57, 169, 0, 162, 2, 160, 3 
32,23, 57, 162, 15, 189, 204 
54, 157, 13, 54, 202, 16, 247 
32, 81, 57, 166, 205, 208, 82 
134,206, 174, 31, 208, 224, 7 
240,3, 76, 1 1,58, 17 4, 10 
54, 32, 53, 57, 166, 207, 240 
60, 174, 4, 54, 172, 4, 54 

20 2, 189, 33, 54, 208,39, 136 
192, 1, 208, 34, 32, 81, 57 
169, 2, 133, 87, 162, 6, 160 

1, 169, 0, 32, 225, 56, 169 
194, 160, 54, 32, 199, 56, 173 
31, 208, 205, 31, 208, 2 40, 248 
76, 11, 58, 224, 0, 208, 207 
134, 207, 76, 24 0, 54, 166, 20 5 
189, 33, 54, 2 8, 3, 76, 133 
56, 166, 205, 189, 120, 2, 168 
166,205, 192, 14, 208, 10, 169 
255, 157, 25, 54, 169, 0, 157 
21,54,192,7,208, 10, 169 
1 , 157, 21 , 54, 169, 0, 157 
25, 54, 192, 11, 208, 10, 169 
255, 157, 2 1, 54, 169, 0, 157 
25, 54, 192, 13, 208, 10, 169 
1,157, 25, 54, 169,0, 157 
21, 54, 24, 189, 13, 54, 125 

21 , 54, 157, 13, 5 4, 24, 189 
17, 54, 125, 25, 54, 157, 17 
54, 168, 109, 13, 54, 170, 169 
0, 32, 1 , 57, 201 , 0, 240 

99, 166, 205, 224, 1, 208, 85 
173, 50, 54, 240, 80, 230, 20 6 
165, 206, 2 01, 3, 240, 72, 20 1 
2, 24 0, 19, 173, 10,210,41 
1, 174, 26, 54,208, 3, 24 
10S, 2, 141 , 51 ,54, 76, 61 
56, 173, SI, 54, 73, 1, 170 
188, 52, 54, 173, 2 6, 54, 240 
16, 20 1 , 1 , 208, 6, 206, 18 
54, 76, 178, 55, 238, 18,54 
76, 178, 55, 173, 22, 54, 201 
1 , 208, 6, 206, 14, 54, 7 6 
178, 55, 238, 14, 54, 76, 178 
55, 166, 205, 32, 129, 57, 76 
133, 56, 166, 205, 189, 29, 54 
32, 195, 56, 188, 17, 54, 189 
13, 54, 170, 169^0, 32, 232 
56, 166,205,232, 138,56,237 
4, 54, 48 , 2, 162, 0, 134 
205, 76, 76, 55, 72, 162, 96 
169, 12, 157, 66, 3, 32, 86 
223,162,96, 169, 3, 157, 66 
3, 169, 1 , 157, 68, 3, 169 
54, 157, 69, 3, 104, 15 7, 75 
3,41, 240, 73, 16, 9, 12 
157, 74, 3, 32, 86, 228, 96 
141, 0,54, 96, 162, 96, 157 
68, 3, 152, 157, 6 9, 3, 169 
255, 157, 72,3, 157, 73,3 
169, 9, 157, 66, 3, 32, 86 
228, 96, 134, 85, 133, 86, 132 
84, 96, 32, 225, 56, 162, 96 
169, 11, 157, 66, 3, 169, 
157,72,3, 157,73,3, 17 3 
0, 54,32, 8 6, 2 28, 96, 32 
2 25, 56, 162,96, 169, 7, 157 
66,5, 169, 0, 157, 72, 3 
157, 73, 3, 32, 86, 228, 96 
32, 225, 56, 173,0, 54, 141 
251, 2, 162, 96, 169, 17, 157 
66, 3, 169, 12, 157, 74, 3 



21 70 


DATA 


2180 


DATA 


2190 


DATA 


2200 


DATA 


2210 


DATA 


2220 


DATA 


2230 


DATA 


2240 


DATA 


2250 


DATA 


2260 


DATA 


2270 


DATA 


2280 


DATA 


2290 


DATA 


2300 


DATA 


2310 


DATA 


2320 


DATA 


2330 


DATA 


2340 


DATA 


2350 


DATA 


2360 


DATA 


2370 


DATA 


2380 


DATA 


2390 


DATA 


2400 


DATA 


2410 


DATA 


2420 


DATA 


2430 


DATA 


2440 


DATA 


2450 


DATA 


2460 


DATA 


2470 


DATA 


2480 


DATA 


2490 


DATA 


2500 


DATA 


2510 


DATA 


2520 


DATA 


2530 


DATA 


2540 


DATA 


2550 


DATA 


2560 


DATA 


2570 


DATA 


2580 


DATA 


2590 


DATA 


2600 


DATA 


26 10 


DATA 


2620 


DATA 


2630 


DATA 


2640 


DATA 


2650 


DATA 


2660 


DATA 


2670 


DATA 


2680 


DATA 


2690 


DATA 


2700 


DATA 



169, 0, 157, 75, 3, 32, 86 
228, 96, 224, 255, 240, 5, 16 

168, 140, 1,210, 160, 2 55, 142 
0,210, 136, 208, 253, 202, 208 
245, 162, 255, 16 0, 0, 140, 1 
210,96, 162, 0, 142, 45, 54 
169, 2, 133, 87, 174, 45, 54 
24, 189, 33, 54, 125, 46, 54 
32, 195, 56, 189, 41, 54, 170 
160,0, 152, 32, 23 2, 56, 238 
45, 54, 174, 45, 54, 236, 4 

54, 20 8, 222, 169, 5, 13 3, 87 
96, 166, 205, 189, 37, 54, 141 
2,2 10, 16 9, 104, 14 1,3, 210 
189, 196, 2, 72, 169, 54, 157 
196, 2, 162, 255, 32, 53, 57 

205, 104, 157, 196,2, 162, 255 
32, 53, 57, 166, 205, 22 2, 33 
54, 169,0, 141 , 3,210, 169 
1, 133, 207, 96, 169, 150, 160 
54, 32, 199, 56, 96, 169, 18 
32, 150, 56, 169, 32, 14 1 , 12 
54, 169, 194, 141, 200, 2, 169 
0, 170, 160, 4, 32, 225, 56 

169, 115, 160, 54, 32, 199, 56 
32, 188, 57, 169, 131, 160, 54 
32, 199, 56, 162, 176, 32, 53 

57. 173. 196.2.72. 162. 1 
189, 19 6,2, 157, 19 5,2,232 
224, 4, 208, 245, 104, 141, 199 
2, 206, 12, 54, 208, 225, 24 
173, 11, 54, 105, 176, 141, 159 
54, 173, 4, 54, 105, 176, 141 
171 ,54, 174,50, 54, 189, 192 
54, 105, 128, 141, 190, 54, 169 
2, 32, 150, 56, 162, 0, 169 

0, 168, 32, 225, 56, 169, 56 
160, 54, 32, 199,56, 169, 15 1 
160, 54, 32, 199, 56, 32, 188 
57, 169, 75, 160, 54, 32, 199 
56, 169, 161, 160, 54, 32, 199 
56, 169, 173, 160, 54,3 2, 199 
56, 32, 188, 57, 169, 94, 160 
54, 32, 199, 56, 172, 31, 208 
192, 7, 240, 249, 204, 3 1 , 208 
240, 251, 192, 5, 208, 24. 174 
4, 54, 23 2, 2 24, 5, 208, 10 
162, 2, 173, 50, 54, 73, 1 
141, 50, 54, 142, 4, 54, 76 
11, 58, 192, 3, 208, 16, 174 

11.54.232.224.6. 208. 2 
162, 1 , 142, 1 1 , 54, 76, 1 1 
58, 76, 220, 54 




Maiieiiveniig around Uie roadblocks. 



110 COMPUTE! July 1983 



pflOGAwnnoM 



Extra Atari Enjoyment NOW 



MOGRMI/TOM 



DEMON 
AHACK 




by Dave Johnson from imogic 

Marooned on the ice planet Krybor. walcti ©eri© creatures 

stfeam overt>eact and hover ominously. Attack and destroy 

them — or tie destroyed! For 1-2 players with ever mcreas- 

ing dangers. BSast em and survive! 

41656 ROM 

Cartridge S3©:So 

$31.96 20% Off Til 

July 10 



BURIED 
BUCKS 




from Analog 

Fast action "daredevir game! Equipping your helicopter 
with explosives, you intend to blast the gold. But your 
arch-enemy plans to keep the treasure and you buried by 
dropping loads of dirt from his World War II bomtser Incred- 
ible 99 levels of joystick controlled action for 1-2 players. 
It's a race for the bucks as you avoid the falling dirt! 

32364 16K Tape or 35873 16K Disk §^&:55 
$23.96 20% Off Til 
July 10 



JOURNEY 
TO THE 
PIANETS 

from JV Software, Inc. 

Space, adventure and arcade action game. Disembark on 
inviting planets — a different adventure awaits on each 
planet. Designed for your puzzle solving imellect en- 
hanced by arcade action for excitement 

43568 32K Tape or 43579 32K Disk $29.95 

MY SPELLING 




byfiJP. Casper from APX 



Paint landscapes by typing letters and spelling words. 
Non-readers can make pictures by touching any key. 
Young readers are ctiallenged to type a whole word and 
display fts picture. 4 levels, ages 3-1 0. Requires Atafi Ba- 
sic ; joystick opticnal, 

16K Tape or 24K Disk $29.95 



JUMPMAN 




by Rondy Giover tram Epyx 
New science fiction game! Jumpman must save all 30 
levels of Jupiter Headquarters. Scale ladders, girders and 
perilous ropes while fighting off demonic destroyers. Joy- 
stick controlled, 5 game variations, 8 speed, music, sound 
effects and graphics. The ultimate test of reflexes for 1-4 
players. 
41713 32K 
Disk $^!^i9f 
S31.96 20%OffTiJ 
July 10 



SURVIVOR 





by Richard Can from Synapse Software 
Fly your Starwedge Cruiser solo, with one or two gunners 
and/or a propulsion engineer, across a scrolling galaxy of 
danger and excitement. Only your skill can make you the 
Survivor. Requires joystick, 

27739 16K Tape or 34872 
16KDisk$3i^r95 $27.96 
33523 ROM Cartridge 
$44:t5 S35.96 
20%OffTilJuly10 



CLIPPER 




from Prograrn DQSign, Inc. 
Around the Horn in 1B50! Choose the vessel, cargo, crew 
and course. Use your skill to overcome storms, icebergs, 
illness, delays, doldrums, mutiny and more, Voice* 
narrated, high adventure requires joystick. 

32689 24K Tape $24.95 

32690 32K Disk S29.95 



MATHEMATIC- 
TAC-TOE 

by Nadav Cairjs from APX 
Offbeat way for kids 8 16 years old to practice computa- 
tional skills It provides addition, subtraction, multiplication 
and division drills on tS difficulty levels witrt tme limit 
ranges from 2 to 23 seconds. Two players compete to fill a 
tic-lac-toe row with correct solutions. 

2145216KTapeor 21463 24K Disk SI 5.95 



Over 2500 Programs for TRS-80, 



For Information Call 
202-363-9797 

Visit our other stores: 

829 Bethel Rd,. Columbus, OH 

Seven Corners Center, Fall Church. VA 

W. Bell Plaza, 6600 Seciihty Blvd., Baltimore, MD 

White Flint Mall, Hockville Pike. Rockville. MD 

Harvard Square. 13 Dunster St.. Cambridge, MA 

Westmoreland Mall, Rle. 30 East. Greensburg, PA 



ytM 



POKERSAM 




by Jerry White from Don 'tAsk 
This poker player can taikf POKERSAM narrates every 
hand, naming upturned cards, announcing bets and wise- i 
crackrng He's a real character with a gift tor gab! 

28336 Dtsk $24.95 

FINANCIAL WIZARD 

by Bill Mciachtin from Com pu tori 
Superb personal finance program with 26 expense 
categones- Stmple check entry and search by name, cate- 
gory, number or tax deduction Features cbeck balancer, 
prnting and audit Instructions on screen elJmtnates need 
for constant referral to manual, 
15118 24K Disk S59.95 




INSIDE ATARI BASIC 

by Sill Corris tram Restan 

A fast, fnendly approach by the training director of Atan 
Home Computers This workbook is an introduction to 
key concepts of BASIC 

37213 Softcover book $12.95 

COMPUTE'S FIRST BOOK 
OF ATARI GRAPHICS 

from Campufel 

Extensive capabilities are available with Atari graphics 
Games, tutonals. programs, and more, for the beginner 
to the most advanced ready to type right in and use! 

23746 Softcover Book $12.95 




•>. The \ 




^ 


Program \ 




y^ ^ 


Store V 


■^ 


j^Vj^ 


NOW OPEN.^ 


y 


^ ^^ 


in 


w 




Cambridge 


Ih 


pi2-. 


^^ i 


^s^ 


Harvard Square 






13 Dunster St. 


x^ 


x* 


^^ 



ATARI 400/800, APPLE, IBM & VIC 20. 



TH6/X I ^iM 
PROGRflm/rORE 

Franchise Openings 
Available in selected cities. 



To Order Call Toil-Free 
800-424-2738 

MAIL ORDERS: Send check or M.O. for total purchase price, 
plus $2.00 postage & handling, O.C. MD & VA: add sales tax. 
Charge cards. Include all embossed information. 



Coming soon to Philadelphia 
THE PROGRAM STORE * Dept. 10-07-3 * Box 9582 • 4200 Wisconsin Avenue, N.W. • Washington, D.C. 20016 



1983 The Program Store Inc. 
1 



1 Hem # Title 
i 



Tape/Dtsk/Rom/Book 



Price Postage 
Total 



$2.00 



Name .- 
Address _ 
City 



D CHECK n VISA 

D MASTERCARD Card # 

Com outer ^^^ ^^^" 400'800 unless otherwise Specified. 



State. 



.Zip_ 
.Exp. 




COMPUTE'S 

Author Guide 



Most of the following suggestions serve tti impixn-e 
the speed and accuracy of publication. COMPUTE! is 
primarily interested in new and timely articles on 
VIC, Apple, PET/CBM, Commodore 64, Atari, Timex/ 
Sinclair, T1/99-4A, and Radio Shack Color Computer. 
We are much more concerned with the content of an 
article than with its style. Above all, articles should be 
clear and well-explained. 

The guidelines below, will permit vourgood ideas 
and programs to be more easily edited and published: 

1. The upper left corner of the first page should 
contain your name, address, telephone number, and 
the date of submission. 

2. The following information should appear in the 
upper right corner of the first page. If your article is 
specifically directed to one make of computer, please 
state the brand name and, if applicable, the BASIC or 
ROM or DOS version(s) involved. In addition, please 
iiuiientc the njeiiiory tvquireineuts of pw^^rnins. 

3. The underlined title of the article should start 
about 2/3 of the way down the first page. 

4. Following pages should be typed normally, 
except that in the upper right corner there should be 
an abbreviation of the title, your last name, and the 
page number. For example: Memory Map/Smith/2. 

5. All lines within the text of the article must be 
double- or triple-spaced. A one-inch margin should be 
left at the right, left, top, and bottom of each page. No 
words should be divided at the ends of lines. And 
please do not justifv. Leave the lines ragged. 

6. Standard typing paper should be used (no 
erasable, onionskin, or other thin paper) and typing 
should be on one side of the paper only (upper- and 
lowercase). 

7. S h ee ts s h o u 1 d be a t ta ch e d tog e I h e r w i t h a p a pe r 
clip. Staples should not be used. 

8. If you are submitting more than one article, 
send each one in a separate mailer with its own tape or 
disk. 

9. Short programs (under 20 lines) can easily be 
included within the text. Longer programs should be 
separate listings. // is essentia! that we have a copy of the 
program, recorded Iwiee, on a tape or disk. Please use high 
quality 10 or 30 minute tapes with the program recorded 
on both sides. The tape or disk should be labeled with 
the author's name, the title of the article, and, if appli- 
cable, the BASIC/ROM/DOS version(s). Atari tapes 
should specif v whether they are to be LOADed or 
ENTERed. We prefer to receive Apple programs on 
disk rather than tape. On the other hand, tapes are 
preferred for the f^adio Shack computer. Tapes are 
fairly sturdy, but disks need to be enclosed within 
plastic or cardboard mailers (available at photography, 
stationery, or computer supply stores). 

It is far easier for others to type in your program if 
you use CHRS(X) values and TAB(X) or SPC(X) instead 



of cursor manipulations to format vour output. For 
five carriage returns, FOR 1 = 1 TO 5:PRINT:NEXT is 
far more "portable" to other computers with other 
BASICS and also easier to type in. And, instead of a 
dozen right-cursor symbols, why not simply use PRINT 
SPC(12)? A quick check through your program - 
making these substitutions- would be greatly ap~ 
p rec i a t e d b v y o u r e d i to r s a n d by v o lu' rea d e r s . 

10. A good general rule is to spell out the numbers 
zero through ten in your article and write higher num- 
bers as numerals (1024). The exceptions to this are: 
Figure 5, Table 3, TAB(4), etc. Within ordinarv text, 
how^ever, the zero through ten should appear as words, 
not numbers. Also, symbols and abbreviations should 
not be used within text: use "and" (not &), "reference" 
(not ref.), "through" (not thru). 

11. For greater claritv, use all capitals when re- 
ferring to keys (RETURN, TAB, ESC, SHIFT), BASIC 
words (LIST, RND, GOTO), and three languages 
(BASIC, APL, PILOT). Headlines and subheads 
should, however, be initial caps only, and emphasized 
words are not capitalized. It you wish to emphasize, 
underline the word and it will be italicized during 
typesetting. 

12. Articles can be of any length - from a single-line 
routine to a multi-issue series. The average article is 
about four to eight double-spaced, tvped pages. 

13. If you want to include photographs, they 
should be either 5x7, black and white glossies or color 
slides. 

14. We do not consider articles which are submitted 
simultaneously to other publishers. If you wish to 
send an article to another magazine for consideration, 
please do not submit it to us. 

15. COMPUTE! pays between S5U and S600 for 
published articles. In general, the rate reflects the 
length of the article. Payment is made upon accept- 
ance of an article. Following submission (Editorial 
Department, COMPUTES Magazine, P.O. Box 5406, 
GreensLxiro, NC 27403) it will take from four to eight 
weeks for us to reply. If your work is accepted, you 
will be notified by a letter which will include a contract 
for you to sign and return. Rejected uiaiiitscripts are re- 
turned io authors who enclose an SA5E. 

16. If your article is accepted and you have since 
made improvements to the program, please submit an 
entirely new tape or disk and a new copy of the article 
reflecting the update. We cannt^t easilv make revisions 
to programs and articles. It is necessary that you send 
the revised version as if it were a new submission en- 
tirely, but be sure to indicate that your submission is a 
revised version by w^riting ''Revision" on tiie envelope 
and the article. 

17. COMPUTE! does not accept unsolicited product 
reviews. If you are interested in serving on our panel of 
reviewers, contact the Review Coordinator for details. 



PRODUCTS FOR ATARI* 400/800 
FROM ELCOMP 



I BOOKS for ATARI Computers 

JATARlSAStC- Uearnmg by Using 

I An excellent traok for the beginner. Many short program? 

I and learning exercises. Alt irnportant features of the ATARI 

I computers are ciescribe<l (screen drawings, special sounds, 

I keys, paddles, joysticks, specialized screen rnutincs, gr^iphics. 

I suund (ipplicijtjcns, pc«ks, pokes, ^nd spi^clal stuff I. Also 

I suc}gestion& are made that challenge you to change and write 

I progfam routines. 

I Older #164 B7.95 

I Gannss for the ATARI Computer 

I This book describes advanced programming techniques lik« 

I player -miss tie -graphics and use of the hardware-registers. 

I Contains many ready to fun programs in BASIC and one 

I called GUN FIG NT in machine language. 

I Order #162 S7.B5 




How to program your ATARI in 6502 Mac h. Lang. 

ihe BASiC programmer I 
S9.95 I 



Introduction to machrne language for 

Order #169 



FORTH on the ATARI - Learning by Using 

Introduction, prortrams. applications, learning exercises. 
Order #170 S7.9S I 




^ "^ .. 



A Look into the Future - ASTROLOGY 

on your ATARI 800, 

How to calculate your own horoscope. 

Orcfer#171 



$9.95 





Our catalog is free with every order. Send $1.00 and 
SASE for catalog only. 



SUPERMAIL 

[&D0 addr. an 1 diskj 
1 Completely written in 
J FOHTH, Comes on autoboot 
I disk. No cartridge, no DOS, 
j no FORTH Language re- 
I quired! 

Order#7312 £49.00 

SUPERINVENTORY 

(1000 terms per dtsk} 
Completely v^ritten in 
I FORTH. Same as above. 
(Disk only) 
Order#7320 $49.00 

BUSIPACK-1 

(wHtten in FORTH). Com- 
I piflte order entry, inventory, 
I mailing and invoicing. 

{Disk onlyl 

Order #7313 $98.00 




ATAMEMO 

Databiock to keep track of | 
your appointments. iD+C| 
Order #7310 $29.95 | 

ATCASH 

Convert your ATARI BOO I 

into a powerful cash register, f 

(Disk only) 

Order #7307 S49.95 I 

Invoicmg progr. i. BASIC I 
Order #7201 (C ) $29.95 | 
Order #720O{DJ £39.95 I 
Mailing List in BASIC 
Order #721 2(C) $19,95 I 
Order #7213(0) $24.95 I 

Inventory control 

BASIC 

Order #7214 (C) $19.95 I 

Order #7215 ID} $24.95 



Micmcomputflr Hardwar« 
Handbook (B'lfiDagesy 
Descriptions, pinouts and 
specifications of the 
most popLiiar micropro- 
cessors and suppor- 
ctitps. 

A MUST for the hard- 
ware buff. 



Ofder-No. 29 

$14.96 I 



i^ 



Payment; check, nnoney order, VISA, MASTER- 
CHARGE, EuToscheck. 

Orders from outside USA; add 15% shipping. CA 
residents add 6.5% tax 

'ATARJ is a reaistered trademark of ATARI tnc, 
d trademark of Commodore 



SOFTWARE IN MACHINE LANGUAGE for ATARJ j 
ATM0NA*1 I 

This is a machine language monitor that provides you 
with the most important commands for programming 
in machine-language. Disassemble, dump {hex and 
ASCIU, change memory location, block transfer, fill 
rrtemory block, save and load machine-language pro- 
grams, sitart programs. Printer option vta three 
different interfaces. 

Order #7022 cassette version SI 9. 95 

Order #7023 disk version S24.95 

Order #7024 cartrtdga version S59,00 

ATMONA-2 

This is a tracer (debugger) that lets you explore the | 
ATARI RAM/ROM area. You can stop at previously 
selected address, opcode, or operand. Also very 
valuable in understanding the microprocessor. At 
each stop, all registers of the CPU may be changed. 
Includes ATMONA-1. 

Order#7049 cajsetteversion 849,95 

Order #7050 disk version $54.00 

ATMAS 

Macro-Assembler for ATARI-800/48k. One of the 
most powerful editor assemblers on the market. 
Versatile editor with scrolling. Up to 17k of source- 
Code. Very fast, transfates 5k source<:ode in about 5 
seconds. Source code can be saved on disk or cassette. 
(Includes ATMONA-1) 

Order # 7099 disk version Sfi9.00 

rder #7999 t:a rtr i dge versio n Si 29 . 00 

ATAS 

Same as ATMAS but without macro-capabflity, 
I Cassette-based. 
Order #7098 32k RAM 849.95 

Order #7998 48k RAM S49.95 

I ATEXT-1 

This wordprocessor is an e?<cellent buy for your 

I money. It features screen oriented editing, scrolling, 

I string search (even nested), left and right margin 

I justification. Over 30 commands. Text can be saved 

on disk or cassette, 

Order#7210 cassetteversion 829.95 

Order #7216 disk version S34.95 

Order #7217 cartridge version $69.00 

GUNFIGHT 

Tfiisgame (8k machine-language) needs two joystieks. 
Animation and sound. Two cowboys fight against 
each other. Comes on a bootable cassette. 
I Order #7207 $19.95 



FORTH for the ATARI 



FORTH from Elcomp Publishing, Inc. is an extended 
Fig -Forth -version. Editor and I/O package included. 
Utility package includes decompiler, sector copy, Hex- 
dump (ASCII), ATARI Filehandllng, total graphic 
and sound, joystick program and player missile. 
Extremely powerful! 

Order #7055 disk $39.95 

Floatir>g point package with trigonometric functions 
(0-900). 

Order #7230 disk $29.95 

Learn-FORTH from Elcomp Publishing, Ir^c. 
A subset of Fig-Forth for the beginner. On disk 
132k RAM) or on cassette (16k RAM). 
Order #7053 $19.95 



Expansion boards for the APPLE II 



Th« Cuttom Appli + Otii*r Mytfer1«j 
A complete guide to customizing the 
Appfe Software und Hardvvare 
Order-No, 68d SZ4.95 

We also stock the boards which are 
used in the book "The Custom 
Appfe ■■ [bciretwrdsi 

66a2l/O&o*rdWo.605 S39.00 

EPROMBurnerNo.607 $49.00 

8K EPROM/R AM 8oard 

No. 609 S29.00 

Prototypiing board for the 
Applall No. 604 S79.00 

SJot rspeater board for the Apple II No. 606 849,00 

Onier !vvs boaras and get the uook free ! 







Care and feeding of the Commodore PET 
Eight chapters exploring PET hardware. Includes 
repair and interfacing information. Programming 
tricks and schematics, 
I Order #150 89.96 



ELCOMP PUBLISHING, INC 

, 53 Redrock Lane 

Pomona, CA 91766 

Phone:(714)623 8314 



ATARI 

VIC-20 

0S( 

SINCLAIR 

TIMEX 



Hardware - ADD-ONS for ATARI 

[PRINTER INTERFACE 

I This construction article comes with printed circuit 
] board and software. You can use the EPSON printer 
I without the ATARI printer interface. (Works with 
I gameports3 and 4). 

I Order #7211 $19.95 

I RS-232 Interface for your ATARI 400/800 
I Software with connector and construction article. 
Order #7291 $19.95 

EPROM BURNER for ATARJ 400/800 
I Works with gameports. No additional power supply 
I needed. Comes compl. assembled with software 
1(2716,2732.2532). 

I Order #7042 $179,00 

1 EPROM BURNER for ATAR] 400/800 KIT 
J Printed circuit board inci. Software and extensive i 
I construction article. 
I Order #7292 849.00 

I EPROM BOARD (CARTRIDGE) 

I Holds two 4k EPROMs (2532). EPROMs not included. 
I Order #7043 829.96 




j EPROM BOARD KIT 

I Same as above but bare board only with description. | 
I Order #7224 814.95 



ATARI, VIC-20, Sinclair Timex and OSI 



NEW - for your ATAR 1 400/800 

I Aatmlogy and Biarhythm for ATAR! (cass or disfc} 

I Ortter-No. 7223 £29.95 | 

th control 'TJiih the ATARI iKnaus Ogino} 
I Order-Nci. 7222 cass. Of disk E29.95 I 

I Books + Software for VIC-20 {requires 3KRAM Exp.) I 
I No. 4870 Wordprocessor for VI C-20, 8 K R AM Si 9.95 f 

I No. 4883 MaiJing List for VIC-20, t6K RAM 614,95 

I No. 176 Tricks for VI Cs (book, 115 pages) $ 9.95 | 
1 INPUT/OUTPUT Progmmming 

I with vour VIC. No, 4B86 S9.95 







No. 43S6 


^^H 


TenntJ, Squash, Break. 




No. 4881 


E9.9S HB 


Runfill for VIC, No. 4894 


89.95 W^^S 


TICTACVIC, NO.48S0 


S9.35 ^^^^ 


GAMPEPACK i (3 Gameis) 




No. 4881 


El 4.95 ^^^9 



I Dual Joystick tnsir. No.48a5 £9.95 

I Progr. in 8502 Machine Language on your PET^-CBMI 

I 2 complete Editor/ Assemblers (Source code 3 hex- 1 

I dump + description plus a powerful machine language I 

I monitor (Hexdumpj. Order-No. 166 $19.95 f 

I Universal Experimenter Board for the VIC-20 

I (Save money with this great board). This board plugs | 

I right into the expansion slot of the V IC-20. 

I Order #4844 $18.95 | 

1 Software for SINCLAIR ZX-81 and TIMEX 1000 

I #2399 Machine Language Monitor S9,95| 

I #2398 Mailing List S19.95I 

I Programming rn BASIC and machine language with I 

I the ZX-81 (82) or TIMEX 1000. 

I Order-No. 174 (book) S 9.95 

BOOKS FOR OSI 
I No. 157 1. Book of Ohio £7.95 
I No- 158 2. Book of Ohio S7.95 
I No. 1 59 3, Book of Ohio S7.95 
I No. 160 4, Book of Ohio £7.95 

I No. 161 5. Book of Ohio $7.95 

I #151 8K Microsoft BASIC Ref. Man. g9.95| 

I # 1 52 Expansion Handbook for 6502 and 6802 39.95 1 
I # 1 53 Microcomputer Appl. Notes S9.95 1 

I Complex Sound Generation 

I New revised applications manual for the Texas I 
1 Instruments SN 76477 Complex Sound Generator, I 
I Order #154 86.95 | 

I Small Business Programs Order # 1 56 
I Complete listings for the business user. Inventory,! 
Invoice Writing, Mailing List and much more, Intro- f 
I duction to Business Applications. 814.90 1 




computer mail order 



^i:ilfMTER8 

BMITH COROMA 

C*»l on tSO 00 1=»ciOf> H*b*1** 
TCI S4fl»00 

Titctor F*«cl 1 1^9.00 

UttrBKontc I TrP*wfi1«r S430.0O 

C.ITaH[TEC] 

GX'lOO ,,..,... - .,.S209.0O 

Prowrilar S510P t3Td,00 

Prowr<1*f aSIOS SST9.00 

PfOwfil*M5*0P (evil 00 

PrownUf IS50S I74« 00 

St«nwMi«r F 10-40 *1 33^900 

Printmatiar F10-S&. .»1 04900 

OKI OAT A 

B2A CALL 

83A CALL 

B4{P»r«ri«l| . CALL 

B*(S»fi«l) CALL 

91 CALL 

91 CALL 

IDB 
MicroPrum Ift49 00 

113 iFulty Con)i(|ur*0| tl599.00 

eO{Fullif Configur»d| •1399.00 

Caill lar olh«r conftguratlont 
BTAR 

G*min> 10 ,-., , ,»349 OO 

G«mmi 1i »,..... S4«» OO 

S«^i«l eo*fd 17^00 

DAiBv^mreR 

3000 tL«n*r Oy*lity) Si 049 00 

TrBctor F*»d .. . 1109.00 

OIABI-O 

H70 1999. OO 

«30 S1T«goo 



©Tel^ideo 




TEnMINAl.a 

910 -- tSSB.OO 

912C tftVO OO 

020C ..tT39 00 

92SC STiaoo 

9^ 192g OO 

COMPUTERS 
aOOA tt2S»00 

BO? (3649 00 

S02M S4ft0SOO 

BOe/20 . .......... ....S4D49.00 

816/40 uota 00 

eo3 sii^e.oQ 

ie03G tSSflOOO 

1»03 CALL 

SEC 

COM^UTERfl 

6OO0 --. , CALL 

8001 A , , *r 1 9 OO 

a031 -. 1719 00 

aoii *S49 OO 

PRINTCPB 

a023 M19 00 

7710^7 7JO , .•3349 DO 

3510/353O...... .,..,.»1S49 OO 

MONITORB 

JB 12flO *119 OO 

JB'iaOl . t14D OO 

jc-iata ...*2B9oo 

jct 3-303 ....taoa 00 

JC*ia03 *»89 00 




Call on Eagle 8 Bit A 16 Oil 
Compulors4 Software 

MODEMS 

HAYEB 

Smift , 8219O0 

Smart 1300 t1 300 Baud) . . 1549 00 

Chronograph. 1199.00 

MtCfomodam 100 1309.00 

Mtcrofnodam tl . , S379 00 

Microri^odam M(with t*rm} . $299 00 

Smart Com II S9g.00 

NOVATION 

JCat „..,...-. »1 19-00 

Cat ..,„ (144.00 

O'Cat »t 59.00 

t03 Smart Cat 1189 00 

Afipta C al II (779-00 

t03/31 3 Smari Cal »<*39 00 

2t2ApplaCatll («09-00 

ApplaCal I) 21 2 Upqrada- - - - $30900 
ANCHOR 

Mark I lRS-232) .$79.00 

Marit II (Alan) $79.00 

M*r1( IIMT.I -99) ..(109.00 

Mark IV{CeUPET| ..(125.00 

Mark V (Oaborn*! $95.00 

Mark VI |1BM PCI $179 00 

Mafk VII lAuto Ana./Auto DuUi ... $ It 9-0O 

TRSSO Coloi Compula* $99.00 

9 Votl Powar Supply $9.00 

Mark Vllt .CALL 

MOfSirTOF^S 

AMOEK 

300G $15900 

3O0A $18900 

310G $17900 

310A .. , $189-00 

Color I $299 00 

Colarll - $599 00 

ColorNA $799 OO 

Colorlll $349 00 

■MC 
13AU13 GrHi% (79 g9 

1401 13 ColorlMtd-nai} (389 00 
9191 U t3-- Compoiil* $329.00 

TAXAf^J 
nee 1 {NrRas} $299 00 

RGB IN (499 OO 

t2MCrHrt $11900 

13 A Ambar .$12»00 

ZSNITH 

ZVM 121 (95,00 

ZT % Tarmmat $389.00 

U.S.I, 

Pi 1. 9"Gr«n $99 OO 

Pi 3, 13"GrMrt . 1119 00 

Pi 3. 13 Amt>ar $159 00 

Pi4,9"Amb«r $139 00 

1400C r4ColOf $399 00 



PANASONIC 

jmOOil 32K Pwm- Ccmptrtar . . . $309.00 

MONITORB 

TR 13012-HlR«aGf*M .$159.00 
CT-1 eo 1 0^ Oua^ Motto Co4ar ... 1290.00 

DT DIOOO 10" RGB $349 00 

OTD1300 ia"RQaA>j*«poa. $439.00 



NEC 






SBSO PRINTER.. 


SI 5^9 


PE RC O M/TAN D O iVI 




DPIVCB 




5% ieOKDi»»iOri*a 


$349 00 


5% 370K D^ik Driva 


$299 00 




AMD6K 




310A Amba 


Monitor . , 


. $1flB 00 


310G Gmn 


Monitor 


$179 00 


Amdtait (3V. 


'Dft«> 


...$879.00 


XV Plall«r . 




...$649 00 


Color M,... 




..$599 00 



Combo Card 84K 1429 00 

aUBIE 

PC Kaytoaard (219 00 

SOFT^WAPE 
Micn?Pro Wo^QSttr/MailMarea - $349 00 
I US. Eaaywritaf II.. . ..... $240,00 

I US Eatrtpallar (1 29.00 

PMchPackaoafGUAf'/ARll (419 00 

PPOfSEBSIOPJAL 

BOFT^/APE 

IBM PC WordProcaiiina S319 00 

CONTINENTAL 

SOFTWARE 

TiiCJaitMiil'Form tartar (89 00 

ThaHomaAccounlanrPlum .,$109.00 

BYNAPBE 
Fila Mmagsr 1119 OO 



Privacod* Phona . 



$2 39 DO 



REAOY FORMS 

t o^' AddrwM Lab^afTrKf Fa«f) ,(9.95 
iSRaportPsparfTrKt F#«f) (24 95 
BTBlnkWrnPiparrrrvct Fa*<!f| $19 95 
8-1 Birih ErtMTracI Fa«d) $M95 



BAfMYO 

MBlOOOComputaf (1599 00 

INC LUOES FREE SOFTWARE' 

MicroPro, WordStar. Catcitar. 

Mill M*rga $ Rapon ^lar 

MB leOAddori Ori«« $539 00 

*S00Lart*rOuiiityPrini«r $899 00 



TliVlEX 

SINCLAIR 

iOQO 




S3S.S5 

1 eK Mamory Modu»a $44 .95 

VuCalc .. $17,95 

Chaeh Baoh Man«9«r ( 1 3-95 

ThaOrgannar....... ....•14.95 

Tha Budgalar.. .....$13 95 

Slock Option $14 93 

LoanAMortu»g«Amor1i»r . ,(12,B5 

Mindwar* Frinttr (t09 00 

OPBVTK SOFTWARE 

Graphkca $12.99 

Mom* Budgaivr .......,......$ 1 3-99 

Horn* Invantory $13-99 

Incoma Tai $1 4. 99 

Mt^aMlnd .. $15.99 

Salvo . , $1 3 ,99 

TftaQuix ....§13 99 

Wordi 812.99 



^S commodore 



1 530 Cotor Pftntar/Plonar . (1 8900 
1 33 5 BO Colum n PrI mar - - - - $330-00 

1 530 Dalaaatia $89.00 

1 541 Sln^l* Oltk Dnir* (338.00 

leOO VIC Modam $95.00 

1810 VtC Tarm 40 $49.00 

105O AD/AA Modam... $159.00 

1701 14" Co^Or Monitor ., .,(389-00 

1311 Joytlicki laactil $5.99 

1312 Paddla* (It .99 

tno VIC en $43.00 

nil VIC t«K $89.00 

1011 RSZ32 Intarfac* $43.00 

1 2 1 1 Su p4r E Jipandar S53.00 

190eSupar Allan .-. $33 00 

1 910 Radaf Ral Rac* $23.00 

1 91 7 VooDoo Catlia $29.00 

1 932 Co>mlE Crur^char $35.00 

1923 Gort $39.00 

1934 Om»9a Rac* $30 OO 

1 1 VC 20 R*f*r«nca Cuid* - . $1 5.00 

CBM 84 RararancaGuid«....$18.0O 

EASY BUSINESS 

BEPIES B4 

EaiT Fiia.. $79.00 

Eaay Finane*,. ., $39,00 

Eaiy MatI $39.00 

Eamy Scrtpt .$79.00 

Vi^ord Macttirw/Ham* MH:htn*- - $3 3 00 

PPOORAMMER 

SERIES B<4 

Aaaamblar . .. $39.00 

L090. , $79. 00 

Ptiot .....-..$79.00 

Pal Emulator -(35-00 

Scr*ark Editor $33.00 

Vtdao/Mumie Support $3900 

ART ANO MUBIC 
SEPtES 8<4 

Muiic Machina. - - . . - $25. OO 

Munc Comp«aaf .. $35-0O 

Mata Muaicl $7900 

COMMEPCIAI. OATA 

Motor Mouia/30 $23.00 

C*ntipod«/aO ....... ,,(33-0O 

Fr099*«/30 $23. CK) 

FroggWW- - $2300 

CREATIVE BOFT^IVAPE 

Aitro B lltj - - $33-00 

Black Mola., $32.00 

Tra>hmtn $32.O0 

Noma Financ* ..$27.00 

Homa InvaintOfy ..$13.00 

UMl 

Amok ....,„.... .„,.,... $30-00 

MvlaorRun .$40. 00 

Allan Blltx $30. 00 

Vnarm A .(18.00 

Tha Allan ...,...$ie.00 




CBM 64 

ssee 
VIC eo 

40a4 , (589.00 

13S40 .,......, $849. 00 

laaao (749.00 

8032 $1039.00 

4032 ....(739.00 

8098 Upgrsda Kit $380.00 

9000 ,...,.... $149*00 

2031 $449.00 

4O40 ...,..„............$949,00 

8050 $1379-00 

8250 , $1839.00 

9O80 (5 Mag. HD) $1 999-00 

9000 (7. 5 Mas. HD) $31 99.00 

4022 $3a».00 

8023 $5*9.00 

8400 Lattar Quality Ptlntaf . . ..CALL 

Sp*ll Maaivr ^tgft.OO 

Z Ram addtCP/M'$S4K.... $549.00 

Silicon OWIca $749.00 

Calc Raiuti $159.00 

ThaMana9*r SXOO.OO 

Tha Soft Rom tl3ft.00 

Jinaam CALL 

ADA 1 eOO CBM ID Pari I nt . $89 .OO 
ADA l450CBMtoS*ri«ltnt,. (99-00 

PPOFESSIONAL 
BOFTVuTARE 

Powar (79.00 

InroPro *319.0O 

word Pro 2 Plit*.. $159.00 

Word Pro 3 Plut. .. $1 99.DO 

word Pro 4 Plut ....$299.00 

Word ProSPlua $299.00 

Ad mlniatator ................$379.00 

Word Pro 84.......... $79.95 



VIC BCVCBM B4 

Light Pan $32 OO 

Cafialt* Iniartaca - - $39.00 

Parallal Priniar Iniartaca $84-00 

351o< Ecpafttlmatteoaf 20 ortM. .-$32.00 
8SIOI Exparw.Maftac«<30ori If} ..$79.00 



5hamua(R0M| (39-00 

Protactor | ROM J (32.00 

Robot Panic (ROM» $30.00 

Rlritaa (ROM) $39.00 

HESWritar (ROM).... ....... .$39. 00 

Call on our Large Selection of 
VIC 20 & CBM 64 Software, such as: 

EPYXj Microspec and Kanaas Cit:y 
Soft:M/are. 





PC-1 BOO 
POCKET COMPUTER 

PC 1 eoo. . . . saB,oo 



CE1 50 Pririiar, Plottar and 

Cataatt* Jnlarfaca Unit $1 T3.00 

CE 1 52 Cai»atta Racordar . . . (83.0O 
C E 1 55 SK Ham E Mj>an«. Mod- . .. $94.0O 
CE125 Print af /Micro Caat. . .(129.00 
Statiatlca Pack $49.00 



comput;er mail order w/est 

800-64B-33H 

IN PA. CALL (71'7)3C7-e676 
□ EPT. 708, -*77 E. THIPO ST., WILLIAMBPORT. RA 1 7701 

No risk, no deposit on C.O.D. orders. Pre-paid orders receive free shipping wittiin the UPS Continentai United States with no waiting period for certified 
checks or money orders. Add 3% (minimurn $3.00) shipping and handJing on ail C.0.0. and credit card orders. Larger shipments may require additional 
charges. NVand PA residents add salestax. Ail items subject to avaijabitity and price change, notei We stock manufacturer's and third party software for 
most ali computers on the market. Call today for our new cataiog. 



computer mail order 



F 



FRANKLIN 





Call forpHCB and information 

on !h« NEW FRANKLIN 

Computers! 

Disk Drives, Software and 

System Specials 

ALSO AVAILABLE! 



MICRO-BCI 

QiBK onivEa Fon 

APPI_E & FHANKIN 

A2 , »249.00 

MO... t34fl.0O 

ATO..... ....$49«.0O 

CaContioll*r......... ...tTfl.OO 

C47 Cantroriar .Mft,00 



RANA QISK OmVEB 

EJIt* I plutlAppl«/FTanklln)...CALL 
1O00 (Alari) CALL 



SYS COM 

^8K Colai* Computsr 
APPLE COMPATIBLE 

5533. 



VIBICORP 
for ApplvJBM & Franklin 

vtkM*« ....... — stavoo 

viiirii*...... tiae.oo 

Vltiplal tlfW oo 

Vlkttsrm »aft,00 

V*.ttr*iMf/Pfot »270 DO 

Viit5ch*dul« ta2».00 

0«Bktop Plio » I as oo 

Vimlc«Va|App««ll,CBM,lBM} .t179.0O 
Vitic^rp ptiOM tw I e M m*T vary •ligKtry . 

BRODEf^BUNCl 

Appl« Panic ... S73.0O 

Dȴi(J'i Mi9)C *27.00 

Star Bitzar .»J5,00 

Arcada Machma ,,t34.0O 

ChopliHar M7.00 

Sarpantln* . - - - , 127 .00 

INFOCOM 
DaadlinalAppla.iaif .AtBfi). . .t35.00 

Star Cm** ,S2» OO 

Zofh I, It OF 111 f29.0O 

MFC 
BuMiait ( 1 2aK Non Volnara) . . . «fl4 9 .00 

AXLON 

Apple/ F^ankJ in 1 7aK Ram . 1399 OO 

Appla/Franktlin nam DtmK . . 1999.00 

KFtAFT 

Appla JoyalicM t44.00 

CONTINENTAL 

eOFT^A/A»E 

TaKAttnnla^fApfilaMUri). . MSOO 

Horn* Accnl (AppWAtari|. .S59,O0 

1 M CI . UmVform La«tw^Appla|f . . , t79 00 

T>a BooWof Appla »14 95 

Th a Book of Atari •1495 

Ttia BoAk of ApptaCrapAict ... tt 4 95 



DIBKOntVEBFORATAnl 

ATSa-SI ..,.*399.00 

ATBa-AI ,..,, »299.0O 

ATBasa...,. .,..*«49,0O 

IIFD40'ST .,,...,,..........»549.0O 

RFO 40-A1 *349.0Q 

RF0 40Sa *e69 OO 

RF0 44S1 ....»U7a OO 

RF044Sa ,. *999 OO 

FLOPPY DISKS 

tWlAMELt- 

MOtlBoi oMO) ..*32.00 

MD)l(Bo)i Of lOf..... S44,00 

FD I IB'J $40.00 

FD 11(6' DD) *50.00 

VenBATUM 
SV.'SSOD ,.f2fl.0O 

57/' OS DO ....sae.oo 

ELEPHANT 

5V/SSSD ...,*ie.9fl 

SV/SSOD *a4.ft9 

5V*"OS DO §39.99 

HBAO 
Oitk Haact Claanar S1 4 95 

aiRlUB 

BandiU I Applai t2S.OO 

Baar Run (Appla) S24.00 

Fraa Fall | Applal t24.00 

Snaakari (Appl*t S24.0O 

Snaka B.rta (Appt*) 124. OO 

Fatt Eddia {Alart) .*2t OO 

Turmoil (Alari| *21 00 

Daadir Duck (VIC) .....,,.,,. .*at OO 



INXeRFACES S. 
ACCESSORIES 

BOCalumn Appla Card t1S9.D0 

Appla Para). Pnniaf Iniartaca , . . 16900 
Man 850 Id P»ral, PnrrtarCati»a . t29.00 

RS232 RS23a Cablai t29.0O 

CantrorucaPanM Pvad.CabiM . S29.00 
Call on IBM. Q»borna, Daitywntar, 
Atan, CommHtor*. Appla and Fnnklm 
intartaoa Ca»la. CabiM artd Accaataonaa. 



HEWLETT 
PACKARD 



L*ei 



-311 CV 






HP75...S749. 

MP41C «t49 00 

MP IOC 159.00 

MPI1C . 172 OO 

MPUG 999.00 

MP ISC 199.00 

MPieC ., S99.O0 

^Di- MP<4iy41 CV 

HPtLModul* ....»9fl.00 

H PIL Cattatia or Pnntmr. . . . S159.00 

Card Raadar S144.0O 

E<tand*d Funatona (Aodula. . . 104.00 

TIma Modula... 1*4.00 

Mattimal^ca PK 126.90 

Raal Eaiata P*e 140.00 




HOME COMPUTERS 



ATARI BOO 
48 K 



Reflects SI 00.00 ATARI Rebate 



ATARI BOO--1 6K~| 
$199. 




S10 Oltk Dd«a 1429.00 

Inhoma Kayboard/Aurl 400. . faP.OO 

101 Program R*cord*f 174,00 

1 020 40Co!umri Prints Plot... *M9.00 
1025 eo Column Prlntar. .. .1469.00 
1 027 Lattar Quality Printar . . 1299.00 
1 0SO Doubia Danstty Drlva. .. 1379.00 

830 Acoutt^c Modam ..,1159.00 

aSO Intarfaca Modula 11S9.00 

CK40 Pair JoyiticKa $ 1 fl.OO 

CX41 S Moma Minaear Kit . . .*«9.DO 

C}(41 9 Bookkaapar Kit 1195.00 

CX4a2 Educator Kit 1129-0O 

CX463 Program mar Kit 154.00 

CX4eaCommu'nicalar Kit . . . 1229. OO 

C X7 » D1 Entartainar K« 109 OO 

Invitation to Programming I ., ,118.00 
Invitation to Prosramml noil., ,120.00 
Invitattor^ to Programmifig US 120.00 

4002 Batic Languaga. 142.00 

4003 Attamblar Editor 147.00 

ai2l Micro Aaaamblar 169.00 

812fi Micro Soft 189.00 

405 Pilot |Edu.) 110500 

401B Pilot (Moma) ....$72.00 

6038 Atari Writar.. ,,,,., ,179.00 

404 Word Procasaof 11 1 9.00 

5059 Vlaicalc .1159.00 

ATARI 

Pacman ....133.00 

Cantipada ...... 133. 00 

Dafandar,....,.. 133.00 

Cplaiian ...133.00 

MimatI* Command...,,.,..... 129 OO 

Star Ratdara 133. OO 

Cavarrm of Mara . . 132. OO 

Oig Duo. 133. OO 

Oankay Kpng.. CALL 

ET. Phona Homa...... .139.00 

Eaatarn Ffont (1941). 139,00 

Q«X .......133-00 

Suparman 111 .,.,...139. OO 

Star Tru* 133 .OO 

Amiaroida 129.00 

Batkatljall .,...., 129.00 

Computar Ctiatl .129.00 

Jugglaa Houta $23. OQ 

My l^irat Alphabet 129. OO 

APX 

Taut Farmatlar 11 a.50 

Fami ly Budgatat , , . . .11 8.50 

Eaatarn Front 134 OO 

Family Caah ,.......$18.50 

JgkaljO*.. .113.50 

OownhJil ....,, ,,...$18.50 

Outlaw $1t.S0 

Holy Grail ., 124.00 

Playa* Piano ...,..,......$18.50 

KaytJoard Organ 11 B.SO 

NumtMr Blast .11 3. SO 

Frogmaitar ........ .......118 50 

747 LandS4mulalar..........l18 50 

Bumpar Pool 113 50 



ON-LINE 

Jawt^raakar $27, OO 

Softporn $27 ,0O 

Wizard and PrincaaK ........ .$29. OO 

Tha Nail Stap .,.$34.00 

MiiBion Aitaroid 122. OO 

Mouikaiuck .,..$31.00 

Froggar . . . . , .,...„,.. 13 1 ,00 

CroiiF.ra(ROMj 136 OO 

Soma ON-LINE Products ar« alio 
avadabia lor Appla* IBM. 
Call for informalfOnl 
aVNAPBE 

r^ila Managar 80O plus 169. OO 

ChiCharr (ROM) 134. OO 

P<cnie P«»aaoi* IftOMj 134 OO 

Claim Jumpar (ROW| 134. OO 

Shina (ROM) ....... 134 OO 

Shamus |ROM( , $34 00 

Pfotactor (ROM) 134 00 

Dodga RacBr(C/D) ....$26.00 

Nauttlu* (CD) . . . . , 126.00 

Shadow World (C/Ot 126. 00 

Survivor (C/0) 126 00 

Dralbs(C/0) $26.00 

*<acromancar (C/Ol . 128 00 

PTiaroh'a Curaa (C/D) 128 OO 

Fort Apocolypaa lC/0( $26 ,0O 

P*9«6 '■ 11900 

Ataambtar - $30 00 

Disk Managar 124.00 

OATABOFT 

Pacific Coast Highway $35. OO 

Canyon Climbar 125. OO 

Tumbia Bugs 125,00 

Shttoling Arcada $25,00 

Ctowna and Ballooni , 12500 

Graphic Maalar., ,.. $3O.O0 

Graphic Gartafatar $ 1 3.00 

Micfo Painlar .125,00 

Tait Wdard.,..,.... $79,00 

Spall Wliard,..., $64,00 

Bishop's S<)iia» 125.00 

Sand* 01 Egypt $25.00 

Moon Shunt* $35.00 

zaviof> .laa.oo 

ALIEN 

Atari Volca Bdk ....$1l9.0O 

Appi* Voica Boi lt4g.0O 

MKMonv 

Aalon 32K Ham $89,00 

Aslon4aK Ram 1139,00 

AMion 128K Ram 1399 00 

Inlac 32K Boafd 174,00 

tiitac 48K Board 199 OO 

Inlac 64K Board (400 only) . It 49,00 
WICO 

JOT*t*cfc $24 95 

Famous Rad Ball 128 95 

Appla Trackball ...,,, .159,00 

AtarlA/IC Trackball $55,00 

Appla Adaptor $16,00 



ATARI 400 
1BK.. ....... CALL 

3EK CALL- 

aSK CALL^^ 

e4K CALL.:=^; 

•^"^HonAiarl Ram 

caa 

K' raiy Shoni Out 132. OO 

Kraiy t<ritlara 132.00 

Krajy Arctic a $32. OO 

KittrPairol...... .,,,$32,00 

Stick Stand ., $5,99 

EPYX 
Crush, Crumbla A Chomp ...124.00 

Crypt of tha Undaad ,124,00 

Curia of Ra. 116.0O 

Oiiastonat A Ryn $16. OO 

Invasion Orion $19,00 

King Arthur's Hair . . . , . $24.00 

Morioc's Towar $16,00 

Raacuaataigal .124 OO 

Ricochal., 116 00 

Star Warrior 129. OO 

Tampla of Apshat ..129,00 

Uppar Raachas ot Apthai $1 6.00 

SPINNAKER 
Snoapar Troops a i 134.00 

Snoopar TrooiH « 2 $34,00 

Faca Makar ...$24 OO 

Story Maehlna ,124.00 

Dalta Drawing MSOO 

Rhymai ar^d RIddlas $21 .00 

Kindarcomp 121,00 

nOKLAN 
Wizard of Waf (ROM) , . . 134. OO 

Oalusa Invadar (ROM) 129. OO 

Gon(ROM) $34.00 

FIPBT BTAP 

Astro Chas* , ...$25,00 

BIO B 
Minar 49ar $35,00 i 

OAMEBTAP 

Bala Buggias 124.95 

Football 124.95 

Buooeco 

Raataf Blaslar .,,,,...., , .$24.95 

Lattar Paifact 40/aO Col , Olak . , $ t D9 .00 
L*ttafParfa<:t4OCo),IIOW...llT9.00 
Laitar Parfact 80Col. ROM .,, 11 79.00 
Oata PaffaCt40^80Col. Disk. . , 109.00 

Mall Marga 121.95 

CALL FORAPPLE/LJK PRODUCTS 

BIT 3 

BOCol Card for Atari aOO,, .$279,00 

tNTEC 
Hflj Time Clock 139 00 j 

We also stock software byi ! 
Adventure International, ! 
Ed LJ ware, Creative Soft- I 
ware, Doreett Educational, | 
9DSI, Romox and Artworx. 
Call for details and prices j 



comput;er mail order east 



ViSA' 



IN NV. CALL C70e}BB8-SeS4 
OEPT.70S, P.O. BOX BBSS, 8TATELINE, NV, 8S44S 

INTERNATIONAL OFIDERS; All Shipments outslde the Continental United States must be pre-paid by certified check or>ly.tnclude 3% (mintmum 
$3.00} shipping and handling, educational dibcounts: Additional discounts are available from both Computer Mail Order locations to qualified 
Educational Institutions, apo & fpoc Add minimum $5.00 shipping and handlir^g. 



Time Bomb 



Doug Smook 



This program is deccptiveh/ short - it is easili/ one of 
the best games we've ever seen for the VIC. You're in a 
maze, larger than your scree)} will sliozo. You nmst 
move through it, trying to defuse a ticking l)omb hiddejt 
somewJiere at the top of the puzzle. As you uwve, tlie 
screen will move, but you must learn from your mistakes 
or the ticking will grow uwre shrill until all is lost. For 
the unexpaiided VIC. 



You play 'Time Bomb" against the clock. You 
start at the bottom of a maze, which is about three 
times the size of the VlC's screen. At the top of 
the maze is a time bomb ticking away. The closer 
it gets to blowing up, the higher pitched the ticking 
becomes. If you reach the bomb, you must steer 
the pointer into it to defuse it. If you are successful, 
you have a go at the same maze, but with the 
bomb in a different place and with a shorter fuse. 
This continues until you run out of time. If you 
fail to defuse it, you get a new maze and a new 
bomb with a longer fuse. 

Friends I've played this with usually don't 
consider it a game for competition. Instead, they 
become back-seat drivers, telling the player where 
to go and pulling for him or her at every turn. 

Time Bomb is quite challenging to a player's 
memory of spatial relationships. People who are 
at first intimidated by seeing only a portion of the 
maze quickly become accustomed to thinking 
ahead and remembering the dead ends and clear 
paths through the maze. An ability to recall the 
good and bad moves is crucial to getting into the 
later rounds. 

I started thinking about this game when I 
saw Kenneth Szajda's "Mastermaze" (COMPUTE!, 
February 1983). I wanted to create something 
more challenging than a single screen maze, but I 
didn't want to duplicate his game and I also had 
to consider the VIC's smaller memory. I then hit 
onto the idea that makes this game so entertaining: 
to make the maze larger than the screen and bring 
it on and off the display by scrolling it out of a 
much larger block of memory. 

How The Idea Came 

It sounded great, but how would I do it? The secret 
lies in a short machine code routine that is "called" 
to update the display whenever the player goes 
up or down in the maze. It does this so quickly 
that I used the BASIC joystick routine from 

116 COMPirre* July 1983 



COMPUTEl's first Book of VIC just to keep things 
at a reasonable pace. 

There are actually three separate machine 
language routines that are represented by the 
DATA statements. One fills the maze area with 
the proper character, another fills the screen's 
"color RAM" with the proper color, and the third 




Searching for a time bomb, 

one scrolls the maze. I could have used BASIC 
POKEs to do all these things, but the time con- 
sumed would be too great. It would be impossible 
to use POKEs to do the scrolling of the maze with 
enough speed to be any fun at all. 

When typing in the program, be sure to SAVE 
it before you RUN it, since a typo in the DATA 
statements could cause you to lose the whole pro- 
gram. Be very careful as you enter the DATA state- 
ments. If you have a bug in the program, it is most 
likely in the DATA statements, so look there first. 

When you do RUN it, there will be a slight 
pause while the machine language parts are 
POKEd into the cassette buffer. Then the screen 
should clear, and the words "Making Maze" 
should appear. Because of the size of the maze, 
the VIC needs almost a minute to draw it, so be 
patient. When the maze is complete, a little musi- 
cal announcement alerts you to begin playing. 
Don't give up if you are eliminated on the first 
round; it takes a while to get used to looking ahead 
in the maze and planning your route. 

If you don't want to type in the program, I 
will make copies for the usual $3, a cassette, and 



RAMAX 



TM 



by APROPOS 



The UN LY MEMORY your VIC-20® will need 



FEATURES 



A full 27k bytes of RAM 
(added to VICs 5k 
equals 32k.) 

• Fully switchable in sections 

BLK1 switches 8k 

(Adr. 81 92 to 16383) 
BLK 2 switches 8k 

(Adr. 16384 to 24575) 
BLK 3 switches 8k 

(Adr. 24576 to 32767) 
BLK 5 allows/disallows your 

8k ROM (games) 

(Adr. 40960 to 491 52) 
RAM switches 3k (Adr. 1 024 to 4095) 
• May be used with Super Expander ^^ 
games or ANY other VIC-20 
compatible cartridge. 

• Built in RESET switch. 

• Fuse protected. 

• Totally self-contained. 

• 2 duplicate extension connectors for any device 
normally plugged into the expansion port. 
(BLK 5 is switched to connectors) 

• Very low power usage. (.1 50 amp max.) 

• High reliability gold plated connectors. 

• 6 month parts and labor warranty. 

• Factory service. - Extended service always available. 

THIS SUPERB PLUG-IN GIVES YOUR VIC-20 
REAL POWER AND EXPANDABILITY 

FOR ONLY $149100 shipping included 

1 DAY SATISFACTION OR YOUR MONEY BACK GUARANTEE 

WE ARE NOW OFFERING "RAMAX Jr." (1 9k), 

which is identical to RAMAX in EVERY way, except the 
top 8k (BLK 3) is not incorporated. Our introduction 
price is $1 29.00, shipping included. 

WE SERVICE WHAT WE SELL 

TO ORDER: 

Send Check or Money Order For the Total 

Calif, residents add 6% tax. 

Phone orders: CALL (805) 482-3604 24 HRS. 

For credit card orders, include all information on card. 

or contact your local dealer. 

l|^2 Foreign orders, add $1 5.00. f^g^\ 

All items shipped from stock. 
DEALER INQUIRIES WELCOME 




SOFTWARE 



DR. FLOYD 



■APROPOS TECHNOLOGY, 



Psychoanalysis by computer? — well, not quite, but Dr. Floyd will 
carry on a conversation with you using psychoanalytic techniques 
giving the appearance of artificial intelligence. Requires 16k RAM 
or more. 
$14.95 shipping included. 

WORD PLAY 

"WORDPLAY" is a collection of programs which allow the user to 
make origi nat stones , write a fomi of J apanese poetry , play the fun 
game of Animal (children love this one), and create jargon. A 
bonus secret message (cypher) program is also included, in a 
word, "WORDPLAY" is a bargain. 
Requires 1 6k RAM or more. 
$14.95 shipping included. 

TYPE FOR YOUR LIFE 

With more challenge than an arcade game, learn to type up to 75 + 
words/min. (User selectable, but no FOOLING AROUND allowed). 
TEXT IS WIDELY VARIED SINCE IT COMES FROM THE 
PROGRAM TAPE. Action color graphics with sound fix your eyes 
to the screen (away from your fingers - clever!) Your man rows 
your boat up stream as fast as you can type. Maintain speed and 
destroy the Sea Monster; slow down and he will get you. Runs on 
the unexpanded VIC. 
$14.95 shipping included. 

All software is on high quality cassettes 
and is replacement guaranteed. 

VIC-20 & SUPER EXPANDER are registered 
trademarks of Commodore Business Machines, Inc. 

350 N. Lantana Ave,, Suite 821 
CamarilIo,CA 93010 



a postpaid mailer: 

Doug Snioak 
303 Heyward St. 
Columbia. SC 29201 



BEGINNING PROGRAMMERS 
If you're new to computing, please read "How 
To Type COMPUTE! 's Programs" and "A 
Beginner's Guide To Typing In Programs." 



Time Bomb 

2 POKE56,24:POKE55,i03:GOSUB29 

3 D=37154;P1=D-3:P2=D-2:DF=30720:V=36878 
:S=V-4:M1=30:X=50:GOTO19 

4 FORT=240TO208STEP-4 : POKES , T : FORTT=0TO3 
: POKEV , TT/ 2 : NEXT : NEXTT : POKES , : ME=793 
2 

5 POKEOM, 32 : POKEOM+DF, 10 : POKEME , Ml : POKEM 
E-HDF,7:IFFTHEN40 

6 K=Ki-l:ON-(K/2<>INT(K/2) )G0T08 : IFK>600T 
HEN37 

7 F0RT=1T02: POKEV, T*4:P0KES+1, 128+K/5:NE 
XT:POKES+1,0 

8 POKED, 127 :P=PEEK(P2)AND128:J0=-(P=0) 

9 POKED, 255 :P = PEEK( PI) :Jl = '-( (PAND8)=0) :J 
2='( (PAND16)=0) :J3^-( (PAND4)=0) 

10 IFJ0THENG=1:M1=62:GOTO14 

11 IFJ1THENC=22:M1=22:G0T014 

12 IFJ"2THENC=-1:M1=60:GOTO14 

13 1FJ3THENC=-22:M1=30 

14 OM=ME:ME==ME+C:C=0 

15 IFPEEK(ME) <> 32ANDPEEK ( ME ) <>42THElSrME=0 
M 

16 IFPEEK(ME)=42THENF=l:GOT05 

17 ON-(ME>7921)GOT018:SYS887:ME=ME+22:GO 
TO 5 

18 ON- (ME <7944 ) G0T05 : SYS905 : ME=ME-2 2 : GOT 
05 

19 DIMA{3) :A(0)^ 2 : A( 1 )=-44 : A( 2 ) ==-2 : A( 3 ) 
=44:WL=209:HL=3 2:SC=6228:A9=6943 

20 SYS861 :PRINT"lCLR} { DOWN} MAKING MAZE" 

21 FORT=SC+21T07679STEP22:POKET, 32:NEXT: 
F0RT=SCT0SC+2 1 : POKET ,32: NEXT 

22 J=INT(RND(1)*4) :X3=J 

23 B^A9+A(J) 

24 1 FPEEK ( B ) =WLTHENPOKEB , J : P0KEA9+A ( J ) / 2 
,HL:A9=B:GOT022 

25 J=(J+1)*"(J<3) :IFJ<>X3THEN2 3 

26 J=PEEK ( A9 ) : P0KEA9 , HL : I FJ < 4THENA9==A9-A 

(J) :G0T022 

27 TB=SC+INT(RND(0}*20)+220:ON-(PEEK(TB) 
<>32)GOT027 :POKETB,42 

28 SYS830:POKE828,204:POKE829,28:SYS923: 
G0T04 

29 FORI=830TO974 : READA: POKEI , A: NEXT : RETU 
RN 

30 DATA169,238, 141,15,144,169,0,133,251, 
169,150,133,252,160,0,169,10,145,251, 
200,208 

31 DATA2 51, 230, 252, 165,252,201, 152,208, 2 
41,96,169,84,133,251,169,24,13 3,252,1 
60,0,169 

32 DATA209, 145,251,200,208,251,230, 252,1 

118 COMPUTE! July 1983 



65,252,201,30,208 
3 3 DATA241,96,173,60,3,56,233,22,176,3,2 
06,61,3,141,60,3,56,176,19,234,173,60 
,3,24,105 

34 DATA22, 144, 3, 238, 61, 3, 141, 60, 3, 24, 144 
,1,234,169,0,133,0,169,30,133,1,173,6 
0,3,133 

35 DATA254, 173,61, 3, 133, 255, 169,0, 133, 25 
3,160,0,17 7,254,164,253,145,0, 132,253 
,230,253 

36 DATA234,208, 2, 230, 1,230, 254,208, 2,230 
,255,169,32, 197, 1,208,227,96 

37 POKEV, 15:FORT=255T0127STEP-2:POKES,T: 
POKEV-9,255:FORG=1TO10:NEXT 

38 POKEV-9 , 242 : F0RG=lT01 : NEXT : POKEV-9 , 2 
40 :NEXT : POKEV-1 , 220 : FORG=15TO0STEP- , 
5 

3 9 POKEV , G : POKE Vi- 1 , G * 1 : NEXT : POKEV-1 , : P 
OKEV+1 , 238 : G0SUB42 : RUN 

40 POKETB, 32 : POKEV-1 , 253 : FORG=30TO0STEP- 
.15: POKEV , G/2 : NEXT ; X=X+50 : IFX> 449THEN 

X=450 

41 POKEV- 1,0: F=0 : K=X t R=R+1 : GOSUB42 : G0T02 
7 

42 PRINT "{ HOME] ROUND "R"{ LEFT) ": PRINT" 
{down} PRESS F7 " : A$=" " :GETA$ :0N- ( A$ <> 
" I F7 } " ) GOT042 : RETURN 

UNDERLINE ^ SHIFT, 
13= COMMODORE KEY, 
I }= 'SPECIAL. 

REFER TO LISTING CONVENTIONS © 




commodore 



64^ 




DRTMRI 

HOME FINANCE 
MANAGER 

3 NEW PROGRAMS 

from SOFTWARE CONSULTANTS 

ZWARK lOOVc machme language tor fast action artade styJe game. Ke/boafd or Joystick, i Qf 2 
P ":vefs Exceilem spme qrapf^cs Si 9 95 Tape S?4 95 Disc 

DATMAN Oata Base-Tg FteJds search, son. print reports & labeJs. even aeaie word pro W% 
Neeas aisc drive witti 1525 E Prnter reconnmend Use W inventory, mailing lists, aciivffy !^sts, etc 

Limited only by our imagmalion $59 95 Disk Only 

HOME F«NANCE MANAGER Ducgeting, cneckBooK, keeps uack of 3 checking accounts many 

ui^er fledned caieqones . tax deductpons . charts & graphs , & many more features S59. 9f) Disk Only 



Dealer Inquiries 

Welcome 
PH. e01-566-3»01 




Mah e chttck or Moni«y ordor to; 

SOFTWARE CONSULTANTS 

4455 Draper Street 
Salt Lake City, Utah 84118 







s. 



$9 



VIC-20 COMPUTER 

40-80 COLUMN BOARD 




Now you can gel 40 or 80 Columns on your T.V. or monitor at one time! No more 
running out of line space for programming and making columns. Just plug in this 
board and you immediately convert your VIC 20 computer to 40 or 80 columns! 
PLUS, you get a Word Processor, Mail Merge program, Electronic Spreadsheet (like 
VISICALC) and Terminal Emulator! These PLUS programs require only 8K RAM 
memory and comes in an attractive plastic case with instructions. List$149 Sale $99 



•COMMODORE 64 COMPUTER — "80 COLUMN BOARD" LIST $275 SALE $179 

I \SSe66^ $20 ddcce^^^o^ &^€i/icAa4^ Q)€6c€iu^ ) 



"iSDAYFHEETRlAV 

Wc have the lowest VIO20 price* 
We have over 5041 program* 
Viaa — Maatercharge — C,0*D, 
We love our cuatomeral 



£^XERPRIZES {wELOVEOUnCUSTOWeHsJ 

SOX 550. BARAINGTON, ILLINOIS 60010 
Phona 312/382-5244 to ord«r 



REVIEWS 



Copy-Writer 

Word 

Processor 

Louis F. Sander 

Copy-Writer is a full-featured 
program that merits the close 
attention of any Apple, Commo- 
dore 64, PET, or CBM owner 
needing a word processor. It has 
most of the useful features found 
in other word processing sys- 
temS/ plus several that are 
unique. Copif-Writer is easy to 
use, clearly documented, and 
comes with a guarantee that 
future enhancements, no matter 
how extensive, will be offered to 
registered users for a nominal 
disk copying charge. 

The developers of Copy- 
Writer, the IDPC Co. of Philadel- 
phia, originally wrote it in 1979. 
Since then, it has been used by 
professional programmers and 
technical writers, and exten- 
sively revised. It seems to be a 
solid program with good features 
and few bugs. 

Since a detailed discussion 
of software features can be con- 
fusing to those who haven't used 
similar programs, let's start our 
review with something easy to 
comprehend. Copy-Writer is 
available for the PET/CBM with ' 
2040, 4040, 8050, or PEDISK II 
drives; it supports all ROM vari- 
ations and virtually any printer 
from any manufacturer. The 
program is also available for the 
Apple II w^ith 3.2 or 3.3 disks, for 
the Apple III, and for the Com- 
modore 64 with 1541 or PEDISK 
III drives. The version I have 
worked with is for the PET/CBM 

120 COMPUTE! July 1983 



with PEDISK II drive, but the 
other versions are identical to it 
in all important respects. 

A Special, Tailored 
Program 

The software consists of one 
diskette and a small, but 
thorough, manual. There are no 
ROMs or other plug-in devices. 
The diskette cannot be copied, 
but that is not a problem - you 
use it to create a machine lan- 
guage program configured espe- 
cially for your own ROMs, screen 
size, keyboard, and printer, and 
that program can be saved and 
copied without limit. If you 
change printers or upgrade your 
computer, you load the master 
diskette, answer eight simple 
questions, and within a few 
seconds you have a reconfig- 
ured and copyable program in 
memory. 

The 44-page instruction 
manual is remarkable for its clar- 
ity and usefulness, as well as for 
its brevity. In spite of nev^er 
having learned to use a commer- 
cial word processor before, I w^as 
able to sit down with it and 
quickly master most of its fea- 
tures. The manual contains a 
useful table of contents and a 
well-thought-out index, both of 
which are quite helpful in using 
the program itself. It is written 
for the reader who is familiar 
with elementary computer oper- 
ation, and who knows what he 
wants his word processor to 
accomplish. 

Using Copy-Writer is excep- 
tionally easy and straightfor- 
ward. There is no need for sheets 
of stick-on key labels, or for a 
two-pound reference manual. 
When the system comes up, a 
"paper scale" appears at the 
bottom of the screen; tab stops 
are marked on it in reverse field. 



The number of the text line at 
the top of the screen and the 
number of lines still available in 
memory also appear down here, 
as does a line for special com- 
mands and error messages. 

Editing Features 

Routine typing and text editing 
is done in the Edit Mode, in 
w^hich the cursor moves freely 
about the screen. The PET's 
familiar cursor control keys are 
used to move, insert, and delete 
characters. The up arrow, left 
arrow, HOME and RVS keys are 
used for opening up lines, 
moving words around, etc., and 
it is very easy to remember which 
key does what. 

The STOP key puts the sys- 
tem in the "Command Mode." 
In that mode, the cursor jumps 
to a special area at the bottom of 
the screen and waits for your 
instructions. There are about 30 
of these, most having to do with 
disk file handling, searching and 
replacing text, and printing. 
Copy-Write/ s authors have made 
the commands very easy to re- 
member: A means append a file, 
D means down scroll, S means 
save a file on disk, etc. For those 
who haven't used the commands 
enough to have memorized 
them, they are listed in a table in 
the index of the instruction man- 
ual, which also notes the page 
where the command is described 
in detail. 

The process of entering text 
and moving it around is similar 
to that in most good word pro- 
cessors. Copy-Writer seems to 
have all the necessary features 
in this area, and most of the typ- 
ical frills. 

Copy-Writer has two separate 
buffers for handling changes 
and text movement. Buffer #1 is 
used for moving entire para- 



America's # 1 Software Deafer 



Pick A Program. 
Any Program. 

AtA 
Software City Store! 

• Programs • Books * Magazines 
• Peripherals • Disks • Accessories 

SarrWAKE always DlSCaVNTEB! 

Software City has a vast selection of programs 
for your personal computer. And, every one is 
discounted! When you need software for 
business, education, entertainment, utility or 
home management, Software City 
has a program for you. 



AL Birmingham - coming soon 

AZ Tucson • coming soon 

CT Orange- Loehmann's Plaza (203) 799-21 19 

FL Sarasota - 7211 S. Tamiami Trail (813) 923-4040 
Tampa - 13727 N. Dale Mabry (813) 961^081 
Atlanta - coming soon 
Davenport - coming soon 
Cook County- coming soon 
West Springfield - 1313 Riverdale Rd. (413) 739-5101 
SouthfieW - 29080 Southf ield Rd. (313) 559-6966 
Falrvlew - 251 Broad Ave. (201) 943-9444 
Green Brook - 60 Rt. 22 West (201) 968-7780 
Midland Park - 85 Godwin Ave. (201) 447-9794 
Montvale • 147 Kinderkamack Rd. (201) 391-0931 
Pine Brook - 101 Rt. 46 East (201) 5754574 
Princeton - 33 Witherspoon St. (609) 683-1644 
Red Bank - 80 Broad St. (201) 747-6490 
Summit - 5 Beechwood Rd. (201) 273-7904 
Teaneck • 161 Cedar Lane (201) 692-6298 
Llnwood - Cenlrai Square (609) 927-3393 
Bergenfield - coming soon 
Cherry Hill - coming soon 
Closter- coming soon 
Engllshtown - Yorktowne Shopping Center 
Falrport - 134 Viiiage Landing (716) 223-3723 
Fofest Hills- 113^1 Queens Bivd. (212) 261-1141 
Manhattan - Lexington, bet. 55 & 56 Sis. (212)8320760 
Mt KIsco- 187 Main St. (914)666^36 
North White Plains - 641 N. Broadway 
Long Island - coming soon 
Staten Island - coming soon 
Columbus -1959 East Rt. 1 61 (614) 888-6660 
Exton - 14 Marchwood Rd. (215) 524-1483 
Whitehall - 2802 McArthur Rd. 
Pittsburgh - coming soon 
San Juan - coming soon 
Rtehmond - 9027 Quioccasin Rd. (804) 740-8400 
Fairfax - coming soon 
Seattle - coming soon 
Spokane - 9405 E. Sprague 



GA 
lA 
IL 

MA 
Ml 

NJ 



NY 



OH 
PA 



PR 
VA 

WA 



BUSINESS SOFTWARE: Free catalog available at each store or write to 
Corporate Headquarters, Attn: Corporate Software Dept, RETAIL STORE 
FRANCHISES: S32 -40,000 est. total invest. Offering by prospectus only. 
Direct inquiries to Corporate Headquarters, Att: Franchise Dept 
SOFTWARE CITY CORPORATE HEADQUARTERS 
1415 Queen Anne Road • TeanecK, N J 07666. 



Commodore 64 Computer 



over $300 Free Professional Software 
when you buy a Commodore 64 computer 



COMMODORE 64 

PROFESSIONAL 
SOFTWARE 



Nam© 1 


List 


Sale 


word processing pack 


S89.00 


$69.00 


Quick Brown 






Fox — word processor 


$69.00 


$59.00 


complete Data Base pack 


$89.00 


$69.00 


Electronic spreadsheet pack 






(likevisicalc) 


$89.00 


$69.00 


Accounting pack 






(personal & business) 


$59.00 


$49.00 


Programmers Helper 


$79.00 


$59.00 


Programming Reference guide 


$20.96 


$16.95 


Basic Tutor 


$24.95 


$19.95 


Typing Tutor 


$24.95 


$19.95 


Fort Apocalypse 






(top selling arcade game) 


$34.95 


$29.95 



80 COLUMN BOARD 

80 characters per line on the screen at one time. In-I 

eludes word processing pack, mail merge data base I 

pack, Electronic spreadsheet. ALL FOR ONLY $179 J 

(less $20 accessory purchase discount) 

We have over 300 Programs for 
the Commodore 64 Computer 

• 10 day free trial* We have the lowest prices 

• One day delivery express mail • Free Catalogs 

• WE LOVE OUR CUSTOMERS 



> 1 day free trial • We have the lowest prices 

► One day delivery express mail • Free Catalogs | 

WE LOVE OUR CUSTOMERS 



ENTER PRIZES (Factory direct) 

BOX 550. BARRINGTON, ILLINOIS 60010 
Phont 312/3a2-5244 to ordof 



July19S3 COMPUIil 121 



graphs from place to place and is 
activ^atcd from Command Mode. 
Buffer #2 is used in Edit Mode 
and is ideally suited for moving 
words and short phrases, al- 
though it has a 1000-character 
capacity. To use it, you place the 
cursor on the first letter to be 
saved, and press the shifted left 
arrow key. Letter-bv-letter, text 
is ''sucked" from the screen into 
the buffer. 

When you've picked up 
everything you want to mo\'e, 
you put the cursor wherever 
you want it, and press the un- 
shifted left arrow key, which 
automatically inserts the buf- 
fered text at that point. The text 
remains in the buffer, so you can 
insert it as many places as vou'd 
like. This feature can save time 
and keystrokes whenever the 
same phrase is used repeatedly 
in the text (as are the w^ords 
"Cop\/-Writcr'' in this review). 
You can put such a phrase in the 
buffer and use one key to print it 
out everv time it is used. 



Another feature worthy of 
note is the ability to input re- 
peated characters, such as a 
series of dashes, just by entering: 
a special character, the character 
to be repeated, and the number 
of repeats desired. There is also 
a graphics mode which allows 
dot-by-dot control ov^er printers 
having that capability. Neither 
ot these features is a necessity, 
but their presence is an indica- 
tion of the authors' attention to 
detail in making the program 
useful. 

Cofn/-Writer is extremely 
powerful for formatting the 
printed page. Format control is 
done by special commands em- 
bedded in the text, and there are 
many to choose from. Once 
again, the commands are easily 
understood by themselves, al- 
phabetically listed in the index, 
and well-described in the man- 
ual. AP means append a file, 
LM sets the left margin, HD de- 
fines a page heading, and so on 
for over two dozen commands. 



The power here is reall\^ impres- 
sive- you can print things in 
double columns (like this 
magazine is printed), customize 
page breaks (based on a variety 
ol conditions), and on and on. 
By using a special format 
command, you can send indi- 
vidual hex characters to vour 
printer, for control of character 
size, impact, or whatever fea- 
tures the printer happens to 
have. The capability is com- 
pletely general, so if you know 
what character code switches 
your printer into Martian Hiero- 
glyphic mode, you can put it 
there whenever you want. This 
is a very desirable feature and 
it's one of many desirable fea- 
tures available on this most im- 
pressive product. 



Copy- Writer 
CGRS \4uivlech 
P.O. Bo.x 102 
Lui<^honiL\ PA 1904: 
$145 




FIVE POWERFUL SOFTWARE 
DEVELOPMENT TOOLS 

P/us t/w Smtiiig J^cw Hook 

INSIDE THE COMMODORE 64" 



THE BOOK 

A complete clear explanation of machine 
ianguage. Assembly language, Commodore 64 
arcliitectufe, graphics, joystick and sound effect 
programming. Detailed stepby-step guide to the 
use of the development tools. How to combine 
BASIC and machine language, make auto-start 
cartridges, Interface with the internal ROM- 
baaed programs of BASIC and the Kernal. 
Sample programs fully explained. 



THE TOOLS 

Assembler/Edltor/Loader/Oecoder/Monltor 
Full-featured Assembler allows use of labels, 
comments and arithmetic expressions to create 
machine language programs. Create, save, 
modify Assembly language programs with the 
Editor. Load and link machine language modules 
with the Loader, Decode machine language back 
into assembly language for study or input to the 
Editor. Stngle-stap program execution with the 
fwlonltor. Combines Assembler;Edltor for maxi- 
mum ease of use. 



ALL FOR $54-95 plus $2.00 postage and handling Add $5.00 for disk version. 
S«nd check, M.O., VISA/MC (S2.00 SX.} or specify C.O.D. (add $3.00) to; 

I 






't^lLtri 



^lLI^b 



P.O. Box 207, Cannon Fatis, MN 55009 
507-263-4821 

Commodore 64'" is ^ regJliered TM of 
Commodore Business Machines Int. 



122 COMPUTE! July 1983 



C'64 (^AIVIES 

THIS IS YOUR 
ADVERSARY 




is/J 



You've Hated Him For Years . . 
Here's your chance to finally wipe 
the smirk off his Happy Little Face. 
BLAST BOUNCING 
HAPPY FACES FROM THE 
SKY WITH YOUR MISSILES! 

Have A Nice Day 1 

AN EXTREMELY SATISFYING ACTION 
ARCADE GAME for tKe Commodore 64. 

Features IncJude: 1 to 8 Ptayers. Joystick, 
Keyboard or Paddle Controls. Machine Code. 
Sprites and Music. Interludes and Bonus 
Screeris, Increasing Difficulty 
S39.95 on DISK p1ii« &2.00 Shlpplnc 

^V3^ COLLISION! A 2-player. full color and 
^ sound arcade. Increasing ditficuhy, joysticks. 
S1S.95 t«p« or Sl9.es dl»k plui S2.00 chtpptni. 
Dealer Inquiries Welcome 

FROM Tapoipqic M 

^^^ INC ^^=*=^ 

*'" P.O. Box 752 

».*. BURLINGTON, lA 56201 
319-754-5291 

Commodore &* is a irademark o( CcrnmodDre Business 
Machines. Inc 



Mastertype 

Tina Halcomb 

Mastertifpe, by Bruce Zweig (Atari 
version by Aric VVilm under), 
makes learning touch-typing 
fun. 

As an educational program, 
Master h/pc is impressive. It is 
menu-driven and the lesson 
plan begins with basic keyboard 
and finger placement presenta- 
tions. In the manual supplied 
with Master type are illustrations 
and diagrams which clearly show 
proper finger placement. Your 
skill builds from this point. You 
begin to practice typing single 
letters or simple three- to four- 
letter words. Once you are com- 
fortable with these, you move 
on to longer words, numbers, 
and symbols. 

Each lesson can run in either 
of two modes. The Beginner 
mode displays single letters only, 
and the Normal mode asks you 
to type the complete word and 
press the space bar. 




You can even create your 
own word lists to practice with 
words that are related to your 
occupation. After first booting 
Mastertype, you will see this op- 
tion offered, and you respond 
by typing an "M" (make your 
own lesson). Each word list con- 
sists of 40 words ranging from 
one to nine characters. You must 
enter 40 words - there's no way 
around it. If you make any errors 
when entering the words, you 
may edit them after you complete 



the 40th word. Once satisfied 
with your customized lesson, 
you can name it and save it on 
your disk. 

In each lesson you control 
the mode, the speed, and any 
upper- and lowercase variations. 

Battle Of Words 

But what makes this a truly ef- 
fective, pleasant learning experi- 
ence is the game it becomes. You, 
the Command Ship, are hovering 
out in space. Look out! Four 
enemy words have just appeared 
in the corners of your computer 
screen. They're sending satel- 
lites, missiles, and atomic 
meteors to destroy you. You are 
not helpless, though. If you can 
type the enemy words correctly, 
you can eliminate them. You 
won't destroy the enemy word 
unless you fire your laser before 
or just as the enemy word re- 
leases its weapon. 

Even when you need not be 
particularly concerned with the 
exact path of your laser, you 
must type the word correctly 
before the laser is released. 

As soon as you successfully 
defend your ship by destroying 
all enemy words, you can see 
your game score and typing 
speed. You mav get so involved 
in playing the game that you 
won't even realize you're ac- 
quiring a very useful skill. 

Masterti/pe is available on 
diskfora32KAtarior48K 
Apple. 



Mastertype 
Li^htniu'^^ Soflivarc 
P.O. Box 11725 
Palo Alto. CA 94306 
$39.95 



COMPUTE! 

TOLL FREE 

Subscription 

Order Line 

800-334-0868 

In NC 919-275-9809 



THE 

KriETie 

SCREEfl' 



for 

programs 



ATARI 



ready to 

move beyond? 



m alien landscapes 

DISK , 48K , ' MACHINE DRAWN, USER 



experience true 

creativity! 

$ 

29. 

DISK 48K ' MACHINE ORAWf?, USER CONTROLS 

DRAWS ALIEN LANDSCAPES in 4 cols, 
Gr7, EACH AN ORIGINAL. With save- 
to -drsk, printout on 825, more. Use 
saved files in your own proqrannmina 

ENDLESSLY FASCINATING 

m alien landscapes 2 29. 

0ISK.40K.B,G' USER OPERATED 

CREATE YOUR OWN ALIEN WORLDS 
and save to disk. 9 cols in Gr. 10, with 
color changer, other functions. 
CLEAR PROMPTS TAKE YOU THROUGH 

• paintpot 34. 

DISK, 40K, B, J. P(OPT'L)-FULL USER FREEDOM 

"I DID IT MYSELF': YOU are master of 
the machine. Paint in your 4 cols in Gr.3, 
5, or 7 with jstick ar>d /or paddles. With 
save -to -disk, many more options. 

FROM CHILD TO ADULT 

• crayons 24. 

DISK OR CASSETTE, 32K. B.J 

LIKE PAINTPOT except no paddles or 
save - to - disk . fewer options. 

• designer 49* 

DISK, 48K, B.G.J.P(OPTL!-FUU USER OPERA- 
TION A FLEXIBLE TOOL FOR THE 
TALENTED DESIGNER. Create in varied 
styles with jstick and /or paddles with 
9 cols in Gr.10, With save-lo-disk, 
printout on 825. 20 functions, simple 
one ' key cont rols . Full sam pie di sk si9, 
SB-ECTA USE 9 OF 128 COLORS 

ea. 14. 

A FORMATTED BOOT N'RUN DISK FOR YOUR PRO- 
GRAM STORAGE FILL-IN-VOUR-OWN- 
FILES MENU OPERATION. Room for 
26 listings. Run or load your programs 
with easy two^stroke convenience. One 
stroke utilities- timer, mach mem dump, 
more. QUAN. DISCOUNTS AVAILABLE 

• the kinetic screen 24. 

DISK, 32K, B, J foM prog ■ MOSTLY MACH DRAWERS ui 

A POTPOURRI of 10 ACTIVE PROGRW^ ^ 

Spirals, mandalas, moires, more -and a ^ 

skittish doodlebug ! KEEP YOUR SCREEN £ 

ACTIVE. SPECIAL! S21. through AUG g 

• soon ior other ssrstems i 

V intro special v I 

deduct 10% througli ]ul 16 ;^ 

MO- RES. add S-625 pel lo total - Sorry! ^ 

• dealer inquiries inrelcome ^ 

• sendCHKorM.O, ^ 
payable to 3 

JAMES A. IRELAND ^ 
SCO ^ 47th St, suite 608 ^ 

kX. mo, 64112 m 

• w^riteorcall 816/756-3030 ^ 

ior NOT PROVIDED ■■ ^ 

info * B ATARI BASIC CART REQ U 

ask G GTIA CHIP REQ g 

lor J JOYSTICK ^ 

jim P PADDLE CONTROLLERS ^ 

K TOTAL RAM REQ S 

ATARI% A TRADEMARK Of ATARI INC. 

July 1983 COMPUTE! 123 



m vennyDisks 



Claim Jumper For Atari 



Fred Pinhn 

Synapse Software has produced 
a number of high-quality game 
packages in the past. In Claiii! 
Jumper, the company has done 
nothing to damage that reputa- 
tion. Claim jumper is basically a 
combination shoot-'em-up and 
strategy game for one or two 
players, 1 found it fascinating. 
Two cowboys (brown and 
pink) are controlled by the 
players using joysticks. The cow- 
boys act out their lives on a 
playfield consisting of: (a) two 
banks (one for each player); (h) 
an assay office; (c) two hospitals; 
(d) assorted other houses and 
cacti. At intervals during the 
game, a gold nugget will appear. 
The object is to pick up the 
nugget, take it to the assay office, 
and exchange it for cash. The 
cash must then be taken and 
deposited in your bank "to buy 
a house" (ten bills are needed). 
House buying is completely im- 
material to the game. The object 
is solely to collect the ten bills. 

While this all sounds easy, 
it can be frustratingly difficult. 
While performing these func- 
tions, you must also dodge your 
opponent's bullets w^hile avoid- 
ing numerous obstacles. Al- 
though diagonal movement is 
the fastest, the cowboys can 
shoot only when moving hori- 
zontally or vertically. 

The animation of the cow- 
boys is relatively crude, but this 
in no way detracts from the 
game. If you shoot vour oppo- 
nent, his hat comes off and he 
drops whatever he is carrying 
(gold or money). He is then 
transported to one of the two 
hospitals (chosen by moving the 
joystick left or right). While in 
the hospital, he cannot shoot. 
After a very brief stay, however, 
he recovers completely and can 
re-enter the fray. 

124 COMPUTE! July 1983 



How They Get Your 
Treasure 

The real fun in the game, and 
much of the strategy, involves 
the obstacles. Specifically, watch 
out for the notorious snakes and 
tumbleweeds. Shortly after the 
game starts, these objects start 
to appear. The pink snakes chase 
the brown cow-boy w^hile the 
brown tumbleweeds stalk the 
pinkcowpoke. If you touch the 
opposite creature, you will be 
paralyzed for two seconds and 
drop whatever you are carrying. 
This allows your opponent to 
steal your treasure. After the 
two seconds are up, you're fit 
and ready to go as before. Merci- 
fully, you will have a brief period 
of immunitv which will allow 
you to move away from your 
pursuing tormentors. The crea- 
ture g ra p h i cs a re v e ry w e 1 1 
done. 

How can you fight off these 
unpleasant intrusions? One way 
is to shoot things. Plugging them 
with your trusty "shootin' ahrn" 
will turn the creature into the 
opposite type, which then 
promptly goes off after your 
opponent. How^ever, there is a 
second tactic which adds consi- 
derably to the game. This in- 
volves dropping seeds or eggs. 
To do so, you must stop and 
then press your joystick button. 
The brown cowl>oy drops 
tumbleweed seeds. If a snake 
eats a seed, it turns into a 
tumblew^eed. Conversely, the 
pink cowboy can drop snake 
eggs. If a tumbleweed hits the 
egg, it turns into a snake. A 
maximum of six eggs and six 
seeds can be on the screen at 
any one time. If you drop a 
seventh seed or egg, the oldest 
one disappears. 

As you can imagine. Claim 
jumper gets quite hectic, in 



addition to pursuing the gold, 
shooting creatures and vour 
opponent, and dropping eggs/ 
seeds, the cowboy must also 
avoid other obstacles. If the 
brown cowboy touches anything 
pink or a cactus, he experiences 
the two-second freeze. Pink ob- 
stacles include a pink house, the 
pink bank, one of the playfield 
borders and, of course, snake 
eggs. The opposite is true for the 
pink cowboy. 

It's more difficult to explain 
this game than to plav it. The 
nuances of the game are easily 
learned, and built-in prompts 
help during play. When vou 
pick up the gold, a flashing arrow 
indicates where to deposit it in 




Cowboi/s, cacti, snakes, Western 
buildings, ami drifting tund^leweeds sel 
I he sceiic /(^/' C I a i m J u m per , 

the assay office. Similarly, once 
you get the money, another 
arrow indicates the correct bank. 

Option Menus 

There are also tw^o option menus 
for game variations. The first 
features the normal game and 
two options: Buy Bullets and 
Head Start. In Buy Bullets, you 
no longer have an unlimited 
supply of bullets. You start with 
ten. When you run out, you 
must take money to the bullet 
store to buy ten more. Head 
Start allows yc^u to start with 
five bills already in the bank. 
The second menu allows 
you to select either the normal 
game or a single-player game 
with tw^-) levels of difficulty. In 
the single-player game, you must 
destroy all the snakes and 



tumble weeds before you are 
paralyzed for the third (and last) 
time. The problem is that you 
start with no bullets and thus 
must buy some with your gold. 
Again, you can buy only ten 
bullets at a time. 

Although 1 have high praise 
for this game, 1 do have one gripe 
inv^olving the scoring system. 
The winner is the first player to 
reach 25,000 points. You score 
100 points for each snake or 
tumbleweed that you convert. 
But the first player to reach ten 
bills then gets 20,000 points! 
Somehow it doesn't seem fair. 
Here you are in a close battle 
with each player at about 6000 
points and nine bills. Then your 
opponent gets one more bill, 
and you lose 26,000 to 6000! The 
final score does not reflect the 
intensity and closeness of such a 
contest. There is an option to 
conhnue the game until 50,000 
which does help somewhat. A 
better way might be to receive a 
given number of points for each 
bill deposited until the winner 
reaches the target score. 

Claim Jumper 

Si/napse Software 

5327 Jacuzzi St, 

Suite 1 

Ridwiomi. CA 94804 

Requires 16K RAM 

Disk/Cassette 

$34.95 



COMPUTE! 

is looking for good 

articles, tutorials, 

and games for the 

Sinclair/rimeK 

Connnnodore 64, 

and 
Color Computer 




• S,A.M. is the Software Automatic 
Mouth, a speech synthesizer for Apple 
and Atari computers made by Don't Ask. 
S.A.M. uses your computer to simulate 
the sounds of human speech. You use 
S.A.M. to make your programs talk, 

• 5. A. M . does it a 1 1 i n software. I rs a pro- 
gram -the only one of its kind. This means 
that S.A.M. has the power of a hardware 
speech device without the high prica 

• S.A.M. expands the power of your 
machine. Adding speech is like adding 
graphics - suddenly you can do things 
you never considered before. Use S.A.M. 
to write practical things: learning tools for 
young children, business software with 
spoken instructions, programs that tell 
stories or read aloud. Write creative new 
games with characters that converse or 
opponents that crack jokes. S.A.M. is 
great fun to use, because it's a new play- 
ground for your ingenuity. 

S.A.M. is for anyone who can write a 
program, from the newest BASIC beginner 
to the machine language master, tt's so 
easy to use S.A.M. to make a program 
talk, there's almost nothing to it. 
9 S.A.M. is capable of endless variety. 



You can control S.A.M.'s inflection, 
change the pitch of S.A.M.'s voice and 
the speed of S.A.M.'s speech. Use pho- 
netic input to get perfect pronunciation; or 
use RECITER, the excellent English text- 
to-speech converter on the S.A.M. disk, 
for highly reliable results with ordinary 
English input. 

With the new KNOBS feature you can 
create a variety of different voices for 
S.A.M. - not just higher or lower voices, 
but ones that sound like different people 
speaking. You design S.A.M.'s vocal 
personalities. 

Get your Apple or Atari a Software Auto- 
matic Mouth, and discover the excite- 
ment of computer speech. 




2265 Westwood BL. Ste. B-1 50, Los Angeles, 
CA 90064. Phone (213) 477-451 4 

Deafer inquiries invited. 



Atari owners: learn extra tncks and tech- 
niques to make the most of S,A.MJ Ask (or 
Educational Software's new SAM. Tutorial 
(Tricky Tutorial #12), 



. IHear S.A.M. at your favorite dealer. _ 



Or order d^ rect from Don't Ask. Add $2 .00 shippi ng to your check or money order Cal ifornia residents add 
6% sales tax (6,5% in LA. County). 

SA,M.for Apple ll-series computers includes 8-bit digital-to-analog converter and audio amplifier 
on a card. Requires 48K, disk. (SAM. uses 9K; RECITER 6K. SA,M. can be loaded into a 16K 
R AM . card) You will need a speaker. Suggested retail; S1 24.95. Look forsummer sale prices 
now through September 1 5, 1 983. 

S.A,M. for Atari computers uses yourt,v, speaker. No additional hardware required. Requires 32 K, 
disk. (S A.M. uses 9K, RECITER 6K.) Cassette version coming soon, Suggested retail: $59.95. To 
produce highest quality speech on Alari, SAM, is setup to blank the screen while speaking and 
then restore display. You can make SAM, talk with screen on - speech quality is somewhat 
reduced. 

S.A.M. programmed by Mark Etarlon 

APPLE i$ a trademark of APPLE COMPUTER, INC. ATARI is a trademark of ATARI INC. 



July 1983 COMPUTE! 125 



Courseware Report Card 
And Educational Software 
Directory 



Sheila Cory 

Just a couple of years ago, the 
greatest concern of parents and 
educators interested in the edu- 
cational use of microcomputers 
was which computer to buy from 
the great variety available. 
Hardware selection was a major 
topic of discussion whenever the 
subject of computers came up. 
More and more, however, the 
questions posed these days relate 
to software selection. A number 
of schools and homes already 
have their computers and are 
trying to determine the best use 
of their machines. 

Fortunately, some excellent 
educational software is now on 
the market. But parents and 
educators need to sift through 
an enormous amount of software 
in order to find what's best for 
their application. Educational 
software directories and evalua- 
tion journals have recently been 
developed to cope with this prob- 
lem. This review looks at two oi 
them. 

Courseware Report Card 

Courseware Report Card provides 
in-depth reviews and evalua- 
tions of both elementary and 
secondary software. Unlike 
many software review journals, 
it reviews software for more 
than one computer: Apple, Atari, 
PET/CBM, and TRS-80. 

Selection of software to re- 
view is based primarily on soft- 
ware publishers' response to 
requests for review copies. A 
secondary source is software 
made available by teachers, soft- 
ware dealers, or educational 
media centers. To be of value to 
all people interested in educa- 
tional computing, the journal 
covers a cross-section of subject 

126 COMPUTE! July 1983 



area and grade level. 

Most Courseioare Report Card 
reviews are prepared by mem- 
bers of the editorial staff, all of 
whom are former teachers with 
experience in curriculum evalua- 
tion and design. A few of the 
reviews are prepared by non- 
staff members. These reviews 
are signed, and the qualifications 
of the reviewer are listed in the 
introduction. 

Graded In Six 
Categories 

The standard format of the re- 
views makes it easy to find in- 
formation. A box at the top of 
the first page of each review 
highlights subject area, grade 
level, type of program (drill and 
practice, tutorial, or game), sys- 
tem requirements, price, and 
publisher's name and address. 
A box at the bottom of the page 
gives a letter grade (A through 
F) for performance, ease of use, 
error handling, appropriateness, 
documentation, and educational 
value. These two boxes, plus a 
short summary of the program, 
provide all the information nec- 
essary to decide whether or not 
to read the entire review. 

The reviews proper begin 
with a description of the pro- 
gram, explaining exactly what 
the student sees as the program 
progresses. Screen representa- 
tions and photographs make it 
easv to visualize what the text is 
describing. The ''performance" 
section of the ev^aluation explores 
the overall quality of the pro- 
gram. Errors of punctuation in 
the text, problems with speed of 
operation, and sound that can't 
be turned off are examples of 
comments made in this section. 



Ease Of Use And 
Error Handling 

The "ease-of-use" comments 
focus on standardization of com- 
mands, use of menus in the pro- 
gram, and other programming 
possibilities that make the pro- 
gram as easy as possible for the 
user. How well a program ac- 
cepts input from the keyboard is 
among the criteria evaluated 
under "error handling." 

The value of the computer 
over other modes of instruction 
is addressed under "appropri- 
ateness." The editors take a firm 
position on the appropriateness 
of drill and practice software by 
having a policy of never award- 
ing a grade higher than C to any 
software designed for drill and 
practice unless it is enhanced by 
additional features, (This view is 
not universally shared, but it is 
constantly discussed,) 

Documentation And 
Educational Value 

The paragraph of each review 
covering documentation looks at 
the books, pamphlets, and other 
hard copy provided to supple- 
ment the software, "Educational 
value," perhaps the most impor- 
tant of all of the evaluation com- 
ponents, examines whether the 
particular area covered by the 
software has any real place in 
the curriculum. 

The evaluations included in 
Courseware Report Card are well 
written and complete. However, 
you must keep in mind (as the 
introduction to the journal states) 
that much software evaluation is 
subjective. There is room for 
disagreement, and you should 
make the decision of whether to 
use software with your students 
or your own children only after 
looking at the software from 
beginning to end yourself. 

Apple, Atari, PET/CBM, 
And TRS-80 

This review of Courseware Report 
Card is based on the first issue, 
dated September 1982, Course- 




Deluxe 

COMSTAR F/T 

PRINTER— $279.00 

The Comstar is an excellent addition to any 
micro-computer system. (Interfaces are 
available tor Apple, VIG-20, Commodore-64, 
Pel, Atari 400 and 800, and Hewlett Packard) At 
only S279. the Comstar gives you print quality 
and features found only on printers costing 
twice as much. Compare these features. 

• BI-DIRECTIONAL PRINTING with a LOGIC 
SEEKING CARRIAGE CONTROL for higher 
through-put in actual text printing. SO 
characters per second. 

• PRINTING VERSATILITY: standard 96 ASCII 

character set plus block graphics and interna- 
tional scripts. An EPROf^ character generator 
includes up to 224 characters. 

• INTERFACE FLEXIBILITY: Centronics is 
standard. Options include EIA RS232C, 20mA 
Current Loop. (Add $20,00 for RS232) 

• LONG LIFE PRINT HEAD: 100 million 
character life expectancy. 

• THREE SELECTABLE CHARACTER 
PITCHES: • 10, 12 or 16.5 characters per inch. 
132 columms maximum. Double-width font also 
is standard for each character pitch. 

• THREE SELECTABLE LINE SPACINQS: 6, 6 

or 12 lines per inch. 

• PROGRAMMABLE LINE FEED: program- 
mable length from 1/144 to 255/144 inches. 

COMSTAR FfT 

ABCDEFGHIJKLMN0FQRSTUVWKYZabcdef«9hi J klmnopqrstuvwMyz 1234567890 



• VERTICAL FORMAT CONTROL: program- 
mabie form length up to 127 lines, useful for 
short or over*sized preprinted forms, 

• FRICTION AND TRACTOR FEED: will accept 
single sheet paper. 

• 224 TOTAL CHARACTERS 

• USES STANDARD SIZE PAPER 

if you want more trv — 

Premium Quality 
COMSTAR F/T SUPER-10" 
PRINTER- $329.00 

More Features Than MX-80 
For $250 Less 

For S329.00 you Q^t a*' of ^^^ features of the 
Comstar plus 10" carriage, 100 cps, 9 x 9 dot 
matrix with double strike capability for 18 x 18 
dotmatrlx. High resolution bit Image (120 x 144 
dot matrix}, underlining, backspacing, 2.3K 
buffer, left and right margin settings, true 
lower descenders, with super and subscripts, 
and prints standard, Italic, Block Graphics, 
special characters, plus 2K of user definable 
characters. For the ultimate In price per- 
formance the Comstar F/T Super 10" leads the 
pack! 



80 COLUMN PRINTER $199 

Super silent operation. 60 CPS, prints Hi- 
resolution graphics and block graphics, ex- 
panded character set, exceptionally clear 
characters, fantastic print quality, uses inex- 
pensive thermal roll paper! 



Double 
Immediate Replacement 

Warranty 

We have doubled the normal 90 day warranty 
to 180 days. Therefore if your printer fails 
within "180 days" from the date of purchase 
you simply send your printer to us via United 
Parcel Service, prepaid. We will IMMEDIATELY 
send you a replacement printer at no charge 
via United Parcel Sen/ice. prepaid. This warran- 
ty, once again, proves that WE LOVE OUR 
CUSTOMERS! 

15 DAY FREE TRIAL 

OTHER OPTIONS 

Extra Ribbons , $ 5,95 

Roll Paper Holder 32.95 

Roll Paper..... 4.95 

5000 Labels 19-95 

1 too Sheets Fan Fold Paper. 13.95 

Add $20.00 shipping, handling and insurance. 
Illinois residents please add 6% tax. Add 
$40.00 for CANADA. PUERTO RICO, HAWAII, 
ALASKA orders. WE DO NOT EXPORT TO 
OTHER COUNTRIES. Enclose cashiers check, 
money order or persona! check. Allow 14 days 
for delivery, 2 to ? days for phone orders, 1 
day express mail avaiiablell Canada orders 
must be in U.S. dollars. 



ENTERPRIZES ('"^'^viou«cusTOMit.o 

BOX 550. BARRINGTON, ILLINOIS 60010 
Phono 312/3d2'5244 to ordor 



SUPER-10" ABCDEI='C3H I aKI.MNaF>CaRS"rU\/M X V Z 

ABCDEF6HI JKLHNaPQRSTU VUX Y Z123'4S&78<?0 



ivare Report CardlElcnientary 
evaluated 22 programs, includ- 
ing 16 for the Apple, 11 for the 
Atari, seven for the PET/CBM, 
and seven for the TRS-80 (many 
programs are designed to run on 
more than one computer). 
Courscwiuv Report Canil Secondary 
also evaluated 22 programs - 18 
for the Apple, eight for the Atari, 
seven for the PET/CBM, and ten 
for the TRS-80. Future editions 
of the Courseware Report Card 
promise to be quite interesting: 
software publishers will have 
opportunity to respond to re- 
views, and teachers and ad- 
ministrators will have a chance 
to hear corroborating or dis- 
senting opinions. A forum for 
such a dialogue is a welcome 
addition for people excited about 
possibilities in educational 
microcomputing. 

Courseware Report Card 

(five i$$ue$ per year) 
Ediicatiofuil liisights, I tic. 
150W,CarobSt, 
Comptou, CA 90220 
Elementary Edition S49,dO 
Secondary Editio)! $49,50 
both editions $95 
single copies $12.50 

Educational Software 
Directory 

The Educational Software Directory 
is designed to help educators 
determine exactly what software 
is available in their subject area. 
It can answer such questions as 
"How can 1 use the computer 
when teaching a poetry class?" 
or 'Ts there any software avail- 
able for the PET that teaches 
grammar?" It tells what software 
is available, but makes no at- 
tempt to evaluate it. 

The directory covers pro- 
grams for grades kindergarten 
through 12 and includes all 
categories of educational soft- 
ware (except programs intended 
primarily for administrative pur- 
poses). Software selected for 
inclusion in the directory met a 
set of criteria: the software had 
to be usable for the grade level 
for which it was intended, the 

128 COMPUTl! July 1983 



subject matter had to be appro- 
priate to the learning environ- 
ment and to the computer 
medium itself, and the listing of 
the software in the catalog hacd 
to be clear and complete. No 
software was actually examined 
in the process of compiling the 
directory; descriptions given in 
software catalogs were used in- 
stead. 

Software listed in the direc- 
tory includes general software 
(encompassing more than one 
subject), basic living skills, busi- 
ness education, computer liter- 
acy, courseware development 
(teacher utilities), fine arts, for- 
eign language, language arts, 
library skills, math, science, and 
social studies. Each entrv in the 
directory contains the program 
name, publisher's name, avail- 
ability (which suppliers sell it), 
release date, grade level, 
hardware configuration re- 
quired, storage medium (diskette 
or cassette), the computer lan- 
guage it's written in, price, 
availability of the source code 
(original program code), and a 
description of the program. 

The value of this book re- 
sults from the ease with which 
information can be found. Edu- 
cational Software Directory is ex- 
cellent. It has both a subject and 
a title index and cover markings 
to allow the user to locate a spe- 
cific subject quickly. Addresses 
and the policies of publishers 
and distributors of educational 
software are also listed, making 
purchase of desired software 
easy. 



COMPUTEI 

TOLL FREE 

Subscription 

Order Line 

800-334-0868 

In NC 919-275-9809 



Educational Software Directory 

Libraries Uiiiiuiitcd, Inc. 

P.O. Box 263 

Littleton XO 80160 

$22.50 6 



Legionnaite 
For Atari 

E. ]\ McMalion 

Chris Crawford has created a 
playable, fast, and enjoyable 
war game called Legionnaire. 
This game is sure to be compared 
with his magnum opus, Eastern 
Front, and, indeed, there are 
some similarities. He has re- 
tained the attractive features of 
fine-scrolling across a detailed 
map and the simple joystick 
input command concept from 
Eastern Front. But there are sig- 
nificant differences. The most 
striking difference is that Legion- 
naire is realtime. That is, once 
START is pressed, the enemy 
launches its attack and does not 
stop until the game is over. 

Legionnaire is a simulation of 
Roman-barbarian conflict during 
Julius Caesar's campaigns in 
Gaul. You define the scenario by 
selecting one to ten legions to 
command. Of the ten, two are 
cavalry, Crassus and Labienus, 
and the rest are infantry. 
Caesar's legion, the Tenth, is the 
strongest and steadiest. 

After choosing the number 
of legions you wish to command, 
you must select the tribes of bar- 
barians to be the enemy. The 
barbarians come as infantry and 
cavalr}^ and range from the inept 
Aedui and sword-fodder Auscii 
up to the very challenging Hel- 
vetii and Huns. Once the order 
of battle is definecl (by joystick), 
each group of combatants is 
placed on the map in (almost) 
random locations. 

The Barbarians Are 
On The March 

Before pressing START, you 



move the hollow square cursor 
over the map to locate the units 
and inspect the terrain so you 
can plan your strategy. Roman 
units appear in an orange-pink 
color, and the barbarians are 
blue. Infantry is symbolized by 
swords, cavalry by horse heads, 
and Caesar's unit by an eagle. 
As you move the cursor to the 
edge of the screen, the map will 
fine-scroll under the cursor to 
show^ the entire 2y4 by 3^2 screen 
map. Details on the map include 
effectively visual elevation con- 
tour lines and various forest 
symbols. 

Now push START. A drum- 
beat signals that the barbarians 
are on the march. They continue 
to march and attack until they 
are all eliminated or until Caesar 
is destroyed. They march whether 
or not you give orders to your 
troops. It is in this sense that the 
game is played in realtime. 

Let's examine the differ- 
ences from Eastern Front for a 
moment. Legionnaire's continu- 
ous action and ten units make it 
a reasonably fast game (it takes 
roughly between 2 to 15 minutes 
to play). It is fast enough when 
battle is joined to keep the inter- 
est of an arcade-game aficionado, 
but it also rewards good tactics 
enough to give those of us with 
slower reflexes a chance to win. 
Good tactics lead to fewer com- 
mand corrections or panic 
moves. 

While commanding your 
units, you should be aware of 
the effects of fatigue, slope, 
forests, and the differences in 
direct and flank attacks. Some 
units tire easily when marching 
or fighting and must rest to re- 
cover strength. Some units break 
up easily and should be backed 
up and given a chance to reor- 
ganize. Some are better at de- 
fense than offense. All these 
characteristics are spelled out in 
the 20-page booklet that accom- 
panies the game. The booklet 
also has short sections on getting 
started, Caesar's campaigns, 
and helpful tactics. 




lA\^ioufmirc 

The Legion That Has 
Trouble Standing Up 

Crawford points out that the 
traits of each tribe are fictitious 
and are not meant to be his- 
torically precise, but do offer 
you a wide selection of game 
scenarios. By the way, as you 
choose more and more legions 
to command, the added legions 
are, generally, less and less cap- 
able. On your tenth pick, you 
get Sabinus, whose legion has 
trouble standing up, let alone 
fighting. Oh yes. For every 
legion you pick, the enemy gets 
two units: one infantry and one 
cavalry. That can make things 
interesting. 

You might want to play 
your first game against the Aedui 
and Auscii to become familiar 
with the mechanics of the game. 
Count the loss of any of your 
units against these tribes as a 
devastating defeat, and aim for a 
score in the 30s. 

On the other hand, choose 
the Huns as opponents only 
when you want the ultimate 
challenge, feel lucky, and want 
to play for the least negative 
score. It doesn't matter which 
tribe you select for the enemy 
infantry. The Huns will get to 
you first and the game will be 
over before the infantry arrives. 
When I can reduce the Huns 
from five to three units before 
losing, I consider it a success. 

The middle choices are fun. 
One of the most enjoyable games 
1 played was against the Senones 
("average troops... neither ag- 
gressive nor steady. . . unreliable 
when attacked from the flanks 



or the rear") and the Nervii 
("most circumspect. . .generals 
value preparation... do not re- 
cover from combat shock easily"). 
The random placement was 
favorable, and allowed me to 
deploy my five units in good 
order at the top of a hill and then 
rest before the Nervii cavalry 
arrived. 

1 counterattacked their up- 
hill charge and hit their flanks 
with Crassus and Labienus. They 
broke, and I eventually con- 
quered them with the loss of 
only one unit, but with perma- 
nent reduction in strength to my 
remaining units. By this time I 
was on low ground, so I fell back 
to the forests and allowed the 
Senones to tire from marching. 

They did ncU immediately 
attack when they got close, but 
stopped to rest to rebuild their 
strength, so I had to attack before 
they recovered too much. Since 
the enemy was tired, I was able 
to break their units away from 
each other one by one and use 
the speed of Caesar and the 
cavalry to surround and then 
reduce each unit. Without too 
much fight left in any of my 
units, I finally won. 

Legionnaire is not the histori- 
cal simulation that Eastern Front 
is, but 1 think it will appeal to a 
much broader audience because 
the game is faster-paced, has 
fewer units to control, and is, 
therefore, a faster game. The 
choice of scenarios makes the 
game rich enough to hold your 
interest and offers a variety of 
skill levels. Legionnaire is an en- 
tertaining, attractive game in 
which thinking is more impor- 
tant than fast reflexes. 

Legionnaire comes on cas- 
sette tape for the Atari 400 and 
800, and requires at least 16K 
RAM. 



Legionnaire 
Avalon Hill Game Co. 
Mkrocompiiter Games Dizusion 
4517 Harford Road 
Baltimore, MD 21214 
$35 



July 1983 COMPUTE! 129 



L};co Computer Marketing & Consultartts 



TO ORDER 

CALL US 



TOLL FREE 800-233-8760 

In PA 1-717-39a-4079 



PERCOM DRIVE 

SI NGLE DRIVE AT88 $359.00 

ADD ON $289.00 

SINGLE DRIVE 40S1 $479.00 

ADD ON $329.00 

DUAL DRIVE 40S2 $845.00 

DUAL HEAD SINGLE DRIVE 44S1 ...$649.00 
DUAL HEAD DUAL DRIVE 44S2 . . . .$989.00 

HARD DISK DRIVES for 
APPLE IBM-PC TRS80* 

5 MAGABYTE DRIVE $1 099.75 

10 MEGABYTE DRIVE $1399.75 

15 MEGABYTE DRIVE $1799.75 

20 MEGABYTE DRIVE $2275.75 

•Add $30. OO for TRS-80 Drwes 

MONITORS 

NEC JB1260., S125.00 

NEC JB1 201 $1 55.00 

NECTC1201 ..... $315.00 

AMDEK 300G ... $159.00 

AMDEK COLOR i $269 00 



INTERFACING AVAILABLE 

APPLE DUMPLING GX $99.75 

APPLE DUM RUNG 64 ... {1 6 Bufterl ... $1 79,75 



MODEMS 




ANCHOR MARK 1 .. 


$79.00 


ANCHOR MARK II.. 


$79. OO 


HAYES SMART 


$239 OO 


HAYES MICRO H .. 


. $309,00 


CAT 


. $144 00 


J-CAT 


$CALL$ 







ATARI 


APPLE 


VIC 


EPSON 


....$35.00 . 


......$79.00 ., 


...$65.00 


CITOH 


....$35.00 . 


......$79.00 .. 


...$65.00 


NEC 

OK (DATA 


,...$35.00 , 
.„. $35.00 . 


$79.00 

$79.00 ■" 


...$65.00 
...$65.00 

..-$65.00 


GEMINI 


....$35.00. 


$79.00 ... 


...S65.00 


SMITH CORONA. 


....S35.00. 


.... ..$79.00 •*■ 


..,$65.00 



PRINTER ribbons! 

PROWRITER $9.9! 

InEC 2/$19.7* 

(smith corona ,,.$8.5C 
[EPSON .$10.9! 



SAVE -PRINTERS 

GEMINI 10. $319-00 

PROWRITER $375.00 

NEC8023A $429.00 

OKIDATA 92. $489.00 



OKI DATA 82 $399.00 

OKIDATA 83 .,..,... $639.00 

OKIDATA 84P . . $959.00 

OKIDATA 93 $819.00 

TRACTOR. .$49.75 



PROWRITER 2P $699.00 

GEMINI 15 $449.00 

STARWRITER. .... .$1 269.00 

PRI NTMASTER . . . . $1 589.00 

SMITH C0R0NATP1 . . .$549.00 



Ibuvnk diskettes 



ELEPHANT 


.$18.25 


MAXELL MDI 


.$32.75 


MAXELL MDII ....... 


.$42.75 


DISK CASE (holds 10^ 


$4.95 


DISK CASE (holds 50) . 


....$19,75 


ROM CASE (holds tOJ . 


....$19.75 


CALL for PRICES on 




RAIMA DISK DRIVES 




MICROMAINFRAME DRIVES 



EDUCATIONAL 

SOFTWARE 

STATES & CAPITALS $12.75 

EUROPEAN COUNTRIES $1 2.75 

FRENCH $45.00 

GERMAN $45.00 

SPAN ISH $45.00 

ALIEN ENCOUNTER $25.75 

GULP $25.75 

FRENZY $25.75 

BATTLING BUGS $25.76 

COMPU-MATH $23.75 

COMPU'READ $23.75 

ADDITION $1 4.95 

ANALOGIES $1 4.95 

LETS SPELL $14.95 

MEMORY BUJLDER $14.95 

MINICROSSWORD $1 4.95 

NUMBER SERIES $14.95 

PRESCHOOL lO BUILDER ..... .SI 4.95 

READING COMP .$1 4.95 

SAMMT the SEA SERPENT. . . . .$1 4.95 

SPELLING BUILDER SI 4.95 

STORY BUILDER ..$14.95 

VOCABULARY ONE $14.95 

VOCABULARY TWO $1 4.95 

WORD SEARCH $1 4.95 

PLAYER MISSILE $24.75 

MATH for FUN $1 3.95 

MUSIC LESSON ........$24.95 

FIGURE FUN ...$24.95 

COMPUTER 
COVERS 

800 .., $6.99 

810 $6.99 

400 S6.99 

410. $6.99 

TWA?AR^AHf^^?3^? 

32KRAM $69.75 

48KRAM $99.75 

64KRAM $129.75 

1 28K RAM DISK .... $399.75 
80 Colum Screen 

Board $279.75 

400 KEY BOARD .... $89-75 
TECHNICAL NOTES. . .$29.75 






Lsfco Computer Marketing & Consultants 



TO ORDER 

CALL US 



TOLL FREE 800-233-8760 

In PA 1-717-398-4079 



800 48K... $459.00 

with purchase of Programmer $49.00 

FREE CATALOG with over 60 manuf. for ATARI 




ATARI HARDWARE 

810 DISK DRIVE., $419 00] 

410 RECORDER .,,,.., ..$75.00 

1010 RECORDER . . . $75 Oo' 

850 INTERFACE. $1 64.00 

40016K S\99.75 

4O0 64K $349.75 

1 200 64K $CALL 

1025 PRINTER $419,75 

PACKAGES 

CX482 EDUCATOR .$109.75 

CX483 PROGRAMMER ...$51.75 

CX488 COMMUNICATOR . $219 00 

CX419 BOOKEePEB ....$164.75 

KX7104 ENTERTAINER $63.75 

De Re ATARI $19.75 

SOFTWARE 

QIX ..$31.75 

CXL401 2 MISSILE COMMAND ..$25.75 

CXL401 3 ASTEROID. - ..$25.75 

CXL4020 CENTIPEDE $29.75 

CXL4022 PACMAN $29.75 

CXL40n STAR RAIDER $29.75 

CXL4004 BASKETBALL ....$25.75 

CXL4006 SUPER BREAKOUT $25.75 

CXL4008 SPACE INVADER. .,...$25.75 

CXS130 CAVERNS OF MARS $27.76 

CXL4007 MUSIC COMPOSER $33,75 

CXL4002 ATARI BASIC ...$45,75 

CX8126 MICROSOFT $65.75 

CXL4003 ASSEMBLER 

EDITOR $45,75 



BUSINESS SOFTWARE 

VISICALC $1 59.75 

LETTER PERFECT. $11 5.75 

LETTER PERFECT (ROM) $149.75 

DATA PERFECT. $99.75 

TEXT WIZZARD S79.75 

SEPLLWtZZARD ..$64.75 

FILE MANAGER 800 f $69.75 

HOME FILING MANAGER ...,..$41.75 

BOOKKEEPER $119.75 

C.R.I.S $199.75 

ATARI WORD PRO .$109.75 

TAX ADVANTAGE $35.75 

HOME ACCOUNTANT $59.75 



ATARI 810. $409. 



ATARI 



^M CX81 26 MACRO ASSEMBLER 


..$69 75 ; 


^H CX415 HOME FILING 




^H MANAGER . 


,.,S41 75 


^M GALAXIAN 


..$29.75 


^M DEFENDER 


..$29.75 


^H 


..$29.75 


^H SPEED READING 


..$53.75 


^H ATARI WRITER. 


.554.75 


^M BOOKKEEPER...,. 


.$102.75 


^H CX401 8 PILOT HOME 


. $54.75 


^M ex 405 PI LOT E DUCATOR . . . 


..$91.75 


^^ CX404 WORD PROCESSING . 


..$99.75 



ENTERTAINMENT 
SOFTWARE 

MINER 2049er $32.75 

2AXX0N ..$29.75 

MONKEY WRENCH IL . . $52.75 

CRISIS MOUNTAIN ..$25.95 

WARLOCKS REVENGE ........ $25.95 

CHOPLIFTER $22.75 

TEMPLE OF ASPHI $26.75 

STAR WARRIOR- $26. /6 

INVASION ORION ,,...$19.75 

KING ARTHUR'S HEIR $22.75 

RESCUE AT RIGEL $22.75 

PACIFIC COAST .$23.75 

CANYON CLIMBER $23.75 

CLOWNS & BALLOONS $23.75 

MICRO PAINTER $23.75 

SANDS OF EGYPT S23.75 

APPLE PANIC .$21.75 

SERPENTINE $25.75 

STAR BLAZER $24.75 

WIZARD A PRINCESS $22.75 

FROGGER..... $22.75 

CROSS FIRE ...... . $32.75 

SAM SPEECH ................... $45.75 

VOICE BOX II ....,$125.75 

GORF (ROM) $29.75 

WIZARD OF WAR ..$26.75 

PREPPIE 2 ,..$19.75 

STRATOS $23,75 

SEA DRAGON $23.75 

POOL 1.5 $24.75 

POOL 400 .............. . .$28.75 

SPEEDWAY BLAST $28.75 

BAJA BUGGY $23.75 

STAR BOWL 

FOOTBALL $28.75 

SUBMARINE COMMANDER . ...$34.75 

JUMBO JET ...$34.75 

KICKBACK $34.75 

SOCCER $34.75 

SHAMUS $22.75 

SLIME .$22.75 



NEW RELEASES 

BANK STREET WRITER S49.75 

JUMPMAN $26.75 

PHAROAH'S CURSE $24.75 

FORT APOCALYPSE . $24.75 

ELIMINATOR SI 8,75 

BOOK Of ATARI 
SOFTWARE 1983 
346 pages $1 6.75 

JOYSTICKS 

POINT MASTER ... SI 2.75 

WICO 

APPLE -VIC- ATARI -Tl 

COMMAND CONTROL ...... $23.75 

RED BALL $26.75 

TRACK BALL . . $52,75 

EXTENSION CORD $9.75 

APPLE ADAPTOR $1 8.95 

T.I, ADAPTOR $9.95 



POLICY 



In-Stock Items shipped withrn 24 hours of order PersonaJ 
[checks require four weeks clearance before shippmg No 
i deposit for COD orders PAresidentsaddsales taK All products 
I subject lo avaHabiiitv and price change Advertised prices 

show 4^'' discount offered for cash Add 4"< for Mastercard and 

Visa 



VIC 20 $CALL 

VIC 64 SCALL 

1 542 DISK DRIVE $339.75 

1525 PRINTER $339.75 

1530 DATASETTE. ....... .$69,75 

1110 8K RAM S53.75 

1211 SUPER EXPANDER ..S53. 75 

1212 PROGRAMMERS AID .. $44.75 

1213 VICMON $44.75 

VIC 20 DUST COVER,... $6.99 

VIC 64 OUST COVER.. S6-99 

CASSETTE INTERFACE $29.75 

6 SLOT EXPANSION SB9.75 

3 SLOT EXPANSION $29.75 



TO ORDER 
CALL TOLL FREE 

800-233-8760 



|ln PA 1-71 7 398-4079 
or $«nd order to 
Lyco Computar 
P.O. Box 5088 

[Jersey Shore. PA 177401 



How To Type COMPUTE!'s Programs 



Many of the programs which are iisled in COMPUTE! contain 
Special control characters (cursor control, color keys, inverse 
video, etc.). To make it easy to tell exactly what to type when 
entering one of these programs into your computer, we have 
established the following listing conventions. There is a 
separate key for each computer. Refer to the appropriate 
tables when you come across an unusual syrnbol in a program 
listing. If you are unsure how to actually enter a control 
character, consult your computer's manuals. 

Atari 400/800 

Characters in inverse video will appear like: e]cii£iigkei«£ekegki: 
Enter these characters with the Atari logo key, lA). 

Hhwn ycxj mmm Type 3— 



iCXEARl 


ESC 


SHIFT < 


n 


CI Bar ScrmwTt 


CUP> 


ESC 


CTRL - 


♦ 


Cursor Up 


{DONN> 


ESC 


CTRL - 


-^ 




£LEFT> 


ESC 


CTRL + 


^ 


Cursor Left 


<RIQHT> 


ESC 


CTRL « 


-► 


Cursor Ri ght 


CBACK S} 


ESC 


DELETE 


4 


Backsp«c« 


CDELETEJ 


ESC 


CTRL DELETE 


U 


Del4it« charActer 


tlNSERT) 


ESC 


CTRL INSERT 


U 


Insert character 


(DEL LINE} 


ESC 


SHIFT DELETE 


a 


Dttlcte line 


CINS LlhCJ 


ESC 


SHIFT IhBERT 


a 


Insvrt line 


CTABJ 


ESC 


TAB 


► 


TAB key 


tCLR TAB> 


ESC 


CTRL TAB 


Q 


Cl«ar tab 


CSET TAB> 


ESC 


SHIFT TAB 


□ 


S«t tab stop 


CBELL> 


ESC 


CTRL 2 


□ 


Ring buzzmr 


CESC> 


ESC 


esc 


*, 


ESC«p« k*y 



Graphics characters, such as CTRL-T, the ball character • will 
appear as the ''normal" letter enclosed in braces, e.g. tTJ. 

A series of identical control characters, such as 10 spaces, 
three cursor-lefts, or 20 CTRL-R's, will appear as 110 
SPACES ^ ^ 3 LEFT), f 20 RJ, etc. If the character in braces is 
in inverse video, that character or characters should be en- 
tered with the Atari logo key. For example, t n J means to 
enter a reverse-field heart with CTRL-comma, t 5© 1 means to 
enter five inverse-video CTRL-U's. 

Cominodore PET/CBMA^IC 



Please refer to "A Beginner's Guide To Typing In Pro- 
grams'* for an explanation of the changes in Commodore 
listing conventions. 



Generally, any PET/CBMA^IC program listings will contain 
bracketed words which spell out any special characters; 
t DOWN liwould mean to press the cursor-down key; 
1 3DOWN J would mean to press the cursor-down key three 
times. 

To indicate that a key should be shifted (hold down the 
SHIFT key while pressing the other key), the key would be 
underlined in our listing. For example, S w^ould mean to 
type the S key while holding the shift key. This w^ould result 
in the "heart" graphics symbol appearing on your screen. 
Some graphics characters are inaccessible from the keyboard 
on CBM Business models (32N, 8032). 

Sometimes in a program listing, especially within quoted 
text when a line runs over into the next line, it is difficult to 
tell where the first line ends. How many times should you 
type the SPACE bar? In our convention, when a line breaks 
in this way, the - symbol shows exactly where it broke. 



All Commodore Machines 

Clear Screen {CLEAR} 
Home Cursor { HOME} 
Cursor Up {UP} 
Cursor Down { DOWN } 
Cursor Rigtit {RIGHT} 
132 COMPimi July 1983 



Cursor Left 
Insert Character 
Delete Character 
Reverse Field On 



(LEFT} 
{INST} 
{DEL} 
{RVS} 



Function Two 


IF2} 


Function Three 


{F3} 


Function Four 


{F4} 


Function Five 


{F5} 


Function Six 


{F6} 


Function Seven 


{F7} 


Function Eight 


{F8} 


AnyNon-imple 


mented 


Function 


fNIM} 



VIC/CBM 64 Conventions 

Set Color To Black {BLK} 
Set Color To White {WHT} 
Set Color To Red {RED} 
Set Color To Cyan {CYN} 
Set Color To Purple { PUR} 
Set Color To Green {GRN} 
Set Color To Blue {BLU} 
Set Color To Yellow { YEL} 
Function One {Fl} 

To enter any color code, hold down CTRL and press the 
appropriate color key. Use CTRL-9 for RVS on and CTRL-0 

for RVS off. 

8032/Faf 40 Conventions 

SetWindowTop (SET TOP} Erase To Beginn ing { E R AS E B EG } 
Set Window Bottom (SET BOT} Erase To End {ERASE END} 

Scroll Up {SCR UP} Toggle Tab {TGL TAB) 

Scroll Down { SCR DOWN} Tab {TAB} 

InsertLine {INST LINE} EscapeKey {ESC} 

DeJeteLine {DEL LINE} 

When you sec an underlined character in a PET/CBM/VIC 
program listing, you need to hold down ShUFT as you enter 
it. Since the VIC-20 and Commodore 64 have fewer keys 
than the PET/CBM, some graphics are grouped with other 
keys and have to be entered by holding down the Commodore 
key. If you see any of the symbols in the left column imder- 
lined in a listing, hold down the Commodore key and enter 
the symbol in the right column. Just use SHIFT to enter all 
other underlined characters. 



f 


K 


-*- 


* 


1 


E 


tt 


I 


t 


PI 


2 


R 


# 


T 




s 


3 


W 


$ 


(fi 


- 


z 


4 


H 


% 


G 


= 


X 


5 


J 


' 


M 


< 


c 


6 


L 


& 


+ 


> 


V 


7 


Y 


\ 


— 


f 


D 


8 


U 


f 


F 


/ 


F 


9 


I 


7 


B 


* 


N 


(a 


SHIFT* 


( 


£ 


+ 


Q 


I 


SHIFT + 


) 


SHIFTS 





A 


1 


SHIFT- 



Reverse Field OK { OFF) 



Apple II /Apple il Plus 

All programs are in Applesoft BASIC, unless otherwise 
stated. Control characters are printed as the "normal" char- 
acter enclosed in brackets, such as I D Ifor CTRL-D. Hold 
down CTRL while pressing the control key. You will not see 
the special character on the screen. 

TRS-80 Color Computer 

No special characters are used, other than lowercase. When 
you see letters printed in inverse video (white on black), 
press SHIFT'O to enter the characters, and then press SHlFT-0 
again to return to normal uppercase typing. 

Texas Instruments 99/4 

No special control characters are used. Enter all programs 
with the ALPHA lock on (in the down position). Release the 
ALPHA lock to enter lowercase text, 

TImex TS-1000, Sinclair ZX-81 

Study your computer manual carefully to see how to enter 
programs. Do not type in the letters for each command, 
since your machine features single-keystroke entry of BASIC 
commands. You may want to sw^itch to the FAST mode 
(where the screen blanks) while entering programs, since 
there will be less delay between lines. (If the blanking screen 
bothers you, switch to the SLOW mode.) 



AARDVARK - THE ADVENTURE PLACE 
TRS-80 COLOR COMMODORE 64 VIC-20 SINCLAIR/TIMEX TI99 



WE CARRY MORE THAN ADVENTURES!! 

MAXi-PROS WORD PROCESS!NG ti^^ 

The easiest to use word processor that ! 
know of. Has al! the features of a major word 
processor (right and left margin justification, 
page numbering, global and line editing, single, 
double, triple spacing, text centering, etc.) at 
a very cheap price because we wrote it in 
BASIC. Includes 40 page manual and learning 
guide. Easily modified to handle almost any 
printer combination. Available on disk or tap)e 
for VIC20, COMMODORE64, and TRS-80 
COLOR computer. Requires 13k RAM on 
Vic, 16k EXTENDED on TRS-SO COLOR. ^ 
$19.95 on tape $24.95 on disk. ^^ 

GENERAL LEDGER - Complete bookkeep- 
ing for a small business. Disk required. For 
Vic20 {13k), Commodore64, TRS^O COLOR 
(16k EXTENDED), $69.95 (Send $1.00 for 
manual before ordering.) 



^ 




m 


\ 


'A 


■^ 


















[ J 


u 'J 


v 








— . 


y 


V 






X 


N 





LABYRJNTH - 16K EXTENDED COLOR 
BASIC — With amazing 3D graphics, you fight 
your way through a maze facing real time 
monsters. The graphics are real enough to 
cause claustrophobia. 

Similar game for Ttmex/Srnclair 16k - hunting 
treasure instead of monsters $14.95, 




ADVENTURE WRITING/DEATHSHIP by 
Rodger Oisen — This is a data sheet showing 
how we do it. It is about 14 pages of detailed 
instructions how to write your own adven- 
tures. It contains the entire text of Deathship. 
Data sheet - $3.95. NOTE: Owners of TI99, 
TRS-80, TRS-80 Coior, and Vic 20 computers 
can also get Deathship on tape for an addi- 
tional $5.00. 

Dealers— We have the best deal going for you. 
Good discounts, exchange programs, and fac- 
tory support. Send for Dealer Information. 
Authors — Aardvark pays the highest commis- 
sions in the industry and gives programs the 
widest possible advertising coverage. Send a 
Self Addressed Stamped Envelope for our 
Au^ors Information Package. 



ADVENTURES — Adventures are a unique 
form of computer game. They )et you spend 
30 to 70 hours exploring and conquering a 
world you have never seen before. There is 
little or no luck in Adventuring. The rewards 
are for creative thinking, courage, and wise 
gambling — not fast reflexes. 

tn Adventuring, the computer speaks and 
listens to plain English. No prior knowledge 
of computers, special controls, or games is re* 
quired so everyone enjoys them — even people 
who do not like computers. 

Except for Quest, itself unique among Ad- 
venture games. Adventures are non-graphic. 
Adventures are more like a novel than a comic 
book or arcade game, ft is like reading a par- 
ticular exciting book where you are the main 
character. 

All of the Adventures in this ad are in Basic. 
They are fuf) featured, fully plotted adventures 
that will take a minimum of thirty hours (in 
several sittings) to play. 

Adventuring requires 16k on Sinclair, TRS- 
80, and TRS-80 Color. They require 8k on OS! 
and 13k on VIC-20. Sinclair requires extended 
BASIC. Now available for TI99. 



PYRAMID by Rodger Olsen - This is one of 
our toughest Adventures. Average time 
through the Pyramid is 50 to 70 hours. The 
old boys who built this Pyramid did not mean 
for it to be ransacked by people like you. 

Authors note to players — This is a very 
entertaining and very tough adventure. I left 
clues everywhere but came up with some in- 
genous problems. This one has captivated 
people so much that I get calls daily from as 
far away as New Zealand and France from 
bleary eyed people who are stuck in the 
Pyramid and desperate for more clues. 

MARS by Rodger Olsen - Your ship crashed- 
on the Red Planet and you have to get home. 
You will have to explore a Martian city, repair 
your ship and deal with possibly hostile aliens 
to get home again. 

Authors note to players — This is highly 
recommended as a first adventure. It is in no 
way simple — playing time normally runs from 
30 to 50 hours - but it is constructed in a 
more "open" manner to let you try out ad- 
venturing and get used to the game before 
you hit the really tough problems. 



TREK ADVENTURE by Bob Retelle - This 
one takes place aboard a familiar starship and 
is a must for trekkies. The problem is a famil- 
iar one - The ship is in a "decaying orbit" 
(the Captain never could learn to park!) and 
the er>gines are out (You would think that in 
all those years, they would have learned to 
build some that didn't die once a week). Your 
options are to start the engine, save the ship, 
get off the ship, or die. Good Luck. 

Authors note to players — I wrote this one 
with a concordance in hand. It is very accurate 
— and a Jot of fun. It was nice to wander 
around the ship instead of watching it on T.V, 

DERELICT by Rodger Olsen and Bob Ander- 
son — For Wealth and- Glory, you have to ran- 
sack a thousand year old space ship. You'll 
have to learn to speak their language and 
operate the machinery they left behind. The 
hardest problem of all is tojive through it. 

Authors note to players — This adventure 
is the new winner in the "Toughest Adventure 
at Aardvark Sweepstakes". Our most difficult 
problem in writing the adventure was to keep 
it logical and realistic. There are no irrational 
traps and sudden senseless deaths in Derelict. 
This ship was designed to be perfectly safe for 
its' builders. It just happens to be deadly to 
alien invaders like you. 

Dungeons of Death - Just for the 16k TRS- 
80 COLOR, this is the first D&D type game 
good enough to qualify at Aardvark, This is 
serious D&D that allows 1 to 6 players to go 
on a Dragon Hunting, Monster Killing, Dun- 
geon Exploring Ouest. Played on an on-screen 
map, you get a choice of race and character 
(Human, Dwarf, Soldier, Wizard, etc.), a 
chance to grow from game to game, and a 15 
page manual. At the normal price for an Ad- 
venture ($14<95 tape, $19.95 disk), this is a 
giveaway. 




QUEST by Bob Retelle and Rodger Olsen - 

THIS IS DIFFERENT FROM ALL THE 
OTHER GAMES OF ADVENTURE!!!! It is 
played on a computer generated map of 
Alesia. You lead a small band of adventurers 
on a mission to conquer the Citadel of Moor- 
lock. You have to build an army and then arm 
and feed them by combat, bargaining, explora- 
tion of ruins and temples, and outright ban- 
ditry. The game takes 2 to 5 hours to play 
and IS different each time. The TRS*80 Color 
version has nice visual effects and sound. Not 
available on OSI. This is the most popular 
game we have ever published. 

32K TRS 80 COLOR Version $24.95. 

Adds a second level with dungeons and 
more Questing. 

PRICE AND AVAILABILITY: 

All adventures are $14.95 on tape. Disk 
versions are available on VIC/COMMODORE 
and TRS-80 Color for $2.00 additional. $2.00 
shipping charge on each order. 



Please specify system on all orders 

ALSO FROM AARDVARK — This is only a partial list of what we carry. We have a lot of other games (parttcutarly for the 
TRS-80 Color and OSU, business programs, blank tapes and disks and hardware. Send $1.00 for our complete catalog. 



g, AARDVARK 

2352 S. Commerce, Walled Lake, Ml 48088 / (31 3) 669-31 1 

Phone Orders Accepted 8:00 a.m. to 4:00 p.m. EST. Mon.-Fri. 
TRS-80 COLOR TIMEX/SINCLAIR COMMODORE 64 

$2.00 shipping on each order 




% 



VIC-20 



July 1983 COMPUTEI 133 



A Beginner's Guide 
To Typing In Programs 



A Change In Commodore 
Listing Conventions 

Commodore owners may notice some slightly 
unfamiliar characters in a few of the programs 
this month. We're making a transition to new 
listing conventions for Commodore machines 
which should make typing in listings easier. 

By next month, all listings will conform to 
the new conventions. Most of the changes should 
be fairly easily understood. Brackets still indicate 
special characters, although a few labels have 
been changed to make them more nearly match 
their equivalent keys. For example, I CLEAR] has 
been replaced with {CLR}. hi the old conventions, 
underlining was used to indicate both shifted 
characters and (for the VIC and 64) graphics char- 
acters accessed with the Commodore logo key. In 
the new conventions, underlining is used only to 
indicate characters which should be typed while 
holding down the SHIFT key. 

A new set of brackets has been introduced to 
indicate characters accessed with the Commodore 
logo key. Whenever you see a character sur- 
rounded by g3/ yoi-i should hold down the Com- 
modore logo key and type the indicated key. For 
example, the graphics ball character is represented 
by iQi- As with the other brackets, a character 
preceded by a number indicates how many times 
you should type the specified character. For 
example, §22 T3 means to hold down the Com- 
modore key and type T twenty-two times. 



BASIC Programs 

Computers can he picky. Unlike the English lan- 
guage, which is full of ambiguities, BASIC usually 
has only one "right v^ay" of stating something. 
Every letter, character, or number is significant. 
Also, you must enter all punctuation such as 
colons and commas just as they appear in the 
magazine. Spacing can be important. To be safe, 
type in the listings exactly as they appear. 

Brackets And Special Characters 

The exception to this typing rule is when you see 
the curved bracket, such as "{DOWN}". Any- 
thing within a set of brackets is a special character 
or characters that cannot easily be listed on a print- 
er. When you come across such a special state- 
ment, refer to the appropriate key for your com- 
puter. For example, if you have an Atari, refer to 
the "Atari" section in "How to Type COMPUTEl's 
Programs." 

134 COMPUTE! July 1983 



About DATA Statements 

Some programs contain a section or sections of 
DATA statements. These lines provide informa- 
tion needed by the program. Some DATA state- 
ments contain actual programs (called machine 
language); others contain graphics codes. These 
lines are especially sensitive to errors. 

If a single number in any one DATA statement 
is mistyped, your machine could "lock up," or 
"crash." The keyboard, break key, and RESET (or 
STOP) keys may all seem "dead," and the screen 
may go blank. Don't panic ~ no damage is done. 
To regain control, you have to turn off your com- 
puter, then turn it back on. This will erase what- 
ever program was in memory, so always SAVE a 
copy of your program before you RUN it. If your 
computer crashes, you can LOAD the program 
and look for your mistake. 

Sometimes a mistypeci DATA statement will 
cause an error message when the program is RUN. 
The error message may refer to the program line 
that READs the data. The error is still in the DATA 
statements, though. 

Get To Know Your Machine 

You should familiarize yourself with your com- 
puter before attempting to type in a program. 
Learn the statements you use to store and retrieve 
programs from tape or disk. You'll want to save a 
copy of your program, so that you won't have to 
type it in every time you want to use it. Learn to 
use your machine's editing functions. How do 
you change a line if you made a mistake? You can 
always retype the line, but you at least need to 
know how to backspace. Do you know how to 
enter inverse video, lowercase, and cc>ntrol char- 
acters? It's all explained in your computer's 
manuals. 

A Quick Review 

1) Type in the program a line at a time, in order. 
Press RETURN or ENTER at the end of each line. 
Use backspace or the back arrow to correct 
mistakes. 

2) Check the line you've typed against the line in 
the magazine. You can check the entire program 
again if you get an error when you RUN the 
program. 

3) Make sure you've entered statements in brac- 
kets as the appropriate control key (see "How To 
Type COMPUTE !'s Programs" elsewhere in the 
magazine.) 



Now the VIC 20 and 64 can 
communicate with PET peripherais 




^^^^ssssz^ 



?^&^^&--.., 



■""-■-« 




-^""^^Sii'siiiiii 




VIC and 64 users 

Would you like to be able to access any of these 
peripherals from your computer? 

1/3 megabyte disks (Commodore 4040 drive) 

1 megabyte disks (Commodore 8050 drive) 

1 megabyte disks (Commodore 9090 hard disk) 

Printers including a wide range of inexpensive 
IEEE and RS232 matrix and quality printers 

IEEE instruments such as volt meters, plotters etc. 

Now you are no longer limited by the VIC or the 64*s 
serial bus. Simply by attaching INTERPODyou can 
vastly increase the power of your VIC 20 and when 
used with the new 64, INTERPOD turns the computer 
into a really powerful system. 



With INTERPOD the VIC and 64 become capable of 
running really professional quality software such as 
Word-processing, Accounting, Instrument control and 
many more. 

INTERPOD will work with any software. No extra 
commands are required and INTERPOD does not 
affect your computer in any way. 

Using nVTERPOD is as easy as this: 

Simply plug INTERPOD into the serial port of your 
computer, power-up and you are ready to 
communicate with any number of parallel and serial 
IEEE devices and any RS232 printer. 

INTERPOD costs #180 



II4TIk»I><>I> 



Limbic Systems Inc* 1056 El well Court, Palo Alio, CA 94303 



On The Road With Fred D'Ignazio 




Sesame Street 
And Interactive TV 



It was like Super TV. I was sitting in a folding 
chair in the Grand Ballroom at the Hyatt Regency 
Hotel in Tampa, Florida. In front of me was a 
giant TV screen. Behind me was an audience 
numbering in the hundreds. Nearby were all sorts 
of mysterious high-technology devices. Writhing 
across the floor, like rainbow-colored pythons 
from a tropical rainforest, were dozens of cables. 

The room darkened. The screen grew bright. 

A big, blue, scruffy-looking creature appeared 
on the screen. It was Cookie Monster. He was 
wearing a chefs hat and munching a chocolate 
chip cookie. Crumbs flew in all directions. 

It wasn't TV after all. It was a new computer 
game from the Children's Computer Workshop 
(CCW). CCW is a new division of Children's 
Television Workshop (CTW), the producers 
oiScsmfie Street, Electric Compamf, 3-2-1 Contact 
and other children's educational programs and 
materials. 

Last year CCW released its first four electron 
learning disk packages: 

Ernie's Quiz (For children 4 to 7)* 

Instant Zoo (Ages 7 to 10)* 

Spotlight (Ages 9 to 13)'^ 

Mix and Match (For the whole family) 

Each package contains four programs that 
run on a 48K Apple. The starred packages (*) re- 
quire Integer BASIC. The unstarred package (Mix 
and Match) requires Applesoft BASIC. Ernie's Quiz 
and Spotliglit require paddles. All packages are 
more effective if you have a color TV. The packages 
each cost $49.95. For more information, contact 
your local Apple dealer, or write: 

Apjple Computer Company 
20525 Mariaui Avenue 
Cupertino, CA 95014 
40SI996-W10 

Cookie Monster Munch 

Barbara Stewart, a project manager from CCW, 

136 COMPUTE! Juiy19a3 



had brought Cookie Monster to the Hyatt Regency 
Hotel in Tampa. The occasion was the third 
annual Florida Instructional Computing Confer- 
ence, one of the largest regional educational 
computing conferences in the country, held from 
March 28-30. 

Barbara was the conference's keynote 
speaker. In her speech, she announced that CCW 
was producing a new line of educational programs 
for the Radio Shack Color Computer (16K) and for 
the Atari 2600 VCS computer and game system. 
CCW plans to develop each cluster of programs 
on a particular machine and have the computer 
manufacturer distribute them through its standard 
outlets. Eventually, at least one set of CCW pack- 
ages will be available for many of the bestselling 
computers. In 1983, CCW will be producing 24 
children's learning games. Half of the games will 
be for classroom use, half for home use. 

Cookie Monster Munch is typical of the new 
Atari games. The game is a numerical maze game 
for kids ages three to seven. It comes with a color- 
ful booklet explaining how the game works. The 
Table of Contents and other sections are all hand 
printed, as if by Cookie himself. I like the ''Note 
to Parents" at the beginning of the booklet- Also, 
a symbol of a parent with his or her arm around 
the shoulders of a child is used throughout the 
booklet. The symbols are accompanied by sug- 
gestions to increase and enrich parent-child inter- 
actions with the computer and loith each other. 

And how do the kids and their parents inter- 
act with the computer? They use the new Atari 
Kid's Controller. CCW worked with Atari to de- 
velop the Controller. It's a large numerical keypad 
with big buttons and is very sturdy. It plugs into 
the left controller jack at the back of the Atari 2600 
VCS and is an easy-to-use keyboard or joystick 
for game play. Each CCW package contains a 
colorful plastic overlay that fits atop the Kid's 
Controller. 



Complete Personal Accountant: 
we've made the best 
much more friendly. 



If you have any doubts that we offer the best and 
most complete personal financial package available, 
look over the features listed below. Now we have 
the only package with full screen editing for Atari 
400/800f TRS-80 COLOR, Commodore 64* and 
VIC-20; the ability to move the cursor in any direc- 
tion makes our accountant-designed package ^^ 
even more friendly than before. No one else ^^^ 
offers all of these: 

1. CHECKBOOK MAINTENANCE- . 
automatically balances your checkbook A 
with each entry; manages checks, 
charges, deposits, and interest quick- a 
ly and accurately. ^ 

2, CHART OF ACCOUNTS- 
maximum of user flexibilty with 
up to 99 accounts plus 9 sub- 
categories may be defined. 
3,CHECKSEARCH-muh 
ti-reference; tracks items 
on every field including 
tax deductibles. 

4. NET WORTH/ 
INCOME/EXPENSE ' 
STATEMENT- 
know-exactly- 
where-you-stand ^ 
program generates 
statements with the ^ 
touch of a key. ^^ 

5. DETAIL & SUMMARY ^ 
BUDGET ANALYSIS-an 
absolute necessity in financial 
planning. ^ 

6. CHECK WRITER-prints 
personalized checks?* 



7. PAYMENTS/APPOINTMENTS CALENDAR- 
monthly displays of up to 250 bills and 200 
appointments. 

8. COLOR GRAPH DESIGN PACKAGE -graphs 
all monthly files. 

9. MAILING LIST— maintains all records, sorts by 
name or zip, allows add/change/delete. 

10. FRIENDLY USER MANUAL-complete 

with indexing, flow charts and diagrams; the 
L most thorough documentation on the 
^ market. 

. This all adds up to the finest personal 
k. financial system available— compre- 
hensive enough for a small business, 
k Less than one hour of data input 
■^ per montft will allow this menu- 
driven package to help you 
^ handle your finances with a 
lot more fun than drudgery. 

Plus, ours is the only 
^ expandable system; pur- 
chase the package in 
sections and add on 
^ as your financial 
^ needs grow. Fea- 
tures 1,2, 3 and 6: 
^ $39.95 diskette, 

$36.95 cassette; Fea- 
tures 4 and 5: $29.95 
diskette, $26.95 cassette; 
Features 7, 8 and 9: $29.95 
diskette, $26.95 cassette; or 
save $19.90 or S15,90 
respectively by buying the 
entire system for S79.95 dis- 
kette, S74.95 cassette. 



It notice. See your Jocal dealer or order direct. New catalog avaMabte. 
Add S 3.00 tor postage and handling. Credit card orders call toll free: 

1-800-334-SQFT 

DILA1.ER INQUIRIES INVITED 



programmer^ 






a division of fUtUTeSfflSl© 
P.O. box 3470, dept. C, chapel hill, north Carolina 27514, 919-967-0861 




Cookie Monster's Munch for the Atari 

Cookie Monster Munch is a maze game, so the 
child has to make characters in the game move up 
and down, left and right, through the maze. Ac- 
cordingly, the overlay has a big picture of Cookie 
Monster and designates buttons (hidden under- 
neath the overlay) as movement buttons with big 
arrov^s for all four directions. It's so easy to use 
that even toddlers with small hands and adults 
with keyboard phobia will be able to play. 

Another nice feature of the games is the Read 
Aloud Story in the beginning of each booklet. 
With personal computer graphics (especially VCS 
graphics) still at a relatively primitive level, the 
images of the Sesame Street characters, like Cookie 
Monster, are nowhere near as nice looking as 
they are on TV. But the story helps remedy this 
problem. It engages tlie child's ami the parent's imagi- 
nation, and it gives the simple lookiiig gatiie on the TV 
display meaning and depth. 

Cookie Monster discovers a chocolate chip 
cookie garden. He begins running around the 
garden picking up cookies. He takes the cookies 
and puts them in his cookie jar. Cookie's inten- 
tions are sensible, but he can't resist eating the 
cookies before he makes it to the jar. A little kid 
appears - the Cookie Kid. Cookie Kid tries to col- 
lect the cookies and put them in the jar before 
Cookie can eat them. 

The paths in the cookie garden are like a maze. 
There are ten different game levels and mazes. 
The easier games are one-person games. The 
harder games are one- and two-person games. 

Like the Sesame Street TV program, the games 
are designed as entertaining ways to teach kids 
prereading skills. The kids get to move Cookie 
Monster or the Cookie Kid through the mazelike 

138 COMPUTE! July 1983 



cookie garden. Tracing the maze pattern while 
remaining within its borders helps kids practice 
the hand-eye coordination they'll need for begin* 
ning reading and writing. Also they learn to follow 
directional arrows and become familiar with the 
relational concepts of up, down, left, and right. 

Peanut Butter Panic 

Here are some other new CCW games: 

• Ernie's Magic Shapes. This is a home game 
for kids ages three to six that runs on the TRS-80 
(16K) Color Computer, Kids help Ernie zap geo- 
metric shapes and use them to build colorful 
figures. The games help kids develop classification 
skills including matching shapes, recognizing 
embedded figures, structuring parts of an object 
into a meaningful whole, and discriminating be- 
tween similar and different shapes. 




Ernie's Magic Shapes on T RSI SO Color Computer 16K. 

• Grover's Number Rover, This is a home game 
for kids ages three to six that runs on the (16K) 
Color Computer. Grover floats across the top of 
the screen in his Number Rover. The child helps 
Grover find the answer to his arithmetic problem. 
When the child discovers the number that solves 
Grover's problem, Grover picks up that number 
of Twiddlebugs, This is a humorous part of the 
game. The Twiddlebugs are upside down. 




Grover's Number Rover oh TRS/SO Color Computer 16K. 




Let your VIC20 
TALK TO YOU 

with our 
Votrax Based 

"voice synthesizer" 



'^9 



00 





\^we' 



Real Sound 

Adventures 

Talking 

Action 

Games 



+ 



You can easily program your voice synthesizer 
to give you real sound adventures and talking ac- 
tion games. With our speech editor you can 
create words and sentences using easy to read 
symbols that translate into data statements to be 
used in your own custom programs. 



Voice Synthesizer 

Special Synthesizer Speaker * 



$109.00 
Sale $79.00 

List $19.95 

Sale $14.95 




Word Creator Editor Tape and manual * List $14.95 

Sale $9.96 



• FREE — Your choice of $19.95 
Speaker and Cabinet A" or $14.95 
Voice Editor, 



E N TE R P R I Z E S (^^ ^^^^ ^^^ customers) 

BOX 550, BARRINQTON, ILLINOIS 60010 
Phont 312/332*5244 to ordtr 



July 1983 COMPUTE! 139 



• Taxi. This is a home game for kids ages 
seven and up that runs on the 16K Color Com- 
puter. This is a junior adventure game. Kids get 
to operate a two-cab company in any one of six 
cities around the world. They pick up passengers, 
deliver them to their destinations, and earn fares 
and tips. The game encourages visual problem- 
solving in a cooperative environment. 




Screen from Taxi ^\^ame on TRS/SO Color Cowpiifer 16K. 

• Peanut Butter Panic, This is another funny 
game. It is a home game for kids seven and up 
that runs on the 16K Color Computer. Two little 
nutniks try to catch stars that zip by above them 
in the sky. Kids control the nutniks and launch 
them from a platform that resembles a giant 
seesaw. The nutniks can jump up and down on 
their own, or two kids can launch them from the 
seesaw. 

When the nutniks jump up and down they 
lose weight and get real skinny. When they get 
skinny, they can't jump as high. To get fat again 
they have to eat peanut butter sandwiches. They 
build a peanut butter sandwich by catching stars. 
They have to watch out for mean snarfs who swoop 
down out of the sky and steal their sandwiches. 



The primary objective of this delightful game 
is teamwork and cooperation. 

• Picture Place. This school game is for kids 
ages five and up. (1 think that it is a good game 
for preschoolers, too.) 

Kids get to choose a picture from a library of 
six background scenes, including a city and a 
countryside. At the bottom of the screen are word 
boxes with words inside like dragon, car, bicycle, 
family, and castle. Kids choose a word by moving 
a joystick and positioning a big "cursor box'' so 
that it overlaps with one of the word boxes. They 
pick up the word box and move it up the screen 
and position it on the background scene. Then, 
when they press the RETURN button, the word 
transforms into a picture. For example, the word 
"dragon" becomes a picture of a dragon, set in 
the world pictured in the background scene. 

CCW's Values And Goals 

Barbara Stewart thinks that personal computers 
will evolve into "interactive TV," She wants to 
create programs for TV that will accomplish the 
same goals as the Sesame Street programs on regu- 
lar TV. The programs will focus primarily on de- 
veloping math and reading readiness skills. But 
thev will also stress certain fundamental Sesame 



Mm 



1^ 
1^ 



ujomori 


:=J hi e s^ p 






O 


the 


hou^e 


f^nc^ 


end 




Screen froui Peanut Butter Panic o/j TRS/80 Color 
Computer J6K. 

140 COMPUTE! July 1983 



Screen from Picture Place on TRS/SO Color Computer 32K, 

Street values, including teamwork, cooperation, 
and nonsexist, nonviolent, pro-social plav. 

The programs are to be appropriate to their 
target age group and appealing to both girls and 
boys. They should meet educational goals for 
children of each age group and development level. 
They should be easy to understand, easy to play, 
and nonjudgmental. They should not frustrate 
children. Instead, they should encourage a child 
to grow and improve his or her self-image. 

If these games prove to be as thoughtfully 
and as creatively executed as Sesame Street itself, 
children (and parents) everywhere can look 
forward to exceptionally rewarding educational 
experiences via "interactive television." © 



COMMODORE 


64c 


Atneriean Peripherals 


GAMES 


EDUCATIONAL 


EDUCATIONAL 


(on tape) 


(on tape) 


Series on disk 


646 Pacacuda 19.95 


644 Type Tutor 19.95 


Computer Science (30 programs) S350 


650 Logger 19.95 


645 Assembly Language 


HS Biology (70 programs) $500 


651 Ape Craze 19.95 


Tutor 14.95 


HS Chemistry (40 programs) S450 


652 Centropod 19.95 


687 Fractional Parts 14.95 


HS Physics (60 programs) $475 


653 Escape 19.95 


902 Estimating Fractions 14.95 


HS SAT Drill (60 programs) 899. 


641 Monopoly 19.95 


695 Tutor Math 14.95 


Elem. Social Studies (18 pr.) $225 


642 Adventure #1 19.95 


870 Square Root Trainer 14.95 


Elem. Science (18 programs) $225 


648 Galactic Encounter 9. 


699 Counting Shapes 14.95 


Elem. Library Science (12 pr.) S170 


667 Yahtzee 14.95 


694 Money Addition 14.95 


Librarians Package (4 utilities) $110 


671 Robot Blast 14.95 


689 Math Dice 14.95 


3rd Grade Reading (20 lessons) $99. 


673 Moon Lander 14.95 


678 Speed Read 14.95 


4th Grade Reading (20 lessons) S99. 


676 Othello 14.95 


643 Maps and Capitals 19.95 


5th Grade Reading (20 lessons) $99. 


686 Horserace-64 14.95 


645 Sprite Editor 19.95 


6th Grade Reading (20 lessons) $99. 


692 Snake 14.95 


904 Sound Synthesizer Tutor 19. 


Spanish Teaching (12 lessons) $95. 


697 Football 14.95 


696 Diagramming 


PARTS OF SPEECH (9 lessons) $95. 


819 Backgammon 24.95 


Sentences 14.95 




822 Space Raider 19.95 


690 More/Less 14.95 


BUSINESS 


846 Annihilator 19.95 


688 Batting AVERAGES 14.95 


842 Zwark 19.95 


802 TicTacMath 16.95 


(all on disk) 


845 Grave Robbers 13.95 


904 Balancing Equations 14.95 


WORD PRO 3+ 95.00 


841 Pirate Inn Adv. 22.95 


905 Missing Letter 14.95 


DATAMAN-64 data base program. 49.95 


904 Shooting Gallery 14.95 


864 Gradebook 15. 


PERSONAL FILING SYSTEM 


816 Dog Fight 19.95 


810 French 1-4 80. 


(index card style) 19.95 


817 iVlouse Maze 19.95 


811 Spanish 1-4 80. 


HOME FINANCE 19.95 


818 Ski Run 22. 


807 English Invaders 16.95 


CYBER FARMER $195. 


820 Metro 22. 


809 Munchword 16.95 


GA 1600 Accounting System 395. 


823 Sub Warfare 29. 


812 Puss IN Boot 20. 


PERSONAL TAX 80. 


838 Retroball 39.95 


813 Word Factory 20. 


ACCOUNTS RECEIVABLE 22. 


(cartridge) 


660 Hang-Spell 14.95 


New York State Payroll 89. 


839 Gridrunner 39.95 


905 Division Drill 14.95 


MAILING LIST 24. 


(cartridge) 


906 Multiplic. Drill 14.95 


Manufacturing Inventory 59. 


825 Minefield 13. 


907 Addition Drill 14.95 


Stock Market Package 39. 


672 Dragster 14.95 


908 Subtraction Drill 14.95 


Finance 16.95 


662 Oregon Trail 14.95 


910 Simon Says 14.95 




679 3'DTicTacToe 14.95 


911 Adding Fractions 14.95 




655 Castle Advent. 14.95 


912 Punctuation 14.95 




ORDERING BLANK 


1 


TEM DESCRIPTION PRICE 


To: American Peripherals 






1 22 Bangor Street 










Lindenhurst, NY 11757 
Ship to: Namfi 

Street 










NY State Residents 


Town. State. ZIP 


nnl" '^'*'* T^'-oi- ♦'»" 




\j\ II 


Shipping $1.50 


n Please send your complete 64K catalog. 


(IfCOD. arirti f;ni 




If Canada or Mexico, add an additional S2.00 


TOTAL AMOUNT 





FRIENDS OF THE TURTLE 



David D Thornburg, Assocote Editor 




PILOT And Logo ^ A Tale Of Two 
Languages 

PILOT and Logo are two of the most popular user- 
friendly computer languages available for personal 
computers. Because Atari PILOT and Apple 
Super PI LOT both contain a powerful turtle 
graphics environment, manv people wonder if 
PILOT might not be a substitute for Logo. 

As I will show, Logo and PILOT are quite 
different languages. Although thev can be used 
for many of the same applications, each language 
has special features that make it more appropriate 
for some applications than for others. The goal of 
this article is to provide enough information about 
both languages to aid someone who is trying to 
decide which to use, ! will assume that vou are 
already familiar with turtle graphics. 

PILOT 

PILOT stands for Programmed Inquiry, Learning 
Or Teaching. It was so named by its developer, 
John Starkweather, because he wanted to create a 
programming language tl^at easily allowed 
teachers to generate computer-aided instructional 
materials. Research in the late 1960s by Dean 
Brown showed that PILOT was also a good pro- 
gramming language for children. 

The key to PILOT'S appeal is its simple com- 
mand structure and powerful ability to manipulate 
text-oriented material. At its core, PILOT has onlv 
eight commands, yet these eight commands allow 
the creation of quite sophisticated programs. The 
core commands for PILOT are shown below^: 

PILOT 

Command Function 

T: Vypes k'xt and variables on the screen. 

A: /\cccpts input from the keybuard. 

M: Matches words or phrases against the result ot the 

most recent accept com mtind. 

J: /mnps execution tcKi label. 

U: t /ses a la be I ed p rticed u re , 

C : Co m p u t es I he \ a 1 Lie o f a va r i a bl e . 

R: a 1 1 o \vs K e m a r ks to be add ed to a p roced u re . 

E : En d s a p rog ra m or p roced u re . 

142 COMPUTE! July 1983 



Notice that none of these commands has 
anything to do with graphics. The incorporation 
of turtle graphics in PILOT is a fairly recent event. 
Also, most versions of PILOT have additional text 
manipulation commands that add significantly to 
its power. 

Core PILO Ts most powerful command is 
M:, the match command. To see why this com- 
mand is so powerful, consider the following 
PILOT procedure: 

^QUESTION! 
T: WHAT GROWS ON TREES? 
A: 

M: MOSS, LEAVES, BUGS, INSECTS, NEEDLES 
TY: YOU ARE CORRECT 
TN: ARE YOU SURE? LET'S TRY AGAIN. 
JN: "^QUESTION! 
E: 

This PILOT procedure works in the following 
way. First, a c]uestion is typed on the screen. The 
user then types a response that is saved in the 
"accept buffer." The match command then checks 
to see if any of the words, MOSS, LEAVES, etc., 
appear anywhere in this buffer. If there is a match, 
a ''yes flag" (Y) is set to be true and a "no flag" 
(N) is set to be false. The execution of any PILOT 
command can be made conditional on the status 
of these flags by entering Y or N after the command 
name. For example, the command TY: will print 
on the screen only if the yes flag is true. The JN: 
command causes the procedure to be used over 
again if the Liser's response is not matched. 

As a result of PILOT'S ability to manipulate 
words ancH phrases, many of the early uses of 
PILOT by chiklren involved the creation of word 
games and "poetry generators." 

What About PILOT Graphics? 

As mentioned, graphics is a recent addition to 
PILOT. Turtle graphics is incorporated through 
the use of special ctMnmands. In Atari PILOT, for 
example, this conniiand is GR: followed by specific 
graphics instructions. The fundamental graphics 
commands allow the turtle to be moved in its pre- 
sent heading or to have its heading changed. 



IheLMitPen 



at^the 



Right Price: 



THE UGHT PEN 



Shown actual size, 






This is the right pen 
—a truly affordable pe- 
ripheral. As an educa- 
tion aid to young children 
it is without equal, espe- 
cially for pre-schoolers 
without keyboard skills.They 
simply touch the screen with 
the pen and a display is altered 
or new information is entered. 
Plus as an aid to games, it offers 
comparable utility to a joystick. 
Create your own programs with The 
Light Pen or choose from our software 
which includes a simple draw routine, 
checkers and hangman; or backgammon 
and chess. The Right Pen at the right price- 
maximum utility and minimum cost. 



Prices subject to change without notice. See your local dealer or order direct. New catalog available. 
Add 3 3.00 for postage and handl i ng. Cred it card orders cal I tol I free' 

1-800-334-SQFT 

DEALER INQUIRIES INVITED 

pnjgraminer'sfeiiMte 

a division of fUtUT^koJlii 
P.O. box 3470, dept. C, chapel hill, north carohna 27514, 919-967-0861 




Here's a list of the more commonly used Atari 
PILOT graphics commands: 



PILOT 
Command 



Function 



GR: DRAW x Draws a line of length x in the pruseiit 

heading. 
GR: TURNx Rotates the turtle bvx degrees. 

GR: PEN UP Raises the turtle's pen . 

GR: PEN YELLOW Sets the pen color tti yellow and sets 

the pen down. 
GR: GOTO x, y Moves ihe turtle to absolute coordinates 

x,y. 
GR:TURNTOx Rotates the turtle to absolute orientation 

of X degrees measured to the right vi 

straight up. 

These commands (and several others) allow 
the creation of procedures that draw complete 

figures. For example, the PILOT procedure sliown 
below draws a square 50 units on a side: 

^SQUARE 

GR: 4(DRAW 50 ; TURN 90) 
E: 

To use this procedure, one would type: 

U: *SQUARE 

Logo 

Logo is a computer Language that was designed 
by Seymour Paper t to be an easy, yet powerful 
tool w^hich would let children use the computer to 
explore topics on their own. While designed to be 
used by children, Logo is a user-friendlv version 
of the tremendously powerful language, LISP. 
Since LISP is the language of choice for many 
researchers in the field of artificial intelligence, 
clearly Logo is a programming language for adults 
as well. 

The key to Logo's appeal is its simple sv^ntax 
(compared with LISP) and its ability to manipulate 
data structures called lists, A list is a collection of 
words, Logo commands, numbers, or other lists, 
Logo allows lists to be constructed, modified, 
examined, reordered, and (if the list consists of 
Logo procedures or primitive commands) execu- 
ted. Here are some core Logo commands w^hich 
are comparable to the core PILOT commands: 

Logo 

Command Function 



PRINT Prints a list of text on the screen. 

READLIST Reads a list from the keyboard. 

M E M B E RP A pre d i ca t e t h a t ni a tch es a wo rd aga i n s 1 1 h e 

elements of a list. 
MAKE Assigns (or "binds") a number, ward, or list 

to a variable named by a word. 
END Ends a procedure. 

FIRST Returns the first element of a list. 

BUTFIRST Returns ail but the first element of a list. 
LAST Returns the last element of a list. 

BUTLAST Returns ail but the last element of a list. 

Notice that none of these commands has any- 
thing to do wath graphics. Turtle graphics was 

144 COMPUH! July 1983 



incorporated into Logo after the language had been 
in use for a while. The list of Logo primitives shown 
above is quite incomplete, but it allows us to build 
a procedure comparable to the QUESTION! pro- 
cedure we wrote in PILOT: 

TOQUESTIONl 

PRINT IWHAT GROWS ON TREES?] 
MAKE "ANSWER READLIST 
TEST MEMBERP FIRST :ANSWER [MOSS 
LEAVES BUGS INSECTS NEEDLES] 
IFTRUE [PRINT [YOU ARE CORRECT!! 
IFFALSE IPRINT lARE YOU SURE? LET's 
TRY AGAIN] 
QUESTIONl] 
END 

This procedure performs a function similar to 
that of the PILOT procedure except that it only 
looks to see if the first word on the answer is con- 
tained in the answer list. The commands following 
the words IFTRUE are executed only if the result 
of TEST is true. If the result is false, the commands 
following IFFALSE are executed instead. Notice 
that a Logo procedure is treated just as if it were a 
Logo primitive. To execute the procedure QUES- 
TIONL you merely type its name. 

As with PILOT, many of the early uses of 
Logo by children involved the creation of word 
games and poetry. 

What About Logo Graphics? 

A list ot the more common Logo turtle graphics 

commands is shown below: 

Logo 

Command Function 

FORWARD X Dnnvs a line of length x in the present 

iieading, 
RIGHT X Rotates the turtle bv x degrees. 

PENUP Raises the turtle's pen. 

PEN DOWN Sets the pen down. 

S ETPO S X y Maw s t h e tin- 1 i e to a bst^l u te coord i n a tes x , y . 

SETHEADING x Rotates the turtle to absolute orientation 

of X degrees measured to the right oi 

straight up. 

These commands (and several others such as 
BACK and LEFT) allow the creation of procedures 
that draw complete figures. For example, the fol- 
lowing procedure draws a square of any size: 

TO SQUARE :SIZE 

REPEAT 4 [FORWARD :S!ZE RIGHT 90] 
END 

To use this procedure to draw a square 50 units 
on a side, one would enter: 

SQUARE 50 

Differences Between Logo And PILOT 

The previous sections have suggested that PILOT 
and Logo are similar in application areas and syn- 
tax. In fact, there are some major differences be- 
tween the languages that may cause one to be 
clearly the language of choice for a particular task. 



For example, PILOT makes it very easy to create 
programs in which the contents of variables are 
printed along Hith text. Also, the match command 
will compare each element of a list with the entire 
response. In Logo, you would have to write a 
procedure to do this. 

Another important feature of PILOT is its 
compactness. Most Logo implementations require 
large amounts of RAiVI. Most (but not all) versions 
of PILOT will operate in 16K of RAM with plenty 
of space left for the user's program. 

In terms of overall symbol manipulation, 
Logo is the more powerful of the two languages. 
The ability to write programs that generate other 
programs is of great utility when constructing 
environments that "learn from experience." The 
fact that user-defined procedures are treated 
exactly as if they were Logo primitives gi\es Logo 
a feature called extensibility. This means that you 
can add new words to Logo's vocabulary (as we 
did with QUESTIONl and SQUARE). There is no 
need in Logo for the jump or use commands. To 
execute a procedure, you just type its name. 

Logo also supports local variables. This means 
that the value associated with a variable is assigned 
to the specific procedure (and level) in which it is 
used. This allows you to write procedures that 
use themselves recursively. For more information 
on this topic, you might want to read the "Friends 
of the Turtle" columns on recursion that appeared 
a few months back. 



Logo's turtle graphics commands are, 
perhaps, easier to grasp than PILOT'S, but there 
are indications that this will not always be the 
case as new versions of PILOT are likely to become 
more "Logo- like." 

Apart from these differences, Logo and 
PILOT both encourage a procedure-oriented 
programming style that makes complex programs 
easy to read and correct. 

I use both languages regularly and find that I 
would be reluctant to abandon either one. Your 
application areas might indicate that one of these 
languages has a clear advantage over the other. 
No matter which you choose, you will be using a 
language that allows the creation of very sophisti- 
cated and powerful programs. 

Notes From All Over 

1 have just heard from my Argentinian friend, 
Horacio Reginni, who has just started the Asocia- 
cion Amigos de Logo (Logo Friends Association) 
to promote the development of Logo centers, 
sponsor meetings, and spread information about 
Logo all over the world. The association can be 
reached at 2969 Salguero St., Buenos Aires, 1425 
Argentina. True Logo phi les will be interested in 
attending their first International Logo Conference 
in Buenos Aires on September 16-18. Registration 
is only $25. As for the air fare .... 



GET THE MOST OUT OF YOUR 



ODORE-64 

WITH SOFTWARE FROM ABACUS 



lPHICSGRAPH(f: 
VPHICSGRJu&lrt^GRAP 
HIC 




SCREEN GRAPHtCS 64 

■ Adds 24 commands 
to BASIC. 

■ Plot points, lines, 
boxes, circles and fill 
in hires and 
multicolor. 

■ Define and animate 
sprites easily. 

■ Includes demos, 
tutorial and manual. 

■ $24.95 FOR TAPE 
- $27.95 FOR DfSK 




SYNTHY 64 



Full featured music 
and sound 
synthesizer. 

Easy entry and 
editing of notes and 
commands. 
Control ASDR, filters, 
waveforms etc. 
Includes sample 
music and manual. 

$29.95 FOR TAPE 
$32.95 FOR DISK 






CHARTPAK 64 

Create Pie, Bar and 
Line charts in high 
resolution, 

Enter, edit, save and 
recall to/from disc. 
Choose any of 8 chart 
formats and design 
charts interactively. 
Produce hard copy 
onto 1515. 1525 or 
Epson printer. 

$42.95 DISK OKLY 





ULTRABASIC 64 



Turtle, hires, 

multicolor and spnte 

graphics. 

Sound and sound 

effects. 

Screen copy to 1515, 

1525 or Epson 

printers. 

Includes demos, 

tutorial, manual. 

$39.95 FOR TAPE 
$42.95 FOR DISK 



TO ORDER NOW 

PLEASE WRITE: ABACUS SOFTWARE 
ROJOX 7211, Grand Rapids. Ml 49510 

For postage & handling, add $1 .50 
(U.S. and Canada) ,add $3.00 for 
foreign. Make payment triULS. 
dollars by check. fijJiB nST l 
nnoney order or m mSm 
charge card. FOR IMMEDIATE 
SERVICE PHONE 616/241-5510 

FREE CATALOG 

Ask for a listing of other soft- 
ware for your Commodore-64 
or VIC-20. 




July 1983 COMPUTi! 145 



Learning With Computers 



Glenn M, Klefnnan 



A Library At Your Fingertips 



The ability to use computers to efficiently access, 
organize, and analyze information is becoming a 
critically important skilL In fact, knowing how to 
use computerized information bases is rapidly 
becoming as important as knowing how to use a 
library. People in many occupations - travel 
agents, bank tellers, librarians, stockbrokers, and 
insurance agents - already use computerized in- 
formation bases every day. Doctors, lawyers, 
scientists, teachers, and many others will be added 
to the list in the next few years. 

There are many computerized information 
bases. In this column, I discuss my favorite one, 
which is called DIALOG, DIALOG is the world's 
largest computer storehouse of information avail- 
able to the public. It contains over 170 data bases 
with a total of more than 75 million records of 
references, abstracts, and statistical data on a great 
diversity of topics. A simple set of commands lets 
you locate information quickly and easily. Widely 
used by libraries and businesses, DIALOG and its 
new cousin. Knowledge Index, can also be used by 
schools and individuals. 

To use DIALOG, you need a terminal or a 
computer with the hardware (a modem and inter- 
face) and software to make it function as a termi- 
nal. You also need an account number on the 
DIALOG system and a telephone. Like other large 
data base systems, DIALOG uses special networks 
(Telenet and Tymnet) so you can access it with a 
local telephone call from most places in the United 
States. 

An Example Information Search 

I've recently used DIALOG to search for informa- 
tion about one of mv main professional interests, 
the use of computers by children who have 
learning disabilities. There has not been a great 
deal of research in this area, and reports of the 
research that has been done are scattered in many 
different journals and books. A data base on the 
DIALOG system, called ERIC, lets me search an 
enormous body of literature for relevant refer- 
ences, and to do so in a few minutes. 

146 COMPUTE! July 1983 



ERIC is an acronym for Educational Resources 
Information Center. It is an index to the contents 
of more than 700 journals in education, as w^ell as 
a large number of books, technical reports, con- 
ference papers, government agency reports, and 
other documents. It contains approximately 
500,000 references, dating back to 1966, The index 
is kept up-to-date and about 3,000 references are 
added each month. 

All the information about each journal article 
or document is grouped together into what is 
called a record. Each record contains the title, au- 
thor, journal and date of publication (or other 
information neecied to locate the actual docu- 
ment), the language in which it is written, a set of 
descriptive (subject indexing) terms and an 
abstract (short summary). The descriptive terms 
are keywords which characterize the contents of 
the document. There is also a Thesaurus of ERIC 
Descriptors which enables you to find the best 
descriptor terms for each topic. 

The many volumes of printed ERIC indexes 
are familiar to many educators and researchers. 
For some of my articles and research projects in 
years past, I've spent hours scanning through 
many pages of small print, hunting for relevant 
references. I can now accomplish the same work 
in a few minutes via the computer on my desk. 

After using a modem and telephone to con- 
nect my computer to the DIALOG computer, I 
enter my account number and password. My 
search for references about computers and 
learning disabled children then proceeds as shown 
below. (In some cases, I have slightly altered the 
computer's response, leaving out code numbers 
and other extraneous information and spelling 
out abbreviations for clarity.) 

First, I tell the system I want to use the ERIC 
data base (which happens to be number 1). I 
enter: 

BEGIN 1 

(My commands will be underlined throughout 

this column.) The computer responds: 




NEW MIHTI-USER SOFTWARE LETS THE WHOLE FAMILY 
SHARE IN THE JOY OF LEARNING. 



Is the personal computer doing all it can to help 
our children learn? 

To some degree, no, although it's not lair to blame 
it entirely on the computer. After all. computers are 
only as good as their software. 

How can we improve this situation? 

A solution already exists. But first, some back- 
ground. 

Where personal computers fail. 

For years, studies have shown that children learr 
more efficiently in gmup situations. Peer groups, for 
example, motivate slower learners to persevere. 
Groups of older and younger children encourage 
divergent thinking. Even the simple "group" of a 
parent and child promotes faster acceptance of 
new ideas by combining education with trust 
and confidence. 

But personal computers and their programs are 
designed to be personal. One computer, one child. 
It's hard for anyone else to be part of the learning 
experience, even you. 

At least not until today, 

A simple solution. 

When tv/o educational researchers, Dr. Matilda But* 
ler and Dr William Paisley, observed this problem 
they proposed an interesting, yet sinnple, solution. 
Instead of writing programs that shut out brothers, 
sisters, friends, and parents, why not give everyone 
the opportunity lo share learning simultaneously. This 
one idea sparked an entire line of unique educationaJ 
programs and gave birth to a new company Edupro. 

Software that shares. 

With Edupro's Microgroup'" computer programs, 
up to eight players v^ork at solving math, language, 
social studies, or science problems which are pre- 
sented as contests, races, and puzzles. The players 
vmk together, either competitively or cooperatively 
as they race against time, each other, or both. 

The Math-Race program, for example, converts 
your computer into an electronic race track where 
children compete to answer math problems and 
advance toward the finish line. Picture-Play encour- 
ages everyone to create pictures together, teaching 
both spatial relationships and the value of coopera- 
tion. And Team-Work combines both cooperation and 

Atari ■ and 400/800" are trademarks of ATARI Inc. 



competition by pitting tv^o teams (of up to four play- 
ers) against each other in a race to solve word and 
number puzzles. 

For the first time, your personal computer can 
bring all the benefits of group learning into your 
home. With a iittle assist from Edupro. 

Designed for the simplest computers. 

These unique programs run on the Atari 400 or 
800, tv^o Of the world's most popular home com- 
puters. Remember, these aren't game cartridges, 
they're full computer programs, designed by educa- 
tors. All are available on floppy disk or cassette, and 
each one requires the minimum amount of computer 
memory (16K for cassette, 24K for disk). That means 
the simplest Atari computer can let your children 
share the learning experience with up to seven addi^ 
tional friends. Joysticks required for Word-Draw, 
Math-Hunt, and Picture-Play: paddles required for 
Word-Race. Math -Race, and Team-Work. 

Trust your own experience. 

At the fall 1982 Computer-Using Educators Confer- 
ence hundreds of educators witnessed hands-on 
demonstrations of our programs. Many of them said 
that this was a most effective way to judge their 
potential. But we want to offer you an even better 
opportunity. One those educators missed. 



^^.^MMt^ 


^uprp-A^ 




JSF^^M ^':^mBK^kM 


^i%^i^>.^^^^F 


l**':.,: 


1 jjM4 


^HiS 


Jl^^^^^^ .«.•; .-'--^^^ , - 



We want you and your children to experience this 
new way to learn. So choose one or more programs 
on either disk or cassette. Try them yourself. Watch 
your children get more excited about learning. Enjoy 
the thrill of sharing the experience with them. We 
know of no other software that can turn a personal 
computer into a tool for sharing the joy of learning. 

Fill out the order form and see the results for 
yourself. 



n 



I want to share ttie joy of learning with my children Please send 
me the programs I've indicated below. I understand that each 
program Is available on etther disk or cassette (my choice) and 
comes with a complete s&t ol instructions and catalog listing over 
50 programs. Pius a coupon good for a lO^ii discount on my next 

°*' »0l #of 

Quantity Program Oescriptlon Disit Cassette 

STORVBOOK FRIENDS: Ages 5-9 

. WORD-DRAW: 

Storytjook People and Places 

, MATH HUNT: Number Relationships 

AMERICA^J THEMES: Ages 8-13 

TEAM-V/ORK: Sccial Studies 

MATH-HUNT; American Years: 

Multiplication and Division 

THE V/ORLD AROUND US: Ages 12-Adutt 

. ^VORO DRAW: Science 

MATH-RACE: Powers and Roots , 

JUST FOR FUN: All Ages 

PICTURE-PLAY 

Total ft 



Total Amount S 



, programs on disk @ S24.95 each 

. programs on cassette @ S19-95 each 

. PcturePJay. disk (g S19.95 

_ Picture-Play, cassette Tf' S14.95 

CA residents add sales tax 

Postage and handling S2.50 



My dieck or money order is enclosed for S_ 
Please m MasterCard Visa 



(card no.) 

Name , 

Address _ 
City 



(exp. date) 



. State _ 



-2p- 



Sig nature 

Allow 3 weeks for delivery 



Satisfaction guaranteed. 

Send to: Edupro. Depi C01. RO. Box 51346, Palo Afto, CA 94303. 
Write to above address for brochure/ catalog listing 

or phone inquiries: (415) 494-2790. 



Edupro 

Edupro, RO. Box 51346 fpalo Aito, CA 94303, (415) 494-2790 




27 Feb 83 12:59:37 FiIe:ERIC 

This search, and the other examples in this col- 
umn, were all done on February 27, 1983. 

Next, I give the computer the words for which 
I want it to search. It searches through all the in- 
formation in each record, including the abstract, 
(You can limit the search to the descriptor terms 
or title if you prefer.) 

SELECT LEARNING DISABiLlTIES 

DIALOG responds: 

1 4734 LEARNING DISABILITIES 

r ve told the computer to select all references about 
learning disabilities. It gives this set the number 
1, so I can refer to it later. The number following 
the set number shows how many relevant records 
have been found. I then enter: 

SELECT COMPUTER 
DIALOG responds: 

2 16684 COMPUTER 

So now I know that there are 4734 references 
about learning disabilities and 16684 about com- 
puters in the ERIC data base. But what I really 
want to know is how many are about both com- 
puters and learning disabilities. The appropriate 
command is: 

COMBINE 1 AND 2 

DIALOG responds: 

3 70 1 AND 2 

This tells me that 70 references appear in both set 
1 and set 2 (i.e., the learning disabled set and the 
computer set), 

DIALOG also allows more complex combina- 
tions using OR and NOT. This provides tremen- 
dously pow^erful searching capabilities. I could, 
for example, further restrict the search to refer- 
ences that are about reading disabilities or lan- 
guage disabilities, while excluding references 
about hyperactivity. I could also restrict the search 
to particular years, journals, authors, types of 
publications, languages, or any combination of 
these. Since you work on-line with DIALOG, you 
can expand or restrict the search as you go. For 
example, if I find more references than I want on 
a topic, I usually restrict the search to articles pub- 
lished in the last year or two. 

Next, I want to see the titles of some of the 
references: 

DISPLAY 3/6/1-5 

This command tells the computer to display 
the references in set 3. The 6 is a code number 
telling it that I only want to see the titles, not the 
other information in the record- The 1-5 tells it to 
display references number 1 through 5. The com- 
puter responds with: 

148 COMPimr July 1983 



1. Remediating Spelling Problems of Learning 
Handicapped Students Through the Use of 

Microcomputers. 

2. Microcomputers: Powerful Learning Tools 
with Proper Programming. 

3. Microcomputers: An Available Technology 
for Special Education. 

4. How Can Microcomputers Help? 

5. Instructional Technology for Special 
Needs. 

Item 3 sounds interesting, and I haven't seen 
it before. I therefore tell the computer to print the 
full record: 

DISPLAY 3/7/3 

This command says display from set 3 the full 
record (code 7) of item 3. The computer responds 
with: 

Microcomputers: An Available Technology 
for Special Education, 
joiner, Lee Marvin; and Others 
journal of Special Education Technology, 
Vol. 3, number 2, pages 37-47. Winter, 1980. 
Language: English 

Document Type: Journal Article; Teaching 
Guide 

Abstract: The article describes the capabilities 
of features of basic microcomputer systems 
and describes special education applications: 
computer assisted instruction, testing com- 
munication, and enhancing personal rela- 
tions. Problems such as the availability of 
authoring languages, high quality educa- 
tional software, and computer safety are 
described. 

My entire search took less than five minutes, 
most of which I spent examining the titles of arti- 
cles. 1 next instructed DIALOG to print all 70 re- 
cords about computers and learning disabilities, 
with the citation and abstract for each. To save 
time and expense, I had this done off-line by high- 
speed printers at DIALOG and mailed to me. The 
25 pages of materials arrived a few days later. I 
then used DIALOG to order complete copies of 
several of the articles. 

Other Data Bases 

ERIC is just one of over 170 data bases available 
on DIALOG. There are data bases covering the 
sciences, business, law, current affairs, 
humanities, books, book reviews, foundations, 
biographies, patents, dissertations - an incredible 
array of information. Some of the data bases likely 
to be of interest to readers of this column are de- 
scribed below. 

The Magazine Index covers 435 of the most 
popular magazines in North America, including 



all those indexed by the Readers' Guide to Periodical 
Literature. It contains over one million records, 
dating back to 1969. Approximately 12,000 records 
are added each month. There is also a National 
Nezospaper bidex. 

I was curious about whether magazines have 
reflected the increase in interest about computers 
in education during the last few years. I therefore 
checked the number of articles in the Magazine 
Index on computers and education for each year 
from 1976 to 1982. In about two minutes I obtained 
the following answer: 



Year 


Computers 


& Education Articles 


1976 




2 


1977 




19 


1978 




9 


1979 




27 


1980 




39 


1981 




59 


1982 




145 



Clearly, the number of articles has been growing 
rapidly. 

Nexvsearcli is an index of current news stories, 
information articles, and book reviews from over 
1,400 newspapers, magazines, and periodicals. 
Newsearch is updated daily, so most items are 
added the day after they are published. At the 
end of each month, the information is transferred 
to the Magazine Index, the National Newspaper 
Index, and other relevant indexes. 

The Books in Print index contains records on 
virtually all books published in the United States, 
including books that have gone out of print in the 
last few years and books that are to be published 
in the next few months. A quick check found 6,450 
books on computers, 46,478 on education, and 
168 about computers and education. There is also 
a Book Reviews index. 

The Microcomputer Index is a new one which 
contains citations about the use of microcomputers 
in business, education, and the home. Magazine 
articles, as well as software and hardware reviews, 
new product announcements, and book reviews 
are included. Over 25 microcomputer periodicals 
are currently indexed, along with selected articles 
from other publications. A quick check showed 
1,294 articles on education. 

The International Software Database is another 
new one. It contains over 10,000 records on all 
types of software, classified by application, 
machine, operating system, vendor and price. 

Classroom Instruction 

The cost of using the indexes I have described 
ranges from $25 per hour for ERIC to $95 per hour 
for Newsearch. The cost of off-line printing is 
typically 20 cents for each full record. Since 
DIALOG makes finding information so efficient, I 
regard it as an excellent value for professional 



use. DIALOG has also introduced lower-cost spe- 
cial arrangements for schools that want to teach 
students to use it and for individuals who want to 
use the system during evenings, nights, and 
weekends. 

The Classroom Instruction Program provides 
access to most of the DIALOG data bases at a 
special rate of $15 per hour. This rate is available 
only to academic institutions for instructional 
purposes. A special students' workbook is also 
available. 

Knowledge Index is a new service which 
provides access to the most popular data bases at 
the reduced price of $24 per hour. It is not available 
during business hours, so this service is designed 
mostly for individuals. All the data bases I have 
described are available, except for Books in Print 
and Book Reviews. In addition. Knowledge Index 
includes data bases covering business, agriculture, 
computers and electronics, engineering, govern- 
ment publications, medicine, and psychology. 

DIALOG Information Services, Inc. 

3460 HilhnewAve, 

Palo Alto. CA 94304 

(800) 227-1960 (except CaUfornia) 

(800) 982-5838 (from Califoruia) © 




C-64 TI99/4ATIMEX VIC 20 ATARI 



CHILD 

DEVELOPMENT 
SERIES 

(for the 3.5K VIC and 
16K ATARI) 

ADD/SUB— $16.95 

Displays single or multiple 

digits with or w/o pictures, 

borrows, carries, scoring, 

and audio/video feedback. 

NUMER-BECI— $16.95 

Number recognition, object 

counting, object grouping, 

and number/size/shape 

discrimination. 



AAA 

A AAA 



7 

3 



A A A a: 4 



• •4 



V 



BECi is composed of professionals dedicated to 

providing non-trivial educational materials for the home 

computer. In addition to our own software, we carry a full 

line of evaluated hardware and software. Send $2 

(refundable) for our catalog. 



Send check or money order to: 
BOSTON EDUCATIONAL COMPUTING, INC, 

78 Dartmouth Street, Boston, MA 02116 
(61 7) 536-5116 * MA res. add 5% tax 



July 1983 COMPUTE! 149 



THE WORLD INSIDE THE COMPUTER 



Superbaby Meets 
The Computer 



Fred DlgnoziQ Associate Editor 




If you haven't seen it 
already, you should go 
to a library and find tine 
March 28,' 1983, issue 
of Newszoeek magazine. 
Turn to page 62 and 
read the cover storv, 
"Bringing Up Super- 
baby/' The story is 
about hou^ parents are 
pushing their kids to learn earlier and earlier. 
Kids w/ho are only a few months old are studying 
art books, gazing at flash cards, doing toddler 
gymnastics, going to dance class, putting together 
puzzles, taking swimming lessons, and Icaniii^^ 
how to aviipitfc. In the article there's a picture of a 
little kid who is pounding away on the keyboard 
of an IBM Personal Computer. 

Just a few years ago, Elizabeth Wall (a media 
specialist in Sarasota, Florida, and author of The 
Coiuputcr Alphabet, Avon, 1983) sat down next to 
one of the pioneers of personal computing. He 
asked her what she was up to. 'Teaching elemen- 
tary school kids how to use computers," she told 
him. He w^as shocked. "There's no future in teach- 
ing little kids computers," he said. "They will 
never get the hang of it." 

Since that expert made his remark, use of 
computers has dribbled downw^ard, from college 
to high school kids; from high school kids to 
middle schoolers; from middle schoolers to kids 
in elementary school - and beyond. 

In Bruce and Diane Mitchell's Small World 
preschootand kindergarten, in Durham, North 
Carolina, four-vear-olds and five-year-olds are 
playing educational games on Atari computers 
and Timex Sinclairs. They are programming a 
Turtle robot bv tapping on the keyboard of an 
Atari 800. 

150 COMPUTE! July1«?83 



But preschoolers and kindergartners are old. 
They're almost over the hill! The Neivsnkrk article 
mentioned a school called Tiny Bytes where kids 
can begin computing before they've celebrated 
their first birthday. 

Computer Literacy Or Else 

Some toddlers are going to be victimized bv pushy 
parents trying to fill their offsprings' "little 
sponges" with computer facts even before they've 
learned to walk or talk. I can imagine an "en- 
lightened" household where the parents are trving 
to give their three-month-old an earlv start on her 
way to a high-tech future. The babv, blithelv una- 
ware of her parents' designs, is reaching for a 
rubber ducky. The mother pushes the duck away. 
"Too easy," she says. She whips out a stack of 
big white tlash cards. "Let's practice these first, 
then you can see the duck on your lunch break." 
As the baby gazes sweetly at her mother, the 
mother runs through the flash cards. "RAM!" she 
calls out. "RAM.. R.. A.. M.. RAM! BIT! .. B.. 1 
..T.. BIT! CHIP! ..C..H.." 

One wonders what a kid who gets computer 
flash cards at three months is going to be like when 
she gets to the ripe old age of five years, or ten, or 
fifteen. She may have a lot oi computer facts under 
her belt, but how well adjusted will she be? What 
will be the result of all this parental prodding? 

This is not to say that computers shouldn't 
be introduced to kids who are still wandering 
around the house in dirty diapers. Because they 
should be! 

The question is hozo. 

Parents who are pushing their babies and 
toddlers into computer literacy are missing the 
point - at least as far as computer literacy is de- 
fined. We are presently in the Age of Computer 
Literacy. But we are quickly moving beyond it. 



. 1 



FOR WORK OR PLAY, OUR NAME SAYS IT ALL. 



Exclusively from AdVentures 

Gypsum Caves Vic 20 f + 16K) 

by Brian Wagner Commodore 64 

A revolutionary new game requir- 
ing more tiian just hand-eye coor- 
dination, Gypsum Caves is a word- 
adventure trek through endless 
caverns. Use objects found along 
the way and your imagination to 
gain the final test — then try to get 
out alive! 3-D Color Graphics. 
Cassette. |jft^ $14.95 

Ak-Ak Man — The Amazing Maze 

Game 

by Brian Wagner Vic 20 

The old standby with a new twist 
— random screens. The computer 
devises a new pattern every time, for 
added challenge and excitement. 
Cassette JjiM?Sl $9.99 



A/lailfile Vic 20 and Commodore 64 

Atari 400/800 
A software directory for your home com* 
puter, Mailfile stores and retrieves names, 
numbers and addresses by name and zip 
code. ,^^ ^ 

Tape. $f^?0$^ $9.99 

My ABC's Vic 20 and Commodore 64 
Software designed to help young children 
get a head start in language as well as 
familiarize them with the potential of the 
computer. ^ 

Tape,.. „. $^p€f5^ $8.99 

Math Tutor Atari 400/800 
A valuable tool for young children to 
simultaneously develop their math skills 
and their understanding of the use and 
value of the computer. For grade levels 4 
and up, with emphasis on problem-solving 
using elementary math principles. Varying 
skill levels, question sets, and choice ar- 
rays. ^^ 
Tape .., , ^T^^ $8.99 

UMI 

Sub Chase Vic20( + 8K) 

Guide your sub chaser In pursuit of the 
enemy submarines. Fire depth charges at 
them while avoiding their rising mines. 
Tape .,"^«Sg^ $21.99 



Motor Mania Commodore 64 

A new dimension in road racing. Rack up 
miles while monitoring fuel, speed and 
course — and keep your eyes on the roadl 
Tape. , J?»r5S1^25,99 

EPYX 

Sword of Falgoal 

by Jeff McCord Vic 20 ( + 16K) 

A word adventure game with color 
graphics and sound. Search the dungeon 
for the Sword, then get out alivei Playing 
time: 30 minutes to hours. Book of Lore and 
program included. 
Tape |g9f^ $25.99 

Jumpman A tari 4001800 

As Jumpman, you will be the only one 
capable of negotiating the wreckage of 
headquarters to find the bombs planted 
there. Watch your step! 
Disk SjJg?^ $29.95 

Aggressor Vic 20 

Protect the precious ore fields of 
Freeworld 6 in your advanced VX6 Marauder 
Ramjet fighter. 10 levels of difficulty. 
Cartridge .1^^*95 $32.99 

Gridrunner Vic 20 and Commodore 64 
Combat the enemy droids on the Grid, a 
huge orbiting solar power station, in a 
specially constructed Gridrunner ship. 
Cartridge ,Tr:^r«SL $32.99 

HES 

Tank Trap Vic 20 

Use the joystick to design the perfect 
trap for the enemy tank — just you against 
the computer. 
Tape,,. 'ij^rS^ $1 3.99 

BRODERBUND 

A.E. Atari 400/800 

The newest import from Japan has sur* 
passed its function as a pollution control 
robot and become a nuisance. A light- 
hearted game requiring speed, agility, and a 
sense of humor. Joystick required. 
D/s/f ^^fSB^ $24.99 

DATA SOFT 

Zaxxon Atari 400/800 

Official home version of the famous 3-D 
arcade adventure. Pilot your aircraft 
through the battlefield and to the 
showdown with the deadly armored robot. 
Sound effects and color graphics. 
Cassette 'SSfit^C $29,95 



ALSO AVAILABLE: 

Zwark Commodore 64 

A variable difficulty game. Unpredictable 
Zwarks descend singly, then in groups to 
threaten your defense station. Use 
keyboard or joystick. 
Disk. ..,. .....|g4^ $19.99 

Preppielll-Savage Return Atari 400/800 
The continuing saga of W/adsworth Over- 
cash, only recently recovered from the in- 
dignities he suffered In Preppiel I. Sound, 
multiple skill levels, 2 player capability. 
Disk SSd^ $27.99 

Pirate Adventure A tari 400/800 

High resolution color graphics challenge 
the player in this graphic adventure. Two- 
word commands, common sense, and in- 
genuity are the necessary tools to uncover 
Long John Silver's long lost treasure In an 
epic adventure trek from London to 
Treasure Island. 
Disk »» .Tm^C $29.99 



Canyon Cfimber A tari 400/800 

Avoid mountain goats and battle 
belligerent Indians as you attempt to scale 
the awesome wall of the Grand Canyon. A 
unique new experience in home computer 
games. 
Disk or tape ?$^^ $24.99 



MonltorCables, all types.. $9,95 

Cable wrapups -5 for $1.19 

Many programs available on disk 
Dealer/Distributors inquiry welcome. 
Attention Programmers: Top dollar for 
original programs. We provide 
copyright assistance. 




/itoiftfCordj 




Other major credit cards accepted 

AdVENTURES 
Call Toll Free 
1-800-835-2222 

In D.C. Metro area 
703-360-0301 

8718A Richmond Highway 

Alexandria, Virginia 22309 

©Copyright 1983 Venture Mail, Inc. 



Pretty soon it will not be productive for us to study 
such arcane terms as bit, byte, and CPU, We won't 
have to know how a computer works^ just how to 
work a computer. We will be leaving the age of 
computer literacy and entering the Age of Com- 
puter Intimacy. 

Take the TV or the car. These are high-tech 
machines that are part of almost every little kid's 
environment/ right from birth. Do parents go 
around with flash cards with words like CHAN- 
NEL SELECTOR or PHOSPHOR SCREEN? Or 
with words like CARBURETOR or PISTON? Of 
course not. Nevertheless, the smallest children 
learn how to operate TVs, almost before they can 
walk. And little kids play with model cars, toy 
cars and trucks, all through their childhood. And 
when their magic birthda\' arrives and thev can 
get their driving license, they quickly learn to 
drive and operate an automobile. 

How^ many kids suffer from automobile 
anxiety or TV phobia? Very few. 

Even more important, how many kids can 
expect to find a job when they grow up as an 
automobile mechanic or an expert in TV repair? 
Again, very ii2\\\ 

Yet TVs and cars are far more common than 
personal computers. 

The point is that we ha\'e moved beyond 
'TV literacy" and "automobile literacy" to a new 
age of intimacy with both these machines. The 
technologies have matured. Thev are black boxes, 
idiot boxes that almost anyone can learn how 
to use. They're everywhere. We're comfortable 
with them in om* garages, our living rooms and 
bedrooms. 

This is where computers are headed, too. 
They've just started, but, at the speed they're 
going, it won't take long. By the end of the 1980s, 
computers will be black boxes, just like cars and 
TVs. They will be in most people's homes. Thev 
will become so common that the\' will cease being 
an eye-catching phenomenon. In fact, they will 
almost be invisible. Like electric motors, they will 
slip into other appliances and disappear from 
view. 

Kids who are less than one year old in 1983 
will be less than seven in 1990. So why are parents 
teaching them computer literacy terms and con- 
cepts, preparing them tor a job market that exists 
in 1983, but will change radically even before the 
kids have made it through elementary school? 

Parents are pushing because they are pan- 
icking. The swift pace of computer technology 
has them running scared. 

And they are pushing their kids because of 
the status of having them say "floppy disk" as 
their first word. 

What they don't realize is that they are 
training their kids in what will soon be an obsolete 

152 COMPUTE! July 1983 



technology and, worse, an obsolete approach to 
technology. They are being trained to become the 
automobile mechanics and TV repairpersons of 
the 21st century. These are honorable professions. 
But is this what the parents intend? 

Computer Osmosis Vs. Computer 
Bullying 

Millions of personal computers are going into 
people's homes. Millions and millions of little 
children are waking up each morning and walking 
or being carried past computers on their way to 
their bottle, their Boo Berries, or baby cereal. For 
them, computers are no more wondrous or rare 
than the floorlamp, vacuum cleaner, or telephone. 
They're just one of the many things that "belong" 
in their lives. They have a place, along with every- 
thing else. 

This is exactly as it should be. Computers are 
a big deal to us. And our kids will see that. When 
we spend all night in front of a keyboard trying to 
debug a program or escape from the wizard's 
castle in an adventure game, they'll notice. If w^e 
shout and point at the new computer and say 
"Gee whiz!" and "Oh, gosh!" enough times^ 
they'll notice. And if we get frustrated with the 
computer and begin saying unkind things to it or 
give it a good bop, they'll notice that, too. Whether 
positive or negative, our kids will pick up on the 
attention we give to computers and the amount 
of emotional involvement we have with them. 
Kids are very sensitive about this sort of thing. 

Growing Up Together 

You and I are already grown. We're big people. 
But computers and kicis hav^en't stopped growing. 
In fact, they've just begun. Both are going to 
change rapidly over the next 20 years. 

At the end of that 20 years, what will they be 
like? 

We imagine that our kids will end up pretty 
much like us. But how about computers? When 
kids enter the job market in the late 1990s or earlv 
21st century, what will computers be like? 

According to experts, we are quickly entering 
a new era of personal computers. I call this era 
the Age of Computer Intimacy, Others call it: The 
Age of User Friendliness. The Age of Forgiving 
Systems. The Age of Easy Computing. The Age 
of Humanlike Machines. 

As anyone who has struggled with a cranky 
program recorder, or with a cryptic BASIC error 
message, or with computer cables, plugs, and 
connections knows, we have not reached com- 
puter heaxen yet. Far from it! 

But we are moving closer. While at the West 
Coast Computer Faire in San Francisco, I attended 
a seminar on "Second Generation PC Software." 
It was mind-boggling. 



THERFS A COMPUTER BORN EVERY MINUTE 

GIVE IT A HOME. 



For $o9«95 with the CS-1632 you can house your computer^ 
peripherals, and accessories without spending a fortune. 



For those with a large computer family the CS-2748 gives you ail the room you 
need for your computer, monitor, printer, peripherals, software, etc. at a price 
that's hard to believe: S299.95. 




^WK-a 



The CS-1632 computer storage 
cabinets compact yet functional 
design fits almost anywhere 
while housing your computer 
monitor, joysticks, software, 
books and peripherals all for 
only $89.95. 

The slide out shelf puts the 
computer at the right height and 
position for easy comfortable 
operation. 

The fold up locking door keeps 
unwanted fingers off the key 
board when not in use. 
To store joysticks just turn them 
upside down and slide them into 
the inverted storage rack. 
Twist tabs on the back of center 
panel allow for neat concealed 
grouping of wires, while power 
packs rest hidden behind center 
panel on shelf. 
The slide out software tray 
has room for 14 cartridges or 
cassettes and up to 30 diskettes. 
Most brands of software will fit 
between the adjustable parti- 
tions with a convenient hook for 
the spare key at rear. 
Stand fits Atari 400 & 800. 
Commodore 64 & VIC 20, 
Ti99/4AandTRS-80. 
Cabinet dimensions overall 36" 
high X 33-7/8" wide x 16" deep. 




To order CS- 1632 send $89.95 to: To order CS-2748 send $299.95 tO: 



HVTEC 



SYSTEMS 



P.O.Box 446 

West Lyiui, OR 97068 

For Fast Phone Orders Call Toll Free 1-8O0- 547-3 100 
Inside Oregon CaU (503J 635-6667 



Name 

Address _ 

City 

Quantity- 



_Statc 



.CS-i632 



Quantity- 



_Sp 



. CS.2748 



□ Goiden Oak Finish □ Natural walnut finish 
Q My personal check, cashiers check or money order is enclosed. 
G Bill my VISA # Exp. Date 



n Bill my MasterCard # ^^ 

□ Please include freight charge on my VISA or MasterCard. 

Card Holders Signature „____ 



_Exp. Date 



HVTEC 



Immediate shipment if in sloci^. Jfnot, aUow 3-4 weeks for delivery. ]f peraonal check Is sent aDow additional 
2 weeks. CS- 1632 ships UPS freight collect from Oregon. CS-2748 ships by truck freight coliea from Oregon. 
Prices subject to change. Shipment subject to availability. 

Both the CS-1632 and CS-274S ship unassembled in two cartons, Assembty requires only a screwdriver. 

hammer, and a few minutes of your bmc. 

Choice in simulated woodgrain of warm golden oak or rich naturaJ walnut finish 



The two slide-out shelves put 
the keyboard at the proper oper- 
ating height while allowing easy 
access to the disk drives. 
The bronze tempered glass door 
protecting the keyboard and 
disk drives simply lifts up and 
slides back out of the way during 
use. 

Twist tabs on the back of the 
center panel aUow for neat con- 
cealed grouping of wires while 
a convenient storage shelf for 
books or other items lies below, 
The printer sits behind a fold 
down door that provides a work 
surface for papers or books 
while using the keyboard. The 
lift up top allows easy access 
to the top and rear of the printer, 
A slot in the printer shelf allows 
for center as well as rear 
feed printers. 

Behind the lower door are 
a top shelf for paper, feeding the 
printer, and a bottom shelf to 
receive printer copy as well 
as additional storage- 
Stand fits same computers 
as the CS- 1632 as well as the 
Apple 1 and II. IBM-PC. Franklin 
and many others. 
The cabinet dimensions overall; 
39-1/2" high X 49" wide 
X 27" deep. 

Keyboard shelf 20" deep x 26" 
wide. Disk drive shelf 15-34" 
deep X 26" wide. Top shelf for 
monitor 17" deep x 27" wide. 
Printer shelf 22" deep x 19" wide. 



I learned that if you have ent>ugh money, 
you can buy computer programs and computers 
that are really, truly friendly. Thev hold vour 
hand. They speak English (most of the time). Thev 
help you out oi tight spots. They remind you of 
what vou are supposed to be doing when you get 
lost. 

And, boy, are tiiey powerful! With just one 
package, one electronic mouse, and 45 windows, 
you can figure out your income tax, send electronic 
mail, draw pie charts and bar charts, do word 
processing, and tile, sort, and retrieve records. 
All with the same set of commands. 

At present, these systems are extremely ex- 
pensive. Only the folks who carry around Pierre 
Cardin calculators can afford them: But com- 
puters, in general, used to be this wav, too. Only 
wealthy, technically sophisticated organizations 
(universities, large corporations, the government, 
and the military) could afford them. But computers 
ha\'e come a long way. Now you can buy a pro- 
grammable computer for uncler 60 dollars. Pretty 
soc^n the price will be even lower, and the com- 
puter will be more powerful and easier to use. 

The new generation of ''easy" computers 
and "friendly'' computer software is coming. And 
it will include machines and programs that we 
can all afford. 

What Do We Tell Our Kids? 

If we're not supposed to tell our children (and 
babies) about bits and bytes, then what do we tell 
them? 

Nothiu;^ is okay. Unless they ask. Or unless 
you're so excited about something neat that you 
just feel like babbling. 

Just have a computer around the house. 
That's enough. Treat it like you'd treat a typewri- 
ter, a telephone, or a calculator. But let \/oiir kids 
touch it. That's the best way for them to learn. For 
example, my four-year-old son, Eric, drives me 
crazy when he uses a computer. He has grimy, 
dirty fingers. He presses buttons in such a way as 
to make a computer act like an amnesiac. But he 
loves to play on the computers because he is al- 
lowed to play freely. And (with quiet wincing 
and cringing) 1 let him. One of his favorite games 
is filling up the picture screen with graphics sym- 
bols, multicolored bars (using color keys and the 
reverse-video button), and random letters, num- 
bers, and punctuation symbols. 

Another of his games is to use the computer 
as a Gobbledygook Processor (that's "GP"). He 
types all sorts of strange looking words like 

IXCCY##559 ISK ERIC !!!!! AAAAAAAAAAAAA 

then sends them to the computer's printer. He 
rips off the printer paper (in the same lavish, 
boisterous way he handles toilet paper) and tapes 



it up around the house as a sign of who knows 
what. Or he stuffs a wad of it in an envelope, and 
it becomes a letter. Or he gives it, as a gift, to me, 
to his mother, his sister, his kitty, or his tov robot, 
Denbv. 

A Tool Or A Crutch? 

Actually, there's more to computer education 
than this. Our responsibility as parents (and 
teachers) extends beyond just making computers 
available to our children. Much further, in fact. 

When our youngest chikiren start entering 
the job market, in another 15 to 20 years, ^7// com- 
puters will be "easy" computers; all programs 
will be "friendly." Computers and programs will 
also be a lot more intelligent than thev are now. 
There will be a tremendous temptation to let com- 
puters take over many of the thinking chores that 
we humans find bothersome, tiresome, boring, or 
too difficult. At some point, for many people, the 
computer will cease to be a support and start to 
be a crutch. 

Our responsibility, as parents and teachers, 
is to teach our children the value of using com- 
puters in the proper way: to help them do their 
own thinking. 

What Do You Think? 

What do you think? How early should kids begin 

learning about computers? What should be the 
role of parents (and teachers)? What should kids 
learn? How should they learn it? 

Please send your ideas and comments to me: 

Fred D'F^tiazio 

2117 Carter Road. SW 

Roanoke, VA 24015 

ril return to this subject in a future issue of 
COMPUTE!, and I'll reprint a number tif vour 
letters. 

New Resources 

A book has just been published for parents of 
older children (ages nine and up) who are in- 
terested in computers. 1 recommend the book 
because it is a practical guide to the technology 
as- it exists today. If you want to launch yourself 
and your family into computing today (and you 
should), then you need a survival manual. The 
best survival manual of all is this magazine (COM- 
PUTE!), with all its tutorials, articles for beginners, 
practical programming tips, and actual programs 
for you to copy into your machine. But, if you're 
a parent, you should also take a look at: 

Eugene Galanter, Kids at id Couiputers: TJte Paroit's 
Microcomputer Handbook (Perigee Books, The 
Putnam Publishing Group,, 200 Madison 
Avenue, New York, NY 10016; S7.95; Paper- 
back; 7-page index; 190 pages) 

Sample chapters: Microcomputers and Your 
Child; What Is a Microcomputer?; The Micro- 



computer's Parts; Programming by, for, and with 
Children; Running the Machine; Kids Can Write 
Programs; Evaluating Computer Education. 
The author, Eugene Galanter, has been 
teaching kids about computers for several years. 
You can write his school for additional information 
or to ask him specific questions about kids and 
computers: 

Eugene Galanfer 

The Child reus Ctvuputer School 

21 We>f Sbth Street 

NeivYork. NY 10024 

Looking For Good Software? 

Of course you are. So you should get in touch 
with an organization that evaluates the newest 
educational software: 

FAiuctiiiojial Products biforfuafio}i ExcJuuige (EPIE) 

Cohnnhia University Teachers College 

P.O.Box 27 

New York, NY 10027 

EPIE has recently entered into an agreement 
with the Consumer's Union to test and evaluate 
hundreds of consumer-oriented and educational 
computer products. The results of their research, 
reviews, and laboratory tests are just becoming 
available. You can read about these results in their 
MICROgram, published monthly as part of: 

The Computing Teacher 

The !}iter}iatio}uil Coujicil for Couijv iters in Education 



ilCCE) 
135 Education 
University of Oregon 
Eugene. OR 97403 
Monthhj/Subscripfiou:S16.50/}/ear 

Teachers (and interested parents) can write 
EPIE & Consumer's Union and obtain special 
publications, including the Micro Courseware 
PRO/FILES for K-8 Educators (S84), and the 
Courseware Resource List (as a bonus for ordering 
the PRO/FILES): 

EPIE & Consuujer's U}iion 

P.O. Box 839 

Wiitenuili NY 11976 © 



VIDEO MONITOR CABLES 

FOR VtC/C-64/ArARl 800 

VIDEO/AUDIO fRCA or Mint Phono Plug on Audio } tgss 

VIDEO ONLY (Ail Cables are 4d'i „„ ,395 

LUMIKANCE For use with monochrome monitors 1^95 

C-B4 VEflSACABLE f Outputs: video, audio 4995 

luminance. Inputs: Audio) 



UTILINK CARTRIDGE $29» 

TURN ON YOUR COMMODORE 64 WITH 
UTILINK AND INSTANTLY HAVE: 

• DOS SUPPORT* HIRES GRAPHIC CONTROL COMMANDS 

• DEFAUL T COLORS THA J RETURN AFTER 'RESTORE 

• LIS TINGS THA T ARE EASY TO READ 



13031 473-8909 



Missing Link Products 

P.O. Box 6460 Colorado Springs, CD 80934 

DEALERS call or write for discount quantity prices 



aaa sflie^ ta- 




yrns^ ~^'T.i 'j; 


' ^ i<4.%i,.'*>i'w!. i.^ ' 


^^ 


^^^* 


■ - - -^-f^K^-^r^ 


T'-q-^-'^j^r ' ■■'''^■'""'' " ; ".. -^I^M 






1 













J 



ror th« VtC 20 

3K RAIVI 



%o 



^f>^ 



.t«A 



MEMORY EXPANSION CARTRIDGES FOR VIC-20 



GROW 
WITH US! 

VRAM memory expansion modules are designed to pro- 
vide additional u$er programming space for the VlC-20 
system. VRAM plugs into the memory expansion port and 
requires no additional power or modification to the VfC-20 
system. The units are packaged as 3K, 8K, 16K and 24K 
modules. Selective mapping of 8K segments of memory into 
the various available BK blocks is provided. The BK cartridge 
may be upgraded to 16K or 24K based on MSD's exchange 
policy. Lifetime warranty when warranty card is returned. 
Made in USA. 

MICRO BVSTEMS 
OEVEL-OPMEMT, INC 

11105 Shady Trail & Suite 104 

Daiias, Texas 75229 

(214J 241-3743 

VlC-20 is a trademark o* Commodore Business 
Machines, inc. VRAM is a copyright of Micro 
Systems Development, Inc. 

■■■■■IBBM 



®Ar 






*»-o 



M 










Dealer Inquiries: t -800- 527-5285 

Win a FREE trip to Hawaii. Join our "Grow Witl^ 
Us" Club. The more you buy the better your| 
chances of winning. Ask your dealer for details. 

Julv1983 COMPUTE! 155 



How To Create A 
Data Filing System 

Part I. Choosing The Right File Type 



Jim Fowler 



It's akvays a good idea to analyze your data storage 
problems and plan your solutkvi carefulhf before you 
start progra}}U}iuig. This artiele begins a four-part 
series oji tvritiug a data file! retrieval system for any 
computer. 



Remember how your disk drive was going to solve 
your data storage problems? All those address 
cards, recipe files, inventories, and accounts were 
somehow going to become organized and never 
frustrate you again. It can happen, but you will 
have to do some thinking about the problem before 
you solve it satisfactorily. 

Of course, the commercial data base systems 
can serve you very welL but you ought to know 
something about such systems before you spend 
money for features you may never use. It is not 
impossibly hard to write a progiam that does 
everything you want. I have lived through a 
couple of such projects so maybe I can point out 
areas to think about and where you might take a 
wrong turn. 

Planning is the name of the game. 1 can recom- 
mend writing your own system. If you like pro- 
gramming, you can easily develop a system that 
fits your needs, and you will know it well enough 
to alter it when you need to make changes. One 
thing to keep in mind as you plan is that once you 
begin to put the data on a disk you are, in a sense, 
a hostage to your owm work. The more time you 
have spent typing in the data, the more reluctant 
you will be to start over. So plan ahead. 

Another bit of advice ~ automation is not 
automatically a good thing. If you have a recipe 
card file with the cards filed under a few headings 
("salads/' "desserts/' "meats/' etc.) and if there 
are only 30 or so cards in each section, you can 
probably find the one you want faster by flipping 
through the cards by hand. I remind you of that 
eternal verity: "If it works, don't fix it/' 

156 COMPUTi! Jutv1983 



Pick Your Goals 

The first step is to draw up a list of what you want. 
Actually write down what you hope a session 
with the file would be like: you turn on the com- 
puter, insert the disk, sit down to the kevboard, 
then what? Do you want a long list printed out 
(address labels?) or are you going to look for a 
needle in a haystack, such as the one record with 
exactly the right data to match your needs? It is 
well worth writing such scenarios several times 
on different da vs. 

Another important consideration is flexibility. 
Whenever you are faced with a choice, always 
pick the one that gives vou the greatest future 
flexibility. Of course, most of your choices will be 
made for you by the necessides of your data, your 
hardware, its operating system, etc. But keep 
flexibility in mind. This applies to every feature of 
your system - the number of records you expect 
to store, the amount of information in each, 
the "keys" you might use to retrieve records, 
and soon. 

The key for an address file which is organized 
alphabetically by last names w^ould be the last 
names of each entry. The key allows for quick 
searches and for sorting and entering new items 
into the proper order. 

Finally, go to great lengths to make your sys- 
tem easy to use. It is so tempting to short-cut some 
tedious programming by saying to yourself, "Oh 
w^ell, 1 can always remember that hitting RETURN 
without any input will drop me out of the program. 
After all, I've been running this machine for awhile, 
and 1 don't make that mistake any more." 

The important thing about data file systems 
is that you enter and retrieve records hundreds of 
times. A small stone in your shoe is no big deal if 
vou are sitfing down, but walk a few miles and 
see how important it gets! A small annoyance in a 
program is tolerable if you only encounter it once 



StrmgtheiL ycmr hand 



The complete information control system for 
the Commodore 64. ideal for any home, 
business or professional environment where 
records are kept. Create the format you 





4 











need and enter your records. If the layout or 
data field sizes are not quite right, correct 
them and carry on. Superbase gives you an 
unrivalled range of powerful features including: 















'C 'by 



Find out more about 
^Superbase 64. Contact 
your local Commodore 
Dealer or Precision 
' Software at our U.K. office. 



// 



'precision Software Limited 
Park House 4 Park Terrace 



Worcester Park 

.-.,, . Surrey KT4 7JZ England 

ii^lV Telephone: 01-330 7166 
Telex: 8955021 PRECIS G 



i 



Precision 
Software 



in a while, but in a data entry or retrieval operation 
it can doom the whole system. Many a card file 
has been restored to active duty because, for 
reasons like these, its owner got fed up with auto- 
mation. So, be prepared to go to great lengths to 
make life easv for the user. 



Record 1 



Record 2 



Record 3 ^ — ■> 



Sequential File 



Record 1 | ^empty- 



Record 2 



3- 



Relative File 



Record 1 



Record 2 




Hybrid File 



Record 3 



3-- 



Table 



Address I 
Address 2 



*^ Address 3 



The three types ot tiles. Record 1 is shown 
as if it is only holt as long as Record 2. 



The Three Kinds Of Files 

There are three kinds of disk files. The first is one 
you probably already know, a Sequential File. All 
the data is strung together head to tail and put on 
the disk that way. Your programs are recorded on 
tape or disk in a sequential file. If you use a se- 
quential file, you will need to put separators (called 
delimiters) of some kind between items of data so 
that you know where one ends and the next be- 
gins. 

One problem with sequential files arises when 
you want to change a record and the new one is 
of a different length. It is like putting books on a 
shelf: take out a thin one and put a fat one in its 
place - you'll hav^e to move all the rest to make 
room. If you rarely make any changes, it might be 
worthwhile just erasing the old record by filling it 
with blanks and adding the new version at the 
end. 

The second kind is a Relative File. This is like 
a series of pigeon holes. One may be filled, another 
partially empty, but you do not have to move 
them to make room when you enlarge a record. 
As long as each hole is big enough to take the 
biggest record, you have no problem. This is the 
kind I use for my most complex data file. 

158 COMPUTE! July 1983 



The third kind is a sequential file, but with a 
'Table of Contents'' like the directory on a disk. 
Call it a lii/hrid File. To use this kind takes a lot of 
programming. 1 cannot recommend it unless the 
saving in space is much greater than the space 
taken by the extra programming and the table. 
Only big professional systems are likely to go this 
route. 

The figure diagrams the three file types. If 
your disk operating system supports relative files 
(also called randoni-acees:^ files), you will probably 
want to use that kind unless you are going to be 
very short of space on the disk. If your system 
doesn't automatically support relative files, you 
can make your program do it. Keep a table or use 
a formula which turns a record number into its 
''address" on the disk - its track and sector. Then 
you read or write a record directly by track and 
sector. This is a bit complicated, but worth doing. 

Next month, we will look at methods of re- 
trieval and how they can affect the way you keep 
records. /p^ 



COMPUTE! 

The Resource, 




TEXAS 
INSTRUMENTS 



Expansion Sysrem M94.00 

Extended Basic lO *78,00 

Persona! Record Keeping (0 *38.00 

Parsec (0 . »31.00 

Remore Controllers *28.00 

Anteater (Ci *J4.00 

Princess and Frog (0 *34.CHJ 

zaxxon (D) *2e.OO 



A 

ATARI 



ATARI 
400/800/1200 



COMMODORE 64 



Commodore 64 computer 



'395.00 



1541 Disk Drtve 


<35S.(» 


DreibscT'DG 


*24.00. '31.00 


Survivor (T/D,0 


'24.00, '31.00 


Fort ApOCaiVDSeiT/D,C) 


^24.00, '31.00 


PnarotTs Curse fT/D,Ci 


'24.00, '31.00 


Sea wolf tci 


'22.00 


AssemDier 64 


'36.00 


GREAT GAMES FOR 


Tl, ATARI, 


VIC 


Ape Escape fCi 


'28.00 


vortex (CI 


'36.00 


Dnve Em Crazv ^0 


'28.00 


* River Rescue ID 


'30.00 


'SnamusiT DX) 


'25.00. '31.00 


Eagte Mountain ici 


'28.00 


'Sector Alpha (0 


»S6.00 


'Protector II (T/D,a 


'25.00, *31. 00 



800 with 48K 
1200 with 64t( 
310 Disk Drive 
410 1010 Recoraer 
Epson FX-30 
Newell Fastchip 
43 ■ 52K Memory for 400 
Letter Perfect fD} , 
mnome Kevsoard 
The Bookkeeper (D) 
Superman ill (C) 
Temple of Aspnai (D) 
W(zarc of Wor (D.D 
Star Trux (C! 
Miner 2049er (C) 
SAGA n-12)(Dl 
Shamus. Case II (T.'D.q 
Crash Dive (Ci 
Boulders & Bombs (0 
Mountain King (CI 

Time Trails ici 

p]nne3d(T,Di 

Andromeda (T,DJ 
Save the Seas (Ci 
Donkey Kong (0 
Sunday Driver fT.Dl 
Major League Hockey (G 
Famous Red Ball Joystick 
Wico Trackoall 
Atari joysticks !2 pack) 
Elephant Disks (SS/SD) 
Maxell Disks isssDi 



'489.00 

'624.00 

'419.00 

'72.00 

*S49.00 

'36.00 

'105.00 

M04.00 

'94.00 

'101.00 

*34,00 

»27.00 

'27.00, »30.00 

'32.00 

'35.00 

'26.00 

.00, '30.00 

'28.00 

*33.0O 

'33.00 

'33.00 

'22.00 

'21.00 

'35.00 

CALL 

'23.00 

'33.00 

'26.00 

'49.00 

'14.00 

'19.50 

'28.00 



'24.C 



c ■ Cartridge T ■ Cassene d ■ Disk 



'Wor 3vaifat}ie on v\o2Q 

j ^ * V . I \.i ^ .. 




Send cneck or money order Please .idd S2,50 oo^raoe & 
M.indling for softwnre il'f for hardware visa, f^^a^ter card 
add 3': Wisconsin residents add S*;: safes rait Pnces 
suOiecr to Change without notice 

P.O. BOX 245, oept. C1, Brownsville, Wl 53006 
Phone (414) 583-4462 



JINSAM 



TM 



EXECUTIVE 



m m 



%i'U 






Used at NASA, 
Kennedy Space Center 
With Multiple Applications Related 
to the Columbia Space Shuttle Project 
ineludmg rescue operations, statistical 
s, inventory and vehicle tracking. 



USA 



space 
age 



micro 



software 



JINSAM EXECUTIVE "^ 

has broken the 1 0,000 record limit* You 
may now have up to 65,000 records In one 
database. 

We also have included a free form 
report generator for data entry, elimi- 
nating the need for WordPro'" s^nd have 
included automatic mathematical relations 
eliminating the need for VislCalc"**. How- 
ever, you stiii have these superb interfaces 
available. 

Executive ™ will be available for CBM 
and IBM personal computers. 



m& 



JINI MICRO-SYSTEMS, Inc. 



DATABASE MANAGEMENT SYSTEM DESIGN 



BOX 274 KINGSBRIDGE STN.. RIVERDALE. N.Y. 10463 (212) 796-6200 



How To Make Backup 
Disks For VIC And 64 



Harvey B Herman, Associate Editor 



LOAD, switch disks, SAVE, LOAD, switch, SAVE- 

it can be ciimbersonw ami tedious to make backups of 
disks wheu you dofi't have a dual disk drive. Wluif's 
worse, ifou need to go through special extra step)s to 
transfer machine language programs. This utility, for 
am/ 64 or expanded VIC, makes creating safe backups 
on single disk driz^es nearhf autoinatic. 



I recently purchased a 1541 disk drive for my ex- 
panded VIC. The diskette that came with it in- 
cluded a few sample programs. Conspicuous by 
its absence, however, was a program to make 
duplicate copies of diskettes for backup purposes. 
I have learned the hard way that diskettes do not 
last forever and it is foolish to have only one copy 
of important programs. 

What do to? Well, 1 w^as luckv to have acquired 
an excellent backup program for the Commodore 
2031 single disk drive (w^ritten by Jim Law and 
Keith Hope and distributed by the Toronto PET 
User's Group). I adapted this program to work 
on the Commodore 64 and expanded VIC-20 
computers. One program works for both. The 
modifications in the original program were quite 
modest - a few PEEKs and POKEs were changed, 
and the machine language portion was relocated 
to the cassette buffer and POKEd in from DATA 
statements. 

The program is quite easy to use; no knowl- 
edge of machine language is necessary. First, the 
destination diskette is formatted, a good idea if 
you will be using it later on the same drive. Please 
be careful to format only blank diskettes, or ones 
that are no longer needed. Next, the diskettes are 
swapped and the source diskette is read to deter- 
mine how much to copy. Successive blocks are 
then read from the source into the available 
computer memory. (I can read 124 blocks on the 
Commodore 64 and proportionately less on the 



expanded VIC, which has less memory.) The dis- 
kettes are sw^apped again, and identical blocks on 
the destination disk are written from data saved 
in memory. The swapping of source and destina- 
tion diskette continues, until the entire diskette 
has been copied. 

Of course, it would be easier (but not much 
faster) if a second drive were available. However, 
this program is the next best thing. It surely beats 
loading and saving BASIC programs, one at a 
time, or finding the loading address of machine 
language files. Try that sometime if you doubt it. 

One caution - the program will not work on 
an unexpanded VIC. 1 have added 24K of RAM, 
by means of the Cardboard, and this minimizes 
swapping. Much less than 16K mav not be practi- 
cal, as too few blocks are copied in one swap. 
Obviously, the Commodore 64 does not have this 
problem. 

If you want to save the trouble of typing this 
in, I will make a copy for vou on cassette or diskette 
(1540/1341 format) for S3'. Just send me the 
medium, a self-addressed mailer, and proper 
postage. If you have any questions please enclose 
an SASE. My address is: 

I"hirve\/ B. Herman 
Chenustri/ Deparhaenf 
ilNC"Grecu$boyo 
Grecjjsboro, NC 27412 



VIC/64 Disk Backup 

1 F0RI=828T0883 : READA; POKEI , A: NEXTI 

10 REM"D=DSAVE"@BACK2" , D0: ?DS9 : CATALOGD0 

20 BB=PEEK(44)+27:P0KE995,BB 

30 POKE998,PEEK(55) : P0KE999 , PEEK( 56 ) : POKE 

55,0:POKE56,BB:CLR 
40 BB=PEEK(995) 

50 N=PEEK ( 999 ) -BB-1 : BA=BB*256 : MA=828 
60 DIMBM%(35,24) 
70 FORJ=0TO7:TA(J)=2TJ:NEXT 
80 PRINT" {clear} f 03 RIGHT) { REV } BACKUP 154 

ICOFF}" 






',^3 '56«-»« 









t^-^l lIVAl ^3&'. 






'' ^M\ 










to <ouv 






---t.-^^r/pai^fe^-^'^'" 



them a" 




c»vc 






spfj 



63^. 















Calc 



di"}t"ra9eS_oV.;;a\ed 



as© 



coo 



rd^nf 



n^^S.^ .^..nn screen 



ptvs 



AV40_V°rr. 



P®^l«andst^»\, pr 



,oo' 



. 0.a?"- ^^""' 
•lS'fesP°^--^p.-^- 






speed c^5!|uS|>^*unct'0^^^^^^^^ 






a' 



^neets- 



to< 






s«\b*>* 






o< 



Con^°re''^f°j;scon^«' 



P^°%tas .MVsVCaAo 



Pkbi«^ 



\o 




L-rii^^ 



*«»^* 



ce© 



inc- 



Commodore 64 is a trademark of Commodore Bt/stnets Machines 

'isiCalc is a trademark of VisiCorp. 

;alc Resull \% a trademark of Handle Software, AB. 






-^ 08002 • 



609 



.79S- 



.-gAQO 



outfo* 



tnein 



90 PRINT" {down} 'GOTOlOeSS' IF PROGRAM QUI 

TS ABNORMALLY" 
100 PRINT " { DOWN ] " N " BUFFERS AVAILABLE " 

110 0PEN1,8,15 

200 REM *** MAIN FUNCTIONS **** 

210 GOSUB1J000 

220 D?="S":GOSUB3200:I2$=IR$ 

230 IFDR$<>"2A"THENPRINT"[ REV) ILLEGAL DOS " 

1.0 DISK { OFF) ":GOTO10000 
240 IFI2$=I1$THENPRINT"{ rev) SOURCE AND DES 

TINATION HAVE SAME ID C0DE{0FF)"; 

GOTO10000 
250 GOSUB2500 

260 T=TS:S=0:NU=1:T1=T:S1=S 
270 PRINT#1, "I0":OPEN3,8,3, "#" 
280 PRINT "READING BLOCK #"; 
290 IFBM% ( Tl , SI ) =0THENGOSUB2000 : NU=NU+1 : IF 

NU>NTHEN320 
300 S1=S1+1;IFS1>20THENS1=0:T1=T1+I 
310 IFTKTF+1THEN290 
3 20 PRINT" {down)" 
3 30 CL0SE3 

340 D$="D":GOSUB3200:IFIR$<>I1$THENGOTO340 
350 PRINT#1,"I0":OPEN3,8,3, "#" 
360 PRINT"WRITING BUFFER #"? 
370 NU=1:T1=T;S1=S 
380 IFBM% (Tl , SI ) =0THENGOSUB2200:NU=NU+1 : IF 

NU>NTHEN410 
390 S1=S1 + 1 : IFSl > 20THENS1=0 : T1=T1+I 
400 IFTKTF+1THEN380 
410 PRINT" {DOWN) " 
420 CL0SE3 

430 S=S1+1:IFS>20THENS=0:T1=T1+1 
440 T=T1:IFT>TFTHEN500 

450 D$="S":GOSUB3200:IFIR$<>I2$THEN450 
460 NU=1;T1=T:S1=S:GOTO270 
500 REM FINISHED XFERS 
510 CLOSEI 

520 POKE55, PEEK (998) : POKE56 , PEEK( 999 ) : CLR 
530 PRINT" {02 D0WN)BACKUP COMPLETE" 
540 OPEN1,8,0, "50" 

550 GET#1 , A? : IFA$<> " {REV) "THEN550 
560 PRINTA$; :GOTO610 
570 GET#1,A$:SS=ST:A=LEN(A$) :IFATHENA=ASC( 

A$) 
580 GET# 1 , B$ : SS=ST : B=LEN ( B? ) : IFBTHENA=ASC ( 

B$) 
590 IFSSTHEN660 
600 IFA=1ANDB=1THENGOSUB630 
610 GET#1,A$:IFA$=""THENPRINT:GOTO570 
620 PRINTA?; :GOTO610 
6 30 GET#l,A?sSS=ST:A=LEN(A$) : IFATHENA=ASC( 

A$) 
640 GET# 1 , B$ : SS=ST : B=LEN ( B? ) : IFBTHENB=ASC ( 

B$) 
650 N=B*256+A:PRINTN;: RETURN 
660 CLOSEI 
670 END 

1000 REM HEADER DEST DISK 
1010 PRINT" {down) INSERT DESTINATION DISK TO 

BE FORMATTED" 
1020 INPUT" [02 DOWNIdISK NAME{03 RIGHT}_ 

[19 left) "rDN? 
1030 IFDN$="_"THENPRINT"{03 UP) " ; : GOTO1020 
1040 IFLEN ( DN$ ) > 16THENCLR: GOTO40 
1050 F=0 : F0RJ=1T0LEN ( DN$ ) : SI $=MID$ ( DN$ , J , 1 ) 
1060 IFS1?="_"0RS1?=CHR$(34)THENF=1 
1070 NEXTJ:IFFTHENPRINT"{03 UP } " ; :GOTO1020 
1080 INPUT" {down) UNIQUE DISK ID [03 RIGHT )_ 

(23 left)"; II? 
1090 IFI1$="_"THENPRINT"{02 UP ) " ; :GOTO1080 
1100 IFLEN(IIS)<>2THENPRINT"{02 UP)";:G0T01 

080 
162 COMPUTE1 July 1983 



I I 10 PRINT#1,"N0:"+DN$+ ","+!!$ 

1120 GOSUB3000 

1130 I FERTHENP RINTER$ : GOTO 10000 

1140 RETURN 

2000 REM READ BLOCK T1,S1 TO BUFFER # NU 

2010 C=. 

2020 PRINT#1,"U1";3;0;T1;S1 

2030 GOSUB3000:IFNOTERTHEN2060 

2040 C=C+1:IFC<3GOTO2020 

2050 PRINTER? :F0RJ=(BB+NU)*256T0(BB+NU)* 256 

+25 5: POKE J, • :NEXTJ:GOTO2100 
2060 PRINT#I/'B-P";3;0 
2070 IFNUO0THENPRINT" {03 LEFT) "; RIGHT? ( 

" "+STR$(NU),3)r"{03 LEFT)"; 
2080 POKE996 , PEEK ( 3 ) : POKE997 , PEEK ( 4 ) : P0KE4 , 

BB+NU : SYSMA 
2085 P0KE3 , PEEK ( 996 ) : POKE4 , PEEK ( 997 ) 
2090 IFSTO .ANDST<>64THENGOSUB3000:GOTO2050 
2100 RETURN 

2200 REM WRITE BLOCK T1,S1 FROM BUFFER # NU 
2 210 C=. 
2220 PRINT#l,"B-A";0rTl;Sl:PRINT#l,"B-P";3? 


2230 PRINT" {03 LEFT} "? RIGHT? ( " "+STR?(N 

U),3);"{03 LEFT}"; 
2240 POKE996,PEEK(3) : POKE997 , PEEK( 4 ) :P0KE4, 

BB+NU:SYSMA+3 
2245 P0KE3,PEEK(996) :P0KE4, PEEK ( 997 ) 
2250 IFSTO .ANDST0 64THENPRINT "{rev) IEEE WR 

ITE ERROR" ST" {OFF} " :GOTO10000 
2260 PRINT#I, "U2";3;0;T1;S1 
2270 GOSUB3000:IFNOTERTHEN2300 
2280 G=C+1:IFC<3THEN2260 
2290 PRINT" {REV) UNRECOVERABLE WRITE ERROR"E 

R$:GOTO10000 
2300 RETURN 

2 500 REM GET BAM TO BM%(T,S) 
2510 TS=1:TF=. 

2520 PRINT#1,"I0":OPEN3,8,3, "#" 
2530 S9=0 

2 540 PRINT" I DOWN) TRACK # BLOCKS TO XFER" 
2550 PRINT" ####»######»####»»##»»»# " 
2560 NU=0:T1=18:S1=0:C0?=CHR?( . ) :GOSUB2000 
2570 By=4 

2580 T%=(BY-4)/4+l 
2590 PRINT" ";T%; 
2 600 I FPEEK ( BA+BY ) = . THENFORJ= • T02 : BM% ( T% , J 

)=.:NEXT:BY=BY+4:GOTO2650 
2610 S=0 
2620 BY=BY+1:A0=PEEK(BA+BY) : FORJ= .T07 :BM% (T 

% , S ) =A0ANDTA ( J ) : S=S+ 1 : NEXT 
2630 IFS<22THEN2620 
2640 BY=BY+1 

2650 ES=21:IFT%>I7THENES=19 
2660 IFT%>24THENES=1B 
2670 IFT%>30THENES=17 
2680 F0RJ=EST024 : BM% ( T% , J ) =- 1 : NEXT 
2690 SM= . : F0RJ= . TO20 : IFBM% ( T% , J ) = - THENSM=SM 

+1 
2700 NEXT: PRINT TAB( 12 ) ; SM: S9=S9+SM 
2710 IFSM=.ANDTS=T%THENTS=TS+l:GOTO27 30 
2720 IFSMO .THENTF=T% 
2730 IFBY<143THEN2580 
2740 CL0SE3 

2750 PRINT" START =";TS;" FINISH =";TF 
2760 PRINT" {down} A TOTAL OF" ; S9 ? "BLOCKS TO 

XFER" 
2770 SB=90+25+( .650+.980)*S9 
2780 S7=INT ( S8/60 ) : PRINT" APPROX" ; S7 " : " INT ( S 

8-S7*60) ; "FOR COPY" 
2 790 RETURN 

3000 REM READ ERR CH TO ER, ER? 
3010 INPUTt I , E0? , El ? , E2? , E3? : ER?=E0$+" , "+E1 




"REALLY FOXY 
IS BEING LETTER PERFECT' 



WORDPROCESSOR 
FOR THE COMMODORE 64"" 
ALSO CHECKS YOUR SPELLIIMG! 

SCRIPT 64 

Suggested Retail: $139.95 

Contact Your Nearest Commodore Dealer Today . . . 

You'll Be So Glad You Did! 

Distributed By: /J—-^JS^ 

COMPUTER 
MARKETIIMG servicesinc 



300 W. Marlton Pike 

Cherry Hilt. New Jersey 08002 

(609) 795-9480 



Commodore 64 is a trademark of Commodore Electronics Lrmited Script 64 is a trademark of Richvale Telecommunications 




t s Time for 
TOTL 80MWARE! 

for the VIC 20'" and COMMODORE 64™ 

WORD PROCESSING AND MAILING LIST & LABEL 
now available with ^^MMW^^E^^^W9M^W^^% 

FAST PRINTING • LIGHTNING LOADS • SIMPLE COMMANDS 



TOTLTEXT 2.0 + CS V1C+8K expansion $25.00 

TOTLTEXT 2.5 + CS ViC + 16K expansion $35.00 

TOTL.TEXT2.6 + CS Commodore 64 $40.00 

TOTLLABEL 2.1 + CS VIC + 1 6K expansion $20.00 

TOTLLABEL2.6 + CS Commodore 64 $20.00 

TOTL TIME MANAGER 2.1 VIC + 8K expansion $30.00 

TOTL TIME MANAGER 2.6 Commodore 64 $35.00 

time management, scheduling, reports 

RESEARCH ASSISTANT 2.0 VIC + 8K expansion $30.00 

RESEARCH ASSISTANT 2.0 Commodore 64 $35.00 

key word cross-reference research tool 

TOTLBUSINESS 3.0 VIC+ 16K expansion $85.00 

TOTLBUSINESS 3.6 Commodore 64 $95.00 

business programs require disk and are shipped on disk 

One Megabyte Fuzzy Diskette $25.00 

computer noveJty piHow 



All programs work wilh 40/80 column (VIC) and 80 
column (64) adapters — compatible with tape or disk 
systems —shipped on cassette tape— available 
on disk $4.00 extra. 

Giiutlity You Cmn Afford 

AoaiiUkhie Mt your locmi dernier 
or bg phone order 




flTTL 

software inc. 



1555 Third Ave., Walnut Creek, CA 94596 
^^ Call (415) 943-7877 

Commodore 64 and VIC 20 are registered trademarks of Commodore Electronics, Ltd. 



July 1983 COMPUTEi 163 



3020 ER=LEN ( E0$ ) : IFERTHENER=VAL { E0$ ) 

3030 RETURN 

3200 REM INSTRUCT TO SWAP TO DISK GIVEN IN "^ 

3210 IFD?="D"THENS1$="DESTINATI0N" :GOTO3230 

3220 S1$="S0URCE" 

3230 PRINT" {down) INSERT ";S1$;" DISK, PRESS 

I REV) SPACE (off)" 
3240 GETA?:IFA$<>" "THEN3 240 
3250 OPEN2,8,0,"$0" 
3260 GOSUB3000:IFER>0THEN10000 
3270 F0RJ=1T026;GET#2,A$:NEXTJ 
3280 GET#2,A$:GET#2,B$:IR$=A$+B$ 
3290 GET#2 , A$ : GET#2 , A? : GET#2 , B? : DR$=A$+B$ 
3300 CL0SE2: RETURN 
10000 REM DROP OUT 
10010 POKE55, PEEK (998) : POKE56 , PEEK( 999 ) : 

CLR: STOP 
15000 DATA 76,66,3,76,91,3,162,3,32,198,255, 

160,0,132,3,3 2,207,255, 145 
15010 DATA 3,165,144,208,3,200,208,244,32, 

204,255,96,162,3,32,201,255,160 
15020 DATA 0,132,3,177,3,32,210,255,165,144, 
208,3,200,208,244,32,204,255,96 © 



ATARI* 



PAYROLL SOFTWARE 
FOR 
THE ATARF 800 " ' 



COMPUTE! 

The Resource, 



Miles Payroll System"" is an advarced arvj compfertenssve payroll accounting system 
designed for businesses toOay CumUalive totals are mamiained fof each employee, as well as 
complete fepc<t!ng, check wniing, and W*2 reporting Some feaiures incii>de 

• Random access lile orgaraiation lor fast updating of indtvidual records 

• Allows weekly, titweekly, semtmoothly or montfily pay periods 

• Completely meriu-dnven and user-ffiendly 

• Re^ lar, 0^ ome Ooutde t mt S icK Ht^id ay , Vacat m Bonus and Corrintssmn earwno categonea 

• Payroll deductions tnci ude Federal W/ H Tax. Stale W/H Tax, Cily W/H Tax, PICA, SO t. Group 
Insurance and 3 user-defined deductions 

• Tax sheltered annuity deduction capability le^ IRAs and other tax shelters. 

• State and Federal Unemployment Insurance rnaintained 

• Complete ftle viewing and editing capahilily 

• Maintains up to 50 employees 

• Up to 10 user- defined Workers Compensaiton classifications 

• Federal Tax tables may be changed in only 1 5 minutes each year by user when IRS changes tax 

• Tabte method used lor State and City Tax. allowing compatibility with any state's or City's tax 

• Produces 15 different reports, including W-2 Forms Report 

• Checks calculated and pnnted automatically 

• PROGRAMEWABLINGMODLLE" protects valuaWepayrolh nf ornia lionfromunauthonzedusers 

• 3 user- defined payroll deductions to accommodate customi2ed needs such as savings, profit 
sharing, tax shelters, pensions, etc 

• Pay penod. nwntbiy, quarterly and yearly cumulative totals maintained for each employee 

• Automatic input error detection and recovery protects system from user- generated errors 

• Easy-to-follow, detailed, and comprehensive user's manual and tutorial leads the user step 
by step allowing anyone with litlle computer expenence to easily operate the package 
includes indeik 

• Color, souiTd, and graphics utilised for user ease 

• Maintains employee pay history. 

• Allows for manual payroll check writing 

• Packarjeri in a handsome S-ring deluxe pocketed binder with 3 diskettes and manual 

• Reasonable price 

See your local store or contact Miles Compuiing 

jL A MILES COMPUTING 

/l|\:t-.<- 7136 Haskell Ave. #204 



liles 



Van Nuys. CA 91406 
(213)994-6279 



Atari IS a registered trademark ot Atarf. Inc 

Miles Computing MILES PAYROLL SVSTEM, PROGRAM E^ABLING MODULE are trademarks 

of Miles Computing. Van tVuys, California Not attiliated with Atari, Inc 

St 79 95 Requifes32K and two Atari" 8^0" disk drivers Payment in US, funds required with 

order California residents add 6.5% sales tax CO D or prepayment only Dealer inquires 

welcome 




164 COMPUTE! July 1983 



CIRCLES 



Jeffrey S McArthur 



Every Atari graphics programmer needs to draw circles. 
This tutorial will show you hoiv to draw a circle - and 
draw one fast - without jumping through hoops. There 
are seiKral drawing utilities here, from an elementary 
BASIC routine lohich takes 60 secoiuis to a machine 
language version that finishes in a fraction of a second. 
Even if you're not interested in the methodology, you 
can still use these subroutines in your graphics and 
ganws. 



Program 1 draws circles, but takes more than a 
minute to draw a circle, no matter how big or 
small it is. 

Reflections 

A circle is symmetrical, so why don't we take ad- 
vantage of its symmetry? If we know the value of 
one point, we can reflect it across the X-axis or 
across the Y-axis. That is, if we know (X,Y) is a 
point on the circle, then so is (X,-Y). The same is 
true for (-X,Y) and (-X,-Y), So we have to do only 
a quarter of the work. Circles are also symmetrical 
along the X = Y line. If we know (X, Y) is on the 
circle, then so is (Y,X). Now we have to find only 
an eighth of the points. Program 2 uses that 
method. 

Unfortunately, even doing only one-eighth 
pf the work, we still need more than ten seconds 
to draw the circle. Perhaps there is a better way. 
Instead of using sines and cosines, use the 
equation: 

X*X +Y*Y=R*R 

That isn't very useful, but we can rearrange the 
equation and get: 

Y = SQRT(R*R-X*X) 

So all we have to do is find Y for X= -R to R. 
However, since the square root function returns 
only the positive square root, we also have to plot 
the negative square root. Program 3 is an example 
of how to do that. This method is faster than using 
sines or cosines, but it still takes more than 16 
seconds. So using Program 4, we reflect it, like 
we did in Program 2. 

Now we have a method that takes only five 
seconds on a large circle and is a lot faster on the 



smaller ones. If you take a close look at how Pro- 
gram 4 draws the circle, you see it draws lines of 
different lengths. This method works fine on a 
screen, but on a plotter the circle has flat spots. 

A Faster Circle 

The screen is made up of an array of points. Each 
point is addressed by two coordinates (X,Y). How- 
ever, X and Y are always integers. In Atari BASIC 
you can PLOT 0.5,0.5, but the points are rounded 
to integers. So if you are at one point on the circle 
and are trying to figure where the next point is, 
you can go in eight directions. 

If you divide the circle into quarters, then 
only three of those directions are valid. If you 
divide the circle into eight parts, you can go in 
only two directions. For example, if you are on 
the circle at (R,0), the next point is either (R-1,0) 
or (R-1,1). This method is called a potential function. 
Since the screen cannot plot points except with 
integers, there is a small error that is not always 
equal to zero. 

We want to keep the error as small as possible. 
We also reflect it eight ways as before. That takes 
only three seconds, and we never have to draw 
any long lines. Program 5 uses this method. 

Notice also that you can achieve the entire 
result using only addition and subtraction. Such 
programs can be easily converted to machine lan- 
guage since we don't have to multiply or divide. 
Program 7 is a machine language program to draw 
a circle. Program 6 calls the machine language 
and takes less than two-tenths of a second to draw 
a circle. 

The machine language is called by a USR 
function. The parameters that are passed to it are, 
in order: the address of the code, the X coordinate 
of the center of the circle, the Y coordinate of the 
center of the circle, the radius, and the mode of 
drawing. The mode of drawing means 

0: turn point off 
1: turn point on 
2: invert point 

The program can be converted to any 6502 
machine. The only things that need to be changed 
are where the variables are stored and how to 
plot the points. 

July 1983 COMPUTE 165 



The only problem with the machine language 
program is that it does no checking to see if the 
circle goes off screen. And no clipping is done. 
Therefore, if your circle goes off screen^ you will 
write over other memory. 

Program i: sines And cosines 



Program 4: square Root Reflected 



100 


REM CIRCLE DEMONSTRATION 


1 10 


REM PROGRAM 4t 1 


140 


REM THIS METHOD TAKES AP 




ELY 61 SECONDS 


200 


DEC 


210 


GRAPHICS 8 


220 


COLOR 1 


230 


SETCOLOR 2,0,0 


240 


A=160 


250 


B = 80 


260 


R = 50 


300 


FOR ALPHA=0 TO 360 


310 


X 1 = 1 NT (R*CDS (ALPHA) +0.5) 


320 


Y1=INT (R*SIN (ALPHA) +0-5) 


330 


PLOT A + Xl,B-i-Yl 


340 


NEXT ALPHA 



APPROXIMAT 



100 


REM 


1 10 


REM 


140 


REM 




ELY 


210 


GRAP 


220 


COLO 


230 


SETC 


240 


A=16 


250 


B = 80 


260 


R = 50 


270 


X0 = -' 


280 


X 1=- 


290 


Y1 = I 


300 


PLOT 


310 


PLOT 


320 


PLOT 


330 


PLOT 


340 


PLDT 


350 


PLOT 


360 


PLOT 


370 


PLOT 


380 


X0=X 


390 


IF - 



CIRCLE DEMONSTRATION 

PROGRAM #4 

THIS METHOD TAKES APPROXIMAT 

5 SECONDS 

HICS 8 

R 1 

GLOR 2,0,0 





R: Y0=0 

R 

NT(0.5 + SQR(R*R-X1*X1) ) 

A+X0,B+Y0:DRAWTO A+X1,B+Y1 

A-X0,B+Y0:DRAWTG A-X1,B+Y1 

A+X0,B-Y0:DRAWTO A+X1,B'Y1 

A-X0,B-Y0:DRAWTQ A-X1,B-Y1 

A+Y0,B+X0:DRAWTG A+Y1,B+X1 

A-Y0,B+X0:DRAWTQ A-Y1,B+X1 

A+Y0,B-X0:DRAWTO A+Y1,B-X1 

A-Y0,B~X0:DRAWTO A-Yi,B-Xl 

1 : Y0=Y1 

X1>=Y1 THEN Xl=Xl+l:GOTO 290 



Program 2: Sines And Cosines Reflected Program 5: Potential 



100 
1 10 

140 

200 
210 
220 
230 
240 
250 
260 
270 
300 
310 
320 
330 
340 
350 
360 
370 
380 
390 
400 
410 



REM 
REM 
REM 
ELY 
DE6 
GRA 
COL 
SET 
A=l 

B=a 

R = S 
PLO 
FOR 
X 1 = 
Yl = 
PLO 
PLO 
PLO 
PLO 
PLO 
PLO 
PLO 
PLO 
NEX 



CIRCLE DEMONSTRATION 
PROGRAM #2 

THIS METHOD TAKES APPROXIMAT 
1 1 SECONDS 



PH 
OR 
CO 
60 



T 

A 
IN 
IN 
T 
T 
I 

T 
T 
T 
T 
T 
T 



ics a 
1 

LOR 2,0,0 



A + R 
LPH 

T (R 
T (R 

A+X 
A-X 
A+X 
A-X 
A+Y 
A-Y 
A + Y 
A-Y 
ALP 



. B 

A=0 TO 45 
*COS (ALPHA) +0.5) 
*SIN (ALPHA) +0.5) 
1 , B+Yl 
1 , B + Yl 
1 , B-Yl 
B-Yl 

e+xi 

B+Xl 
B-X 1 
B-X 1 



1 
1 

1 
1 
1 
HA 



Program Z: Square Root 



100 REM CIRCLE DEMONSTRATION 

110 REM PROGRAM #3 

140 REM THIS METHOD TAKES APPROXIMAT 

ELY 17 SECONDS 

210 GRAPHICS 8 

220 COLOR 1 

230 SETCOLOR 2,0,0 

240 A=160 

250 B=80 

260 R=50 

270 X0=-R:Y0=0 

300 FOR Xl=-R TO R 

310 Y1=INT(0.5+SQR(R«R-X1»X1)) 

330 PLOT A+X0, B+Y0: DRAWTO A+X1,B+Y1 

335 PLOT A+X0, B-Y02 DRAWTO A+X1,B-Y1 

336 X0=X1:Y0=Y1 
340 NEXT XI 



100 
1 10 

1 4 

210 
220 
230 
240 
250 
260 
270 
280 
290 
300 
310 
400 
410 
420 
430 
440 
450 
460 
470 
500 
510 
520 

530 



REM 
REM 

REM 

ELY 

GRA 

COL 

SET 

A=l 

B = 8 

R = 5 

PHI 

Y 1 = 

X 1 = 

PHI 

PHI 

FLO 

PLO 

PLO 

PLO 

PLO 

PLO 

PLO 

PLO 

PHI 

Yl = 

IF 

= PH 

IF 



CIRCLE DEMONSTRATION 

PROGRAM 415 

THIS METHOD TAKES APPROXIMAT 

3 SECONDS 

HICS B 

R 1 

QLOR 2,0,0 





P 



c 

6 





= 



R 

Y 

X 

T 

T 

T 

T 

T 

T 

T 

T 



= PH 
Y = P 
A + 
A- 
A + 
A- 
A + 
A- 
A + 
A- 
PHI 
1 + 1 
BS C 
XY: 



I +Y1+Y1 + 1 



HIY-Xl- 
XI , B+Yl 

B + Yl 
B-Yl 
B-Yl 
B+X 1 
B + X 1 
B-Xl 
B-Xl 



X 1 + 1 



XI 
X 1 
X 1 
Yl 
Yl 
Yl 
Yl 
Y 



PHIXY) < ABB (PHI Y) 

X1=X 1- 1 

Yl THEN 300 



THEN PHI 



Program 6: basic Call To Machine Language 



100 
1 10 

140 

210 

220 
230 
240 
250 
260 
270 
300 



REM 

REM 

REM 

ELY 

GRAP 

COLO 

SETC 

A=16 

B = 80 

R = 50 

P = 7* 

I=US 



CIRCLE DEMONSTRATION 

PROGRAM It6 

THIS METHOD TAKES APPROXIMAT 

0. 1833 SECONDS 

HICS 8 

R 1 

QLOR 2,0,0 





16*16*16 
R (P, A, B, R. 



1 > 



166 COMPUTE! July 1983 



BASIC 
Commander 




The most powerful 

progra^mming aid availabte 

lor the ATAHI 

' J '. ■ ■ - .,.■..„* tr f * TAtt- s*,^ ;^.. ^,^. 



BASIC COMMANDER 

BASIC COMMANDER is the most powerful 
proorsmming aid for the ATARI 
400i800/12D0. Singfe keys access DOS 
functions, list and count the variables you 
have used, or LIST, SAVE, ENTER, LOAD or 
RUN files. Even has 3 piograminahle keys 
which you can program for any legal BASIC 
statement. This powerful utility also provides 
automatic line numbering, block deletion of a 
range of lines, and FAST renumbering of all 
lines and references, with extensive efror 
trapping. Disk only, requires 16K: $34.35. 



MMG BASIC DEBUGGER 

A totally unique utility for the ATARI 

400/800/1200, unlike anything else availatile 

for microcomputers. TRACE through your 

BASIC program, printing line numbers or 

whole lines as they execute, to the screen or 

to a printer. Single step through your 

program, and change andior display variable 

values at any time. Full screen editing: scroll 

your program up or down! The split screen 

mode allows you to view and edit two parts 

of youf program at once. Search your 

program for any phrase, command or string 

of characters. Finally, you may obtain an 

alphabetized listing of your variables, with 

every line numher in which each appears! 

Disk only, requires 24K: $34.95. 




FOR YOUR ATARI FROM 



FINAL FLIGHT! 

Have you ever wanted to pilot your own 

plane? Now, thanks to your ATARI and 

FINAL FLIGHT!, you can. This all machine 

language flight simulation is as close to the 

real thing as possible, with full-color views 

from the cockpit, full instrumentation, 

multiple levels of difficulty, several weather 

condilions, and more! Puts you at the 

controls of a small, single-engine plane on its 

final approach to the runway. Multiple screen 

updates per second give a realtime feeling of 

flight. Disk or tape, requires 24K: $29.95. 






< 

CO 


:areer 

UNSEU 

By 
%3 ,^Vv\G ^^c^o ? 


T 

o Systems 





CAREER COUNSELOR 

A unique and lascinating way to explore the 
important world of careers, through a 
combination of education, fun, and a sense of 
adventure provided by the Career Search 
technique used. You enter your likes and 
dislikes concerning interests, abilities, and 
other goals, and the program generates a list 
of careers which satisfies your preferences. 
Through repeated use of this process, you 
lain valuable, life-long insights into your 
career goals. Contains hundreds of careers, 
with detailed information about each. Disk 
only, requires 32K: $59.95. 



MMG MICRO SOFTWARE 




GRAPHICS TITLEB 

Now you can design fantastic introductions 
or stunning visual displays for your own 
programs, and give that professional touch to 
your efforts. Supports 4 graphics modes, 
including high-resolution, multicolor mode 7.5! 
Allows mixing of text and graphics in any of 
the graphics modes, includes both horizontal 
and vertical fine-scrolling routines for text 
using multiple letter sizes on the same line! 
The replicate command allows you to draw 
an object once, and copy it all over the 
screen with a single command! Disk only, 
requires 40K: $39.95. 



MMG BUSINESS PROGRAMS 

MAIL LIST 40K $39.95 

MMG DATA MANAGER 40K $49.35 

MMG FORM LETTER WRITER 40K $29.95 

MMG GENERAL LEDGER 40K $99.95 

MMG ACCOUNTS RECEIVABLE 40K $99.95 

MMG ACCOUNTS PAYABLE 40K $99.95 

MMG INVENTORY CONTROL 40K $99.95 

MMG PAYROLL 40K $99.95 




Available At Your Favorite Computer Store OR Send a Check or Money Order to: 
MMG MICRO SOFTWARE • P.O. Box 131 • Marlboro, New Jersey 07746 

OR CALL 

(201)431-3472 

Please add $3.00 for postage and handling 

For MasterCard, Visa or COD Deliveries atari is a registered trademark of ATARI, inc. 



N.J. Residents add 6% for sales tax 



Program 7: 

Machine Language Circle Drawing Subroutine 



10 REM 28000- IS SUBROUTINE 


20 SDSUB 28000 




30 END 






28000 


FOR ] 


=0 TO 758-READ A:POI 




72+1, 


A:NEXT I 




28010 


RETURN 




28672 


DATA 


104, 104, : 


141,5,6, 104 


28678 


DATA 


141,4,6, 


104, 141,7 


28684 


DATA 


6, 104, 141 ,6,6, 104 


28690 


DATA 


141,9,6, 


141 , 12,6 


28696 


DATA 


104, 141,8,6,141,11 


28702 


DATA 


6, 104, 104, 141 , 10,6 


28708 


DATA 


201 , 3, 144, 1 , 96, 169 


28714 


DATA 


0,141,13, 


, 6, 141 , 14 


28720 


DATA 


6, 141,15, 


, 6, 141 , 16 


28726 


DATA 


6,24, 173, 


,4,6, 109 


28732 


DATA 


11,6, 141, 


,25,6, 173 


28738 


DATA 


5,6, 109, ^ 


12,6, 141 


28744 


DATA 


26,6,24, : 


173,4,6 


28750 


DATA 


109, 13, 6, 


. 141,29,6 


28756 


DATA 


173,5,6, : 


L09, 14,6 


28762 


DATA 


141 , 30, 6, 


. 56, 173, 4 


28768 


DATA 


6, 237, 1 1 , 


.6, 141,27 


28774 


DATA 


6, 173, 5, 6, 237, 12 


28780 


DATA 


6, 141 ,28, 


, 6, 56, 173 


28786 


DATA 


4, 6, 237, . 


13, 6, 141 


28792 


DATA 


31 ,6, 173, 


,5,6, 141 


2879B 


DATA 


14,6, 141 


, 32, 6, 24 


28804 


DATA 


173,6,6, 


109, 11,6 


28810 


DATA 


141 , 33, 6, 


, 173,7,6 


28816 


DATA 


109, 12,6, 


,141,34,6 


2B822 


DATA 


24, 173,6 


,6,109, 13 


28828 


DATA 


6, 141 , 37, 


,6,173,7 


28834 


DATA 


6, 109, 14 


,6, 141 , 38 


28840 


DATA 


6,56, 173 


,6,6,237 


28846 


DATA 


11,6, 141 


, 35, 6, 173 


28852 


DATA 


7,6,237, 


12,6, 141 


28858 


DATA 


36,6,56, 


173,6,6 


28864 


DATA 


237, 13,6 


p 141 , 39,6 


28870 


DATA 


173, 7, 6, 237, 14, 6 


28876 


DATA 


141,40,6 


, 173,25,6 


28882 


DATA 


141,0,6, 


173,26,6 


28888 


DATA 


141, 1,6, 


173,37,6 


28894 


DATA 


141,2,6, 


173,38,6 


28900 


DATA 


141,3, 6, 32, 106, 114 


28906 


DATA 


173,27,6 


, 141,0,6 


28912 


DATA 


173,28,6 


,141, 1,6 


28918 


DATA 


32, 106, 1 


14, 173,25,6 


28924 


DATA 


141,0,6, 


173, 26,6 


28930 


DATA 


141, 1,6, 


173,39,6 


28936 


DATA 


141,2,6, 


173, 40, 6 


28942 


DATA 


141,3,6,: 


52, 106, 114 


28948 


DATA 


173, 27,6 


, 141,0,6 


28954 


DATA 


173,28,6 


p 1 4 1 , 1 , 6 


28960 


DATA 


32, 106, 1 


14, 173,29,6 


28966 


DATA 


141,0,6, 


173,30,6 


28972 


DATA 


141,1,6, 


173,33,6 


28978 


DATA 


141,2,6, 


173,34,6 


28984 


DATA 


141,3,6,: 


52, 106, 114 


28990 


DATA 


173,31 ,6 


, 141,0,6 


28996 


DATA 


173,32,6 


,141, 1,6 


29002 


DATA 


32, 106, 1 


14, 173,29,6 


29008 


DATA 


141,0,6, 


173, 30, 6 


29014 


DATA 


14 1,1,6, 


173,35,6 


29020 


DATA 


14 1,2,6, 


17 3,36, 6 


29026 


DATA 


141,3,6, 


32, 106, 114 


29032 


DATA 


173,31,6 


, 141,0,6 


2903B 


DATA 


173,32,6 


, 141, 1,6 


29044 


DATA 


32, 106, 1 


14, 173, 14,6 


29050 


DATA 


205, 12,6 


,240,3, 144 



29056 


DATA 


29062 


DATA 


29068 


DATA 


29074 


DATA 


29080 


DATA 


29086 


DATA 


29092 


DATA 


29098 


DATA 


29104 


DATA 


291 10 


DATA 


291 16 


DATA 


29122 


DATA 


29128 


DATA 


29134 


DATA 


29140 


DATA 


29 146 


DATA 


29152 


DATA 


29158 


DATA 


29164 


DATA 


29170 


DATA 


29176 


DATA 


29182 


DATA 


29188 


DATA 


29194 


DATA 


29200 


DATA 


29206 


DATA 


29212 


DATA 


29218 


DATA 


29224 


DATA 


29230 


DATA 


29236 


DATA 


29242 


DATA 


29248 


DATA 


29254 


DATA 


29260 


DATA 


29266 


DATA 


29272 


DATA 


29278 


DATA 


29284 


DATA 


29290 


DATA 


29296 


DATA 


29302 


DATA 


29308 


DATA 


29314 


DATA 


29320 


DATA 


29326 


DATA 


29332 


DATA 


29338 


DATA 


29344 


DATA 


29350 


DATA 


29356 


DATA 


29362 


DATA 


29368 


DATA 


29374 


DATA 


29380 


DATA 


29386 


DATA 


29392 


DATA 


29398 


DATA 


29404 


DATA 


29410 


DATA 


29416 


DATA 


29422 


DATA 


29428 


DATA 



10, 96, 173, 13,6, 205 
1 1 , 6, 144, 1 , 96, 173 
1 1 , 6, 133, 4, 173, 12 
6, 133,5, 173, 13, 6 
133,205, 173, 14, 6, 133 
206,6, 4, 38, 5, 6 
205,38,206,56, 165,205 
109, 15,6, 141, 17,6 
165, 206, 109, 16, 6, 141 
IB, 6, 24, 173, 17,6 
229, 4,141, 19, 6, 173 
18,6,229,5, 141 ,20 
6, 173, 18,6, 16, 27 
73, 255, 141 , 22, 6, 173 
17, 6, 73, 255, 24, 105 
1, 14 1 ,21,6, 173,22 
6, 105, 0, 141 , 22, 6 
24, 144,9, 141,22,6 
173, 17, 6, 14 1 , 21 , 6 
173,20,6, 16,27, 73 
255, 141 , 24, 6, 173, 19 
6,73,255, 24, 105, 1 
141,23,6, 173,24,6 
105,0, 141 ,24, 6, 24 
144,9, 141,24,6, 173 
19, 6, 14 1 , 23, 6, 173 
17,6, 141, 15,6, 173 
18,6, 141 , 16, 6, 24 
173, 13,6, 105, 1, 141 
13,6, 173, 14, 6, 105 
0, 141, 14,6, 173,22 
6,205,24,6, 144,39 
208,8, 173,21 , 6,205 
23,6, 144,29, 173, 19 
6, 141, 15,6, 173,20 
6, 141, 16,6,56, 173 
11,6, 233, 1,141,11 
6, 173, 12, 6, 233, 
141, 12,6,76,55, 112 
173, 2, 6, 133, 205, 169 
0, 133, 206, 6, 205, 38 
206,6, 205,38, 206, 6 
205, 38, 206, 165, 205, 133 
4, 165, 206, 133, 5,6 
205,38,206,6,205,38 
206,24, 165,205, 101,4 
133, 205, 165, 206, 101,5 
133,206, 173,0, 6, 133 
4, 173, 1 , 6, 133, 5 
70, 5, 102, 4,70, 5 
102,4,70,5, 102,4 
24, 165, 205, 101 , 4, 133 
205, 165, 206, 10 1,5, 133 
206,24, 165,205, 101,88 
133, 205, 165, 206, 101 , 89 
133, 206, 173,0, 6, 41 
7, 170, 160, 0, 173, 10 
6,208, 10, 189,41 ,6 
73,255,49,205, 145,205 
96, 201 , 1 , 208,8, 189 
41,6, 17,205, 145,205 
96, 189, 41,6,81, 205 
145,205, 96,0, 0, 



COMPUTE! 

The Resource 



168 COMPUTE! Jutv1983 



COMPUTERS 

Second Book Of Atari 



After only three years on the market 

the Atari 400/800 microcomputers 
have become among the most 
popular personal computers ever 
made. So it was no surprise when 
COMPUTErs First Book of Atari a 
collection of the best Atari articles 
published during 1980-81 in 
COMPUTE! Magazine, also became" 
a "bestseller" with Atari enthusiasts. 
The first printing sold out in just a 
few months. 

That's why we've followed up 
with COMPUTErs Second Book of 
Atari. Available immediately, the 
Second Book of Atari continues 
COMPUTEi's tradition for personal 
computer users. 

But the Second Book of Atari 
differs from the First Book in one 
important respect - all the articles 
are totally new and previously 
unpublished. The Second Book of 
Aar/ includes such interesting 
articles as "Page Flipping/' "Fun 
With Scrolling/' "Perfect Pitch/' 
"Player-IVIissile Drawing Editor/' 
and 'TextPlot Makes a Game/' 
Whole chapters are devoted to 
subjects such as "Advanced 
Graphics and Game Utilities/' 
"Programming Techniques;" and 
"Beyond BASIC/' With 250 pages - 
more than 25 percent thicker than 
the First Book at the same price - 
the Second Book of Atari is crammed 
with information and ready-to-type 
program listings. And the book is 
spiral-bound to lie flat and is fully 
indexed for quick reference. 

Best of all COMPUTErs Second 
Book of Atari, like COMPUTE! 
Magazine itself, is written and edited 
to appeal to all computer enthusiasts 
at only SI 2.95. 



IV InrroJucrinn 

1 Chapter One. Utilitjes f^olurrLock 

2 Atari BASIC Joystick Ruurine" 

5 Joystick Tester .... KirkOresg 

7 f^^-v'^'-arJInpiit Or Contn'>lled Escape RoK'rt R..chon 

9 POKE TAB In BASIC ^ '^''^'" ^^'" <-'le^e 

II J!"' '^^ ^'^"""^ Screen Dump' .' .' ''T"','v?- ^'''^ 

15 Memory Test * ' " * ^^^^^'id Nevvcnrn 

,^n'?f^^'^^f"nsMnn,pML,tinn Trick. n i t: r^ 

26 Usin, The Atnri Forced Read Mode ^'"i ^/,9'^'-'"' 

33 A Simple Screen Editor For Ariri I>,f. Fil'. ,' '" " ■'""^"-' 

36 Plotting Made Easy . . . " ' ' ' " '-="^^-r<-'n':c R. Stark 
41 Graphics Generator -'"'^" Scarborough 

44 Analyze YourProgran.: An Atari RASICUtiii-tv ' ''''''^''^.^'^^ 
SI h..de Atan M.crosoft BASIC: A First Look . . ^ : ; : ^,.. ^^^^^ 

SiSSfi:/'''""- ^•'^^"«*' ^-P*^'" And Games 

55 Player-Missile Drawini- Editor .. ^^^ 

67 Point Set Graphics ... ^ "■ F"ersrer 

76 Page Flipping . Uuiglas Winsand 

78 An Introduction To Display List Interrupts R><;1< Williams 

85 t.xtendmg Atari High Re.solurion Graphic ^'^'" ^=!^=^''" 

85 Part 1: The Polygon Fill Subroutine Ph.I Dunn 

92 Part 2: Textured Graphics 

114 Part 3: Multi-colored Graphics In Mode 8 

1 60 Textp|(,t Makes A Game 

169 Fun With Scrolling . . ^"^'^ P'otkin 

lal A ^ '^!^^*'^'- Applications. 

185 A Simple Text Editor 

194 The Atari Keyboard Speaks Our Osvaldo Ramirez 

198 Atar. Screen L Strip S;tR order hT''^^' 't? 

209 Fast Banner ■'•-.... Helmut Schmidt 

213 Perfect Pitch . . ' * ' Sol Guber 

21 9 Chapter Five. Beyond BASIC ^'"^^"^'' 

221 Put Your USR Code Into A RA'^inn a 

2« r;^s::s^^:::s:- ^^^-"^ • ■ • ■ ^ ^-^-^ aC" 

2AR T . r- ' ^^^^^^ Kastenht)l2 

^*« Listmo Conventions 
249 Index 



beginners and experts alike. Priced 



Available at computer dealers and bookstores nationwide. To order directly call TOLL FREE 800-334-0868. 
In North Carolina call 91 9-275-9809. Or send check or money order to COMPUTEI Books, P.O. Box 
5406, Greensboro. NC 27403. 



A(tti S2 00 shippng rind handiing, OutMdc the U.S. ^dd S5.00 for air mM S2.00 for surface mail AH orders prepaid, U.S. funds only 



PET Uncompactor 



David L Evans 



The PET Compactor pro^raui (lull/ 1982) iiHisn populnr, 
very fast way to squeeze a BASIC pro^^ram iiito the 
smallest amount of memory possible. It created 
"metalines/' some far longer than SO characters, itsin^^ 
a new line number only xvhen the program's lo^ic de- 
manded it. Here's the companion utility. Also written 
entirely in machine lan^tnige (and requiring Upgrade 
or 4.0 BASIC, with disk), the Uucompactor stretches a 
compact BASIC program out iiito main/ small lines. 
This makes modifications and program aiialysis easier. 
Often, a compacted program cannot be clianged at all 
without behig uncompacted first. The program is pro- 
vided as a hex dump, with instructions on hoio to enter 
it into your PET. 



This machine language routine uncompacts fast. 
In fact, it represents a 3300% increase in speed 
over an uncompactor written in BASIC. 

Unlike my "Compactor" program published 
last year, it requires tw changes to run on either 
Upgrade or 4.0 PET BASIC. It achieves this by 
making heavy use of the "kernal" (the jump table 
located at the top of memory in all PET/CBMs). 
The kernal is used to PRINT, OPEN and CLOSE 
files, GET and INPUT bytes, and to restore the 
original environment (default parameters) of 
the PET, 

The routines to GET, INPUT, and RESTORE 
are all straightforward; all the user does is execute 
a subroutine call to the desired routine. 

For example, to use the routine RESTORE, 
the user types: 

JSR$FFCC 

Both of the routines to GET and INPUT return 
the value that was input into the accumulator. 

The PRINT routine QSR $FFD2) requires that 
the accumulator be loaded with the byte that the 
user wishes to be printed. The routine to set the 
OUTPUT or INPUT device also requires the user 
to set up some parameters before calling them. 
The user must first open the file to be accessed, 
then load the X-register with the file number, and 

170 COMPlfrt! July 1983 



finally execute a subroutine call to the routine 
desireci. 

Example: To print a colon to file number two, 
do the following (this assumes that file number 
two has been opened): 

LDX #$02 

jSR $FFC9 ; set current output device 

LDA #$3A 

JSR $FFD2 ; print a colon 

JSR $FFCC ; restore default devices 

All the routines discussed above are widely 
used. The routines to OPEN and CLOSE files, 
however, are not as well-known. Each routine 
requires that you have, somewhere in memory, a 
string of characters containing the OPEN/CLOSE 
command. BASIC is informed where the com- 
mand string is, by setting locations $77 and $78 to 
point to it. 

Example: To open file number 15,8,15, type 
the following: 

LDA #<COMAND 

STA $77 

LDA #>COMAND 

STA $78 

JSR $FFCO ;open the file 

COMAND .BYTE '15,8,15' 

Note: My assembler uses "<" to load the LSB of a 
label and ">" to load the MSB of a label. To CLOSE 
a file, the same procedure is used. 

The program is provided in the form of a hex 
dump of memory. To enter this into your com- 
puter, invoke the built-in monitor by typing SYS 
4. Next, display the first block of memory by 
typing m 0400 047f . Type over the numbers already 
in memory with the new values in the program, 
hitting RETURN after each line of eight bytes. 
Repeat this procedure for the following blocks of 
memory until all changes have been made. Then 
save the program to disk by typing: 

S "UNCOMPACTOR", 08, 0400, 08E7 

Since the program occupies the normal BASIC 
program area, and since the first 13 bytes consti- 
tute a short ''self-calling" routine, the program 



can be loaded and run as if it were in BASIC. 

It is not necessary to initialize the drives used; 
the program will automatically do it for you. If 
the output file name exists on the destination 
diskette, the program will overlay it. Follow the 
directions printed on the screen and your program 
will then be uncompacted. When the program is 
finished, LOAD the new version of your program 
and type the CLR command. This is necessary to 
relink the BASIC program. Be sure to reSAVE 
your CLRed program or else you will lose it. 

For those who do not want to type this in. 



send $3 and a tape or disk along with a SASE mailer 
to the address below. If you send a disk, I have 
DOS 2.0 so all disks will be written in DOS 2.0. 

I have source code available in CBM assembler 
format. If you would hke a copy of the source 
code, be sure to make a note of it when you send 
for a copy of my program. 



David L. Evans 
2202 Ellis Avenue 
Caldweli ID 83605 



PET Moohine Language Uncompaotor. 



0400 
0408 
0410 

0418 
0420 
0428 
0430 
0438 
0440 
0448 
0450 
0458 
0460 
0468 
0470 
0478 
0480 
0488 
0490 
0498 
04A0 
04A8 
04B0 
04B8 
04C0 
04C8 
04D0 
04D8 
04E0 
04E8 
04F0 
04F8 
0500 
0508 
0510 
0518 
0520 
0528 
0530 
0538 
0540 
0548 
0550 
0558 
0560 
0568 
0570 
0578 
0580 
0588 
0590 
0598 
05A0 



00 0E 
33 37 

01 A9 

91 01 

02 E0 

07 20 

08 F0 
F5 20 
9D Fl 
A0 00 
Fl 08 

08 C9 
C4 AD 
A2 7E 
00 BD 

09 E8 
0D F0 
lA D0 
F0 07 
F4 AD 
C9 31 
3A D0 
A5 78 

77 A9 
A2 0F 
CD ID 
D2 FF 
A9 0D 
D2 FF 
A9 0D 
20 10 
08 85 

07 A9 

78 20 
AB A0 
06 A2 

08 20 
D2 FF 
D0 11 

09 FF 
20 CC 
D0 46 
AD E9 
08 D0 
08 AE 
06 20 
FF 20 
02 FF 
20 CC 
99 6B 
20 F9 
EE 08 
12 20 



04 FF 
00 00 
08 85 

C8 D0 
0B D0 
E8 06 

06 9D 
OF FF 
08 E8 
B9 94 
E8 C8 
30 F0 
F9 08 
A0 08 
D9 08 
D0 F5 
08 9D 
Fl A0 
90 15 
ID 09 
00 C4 
BD A5 
80 E3 

08 85 
20 C9 

09 F0 
AD F8 
20 02 
AD ID 
20 02 

07 A9 
78 20 
15 85 
C0 FF 

08 20 
06 20 
D2 FF 
20 CC 
20 FF 
AD E5 
FF A9 
AD E8 

08 8D 
03 4C 
EB 08 
C9 FF 
D2 FF 
AD ED 
FF A0 

09 F0 
06 18 
90 03 
F9 06 



FF 9£ 
00 A9 

02 A0 
FB E6 
F3 A2 
A2 00 
Fl 08 
C9 00 
E0 19 

08 F0 
00 F4 
04 C9 
C9 3A 
20 E8 
F0 06 
20 OF 
15 09 

00 B9 

09 E8 
C9 30 
AD IE 

77 8D 
08 A9 

78 20 
FF AD 

10 A9 

08 20 
FF A9 

09 20 
FF 20 
Fl 85 
C0 FF 
77 A9 
20 10 
E8 06 
C9 FF 
AD E5 
FF AD 
06 A2 
08 20 

01 80 
08 80 
EB 08 
A5 06 
20 53 
A9 01 
AD EC 
08 20 
01 20 

03 C8 
60 E4 
BE EE 
80 E9 



31 30 
E2 85 
00 98 
02 A6 
EC A0 
BD 01 
E8 D0 
F0 08 
00 Fl 
07 90 
AO F8 
31 00 
00 BO 

06 A2 
90 15 
FF C9 
E8 E0 
9A 08 
C8 00 
F0 04 
09 C9 
E2 08 
C9 85 
C0 FF 
F8 08 
49 20 
02 FF 
49 20 
02 FP 
CC FF 
77 A9 
20 10 
09 85 

07 A2 
20 F9 
AO E4 

08 20 
E4 08 

06 20 
02 FF 
F0 08 
EA 08 
AO EE 
AO EA 

07 A2 
20 D2 

08 20 
02 FF 
FF 06 
00 F5 
08 8D 
08 F0 
08 8D 



05A8 
05B0 
05B8 
05C0 
05C8 
05D0 
05D8 
05E0 
05E8 
05F0 
05F8 
0600 
0608 
0610 
0618 
0620 
0628 
0630 
0638 
0640 
0648 
0650 
0658 
0660 
0668 
0670 
0678 
0680 
0688 
0690 
0698 
06A0 
06A8 
06B0 
06B8 
06C0 
06C8 
0600 
0608 
06E0 
06E8 
06F0 
06F8 
0700 
0708 
0710 
0718 
0720 
0728 
0730 
0738 
0740 
0748 



ED 08 
BD EC 
A9 00 

01 B9 
C0 01 
EA 08 
EA 08 
EB 08 
8B 06 
00 20 
FF 20 

02 FF 
20 CC 
20 F0 
A8 A9 
A9 9B 
80 D9 
D9 6B 
6B 09 
09 90 
F0 20 

19 A2 
09 20 

03 C8 
4A 05 
lA A2 
09 20 
B9 6B 
00 D0 
B9 6B 
FF B9 
ci 05 
C9 FF 

02 FF 
08 20 
A9 08 
C4 85 
C3 FF 
85 78 

85 7? 

86 01 
F0 06 
60 20 
05 20 

20 CC 
A2 0F 
E4 FF 

03 E8 
39 09 
00 20 
00 BO 
00 F0 
AD E2 



AD E4 

08 AO 

80 P0 
6B 09 
D0 03 
D0 03 
CD E8 
CD E9 
A2 06 
D2 FF 
D2 FF 
AO EB 
FP C8 
F8 C9 

81 D9 
D9 6B 
6B 09 

09 90 
B0 2E 
27 A9 
A9 8D 
06 20 
D2 FF 
00 ED 
B9 6B 
06 20 
D2 FF 
09 C9 
E6 A2 
09 20 
6B 09 
40 4A 
A9 00 
20 CC 
E8 06 
85 78 
77 A9 
A9 C6 
20 C3 
AO E3 
84 02 
20 D2 
FF 06 
06 FP 
FP 68 
20 C6 
9D 39 
D0 F3 
C9 32 
D2 FF 
39 09 
03 E8 
08 85 



08 80 
F0 08 
08 F0 
C9 3A 
4C 8B 
EE EB 
08 90 
08 90 
20 09 
A9 01 
AD EA 

08 20 
B9 6B 
3A F0 
6B 09 

09 90 
F0 23 
IC A9 
A9 90 
80 D9 
D9 6B 
C9 FF 
B9 6B 
20 CC 
09 C9 
09 FF 
20 CO 
22 F0 
06 20 
D2 FP 
F0 04 
05 A2 
20 D2 
FF A2 
A9 02 
20 03 
08 85 
85 77 
FF AD 

08 B5 
A0 00 
FF 08 
8D E4 
20 E4 
80 E5 
FF A2 

09 C9 
20 CC 
B0 01 
20 02 
20 02 
D0 F3 
77 AD 



E8 08 
F0 07 
8B A0 
00 51 
06 EE 
08 AD 
0B AD 

03 40 
FF A9 
20 02 

08 20 
D2 FP 

09 09 
F4 00 
B0 4A 
43 A9 
A9 99 
3A D9 
D9 6B 
6B 09 
09 F0 
B9 6B 
09 F0 
FF 40 
22 D0 
B9 6B 
FF OS 

04 C9 
09 FF 
20 CC 
C8 40 
06 20 
FF 20 
A0 A0 
85 77 
FF A9 
78 20 
A9 08 
E2 08 
78 60 
Bl 01 
00 F6 
08 A2 
FF 48 
08 60 
00 20 
00 F0 
FF AD 
60 A9 
FF A2 
FF 09 
68 68 
E3 08 



0750 

0758 
0760 
0768 
0770 

0778 
0780 
0788 
0790 
0798 
07A0 
07A8 
07B0 
07B8 
07C0 
0708 
07D0 
07D8 
07E0 
07E8 
07P0 
07F8 
0800 
0808 
0810 
0818 
0820 
0828 
0830 
0838 
0840 
0848 
0850 
0858 
0860 
0868 
0870 
0878 
0880 
0888 
0890 
0898 
08A0 
08A8 
08B0 
08B8 
0800 
0808 
0800 
0808 
08E0 



85 78 
08 A9 
FF 20 
08 A2 
B4 07 
08 F9 
08 E8 
E6 08 
8A 00 
A9 20 
08 09 
00 08 
30 40 
64 00 
20 20 
4E 45 
41 47 

40 50 
00 0D 
56 49 
53 00 
52 20 

41 4D 
20 54 
56 45 

52 0D 

44 49 
0D 0D 

45 3A 
49 40 
0D 44 

53 41 

48 20 

54 50 
45 20 
00 00 
20 46 
40 45 
4F 55 

49 40 
20 3F 
22 00 
93 12 
0D 0D 
49 4E 
49 4E 
0D 00 
00 31 
00 35 
00 36 
40 00 



60 80 
20 20 
02 FF 

00 AD 
80 E6 
B4 07 
88 40 
79 B4 
09 20 
00 07 
30 20 
90 BO 
02 FF 
0A 00 
20 40 
20 40 

45 20 

41 43 

42 59 

44 20 
00 00 

46 49 

45 20 

48 45 
20 4E 
00 50 
4E 47 
45 58 
20 20 
45 4E 
4F 20 
4D 45 

54 48 

55 54 
4E 41 
00 49 

49 4C 
20 3F 
54 50 
45 20 
20 00 
20 50 

44 4F 
00 93 

47 20 

45 2E 
36 00 
35 20 
20 38 
20 38 
00 00 



E6 08 
D2 FF 
A0 00 
E6 08 

08 AD 
90 08 
6B 07 
07 80 
EF 08 
A2 80 
D2 FF 
AD E6 
10 27 
93 20 
41 43 
41 4E 
55 4E 

54 4F 
3A 20 
45 56 
45 4E 
4C 45 
57 49 
20 44 

55 4D 
52 45 
20 49 
41 4D 
20 30 
41 4D 

54 48 
20 57 
45 20 
20 46 
40 45 
4E 50 
45 20 
20 00 

55 54 
4E 41 
20 50 
20 57 
4E 45 
57 4F 
4F 4E 
2E 2E 
35 00 
38 20 
20 35 
20 36 
00 00 



BE E7 
20 02 
80 EF 
38 F9 
E7 08 
80 E7 
88 AD 
K6 08 

30 09 
8E EF 
08 08 
08 09 
E8 03 
20 20 

48 49 
47 55 

43 4F 
52 00 

44 41 

41 4E 
54 45 
20 4E 
54 48 
52 49 

42 45 

43 45 

54 2E 
50 40 
3A 46 

45 00 
45 20 

49 54 
4F 55 
49 40 
2E 00 

55 54 
4E 41 
0D 0D 
20 46 
4D 45 
20 52 
22 00 
00 00 
52 4B 
20 40 
2E 0D 

31 35 
31 35 
20 22 
20 22 
00 00 



July19S3 COMPUTE! 171 



statistical Test Of Commodore 
And Radio Sliacic I^ND 



Brian Flynn 



This article provides a statistical test of the randomness 
of your BASIC'S random number generator. Versio7is 
of the program for TRS-80 Color Computers with Ex- 
tended Color BASIC and for PET/CBM, VIC, and 64 
computers are provided. To use the TRS-80 version 
loith non-Extended BASIC, you must substitute the 
value of square root of N for SQR(N) in lines 6110 and 
6120, since non-Extended Color BASIC has no square 
root function, (SQRaOOO) = 31.6228.) Alternatively, 
the Color BASIC manual lists a square root routine on 
page 116. The only changes necessary to use the PET I 
CBM version on the VlC-20 or Commodore 64 are to 
adapt the PRINT statements to the smaller screen sizes. 

As presented, the program takes several hours to 
sort each subsequence. Thus, several days would be 
required for a complete program run. Each of the fol- 
lowing options significantly reduces the required execu- 
tion time: 

1 . Replace the sort routine (Module 5) with a faster 
sorting routine. (See "'All Sorts of BASIC Sorts,'' 
COMPUTI!, December 1982, #31.) 

2. Compile the program before running it. (Of 
course, to do this you must have a BASIC 
compiler.) 

3. Reduce the number of fractions specified in 
the DATA statement of line 2020. 



The phrase "Kolmogorov-Smirnov" brings to 
mind the vision of a big white dog, a beautiful 
princess, and a bearded, virile, vodka-drinking 
czar. In reaHty, hov^ever, "Kolmogorov-Smirnov" 
is not this imaginary troika from pre-Bolshevik 
days, but rather a statistical test, named after two 
Russian mathematicians, for trying to determine 
how ^well values from a sample match values from 
a specified population. 

The test is often used to examine the degree 
of randomness of sequences of fractions generated 
by the computer from a uniform distribution. 
This article explains the Kolmogorov-Smirnov 

172 COMPUTE* July 1983 



test in more detail, and then uses the test to 
evaluate the quality of the random number gener- 
ator in Microsoft's BASIC compiler for the TRS-80 
and Commodore computers. 

Kolmogorov-Smirnov Test 

The command "RND(Or in TRS-80 BASIC gener- 
ates a fraction from a uniform distribution between 
and 1, exclusive. In this distribution, graphed in 
Figure 1, the probability of drawing a fraction 
between 0.0 and 0.1, in a one-shot selection, is 
equal to the probability of drawing a fraction be- 
tween 0.1 and 0.2, or 0.2 and 0.3, and so on. In 
each case, the probability is 1/10 since the distri- 
bution is divided into ten equal parts. 

Now, the Kolmogorov-Smirnov test uses 
cumulative rather than absolute relative frequency 
distributions. Referring again to the uniform dis- 
tribution of Figure 1, note that the probability of 
drawing a fraction less than or equal to 0.2 is 1/ 
10 + 1/10, or 0.2. Similarly, the probability of 
drawing a fraction less than or equal to 0.3 is 1/ 
10 + 1/10 + 1/10, or 0.3. In general, the probability 
of selecting a fraction less than or equal to some 
number X is simply X, where X ranges from to 
1. The distribution based upon these cumulative 
probabilities is graphed in Figure 2. 

The essence of the Kolmogorov-Smirnov test 
is comparing theoretical and empirical cumulative 
frequency distributions. An example of the latter 
type of distribution is based upon the following 
sequence of ten fractions, rounded to three deci- 
mal places, generated by executing "RND(O)" on 
a Honeywell computer: 0.789, 0.528, 0.871, 0.097, 
0.276, 0.434, 0.711, 0.535, 0.776, and 0.918. If the 
sample sequence is random, then the empirical 
cumulative frequency distribution, based upon 
observed values sorted in ascending order, should 
approximate the theoretical one. These distribu- 
tions are compared in Table 1 and Figure 3. 

These two displays reveal that the observed 
fractions are a little too high, and that the empirical 



CALL NOW 

PRODUCT/SHIPPING TOLL FREE INFORMATION 

800-821-2169 

ILIFORNIA RESIDENTS 213/996-5722 



sy^-n*'-* Av-v^tv^*^**:^,,,-; ^ 



SUPER SPECTALS 

NEC 8023A 459.95 

HAYES SMARTMODEM 209.95 

EPSON FX— 80 549.95 

WABASH DISKETTES 17.95 

OK I DATA 82 A 429.95 

SANYO GREEN MONITOR 89.95 

AMDEK COLOR 1 299.95 

RANA DISK DRIVE 329.95 

ATARI & COMMODORE SOFTWARE |\ 
UP TO 40% OFF.(mail order onty) \ 
OUR PRICES WiLL NOT B 




■ ■■■■■mi 

ISOBAR... 

the most complete 

computer protection! 

More features to prevent errors, faise printout, disc 
skips! Oniy ISOBAR has 3- way spike protection, noise 
suppression for RFI PLUS isolated filter banks! In- 
dividual filter banks isolate each load from other loads 
minimizing data errors of any kind. MOV surge sup- 
pressors arrest both common mode and differential 
mode surges. L/C filter network rejects radio fre- 
quency noise at any amplitude. Torroidal coils for 
greatest efficiency! All-metal housing. 



^ 

fc 



Indus-Tool, 325 W. Huron, Dept. 



T Mode! IBAR 4-6 
I (4 outlets, 



Chicago, IL 60610 -Call 1-312-642-6871 ^ H cord) 
j Enclosed is $ _ or charge on ! °"'y *^^-^^ 



I D MasterCard or n Visa Expires 
\ Card no 



Name _ 
I Signature _ 
I Company. 
I Address 



'i Model IBAR 3^6 

-| (3 outlets, 
I 6 ft, cord) 
I Only $54.95 



I Model IBAR 8-15 
[ {8 outlets, 
1 15 ft- cord) 



l^Z ^ ^'2^^^^^^^ Only $97:95 



THATS 



r 



"4- 



IS ^ RANGE OF HlbH QUALItY 

soirwaRt pRooiicED^ i 

INTERNilTIONAL EXPERTS FdR 

sniALL lusiMlsslAPPi^^ 

TIIINS. jTS IIALLpRKS AR|: 
QUALITY, FLEXIBIUTY, £R- I 

Gti^OIVllC OESIGNi RaiABiLiry 

AMD PRlCE/ViALUe FACtOR. I 






July 1983 COMPUTE! 173 



distribution is therefore a little too low. But is it so 
low that we reject the null hypothesis of a random 
sequence? The following two test statistics are 
used to answer this question (Professor Knuth, p. 

^^y K^ =^/;^ max{ j/n - F(Xj)} and 

K-=V^ m.ix{F(Xj) - (j-l)/n3 , for j = 1, 2, .... n. 

The symbol K"^ is the maximum vertical distance 
between the two curves w^hen the empirical dis- 
tribution is higher than the theoretical distribu- 
tion, and K" is the maximum distance when the 
empirical distribution is lower. Further, n is the 
sample size, ten in this case. And F(Xj) is the 
theoretical cumulative frequency for the j*^^ obser- 
vation. For example, F(X]) = 0.097 since 9.7% of 
all values from a uniform distributitin are < 0.097. 
Similarly, F(X^) = 0,276, and so on. 

For our data, K"'= 0.259 and K' = 0.740. Re- 
ferencing Kolmogorov-Smirnov critical values 
(Professor Knuth, p. 44), both of these statistics 
fall in the acceptance region for the null hypothesis 
at the 10y*> level of significance, using a two-tail 
test (5% of the distribution's area is under each 
tail). Hence, we can't label the observed sequence 
of fractions " no n random/' 

A Practical Application 

The quality of the random number generator in 
Microsoft's BASIC is examined here, using the 
computer program listed at the end of the article. 
Specifically, the degree of randomness of the se- 
quence of the first 50,000 fractions generated by 
RND(O) is investigated. This is done by performing 
the Kolmogorov-Smirnov test on each successive 
interval of 1,000 fractions within the total se- 
quence. Hence, 50 values of the K"^ statistic and 
50 values of the K' statistic arc tallied. 

Test results, summarized in Table 2, reveal 
that the K"*" and K" values always fall within the 
middle 98 percentile portion of the distribution. 
And they fall within the middle 90 percentile part 
92 out of 100 times. These results suggest that the 
random number generator is a good one. 

As an additional check, however, the 
Kolmogorov-Smirnov testis applied once again, 
this time to the 50 K"^ values and to the 50 K" values 
from before. As Professor Knuth indicates (p, 45), 
this enables us "... to detect both local and global 
nonrandom behavior." Test results, using 

F(X) = l-e''^^ 
as the cumulative frequency distribution for the K 
values, are: 

K+ K- 
Based on SOKE'S 0.217 0.650 
Based on 50 K's 0,875 0.111 
In all four cases, the null hypothesis of a random 
sequence is not rejected at the 2% level of signifi- 
cance, in a two-tail test. At the 10% level of sig- 
nificance H^, is rejected one out of four times, with 
0.111 the guilty value. 

17-d COMPUTE! July 1983 



The Kolmogorov-Smirnov test is useful in 
examining the randomness of sequences of frac- 
tions generated by RND(O). But remember, no 
random number generator is perfect. And just 
because a sequence passes one statistical test does 
not mean that it will pass a second. 

References 

Knuth, Donald E. The Art of Computer Pro^rmuming, 

Vol. 2. Reading: Addison- Wesley Publishing 

Company, Inc., 1971. 
Lapin, Lawrence L. Statistics for Motlern Busities^s 

Decisions. New York: Harcourt Brace Jovanovich, 

Inc., 1973, pp. 422-426. 

Table 1: Sample And Theoretical 
Cumulative Relative Frequencies 





Sample 


Theoretical 




Cumulative 


Cumulative 


Fraction 


Frequency 


Frequency 




0.097 


0.1 


0.097 


0.276 


0.2 


0.276 


0.434 


0.3 


0.434 


0.528 


0.4 


0.528 


0.535 


0-5 


0.535 


0.711 


0.6 


0.711 


0.776 


0.7 


0.776 


0.789 


0.8 


0.789 


0.871 


0.9 


0.871 


0.918 


1.0 


0.918 



Note that the theoretical cumulative frequency 
always ecquals the value of the observed fraction. This 
is because the probability of drawing a fraction less 
than or equal to, say, 0.276, is 0,276, where the popu- 
lation is the uniform distribution between and 1 . 

Table 2: 

Kolmogorov-Smirnov Test Results 

H,^: The sequence is random 
H^^: The sequence is nonrandom 

Number Of Times In 50 
Level Of Critical Values Trials That H^ Is Rejected 
Significance Lower Upper K^ K" 





2% 


0.066 


1.511 








10% 


0.156 


1.219 


4 


4 


50% 


0.375 


0.828 


26 


26 



Note: The level of significance is the probability of 
rejecting H^, when H,, is in fact true. 

Figure 1. 

Uniform Distribution Between And 1 

Relative 

Frequency 

1,0 



Value 



0.0 



0.2 



0.4 



0.6 



0.8 



1.0 



unhtBTsars 

Hot as a 






firecracker 

ttetus for Julyt 



TITLE 



RHAIL COST 



Martian Raider (New) (T) 19.95 14.95 

Shark Trap {New) (T) 19.95 14.95 

Chopiitter (SAVE!?!) (C) 44,95 29.95 

Rat Hotel (New) (C) 39.95 29.95 

Trashman (SAVEM!) (C) 44.95 29.95 

Home/Oftice (T) 29,9^j 21.95 

Sword of Fargoal (T) 29.95 21.95 

Rescue at Rigel (T) 29 95 21.95 

HES Writer (C) 39 95 29.95 

VIC Forth (C) 5'i.95 44.95 

Exterminator (T) ?i.95 18.95 

KrazyKong(T} 12.95 9.95 

Quick Brown Fox (C) 65.00 48.95 

Deadly Ouck (C) 34.95 25,95 

Touch Typing Tutor (T) 19,95 14.95 

Annihilator (T) ,9.95 14.95 

Kongo Kong (T) 19.95 14.95 

Trek (T) 19.95 14.95 

Flash "N Math Addilion (T) 15.96 11.95 

Flash N Spell (T) 15.95 11.95 

Serpentine (SAVE'") iC) 44.95 29.95 

COMMODORE 64 

Home Acr.Oiintant (D) 74.95 54,95 

Temple g1 Apshai (D) 39.95 29.95 

Uppef Reaches of Apshai (0) 19.95 14.95 

Cijfsu of Ra (D) 19.95 14.95 

Jumpman (New..,GREAT!)(D) 39.95 29.95 

Coco (D) 49.95 36.95 

Gridrunner (C) 39.95 29.95 

HES Writer (C) 44.95 34.95 

Retro Ball (C) 39.95 29,95 

HES Mon 64 (C) 39.95 29.95 

Zork 1 (D) 39,95 29,95 

Zork 2 (D) 39.95 29.95 

Zork 3 (D) 39.95 29,95 

Deadline (D) 49.95 36.95 

Starcross (D) 39.95 29,95 

Suspended (New) (D) 49.95 36,95 

Weather War !l (T) 19.95 14.95 

Medicine Man (T) 21.95 16.95 

3D 64 Man (T) 19.95 14.95 

KrazyKong{T) 19.95 14.95 

Quick Brown Fox (C) 65.00 49.95 

Color Craft (T) 29.95 21.95 

Color Craft (D) 34.95 25.95 

Meteor Madness (New) (T) 24.95 18,95 

Meteor Madness (New) (D) 29.95 21,95 

Fast Eddie (D) 34.95 26 95 

Turmoil (D) 34.95 26.95 

Squish "Um (New) (0) 34.95 26,95 

Type Attack (D) 39.95 29.95 
Robbers of the Lost Tomb 

(D/T) 24.95 18,95 

Wail Street (D/T) 24.95 18.95 

[\^oney Manager (D/T) 24.95 18.95 

Data Manager (D/T) 24.95 18,95 

Afiventure Pack 1 (T) 19,95 14,95 

Adventure Pack 2 (T) 19.95 14.95 

Grave Robbers (T) 19.95 14.95 

Trek-64 (T) 15.95 12 95 

Annjhilator (T) 21.95 15 95 

Kongo Kong (T) 24.95 18,95 

Word Pro 3+ (GREAT!!') (0) 89.95 71,95 



FOR FAST 
DELIVERY, 

send certified 
checks, money 
orders, or use your 
Master Charge or 
Visa and call 
1-B00-343-8019. 
From inside New 
Hampshire call 
1-603-542-6175. 
Personal or com- 
pany checks require 
two to three weeks 
to clear. All prices 
are subject to 
change without 
notice. Please in- 
clude $2.00 per 
package tor postage 
and handling. 



CAU 
NOW 
1-800 
343-8019 



UNIVERSAL 
SOFTWARE 

The fles/ Sottwate tor Less 
P Bo. 955 
ClaremaiiL NH 03743 



OPEN MON THRU SAT 
8:DOAMto10:OOPME.DJ. 




We also carry Apple, Atari A Timex-Sinclair 
Software— ask for our list. 



VERSACALC" 

Everything you always wanted to do with Visicalc, 
(but thought you couldn't). 

[f you use Visicalc™ but you are bumping into its limitations, 
then you need Versacalc™! Now it is possible for people untrained 
in Visicalc to perform weekly updating without constant in- 
struction, Versacalc runs within Viscalc but uses no extra memory; 
in fact, it effectively increases memory by letting you call in 
modules from disk as needed. 

Now You Can: 

D SORT a Visicalc screen on any column, ascending or descend- 
ing; all related formulas and labels are sorted too! 

D Put the entire disk CATALOG on the screen at once! 

n Easily do Year-To-Date accumulations! 

D "Pound" formulas to expose formulas in place on the screen!^ 

D Append two Visicalc files!^ 

D Print the contents of a /SS file! 

D Print the contents of a /PF filel 

D AND our Easel Binder is so nice that you will put your other 
manual in it! 

A Tutorial section makes clear such features as @ LOOKUP, 
DIP, @ NA, and @' ERROR which are not well explained in the 
Visicalc manual. 

A Utilities section makes it easy to create your own menu- 
driven modules which condense hundreds of commands into 
four keystrokes. You can build in sophisticated error checking 
(e.g. Is the input value between certain limits?). 

Versacalc, software to help you do everything you always 
wanted to do with Visicalc is now available , 
for the following hardware: 

Apple [] $100 IBM PC^ *150 
PET &CBM*^ SI 25 * Specify DOS 
Plus shipping. MC and Visa accepted. 





lAnfhiD-Dieital 

Avenue. Pittsfleld. MA 01201 ^^ 



103 Bartlett Avenue, Pittsfield, MA 01201 

Telephone (413) 448-8278, Telex 467622 

The Company That Interfaces People and Computers 



Appit' II IS ,1 trademark of Apple Computer, Inc. 
ViTMcalt js .» trademark o| Vt-rsacak Enterprises, Inc. 
VisJcjIc is J trddfrnark, of Visicorp, Inc, 



See your dealer 
or contact us. 



Also available from Anthro-Digital: Visicalc Formattiiig Aids, The 
Executive Secretary, The Personal Secretary, and Executive Speller, 
Hebrew 11 and Hebrew U Plus, S-C Macro Assembler, QuickTrace, 
Amper-Magic, The Rental Manager, EA.R.M. accounting packages. 



July 1983 COMPIHEi 175 



Figure 2. 

Probability Of Drawing A Fraction Less Than 

Or Equal To X 
Probability 
F(X) 



0.8 



0.4- 



0.0 0.2 0.4 0.6 0.8 1.0 



Figure 3. 

Comparison Of Theoretical And Sample 
Cumulative Relative Frequency Distributions 





0.0 0.2 0.4 0.6 0.8 1.0 

Color Computer Version. 

40 REM SALIENT SYMBOLS AND ARRAYS 

50 REM MODULE 1 

60 REM FIRST LEVEL SUBROUTINES 

70 REM MODULE 2 - INITIALIZE 

80 GOSUB 2000 

90 REM MODULE 3 - PERFORM TEST 

100 GOSUB 3000 

110 REM SECOND LEVEL SUBROUTINES 

120 REM MODULE 4 - GENERATE A SEQUENCE OF FRA 

CTIONS 
130 REM MODULE 5 - SORT FRACTIONS IN ASCENDIN 

G ORDER 
140 REM MODULE 6 - TALLY TEST STATISTICS 
150 REM MODULE 7 - PRINT RESULTS 
160 END 

1000 REM MODULE 1 
1010 REM SALIENT SYMBOLS 
1020 REM KMINUS = PROFESSOR KNUTH'S K- STATIST 

IC 
1030 REM KPLUS = PROFESSOR KNUTH'S K+ STATISTI 

C 
1040 REM N = NUMBER OF FRACTIONS IN A SUBSEQUE 

NCE 
1050 REM T ^ TOTAL NUMBER OF FRACTIONS 
1060 REM ARRAYS 
1070 REM U = VECTOR OF VALUES FROM A UNIFORM D 

ISTRIBUTION 
2000 REM MODULE 2 
2010 REM TOTAL NUMBER OF FRACTIONS GENERATED & 

NUMBER IN EACH SUBSEQUENCE 
2020 DATA 50000,1000 
2030 READ T,N 
2040 DIM U(N) 
20S0 REM HEADING 
2060 CLS 

176 COMPUTEI July 1983 



2070 PRINT"THIS PROGRAM PERFORMS THE KOLMOGOROV 

-SMIRNOV (KS) TEST OF" 
2080 PRINT"RANDOMNESS ON A SEQUENCE OF FRACTION 

S FROM A UNIFORM" 
2090 PRINT"DISTRIBUTION BETWEEN AND 1." 
2100 PRINT 
2110 PRINT"THIS IS DONE BY APPLYING THE KS TEST 

TO SUBSEQUENCES" 
2120 PRINT*DF THE TOTAL SEQUENCE:" 
2130 PRINT 
2140 PRINT" TOTAL NUMBER OF FRACTIONS GENERATED 

2150 PRINT"NUMBER IN EACH SUBSEQUENCE = ";N 

2160 PRINT 

2170 PRINT"CHANGE THE ELEMENTS IN THE DATA STAT 

EMENT OF LINE 2020" 

2180 PRINT"FOR DIFFERENT VALUES," 

2190 PRINT 

2200 PRINT" HIT 'ENTER' TO PROCEED" : INPUT 2$ 

2 210 RETURN 

3000 REM MODULE 3 
3010 CLS 
3020 BK$ = " 

R 

3 030 PRINT TABC20) "KOLMOGOROV-SMIRNOV TEST" 
3040 FOR 1=1 TO T STEP N 

3050 REM PRINT SUBSEQUENCE 

3060 PRINT @64,BKS 

3070 PRINT @64, "FRACTIONS :";!;" TO ";I+N-1 

3080 REM GENERATE SEQUENCE OF FRACTIONS 

3090 PRINT @192,"** GENERATING FRACTIONS .., 
n 

3100 GOSUB 4000 

3110 REM SORT FRACTIONS 

3120 PRINT €192,"** SORTING FRACTIONS ... 

H 

3130 GOSUB 5000 

3140 REM TALLY KS STATISTICS 

3150 PRINT @192,"** TALLYING TEST STATISTICS .. 

n 

3160 GOSUB 6000 

3170 REM PRINT RESULTS 

3180 GOSUB 7000 

3190 NEXT I 

3200 RETURN 

4000 REM MODULE 4 

4010 FOR J = 1 TO N 

4 20 U(J) = RND(0) 
4030 NEXT J 

4040 RETURN 

5000 REM MODULE 5 

5010 REM SUBSTITUTE "QUICK SORT" HERE FOR FAST 

ER PROGRAM EXECUTION 

5020 FOR J=l TO N-I 

5030 FOR L=l TO N-J 

5040 IF U(L+1)<U(L) THEN HOLD=U ( L+ 1 ) : U {L+1 ) =U {L 

) :U{L)=HOLD 

5050 NEXT L,J 

5060 RETURN 

6000 REM MODULE 6 

6010 REM PROFESSOR KNUTH*S K+ AND K- STATISTICS 

6020 KPLUS=0 

6030 KMINUS=0 

6040 FOR J=l TO N 

6 50 QPLUS=J/N - U(J) 
6060 QMINUS=U(J) - (J-l)/N 

6070 IF QPLUS>KPLUS THEN KPLUS=QPLUS 

6080 IF QMINUS>KMINUS THEN KMINUS-QMINUS 

6090 NEXT J 

6100 REM APPLY PROFESSOR KNUTH'S MULTIPLICATIV 

E TERM 
6110 KPLUS-SQR(N) *KPLUS 
6120 KMINUS=SQR(N)*KMINUS 
6130 RETURN 
7000 REM MODULE 7 
7010 PRINT @320,BK$ 
7020 PRINT 8384, BK$ 
7030 PRINT @320,"K+ = ";KPLUS 
7040 PRINT @384,"K- = ";KMINUS 

7 050 RETURN 



Commodore Version. 



5 " SORT FRACTIONS IN ASCENDIN 



TALLY TEST STATISTICS 
PRINT RESULTS 



KPLUS = PROFESSOR KNUTH'S K+ STATISTI 



N = NUMBER OF FRACTIONS IN A SUBSEQUE 



40 REM SALIENT SYMBOLS AND ARRAYS 

50 REM MODULE 1 

60 REM FIRST LEVEL SUBROUTINES 

70 REM MODULE 2 - INITIALIZE 

80 GOSUB 2000 

9 REM MODULE 3 - PERFORM TEST 

100 GOSUB 3000 

110 REM SECOND LEVEL SUBROUTINES 

120 REM MODULE 4 - GENERATE A SEQUENCE OF FRA 

CTIONS 
130 REM MODULE 

G ORDER 
140 REM MODULE 
150 REM MODULE 
160 END 

1000 REM MODULE 1 
1010 REM SALIENT SYMBOLS 
1020 REM KMINUS = PROFESSOR KNUTH'S K- STATIST 

IC 
1030 REM 

C 
1040 REM 

NCE 
1050 REM T = TOTAL NUMBER OF FRACTIONS 
1060 REM ARRAYS 
1070 REM U = VECTOR OF VALUES FROM A UNIFORM D 

ISTRIBUTION 

2000 REM MODULE 2 

2010 REM TOTAL NUMBER OF FRACTIONS GENERATED & 

NUMBER IN EACH SUBSEQUENCE 

2020 DATA 50000,1000 

2030 READ T,N 

2040 DIM U(N) 

2050 REM HEADING 

2060 PRINT" {CLEAR}" 

2070 PRINT"THIS PROGRAM PERFORMS THE KOLMOGOROV 
^ It 

2080 PRINT"SMIRNOV (KS) TEST OF RANDOMNESS ON A 

H 

2090 PRINT"SEQUENCE OF FRACTIONS FROM A UNIFORM 

m 

2100 PRINT"DISTRIBUTION BETWEEN AND l.'*:PRINT 
2110 PRINT"THIS IS DONE BY APPLYING THE KS TEST 

TO" 
2120 PRINT"SUBSEQUENCES OF THE TOTAL SEQUENCE:" 
2130 PRINT 

2140 PRINT"TOTAL NUMBER OF FRACTIONS = ** ; T 
2150 PRINT"NUMBER IN EACH SUBSEQUENCE = ";N 
2160 PRINT 
2170 PRINT"CHANGE THE ELEMENTS IN THE DATA STAT 

E-" 
2180 PRINT"MENTS OF LINE 2020 FOR DIFFERENT VAL 

UES." 
2190 PRINT 

2200 PRINT" HIT 'RETURN' TO PROCEED" 
2210 GET Z$:IF Z$<>CHR$(13) THEN 2210 
2220 RETURN 
3000 REM MODULE 3 
3010 PRINT" {CLEAR}" 
3020 BK$ = " 

3030 PRINT TAB(8) "KOLMOGOROV-SMIRNOV TEST" 

3040 FOR 1=1 TO T STEP N 

3050 REM PRINT SUBSEQUENCE 

3060 PRINT" {04 DOWN}";BK$ 

3070 PRINT" {02 UP} FRACTIONS : " ; I ; "TO" ; I+N-1 

3080 REM GENERATE SEQUENCE OF FRACTIONS 

3090 PRINT" {04 DOWN}** GENERATING FRACTIONS .,. 

n 

3100 GOSUB 4000 

3110 REM SORT FRACTIONS 

3120 PRINT" {UP}** SORTING FRACTIONS ... 

3130 GOSUB 5000 

3140 REM TALLY KS STATISTICS 

3150 PRINT" {UP}** TALLYING TEST STATISTICS ..*" 

3160 GOSUB 6000 

3170 REM PRINT RESULTS 

3180 GOSUB 7000 



3190 PRINT" {home} {DOWN} " 

3200 NEXT I 

3210 RETURN 

4000 REM MODULE 4 

4 010 FOR J = 1 TO N 

4020 U(J) = RND(0) 

4 030 NEXT J 

4040 RETURN 

5000 REM MODULE 2 

5010 REM SUBSTITUTE "QUICK SORT" HERE FOR FAST 
ER PROGRAM EXECUTION 

5020 FOR J=l TO N-1 

5030 FOR L=l TO N-J 

5040 IF U{L+1)<U(L) THEN HOLD=U (L+1) : U (L+1) =U (L 
) :U(L)=HOLD 

5050 NEXT L,J 

5060 RETURN 

6000 REM MODULE 6 

6010 REM PROFESSOR KNUTH'S K+ AND K- STATISTIC 
S 

6020 KPLUS=0 

6030 KMINUS=0 

6040 FOR J=l TO N 

6050 QPLUS=J/N - U(J) 

6060 QMINUS=U(J) - (J-l)/N 

6070 IF QPLUS>KPLUS THEN KPLUS=QPLUS 

6080 IF QMINUS>KMINUS THEN KMINUS^QMINUS 

6090 NEXT J 

6100 REM APPLY PROFESSOR KNUTH'S MULTIPLICATIV 

E TERM 
6110 KPLUS=SQR(N) *KPLUS 
6120 KMINUS=SQRCN) *KMINUS 
6130 RETURN 
7000 REM MODULE 7 
7010 PRINT" {04 DOWN}";BK$ 
7020 PRINT" {02 UP}K+ = ";KPLUS 
7030 PRINT" {DOWN} ";B$ 
7040 PRINT" {02 UP}K- = ",• KMINUS 
7050 RETURN © 



Use the card in 

the bock of this 

magazine to order 

your COMPUTE! Books 



VIC 20 • COMMODOR 64 



THERE IS STRENGTH IN NUMBERS 

JOIN 

THE SOFTWARE CO-OP 

NOW! For the cost of a single game cartridge you 
can join THE SOFTWARE CO-OP. Use the advantage 
of bulk-purchasing and pay only $1 over whole- 
sale for games, utilities and educational software. 
Rock-bottom prices on ail equipment and supplies 
Savings up to 40%. Guaranteed. Speciaiizing in 
VIC 20, Commodor 64. Atari, Apple and Sinclair. 

Wnte today for free details about our ©xcittng new cataJog 
and ottier sensational Co-op benefits including special swap 
system and tree technicaf assistance, 

THE SOFTWARE CO-OP 

PC BOX 275 ELIZABETH, NJ 07207 



179 UOaOIAIUNJOO • OZ OIA 



July 1983 COMPUTES 177 



How The VIC/64 

Serial Bus Works 



Jim Butterfieid Associate Editor 



The Serial bus comieds VIC or Commodore 64 to its 

major peripherals, especialhf disk and tape. The 
workijigs of this interface have been a source of bafflement 
to most of us. We know that it's somehow related to the 
lEEE-488 bus lohich is used on PET and CBM com- 
puters. But it has fewer wires, and it's slower. For 
anyone interested in interfacing details, this article will 
clear up the mystery. 



Ground Rules 

To understand the workings of this bus, you must 
work through a few concepts. Later, well get 
technical for those who want it. 

The bus, like the IEEE, has two modes of 
operation: Select mode, in which the computer 
calls all devices and asks for a specific device to 
remain connected after the call ("Jones, would 
you stay in my office after the meeting?"); and 
Data mode, in which actual information is trans- 
mitted ("Jones, I've decided to give you a raise"). 
Select mode is invoked by the use of a special 
control line called "Attention," or ATN. 

By using Select mode, you can call in any 
device you choose, but you may need to do more 
before you transmit data. You might have several 
disk files in progress - writing some and reading 
others - and when you select the disk, device 8, 
you'll still need to specify wdiich "part" of the 
disk you want to reach: subchannel 3, subchannel 
15, or whatever. To do this, we use a "secondary 
address" which usually signals a subsystem with- 
in a specific device. That goes in as part of the 
command during Select mode. Finally, we may 
need to send other control information: the name 
of the file we wish to open, for example. That's 
not data; it's device setup information, so we also 
send it in Select mode. 

But the main part is: you select a device, and 
then you send to it or receive from it. Finally, you 
shut it off. All devices are connected, but only the 
one you have selected will listen or talk. 

Some Technical Ground Rules 

If you're not into volts and signals and things, the 

178 COMPUTE! July 1983 



rest of this article may not do much for you. I want 
to talk about technical aspects of the bus. 

First, all the data flows over two wires; they 
are called the Clock line and the Data line. There 
are other wires used for control purposes, but the 
data uses only the two main ones. 

All wires connect to all devices. The wires 
don't go "one way"; any device can put a ground 
on a signal line, and all other devices will see it. 
Indeed, that's the secret of how it works: each 
wire serves as a common signal bus. 

When no device puts a ground on a signal 
line, the voltage rises to almost five volts. We call 
this the "false" logic condition of the wire. If any 
device grounds the line, the voltage drops to zero; 
we call this the "true" condition of the line. Note 
that if two devices signal "true" on a line (by 
grounding it), the effect is exactly the same as if 
only one has done so: the voltage is zero and that's 
that. We can summarize this as an important set 
of logic rules: 

- A line will become "true" if one or more 
devices signal true; 

- A line will become "false" only if all devices 
signal false. 

Remember that we have several lines, but 
the important ones for information transmission 
are the Clock line and the Data line. Let's watch 
them work. 

Transmission: Step Zero 

Let's look at the sequence when a character is 
about to be transmitted. At this time, both the 
Clock line and the Data line are being held ciown 
to the true state. With a test instrument, you can't 
tell who's doing it, but I'll tell you: the talker is 
holding the Clock line true, and the listener is 
holding the Data line true. There could be more 
than one listener, in which case all of the listeners 
are holding the Data line true. Each of the signals 
might be viewed as saying, "I'm here!" 

Step 1: Ready To Send 

Sooner or later, the talker will want to talk, and 






"■"'CQiUPU 5Ef\i5Ei:.'' 



C-64 Compute $399.00 

VIC-20® Personal Computer 147.00 

VIC-1515 Printer 334.95 

VIC-1530 DataseHe 67.50 

VIC-1541 Diak Drive 347.00 

VIC-1010 Expanaion Module 139.95 

VIC-1311 Joystick 9.95 

VIC-1312 Game Paddles 19.95 

Telephone Modem 99.95 

VIC''1210 VIC 3K Memory Expander Cart. 34.95 

Plugs directly into the VIC's expansion port. Expands to 8K RAM total, 

VIC-1110 VIC 8K Memory Expander Cart. 52.50 

SK RAM expansion cartridge plugs directly into the VIC, 

CM1 02 24K Memory Expander Cart. 1 1 9.95 

VlC-101 1 A RS232C Terminal Interface 39.95 

Provides inteHace between the VIC-20 and RS232 telecommunications 
modems Connects to VIC s user port. 

PETSPEED - Basic Compiler for Commodore 140.00 

Compile any Pet Basic program. The only optimizing compiler Programs 
compiled with Pelspeed run up to 40 times taster. Petspeed code is unlistabte 
and compiled programs cannot be tampered with. No security device required 
for compiled programs. Available NOW for the Commodore 64. 



Star Gemini 10 Printer 
Star Gemini 15 Printer 
SND Monitor 



360.00 
460.00 
347.00 



CS1 QUICK BROWN FOX $55.00 

The Word Processor of this decade! For the VlC-20 and C-64. 



COMMODORE SOFTWARE 
VIC-1211A VIC-20 Super Expander $55.00 

Everything Commodore could pack into or^e cartridge - 3K flAM memory 
expansion, high resolution graphics plotting, color, paint and sound com- 
mands. Graphic, text, multicolor and music modes, 10243(1024 dot screen 
plotting. All commands may be typed as new BASIC commands or accessed 
by hitting one of the VIC's special function keys. Includes tutonal instruction 
book. Excellent for ail programming levels. 

VIC-1212 Programmer's Aid Cartridge $4599 

More than 20 new BASIC commands help new and experienced programmers 
renumber, trace and edit BASIC programs Trace any program Ime-by-line as 
it executes, pause to edit Special KEY command lets programmers redefine 
function keys as BASIC commands, subroutines or new commands 

VIG-1213 VICMON Machine Language Monitor $48.99 

Helps machine code programmers write fast, efficient 6502 assembly lan- 
guage programs. Includes one line assembler/disassembler. 

CARDCO 

Atari Adapter - play your 2eOQ games on the VtC-20 $79.95 

CARDBOARD 6 $87.50 

An expansion interface for the VIC-20. Allows expansion to 40K or accepts up 
to SIX games May be daisy-chained for more versatility 

CARDBOARD 3 $35.95 

Economy expansion interface for the Vic-20. 

CARD "?" CARD/PRINT $76.00 

Universal Centronics Parallei Printer Interface for the VIC-20 or CBM-64. Use 
an Epson MX-80 or OKI DATA or TANDY or jusl about any other. *- 

CARDETTE $30 96 

Use any standard cassette player/recorder with your VIC-20 or CBf^-64, 

LIGHT PEN $29 95 

A light pen with six good programs to use with your VIC-20 or CBM-64. 

$50.50 



16K Memory Expander 



All CARDCO Products have a lifetime warranty. 



BUSINESS USES FOR YOUR VIC-20® 



ss 

CW-107A 

CPV-31 

CPV-96 

CPV'208 

CH 

CH 

CH 

CH 
CH 

GT-21 
CT-121 

CT-124 
CT-125 
CT-126 
CT-140 
CM'152 
CQ-5 

OS 
OS 
OS 



Accounts Payable & Receivable $29.95 
Home Calculation Program Pack 48.95 

Deta Files - your storage is unlimited 1 4.95 

Household Finance Package - to 30,95 

keep records of ad your household expenses 

Bar-Chart - display your numerical data 

Turtle Graphics - learn programming 

VIC Forth - a powerful language for 

BASIC programming 

HES MON - a 6502 machine language 

monitor with a mini-assembler 

HES Writer - time-saving word process tool 

Encoder - i^eep your personal records 

away from prying eyes 

Statistics SadiStlCS - statistical analysis 

Total Time Manager 2.0 - creates 

personal or business schedules 

TotI Label - a mailing list & labef program 

TotI Text BASiC 

Research Assistant - keep track of data 

TotI Text Enhanced 

Grafix Designer - design graphic characters 12.95 

Minlmon - allows you to program, load. 13.95 

save, or execute machine language programs 
Home Inventory - Usts your belongings 17.95 

Check Minder - keep your checkbook right 14.95 

General Ledger - a complete ledger 19.95 



8.95 
34.95 
49.95 

34.95 

34.95 
34.95 

14.95 
15.95 

13.95 
15.95 
17.50 
29.95 



GAMES FOR YOUR VIC-20® 
CH-G203 Tank Wars $15.95 

CH-G205 PlnbaM 13.45 

GH-G2D6 Simon - It gels tougher as you get better. 13.45 

Great for kids of all ages. 

CH-G207 Fuel Pirates 13.45 

CH-G209 Laser Blitz 15.95 

CH-G210 Tank Trap 15.95 

CH-G211 Concentration 13.45 

CH-G212 Dam Bomber - pilot the plane, avoid enemy 13.45 
CH-C307 ShamUS - search room after room for the 34.95 

shadow-eluding androids: 2 levels of intense arcade action 

CH-C308 Protector 36.95 

CPU-79 Breakout 7.95 

CPU-85 Hangman ^ unbelievable graphics & sound 9,95 

CPU-87 Memory - VIC challenges your memory 9.95 

CPU'88 Match - hand & eye coordination 7.95 

CPU-89 Monks - a devilish game of logic 7.95 

CPU- 108 Bomber - you must decide who you want to fly 9.95 
for, then pick a target &. your experience level 

CPU- 1 09 Amok - the halts of Anfiok afe populated by 20,95 

robots that obey one command - get the intruder! 

CPU-153 Tank VS. UFO - the tank is moving back & 9,95 

forth along the base; shoot the UFO before it shoots you 

CPU-194 Snakman - Pacman for the VC 14,95 

Defender on TrI - you're the pllot of an experimental ship 1 7,95 

3-D Man - the popular arcade game, requires 3K 17.95 

Exterminator - a game full of bugs 20,95 



We have over 400 programs for your VIC-20 
and over 250 programs for your C-64! 



Shipping & Handling Chargot: 

First two (2) items - $2.00 per item, 

Three (3) or more items - $1.00 per item. 

For orders over $100 total, surface shipping will be paid by 

CompuSense. Blue Label or special handling will be paid by 

the customer. 
Additional $2.00 C.O.D. fee on all COD. orders. 
MasterCard and Visa accepted. Give card number and expiration 

date on order form. 
Allow three (3) weeks for personal checks. 



TO ORDER: 

P.O. Box r&765 
Wichita, KS 67218 
(316)263-1095 




Write for 

FREE 
Catalog! 



Prices subject to change, 
VlC-20* IS a registered trademark of Commodore 



send a character. When it's ready to go, it releases 
the Clock line to false. This signal change might 
be translated as 'Tm ready to send a character." 
The listener must detect this and respond, but it 
doesn't have to do so immediately. 

The listener will respond to the talker's "ready 
to send" signal whenever it likes; it can wait a 
long time. If it's a printer chugging out a line of 
print, or a disk drive with a formatting job in pro- 
gress, it might hold back for quite a while; there's 
no time limit. 

Step 2: Ready For Data 

When the listener is ready to listen, it releases the 
Data line to false. Suppose there is more than one 
listener. The Data line will go false only when all 
listeners have released it - in other words, when 
all listeners are ready to accept data. 

What happens next is variable. Either the 
talker will pull the Clock line back to true in less 
than 200 microseconds- usually within 60 niicro- 
seconds - or it will do nothing. The listener should 
be watching, and if 200 microseconds pass without 
the Clock line going to true, it has a special task to 
perform: note EOk 

Intermission: EOl 

If the Ready for Data signal isn't acknowledged 
by the talker within 200 microseconds, the listener 
knows that the talker is trying to signal EOL EOI, 
which formally stands for "End of Indicator," 
means "this character will be the last one." If it's 
a sequential disk file, don't ask for more: there 
will be no more. If it's a relative record, that's the 
end of the record. The character itself will still be 
coming, but the listener should note: here comes 
the last character. 

So if the listener sees the 200 microsecond 
time-out, it must signal "OK, 1 noticed the EOI" 
back to the talker. It cioes this by pulling the Data 
line true for at least 60 microseconds, and then 
releasing it. 

The talker will then revert to transmitting the 
character in the usual way; within 60 microseconds 
it will pull the Clock line true, and transmission 
will continue. 

At this point, the Clock line is true whether 
or not we have gone through the EOI sequence; 
we're back to a common transmission sequence. 

Step 3: Sending The Bits 

The talker has eight bits to send. They will go out 
without handshake; in other words, the listener 
had better be there to catch them, since the talker 
won't wait to hear from the listener. At this point, 
the talker controls both lines. Clock and Data. At 
the beginning of the sequence, it is holding the 
Clock true, while the Data line is released to false. 
The Data line will change soon, since we'll send 
the data over it. 

180 COMPUTE! July 1983 



The eight bits will go out from the character 
one at a time, with the least significant bit going 
first. For example, if the character is the ASCII 
question mark, w^hich is written in binary as 
00011111, the ones will go out first, followed by 
the zeros. 

Now, for each bit, we set the Data line true 
or false according to w^hether the bit is one or zero. 
As soon as that's set, the Clock line is released to 
false, signalling "data ready." The talker will 
typically have a bit in place and be signalling ready 
in 70 microseconds or less. 

Once the talker has signalled "data ready," it 
will hold the tw^o lines steady for at least 20 
microseconds to allow^ the listener to read it. This 
timing needs to be increased to 60 microseconds 
if the Commodore 64 is listening, since the 64's 
video chip may interrupt the processor for 42 
microseconds at a time, and without the extra 
wait the 64 might completely miss a bit. 

The listener plays a passive role here; it sends 
nothing, and just watches. As soon as it sees the 
Clock line false, it grabs the bit from the Data line 
and puts it away. It then waits for the Clock line 
to go true, in order to prepare for the next bit. 

When the talker figures the data has been 
held for a sufficient length of time, it pulls the 
Clock line true and releases the Data line to false. 
Then it starts to prepare the next bit. 

Step 4: Frame Handstialce 

After the eighth bit has been sent, it's the listener's 
turn to acknowledge. At this moment, the Clock 
line is true and the Data line is false. The listener 
must acknowledge receiving the byte OK by 
pulling the Data line to true. 

The talker is now watching the Data line. If 
the listener doesn't pull the Data line true within 
one millisecond - one thousand microseconds - it 
will know that something's wrong and may alarm 
appropriately. 

Step 5: Start Over 

We're finished, and back where we started. The 
talker is holding the Clock line true, and the lis- 
tener is holding the Data line true. We're ready 
for step 1; we may send another character- unless 
EOI has happened. 

If EOI was sent or received in this last trans- 
mission, both talker and listener "let go." After a 
suitable pause, the Clock and Data lines are re- 
leased to false and transmission stops. 

Attention! 

This is all very well for a transmission that's under 
way, but how do we set up talker and listener? 
We use an extra line that overrides everything 
else, called the ATN, or Attention line. 

Normally, the computer is the only device 
that will pull ATN true. When it does so, all other 




Driving 
Commodoie is 
getting easier 



Steer your way to greater efficiency and meet all your 
administrative needs of the future with the SUPER 
range of quality software. 

Whether you want a fast and flexible database, a 
comprehensive and easy to use word processor, or a 
completely integrated office 'manager', Precision Soft- 
ware has the answer. With software that harnesses 
the full power of the new Commodore "B" Business 
Computer (known as the 700 in Europe). 



Database manager for all business environments 
where accurate and up-to-date information Is the key 
to success. 

SUPERBASE sets new standards in flexibility and 
ease of use, with large record sizes, fully re-definable 
multi-screen record formats, spreadsheet-like 
calculation facilities, fast '8+ tree' keyaccess with 
selective retrieval, transaction linking, sorting and fully 
definable report formats. SUPERBASE can also be 
linked to SUPERSCRIPT tl. 



§f 



^ 



Stiffs 




Sf^ 



l^C^^i!^ Enhanced version of the popular full feature word 
-^ processor. Unrivalled table handling with 240 column 

wide screen, scrolling in all directions, arithmetic, 
memory calculator, column manipulation and mail 
merge with record selection. Comprehensive editing 
and finish quality output formatting. Handles up to 
2,100 lines of 80 column text. And it spells! 
Versatile, fast, simple to learn and use, 
SUPERSCRIPT 11 processes letters, quotations, 
reports, mailshots and standard forms with 
professional ease, enhancing presentation and 
ensuring perfect copies every time. 



Fast, effective spelling checker ensures 100% 
typographic accuracy. An integral part of 
SUPERSCRIPT El, SUPERSPELL checks documents 
against a standard 30,000+ word dictionary and 
displays a list of ever>' unrecognised word. 
SUPERSPELL handles both English and American 
spelling variants. You can accept, ignore, correct or 
add new words, building up your own dictionary 
extension. SUPERSPELL also includes a word look- up facility, 

'*rB ^^^ ultimate integrated office administration system, 

f^ with full records management, calculation, word 
processing and spell checking. 

SUPEROFFICE combines the database handling 
of SUPERBASE with the document editing and 
formatting power of SUPERSCRIPT !L 

The availability of SUPERSCRIPT II as an integral 
word processor enables lists selected from data files to 
be used for mailshots, tables, standard forms and labels. 
SUPEROFFICE includes a powerful programming capability, 
enabling you to build up a library of your own programs. 
System-wide help screens are supported by clear 
comprehensive manuals and tutorials. 

Choose an off-the-shelf application to suit your 
business from a steadily expanding library. 

Find out more about the Superseries range of 
Software. Contact your local Commodore 
Dealer or Precision Software at our U.K. 
office. 









±1 

PnLx:ision 
Soflwanc 



Precision Software Limited 

Park House, 4 Park Terrace, 
Worcester Park, Surrey, KT4 7JZ. 
Telephone: 01-330 7166 

Telex: 8955021. PRECIS G 



devices drop what they are doing and become 
listeners. 

Signals sent by the computer during an ATN 
period look like ordinary characters - eight bits 
with the usual handshake - but they are not data. 



Serial Bus Transmission Sequence 



Step zero (start): 
Talker holds Clock 

line true; 
Listener holds Data 

line true. 

Step one (Ready to 
Send): 
Talker releases 
Clock line. 

Step two (Ready for 
Data): 
Listener releases 
Data line. 

Intermission 

(Only if EOI): 
Listener times out 
and acknowledges 
EOI by pulling 
Data line true for 
a brief period. 

Step two (completion): 
Talker pulls Clock 
line true. 

Step three (data): 
Talker sets data 

bit on Data line; 
Talker releases 

clock line to 

signal "bit ready"; 
Talker holds lines 

steady for fixed 

time; 
Talker pulls Clock 

line true and 

releases Data line. 

Step 3 repeats for 
each of 8 data bits. 

Step 4 (acknowledge): 
Listener pulls Data 
line true to 
acknowledge. 

Back to Step 0. 



CLOCK 
LINE 



DATA 
LINE 




REPEAT 

FOR 

EACH 

BIT 



Not draion to accurate time scale. 



They are 'Talk/' ''Listen/' "Untalk/' and "Unlis- 
ten" commands telling a specific device that it 
will become (or cease to be) a talker or listener. 
The commands go to all devices, and all devices 
acknowledge them, but only the ones with the 
suitable device numbers will switch into talk and 
listen mode. These commands are sometimes 
followed by a secondary address, and after ATN 
is released, perhaps by a file name. 

An example might help give an idea of the 
nature of the communications that take place. To 
open for writing a sequential disk file called ''XX/' 
the following sequence would be sent with ATN 
on: DEVICE-8-LISTEN; SECONDARY-ADDRESS- 
2-OPEN. When ATN switches off, the computer 
will be waiting as a talker, holding the Clock line 
true; and the disk will be the listener, holding the 
Data line true. That's good, because the computer 
has more to send, and it will transmit: X; X; 
comma; S; comma; W ~ the W will be accompanied 
with an EOI signal. Shortly thereafter, the com- 
puter will switch ATN back on and send DEVICE- 
8-UNLISTEN. 

The file is now open; later, the computer will 
want to send data there. It will transmit, with 
ATN on, DEVICE-8-LISTEN; SECONDARY- 
ADDRESS-2-DATA. Then the computer releases 
the ATN line and sends its data; only the disk will 
receive the data, and the disk will know to put it 
onto the file called XX. The last character sent by 
the computer will also signal EOI, 

After the computer has sent enough data for 
the moment, it will pull ATN on again and send 
DEVICE-8-UNLISTEN. Many bursts of data may 
go to the file; eventually, the computer will close 
the file by sending (with ATN on, of course) 
DEVICE-8-USTEN;SECONDARY-ADDRESS-2- 
CLOSE. 

ATN overrides everything in progress. A 
disk file might have lots of characters to give to 
the computer, but the computer wants only a 
little data. It accepts the characters it wants, then 
switches on ATN and commands the disk to Un- 
talk. The disk has not sent EOI, but it will discon- 
nect as commanded. Later, when it's asked to 
Talk again, it will send more characters. 

ATN Sequences 

When ATN is pulled true, everybody stops what 
they are doing. The processor will quickly pull 
the Clock line true (it's going to send soon), so it 
may be hard to notice that all other devices release 
the Clock line. At the same time, the processor 
releases the Data line to false, but all other devices 
are getting ready to listen and will each pull Data 
to true. They had better do this within one mil- 
lisecond (1000 microseconds), since the processor 
is watching and may sound an alarm (''device not 
available") if it doesn't see this take place. 



182 COMPUTE! July 1983 



J 



COMMODORE USERS 



Join the largest, active Commodore users group. 
Benefit from: 

— Access to hundreds of public domain 
programs on tape and disk for your 
Commodore 64, VIC 20 and PET/CBM. 

— Informative monthly club magazine 
THE TORPET. 

Send $1 .00 for Program & Information Catalogue. 

(Free with membership). 



Membership 
Fees for 
12 Months 



Canada — $20 Can. 
U.S.A. — $20 U.S. 
Overseas — $30 U.S. 



Toronto Pet Users Group 

Department "S" 

1912A Avenue Road, Suite 1 

Toronto, Ontario, Canada M5M 4A1 

LET US KNOW WHICH MACHINE YOU USE 



VIC* OWNERS 



VIK KONG- Barrels of fun, 6 Kongiands, elevators, trapdoors. 
Machine code makes this an exciting game for everyone. -$14.95 
UUNCH 2031 AD - Command your ship through an asteroid belt to reach 
the other side. Machine language makes this a fast game. -$14.95 
GRAND PRIX- Extensive use of hi-res graphics. Don't collide with the 
other cars or your gone!!,- $14.05 -100% Machine code 
CATERPILLAR - It's a battle between you and the spiders and caterpillars. 
100% Machine code adds to the excitment of this great game. - $14.95 
ALIEN HUNT - Try to break through the moving blocks to hit the ALIEN! 
-$12.95 

•After a Word Processor? Inquire about ours for the Vic-Pet-64! 

CANADIAN OR US FUNDS!! 

Send cfieque or M.O., MX., Visa to: 

TELEGAMES SOFTWARE 

P.O, Box 152 
Hamptoa Ontario. Conada LOB UO 

WT.Ie For ^^' Shipping Add SI. 00 T.odemo.k of 

Coraiog .25 (416) 263 - 8064 Commodore 



^^^The Source of Computer Books 



Stimnlatiiig 
SimniatioBs 




I SPEAK BASIC TO MY VIC^" 

Student Text 
Aubrey B. Jones, Jr., $8.45 paperback 

A field-tested computer literacy course that introduces 
students to BASIC language programming. Step- 
by-step instruction, exercises, practices. 

VIC™ REVEALED 

Nick Hampshire, $12.95 paperback 

A comprehensive look at the VIC-20's hardware 
capabilities. 6502 Microprocessor, VIC System 
software, 6561 Video Interface Chip, 6522 Via & User 
Port. VICI/0 Functions. 

STIMULATING SIMULATIONS 
FOR THE VIC™ 

C. W. Engel, $6.50 paperback 

Twelve unique simulation programs in BASIC for the 
computer hobbyist — Soccer, f^onster Chase, Space 
Flight, Business fVlanagement, and more. 

VIC™ GRAPHICS 

Nick Hampshire, $12.95 paperback 

Thirty-eight complete graphics programs for the 
VIC-20. Theory of high resolution graphics, use of the 
multicolor mode, applications. 

B, Dalton stocks a complete selection of 
computer books in 700 stores nationwide. 
Check your Yellow Pages. 

People who know books know B. Dalton. 



City 



-State - 



-Zip. 



nCheek/Morvey Order Enclosed 

a VISA G MasterCard GAmencan Express 



-E)cp. Date- 



BookTHte. 



Plaaae send St .75 ior postage and handling. 
Please add appropriate sales tax. 



_Qty. 

B. Dalton Bookaeiler 
9340 James Ave. S. 
Mlnneapoils, MN 5543t 



July 1983 



J 

COMPILE! 183 



Under normal circumstances, transmission 
now takes place as previously described. The 
computer is sending commands rather than data, 
but the characters are exchanged with exactly the 
same timing and handshakes as before. All devices 
receive the commands, but only the specified 
device acts upon it. This results in a curious situa- 
tion: you can send a commanci to a nonexistent 
device (try "OPEN 6,6") - and the computer will 
not know that there is a problem, since it receives 
valid handshakes from the other devices. The 
computer will notice a problem when you try to 
send or receive data from the nonexistent device, 
since the unselected devices will have dropped 
off when ATN ceased, leaving you with nobody 
to talk to. 

Turnaround 

An unusual sequence takes place following ATN 
if the computer wishes the remote device to be- 
come a talker. This will usually take place only 
after a Talk command has been sent. Immediately 
after ATN is released, the selected device will be 
behaving like a listener. After all, it's been listening 
during the ATN cycle, and the computer has been 
a talker. At this instant, we have "wrong way" 
logic; the device is holding down the Data line, 
and the computer is holding the Clock line. We 
must turn this around. 



Here's the sequence: the computer quickly 
realizes what's going on, and pulls the Data line 
to true (it's already there), as well as releasing the 
Clock line to false. The device waits for this: when 
it sees the Clock line go true, it releases the Data 
line (which stays true anyway since the computer 
is now holding it down) and then pulls down the 
Clock line. 

We're now in our starting position, with the 
talker (that's the device) holding the Clock true, 
and the listener (the computer) holding the Data 
line true. The computer watches for this state; 
only when it has gone through the cycle correctly 
will it be ready to receive data. And data will be 
signalled, of course, with the usual sequence: the 
talker releases the Clock line to signal that it's 
ready to send. 

The logic sequences make sense. They are 
hard to watch with a voltmeter or oscilloscope 
since you can't tell which device is pulling the 
line down to true. 

The principles involved are very similar to 
those on the PET/CBM lEEE-488 bus - the same 
Talk and Listen commands go out, with secondary 
addresses and similar features. There are fewer 
"handshake" lines than on IEEE, and the speed is 
slower; but the principle is the same. 

Coffy right © 1983 Jim Buiterfield © 



Olympic Sales 



SERVING VOU 
SINCE 1947 



Telex; 67 34 77 Toll Fik Ptionf Didtii: 
Toll fiM fm CA} 800*252 2153 B00^21 B045 {out of CA} 
Ordet Desks open G davs 1 wrrk! 7:Q0 AM to 6:D0 PM Mon S«1 
P.O. Bo* 74545 216 So. OxJoirt Aw, Los Angeles, CA 9000^ 
Phone: (?131 J39-1130 Cabte: "QLYRAV ISA \f~in a ^^ 



COMPUTER PRINTERS 

DiibloGZO Lerterquility, Z5cps S 939.95 

DiiNa&30 Lttter qutlitv. 4acpi 1799.95 

NEC B023A 100 cps, uidar 499.95 

Tnnntr T315 Color pritim, 3D color 499 J5 

sh«dti, 50 £;p» 

Tnnstir 130P 130 cp» 699.95 

Okiiittt BO 89 cpi 3G9.9S 

OkJdJtiBZA IDOcps 439.95 

0liid4t]B3A IZOcpi 689.95 

0kiditiB4P ZOO cps. piTiJlel 1079.96 

OkidiU a4S 200 cpi, terril 1 1 69.95 

Ok id«ti 23S0P 3S0 cps , pirilkl 2 1 95.95 



VfU 



M* CMfry cSffse to 
$5,000 VOO mventofy tt all 
lifTKt. Corp. KCti. invitfd. 
Good tubiecx to MVtiltbility. tbit jrf tupercedet 
ail preriotts »dK fob out wMrvbouse; prititt lub- 
jMfcf to change without notice, not ftsponiibfe 
ncil fffOfi: Jili ordt^rt lubtVct to 



for lypo^raphr 

veriticstiafi. mmtmuny ihpg & 

Seod S2 for S5 foreign f for oi 



HEH 



/ famoiit catalog. 



70 ivciir FROM 

fff»iul Et*cii6n« TYFEWrniTtH 
Sun.retiri:£29^.9B 

Of*fiin «• bntfm bt AC kitfivi 



UMITED 
TIME 

$100 

REBATE 

from 




FRAMKJUN 0CBiOOO 

64K APPLE COMPATrSLE 
wHh imrt itilurn thin Appb II RIul 

SPECIAL PACKAGE: 
Out ACE 1000 

Dm Ddk Drivt whin Ccntrolltr 
Ortt ACE CjVc {tqu«l to VitiCilt) 
B{) CflEor Cird 

Dm ACE Writit with 80 cglurnn HriT 
Ont iprtid ihetl prDgftm 
Otu girttn monitor, S" or 12" 
Thn wrfioit ptdi*gt for only $t$95,M 



EPSON 



MX-aOWiTH 
GRAFTRAX 

95 



MXBOFT S389.9S 
MX10Q CalEus 
FXBO Qjill us 



ATARI 1 200 XL $46995 * 

ATARI 1200XL - THE ' STATE OF THE ART ' MACHINE? 
Fu9t64K RAM/256 Calart/16 Functton keysft special 'Help' key 
'your net price aftcf $100 rebate from Atari & $100 wttwari ofrfar 



ROYAL ALPHA 2001 
ELECTRONIC 



Grut unh fof HEAVr DUTY WORK! 
DkhiuI tib, duii pitdi & mon' O:'' 
%m Liit:tS9S.OO ^ 

fOR TH£ FIRST TiMl 



SlUft COMMODORE 64 
__ lUV TRADE-IN RERJND 



commodoreMJ /^^1\ . 

rnuunnnDc u ^ #vU-1^ *Whtn suf dixitd b urt of ttt 



289!?, 



COWMDOaRE U "* 
COMPUTER 

hM FtF mediflitor 
Full c«l«r iriphict. 

H9p*r/to«qr CN 




y 



CK commodore 

W!O20$9995^ 



3 INTELLIGENT WAVS 
TO 8U¥ A COMMODORE 64 
1) Vou buy On« from ui i1 $389.95 
1) You buy ofl* from ui it S389 95, (htn yoi 
ttnd ifl in oid/niw (m ttiy eandition) 
compirtai or TV umt tn Comniadon & 
r»C(rvt £100.00 froin thtrn! 
3] Veu buy ont Cammodorf M from m it S389.9S 
Thtn yov buy oni Timtx TS-lOOO from u% 
Thtn Hud tlx Timix to ComrrHadurt ft ^t $100-00. 
You imraa 149.95 & gtt tlOO.UD, nit fl»in:S50 05 



■Whtn pvfdBKd « pirt of tt»i pkckift ONLY. 
VlC-20 SI 29,95 when ourchsted alone, 
SPECIAL PACKAGE DEAL: 
ViCJfl W-« 

OATASETTE R«oidir 69,35 
GOHTEKSoJTiwrt 2fl OS 
TOTAL Can 119,95 

You p4y $109.95 for {?S9.95 vilii«! 
Muit purdiita Mrfiolt ptdiift to ult 
idnntiqe o1 lh«t vRhccrd-ol pricn! 
DISK DRIVES& OTHER PERIPHERALS 
1541 DitkDrPrt OM.SS rhnt tyffpt^f'th 
1S30 Ditmttt £9,95 -w^* «*'rft r^ 
t5!5E Plrinttf 339, OS WC JO ji ■^u a 

teOO VieModim 99,95 Com^norJorf 64 
1520 NEW! Color piinttr/plottir tMJ95 
nai MEWf H" »lof mnilor 2t9,95 



Z40 C*rd For Cammodon M 


Gra,9S 


10 Column Cord For Comnwlari 64 


16995 


40 CoUimfi C«rd For VIC 70 


99.0S 


40 Columi, Card w/tK imnr built in lor 


VtC20 139.95 


VdioPiEi E4K for VJC20 


329.95 



:^: 



ATARI^OG $11995 



41 Q P^ooram Recorder S 79 J5 
Sia Ordt Drivt 449 J5 

ISO IntHfiaModu^ 1B9^S 



^ Net cost- 
♦After S5D 
CASH rebate 
from ATABt & SSO software 
off ef -you pay us S219.95. 



NEW? ATARI 1025 - SPECfAL INTRODUCTORY PR SCB%^^.^h 
DOT MATRIX PRINTER - 40^0 132 Calumn with buffer 
indudei I/O cable - NO iNTERfACE REQUfRED' 



399!!l 



FREE WITH PURCHASE of each 2-89 card, BO cflluiSn 
40 tolymn or Video Pick 64, you receive the foilnwing: 
Word Master word processor software 
Mailing List softMtre 
TelecommunicatiDns software 
Dtit to thi tmntfldoui dtmind o1 tbm products, qoodj 
■n fuiijitct to milability. Ptia your ordtrt rioml 



HEWLETT 
HP-75C K'/^ PACKARD 

Hantj held computer 3/49^^ 

HP 12C FiiuiKUfakulitor 99,95 

HP-1 1 C Sowtific dlonho-f 73.05 

HP 1 0C Sei*niif« Qktilcioi 51.95 

HP 1 5C Sotfllilic aiciiUlef 9f » 

HPlSCFtn«ficiit/buiii»tucak 99,05 

KP9T Ptofitnvnobit priitt oJc 595, M 

HP41C PtotrimfMblt ak 15a. 95 

HP41CV PtD«(imnwb«* ok 213,95 

Opt««JwBMl 97 05 

PtiflttrliK4tCy 213,05 

CardiHdirfDr41CV/C 152,95 

I L I htr mi J pr I my p lot^tf 31 9 , OS 



TIMEX TS-1000 

Tirmx TSIOOOComputtr <tliitf%QC 

49 



FREE RF modultlor 
I6K RAM Uptnuoti 
Tiintx TKirnut pnntir^gfiphi 
Panjioriic(profrim; ncardii 



M5,9S I 
94.95 
39.95 



159 



or SONY CORDLESS TELEPHONE -^ 
Jjj Model SPP'11 Innefcom, iuto. redial, 
Sygg. Re: rechargeable & more. High 
C99.95 quality unique Sony design. 




BUY 3 PIECES OF SOFTWARE & 

GET THE FOURTH ONE FREE! 

TIMEX Softvnn (?5 ptofttmt !of youfi 



Stoch Option Afiahriv 

iRAPtjiiiw 

RmI EftJtf !n*«tiT»nt Aitilyta 

PifiOfill FimriE* Plinncf 

pDrrfolio Afulytii 



Orpnizif 

ChKkbooM Miii«g<f 
ind mon irtd mort . 



16,95 
t5,>5 
14.15 
12.05 
t4.95 
15:95 
1fi.9S 
15.95 



TJBMQs Instruments 
Honr>eConiputar 

$ ff f|95 NE T after S50 



rebate from Tff 
Yoitp3yUi $749.95 



1200 PtripJteril EnfMnnon Box 
12Z0RSZ32C«rd 
l240DiiliCofltrolkr Cird 
l750Eifun. Syi. DitliOrtvt 
U&ONkmory Eip, Cird I32K1 
1270 PCodtCifdtrnj.l BOO) 
I BOO Teltpbo ne mBdCfn 
41(M3Monnor 



219.9S 
149.95 
199-95 
3t9 9fi 
233,95 
199,95 
179.9B 
339.95 



Eitended Bnic 79.95 LOGO 9995 



VritHtnt«fia(HP02U3A) 249JS 
HP IL Symrm on (und 

ILiRitrfntnodifb 99,95 

Dtnil antitr drnrt 439.95 

Exttndtd lunctiofl nwin mod 61.91 

Eilfndtd rmmory modiiti 61.99 

Timtnwduk 61. 9t 

i41C/Cy 25.04) 

4or4tC 65.00 



Qriginaf retail S295.00f 

wtnai £L£CTW3rucs' 

iNtEUiVlSJON 

*Hn price 
after $50 
rebate from Mattel** 

Yai/pay ui S99,9S 
**To QUifify for Ms tie f 
rebate you must purch»te 
two game c^rtritfget 
mtft the Modes 2609 



$4995- 



184 COMPUTE! July 1983 



Pl^'wHIii 



NEW for the VIC and '64 



'Jm. fMT JOYSTICK! 




Program includes a large 
''picture library" ready to use as- 
is or modify with |oystici<. Rot- 
ting program included for mak- 
ing perfect circles. On cassette. 

'BA Panorama $2d.35 

VIC-Pics.,. .$29.95 



High-resolution pictures 
with print-out to VIC printer. 

Put your hands on creativity with 
this hirez software for the VIC or 
*64. Draw narrow or wide lines, 
curvy or straight, create 
background patterns, erase 
mistakes, set colors, add cap- 
tions, too! Great for graphs and 
pie-charts. SAVE your creations 
to tape or disk, and print a hl-rez 
copy. 




Supm^i 



it's here! UPLOAD/DOWNLOAD 
software for the ViC & '64 » 

Enjoy the power of file transfer under 
popular protocols; SAVE files to disk or 
tape; EDIT; DUMP to VIC printers or 
parallel printers (with Smart ASCII); 
supports UPPER/lowercase text, 
standard ASCII, and control characters. 

SuperTerm handles sequential, 
program, and word processing files. On 
cassette, transferable to disk. When you 
need professional caliber modem 
software, think SuperTerm. 

SuperTerm (specify vie or 64) . . $99.95 

(VIC version requires 16K rBemofy exp) 



Also available: 

Smart ASCti, a software Interface for parallel printers. 
At $59.95, lowest-cost, most flexible Interface for VIC 
and '64. On cassette, with cable and manual 



Terminal'40j the top-rated VIC telecommunications program. 
Easy-to-use; VIC printer dump; req 8K mem exp; $29^ on cassette. 

'64 TermtnaL Same powerful features as Terminal-40; for '64; 
24K printing buffer. Only $29.95 on cassette. 



MIDWEST ORDER DESK: 

MICRO inc. (816) 333 7200 



311 WEST 72nd ST. • i<ANSAS CITY • MO • 64114 



MAIL ORDER: Add $1^ shipping ar>d 
har>dilr>g ($150 for C.O.D); VISA/Mastefcard 
mW 3% (card* and exp. date). MO residents 
add 5-625% sales tax. Foreign orders payable 
U.S-$, U.a B*mk ONLY; add $6 shpmrxJlg, 



Cali or write 
for free brochure 

Dealer Inquiries Invited. 



INTRODUCTORY PRICE 

$109.95 



MP! INTRODUCES SUPER ACTION MEMORY 
EXPANDER BOARD FOR VIC 20* 

Adds 24K and 3 Expansion Slots Witti Switches and Fuse $109.95 

(Expandable To 35K By Smply Adding Memory Chips and Switches) 



tvode^"' Wri*® 



Transfer 

24K BOARD FEATURES: 

'Adds 24K Memwy (29K wirti VIC 5K). 

"Upgrade Board To 35K by odding IC's and switches. 

•Memory switchable In 8K sections. (No need to remove memory boord to 

mn yoor ottwr programs). 

"3 expansion slots with switches (for gome or extra utility cartridges). 
•Reset button ollows restarting computer without turning power off. 
'.5 amp fuse protected. 
' Switch relocates expansion cartridges in memory so that it can be saved on 

tope OS backup fof your voluobie pfogroms. (The unexpanded VIC will not 

ollow cortrldges to be saved on tope). 
•Write protect switch allows programs stored in RAM at ROM location to be 

protected against accidentol write. 
'Switch allows memory to be moved between RAM ond ROM locotion, 

(Useful for developing your own games ond saving on tape). 
'Gold plated cord edge connector. 
' No ott>er memory expansion needed. 
'Easily plugs Into your VIC, no modifications necessory. 

Saves wear on your VIC 20 since board never needs to be 

removed or power njrned off and on to run other topes 

or cartridges. 

•Optional 35K memory (40K with VlC 5K). 



Se^?r^S??^^ 



A« 



BO' 



,ords 



fOCT 



r-WWKIkifl 






fuse 



prote' 



ctec 



R6' 



se^ 



swttcl^ 



Pictured Above - 

Action Board v^ oil options 



24Kmemory, 3 expansion slots, switches assembled and tested $109.95 

Some OS obove with sockets that allow you to later odd your own memory chips to 
bring memory from 24K to 35K 5124.95 

Full 35K memory, 3 expansion slots, 3K expander mode, eprom socket 
(switch seiectobEe between BLK 3 & Bl-K 5) and oil switches assembled and tested 
(eprom notinciuded) , , , $149.95 

Bore 35K board with complete instruction and ports list $39.95 



MIDWEST PERIPHERAL INDUSTRIES 



.VIC 20* is a registered trademark of Commodore. 



Mo. residents odd 5V2% sales tax 
Add $5 for shipping and handling 
Send check or money order to 

MPI 

Box 8123-B 

Kansas City, MO 64112 

Personal checks -Allow 3 weeks to dear. 



July 1983 COMPUTl! 185 



INSIGHT: Atari 



Bill Wilkinson 



A mini-series on relocatable machine language begins 
in this mouth's column, plus a tip on a nexv product ~ 
an intelligent cable. Next month, the last part of the 
BAIT interpreter and more on relocatable machine lan- 
guage, 

1 have been working on a new project for COMPUTE! 
Books. By the time you read this, COMPUTEI's 
Atari BASIC Sourcebook should be wending its way 
to your dealers' shelves and into your hands. 
Like Inside Atari DOS, the Sourcebook is a complete 
source listing of - what else? - Atari BASIC, along 
with a comprehensive explanation of how and 
why it all works. 

Enough advertising. This month we will begin 
a mini-series on self-reiocatable machine lan- 
guage. But before we begin all that, time out for 
some ruminations. 

Machine Language Be Not Hard 

Before we start investigating self- relocatable 
machine code on the 6502, I'd like to get up on 
my soapbox for a while and do a little preaching. 

This month's sermon was inspired by a 
machine language program published in another 
magazine. The program seemed to me the epitome 
of poor programming techniques. And lest it seem 
that I am taking a cheap shot, let me hasten to 
add that the program works and works well. I am 
carping about the printed form of the program, 
not the results thereof. 

In the tradition of any good preacher, then, 
let me give you some suggestions on how to write 
good, readable, maintainable machine language: 

1. Always use plenty of comments (they cost 
nothing in the assembled code, unlike 
BASIC). 

2. Never use absolute addresses (except in 
equates). 

3. Never use absolute numeric constants 
(again, except in equates, though we might 
forgive an occasional constant or 1). 

4. Always use plenty of comments. 

5. Always use long, meaningful names for 
labels. (Which makes more sense, ICCOM or 
lOCB-COMMAND?)- 

6. Never branch to a location relative to the 

186 COMPUrt! Juty1983 



location counter (that is, never use "*-J-xx" 
or "*-xx"). 

7. Never use a comment that simply echoes 
the machine language code. 

8. Always use plenty of comments. 

9. Never change the location counter need- 
lessly (that is, most programs should contain 
only one '"* = ", except for the use of "* = * 

+ xx" to reserve space). 

10- If possible, always define a label before its 

first use. 

11, Always thoroughly document the entry 
and exit values for a subroutine, taking special 
care to note what happens to the CPU regis- 
ters. 

12. Always use plenty of comments. 

Those of you with some OSS software will 
see that I have taken a small pot shot at our own 
manuals in commandment 5. Well, 1 never said 
we were perfect. (Great, maybe, but not perfect.) 

And those of you with Atari's Macro Assem- 
bler may object to using long labels since, even 
though AMAC allows long labels, it ignores all 
but the first six characters. Sorry, but 1 still think 
this rule should be followed. You just have to be 
more inventive to insure that labels are unique in 
the first six characters. (For example, lOCB. AUXl 
and lOCB. AUX2 look the same to AMAC, so use 
lOCB.l AUX and 10CB.2AUX .) 

Anyway, rather than go through each of those 
commandments one by one, let's look at an ex- 
ample subroutine coded with both worst and best 
techniques. 

Example 1: Worst Technique 

; EXAMPLE 1 : print A register 
*= $1F00 
LDX #11 

STX $342 ; put 11 in location $342 
LDX#0 
STX $348 
STX $349 
|MP$E456 ;goto$E45d 

Example 2: Best Technique 

r 

; Example 2: Output the character in the A-register 
; to file channel (lOCB) number zero 

; (assumed to be the screen). 



Th« Rrst and Onlv Syttam to Backup 

Diskottas Protoctad by Bad Sectoring 

wftthout modificatkin to your drive. 




ATARI DISK BACKUP SYSTEM S49."^ 

SupftfClone is the onhf ATARI diskette copier system that 
lets you backup iust about ANY 'copy peotftcted* disketto. , , 
tncJuding those pfotocied by 'bad soctorEng.' 8 ad tracks and 
sector* are created wtthout modifications to o^ adjustments 
of your hardware. Each backup diskette ganeraied by Super- 
clone function* cx6ctiyhke th^ originoi. . . sad f- booting, etc, 
(In fact, we suggest that you use the backup and save the 
originaJJ 
Superck)ne include: 

SCAN ANALYSIS - Mep of diskette com en« (Location of 

data, bad sectors, etc.^ 

FORMATTING/BAD SECTOfttNG ■ NonATARl DOS 

fonttaning and bad irack/ sector creation. 

BACKUP ■ Copies just about everything wo can find. . . 

regardless of protectioo scheme. 
Supofdone is osef-friendW and simple to use. 
PIRATIS TAKE NOTl: SUPER CLONE only aUows two 
copies TO be made of any specific diskette. . .Sorry 1 11 

SYSTEM REQUIRCMENTS 

Atari 400 or 800 Computer / 48K Memory 
One Atari 810 Disk Drive / Printer Optional 
Available at your com put ef store or direct from 
FRONTRUNNER. Inducle S2 00 l«5.00 Foreign Order*) for 
each system, DEALER INQUIRES ENCOURAGED, 



TOU. FREE ORDER UNE: 
(24 HrsJ 1-80fr44S"47lO 

In Nevada or for questions 
Cell: (702) 786^4600 
Persona) checks alow 2-3 
weeks to dear. M/C end 
VISA accepted. Include 
shipping. 

316 California Avenue, Suite f7l2 
Reno, Nevada 89609 - (702) 786-4800 

Others make chims. . SUPER CLONE makes coptesUf 
ATARI ts a Tfademaric of ATAfit, Inc. 





KB 400 



TM 



• Exact Atari^" keyboard layout. 

• Long life, gold contact, full stroke key switches. 

• Aluminum enclosure insures stability of keys, 

• Easy installation — remove 4 screws and plug in. 

• Full Year Warranty — Made in U.S.A. — Low Price. 

flTTa-SQFT 



Send Check or 
Money Order to; 

A»eH«an 
.Express Accepted 



832 E. Third Street 

Galesburg. Illinois 6 1 40 1 

(309)343-4114 



Please add ^3,50 
Postage and Handlmg 
COD ^2.00 additional 

Atari is a trademark of Atari, Inc. 



ATARI® MHRi 






<^f?RT?frn^ f 


ATARI® 






' W^ 


OUR 


LIST 


C/JLi]L_J L L-LLj L 




OUR 


LIST 




PRICE 


PRICE 


k^ kv'taw' mr kv'bV hr' 




PRICE 


PRICE 


ADVENTURE INT'L 

Saga#1 (dj 


...26,50 


39.95 


COMPUTER SOFTWARE 


CONTINENTAL 

Home Accountant (d) ..... 


..43.50 


74.95 


Saga#2(d| 


...26.50 


39 95 






Tax Advantage (d) 


..39.50 


59.95 


Sea Dragon (d/c) 


...23.00 


34.96 




SPECIALS? 


INKOME 






ATARI 






NO 


.THESE ARE OUR 


B-Kev 400 .............. . 


..92.50 


119.95 


Qi>t(r) 

Dig Dug (r) . . 

Basic |r) . . 


...32.00 
...32-00 
...42.75 


44.95 
44.95 
59.95 


EVEF 


tYDAY LOW PRICES 


OPTIMIZED SYSTEMS SOFTWARE 
Mac/65 (d) 55.00 80.00 










: Disk C = Cass R : Can 


Basic A+ (d) . , . . , 


. . 55.00 


80.00 


BIG FIVE 








Prices Subject to Change 


C/65<dl 


..55,00 


80.00 


Miner 2049er(r),. 


...33.00 


49 95 


Sen 


d for Free Atari or Apple Catalog 


SYNAPSE 






BRODERBUND 






PkiniuP 


ORDERS: 
1-800 637-3095 


File Manager 800+ (d) 


..66.00 


99.95 


Bank Street Writer (d) .. . 


...46.25 


69.95 


r* n V TV c 


Page 6 (d) 


.23.00 


34.95 


Choplifter {r) 


. . . 29.75 


44-95 




Syn Assembler (d) 


..33.00 


49.95 


Serpentine (r) 


...26.50 


39.95 




lU AK, & HI Call: 
1*217-367-5774 


VISICORP 






CBS 

K-Razy Kriiters (r^ , . 

K-Star Patrol (r) 


..,26.50 
...26.50 


39.95 

39.95 




HRS.:9-6MON.-FR!. 
9-12 SAT 


Visicalc(d) 

ANCHOR AUTOMATION 

Mk II Modem 


175.00 
. . 76,00 


250.00 
99.00 


K-Razy Antiks(r)....,.,. 


...26,50 


39 95 












DATASOFT 

Zaxxon {d/c) 

Pacific Coast Highway 






MAIL OF 


IDERSTO: 


BITS 






. . . 26.50 


39.95 




SECTOR ONE 
1001 BRIGHTON 


80 col. Board . .... 

32k Board 


242.00 
.,69.00 


299.00 
80 00 


(d/c} 


...19.75 


29.95 




URBANA, 1161801 


ELEPHANT 






Sands of Egypt (d) 


...26.50 


39.95 






No 1 disks SS/SD........ 


..18.50 


30.00 


INFOCOM 






Add $200 


for postage and handling withm the 


MOSAIC 






Deadline (d) 


...33.00 


49.95 


continental 


United States Add S5.00 (or Canada or 


64k Board for 400 


145.00 


199.00 


Suspended (d) 


...33.00 


49.95 


Mexico, $6, 
minimum) 


25 for Alaska or Hawaii, and 1 5% (S 1 0,00 
or other international orders. APO and 


WICO 






Zork 1 (d) 


...26.50 


39.95 


FPO i% S4 


• Mastercard and Visa orders add 4% 














service cha 


rge (include card # and exp. date) • 


Joystick 


..21.00 


29.95 


SSI 






Personal cl- 


ecks and MO also acceptecj • Please 


Trackball 


,.48,00 


69.95 


Cosmic Balance II (d) .... . 


...26,50 


39.95 


specify corr 


puter type • MOST ORDERS SHIPPED 








Knights of the Desert 

(d/c»..... 


...26.50 


39,95 


WITHIN 24 


MRS • All orders must be in U.S. funds 


VERBATIM 

SS/SD disks 


..27.50 


49.00 


AND MUCH MORE 




Atarj IS d re 


gistered trademark of Atari, tnc. 


AND MUCH MORE 





; Entry: A-register contains the character 
; Exit: Status of all registers unknown 

*= LOWMEMORY 
PRINTCHARACTER 

LDX #COMMAND.PUTBINARY 
STX lOCB.COMMAND ; command far CIO 
LDX #0 ; use a zero buffer length 
STX lOCB.LOLENGTH ;tells CIO to output 
STX lOCB.HILENGTH ;contents of A register 
; next line commented out. ..not needed since X 

already =0 
; LDX #0 ; specify lOCB zero 

JSR CiO ; let CIO do the real work 
; Could check for errors here 
RTS ; all done 

Enough said? I refuse to decipher programs 
like Example 1. Of course. Example 2 wouldn't be 
very useful either unless equates for the various 
labels were supplied (as in lOCB. COMMAND = 
$342), but at least most readers couid understand 
its intent. 

Absolutely Not 

Regular readers will no doubt recall the many 
occasions on which I have ranted about staying 
out of Page 6 or about putting code at LOMEM or 
about writing code that is not specific to a particu- 
lar hardware/software configuration. But, to be 
fair, sometimes it is hard to follow all of the rules, 
especially when adapting a program from a book 
or magazine. 

Often, the real secret to writing adaptable 
code is in learning to write self- relocatable code. 
The techniques we will begin discussing this 
month are designed specifically for use with the 
6502 microprocessor. While there will be several 
references to Atari internal structure, most of 
what is presented here is appropriate to Apple 
and Commodore machines as well. 

And 1 will answer one more question before 
we start on the hard stuff: Why should we want to 
write self- relocatable code? Sorry, we don't have 
room for that answer this month. Wait until next 
month. (It's a good answer, honest!) 

Actually, there is just one rule to remember 
in writing self-relocatable code: avoid references to 
absolute iuenum/ locations. 

Unfortunately, this is often a very hard rule 
to follow. Fortunately, there are many places 
where we can make an exception to this rule. 

For starters, look at the subroutine in Exam- 
ples 1 and 2 above. Is it self-relocatable? Your first 
impulse might be to say no, since it references 
$342, $348, $349, and SE456, which are all absolute 
locations. And even if you do it right and use the 
equated labels of Example 2, theyare still absolute, 
no matter what they look like. 

But. Within the context of any given machine, 
there are alwavs certain locations which never 
change. In particular, hardware locations, loca- 
les COMPVTEi July 1983 



tions in ROM, and locations in the RAM (or values 
used and defined by ROM subroutines) cannot 
possibly change. An exception to this is when 
you plug in a new set of ROMs, and you can ask 
the software vendors about the fun and games 
the Atari 1200XL's new ROMs are giving them. 

In the example given, $E456 (CIO) is in the 
Atari's OS ROM space. It is a guaranteed entry 
point to the OS command implementation code. 
It won't change (even in the new 1200, etc.). 

And locations $340 through $34F (as well as 
$350 through $3BF) are in the lOCB space defined 
by Atari for use with CIO. Again, they won't and 
cannot change. 

Finally, the command used (11) and the zero 
buffer length are values defined by the OS ROMs 
to have certain meanings. And if Atari changes 
these meanings, we are all in trouble, because 
Atari BASIC, PILOT, and more won't work then. 

Implicit Relocatability 

The result of all this? No matter where you as- 
semble that example (that is, no matter where the 
"* = " places the code), the resultant machine 
object code will be precisely the same! Presto. 
That example is self- relocatable. 

Surprisingly, a lot of the subroutines used 
with Atari BASIC follow the mold shown here: 
they simply set up some values in the Atari- 
specified memory locations and call an Atari- 
specified OS routine. They are implicitly self- 
relocatable. 

So what is not relocatable? Generally, the 
prime culprits are: 

1. References to RAM locations defined within 
the user's own code (for example, LDA, ST A, 
INC etc.). 

2. Jumps (J MPs) to locations in the user's 
own code. 

3. Calls (JSRs) to locations in the user's own 
code. 

Let's make up an example just to illustrate 
potential problems. 

* = S600 
SAVEX*= * + l 
MESSAGE .BYTE This is the message',0 

; this is the same code as the examples above 

PRINTCHARACTER 

LDX #COMMAND.PUTBINARY 

STX lOCB. COMMAND ; command for CIO 

LDX #0 ; use a zero buffer length 

STX lOCB.LOLENGTH ; tells CIO to output 

STX lOCB.HILENGTH ; contents of A register 

JMP CIO ; let CIO do the real work 

call here to print contents of 'MESSAGE' 

Entry conditions: none 

Exit conditions: none, no registers saved 




lANGIIAGE 
UTIUTIES 

for MAM 400/800/1200. 



A 

i ?k>hu.jtf utility programs 

f^L^^ require no software 

^^^ modifications and are 
a must for all serious ATARI BASIC 
programmers. 

CASDUP 1.0 & 2.0 [o copy mo^t 
BOOT tapes and cassette d^ta files, 
1,0 is ti file copier. 2-0 is a sector 
copier. Ci-siette only S24,'i>5 

CASOIS To transfer most BOOT 
tapes and cassette data files to disk. 
Disi< onlv S24.95 

FULMAP BASIC Utility* Package. 
V M A P - V a r i a bl e c ross - r ef ere nee . 
CMAr-cot\stant cross -reference 
(ir\Liudes indirect address 
references), LMAP-Iine number 
cross-reference, FN I A P- a 11 of the 
above. Will list "unlistable" 
programs. Also works with 
Editor/Assembler cartridge to allow 
editing of string packed machine 
language subroutines. AH outputs 
may be dumped to printer. C.issette 
or Di?;k S39.95 

DISASMTo disassemble machine 
language programs. Works with or 
without Editor/Assembler 



cartridge. May be used to up or 
down load single boot files. All 
output can be dumped to printer 
Cassette or Disk S24. 95 

DISDUP For disk sector 
information copying, May specify 
single sector, range of sectors, or alk 
Copies mav be made without read 
varify DiskS24.95 

IJG products are available at 
computer stores, B. Dal ton 
Booksellers and independent 
dealers around the world. If IJG 
productsare not available from your 
local dealer, order direct. Include 
S4.00 for shipping and handling per 
item. Foreign residents add SlI.OO 
plus purchase price per item. U.S. 
funds only please. 

IJG, Inc. 1953 W. 11 th Street 
Upland, California 91786 
Phone: 714 946-5805 

KH^fromE? 
rrSJUSTGREAT! 

ATAHl TM lAarnvf Cofn mun iC 11 tOni - leiC 



<. 



Tit, 

Vie; 

i 



Lecvn to program the ATARI 



Three n&w ATARI books for the 
serioLsprogrammef and beginner, are 
now distributed by IJG, for use with 
the ATARJ 400 and BOO microcomputer 
systems, _^ y 

ATARI BASIC, LeaMng fusing. 
lis is an action bookTVou program 
'Jth it more than you read it. You usfl 
it, you discover with ii, you create It. 
Learn ATARI BASIC easily Ihrounli the 
short progisms provided. A great 
source of work problems Jor teacher 
or student. 73 pages. ISON 
3 92-t6e2-e6-XS5.95. 

Games For TIibATAAI. Provides 
ideas on how to create your own 
computer games, bontains primarily 
BASIC examples but. for very 
advanced programmers, a machine 
language example is include^f at the 
end of the book. 115 pages. IS8N 
3-9n6fl2-84-3 S7 J5, 

How to Program Your ATARI In 6U2 
Machine Language. To teach the 



novice computer user macjpne 
language, the use of an asS&dibKM; 
ani^rw to call subroutines from nie 
BA^ inttrpreter, 106 pages, ISBN 
3-92 1682-97-5 S9 95. 

IJG products are available at 
computer stores, B. Dalton 
Booksellers and independent dealers 
around the world. 

li IJG products are not available 
from your local dealer, order direct, 
include S4. 00 tor shipping and 
hrandling per Hem Foreign residents 
add $1 1 .00 plus purchase price per 
item. US. funds only please, 

IJG. Inc, 1953 W.I Uh Street 
Upland, California 91785 
Phone; 714/946-5605 

Ifit^freniE? 
irSJUSTGREAT! 

ATAflJ TM Wirn«f Comfnumceltoo}, fnc 




t 




ULTRA 
EXCITING 



emu DnYenLB | 



The caverns of the planet, Croga. hold the key to endless 
power — Star Crystals that amplify solar energy. To get to 
them you have to penetrate the Crogan defenses both on and 
under the surface. Once you capture a Crystal, you have to 
get it to the surface and go after another Each time it gets 
tougher and more exciting. For one or two players. 24K Disk, 
and Joystick; 16K Cassette & Joystick. 



Cat 
Cm Up! 



^^M!^J•^!^^;|Ji 



Life in the eerie f^uckedoo Swamp can be pretty rough, 
particularly if you're a defenseless Gorx. Alligators, snapping 
turtles, vampire bats and even ghosts come at you from every 
side with one goal — DINNER Bui, if you can make it across 
the swamp to the feeder station, you'll metamorphose into a 
Swamp Chomper who fights and bites back! 1-2 players. 24K 
Disk & Joystick; 24K Cassette & Joystick. 



AMAZING 
FUN DUO 



L 



I 



T 



I 




ANDROID challenges you to find your way out of a 5-story 
nnaze despite armed robots, earthquakes and hidden time 
bombs. In CAPTIVITY, you race the clock through mazes, 
armed with only a map and your robot's 3-D view. Varying 
levels of difficulty in each game. 40K Disk & Joystick with 
optional voice cassette. 



AWARD 
WINNING 



nxn 



I 



i 



imnB 



lo is a great voice-activated arcade game with three 
sequential adventures. 1) Navigate the alien mine field. 2) 
Defend fvloonbase lo. 3) Attack and destroy the mother ship. 
Winners get a personal Presidential Commendation from Earth. 
24K Disk, Cassette, & Joystick; 16K Cassette & Joystick. 



^..^ 



QippCT 'Aye-Aye. Captain' 



^ 



You're captain of a San Francisco-bound clipper ship in 
1850. And you're really in charge! You pick vessel, cargo, 
crew and course. Then, use your skills to overcome storms, 
icebergs, illness, delays, doldrums, mutiny and more. A voice- 
narrated high-adventure. 32K Disk, optional voice cassette, 
& Joystick; 24K Cassette & Joystick. 

Avaifat)le at leading stores or direct from PDl, atari is a trademark of Atari inc 




Program Design, Inc. 95 East Putnam Avenue, Greenwich, CT 06830 

Juty1983 COMPUnE! 189 



PRINTMESSAGE 
LDX #0 
STX SAVEX ; initialize message pointer 

MSGLOOP 

LDX SAVEX ; get current message pointer 
LD A MESSAGE, X ; get next character of msg 
BEQ QUIT ; but quit if it's last char 
jSR PRINTCHARACTER ; else print it 
INC SAVEX ; point to next character 
JMP MSGLOOP ; and do another character 



QUIT 



RTS 



; we are done 



Do you see the problem areas? If we move 
this routine somewhere else in memory, the ad- 
dresses of MESSAGE, PRINTCHARACTER, 
MSGLOOP, and SAVEX all change, and the object 
code associated with them changes also. This 
routine is definitely not self-relocatable. 

But let's tackle each of the problem labels one 
at a time and see how we can change the references 
to each to make the code self-relocatable. 

MSGLOOP is the easiest label to 'Tix/' For 
example, if we change the line JMP MSGLOOP to 
BNE MSGLOOP, the label MSGLOOP is no longer 
a problem (since ^7// branch instructions are always, 
by nature, self-relocatable). 

And we could save the X-register on the stack 
(via TXA and PHA) and later retrieve and incre- 
ment it similarly (via PLA, TAX, and INX), thus 
eliminating the need for SAVEX. 

The PRINTCHARACTER routine could easily 
be eliminated in its entirety by placing its code in- 
line in the middle of the PRINTMESSAGE routine. 
This is a good solution only if PRINTCHARACTER 
is not called by any other routine. It may also be 
an adequate solution if the routine being placed 
in-line is fairly small (as is PRINTCHARACTER) 
so that you can keep two or more copies around, 
if necessary. 

But what do we do about MESSAGE, which 
is too big to put in a register? Or what would we 
do if PRINTCHARACTER was a long routine? 
And, most importantly, what do we do with a 
hunk of self-relocatable code once we have 
managed to produce it? 

Next month we'll tackle those questions and 
others. 

A Handy Product? 

Do you do much work on botli Apple II and Atari 
computers? If so, you could probably use a handy- 
dandy little device which we recently acquired. 
Allen Prowell of Fresno, California, built us 
what amounts to an intelligent cable between our 
Apple and our Atari. It plugs into the joystick 
port on the Atari and into the game port on the 
Apple. It transfers ASCII files in either direction 
(doing 'light conversion" on return characters, 
etc.). Verif fast. It is much more convenient and 
reliable than using RS-232, and it moves over 1000 

190 COMPUTE! July 1983 



characters a second, including disk accesses. 

As I said, this is a specialized product, but if 
you need it, call Allen (209) 227-4917. Using our 
C/65 and M AC/65 on both Atari and Apple, we 
havx^ converted an 8K program in as little as two 
hours, including the transfers, assemblies, etc. 

Coming Attractions 

1 think next month's column will be fairly long, 
what with the last part of BAIT and Part 2 of self- 
relocatable machine language. If I have room, 
though, I will introduce you to a new Atari 
graphics mode. Also, coming soon, information 
on some strange and wcjnderfiil new products for 
the Atari. C 



Maxell Floppy Disks 

The Mini-Disks 
with maximum i 
quality u 

Dealer inquiries invited. C.O.D's accepted. 
Call FREE (800) 235-4137. 





PACinC EXCHANGES 

KWJ Foothill Blvd 

Ol call (S( Hit S^>2.^<H-|..f 



ENHANCE YOUR ATARI 810 

HAPPY 810 ENHANCEMENT 

Speed up program development, loadiny, execution, and copyiog time by reading 
disks up to 3 times faster. Complete compatihility with existing software, with 
faster disk initialization, and reduced w^ar un the disk drive mechanism. No 
soldering or trace cutting required, complete installatmn instructions included, 
or contact your dealer. Diagnostic progranv included. 

SOFTWARE ENHANCEMENTS (require HAPPY 810 ENHANCEMENT) 

HAPPY BACKUP PROGRAM 

Guaranteed to produce executable backup copies of any disk which can be read 
with a standard ATARI 810* disk drive. Backup those important disks in your 
library or use HAPPY BACKUP for small scale software produclion. Com- 
pletely automatic duplication of format and data content of the source disk. 
Single and multiple drive versions available. Backup copies will work on a drive 
without the enhancement. 

HAPPY COMPACTOR PROGRAM 

Combines self booting programs which reside one per disk into one disk with 
many self booting programs usmg the HAPPY COMPACTOR file structure. 
Programs are then executed from the self booting HAPPY COMPACTOR 
menu, and may later be extracted back onto a single disk. Compacted programs 
disk will execute only on a drive which has the HAPPY 810 ENHANCEMENT. 
Pays for itself by reducing the riumber of backup disks you need, in addition 
to the added convenience. 

HAPPY CUSTOMIZER PROGRAM 

User friendly program to generate source dtsks with custom track forniat. 
Format is specified on a pei track basis. Examples of usage and interpretation 
of results are included. This system requires a mare advanced level user, 

HAPPY 810 ENHANCEMENT WITH SINGLE DRIVE HAPPY BACKUP SZ49.95 

MULTIPLE DRIVE HAPPY BACKUP PROGRAM S 49.95 

HAPPY COMPACTOR PROGRAM , S 49.95 

HAPPY CUSTOM IZER PROGRAM S 99.95 

tALl UH WRITE FOR OHUtHJ^r, l^F iHU' AT^i'JN Sutry. m COO < 

HAPPY COMPUTING 
P.O. Box 32331 
San Jose, CA 95 152 [ 
(408)251-6603 * 

* AT AH ) » I D >i J Ui<ir,„nt ^r A T A Fii i -« 




EASTCOAST SOFTWARE 



tC^O. • • itifliitif*n fit 



ATARI 
SOFTWARE 



SOFTWARE UST sau 

650Z D[sfl!wmb!eT 24KD - S14.95 SlO 75 

A!i Bftbft & Fort j^ Thl«v« 3ZKD 32 93 £2 80 

Alltn Ambuih D , . . . , ,29.95 2070 

AllinSwarm 16KC 29 95 20 95 

Alpha Sh:«]dR 34,95 24 60 

Anil-Sub Patrol D . . . 29 95 20 70 

AntlSubPfltfolC 19,95 13 75 

Apple Panic C/D 29,95 20 70 

Atari Ba»!c BKR .59.95 45 40 

Atari Home hventory D , 24.95 IB 05 

Atari Household Finance D 39 95 30 15 

Atari WritffrR 79,95 62 00 

Attack At EP'CYG-4 D 32.95 24 90 

Attack A: EP.CYa4 C 29 .95 20.95 

Avalanche C/D -.22.95 17,75 

Bandits 4SKD ..,..,.,.. 34.95 24.15 

Baseball 16KC , 2995 20 95 

BasScA* 32KD 80.00 60 00 

BasSc Compiler 32KD 99.95 70 00 

Battle For Normandy C/D 39 95 28 90 

Battle of Shiloh C/D , 39.95 28 90 

Book;*e«per48KD 149.95 116 25 

Candy Factory D 29.95 20 70 

Canyon Climber C/D 29.9S 20,95 

Castle Wo'fenitein D , . . , . , ,29.95 20 95 

Centipede 8KR 44.95 34 75 

ChB«48KD .69.95 4950 

Chopmter48KD .34.95 24.t0 

Claim Jumper C/D .34.95 24 15 

Claim Jumper R .....44.95 31. 15 

Clo-^ns & Balloons C/D 29 95 20.95 

Commbat 24KD .................. .24.95 17.90 

Communicator Kit R 27995 235.00 

Compu-Maih/ Fractions 32KC 29.95 20 70 

Compu-Math/DeclmaU 32KC 29.95 20 70 

Compu-Read 48KD 2995 20 70 

Controller 32KD .30.00 2070 

Conveiiiatlonal French 16KC .59.95 46 40 

Cosmic Balance 48KD 39.95 28 90 

Crossfire C/D ........ , . ,29.95 2070 

Crossfire 8KR 44.95 31.10 

Crush, Crumble & Chomp C/D 29.93 2070 

Danger in DrindistiC/D 19.95 1375 

Data Perfect 32KD . .99.95 70,30 

Dfltasm 55 2 48KD .99.95 70.00 

David's Midnght Magic 48KD 3495 24 15 

Deadline 32KD 49.95 34.50 

Deadly Duck R 34 95 24 55 

Defender R . 44,95 34.75 

Delia Drawing D . 59.95 43.05 

Deluxe Invaders 16KR 39.95 27.60 

Dig Dug R 44.95 3475 

Dtsk Manager 32KD 29.95 20.95 

DEskey32KD .49.95 35.50 

Dneiper River Linc40KD , 30.00 20.95 

Dog Daze C/D .22.95 17 75 

DrelbsR ,44.95 31.10 

Drelb^ C .34.95 24.20 

Eastern From C/D 29.95 23 25 

Edit 6S02 32KR 199.95 145 00 

Empire of the Overmind C/D , , . . 35 00 2420 

EPVX 3-Pack D 49.95 34.50 

ET Home Phone R . . , . .49.95 3875 

Face Maker D 34.95 24.75 

Family Finance D .49 95 38,75 

Fantastic Voyage R 3495 24.60 

Fast Eddy R 34.95 24.55 

File It 2 System 24KD 49.95 35.50 

File Manaser 800+ 40KD 99,95 69,00 

FlipOutD ...29,95 20 95 

Fort Apocalypse C/D 34 95 24 75 

Fon Apocalypse R 44 95 31 10 

FroggerC/D 34.95 24.10 

GalajcanR. 44 95 34 75 

GFS Sorceress 40KD 35,00 24,20 

GFS Sorceress 48KC 30 00 20,70 

Gorf 16KD .39,95 27,60 

Gorfl6KR 44 95 30 80 

Home Accountant O .74.95 48.05 

Home Filmg Mdrwger 32KD 49,95 38,75 

Home Financial ManagemenI C .29,95 23.00 

HomcManagt-rKiiD 79,95 62,00 



SOFTWARE UST sale 

Invltailor. 10 Programming 18KC S24 95 S19 25 

Invitation to Programming 2 8KC 29 95 23,15 

invitation to Programming 3 8KC 29 95 23.15 

It-liBal!oonC/D 34,95 24 75 

Jawbreaker C/D 29.95 20.70 

Jenv White's Music Lewoni C/D 29, 95 20.95 

Journey to the Planets C/D 29,95 20.70 

Jumbo Jet Pilot R , .49,95 38.30 

K.DOS32KD 89,95 62,75 

K-RA2Y Amiks 8KR . . . , , . .49.95 35.50 

K-RAZY Kritters 8KR 49.95 35.50 

K-RAZY Shootout 8KR 49.95 35.50 

K-Star Patrol BKR 49.95 35.50 

Keys of Acheron C/D . , 19,95 13,75 

KmdercompD , , , 34.95 25,45 

Lw^rMweC 29.95 20,70 

Lener Perfect 24KD 149.95 103,60 

Lunar Leeper D 29.95 20,70 

M.A.S.H.R 39.95 27,60 

Mall Merge/Utility 16KD 29.95 20, 70 

Master Type 32KD .39.95 27.60 

Microsoft Basic 32KD 89.95 70,00 

Midway Campaign 32KC , 16.00 11.50 

Miner 2049er 16KR 49.95 35.50 

Moon Base 10 C/D 29.95 20,95 

Modoc's Tov^er C/D 19.95 13,75 

Nautilus C/D .34.95 24. 15 

Outlaw/ Howiuer C/D 22.95 17.75 

PacManSKR .44.95 34.75 

Pacific Coast Hlghirav C/D 29.95 20.95 

Pinball D 29-95 20.95 

Pool 1,548KD ■ .34.95 24 10 

Pool 400 15KR 39.95 28.90 

Preparation for the SAT 16KC ....... 125.00 90, 00 

Preppie 32KD 29,95 20.70 

Preppie I6KC 19.95 13.75 

Preschool IQ Builder 24KD 23,95 17.00 

Preschool IQ Builder 16KC 16.95 12.00 

Programmer Kit 8KR 69.9S 57.85 

Protector II C/D 34,95 2415 

Protector 11 R ..44.95 31.15 

Q.S, ReverslD .29.95 20.70 

Rear Guard 24KD ' 24.95 17.25 

RearGuard 16KC 19,95 13.75 

Rescue at Rigel C/D 29.95 2070 

S.A.M.8KD .,..59.95 41.45 

Sea Dragon D .34.95 24 15 

Sea Fox 48KD 29,95 20.95 

Serpentine C/D 34,95 24.15 

Shamus C/D 34.95 24. 10 

ShamusR. . .44.95 31.15 

SlimeC/D 34.95 24.15 

Slime R 44,95 31.15 

Srtake Bvte 48KD 29,95 20.70 

Snooper Troops *1 D ............. .44.95 33,00 

Snooper Troops 'SO .44.95 33.00 

Space Invaders 8KR 34 95 28,45 

Spell Wizard 48KD 79,95 60 00 

Souish 'Em R 39.95 27 60 

Star Raiders 8KR 4495 3475 

Star Warrior C/D 39,95 27.60 

Siarcross32KD 39 95 27,60 

Storv Machine D . 34.95 24.75 

Submarine Commander R 49 95 38 30 

Tankttcs 32KD 29,00 20,00 

Temple of Apshai C/D 39 95 27 60 

Text Wizard32KD. 99.95 70.00 

Threshold 40KD 39 95 27 55 

Tqers in she Snow C/D . 39 95 28 90 

Ultima H48KD 59 95 4140 

Ulysses & The Golden Reece 40KD 34 95 24 10 

Upper Reaches of Apshai C/D 19 95 1375 

VC40KD 25 00 17 90 

Visicalc (Special Price) 32KD 250.00 172.00 

Way Out 48KD 39.95 27,55 

Wieard of Wor 16KD ,39.95 27.60 

Wizard of Wor 16KR 44.95 31 00 

ZaKxonD 39.95 27,60 

Zaxxon C .39.95 28,90 

Zork 1 32KD .39.95 27,60 

2orkll32KD, 39.95 27,60 

Zork III 32KD .39 % 27 60 



EASTCOAST SOFTWARE 

110 West Caracas Avenue 
Hershey, PA 17033 



(717)533-8125 




HARDWARE ust sale 

12 Joystick Extension Cord 1995 S7,75 

Amdek 12' Green Monitor 179.00 148 75 

Amdek Color I Mntr ,399.00 336.25 

Atin 16K RAM Module 99 95 86 25 

Atan Cart Flip-NFile 29 95 18.85 

Atan Joysticks (Pair} 19 85 12. 85 

Atari Joystick (Single) 995 6.45 

Atari Paddles 14 95 11.50 

B Key 400 Keyboard . . , . , 119 95 99,00 

Hayes Smartmo<iem 300 289.00 215.00 

Intec 16K RAM Card (400/800) 60 00 45 25 

Intec 32K RAM Card (400/800) 90 00 65 35 

Intec 4aK RAM Card (40O1 1 15.00 86 70 

LEStick 39 95 29 13 

Microiekl6K Memory Board 99 50 67 86 

Microtek 32K Memory Board 139 50 93 00 

MPC 32K Memory Board 139.50 107 00 

MPC BSR Controiter 159,50 122 30 

NEC 1201 12" Green Mntr 285.00 159 00 

NEC 1212 Color Mntr 39900 310 00 

NEC 1260 12" Green Mntf ......... 149.95 1 25,00 

NEC 8023 Prinrer 645 00 475 00 

Parallel Printer Cable 39 50 32 75 

Percom Add-On Driue 439.00 376 50 

Percom AT-SS-S 1 Drive 48800 463 75 

Percom First-Drive 699.00 597 60 

Prowriter 2 1550 P Printer 995.00 750 00 

Prownter 8510 AP Printer 595.00 500 00 

Quickshot Joysticks 19.95 14. 15 

Sanyo 12 ■ Green Mmr .260.00 198.75 

Sanyo IT Color Mntr 470.00 390.00 

Sanyo 9" Green Mntr 200.00 155.00 

Serial Modem Cable 39.50 28-50 

Serial Printer Cable 34.50 28 50 

Swnalman Atari Modem MK II .99.00 8 1 . 50 

StaruTiier F 10 Primer 1895.00 1 562 50 

Ta>can 12" Amber Mntr 179.00 136 95 

Ta^an 12" Green Mnlr 169 00 124 40 

TGTrakBait 64.95 46 00 

USIPI-2 12" Green Mmr 210,00 154 55 

US! PI-3 ir Amber Mntr 249.00 162 00 

US! Pf -4 9 ' Amber Mntr 215. 00 154 55 

WICO Joystick .29.95 22,50 

WICO Joystick Deluxe . 39 95 27 50 

WICG Red Ball Joystick 34 95 25 00 

WtCO Trackball , 69 95 52 50 

SUPPLIES UST SALE 

Atan Disk FlipN-File $29.95 $18 15 

Dysan Disks 60.00 4 1 50 

Elephant Disks (SS/SD) 34.00 21 .90 

Elephant Disks (SS/DD) 37.00 25 00 

Epson MX-lOO Ribbon , . 25.00 16,65 

Epson MX'80 Ribbons (2) .28.00 12.55 

Head Cleaning Kir , 29,95 19 20 

Maxell MDl Disks 51.90 30,00 

NEC 8023 Ribbons (2J 19,95 17 10 

Printer Paper 20' Pert. 32.20 

i + Shipping) 

Smith Corona TP Film Ribbon 7.95 6 35 

Slarwnter Nylon Ribbon 5,75 4 65 

StaruTiter Film Ribbon 5 50 4 50 

Trunk Disk Storage ...,...., 29 95 21 50 

Verbatim MDS25 Disk^ 49 00 28 90 

BOOKS LIST SALE 

■A:an Basse Reference" Book 510 95 $8 50 

■A:ari Basic" Book 10 95 8 50 

' ' A:art Ga mes & Recrea I i on " Book 1 4 95 1 1 50 

■ "Atan Pilot For Begi nne r s' ' Book 1 4 95 1 1 50 

Atari Sounds & Graphics" Book 9 95 8 25 

"Book of Alan Software S3" Book 19 95 12 80 

"Ksdsand the Atari" Book 19 95 15 90 

"Technical User Notes" Book 29.95 23 75 

"The Atari Assembler ' Book 12 95 9 95 

"Your Atari Computer ■ Book 16 95 13 00 

Key: (D) DisJk, iC) Cflvw-'tu- [Hi Hyni Caruidge 

Many morr tiUes a&aUablt: We alto cany a fuU tine of 
Apple Saftivare. 

Alotr u a regnterfil Iradrmark of ATARI COMFVTEH INC 



Shipiiint; I 'V> l'»2,ri<l iniiij 

C .(),!). Add All Addiiioii.il S2,rin 

lorrmn IVOM'l) (Jrdrrs VVr Shiji 

ir M.iil.Atld 7":, (U.^ ( iirrriuv ()r«lv) 

Nil Miniiiiiiiii Orilft 

Visrt-M.istt'rirfr<i C .( ) D. C Im'< k 



July1983 COMPUTE! 191 



MACHINE LANGUAGE 



Jim Butterfield, Associate Editor 



Part in 



Numeric Output 



There's a quick method of generating decimal 
output on the 6502. It's a notable departure from 
conventional methods, and it would be worth- 
while to lay down a few general ideas. 

Shift Transfer 

Suppose we have two bytes, OLD and NEW. 
OLD contains a value, and NEW contains zero. 
We want to transfer the contents of OLD to NEW, 
and set OLD to zero. That's not hard by con- 
ventional coding (a couple of Load and Store 
commands), but we're going to look at another 
method. 

Suppose that we shift each bit out of OLD, 
and then shift it into NEW. Using a left shift, we 
would code: ASL OLD (arithmetic shift left), which 
puts the extra bit into the carry; and then ROL 
NEW, which slides the carry bit into the new byte. 
If we repeat this eight times, OLD will have moved 
to NEW, bit by bit. It seems like a slow way of 
doing it, but it does indeed achieve what we want. 

The same method, of course, would move a 
two-byte OLD to NEW, or as many bytes as we 
need. Each bit shift would consist of one ASL 
followed by several ROL commands until the job 
is done. 

A New Way To Rotate 

The ROL (Rotate Left) command is compact and 
handy. It takes the contents of the Carry flag and 
moves it into the low-order bit position of the 
operand; all other bits move over to make room, 
and the high-order bit falls out into the Carry. 
Now let's do the same thing without using the 
ROL command. 

The ROL command might be considered the 
same as multiplying by two plus adding a carry, if 
necessary. We often use the left Shift and Rotate 
commands for multiplication. But there's another 
way to multiply: we can use repeated addition. 

We can do exactly the same as ROL NEW by 
coding: LDA NEW: ADC NEW: STA NEW. The 
original number is doubled, which gives the left 
shift, and the carry is automatically added in. A 

192 COMPUTE! July 1983 



new carry condition is generated. AH we seem to 
have done is use three instructions where one 
would have done. 

The Gimmick 

But here's the gimmick: we can make the ADC in- 
struction add in a different manner by switching to 
decimal mode. In decimal mode, addition auto- 
matically produces BCD numbers. And BCD num- 
bers can be printed as if they were hexadecimal, 
which greatly simplifies the output calculation. 

Let's work this out in principle. First, a 
warning: on many machines, decimal mode is 
poisonous to the operating system and to the 
interrupt routines. Remember to restore binary 
mode when you're finished; and if your machine 
uses interrupt, lock it out for the duration of your 
calculation. 

Let's look at simple coding to change a one- 
byte OLD to NEW: 



LDA 


#$00 




STA 


NEW 


(clear NEW) 


LDX 


#$07 


(eight bits) 


ASL 


OLD 


(grab a bit) 


LDA 


NEW 


(slip it..) 


ADC 


NEW 


(..into..) 


STA 
DEX 


NEW 


(...NEW) 
(countdown) 


BPL 


BIT 


(next bit) 



If we are in binary mode, the above routine 
will copy OLD to NEW unchanged. But if we 
switch to decimal mode, OLD will be converted 
to BCD as it is moved to NEW. 

A warning here: the result might not fit. A 
one-byte binary number might need to be con- 
verted to three decimal digits (for example, 250). 
In this case, we'd need to have two bytes available 
in NEW to hold the result, since BCD holds only 
two decimal digits per byte. Be sure your coding 
provides for sufficient space for the answer. 

An Example 

Let's write the outline of a routine to convert a 
series of 16'bit numbers to decimal and output 



Take This Ad To Your Nearest Typewriter Or Computer Dealer! 



^■^ I INTERFACE ^ ^ 




Translates computer "language^ 

to electronic typewriter "language, 

Your electronic typewriter is now 

a letter quality printer 

for your computer 




WHEN YOU BUY SUPERCORD^^ 



SuperCord is the only patent approved interface that 
can turn your electronic typewriter into a letter 
quality printer for your micro-computer. If your 
computer is RS 232 C, Centronics Parallel, or IEEE 
488, there's a SuperCord for your Adler, Royal, 
Smith Corona, Silver-Reed, Hermes, Brother, or 
Facit electronic typewriter.* 



If your dealer hasn*t heard about SuperCord, show 
him this ad and have him order a SuperCord for you 

from any one of the distributors or representatives 
listed in this ad. When you receive your SuperCord, 
send us this ad, your original store receipt showing 
the SuperCord model and serial number and we'll 
send you a rebate check for $25.00. 



Southern California 

Gary Lubin & Associates 
6518 Fulton Avenue 
Van Nuys. California 91401 
(213) 506-4536 

Northern California 

Golden Gate Marketing 
218 Miio Place 

San Ramon, California 94583 
(415) 828-6127 

South East 

Sy Pels 

1209 Woodcliff Drive 
Dunwoody, Georgia 30338 
(404) 396-0500 



REPRESENTED NATIONALLY BY: 
Northwest 



Florida 

Seaman Sales 

3600 C Hacienda Boulevard 
Ft. Lauderdale. Florida 33314 
(305) 944-1341 

New York Metro 

Roth-Paris Marketing Inc. 
2 Hudson Street 
Marlboro, New Jersey 07746 
(201) 780-6580 

Delaware Valley 

Casele Associates. Inc. 
296 Evergreen Ave. 
Warminster, Pennsylvania 18974 
(215) 441-4640 



Mike Pallansch 

9021 Evergreen Way. Suite 108 
Everett, Washington 98204 
(206) 347-1689 

Midwest 

J.W. Horness 

18957 Fruitport Road 

Spring Lake Michigan 47456 

(616) 842-4367 

New England 

Pro Marketing, Inc. 
892 Worcester Road 
Wellesley, Massachusetts 02181 

(617) 237 4890 



Plains States 

Audio Marketing, Inc. 
1102 Main, Suite C 
Grandview, Missouri 64030 
(816) 763*2001 

South West 

Simon/Shapro & Assoc. 
690 N. Glenville 
Richardson, Texas 75081 
(214) 699^8698 

Ohio Valley 

Astro Kam 
672 Alpha Dr. 
Cleveland, Ohio 44143 
(216) 4614500 



DISTRIBUTED BY: 
B.A. Pargh Co., Inc. Ames Supply 

1280 Murfrecsboro Road 
Nashville. Tennesse 37217 
(615) 361 3600 



2537 Curtiss Street 

Downers Grove, Illinois 60515 

(312) 964-2440 



*See your dealer for exact model number. Rebate program ends August 31, 1983 



them. We'll write the code in compact form so as 
to emphasize the logic flow. 

Set up Y to reach several numbers: 

LDY#o 

Copy a number into the work area: 

A: LDA TABLE, Y:STA WORKiLDA TABLE-f 1,Y: 
STA WORKl 

Move Y to reach the next number, clear output 
area: 

INY:INY:LDA #0:STA OUTlrSTA OUT2:STA OUT3: 
STA ZSUP 

Get ready to move 16 bits from WORK to OUT: 

LDX #15 
Move bit out of WORK: 

B: ASL WORK:ROLWORK1 

Switch to decimal mode: 

SEi:SED 
Move bit (decimally) into OUT: 

LDA OUTl:ADC OUTl:STA OUT! 
LDA OUT2:ADC OUT2:STA OUT2 
LDA OUT3:ADC OUT3:STA OUT3 

Clear decimal mode: 

CLD:CLI 
Repeat for next bit: 

DEXrBPL B 

Prepare to output three bytes (six digits): 

LDX #2 

Get bytes, high order first, for output: 

C: LDAOUTl,Y:PHA 
Output high order digit: 

PHA:LSR:LSR:LSR:LSR:JSR PUT:PLA 

Output low order digit: 

AND #$OF:]SR PUT 

Go for next byte: 

DEXrBPL C 
Print RETURN: 

LDA #SOD:|SR PRINT 
Go back for another number: 

CPY #10:BCC A 
Quit: 

RTS 
Zero suppress output subroutine: 

PUT: CMP ZSUPiBNE D 
Fill with space: 

LDA #S20:BNE E 
Convert numeric, kill zero suppression: 

D; ORA #$30:STA ZSUP 
194 COMPUTE! July 1983 



Print and return: 
E: JMPSFFDZ 

Let's put the above into a PET/CBM/VIC/C64 
environment to see it work: 

100 DATA 160,0, 185,80,3, 141,64,3 

110 DATA 185,31,3, 141,65,3, 200,200 

120 DATA 169,0, 141,66,3, 141,67,3, 141,68,3 

130 DATA 141,69,3, 162,15, 14,64,3, 46,6 

5,3, 120, 248 
140 DATA 173,66,3, 109,66,3, 141,66,3, 1 

73,67,3 
150 DATA 109,67,3, 141,67,3, 173,68,3 
160 DATA 109,68,3, 141,68,3, 216, 88, 20 

2, 16,216 
170 DATA 162,2, 189,66,3, 72, 74, 74, 74, 74 
180 DATA 32,184,3, 104, 41,15, 32,184,3, 

202, 16,236,169,13, 32,210,255 
190 DATA 192,10, 144,155, 96, 205,69,3, 

208,4, 169,32 
195 DATA 208,5, 9,48, 141,69,3, 76,210,255 
200 FOR J=848 TO 968: READ X 
210 T=T+X;POKE J,X 
220 NEXT J 

230 IF TO10738 THEN STOP 
300 SYS 848 

The numbers that are printed won't have any 
special meaning, but you'll see that conversion is 
taking place, and that zero suppression works 
nicely. 

Converting binary numbers to BCD in prepa- 
ration for output isn't really a gimmick. It's a sen- 
sible way to do an otherwise difficult job. © 



O ^ 1/ MEMORY 
VAK EXPANSION 
^■^■^ BOARD 

tKL VIC-20 



tKL VIC-20 

ORDER FACTORY DIRECT 

$119.95 

ADD $2.00 FOR POSTAGE & HANDLING 
TEXAS RESIDENTS ADD 5% SALES TAX 

• PLUGS INSIDE VIC-20 
LEAVES EXPANSION SLOT FREE 

• USES HIGHEST QUALITY PARTS 
- 90 DAY WARRANTY 

COMPLETELY ASSEMBLED 
NO SOLDERING 

DUNAMIC TECHNOLOqiES 

2104 CHALICE ROAD 

ARLINGTON, TEXAS 76014 

(817)261-8363 

VIC-20 is a registered TM of Commodore Business Machines 



COMPUTEI's 
Machine Language For Beginners 



Table of Contents 



.V 

. vii 



7 
23 

37 

53 

63 

91 

97 



Author; Richard Mansfieid 
Price; S 12,95 
On Sale: Now 

One of the most exciting moments in com- 
putfng is when a beginner writes his or her 
first program whrch actually worl<s-.- usually 
after hours of effort. A new world opens up. 

But as beginners grow into intermediate 
programmers and become more fluent in 
BASIC, they realize the language's limirations 
- slow speed, and the lack of total control 
over the Inner operations of the computer. 
They often develop an admiration for the 
fast, smoothly running machine language 
programs that mark commercial software. 
Unfortunately, too many people view ma- 
chine language as mysterious and forbidding, 
and they are reluctant to tackle it themselves. 

OOMPUTEI Books' latest release. 
Machine Language For Beginners, by 
Richard Mansfield, introduces newcomers 
to the challenges of machine language 
with a unique approach. Aimed at people 
who understand BASIC, Machine Language 
For Beginners uses BASIC to explain how 
machine language works. A whole section 
of the book explains machine language in 
terms of equivalent BASIC commands, (f 
you know how to do \i in BASIC, you can 
see how It's done in machine language. 

Machine Language For Beginners is a 
general tutorial for all users of computers 
with 6502 microprocessors - with examples 
for the Commodore 64, VIC-20, Atari 400/ 
800/1 200XL Apple 11, and PET/CBM. The 
numerous machine language programs 
will work on 3\l these computers. 

As a bonus. Machine Language For 
.Beginners includes something that all fledg- 
ling machine language programmers will 
need to get started - an assermbler. The 
"Simple Assembler," written in BASIC for 
the various computers, takes the tedium 
out of entering and assembling short 
machine language programs. The book even 
explains how to use the built-in machine 
language monitors on several of the com- 
puters. And It includes a disassembler pro- 
gram and several monitor extensions. 

This book fills the need for a solid, but 
understandable, guide for personal com- 
puting enthusiasts. Mansfield is Senior 
Editor of COMPUTEf. His monihly column, 
'The Beginner's Page," has been one of COMPUTEI's most popular features. 

in the COMPUTE! tradition. Machine i-anguage For Beginners has been written 
and edited to be straightforward, clear, and easily understood, it is spiral-bound 
to lie flat to make it easier to type in programs. 

Available at computer dealers and bookstores nationwide. To order directly call TOLL FREE 800-334-0868. In North Carolina 
call 9 1 9-275-9809. Or send check or money order to COMPUTE! Books, P.O. Box 5406, Greensboro, NC 27403. 

Add %2 shipping and handling. Outside the U.S. add S5 for air mail, S2 for surface mail. All orders prepaid. U.S. fu/ids only, 

^ ^ ' y JUV1983 COMPUTE! 195 



Preface . . . . , 

Introduction - Why Machine Language? 

Chapter I : How To Use This Book 

Chapter 2: The Fundamentals 

Chapter 3: The Monitor 

Chapter 4: Addressing, 
Chapter 5: Arithmetic 

Chapter 6: The Instruction Set 

Chapter 7: Borrowing from BASIC 
Chapter 8: Building A Program ........ 

Chapter 9: ML Equivalents 
Of BASIC Commands 

Appendices 

A: Instruction Set ._....._ , 

B: Maps 

C: Assembler Programs 
D: Disassembler Programs 

E: Number Charts 

F: Monitor Extensions 

G: The Wedge 

Index . . . 



. 121 

149 
167 
223 

237 
243 
253 
335 

339 



PBOGRAMIVIING THE Tl 

C Regena 



Planning Color Sets 



In a previous column we looked at defining char- 
acters for graphics. Let's expand on that idea and 
discuss in more detail how to plan the color sets 
for high-resolution graphics. 

To define colors for your graphics, use the 
CALL COLOR statement. The form is CALL 
COLOR(s,f;b) where s is the set number, f is the 
foreground color, and b is the background color. 
Each of the numbers can be from 1 to 16. Each 
graphics character you define can have two colors 
(a foreground color and a background color) cho- 
sen from the list of 16 colors. 

The Color Sets 

There are 16 color sets. Each color set contains 
eight character numbers (ASCII codes). The table 
shows which ASCII character codes are in which 
color set. You may find it handy to mark off these 
sets on the "Character Codes" table on the BASIC 
Reference Card that came with your computer. 
Just make a mark after every eighth number, then 
number the sets so you can tell at a glance which 
character is in which set -and which other char- 
acters are in the same set. 



Color Sets 



Set Character Codes 

1 32-39 

2 40-47 

3 48-55 

4 56-63 

5 64-71 

6 72-79 

7 80-87 

8 -88-95 



Set Ctiaracter Codes 



9 
10 
11 
12 

n 

14 
IS 
1€ 



96-103 
104-111 
112-119 
120-127 
128-135 
136-143 
144-151 
152-159 



Now try this short program to see how the 
CALL COLOR statement works: 

100 PRINT ''HELLO THERE I " 
110 PRINT"THIS IS A SAMPLE.** 
120 CALL COLOR(5,7,l) 
130 GOTO 130 

RUN the program. Lines 100 and 110 just print 
some words on the screen. By the way, we didn't 
use a CALL CLEAR statement, so the program 
will also still be on the screen. The screen turns 

196 COMPUTES July 1983 



green when the program starts to run. Line 120 
says to change all characters in set number 5 to a 
red foreground (color 7) and a transparent back- 
ground (color 1). Line 130 holds the colors on the 
screen until you press FCTN 4 to CLEAR or stop 
the program (SHIFT C on the TI-99/4 console). 
You will notice when you RUN the program that 
the screen turns green, and then all the letters in 
Set 5 {(a ,A;B,C,D,E,F,G) turn red. Color 1 for the 
transparent background means that the back- 
ground for the character will be the screen color. 

Stop the program by pressing CLEAR. 
Change line 120 to 

120CALLCOLOR(5,6J) 

The letters turn blue. Go ahead and try different 
colors for the second number in parentheses. 
Now experiment with background color. 
Add these lines to your program: 

130 FOR DELAY^l TO 100 

140 NEXT DELAY 

150 CALL COLOR(6,7,16) 

160 FOR DELAY^l TO 100 

170 NEXT DELAY 

180 CALL COLOR(6,16,7) 

190 GOTO 130 

Lines 130-140 and 160-170 are delay loops. 
RUN the program. Line 120 changes the letters in 
Set 5 to whatever color you specified. Line 150 
changes the letters in Set 6 (H;iJ,K,L,M,N,0) to 
a red (7) foreground and a white (16) background. 
Each character will look like a red letter on a white 
square. After the delay loop, line 180 changes the 
letters in Set 6 to a white foreground and a red 
background - now white letters on red squares. 
Line 190 branches to the delay loop in line 130, so 
the letters in Set 6 blink red on white then white 
on red. 

Screen Changes 

Notice that as soon as you use a CALL COLOR 
statement, all characters in that set change cok^r - 
those already on the screen and any that you may 
later print or draw on the screen. Careful planning 



is necessary so you know exactly which characters 
you are defining to be certain colors. 

If you would like to change the screen color, 
use CALL SCREEN(c), where c is a color number 
from 1 to 16. For example, add line 90 and run 
your program: 

90 CALL SCREEN(12) 

Keep in mind that anywhere you have used the 
color number 1, for transparent, it really means 
the screen color. 

Now try another special effect. Add line 125: 

125 CALL COLOR(l,2,8) 

This changes all characters in Set 1 to black on 
cyan (instead of black on transparent). RUN the 
program. The "space" is Character 32 in Set 1, 
and all spaces have been turned to cyan. The 
screen is light yellow from line 90, so you get a 
border around a cyan rectangle with various colors 
of letters from the rest of the program. 

The default value of all character sets is black 
on transparent, so the letters on the screen are 
black on the screen color of yellow. If you w^ould 
like a complete cyan rectangle with black letters 
on the cyan background, the character sets would 
need to be changed to black on cyan. 

Keep in mind that it does make a difference 
in your programming whether you print first then 
define the colors, or define the colors and then 
print. Plan your program so that the computer will 
perform the actions in exactly the order you want. 

Here is another sample program. Type 
NEW (enter), and then try this program. Watch 
carefully. 

100 CALL CLEAR 

110 CALL VCHAR( 10, 5,42,9) 

120 CALL VCHAR(10,10,42,9) 

130 CALL HCHAR(14,6,42,4) 

140 CALL VCHAR( 10, 17,42,9) 

150 CALL VCHAR(10,24,33,6) 

160 CALL VCHAR(18,24,33) 

170 CALL COLOR(2,7,l) 

180 GOTO 180 

The computer is quite fast, but you can see that 
the screen clears, the characters are drawn in 
black, and then some of the characters turn red. If 
you prefer to have the asterisks printed in red 
from the start, the CALL COLOR statement must 
come before the CALL VCHAR and CALL 
HCHAR statements. Delete line 170 and add 

105 CALL COLOR(2,7,l) 

RUN the program and you can see the difference. 

Invisible Characters 

Another thing you can try is to draw your charac- 
ters invisibly and then make them appear all at 
once. This is quite effective if you have a lot of 



CALL HCHAR and CALL VCHAR statements 
drawing an intricate picture. For this program, 
make the following changes: 

105 CALL C0L0R(2,1,1) 

106 CALL C0L0R(1#1#1) 
170 CALL COLOR(2,7,l) 
175 CALL COL0R(lr2,l) 

First the characters in Sets 2 and 1 are made invis- 
ible by setting both foreground and background 
to transparent. Next the characters are drawn 
with CALL HCHAR and CALL VCHAR state- 
ments. You won't be able to see this process. Last, 
line 170 colors the asterisks red, and line 175 colors 
the exclamation points black so the greeting ap- 
pears all at once. 

When defining your own graphics characters, 
you may use any character number. If you want 
to keep the alphabet intact, you will probably use 
character numbers beyond 95. Group your char- 
acters so that all characters of the same color will 
be in the same set. 

Remember that there are eight characters per 
set. If you are using many different colors or need 
to conserve memory, you will also need to plan 
the number of characters you can design in each 
set. For example, if you have a dog that uses nine 
characters, could you redraw him in eight charac- 
ters so only one CALL COLOR statement would 
be needed? 

Refer to the table to determine which charac- 
ters are in which set. For example, if you are de- 
signing character number 134, it will be in Set 13^ 
which contains characters 128-135. Your CALL 
COLOR statement will use set number 13. 

If you are not using the small letters in char- 
acter codes 97-122 (available on the TI-99/4A 
console, but not on the TI-99/4), use those numbers 
to define your graphics characters, then PRINT 
the characters rather than using HCHAR and 
VCHAR to draw them on the screen. PRINT 
TAB(10);''hikn" will be much faster than four 
separate CALL HCHAR statements to put up 
characters 104, 105, 107, and 110. By the way, 
your listing will say "hikn" with the small letters, 
but when your program is run those letters will 
be substituted by the graphics characters as you 
defined them. If you want to use the PRINT 
method on characters numbered higher than 126, 
you may use a statement such as PRINT CHR$ 
(132)&CHR${133)&CHR$(137). 

Teeth Wisdom 

The following program illustrates the use of color 
sets in an educational program. 'Teeth Wisdom" 
draws the teeth and their names on the screen in 
high resolution graphics. After the user knows 
the names, he or she presses ENTER and the labels 
clear. The names will be reprinted in a random 

July 1983 COMPUTE! 197 



order. For a quiz, certain teeth will "blink" and 
the user must press the correct answer. The order 
will be random. 

The teeth are drawn white on a light red back- 
ground, and the gums are light red on a transpa- 
rent background. Although all the teeth are white, 
they are defined in different color sets so that 
only certain teeth will blink during the quiz. The 
central incisors use characters 96-100; the lateral 
incisors, 104-107; the cuspids, 112-117; the bicus- 
pids, 120-127; and the molars 128-134. The gums 
use characters from 136 to 157. 

Since so many graphics characters are de- 
fined, DATA statements rather than individual 
CALL CHAR statements are used. The DATA in 
lines 240 to 330 are character definitions. Be careful 
to type these lines exactly as shown. The round 
symbols are zeros and not the letter O. When 
there are two or more commas in a row, it means 
that a character is defined as a null string. At the 
end of a data list such as line 250, the "" (double 
quotes) marks are necessary to indicate a null 
string, but in a series such as in line 260, the quote 
marks may be omitted between commas. These 
null strings correspond to unused character num- 
bers. 

Lines 180-230 let the character number C vary 
from 94 to 157 and READ in a string then define 
character C with graphics definition CS. The CALL 
COLOR statements blink the asterisks on the title 
screen while the characters are being defined. 
Lines 340-390 define the colors for the teeth and 
gums. 

Lines 590-690 PRINT the graphics on the 
screen, which is faster than using individual CALL 
HCHAR or CALL VCHAR statements for this 
many special characters. Within the quotation 
marks are the lowercase letters - release the 
ALPHA LOCK key to type these symbols in. Line 
610 uses the symbol found on the face of the "C" 
key and is typed by pressing FCTN and C. Other 
symbols requiring the FCTN key are in lines 640 
and 650. 

For The TI-99/4 Console 

If you have the TI-99/4 console, you will not be 
able to type in these lines. You can use the method 
found in line 600 to print the characters, listing 
each character number. Note: If a program like 
this has been typed in on the T1-99/4A console, it 
wiU work correctly on the TL99/4 console (read it 
in from cassette or diskette). 

In the quiz, lines 900 and 910 blink the par- 
ticular teeth while the computer waits for a re- 
sponse. A random number (I) is chosen, and the 
corresponding color set is 1 + 8 for the CALL 
COLOR statements. 

198 COMPUTCI July 1983 



Lines 

100 

110-170 

180-230 



240-330 
340-360 

370-390 

400-510 

520-560 

570 

580-690 
700 

710-760 

770 

780-850 

860-1060 

870-880 

890-920 

930-940 

950-990 

1000-1030 

1040 

1050-1060 

1070-1100 

1110-1140 



1150 
1160-1190 

1200-1210 



Program Structure 

Title. 

Gear screen; print title screen. 

Define graphics characters 94 through 157 by 

READing the definitions frnm DATA; blink' 

asterisks on screen green and white. 

DATA containing graphics definitions. 

Define color sets 9 through 13as white on light red 

for teeth. 

Define color sets for light red on transparent for 

graphics surrounding teeth. 

Clear screen; print instructions; define strings 

as groups of characters for later printing. 

READ in names of five groups of teeth as NS array 

and set the W$ array elements equal to the NS 

array elements. 

Prints message to press ENTER and waits for 

response. 

Clear screen; print teeth with labels. 

Prints message to press ENTER and waits for 

response. 

Clear message and clear labels. 

Prints qui/ title. 

Randomly print names of teeth on screen from the 

W$ array of five names, A (I) will be the correct 

corresponding answer. 

Perform quiz. 

Randomly choose teeth. 

Blink teeth blue and white while waiting for 

response. 

If number 1-5 is pressed, show which number was 

pressed, otherwise return to line 890. 

Ifanswer is incorrect, sound "uh-oh"anei return 

fo r a n ot h er res po n se . 

If answer is correct, play arpeggio. 

CI ea rs a n s w e r c h oscn , 

Set A element to zero so that tooth will not be 

chosen again; return to next problem. 

Print option to try again; wait for response; 

branch appropriately. 

If user wants to try again, set W$ array elements 

equal to names of teeth, branch to beginning of 

exercise. 

Stop. 

Subroutine to print 'TRESS < ENTER >'' and wait 

for response. 

Clear screen and END. 



Teeth Wisdom 



100 

120 

130 
140 

150 
160 

170 
180 
190 
200 
210 



REM TEETH FDR TI 
CALL CLEAR 
PRItMT TAB<4) 



ttttttttttttttttt 



PRINT TAB (4) ; 
PRINT TAB (4) ; 

PRINT TAB (4) ; 
PRINT TAB (4) ; 

PRINT : : : 

FOR C=94 TO 157 

CALL C0L0R(2, 13, 1 ) 

READ C* 

CALL CHAR(C,C*> 



TAB (22) 
TEETH 



WISDOM 



*" ;TAB (22) ; "**' 
ttttttttttttttttt 



220 CALL C0L0RC2, 16, 1 ) 
230 NEXT C 

240 DATA 0000001F1010101 , 000000FF 
250 DATA 00000F1F3F7F7F7F, 0000a3C7C 
7E7EFEF, 0000E0F0FGFCFEFE , FFFFFF 
FFFFFFFFFFF, EFEFEFEFEFEFEFEF, 0, , " ' 

260 DATA 70F8FCFCFEFEFEFF,FEF8C,0E1 
F3F3F7F7F7FFF, 7F1F03, , , , , 000000 
00000000F8, 01010 1010101, FCFEFFFFF 
EFCF83 



270 



280 



190 



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 



DATA 000000000000001F, 3F7FFFFF7 
F3F1F0C, 80808080808, , ,0F1F1F1F1 
F1F0E,E0F8F8F8F8FSF,071F1F1F1F1F0F 

DATA F0F8FaFaF8Fa7, 1F3F3F3F3F3F 
IF, F0FaFaFaFaF8F, 0F1F1F1F1F1F0F 
, F8FCFCFCFCFCF8, 7FFFFFFFFFFF7F 
DATA E0F0F0F0F0F0E, 070F0F0F0F0F 
07,FEFFFFFFFFFFFE, 0303030303030 
301,FFFFFFFFFFFFFFFF, C0C0C0C0C0C0 
C08, " •■ 

DATA FFFFFCF0E0C08, FFFF7E181,FF 
FF3F0F070301 ,FFFEFEFCFCF8F8F8, F 
F7F7F3F3FlFiFlF,F0F0F0F0F0F0F0F 
DATA 0F0F0F0F0F0F0F0F, E0E0E0E0C 
0C0808, 0707070703030101 , 0000000 
00007 IFFF, 0000 03 1FFFFFFFFF,00FFFF 
FFFFFFFFFFFF 

DATA 0000C0FaFFFFFFFF, 000000000 
070F8FF,0i070FlF3F3F7FFF, 80E0F0 
F8FCFCFEFF,010103030307070F, 80B0C0 

C0C0E0E0F 

DATA 0F0FlFlFlF3F3F3F,F0F0F8FaF 

8FCFCFC, 3F7F7F7F7F7F7F7F7F, FCFE 

FEFEFEFEFEFE 

FOR C=9 TO 13 

CALL COLORCC, 16, 10J 

C 

COLOR < 14, 10,1) 

COLDRdS, 10, 1 > 

COLOR ( 16, 10, 1 ) ' ■ 

CLEAR 

COLOR (2,2, 1 > 
"YOU WILL SEE 



NEXT 
CALL 
CALL 
CALL 
CALL 
CALL 
PRINT 



A DIABRAM 



'THE TEETH WITH THE NAME 



THE NAME 



F" 

PRINT 

S" 

PRINT :"0F THE TEETH." 

A*=CHR*(128)&CHR*(129) 

D* = CHR*(130)5(CHR*<13n 

PRINT ::='WHEN YOU KNOW 

S " 

PRINT : "PRESS <ENTER>." 

D* = CHR4(132)&CHR$C133)SeCHR*(134 

) 

PRINT ::"THE LABELS WILL CLEAR 

AND" 

PRINT : "YOU WILL BE 6IVEN A QUI 

Z . " : : £ : 

FOR C=l TO 5 

READ N* (C> 

W*(C>=N*(C) 

NEXT C 

DATA CENTRAL I NC I SORS , L ATER AL I 

NCISORS, CUSPIDS, B I CUSP I DS , MOLAR 

S 

GOSUB 1160 

CALL CLEAR 

PRINT TAB (8) ; "" _CENTRAL INCISOR 

S" 

PRINT TAB (5) ;CHR* (145) S<CHR* ( 146 

)S£CHR*(147)&CHR*(148)8<CHR*<149) 

PRINT TAB (4) ; CHR$ < 150) ; "e 'abe" ; C 

HR* ( 151 ) ; " LATERAL INCISORS" 



620 PRINT " " ; CHR« ( 150) ; "phcdc js" ;C 

HR* ( 151 ) 
630 PRINT " " ; CHR* ( 152) ; "qri eeektu" ; 

CHR$ ( 153) ; "CUSPIDS" 
640 PRINT " " ; CHR* ( 154 ) ; "xyeeeeez £ " ; 

CHR* ( 155) ; "BICUSPIDS" 
650 PRINT " " ; CHR* (156) ; " I t , >e" ; CHR* 

< 136) &CHR* (137) &CHR^ C 138) ; "eC, > " 

;CHR*(127>S.CHR$(157) 
660 PRINT " e" ; A$; CHR$ ( 139) ; " 

^3 SPACES> " ; CHRS (140) ; B* ; "e" ; "MO 

LARS" 
670 PRINT " e" ; A*; CHR$ ( 141 > ; " 

<3 SPACES}" ;CHR$C142);B*;"e" 
680 PRINT " " ; D$: CHRS ( 143) ; " 

{3 SPACES}";CHR*(144);D* 
690 PRINT " eee{5 SPACES} eee ":: : 
700 GOSUB 1160 

710 CALL HCHAR (23, 16, 32, 13) 
720 CALL HCHAR ( 10, 10, 32, 18) 
730 CALL HCHAR ( 12, 13, 32, 18) 
740 CALL HCHAR ( 14, 15, 32, 7> 
750 CALL HCHAR ( 15, 15, 32,9) 
760 CALL HCHAR ( 17, 15, 32, 6> 
770 PRINT TAB<8);"NAME THE TEETH":: 
780 FOR C=l TO b 
790 RANDOMIZE 
800 I=INT(5tRND+l) 
810 IF W*(I>="" THEN 800 
820 PRINT TAB (9) ; C; W$ ( I ) 
830 A(I)=C 
840 W*(I)="" 
850 NEXT C 
860 FOR C=l TO 5 

870 I=INT (StRND^l ) 

880 IF A(I)=0 THEN 870 

890 CALL KEY(0,K,S) 

900 CALL COLOR ( 1+8, 6, 10) 

910 CALL COLOR ( 1+8, 16, 10) 

920 IF S< 1 THEN 890 

930 IF CK<49) + (K>53) THEN 890 

940 CALL HCHAR ( 18+K-48, 1 1 ,62) 

950 IF K-4e=A ( I) THEN 1000 

960 CALL SOUND ( 150, 330,0) 

970 CALL SOUND ( 150, 262,0) 

980 CALL VCHAR C 19, 1 1 , 32,5) 

990 BOTO 890 

1000 CALL SOUND ( 150, 262,0) 

1010 CALL SOUND ( 150, 330,0) 

1020 CALL SOUND (150, 392,0) 

1030 CALL SOUND (200, 523,0) 

1040 CALL VCHAR ( 19, 1 1,32,5) 

1050 A(I)=0 

1060 NEXT C 

1070 PRINT ::"TRY ABAIN? (Y/N)" 

1080 CALL KEY<0,K,S) 

1090 IF K=78 THEN 1200 

1100 IF K<>89 THEN 1080 

1110 FOR C=l TO 5 

1 120 W* (C> =^N* (C) 

1 130 NEXT C 

1140 BOTO 580 

1150 STOP 

1160 PRINT TAB ( 14) ; "PRESS <ENTER>" 

1170 CALL KEY(0,K,S) 

1180 IF K<>13 THEN 1170 

1190 RETURN 

1200 CALL CLEAR 

1210 END t 



COMPUTE! Books 



July 1983 COMPUTE! 199 



Atari Sound 
Experimenter 



Matt Giwer 



If you've wanted more control over your Atari's sound, 
here's a solution. You can use this program to experi- 
ment, to add sound to other programs (via the SOUND 
or POKE instructions), and to govern all four voices 
and all aspects of special effects. 



Sound is one of the most important capabilities of 
the Atari computer. Not only does it permit four- 
part harmony if you are so inclined, but sound is 
an essential ingredient in games. It transports 
you into the world of the game, filling your ears 
with the sound of a laser cannon, letting you hear 
force shields as they collapse around you. 

Unfortunately, the sound commands are 
among the most difficult to experiment with. The 
SOUND instruction can sometimes be clumsy 
and inconvenient; for one thing, the sounds stay 
on until you turn them off with another SOUND 
instruction. Also, you can't achieve the full range 
of sound with the BASIC instruction, since using 
it changes any settings in AUDCTL (the register 
which controls sound effects). 

Sound control is a complicated matter, and 
simple programs cannot offer you complete con- 
trol over the sounds. Joysticks couldn't govern 
four channels with nine registers. 

This program takes a little practice to get used 
to, but it permits total control over all sound 
registers plus AUDCTL, turns the channels on 
individually, and shuts them all off at once when 
you need silence. When you are satisfied with the 
sounds, you can display the appropriate BASIC 
statements in either the POKE or the SOUND 
format. 

An Overview 

Let's first briefly summarize the Atari sound sys- 
tem. (For complete details, see the Atari Personal 
Computer System Hardware Manual, pages 111.12 
through IIL14.) There are four independent sound 
channels whose distortion, frequency, and vol- 
ume can be independently controlled. These are 
addressed by the SOUND instruction with the 
numbers through 3. The Hardware Manual refers 

200 COMPUTE! July 1983 



to them as 1 through 4. The sound data can be 
independently POKEd into registers 33760 
through 53767. The odd numbers control volume 
and distortion, and the even numbers control the 
frequency. Register 53768 is AUDCTL, which 
controls all of the sound channels in one way or 
another. If you use the BASIC SOUND instruction, 
any changes you may have made to AUDCTL are 
reset - AUDCTL is set to zero. Thus you do not 
have full control of the sounds with the SOUND 
instruction. 

This program attempts to give you easy con- 
trol overall of these parameters. Compromises to 
reduce complexity have been made in favor of the 
notation and numbers used in the SOUND in- 
struction. Thus you may use the BASIC Reference 
Manual for further information. 



AUDCTL (REG)ISTER 4 

9 BIT POLY: (B7>: 
clock Ch.O w/1.79 MHz: (B6): 
clock Ch.2 w/1.79 MHz: (B5): 
clock Ch,l w/Ch.O: (B4): 
clock Ch.3 w/Ch.2: (B3): 
clock Ch.O w/Ch.2 HiP: (B2): 
clock Ch.l w/Ch.3 HiP: (Bl): 
15 kHz: (BO- 
SOUND (REOrSTER 
(DIS)TORTION: 
(FRE)QUENCY: 
FORCE OUTPUT: 
(VOL)UME: 
X: 

D: ?■ 

REG DIS ERE FRC VOL 
OFF CH 
PDIS SDIS 
POKE 53761, 168 
POKE 53763, 
POKE 53765, 
POKE 53767, 












10 

100 



8 



POKE 53768, 
POKE 53760, 
POKE 53762, 
POKE 53764, 
POKE 53766, 




TOO 







The figure shows the display that you will 
see upon RUNning and entering the commands. 
The first eight lines, numbered B7 through BO, 
are the bits in the AUDCTL Register. To change 
bit seven to 1, type B7 and RETURN. To change it 
back to zero, type B7 and RETURN again. These 



the cffewebt in, ^oftwate. (f^oductt fot ATARI 



ATARI 800 48K., ...CALL 

ATARI 810 DISK DRIVE CALL 

ATARI 850 INTERFACE 1 69.00 

ATARI 1 01 PROGRAM RECORDER . . . 77.00 

EDUCATOR KIT 11 7.00 

BOOKKEEPER KIT 1 79.00 

PROGRAMMER KIT 55.00 



ENTERTAINER KIT 75.00 

COMMUNICATOR KIT , CALL 

HOME MANAGER'S KIT , CALL 

PROWRITE R 85 1 A CALL 

MOSAIC 

64K RAM ....,.,... 1 49.00 

32K RAM 87.95 



48K RAM CALL 

1 6/32 EXPANDER 74.95 

B-KEY400 84,95 

SUNCOM JOYSENSOR 

Touch Sensitive Joystick .... 34.95 

Amdek Monitors Call 



We Carry The Complete 

PERCOM Line. 



Call For Items 
and Prices. 



SUPER SPECIALS 

All Synapse Arcade Titles 
$22.95 Disk/Tape 



Prices Effective July l to 
JuJy 31,1983. 



Call For Our 

Special 

Prowriter 

Package. 



FREE* SOFTWARE AND ACCESSORIES 



ATARI 

ConvefsationalLanguages-T. .-43,95 

Programming 2 & 3 - T 2 1 .95 

Music Composer - C .... 32,95 

My First Alphabet - D , 26.95 

Touch Typing - T l 9.95 

Home Filing Manager - D . . 37,95 

Mailing List - T 1 9.95 

Asteroids - C 26,95 

Caverns 01 Mars * D 28.95 

Computer Chess • C , 26.95 

Missle Command * C ........... 26.95 

Super Breakout - C . , 26.95 

Star Raiders * C 32.95 

Assembly Editor - C 44.95 

Basic - C ..... 44.95 

Macroassembler - D 65.95 

Microsoft Basic - D 65.95 

Pilot (Home Package) - C 58.95 

InvitationToProgrammmgl-T ... 18,95 

Speed Reading - T 55.95 

Basketball • C. 26.95 

Graph-It - T, . . . . 1 5.95 

Juggles House • D/T , 22.95 

Pitot (Educator) - C 97.95 

Video Easel - C 26.95 

Defender - C ,......, 32.95 

Galaxian - C 32.95 

Q'fC , ..........32.95 

Dig Dug - C 32.95 

ET-C .......38,95 

Timewise - D 23.95 

Atariwhter - C 6 1 .95 



ADVENTURE 
INTERNATJONAL 

Preppie - D/T 23 95 

SAG A Adventures • D 31 95 

Sea Dragon 'DA 27 95 

Stratos - DA 27.95 

Bugoff - DA 23.95 

Preppte II • 0/C 27,95 

Stone of Sisyphus * 27.95 

Eliminator - DA 20.95 

ANALOG 

Race In Space* DA ..20.95 

Sunday Driver • DA .... .... 23.95 

Crash Dive! - DA 23.95 

Buried Bucks - DA 23.95 

Titan -OA 23.95 

Star Sentry - DA 23.95 



COMPUTABILITY blVIDEND COUPON PREMIUh^ 

3 M Blank Disk - Box oMO 27.00 or 10 Coupons 

Elephant Disks • Sox of 10 22.00 or 8 Coupons 

Flip 'n File Disk Holder 20.95 or 6 Coupons 

Flip 'n Fi(e Cartridge Holder 20.95 or 6 Coupons 

Monitor Stand 27.95 or 1 Coupons 

VU - Case Disk Holder W/Lock 24.00 or 1 Coupons 

Heavy Plastic Dust Cover 800 or 81 9.95 or 3 Coupons 

First Book of Atan Software 1 983 1 7.95 or 6 Coupons 

Kids & The Atari , 1 7.95 or 6 Coupons 

The Atan Assembler . 1 2.95 or 5 Coupons 

Alan Games & Recreation 1 4.95 or 6 Coupons 

Atari Pilot for Beginners \ 4.95 or 6 Coupons 

The Visicalc Book Atari 14,95 or 6 Coupons 

Atari Basic . . , 1 2.95 or 5 Coupons 

Atari Sound & Graphics 9.95 or 3 Coupons 

Starlighter 1 2.99 or 5 Coupons 

Slik Stik ......,.,,....,..,... , 9.95 or 3 Coupoos 

Extension Cable • 6 ft. .... 6.95 ^x 3 Coupons 

Lefty Adaptpr 9.95 or 3 Coupons 

Stik Stand 6.99 or 3 Coupons 

Suncom Tac II 19.95 or 8 Coupons 

Suncom Game Switch , . 6,95 or 3 Coupons 

Tl Adaptpr 1 2.95 or 5 Coupons 

Kraft Switch H itter Joystick 1 7.95 or 7 Coupons 

Kraft Joystick .1 5.95 or 6 Coupons 

Maxell 2 Pack Disks ............ 8,96 or 3 Coupons 

Inside Atari Basic , .... 1 2.95 or 5 Coupons 

Compute's First Bpok of Atari 1 2.95 or 5 Coupons 

Compute's Second Book of Atari 1 2.95 or 5 Coupons 

De Re Atari , , 1 7.95 or 6 Coupons 

Wico Joystick 24.00 or 1 Coupons 

S24,00 Worth of Software 10 Coupons 



*COUPON PROGRAM 

The purchase of each program (with the exception of Super 
Specials. Atari and APX) will earn you 1 COMPUTABILITY DIVIDEND 
COUPON. Save 10 coupons and redeem them for your choice of 
any program we sell for $24.00 or less. Less than 1 coupons may 
be redeemed for premium items as indicated. You pay only a $2.50 
shipping & handling charge. 



DATASOFT 

Sfiooting Arcade - DA 23.95 

Pacific Coast Highway - 0/T 23.95 

Micropainter - D , . 27.95 

Canyon Climber - D/T 23.95 

Fathoms Forty - D 27.95 

O'Riley's Mine - D/T 27.95 

Rosen's Bridgade - D/T 27.95 

Sands of Egypt - D 31 .95 

Zaxxpn - D/T 31 .95 

Mpon Shuttfe - D/T 31.95 



I. D.S.I. 

Pool 1,5 • D ........27.95 

Pool 400 - Cart. 31 ^95 

Speedway Blast - Cart. 31 .95 

Juggler -D 23.95 

FmSTSTAR 

Cosmic Squeeze • D/T 23.95 

Astro Chase - D/T. 23.96 

BIG FIVE 

Miner 2049'er - Cart 39.95 



JA^e Carry Hundreds of Items for ATARI 400/800, Ask for Our FREE CATALOG. 



MastercardA^ISA 
Order Toll Free 



[iiiBaffaiiiiiJBl 



No surcharge for credit cards 



ON-LINE 

Jawbreaker • D/T .... 23.95 

Luna Leeper * D 23.95 

Wizard and the Princess - D ... 25,95 

Threshold • D 31 .95 

Ulysses - D 27.95 

Mouskattack • D 27.95 

Frogger - D/T 27.95 

smius 

Bandits -D.... .,,.27,95 

Way Out ■ D 31.95 

Repton ■ D ..31.95 

Twerps - D 27.95 

Wavy Navy - D ................ 27,95 

Blade of Blackpoole - D ........31.95 

SENTIENT 

CytJorg- D . ,.,,.27.95 

Goldrush - D/T 27.95 

BRODERBUND 

Apple Pank; - D/T 23.95 

Stellar Shuttle ■ D/T 23,95 

David's Midnight Magic -0, 27.95 

Sky Blazer * D 25.50 

Track Attack * D 23.95 

Labyrinth ■ D/T 23.95 

Serpentine ■ D 27.95 

DueJing Digits ■ D . . 23,95 

Choplifter - D , 27,95 

Genetic Drift - D/T 23.95 

AE*D 27.95 

EDU-FUN 

Call For Items and Pnces 

MISCELLANEOUS 

Night Mission - D/T 23.95 

Jumpman - 31.95 

Airstrike * D.. 31.95 

Castle Wolfenstein - D ...,.., . 23.95 

Financial Wizard - D 49.95 

Pmball Cpnstruction Kit - D .... 31 .95 

Pig Pen- D ..23.95 

Baja Buggies * D/T. ............ 25,50 

Startjowl Football - D/T 25.50 

Master Type - D. ..,.,........,. 31.95 

A1(Baba*D .....26.50 

Jeepers Creepers - D 23.95 

Paint " D 33.95 

Kid Grid - 0/T 23.95 

D - DItk T' Cauatte 
C ' Cartridge 

ATARI is a traderrtark of ATARI, Inc. 



414/351-2007 



XOMPUTABILITY 

P.O. Box 1 7882 
t Milwaukee, Wl 53217 



ORDER HOURS 



ORDERING INFORMATION: To order by mail, send money order, certified check, or perspnal check(allow 

1 4 days to clear) toCOMPUTABILITY, Include $2.00 shipping on all software orders. Include 3% shipping on all 

hardware orders, minimum $2.50, Mastercard and Visa please include card number and expiration date W) . , ,- - ^ „ ^ „* ««^ 

residents please add 5% sales tax. Canadian,APO a FPO software orders include 5% shipping minimum $5.00. Mon-Fri 12-9PM (CST) 

All other foreign software, please add 15% shipping, minimum $7.00 (US Funds only). Prices subject tochange Sat 12-5 PM {CST)j 



without notice, 



are technical changes that give no indication of 
what the new sound will be like. Experimentation 
is best. Suffice it to say that using Bl through B4 
turns on both of the sound channels associated 
with bit seven. 

To discuss the next five lines of the figure, 
we have to jump down to the lines labeled D: and 
X:, There are two types of entries to make to this 
program, those which are purely commands and 
those which require numbers. If you need to enter 
a number, enter the number first and push RE- 
TURN. If it is a pure command, simply enter the 
command and RETURN. If you wish to work with 
sound channel zero, type the following sequence: 
0, RETURN, REG, RETURN. A will appear after 
SOUND (REG)ISTER on the display. For a pure 
tone, type 10, RETURN, DIS, RETURN, and a 10 
will appear after (DIS)TORTION:. Similarly, 100, 
RETURN, ERE, RETURN, and 8, RETURN, VOL, 
RETURN, will complete this part of the display. 

To hear this sound, type 0, RETURN, CH, 
RETURN, and to turn it off, type OFF, RETURN. 
To see the POKE values for this sound, type PDIS, 
RETURN, and the list of nine POKEs will appear 
on the screen. Copy these POKEs into your pro- 
gram, and you will duplicate the sound that you 
hear. The top right POKE is AUDCTL. The next 
four rows are channels through 3 - the left col- 
umn is the distortion and volume, and the right is 
the frequency for each channel. 

If AUDCTL is - which is the same as bits BO 
through B7 being all - then the SOUND instruc- 
tion maybe used. To see the SOUND instructions, 
type SDIS, RETURN, and the POKEs will be re- 
placed with SOUNDS. 

The "force" output is in the odd-numbered 
POKE registers and produces a click from the TV. 
It is turned off and on by use of FRC, RETURN. If 
you have set any of the AUDCTL bits, you must 
use the POKEs to duplicate the sounds. The sound 
channels must be turned on individually by the 
CH command. OFF turns off all channels. If you 
make a change and want to hear it, type the chan- 
nel number and CH again. This may seem cum- 
bersome, but otherwise the sounds would always 
be on. 



Atari Sound Experimenter 



TO 5:S(J, I)= 



80 DIM S(5,8) , XN« (50) 
90 FOR 1=0 TO BsFOR J=0 

0s NEXT J; NEXT I 
100 RES=50005 DIS=5100:FRE = 5200; FRC=5 

300:OFF=5400 
102 CLD=5900:CLX=A000: VOL=6100:POKAU 

D=6200: CH=6300: START=6400: REGDIS 

=6500:BUZZ=6600 
104 PDIS=6700 2SDIS=6B00:EDIS=6900 
1000 REM DISPLAY 



1002 
1008 

1010 

1020 

1030 

104 

1050 

1060 

1070 

1080 

1090 

1100 

1110 

1 120 

1 126 

1128 
1130 
1140 

1150 
1160 
1500 
2000 
2008 
2010 

2020 
2030 
2040 
2042 
2044 
2046 
2048 
2049 
2058 
2060 

2061 

2062 

2063 

2064 

2065 

2066 

2067 

2070 

2072 



GRAPHICS 0=PaKE 752,1 

POSITION 2,0:? "AUDCTL <REG)IST 

ER 4" 

POSITION 2,1:? 

POLYs (B7) : " 
POSITION 2,2:? 
79 MHz: <B6) : " 
POSITION 2,5 
79 MHz = (B5) : "' 
POSITION 2,4:? "C4 SPACES>clock 

Ch- 1 w/Ch-0: (B4> : " 
POSITION 2,5:? " C4 SPACES>clock 

: (B3) : " 

:? "clack Ch - w/Ch 



"Cll SPAC£S>9 BIT 



'clock Ch-0 w/1. 



? "clock Ch.2 w/l 



'clock Ch . 1 w/Ch 



<:i5 SPACES>15 kH 



"<:5 SPACES>SaUND 



"<6 SPACES> (DIB 



t7 SPACES> (PRE 



"^6 SPACES>FQRC 



^10 SPACES> (VOL 



X : " 
? - D : " 
? "RE6 DIS FRE FR 



Ch.3 w/Ch. 2: 
POSITION 2,6: 
-2 HiP: (B2) : ** 
POSITION 2,7: 
.3 HiP: (Bl) : " 
POSITION 2,8: 
z : (B0> : " 
POSITION 2,9: 

(REG) ISTER" 
POSITION 2, 10: ? 
yTORTION: " 
POSITION 2,11:? 
)QUENCY: " 
POSITION 2, 12: ? 
E OUTPUT: " 
POSITION 2, 13: ? 
)UME: " 

POSITION 2, 14: ? 
POSITION 2,15:? 
POSITION 2, 16: 
C VOL" 

POSITION 2,17:? "OFF CH*' 
POSITION 2,18:? "PDIS SDIS" 
GOSUB START 
REM JUMP TABLE 
FOR ZZZ=1 TO 2 STEP 
POSITION 5,15:P0KE 752,0: INPUT 
IN*:POKE 752, 1 

TRAP 2040: A=VAL ( IN*) ; TRAP 40000 
POSITION 5,14:? A:GOSUB CLD 
IF IN*="REG" THEN GOSUB REG 
IF IN*="DIS" THEN GOSUB DIS 
IF INt="FRE" THEN GOSUB FRE 
IF IN*="FRC" THEN GOSUB FRC 
IF IN*="OFF" THEN GOSUB OFF 
IF IN*=*'CH" THEN GOSUB CH 
IF IN*="VOL" THEN GOSUB VOL 
IF IN*="B7" THEN S(4,7>= NOT (S 
(4,7) ): POSITION 30,1:? S(4,7>:G 
OSUe CLD 

IF IN*="B6" THEN S(4,6>= NOT (S 
(4,6) ): POSITION 30,2:? S(4,6):6 
OSUB CLD 

IF IN$="B5" THEN 3(4, S>= NOT (S 
(4,5) > :PQSITION 30,3:? S(4,5):G 
OSUB CLD 

IF IN*="B4" THEN S(4,4)= NOT (S 
(4,4) > :POSITION 30,4:? S(4,4>:G 
OSUB CLD 

IF IN*="B3" THEN S(4,3)= NOT (S 
(4,3> > :POSITION 30,5:? S(4,3):G 
OSUB CLD 

IF IN«="B2" THEN 8(4,2)= NOT (S 
(4,2) > :POSITION 30,6:? S(4,2):G 
OSUB CLD 

IF IN*="B1" THEN S(4,l)= NOT (S 
<4, 1) ) sPOSITION 30,7=7 S(4,1):G 
OSUB CLD 

IF IN*="B0" THEN S(4,0)= NOT (S 
(4,0) ) :POSITION 30,8:? S(4,0):G 
OSUB CLD 

IF IN*="PDIS" THEN GOSUB PDIS 
IF IN*="SDIS" THEN GOSUB SDIS 



202 COMPUTE! July 1983 



2980 
2989 
2990 
5000 
5010 
5020 

5030 
5040 
5088 
5090 
5100 
5110 

51 12 

5120 
5121 
5122 
5123 
5124 
5125 
5126 
5127 
5130 
5140 
5170 
5180 
5190 
5200 
5210 
5218 
5220 
5230 
5280 
5290 
5300 
5310 
5320 
5330 
5340 
5350 
5380 
5390 
5400 
5410 

5480 
5490 
5900 
5910 
5990 
6000 
6010 

6090 
6100 
6110 

6120 
6122 
6130 
6180 
6190 
6200 
6208 
6210 
6211 
6212 
6213 
6214 
6215 
6216 
6217 
6220 
6290 



IF FAIL=1 THEN BOSUB BUZZ 

FAIL=0 

NEXT ZZZ 

REM REB REGISTER SET 

IF A<0 OR A>3 THEN FAIL=1 

IF A>0 OR A<4 THEN POSITION 24, 

9:? A 

C=A:REM SCC,B> 

GOSUB REBDIS 

60SUB CLD: GOSUB CLX 

RETURN 

REM DIS DISTORTION LEVEL 

IF A<0 OR A>14 THEN FAIL=1:G0T0 

5180 
IF INT (A/2) -A/2< >0 THEN FAIL=1; 
GOTO 5180 
IF A=0 THEN D1=0 
IF A=2 THEN Dl=32 
IF A=4 THEN Dl=64 
IF A=6 THEN Dl=96 
IF A=8 THEN Dl=128 
IF A=10 THEN Dl=160 
IF A=12 THEN 01=192 
IF A=14 THEN 01=224 
POSITION 21,10:? A 
S(C, 1 )=D1 :S(C,5) =A 
S(C,8) =A 

GOSUB CLD: GOSUB CLX 
RETURN 

REM FRE FREQUENCY STORE 
IF A<0 OR A>255 THEN FAIL=1 
POSITION 21,11:? " <.B SPACES:^" 
POSITION 21,11:? A 
S (C, 2> =A 

GOSUB CLD:GOSUB CLX 
RETURN 

REM FRC SET FORCE BIT 
IF A=0 THEN S<0,3)= NOT S(0,3J 
IF A=l THEN S(l,3>= NOT S<1,3) 
IF A=2 THEN S(2,3>= NOT SC2,3> 
IF A=3 THEN S(3,3)= NOT SC3,3> 
POSITION 21,12:? S<C,3) 
GOSUB CLD 
RETURN 

REM OFF TURN OFF SOUND 
POKE 53761, 0:POKE 53763, 0:PaKE 
53765, 0: POKE 53767, 
GOSUB CLD 
RETURN 

REM CLD CLEAR D 
POSITION 5, 15: ? 
RETURN 
REM CLX CLEAR X 



POS. 

"C20 SPACES>' 

POS- 



POSITION 5,14:7 "<:21 SPACES>'*:A = 



RETURN 

REM VOL VOLUME SET 

IF A<0 OR A>15 THEN FA1L=1:G0T0 

6180 
POSITION 21,13:? "il2 SPACES>** 
POSITION 21 , 13; ? A 
S CC, 4) =A 

GOSUB CLD: GOSUB CLX 
RETURN 

REM POKAUD POKE AUDCTL VALUE 
SUM = 

IF S(4,0)=l THEN SUM=SUM+1 
IF S(4,l)=l THEN SUM=SUM+2 
IF S(4,2)=l THEN SUM=SUM+4 
IF S(4,3>=1 THEN SUM=SUM+8 
IF S<4,4>=1 THEN SUM=SUM+16 
IF S<4,5)=1 THEN SUM=SUM+32 
IF S(4,6)=l THEN SUM=SUM+64 
IF S(4,7)=l THEN SUM=SUM+128 
POKE 53768, SUM 
RETURN 



6300 
6310 
6320 

6322 

6324 

6326 

6380 

6390 
6400 
6410 

6490 
6500 
6505 
6506 
6510 
651 1 
6520 
6521 
6522 
6523 
6524 
6525 
6526 
6527 
6528 
6529 
6530 
6531 
6590 
6600 
6610 
6690 
6700 
6705 
6710 

6720 



6730 



6740 



6750 



6780 
6790 
6800 
6810 

6820 

6830 

6840 



REM CH TURN ON SOUND CHANNELS 
GOSUB POKAUD 

IF A=0 THEN POKE 53761 , S (0, 1 ) +S 
(0,4):PDKE 53760, S(0,2J 
IF A=l THEN POKE 53763, S ( 1 , 1 ) +S 
(1,4): POKE 53762,5(1,2) 
IF A=2 THEN POKE 53765 , S (2, 1 ) +S 
(2,4): POKE 53764, S (2, 2) 
IF A=3 THEN POKE 53767, S (3, 1 ) +S 
(3,4);P0KE 53766,3(3,2) 
GOSUB CLX: GOSUB CLD: GOSUB REGDI 
S 

RETURN 

REM START SET UP 

FOR 1=1 TO 8:POSITION 30,1:? "0 
":NEXT I 
RETURN 
REM REGDIS 
POSITION 21 
POSITION 
POSITION 
POSITION 
POSITION 
POSITION 

S(C, 1 )=224 

S(C, 1 )=192 

S(C, 1 )=160 

S(C, 1 )=128 

S(C, 1 ) =96 



21, 
21 . 
21, 
21, 
21, 



DISPLAY OF REGISTER 

12:? "IZ SPACES>" 
S(C, 3) 

*'<:6 SPACES>" 
sec, 2) 
"<6 SPACES>" 



I ? 



12 

1 1 

11:? 

10:? " 

10 

THEN 
THEN 
THEN 
THEN 
THEN 



S<C, 1 >=64 THEN 
S(C, 1 )=32 THEN 
THEN 
13:? 
13; 



7 
r? 



-14" 
"12" 
"10 " 
"8" 
"6" 

II ^ H 
II O ■* 

7 " " 

"<6 SPACES>' 

S(C,4) 



OF POKE DATA 



■POKE 53768, 



IF 

IF 

IF 

IF 

IF 

IF 

IF 

IF S(C, 1)=0 

POSITION 21, 

POSITION 21, 

RETURN 

REM BUZZ 

? "CBELL>" 

RETURN 

REM PDIS DISPLAY 

GOSUB EDIS 

POSITION 20, 18:? 

;SUM 

POSITION 2,19:? "POKE 53761, "; 

SC0, l)+5(0, 4) : POSITION 20,19;? 

"POKE 53760, ";S(0,2) 

POSITION 2,20:? "POKE 53763, "; 

S( 1, 1 )+S( 1,4) : POSITION 20,20:? 

"POKE 53762, ";S(1,2) 

POSITION 2,21:? "POKE 53765, "; 

S(2, 1)+S(2,4) :POSITION 20,21:? 

"POKE 53764, ";S(2,2) 

POSITION 2,22:? "POKE 53767, "; 

S(3, 1 )+S(3,4) rPOSITION 20,22:? 

"POKE 53766, ";S(3,2) 

GOSUB CLD 

RETURN 

REM SDIS DISPLAY OF SOUND DATA 

POSITION 2,19:? "SOUND 0, "jSC0 

, 2 ) ; •* , " ; S ( , 8 ) ; " , " ; S ( , 4 ) 

POSITION 2,20:? 

,2) ; ", ";S(1,8) ; 

POSITION 2,21:? 

,2);% ";S(2,8); 

POSITION 2,22:? 

,2); % ";S<3,8); 



*SOUND 1, ";S(1 
\ ";S(1,4) 
•SOUND 2, ";SC2 
', ";S(2,4) 
"SOUND 3, 
" , " ; S ( 3 , 4 ) 



' ; S ( 3 



6880 GOSUB CLD 






6890 RETURN 






6900 REM EDIS ERASE 


PDIS 


ScSDIS 


6910 POSITION 20,18:? "<:i8 SPACES? 


6920 POSITION 2,19:? 


"C35 


SPACES>» 


6930 POSITION 2,20:? 


"<35 


SPACES!" 


6940 POSITION 2,21:? 


"C35 


SPACES>" 


6950 POSITION 2,22:? 


"€35 


SPACES>" 


6990 RETURN 






31990 END 






32000 SAVE ''D2: SOUND. 


DEV" 





/•^^S3 COMPUTC! 203 



Commodore 
REM Revealed 



John L Darling 



Did you knou) that you can preveftt someone from easily 
listing your program? This is one of several hidden 
secrets of the REM statement. Did you ever try putting 
shifted or reverse video characters behind a REM? The 
results you get when you LIST may come as a surprise. 
Try these experiments to learn about the tricks you 
can play with REMs. For VIC, 64, and all PET/CBM 
models. 



There are quite a few hidden surprises in the REM 
statement. Many are just plain fun, but a few can 
be put to good use. Let's go exploring. 

The REM statement was designed to provide 
a way to add remarks or comments in a program. 
During execution of the program, all the characters 
on a line following the REM are ignored. Thus, 
the only time the remarks are seen is when the 
program is LISTed. 

Also note that, for program operation, it 
doesn't make any difference whether the charac- 
ters following the REM are enclosed in quote 
marks or not, but it sure can change the results 
you get when you LIST the program. First, let's 
look at the REM when quotes are not used. The 
results you get when the program is LISTed will 
be determined by the following rules: 

1. Non-shifted characters appear as typed in. 

2. Shifted characters are converted to BASIC 
commands if the ASCII code for the character 
is equivalent to a BASIC command token. 

3. Reverse fields are stripped from any 
character. 

Before we examine these rules, you may want 
to put your computer into lowercase mode by 
typing POKE 59468,14 on the PET/CBM or by 
hitting shift-Commodore key on the VIC and 64. 
It is easier to discuss upper- and lowercase letters 
than it is to describe graphic symbols. Reverse 
video characters are produced by pressing the 
RVS key and then the character. The OFF key 
gets you out of reverse video. (On the VIC and 

204 COMPUn! Jill*'* 



64, the RVS ON and RVS OFF keys are CTRL-9 
and CTRL-0.) 

To illustrate these rules, type in the following 
four lines and then LIST. 

10 rem a b c d e f 

20 rem A B C D E F 

30 rem {RVS}a b c d e f{OFF} 

40 rem {RVS)A B C D E fIoFF} 

list 

10 rem a b c d e f 

20 rem atn peek len siir$ vai asc 

30 rem a b c d e f 

40 rem acn peek len str$ val asc 

Line 10 demonstrates Rule L All the charac- 
ters are LISTed just as they were entered. This is 
the normal effect that we're all used to. 

Line 20 doesn't look much like the original, 
does it? It illustrates Rule 2: the shifted letters are 
interpreted as BASIC command tokens. 

Lines 30 and 40 show Rule 3 in action. They 
look just like lines 10 and 20 because the reverse 
field was stripped when the lines were entered. 

List Blocking 

Now we get to the question of how to prevent 
someone from easily LISTing your program. Let's 
examine Rule 2 a little more closely. Certain char- 
acters become "tokens" which cause unusual 
effects. One will cause the LIST operation to ter- 
minate with a "syntax error" message when it is 
encountered. These tokens are equivalent to a 
shifted-L on the VIC, 64, Original and Upgrade 
PETs. In BASIC 4.0 this character is the shifted-[. 
This can be verified by the following line. 

VIC 64, PET Original/Upgrade BASIC 4.0 
10 rem L 10 rem [ 

When you attempt to list the line, the result 
will be: 

10 rem 
?syntax error 
ready. 



D.E.S.'SOFT''' 

a division of 
DES-Data Equipment Supply Corp. 



LASER COMMAND by Bob Burnett 




HOPPER by Thomas Kim 



2*?0 



I I I I I I I 1 I I I I I 



You are the commander of a squadron 
of laser ships. It is your duly to defend 
the cities of Earth against the alien 
onslaught. Spectacular graphics and 
machine code for super fast arcade 
fun. VIC-20 and cassette, joystick. 
$20.00 



^^ 



SHIFTY (c)by Kavan 

Watch the maze change 
, as you pass thru the 
revoiving doors. This is 
» a really cute one. 
Machine language. VIC- 
20 W/8K expander, cas- 
ft sette. Joystick and 
keyboard, 
S20.0D 



One of the most popular games in Europe. Vou 
control BONZO as he climbs the ladders and 
picks up point blocks. Watch out for the alien 
guards. Excellent graphics & sound. 100% 
machine code. VIC-20 w/8K expander, cassette. 
Joystick or keyboard. 
$20.00 






Bated a Five Star game by Creative 
Computing. Avoid the cars, buildings, 
logs and other obstacles to bring the 
frog home. Machine language. VIC-20, 
cassette and joystick. 
$20.00 



SPACE TRADER 

by DougCaruthers 



Search for the lost 
planet of Alantia. 1 to 4 
players. Text adventure. 
VIC-20 W/16K expander , . 
and cassette. Tvl 

$39.95 ~^ 




Many exciting titlBS to choose from. 
New Software for f/ie CBM BSOO/700 series available now !! 

More to Come !!! 



PAL 20 



$10.00 




95 pages of aids, worksheets & logs 
Something for every ViC-20 programmer 
Coming soon for the Commodore 64 



NEW for the VIC-20 & 64 

etectronicab VIC-2Q products 

VIC FORTH $59.95 

This is a highly capable language that operates from cartridge. It is based on 
Fig-Forth. Disk and cassette compatible. Vic Forth will work with any memory 
expansion. 3K of RAM is included in this cartridge. 

VIC GRAPH $49.95 

The intention of this program is to serve as a mathematical and pedagogic aid 
for studying complicated equations and functions by their graphs. Plots 
graphics in high resolution within an x-axis range defined by you. You can also 
"blow up" parts of a graph in detail by a specified range- 

VIC STAT $49.95 

Vic Stat is a cartridge which will simplify your work with statistics and graphic 
displays. It will add approximately 15 commands to BASIC, For example, bar 
Chart, horizontal or vertical, plotting with 2024 points, printout of screen. 
Statistical commands for calculations of, for example, mean value, standard 
deviation, variance, etc. 

VIC BEL $59.95 

The purpose of this cartridge is to simplify control of, for example, burglar 
alarms, garage doors, door locks, heating elements, lamps, radios, remote 
controllers, valves, pumps, telephones, accumulators, irrigation systems, 
electrical tools, stop watches, ventilators, humidifiers, etc., etc. This cartridge 
contains 6 relay outputs and 2 inputs of type optocoupler. For the VIC-20 and 
Commodore 64. 



SEE YOUR LOCAL DEALER TO SEE OUR FINE PRODUCTS 

Dealer Inquiries Invited Software Distribution Available Programs Wanted 



(714) 
778-5455 



Data Equipment Supply Corp. 
8315 Firestone Blvd., Downey, CA 90241 



VIC-20'-. COMMODORE^", COMMODORE 64'", and CBM- are trademarks of Commodore Business Machines. Inc. 



(213) 
923-9361 



L 



For newer CBM models with the "business 
style" (nongraphics) keyboard, the shifted-[ is not 
directly available from the keyboard. The "[" and 
"shift-[" appear to the computer as the same 
character. You can get around this by typing the 
following line in direct mode (without a line 
number): 

print "10 rem "chr$(219) 

When you hit RETURN, the program line should 
appear. (The chr$(2I9) will produce a graphics 
character.) Position the cursor on this line and hit 
RETURN. 

Up to now, it's just been fun, but there is a 
reason you might want to use this line. If this 
special REM line is the first line in a program, it 
prevents a normal LlSTing, Let's assume that the 
first line in a large program is line 100. Inserting 
this special REM line ahead of the program causes 
the LIST operation to terminate as soon as it en- 
counters the special shifted character. However, 
LIST 100- will allow the program to be displayed 
normally. 

Consider the following situation. A quiz pro- 
gram has the answers in DATA statements at the 
end of the program listing. Inserting the special 
REM line just ahead of these DATA statements 
will prevent the answers from being displayed 
during a LIST. Don't forget that REM statements 
are ignored during program execution, so they 
won't affect the actual program operation. 

Quote Mode 

Now, let's examine the quote mode. A new set of 
rules applies when the REM characters are en- 
closed in quotes: 

1. Shifted and non-shifted characters LIST as 
they were typed in. 

2. Reverse video characters are preserved 
when inside quotes (they are not stripped, as 
is the case in the non-quote mode). 

3. Some reverse video characters and combi- 
nations of characters behave as print control 
commands when LISTed. 

Rules 1 and 2 produce results that you would 
normally expect during the LIST operation. They 
LIST exactly as typed in. No examples are pro- 
vided for these rules, but try a few experiments to 
verify this for yourself. 

Here are some interesting examples of Rule 3 
in action. (The comments in brackets are the re- 
sultant action produced during LIST.) 

Note: A dot matrix printer was used to list the 
examples with reverse video characters, 
rem "O CdeleteJ 

rem "O Cinsert3 

rem "T C ret urn 3 

rem "E Cshi^ted returnJ = * 

rem " CE * + C home 3 

rem ^'Ea * + Cclear screen! 

206 COMPUTE! July 1983 



rem "GET * + Ccursor dawn3 

rem " CE * + Ccursor up] 

rem " KH * -*- Ccursor rightl 

rem " Sll » + Ccursor left} 

When these characters are inside a REM" 
statement, strange things are going to happen. 

To enter the following tests, first type the 
line number, the REM, the quote symbol, and 
then RETURN. Next, edit the line by positioning 
the cursor past the quote mark, press the "RVS'' 
key and then the letters. This allows you to put 
the reverse video characters on the screen line, 

10 rem" help * SSXi 

1 ist 

10 r e m " h e 
ready - 

The four reverse "t" characters achieve the same 
thing that would occur if the DEL key was pressed 
during an edit operation, deleting the last four 
characters. Adding more reverse "t" characters 
(15 total) on the test line will cause the entire line 
to disappear after it is LISTed on the screen. 

Notice that many of the cursor controls shown 
require the "M" (shifted RETURN) character to 
be the first character. This is important, for without 
the "shifted return" most of the cursor controls or 
special control codes will not be executed. As 
soon as this character is encountered, a shifted 
RETURN will be generated. All characters fol- 
lowing the shifted-M will be printed as if they 
were in a PRINT statement, rather than in a REM. 
Consequently, if any of these characters are cursor 
controls, they will produce a cursor control action 
as i f they were inside the quotes following a PRINT 
statement. 

If the reverse /'s in the previous example were 
replaced with reverse "MS" characters, then the 
LIST operation would list that line up to the 1 and 
then the cursor will go to the top of screen since 
"MS" is interpreted as a HOME command. If this 
was listed to a Commodore printer and the paging 
mode was on, the printer would eject a page after 
LlSTing that line. 

A Program Within A Program 

Let's try one final example to illustrate how the 
reverse field shifted-M works in combination with 
other characters. To avoid errors, here is a com- 
plete key sequence that will produce the following 
line: 

1,0, SPACE, R,E,M, ", ",DEL,RVS,SHIFT-M, 
SHIFT-S,Q,Q,Q,Q,OFF,I,SPACE,T,H,I,N,K, 
SPACE , I, SPACE, A, M, SPACERS, RVS,Q,OFF,I, 
RVS,Q,OFF,C,RVS,Q,OFF,K,RVS,S,OFF, ", 
SHIFT-L 

(For 4.0 BASIC, replace the final SHIFT-L with 
SHIFT"[. For "business style" keyboards, use the 
same technique as in the preceding example. Use 
chr$(34) in place of the quotes.) 



10 r e m " GaSinSili think i am s0i[^C3cE*'L 

Can you guess the results? If you type the line 
correctly, the following will happen after you LIST: 

1, 10 rem" will be printed. 

2, A "clear screen" will be printed, blanking 
the screen and also the previous 10 rem" . 

3, Four "cursor downs" will be printed. 
4- The nnessage "I think I am sick" will be 
printed with the I, C, K characters on different 
lines. 

5. A "cursor-home" will occur. 

6- " '(cif will be printed on the top line followed 

by a "?syntax error" message on the next 

line. (Note that the special shifted character 

is no longer enclosed in quotes.) 

7. Finally, the "ready" message will appear 

with the cursor above the "I think 1 am s" 

line. 

The above line could be inserted in most pro- 
grams, and it will not affect the program execution 
performance in the least. You just can't get a nor- 
mal LlSTing c^f the program. 

There are a lot more combinations to try, 
so have fun. It's like having a program inside 
another program. The second program requires a 
LIST command for execution instead of a RUN 
command. ^ 




• DOODLE*™ for the COMMODORE-64' 

Draw pictures with your COMMODORE-64' and WfCO' Trackball 

• DOODLE*" /efsyou. 

DRA W pictures on the screen 

PAINT with 8 sizes of brush 

draw straight LINES and BOXES 

ERASE with S sizes of erasers 

DUPLICATE, ENLARGE, and REDUCE parts of the "doodle" 

• DOODLE*^ has: 

on-lirye MENUS for easy learning and reference 
many t^ODES and graphics COMf^ANDS 

• DOODLE*" can. 

SAVE and LOAD from disk or tape 

PRINT on many popular printers 

PHOTO NEGATIVE and MIRROR IMAGE your "doodles'* 

GRID the screen to aid drawing 

• DOODLED ^/s: 

100% MACHINE LANGUAGE tor instant command response 

...and MUCH MORE f ,,. $29.^5 ! 

specifiy printer make and model, interface method, Bnddisk ortBpe to: 

OMNI Unlimited 

105 S. Los Robles Pasadena, CA 911 01 

(213)795 6664 



Commodore 64 Software 

"SPRITEWRITER" 

Multicolor and Single Color 

Sprite Edit/ Design 

The sprite generation package with the most 

features available. 

Append sprite data statements to any program. 

Test your sprites - up to 8 sprites displayed at 

the X,Y location you choose. Manipulate color 

oi sprites and background. X,Y scaling and X,Y 

coordinates. 

Our price is $24,95 on cassette or $29.95 on 

diskette + SI .00 for shipping and handlir>g. 



Ptxell Now sells Hardware! 

CBM 64 and peripherals 

Amdek Monitors and Plotters - lowest prices 

available 

CoPi/us Disk Drives 

The complete NEC product line 

NEC 60O0 and 8000 Persona! Computer 

NEC 8800 
The APC - the best personal small business 
machine buHt 
Call for the most competitive prices. 

Mastercard /Visa 

Dealer inquiries welcome 

oo 

o pixel I software 

6595 W. Mississippi PI. Lakewood. CO 80226 
(303)922-9197 



Stili the only word-processor 

program for the VIC-20 and 

CBM-64 that gives you full, 

flexible use of all the features 

and power of each and every 

printer on the market. 

Menu-driven ... no codes to 

memorize 

Power to please the professional, 

yet easy enough for a child to 

master quickly. 

Written by a user for users, 

$39.95 on tape 
$49.95 on disk 

Important: 

Specify the computer, printer, and 

interface you use. 

We deal direct! 

Send check or money-order to 

^AP/OWR/TER 

91 Long Hill Rd. 

Leverett, MA 01054 
413-549-3744 
Rapidwriteric) H.D. Mfg. /nc. 19B2 
^A All rights reserved 



"■"•toiupu 5E(\iSEi:.'' 

CARDBOARD 3 

An Economy Expansion Interface 
(Motherboard) 

For the VlC-20® Personal 
Computer 

The CARDBOARD. 3 is an expansion inter- 
face designed to allow the user to access more 
than one of the plug-m-type memory or utility 
cartridges now available. It will accept up to 3 , 
RAM or ROM cartridges at once Fof example: 

• 16k RAM • 16k RAM * 3k RAM 

• 16k RAM • 8k RAM ' Super Expander 

• 16k RAM • 8K RAM ' Vic-Mon 

• 16k RAM * 3k RAM » Programmers A(d 

• High quality T R W gold plated connectors 

• This board is fused 

• 90 day free replacement warranty covermg | 
everything except the fuse 

$39.95 

CARDBOARD 6 

An Expansion Interface for VIC-20" 

• Allows memory expansion up to 40K 

• Accepts up to SIX games 

• Includes a system reset button 

• All slots are switch selectable 

• Daisy chain several units for even more 
versatility 

$87.95 

TO ORDER: 
P. 0, BOX 18765 
WICHITA, KS 67218 
(316) 263-1095 

Persona) checks accepted |^HHiroj^| 

(Allow 3 weeks} or i^-^*^— ^J 

COD (AddS2) 

Handling charge S2.00 

VlC-20" JS a registered trademark of Commodore 



July 1983 COMPUTE! 207 



^^ Alspa Computer^ Inc. 



TTie price-performance leatJer Includes Z80A. 1 or 2 full 8" 
drives (double density, double sided), 3 serial and 1 parallel 
pod, and wincltester port, Prices start at less than $2000. Net* 
working Availabia DEALER / OEM inquiries invited. 

SPECIALS on INTRE6ATED CIRCUITS 



6502 

6520 PIA 

6522 VIA 

6532 

2114-1300 

2716EPR0M 

2532 EPROM 

6116 2KX8 CMOS RAM 

4116RAM 



7,45 10/6.95 50/6 55 100/615 

5.15 10/4.90 50/4.45 100/4.15 

645 to/ 6.10 50/575 100/5.45 

7.90 10/7.40 50/7.00 100/660 

195 25/1.85 100/1.75 

5.90 5/5.75 10/5,35 

6.90 5/6.45 10/5.90 

5.90 5/5.45 10/5J0 

8 for 14 




Hewlett Packard 

Anchor 
Automation^ 
Signalman 
Modems 

FREE SOURCE MEMBERSHIP WITH SIGNALMAN 

Ail S ignalman Modems are D irect Connect, and include cables 

to connect to your computer and to the telephone. Signalman 

Modems provide the best price- performance values, and start 

at less than $1 00. Oulir tui OEM iiqirMct Invltid 

Mark I RS232 

Mark II for Atari 850 

Mark IV fof CBM/PET wtth software 

Mark V for Osborne [software available) 

Mark Vi fof IBM Personal Computer 

Mark VII Auto Dial/ Auto Answer 

Mark VIII Beii 212 Auto Diai/Answef 



(99) 


79 


(99} 


79 


(169} 


99 


(129) 


93 


(250) 


180 


(179) 


119 


(399) 


319 



DC HAYES Sirtirtmodem 

DC Hayes Smartmodem 1200 



219 

545 




Apple Emulator for Commodore 64 
Screenmaker 80 COLUMN CARD for C64 
EROGGEH for C64 or VIC 
Solid Oik 2 Level Stand for C64 or ViC 

C64A/IC Switch (networking} 

BACKUP V1.0 tape (copier for C64 or VIC 

CARD BOARD/6 Motherboard - VIC 
CARDAPTER/1 Atari VCS Adapter - VIC 
CAROPRINT Printer Interface - C64A^IC 
CARD BOA RD/3S Motherboard - VIC 
CARDETTE/1 Cassette Interface ■ C64A/IC 
CARDRITER Lightpen - C64A/IC 
CARDRAM/16 RAM Expansion ■ VIC 

We carry Apple 11+ 

from 

Bell & Howell 

Apple Emulator for 
Commodore 64 
16K RAM Card for Apple 
Solid m 2 Level Stand for Apple 
Super Serial Card 

MPC RAM/SO column carti for HE 
Z80 Softcard and CP/M (Microsoft) 
Paraiiel Printer Interface/Cable 
Apple Dumpling (Mlcrofek) Printer Interface 
Apple Dumpling with 16K Duffer 
Grappler + interface 
TG Products for Apple in stock 
DC Hayes Micromodem I 
Videx 80 Column Card 
Riyden Software far Apple Z0% OFF 
PIE Writer Word Pronttor 



89 

149 

25 

29 

125 
20 
79 
69 
64 
32 
32 
32 
64 



See us for Pereonil, Dtisiness, ind Educitionil 
requirementi Eduntionil Discounts iviilible, 

PETSCAN $245 base price 

AilfTWS you to connect up to 30 CBM/PET Computers to 
shared disk drives and printers Completely transparent to the 
user Perfect for scrxxils or multiple wofd processing con- 
ligurations- Base configuration supports 2 computers Addi- 
tional computer hookups SI 00 each,_^ 

cbc7M7cmco"mm 
COMPACK $115 

Intelligent Terminal Pidcige 

ACIA^Hardware / STCP Software 

"VE-"2"lMto PanJitei In^ 

Includes case, power supply, full 8-tHt transmission, and 
switch selectable character conversion to ASCii 

VIDEO ENHAHCEH for Commodore 64 89 

Realize video quality equal or bettef than composite monitor 
usrng standard color TV 

SCREENMAKEfl 80 Column AdpaterforC64 149 

Provides big screen capal]ility tor business applications. 



VIC 20 Pradvctt 
BACKUP VI.O 20 

VIC RAM Cards in stxk 



VIC SuperExpander 
VIC16KRAM 
Tlion EMI Softvirt 
HES Soltinre 

VIC Omega Race 
SpKlefB of M^ (UMl) 
Programmers Aid 



52 
95 



32 
39 
45 



VIC Sargon II Chess 
VIC 60RF 
Meteor Run (UMl) 
VIC Radar Rat race 
Amok (UMl) 
Snakman 
Rubiks Cube 
Programmers Reference 
FHOGGER 
VIC Adventure Series 



VICTORY Software far VIC and C64 

Street Sweepers 1 2 Maze m 3-D 



Night Rider 
Treasures of Bat Cave 
Games Pack J 
Victory Casino 
Adventure Pack 1 1 



11 
12 
12 
8 
12 



Cosmic Debris 
Grave Robbers Advent 
Games Pack II 
Adventure Pack I 
Trek 



12 
12 

n 

12 
12 
11 




ComnxxJore 64 Programmers Reference Guide 1 6 

MicroChets for C64 or PET 19 

Computei's First Book of PET/CBM 1 1 

C64vr VIC SWITCH 125 

POWER ROM Utilities tor PET/CBM 78 

WonJPro 3+/64 69 

WordPTD 4+ ' 8032. disk, printer 295 

SPELIM ASTER spelling checker for WordPro 1 70 

VISICALC for PET, ATARI, or Apple 1 89 

PETRAX PET to Epson Gnphics Software 40 

SM-KIT enhanced PET/CBM ROM Utilities 40 

Programmers Toolkit - PET ROM Utilities 35 

CALC RESULT for C64 135 

PET Spacemaker II ROM Switch 36 

COPYWRITER Worrl Procetsor for CG4 69 

2 Meter PET to IEEE or IEEE to IEEE Cable 40 

Dust Cover for PET, CBM, 4040, or 8050 8 
CmC Interfaces (ADA 1800. A0AH50. SAOI in stocic 

ZRAM - CBM 64 K RAM, Z80. CP/M 
Pragrammini) the PET/CBM (CDinpute!) — R. West 

Compute* First Book of VIC 
Whale PET Catilog (Midnight Gazettet 
PET Fun and Games (Cursor) 
Color Chart Video Board for PET 



REVERSAL (Spfacklen) Apple or Atari 

SA RGON II — Apple wTRS-80 

Apple II User's Guide (Ostx)rne) 

Introduction to Pascal (Sybex) 

Pascal Handbook (Sybex) 

Musical Applications of Micros (Chambertin) 

Starting FORTH 

Discover FORTH 

User Guide to the Unix System 

6502 Assembly Language Sutjroutines 

COMAL Harxlbook 

KAMIKAZE (Hayden Software* Apple) 



550 
20 

11 
8 
11 

25 
26 
12 
13 
16 
20 
14 
12 
13 
11 
9 
28 



DISK 
SPECIALS 




Scotch (3M) 5" ss/dd 
Scotch {3M} 5" ds/dd 
Scotch (3M) 8" ss/sd 
Scotch (3M) 8" ss/dd 



10/2,25 50/2.10 100/2.05 

10/3.15 50/290 100/2.85 

10/2 40 50/2 20 100/2,15 

10/2 95 50/2 70 100/ 2,65 



We Stock VERBATIM DISKS 

Write for Dealer and OEM pricei 

BASF 5" Of 8" 10/2,00 20/1.95 100/1,85 

NEW BASF Qualimelnc Disks also m stock 

Wabash 5"ss/sd 10/ T 80 50/ 175 100/ 1 70 

Wabash 5" ss/dd 10/ 200 50/ 1.95 100/ 1 90 

Wabash 8" ss/sd 1 0/ 2 00 50/ 1 95 1 00/ 1 90 

We stock MAXELL OISKS 

Write for dealer and OEM pricei 

Oisk Storage Pages 1 for S5 Hub Rings 50 for $6 
Ojsk Library Cases 8"— 3.00 5"—2,25 
Head Cleaning Kits 1 1 

CASSEHES— AGFAPE-611 PREMIUM 

C-10 10/61 50/58 100/50 

C-30 _ „„J^/^S 50/82 100/70 

DATASHIELO BACKUP POWER SOURCE 225 

Battery back up Uninternjplible Power Supply with surge and 
noise tillenng Tfie answer to yo4jr power problems. 

Zenith ZVM-121 Green Phosphor Monitor 100 

BMC 12A 12" Green Monitor 80 

VOTRAX Personal Speech System 280 

VOTRAX Type^N'Talk 160 
VOICE BOX Speech Syntfwsizer (Apple or Atari) 

CompuServe Subscription (5 txxirs free) 32 

Prowriler Paraiiel Printer 389 

USICompuM0D4 R F Modulator 39 

Daisywnter 2000 1050 
Many printers available (Star, Brother. OKI, etc.) 
We Stock AM OEK Monitors 

AmdekDXY- 100 Plotter 600 
A P Products 15% OFF 
Walanabe Intelligent Plotter 990 6'pen 1290 

ISOBAR 4 Outlet Surge Suppressor/ Nnise Rlter 49 
We stock Electrohome Monitors 

daASEil(8"format) 325 

ALL BOOK and SOFTWARE PRICES DISCOUNTED 



Panasonic TR*120M1P 12" Monitor (20 MHz) 
Panasonic CM 60 Dual Mode Color Monitor 



149 
285 



USI Video Monitors— Green or AMBEfl 20 MHz tihres. 
OeileraniJ OEM inquiries invited 

Synertek SYM-1 Microcomputer SALE 189 

KTM-2/80 Synenek Video and Keyboard 349 

YgMint I data 

I systems 

Z29 Terminal (new detached keyboard] 680 

ZT-1 Inteitigent Communications Terminal 360 
Z1 00 1 6-bit/8'bit Systems in stock CALL 

We stock entire Zenitti line, 




ATARr 

SPECIALS 
WE STOCK ENTIRE LINE— write for prices. 



AtiriUOO 
Voice Box 
FROGGER 

Tliani EMI Softifire 
EduFun Sottwire 



549 m 34 

100 Ancliar Modem— Atari 79 

25 Atari Gnphics (Compute 11 

Rr^t Book of AUri 11 
AFX Soltwire 



21 5-822-7727 

252 Bethlehem Pike 
Colmar, PA 1891 5 



A B Computers 



WRITE FOR CATALOG. Add $1.50 per order for United Parcel, 
We pay balance of UPS surface shipping cfiarges on all prepaid orders 
(add extra for mail, APO/FPO. air). Prices include cash discount. 
Regular prices slighlly higher. Prices subject to change. 



OAK STAKD-C64, VIC, Apple. Atari 29 

Beautiful natural solid oak two-level stand. Rests on table 
above compulef. Hfjids disk drives/cassette decK as well as 
your monitOf/TV. 



KMMM Pascal for PET/CBM/C64 



$85 



A subset Of Standard Pascal with extensions, Includes Machine 
Language Pascal Source Editof. Machir>e Lartguage P-Co<te 
Compiler, P-Code to machine language translator fof optimized 
object code, Run-time package, Floating Pmnt capability, User 
Manual. ar»d sample programs. 
Requires 32K Please specify configuration, 

EARL for PET (disk file based] $65 

Editor, Asumbler ReJocitif, Unhir 

Generates relocatable object code using MOS Technology 

mnemonics Disk fiie input (can edit files larger than manorv). 

RAM/ROM for PET/CBM 

4K or 8K bytes of soft ROM with optional 
battery backup. 

RAM-ROM IS compatible with any large keyboard machine- 
Plugs into one of the ROM sockets above screen memory to 
give you switch selected write protectable RAM. 
Use RAM/ROM as a software development tool to store data 
or madiine code beyond the normal BASIC range. Use RAM/ 
ROM to load a ROM image where you have possible conflicts 
with more than one ROM requiring \\\e same sxket, Possible 
applications include machine language sort (such as SUPER- 
SORT), universal wedge, Extramon, etc. 
RAM/ROM - 4K J75 

RAM/ROM - 8K 90 

Battery Backup Option 20 

SUBSORT for PET/CBM $35 

Excellent genefal purpose machi^ne language^sort routine. _ 

THE WHOLE PET CATALOG $9 

A two year 320 page compendium of the Midnite Software 
Gazette for ComrrKxtore computer usefs. Contains 500 reviews 
of commercial products, 700 education programs (reviewed 
and organized by course), 200 reviews of free games, info on 
over 1 800 free programs, list of PET and VIC user groups, and 
many pages of helps and hints 

COMAL Package ror CBM $2S 

Includes software on disk, and Comal Handbook 



SuperGraphics 2.0 



NEW Version with TURTLE GRAPHICS 

SuperGrapfiics, by John Fluharty, pfovides a 4K machine 
language extension which adds 35 till featured commands to 
Commodore BASIC to allow fast and easy plotting and man- 
ipulation of graphics on the PET/C B M video display, as well as 
SOUND Commands. Animations wtiich previously were too 
slow or impossible without machine language subroutines 
now can te programmed directly in BASIC, Move blocks {or 
rocketships, etc ) or entire areas of the screen with a single, 
easy to use BAStC command, Scroll any portion of the screen 
up down, Jeft or right Turn on or off any of the 4000 (8000 on 
8032) screen pwels with a single BASIC command. In high 
resolution mode, draw vertical, horizontal, and diagonal lines. 
Oraw a box, fill a box, and move it around on the screen with 
easy to use BASIC commands. Plot curves using either rec- 
tangular or polar co-ordinates (great for Algebra, Geometry 
and Trig classes,) 

The S OU N D commands allow you to mil iate a note or series 
of notes (or even several songs) from BASIC, and then play 
them m the background mode without interfering with your 
BASIC program. TTiis allows your program to mn at full speed 
with simultaneous graphics and music. 

Seven new TURTLE commands open up a whole new 
dimension in graphics Place the TURTLE anywhere on the 
screen, set his DIRECTION, turn him LEfH' or RIGHT, move 
him FORWARD, raise or lower his plotting pen, evenHip the 
pen over to erase. Turtle commands use angles measured in 
degrees, not radians, so even elementary school children can 
CTeate fantastic graphic displays, 
Specffy machine model (and size), ROM type (BASIC 3 or 4) 
SuperGraphics in ROM(SA000or$9000) $45 
\felurne discounts available for schools 




NEW 
VERSION 2 

now for C64 



fir PET/CBM Ctmpi^n 

F LEX-F HE is a set of flexible, friendly programs to allow you to 
set up and maintain a data base. Includes versatile Report 
Writer and Mai) Label routines, and documentation for pro- 
grammers to use Data Base routines as part o! otheT pro- 
grams, 

RANDOM ACCESS DATA BASE 
ReoQfd size limit is 256 characteis. The number of records pef 
disk is limited onty by record size and free space on the disk 
File maintenance lets you step forward or backward through a 
file, add, delete, or change a recofd, go to a numbered record, or 
find a record by specified field (or partial field). Field lengths 
may vary to allow maximum information packing. Both sub- 
totals and sorting may be nested up to 5 fields deep. Any field 
may be specified as a key. Sequential file input and output, as 
well as file output in WordPro arKi PaperMate format is suppor- 
ted. Record size, fields pef record, and order of fields may be 
changed easily. 
MAILING LABELS 

Typical mail records may be packed 3000 per disk on B050 
(1400 in 4040). Labels may be printed any number wide, Ind 
may begin in any column position. There is no limit on the num- 
ber or order of fields on a label, and complete record selectkMi 
via type code or field condition is supported. 

REPoar WRiTEii 

Flexible printing format, including field placemer t, decimal 
justification and rounding. Define any column as a series of 
math or trig functions performed on other columns, and pass 
results such as running total from row to row Totals, nested 
subtotals, and averages supported Complete record selection, 
including field within range, pattern match, and logical func- 
tions can be specified, 

FLEX-FILE 2 by Michaei Riley $110 

Please Sf^cify ej^ipfTient configuratk)n_when ordering. 

DISK I.C.U. $40 

Intensive Cane Unit by LC. Car^ile 

COMPifTi DISK RECOVEHr SYSTEM FOR CBM DRIVES 

- edit disk blocks with ease 

~ duplicate disks, skipping over bad blocks 

- complete diagnostic facilities 

- unscratch scratched files 

- check and correct scrambled files 

- recover tmproperly closed fifes 

- extensive treatment of relative files 

- optional output to IEEE488 pfinter 

- comprehensive user manual (an excellent tutonal on disk 
ciperatk>n and theory) 

Furnished on copy-protected disk with manual. 
Backup disk available, $10 additional, 

PROGRAM YOUR OWN EPROMS $75 

Branding Iron EPROM Programmer for PET/CBM software for 
all ROM versions Includes all hardware and software to pro- 
gram or copy 2716 and 2532 EPROMa 

P0RTMAKERDUALRS23ZSERIALP0RT $63 

Two ports with full bipolar FIS232 buffenng. Baud rates from 
300 to 4800 For PET/CBM, AIM, SYM, 

CBM Softwtre 

BASIC INTERPRETER for CBM 8Q96 $200 
PEDISK If Systems from cgri Micmtecli inifibl^ 
RLEX IBM 3741/2 Diti Exchange Saltwire iviilible, 
JINSAM Dati Bate MinigemtDt System ior CBM. 

COPY-WRITER Word ?mam for PET/CBM $1 59 

CASH MANAGEMENT SYSTEM $45 

Petspeed BASIC Compiler 120 

Integer BASIC Compiler 120 

C MAR Record Handler 110 

UCS D Pascal (without board) 135 

Wordaaft 80 or 8096 265 

BPI Accounting Modules 280 

Professional Tax Prep System 575 

ASERT Data Base 375 

Dow Jones Portfolio M anagement 1 1 

Assembler Development 80 



FORTH for PET now for C64 

BY LC. Cargile and Michael Riley $50 

Features include: 

full FIG FORTH model. 

all FORTH 79 STANDARD extensions. 

stnictured 6502 Assembler with nested decision 
making macros. 

full screen editing (same as when pfogramming in 
BASIC). 

auto repeat key. 

sample programs. 

standard size screens (1 6 lines by 54 chiaracters). 

150 screens per diskette on 4040. 480 screens on 
8050. 

atjility to read and write BASIC sequential Tiles. 

introductory manual 

reference manual 
For Commodore 64. or any 16K/ 32 K PET/C BMwitti RDM 3 or 
4, and CBM disk drive. Please specify configuratton when 
ordering. 

MitaumpUer f»r FOHTH $30 

Simple metacompiler for creatif>g compacted object code 
which can be executed independently (without FORTH 
system). 



PageMate 
60 COMMAND 

WORD 
PROCESSOR 

by Michael Riley 



OB &B 



Papef-Mate is a full-featured word processor for Com- 
modore computers. Page-Mate incocporates 60 commands to 
give you full screen editing with graphics (or all 16K or 32 K 
machirjes (including 8032). all printers, and disk or tape drives. 
Many additional features are available (includirig most capa- 
bilities of WordPro 3). 

Page- Mate functions with all Commodore machines with at 
least 16K, with any printer, and either cassette or disk 

To order Page- Mate, please specify machine and RDM type. 
Page-_Mate (disk or tape) for PET CBM, VtC. C64 $40 

SM-KIT for PET/CBM $40 

Enhanced ROM based utilities for BASIC 4, Includes both pro- 
gramming_aids and disk ^iatndli^ngj;omnfiandS-__ 

CoRitnodore 64 

Hiiibr'Kier-C«niniidare64 15 

- authentic naval warfare game (complete with sonar) 
Submarine Warfare (Clockwork Computers) 29 
WordPro 3+/64 75 
Var\illa PILOT with Turtle Graphics 27 

- also includes sound, Toolkit, joystick support 
Commodore 64 Programmer Reference Guide 1 6 
CCI Submarine Warfare 24 
Laser Command 1 5 
EADLY GAMES fir Young Chlldnfl 25 
PETSPEED Compiler C64 120 
CALC RESULT Spritd Sbed PkIciib 1 35 
1000 Miles (Mille Bornes Game 9 
MienClisi 19 
Adventure (disk) 9 
Draw Poker 5 
MAE Assembler - C64 85 
Assembly Language Tutorial - C 64 /VIC 27 
Abacus Software in stock 

Synthy-64 mustc and sound synthesizer 26 

Tiny BASIC Compiler 17 

ScreenGraphics-64 adds BASIC Graphics 22 
VIctifv Siftvirt for Conntdirt 64 ii stack 

Adventure Pack I (Victory Software) 1 2 

Adventure Pack II (Victory Softwarel 12 

Annihilator 16 

Chomper Man 1 6 

Educational Pack 1 10 

Grave Robbers {Victory Software) 1 2 

Kongo Kong 16 

Strategy Pack f 16 

TREK 12 



215-822-7727 

252 Bethlehem Pike 
Col mar, PA 1891 5 



A B Computers 



WRITE FOR CATALOG. Add SI. 50 per order for United Parcef 
We pay balance of UPS surface shipping charges on all prepatd orders 
(add extra for mail. APO/FPO. air) Prices include cash discount 
Regular prices slightly higher Prtces subject to change, 



COMPUTEl's 
First Book Of VIC 



Authors: COMPUTE! Magazine 

contributors 
Price: SI 2.95 
On Sale: Now 



V friiroducrion 



Robm Lock 



■ ■ • • Michae/ S Tomczyk 

Dorothy KumrnHeder/Dav/dThornburg 



Chapter One: Getting Started. 

3 The Sto/y Of The VfC 
il Compurer Genesis. 

From Sticks And Srones To VfC 
20 Super Ca/cularor 
24 Large Aiphaber .\".;."** J'm ButertoS 

ttpT^^.^i?'''^ -■^- "*■*■" ^^^gFerguson 

-3V Extended Input Devices " ' * " -■>.... Dawd Ma/mbern 

Paddfes And The Keyboard ,, ^ , 

46 Game Paddles , ' ^'^^ Bassman / Salomon Lederman 

Chapter Two: Diversionc n„ - David Ma fmberg 

|9 The .oysnc. Conne^^on Z"^^^^^^^ Education. 

f^^^P" ^^eorMaze P^^' t Bupp / Stephen P Drop 

7S Alphabenzer •"'-- ■•-■■. Da v/d /? M,zrier 

80 Count The Hearts . ■"' --■..- Jim W., cox 

- Chnsropher J. pfynn 



Finally, it's VIC's turn! 

Users of other popular personal 
computers have been enjoying their 
COMPUTE! Books: COMPUTEl's 
First Book Of PET/CBM, Program- 
ming The PET/CBM^ and others. 

Now, there's a book devoted 
exclusively to the Commodore VIC- 
20"" Computer: COMPUTETs First 
Book Of VIC 

The editors of COMPUTE! 

Magazine - the leading resource for 
the \/lC-20 - gathered together the 
best \/IC-20 articles published since 
the summer of 1981 and added 
some new material. The result is 
more than 200 pages of valuable 
information - information that goes 
beyond the instruction manuals. In 
the COMPUTE! tradition, it is care- * 
fully edited io be easily understood 
and useful for beginners and experts 
alike. 

COMPUTEl's First Book Of VIC 
is spiral-bound to lie flat and 
includes ready-to-type program 
listings and articles such as 'The 
Joystick Connection: Meteor Maze/' 
"STARFIGHTS/' 'Train Your PET To 
Run VIC Programs/' "Renumber 
BASIC Lines The Easy Way " "High 
Resolution Plotting/' ''Custom Char- 
acters For The VIC/' "VIC Memory - 
The Uncharted Adventure/' and "A 
Simple Monitor For The VIC/' 

At only SI 2.95, less than most 
computer manuals, COMPUTEl's First Book Of VIC 
is among the best resources a VIC user can own. 

Available at computer dealers and bookstores nationwide. To order directly call TOLL FREE 800-334-0868, 
In North Carolina call 9 1 9-275-9809. Or send check or money order to COMPUTE! Books, P.O. Box 5406, 
Greensboro, NC 27403. 

Add S2 shipping and handling. Outside the U.S. add $5 for air mail S2 for surface mail. All orders prepaid. U.S. funds only. 
VIC-20 is a trademark of Commodore Electronics Limited 



97 Ji^^nYour PET To Run VIC Programs ''^"'"^^ '' McCmste, 

99User(npw... ^ LyfeJordan 

I03Amorr,ze WayneKozun 

106Append ^mfha/Gl^^e^ 

109 Pnnt-ng The Screen WayneKozun 

1 1 f I '^' ^""f'J^ing Quote CD, Lane 

11 5 Atonate Screens Charles Brannon 

I IV Timekeeping Jim Butterfield 

125 Renumber BASIC Lines The Easy U/av ^^'^'' Schleiffe, 

1 io C'^'°™"'^ <■'"«■ Numbers ^ ^^I^^rles H, Gould 

Z9 PutKng The Squeeze On Your VIC-20- -'''^ ^''^^ 

141 aT^ ^^^ ^°'^ °"' Of 5000 Bytes 

•*1 An Easy Way To Relocate VIC Proorami: ^'-^"'^V '^ 6e""i 

On Other Commodore Computers 

Chapter Four: Color And Graphics ''''''''' '°'' '^^'^--^ 

47 Kale,doscopeAndVar,at,ons ^''^P'""' 

Iz. ^'9^ fesolution Plotting Kenneth Knox 

154 VIC Color Tips "*. PaulFSchal;- 

1 Aft W/indow Charles Brannon 

1 60 Custom Characters For The VIC Charles Brannon 

Chapter Five; Maps And Speclfieation, °' "^ ''""'"' 

73 How TO use The 65^0 Vrdeo Inte^ffce Ch^ " 
1 79 Browsing The VIC Chip ^ Dale Gilbert 

llo ]!'f '^^'^°'y - ^^"^ Uncharted Adveniure n^virt r.' " '/. ^"^ Butteffreld 

1 89 Memory Map Above Page Zero "" ^ ^^™" ' '^'^ f^^^l Kleinett 

Chapter Six: Machine Language. ' " ''"' " 

1 95 TmMON I : A Simple Monitor For The vTc 
202 Entering TINYMON I Directly Into 
217 Inclex 



) Your \/iri>n "'''^ Butterfield 

^°"'^'"° Russell Kavanagh 



HARMONY VIDEO & COMPUTERS 

800-221-8927 J 



COMMODORE 

VC20 89.95 

COMMODORE 64 369.95 

VIC 2N D ATASETTE 59,95 

COMMODORE DISC DRIVE 289.95 

1525P PRINTER 289.95 

COMMODORE MONITOR 249.95 

VIC TELEPHONE MODEM 69.95 

RS 232 TERMINAL INTERFACE CALL 

IGEE-48e INTERFACE CALL 

VIC 8K MEMORY PAC 39.95 

VIC 16K MEMORY PAC 69.95 

MOTHER BOARD 89.95 
VIC 3K SUPER EXPANDER 

VIC PROGRAMMER'S AID CALL 

VICMON CALL 

INTRO TO BASIC I & II 69.95 



APPLE 2 PLUS 

999.95 

APPLE 2E 

CALL 




ATARI 

ATARI 400W16K 

ATARI 800W46K 

ATARI 1200XLW64K 

ATARI 410 RECORDER 

ATARI 1010 RECORDER 

ATARI 810 DISC DRIVE 







p 


1 







159.95 
449-95 
589.95 
76.95 
77.95 
389.95 



EPSON 
MX 60 PRINTER 

399.95 

EPSON 
FX 80 PRINTER 

599.95 



ATARI 830 ACOUSTIC TEL. MODEM 159.95 

169.95 

ATARI 822 THERMOL PRINTER CALL 

ATARI 1020 40 COL PRINTER 219.95 

ATARI 1025 80 COL PRINTER 379.95 

ATARI 16K MEMORY EXPANDER 89.95 

ATARI WORD PROCESSOR 69.95 

ATARI BASIC REF. GUIDE CALL 

ATARI PROGRAMMER KIT CALL 

ATARI ENTERTAINER KIT 29.95 



ALL 



WE CARRY A FULL LINE OF SOFTWARE FOR 
ATARI AND COMMODORE 
CALL FOR LOWEST PRICES ^^^ 



■"-^^^^ri^r^ife^ 3 



VCR PRICES TOO LOW TO PRINT! 




VIDEO TAPE (By case of 10 only) 



ALL s 
VCR's 



STOCK 
CALL > 
FOR 
LOWEST 



liHli] 



;.flBHBiiHHIV ^ 


VHS 


VHS 


HIGH 


BETA 


'mMB^^ 


T120 


T160 


GRADE 


L500 


TDK 


8.85 


14.75 


10.75 


6.50 


FUJI 


9.65 


14.75 


11-75 


6.50 


MAXELL 


8.40 


13.50 


10.25 


6.50 


MEMOREX 


8.75 


13.50 


10.50 


6.50 


SCOTCH 


8.50 


13.50 


10.25 


6.50 


SONY 






10.25 


6.99 


JVC 


9.50 


13.50 


11.50 




RCA 


8.90 








PANASONIC 


8.50 


TDKP 


ROFESSIOr 


JALT12C 



liRli] 



MAXELL PROFESSrONAL L750 OR T120 1 5.95 

* MEMOREX PROFESSIONAL 16.95 

FOR THE LOWEST PRICES ON VIDEO CALL 800-221-8927 

To order simply dial toll tree 800-221-8927 wrtti your Master Card or VISA and your order will arrive via UPS or send cenified 
check or money order only to: HARMONY VIDEO AND ELECTRONICS, 2357 Coney Island Ave.. Brooklyn. N.Y. 1 1223, and 
add approximate shipping postage and insurance charges. Credit cards for phone order only. For customer sen^ice please dial 
(212) 627-8960. All pries and availability subject to change without notice. All orders shipped out of state. Dealer inquires 
invited!!! For sales info dial (212) 627-6989. Open Sun. 10-4 Mon.-Thur. 9-7 Fri. 9-3. 



800-221-8927 



Ev''''<'ivyj»^^ja»^"l 



COMMODORE ATARI APPLE TEXAS INSTRUMENTS EPSON 



July 1983 COMPUTE! 211 



VIC MUSICIAN 



Blake Wilson 



You am have your VIC playing a son<^ iu the background 
while some other BASIC program is RUNning, It mill 

ez^eu play xvhile you're programming. This article will 
also show you hoiv to take music from a printed score 
and enter it into your VIC. 



I have always believed that music in any form 
was above my head. I own a computer retail store, 
and several customers have asked how they could 
produce music that woulci run continuousli/, with- 
out delays, during a program. My wife helped me 
to understand just what all those incomprehen- 
sible symbols on a piece of sheet music actually 
mean. 1 wanted the explanation in terms that I 
(and VIC) could understand. The only musical 
instrument that I can play is the VIC. Here's her 
response: 



lines). The lower set is often for harmony; usually 
we can ignore them. 

Compare the data at line 190 with the musical 
score above. Notice that the first item is duration. 
The first note is filled in and has a shaft and one 
flag. That means that it is c\n eighth note and will 
be played for 15 jiffies. The next data item repre- 
sents the pitch - it is 201 because the note is tangent 
to the lowest line. The next two notes are the same. 
The fourth note is open and has a shaft. So it is 
a half note and gets 60 jiffies. Since that note is 
on the third line, its pitch is 'G' = 215. See how 
it works? 

Inspect a musical score and write data for 
each note, first duration and then pitch. Place the 
data in the program to replace lines 190 through 
260. The actual line numbers mean nothing, but 



Note = Pitch 



Beats/measure 



Measure 



Measure 



F =232 

D =228 

B =223 

G =215 

E =207 

C =195 



^^^ 


-J 9-4-, J 


O 


0m} 


=#,^.= 


^ • 




' 



G 


= 235 


E 


= 231 


C 


= 225 


A 


= 219 


F 


= 209 


D 


= 201 



<? or p 

J \ 

# or # 



V\ notc=l beat = 30 jiffies 



Whole note = 120 jiffies 
Half note = 60 jiffies 
Quarternote = 30 jiffies 



/ „. 



F 
^ 



Don't be concerned that some shafts go up 
and some down, or that notes may be joined with 
arcs or bar-like flags. These exist only to confuse 
computer people. You need be concerned only 
with the duration of a note (filled in or open, 
whether it has a shaft or not, and the number of 
bars or flags. By the way, a dot after a note in- 
creases its duration by 50 percent) and its pitch 
(as determined by its altitude on the staff). Any 
pitch of less than 128 is a rest or silence. 

If notes are stacked, just take the highest 
one. There are generally two staffs (groups of 

212 COMPUTE! July 1983 



Eighth note = 15 jiffies 
Sixteenth = 7jiffies 
Whole rest = 120 jiffies 



^L^ Half rest = 60 jiffies 
^ Quarter rest = 30 jiffies 
7 Eighth rest = 15 jiffies 



the first 71 data items representing the program 
must come first. 

The program is limited to 61 notes due lo the 
size of the cassette buffer. In practice, the 61 
notes should be enough for most programs. 1 use 
only 37 notes in the sample program. If your crea- 
tion uses fewer than 61 notes, end your data with 
1,1 . This instructs the computer to replay from 
the first. 

Once the data has been POKEd into the buffer 
and you've done a SYS to 830, the music plays 
continuously even if you execute NEW or write 




A. Dataspan-50 

The OaUspin-50 expansion board is the cornerstone for 
expandino the VIC-20 to its maximum capa&ihties. it is ttre most 
advanced, yet easiest to use expansion board available. Unlike 
other expansion boards, the Dataspan-50 has thefollowing 
ticlwive features 

• 5 slot combination rotiry and rocker twitch selectable 
expansion boafd conveniently tonn i\\ switching needs now 
and in the tuture without using common hazardous sfot-by- 
slot power switching 

• Combination switches allow total contriH between computer 
cartridges (memory expansion, Proqrammer's Aid*, Vic-Mon* 
and other utihties) and oame cartridges 

• Dataspan-SO allows staclcmg tjf memory cartfldges up to29K in 
BASIC and 40K in machine la nquage, 

• Fully buffered hy five hi-tech. Tow power, integrated circuits 
that help erevent erratic operation and lost ol data common in 
typical unbuffered expansion boards and isotates theVIC"s* 
microprocessor from accidental damage 

• Highest quality circuit board with gold contacts throughout 

• Fused !o protect the VlC-20* power supply 

• Master reset button eliminates turning computer otf and on, 

• Independent write-proteciion on two sJots. 



Qataspan-SO Kit 

Dataspan^ Assemtelwl , , S84J95 

(Suggested Retail Price Assembled S109-95) 

0. Mottier Switcher 

Now make any bare bones expansion board fully block 
selectable, 

• Master reset button. 

• Write protection switch. 

• Cartridges piggyback on Mother Switcher. 

Mother Switcher Assembled ..... SI 155 

(Suggested Retail Price SI 7 95) 

Ktts for Experionced BuitdBCS only^ 

All assembled units have full 90-Oay Linr^ited Guarantee. 

'Trademark Commodore Bus. Machines 

NOTES: These prices are effective June 1. 1383 and are subject 
to change without notice All kits supplied wEth complete 
assembly and operattng instnictlons. 



VIC-2Cr OWNERS 

Expand your System with these 
Exctuslwe Factory Direct Products 
B. Champagne Memory on a Beer Budget 

Highest quality glass epoKy 16K memory board with gofd fingers 

Erovides full block switching and write-protection on ascti 8K 
lock All block switches are conveniently located at the top edgt 
of the board 

OataRAM _ 

at Ban! memory board IHAM/HOM) S13ig 

bj Bare memiMY board Kh S17 J5 

includes all com portents except RAM/ROM chfpa 

DatsfiAM 8 _ 

ci Board with BK HAM - Complete Kit S34J5 

d| Board with BK RAM Assembled S37J95 

(Suggested Retail Price Assembled S47J95J 

OataFiAM 16 

el Board with I6K RAM - Comptele Kit S48J5 

t] Boafd with 16K RAM Assembled $54 J5 

(Suggested Retail Price Assembled S89S5) 

C, Datablast-16 

Finally a low cost, high quality 2716 EPROM programmer lor the 
VIC-20' Put your most often used machine language programs 
into EPROMs, 

• Orvboard 25 volt power supply. 

• Can be used with COMPUTE''s. "Micromon" or 
our sottware below 

• Program/read mode switch 

• We suggest you use the EPROMs with our DataRAM 
memory board 

Dat3blast-16 ^ 

a] Kit with low cost ZIF' socket S49Ji 

bj Asserrbled with Iow<os1 ZIF* sock^ SS9J98 

(Suggested Retail Price Assembled S79.95) 

d Kit with TextDo< ZIF' socket S55S5 

rf) Assenibled wllh lextool ZIF' socket S81 35 

tSuggestedRetailPriceAssembled S85.95) 

el Sottwire (or OattblultB (lapel $ 9JS 

n 2716 EPROMs $ 450 

Zero insertion force. 

TERMS: No. CO 0. orders Shipping and Handling S3JD0. 
VISA^ MASTERCARD - Add S'/l Most orders shipped within 4S 
hours. (Personal checks ■ allow 2 weeks ) 

Digital Interface Systems Co. 

P.O. Box 8715 

Portland, OR 97207 

(503) 295-5890 




GB-2 

The CB^ is a complete hardware and software package tbal 
allows you to easily and efficiently make a backupcopy of your 
valuabfe soft ware library No w you can protect your investment! 

UniQue features: 

• Allows connection for one or two Datasette* recorders (or 
equiva lent). Two recorders required for timpta back-up copies 

• Exclusive state-of-the-art circuitry lets you athjally hear and 
see tape data being loaded or saved 

• Special wave shaping circuitry makes a back-up copy as 
good or better ttian the original, 

• cM's Super Btocksaver software and interface card allow you 
to make a back-up copy of your cartridge programs. 

3) CB-2 Assembled $89j9S 

fSuggested Retail Price S1 14.95) 
b] Special CB-Z System ^ ^ 

for Datasflan-ZO/50 owners $79:95 

(Please specify which model when orderfngl 

(Suggested Retail Price S10495) 

E. RAMraider 

• Makes your 3K or SuperemryJer' cartridge a full 4K RAM. 

• Recaptures your RAM for BASIC and moves it into Expansion 
memory (lower half of Blocks 1, 2, or 3), 

BAWnider Kit «4^ 

BAHratder Assembled 5345$ 

RAMcharger 

• Turn your Commodore 8K cartridge into a full 16K cartridge, 

• Full block switching capabilities. 

• Sockets allow future EPROM substitution. 

RAMcharger Kit S2BJ95 

What Makes The VIC Tic? 

I f ¥0 u think co mputer ha rd ware means nuts a nd bolts, this book 
is lor yout Written especially for the beginner by VIC enthusiasts . 

What Makes The VIC Tfc? S 7 J5 

(Shipping included.l 



Write For FREE Catalog 



NEW 



Write For FREE Catalog 



ra VIC SOFTWARE CBM 64 B 



Great VIC Software 



COMMODORE 64 SOFTWARE 



PARATROOPER a High Resolution game that doesn't let you make any 
I mistakes. You are in your command. Helicopters fill the sky. (and we mean fill 
I the sky!), dropping paratroopers. Your mission is to keep 3 paratroopers from 
I hitting the ground on either side of your gun. But that's just the beginning. You 
[score by hitting the helicopters or the paratroopers, but if you miss a shot it 
I subtracts from your score. Therefore, you must make every shot count to 
I make a high score! IT HAS FOUR FAST ACTION LEVELS TO CHALLENGE 
I THE BEST PLAYER, The High Resolution graphics helicoptors arc fantastic 
I They look exactly like helicopters! The paratroopers are super realistic. Their 
I chutes open and then they drift down to earth. If this weren't enough the 
1 sounds are fantastic. There are helicopter blades whirring and you can hear the 
ihowitzer pumping shells. This game really show off the sound and graphic 
I capabilities of your VIC. PARATROOPER IS OUR #1 SELLING ARCADE 
I GAME, you've got to see this game to believe it. $19.95 

SPACE PAK Can you survive? 3 space games with the sights and sounds of 
Ian arcade. The excitement builds as the action is un-ending, IBIast away at 
I everything in sight. The alien attacks will stop at nothing to destroy you. 
I Prepare for battle, there is no escape, only you can help. Can you survive? Hi- 
I Res, cobr, graphics and sound. Joystick or keyboard. 3 Games — Rockel 
I Race, Fence-A-Tron and Raiders. $19.95 

COSMIC CRUZER Hot action and 3 challenging scenarios. Move your 
I cruzer into the tunnel ■ fire missiles and drop bombs. Hit the fuel dumps to get 
I nrjore fuel. Move as quick as you dare to hit the surface-to-air missiles. If you are 
I good enough you will make it to the asteroidz field and then try to destroy the 
[base. No one has destroyed the base yet. Will you be the first. $19.95 

VIC ALL STARS We took the best selling VIC programs and put them in a 
I package to save you $35. If purchased seperately it would cost you $85. You get 
I Paratrooper, Target Command, Head On, Cattle Round-up, Snake 
I Out, Trapper, Double Snake Out and Artillerv- All eight games for $49.95. 
I Hurry because at this price they won't last long. Limited quantity. 8 
I Games. $49,95 



Let the COMPUTERMAT 
turn }jour 64 into a home arcade! 

COLOR . GRAPHICS • SOUND 
ON CASSETTE 

(Disk Versions Available — Add $5.^) 
MUSIC MAKER - $19.^5 EDUCATION PAK - $24.^^ | 

4 Programs 

Geography Match 

Math Adventure 

Ruler & Micro 



Put sheet music notes 

into your 64, plays 3 

voices. Program, plus 

2 sample songs. 



TREASURE PAK - $14,^5 
3 Programs 

Adventure 
Caves of Silver 
Shuttle Voyage 



GAME PAK - $14.^5 
3 Programs 

Dragon Chase 
Deflect 

Flip It 



Joystick and Keifboard versions included. 



COMPUTERMAT 

Box 1664 . Dept. C • Lake Havasu City, Az. 86403 
(602) 855-3357 



July 1983 COMPtlTEl 213 



another program. The music will continue until: PrOQiam ll VIC Musician 

1. You type a RUN/STOP RESTORE 

2. Attempt to use the cassette 

3. Or get so tired of it that you shut off the VIC. 

The program is driven by the hardware inter- 
rupt. Each jiffy (1/60 of a second), a counter 
($033D = 829) is reduced by one. If this decrement 
results in a value of zero, the next duration is 
placed in the counter, the next note is placed in 
the sound generator ($900C = 36876), and the note 
count is increased by two and stored at 
($033C = 828). The computer then goes on its way, 
updating the realtime clock and scanning its 
keyboard. 

The computer is not slowed appreciably. 
Most of the time, unless the note is to be changed, 
the time wasted is 120 microseconds per second 
or 120 parts per million. If the note must be 
changed, then the time lost is a few thousandths 
of a second. 



Note: A complete listing of musical pitch values, in- 
cluding sharps and flats, is in the VIC-2() Pw^raiuuier's 
Reference Guide. 



10 REM ******* VIC MUSICIAN ******* 
30 REM *** CONTINUOUSLY PLAYS ***** 
40 REM ** TUNE FROM STAR WARS ***** 
60 P0KE36878,L5 ; REM SET VOLUME TO 
70 FORI=830TO976 : READG : POKEI , C :NEXT 
80 SYS 830 I REM STARTS MUSIC 
90 REM ******* SET-UP FOLLOWS ***** 
100 DATA120, 169, 5, 141,60, 3, 169,6, 14 

169 
110 DATA13 3,133,0, 169, 3,133, 1,169,9 
120 DATA20,3, 169,3, 141,21,3,88,96 
130 REM **** MUSIC PGM FOLLOWS **** 
140 DATA206,6I,3,208,28,72,152,72, 1 
150 DATA3, 200, 17 7,0, 141, 61, 3, 200, 17 
160 DATAl , 240 , 1 2 , 14 1 , 1 2 , 144 , 140 , 60 , 
170 DATA168,104,76, 191,2 34, 160,25 5, 
180 REM *** MUSIC DATA FOLLOWS **** 
190 DATA15, 201, 15, 201, 15,201,60,215 

,15 
200 DATA22 5,15,223, 15,219,60,235,35 
210 DATA225,15,22 3,15,219,60,23 5,3 5 
220 DATA225, 15,223, 15,225,60,219,35 
2 30 DATA201, 60, 215,60, 228, 15, 225, 15 
240 DATA2I9,60,235,3 5,228,15,22 5,15 

2 50 DATA219,60,23 5,3 5,228,15,225,15 

260 DATA219,60,235,1,1 



MAX 



1,61,3, 
3,141 



72,60 
7,0,201 

3,104 

208,243 

** 

,60,228 

,228, 15 
,228,15 
,201,15 
,223,15 
,223,15 
,223,15 



Prograrn 2: Disassembled Machine Language For VIC Musician 




033E 78 






SEI 


; 


PROHIBIT INTERRUPTS (DON'T BOTHER ME) 




033F A9 


05 




LDA 


#$05 ; 


FIRST NOTE IS SILENCE 




0341 BD 


3C 


03 


STA 


$033C J 


STORE NOTE 




03 44 A9 


06 




LDA 


#?06 ; 


WAIT 6 JIFFIES 




03 46 BD 


3D 


03 


STA 


$033D J 


STORE DELAY 




0349 A9 


85 




LDA 


#$85 J 


ADDRESS LOW OF START OF MUSIC DATA 




034B 85 


00 




STA 


$00 ; 


ZERO PAGE POINTER 




034D A9 


03 




LDA 


#$03 ; 


ADDRESS HI START OF MUSIC DATA 




034F 85 


01 




STA 


$01 ; 


ZERO PAGE POINTER 




0351 A9 


5D 




LDA 


#$5D J 


ADDRESS LOW OF MUSIC PROGRAM 




0353 8D 


14 


03 


STA 


$0314 ; 


VECTOR INTERRUPT TO MUSIC PGM 




0356 A9 


03 




LDA 


#$03 ; 


ADDRESS HI OF MUSIC PROGRAM 




0358 8D 


15 


03 


STA 


$0315 ; 


VECTOR INTERRUPT TO MUSIC PGM 




035B 58 






CLI 




OK TO INTERRUPT AGAIN 




03 5C 60 






RTS 




BACK TO BASICS 




035D CE 


3D 


03 


DEC 


$033D ; 


REDUCE DELAY COUNTER 




0360 DO 


IC 




BNE 


$037E ; 


UNLESS DELAY IS FINISHED, EXIT 




0362 48 






PHA 




SAVE ACCUMULATOR ON STACK 




0363 98 






TYA 




TRANSFER Y TO ACCUMULATOR 




0364 48 






PHA 




SAVE IT TOO 




0365 AC 


3C 


03 


LDY 


$033C i 


GET POINTER TO LAST NOTE FREQUENCY 




0368 C8 






I NY 




MOVE POINTER TO NEXT DELAY 




0369 Bl 


00 




LDA 


($00),Y ; 


GET NEXT DELAY 




036B 8D 


3D 


03 


STA 


$033D 


SET DELAY DURATION 




036E C8 






I NY 




MOVE POINTER TO NOTE FREQUENCY 




036F Bl 


00 




LDA 


($00), Y ', 


GET NOTE FREQUENCY OR TONE 




0371 C9 


01 




CMP 


#$01 


IS FREQUENCY=1 (START OVER FLAG) 




0373 FO 


oc 




BEQ 


$0381 


'IF SO, PLAY IT AGAIN SAM 




0375 8D 


oc 


90 


STA 


$900C 


^ START NOTE PLAYING 




0378 8C 


3C 


03 


STY 


$033C 


?STORE NOTE FREQUENCY POINTER 




037B 68 






PLA 




f RETRIEVE Y FROM STACK 




037C A8 






TAY 




fPUT Y BACK IN Y 




037D 68 






PLA 




? RETRIEVE ACCUMULATOR 




037E 4C 


BF 


EA 


JMP 


$EABF 


?G0 ON ABOUT YOUR BUSINESS 




0381 AO 


FF 




LDY 


i$FF 


?SET NOTE POINTER TO START -1 




0383 DO 


F3 




BNE 


$0378 


? BRANCH ALVJAYS TO STORE POINTER 


© 



214 COMPUltl July 1983 



COMMADORE 64 

vic-ao 





^ 

r 
0) 

< 

u 

m 


L 



1] 
c 
e 



in 
tu 

X 



n 

d 
d 



8 Expansion 
Connectors 



Each Switched 
Individually 



Futty Enclosed 
Chassis 



Master Power 
Switch with 2 



IIOwACOUTLETS 
for computer 



and accessories 
RIBBON CABLE 



Connection 

for convenient 

placement 



LED DISPLAY 
RESET Button 



120 day chassis 

1 yr power supply 

WARRANTIES 



fingertip 
selection of 



game and other 
Cartridges 



Optional 5 volt 
Power Supply 



removes power 

load from your 

computer 



THE 
SOFT-AWARE BOX 
the mostadvanced 
expansion chassis 



S1 49.00 each 

Power Supply 

S35.00 each. 



^ 



L 

D 

u 

1^ 


n 

L 



X 

00 

c 

2 

4i 



V 

o 
a 
a 

£ 
ID 



SOFT-AWARE 

WlCFIOCCMVWJUTEn saeRIPMEHALS AMD SC3FTWAF3E 

RO. Box 725, Giendora. CA 91 740 

VlC-BO vncl CBM B4 are tradamarks 
of Commodora Bifalnaaa Machlnaa 




FIVE POWERFUL SOFTWARE 
DEVELOPMENT TOOLS 

fVus the Smt'mg J<!cw Book 
INSIDE THE VIC 



THE BOOK 

A compldts clear explanation of machine 
language, Assembly languaQe, V9C 20 archi- 
tecture, graphics. Joystick and sound effect 
programming. Detailed step-by-step guide to the 
use of the development tools. How to combine 
BASIC and machine language, make auto-3tart 
cartridges, Interface with the Internal F^OM- 
based programs of BASIC and the Kernal. 
Sample programs fully explained. 



THE TOOLS 



Assembler/ Editor/Loader/ Decoder^M on Itor 
Fulhfeatured Assembler allows use of labels, 
comments and arithmetic expressions to create 
machine language programs. Create, save, 
modify Assembly language programs with the 
Editor. Load and link machine language modules 
with the Loader Decode machine language back 
Into assembly language for study or input to the 
Editor. Single-step program execution with the 
Monitor. Extended features combines Assembler/ 
Editor for maximum ease of use. 



ALL FOR $49.95 plus $2.00 postage and handling standard version runs on 
any system with Datasette (5K and up) Add $5.00 for disk version, $5.00 for extended features 
(minimum 8K) Send checit, iM.O., ViSA/IMC ($2.00 S.C.) or specify C.O.D. (add $3.00) to: 

P.O. BoK 207, Cannon Fails, MN S50O9 
507-263-4621 

VIC-20 Is a reglttered TM ot 

Commodorr BusJncss Mitchin^i Inc. 




VOICE WORLD'S 




24K Golden RAM 
Expansion Chassis 

■^ ONLY $149.00 



• Programmer's dream— Game 
player's delight. 

• Boosts VIC 
memory to 
29K! 

• 4 expansion slots 
with switches for in- 
stant cartridge selection^' 
faster than a disk- 

• Accepts any cartridge 
designed for the VIC 20® 

• System Reset Button. 

• Plugs directly into your VJC 20®. 

• 8 memory control switches— easy to 
configure in 8K banks for custom 
applications. 

• Factory tested— one year limited wan-anty, 

VOICE WORLD 

1 3055 Via Esperia 
De! Mar. CA 92014 
(619)481-7390 

VIC 20 is a registered trademark of Commodore Business Machines, INC, 





Start address selection at 2000, 
4000. 6000, AOOO HEX. 

ROM mode switches for 
memory write protec- 
tion and PROM, 
EPROM 
emulation. 
• Memory 

banks 
hold pro- 
grams/data 
even when de- 
selected. 
Gold-plated connectors/ 
switch contacts for high reliability. 
• Fused to protect your VIC 20.® 

TO ORDER: 

Send check or money order. Add 3.00 
shipping and handling. California 
residents add 6% sales tax. COD 
DEALER INQUIRIES INVITED 



July 1983 COMmmi 215 



Timex/Sinclair 
Screenscrolls 



Glen Mortin 



As amjonc who has worked with a ZX-Sl or TS-1000 
knows, the scroll facility could be expanded and im- 
proved. It cuts dow}i the display file, ami screen POKEs 
(which are difficult at best) are made nearly impossible. 
This article provides the solution. 



Here are four machine language routines which 
provide left, right, up, and down scrolls. The 
scrolls may be used singularly or in any combina- 
tion. When entered together, they occupy a mere 
106 bytes, including the six bytes needed for the 
REM statement they are stored in. 

These utilities will keep the display file ex- 
panded to its maximum size, making screen 
POKEs possible. If preferred, the programs could 
be assembled above RAMTOP so they would not 
be affected by NEW or LOAD. Note: These pro- 
grams will not work with less than 3V4K of RAM, 
because of the unexpanded display file. 

The programs are POKEd in by a short BASIC 
hex loader, which can also be used for your own 
machine language routines. Although no previous 
knowledge of machine language is required to 
use these programs, I have included mnemonics 
as well as hex listings. This will be helpful to those 
readers who understand the Z-80 instruction set 
and wish to modify or disassemble the programs. 

Step-by-step Instructions 

The first step in using these scrolls is to type in a 
REM statement to store them in. The REM state- 
ment must be at least 100 characters long, prefer- 
ably a few bytes longer, so if a mistake is made 
the program won't POKE up into BASIC. After 
you have entered the REM statement, enter 
POKE 16510,0 in the direct mode. This POKEs 
the first Hne number to so that it cannot be acci- 
dentally edited or deleted. Next, type in this hex 
loader program: 

216 COMPUTE! July 1983 



5 LET A=16514 

15 FOR X=l TO LEN A$-l STEP 2 

20 POKE A, 16* CODE A$(X)+ CODE A$ 

(X+l)-476 
25 LET A=A+1 
30 NEXT X 

Now comes the tricky part. Type in 10 LET 
A$ = " and the hex listing of Program 1 (Upscroll) 
(e.g., lOLET A$ = '^2A0C40...10FBC9"). ending 
with quotation marks. Be extremely careful here, 
since any mistake could crash the computer. Note: 
There are no spaces in line 10; the hex codes are 
simply typed in one after the other. 

After you have entered line 10 and double- 
checked for errors, run the program. When it has 
finished, enter 'TRINT A" in direct mode. This 
should return a value of 16538. If it does not, 
reenter line 10 and rerun the program. 

The variable "A" is simply a pointer to the 
address at which the next block of code is to be 
assembled. Therefore, to enter the next block into 
your computer you must change line 5 to 5 LET 
A = 16538. Then enter the hex listing for Program 
2 (Downscroll) into line 10 and rerun the program. 
This time, A should be equal to 16567. 

Change line 5 to 5 LET A = 16567 and enter 
the listing for Program 3 (RightscroU) into line 10. 
Run the program and check that A is 16588. 
Change line 5 again to 5 LET A = 16588 and enter 
the code for Program 4 (Leftscroll). Run the pro- 
gram; A should now equal 16614. 

Test Program 

Now that the machine language has been entered, 
lines 5 through 30 can be deleted and a short test 
program can be run. Enter the test program shown 
below and run it: 

5 INPUT A$ 

10 LET L= LEN A$ 

15 IF L>31 THEN GOTO 5 



20 PRINT AT 11, (31-L)/2;A$ 

25 IF INKEY$^''5" THEN RAND USR 16588 

30 IF INKEY$^"6" THEN RAND USR 16538 

35 IF INKEY$ = '*7" THEN RAND USR 16514 

40 IF INKEY$="8" THEN RAND USR 16567 

45 GOTO 25 

The program will wait for an input, so enter a 
string of less than 32 characters. The string will be 
printed in the middle of the screen. You should 
be able to move it around using the arrow keys 
(5-8). 

This program was written as a simple test; 
the scrolls could certainly be put to better use in 
programs for games, word processors, or anything 
else you might come up with. I have used varia- 
tions of these scrolls in a machine language arcade- 
type game 1 am working on and have found that 
they work quite well. If you want to convert the 
code listings into decimal, but are not familiar 
with hexadecimal, the codes from 00 to FF are 
given beside their decimal equivalent in Appendix 
A (p. 137) of the Sinclair BASIC MammL 

Let's take a brief overview of the techniques 
used in these scroll routines. In the horizontal 
scrolls, everything is shifted up or down one byte, 
and the first/last column is filled with spaces. A 
POKE can be entered so that the empty column 
is filled with a different character. The accumu- 
lator is used as a temporary store variable, as in a 
bubble sort. 

In the vertical scrolls, the main instruction is 
Idir/lddr. With this instruction, the hi register pair 
is loaded with the start address of the block to be 
transferred. The de register pair is loaded with 
the address the block is to be moved to, and the 
be register pair is loaded with the length of the 
block. With these scrolls, everything is shifted 
up/down 33 bytes (the length of one line + one 
byte for the ''enter" character). The empty line is 
filled with spaces, but a POKE can also be used 
here to fill the empty line with another character. 



BEGINNING PROGRAMMERS 
If you're new to computing, please read ''How 
To Type COMFUTEt's Programs'' and "A 
Beginner's Guide To Typing In Programs." 



Program 1: Upscroii 



2A 


0C 


40 


Id hl,(400C) 


23 






inc hi 


E5 






push hi 


11 


21 


00 


Id de,0021 


19 






add hl,de 


Dl 






pop de 


01 


B5 


02 


Id bc,02B5 


ED 


B0 




Idir 


EB 






ex de,hl 


06 


20 




Id b,20 



Blnk 


36 
23 


00 




Id (hi), 00 
mc hi 




10 


FB 




djnz Sink 




C9 






ret 


Progi 


ram 


2:i 


DownscrotI 




2A 


10 


40 


Id hi, (4010) 




11 


43 


00 


Id de,0043 




ED 


52 




sbc hl,de 




E5 






push hi 




11 


21 


00 


Id de,0021 




ED 


52 




sbc hl,de 




Dl 






pop de 




01 


B5 


02 


id bc,02B5 




ED 


B8 




Iddr 




EB 






ex de,hl 




06 


20 




id b,20 


Blnk 


2B 






dec hi 




36 


00 




Id (hi), 00 




10 


FB 




djnz Blnk 




C9 






ret 


Progi 


ram 


3: 


Rightscroll 




2A 


0C 


40 


id hl,(400C) 




06 


16 




Id b,16 


Lpl 


C5 






push be 




06 


20 




Id b,20 




3E 


00 




Id a, 00 


Lp2 


23 
4F 
7E 
71 






inc hi 
Id c, a 
Id a, (hi) 
Id (hl),c 




10 


FA 




djnz Lp2 




23 






inc hi 




CI 






pop be 




10 


Fl 




djnz Lpl 




C9 






ret 


Program 


4: Leftscroll 




2A 


10 


40 


Id hi, (4010) 




11 


43 


00 


Id de,0043 




ED 


52 




sbc hljde 




06 


16 




Id b,16 


Lpl 


C5 






push be 




06 


20 




Id b,20 




3E 


00 




Id a, 00 


Lp2 


2B 
4F 
7E 
71 






dec hi 
Id c,a 
Id a, hi 
Id (hl),c 




10 


FA 




djnz Lp2 




2B 






dec hi 




CI 






pop be 




10 


Fl 




djnz Lpl 




C9 






ret 



COMPUTE! 

The Resource 



o 



Juty19e3 COMPUTE! 217 



Part VI 



Commodore 64 Video 
A Guided Tour 



Jim Butterfietd, Associate Editor 



This month we explore a fairly advanced technique: 
split screens on the Commodore 64, It's a new aspect of 
the computer, combining things we have already learned 
into a new set of capabilities. Well demonstrate, via a 
BASIC program, an amazing visual display. 



We'll need to venture into more technical waters 
now, but with a little effort, we can perform some 
minor miracles on the Commodore 64 screen. All 
the limitations we have learned may be set aside 
with a little creative ''cheating/' We'll have to 
venture into machine language; but even if you're 
not a ML tyro, it's worth knowing that the job can 
be done. 

We have learned a number of limitations, 
largely based on the idea that the screen can do a 
lot of things, but only one at a time: 

• We can have only one background color, 
unless we are in multicolor mode; and even 
in that case, we're restricted to our choice of 
colors. 

• We can obtain information only from one 
16K memory quadrant. 

• We can use only one character set. 

• We can be in character mode or bit map 
(hi-res) mode, but not both. 

• We may have only eight sprites on the 
screen at one time. 

In fact, we have a more general set of rules. 
We may be in only one mode at a time - multicolor 
is either on or off; extended color is either on or 
off; and so on. It seems impossible to mix screen 
modes and have the best of both worlds, but we 
can do it. 

Here's the trick: the "Raster Register," ad- 
dress D012 together with the high bit of DOll, can 
do more than tell us where the screen is being 
painted at this instant. We may store an "inter- 

218 COMPUTl! July 1983 



nipt" value there, and tell the computer: "Advise 
me when you get to this part of the screen." At 
this point, we can switch screen characteristics: 
color mode, high resolution, background color, 
character set, memory bank - whatever you want. 
Of course, we need to put it all back when we 
return to the top of the screen. 

The Task 

We're going to write a quick program to split the 
screen into two parts, each with a different char- 
acteristic. It won't be perfect; we're just trying to 
show the technique, not to polish up all the loose 
ends. The fine points will come later. First, let's 
plan. 

If we set a new "interrupt" into our machine, 
we'll need to make some careful distinctions. First, 
when an interrupt happens, we must establish: 
who caused this one? Was it the raster, or the 
traditional interrupt source of 1/60 second timing? 
Second, if it was a raster, which part of the screen 
is involved - the top or the "switch" point? 

The Interrupts 

Let's start to lay out the machine language pro- 
gram. All interrupts will come here, and we'll 
need to sort them out. We'll put the program into 
the cassette buffer. 

033C AD 19 DO INT LDA $D019 
033F 29 01 AND #$01 

0341 FO 19 BEQ REGDLR 

The interrupt has happened and has come here. 
Check the Raster Interrupt Bit in D019 - was this 
one caused by the raster? We'll need to mask out 
the bit we want with an AND. If we get nothing, 
it's a regular interrupt - go there. 

0343 8D 19 DO STA $D019 

It is indeed a raster interrupt, and we must shut 
off the alarm. We do this by storing the bit back 
where it came from (there's a 1 in the A register 
right now). Amazingly, this turns the bit off. 




Q commodore 

NEW COMMODORE PRODUCTS 

CBM 128-40 $ 695 

C8MC128-80 795 

CBM 8700 2990 

CBM 1520 Plotter. 169 

CBM 1701 Color Monitor. .......... 269 

B Serfes Software Coll 

C8M 4023 Printer 399 

SOfTWARE FOR CBM ME 

Word Processing (WordPro 3*) $ 69 

M File Dotobose 

(merge witti Word Pro) 89 

Quick Bfown Fox 56 

Writer's Assistant (easy and flexible) . . . 99 
File Assistant (database wim merge) . -. 99 

Spreadsheet Assistant ......... 99 

Pens. FJnonce Assist.(greaf reports) ... 45 

Busicalc (Spreadstieet) 55 

Coco i I (build your own gomes eosity)... 45 

Cole Result 125 

General Ledger, A/ HA/ P 

(wttti chec*t writing) eal39 

CBM EosyFinonce 50 

CBM EasySaipt 80 

CBM EasyRle. 80 

Data Manoger 70 

Stock(lnvKtm0nt analysis) 80 

Pet Emulator (emulates 4.0 basic) 30 

Sprtte-Moster 29 

Affiembler Pockage (cassette or disk, 

compifea includes editor, loader, 

dIsossembleO 39 

Spocebelt. 20 

Retroboll 34 

ZWARK 25 

INTERFACES & ACCESSORIES 

80 Column Expander. $159 

V1C1600 Modem 95 

VIC 1650 (outo answer, auto dial). ... 150 

VIC 1525 Graphic Printer 329 

VIC 1 530 Masette Recorder 65 

VIC 1541 Disk Drive 329 

VIC ^itch (connect 8 64's or Vies 

to printer, dd) 1 49 

PET- IEEE coble 33 

IEEE-IEEE coble (2m) 43 

Parallel Interface (Epson, Okidota 

IDS, NEC) 80 

RS-232 Printer Interface (Okidota 

Diabia eta) 60 

Programmers Reference Guide ...... . 18 

Vertwtim Diskettes (1 per box) 26 

Victree (Programmers Utility). ........ 75 

VIC PRODUCTS & ACCESSORIES 

8K RAM Memory Expansion Cartridge ... $ 40 

16KRAM 70 

24KRAM 105 



VIC 3 Slot Expander. 27 

V?C 6 Slot Exjwnder. 70 

RS-232 Printer Intertoce 65 

Cassette Interface ao 

Gorf(64also)... 30 

Omega Race 30 

Arcade Joystick - Heovy duty w/2 firing 

buttons! Great for ttie VIC or 64 . . . . 25 

MONITORS -GREAT 
RESOLUTION 164 OR VIC) 

Amdek Color! $ 299 

Amdek II or IH call 

Panasonic CT160 279 

Comrex 6500 - 13" Color 299 

Tronstar 20 (Higb Resolution 

Green Ptiosphor) 1 29 

Video/ Audio Cable 15 

PRINTERS - LETTER QUALITY 

CBM 8300, 40 cps $1450 

Diablo 620, 25 cps 949 

ComRiter, 17 cps 8T9 

Transtor 130, 16 cps (auto toad 

wp features!) 769 

NEC 7700 series 2350 

NEC 3500 series 1600 

PRINTERS - DOT MATRIX 

CBM 8023, 150 cps/ graphics . . 589 

Epson FX Printer, 160 cps ......... . 549 

Epson MX-80FT 459 

Epson MX-80 w/Groftrax 349 

CBM Graptiics for Epson 65 

Okidota 82 A 120 cps (serial 

and parolleO 429 

NEC 8023A (parallel) 429 

Okidota 92 559 

Star Gemini, 10.... 329 

Star Gemini, 15 499 

COMMODORE BUSINESS 
SERIES 

SuperPet (5 languages, 

2 processors) $1 409 

CBM 8032 Computer, 80 Column ... 1029 

CBM Memory Expansion, 64K 359 

CBM 8050, T mg. Dual Drive 1259 

CBM 8250, 2 mg. Dual Drive 1395 

CBM D9060, 5 mg. Hard Disk .,,... 1995 

C8M D9090, 7.5 mg. Hard Disk 2295 

CBM 2031, 170K Single Drive (New) 489 
DC Hayes Smorf Modem 220 

BUSINESS SOFTWARE 

WordPro 4* or 5+ $ 309 

Administrator 489 

VtsiCoic (expanded) 199 

TTie Manager (dotobose) 1 99 

BPf A/a G/L Job Cost, Inventory, 
Pavroll ....ea325 



MasterCard, Visa, 
Money Order, Bank Check 

ODD (odd S5) occepted. 

Add 3% surcharge for credit cards. 

in stock items shipped witUm 48 hours, 

F.O.B, Dollos, Texas 

All products shipped with manufacturer's 

warronty. 

Prices ore subject to change without notice. 

TO ORDER 

CALL TOLL FREE 

800-527-4893 

800-442-1048 

(Within Texas) 

Business Hours 
Mon.- Ri, 8 to 6, Sot. 10-2 

Write for free catalog. 

GAME OF THE MONTH 

Adventu- Writer (moke your 
own odventure game) 39 

PRODUCT OF THE MONTH 

INTERPOD (intelligent IEEE 
RS232, serial interface 
forVICorC64) $ 179 




SJB DISTRIBUTORS INC. 

10520 Rano Rood, Suite 206 

Dallas, Texas 75238 

(214) 343-1328 



0346 A2 92 
0348 AO 15 



LDX #$92 
LDY #$15 



We'll prepare the registers, assuming we are 
doing the top-of-screen work. The hex 92 is deci- 
mal 146 - the scan line that hits about mid-screen; 
that's where we will want the next interrupt to 
take place. Note that hex 92 is considered a "nega- 
tive" byte; we will use this fact in just a moment. 
Now, let's see if we are correct about being at 
mid-screen: 



034A AD 12 DO 
034D 10 04 



LDA #$D012 
BPL MID 



We look at the raster scan. If it's less than 
127, we're near the top of the screen, and we don't 
see the "negative" byte. So we skip ahead. If, 
however, we are at the middle of the screen, we'll 
see a "negative" value. We won't branch; instead, 
we'll fix up the registers for mid-screen work: 



034F A2 
0351 AO 



01 
17 



LDX 
LDY 



#$01 

#$17 



Both streams join again at this point. X con- 
tains the raster location where we will want the 
next interrupt: if we're at the top, we want to be 
interrupted at the middle (hex 92); if we're at the 
middle, we will want to be interrupted at the top 
(hex 01). Y contains information on the character 
set we want to choose: graphics or text. Let's pro- 
ceed: 

0353 8E 12 DO MID STX $D012 

Place the next interrupt point into the raster regis- 
ter. The next interrupt will now hit at the right 
time. 

0356 8C 18 DO STY $D018 

Place the "character set" value - hex 15 for 
graphics, hex 17 for text - into the appropriate 
register. 

0359 4C BC FE JMP $FEBC 

We've done our job. We may now exit. Don't give 
an RTI; instead, go to a routine that cleans things 
up nicely, at FEBC. And what of our regular 
interrupt? 

035C 4C 31 EA REGULR JMP $EA31 

It goes to the normal address, to which regular 
interrupts go. 

We have more to do after we get this program 
into memory. We must also detour the interrupt 
vector to our new program, and fire up the raster 
interrupt control 

Back To BASIC 

Ready to put all this in BASIC? Here we go: 

100 FOR J = 828 TO 862:READ X 

110T = T+X:POKEJ,X 

120 NEXT] 

130 IF To 3958 THEN STOP 

200 DATA 173,25,208,41,1,240,25,141,25,208,162,146, 



160,21,173,18 
210 DATA 208,16,4,162,1,160,23,142,18,208,140,24,208, 

76,188,254,76,49,234 
300 POKE 56333,127 
310 POKE 788,60:POKE 789,3 
320 POKE 56333,129: POKE 53274,129 

Let's look at the last three lines. Line 300 kills 
the interrupt for a moment, so that we can mess 
with the interrupt vector without running into 
disaster. Line 310 changes the interrupt vector to 
point at our newly POKEd program. Line 320 
restores the interrupt, and adds an extra one: the 
raster interrupt. 

An Amazing Split 

When the program is run, an amazing thing hap- 
pens: the screen becomes graphic at the top and 
text at the bottom. Impossible, you say? Not for 
us clever - and careful - people. The effect is per- 
manent: you may NEW the program and start 
something else and the split screen will still be 
there. 

You shouldn't use cassette tape with this 
program in place - it's there in the buffer. And 
you may find that LOAD and SAVE don't work 
quite right. RUN-STOP/RESTORE will put every- 
thing back to its former state. 

The Unsolved Probiem 

But it's not perfect (I warned you). Every once in 

a while, the barrier seems to creep slightly, and 

then correct itself. Maybe it's computer hiccups. 

It seems worse when you are using the keyboard. 

What's happening? And how can we fix it? Stay 

tuned. 

Copyright © 1983 }im Butterfield g 



COMPUTE! 

The Resource. 







'.^i 



P.O. BOX 34741 
BARTLETT, TN. 
38184-0741 

'TN. HE5/ADD £'•% SALES TAX 
INCLUDE ISO SHIPmNDLC 



MULTl*SCREEN " MACHINE* LANGUAGE 
vyou won't come back to earth fi 



220 COMPUTE! July 1983 



Atari Artifacting 



Judson Pewther 



These tools for exploring artifacting can create some of 
the most beautiful graphics i/oi/ve ever seen from your 
Atari. 



Even if you are not already familiar with the phrase 
television artifacts, you have probably noticed that 
the colors of points and lines drawn in Atari's 
graphics mode 8 are not always what they are 
supposed to be. (False colors may also appear in 
graphics mode 0.) These comments apply unless 
you are using a high resolution color monitor 
with digital input. 

Although the BASIC Reference Manual claims 
that only "one color and two different lumi- 
nances" are available in GRAPHICS 8, in actual 
fact six distinguishable color/luminance combina- 
tions are possible because of TV artifacting. 

While the BASIC Referetice Manual does not 
mention this very interesting fact, it is fully 
documented in De Re Atari, Appendix IV, which 
gives the definition: "The term TV artifacts refers 
to a spot or 'pixel' on the screen that displays a 
different color than the one assigned to it." And 
as further explained, TV artifacts are caused by 
the way in which color and luminance information 
is modulated onto an NTSC television signal. 

Let's summarize the effects of artifacting in 
GRAPHICS 8: 

1. The effect is maximized by plotting a light 
color (high luminance) on a dark background, 
or dense dark patterns on a light background. 

2. The color of a pixel is not affected by its Y- 
coordinate. 

3. The color displayed by a pixel depends not 
only on its assigned color, but also on whether 
its X-coordinate is even or odd, and on the 
color assigned to its horizontal neighbors. 

4. Horizontal resolution has a practical limit 
of 160 rather than 320. Thus, two horizontally 
contiguous pixels tend to form a single pixel 
of uniform color. 

What colors are actually produced? This can 
depend on the particular TV monitor being used, 
and on the exact setting of its controls. The setting 



of the tint control will make the biggest difference. 

The major effects of plotting white (the as- 
signed color) pixels on a black background are 
summarized in the following table. N is the 
number of horizontally contiguous white pixels. 
X is the X-coordinate(s) of these pixels in terms of 
"even" and "odd." COLOR is the approximate 
actual color displayed by these pixels, assuming 
normal settings on the TV monitor. 
N X Color 



even 
odd 

even-odd 
odd-even 



green 

blue 

orange 

lightblue 

nearly white 

white 



The Table Illustrated 

The short program below illustrates artifacts by 
drawing two series of nearly vertical white lines 
on a black background. Colored horizontal bands 
are produced in accordance with the rules in the 
previous table. No actual white is produced in 
this example, because there are at most only 
pairs of horizontally contiguous "white" pixels. 
Notice in particular that the solid-color bands are 
created either because all the "even" pixels give a 
solid green, or all the "odd" pixels give a solid 
blue. 

Lines 199 to 250 can be added to allow the 
user to easily step the assigned hue through all 16 
possibilities, while preserving the luminance 
setting for the background and the 14 luminance 
setting for the plotted lines. The background color 
may be nearly invisible because it is at luminance, 
but the colors in the horizontal bands will change 
greatly. Remember that in GRAPHICS 8 the hue 
associated with the COLOR 1 statement and with 
the lines that were drawn is the background hue 
as determined in the SETCOLOR 2,hue,0 state- 
ment. Even when we are not seeing the assigned 
hue because of TV artifacting, changing the as- 
signed hue changes the displayed hues. 

Best results are obtained by adjusting TV 
brightness and contrast to a low or minimum 
value. TV color may be boosted somewhat, but 
too much boost blurs the picture. However, the 

July 1983 COMPUTE! 221 



tint control may be adjusted freely from one ex- 
treme to the other to vary the colors. These com- 
ments apply generally to any program where TV 
artifacts are used. 

Program 1:tv Artifacts 



10 


BRAPHICS 8: COLOR 1 








20 


SETCOLOR 1,0,14 


: SETCOLOR 


2,0, 





30 


FOR X=0 TO 318 


STEP 


4 






40 


PLOT X,0:DRAWTO 


X+1, 


159: 


NEXT 


X 


50 


FOR X=0 TO 308 


STEP 


4 






60 


PLOT X,0:DRAWTO 


X + 9, 


159: 


NEXT 


X 


199 


REM ttt CHANGE 


HUE 


ttt 






200 


H=0:OPEN #1,4, 


0, "K: 


" 






210 


? :? "ASSIGNED 


HUE 


IS NOW "; 


H 


220 


? "HIT H KEY TO CHANGE 


HUE" 




230 


GET #1 , X: IF X< 


>72 THEN 


230 




240 


H=H+1 : IF H=16 


THEN 


H^0 






250 


SETCOLOR 2,H,0 


:GOTC 


\ 210 







TV artifacts are really a failure of resolution, 
but a very interesting failure. And the colors pro- 
duced can add dazzle to graphics art programs. 
Although these false colors may at times be an- 
noying, and although the failure in horizontal 
resolution is certainly an annoyance, TV artifacts 
compensate considerably for the fact that only 
two intensities of a single color are officially avail- 
able in GRAPHICS 8. 

Moire Patterns 

Program 2 is a graphics art program which relies 
on artifacts for its beauty. It also makes use of a 
technique for creating enhanced moire patterns. 

You are probably already familiar with the 
simple type of moire pattern produced by a pro- 
gram like the following: 

Program 2: Simple Moire 

10 GRAPHICS 24 

20 SETCOLOR 1 , , 1 4 : SETCOLOR 2,0,0 

30 FOR X=0 TO 3ia STEP 3 

40 COLOR liPLOT 159,0:DRAWTO X,171 

60 NEXT X 

70 BOTO 70 

To see a somewhat different moire pattern 
with a more uniform distribution of light and en- 
hanced contrasts in the details, add the following 
line and run the program again: 

50 COLOR 0:PLOT 159,0:DRAWTO X + 1,191 

This program step draws a black line which 
cancels out half (or more) of the "white" pixels 
which were plotted in the previous step, line 40. 
This basic idea is varied and elaborated in Program 
3: Pyramid. 

Program 3 is designed so that slow typists 
(like myself) will not have to type in the whole 
thing just to see what it does. The first half of the 
program (lines 100 through 470) is almost entirely 
for the purpose of letting the user control the 

222 COMPUTE! July 1983 



parameters of the pattern in order to see better 
how the various effects are achieved. To eliminate 
some typing, replace the first half of the program 
with the single line: 100 GRAPHICS 24. Then 
begin typing at line 500. 

The program is essentially self-explanatory, 
but it might be worthwhile to point out a few 
things. Lines 500 to 540 select a set of random 
parameters for the pattern that is about to be 
drawn. WHITE and BLACK are associated with 
the subroutine for drawing a set of vertical lines 
at line 1000 in the program. They are dual purpose 
variables: if equal to or 1, then a set of "even" or 
"odd" lines will be drawn, but if greater than 1 
the subroutine will not be called. So, the prob- 
ability is .25 that WHITE will call the subroutine, 
since it is a random integer ranging from to 7. 
The same applies to BLACK. 

WHITE lays down a colored background for 
the pattern, but has a slightly different effect if 
the old pattern has not been wiped out by line 
730. BLACK erases all colors in the pattern 
except for black and another color, just before the 
program recycles to select a new set of random 
parameters. 

Line 535 works in conjunction with line 740 
to insure that the new values of MODE, APEX, 
and SPACE are not exactly the same as the old 
values. 

Line 550 prevents the attract mode from set- 
ting in as long as the program continues to recycle 
through new variations. 

Except for the user option to hold a pattern 
indefinitely (lines 450 and 720), there are no forced 
time delays. It takes about a minute for the pro- 
gram to make one cycle, which should be more 
than enough time to observe a variation of the 
pattern. If you wish to freeze a particular pattern, 
program execution mav be stopped and restarted 
by hitting CTRL]. 

Finally, although the program isn't especially 
fast, I think you will find that many of its variations 
are as spectacular as anything you have yet seen 
on your Atari. 



Program 3: Pyramid 



100 

1 12 
1 13 
114 
115 
120 
130 
140 
150 

160 



GRAPHICS 
HE PYRAMID 



POSITION 



9,2: 



'*** T 



? "ADJUST TV CONTRAST AND" 

? "BRIGHTNESS TO MINIMUM-";? 

? "ADJUST TV COLOR AND TINT" 

? "TO SUIT INDIVIDUAL TASTE.":? 

? "YOUR CHOICE: " 

? " (0) RANDOM PARAMETERS" 

? " (1> USER CONTROLLED PARAMETERS" 

INPUT CHOICE: IF CHDICE=0 THEN GR 

APHICS 24:GaTD 500 

IF CH0ICE<>1 THEN 150 



170 

180 
190 
200 
210 
220 
230 
240 
250 
260 
270 
280 
290 
300 
310 
320 
330 
340 
350 
360 
370 
380 
390 
400 
410 
420 
430 
440 
450 
460 
470 

498 
500 
510 
520 
530 
535 

540 
550 
598 
600 
620 
630 
640 
650 
660 
670 
680 

690 

700 

710 

720 

730 

740 

750 

999 

1000 

1010 

1020 

1999 

2000 

2010 

2020 



2030 
2999 
3000 
3010 
3020 



7 :? "DRAW BACKGROUND OF VERTICA 

L LINES?" 

-^ " (0) EVEN LINES" 

-^ " (1) ODD LINES" 

? " C2) NO BACKGROUND" 

INPUT WHITE: IF WHITE=2 THEN 230 

IF WHITEO0 AND WHITE<>1 THEN 210 

? :7 "DRAW PYRAMID IN MODE" 

? " (0> FROH THE CENTER OUTWARD" 

? " (1) FROM LEFT TO RIGHT" 

INPUT MODE 

IF MODEO0 AND MDDEOl THEN 260 

? :? "FOR APEX OF PYRAMID USE" 

? " (0> ONE POINT" 

? " < 1 > TWO POINTS" 

INPUT APEX 

IF APEXO0 AND APEXOITHEN 310 

? :? "SPACING OF RAYS FROM APEX?" 

? "(USUALLY AN INTEGER: 2 TO 6)" 

INPUT SPACE: IF SPACE< 1 THEN 350 

? :? "DRAW BLACK VERTICAL LINES?" 

? " (0) EVEN LINES" 

? " CI) ODD LINES" 

? " (2) NO LINES" 

INPUT BLACK: IF BLACK=2 THEN 420 

IF BLACKO0 AND BLACKOl THEN 400 

? :? "WHEN FINISHED" 

? " (0) GOTO RANDOM PARAMETERS" 

? " <1) HOLD THE PATTERN" 

INPUT HOLD 

IF HOLDO0 AND HOLDOl THEN 450 

IF CH0ICE=1 THEN GRAPHICS 24:G0T 

600 

REM ttt RANDOM PARAMETERS*** 

WHITE = INT<RND(0> »8> 

MaDE=INT CRND C0) *2) 

APEX=INT (RND (0> *2) 

SPACE=2+INT(RND(0) *5) 

IF MODE=M AND APEX=A AND SPACE=S 

THEN 510 
BLACK^INT (RND (0) «8) 

POKE 77,0: REM RESET ATTRACT MODE 
REM *** PROGRAM EXECUTION *** 
5ETC0L0R 2,0, 0; SETCOLOR 1,0,14 
IF WHITE>1 THEN 640 
COLOR 1 : B=WHITE: GOSUB 1000 
IF MODE=0 THEN GOSUB 2000 
IF M0DE=1 THEN GOSUB 3000 
REM *** DRAWTO SIDES ttt 
FOR K=191 TO 1 STEP -SPACE 
COLOR 1:PL0T 1 59 , APEX : DRAWTO 318 
,K:PLOT 159, APEX: DRAWTO 0,K 
COLOR 0;PLOT 159,0:DRAWTD 318, K- 
1:PL0T 157,0:DRAWTQ 0,K-1:NEXT K 
IF BLACKM THEN 720 
COLOR 0: B^BLACK: GOSUB 1000 
IF HDLD=1 THEN 720 

IF RNDC0)<0,2 THEN GRAPHICS 24 
M=MODE: A = APEX : S= SPACE 
GOTO 500 

REM **« SUBROUTINE VERTICAL LINES 
FOR K=B TO 319 STEP 2 
PLOT K,0;DRAWTO K,191:NEXT K 
RETURN 

REM »** SUB STARTS FROM CENTER 
FOR K=0 TO 158 STEP SPACE 
COLOR 1:PL0T 159,0: DRAWTO 159+K 

, 191 : PLOT 159, 0: DRAWTO 159-K, 191 

COLOR 0:PLOT 1 59 , APEX : DRAWTO 1 6 

0+K, 19 1: PLOT 159, APEX; DRAWTO 15 

8-K, 191 

NEXT K:RETURN 

REM «** SUB DRAWS LEFT TO RIGHT 

FOR K=0 TO 319 STEP SPACE 

COLOR 1:PL0T 1 59 , APEX : DRAWTO K,191 

COLOR 0:PLOT 159,0:DRAWTO K+1,1 

91:NEXT KrRETURN © 



AAAA 

ATARI ATARI' ATARI ATARI 



INrKODUCINCi. 




4fiK 

$49.95 



The mast user -friendly matt tfiainienana' 
profifattt avuiliihle! Here are a Jew of the 
oitf standing features, , . 

• New OS that offers fewer crasfied- 
dtsks-Tfue fanclom access-Slore 500 !o 
2000 names/addresses per disk 

• Works on single or double density 

• Auiomatic delete oi duplicates 

• Print a disk directory 

• Official state abPfeviations are built-tn 

• Make Dack-up copies • Merge files 

• Search files • Sort files 

• Create sub-files • Prmt lables/ft!e copy 
(.et "Super Mafler" speed your ma tS! 



A/cnv/^.^Pive 




. 16K Cartridge r g^g 95 

• 10 Screens ^ 

• Greal graphics $44.90 



FREE CATALOG 

^ WITH ANY ORDER ... OR SEND S1.00 

{Refundable witfi Order) 

• OVER 1000 items for your 
ATARI! 

Including producl descnplions 

• MOSAIC • PERCOM 

• BRODERBLfND • APX 

• ROKLAN • ON-LINE 

• DATASOFT • ATARI- 

• ADVENTURE INFL 

• SYNAPSE • VISICALC • Much More 

* We handle only ATARI compatible 
hardware & software ... so we know 
what works best! CALL US FIRST!!! 




ZAXXON 

play The Arcade Game at home 




• Non-Stop, 3-D 
Scrolling Action 

by Datasoli 

Reg. $39.95 



$35.10 



Protect Your Investment 
DUST COVERS 

• Durable Brown Vinyl 

• 410 • 400 • 800 • 810 



Please Specify 



$8.95 




• Top-Ten Games • 

1. Miner 20^9er 6, Cfioplifler 

CS39.50) 

7. Gflfatiad& Holy Grail 

(D.$29.9S) 

(DJ$3T,50 a Froqger 

C-S39.50) (D,T$31.50) 

4. Astro Chase 9. Football 

{DJ-$2G.90} (DJS2S.90) 

6. Defender 10. Q^X 
(CS39.50) (C-S39.50) 

NOTE: D = Disk T = Tape C - Cartriijge 



CREDIT CARD ORDERS • • Master Card 
TOLL FREE 1-800-452-8013 • American 

(ORDERS ONLY - For Infornnation {503)683-6620 ExpreSS 

• Visa 



Shipping & Handling: UPS or PARCEL POST $2.00 
UPS Air (48 hr. Delivery!) $3.90 



s 



COMPUTER 
MUACE 



Formerly 
Royal Soff^vare 



2160W. 11th Ave. 
Eugene, OR 97402 
(503)683-6620 



All About The 

Commodore USR 

Command 



John L Doriing 



Have you wondered hoio to use B ASICs USR com- 
mand? This article explores this useful feature with 
examples for every Commodore computer. 

This introduction to the USR function will form a 
basis for more complex applications. We'll explore 
passing double precision integers between BASIC 
and machine language. 

Here's how the USR function works. Both 
the USR and SYS commands are like the BASIC 
GOSUB command. Instead of transferring control 
of a BASIC program to a BASIC subroutine, USR 
and SYS cause control to go to a machine language 
subroutine. 

But unUke the SYS function, the USR function 
has the additional capability of transferring num- 
bers or information to or from a machine language 
subroutine. 

The USR command format is n = USR(v), 
where n is any variable name, and v is any variable 
whose value is to be transferred into the machine 
language subroutine. Upon return to BASIC, the 
machine language subroutine will place the newly 
computed value into the variable n. The transfer 
of values and information between BASIC and 
machine language is accomplished via the floating- 
point accumulator (FAC). The FAC is five con- 
secutive bytes in memory that are used for storing 
floating-point numbers (numbers which can have 
decimal points in them). Address information for 
the machine language subroutine is specified in 
locations 1 and 2 (785 and 786 in the Commodore 
64), and is stored in standard LBHB (Low Byte, 
High Byte) format. 

For example, the command nv = USR(ov) in a 
BASIC program would first transfer the value of 
ov to the FAC. Then the program branches to the 
machine language subroutine whose starting ad- 
dress is stored in locations 1 and 2 (785 and 786 in 

22d COMPUnt July 1983 



the 64), Before leaving the machine language sub- 
routine, the programmer stores the newly com- 
puted value in the FAC, and issues an RTS com- 
mand (ReTurn from Subroutine). Upon reentering 
BASIC, the value in the FAC is held by the variable 
//!', and the BASIC program continues from where 
it left off. 

The only thing preventing you from taking 
full advantage of the USR function is the conver- 
sion of the floating point data in the FAC. The 
number must first be in a format your machine 
language program can use, and then the computed 
value must be reformatted back into the FAC for 
the return trip to your BASIC program. The secret 
lies in knowing the location of two important sub- 
routines in the ROM code. One of these sub- 
routines converts the contents of the FAC into a 
double precision integer stored at $61 and $62 on 
the PET, or $64 and $65 on the VIC and 64. The 
second subroutine converts the double precision 
integer in the A and Y registers to a floating point 
number in the FAC 

Helpful Subroutines 

These two subroutines are easy to use. Note: These 
examples are for PET Upgrade BASIC. Refer to 
the table reference for the appropriate locations 
on your computer. 

1. Convert the FAC to a double precision integer. 
JSR $DBA7 ;CONVERT FAC TO AN INTEGER IN 

$61 AND $62 
LDA $61 ;MSB OF INTEGER 
LDY $62 ;LSB OF INTEGER 

The A and Y registers contain the converted in- 
teger value of T in the BASIC equation, S = USR(T). 
It can be saved and used by your machine lan- 
guage program when needed. 

When you need to transfer a value from the 
machine language program back to BASIC, the 



VIC-20 



SOFTWARE 
SPECIALS 




CBM-64 



NEWt 

CARTRIDGE GAMES 

FROM TRONIX 

SCORPION $29.95 

Full 4-way scrolling, fast action pre- 
dator game where it's you against 
killer frogs, slimy worms, stalker 
flies, dragons and hatcher pods. 
With 32 levels of play. 

GOLD FEVER .. $29.95 

Explore a deadly mine searching for 
valuable gold deposits. Avoid roam- 
ing mine carts, rolling boulders and 
a crazy claim jumper! With 9 levels 
of play. 



DEADLY SKIES 



$29.95 



Frenetic, fast paced, action-packed 
game where you are the Rebel 
fighter attacking the hostile military 
base. Avoid S,A.m;s, smart bombs 
and deadly radioactive clouds! Over 
10 levels of play. 



N^ for your CBM-64 
GRAFDOS $39.95 

Disk operating system for your CBM-64 with 
many new Apple-Like commands' Includes 
IVIini-Mon and extended basic graphtc 
commands. 

CBM-64 & VtC-20 MtNI-MQNITOR 

All machine code monitor which will 

disassemble code, do text dump, 

move memory, hex to decimal and 

decimal to hex conversion as well as a 

mini-assembler! 

VIC-20 version requires 8K expansion. 

Cassette $15.95 

Disk $19.95 

NEW LOW, LOW PRICES! 
CREATIVE SOFTWARE GAMES 

CHOPLIFTER $31.50 

SERPENTINE $31.50 

APPLE PANIC $31.50 

ASTROBLITZ $31.50 

TRASHMAN $31.50 



Stellar Triumph 

Great new all machine code game for your CBM-64. Two 
player game with many variations. Exciting hires color 
graphics and spectacular sound effects, Prepare yourself 
into an all-out space battle! 

From H.A.L. Labs ... tape or disk $24.95 



New Dust Covers 



Water resistant Durable - 

For computer , S7.95 

Old sty le datasette S5.95 



Attractive brown canvas 

For disk drtve $7.95 

New style datasette S5 95 



BOOKS 



VIC-20 USERS GUIDE $11.95 

KIDS &THE VIC $14.95 



INTERESTING SOFTWARE 

21101 S, Harvard Blvd.. Torrance, CA 90501 
(213) 328-9422 

VfsaMC Check, Money Order Add $2 00 Postage & Handling 

CA residents add appropriate sales tax Dealer Inquiries Invited 



HARD WORKING APPLICATIONS SOFTWARE 

FOR VIC-20 and COMMODORE-64 



OMNICOMM intelligent telecommunications 
program. Use your VIC or C-64 as a smart 
terminal Capture text for storage or tape or 
disk or send it to your printer Send pre-saved 
text files from tape or disk to other 
computers. VIC version only $34.95, 
64 version $39.95. 

OMNIFILE file manager. Our popular 
versatile data file manager for the VIC-20 is 
now available on the C-64. Use for 
inventories, collections, mailing lists, and a 
variety of other informaiton handling 
applications. VIC version only $15,95, 
64 version $19.95. 

DRiLLMASTER quiz and drill system, 
complete with state capitals and vocabulary 
quizzes, only $13.95 for the VIC, $17.95 for 
the 64. 



^\\\i///^ 



OMNITEST educational system. Combines 
OMNIFILE and DRILLMASTER in one package 
to allow you to create your own quizzes and 
drills on any subject, at any level, VIC version 
only $24.95, 64 version $29.95. 

The above programs are available on tape or disk, VIC 
versions require a minimum of 8K expansion memory, 
16K recommended for OMfSflCOMM 

Also available . . . OMNIDEX tape file 
manager. Index your tape files and locate 
them by fast forward search. Very handy. 
Only $12.95 for standard VIC. 

See your dealer or order direct from 

Software To Go 

1948 Oak Ridge Turnpike 

Oak Ridge, TN 37830 

615-482-9592 

Add $1.50 shipping and handling per direct order. 

Visa and Mastercard accepted. Dealer inquiries invited. 





double precision integer must be placed in the 
FAC in the proper format. The following code 
will accomplish this nicely. 

2. Convert a double precision integer in A, Y to FAC. 

LDA $... ;MSB OF INTEGER 

LDY $,.. ;LSB OF INTEGER 

JSR $D26D ;CON VERT INTEGER IN A,Y TO FAC 

RTS ;RETURN TO BASIC 

In the equation, S = USR(T), S will contain 
the converted value provided by the machine 
language program. These two ROM subroutines 
should be sufficient for most user applications. 

To illustrate the use of these subroutines, 
let's use the USR function to simulate the PEEK 
instruction. This allows us to evaluate the sub- 
routines by comparing the test results with the 
results of a known instruction. The particular 
example chosen is useful only as a learning tool. 

Simulated PEEK 

If you wish to try the example on your computer, 
use the following procedure: 

For PET/CBM with Upgrade or 4.0 BASIC: 

1. Access the Monitor by SYS 1024. 

2. Display the proper block of memory by 
typing .M033C 0352. 

3* Type in the code from Program 1 or 2 as 
appropriate for your PET. Do a monitor save 
on it by typing .S'Ya 0:USR.M';08,033C,0352 
fordiskor.S"(a0:USR.M",01,033C0352for 
tape. 

4. Enter the BASIC Program 5 and SAVE it as 
USR.B, 

5. RUN the BASIC program. 

The only reason for saving these programs is 
to avoid reentering the data in case of an unrecov- 
erable crash due to a typing error. 

If it is necessary to load the programs again, 
always load the machine language program first, 
and then the BASIC program. Otherwise, the 
BASIC address pointers will be incorrect and your 
program will not run properly. 

For the VIC-20 and Commodore 64: 

1. Type in Program 3 or 4 as appropriate, 
then add the lines from Program 5 (64 owners 
note line 120). The numbers in the DATA 
statements comprise a machine language 
program and must be typed in correctly. 

2. Before RUNning the program, SAVE it to 
tape or disk. 

3. RUN the program. 

If you are curious about what the machine 
language does, here is a disassembly of the Up- 
grade BASIC version. 

226 COMPUTE! July 1983 



$033C 20 A7 DB START JSR $DBA7 



$033F A5 61 

$0341 85 FC 

$0343 A5 62 

$0345 85 FB 

$0347 AO 00 

$0349 Bl FB 

S034B A8 

$034C A9 00 

$034E 20 6D D2 

$0351 60 

$0352 



LDA $61 

STA $FC 

LDA $62 

STA $FB 

LDY #$00 

LDA ($FB);Y 

TAY 

LDA #$00 
JSR $D26D 

RTS 

■ END 



;FACTO INTEGER 

IN $61, $62 
;TMSB 

;TEMP SAVE MSB 
;T-LSB 

;TEMPSAVELSB 
;INDIR INDEX 
;DATAAT$FB,FC 

ADDR 
;S-LSB 
;S-MSB:=0 
;CONVERTA,Y 

TO FAC 
;RETURNTO 

BASIC 



Making USR Work 

Now let's look at all seven steps that are necessary 
to make the USR function work. These steps, as 
used in the example, will be explained in detail 
for the Upgrade BASIC version. Again, you can 
refer to the table for the appropriate locations on 
your particular computer. 

• STEP 1: POKE the USR Jump Address in Loca- 
tions 1 and 2. 

The first step is to put the machine language 
start address in locations $01 and S02, The least 
significant address byte (LSB) is stored in location 
1, and the most significant address byte (MSB) is 
stored in location 2. In the example, the machine 
language start address is located at $033C, There- 
fore, locations $00 through $02 should contain the 
following 6502 code: 

ADDR. CODE MNEMONIC 

$0000 4C 3C 03 JMP $033C 

In BASIC, address values must be stated in 
decimal. The conversion for the LSB address byte 
S3C is 3=^16+12 = 60 and the MSB address byte 
S03 is 0''16 + 3 = 3, providing the POKEd values in 
line 110. It is not necessary to POKE location 
($310 on the 64) as it was initialized to the proper 
value when power was applied. 

• STEP 2: Determine T in S = USR(T). 

In your BASIC program, establish a value for 
T in the equation S==USR(T). To use the ROM 
subroutines provided in this article, T must be an 
integer with a value between and 65535. This is 
the full range of 2-byte integers and in hex is 
equivalent to $0000 through $FFFF. In the ex- 
ample, lines 130 - 150 are used to input and test 
an integer number between and 65535. 

• STEP 3: Execute 5 = USR(T). 

When S = USR(T) is executed, it is equivalent 
to SYS(828). In both cases, control is transferred 
from BASIC to your machine language program. 
The USR function differs from the SYS command 
in that the FAC can be used to pass real data to 
and from the machine language program. Note 
that 828 = Loc 1 + 256 x Loc 2 (828 = 60 + 3 x 256). 



•••••••••••••• 

$$$ SAVE TIME & MONEY $$$ 

•••••••••••••• 

HANNA ENTERPRISES 

1303 COLUMBIA suite 207 
RICHARDSON. TEXAS 75081 

VAVAVAVAV 

TO ORDER CALL (214) 

231-2645 

MasterCard & Visa accepted 

F.O.B. Dallas, Tx. 

9:30 a.m. - 6:00 p.m. 

•••••• •••••••• 
••••••••••••• 



COMMODORE 
COMPUTERS 



NEW 

B-500 (128) K-RAM $795.00 

P-500 (128) K-RAM $656.00 

8032 with monitor $1004,64 

Commodore "64" $369.96 



COMMODORE 
DISK DRIVE 



8250 Dual Drive 2 mg $1476.95 
8050 Dual Drive 1 mg $1256.50 
1541 170k $317.95 

for Commodore 64 

1 530 DATASETTE $63.00 

VIC 20 & COMMODORE 64 



COMMODORE 
PRINTERS 



8300P daisy wheel $1436.40 

8023 dot matrix printer $572.40 
1525 VIC or COM. 64 $317.95 



CABLES 



lEEE-IEEE 

PET-IEEE 



$42.95 
$34.95 



COMMODORE 
COLOR MONITORS 

Model 1701 $239.95 

•••••••••••••• 





COMMODORE 
64® 



KONGO KONG $19.95 

Climb ladders; avoid barrels 
the cra^y ape is rolling at 
you. Rescue the damsel. Par* 
tially machine code for 
smooth, fast action. Key- 
board or joystick. 

LUDWIG'S 

LEMON LASERS $14.95 

You'd never think blasting 
lemons out of Ibc sky could 
be so much fun! Fast ma- 
chine code action. One or 
two players. Wrilteti by the 
demented doctor who gave 
us "Hospital Adventure". 
VIC 20 only. 

METAMORPHOSIS J19.95 

You stumbled into the nest 
of the Cyglorx and find 
yourself fighting off robot 
tanks guarding the Cyglorx 
eggs. You think you have 
everything under control 
and then the eggs start 
hatching. Commodore 64 
version has 4 screens. 



ADVENTURES 

The best adventures at the 
best prices! Controlled from 
the keyboard. 

GRAVE ROBBERS $14.95 

Introducing the first GRAPHIC 
ADVENTURE ever available 
on the VlC-20! Explore an old 
deserted graveyard. Actually 
see the perils that lie beyond. 

ADVENTURE PACK I 

(3 Programs) $19,95 

MOON BASE ALPHA — 
Destroy the meteor that is rac- 
ing towards vour base. 
COMPUTER ADVENTURE- 
Re-!ive the excitement of get- 
ting your first adventure. 
BIG* BAD WOLF-Don'( (et 
the wolf gobble you up. 

ADVENTURE PACK 11 

(3 Programs) $19.95 

AFRICAN ESCAPE-Find 
your way off the continent 
after surviving a plane crash. 
HOSPiTAL ADVENTU Re- 
written by a medical doctor. 
Don't check into this bos pi la 11 
BOMB THREAT-Cet back to 
town in time to whtu the 
bomb squad of the bomb. 




PROGRAMS FOR THE COMMODORE 64 AND VIC 20 



ANNIHILATOR $19.95 

Protect your planet against 
hostile aliens in this 
defender-like game. All 
mai:hin(,' code for fast ar- 
cade action. Joystick 
required. 

TREK $14.95 

Commanding the bridge of 
your starship. you explore 
the galaxy, fending off the 
Klmgon invasion with your 
phasers and photon torpe- 
does, at the same time con- 
serving your limited lime 
and energy. 
Check your local dealer, 

.Semi lor hue taldUig 

All proKr'ini.'t fit in the standard 

VK; rnnmory. and ciimtj (m 

tape or disk, 

OrdcrUiK— t'l^ase aild Sl.SO 

r^astagt' & hrimlliny jxir unhir. 

i'A residents add fi% sales tax. 

Criidit t:ar(i us«rs— include 

niimhtfr nnd i>xpira1ion date. 

VICTORY SOFTWARE CORP. 

7 VALLEY BROOK ROAD 

PAOLI, PA 19301 

(215) 296-3787 



THE COMPLETE 



VIC 



VIC. VIC-20 & 64 are trademarks ot 
Commodore Business Machines 

AT LAST: A Definitive Resource 
Directory for the VIC-20* Computer. 
Find out what's available for the 
V1C'20*, where to find It, what it 
costs, and what other VIC owners 
think of it II 

THE COMPLETE VIC* 



INCLUDES: 

■ Descriptive listing of over 800 products 
and programs. 

• Independent program/product reviews. 

• Cross-referenced by name and manutacturer, 

• Unbound and pre*pynched for standard 
3-rmg bmder. 

• Reader torum for reviews/comments/etc 

• Twice yearly updates. 

• Names, addresses, and ohone numbers of 
VIC-20* vendors and mat) order tiouses carrying 
VIC-20* products- 

In the Spring Update: 

Bibliography of V!C'20* magazine articles and 

book and a functional cross-feterence, 

COMING SOON: THE COMPLETE 64* 

The Complete ViC is available fof S13.50 + Sl.SO 
PIH. An attractive vinyl-covered. 3-ring binder is 
available for 55.00. {Postpaid with The Complete 
VIC*: NOT sold separately.) CA residents add 6% 
sales tax. Send check or money order to; 

MACRO DYNAMICS 

8950 Villa La Jolla Dr., Ste. 1200 

LaJolla, CA 92037 allqw4weeks 

FOR DELIVERY 



to^pu 5E[\i5Ei:.' 

"CARD/?" 

(CARD/PRINT) 

UNIVERSAL CENTRONICS 
PARALLEL PRINTER 
INTERFACE FOR THE VIC-20- 
Now you can use your VIC-20" with 
an EPSON MX-80 printer, or an OKI- 
DATA printer, or a TANDY printer, or | 
just about anybody's printer. And you , 
don't have to give up the use of your ( 
user port (MODEM), or change to [ 
special printer connmands. or load any i 
special software driver programs to do { 
it. 

• Outputs standard ASCII codes to j 
the printer. 

• Plugs in the VIC-20* printer serial | 
i/o port. 

• Understands all standard ViC-20" 
print commands, 

• No modification to your VIC-20". 

• No special programs required. 

• Includes all necessary cables to \ 
hook up a standard printer using 
Centronics parallet input 

• MADE IN THE U.S.A. 

The XARD/'^' is a product of CARDCO, Inc 

$79.95 

TO ORDER: 

P O BOX 18765 

V/ICHITA. KS 67218 

(316)263-1095 

Personal checks accepted 
(Allow 3 weeks) or 
COD |AddS2 00) 
Handling charges S2 00 
VIC-20' IS a registered trademark of Commodore 



July 1983 COMPtlfEi 227 



• STEP 4: Convert FAC to Positive Integer. 

While in your machine language program, 
convert the value in the FAC to a two-byte integer. 
The JSR to $DBA7 at $033C converts the FAC to a 
double precision integer whose MSB is located in 
$61 and LSB is located in $62. 

• STEP 5: Execute ML Program. 

In the example, the instructions located from 
$033F - $034 A are used to get the value that we 
wish to pass to BASIC. 

• STEP 6: Convert Positive Integer to FAC and 
Exit. 

The instructions in $034B through $0351 put 
the integer value in the "A" and "Y" registers. 
Since the simulated PEEK v^ilue is really only a 
single precision integer, the N4SB is set to zero. 
The JSR to $D26D will convert the values in the A 
and Y registers to floating point and place them in 
the FAC. Finally, the RTS will return control to 
BASIC. 

• STEP 7: Verify S in S = USR(T). 

The real variable S, in the equation 
S = USR(T), will now be assigned the value placed 
in the FAC by your machine language program. 
Lines 170 and 180 in Program 5 display both the 
value of S and the actual PEEK value to verify 
that the simulation is correct. 

That's all there is to it. When you break it 
down, step by step, it's not that difficult. Perhaps 
the USR function will now find a place in your 
programming arsenal. 

Floating Accumulator Locations For PET/CBM, 
VIC, And 64 





Loc. of FAC 


Result 


Loc, of 


USR 




to Integer 


Left in 


Integer to 


Vector 


Computer 


Routine 


Location 


FAC Routine 


Location 


VIC 


$DC9B 


$64,565 


$D391 


$01, $02 


64 


$BC9B 


$64,$65 


$B391 


$311,$312 


Upgrade PET 


$DBA7 


$61, $62 


$D26D 


$01, $02 


4.0 PET 


SCDDl 


$61 ,$62 


$C4BC 


$01,S02 



Program 1: pet upgrade basic version 

033C 20 A7 DB A5 61 85 FC A5 
0344 62 85 FB A0 00 Bl FB A8 
034C A9 00 20 6D D2 60 00 FF 



Program 2: pet 4.o basic version 

033C 20 Dl CD A5 61 85 FC A5 
0344 62 85 FB A0 00 Bl FB A8 
034C A9 00 20 BC C4 60 00 FF 

Program 3: vic-20 version 

10 FOR A=828 TO 849: READ D:POKE A, D: NEXT 
20 DATA 32,155,220,165,100,133,252,165 
30 DATA 101,133,251,160,0,177,251,168 
40 DATA 169,0,32,145,211,96 



An Explanation 
Of LBHB 

The Low Byte, High Byte (LBHB) data storage 
format is a method many microcomputers 
use to store large numbers. Because a byte 
can hold a number no larger than 255, two or 
more consecutive bytes are needed to repre- 
sent numbers larger than 255. The LBHB 
format involves a method in w^iich numbers 
are broken down, then stored in memory 
with the least significant byte (LSB) first, 
followed by the most significant byte (MSB). 

A number between 256 and 65535 is 
stored in RAM memory using two consecu- 
tive bytes. The second byte (the most significant 
byte) is derived by dividing the original 
number by 256, and then storing the integer 
(no fractions) value into the MSB. The re- 
mainder of this division is then stored in the 
first or least significant byte. Thus you use the 
following formula for reading LBHB numbers 
in memory: 

number - LSB + (MSB * 256) 

For example, let's say that j^ou wanted 
to USR to address 828 (the cassette buffer in 
most Commodore machines). You would 
need to put 828 into addresses 1 and 2 and it 
would have to be in this LBHB format. 

Here's how it's done: 

1) Divide 828 by 256 and store the re- 
sulting integer byte 2. 

828/ 256 = integer 3 

2) Store the remainder of this division in 
byte one: 

828 - (256 * 3) = 60 

The TWO Methods 

To automatically store numbers into ancH 
read numbers from memory using the LBHB 
format, use these two formulas: 

To read a LBHB number, where N = 
number: 

N = byte 1+ (256* byte 2) 

To Store a LBHB number, w^here N = 
number to be stored: 

NN = INT(N / 256): POKE byte 1, N - (NN * 256): 
POKE byte 2, NN 



BEGINNING PROGRAMMERS 
If you're new to computing, please read "How 
To Type COMPUTE!'s Programs" and "A 
Beginner's Guide To Typing In Programs/' 



228 COMPUTE! July 1983 



Program 4: commodore 64 Version 

10 FOR A=828 TO 849 : READ D:POKE A, D: NEXT 
20 DATA 32,155,188,165,100,133,252,165 
30 DATA 101,133,251,160,0,177,251,168 
40 DATA 169,0,32,145,179,96 

Program 5: USR Demonstration 

100 REM SAVE BEFORE RUNNING 

110 POKE 1,60: POKE 2 , 3 : REM JMP $033C 

120 REM FOR C-64, USE POKE 785, 60: POKE 786 

,3 
130 PRINT "SIMULATED PEEK": PRINT 
140 PRINT "INPUT AN ADDRESS BETWEEN AND 

65535" 
150 INPUT T:IF T<0 OR T>65535 OR INT(T)<>T 

THEN 140 
160 S=USR(T):REM SYS 828 ($003C) 
170 PRINT S"= PEEK ( "T")",PEEK(T) : PRINT 
180 GOTO 140 



COMPUTE! 

The Resource. 




Now. 



64 supports 64! 

E)tpand ih^ Graphics capabiliiy of vour COMMODOHE-64. 



SPRITE-64 is a new graphics utility 
which supports 64 Sprites on the 
screen AT THE SAME TIME! 

SPRITE-64 includes a Basic Support Package: 

• Adds SPRITE command 

to Basic NO PEEKS OR POKES. 

• Joystick and Paddle support. 

• Great for Games! 

SPRITE-64 is written in high-speed assembly language 
for maximum efficiency, 

SPECIAL Introductory Price: 
SPRITE-64 graphics utility 
Price: $49.95 

Order Now: $34.95 until August 1.1983 
Specify TAPE or DISK. Send Check or Money Order to: 

Cfossrech 

graphics 

2133 N. Fremont* Chicago, tL 60614 • (312}871-3555 

Illinois Residents: Add 5% sates tax 

COMMODORE-64 is a registered trademark of COMMODORE. INC 



PUT SOME MUSCLE 
IN YOUR 

VIC 20 

16K RAM EXPANSION 

59.90 

8K RAM EXPANSION 

39.90 
24K COMBO 89.90 

• DIRECT FROM 

MANUFACTURER 

• HIGH QUALITY 

• LOW POWER 

•6 MONTH WARRANTY 

CEMTURy® 

MICRO 

7881 La Riviera Drive. Suite 131 
Sacramento, CA 95826 

(916) 920-3656 
C.O.D. Orders Welcome 

Add $2 for shipping & handling. 

California residents add 6% sales tax. 

Checks/Money Orders OK. 

(Allow 3 weeks for checks.) 

Write for free VIC & 64 catalog- 

DEALER INgi;iRI^$W£i,CQME 







ADVENTURIST! 



WIN 
$5,000.1 

PLAYING OUR SUPER 

PRO' ADVENTURE. 

'NEFARIOUS CASTLE' 

ON DISC FOR C-64 
WRITE FOR RULES I 



OTHER ADVENTURES AVAIL 

ON DISK OR CASSETTE 

FOR C^4 SI 7.95 EA. 

TRABIC (MAGIC) 

U-SEA ADVENTURE 

CASTLE KEEP (MEDIEVAL) 

ASTEROID MINER 

MASTER THIEF (MODERN) 

PLUS: LSQ MSQ - X RATED 

QUIZ FOR PARTIES - FUN 

ONSLOW COMTEK 

P.O. DRAWER 700 

JACKSONVILLE, NC 28540 

{919) 347-4000 



•I'-COiDPU SEWSEH, 



I' 



CARDBOARDS 
$87.95 

An expansion interface for the VIC-20. 
Allows expansion to 40 K or accepts up 
to six games. May be daisy chained for 
more versatility. 

CARDBOARDS 

$39.95 

Economy expansion interface for 

the VIG-20 

CARD '7" CARD/PRINT 
$79.95 

Universal Centronics Parallel Printer 
Interface for the VIC-20 or CBM-64. 
Use an Epson MX-80 or OKIDATA or 
TANDY or just about any other, 

CARDETTE 
$39.95 

Use any standard cassette player/re- 
corder witti your VIC-20 or CBM-64 

LIGHT PEN 
$29.95 

A light pen with six good programs to 
use with your VtC-20 or CBM-64 



Prices subject to change, 
TO ORDER P O. BOX 18765 

WICHITA. KS 67218 
(316)263-1095 
Personal Checks Accepted (Ahow 3 Weeks) 
or COD (Add S2) Handling Charges S2 00 



July 1983 COMPimi 229 



Commodore 
Programmer's 
Alarm Clock 

Bruce Jaeger 

Youll appreciate this program if you've ever lost track 
of time while at your computer. It will act as a 
countdown tiyner and print ''QUITV on screen and 
sound a bell when the time comes to stop. For VIC, 64, 
and PET/CBMs. 



Have you ever sat down at your computer after 
dinner to "just touch up that program a bit/' only 
to find again that you've lost all notion of time 
and you've just missed the first half of that movie 
you've waited for all week? Or you're supposed 
to pick someone up at 6:00, and by the time you 
look up from the screen it's 7:30? Me too! 

That's why ''Programmer's Alarm Clock" 
came about. When you first sit down at your desk, 
load and run the program. It will ask you for the 
alarm time, and for the current time of day. 

That's all. You can run games, develop pro- 
grams, write computer articles, whatever. But 
when the alarm time comes, the word "QUIT!" 
comes up on the screen and there's a healthy beep 
from the CB2 speaker. 

Programmer's Alarm is a machine language 
routine located in the second cassette buffer, and 
is accessed 60 times a second by the interrupt 
routine that updates TI$ and does other house- 
keeping chores. The program merely compares 
the previously stored alarm time with the time-of- 
day, and lets you know when they match. 

The program as written is for the PET/CBM 
Upgrade ROM set, 4.0 ROMs, 64, and VIC. 



Program 1: 

Alarm Clock - Upgrade BASIC PET Version 



"ALARM FOR 3,0 PETS" 



160 REM *** _ _ 

*** 

170 GOSUB280 :13 SPACESIrEM LOAD MACHINE 

LANGUAGE 
180 T=141 :l6 SPACESlREM TIMER LOCATION, 

3,0 ROMS 
190 PRINT" {CLRl SET ALARM TIME" 
200 PRINT "{ DOWN ) ( HHMMSS )" 
210 INPUT "{DOWN} (2 SPACES ]000000 

{8 LEFT)";TI? 
220 H=PEEK(T) :L=PEEK{T+1) 
230 POKE 1022,H:POKE1023,L 
240 PRINT" I DOWN} INPUT TIME OF DAY." 
250 PRINT" [down] ( HHMMSS )" 
260 INPUT "I down) [2 SPACES } 000000 

{8 left} ";TI$ 
270 PRINT" {CLR}":SYS826: END 
280 FORX9=0TO 115 : READX8 : P0KE826+X9 , X8 : 

NEXTX9 I RETURN 
290 DATA 120,165,144,141,172,3,165,145,1 

41,17 3,3,169,79, 133,144,169,3 
300 DATA 133,145,88,96,165,141,205,254,3 

,208,83,16 5,142,205,2 5 5,3,208 
310 DATA 76,169,145,141,35,128,169,149,1 

41,36,128,169,13 7,141,3 7,128,169 
320 DATA 148,141,38,128,169,161,141,39,1 

28,169,16,141,7 5,2 3 2,169,15,141 
330 DATA 74,232,169,150,141,72,232,160,2 

5 5,162,255,136,240,6,202,208,253 
340 DATA 76,135,3,169,0,141,75,232,141,7 

2,232,141,46,230,120,17 3,172 
350 DATA 3,133,144,173,173,3,133,145,88, 

76,46,230,46,230 

UNDERLINE = SHIFT, 

i i = COMMODORE KEY, 

I }= SPECIAL, 

REFER TO LISTING CONVENTIONS 



Program 2: Alarm clock - 4.0 pet version 

160 REM ** ALARM FOR 4.0 PETS ** 

170 GOSUB280 :{3 SPACES} REM LOAD MACHINE 

LANGUAGE 
180 T=141 :{6 SPACESlREM TIMER LOCATION, 

4.0 ROMS 
190 PRINT" {CLR} SET ALARM TIME" 



Notes For Commodore Alarm Clock 



Since Commodore provides a realtime clock 
in all of its computers^ the versions presented 
here differ only in the location of the machine 
language routine and the location of the in- 
terrupt request vectors which continually 
check the internal clock. Since the internal 
clock is affected by using the cassette, the 
VIC and 64 versions of this program will give 
unpredictable results if you use the cassette 
unit. Disk operation and TOOLKIT seem 
unaffected. 



Also, if the alarm time is set for after 
12:00 and you set the time of day to a point 
before 12:00, then you must use military time 
(1300 for one o'clock, etc.). Otherwise, the 
two times will not match, and the alarm will 
not sound. 

This program is a good one to study if 
you are interested in learning about simple 
machine language and interrupt-driven 
routines. Since the program is so short, it is 
fairly simple to understand and adapt for 
use in other programs. 



230 COMPlfTE! Juty1983 



200 PRINT" I DOWN] ( HHMMSS )" 

210 INPUT "[down] {2 SPACES } 000000 

I 8 LEFTl"rTI$ 
220 H=PEEK(T) ;L=PEEK(T-M) 
230 POKE 1022,H:POKE1023,L 
240 PRINT" (down] INPUT TIME OF DAY," 
250 PRINT" [down] ( HHMMSS )" 
260 INPUT "lD0WNl(2 SPACES ] 000000 

{8 left) ";TI$ 
270 PRINT" [CLR]":SYS826: END 
280 FORX9=0TO 115 : READX8 ; POKE826+X9 , X8 : 

NEXTX9: RETURN 
290 DATA 120,165,144,141,172,3,165,145,1 

41,17 3,3,169,7 9,133,144,169,3 
300 DATA 133,145,88,96,165,141,205,254,3 

,208,83,16 5,142,205,255,3,208 
310 DATA 76,169,145,141,35,128,169,149,1 

41,36, 128, 169, 137, 141,3 7,128, 169 
320 DATA 148,141,38,128,169,161,141,39,1 

28,169,16,141,7 5,2 3 2,169,15,141 
330 DATA 74,232,169,150,141,72,232,160,2 

55,162,25 5,136,240,6,202,208,253 
340 DATA 76,135,3,169,0,141,75,232,141,7 

2,23 2,141,46,230,120,173,172 
350 DATA 3,133,144,173,173,3,133,145,88, 

76,85,228,85,228 

UNDERLINE = SHIFT, 

6 3= COMMODORE KEY, 

[ J= SPECIAL. 

REFER TO LISTING CONVENTIONS 

Program 3: Alarm clock - vie Version 

80 REM ** ALARM CLOCK FOR VIC ** 

90 GOSUB195 

100 PRINT" {CLR] SET ALARM TIME" 

110 PRINT" (down] ( HHMMSS )" 

120 INPUT" {down] {2 SPACES ] 000000 [ 8 LEFT] 

";TI? 
130 POKE953,PEEK(160) 
140 POKE954, PEEK(161) 
150 PRINT" [DOWN] INPUT TIME OF DAY" 
160 PRINT" [down] ( HHMMSS )" 
170 INPUT" [down] [2 SPACES] 000000 [8 LEFT} 

";TI$ 
180 PRINT" lCLR]":SYS826:END 
19 5 FORG=826T0953 : READE : POKEG , E : NEXT : RET 

URN 
200 DATA 120, 173, 20, 3, 141, 183, 3, 1 

73 
210 DATA 21, 3, 141, 184, 3, 169, 83, 14 

1 
220 DATA 20, 3, 169, 3, 141, 21, 3, 88 
230 DATA 96, 173, 160, 0, 205, 185, 3, 2 

08 
240 DATA 89, 173, 161, 0, 205, 186, 3, 2 

08 
250 DATA 81, 169, 145, 141, 17, 30, 169, 

149 
260 DATA 141, 18, 30, 169, 137, 141, 19, 

30 
270 DATA 169, 148, 141, 20, 30, 169, 161 

, 141 
280 DATA 21, 30, 169, 15, 141, 14, 144, 

169 
290 DATA 139, 141, 10, 144, 166, 255, 16 

4, 255 
300 DATA 136, 208, 253, 202, 208, 248, 1 

69, 



yJ^*hJ^OH__^ The Source lor Computer Books 






JvicU 
'basic 

CAH on SOVSD 





START WITH BASIC ON THE COMMODORE 
VIC-20 

Don Monro 
$10.95 paperback 
An entertaining introductory guide to programming 
using all the graphic functions of the V IO20. 
Step- by- step insiruciions, exercises. 

KIDS & THE VIC 

Edward H. Carlson 
$19.95 paperback 
A guide to VIC BASIC for children ages 10 to If. 
Instructions, exercises, reviews in a format accessible 
to youngsters. 

ZAPI POW! BOOM! 

Arcade Games for the VIC-20 

Tim Hartnell and Mark Ramshaw 

$12.95 paperback 

Play arcade games at home and learn to use all the color 

and sound potential of the VlC-2(). Complete programs, 

plus variations, 

VIC BASIC 

A User-Friendly Guide 

Graphics f Color ^ Sound 

Ramon Zamora, Don In man, 

Robert Albrecht, & Dymax 

$14.95 paperback 

An easy-to-use practical guide to programming using the 

color, sound, & graphics capabilities of the VK;-2(). 

B. Dalton stocks a complete selection of 
computer books at 700 stores nationwide. 
Check your Yellow Pages. 

People who know books know B. Dalton. 



City — 
Phon© - 



-State - 



-Zip- 



_^ Check/ Money Order Enclosed 
IVISA : ;MisterCdrd J American Express 

Card No, Exp, Date- 
Book Title - 



Please send $1.75 for postage and handling. 

Please add appropriate sales tax. 



-Qty. 

B. Datton Bookseller 
9340 James Ave. S. 
Minneapolis, HH 55431 



310 DATA 141, 14, 144, 120, 173, 183, 3, 

141 
320 DATA 20, 3, 173, 184, 3, 141, 21, 3 
330 DATA 169, 0, 141, 17, 150, 141, 18, 

150 
340 DATA 141, 19, 150, 141, 20, 150, 141 

, 21 
350 DATA 150, 88, 76, 191, 234, 255, 0, 

255 

UNDERLINE = SHIFT, 

§ 3 = COMMODORE KEY, 

I }= SPECIAL. 

REFER TO LISTING CONVENTIONS 

Program 4: Alarm Clock - 64 Version 

70 REM ** ALARM CLOCK FOR C-64 ** 

80 S=54272 : FORR=STOS+24 : POKER, :NEXT 

95 GOSUB195 

100 PRINT" ICLRlSET ALARM TIME" 

110 PRINT "{ DOWN ) ( HHMMSS )" 

120 INPUT" {DOWN) I 2 SPACES } 000000 (8 LEFT] 

";TI$ 

130 POKE956,PEEK(160) 

140 POKE95 7, PEEK (161) 

150 PRINT" I DOWN) INPUT TIME OF DAY" 

160 PRINT" I DOWN }( HHMMSS )" 

170 INPUT"IdOWN1 {2 SPACES 1000000 I 8 LEFT] 

";TI$ 
180 PRINT" lCLR]":SYS49152: END 
195 FORG=49152T049284 : READE : POKEG, E: NEXT 

: RETURN 



200 DATA 120, 173, 20, 3, 141, 186, 3, 1 

73, 21, 3, 141 
210 DATA 187, 3, 169, 25, 141, 20, 3, 16 

9, 192, 141 
220 DATA 21, 3, 88, 96, 173, 160, 0, 205 

, 188, 3 
230 DATA 208, 92, 173, 161, 0, 205, 189, 

3, 208, 84 
240 DATA 169, 145, 141, 17, 4, 169, 149, 

141, 18, 4 
250 DATA 169, 137, 141, 19, 4, 169, 148, 

141, 20, 4 
260 DATA 169, 161, 141, 21, 4, 169, 15, 

141, 24, 212 
270 DATA 169, 9, 141, 5, 212, 169, 6, 14 

1, 6, 212 
280 DATA 169, 34, 141, 1, 212, 169, 70, 

141, 0, 212 
290 DATA 169, 33, 141, 4, 212, 169, 255, 

160, 255, 136 
300 DATA 208, 253, 202, 208, 248, 169, 

, 141, 24, 212 
310 DATA 120, 173, 186, 3, 141, 20, 3, 1 

73, 187, 3 
320 DATA 141, 21, 3, 88, 76, 49, 234, 13 

4, 223, 32 
330 DATA 223, 0, 223, 32, 223, 32, 223, 

32, 223, 

UNDERLINE = SHIFT, 

13=^ COMMODORE KEY, 

{ }= SPECIAL. 

REFER TO LISTING CONVENTIONS 



#- 



Ml G R O lAf O R LD 
ELECTRO NIX 



Mw-aoa 

VIC-20/64 Parallel Printer Interface 



Works with all Centronics type 
parallel printers and plotters 
tncluding: 

Epson 

C. Itch 

Dktdata 

Nee 

Gemini 10 

TP-1 Smith Corona 

• Hardware driven — works off of the serial port. 

• Quality constnjction (Steel DilM connectors and Shielded cablesl 

• Switcfi selectable options; 

—Device 4, 5. B. or 7 — Upper and lower 

—ASCII or PET ASCII or upper case only 

—7 bit or S bit output 

RECOMMEMDED BY PROFESSIONAL SOFTWARE for 

WordPro 3 Plus for the 64. 

MW-30S ,... $115.95 




THE AUTO CLOCK' 



Turn your VIC-20/G4 into a 
rear time intelligent controller. 

• Switch your VIC-20/B4 or other AC devices on and off under 

software control. 

• 256 year clock/calendar. 

• 2K CMOS battery backed up RAM. 

• Menu driven software. 

• Plugs into the buss expansion slot, 

• Cartridge style case. 

• 19 user accessible subroutines. 

• 20 page illustrated manual with detailed programming examples, 
AUTO CLOCK $129.95 




VIC-20 / Ga 
UNIVERSAL irVtPUT/ OUTPUT BOARD 

• 16 channel analog to digital converter 

• 1 6 high current discrete outputs 

• Eprom socket for custom program 

• One digtal to analog output 

• Includes demo program m basic 

M W-31 IV for UIC-20 51 B5 

MW-311C for CBM-G4 $235 



64TD\/IC EXPAfUSrOAl 
PORT CONVERTER 

• Converts expansion port on CBM-64 to VlC-20 
tvpe 

• Allows using VIC expansion chassis on the 6-d 

• Adapts erom cartridges to plug into the 64 

• Adapts MW-31 1 to the CBM-64 

M W-3E1 64 to VIC-2Q conwflrtar $39 



"WordPro 3 Plus (s a trademDrk of Professional Software. 

-;;'Aiito Clock and Star itght«r are trademarks of PP&S. 

-"-VIC-^O and CBM-B4 are trademarks of Commodpre Business Machines 



MICRO WORLD ELECTRON IX, INC. 

, 3333 South Wadsworth Blvd., #G1 05; Lakewopd. Colorado B0227. (303) 934-1 973 or (303) 987-2671, m 



232 COMPUTE! July1P83 



STARS 



George Trepol 



This short graphics program draws stars - separate or 
coficeutric. It is designed for the TRS-80 Color Com- 
puter, but its simpliciti/ makes it a candidate for con- 
version to am/ machine. You'll learn how to create many 
types of patterns and also some interesting tricks you 
can use with other Color Computer programs. 

This routine for the TRS Color Computer draws 
star-like patterns. It's a no-frills program which is 
easy to convert to other computers. 

The stars can have as many points and sides 
as you want. However, the resolution of the TV 
sets an upper limit of visibility at about 25. The 
points used to draw the stars are stored in arrays 
X and Y; since 25 is the upper limit, these arrays 
are DIMensioned to 25 in line 10. Lines 20 and 30 
simply clear the screen and ask for the number of 
sides desired. After you've typed in the program, 
a good number to start with is 17. 

Line 40 puts the Color Computer into its 
highest resolution mode. 

Lines 50 to 90 use polar coordinates and the 
computer draws an imaginary circle. It then finds 
points that equally divide the circumference into 
N equal parts. N is the number of sides you input 
in line 30. The Color Computer is not able to plot 
points given in polar form, so thev have to be 
converted to rectangular (also called Cartesian) 
coordinates. Each of the points is stored in the X 
and Y arrays. If you want to know more, you'll 
find this discussed in high school algebra books. 

The 96s in line 70 are special instructions for 
the Color Computer. The highest resolution screen 
is 264 by 192 separate dots, called pixels. Since I 
like big pictures, I'm telling the computer to take 
up the whole screen when it draws its circle. A 
circle with a diameter of more than 192 would be 
too big for the screen. Half of 192 is 96. In other 
words, 96 is the image size and the radius of the 
circle. We'll get back to this in a minute. 

Now we have all the coordinates stored in 
arrays, and the screen is still blank. Lines 100 to 
130 draw lines between the dots. In line 120, the 
128 and 96 refer to the point (128, 96) which is the 
center of the screen. That's where we want the 



center of our circle. All the other points in the 
arrays are in relation to the circle center. 

Line 140 locks the computer in a loop so the 
program continues running, and the picture stays 
on the screen. 

Now that we have a nice 14-line program 
that draws pretty pictures, here are a few sugges- 
tions for improvements. 

Concentric Stars 

Remember line 70 with its 96? Instead of 96, let's 
put in a variable R (for radius). Let's add a line: 15 
R = 96. If you run the program, there is no change 
at all. Let's add another line: 135 R = R/2: GOTO 
50. Now when the program is run, the machine 
draws the star as expected. Next it draws another 
star half as big inside the first star. Then it draws 
a star half as big as the second star inside the 
second star, and so on forever or until you press 
the BREAK key. 

Of course, you need not divide R by 2. You 
could use 1.4 or any other number you like. You 
don't need to draw an infinite number of concen- 
tric stars either, if you set up a counter. A good 
counter could be made by adding these two lines. 

35 INPUT ''HOW MANY STARS"; HM 
95C = C + l:IFC=HMTHENGOTO140 

Multiple Stars 

So much for multiple concentric stars. Let's modify 
line 120. Remember that coordinates 128,96 are 
the center of the screen. They are also the center 
of the figure. If you change them, the location of 
the figure will change. If you duplicate line 120 
(call it line 125) with the 96 and 128 reversed, the 
figure will appear twice on the screen. Maybe 
you'd like lots of little stars on the screen in dif- 
ferent places. You could do this by making lots of 
duplicates of line 120 with different center coordi- 
nates. Or you could store the coordinates in a 
DATA statement. 

To use a DATA statement, first change the 
96s in line 120 to DY (for data Y coordinate) and 
change the 128s to DX. Add line 95 READ DX: 
READ DY and put your DATA statement wher- 
ever you want. 

POKE For Speed And Sound 

Do you want to make the program draw faster? If 
the program is running, press the BREAK key. 
Then carefully type POKE 65495,0, and press the 
ENTER key. the program will now run twict? as 
fast. This POKE (sometimes called vitamin E, by 
Color Computer users) doubles the rate of the 
internal clock, but it will not work with all Color 
Computers, especially the early models. The 
drawback to this POKE is that sound routines no 
longer work, printers print garbage, modems 
don't work, and you can't CLOAD or CSAVE. To 

July 1983 COMPUTE! 233 



get the computer back to normal you can: (1) POKE 
65494,0 and ENTER, (2) press the reset button, or 
(3) turn off the machine. 

If you want to use the magic POKE and have 
sound with the graphics, the wav to do it is POKE 
65494,0: SOUND 1,1: POKE 65495,0. 



X<25) , Y(25) 



"NUMBER OF SIDES" ;N 

1,1 



Stars 

10 DIM 

20 CLS 

30 INPUT 

40 PMQDE 4, 1 : PCLS: SCREEN 

50 FOR 1=1 TO N 

60 A=I« <3. 14159/ <N/2> ) 

70 X=96*C0S<A) : Y=96»SIN (A> 

80 X (I>=X: Yd )=Y 

90 NEXT I 

100 FOR J=l TO N 

110 FOR K=J TO N 

120 LINE(X (J)+128, Y (J)+96)-(X 

<K>+12 8, Y (K)+96) , PSET 
130 NEXTsNEXT 
140 60T0 140 © 



COMPUTESThe Resource 



10-Day 
Trial 



The ^v-fc^v 

* GAME MACHINE' ^^ 



THE FINEST 

EXPANSIKOIN 
CHASSIS 

tor th« 

VIC-XO* 



V 



e-Month 
Warranty 



Faster xhtn i Dtik arivtf 
Plj3 in up tc 6 GAME or 
MEMORY PACKS l)i«n Swilch 



- Fully buffered 
Electronic*. 



press RESET 




PftESTO<f New qime or memory 
CQnfi{|urili&n wilhDut turning dl VIC or 
remcving PACKS 

Plug in up lo 35K RAM and all Diher 
PACKS Ihil ire ivaFtatile. 

• fully Bullered jpreverits memary drapculsl 

• Fuse Proteclitrn » Uirge swilchci 

• fligrd £uppi>r| 



^MC & VIS* 3«Epled| Send cneck MO m 

(415)651-3160 
PARSECHESKARCH 
Drawer I766-C 
Fremont, CA 94538 

Dealer inquiries mvilEd 



r 



PIXZATIMII 

A ifrMith Hit I Th« bMt, rnvmr chailanglng max* gam« I Sup«rfa hi - rmt multl - tolor 
flra|»h1ci nwvmf imti b«for« on #>« VK t Up to 30 l«v*lt «f tup^r rat oetlen. Exc*4- 
font iound. t -3 ptof^r*. 100% machln* co^. Joyttldi. IK •xpan. Cow. or Dl^k. 
VIC . 20 -....-.. I !♦■« 

VIC - DO IT YOURSELF I 

Th« moit cDmpr«h«n»lv* tutorlol to <k«lgnlng Yo^r own hi - fm, full color orc«4o 
typo porno*. 35 maty to uniUntond chopfari / pro^romi InctuiJtng: HI -ros Anima- 
tion, SmoaHi Scr^n Motion, Cdofi, Sound, Graphic Iditor, Utoful UttllHot, 
Scroon Point, Croopmon (iho gom«) and mor«. iatk and AiMmblf Unguo^. 
Ml lilting. Joit liood ond rvn. Evan copy to yoor own gomoi I 
Solt iound + Co»*. or Ditk ....... ........... |2i.« 

iOMUS OfFIR 

Ordor both ond got UZAPf 1 1 1 ( Srookout ) (roo I 100% mochino «od*, fort. Ml ■ 
colof orcodw gomo. ( Unoxpond^d VIC. ) 

1 1.S0 ihtpping t handling. NY rotldonti p44 MM % tox. 

SOFTROM, INC. 

30«7 Broadway, Suit* 37 Now York, NY 10013 

Tot. 313 -4M- 0077 

Ordori Only 100 131' I03f 



■■■"'CQiDPU SEf\J5Ei:.' 



QUICK BROWN FOX $60.95 

The «1 word processor' 

GENERAL LEDGER $19.95 

(VIC-20) 

CHECK MINDER 

vic-20 $1 9.95 c-64 $24.95 

HOME INVENTORY $19.95 

(VIC-20) 

CENTIPOD $27.95 

Like Centiped, only better' 

FROGEE $27.95 

The excitmg arcade game of Frogger 

MOTOR MOUSE $29.95 

What a cheeseee game' 

CRIBBAGE 
VIC-20 $14.95 c-64 $17.95 

This <s the game of Cribbage. 

STAR TREK 
vic-20 $12.95 c-64 $17.95 

Excellent adventure game' 

MASTERMIND 

vic-20 $12.95 c-64 $19.95 

Makes you think 

ROACH MOTEL $9.95 

KHI the bugs' 

YAHTZEE1.1 $12.95 
YAHTZEE2.1 $14.95 



TO ORDER 
P O BOX 18765 
WICHITA, KS 67218 
(3 1 6) 263-1095 





LENGTH 

C-05 . . 
C-10.. 
C-20 . 
Boxes 



PACK PACK 

79<P 69<P 

89$ 79$ 

99$ 89$ 

26$ 21$ 




UPS $3.00 Pkg. $18.00 Case 



C-10's 39C 

<Min. 500 Case Lot) 
w/labels ADO 4«. 
w/boxes ADD 1 3« 



FOR ORDERS ONLY - 
1^ 1 •800-528-6050 - 
Extension 3005 

MICRO-80'" INC. 

2665-C Busby Road 
Oalt Harbor. WA 98277 



'MIGHTY V 
IS HERE 
TO SAVE 
THE DAY! 

BUSINESS 

&HOME 

SOFTWARE 

* Commodore 64 

* Vic 20 

* TRS 80 Color 
Computer 

* Apple 

FREE CATALOG 

POWERBYTE 

2CHIPLEY RUN 

WEST BERLIN, N J. 08091 

{609) 346-3063 



234 COMPmi! July 1983 



Part III 



Visiting The 
VIC-20 Video 



Jim Butterfield, Associate Editor 



This month our traveller stakes a dahn - but discovers 
he must first find empty land, and must subsequently 
register his address. 



We know that the VIC-20 video chip gets two 
things from memory: "screen memory" and "the 
character set." But it sees the computer's memory 
in an unusual way: 



Video 

Chip 

Block 

Number 




Memory 

Address 



How the video chip sees memory. 



Suppose we want to lay out our own screen 
and characters. It seems simple enough: choose 
the locations for screen memory and character 
set, and POKE the block numbers (screen block 
times 16 plus character block) into address 36869. 
If the screen is positioned at an exact block bound- 
ary, we put a low number (such as 22) into 36866, 
otherwise we place a high number there (such as 
22 plus 128, or 150). The 22, by the w^ay. is for 22 
columns - standard for the VIC. 

However, we have two major tasks to per- 
form. First, we must make sure that the memory 
we are using to feed the video chip isn't needed 
by somebody else. Second, we must tell the VIC-20 
operating system about our new screen location. 
Changing the video chip isn't enough - the parts 
of the computer that print to the screen must be 
told that the screen is somewhere else. 

Let's try an example: we'd like to put our 
own character set into a tiny 5K VIC. Things will 
get a little crowded, since we need to use 2K for 
the extra character set. But we can make it work. 

Finding Room 

Almost all the spare RAM memory of the computer 
is assigned to BASIC. This is to allow you to write 
programs as large as possible. We must take mem- 
ory away from BASIC to make room for the new 
video stuff. 

BASIC memory is a single continuous block. 
It goes from Start-of-BASIC (whose address is 
logged in locations 43 and 44) to Limit-of- BASIC 
(whose address is logged in locations 55 and 56). 
No breaks: you can't pop a screen jn the middle 
and have BASIC memory skip around it. You can 
find the Start-of-BASIC address on your machine 
by typing PRINT PEEK(43) + PEEK(44)*256; or the 
Limit-of-BASIC address by typing PRINT PEEK 
(55)-hPEEK(56)=^256. Remem"ber these; they are a 

July 1983 COMPUTE! 235 



good way to check the values after you've changed 
things around. 

Making Room 

We have a choice. We can move dov^n the Limit-of- 
BASIC, which will give us room at the top. We 
can move up the Start-of-BASlC, which will make 
room at the bottom. Or we can do both, if we 
don't mind the extra work. Whatever we do, we 
must realize that we're trimming back the area 
available for BASIC. 

If we move down the Limit-of-BASIC, we 
must say CLR after we do so. This gets rid of vari- 
ables and strings that might be in embarrassing 
places. Don't forget this. 

Moving the Start-of-BASlC upwards takes a 
good deal of care. Rule 1: We must POKE a value 
of zero into the first available location. Rule 2: We 
must set the Start-of-BASIC pointer so that it 
points to the next location behind the zero. Rule 
3: When we're finished, we must type NEW to 
make sure that BASIC is cleanly set up in the new 
memory area. 

How do we set up these pointers? Divide the 
desired address by 256: the remainder goes into 
the first byte, and the quotient into the second 
byte. For example: we want to move the Limit-of- 
BASIC down to 6144. 6144 divided by 256 gives 24 
with zero remainder, so we POKE 55,0: POKE 
56,24:CLR. 

Another example: we want BASIC to start at 
5120. First, place the zero: POKE 5120,0. Now, 
the pointer must he set to 5121 (behind the zero); 
since 5121 divided bv 256 gives 20 with a remainder 
of 1, we POKE 43,l:'POKE 44,20:NEW. 

Planning 

We want to set up a complete character set, in- 
cluding the reverse characters. That will take 2K 
of memory- we could do it in IK if we were willing 
to skip the reverse characters. Let's plan to put 
this at the top of memory, starting at block 14. 

The screen takes up half a block, of course, 
and it seems to make sense to set this up just below^ 
the characters; so we'll pick block 13.5 (we can set 
the screen on a half-block boundary, remember?). 
This calls for a Limit-of-Memory of 5632. You may 
have noticed, by the way, that the Limit-of-Mem- 
ory pointer is set one location beyond the last 
usable value. In other words, BASIC can use 5631, 
but it can't use 5632, the Limit value. 

Arithmetic time. 5632 divided by 256 gives 22 
with zero remainder; so type: 

POKE 55,0:FOKE 56,22;CLR 

and the space is allocated. You can try PRINT 
FRE(O) and see what a puny amount of memory 
you have left. 

We haven't yet told the video chip to use this 
area. We're not ready to point the chip towards 

236 COMPUTtl July 1963 



the new character set area; we haven't put any 
characters there yet. So let's move characters in - 
but wait a moment. 

The new character set would go over top of 
the present screen location. This would give us 
an odd-looking screen. We could live with that 
part, but the screen would also do odd things like 
scrolling, which would move the character set we 
had so carefully placed. We'd better move the 
screen to a clear area first. 

Moving The Screen: Video And System 

The character set can remain as block zero for the 
moment; we'll want to shift the screen to block 
13.5, with POKES to 36869 and 36866. But we need 
to do two extra things at the same time: tell the 
computer system where to find the new screen, 
and clean up the screen area. 

The POKES to 36869 and 36866 tell the video 
chip all it needs to know about delivering the 
screen memory to the video output circuits. But 
unless we tell the computer system about the 
change, it will continue to put new characters 
into the old screen area. We tell it with a POKE to 
location 648. Here's how the arithmetic goes. 

Divide the new screen memory address by 
256, and POKE the result into address 648. Our 
example puts the screen at 5632, which gives 22 
when divided by 256; so we'll POKE 648,22. But 
we need to do everything together. Let's work 
out the other POKEs. The screen goes to block 
13.5, and the character set remains at block zero 
for the moment. 13 times 16 plus gives 208, so 
we'll need to POKE 36869,208. The half-block is 
logged into the system with POKE 36866,128 + 22, 
and so we move the screen with: 

POKE 648,22:POKE 36869,208:POKE 36866,150: 
PRINT CHRS(147) 

CHRS(147) is the clear-screen character, by the 
way. 

Making Characters 

Now we can copy the character set from its fixed 
appearance in 32768 to our planned new area at 
6144 and up. If we copy the character set exactly, 
we've wasted a lot of memory; we'll get the same 
characters as before. To show we have control, 
we'll vary the normal character set slightly. 

histead of the normal graphics set - uppercase 
and graphics - we'll mix the two as we copy them 
oven Not too useful, perhaps, but when we cut 
over to the new character set, you'll be able to see 
that something new has happened. Enter the 
following program: 

100 FOR ] = TO 255 STEP 2 

110J1=J*8 

120 FOR K = TO 7 

130 POKE Jl + K + 6144,PEEK(J1 + K + 32768) 

140 NEXT K 



THE 

BUSkHESS 

mfinflGER... 

FULLY INTERACTIVE ACCOUNTING 
SYSTEM. NO DISKETTE CHANGINGi 
FINALLY ALL THE FEATURES YOU'VE 
BEEN WAITING FOR - IN ONE 
COMPLETE INTERACTIVE SYSTEM. 

FULL SOFTWARE SYSTEM 
ONLY $995.°° 
^ UESTAR 



INTERNATOMAL 
fNC 



MANUAL ONLY - $40.00 
REFUNDABLE UPON 
SYSTEM PURCHASE. 




HARDWARE REQUIREMENTS: 

Commodore Model 6032 or SuperPET or 

8096 Micro-computer 

Commodore Model 8050 One Megabyte Dual Disk Drive 

Commodore Model 4022 (or Larger) Prlnler 

Commodore PET — IEEE cable 

Commodore IEEE ^ IEEE cable 



DtSKSHnHE 

qaaa 



WORKS WITH ALL COMBINATIONS 
PET/CBM 1 00% HARDWARE. NO 
SOFTWARE REQUIRED! UP TO S 
USERS SHARE DISK AND/OR PRINTER. 
CONNECTS IN MINUTES -NO TOOLS 
REQUIRED. INCREASES PRODUCTI- 
VITY - REDUCES COSTS. IDEAL FOR 
EDUCATION AND BUSINESS. CABLE 
LENGTHS UP TO 50 FEET. 

ONLY $749°^ , 

8 USER SYSTEM ONLY $1 149 




/////////////////i(ii(iiiriiMiitiiiiiiiiniiu\iuuu\\\\w^^^ 
/////////////////i/i/iiiiiiiiiiiiiiiiiinuiun\u\\\\\\\\u^^^^^^ 




DEALER 

INQUIRIES 
WELCOME. 



^UESTAR 



INTERNATIONAL 
INC. 



muhi 

User 
System 



150FORK = 8TO15 

1 60 POKE jl + K -f 6144,PEEK{J1 + K + 34816) 

170 NEXT K 
180 NEXT J 

Run this program; it will take a minute or two. 

The Final Touch 

The screen has already been moved, and the 
character set is in place and ready to go. Let's cut 
it in, and the project will be complete. 

The screen is still at block 13.5 and the new 
character set will be at block 14. So we do 13 times 
16 plus 14 and get 222; we'll want to POKE 
36869,222. Since we're not moving the screen this 
time, the ''half-block'' value in 36866 is still good, 
we won't need to change that. We're ready - 
enter: 

POKE 36869,222 

Now try typing or listing the previous program, 
and look at the odd combination of characters 
we've created. We must tie things together 
neatly - BASIC, the Operating system, the video 
chip - to make it all work properly. But with good 
planning, we can make the screen do marvelous 
things. 

Copi/ri^iht © 1983 jim Bidkrfield q 




GRAPHICS HARDCOPY 



NOW FOR NEC & OKIDATA 



INCLUDES CABLE b 
850 MODULE NOT 



Dumps iinyttiiritj on the screon of an AT ARt 
400/800 to a f)nr>u?r All gtaphics & loxi 
moaes Plavti's/miissilos/scalmg/groy 
sca!e/GT)A/morei Works with EPSON. 
KEC. Okidaia. Centronics 739. IDS and 
TrendCOm SpPCify 800 or *100 and printer 
vvhf^n ofdormg ^ 

f^^(209) 667-2888 ^ 

126 N Goldtin Sraie BJvd, v:w:iTfn'-r 

Turlock. California 95380 ;•«(■.■. oiLlWd n 

*ATARf IS n retjisTerr^d Uadernark of ATARI CornfJuKfr \nc 



W^^^ 1126 



SOFTWARE 
REQUIRED 



i 



Cassette/Magazine/NewsfettBf 

A Monthly Tradition 
in the World of Computing for 



20 ™ 

LOQCl 

VIC SO" USERS 

Don't let your interest in the VIC fizzle out. Are many 
of the firecracker programs you're buying turning out to 
be duds? Well, load up your VIC with the fireworks of 
20 LOAD, and watch the beautiful display of programs, 
programming tips, articles, and information enter your 
life - It makes you celebrate the 4th of July, . . EVERY 
MONTH. Subscription Rates are: 1 yr. - $50.00, 6 mo. - 
$30.00, or $6.00 for a single issue. Write to 20 LOAD, 
P.O.Box 1687, Junction City, Ks. 66441. 913-762-4730 

(VIC-20 is a trademark of Commodore Business Machmes, Inc.) 



A ATARI lAATARI ^o— o"*-- 



APX 

Eastern Front tC/D) ..... $23 

Fam, Cash Flow (D) $17 

747 Land Sim. (C/D) $17 

ATARI INC. 

Fig-Forth (C) $30 

Galaxian $32 

Defender ,.. .,.,,.$32 

ET $36 

Microsoft Basic fD) $65 

MacroAss. &Edit. (D) .$66 
Assembler Editor (R) ...$45 

Basic Cartridge |R) $45 

Pac Man (R) .,.„ $32 

Centipede (R) .„ ....$32 

Caverns of Mars (D) ..... $28 
Missile Command (R) ., $27 

Star Raiders (R) $32 

Conv. Lang.Ea.(C) $44 

Music Composer(R) .... $31 

Super Breakout (R) $27 

My First Alptiabel(D) „ $26 

Prog, 2 & 3 (ea.)^C} $21 

Word Processor (D) ...$107 

Pilot (Educ) $98 

Touch Typing (C) ......... $19 

Home File Mngr(D) $37 

AUTOMATED StMUL. 

Monster Maze (R) ,. $27 

Invasion Orion (C/D) $18 

Temple of Aps.(C/D) .,., $28 
Star Warrior (CfDj ...,.,.. $28 

Dragon's Eye (Oj ,. $20 

Crush Crumble (C/D) ...$20 
AVALON HILL 

Empire Of Over (0) 523 

B-1 Nuc, Bomber (C) ....$12 
BRODERBUNO 

Apple Panic (C/D) $20 

Star Blazer $22 

Choplifter . (D)$23(R)$29 
DATA SOFT 

Text Wizard (0) $65 

Graphics Gen, (D) ...$17 

Basic Compiler (D) 165 

Zaxxon {C/DJ ..,.,-.... $27 

INFOCOM 

Zorkl.llorlll(D) $27 

Starcross t27 

Deadline (D) $34 



KBYTE 

Krazy(each) $34 

LJK 

Letter Perfect (D) $104 

Data Perfect (D) $74 

ONLINE 

Wlz& Princess (D) .$22 

Crossfire (C/D) .....$20 

Frogger(C/D) .... .....$23 

Jawbreaker (C/D) ,.$21 

Crossfire (R} ■ $28 

OPTIMIZED SYSTEMS 

Max-6S(D) $58 

Basic A + (D) .....$58 

ROKLAN 

Gorf(D) $27 

Gorf(R) $30 

Wizard of Wor(D) ,.,..,.., $27 

Wizard of Wor(R) $30 

SIRIUS 

Space Eggs (D) $20 

Sneakers (D) $20 

Way Out (0) ......$27 

Bandits (D) ....$23 

Fast Eddy (R) $27 

SPINNAKER 

Snooper Troops #1 (D) . $30 
Snooper Troops #2 (D) . $30 
Storm Machine (0) .......$23 

Face Maker (D).... $23 

STRATEGIC SIM. 
Shattered Alliance (D) . $28 
Tigers In Snow (C/D) ....$28 
Battle otShilori (C/D) ..$28 
Battle of Norm, (C/D) ...$27 
Galactic Gladiator (D) .$27 

Cytron Masters (D) $27 

SYNAPSE SOFTWARE 

FlleMngreOO+ S65 

Protector II .{0)S23(R)S29 
Shamus ..,.., (0) $23 (n)S29 

Nautilus (D)$23{R)S29 

Claim Jump [C/D} ... $23 
MISCELLANEOUS 

AliBaba(D) %22 

Miner 2049er{R) $34 

Kid Grid (C/0) $20 

Poon,5(D) $23 

Raster Blaster (D) $20 

Sam(O) $41 




810 DISK DRIVE ... $419 
410 RECORDER ...... $74 

850 INTERFACE $164 

400 COMPUTER $219 

Eirtert^iner $66 



800(48K) $479.95 

NEW 64K ATAR1 1200 .CALL 

32K RAM (Mosaic) ... 599 

32K RAM (Intec) S69 

B4K (lntec/400} ,. , . S129 

48K (Intec MOO) $95 

Educator S112 

IRAMDISK(IZBX) $378 

BIT 3' SO CQL BOARD $279 

BOOKKEEPER KIT $169 

Single Density Master S389 

Single Density Dual $639 

Doubie Density Master $515 

Double Density Dual ■ - - $359 

Dbl Sided Dbl Density Master $639 

Dbl Sided Dbl Density Dual $949 



PEPQOM 



CITOH 

Prowriter $368 

Prowriter II $649 

Starwriter ........ $1325 

Printmaster ...... $1599 



GEMIN1 10 
GEMINI15 



PRINTERS 

NEC 

8023 A-C . $445 

3510 $1375 

3530 $1595 

3550 (IBM) $1529 

7710/7730 $2319 

SMITH CORONA $569 

AXIOM GP-1 00 ..... $269 



.5319 
. $485 

MONITORS 



NEC 

12*'GRN{JB1260) ... $115 
12"GRN(JB1201M) . $155 
12" Color Composite $329 

12- Color RGB $669 

USI (Amber) ,...,... $169 

MODEMS 

HAYES NOVATION 

Micromodem II $269 Apple-Cat II 

Stack Smartmodem .$215 
Smartmodem 1200 . , $499 



AMDEK 

V300 $139 

V310(GRN-IBM) ,.. , $169 
V310A(AmberlBM) . $169 

COLOR I . . , $298 

COLOR II $650 



. ,. $299 

2i2 Apple-Cat $569 

D-Cat $155 



VIC 64 CALL 

VIC 20 $149 1530 RECORDER $64 

1541 DISK DRIVE . CALL 1600 MODEM S87 

1525 PRINTER CALL 16K RAM $86 

VIC 1 701 Color Monitor $259 

VIC SOFTWARE 

VIC Forth (R) $45 Spiders of Mars (R) $34 

HES Mon (R) $29 Meteor Run {R) $34 

Turtle Graphics (R) $29 Amok (C) $1 7 

HES Writer (R) $29 Alien Blitz (C) $17 

Aggressor (R) .....$29 Skymath (C) $12 

Shamus (R) ...$29 Space Division (C) $12 

Protecto r (R) $33 Super Hangman (C) .,.,. $14^ 

^ COSMIC 

COMPUTERS 

UNLIMITED 

THE ABOVE PRICES ARE FOR PREPAID ORDERS 
ORDER LINES OPEN MON-SAT 8 am - 8 pm 

(714) 861-1265 

228 K. PROSPECTORS RD. 
DIAMOND BAR, CA 91765 

Add $2.00 Shipping per sottware order anywhere in U.S 
AtJd $5.00 Shipping per sottware for non-U S orders, 
P.O, Box or FPO-APO Call for cost of Hardware shipping. 
Calif resider^ts add 6'/?% sales tax. Cashiers Checks or 
Money Orders filled same day. Personal checks require 4 
weeks to clear. Master Card and Visa OK lor software 
onfy, add 3% surcharge. Include card no . expiration 
date and signature Prices subject to change 



Atari Laser 
Gunner II 

A Vertical Blank Enhancement 



ThomosA sVlarsholl 



The hnprovemcuts to this prcviousli/ published game - 
ami the author's explanations of the tedniiqueslie used 
- easily justify a seeond look at Laser Gunner. This 
version, Laser Gunner II, mixes machine language and 
BASIC to make Laser Gunner (originally published ifi 
November 19S2) an even more exciting game. The en- 
hancements include having both missiles on screen 
sinuiltaneously and smoothing out the animation, even 
as missiles are fired. 



The concept of Laser Gunner (COMPUTE!, 
November 1982) is excellent, but anything can be 
improved. For example, all other motions stop 
when the missiles are fired. For continuous and 
smooth motion, the computer could process the 
missile horizontal positioning during the vertical 
blank (VB) period. 

The VB is the time during which the tele- 
vision's electron beam is turned off while it returns 
from the lower right corner of the screen to the 
top left. Depending on the graphics mode and 
other interrupts, there are approximately 7980 
machine cycles available during a single VB. (A 
machine cycle is the smallest measurement of 
time on your computer's internal "clock/') 

Bringing VB Into The Picture 

To utilize the VB, we first have to tell the Operating 
System (OS) where to go. We do this by per- 
forming a Vertical Blank Interrupt (VBl) through 
the Set Vertical Blank Vector (SETVBV) routine. 
Before jumping to the SETVBV, we have to load 
the least significant byte (LSB) in the Y-register 
and the most significant byte (MSB) in the X-re- 
gister of our VB machine language routine. 

Into the accumulator we can place either a 6 
or a 7. Six is for deferred mode; the OS does its 
housekeeping operations before it executes our 



code. Seven is for immediate mc^de; the OS ex- 
ecutes our code first during the VB. Since we will 
be checking the collision registers, we will be 
loading a 6 into the accumulator. The BASIC pro- 
gram initializes the SETVBV through the USR 
statement on line 1460. To return control to the 
OS, we jump back through $E45F. 

The BASIC and the machine language (ML) 
programs interact through several PEEKs and 
POKES. The ML program checks the STRIG(O), 
location $0284, for the press of a button, and moves 
both missiles horizontally. Since the player/missile 
graphics are defined in strings, it is easier to have 
BASIC draw and erase the missiles by PEEKing 
the flags that the ML program sets. 

In the enhanced version, both missiles appear 
on the screen at the same time. This requires the 
additional coding located at S06D7. The missiles 
are defined as 



BIT 



7 6 5 4 3 2 10 



M3 



M2 



Ml 



MO 



Since it is difficult for Atari BASIC to selec- 
tively turn bits off and on, we will use ML to 
change the bits. The AND instruction is used to 
set bits to zero (off). ANDing a bit with zero sets 
the bit to zero. The OR A instruction is used to set 
bits to one (on). By ORAing a bit with one, we set 
the bit to one. The flipping of the missile bits is 
done in the subroutines at lines 1300-1330. The 
original Laser Gunner BASIC program with the 
vertical blank enhancements appears below. 

All the lines after 1280 are new, and the other 
major changes are from lines 630 to 735, and from 
lines 880 to 900. In addition, to speed up the verti- 
cal motion of the defender, the vertical step size 
was increased by two. The changes for this en- 
hancement are in lines 110, 530, 540, 560, 630, 
640, and 650. 

July 1983 COMPUTE! 239 



Further Enhancements 



Laser Gunner II 



360 POKE 705, 6* 16+10: REM SET COLOR 
F ALIEN TO PURPLE 

The programming technique of performing 370 poke 53249, 1 80: rem set horizonta 
graphics movement during the vertical blank l position 

^ j^ I r- ^ L L J.U \ \ c^C ^80 POKE 53257,1: REM SET ALIEN TO DO 

enhances Laser Gunner almost to the level of dif- ^'^ uble-w i dth 

ficulty of professional arcade games. Further 390 r^^ set up explode*, use for exp 

proeram execution speed can be achieved by re- los i on of alien 

Uving the REMs and moving the part of the -- ^^Jh^^; J^n^^^ ^ : REM^^ProSB^o^l^ 

program that does most ot the action to the be- ^^^ ^^^^ a, 23, 62, 255, 54, 255, 62, 28, 8, 

ginning. This shortens the memory that BASIC a, 23,62,235,54,235,62,29,8,8,28, 

has to search to find line number references. An 54,227,34,227,54,23,8 

additional enhancement would he to add a sound ^^^ 8?24, 34? I94!i2!l63!ia:8; 8^' "' ' ^' 

routine during the VB each time the trigger is 430 data' 0, 0, 0, 0, 24, 24' 0, 0, 0, 0, 0, 0, 3 

pressed. 2, s, 24 , 0, 4 , 0, 0, 0, 0, 36, 0, 16, 0, 36, 

0, 0, 128, 10, 12 3, 0, 16, 0, 16, 65 

440 DATA 0, 9, 0, 0, 32, 0, 32, 0,8, 0,0, 0,6 
4, 0, 0, 64 , 0, 4 , 0, 0, 0, 0, 0, 0, 0, 1 28 , 

^^__ ^S0 RY^INT (73*RND (0) +32) : MH= 190 + RY*2 

REM ■i T ;V1=4;1'ili:t:[=4lfi>'J^C 17 i--1-J;H=¥^> : rem ATTRACT MODE: 

10 GOSUB 1400 455 POSITION 9,5:':' #6 ; " PRESS " : POS I T I 

20 RESTORE qjnj 9,6:? #6: "START" 

100 DIM PM* (204S) : GRAPHICS 2+16 4^0 pQp i = 32 TO 1 1 : PMS ( P 1 + I , P 1 + I + 1 1 

110 DIM AL IEN« < 1 1 ), PLAYER* ( 1 1 ), NULLS )=ALIEN*:IF I=RY THEN PMS(MS + RY + 

<11), EXPLODE *C12»9), TARGET (20) 10,MS + RY+10)=CHR*<12) 

120 FOR 1=1 TO 1 1 ; NULL* (I )=CHRt (0) : N 470 if I>RY THEN POKE 53253, MH-I*2 

EXT I 430 IF PEEK (53279) >6 THEN NEXT I 

130 LEVEL^i5: CNT=15: REM DECREASE LEV 490 pM^ ( ms + R Y + 1 , MS + R Y+ 1 > =CHR* < ) 

EL FOR A HARDER GAME 500 pQpj 1 = 110 TO 32 STEP -1:PM$<P1 + I 
140 A = ADR (PM*) : REM RAW ADDRESS , P 1 + I + 1 1 ) = AL I EN* : I F PEEK(53279)> 

150 PMBASE=INT < A/ 1024) * 1024: REM NEAR ^ THEN NEXT I 

EST 1 K BOUNDARY 510 if PEEK ( 53279 )> =7 THEN 450 

160 IF PMBASE<A THEN PMB ASE = PMBASE+ 1 515 POSITION 9 , 5 : -:> #6;" €5 SPACES) ":P 

024:REM IF BELOW STRING, GO TO N OSITION 9,6:';' #6; "15 SPACESl" 

EXT IK BOUNDARY 520 IF PEEK < 53279 > =3 " THEN FOR 1=0 TO 
170 S=PMBASE-A: REM START OF PMBASE I 4:P0KE 53243+ I , : NEX T I: GRAPHIC 

N STRING (OFFSET) g 0:END 

180 POKE 559,46;REM SET DOUBLE-LINE 530 DATA 0,0,224,48,120,63,120,48,22 

RES. 4,0,0 

190 POKE 54277, PMBASE/256: REM TELL A 540 pgp 1 = 1 jq lliREAD A : P L A YER* < I ) = 

NTIC WHERE PMBASE IS CHR*CA):NEXT I 

200 POKE 53277, 3: REM TURN ON PLAYER/ 550 PY=60:REM SET PLAYERS S VERITCAL - 

MISSILE DIRECT MEMORY ACCESS(DMA) LOCATION 

210 PM*=CHR*(0) =PM*(2048)=CHR*(0> :PM 560 PM* ( P0+P Y , P0+P Y + 1 1) =PL A YER* 

*(2)=PM*:REM CLEAR OUT ALL P/M M 570 PM* ( P 1 , P D =CHR* ( ) : PM* ( P 1 + 1 27 , P 1 



EMORY 



+127)=CHR*(0) :PM*(P1+2,P1+12 7)=P 



220 POSITION ^f==:^**^;"J,-^f^9-^ne^" ^yi^ NT ( 78*RND ( ) +32 ) : PM* ( P 1 + A Y , P 

230 7 #6:FDR 1 = 1 TO 1 : -;> 4*6;"D":NEXT l ^ A Y+ 1 1 ) = AL I EN* : REM RESET ALIEN 

1: POSITION 0,0 53256,1; REM PLAYER & DOUBLE 

240 REM STRING POS OF PLAYER 0-3, AN ^^' -WIDTH 

p MISSILES IN STRING^ ^.,._„_^^_ 600 POKE 53248, 64:REM HORIZONTAL POS 

ITION OF PLAYER 



p0=S+512:Pl=P0+128:P2=Pl+12a:P3= 



R :.., THE ZUNfc ^,„^„ , ^c.„ OT LG 0-GOTD 900 : REM THE ALIEN MISS 

300 POKE 53258,0: POKE 53259, 3: REM RE ile HIT THE WftLL OR ZONE 

M MAXIMUM WIDTH PY = PY - ( D I R= 1 4 ) « ( PY ; 32 ) « F + < D I R= 1 3 

310 POKE 706,14:POKE 707,66:REM SET ^^^ ^ < p y. 1 ) «f7f= 1 = REM UPDATE PLAYER 

COLOR OF PLAYERS 2 AND 3 ) » ( r y . i i » J .r . i- 

3-^0 DATA 8.28.62,255,62.253.62,28, 650 PM* ( P0-hPY , P0 + PY+ 1 1 ) =PLAYER* : SOUN 
"^ ' 00,0,0,0 

330 FOR 1 = 1 TO 11 = READ A : AL I EN* ( I ) =C 660 IF PEEK ( M0FLG ) = 1 THEN GOSUB 1310 

HR*(A):NEXT I : REM PLACE INTO STR : REM ERASE THE PLAYER^S MISSILE 

ING HENCE INTO P/M MEMORY 670 IF PEEK ( TR I GFLG ) =0 THEN GOSUB 13 
-A0 AY="^^-REM ALIEN VERTICAL LOCATION 10:POKE M0FLG , : TM5=MS+P Y+5 : GOSU 

350 PM*^(p1+AY,P1+AY+11)=ALIEN*:REM P B 1300=POKE TR I GFLG , 1 : REM THE TR 

LACE INTO STRING INTO P/M MEMORY IGGER WAS PRESSED 

240 COMPUTE! July 1983 



^0 THEN 790: REM 



MISSILE HIT THE 



1 1-LEN<STR* ( 



TAR6E 
ft TAR 



TO 



770 

;60SU 

: BOSU 
HOLE 



720 IF PEEK (HITFL6) < 

NO COLLISION 
725 REM THE PLAYERS S 

ALIEN 
7 30 SCR = SCRH'10: POSITION 

SCR) ) /2, 5: 7 #6; SCR 
735 PM*(TMS,TMS> =CHR* (0>=POKE M0FLG, 

1:PDKE HITFLG, 1 : POKE 53278,0 
740 AY=AY+1:P= PEEK (705): REM PRESERVE 

COLOR OF ALIEN 
750 FOR 1=0 TO 1 1 : Z = I * 9 : PM* ( P 1 + A Y ^ P 1 

+AY+9)=EXPL0DE*(Z+l,Z+9) 
760 POKE 70S, PEEK C53770> ; POKE 53279, 
0:SOUND 0, I «2,0, 15-1 : FOR W= 1 TO 
2: NEXT WsNEXT I 
770 POSITION 5,5:PRINT «6;" 

C10 spaces:": REM ERASE SCORE 
780 SOUND 0,0,0, 0:POKE 705,P;BOTO 570 
790 IF AY=PY THEN 870iREM TOO CLOSE 

FOR COMFORT 
800 IF TARGET=0 THEN GOSUB 950 
T=TARGET ( INDEX) : REM SELECT 
GET 
810 IF AY<>TARGET THEN 840 
820 CNT=CNT-1:IF CNT THEN hZ0 
830 CNT=LEVEL: GOTO 870 
940 AY=AY+SGN (TARGET-AY) : REM MOVE 

WARDS TARGET 
850 PM*(P1+AY,P1+AY+11>= ALIEN* 
860 GOTO 630 

870 IF ABS ( AY-PY) < 10 THEN GOSUB 
875 IF PEEK ( ALIEFLG)=0 THEN 630 
880 POKE ALIEFLG, 0: TMlS=MS+AY+5 

B 1320; TTAY=AY: GOTO 630 
900 P=ASC(PM$CP2+TTAY+5) >*2-2S6 
B 1330:POKE 5327S,0:REM CUT 
IN WALL 
910 IF P<0 THEN 990:REM WALL DESTROYED 
920 PM*(P2 + TTAY+S^P2 + TTAY^5) =CHR« <P) 
930 GOTO 630 
940 REM PICK A TARGET 
950 INDEX=INDEX+1: TARGET ( INDEX )=INT( 

78*RND (0) +32) iRETURN 
970 IF INDEX=1 THEN 950 
980 TARGET=TARGET(INT(INDEX*RND(0)+1 

> > :RETURN 
990 REM DESTRUCTION OF PLAYER 
1000 FOR 1 = 1 TO 100: Z 1=TTAY + 5h-I : Z2 = T 

TAY+5-I 
1005 PM* <TMS, TMS)=CHR* (0> :POKE M0FLG 

, 1:P0KE M0PFLG, 72 
1010 IF ZK126 THEN PM* ( P2 + Z 1 , F2 + Z 1 ) 

=CHR* (0> 
1020 IF Z2>30 THEN PM* < P2+Z2 , P2+ Z2 ) = 

CHR* (0) 
1030 IF ZK126 OR Z2>30 THEN NEXT I 
1040 FOR 1=30 TO 1 STEP -IrFOR J=0 T 
O 20 STEP 3;S0UND , J+ 1 , 1 , 8 : PO 
KE 707, PEEK (53770) :NEXT J:NEXT 
I 
1050 SOUND 0, 0, 0, 0: SOUND 1,0,0,0:POK 
E 707,14:FOR W=i TO 50:NEXT W=P 
OKE 707,0 
1060 FOR 1=0 TO 15 STEP 0.2:SOUND 

I,8,I:P0KE 704, 16+I:NEXT I 
1070 SOUND 0,0,0,0 
1080 Z1=PY: Z2=PY: INCR=0 
1090 Z1 = 21-HNCR*(Z1<128): Z2=Z2-INCR« 

(Z2>=0):POKE 704, PEEK (53770) 
1100 PM* (P0+Z1 , P0 + Z1 ) =CHRS (255) : PM* < 
P0+Z2, P0+Z2) =CHR* (255) : POKE 532 
79, 
1110 INCR=INCR + 0, 5; IF ZK127 OR Z2>0 

THEN 1090 
1120 FOR 1=1 TO 100:POKE 704,PEEK(53 
770)sNEXT I 



1 1 30 
1 140 

1 150 
1 160 



1 170 
1280 
1299 
1300 

1309 

13 10 



1319 
1320 



1329 
1330 



1400 

1410 
14 20 
1430 
1440 
1450 
1460 
1500 

1509 
1510 



1530 
1540 



1550 

1560 

1570 

15B0 

1590 

1600 

1610 
1620 

1630 

1640 

1650 
1660 



FOR 1=0 TO 7:P0KE 53248+ I , : NE X 

T IsGRAPHICS 18 

POSITION 4,0:PRINT **6; " UfcSdt^l^til 

nnSS": POSITION 3,5:PRINT tt6;"yo 

ur score was:"; 

POSITION 10-LEN(STR*(SCR))/2,7: 

PRINT *»6;SCR 

FOR 1=15 TO STEP -0.2:SOUND 

,10+10«RND(0),0,I: SOUND 1 , 100+1 

0*RND (0) , 16, I 

SETCOLOR 4, 3, 14*RND (0) : NEXT I 

RUN 

REM 



Q=USR(ANORA,ASC(PM*(TMS,TMS) ) ,3 

,2) :PM*(TMS,TMS)=CHR*(Q> : RETURN 

REM ■SOXHSHIia 

Q=USR (A NOR A, ASC ( PM* ( TMS , TMS ) ) , 1 

2, 1):PM*(TMS,TMS>=CHR*(Q) : RETUR 

N 

REM ■ZESBSS 

Q = USR (ANORA, ASC (PM* <TM1S, TMIS) > 

, 12,2) ;PM^(TM1S,TM1S)=CHR*(Q)JR 

ETURN 

REM ■SF»H ^ =4 : m 

Q=USR(ANORA, ASC(PM*(TM1S,TM1S) > 

, 3, 1 ) :PM* (TMIS, TM1S>=CHR* ( Q ) : RE 

TURN 
TRIGFLG=1546:HITFLG=1547:M0FLG= 

1548:TMS=1 :TMlS=i 

ALIEFLG=1550; C0LFLG=1551 

AN0RA=1753: CMPFLG=15S3 

IF PEEK ( 1753> = 104 THEN RETURN 

GRAPHICS 18:':> #6 ; " I N I T I AL I Z I NG" 

RESTORE 1500: GOSUB 1500 

A=USR(1536> : RETURN 

FOR 1=1536 TO 1552:READ A:POKE 

I , A: NEX T I 

REM ■i^:fc*^t ^^J^*il»i^"i^-V^ 

DATA 104. 169,6, 17 0, 160,22,32,92 

, 228,96, 1 , 1 , 1 , 72, 1 ,0, 180 

FOR 1=1558 TO 1709:READ A:POKE 

I, A: NEXT I 

REM ■=fciUfc*MB =»atim^:rc»:lillAiitII=M 

DATA 173, 13 2, 2, 201 ,0, 240,2, 208, 

12, 205, 12, 6,240, 12, 169, 0, 14 1 , 10 

, 6, 24 

DATA 58*205, 12,6, 240, 53, 238, 13, 

6, 238, 13,6, 173, 13, 6, 141 , 4, 208, 1 

73, 8 

DATA 208,41,2,208,9, 173, 13, 6, 20 

1, 190, 144,27, 176, 15, 173, 13,6,20 

1 , 170, 144 

DATA 18, 169, 0,141, 30, 208, 141,11 

,6, 169, 1 , 141 , 12,6, 169, 72, 141 , 13 

.6, 173 

DATA 14, 6, 201 , 0, 208,63, 173,9,20 

8,41, 1 , 203, 2 1 , 173,9,208, 41 , 12,2 

08, 29 

DATA 206, 16, 6, 206, 16,6, 173, 16,6 

,141, 5, 208, 208, 35, 169, 1,141, 17, 

6,141 

DATA 12,6, 169, 72, 141, 13, 6, 208,5 

, 169, 1 , 14 1 , 15,6, 169, 0, 141 , 30, 20 

8, 169 

DATA 1,141, 14,6, 169, 180, 141, 16, 

6, 76, 95, 228 

FOR 1=1753 TO 1791:READ A:POKE 

I,A:NEXT I 

REM ■■ fill lrMrTiUJh*^M^=» 

DATA 104, 104, 104, 141,215,6, 104, 

104, 141 ,216,6, 104, 104,201, 1 ,208 

, 9, 173, 215, 6 

DATA 45,216,6,76,249,6,173,215, 

6, 13,216,6, 133,212, 169,0, 133, 21 

3, 96 

RETURN Q 



My\9B3 COMPOTE! 241 



Tl Mailing List 



Doug Hapemon 



This program can be used for developing small mailing 
lists, for families or for organizations. There are ten 
options, including printing a single label or an entire 
alphabetized mailing list. For the TT99/4A, 



Have you ever kept a file of addresses on index 
cards, hoping to organize them someday in an 
orderly fashion? It sounds simple, but in practice 
you know how difficult it is to organize and update 
a paper-based filing system. "TI Mailing List" 
offers you an easy method of creating, main- 
taining, and utilizing a mailing list file. 

Without any programming experience you 
can keep an up-to-date, well-organized file. The 
program will promf)t you step-by-step through 
the entry of names, addresses, and phone num- 
bers. Then, with a few simple keystrokes, you 
can update your file, print lists in two different 
modes, or save your file on a storage device. It's 
that easy. 

TI Mailing List is designed specifically as a 
family mailing list, but is flexible enough to 
accommodate a number c^f applications. The pro- 
gram will store last names, first names, children's 
names, addresses, and phone numbers. 

The program is written in a Canadian format, 
that is. Province and Postal Code. However, the 
format can be easily adjusted to the American 
system as you type in the program. 

Program Environment 

The program is set up for 45 entries. After 45 en- 
tries you will be given the message *DATA FILE 
IS FULL*. This feature will prevent your program 
from crashing with a MEMORY FULL error mes- 
sage. If you have more than 45 addresses to enter, 
you may easily divide your list into two or more 
files - for example: (A - L) and (M - Z), 

When you RUN the program, the initial Htle 
screen appears. The next display permits you to 
inifialize the printer. Be sure to enter the proper 
name and spelling of the device you're using, 
because an improper name will cause the program 
to break when you attempt to address the device 
later in the program. 

Ten Options 

Once the computer "environment" is established, 

2A2 COMPUTE* July 1983 



you are taken to the Main Index. Here you will 
discover ten options: 

1 View Names List 

2 Search For a Name 

3 Add Names 

4 Change Names 

5 Delete Names 

6 Alphabetize List 

7 Save Data File 

8 Load Data File 

9 Print Labels/List 
10 Finish Session 

Of course, to create a mail list you would first 
choose option 3 (Add Names). The other options 
will enable you to update, maintain, and utilize 
an existing file. The program will guide you step- 
by-step through the procedure for each option. 
There are many helpful features, such as the 
Search, Change, and Delete. You can also enter 
names and addresses in any order, and then, by 
choosing the Alphabetize option, have the com- 
puter sort them for you. 

The Data File 

The program is written to both save and load data 
files for either cassette or disk storage. When you 
choose either the Save or Load option, you will be 
given any further step-by-step instructions. 

Print Options 

The program offers you two print options - one 
for mailing labels, and the other for the mailing 
list. 

The Print Labels option will print the first 
name, followed by the last name, and then the 
address on lines two and three. For example: 

John Doe 

1234 Street Address 

City Province Postal Code 

The Print Mailing List option will print the 
last name first, followed by the first name and 
children's names, with the address on line two, 
and the phone number on line three. For example: 

Doe, John Mary Joe/Sally 

1234 Street Address City Province Postal Code 

(p)-444/4456 

Line spacing between addresses is flexible via a 
minor program change. If you wish to alter the 



line spacing, program lines 497 (labels) and 517 
(list) may be adjusted by either increasing or de- 
creasing the number of colons (:) at the end of 
each line. Each colon represents one line space. 
For example; 

#497 PRINT #2:TAB<5);NA$(I);" ";LNS(I):TAB(5); 
AD$(I):TAB(5);CPS(I};" '';PCS(I):::: {Add or 
delete colons here.) 



In the Print Labels option, you may wish to 
print two labels per line instead of one. If so, you 
should adjust the line listing as follows: 

(Chg) #487 FOR I = 1 to N STEP 2 

(Chg) #497 PRINT #2:TAB(5);NA$(I);" ";LN$(I); 

TAB(45);N ASd + 1);" ";LN$(I + 1):TAB(5); 

AD$(I);TAB(45);AD$(I + 1) 

(Add) #498 PRINT #2:TAB(5);CPS(I);" ";PC$(l); 

TAB(45);CP$(I + 1);" ";PC$(I + 1):::: 

The Search option permits the printing of a 
single mailing label After finding the name you 
are seeking, the display asks if you would like a 
mailing label printed. If yes, the program branches 
to the print routine and then returns to the search 
option. 

TI Mailing List Program Structure 
Line Nos. 

1-21 REMs and computer en\'ironment. 

23-47 Main loop, main index. 

49-73 Sub ro u tine to vie vv nam es . 
75 - 109 Subroutine to search for a name. 
111-181 Subroutine to add names. 
183 - 285 Subroutine to change data. 
287-331 Subroutine tt> delete names. 
333 - 423 Subroutine io alphabetize li.st. 
425 - 441 Subroutine to save data. 
443 - 471 Subroutine to Itiad data. 
473-521 Subroutine to print. 
523-533 Subroutine to finish session. 



TI Mailing List 



I REM<4 SPACES>99/4A MAIL LIST 
C5 SPACES> 

5 REMC3 SPACESl «*COMPUTER ENVIRONMEN 

T«« 
7 DIM LN* (45> ,NA*(45) , CH* (45) , AD» (45 

> ,CP* (45) ,PCt (45) ,TP* (45) 
9 CALL CLEAR 

II PRINT " tiZ SPACES>99/4A MAILING 
LISTC3 SPACES>*" :::::::::: : 

13 INPUT "<4 SPACEB>PRESS ENTER TO B 

E6IN": X* 
15 CALL CLEAR 

17 PRINT "iS SPACESJWHAT IS THE NAME 
0F":"C4 SPACES>YOUR PRINTIN6 DEV 

ICE?": : " (EXAMPLE: RS232. BA=4800) 



RKINB" 
23 REM<3 SPACES> ttMAIL LIST MENUt* 
25 CALL CLEAR 

27 PRINT " iB BPACES>MAIN INDEX":::: 
29 PRINT "PRESSt3 SP ACES>TO " : : : 
3i PRINT -* 1 = VIEW NAMES LIST":" 
2 = SEARCH FOR A NAME":" 3 

= ADD NAMES":" 4 = CHANGE NAMES' 

33 PRINT " 5 = DELETE NAMES":" 6 
= ALPHABETIZE LIST":" 7 = S 

AVE DATA FILE":" B = LOAD DATA 

FILE" 
35 PRINT " 9 = PRINT LABELS/LIST" 

:" 10 = FINISH SESSION"--::: 
37 INPUT P 
39 IF P>10 THEN 37 
41 IF P<1 THEN 37 
43 CALL CLEAR 
45 ON P GOSUB 51,77,113,185,289,335, 

427,445,475,525 
47 GOTO 25 
49 REM{:4 SPACES>»tVIEW NAMES LISTt* 



51 
53 
55 
57 

59 
61 

63 

65 
67 
69 
71 



73 
75 
77 
79 
81 
83 

85 
87 
89 



91 



T = 

FOR 1=1 TO N 

T = T+1 

PRINT NA»(I) ,LN»(I) : CH* ( I ) i AD* ( I) 



(P) 



iTP*( I ) : 



TO CONTINUE* 
MAIN INDEX*" 



: CP* (I ) : PC* (I ) : 

IF T<2 THEN 69 

PRINT " tPRESS ENTER 

":" »- "R" ", ENTER FOR 

INPUT X* 

IF X*="R" THEN 73 

T = 

NEXT I 

INPUT "C7 SPACES>»END OF FILE* 

t9 SPACES>*PRESS ENTER TO CONTINU 

E « " : X * 

RETURN 

REMC4 SPACES>**SEARCH NAMES** 

INPUT "LAST NAME? " : Y* 

FOR 1=1 TO N 

IF LN*(I)<>Y« THEN 103 

PRINT : : : " IS THE PERSON: " : : " 

;NA*(I > : " " ; LN* (I) : : 

INPUT " (Y/N>?":X* 

IF X*="N" THEN 103 

PRINT : : : NA* ( I ) , LN* ( I ) : CH* ( I ) : AD* 

(I) :CP*(I) :PC* (I) : " (P)-";TP*(I) : : 



93 
95 
97 

9 9 
101 
103 
105 



19 INPUT P* 

21 G*="C7 SPACES>PLEASE WAIT..- 

C7 SPAC£S>WHILE THE PRINTER IS WO 



107 
109 
111 

1 13 
1 15 
117 
119 

121 
123 
125 



INPUT 
RINTC6 
Y / N > " : 
IF Z*< 
BOSUB 
INPUT 
: X* 

IF X* = 
SOTO 
NEXT 
PRINT 
SEARC 
FILE 
GOTO 
RETUR 
REM<4 
{5 SP 
A = N+1 
FOR I 
CALL 
PRINT 
(MA 
PRINT 
INPUT 
PRINT 



t3 SPACES>DO YOU WISH TO P 
SPACES}A MAILING LABEL? ( 

Z* 

>"Y" THEN 97 

495 

"SEARCH MORE NAMES? (Y/N)" 

"Y" THEN 77 
109 
I 
: : : " THE " j Y*: " YOU ARE 

HING FOR":" IS NOT IN THIS 
■■ . . . 

97 
N 

SPACES>*«ADD NAMES** 
ACES> 

=A TO 45 
CLEAR 

::::"ENTER DATA: ";"«";!;" 
X: 45) ": : : 

*LABT NAME: " 

LN* (I) 

: " *FIRST NAME(S) : " 



July 1983 COMPUTE! 243 



127 

129 



131 
133 
135 
137 



INPUT NA* (I ) 

PRINT :" tCHILDREN: ": " 

13 SPACESJNOTE--DQ NOT USE COMMA 

S • " 

INPUT CH*(I) 

PRINT :" tSTREET ADDRESS:" 

INPUT AD»(I) 

PRINT :" tCITY/PROVINCE: -: " 



139 
141 
143 
145 
147 
149 
151 
153 
155 
157 



159 

161 

163 
165 
167 
169 
17 1 

173 
175 
177 
179 



181 
183 
185 



187 

189 
191 
193 
195 

197 
199 
201 

203 



SPACES>NOTE DO NOT USE COMMA 



CP* <I) 

: " tPOSTAL 

PC* ( I ) 

:" «PHONEi» 

TPSd ) 



<3 

S f " 

INPUT 

PRINT : ■■ tPOSTAL CODE: 

INPUT 

PRINT 

INPUT 

V=I 

REMC3 SPACES>«*VERIFY ENTRIES** 

CALL CLEAR 

PRINT "ENTRY"; "#'»; V: : : 

PRINT "YOU ENTERED:"::" ";LN*<v; 

);", ";NA*(V>:" ^';CH*(V>:" ";A 

DS (V) : " "5 CP* <V> 



;PC* (V) : 



PHONE: ";TP 



ANYTHING? (Y/N> 



THEN 171 



PRINT " 

♦ (V> ::;:::: 

INPUT "CHANGE 

X$ 

IF X«<>*'Y" 

C = N+1 

CALL CLEAR 

GOSUB 201 

INPUT "ADD MORE NAMES? (Y/N)":X 

S 

N = N+1 

IF X«="N" THEN 181 

NEXT I 

INPUT "<:4 SPACES>«DATA FILE IS F 

ULL*C6 SPACESltPRESS ENTER TO CO 

NTINUE*" : X* 

RETURN 

REMC4 SPACES>««CHANGE DATA** 

PRINT " LAST NAME OF THE PERSON 

t3 SPACES>WHQSE DATA IS TO BE CH 

ANGED: ": : : : 

INPUT C* 

CALL CLEAR 

FOR C=l TO N+1 

IF LN«(C)=C« THEN 195 ELSE 239 

PRINT "IS THE PERSON:":" " ; NA* < 

C) : " "; LN* (C) : : 

INPUT " (Y/N>?":X* 

IF X*="Y" THEN 201 ELSE 239 

PRINT ::::::: "PRESSC3 SPACES>TO 

CHANGE": : 

PRINT " 1 = LAST NAME":" 2 

FIRST NAME<S)":" 3 = CHILD 
REN"s" 4 = STREET ADDRESS" 



205 R=C 

207 R*=" *ENTER THE NEW DATA:" 

209 PRINT " 5 = CITY/PROVINCE":" 

6 = POSTAL CODE":" 7 =* PHO 

NE":" 8 = NO CHANGE"::::::: 

211 INPUT P 

213 CALL CLEAR 

215 IF P<1 THEN 211 

217 IF P>8 THEN 211 

219 IF P=B THEN 229 

221 ON P GOSUB 245,251,257,263,269,2 

75,281 
223 PRINT : : "MORE CHANGES FOR:'*:" 

;NA* (R) : " " ; LN* (R) : : 
225 INPUT " <Y/N)?":Y* 
227 IF Y*<>"N" THEN 201 
229 PRINT :::"CHAN6E DATA FOR OTHER 

NAMES?": : : 
244 COMPUTE! July 1983 



231 

233 
235 
237 
239 
241 
243 
245 

247 
249 
251 

253 
255 
257 

259 
261 
263 

265 
267 
269 

271 
273 
275 

277 
279 
28 1 

283 
285 

287 
289 
291 
293 
295 

297 
299 
301 
303 
305 
307 
309 
31 1 
313 
315 
317 
319 
321 
323 
325 
327 
329 
331 
333 

335 



337 
339 
341 
343 
345 
347 
348 
349 
351 
353 
355 
357 
359 



Z* 



185 



LOOPS** 

: :LN« (R) : r 



NAME ( S > WERE : " : : NA* 



WERE: 



CH* (R) : 



INPUT " (Y/N) " 

CALL CLEAR 

IF Z*< >"N" THEN 

RETURN 

NEXT C 

RETURN 

REMC3 SPACES>**CHANGE 

PRINT "LAST NAME WAS: 

: Rt 

INPUT LNt(R) 

RETURN 

PRINT "FIRST 

(R) : : : R* 

INPUT NA*(R) 

RETURN 

PRINT "CHILDREN 

:R* 

INPUT CH*(R) 

RETURN 

PRINT "ADDRESS WAS : " : : AD* ( R ) : : : R 

* 

INPUT AD*<R) 

RETURN 

PRINT "CITY/PROVINCE WAS:"::CP*< 

R> : : :R* 

INPUT CP*(R> 

RETURN 

PRINT "POSTAL 

: : : R* 

INPUT PC*<R) 

RETURN 

PRINT "PHONE 

) : : =R* 

INPUT TP*(R) 

RETURN 

REM<4 SPACES>*«DELETE NAMES** 

INPUT "LAST NAME? '•:Xt 
FOR 1=1 TO N 

IF LN*(I><>X* THEN 325 
PRINT :;:"IS THE PERSON:":" ";N 
A*(I > : " " ;LN* (I ) : : 
INPUT " <Y/N)?":Y* 
IF Y*<>"Y" THEN 325 
A=I 

FOR D=A TO N 
LN* (D) =LN*(D-i-l ) 
NA* (D) =NA* £D+1 > 
CH* (D) =CH*(D+1 ) 
AD* (D>=AD«<D+1 > 
CP* (D>=CP*<D+1 > 
PC* (D>=PC* (D+l > 
TP* (D> =TP* (D-H ) 
NEXT D 
N = N-1 
GOTO 327 
NEXT I 

INPUT "MORE DELETIONS? <Y/N)":X* 
IF X*="Y" THEN 289 
RETURN 

REMC3 SPACES>**ALPHABETIZE LIST* 
tiZ SPACES> 

PRINT " Cy SPACES>PLEASE WAIT..." 
;;:" THE LIST IS BEING ARRANGED" 



CODE WAS: "r : PC* (R) 



NUMBER WAS:"::TP*(R 



B=l 

B = 2*B 

IF B<=N THEN 339 

B=INT (B/2) 

IF B=0 THEN 369 

FDR Y=l TO N-B 

X=Y 

I=X + B 

IF LN*<X>=LN*(I)THEN 363 

IF LN*(X)<LN*<I)THEN 365 

GOSUB 381 

X = X"B 

IF X>0 THEN 349 



361 GOTO 365 

363 GOSUB 373 

365 NEXT Y 

367 GOTO 343 

369 RETURN 

371 REMC3 SPACES! ««ORDER FIRST NAMES 

«*C3 SPACES> 
373 IF NA« (XXNA* ( I JTHEN 377 
375 BOSUB 381 
377 RETURN 

379 REMt3 SPACES> » tCHANGE ORDER** 
381 N*=LN*(X) 
383 LN*(X) =LN«C I) 
3B5 LN*<I>»N* 
387 N*=NA*(X) 
389 NA*(X)=NA*(I) 
391 NA*tI>=N4 
393 N*=CH*(X> 
395 CH*(X>=CH*(I) 
397 CH*(I)==N* 
399 N*=AD*<X> 
401 AD* ( X > =AD* ( I > 
403 AD*(I)=NS 
405 N*=CP«(X> 
407 CP*(X)=CP* (I > 
409 CP*<I)=N* 
411 N*=PC*(X> 
413 PC* (X ) =PC* ( I ) 
415 PC*(I>=N* 
417 N*=TP*<X) 
419 TP* CX>=TP* ( I > 
421 TP*(I)=N* 
423 RETURN 
425 REMC3 SP ACES> < *SA VE DATA FILE** 

C5 SPACES} 
427 GQSUB 467 
429 OPEN #1 :L*, INTERNAL, OUTPUT, FIXED 

150 
431 PRINT #1:N 
433 FOR 1=1 TO N 
435 PRINT #1 :LN* (I > ,NA* ( I > , CH* (I ) , AD 

* ( I > , CP* ( I ) , PC* ( I > , TP* ( I ) 
437 NEXT I 
439 CLOSE #1 
441 RETURN 
443 REMt4 SPACES> * *LOAD DATA FILE** 

{6 SPACES> 
445 GOSUB 467 
447 OPEN #1 : L*, INTERNAL, INPUT , FIXED 

150 
449 INPUT #1:N 
451 FOR 1=1 TO N 
453 INPUT #1 :LN*< X ) , NA* ( I > , CH* (I > , AD 

*(I),CP*(I) ,PC*(I>,TP*<I) 
455 NEXT I 
457 CLOSE #1 
459 CALL CLEAR 
461 



PRINT " "jL* 

; N; "ENTRIES- " 

MAXIMUM*": : : 



THIS FILE HAS" 
*45 ENTRIES IS 



463 

465 
467 



469 

471 
473 

475 



tPRESS ENTER TO CONTINUE 



INPUT 

«"; X* 

RETURN 

PRINT 

E OF": 

VICE?" 

E> "::;::: ; 

INPUT L* 

RETURN 

REM **SUB 

* 

PRINT "PRESSt3 SPACES>TO PRINT 

::" 1C5 SPACES>MAILIN6 LABELS 

:" 2t5 SPACES>MAILING LIST":: 



<5 SPACES>WHAT IS THE NAM 
C4 SPACES>YOUR STORAGE DE 
: "(EXAMPLE: CSIOR DSKl.FIL 



TO PRINT LABELS/LIST* 



477 
479 
481 
483 
485 
487 
489 
491 
493 
495 
497 



499 
501 
503 
505 
507 
509 
51 1 
513 
515 



517 
519 
521 
523 

525 



527 
529 
531 



INPUT P 

IF P<1 THEN 477 

IF P>2 THEN 477 

PRINT s:sis::£r:*so* :*::•■■•»- 

IF POl THEN 505 

FOR 1=1 TO N 

GOSUB 495 

NEXT I 

RETURN 

OPEN #2:P* 

PRINT #2:TAB(5> ;NA*(I) ; " " ; LN* ( I 

) :TAB(5) ; AD*(I ) :TAB<5) ; CP* ( I > ; " 

" ;PC* ( I ) : : : : 
CLOSE #2 
RETURN 

REMC4 SPACES>«*PRINT MAIL LIST** 
FOR 1=1 TO N 
BOSUB 513 
NEXT I 
RETURN 
OPEN #2:P* 

PRINT #2:TABt5J ;LN*( I) ; ", " ; NA* ( 
I) ; "t6 SPACES>"5CH*( I> :TAB(5) ; AD 
* ( I ) ; " <:3 SPACES> " ; CP* ( I) ; " " ; PC* ( 1 ) 
PRINT 4t2:TABt60> ; " (P)-";TP*<I> : : 
CLOSE #2 
RETURN 

REMC3 SPACES>*«FINISH SESSION** 
<5 SPACES> 

INPUT "C7 SPACES>DO YOU WISH TO 
<10 SPACES>TERMINATE THIS SESSION 
7^5 SPACES > ( Y/N) ": X* 
CALL CLEAR 
IF X*<>"Y" THEN 25 
PRINT "{6 SPACES>HAVE A NICE DAY 



533 STOP 



TI-99/4A 



(5^, 



i ii'^ 



/ 



NEW FROM COMPUTE* 



PROGRAMMER'S 

REFERENCE 

GUIDE 

FOR THE TI-99/4A' 



by C. Regena, 
COMPUTE! Columnist 



Contains over 40 programs! An indispensable guide to 
understanding your TI-99/4A. Everything you need to know 
about: learning BASIC, editing, variables, graplilcs, music, 
speech, mathematical functions, using fiJes and arrays, 
sorting, conserving memory, and much more. Useful for 
everyone from beginners to experienced programmers. 

ILBSEKVIS TOUR FIBST EBITION T0BA71 



YES! Send me a copy of the ProgrBmmer's R&ference GuJde for 
the TI-99/4JL 

$14,95 (plus $Z shipptng/handlmg) check or money order 

enclosed. 

Charge my □ VISA □MasterCard □ Ajnerican Express 

Acct # ^_^ Exp. 



Prepaid orders only. All orders must Include S2 S/H. 
Najne__ ^ 



Address „ 

City/State/Zip , 



COMPUTE! Books * P.O, Box 5406 • Greenstwro, NC 37403 
Plea&e allow 4-6 weeks for delivery. 



July 1983 COMPUTE! 245 



VIC Bitmapping 



C D Lane 



If you dont think that there's enough space in an unex- 
panded VIC to create exciting, high resolution graphics, 
you're in for a surprise, 

Bitmapping, controlling each tiny dot on the TV 
screen, is the only way to gain total control over the 
video image. The finest, sharpest graphics result whefi 
you govern each point of light separately. 

This article deals exclusively with BASIC pro- 
gramming and contains a ready-to-run demo program 
along with an engaging, high-resolution, two-player 
game called "Lines/' Nevertheless, some of the concepts 
here might be nezo to the beginning VIC user so toe've 
provided a brief dictionary of the more complicated 
terms. 



Bitmapping allows us to turn any bit on the screen 
on or off, usually under the control of a program. 
Bitmapping the VIC's screen requires software 
routines to plot the bits, proper initialization of 
the video registers, and most of RAM to store the 
screen. 

Sizes And Shapes 

The video chip in the VIC-20 computer cannot 
address expansion RAM. This limitation leaves it 
IK of RAM starting at address 0, 4K of RAM 
starting at 4096 ($1000 hex), 4K of ROM starting at 
32768 ($8000), and IK of nybble RAM starting at 
37888 ($9400). The normal state of a 5K unex- 
panded VIC has the character memory in the 4K 
of ROM, the screen memory in 506 bytes of RAM 
at 7680 ($1E00), and the color memory in 506 bytes 
of nybble RAM at 38400 ($9600). {Nybble just means 
that items are stored in four-bit large spaces in 
memory, rather than the normal, eight-bit groups 
called bytes,) 

There are two character sizes on the VIC 6560 
video chip, 8 bits by 8 bits and 16 bits by 8 bits. 
The 8x8 characters are the norm, and the character 
ROM is set up to use these. The 16 x 8 characters 
are twice as tall, and are useful in bitmapping the 
screen since they double the graphic area using 
the same amount of screen memory. The 8x8 
characters are advantageous when using shapes 
from the character ROM, and they are simpler to 
initialize and plot. 

At most, 256 different characters of 64 bits 
each, or 16,384 bits, can be addressed with 8x8 

246 COMPUTE! July 1983 



characters. To get more screen area you must use 
16x8 characters. With the larger characters, 256 
characters of 128 bits - or 32,768 bits maximum, 
twice as many - can be addressed. The 16 x 8 
characters can be selected by turning on the low 
bit of 36867 ($9003). (You can turn this bit on by 
POKEing it with any odd number.) 

The screen can also be bitmapped in multi- 
color mode. Multicolor mode is covered in detail 
in the VIC-20 Programmer's Reference Guide. Multi- 
color mode reduces horizontal resolution to half 
of normal, so the characters are now 8x4 and 
16 X 4, using two bits for each pixel on the screen. 
Pixels are located in a byte by using powers of 4, 
rather than the powers of 2 used in high resolution 
mode. 

Usually you will need to reshape the screen 
for your graphic program, since you will probably 
be using less area than the normal screen. Memory 
location 36866 ($9002) controls the number of col- 
umns on the screen, and 36867 ($9003) controls 
the number of rows, as well as the double high 
characters. Be careful of the meaning of rows when 
using the larger characters since rows become 
twice as tall. 

You can format the screen by using the com- 
bination of columns and rows, which results in 
the closest thing to a square shape, or a combina- 
tion that uses all of the RAM available. An alter- 
nate scheme is to try to do both. The standard 
VIC screen uses this combination: with 22 columns 
by 23 rows, it achieves the ''most square" screen 
possible, using as many of the 512 characters as it 
can (leaving only 6 characters unused). 

Where It All Goes 

When you're bitmapping the screen from BASIC, 
there is quite a lot to fit into a small space: the 
screen, character, and BASIC memories all must 
go into the 4K of RAM at address 4096 (except, of 
course, in an expanded VIC, where BASIC can be 
moved out of internal memory). There are several 
ways we can accommodate BASIC and character 
memories, all with the screen at address 7680. In 
the table below, the first column is the value to 
POKE into the character pointer register of the 
VIC chip; 52,56 are the high bytes of the end of 
RAM pointers. 



Qi commodore 



$99 



$427 




MEMORY EXPANSION 



$69 



$39 



SOFTWARE FOR THE VIC-20 



WORD PROCESSING - $23.00 

ADV WORD PROCESSING $32.00 

MAILING LISTS - - $20.00 

SOFTWARE FOR THE COM-64 

WORD PROCESSING $38.00 

MAI LI NG LISTS $20.00 

Call for other software Items. 

VIC 1 541 DISC DRIVE $339.00 

VIC 1 530 1 530 DATASSETTE $ 64.95 

VIC 1525 GRAPHIC PRINTER $339.00 

2Kx8 STATIC RAM CHIPS (200 nseC) QTY ea. $ 7.95 

ORDER FORM 



(Circle Above Items) 



NAME_ 
STREET. 

CITY 

STATE _ 
PHONE, 



ZIP. 



CHECK ONE: 
n VISA D MASTERCARD 
D Check Enclosed D C.O.D. 

Credit Card # 

Expiration Date 



Personal checks accepted 
(A flow 3 weeks extra) 



Credit Cards add 3% 
Add 3% Shipping Charge 
COD'S add $1 50 plus 20% Deposit 
Required CA Res. 6V?% Tax 



U.S. TECHNOLOGIES 



1625 W. OLYMPIC SUITE 800 

LOS ANGELES, CA 9001 5 

(213)383-8127 
(Information & Orders) 

CREDIT CARD ORDERS ONLY CALL TOLL FREE: 
1 -800-824-7888* (48 states) 1 -800-824-791 9 • (Alaska & Hawaii) • Ask for Operator #649 









Usable RAM 


# of Chars 


Screen Shape 


36869 


Start 


52,56 


Graphic 


BASIC 


8x8 16x8 


Square Maximum 


252 


4096 


16 


3.5K 


none 


256 224 


21x21 16x28 


253 


5120 


20 


2.5K 


IK 


256 160 


17x18 16x20 


254 


6144 


24 


1,5K 


2K 


192 96 


13x14 12x16 


255 


7168 


28 


0.5K 


3K 


64 32 


8x8 8x8 



Moving the screen memory from 7680 to the top 
of the lower IK of memory - for example, 768 
($0300), where the tape buffers are - adds 64 8x8 
or 16 16x8 characters to the above figures (and 
adds 0.5K to the available RAM figures). However, 
this move is more safely accomplished via machine 
language. The character pointer can also be 
pointed at the first IK of RAM (POKE 36869,248), 
but this is not very useful since page zero is used 
in both BASIC and machine language program- 
ming. 

The case where the character pointer equals 
255 is described in detail in the Reference Guide, 
This arrangement gives the user very little graphic 
area, but does allow mixing graphic characters 
with a subset of the ROM characters. 

Programming The Bitmap 

The first step in bitmapping the screen is to allocate 
RAM for the character memory in an area outlined 
in the chart. We must keep BASIC from using this 
memory by POKEing locations 52 and 56 with the 
high byte of the starting location we have chosen, 
and POKEing locations 51 and 55 with the low 
byte (which is zero for the examples in this article 
since they all begin on a page boundary). 

To initialize the character memory, clear it by 
POKEing each byte with a zero. Next, initialize 
the screen memory by sequentially numbering 
the locations and POKEing each byte with its dis- 
tance (in bytes) from the start of screen memory. 

Program 1: Polargraph 

10 P0KE55 , : POKE52 , 20 : P0KE56 , 20 : CLR: V=368 

64:M=5120;H=248:W=7680:R=38400:K= 

63;S$="N" 
20 U=2/3 : T=l : F=0 : Q=63 : B= . 01 : L=l : C=2 : F0RI= 

. T07 : T% ( 7 -I ) =2 " I : NEXT : POKEV+1 ,37: 

POKEV+3,32 
30 PRINTCHR$ ( 147 ) TAB ( 6 ) " POLARGRAPH" CHR? ( 1 

7 ) : INPUT " FREQUENCY " ; F 
40 INPUT "OBJECT COLOR 1-8 " r C : IFC>80RC<1GO 

TO40 
50 INPUT"SCREEN COLOR 1-8" ; T : IFT>80RT<1GO 

TO50 
60 INPUT" SIZE 0-63";Q:IFQAND192GOTO60 
70 INPUT"ECCENTRICITY <=1 " rU ; IFABS (U ) >1G0 

TO70 
80 INPUT "RESOLUTION" ; B: INPUT "CYCLES" ? L; IN 

PUT"SOLID Y/N" ; S$ : PRINTCHR$ ( 1 7 ) "P 

LEASE WAIT"r 
90 FORI=MTOW'*512:POKEI, .: NEXT : POKEV+5 , 253 

:POKEV,ll:POKEV+2,144:G=S$<>"Y" 

.248 COMPUTE! July 1983 



100 POKEV+15 , 1 7 *T-9 ; FORI= . T0255 : POKEW+I , I ; 
P0KER+I,C-1:NEXT:F0RI=.T0L*2*STE 
PB 

110 S=ABS(C0S(F*I}*Q):X=C0S(I)*S*U+K:Y=SIN 

( I ) *S+K : GOSUBl 60 : I FGGOTOl 50 
120 IFABS(X-K)>ABS(Y-K)GOTO140 
130 S=SGN(K-Y):E=(K"X)/(K-Y)*S:X=X-E:FORY= 

YTOKSTEPS : X=X+E : GOSUB160 : NEXT : GOT 

0150 
140 IFX<>KTHENS=SGN(K-X) :E=(K-Y)/(K-X)*S:Y 

=Y-E : FORX=XTOKSTEPS : Y=Y+E : GOSUB 1 6 

; NEXT 
150 NEXT : WAIT198 , 1 : GETA? : POKEV+5 , 240 : POKEV 

+15,24: POKEV , 5 : POKEV+2 , 1 50 : GOTO30 

160 Z=(YANDH)*15+Y+(XANDH)+M:P0KEZ,PEEK(Z) 
0RT%(XAND7) : RETURN 



Program 2: Lines 



10 POKE52 , 20 : P0KE56 , 20 ; CLR: V=36864 : M=5 120 

: S=7680 ; C=38400 : Q=8160 : W=240 : GOTO 80 
20 1=1 -I : FORY= . T06STEP2 : X=Y+I *8 : POKEQ+1 , H 

%(X) :SYS(Q) :IFPEEK(Q+19)=H%(X+1)T 

HENX=Y:Y^W 
30 NEXT:P0KEV+13,W:IFY>WTHENP%(I, . )=CX=4) 

-(X=0:P%(I,1) = (X=2)-(X=6) 
40 X=P% (1,2) +P% { I , . ) : Y=P% (I , 3 ) +P% ( I , 1 ) : PO 

KEV+13, . :IFX>63ORY>159ORX*Y<.GOTO70 
50 P%(I,2)=X;P%(I,3)=Y:Y=(YANDW)*15+Y+(X* 

4ANDW ) +M : X=T% ( XAND3 ) ; I FPEEK ( Y ) AND 

XGOTO70 
60 POKEY, X0RI*X*20RPEEK(Y) : GOTO20;DATA60, 

60,62,6 2,60,62,56,60,32,32, ,48,32 

,48,48,32 
70 POKEV+ 15-1,17-1: FORI= . TOM : NEXT : GOTOl 10 

:DATA138,96,110, 1, 114,142,2,114,1 

10, 212, ,65 
80 POKEV+1 , 30 : POKEV+3 ,21: POKEV ,11; POKEV+2 

, 144 : POKEV+5 , 253 : DIMP% ( 1 , 3 ) , H% (1 5 

),T%(3) 
90 FORI= . T0255 : POKES+I , I : POKEC+I , 8 : NEXT : D 

EFFNR{X)=INT(RND(1)*X) :F0RI=,T03: 

T%(3-I)=4*I 
100 NEXT : F0RI= . TOl 5 : READX : H% ( I ) =X+1 9 1 : NEXT 

: FORI= . TOl 1 : READX : POKEI+Q, X+3 1 ; NEXT 
110 FORI=MTOS:POKEI, . : NEXT: POKEV+1 5 , 19+FNR 

( 5 ) : POKEV+14 , 16*FNR( 5 ) +63 
120 F0RI=.T01:P%Cl, . )=• :P%(I* 1 )=FNRC 2 ) *2-l 

: P% { 1 , 2 ) =21 * ( I+l ) : P% ( 1 , 3 ) =80 ; NEXT 

:I=1:GOTO20 

To plot, we will use cartesian (X,Y) coordi- 
nates, where Y is zero at the top of the screen and 
X is zero at the left of the screen, making the 
HOME position the origin (0,0). Both are bounded 
on the high end by the particular height and width 
chosen for the screen in bits. To plot a particular 
bit in memory from its X,Y coordinates, we must 
determine the actual character it resides in - which 
byte of that character, and which bit of that byte. 



To determine what character the bit is in, 
drop the low order digits of the coordinates, where 
the number of low order digits equals log base 2 
(dimension in pixels of the character). Next find 
the number of the character by multiplying the 
character's Y coordinate by the number of X char- 
acters in each row and add in the character's X 
coordinate. The low order Y bits not used earlier 
are the number of the byte in the character the bit 
is in. 128/ (2 to the low order X bits) locates the bit 
in the byte. 

For example, in a 16 x 16 character screen 
with 8x8 characters, use INT(coordinate/8)*8 or 
simply (coordinate AND (255 - 7)) to get the char- 
acter coordinates (but don't throw away the 
original values!). The location of the character is 
X + Y * 16 (the number of columns). 

Location of byte in memory = 
Start of character memory 

+ Number of character the byte is in * Number of 
bytes in character 
+ The low order Y bits (the byte in the character) 

To set a bit, POKE byte, PEEK(byte) OR 
128/(2 flow order X bits) 

To clear a bit, POKE byte, PEEK(byte) AND 
NOT 128/(2 t low order X bits) 

To plot bits faster, store the powers of 2 (or 4 for 
multicolor mode) in an array at initialization time, 
saving the time of computing the powers each 
time. 

Two programs are included here to illustrate 
bitmapping the screen. 

Polargraph 

Polargraph (Program 1) prompts the user for vari- 
ous parameters and uses these to draw spiral 
curves and solid objects. The program uses polar 
coordinates and the SIN( ) function to calculate 
the shapes, translates these to cartesian coordi- 
nates and plots them on the VlCs linear memory 
in high resolution mode. Polargraph asks for the 
following parameters to control plotting: 

Frequency? This controls the number of 
"leaves" on the design; higher numbers give more 
leaves. It also controls overlapping - whole num- 
bers give non-overlapping "leaves" and rational 
numbers give more complex patterns. As the fre- 
quency decreases from 1 to 0, different types of 
cardioids are produced, degenerating into spirals, 
and eventually ending in a perfect circle at zero, 
the default value. Any value is legal for this 
parameter. 

Object color? Screen color? The number the 
user enters is the number on the key that the color 
he wishes is on; black=l, white = 2, and so on. 
Numbers from 1 to 8 are legal here. The default is 
a white object on a black screen. 



Size? This controls how far out from the center 
the object extends. A value around zero will make 
a dot in the center of the screen, and a value of 
63 (half the width in bits of the screen) will make 
the largest possible shape. The default value here 
is 63. 

Eccentricity? This controls how elliptical the 
shape is. The default 2/3 produces the most sym- 
metric result on the screen. The default is less 
than 1 since the VIC's screen is not square (it uses 
rectangular pixels). A value of 1 (circular) is best 
when sending the shapes to a printer. The shapes 
can be stretched both horizontally or vertically. 
Legal values are between -1 and 1. 

Resolution? This controls how many dots are 
used to draw the figure. A high resolution makes 
a finer drawing, but takes longer to draw. A low 
resolution draws faster with less precision. The 
default is .01, any value is legal, and the usable 
range is .5 to .001. 

Cycles? This is the number of times around 
the graph the program runs. Its setting is related 
to the frequency. A simple whole number fre- 
quency requires only 1 cycle. A frequency of 3.33 
requires 3 cycles to complete the drawing; 1.25 
requires 2; 2.125 requires 4, and so forth. The de- 
fault is 1 cycle; any value is legal. This parameter 
can be used to force partial drawings, open curves, 
incomplete spirals, etc. 

Solid? This parameter controls whether the 
shape is drawn with dots or lines. Lines make 
sense only with whole number frequencies. Line 
mode is slower. The default is "N" which is 
dot mode. Legal values are "Y" and "N" (yes 
and no). 

The user does not have to enter every param- 
eter; just RETURNing uses the defaults outlined 
above. Once a drawing is complete, typing any 
key will get it back to the parameter menu. The 
defaults become the values entered on the last 
run, so you can just change one or more param- 
eters to see their effect while holding others con- 
stant. 

Polargraph uses a 16 row by 16 column screen 
in 8 by 8 character format (256 characters), sim- 
plifying the mathematics of plotting due to the 
symmetry of the screen. The LINES program 
formats the screen in a more complex and less 
symmetric fashion. 

The designs produced by Polargraph can be 
printed on the VIC 1515 (or other) printer with 
the routine in my article "Printing the Screen" in 
COMPUTErs First Book of VIC (COMPUTE! Books, 
1982). You will need to remove the IF statement 
after the colon on the end of line 5 if you are using 
more than 64 graphic characters (as Polargraph 
does). The variables HIGH and WIDE will also 
need to be adjusted to the dimensions (in charac- 
ters) of the screen you are using. These changes 

Jul/ 1983 COMPUTE! 249 



Brief Definitions 

Don Cormichael Assistant Editor 



Sotne of the terms used in this article might be 
unfamiliar. Here's a short description of the main 
ideas: 



• Bitmapping. Bitmapping is a process 
whereby each tiny individual dot (pixel) on a 
TV screen or monitor is represented by its 
own ''bit" in memory. When the corres- 
ponding memory bit is zero (off), the dot (or 
pixel) is off. When the bit is a one (on), the 
pixel is turned on. Each byte of memory (an 
address like 1525) is made up of eight bits. 

When bitmapping the VIC-20, there are 
32,384 separately programmable pixels. With 
each pixel assigned to one bit (or eight pixels 
to the byte), it would take 4048 bytes to bit- 
map the entire screen, 

• Cardioids, A cardioid is a heart-shaped, 
closed curve that is produced by tracing a 
fixed point on one circle as it is rolled around 
the circumference of another equal, station- 
ary circle. 

Refer to figures 1 through 3. As circle 2 
is rolled around the circumference of station- 
ary circle 1 (Figures 1 and 2), the fixed point 
"P" on circle 2 begins to rotate and produce 
the heart-shaped cardioid curve. Figure 3 
represents one complete revolution around 
fixed circle 1 and displays the completed, 
closed cardioid curve. 

Cardioid curves are used in geometric 
applications for the classical problem of 
trisecting an angle. In "Bitmapping The 
Screen," various types of cardioids are pro- 
duced in the Polargraph program. 





Figure 1. 



* Figure 2. 

'Drowing" The Cardioid Curve 




• Cartesian Coordinates, The Cartesian Co- 
ordinate system is the common x - y coordi- 
nate system that is v^idely used in plotting 
charts and graphs. The x coordinate repre- 
sents an imaginary horizontal plane, the y a 
vertical plane (refer to Figure 4). Positions 
are plotted by indicating their x and y coordi- 
nates (x,y). That is, you can locate anything 
by giving a horizontal and vertical number. 
It's like the way you can locate a particular 
street on a city map by looking for it w^ithin 
the square called 'T-5" or "C-2." 

In the article "VIC Bitmapping," x coor- 
dinate points begin at the left of the screen, y 
coordinate points begin at the top of the 
screen (see Figure 5). Coordinate 0,0 thereby 
becomes what computerists call the HOME 
position, the upper left corner of the screen. 
Screen positions are plotted by raising or 
lowering the x and y coordinates. Figure 5 
illustrates plotted examples where the .r,y 
coordinates are 11,12 (middle of the screen), 
and 22,23 (lower righthand corner). 



Figure 4. 




Figures. 

.X 




Y- 


VT(0,0) 

1 


^- 1 




x+ 


1(11,12) 


1 


f 






Y + 




(22,23) 



Figure 3. 



Cartesian Coordinates On The TV Screen 

• Low Byte - High Byte. For a complete defi- 
nition of low byte - high byte (LBHB) addres- 
sing techniques refer to An Explanation of 
LBHB in "All About USR'' in this issue. 

• Screen Memory, Screen memory is the 
memory in the VIC that retains the image of 
what is displayed on the screen. Screen mem- 
ory is RAM, and its contents are defined by 
the user. POKEing values into the screen 
memory will, in effect, display characters on 
the screen. 

• Polling The Keyboard. "Polling" is the 
process of continually checking the status of 
a device (such as a keyboard, peripheral, 
etc.) to determine if anything has changed. 
Polling the Keyboard in the VIC means that the 
operating system of the VIC-20 checks the 
keyboard (60 times every second) to deter- 
mine if any keys have been pressed. 



will allow the printing of any large graphic screen. 

The Lines Game 

"Lines" (Program 2) is a two-player game in which 
each player independently guides his own line 
from the keyboard. The screen is formatted in 
double high character mode, with 16 columns by 
10 rows (the equivalent of 20 rows in regular char- 
acter format). The program makes the maximum 
use of the RAM available with BASIC and the 
screen in the same 4K. The screen is in multicolor 
mode with the two players' lines controlled by 
different color registers, so that they can run 
alongside each other without color interference, 
making for slightly more complicated plotting, 
but greater visual effect. 

Each player controls a constantly growing 
colored line on the screen; he must not touch the 
walls, the other player's line, or his own line, or 
else his line disappears. The left line is controlled 
by keys A (left), D (right), W (up), and X (down). 
The right line is controlled by keys K (left), 
; (semicolon, right), O (up), and . (period, down). 
The two players do not interfere with each other's 
control even though they both use the same 
keyboard. 

The technique used to poll the keyboard is 
described in detail by Mike Bassman and Salomon 
Lederman in COMPUTERS First Book of VIC. The 
machine language subroutine in LINES has been 
moved into unused screen memory, in order to 
keep character memory free. It's easier to use the 
game if the keys that control the lines are marked 
with paper sticker arrows. 

Both programs are as compact as possible in 
order to be fast and not exceed the IK limit to 
program and variable space imposed by the large 
screen. Both programs are for an unexpanded 
VIC; however, they will also run with a 3K expan- 
der, all 3K of which is available for extra code. 

Bitmapping the screen requires careful ac- 
counting of memory usage and small, efficient 
programs in an unexpanded VIC. With a little 
extra thought and work, it is possible to produce 
dazzling graphic displays and games without 
special hardware or software additions. © 



VK-20 and Commodore 64 



ADVENTURES 
BANSHEE CASTLE 

An unbeileveabiB adventure that wilf try your 
patience. But InloHigence, persistance and 
stamina pays oil. An acilonpached (jamB thai 
k^eps you on edge. 
VIC 16K Reqd. J1&,95 



WHODUNtT? 
Mystery-lover's delight. 
How's your analyltcal mind'' 
If you have any logic. ..this a the 
game lor you- 
VIC 16k; Reqd. 
CS4 



MAGQIE 

(Arllflcial InliJIIganc*) 

Have a refationshlp with your compuler Ihats 

hard to believe. Discuss W wiEh "Maggie" 

VlCieKRaqd. 119 95 

C64 



SCRAHtBLERS? 

Wb have it. The uftimate chalFenge \rt word 

scramble. 3 games on one tape. 

Test your skfll &. Knc}«ledge. 

No exp. req V(C C-&« tt9M 



ORDER ALL 4 FOR 70" 

CHECK OR MONEY ORDER 

ADO *1 .50 FOR PI H 



DEALER INQUIRIES INVITED. 






3133 South Nucia Street 

Aurora. Colroado 60013 

303/ BS0-30U 




Dealer avQllobility MICROTECHmC SOLVnONS tHC, ' 

inquiries (203) 389-8383 P.O. BOX 2940, New Haven, a. 06515 



• :^ 




MEM( 

FLEXIBLE DISCS 

WE WILL NOT BE UNDER- 
SOLDfl Call Free (800)2354137 

for prices and informatioa Dealer 
inquiries invited and COD's 
accepted 



PACIFIC 
EXCHANGES 

100 Foothill Blvd. 

San Luis Obispo, CA 

93401. InCaLcall 

(800) 592-5935 or r^fjsA^ 

(805)543-1037 



WOXmwr^ presents..... J^pryteByter^" 

For the Commodore 64" 

The user affectionate sprite development program. Menu- 
driven, mono/multicolor sprites, joystick/keyboard, tape/disic 
20K w/FAST machine language routines. Over 60 commands: 
ROTATE (any angfe - 360). JNVERT/OBVERT, SHIFT, SYIV!- 
METRY, AND/OR, REVERSE, REVIEW. MOVtE (animation). 
Create and edit up to 1 28 spriles per file. For programming 
efficiency and FUN! IncludestheGame Maker -automatically 
prepares a base for game development. 
Cassette $29,95 



Disk 



$34,95 



(U.S. Funds) 



FOX§®IFir" 

P.O. Box 507 

Deer Park, Texas 77536 

(713)473-6723 

A Divisiori of Foxfire Systems. I 




FREE PROGRAMS ? 



Commodore 64, Pet. & Vic 20 owners, why buy? Trade I! 

Hundreds of people \\ke youfsell. wheifier you're an amateur or advanced prograrnmer, 
are creating fantastic new programs on if^eir computers and they would lifte to exchange 
itieir programs with others, The Soliware Exchange makes this possible Send you: 
cassette or disc with the program you wish to share V/e catalog it and replace it with 5 
specially selecied programs of others and return them to you, There is no cost lor the 
programs, however, we do ask S9,95 to cover costs of tiling, advertising, matling and 
handling To receive your 5 programs!'" Send your program on mimimum 30 mm 
cassette (to allow space for return programs) or disc (any 5% commodore) and your 
name, address, type of computer, memory size & your program preference along with 
$9,95 lo: 

THE SOFTWARE EXCHANGE 

P.O. BOX 150 

Hood River, Oregon 97031 

Amateurs may not have the best programs to serxi. but don't dismay even it you don t 
gain national recognition you wM still receive 5 great programs to inspire you Don t 
delay ' Get started and send in Be sure lo mclude all information requested' ' ' 



CAPUTE! 

Modificotions Or Corrections To Previous Articles 



64 Video, Part III 

Line 40 of the demonstration program from Part 
III of Jim Butterfield's "Commodore 64 Video - A 
Guided Tour" (p. 160, April 1983) should read: 

40 FOR J=0 TO 62: READ X:POKE J+832,X:NEX 
T J 

Atari One-On-One 

To use paddles with the Atari version of this game 
from the May 1983 issue (p. 48), change line 650 
to read: 

650BLINE = 250 

Editype For The 64 And VIC 

Reader Clifford Johnsen supplied changes which 
allow the VIC Editype mini word processing pro- 
gram from the April 1983 issue (p. 50) to run on 
the Commodore 64. Delete lines 265 and 266 and 
modify the following lines: 

210 A$(K)=A$(K)+C$: G$="": IF LEN(A$(K)) 



<40 THEN 120 
240 FOR U=l TO 40-LEN(A$(K)) : PRINT CHR? 

(20);: NEXT U 
5025 FOR B=l TO 40 

For VIC or 64 users, the following change to 
line 180 suggested by John Stoddard will provide 
an underline cursor to eliminate confusion about 
where the next character will be printed: 

180 PRINT G$;"{D0WN] {LEFT}";CHR${32);GHR 
$(I63);"{UP)lLEFT}"; 

Computer Literacy On The Timex/Sinclair 

Program 4, ''Big Letters/' from this article in the 
April 1983 issue (p. 165) requires one correction. 
Change line 140 to read: 

140 LET W$=W$(2 TO LEN W$ ) 

Atari SuperFont Plus 

Author John Slaby has found the following cor- 
rections to minor bugs in his improved version of 
SuperFont which was published in the February 
1983 issue (p. 154): 

1200 POKE 54286, 192 :G0SUB 390: GOTO 520 
1440 DATA 72, 169, 100, 141, 10, 212 
1700 IF A=58 OR (A>47 AND A<58) OR (A>64 
AND A<=90) OR A=46 THEN 1720 

Also, D. Chouiniere suggests that to eliminate 
the problem of scrolling of the display, line 500 
should be changed to 525 and then line 500 should 
be deleted. ® 



»OOQC 



ACCOLADE COMPUTER PRODUCTS 



HARDWARE 

Commodore 64 S419.95 

1525-E Printer S329.95 

1515 Disk Drive S329.95 

BMC Color Monitor $349.95 

Star Micronics 

Parallel Interface $69.95 

Gemini 10..... S329.95 

Gemini 15 $536.95 

24K Golden Ram $149.24 

Vic Rabbit $39.95 

Wico Joystick $22,50 

Wico Joystick ''Red Ball" $25.00 

HES Sound Box $12.50 

BOOKS 



SOFTWARE (COMMODORE 64) 



Avaton Hill 

B1 Nuclear Bomber. ... $12.00 

Midway Campaign $12.00 

North Atlantic $12.00 

Nuke $12,00 

Planet Miners SI 2.00 

Andromeda Conquest $13.50 

Broderbund Software 

Choplifter $26,95 

David's Midnight Magic .... $33.95 

Sea Fox $29.95 

Serpentine $29.95 

HES 



Commodore Reference Guide 319.50 

ViC Reference Guide $16.50 

1st Book of VIC $9.50 

2nd Book of VIC ,....$12.95 

1st Book of Commodore 64 $12.95 
Tricks for VICS $9.95 

ACCOLADE COMPUTER PRODUCTS 

4858 Coronado Avenue 

San Diego, CA 92107 
(619) 223-8599 



HESMON 64 $29.95 

HES Writer 64... $33.95 

Royal 

Quick Brown Fox $59.95 



Sierra on Line 

Frogger (disk) $29.95 

SIrius 

Blade of Blackpoole $29.95 

Spinnaker 

tn Search of the 

Most Amazing Thing (disk) $29.95 

Synapse 

Ft. Apocalypse $26.95 

Survivor $26.95 

Pharoh's Curse $26.95 

UMI 

Renaissance ... ... $29.95 

NO REFUNDS ON OPENED SOFTWARE 



Dealer inquiries invited 

California residents add 6*0 Sales Tax 

Add S3 00 iot shipping and handling (except tiard^vare. add 3% of prjce 

COD Charge Si 50 - C O D s. Cashiers Checks or Money Orders orMy 

We accept Money Orders. Cashiers Checks. 

personal checks musi lake 2 weeks to clear 

Foreign orders paid m U S funds, add S5 00 for shipping and handUnq 

(OT S^o of hardware price) 



252 COMPUH! July 1983 



COMPUTE! Back Issues 



Here are some of rhe applications, tutorials^ 
and games from available back issues of 
COMPUTE!. Each issue contains mucb» 
much more than there's space here to Ust, 
but here are some highlights: 



February 1981: Simulating PRINT USING, 
Using the Atari as a Terminal for Telecom- 
munications, Attach a Printer to the Atari, 
Double Density Graphing on CIP, Commo- 
dore Disk Systems, PET Cra^h Prevention, 
A 25f^ Apple II Clock. 

May 1 98 1 : Named GOSUB/GOTO in 

Applesoft, Generating Lower Case Text on 
Apple II, Copy Atari Screens to the Printer, 
Disk Directory Printer for Atari, Realtime 
Clock on Atari, PET BASIC Delete Utility. 
PET Calculated Bar Graphs, Running 40 
Column Programs on a CBM 8032. 

June 1981: Computer Using Educators 
(CUE) on Software Pricing, Apple II Hires 
Character Generator, Ever- expanding 
Apple Power, Color Burst for Atari, Mixing 
Atari Graphics Modes and 8, Relocating 
PET BASIC Programs, An Assembler In 
BASIC for PET, QuadraPET: Multitasking? 

July 1981: Home Heating and Cooling, 
Animating Integer BASIC Lores Graphics, 
The Apple Hires Shape Writer, Adding a 
Voice Track to Atari Programs, Machine 
Language Atari Joystick Driver, Four Screen 
Utilities for the PET, Saving Machine 
Language Programs on PET Tape Headers, 
Commodore ROM Systems, The Voracious 
Butterfly on OSL 

August 1981: Minimize Code and Maximize 
Speed, Apple Disk Motor Control, A 
Cassette Tape Monitor for the Apple, Easy 
Reading of the Atari Joystick, Blockade 
Game for the Atari, Atari Sound Utility, 
The CBM 'Tat 40," Keyword for PET, CBM/ 
PET Loading, Chaining, and Overlaying, 

October 1981: Automatic DATA State- 
ments for CBM and Atari, VIC News, 
Undeletable Lines on Apple, PET, VIC, 
Budgeting on the Apple, Switching Cleanly 
from Text to Graphics on Apple, Atari 
Cassette Boot- tapes, Atari Variable Name 
Utility, Atari Program Library, Train your 
PET to Run VIC Programs, Interface a BSR 
Remote Control System to PET, A General 
Purpose BCD to Binary Routine, Converting 
to Fat'40 PET. 

December 1981: Saving Fuel $$ (multiple 
computers: versions for Apple, PET, 
and Atari), Unscramble Game (multiple 



computers), Maze Generator (multiple 
computers), Animating Applesoft Graphics, 
A Simple Printer Interface for the Apple II, 
A Simple Atari Wordprocessor, Adding 
High Speed Vertical Positioning to Atari P/ 
M Graphics, OSI Supercursor, A Look At 
SuperPET, Supermon for PET/CBM, PET 
Mine Maze Game. 

January 1982: Invest (multiple computers) , 
Developing a Business Algorithm (multiple 
computers), Apple Addresses, Lowercase 
with Unmodified Apple, Cryptogram Game 
for Atari, Superfont; Design Special 
Character Sets on Atari, PET Repairs for 
the Amateur, Micromon for PET, Self- 
modifying Programs in PET BASIC, Tiny- 
mon: a VIC Monitor, Vic Color Tips, VIC 
Memory Map, ZAP: A VIC Game. 

May 1982: VIC Meteor Maze Game, Atari 
Disk Drive Speed Clieck, Modifying Apple's 
Floating Point BASIC:, Fast Sc^rt For PET/ 
CBM, Extra Atari Colors Thro uj^h Artifact- 
ing, Life Insurance Estimator (multiple 
computers), PET Screen Input, Getting The 
Mtxst Out Of VIC s 5(X)0 Bytes. 

August 1982: The New Wave Oi' Perst>nal 
Computers, Hovtsehold Budget Manager 
(multiple computers). Word Games (multiple 
computers), Color CtiEiiputer Home Energy 
Monitor, Intelligent Apple Filing Cahinet, 
Guess Thar Animal (multiple computers), 
PET/CBM Inner BASIC, VIC Communica- 
tit)ns, Keyprint Ctnnpendium, Animation 
With Atari, VIC Curiosities, Atari Substring 
Search, PET and VIC Electric Eraser. 

September 1982: Apple and Atari and the 
Sounds of TRON, Commodore Automatic 
Disk Bo(U, VIC Joysticks, Three Atari GTIA 
Articles, Color Comptiter Graphics, The 
Apple Pilot Lan^unge, Sprites and Sound on 
the Conunodore64, Peripheral Vision Exer- 
ciser (tnultiple computers). Banish INPUT 
Statements (multiple computers), Charades 
(multiple computers), PET Pointer Sort, 
VIC Pause, Mapping Machine Language, 
Editing Atari BASIC With the Assemhler 
Cartridge, Process Any Apple Disk File, 

January 1983: Sound Synthesis And The 

Personal C\>mputer, Jugj^ler And Tfiunderhird 
Games (uujiripic computers), Music And 
Sound Programs (multiple ctnupuicrs), 
Writint^ Transportable BASIC, llome Energy 
Calculator (multiple computers). All About 
Commodore WAIT, Supermtin64, Perfect 
Commodore INPUTs, Atari Autonuuiber, 
Copy VIC Disk Files, Ct>mmodore 64 
Architecture, 



February 1983: How The Pros Write Ctim- 
puter Games, 12 Joysticks Compared, Slalom 
(a game in VD for multiple computers), 
Super Shell Sort For PET, Atari SuperFont 
Plus, Creating Graphics On The VIC, Joy- 
*^ticks And Sprites On The 64. Bi- Direct icnial 
VIC Scrolling, Commodore 64 \''ideo: A 
Guided Tour, The Atari Ouncher, Easy 
Apple Editing, VIC Custom Characters For 
Games, 

March 1983: An Introduction To Data 
Storage (multiple computers). Mass 
Memory Now And In The Future, 
Games: Closeout, Boggier, Fighter 
Aces, Letter And Number Play (all for 
multiple computers), VIC Music, Direct 
Atari Disk Access, TRS-80 Color Com- 
puter Data Base, Apple Subroutine 
Capture, PET Quickplot, Tl Graphics 
Made Easy, VIC and Atari Memory 
Management. 

April 1983: Selecting The Right Word 
Processor (multiple computers), VIC 
and Atari Word Processor Programs, 
Typing Teacher, TI Matchem, Retire- 
ment Planner (multiple computers). Air 
Defense (multiple computers), Dr. 
Video (Commodore), Video 80 (Software 
for 80 Columns on the Atari), Color 
Computer Tester, Timex/Sinclair Sound, 
Estimating TI Memory, Magic Commo- 
dore BASIC. 

Home and Educational COMPUTING! 
(Fall 1981 and Summer 1981 - ctniiit as one 
hack issue); Exploring The Rain how- 
Machine, VIC As Super Calculator, Custom 
Characters, Alternate Screens, Automatic 
Line Numbers, Using The Joystick (Spacewar 
Game), Fast Tape Locater, Window. VIC 
Memory Map. 



Back issues arc $3 each oi six for $15. 
Price includes freight in the US. Outside 
the l\S add SI per rna^a/ine ordered for 
suiface |)ostai;r. SI ]>cr niagazine foiair 
mail posiage. All back issues subject to 
availabilit) . 



In the Continental US call 

TOLL FREE 800^334-0868 

(In NC Call 919-275-9809) 

Or write to COMPUTl! Back Issues, P.O- 
Box 5406, Greensboro, NC 27403 USA. 
Prepayment required in US funds, 
MasterCard, Visa and American Express 
accepted. North Carolina Residents add 4% 
sales tax. 



Home Energy Applications 
On Your Personal Computer 

Author: David E, Pitts 
Price: SI 4,95 
On Sale: Now 

Are you caught in the crunch of spiraflng 

utility biils? Areyou shivenng from the icy 

touch of winter drafts, or sweating while 

expensive air-conditioned breezes seep out 

of your home into the summer heat? ^h m^ . 

Maybe your home appliances are IjiJi^i^^ #%• ^^^^a^X A 

burning more energy than they should. ICi^^l^^ ^^T ^^ ^j l^T^^l^y^ 

Perhaps your home would be warmer with ^i^#i | %^^| | %^^ 

some more insulation and weatherproofing. 
Or maybe a new air conditioner or a celling 
fan could take the edge off those humid 

summer nights. Introductirtn 

But can you justify the expense of v«uvuuii 

such improvements? Will the insulation, for " 

example, pay for itself after one winter, or EncroV Dat#i Rac^ 

will it take three? ^^ ^^ Odse ^ ^ 

Now, with the aid of your personal 

computer, you can find out. A new book EnCfOV Worlrhi>nlr 

from COMPUTES Publications, fVome ^^ tvii^wwuk ^ 

Energy Apphcations On Your Personal 

Computer, can help you determine if those Efier^ PlOt 

expensive home improvements you Ve --..., ^^ 

been thinking of will send a chill down 

your spine or leave you with a warm feeling ElectflC Usa^e Estimator 

Inside. 91 

Home Energy Applications On Your 
Personal Computer, written by David E. Home HeatiriQ And rnrkfin#v A ..^:a 

Pittsjets you track and analyze your utility , "^"'"S ARQ COOlmg Audit . , . , ^ 

costs so you'U know exactly where your 

energy dollars are going. But beyond that. Heat CoilduCtion 

It suggests various ways of cutting those J51 

costs by making common home improve- 

ments and shows you how those Improve- Buying A NCW Air Conditioner ^^m. 

ments can help pay for themselves. Home wiiici ^ _ -j^g 

Energy Applications is packed with pro- 

grams ready to type into your personal WindOW Hcdt LOSS / Gain 4 o^ 

computer, whether you have an Apple, • 183 

Atari, Commodore 64, VfO20, PET/CBM, %Ar ^ **■_ * 

Radio Shack TRS-80 Color Computer, Texas VVinaOW Shading AnalvsJS aaa 

Instruments TI-99/4A or OSI. ' 209 

Onceyou give information on your f^*i* pa* 

geographical area (anywhere In the main- tClling Fan Analysis aa-t 

land United States), your current expenses, ' ' * • • • -*^ / 

and details about your house itseft this 

book and your personal computer will Appendix ^j.^ 

provide an in-depth, specific, objective • ■ • "41 

report on what you can do to evaluate 

ways to reduce your energy costs. It's the 

perfect application for the speed and power of a personal 

computer. 

Home Energy Applications On Your Personal Computer Is 
carefully written and edited to be easy to read and use. because 
it comes to you from the publishers of COMPUTES, the leading 
magazine of home, educational, and recreational computing. ]t 
is quality-produced throughout. Including metal spiral binding 
so that its 250 pages He flat while you're typing \n programs. 

Available at computer dealers and bookstores nationwide. To order directly call TOLL FREE 800-334-0868. In North Carolina 
call 919-275-9809. Or send check or money order to COMPUTE! Books, P-0. Box 5406, Greensboro, NC 27403. 
Add $2 shipping and handling. Outside the U.S. add S5 for air mail %2 for surface mail. All ordefs prepaid, U.S. funds onfy 
264 COMPUni July1983 




NEWS^PRODUCTS 



Game Cartridges 
For Tl, VIC And Atari 

Romox has adapted some of its 
Atari games into cartridges for 
the TI-99/4A and VIC-20 com- 
puters. The games include Ant 
Eater, Princess and the Frog, and 
T\/pw. In addition, the company 
has released a new space adven- 
ture game for the Atari - Attack 
at EP-CYG-4. 

The cartridges for the TI do 
not make use of the Texas hi- 
struments GROM, so they are 
limited to 8K of memory. The 
VIC cartridges can make use of 
up to 32K. The suggested price 
for each game is $44.95. 

^Ant Eater is a two-player 
survival game. The players con- 
trol the ants, which must risk 
battle with the anteater to gather 
food and return it to their 
colony. 

• Typo is an educational 
spelling and typing drill com- 
bined with a space maze. The 
drill consists of random letters, 
words and phrases, or the user 
can enter and be tested on his or 
her own list. 

• In The Princess and the Frog, 
a two-player game, the object is 
to cross a field of jousting 
knights, navigate the castle 
moat, kiss the princess, and be 
transformed from frog to prince 
- all within the space of 60 
seconds. 

• Attack at EP-CYG-4 puts 
you in command of a flying 
saucer assigned to attack the 
cities on the planet below. The 
planet has 20 areas to navigate 
and three levels of difficulty. 



Romox, Inc. 
501 Vandell miy 
Campbell, CA 95008 
(408)374-7200 



Graphic Design 
Aids For Tl 

TENEX Computer Marketing 
Systems has designed two forms 
to assist the TI-99/4A program- 
mer in graphic design. 

The Screen Graphic design 
sheet is divided into 24 rows of 
32 columns, allowing simple 
layout of text and characters. 
Another scale divides the sheet 
into 192 rows of 256 characters, 
assisting with the definition of 
sprite coordinates. 

The Character Definition 
form displays a four-character 
by four-character matrix that can 
be used to design anything up to 
the largest sprite. The form also 
contains a pixel to hex code 
conversion chart, and space for 
program statements. 



The forms are available in 
40-sheet pads for $1 .95 each. , 
Screen graphic design