Skip to main content

Full text of "Run Magazine Issue 1987-special"

See other formats


C-128/C-64 Home Computing Guid 



^,) 1987 A CWC/I Pubi'cation 
U.S.A. $3.95 







£ji J^jJliiii 



RFUL VTILITIES 
PAPPLICATIONS / 
TYPE INTO YOUR 
I 64 AND 128 f 



INTRODUCING... 

Four ways to address 
your software needs. 




One's Really Simple. 

Fleet System 2'" is so user friendly beginners can 

start typing documents 

in minutes! The 

integrated 90,000 word 

dictionm' is the largest 

and fastest available on 

the Commodore 64, 

And vou can even add 
an additional 10,000 
"Ci4St()rn" words to 
the dictionary. 

Suggested Retail Price: 
S59.95 



One's the 
Ultimate. 

Fleet System 4'" is our 
all new ultimate, 
integrated writing tool 
that works on the 
Commodore 1 28 and 
combines four powerful 
applications into one 
package. It has every- 
thing you'd find in 
Fleet System 3'" plus 
Fleet Filer"', the 
database that puts 
iirformation at your fingertips, in seconds! 

Suggested Retail Price; J79.95 

Finally, software the way it ouglit tt) be. 

Buy it and experience what over a quarter of a 



One's Really Integrated. 

Fleet System 3" the user friendly soft^'are package 

for the Commodore 1 28 
includes an integrated 
90,000 word dictionary, 
On-Screen Help 
Windows, a •'Preview" 
function so "What You 
See Is What You Get". 
'Ilierc's also an integra- 
ted "riiesaunis that 
provides thousands of 
synonyms and antonyms 
and w'il! help improve 
your writing and vo- 
cabularv' skills instantly! 
Suggested Retail Price: 
$69.95 



Fleet System 





Fleet 
Filer 




One's a 
Creator. 



Beet Filer" can create 
anything from invitations 
to m:dling lists. You have 
up to 5,000 records 
which can be sorted in 
ascending or decending 
order. You can even 
search according to 
logical criteria or .search 
string. And we've saved 
the best for last... You 
can input and output to 
Fleet System 2'", 3'", and 4" files. (Ami with most 
ntajorword processors). Beet Filer'" will work on 
Commodore 64/128 computers. 

Suggested Retail Price; «39.95 
million Commodore users already believe in. 



A.PSI 



CALL 1-800-343-4074 for the Dealer nearest vou! 

Professional Software, Inc. 

51 Frcmonl Street, Necdhani, MA 02194 
(617) 444-5224 



Reel :vy«cms 2. 4, 4 and Reel Filer arc tlcMErtrt) lixl wrincn hy VKi(nuri,nkA (in Kip ICH 
may mil lutipon'itrrtiin Heel SjMcnn i, *. 4 «r KUcr funl1i<m^ jinl'lir mtuirr ami H(iH 



■ ComfrKHkm W and I ;H arr indrnmlu of CimrminJofc F,lm o pn iu-i I Jd .<H>mc nrimcrN 



rmjniKir Hcasc thetV wiih yiiur dealer l>eakr ii>d f^i'Jnfnucfr inquired Jft inv 



nc nn 
ud 



CircJo <17 on Readef Swvce caJd. 



INTRODUCING, 



Supra Corporation, a leading 
manufacturer of computer 
peripfierals for Atari and other 
personal computers has obtained 
the exculsive license to manufac- 
ture the Cardco line of products. 

Cardco has been hailed by many 
computer magazines as the 
standard by which competitors 
should be measured. At Supra 
Corporation, we plan to maintain 
this leadership position in the 
Commodore accessory market by 
providing complete product 
documentation, unequaied 
customer service, and a product 
line second-to-none. 

We will continue to carry on 
research and development to 
create innovative state-of-the- 
art software and accessories for 
Commodore computers. These 
products will help you enjoy your 
computer more and increase it's 
value. 



OTHER COMMODORE PRODUCTS 



1064 Modem 


49.95 


Cardco B Interlace 


39.95 


Cafdco PS Interlace 


69.95 


Cardco +G Interface 


49.95 


CB-2 Expander 


24.95 


Freeze Frame 


49.95 


S'More 


49,95 


Card Key Numeric Keypad 


29.95 


Write Now! 


29.95 


Spell Now! 


29.95 


Calc Now! 


29.95 


File Now! 


29.95 


MicroStuffer 


69,95 


64K Printer Buffer 






A Cardco Product 



Wflrld's Largest Manufactiirer of Cflmmodore Accessories' 





Fast, Powerful and 

Compatible! 



Qtall* 



\\^ 



ii/fm^s" 



High Speed Parallel Printer 
Interface with Graphics Buffer 
and Full Commodore Graphics 
Emulation- Built-in buffer 
for super fast graphics printing. 
Full Commodore character set, 
including all graphics, reversed 
text and reversed graphics 
characters. S69.96 



Ta^ *l< y Tr«n mpa rant. 
Scrnan Dump 






^/. 



*«/„ 



Expansion o.^^^o^ 



Interface 



An enclosed five slot, fully switch 
selectable expansion interface 
for the Commodore 64, Allows 
the user to select any cartridge 
slot or combination of cartridge 
slots. Convenient reset button. 



A Centronics parallel interface 
with full keyboard graphics. The 
G-WIZ works with most common 
printers and can do screen dumps 
in 2V2 minutes with its built-in- 
buffer. Plugs directly on to 
printer. $49.95 




Totally Transparent Screen Dump 

This cartridge dumps screen memory 
grapfiics to a printer with only two key 
strokes. Works with any program In any 
language, $49.95 

wufom 

Adds over 6C new and enhanced BASIC 
commands and 57% more tree RAM 
memory for programming. $49.95 



o ' / I f f 




J 



Available at your local dealer, or call: 



Circle 412 on Readot Senncs eato 



1133 Commercial Way ^Albany, OR 97321 

(503)967-9075-Ordero 

{503> 967-9081 .Technical Suppift 

Telex: 5106005236 (Supra Corf .) 



INVERTS YOUR COMMODORE 64/12P 

#1^ i M-ii II 




Sports 
Training- 
A More 
Competitive 
You. 



No motter what the sport, we have become a nation 
conscious of performing to win. We spend hours training, 
practicing, competing. Body! ink gives you ttie individual 
attention of ttie best pra— anytime you desire for as long 
as you wish— and at no extra cost, The Bodylink System 
provides instontaneous feedback on ttie exact manner in 
which your nnuscles are performing, enabling you to 
correct your swing or refine your pitch while still in motion. 
Bodylink allows a true two-way conversation between you 
and your body, giving you the winning edge. 

MUSCLE COORDINATION PACKAGE— $149.95 

Ttiis packoge includes Bodylink, Standard EMG Sensor and 

Leod Set, Head-Band, three electrodes and two software 
cartridges containing several programs, 




Reducing Stress. 
A Healthier and 
More Productive 
You. 



Medical authorities now consider stress a major health risk 
which may result in migraines, ulcers, back pain and 
heart attacks. With Bodylink you have within reach a 
powerful stress reduction system. Bodylink allows you to 
focus on physical signs of stress such os muscle tension 
and skin temperature. By using this feedback, Bodylink 
quickly ond effectively teaches you to reduce stress for a 
healthier and happier life. 




STRESS REDUCTION PACKAGE— S239.95 

This package includes Bodylink, Biofeedbock EMG Sensor and 
Leod Set, Head-Band, three Electrodes, Biofeedback 
Temperature Sensor, ond two softwore cortridges contoining 
several programs 



Getting in Shape. . . Easier. . . 
Safer. . .More Effectively 

Home exercise now becomes exciting and more effective. 
With Bodylink you can be sure you are exercising foi 
maximum benefit. While using the cordio exercise 
package, Bodylink monitors your hearf rote and helps you 
determine the ideal level you need foi aerobic gain 
With the muscle development package, Bodylink guides 
you to do muscle developing exercises correctly and 
effectively. Bodylink motivates you to work harder if you 
ore not reaching your target level, or helps you slow down 
if you are working too hard, 

CARDIO EXERCISE PACKAGE— $209.95 

This package includes Bodylink, Stundard EMG Sensor and 

Lead Set, Leg-Band, Pulse Rate Sensor, ond two software 

cartridge's containing several progroms. 

MUSCLE DEVELOPMENT PACKAGE -$169.95 

This package includes Bodylink, COMEi and two software 

cartridges containing severol programs. 

BODYLINK Is a peripheral that plugs Into trie cartridge slot of ttie 
Commodore 64/128 computer Knowledge of coinputeis at compules 
progfamming Is NOTnacessary to use BODYLINK. You don't even 
need a disk drive to save your data. Various sensors are used to 
record Internal signals trom youi body and relay them to BODYLINK. 
You simply place ttie sensor against ttie part ot your Dody to be moni- 
tored and watch the result on yout TV screen. 



CorrrnodoK] ElectroiMCa Limited 



DEALERS, PROGRAMMERS AND USER GROUPS 
INQUIRIES WELCOME 



LOOKBETTERl 
FEEL BEHER! 

COMPETE 
BETTER! 



With the BODYLINK 
"COMET"" (computerized 
Muscle Exerciser and 
Trainer) a^achment, you 
can build and tone the 
muscle groups of your 
stomach, f;hest, back, 
legs, and arms. COMET is 
an electronic muscle builder 
that is conpected to BODY- 
LINK and sends a mes- 
sage to your TV screen 
when ifs (fompressed or 
pulled. 




MAIL ORDER TO: BODYLOG, INC. 

34 MAPLE AVENUE 
ARMONK, N.Y, 10504 



DESCRIPTION 


UNIT 


QUAN 


PRICE 


Muscle Coordination Package 


S 149. 95 






Muscle Developmen! Package . . 


SI 69.95 






Cardlo Exercise Pockoge 


$209.95 






Stress Reduction Package 


S239.95 






SATISFACTION GUARANTEED! ,«„w„cp™™,» 

It you ore not completely sotlsfled, 

you may return the produi:tswltnin ^S^"""' , , , 

1 5 days for a full refund. 

Payment must accompany subtotoi , 








order, Sh!]oina(aeniwS!ooA!i(i5%!)(suii- 

tolQi (CWf S200 Md 2 b% tf SuBtoMI) 




IMRSEAS OR APO ADD 6% EXTRA 
TOTAl AMOUNT DUE 





To purchase additional sensors a id software separately. 

Call for More Information and 
our product catalogue 

91 4-273-6480 or 1 -800-233-291 1 . 

Make checks poyable to Bodylog, Inc. 

Charge to my ( )VISA ( ) DISCOVER or C ) MASTERCARD 



[^ame. 



Address- 
City 



.State- 



. Zip- 



Signaturc- 



Expires. 



Alk prices and sp€Cl^ica1ion^ oro subj&cl lo chonga ^<thou1 
nofa:e Not fgs^r.^ible 'of rypoflfco^'c cffo^ 



RUN-SPl:C 



f-cl Proc 




GolB 



We iuft didl sbmeilttng only Mie best can dol We made our award vHnnihg 
software for the Cemmedere'" fSftand 64 computers even belter! 



InfrodiKing. . .Po«fc«t Writer 2/word ^ 
cessor Pocket Pfanner 2/spreadsheet Pocket 

Kler 2/datobase -j^w 

Our new Pocket 2 series offers feOTHKi sua I ly found 
only in much mote soph isticotedii|nj|Bbtion s soft wo re. 
Feolures that include: com^H|Vwith the new 
GEOS operating syste^m^^HKo work with the 
Commodore f!AM e)t'MH|^^tlaw a RAM disk, 
mouse support wilh puH||Wmenus, 1571 burst 
mode for foster file I oociMpin creased support for two 
single disk drives, outonipTic configuroMon for screert 
color, format and printi^r selection t- 

Sophisiicotedsoft^re, yes, and still easy to use. 
You con be up ondjfonning in under 30 minutes even 
if you haven't operated a computer before. 

Now, when you upgrade your Commodore"^ 64 
to a 12B, Pocket software helps make it a breeze. The 
new Pocket 2 software has both 128 and 64 applica- 
tions on the some disk. So when you buy one you ore 
actually buying two soflwore packages. The cost 
only $59.95 (U.S.). 



Serious Software 
Thnf s.Simple to Use 



sTovSSS^? f 



You can buy all three Pocket 2 appiirogons^^^ 
Pocket Writer 2, Pocket Planner 2 and H^H^H 
in one convaniont Superpak for the low pHPNiV 
only $99.95 (U.S.). A super woy to discoviiralUfic 
integrated features of Pocket 2 software and j 
almost eighty dollors. 

As a componion to Pocket Writer 2, a Dictionar 
Disk containing 32,000 words (expandable to 40,0l , 
is ovailable. The cost S 14.95 (U.S.), 

For those of you who hove already discovered the 
many benefits of owning Pocket software; we offer all 
registered owners upgrode Pocket 2 software for only 
$19.95 (U,S.) plus 3.00 (U.S.) shipping ond handling! 
Available only by writing to Digital Solutions Inc. 

•Commodore's Micro-computers Magazine, independent revieweis, 
fated tho oiiginol Pocket Writer 129/64 ond Poctcl Planner 128/64 
soflwore tKe • Annuol 8eit of 1986" in the productivity talegory. 



Suporpoici 

Tfie Solution Thai 

Saves Moneyl 



fntBrnotfcjnai 
f 



MjIrfbutnrErKjuiffoilo; 

Digital 
Solutions 



2-30 Weft helm Court 
Richmond Hill, Ontcirio 
Conodo 14B IB? 
Tclo(ilini»l«l6)73ia/75 
T«.tB»O6 9S4.S0i 
fa«(4IA)73l B^l". 



iJ. 



■179,85 (U.S.) 
are for only 




C<rdu 44-1 ori Roadicrf StJrvico ciirJ 



c 



SPECIAL ISSUE, 1987 



O N T E N T S 



PUBUSIILK 

Stephen TwoMBUf 



EDITtlR [S- [IMIFJ 

Dennis Brisson 

I'lCHNir-M. M.UiAGrR 

Mahgakct MOKASrro 

MANAGtNC. E::}rroR;i'iioDucTioN 
SwAmPitAiT 

Rkview KniTOR 
DethJaia 

CoKV KiirniR 
PecLePace 

New Pk()ii\jcts Eduor 
Hakold Djornsen 

'rtx;Hsit.^i, KiirioR 
TWOTHV Walsh 

AssociAl K KumiHS 

JBI BOHDBdiJni STSASMA 

Art DnutcioR 
Kossum A. FmcK. 

I'ROOUCnONfADVJLRTlSmCSUI'ERVlSOK 

HOWAHU G, Happ 

UtsiCNiks 

A\m: Dillon 

roger coode 

ASSOaATE PL'BIJ>>IIUUSAIX.S Manacek 

Stefiien Robuns 

SAIXS KEHKl.StSI IAI IVKS 

Kenneth Blakeman 
Nancy PotterThompson 

WfM Coast Sai.w 
G[ORC[o Sallti, manager 
3S50 W. Havshohe Road, SUITE 201 
Palo AiJio. 0\ 94TO3 

AdCoordinaioh 
Heather I'aquitte 

ASSISIANI All CoDKIHNAIXm 

Sue Donohoe 

Markitisi; Coordinator 
Wendie Haines 

BUSiNf^S MANACtR 

Barbara Harris 

EXECUI IVE SK'.RI lAVtV 
CVNDE GARRCTT 

.Sec:reiarv 
Laura Lwinckton 



tonrtn tut -KhCoiii[iK>'t«f t BageM hIiiUAn. InLJItTV 
ii f..a.r.fa«l BuiufjY trt LV r I IT ^ 

w«l^ iM. JiA T^ V. N«rb»«ffc. Ml ««?& PhMT 

« ■ddlHmuJ ITU4JI11C irfFicei. CiriHllin mandrill* null !T]|farinlb)n 
■ uralMi Ji t3A\ ftuliHTlpEtaii ral^l In Uj. iir flVUI frir nne ^1,, 
13407 bw [k« Tfin iBd iil 7? Idi iVh pwi lii OiiaIi u^ Urifei^ 
■« W^TTH 4wh_ I lpl»i 1^4 U In ^, krfh t' S fub dnwn iA i 
V-L faHiL r-HT^D HlniT^^WW irT t» 7T In r|%| ,TIC. KHh I'l 

hpfc ^«^n lA I I ' A TunL nrn* m^ulir ibtMA fumin in nuJ 
wfcttMplrtrt tiW* ffCW H Mi^irtiJJ^ mitfUiut"! 1i^ IrtimnHmMa 
UirldHliiii IhitrUiiiInn Ta W trn m U ti Vod pUrt A < Kmi^ Hi J^I.W, 
flMbwnpikA itnkn. to hi 4^4. liFmuicdih. »V IIT4T (Scad 
Cw44MP<|iM(e4 vf vWnn u M?^. HI ks l«l. IMI IJH. Dkiihx 

tMln «*trnci tii|>Y11(fr( VW6 fr t^ f;jMrin*in"iL|unrf*«ftli*it 
Milfc, Cnr. Na pirt rj thii piibtkilVi^ IMt ^ pnnl^l <rf <4Fwrwla« 
rf piEihkmt knhMi vnueB prmiiMkin Fnxn ihe ptih lihrr. PmfmiH 

4 hi 1 1 rtton a 



* KTUTHT "d m»k> li 
nr. Rl'K f^mt n<3 mj 
I or nIvrMNkiii iiinlnil. 



SMISjCs 



FEATURES 

RUNNING Ruminations 8 

Welcome to our third atinual special tissue. 

Commodore Clinic byjim Strasma 12 

Atiswers to tlic mostoftenasked questions oti hardware, software and 
programiuiiig, tompik-d frotti ihrct; years of RUN's montlily column — 
plus some questions and answers never before published. Over 200 entries. 

Magic !>yjm Harden 24 

An invaluable collection of 255 hints and tips that will help you get the 
most out of your computing experience. A complete index of the Magic 
tricks, arranged according to 2G categories, begins on page 134. 

Super Magic 34 

Some special Magic tricks, straight from the experts. 

*MiND Your Mortgage iiy Robert Kup/er 39 

You may be surprised at how much your mortgage is costing you when 
you analyze it with this program for the C128. 

*The Light Choice by Rob Cuerm 42 

Highlighted menu options will make your 128-modc programs easier to 

use and more attractive to view. 

* Add CaIX; 128 by George Noeth .46 

Ii may not fit in your pocket, but your C-128 can still be a mighty handy 
printing calculator. You'll also find this program helpful for learning 
about Basic 7.0. 

*LOTS OF Labels by Chris Achlsckin 50 

If you need lots of labels, but all with the same address, diis C-64 program 
is for you. 

* Envelope Maker by MkhM Broimard 54 

Let this (;-64 program create envelopes in die size you need, complete 
with a neatly printed address. 

* Master Menus by Jim Mkchi 58 

An eye-catching main menu display will start your C-64 programs off with 
a flourish. 

PLUS: Programming Poster Inside 

Index to Magic Tricks 134 

How To TiTE IN Listings 136 

RUN'S 1986 Index 138 

A complete listing of all the articles and reviews we published last year. 

List of Advertisers 144 

•THIS PROGRAM IS AVAi:j\BUi ON THE JANUARV-FEURUARV RKRUN DISK. RUN SPECIAL ISSUE 1987 / 5 




I'kK.srntNi 
James S. PovEC 

\' 1( E PB KSll) LVTiFlN ANCE 
ROCSR MURPHV 

DiRtL-ixJR OF Operations 
Matt SMmt 

K\n(:i:iivi-: ('HhjMR't Dikector 

OURt^nM: DtSTBEMI'ES 

DlKHlOKIlf <:iRc:i'i^iios 
I'RANK 5. Sumi 

ll[RFX,T Makketinl; Manac.kr 

BONME WlXSH 

Single Copv Sales Manager 
Linda Rutii 

IlJlXARKHI INC. MaNACER 
KAniV BOCHOSUN 

Sl>HX:lAI. i'RiMHifns DlMKcriOK 
Jeff Detrav 

Splclai. Proijucts Manager 
Craic Pierce 



Director of Corporai>: Prodlttion 

nENNES OlRtnTNSEN 

rvi'ESErriNC Masackr 

UNDiA p. C.ANAIX 
IVItXIRAi'ltER 

DoREEN Means 

Manltaltlrinc Manage* 
Susan Gross 

OlRECniR OF CRKDtf .SAI.F.S i: COLLECTIONS 
WltLIAM M. BOt'ER 



^■nuscripu: HL'N invi[c« 'Hi Trailers ly scnti conrribu' 
tiuTiM in the fortii of minmcripts wiEli drawin^ci ^nd^ur 
|»h(»li;|^jph« III l>(r cMTliiilerCfl fur pjitible 3>iiliMciitiuii. 
I lir pnxrtlurr fur luhmittin); in jirtklc is outlinnl in 
ihr fiL'?i Mrilrr'i guitlfllnfi, vihtch yuu can <>l}Um hy 
(tiiding i lelf-addrntrdn ^tamjirfl PEivrUtjjc. All riirllfi- 
buEioni, (luerips, rr<|Uc»[» for wrilrf"* ^liidclilirs iind any 
Lithrr rdittiTiH] ciirmptntdencp ihnuld bf diTrctnl Itl 
/it '.v. Edii.iii.il 0£[icr». SO Elm ,Sl„ Prlcrlxirciogh, NH 
l)S45ft icIeiilHJiir: fi03-!KJ'JI71. 

A<lTcrtiilng [nquinet: Send your cuTTtjpondrnrc lo Ad- 
^mjitng Dffic«^ C\\' CoTnmunicjtlons/PctrrlxirrHigh, 
Int., SO F.lm Siren, iWtfbotough, NH 03458; Itltphcmr: 

aoo-m-Hfl.'). 

SubKription prDblemi i>r ndilrrv cK>ii([r«: (-alt l-ttUO- 
liT-iySfl (NY ind Cjiibjdiin inidtnii, I WI0732 91I9) 
between 9 n.m. and S ii.m. F^T, Mitnd^iv- Friday, nr wri« 
[<> RUN, SubscTiplion ncparlmetn, PO Box ll,'i4, Far 

mingdsle, NV 1 1 737. 

ProbUsu with uh^rtaefK Send a dcsoiptEOn af the 
problem and your current addreii lo: /fL/A> 80 Elm Stivft, 
Petetlwrouilb. NM (IHh», AITN.: IVarbara HattI), FJutl- 
iir.1 ManaK". ircll 1«)(>4414<IIW. 

MkrorUm: fU/\ is avadabte it] Mictfirorin from L'niveriity 
Micrunimi Internaliimal, 300 N. Zecb Road, DejX. T,K., 
Ann Arbor, MI 48106. 

Bvk UniH: /jL'.V back issues are jvailablr far 13.50, plui 

SI postage Lintl handling from: IiVi\', Back IsatJe Orders, 
HO Hm St., I'etcrbuniugli, MI OS-IMI. On orders of 10 or 
more back issues, there ii a flat f7..V) shipping and han^ 
tUlng fee. Quantities are iimitetl, anti He cannot guarantee 
thjt all back issues are available. 

Problnni with HcHUN: Adtlreu coTTCipondence to 
RrKLN. HU Win St. Peterborough. MI 0S4M 

fttW'i BBS: i he Running Hoard ii «(Ws reader feedback 
biiHeiiti btxitxl, which you can c^ill aitjtime, ilay ut nighl^ 
Hn en da)** a week for up. itxlate infomialjon abtml the ntag. 
i/ine. the Ojntmodore industry and new^ and inftTrm^on 
of interest to all CoinnstidoTC useti. Call: fj03.924-0704. The 
Hmtnlng board uses a slaiidard pn tl tKol. 300 b;tud, one stop 
tiLi. no parity, fttll duplex and a woril length of eifclit bits. 



6 / RUN Sl'tUAL ISSUK 1987 



Ci-cie JiD on Reaoot Servico card. 



"The 



#1 



Best Selling Word Processing Package"- billboard scompuitr software chart 



PAPERCUPII 

FOR THE COMMODORE 128 

■ Compatible with C-()4 Rape rC lip files: the 
natural choice for C-128 upgrades 

■ Ineludes integrated 38,000-word spelling 
checker 

■ Built-in telecommunications module: access 
on-line services, incorporate on-line data in your 
work, and send text to other users 

■ New editing features include multiple columns, 
reverse video scroll, chaptering, powerful macros 
> Maximum document size expanded to 

999 lines 

PAPERCLIP FOR WE APPLE lie, c 

■ Insert/Delete, Move & Copy, Cut & Paste, 
Global Search & Replace 

■ Automatic page numbering, headers and 
footers 

■ Simplified columns, tabbing and scrolling 

■ form letter and mailing label functions 

• Unique new capabilities for Apple: dual text 
windows, automatic text protection, macro 
commands and more 
PAPERCUP 

FOR ATARI HOME COMPUTERS 
(MTHSPELLPACK FOR THE 130 XE) 
» All the high-productivity editing features plus: 
Dual Text Wndows, Automatic Paging, Macros 
and much more 

■ Fully-integrated SpellPack spelling checker on 
the same disk 

■ 36O00 words in the SpellPack dictionary plus 
you can add thousands more 

■ Memory- resident for speed and convenience: 
no need to quit the word processor to check 

a document 

PAPERCLIP with SPELLPAK 
FOR THE COMMODORE 64 

■ Built-in spelling checker 

■ All the high- productivity text editing features 

■ Move, Copy, Insert, Delete — words, sentences 
or entire blocks of text 

■ Macro power: define & store up to 52 
repetitive words/ phrases, then enter them with 
just one keystroke 

■ Includes 80-column Print Preview display, 
requires no extra hardware 

■ Sophisticated Global Search & Replace, Mail 
Merge and Mailing Label functions 

PAPERCLIP ELl'IT:: FOR THE ATARI ST 
and COMMODORE AMIGA 

■ Go beyond word -processing, with idea 
processing, text/ graphics integration, real- time 
spell chectting, independent variable columns and 
so much more. Look for PaperClip Elite, 
Coming soon. 





"you can't §0 wrong choosing Paper Clip" 

- THE GUIDE TO COMPUTER LIVING 

"the Cadillac of word processors." 

~ OMNI MAflAZi:*lR 

"best professional word processor availuble" 

- RUN MAGAZINE 

"by far the best word processor ever available 

...So clearly .superior, . . . State-of-lhe-arl 

word processing" 

-ANTIC 

"as far as we are concerned, PaperClip is tfte 

lop word processor running on a micro 

computer. " 

- HOMEAPPL!CATrONSFORTHEC-64 

"Performance: excellent. Error-handling: 
excellent Value: excellent . . You'll find 
yourself growing spoiled. ' ' 

- FAMILY COMPUnNG 

"Exceptional word processing . . " 

- INPUT 

"manv features . . . easy to use" 

- ATARI EXPLORIH 

"A superb word processor ...the most 
sophisticated to dale." 

- COMPUTE MAaVZlNE 

". . . the ullimale word processor 

- ANA1.0G MAGA;C1NE 

"One of the easiest of the professional word 
processors ...a sensible manual . . . plenty of 
aids for the accident prone." 
-COMPUTING NOW 

"An excellent word processor . . . welt 
designed.. . many advanced features." 

- INFOWORLD 

"o "mu.Uhave"in an ideal software library" 

- ELECTRONIC LEARNING 
". , . most powerful of packages" 

- COMMODORE MAGAZINE 

"PaperClip is a logical evolutionary step 

forward." 

-AHOY 

". . . facts attest to its excellence!" 

-FAMILY COMPUTING 




BATTERIES 
INCLUDED 



B.\TrEIU£S LNCU.DEI), u n>l rompwi;; 30 Mural Sliwt. Rkhmood HIIL OmirloXiiiada. L4B IBS (4ie)SSI 9S1 1 . CiisioiiKr liilaniiition < 1 1«)^ 

If >-Diic«iA Hnd thii t>mdDct ■rjt^urlHkl mill«r,}'DD nuyenkr tt (1If«1 from ut ftl tbe full tUBE^fted list prlrf plus S3.00 for pottage utd lundtlns, For 

prod ud ordrn pif Me nif 1 .90&-3f[T-ST^ ( US< only). FoTrnDriBafttrinlnrludcd pindacli ^du can ahwayi htvr Ifle latptt vmlonofj'nur pn7]{rmn] by 

Rtumlni llie Drlglnil dlili ami flO.IHI. Write to ua lor our full color cadtuA of pnxlucti for Ihe /U-nI„ Mm. SIACmX)SII. ATAIU.ATAHI n 

OOMHOfWRE, COMMODORr. AMIGA, A.M) IBM SYSTEMS. 

>:l9»eBinerieiIlKtuil«l. AfTli, AITLE MAt IVTWSH, ATAHI . .VTAfU ST. ( C IMM( HKJRf:, I C 1 MW()W)Rf: A.Mir,A, A.VD IBM air irllilFird Imlmiarki 

rT..(>rtttwtj olAfini: COMPtllJBlM:, ATARI CORPORATIOM, lOMMOBOKf Bl!>I>TS.S HAlUlVtS ISC. ANTH"niJl,t*110fai,(l5t!ttSSMAtUI?aStNC. 

Some feature* mayvaiy with computer i>*tr m utrA. 




Integral 
Solutions 



RUNNING RUMINATIONS 




RUN'fi Special Issue: 1987 

Sometimes, finding the informa- 
tion about Commodore computing 
that yon need is a difficult anti frus- 
trating task. Your time is limited, and 
you only want material tiiat will apply 
to your particular com])uting needs 
and leve! of e>c])(.'rtisc. 

This issue is designed to lie! p. It 
brings togetliei' some of the best of 
RUN with plenty of new informa- 
tion — all conveniently organ i/:ed and 
categorized accnrcling to topic, so 
finding the material you want is easy. 

This marks the third consecutive 
year that we've ])ublislied a fif/jV Spe- 
cial Issue, which has become highly 
acclaimed in the computing industry 
as a valuable reference source. We 
think that this year's publication is 
the best yet. 

To assure this, we solicited some of 
the best talent in the ('ommodore in- 
dustry to coiuribine to this issue. 
We've kept the most p()pular features 
of previous years and added new fea- 
tures, which are sure to capture ihe 
needs and interests of both C-64 and 
(M2H users. 

fbe lineup includes: 

— Conmiodore Cllinic, In response to 
requests from our readers, this year's 
issue spodights tlie best of Commo- 
dore Clinic, /iLWs helpful column 
compiled by KUN's answer man, Jim 
Strasma, one of the most-read experts 
in the field. In this i.ssue.Jim has com- 
piled iliebest, most-often-asketl ques- 
tions and answers of the past three 
years, many of them updated. .\lso 
included are 20 items of previously 
unpublished material. 



About three-quarters of these ques- 
tions are G4-ieiated, bm, with more 
than 200 entries in this column (sfime 
40 published pages), C-128 eiuhusi- 
asts will find plenty to cheer ab(jut. 
Jim (wiih some able a.ssistance from 
his wife, Ellen) lias organized this ma- 
terial according to category and has 
covered the main areas of comput- 
ing — disk drives, printers, monitors, 
power supplies, keyl)oards, debug- 
ging and entering programs, etc. If 
you have a question about Commo- 
dore computing, then it's probably 
answered here. 

— Magic. Each year RUN's readers 
look forward to the cotupilation of 
Magic 1 ricks in the special issue. Well, 
this issue won't let you down. 

Master programmer and all- 
around computing wizard Jim Bor- 
den has selected page after page of 
computing bints and tip.s— about 22^ 
of the best tricks published in I'.l8(i, 
plus some 30 iiever-before-published 
gems generated specifically for this 
issue. For your easy reference, these 
tricks, which have been revised and 
updated where necessary, arc in- 
dexed and organized by topic, 

— Free Wall Chart, .'\ trademark of 
RUN's special issues is the pull-out 
wall chart, which diis year features 
intermediate programming inlorma- 
tion not readily found in manuals. 
Ibis visually attractive wall chart in- 
chides, among other information, 
memory maps to accjuaint readers 
with the structure of Basic 2.0 and 
Basic 7.0. 

We've also added another tvvist to 
this year's chart. On the back of the 
poster you'll Inid some neat artwork. 



Be sure to check it out and let us know 
your reaction. 

—For applications users. New this 
year is a section of useful utilities and 
applications program.s. These brief 
one- page program listings will be easy 
for anyone to type in, .save and add 
to his or her software library. The pro- 
gi^ams include disk and ])rinter utili- 
ties, as well as u.sefui a])[)lications for 
the htnne. ForC>64 and (M28 owners. 
— In addition, we have asked some of 
the biggest names in the industry for 
their contributions to the Magic sec- 
lion. They provide some of their fa- 
vorite and most useful computing 
hints and tips diat you'll be able to 
use and call your own, 
—RU\' magazine contains a wealth of 
reference infortnation that doesn't 
quickly lo.se its value to readers. We 
provide in this S[)ecial Issue an index 
that references already-published 
RUN ])rogranis and articles that read- 
ers can refer to for more in formal ion 
about a particular topic. 

W^hether you're a newcomer or a 
long-time computerist or a newcomer 
to the world of (]ommodorc compui- 
ing. you'll find plenty of valuable ma- 
lerial in lliis 1987 edition. 

Programmers, applications users, 
new owners, or experienced user.s — 
there's something here for every- 
one — introductory material, useful 
applications and utilities, valuable 
progi^amming informaiiou, reference 
material, computing hints and tips, 
and answers to(]uesiions — all well-or- 
ganized and attractively packaged in 
a special issue that you won't easily 
put down and will refer to through- 
out the year. db 



8 / RUN SPECIAI. IS.SUE 19«7 



There seems to be some 
disagreement as to which one 
of our Gonunodore'programs 

is the most fun. 



Sometimes it's tough to make every ixxly happy all of the titles you'll surely find at least one you have to get your hands 
time, But that's not your problem. on, Maybe two. Even three. 

Mindscape makes so many great Commodore* software The choice is up to you. No holds barred. 




Slam. 
Bam. 

With plenty of pow. Bop 
'n Wrestie'" puts you in 
the ring with a crazy 
collection of bone crush- 
ers. For one or two players 
this first truly 3-dimen- 
sional combat sports 
simulation lets you climb, 
gouge, and claw your 
way to the top of the 
heap. Drop kicks, full 
nelsons, and the turn- 
buckle fly have never 
been this much fun 
before. 



pre 

pared to take evasive 
action. In Infiltrator'" by 
Chris Gray, you're Cap- 
tain Johnny "Jimbo 
Baby" McGibbits, ace 
chopperjockey. Your 
mission is no clay at the 
races. When you make it 
through hostile enemy 
airspace, this realistic 
flight simulation con- 
verts to covert ground - 
based animated graphic 
adventure. Now just 
destroy the mad leader 
and his angry troops. 
Thumbs up! 



Get 
ready" 
to work some magic. 
Spell of Destruction'" 
makes you a wizard's 
apprentice inside the 
Castle of Illusions. You 
must find and destroy 
the Prime Elemental. 
You're armed with a 
supply of spells and 
fireballs, but there are 
plentyof lessons to learn 
before you pass the 
Loremaster's challeng- 
ing trial. Music and 
3-dimensional graphics 
of 70 eerie locations 
make this adventure 
truly awesome. 



a sail 

on your monitor And sit 
down at the keys. The 
American Challenge: 
A Sailing Simulation'" 
will make you a better 
sailor in a few short 
strokes. Race against 
the program, another 
ski pper head -to -head , or 
via modem from coast- 
to-coast. When you've 
mastered the basics 
you're ready to meet 
the Aussiesand reclaim 
The America's Cup. Set 
your sails and your 
sights on the waters of 
Silicon Bay. 



out 

question, this quest is 
for you. Fairlighi'" com- 
bines magic, adventure, 
strategy, and action as 
you meet the challenge 
to find the Book of Light. 
You're in a far away 
and ancient land. But 
3dimensional high- 
resolution graphics 
make it all seem real. 
This epic will grab you. 
Only the strong and 
resourceful will conjure 
up the courage it takes 
to survive. 



Mindscape 

Soflware that challenges tiieXmind. 



«ii«9tCA»( **t 



VisjS VDtir riftflileror call i^BCO-iiJ-Tflft? (in lilmois 1-6CI0-G&4 3767|tof ViSAur MaslcrCard ardors. Ta purchnwi Ijy rriaiLssn-d VISA Or MaslerCiird nuintwrwilihSKpira'liDii dale, check [)i m-uney order to 



WinflfecapcPO.tli'JKitfi^.NoflhbiCKJhjL 60065, Add SlOilfnr ahippmoaridhiariidiirio.Ai^Jw^-fjweoliE^Of dflhw^fry. AEIof [heaba^eC!M/1?aprodi>clBa^^ 

fvflu'n' nn nttarney read Jhis; ConinmnlftrH t&a reoislcfod' iradomorh nf Cciinniodo'u ticft 

■opvrloht © ISeSSoftOJi lnlPrr>Jil'C)nrtP.L(d-/rt^ffltof 9(iriw4it> (:(^pvM[)^^^ © lyaOCnrns Gffl 
Jeam S^i'Ftwai'ii.Ali rnuhtsrfwrvfld.LicortttKl iriconiuntimnwi'tM lnteifriatiOfi3iConipu(*tf . 
Bq Jiinq9t>of\i ^f\0 (flf fi'o'flic Licftfisfld m c:on|uncl»on'Wilhi intDim agonal CorTitiutiff G'oup 



iryQu'iMnnnttorney road]hiis;ConimmMrn I&13 r^ai^icrotnrafJDriitsrh dCcimntudc^ru UDClranics 'Lt[],C»pyriijh1. (0 1'^^MindficaiHr, itkC.MirniJsca isa IradHmnr^of Mlndscflpo, [nc.^pc/'c^/^c^rmcj'ri^n 
cppyriuht C ll^SSofttfJi \r]\ii>u\ni'oni\i.U4-iftfiHfiitQr !)>priw4i« t:opvM[;hr O \m^i^t\(t(t Giray Ent9/priA0!i, Int. LTcflnfied >in conji,jnction with Fni^^rndlior^alCnmEJu^i' Group. 00^ n Wrnstte copyright O 10B6 
Beam St^rtwaru. All rnuhtsr^s^rvtid.LicanftCHl incnniuntriirinwi'tM Ir^teiriationsiCoriipulttr w->^(}\^^.Thi^ Am^ffZ&r^ Cfiaiittn^e: A S<n>'nff SifnuiatfOft tsett^demnrktif Mtf\tis^atw,lnc. fo>ritgf\t C(i0>t<i\Qf^i O t&!e^/iOB6 




CompuServe. 

You DoNT Have Tb Know How It Works 

1) Appreciate All It Can Do. 




You don't have to know about hard- 
ware. You don't have to know about 
software. All ^vou have to know is that 
CompuServe is a computer information 
service. You 
subscribe to it. 
And in 
return, 

you tiave ■»'-■ 
access to an incredible 
amount of information, entertainment, 
communications and services right at 
your fingertips. 

Here are a few of the 
hundreds of things you can 
do with CompuServe. 

COMMUNICATE 
Even beginners can compose, edit, 
send and file messages the first time 
they go online with CompuServe's 
EasyPlex'" Electronic Mail. Friends, 
relatives and business associates — 
anywhere in the country— can stay in 
constant, convenient touch, 

CB Simulator features 72 channels 
for "talking" with thousands of other 
subscribers throughout the country 
and Canada. The chatter is frequently 
hilarious, the "handles" unforgettable 
and the friendships hard and fast. 

More than 100 CompuServe Forums 
welcome your participation in discus- 
sions on all sorts of topics. There are 



Forums for gourmet cooks, golfers, 
musicians, pilots, sailors and more, all 
designed to show >-ou how easy and fun 
it can be to get the most out of your 
computer 

If you want to learn more about your 
computer system, CompuServe's at 
your service. Our Users Forums cater 
to specific computer makes and mod- 
els, and offer information and expertise 
on many different types of machines, 
You'll find electronic editions of popular 
computer periodicals. You can even 
find free software. 

And if TOu need answers to software 
questions, seek out a Software 
Forum. You can often find solutions 
quickly and easily online. 

Bulletin Boards let you post 
messages where thousands will 

» see them. Use our National 

» Bulletin Board or the special- 

_ ized bulletin boards found 
fH in almost 

^# every 

^ ;. Forum. 



\^y. 



<©. 



<?■ 




HAVE FUN 
You'll find { 
atl sorts of sports and 
entertainment trivia 
I •• games, plus brain-teas- ^ 
ing educational games. You can 
go it alone or compete against 

Ciicte 441 on f^eaast S^tvcG card 



players from all over the country. Test • 
your wits in the only online TV-style^ '~;^ 
game show with real prizes. Then, 
when you're ready go for the ultimate - 
in excitement and get into one of our 
interactive space adventures. ©® 

CompuServe's movie reviews keep 
that big night at the movies from being 
a five-star mistake. Soap opera ^ 
updates keep >'ou up on all the latest 
turmoils and tragedies on your favorite 
daybme dramas. 

For leisure-time reading and relax- 
ing, look into the electronic editions of 
some of your favorite magazines, 
including OMNI On-line. 

SHOP 
CompuServe's ELECTRONIC MALL'" 

lets you take a coast-to-coast shopping 
spree without ever leaving home. It's an 
exciting and easy way to shop online, 
buying name-brand goods and services 
from nationally known merchants. 

SAVE ON TRIPS 
CompuServe's travel services let you 
control your own travel arrangements 
through the convenience of your per- 
sonal computer. Scan flight avail 
abilities on almost any airline 
worldwide. Find airfare 4 " 

bargains, tfien^^^^ <wl^ 
book your 
own flight 
online. 





With CompuServe you've got direct 
and connecting schedules for national 
and Internationa! flights. Plus com- 
plete listings of over 28,000 hotels 
around the world. 

MAKE PHI BETA KAPPA 

When you run out of the answers at 
homework time, it's time 
to turn to CompuServe 
for the complete set of con- 
tinuously updated ency- 
clopedias that doesn't take 
up an extra inch of shelf space 

The College Board, op- 
erated by the College fin- 
trance Examination Board, 
gives tips on preparing for 
the SAT, choosing a college and 
getting financial aid. 

KEEP HEALTHY 

HealthNet will never replace a real, 
live doctor— but it is an excellent and 
readily available source of health and 
medical information. 

On a more personal note, Human 
Sexuality offers information on a vari- 
ety of topics concerning this very 
important aspect of human behavior 
Hundreds turn to it for honest, intel- 
ligent and candid answers. 

BE INFORMED 

CompuServe puts all of the latest 
news at your fingertips. Our sources 
include the AP news wire (covering all 
50 states, plus national 
jiews), the Wfe/i!/i^- 
tori Post, the 
Si. Louis 
Post-Dispatch, 
specialized 
business 
and trade publications 
and more. 
Fmd out instantly what Congress did 
today w^o finally won the game and 
what's happening back in Oskaloosa, 
with the touch of a button. And, our 
executive news service lets you tell us 
what to watch for. We'll electronically 
find, "dip" and file news for you... to 
read whenever youd like. 

INVEST WISELY 

Our comprehensive investment help 
just might tell you more about the stock 
you're looking at than the Chairman 





of the Board already knows. 
(Don't know who the chair- 
man is? Chances are, we 
can fiil you in on that, too.) 

CompuServe gives 
you complete statis- 
tics on over 10,000 
NYSE, AM EX and 
OTC securities. Historic 
trading statistics on 
over 90,000 stocks, bonds, 
funds, issues and options. Five 
years of daily commodity quotes. 
Standard & Poor's. Value Une. 
And more than a dozen other 
investment tools. 
SUPERSITE facilitates business 
decisions by providing you with 
demographic and sales potential 
information by state, county and zip 
code for Ifie entire country 



your phone) and , 
^^' in some cases, some 
The national business wire provides «*M% simple communications software 
continuously updated news and press 
releases on hundreds of companies 
worldwide. 



screens and then type In their selec- 
tions. Experts can skip the menus and 
just type in GO followed by the abbre- 
viation for whatever topic they're after. 
If you ever get lost or confused, just 
type in H for hefp, and we'll imme- 
diately cut in with instructions that 
should save the day Plus, you can 
always ask questions online through 
our feedback service or phone our 
Customer Service Department. 

Here's how to subscribe. 

To access CompuServe, you need a 
computer, a mo- 

"sb^"' ^^^ ^'° connect 
^^ your computer to 



W 




GET SPECIALIZED 

INFORMATION 
Pilots can get personalized flight 
plans, weather briefings, weather and 
radar maps, etc. Entrepreneurs use 
CompuServe too for complete step-by- 
step guidelines on how to incorjwrate 
the IBM s of tomorrow. Lawyers, doc- 
tors, engineers, military veterans and 
businessmen of all types use simitar 
specialized CompuServe resources 
pertinent to their unique needs. 

So much for so little. 

CompuServe makes the most out of 
any computer, and all you pay is a low, 
one-time cost for a Subscription Kit 
(suggested retail price $39.95). Usage 
rates for standard online time (when 
CompuServe is most 
active) are just IOC a 
minute. , 

In most major • 
metropolitan areas 
you can go online with a . . ^, , 
local phone call. Plus, you'll \J^^ 
receive a $25.00 Introductory 
Usage Credit with the purchase of 
your CompuServe Subscription Kit. 

So easy the whole family 
can go online. 

CompuServe is "menu-driven," so 
beginners can simply read the menus 
(lists of options) that appear on their 

Ctrdo 441 on Reader SeJvce caid. 



tompuSen."e 




I 



Now >'ou're ready to order your 
CompuServe Subscription Kit. 

For your low, one-time subscription 
fee, i'ou'll receive: 

• a complete, casy-lo-understand, 170- 
page spiral -bound Users Guide 

• your exclusive preliminary password 

• a subscription to CompuServe's 
monthly magazine, Online Today 
All this, plus: 

• a $25,00 usage credit! 

To order your Subscription Kit or to 
receive more information, 
call 800-848-8199 (in 
Ohio, 614-457-0802). 
CompuServe Sub- 
scription Kits are 
"v — also avail- 
able in 
computer 
stores, elec- 
tronic equip- 
ment outlets and household catalogs. 
You can also subscribe with materials 
you'll find packed with many computers 
and modems sold today 

CompuServe. You don't have to 
know how it works to appreciate all it 
can do — for you. 



CompuServe" 

Intofmation Services. PO. Box 20212 

5000 Arlington Co nlre Btvd, Cotumbus. Ohb 43220 

An H&R BIO£bi Company 

Euyt^i irij ELECrncm re MAIL n Imtenani of 

CompuSdrvu. IncAfpcvntod 











■4; 




.ktami^: 



•I'll' 



•i!t. 






KL..;, . . ^ , 


"^11^ 


. 1 




^■1 


k^ 


'^1 


v 


CO -/^ 


^ 0^ 






COMMODORE 
CLINIC 

For tlie fifst time, RUN h including in this special issue a selection 

of over 200 of the best items from three years of Jim Strasma's popular 

question-and-answer column, Commodore Clinic. Divided into 

categories dealing with software, programming and hardware, these 

responses to readers' questions by an outstanding Commodore expert 

deal widi a myriad of problems commonly encountered by 

Commodore users. The table of contents is your guide to the topics 

covered within each general categoiy. We hope you find much 

information tiiat's of value to you. 



Commercial Software 

1. General h 

2. Business Programs i6 

3. Education and Entertainment .20 

Programming 

4. debugging 21 

5. Entering Programs 63 

6. Basic 67 

7. Disk and File Handling 73 

8. Languages 77 

Hardware 

9. Comi»uter Parts and Connections 79 

10. Input Devices 8i 

11. Data Storage Devices «2 

12. Video Output Devices .87 

13. Printers sa 

14. Networking/Controller Devices «o 

15. Specific Computers ya 



BjJMSTMSMA 



illustrated by bob zuba 



RUN SPECIAI, ISSUE I9B7/ 13 



N 



SOFTWARE 
1. General 

Q: What is public domain .sofiware and 
how (io people get hold of it? 

Steave Trelttt 
Greeley, CO 

A; Public domain programs are soft- 
ware donated by programmers for 
the use of other computer! sts. Tho 
programmers are not inicrested in 
marketing their software commer- 
cially. It's free, except for a nominal 
charge for the media on which the 
program is stored, as well as packag- 
ing and shipping costs. There are 
thousands of such programs, includ- 
ing .some of the best-kntm'n utilities, 
such as Micromon, 

'I'tie easiest way to get such scjftware 
is through a Commodore user's 
group. Most now have dozens, if not 
hundreds, of disks. The Toronto, On- 
tario, PET User's Group is special in 
this regard. It is the largest user's 
group in the world, with a corre^ 
spondingly huge iibrary thai is none- 
theless reasonably well organized and 
documented. It accepts associate 
memberships from anywhere and 
ships disks of public domain pro- 
grams alt around the world. 



Q: I (im a 6 1 -year-old man with an MBA 
and an EE degree, so you might say I have 
at least average intellige?i€e. For aimtiU 
three years I liave had a C-64, with disk 
drive, printer and monitor. During that 
lime, I have had exactly zero seromh of 
useful work out of the marhine, simply be- 
cause (very one wants me to leant how to 
program in order to put the marhine to 
7mirk. All the computer jargon is confusing, 
and I haven 't found a dictionary to tell me 
what it all means. 

I don V really want to be a hacker (what- 
ever that is), Imt ! would like to hmv a ma- 
chine I can use to do a specific job. Is there a 
way 1 can learn the machine, or should IjuU 
throw it in the trash barrel (became so far 
that's all it's been good for)? 

George Bhnnc 
Wichita, KS 

A; First off, thanks for writing, and 
ytju're not alone. Although com- 
puters are advertised as "easy to use," 
they aren't yet— at least not com- 
pared to a toaster, thertiiostat or au- 
tomobile. The problem is, as you 



have said, that computers need to be 

programmed before they can do any- 
thing useful. Fortunately, you can buy 
commercial programs thai already 
know how to do what you need done. 

When my wife's father was simi- 
larly frustrated with his CAH, we 
solved the problem with a Write Now! 
cartridge (a pre-written program in 
a box), made and sold by Supra 
Corp., in Albany, Oregon. 

To use it, my father-in-law only had 
to plug it into the back of the com- 
puter and then turn on the computer, 
riie rest was automatic. Briefly, it 
turned his C-64 into a fancy type- 
writer, something that almost anyone 
would find useful. 

Since you already have several 
hundred dollars invested in your sys- 
tem, I recommend you ask or hire 
someone who's familiar with the 
Write Now program to come over to 
your house for an hour, set up your 
system to use the program and show 
you ho^v to get started. Cardco can 
sell you the cartridge and recom- 
mend someone to help you begin 
using it, perhaps from a local com- 
puter user's group, 

Vou needn't throw out your com- 
puter; you only need to spend a bit 
on a specialist, just as if you had car 
trouble. 



Q: I want to purcfiase some foreign lan- 
guage software written and marketed in 
West Germany. Can you tell me if the soft- 
ware will run directly on my equipment 
here in the States without any electrical 
modijication? 

Brooks Haderlie 
Columbus, OH 

A: Yes, it will work just fine here. 
I've received disks and cassettes 
from all over the world and ha%'e 
had no trouble using any of them 
on U.S. equipment. 



Q: Are the programs listed in books and 
magazines public domain, and can I copy 
them to sell? 

Steave Trelut 
Greeley, CO 

A: No, programs in books and mag- 
azines are not usually in the public 
domain, and you very defuiilely may 
not sell them, even for a small copying 



fee. Most magazines do this for the 

protection of their authors, rather 
than their own profit. 



Q: On severed occasions in reading RUN, 
/ have come across the phrase "copy-pro- 
tected disk." What does this mean? 

R, Gangadharan 
Flushing, NY 

A: It a polite way of saying a disk has 
been altered to make it difficult to 
duplicate. Ihe purpose is to keep 
people from giving away copies of the 
programs on (he disk. 



Q: Is there any way to tell if a commercial 
disk-bused program is not refmiducible be- 
fore using the 1541 backup? Will repeated 
iruertions and remm/ab shorten the life- 
time of the disk? 

Stan Goldrich 
New York, NY 

A: If a commercial program is copy- 
protected, most reputable firms say 
so, either on the disk label or early in 
the program mainial, A full service 
dealer will also usually know. Some 
reviews now list whether programs 
are copy-protected. 

As for ways to check, try loading 
the directory fusl. If it looks at all 
unusual, odds are tlie disk has been 
protected. Similarly, try loading the 
program normally antl listing it. If 
you can't, that's a big clue. Beyond 
that, don't mess. Most other things 
you could do might be interpreted by 
the program as attempts to break it, 
and the progi'am may self-destruct. 

Any wear will shorten the life of a 
disk a tiny bit. f hat why it's good to 
check on the price and availability of 
spare disks when buying important 
programs. 



Q; / would like to .'iell, as a plug-in car- 
tridge, a program that I liave loritieti. How 
can 1 get it vwss-produced? Shcruld I liave 
the program copyrighted? If so, how? 

Curtis Finke 
Evansville, IN 

A: Several companies will gladly sell 
you KPROM burners to convert your 
program into ROM form. Two with 
which 1 am familiar are the Prom 
Queen from Gloucester Computers 



14 / RUN SPKCIAI. ISSUE IM7 



o 



w 



R E 



(1 Blackburn Ceiilcr, Gloucester, 

MA), and tho ProniL'iiade from Jason 
Ranheim (580 Parrott, San Jose, CA). 
To complete the process, you will 
then need cartridge shells, available 
from Kastern House Softwaie (3239 
Linda, Winsioiibaleni, NC), 

Recent court decisions suggest 
ROM-based progianis can now be 
copyrighted, so long as they claim to 
be so. Therefore, be sure to include a 
copyright notice, such as "Copyright 
198:") C-urtis Kinke, all rights rcseiTed" 
both in the code stored in the ROM 
and on the t»utsidc of the ROM and 
cartridge. That should be enough to 
copyright your piograni. However, 
you can gain some advaiuages in a 
lawsuit to enforce your copyright if 
the copyright has been registered. 

For official forms to do this, anyone 
may write to the following address, 
requesting Form TX, or call the tele- 
phone number any lime, 24 hours 
a day. 

Information & Publication Section 

LM.455 
Copyright Office 

Libiary of Congress 
Washington, DC 20.^59 
202-287-9100 

The form will be sent at no chaige, 
in about two weeks. Actual registra- 
tion will cost SIO. II you liave other 
questions for the copyright office, 
you'll need to call a different number, 
202-287-8700, between the hours of 
8:30 AM and 5 i'M. 



Q: Is it true thai aoftwan; companies are 
creating new products that cannot be 
looikd by the Indm GT di\k drive because 
these disks contain codes meant to prevent 
duplication? 

Alan Ludwig 
Staten Island, NY 

A; Yes, it's true, although tJial wasn't 
the companies' intent. In trying to 
prevent even skilled progiamniers 
from duplicating iheii disks, several 
companies have used non-standard 
disk commands dependent on the 
precise ROM in the Coininodore 
1541. Some of these programs won't 
even run on Ciommodorc's 1571 
drive, let alone on C^ommodiu'e com 
patiblc drives like the Indus. 

The only solution is not to buy 
copy-protected programs you can't 



return. Personally, 1 go a step further 
and don't buy copy-protected pro- 
grams at all. That allows me to use 
any disk drive I like. 



Q: Is it all right to shut off your campuler 
loheu the drive is booting up a program? 

Tim Brend 
Aubem, I A 

A: Usually, but not always. Disk 
drives are used for two main chores: 
reading and writing information, 'fo 
safely shut off your computer during 
the startup operations of a program, 
you must know which of the two 
chores the disk is performing when 
y(m shut it off. Turning off your com- 
puter while your drive is reading a 
disk harms nodiing; turning it off 
while your drive is writing to a disk 
could result in a ruined file, which in 
turn could mean an unusable pro- 
gram. Fortunately, very few programs 
attempt to write information to the 
disk duiing their startup operations. 
Also, when yc>u shut off the com- 
puter, do not shut off the disk unit 
until you have first lemoved the pro- 
gram disk from the drive. Turning off 
most Commodore disk drives with a 
disk inserted in the slot and the access 
door closed alters the data under the 
read/write head at that moment, often 
rendering the disk useless until it is 
reformatted. 



Q: I am thinking about buy ing a Fas t Load 
cartridge from Epyx. I want to know if it 
would be all right for my 1541 drive. I am 
worried that my drive might overheat or 
break from all of the pressure on it. 

John Bumsiead 
Upland, CA 

A: In general, Fast Load and other 
similar speed-up cartridges will work 
and won't hurt your disk drive. How- 
ever, there are two possible problems. 
One is that the power supply in some 
64s is barely adct(uate, and the added 
power consumed by even a carttidge 
like Fast Load could send a marginal 
power supply over the edge to failure 
after extended use. If that happens, 
upgrade the power supply, and it 
won't happen again. 

The other problem readers are re- 
porting is that Fast Load i.s sdll not 
entirely compatible with all progiams 



that use the disk, particularly some 
commercial programs that write rel- 
ative datafiles. If you attempt to use 
Fast Load with such programs, you 
may lose all the data on that disk with- 
out warning. Therefore, 1 suggest us- 
ing Fast Load and similar speed-up 
programs to quickly load programs, 
but not to write programs or files 
back to the disk. 



Q: h there any way to get a directory of 
the programs that are on a cassette? Can I 
iLse the Disk command and change the 8s 
to Is? 

Tim Winn 
Spring, TX 

A: To sec a list of the programs that 
arc on a cassette, type VF.RIFY "Q" 
alone on a blank line, and press the 
return key, (If you have a program 
named "Q" in your collection, change 
"Q" to an unused name.) As each pro- 
gram name is found by the cassette, 
it will be displayed, until cither the 
ta[je runs out or an end-of tape signal 
is encountered. 

Unfortunately, the disk directory 
command, LOAX)"S",8, can't be al- 
tered to work on the cassette. This is 
because there is no directory as such 
on a cassette to be loaded. 



Q.- Could you tell me how to end a software 
package if the menu doesn't provide for a 
"Quit" option ? I have a quick- load disk that 
will "(juU " when the sfiift/run-stop keys are 
pressed. 

J. Norwood 
Pacifica, CA 

A: Make sure the disk drive activity 
light is off, remove the disk, and shut 
off the machine. Also try pressing the 
stop key, (Irst alone, then in combi- 
nation with the restore key. 

If the.se fail, you can quit on the 
C- 128 by pressing the reset button on 
the right side of the computer {next 
to the power switch), although you 
may need to remove the program disk 
to keep the program from immedi- 
ately restarting. 

Companies sometimes leave out /• 
quit options to keep unskilled users 
from accidentally exiting a program, 
but 1, too. prefer programs with an 
cx|>licit exit. 



RUN SPtCIAL ISStlE 1987 /1 5 



I N 



2. Business Programs 

Q: How do I anticipate printer incompat- 
ibility problems with word processor or 
spreadsheet software? Also, should I run a 
serial or a parallel printer on my 64? Why? 

Kenneth Benson 
Columbia, SC 

A: The surest way to avoid compatibil- 
ity piobiems is to buy Uic soft^varc first, 
and i)iiy tlie primer rcco mm ended by 
tlie creattirs of the jjiogi-am. Next best 
is to buy a Commodore printer, be- 
cause nearly e\'crything for llie VIC or 
64 supports them. 

If you will be buying the printer 
first, try to interface it via tlie serial 
bus, so it will look as much like a 
Commodore primer to the computer 
as possible. Also, look for programs 
that allow you as many choices of 
primers as possible. For example, 
PaperClip (from Batteries Included) 
goes out of its way to work with almost 
any printer. 

As for the type of connection, par- 
allel printers can be a bit faster than se- 
rial printers and cost a bit less, but they 
are also harder to connect to the com- 
puter from more tlian a few feet away. 

Clouding the issue is the fact that 
the VIC and 64 don't support either 
one without added hardware or soft- 
ware. This curreiuly tilts the balance 
in favor of parallel printers, which 
(surprising though it seems) are usu- 
ally interfaced to the serial bus via 
smart interfaces, such as Cardco's 
Card/?. Serial printers are usually con- 
nected via the user port. That port 
works well, too, hut it is rarely sup- 
ported by commercial s<jftware. 

Q: As a novice shopping for my first com- 
puter, I was advised to avoid the Commo- 
dore 64 computer if planning to do tunrd 
processing, because the screen shows ordy 
■to character;, while the paper hiu 80. 
(Wkcityou see is not what you gel.) Js there 
a ivay to hcwe an 80-cotumn screen with 
the 64? 

Estes Gregory 
McCatt, ID 

A: No, there isn't, without a special 
hardware adajMc-r, But, to offset the 
limitation of du' 40-coliiimi .screen, 
the best word processors for the M 
have an 80-column preview option 
that lets you view your document on 
screen almost exactly as it will appear 



on your printout. You'll find this 
method works quite well for even the 
largest documents, making Commo- 
dores among the most reasonably 
priced and best small computers for 
word [jrocessing despite the 40-col- 
Limn limitation. 

.Although good 80-column hard- 
ware adapters are also available for 
the 64 and are compatible with some 
of (he best word processing pro- 
grams, if you really want 80 colutnns 
all the time, you will be happier with 
the (Jonunodore 128. 



Q; / have a 64, a 1541 and a Gemini 1 OX 
printer. I have been able to customize the 
Ai-menian alphabet on the 64 ami cknmi- 
Imul it to tlie Gemini lOX. These programs 
will be used fr/ a local church to send out 
their monthly mailings. Is there a word 
proce.i.sor that will accept the customized 
alphabet? 

David Handeisman 
Philadelphia, PA 

A: The most elegant solution I've 
seen to this problem is offered by 
WordPro 64 for the C-64, and the 
even tnore advanced WordPro I28/S 
for the C-128, from Pro-Line Soft- 
ware, Mississauga, Ontario. Each al- 
lows you to define ten special char- 
acters for both the screen and the 
printer. The net resiilt is custom char- 
acters on both the screen and printer 
that look exacdy like you want them. 

Q: I have a C-64 and Easy Script. I bought 
a Gemini I OX printer, and connected it 
via a Connection interface, but have been 
unable to make it work. When 1 select the 
MX-SO option in Easy Script, 1 get only 
graphics. Would yott please advise me? 

Omar Barriga 
Columbus, OH 

A: Yom- problem is in the settings of 
The Connection's switches. It has an 
ASCII code corrector switch, to make 
upper- and lowercase come out cor- 
rectly in program listings. Easy Script 
also includes a correction for the 
same problem when you choose the 
MX-80 [)rinier o[>tion. The two fight 
each other, and ytni end up with 
graphics. Turning off the ACSH cor- 
rection option in The Connection 
will solve the problem. Reader Robert 
Callard suggests the following: 



/, There are two switches under the 
lower right-hand corner of the label 
on the Connection. Turn both off. 

2. Load Easy Script. 

3. Select the MX-80 printer, then 
Serial. 

4. Now press F3 and the return key, 
followed by sa7 and the return key. 
This establishes a secondary address 
of 7, needed for lowercase. 



Q: The /ian' Script manual indicates that 
to alwrl printing you .'•liould press the slop 
key, 1 have tried Imth holding dtmm the stop 
key and pressing it quickly when material is 
in the buffer of my Commodore 6400 printer, 
but aborting does nut take place. Do you 
know a way to abort printing? 

Robert Smolich 
Canton, IL 

A: My 6400 has a 2K buffer, which 
works out to about half a page of 
text in practice. Once your printout 
reaches the bulfer, it is no longer un- 
der Easy Script's control. Pressing 
the stop key at that point, whether 
C]uickly or at length, can only prevent 
Easy Script from sending any more of 
your document to the printer, not 
cancel the printing of the 2K of ma- 
terial already there. 

One solution is [jalience— having 
pressed the stop key, sit back and wait 
for the buffer to empty, in 30 seconds 
or so. Another solution is to press the 
stop key and then turn the printer's 
power switch off and on for about five 
seconds. That will definitely flush the 
buffer, for a net gain of 25 seconds 
and a half sheet of paper. 



Q: When I try to print out linked files 
using the PaperClip word prncasor, the 
printer prijits the first file and loads the 
.second file. The Print format commamis 
are then lost or ignored. Con.sequently, page 
2 begins printing on page I. I would ap- 
preciate help on this. 

Alexander Pottatseh 
Eugene, OR 

A: The problem is most likely that 
you have duplicated your formal 
commands at the star! of each file. 
That isn't necessary, and car> con- 
fuse not only PaperClip, but also sev- 
eral other popular word processors. 
When using linked (lies, put format 
commands for such things as page 



1() / RUN Si'KCIAl. ISSiJK 1<J87 



Have y our 
Commodore 
look as smart 
as it works. 




Consolidate your 64, 64C and 128 system with the Command Center. 

Get your workspace back again. 

The Command Center will untangle your wires, 
unclutter your desk and put peripherals at your 
fingertips. Condensing your whole system into one 
compact unit, you might consider it the ultimate 
Commodore peripheral. You get Commodore value 
with the look o( a more expensive system. 



With the 

Command Center. 

your system is 

compact and 

complete. 





Just look at all it includes: 

■ Built-in AC Power Strip with power surge and 
voltage spike protection, line noise filtering and 
power outlets. 

■ Built-in Drive/CPU Cooling Fan to prevent 
overheating. 

■ Modular Telephone Plug, with its own on- 
line/off-line telecommunications switch. (Option on 
64 and 64C), 

■ Master AC Switch for easy system power-up. 

■ Single or Dual Drive Configurations with the 
standard drive insert. 




Pij- 






Without the Command Center your Commodore 
peripherals look cluttered and take up most of your 
desk top. 



Ivlany buiU-in conveniences add to the Command 
Center's value, 

•CofTfrriodore is a registorod 1r,iclem3rk ot Cnmmgdor*! Electronics Ud. 



-KETEK 

Free 30-day trial offer 

and one-year warranty. 



For faster service, call 
1 -800-626-4582 toll-free 
1-319-338-7123 (Iowa Residents) 



KETEK P.O. Box 203 
Oakdale, lA 52319 

YES' Rush me a Command Center to 
complete my system. I may enjoy it lor up 
to 30 days and return it for a full refund, 

64 $11995 

□ 64C 3129.95 

D 128 S14995 

(Please include S3 50 lor shipping and 
handling ) 

Circle 419 on Reader Service card. 



City 



Stale 



Zip 



Phone Numtef 



DEALER INQUIRIES INVITED 



1 N 



length only at the start of the first 
file. From then on, use format com- 
mands only when you need to make 
a change, and limit the cotmnand to 
the setting heing altered. 



Q: I'm the proud owner of a C-64, Cardco 
+ G interface, Star SGIO printer and 
WordPro 3 + /64. Can you tell me abimt 
tin interface that would give me the ability 
to print and continue icorkingon t fie screen 
while printing? 

Diana Fuson 
Port Charlotte, FL 

A: The feature you want is called a 
print buffer. Alpha Omega Cotnputer 
Products.of 1861^ Ventura Blvd., Tar 
zana, CA 91350 (800/874-0596) makes 
a neat 6K buffer thai attaches to any 
printer, with a Centronics parallel 
port (including your Star SGIO) for 
$101. (They also have a 128K version 
forS175.) 



Q: I am planning to buy WordPro 64, but 
I find this prnblmn with word processors: 
They sometimes leave too much space be- 
tween words when you justify the margins, 
making words look too spread apart in the 
line. How can I avoid this, so text looks 
more compact? 

Jose A. Alvarez 
St. Croix, VI 

A: WordPro 64 offers two features to 
help alleviate this problem. First, you 
can insert a conditional hyphen into 
long words as you type them. (Simply 
press the shift and hyphen key.<v.) 'Ihis 
tells the word ]3rotessor where to hy- 
phenate the word if it falls at the end of 
a line when displayed or printed. 'I'his 
leaves less unwanted white space in 
such lines and tan make a huge differ- 
ence in the neatness of printouts from 
many popular word processors. 

The other way WordPro 64 tights 
excess white space is by providing 
true proportional spacing in final 
printouts. This means that instead of 
inserting the extra spaces needed to 
justify margins only between woids, 
much smaller spaces are added be- 
tween each letter in tlie prinioui 
(called microjustification), and more 
space is allotted to wide letters like 
"w" than to narrow ones like "i." This 
is an advanced feature and requires 
an equally advanced printer to work 



properly, so you may need to choose 
a compatible printer at tlie same time 
as your woid piocessor. 



Q: I own a Supra Write Now.' ward pro- 
cessor and think it is great, but could you 
explain ivliy I get double or triple spaces in 
between words when there are only single 
spaces on my television screen? 

Joe Rainbaldi 
Belleville, NJ 

A: Those extra spaces are put there 

by your word processor to make the 
right margin on your letters as 
smooth as the left margin, litis pro- 
cess, called right justification, is 
meant to give you even margins, thus 
improving the appearance of your 
printout. 



Q: I bought a C12S, 1571, 1902 and 
Panasonic 1 09 1 and the Timeworks 
DM 1 28 program so that I could print out 
a list oj all the records I have recoided on 
cassette tape. I need to print a record for 
each of my tapes, and tliem sort them in 
alplmbetical order iry song or artist. There 
are about 50 records, each containing ap- 
proximately 3S songs. To my despair, Time- 
worki DM128 can only sort a maximum 
of 10 fieldv, I need to sort at least 38. I 
called I'imeworks, who suggested I make a 
record for each so)ig, then sort by that field; 
but then t cannot print out a list of songs 
for each ca.<isette. Is there any program that 
will do what I want? 

George Campbell 
Lancaster, CA 

A: Do as Timeworks suggests, but 
add a field for tape tide or tape num- 
ber and soil on that when you want 
to sec or print all of a tape's contents. 



Q: I am the treasurer of First Christian 
Church here and have a Commmlore 64 
cotnputer, MSD dLKk drive and Star 10 
printer. Is this system large enough to write 
a monthly report and possibly a yearly 
report? 

Marion Elsworth 
Aurora, IL 

A: First, a monthly report is quite fea- 
sible, usiiiganyof three popularlypes 
of commercial software. My favorite 
method is one we employ in our own 
church at the moment; We use our 



word processor to prepare the report. 

This requires a word processor able 
to do rowandcolumn math, such as 
PaperClip, from Batteries Included. 
After you design a suitable report 
form, its monthly use is a simple niat- 
tei of entering current data and let- 
ting the program add it up. 

Another excellent ap])roach is to 
prepare die report u.sing a spread- 
sheei program, such as Supra's Cak 
Now. A spreadsheet allows you to lay 
out an entire church budget, showing 
all sources of income .nid exjjen.se in 
rows down the left margin, and the 
tnonths of the year across die top. 

Better yet, you can design formulas 
for it, so that when you enter raw 
income and expense items for a 
month, the system will total them and 
show you graphically how the cliui ch 
is doing on its budget st> far. fhis 
analysis can even take into account 
such factors as seasonal variations in 
individual items. 

The only problem is running out 
of memory. Even a small church can 
nil tlie H)0() or so cells available on 
most Commodore 64 spieadsheet.s. 
Thus, you may need to combine sim- 
ilar items, rhc other approach is to 
use a general ledger piogram to pre- 
pare your reports. 



Q: I have to call hng distance to access 
Compu.Se)ve. 'The cost is $78 an hour for 
the photw bill alone. Is there a way around 
this outrageous phone hill? 

Rick Strubell 
Moodtts, CT 

A: Ves, you should be able to cut that 
bill down a tot. Even here, in itie 
boondocks, 1 can call CompuServe 
for under $20 an hour. One trick is 
to call when rates are lowest, after 1 1 
P.\l, before 8 AM, and on Satui day and 
Sunday before 5 I'M. Another trick is 
to find the cheapest way to call 
Coni(}uSei've. You can access it much 
more cheaply via local |)hone num- 
bers provided in many large cities by 
C^oinpuServe, Tymnet, Telenet and 
similar services, rather than by dial- 
ing directly to CompuSene's home 
in Columbu-s, Ohio. You may also 
find that it's cheaper to call across 
state tines than within your own state. 
Finally, an "alternative" phone 
company, such as MCI or C/f K Sprint, 
may offer low-cost, long-distance ser- 



1 8 / RUN .SPECIAL ISSUE 1987 



o 



T W A R 



vice in your community. Com puSer\'e 

will be happy tn give you suggested 
accessnumbers, and your phone com- 
pany can tell you which of those num- 
bers would be least expensive to call, 
plos whether an alternative phone 
company offers service in your area. 



Q: I am 12 years old and recently bought 
a modem. I hwrw the computer number to 
CompuServe and Dmojorws, but I am get- 
ting bored with tliem. Do you knmv of any 
computer numbers in the Northern Cali- 
fornia area that are fairly interestingf 
Maybe a bulletin board controlled by a boy 
or a girl my age? And maybe boards I have 
to break a code to get into because I like the 
chtdlenge? 

ScoH Kim 
Cloverdale, CA 

A: Ijet me head you off right now 
about one point you made. Regard- 
less of the challenge involved, it is just 
as illegal to break into someone else's 
computer as it is i« break into his 
home. It could very easily lead you 
to a police record and a ruined fu- 
ture. If you're getting bored with 
CompuServe, perhaps it's time you 
got serious about learning to pro- 
gram your computer. 

Stan with Basic, Logo or Comal, 
then dig into machine lanf^uagc, Pas- 
cal, C and, perhaps. Forth. Next, put 
that knowledge to use helping peo- 
ple, perhaps as a volunteer program- 
mer for a church, school or charity. I 
guarantee you won't be bored with 
your computer once you learn more 
about it and use that knowledge to 
benefit someone other than yourself 
Volunteer work will also help you 
find friends now and a real job later. 

As for finding bulletin boards you 
can call legally. The Complete Commo- 
dore Inner Space Anthology, by Karl 
Hiklon, includes a li.^t of 39 boards 
in your area code that you'll never 
have to apologize for calling. The an- 
thology is available from Transactor 
Publishing, 500 Steeles Ave., Milton, 
Ontario, L9T 3P7, Canada. 



Q; / recently bought a VIC-Modemfor my 
VIC. When I call my computer club's bul- 
letin board modetri, it prints weird char- 
acters. Everything w set correctly (baud 
rate, duplex, stop bits, etc.). I thought it was 
my modem, so I exciianged it, but still had 



the same problem. I called another modem 
and it was the same. I thought it was my 
computer, so I bought a 64, arid it is still 
the same. Can you give me any advice? 

David Cardoxa 
Chvis, CA 

A: You didn't mention what terminal 
program you are using, but I would 
guess that your problem is cither that 
the program is sending PET ASCII 
cbanicters to a board that is expecting 
True AS(;il, or that it is sending True 
ASCII characters to a board that is 
expecting PET ASCII. If uppercase 
letters are printed properly but low- 
crease letters are altered, this is your 
problem. .Some terminal programs 
offer a choice of character sets. If 
yours does, try die other setting. 

Another possibility is that your par- 
ity bit is set incorrecdy. It must match 
the parity setting of the bulletin 
board you call. Try Ignore, None, 
Even, Odd, Mark and Space and sec 
if that cures the weird characters. Sim- 
ilarly, your modem can he set for dif 
fcrent character lengths, from 5 to B 
bits. It is important to match the 
length used by the remote systetn, 
usually 7, but sometimes 8. If your 
word lengths differ, that can alter the 
characters received. 

I'd suggest having someone in your 
user's group who has used the club 
bulletin hoard come over and help 
you make your first call. That's what 
computer clubs are for. 



Q: I own a 64 computer ami have recently 
purchased an automodem. I whh to .lel up 
a free commun ity bullet in boa rd sys tem. A re 
there any specifications or any registries 
that I would have to fill out? If so, can you 
tell me how I can contact these authorities? 

Chris Armstrong 
Waukegan, IL 

A: Until recently, you were supposed 

to report the purchase of the modem 
to your local telephone company. Of- 
ficialiy, they wanted at least two nuin- 
bers from it, including its FCC- 
registration number and its ringer- 
equivalence number. I say officially, 
because many phone companies no 
longer care about the numbers and 
would rather not be bothered with 
them. But have them handy should 
they ask. 
Theoretically, tlie phone company 



could also use the modem as an excuse 
to charge you a higher phone rate, al- 
though earlier attempts to do so vvere 
successfully resisted in Oklahoma. On 
the other band. If your phone com- 
pany ofTers an incoming-calls-only ser- 
vice, your BB line could be even 
cheaper than your regular line. 

One other warning. You, as .system 
operator (sysop), will be responsible 
for anything illegal that appears on 
your bulletin boar<l, so keep it cleared 
of such things as copyiigbted pio- 
grams or information on how to ille- 
gally access the phone .system, or your 
next call could be from the FBI or a 
software company's lawyer. 



Q: I have a number of C-64 Multipluti 
fdes that I'd tike to keep and itw ;/ / buy a 
C- 128 and the new Epyx Muitiplan. Could 
I use them without retyping all the infor- 
mation? How about on the Amiga? 

J.J. Shawcrofi 
Seattle, WA 

A: Microsoft's Muitiplan, like many 
spreadsheets, supports a .standard way 
to export data to other programs and 
import it from them as well. In Mui- 
tiplan, this feature is called SYLK 
files. They can be used to send data 
to any version ol' Multij)lan via a 
terminal program and modem, or 
straight through die RS-2'iii ])()rt in 
cases where the disks are not di reedy 
compatible, as in moving C-64 files to 
an Amiga. 



Q: I have the Wordcraft 20 word processor 
on cartridge for my VIC. Is there any way 
I can me it on a C-64? 

Joan Ramos 
New Yorh, NY 

A: You can't use Wordcraft 20 on a 
C-64, but there is a Wordcraft 64 as 
well — a British product from Peter L, 
Dowson of Dataview, Ltd. Hugh de 
Glanville, editor of the ICPUCi user's 
group newsletter, is listed in its 
January 198fi issue as the contact 
for I(]PUG members wanting Word- 
craft, His address is 45 Woodland 
Grove, Weybridge, Surrey KT I '^ 9E<2, 
England. 

Although UMI, the original U.S. 
distributor of Wordcraft 20, is no 
longer in business, I seem to recall 
that another U.S. distributor took the 



RUN Sl'KCIAL ISSUK ml 1 19 



I N I 



piogiaiii an later. I can't recall what 

company it was. Does anyone know? 



Q: fve jusi purchiised a C-128. Whtil 
vt'i.\i(>n of WuxLSlai ivill work iii id 
CP/M moM 

Jim Kalin 
MatherviUe, IL 

A: CAnniiiodoii.- used WordStar '^^'^ in 
prerelease testing of the CM '28, and 
as far as I can tell in brief testing; of 
my own, it works well. It seems to 
differ from other versions of Word 
Star only in adding the words "Com- 
modore 128" to the contiguratitm 
description on the second screen. 

3. Educai'ion and 

Entertainment 

Q: Is there any program for ike C-64 to 
facilitate learning German? 

Clarence Jorgensen 
St. Aufiustine, FL 

A; Reader Jeff Collins reports those 
interested in programs that teach Ger- 
man on the C-t>4 can contact Micro 
Learningware (Box 307, Mankato, MN) 
for his German Packages I, II and III. 



Q: I am looking for software thai may be 
useful in college algebra, physics and trig- 
onometry. ! am particularly Uiokingfoi pro- 
grams that will analyze problems, showing 
complete solutions, rather tlian just tlie 
answers. 

Henry Dove 
Atchison, KS 

A: Commodore programs suitable 
for use in college are embarrassingly 
scarce. The only college-level pro- 
gram 1 can recommend is CBS Soft- 
ware's Quadratic Equations, from 
their "Success wiili Math" series. It is 
an excellent progiam and does what 
you ask. 

One other program worth men- 
tioning for college use is Connno- 
dore's Sky Travel, which is a fully 
fujiciional planetarium, I considei it 
a nuist for astionomy classes at any 
grade level. It is so well done that such 
classes can justify buying a b4 ju.^t to 
use it. 



Q: We are looking for a progiam that will 



allow lit to enter a musical score (titelodf 
only) and have the computer transpose as 
necessaiy, add a simple four-part harmony, 
and print the result to a dot matiixprintet. 
Actually playing the music is not that im- 
portant. Any suggestions'^ 

George Murray 
Washington, NC 

A: Several music programs for the 

C-ti'l allow yon to play iimsic thiough 
an aLcessory keyboard or lyytv ii in at 
the tonipmei keyboaid, sloie and 
edit the result, then print it out. A few 
arc also able to automatically trans- 
pose music from one key tt) another. 
However, I still haven't heai d of a pro- 
gram that can compose harmony to 
go with an enteced melody. I'hejune 
iy8.f> issue oi'RUN includes reviews of 
ovet a dozen good imtsic piogratns, 
at least one of which should get you 
started. 



Q.' / nvenlly received a practical gift fin 
my 6-1' the prog) am Print Shop, tlowmer, 
my MPS-S02 printer is not compatible 
with It. Js theie a solution? 

Bruce Bracebridge 
PurceUville, VA 

A; 1 receive several letters a week 
from people who wish Flint Shop 
were compatible with one printer 
or another. Unfortunately, your 802 
handles high-resolution graphics dif- 
feremly from the Commodore piint- 
ers supported by Print Shop, 

No printer is 100 peicent compat- 
ible with every program. Before buy- 
ing either a printer or a ptogram that 
uses a jjrinter, be sure the compati- 
bility you need is guaranteed, better 
yet, test both together before you buy. 

Q: / enjoy painting sigtis, and recently re- 
ceived a C-64 (« a gift. Is there a program 
available tluit would allow me to make 
signs with differ ing letter styles, uppei-and 
lowercase and Zoom capabilities^ 

Jim Hooper 
Crescent City, CA 

A; One ]jrograni written especially 
for sign painl ing is the Banner Ma- 
chine, from Cardinal Sofiwaie (1^64(3 
Jefleisoii Davis Highway, Woodbridge, 
VA 22191; 703-491 6502), It contains 
seveial diffeiem fonts and multiple 
sizes of letters. Using a dot- matrix 



printer, you can make signs of any 
desired length sideways on continu- 
ous-feed paper. Just be sure yours is 
among the halfdozen or so printers 
it supports. 

Q: Is there a CAD (computer-aided design) 
program for the C-6-i that would be close 
to, say, Ver.saCad oti an IBM PC? 

John Warden 
Bushnell, IL 

A: 1 haven't seen VersaCad, but I 

found a recent review of it that con- 
vinced me it does (and costs) a good 
deal more than CAD progi^ams avail- 
able for the C-t54, though not as much 
as AutoCad, the dominant PC CAD 
program. 

Abacus Software offers two inter- 
esting introductions to CAD. One is 
CADPAK-64, a two-dimensional CAD 
program that manages up to 104 ob- 
jects in a 320- by 200-pixcl drawing 
surface, uses a lighl pen or the key- 
board for input and a dot-matrix 
graphics printer for t)utpul. 

The other, CAnPAK-128, for the 
C-128 is even belter, with graphic res- 
olution of 640x360, 



Q; Id like a C-64 DOS Wedge program 
that unndd direct commaTuis to disk drive 
if 9. Any suggestions? 

Margaret Matthews 
Dallas, TX 

A: Load and run the DOS wedge on 
your demo disk normally. Then sim- 
ply type ®#9 to shift succeeding com- 
mands to disk unit 9. This will remain 
effective throughout your current 
computer session unless you choose 
to change it again. 

People writing about the DOS 
wedge on the 064 often miss this 
command, because it was added after 
the oiiginal PET version. 

Q; / have a C-128 with a 1571 disk drive, 

and I can't Dload locked files. My 1571 is 

an early unit. Do all 1571s Imve this bug? 

W. Anthony Marsh 

Soinerville, MA 

A: I, too, have a CI 28 and an early 
1571, and, yes, they refuse to load 
locked files via the Dload command, 
the Load command or even the mon- 
itor in 128 mode. They will, however, 



20 I RUN SftClAL ISSUt 1987 



ROGRAMMING 



happily load such files in 64 mode, 
meaning diat locked files should be a 
problem only for programs diat run 
in 128 mode. This also suggests that 
the "bug" could be in the C'I28 Ker- 
nal ROM, instead of the 1571. 

For those unfamiliar with the term, 
a locked file is one that cannot be 
erased with the usual Scratch com- 
mand. A locked file is created by set- 
ting bit 6 of the file-type byte in the 
file's directory entry. A good way to 
set this bit is with a disk utility, such 
as Disk Keeper (RUN, August 1986). 
There's also a Basic routine that will ■ 
do the trick on page 70 of the edition 
of the Commodore 1541 Disk Drive User's 
Guide that I wrote (Commodore part 
# 1 540031-03). A locked file can be un- 
locked by clearing the same bit. 



Q: I oum the VICMON cartridge, but I 
am huving problems trying to store a byte 
(listing say ".byl $2c"). I tried to use the 
Fill command, but 1 could not get it to work. 
Hmu should I do it? 

Randy QuUlen 
Neah Bay, WA 

A: The syntax to make the fill com- 
mand put a byte $2c in location §1000 
{for example) is: 

.nOM 1000 2c 

(with the leading period already sup- 
plied by VICMON as a prompt). 

However, I would do it with the 
Memor)' command instead. Besides 
displaying the current contents of a 
part of memory, the .m command al- 
lows you to move the cursor up and 
over to a byle, change its value and 
hit the return key to enter the change 
in memory. For example, in your case, 
you might see: 

.m 1000 KMH 

; 1 000 aa oa na aa aa aa aa aa 

You would then simply change the 
first Saa to $2c as shown: 

:10dO Sc aa aa aa aa aa 33 aa 

This method is still a bit cumbersome, 
bni to improve on it, you'll need a full 
assembler, rather than llie mini one 
in VICMON. 



Q: Tfie program Disk Master ("Disk Mas- 
ter Revisited," RUN, February 1984) was 
just wftat I needed. But since I had Ttmny 



disks before the Disk Master program came 
out, I need to change their disk names and 
ID numbers for the program to work. Can 
you suggest a way this can be done? 

Jean Weitzel 
PainesviUe, OH 

A: Yes, but you won't like it. Copy 
each disk endrely onto a fresh disk 
with the name and ID number Disk 
Master needs. You can do this with a 
dual disk drive, or two single disks 
and a program like Copy All on Com- 
modore's bonus disk, or by using a 
single disk, with a program like Backup 
1541, that's also on the bonus disk. 

Although utility programs that 
change disk names and IDs do exist, 
I strongly recommend that you not 
use them to change the ID number. 
Although the ID number that appears 
when you load a director)' can easily 
be altered, it is only cosmetic. The real 
ID is kept in every sector of the disk, 
in a way you cannot feasibly change. 
Since the ID is one way the disk drive 
knows a new disk has been inserted, 
changing the co.smetic ID may lead to 
loss of data later. 



Q: I've looked and looked for a program 
that will lei me enter genealogical data into 
a C-I2H in a format similar to a staiuiard 
genealagicnl ivork sheet. Is there such a 
progravi? 

Fred Goldsmith 
Phoenix, AZ 

A: You might try Family Roots, from 
Quinsc])!, Inc., PO Box 216, Lexing- 
ton, MA 02)73; 017-641-2930. It's 
available in a C(jminodore version. 

Also, don't ibrget about the CP/M 
mode on your 128. With that, you 
can run many programs written for 
such machines as the Kaypro and 
O.sborne. 



PROGRAMMING 
4. Debugging 

Q: When I am making a program, my keys 
freeze up ami don 'l work the way they are 
.iupfmsed to. Ondd you tell me what you 
think tlie problem is? I own a 64. 

Rodney Lb^d 
Gary, IN 

A: I can think of two likely causes. 
One is the "push-wrap crash" found 



in older C-64s with a bug in the 
Kemal ROM. It only happens when 
you're editing a long line at the bot- 
tom of the screen. To create it, go to 
the bottom left of the screen, type 82 
characters, then press the delete key 
three times and stand back! If yours 
is a -01 ROM 64, you'll see LOAD, 
SYNTAX ERROR, READY., RUN, 
READY., and the computer will be 
"out to lunch." 

You avoid it temporarily by chang- 
ing the cursor color to white before 
typing anything that could inadver- 
tently extend onto a third line, or per- 
manendy by upgrading to the cur- 
rent -03 Kernal ROM. You want a 
901227-02 or later ROM for socket 
U4. A custom version with your 
choice of sign^on colors and message 
is available from JSR Enterprises, 
10035 White Pine Lane, Saniee, CA 
92071 (619-449.9748). 

The second cause is premature test- 
ing of a program that contains a Poke 
statement. If, for example, your pro- 
gram includes POKE X,Y, but you 
haven't yet assigned any value to X 
or Y, Basic will do a Poke 0,0, since 
is the default value of unassigned nu- 
meric variables. Poking to location 
on a 64 changes the data direction 
register that controls what chips are 
in and out of the memory map, which 
may eventually result in losing con- 
trol of the machine, unless you know 
what you're doing there. 

To avoid this and similar problems 
with Poke, always save a copy of your 
progrant before typing RUN. Then if 
it crashes, you haven't lost anything 
but tire lime it lakes to load it in again. 

Q: I lutve twrilten a useful program, but 
when I use it, the computer freezes up for 
ten to 40 seconds, and then continues as if 
iwthing luul happened. I'm confused as to 
why my computer is doing this. 

Stephen Ritchey 
New Carlisle, PA 

A: The cause is "garbage collecdon," a 
procedure performed automatically 
and unpredictably by Basic itself. Its 
purpose is to reclaim memoiy space 
formerly used by dynamic strings your 
ptogtTun no longer needs. 

W'hen you riui a program that uses 
calculated strings, Basic finds room 
for them at the top of memory. Then, 
when you change a string, Basic 
makes a new copy of it, a bit lower in 



RUN SPKCLU ISSUE JSffi / 21 




D540 

Disk Drive 

Commodore 

1541 

&GEOS 

COMPATIBLE 



• COOL— ONLY 15W (vs. 25w for 
1541) 

• DIRECT DRIVE SYSTEM-stable 
alignment 

• 6 MONTH WARRANTY 

• EXTERNAL DEVICE NO. 
SELECTION— Simple 

• DUAL SERIAL PORT— daisy 
chaining 

• CI 28 COMPATIBLE in C64 mcde 

• COMPACT SIZE— 2x6x10 =t; 
inches 

• 5'// SSDD, 175KB CAPACITY 

• $149.00 EACH (NJ residents add 
$8.94 tax) 

To Order Call 
1-800-521-9298 

(In NJ, dial 201-231-8686) 

Visa, Mastercard or Mo nay Order. Allow 
$8," shipping & handling. Send mail 
oreler with payment to; 



H&M 

Marketing 

P.O. BOX 8339 SOMERVILLE, MJ 08976 



ClrclD 407 on RQDdor Sorvlco card, 



memory. Eventually, you run out of 
memory, since it is filled with strings 
you no longer need. To correct this, 
;i spi'cia! garl:>agc collection routine 
inside Basic packs the still-valid 
striiig.s as close to the top of memory 
as possible, ovenvrittng those thai are 
no longer needed. Even at machine 
language speeds, this takes time. 

Two statements that put strings in 
this area are: 

100 INB'UTAJ 

1 10 A$ = "X" + "Y" 

A common alternative statement is: 

120 A$ = "XY" 

VIC and C-64 owners can minimize 
garbage collection delays by replac- 
ing line.s like 100 and 1 10 with lines 
like 1 20 whenever pos.sible. The guid- 
ing [jrineiple is this: Don't create any 
more strings than you have to, and 
change them as infrequently as pos- 
sible. Garbage collection delays have 
been nearly eliminated on other cur- 
rent Commodore models, like the 
I'lus/4, C-l(iandC-128. 



Q: How can I salvage a program I spent 
12 hours working on? I have a monitor, so 
I can see the program in memory. But if I 
try to list, it starts out okay but later looks 
like garhiige. Wfien I get to certain points, 
the screen freaks out, turns black and makes 
little shapes in tlie comer. What is going 
on, and can I salvage some of this program 
by reselling something? 

Gil Donbrava 
San Antonio, TX 

A: The easiest way to restore a pro- 
gram is from a backup copy you made 
before the disaster. When I am writ- 
ing a new program, I save a copy to 
disk every 20 minutes, each with a 
different version number, ending up 
with a disk full of ever newer and 
more complete programs. I also save 
a final copy before I type RUN the 
first time. This avoids 99% of the 
problems you mention. 

Unfortunately, it could easily take 
more than 12 hours to salvage your 
lost work. You should use a machine 
language monitor to be sure all the 
link pointers in the Basic program are 
pointing in their proper directions. 

This is tedious work at best, and not 
for newcomers. If you know which 
line number is the first one that gives 
trouble and have a monitor that can 



NIC 

convert its value into hex, you may be 
able to use some monitors' .H com- . 
mand to find that line quickly. 

The link pointer is made up of the 
first two bytes in each line of liasic, 
and the first one is normally pointed 
to by locations $2B-2C in the VIC, 64 
and Plus/4 (locations $2D-21'" on the 
C-128). Once you've repaired the pro- 
gram, be sure it ends with three $00 
bytes in a row and that locations $20- 
2E {S2F-30 on the C128) point one 
location beyond the last $00. Then, 
save your work, return to liasic, type 
CLR, save again and try listing tlie 
result. It isn't a job for the faint 
of heart. 



^ White f ims umig a cofry ftrogmm, my 
screen vmit berserk. Now when I turn on 
tfie computer, Ike entire screen fills with 
exclamation marks. Anything I type is ac- 
cepted, but I cannot understand what I 
type. For example, I type "R "ami the system 
sfu)ws "S"on the screen. Would you please 
tell me how to get rid of the exclamation 
points? 

Wilson Fern 
Chicago, IL 

A: This is a simple, though annoying, 
problem — bit of your video RAM is 
defecdve and stuck in the "one" posi- 
tion. This causes all characters witli 
even values in the collating sequence 
of your character set to display as the 
next higher character in the set That's 
why spaces become exclamation 
marks and R becomes S. 

To make sure, type an A. It should 
appear as an A, because it has an odd 
value in the collating sequence and 
thus needs bit set. 

The cure is equally simple — re- 
place the video RAM chip. On most 
Commodore computers, it is a widely 
available 2114 static RAM. If it is 
socketed on your machine, replace- 
ment is a matter of unplugging the 
old chip and plugging in the new one, 
making sure both point in the same 
direction and that no stray electricity, 
static or otherwise, gets near the com- 
puter during the process. If the old 
chip is soldered in, have a skilled 
technician remove it and add a socket 
for the replacement, 

Q; While experimenting with REM [shift 

L] as a way to prevent listing a program, 

Continued on p. 62. 



22 / RUN SPECtAL issut mi 



Commodore Product Potpourri 

Hardware, Software & Firmware for your C-64, C-64C, C-128, AMIGA 



256«K AMIGA' MEMORY 

tt all bagtn 9 years ago wt^er Commotlore 

produced a wondrous PET Computer with 8 

Kbytes of memofy. SkyloB Electric Worka 

than offered to double the PET memory wjlh 

an 8 Kbyte memory addition. 

Hlatorf repeats ItsoH 7 yean later. At 

1/3 Ihe price of Ihe original PET memory 

Bxpnrsion, Skyies Electric Works now otters 

32 lirnes trie memory That's right!! S56 

Kbytes of AMIQA memory expansion tor 

oniyS79.9S*, 

Buy your 256 Kbyte AMIGA memory 

expansion Irom Skylos Slectrlc Works at 

Ihe lowest price from the most reliable and 

most proven Commodore expansion 

ihemory buiider in the world, 

ase-K Memory tor AMIGA S79.95* 



4 panoramic paaael of pelucld 
paragraphs prosontBd by a 
pramler purveyor 



MEGABYTES for AMIGA 

Available now irom Skyies Electric Works. 
We had so much lun devetoping the Z5G-K 
Memory for Amiga that we decided to offer 1 
Mbyte, and 2 Mbyte, Memories for Amiga. 
Consider, 1.048,576 or 2,097,152 bytes ol 
memory designed lo plug directiy into the right 
side of Ihe Amlge. Each rnemory board offers 
lull QG pin buffered pass-thru with Addmem or 
Aulo-corlig on turn on. We searched America 
for the best Amiga Memory and found it. 

1 Megabyte Amiga Memory .... $499.95* 

2 Megabyte Amiga Memory .... $949. 9S* 

MIDI for AMIGA 

A Standard MIDI IN, 2 MIDI OUT, and MIDI 
THRU Interface lor ihe Amiga Computer. 
Piug il into the RS-232 Poti on the rear ol your 
Amiga and you are ready lo use Musical 
Instrument Digital Interface (f^lDI) instruments 
and devices with your Amiga, Designed lo be 
used with standard MIDI cables and all the 
presently available Amiga MIDI software. The 
MIDI tor Amiga Interlace gets the job done 
at a bargain price 
MIDI for Amiga Interface $49.95* 

CLOCK for AMIGA 

liVe IVere Shocked When We Discovered 

thai the otherwise friendly Amiga 'would not 
even give us the time ol day^. We immedialely 
set aboul fixing the problem with Clock for 
Amiga, No longer is il necessary to set the 
clock via Preferences, With Clock (or Amiga 
you can have the lime of day set automatically 
each lime you turn on your Amiga . Clock for 
Amlge is a small cartridge that plugs onto ihe 
86 pin connector on the right side of your 
Amiga. Clock for Amiga runs lor two years 
even if your Amiga is turned off. Get Clock 
tor Amiga today and let your Amiga be an 
amiga. 
Clock for Amiga . S79.95* 

2 for 1 MONITOR CABLE/C128 

The Z tor 1 Monitor Cable allows all 
composite video monitors to be used with the 
Commodore 138 in all modes of operation. 
Don't throw out your present green or amber 
monilor, buy a 2 for 1 Monitor Cable. 

2lor1 Monitor Cable for C-12e .. S24,95' 




Skyies 

Electric 

Works 



1541 FLASH! 

The new Skyies Electric Works 1541 FLASH! 
loads programs and files lo your Commodore 
64/64C or Commodore 12B (64 mode) three 
times faster than an unenhanced Commodore 
1541 diskdrive, 1541 FLASH I saves programs 
20 to 50 percent faster. 1541 FLASH! formats 
a disketle in 25 seconds, a real flash. 
The 1541 FLASH! is a permanent hardware 
instalialion in your Commodore 64/64C and 
Commodore 128 (64 mode) and 1S41 disk 
drive. No programs loload, no cartridge hassles. 

We have special versions of Ihe 1541 FLASH! 
for Ihe SX-64 and two 1541 s. 

In addition to its blinding speed Of program and 
file loading, the 1541 FLASH! adds over 50 
extra commands tor the Commodore 
64/64C/128 user. These include a built-in 
DOSMedgo, Easy Editor, and FLASHMON! 
machine language monitor. 

1541 FLASH! C-G4/C-64C& 1541 ... $69,95* 
1541 FLASH1 C-G4fC-G4C & 

two 1541s S109,95* 

C-12a FLASH! C-12Bi 1541 S79,95* 

C-128 FLASH! C-12e& 

two 1541s Sits, 95* 

SX-64 FLASH! 5X-e4& 1541 S69,95* 

SX-G4 FLASH! SX-G4& 

two 1541s 5109,95* 



A powerful panoply o/ pertinent, 
potent, perlptieral products 



QUICKSILVER 128 

QUICKSILVER 128 our premier fE££-4flB 
Interface for the Commodore 128 is now in 
slock and even better Ihan we had planned. 
Quicksilver 128 offers an IEEE Inlorfacs for the 
Commodore 128 in Ihe C- 128 mode (40 or 80 
columns) and in the C-S'l mode as well, 
QUICKSILVER 128 will inter-connect your 
Commodore 128 to Commodore SFD 1001, 
2031. 2040. 3040, 4040, 8050, 8250, 9060, and 
9090 Disk Drives. QUICKSILVER 128 will 
connect your Commodore 128 to Commodore 
2022, 2023, 4022, 4023 and 8023 Printers, 

QUICKSILVER 128 C-12S 5119.95* 



A priceless programmers pallett of 
practical products and programs 



IEEE Flash! 64 

IEEE Flash! 64 our premier IEEE-488 
Inter face tor it^e Commodore 64 is' now in 
slocl( and even more transparent (program 
compalible)than QUICKSILVER 64. IEEE 
Flash! G4 will inter-conr'.ect your Commodore 
64 to Commodore SFD 1001. 2031, 2040. 3040. 
4040, S050, 8250. 9060, and 9090 Disk Drives, 
IEEE Flaeh! 64 wilt connect your Commodore 
64 to Commodore 2022. 2023, 4022, 4023, ,ind 
8023 Printers, 

IEEE Flash! G4 C-e4/C-64C $99.95* 



DRUM MACHINE 

Rhythm King (s a drum machine for the C-64 
and C-12B. Rhythm King is a disk and an audio 
output cartridge that plugs into your C-G4 or 
C-128, Rhythm King has 8 different percussion 
sounds buiit-in and Rhythm King will play up lo 
3 drums at a time. You may write "patterns of up 
to 24 bars, with up to 32 notes per bar. with up to 
64 stops per note. Up lo 64 dilfereni patterns 
may be linked together Inio a "song", with up to 
255 repeats per pattern. Songs may be linked 
together to lorm "Megasongs of up to 255 
pattern steps. 

RHYTHM KING 128 C-12S 589,95* 

RHYTHM KING 64 C-G4 589,95* 



Prevent and preclude premature 
pratfalls, by perplexed pro- 
gramming postulants 



BASIC PROGRAM 
COMPILER 

BLITZ! IS the fastest, easiest lo use. most 
popular, BASIC program compiler available for 
the Commodore 128, C-64, and C-84C. Your 
BLITZ! compiled programs will run from S to 20 
times taster after you BLITZlthem. BLITZl 
translates and reduces your BASIC programs 
in loa much, much faster code, 

BLITZ! C-128, Disk 559,95* 

BLITZ! C-64/C-64C, Disk SS9,95* 

BASIC PROGRAMMING AID 

VICTHEEis a BASIC programming aid cartridge 
forthoVIC-20 and C-64/d-64C computer, 
VICTREE adds 42 extra commands for BASIC 
programming ease and full DOS control. 
VICTREE commands include CHAIN, EXECUTE, 
MERGE, SEND. USE. CONCAT DOPEN, 
DCLOSE, RECORD, HEADER. COLLECT, 
BACKUP. COPY, APPEND, OSAVE, DLOAO, 
DIRECTORY RENAME, SCRATCH, CATALOG, 
INITIALIZE, AUTO, DELETE, RENUMBER, 
MERGE, LCOPY, LMOVE, PRINT USING. FIND, 
CHANGE, PAGE, HELP DUMP and TRACE. 

S49,95* 
849,95* 



VICTREE 64 Cartridge, C-64/C-G4C 
VICTREE 20 Cartridge, VIC-20 



ASSEMBLER CARTRIDGE 

if your C-64 programming needs have extended 
beyond BASIC, Skyies Eleclric Works now ollors 
M IKRO, a machine language assembler 
cartridge for the Commodore 64/64 C. The 
MIKRO cartridge contains everything you need 
for machine language programming. 

MIKRO Carlrldge, C-64/C-64C 549,95' 



The periodically puzzling, pre- 
carious, path to perspicacious 
program perfection and prowess 



INCOME TAX PROGRAM 

Taxwaro, the most comprBhonsive, easy 10 
USQ, all year around record keeping and tax 
preparation system available for the Com- 
modore 64/64C, is now available for the 
Commodore 12B. Better yet, both the improved 
C-G4 and C-128 versions of this popular 
package are available in one comprehensive 
package. TaxWare includes forms 1040, 2441, 
and Schedules A, B, C, D. E, G. W and SE. 
TAXWARE, C-64/CG4C or C-12B, 

1541/1571 $49.95 



TO ORDER: Call 1-800-227-9998 or 1-415-965-1735 (CA) or write to: 
For More Information: Send Stamped Self Addressed Envelope to: 



231 -E South Whisman Road, Mountain View, CA 94041 



Circle 425 on Re»def SeA^lee card. 



24 / RUN SPECLU ISSL'K 1987 



ILLUS Tk-ATED m llOUG SMITH 



MAGIC 

In this special issue we've selected 226 of tlie best Magic tricks that 
were published in RUN in 198fi, phis 29 new tricks 

prepared especially for tliis issue. 

Whether you're a new or experienced Commodore 

computer owner, a hardware or software devotee, 

a dedicated hacker or a once-a-year computerist, 

you'll find many tricks here tliat will 
make your computing more enjoyable and useful. 



Computer-Specific Tricks 

1 COMPLTITitS— C-64 

2 COMPLri-ERs— C-128 

3 COMPUI-URS— C-tyl AXD\aC-20 

Hardware Tricks 

4 connecnons/lnterkactjs/cables 

5 DISK Oi'hJt'VnoN /Recording 

6 Joysticks and Poiii-s 

7 Ki'.yek>ard/K1':yboardinc; 

8 MODEMSflVjJ'COMMUNlCAnONS 

9 I'RlNniRS/PRIN'rER Pai'i-:r 

10 Video /AuiiK) Devkif.s 

11 Miscellaneous H^vrdwareTips 

Software Tricks 

12 ENTFiUN'ts/EDmxG Programs 

13 L/\nguac;es— Basic 

14 Languages — Machine Language 

15 I.ANGUAGES— OTHFJ* 

16 PROGRAMMINCrnPS— DEBUGtJING 

17 PROGRAMMINCJTips— GENEJiAL 

18 PROGRAMMLNGTU'S— MAm/EDUCATlONAL 

19. Programming Tips— Screen Dispiay 

20 PR0(;R/\MMIN'GT1PS— SOL'ND 

21 PROGRfUis— Am use.mf.vi"s/Dej Jerri's 

22 Progr.'V\is— COMMtJtc:iAi. Software 

23 Programs— UstJ-ULAPPUC^iONs 

24 PR0GR.\MS — UTnJTIE^ 

25 Computer Room 

Miscellaneous Tricks 

26 Odds AND ENDS 

Bj JIM BORDEN 



RUN si'KU.M. ISSUE m'l 1 25 



M 



1. Computers— C-64 

C-64 screen-line erasing— It is known that line L can be 
deleted trom the C-64 screen by: 

POKE 781,L: SYS 59903 

You may not know, however, tliat the first N + 1 char- 
acters of a line can be deleted by: 

POKE 781 ,L : POKE 782>; : SYS 59905 

Of course, L must be between and 24, and N must be 
between and 39. 

Samir S. Chebli 
Beirut, Lebanon 



50-Hz docks— While the Magic C-64 clock, above, will keep 
time in the United States, it loses ten seconds per minute 
in countries \vhere the electrical frequency is 50 Hz, To 
get the correct time in sucli countries, the following com- 
mand is necessary: 

POKE 56334.PEEK(56334) OR 128 

This command can be entered in Direct mode before 
loading Magic Clock or in a line before line 200, 

The same command must be included in any program 
using the T.O.D. clock liming (e.g., VIP terminal). 

Harty Getliffe 
Durban, South Africa 



Magic &64 clock — This program is longer than our cus- 
tomary one-screen limit, but we think you'll be glad we 
printed it. It uses the seldom-used Time of Day clock to 
feed a continuous screen display. The TOD clock keeps 
much better time than TI$, and it isn't affected by other 
computer operations. 

Running the program will start the clock, and notiiing 

short of turning off your computer will stop it. Resets and 

stop/restore presses will kill the display without affecting 

he timekeeping. To return the display to life, execute a 

SYS40822, 

00 PRINT" (SHFT CLR ) { 2 CRSR DNs (MAGIC CLOCK 

- FLOYD ANDERSON - SYS40822" 
10 POKE55,nB:POKE56,159:CLR 
20 FORJ=0TO137:READK:L=L+K:NEXT:RESTORE:IF 

L< >n465THENPRINT"DATA ERROR": STOP 
30 FORJ=0TO1 37:READK: POKE40822+J ,K:NEXT 
4 INPUT" (2 CRSR DNs } riR ,MIN , SEC , AM/PM" ; H , M 

,S,A$ 
50 IFH>12ORM>59ORS>59T!iEN140 
60 IFH>9THENH = 16+(!l-10) 
70 IFM>9THENM=16*VAL(LEFT$(STR$(M) ,2) ) 4-VAL 

(RIGHT$(STRS(M),1 ) ) 
80 IFS>9THENS=16*VAL( LEFTS ( STRS ( S ) ,2) ) (VAL 

(RIGHT$(STR$(S ) , 1 ) ) 
90 IFLEFTS(A$,1 ) ="P"THENi! = ll-*-1 28 

200 POKE5G331 , H : POKE56330 ,M: PQKE56329 ,S: PQK 
E56 328, 0:SYS4 0022: END 

201 DATA 120,159,131,141,020,003,169 

202 DATA 159,141,021,003,086,096,169 

203 DATA 058,141,029,004,141,032,004 

204 DATA 141,035,004,169,013,141,039 

205 DATA 004,173,011,220,041,128,240 

206 DATA 007,169,016,141,038,004,208 

207 DATA 005,169,001,141,038,004,173 

208 DATA 011,220,041,016,024,074,074 

209 DATA 074,074,105,048,141,027,004 

210 DATA 173,011,220,041,015,024,105 

211 DATA 048,141,028,004,173,010,220 

212 DATA 041,240,024,074,074,074,074 

213 DATA 105,048,141,030,004,173,010 

214 DATA 220,041,015,024,105,048,141 

215 DATA 031,004,173,009,220,041,240 

216 DATA 024,074,074,074,074,105,048 

217 DATA 141,033,004,173,009,220,041 

218 DATA 015,024,105,048,141,034,004 

219 DATA 173,008,220,024,105,048,141 

220 DATA 036,004,076,049,234 

Floyd L, Anderson, Jr. 
Niantic, IL 



C-64 screen blanking- When the C-64's screen is blanked, 
the border color temporarily covers the entire face of the 
monitor, and processing speed increases slightly. The real 
screen is still active and can be printed to or Peeked in the 
normal way. You can even use it for dynamic keyboard 
activities, and no obsei"ver will .see what's going on. 
To blank the screen, you can enter: 

POKE 53265,PEEK(53265) AND 239 

To return it to normal, just enter: 

POKE 53265,I'F.EK(53265) OR 16 

Location 53265 is also used to enable bit map graphics, 
extended background color mode and several other exotic 
modes. If your program doesn't use any of them, the Pokes 
become much simpler. To blank the screen, use: 

POKE 53265,11 

To return it to normal, use: 

POKE 53265,27 

Since very few programs use the exotic graphics modes, 
these simpler Pokes will almost always work. 

Sue Dohnim 
Apcnna, ME 

C-64 text-color change — This has been needed for years. It 
instantaneously changes the color of all text already 
printed on the screen, 

50 POKE 648,224 ; POKE byZHlA : PRINT " {COIX)R A} 

{SI (Fr CLR} " 
60 POKE 648,4 : POKE 6328 r,B ; PRINT " {COLOR C} " 

A is the Poke value for the color you want the text to 
become. Color A is that color's corresponding key; B is the 
Poke value for the screen color you want when the routine 
is finished; and C is the key for the text color you want 
active at that time. 

The routine works with all known ROM versions and 
with the C- 128 in C-64 mode. It re.sets the screen line links, 
which may occasionally cause minor troubles. The overall 
effect may be more pleasing if you blank the screen while 
the routine is being executed. 

Louis F. Sander 
Pittsburgh, PA 



26 / RUN spk:ial issue isifl 



M 



Improving background color changes — Many C-64 pro- 
grams let you select the background color of your screen. 
But when you change it to the character color, you cannot 
see the printed tcxi. This subroutine avoids the problem, 
taking advantage of the fact that white letters show up well 
oil all colors except white. When the subroutine is called, 
the background color advances by 1. The cursor color 
remains white, unless the background is white. In that case, 
the cursor turns black. When the background changes 
again, the cursor returns to white. 

A demonstration routine is included to illustrate the 
system. When used in conjunction with the above text 
color change routine, this subroutine can ensure that 
preexisting text never becomes invisible. 

30 REM BACKGROUND CHANGE DEMO ROUTINE 

40 PRINT" PRESS A KEY TO CHANGE COLORS {CRSR 

DN)" 
Sd GETA$:IFA$=""THEN50 
60 GOSUB110 : REM CHANGE BKGD COLOR 
70 POKE53281 ,BC: POKE646 ,CC :PRIMT"BKGD" ;DC, " 

CHAR";CC 
80 GOTO 50 
90 : 

100 REM BACKGROUND CHANGE SUBROUTINE 
110 BC=PEEK( 53281 ) AND1 5 :CC=PEEK( 646 ) 
120 BC={BC+1 1AND1S:CC=1AND(CC<>BC) 
130 RETURN 

Dee Flume 
Nome, AK 

Datapointer for the G64 — This program sets up a machine 
language routine that can set the data pointer to any Data 
statement you choose, regardless of its line number. This 
eliminates the need for anays to hold data the program 
already contains, letdng you write smaller programs with 
faster execution and starting. 

Once the machine language is in memory, load the Basic 
program containing the Data statements you need to ac- 
cess. To access the Nth Data statement in the program, just 
make the indicated Poke and SYS call, then execute a Read 
statement. You are limited to 255 Data statements, if you 
consider that a limit. 

Datapointer accesses statements rather than individual 
data items, but once a statement has been accessed, your 
' program can read all the items it contains. Data statements 
can, of course, stand by themselves or be embedded within 
multi-statement lines. It's fastest to put them at the begin- 
ning of your program. 



150 DATA004,1 44,003,024,230,252,1 68,024 

151 DATA1 44,186 

Edward G. Bell 

Swissvale, PA 

* 

Halley's Comet revisited — If you missed the prime viewing 
period for our once-in-a-lifetime visitor, this C-64 program 
can show you what you missed. It gives a computer-en- 
hanced image of the famous heavenly body, complete with 
color and sound. 

10 PRINT" (SHFT CLRHCTRL 2) HALLEY'S COMET - 

TAMMY SILVERBERG/MAGIC" 
20 POKE53281 ,0:FORJ=1TO52:PRINTTAB{.5)"{6 SP 

ACEsl*{6 spaces}* {3 SPACEs) " ; :NEXT:PRINT 

"{HOME}" 
30 S=54272:FORJ=0TO24:POKES-fJ,0:NEXT:POKES-f 

24,15;POKES-f1 ,1 : POKES + 5, 220 
40 V=532 48:FORJ = 0TO62:READK:POKE832-i-J,K:NEX 

T:POKE204 0,13:POKEV-t-21 ,1 :POKEVi-28,1 
50 POKEV + 37 , 7 : POKEV+ 38,2: POKEV-f 39 , 8 : POKES+ 4 

,129 
6(5 FORX = 1T0255STEP.5:POKEV-i-1 , 255-X: P0KE:V,X: 

NEXT 

61 DATA 000,000,252,000,015,255,000,015 

62 DATA 255,000,063,255,000,063,255,000 

63 DATA 063,255,000,247,255,000,223,252 

64 DATA 000,125,124,000,117,240,001,095 

65 DATA 192,001,093,000,001,084,000,005 

66 DATA' 080,000,006,06 4,000,022,064,000 

67 DATA 170,000,000,168,000,000,160,000 

68 DATA 000,000,000,000,000,000,000 

Tkmmy Silverberg 
Brooklyn, NY 

G-64 wedge and the Auto Menu program — Here's a fast 
and simple way to use tlie Auto Menu program (see RUN, 
April 1986) with the C-64 wedge. First, copy the DOS 5,1 
program onto the disk containing the Auto Menu pro- 
gram. Then add these lines to die program: 

8 1FA = OTHENA=1:LOAD"DOS5.1".H,1 

9 SYS12*409G+ 12*256 

The Auto Menu program will first load the C-64 wedge, 
then begin working normally. The C-64 wedge commands 
are now available, and the Auto Menu program can be 
used over again by typing AUTO MENU. 

Richard Reisig 
Mitchell, NE 



100 PRINT" {SHFT CLR} MAGIC C6 4 DATAPOINTER - 

EDWARD G. BELL" 
110 FORJ=1T082:READK:CS=CS+K:NEXT:RESTORE:I 

FCS<>11053THENPRINT"DATA ERROR": END 
120 FORJ=679TO760:READK:POKEJ,K:NEXT 
130 PRINT" {CRSR DN)TO GET NEXT DATA FROM TH 

E NTH STATEMENT," 

140 PRINT"HEAD IT AFTER P0KE254 ,N; SYS679" 

141 DATA169, 000,133, 251, 169, 008, 133, 252 . 

142 DATA1 60, 005, 162, 001, 177, 251 ,201 ,131 

143 DATA240, 01 4, 032, 230, 002, 201, 032, 240 

144 DATA243, 201 ,056,240,239,024,144,015 . 

145 DATA228, 254, 208, 007, 132, 065, 165, 252 

146 DATA1 33,066,096,232,032,230,002,177 

147 DATA251 ,032,230,002,201,058,240,212 

148 DATA201 ,000,240,009,076,214,002,200 

149 DATA208,002,230,252,096,1 52,024,1 05 



Printing with C-64 sound effects — Use this routine to en- 
hance your programs. Each time a character is printed, it 
is preceded by a reversed space cursor and a soft beeping 
sound. You can start printing at any column by changing 
the tab variable T in lines 120 and 140, 

If you wish to customize the routine, poking any number 
up to 255 into S -H 1 in line 200 will change the sound, and 
increasing or decreasing the delay loop in line 260 changes 
the printing speed. 



10 REM PRINT WITH 
CHARNETSKI 



SOUND EFFECTS - JOSEPH R, 



Continued on p. 30. 



RUN SPECIAL ISSUE 1987 / 27 



scEimsisi 




When we started our 
company on the west coast, 
people thought we were a little 
spaced out. So you can imag- 
ine their reactions when we 
announced we'd discovered 
a new universe. 

People laughed. People 
scoffed. And they really freaked 
out when we told them where 
we'd found it: 

Inside a Commodore 64. 

It's called GEOS. And it 
turns any Commodore into a 
powerful PC that holds its own 
against any computer, no matter 
what kind of fruit it was named 
after. 

GEOS; The superior 
intelligence. Of course, we 
always knew Commodores 
possessed superior brains. It just 
took GEOS to discover them. 

You see, GEOS opens your 
Commodore to a huge universe 
that can hold an infinite number of 
applications. Which means that 
GEOS can do just about anything 
the expensive PC's can do, 
including one thing they can't: 

Add even more GEOS 
applications that are being 
developed even as you read this. 

Increase your speed to 
warp factor 7. The first thing 
you notice with GEOS is how 
its diskTurbo speeds up your 
Commodore's disk loading and 
storing time. 










Not twice or three times as 
fast. But five to seven times 
faster than normal. Which lets 
you streak through files and 
documents at what seems like 
warp speed. 

And that saves you endless 
time. 

CIrds 445 on Reader Sefvice caid. 



Every universe comes 
complete with a desk. The way 
to keep order in our universe 
is with the GEOS Desktop. It's 
just like your desk at home, only 
without the coffee stains. 

The Desktop keeps your art 
and documents filed, and comes 



WUHVERSE 




with all the accessories you need 
to keep you organized: 

An alarm clock keeps you 
punctual. A notepad keeps your 
memos. And a calculator keeps 
your accountant honest. 

How to communicate 
with a new universe. With 
geoWrite, you can rearrange your 
written words. Move blocks of 
copy. Cut and paste. And even 
display your text in fonts of 
different styles and sizes, right 
on the screen. 

With geoPaint, you become 
a Michelangelo with a mouse. 




Sketching and painting with all 
kinds of colors, textures and 
patterns. 

You can invert, mirror and 
rotate images. Insert them into 
your geoWrite documents. And 
save them in your GEOS Photo 
Album for use later. 

Finding your way through 
the universe. The most difficult 




thing about a new universe is 
finding your way around. But 
with GEOS, you only need to 
remember two things: 

Point and click. 

When GEOS offers you 
options, you just point to your 
answers and click your mouse or 
joystick. 

You want to draw? Point 
and click. 

You want to write? Point 
and click. 

You want to fill in that obtuse 
rhomboid with an air- brushed 
geometric pattern in a lighter 
shade of pink? Point and click. 

Easy, huh? And in case you 
ever do make a mistake, GEOS 
backs you up with an "Undo" 
feature that undoes the very last 
command you entered. 

n Berkeley 
Soitworks 



Running out of space. 

With GEOS, that's hardly likely. 
Because there's endless space in 
the universe for new applications. 

Unfortunately, there's only so 
much space in this ad. 

So zip down to your nearest 
software dealer. Tell him you want 
to explore the new universe in 
your Commodore. 



Van 







MM IIIHAK 

t(C QitiMi Stict 



And if he looks at you like 
you're some kind of alien, well, 
just tell him Berkeley Soft works 
sent you. 

The name is universally 
known. 



Toorden call 1-800-443-0100 exl. 234 
GEOS is just $59.95 

(California residents ;idd fi, 5% Siiks tax, ) 
%2.m US/$.'j.50 1'breign for slviimiiH! ;iikI 
liandling. Allow six ivetiks for dolivtry. 

CoiiiniodorL' (M and C()4 are Irademarks of 
Commodorf lilettroiiits, Ltd. tJKOS, GKOS 
Uesktop, yL-uhiiiit, Kt;(>Writt', diskTurbo ;jiid 
Berkeley Stjft works are tradeiiaiiMis of 
Berkeley Softworks. 



Drda ^6 on Aeadef Svfvioa &cifd 



The brightest minds are working at Berkeley. 



M 



From p. 27. 
Liiting [imtmwd. 



100 A$="{CTRL 2) PRINTING WITH SOUND EFFECTS 

li 

110 PRINT" (SHFT CLR}{5 CRSR DNs)" 

120 T=6:GOSUB180:PRINT 

130 A$="!CTRL 8}BY JOSEPH R. CHARNETEKl" 

140 T=8:GOSUB180 

1 50 REM CONTINUE 

160 PRINT" {COMD 7)":LIST 

170 REM SOUND 

180 S= 54272: FORM=STOS+ 23 : POKEM , : NEXT 

1 90 POKES+24,10:IFTTHENPRINTTAB{T) ; 

200 FORJ=1TQLEN(A$}:P0KES+1 ,23 

210 IPLEPT$(A$,1)<>"{CTRL 9}"THEN230 

220 PRINT" {CTRL 9) {CRSR LF} " J :GQTO240 

230 PRINT" {CTRL 9} {CTRL 0){CRSR LF)"; 

240 POKES+6,240:POKES+4,23 

250 PRINTMID$(A$,J,1 J; 

260 F0RDLAY=1T01 : NEXTDLAY : POKBS+6 , 

270 POKES+ 4,0: NEXTJ : T= : PRINT : RETURN 

Joe Chametski 
Dallas, PA 



Instant reset button — Transform your C-64's restore key 
into a reset button with this two-line program. 

FORA=407 04TO407 06:READB:POKEA,BiNEXT:FORA 

= 327 70TO32 776 :READB:POKEA,B: NEXT: NEW 
2 DATA 32, 248, 2 52, 0,1 59, 195, 194, 205, 56, 48 

Chris Mansfield 
Poplar Bluff, MO 

C-64 quick directory— The following machine languajTc 
program allows yon to easily display tlic disk dirccioi-)' in or 
out of a iJasic program. It's only 189 bytes long, yet it hus sev- 
eral important features. Holding down tiie shift key will stop 
the listing, and pressing the Commodore key will abort it 
The progrsim can be located anyw'here in RAM, L.ocation 
251 will hold the status if a Kernal error occurs. The syntax 
for a directory is: 

,SYS sliirl a(irifl(.'v#,"[bri!ial" 

The "start adr" is the .starting value of the loop in line 
20; the "dcv#" is the number of your disk drive (usually 
8); and the format is the string telling the drive what fries 
to display (e.g., "$0" will display alt files). 



10 
20 

30 

40 

50 

60 

70 

80 

90 

100 

110 

120 

130 

1 40 

150 

160 



REM C 
FORX = 
EXT 
IFCo 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 



-64 QUICK DIR - GREG LAPORTE 

491 52TOX+ 188: READ A:POKEX, A:C=C+A:N 



24767 

32,25 

32,25 

182,1 

192,2 

208,2 

48,4, 

252, 

82,1 

251 , 

255, 

0r0, 

1 ,32 
32,1 



THEN 
3,174, 
3,174, 
33,252 
00,196 
42,132 
201 ,12 
201 ,20 
60,192 
160,96 
144,22 
0,0,0, 
,198,2 
50,255 



PRINT" 
32,158 
32,158 
,160,0 
,252,2 
,252,1 
,48,3, 
,16,24 
,32,18 
,32,18 
,133,2 
0,0,0, 
55,32, 
,32,16 



ERROR 
,183, 

,173, 
,177, 
40,4, 
65,25 
76,72 
7,165 
9,255 
6,255 
51 ,96 
0,0,0 
180,2 
5,255 



IN DATA! '.' 
134,251 
32,166 
34,153,82 
201 ,1 3 
1 ,201 ,8 
,178,165 
,252,162 
,169,1 ,166 
,32,192 
,0,0,0,0,0 
,0,0,0,152 
55,162,96 
,32,165 



170 DATA 255,32,165,255,32,165,255,166 
180 DATA 144,208,43,32,165,255,170,32 
190 DATA 165,255,32,205,189,169,32,32 
200 DATA 210,255,32,165,255,166,144,208 
210 DATA 21,32,210,255,208,244,169,13,32 
220 DATA 210,255,173,141,2,201,1,240,249 
230 DATA 201,2,208,203,32,204,255,169,1 
240 DATA 76,195,255,76,195,255,76,195 
250 DATA 76,195,255 

Greg B. LaPorte 
Blackburg, VA 



C-64 Goto variable — Some computers allow calculated Clo- 
tos. Below is a program that allows a variable for tlie Goto/ 
Gosub address. 

REM VARIABLE GOTO-DEAN SIMONSON 

10 FORB=B2ST0885 :READC: A=A+C: POKEB,C:NEXT 

20 IFA<>65 99THENPRINT"ERROR IN DATA STATEME 

NTS": END 
30 SYS82e: PRINT" YOU CAN NOW USE CALCULATED 

GOTOS AND GOSUBS":NEW 
40 DATA 169,0,133,95,133,90,133,88,169 
50 DATA 160,133,96,169,192,133,91,133,89,32 

60 DATA 191,163,160,1,185,110,3,153,161 

70 DATA 168,136,16,247,160,5,185,112,3,153 

80 DATA 52,3,136,16,247,165,1,41,254,133 

90 DATA 1,96,52,3,32,138,173,76,247,183 

Dean Simonson 
La Grande, OR 



64 Keypad and VCR tapes— Use the nu tuber labels that 
come widi blank VGR tapes to mark the keys for the 64 
Numeric Keypad [HUN. March 1986). 

Roger Stokes 
TVinkhannock, PA 



2. Computers— C- 128 

C-128 load and run — One simple command can be used to 
toad a CI 28 program from disk and to run it automatically: 

RUN "programname" 

This does everything you need. 

Kenneth H. Hottes 
Danbury, CT 

C-128 joystick ports— The C-1 28 boasts a stick appearance, 
but its designers overlooked at least one small detail. The 
contour of the molding near the joystick ports prevents 
insertion of the PapeK^lip (C-64 version) dongle and other 
similar topy-protcctioii plugs. 

1 solved the problem by buying a $4.9.5 joystick accessory 
ai a local disc<iiuit store. The accessory is a Y cable that 
allows you to plug two joysticks into a single port on an 
Atari video game. When the Y cable is plugged into the 
C-128, the dongle can easily be inserted itito eidier of its 
female connectors. 

Others have made extensions from the subminiature D 



30 / RUN SPKCIAl, ISSUE 1987 



M 



connectors available at Radio Shack, but that requires 
knowledge of soldering and other expertise. 

Harold Cath 
Brownsville, PA 

C-128 M1D$ feature—hi CI 28 mode. MIDS has a wonderiul 
but undotuniciUed feature: You can use it to replace char- 
acters in one string with those from ancjther! The fonnat is 

MlD$(5tritigl,positioii<,li:iigtli>) = striiig2 

What happens is the first length characters of string2 
replace the length tliaractcrs of slringl. starling ai the 
variable " position." The remainder of string 1 is not 
affected. 

The length is an option, but if you leave it out, string^ 
cannot be longer than llie remaining number of characters 
in stringl. or an Illegal Quantity error results. 

Rick Rothstein 
Trenton, NJ 

&128 slow Usting— When you want to slow down a C-128 
listiiig or other printout, just press the Commodore logo 
key. This performs the same function as pressing the CTRL 
key on the Commodore 64. 

Robert B. Cook 
Brain tree, MA 

C*128 bytes free — 'At power-up, the F8 function key acti- 
vates the machine language monitor, which is a feature 
that most of us seldom use. I redefine that key to give mc 
something more valuable — an instantaneous reading of 
the amount of remaining memory. Doing the magic is 
simple: 



KEY 8, "?FRE(0)" + CH R$( 1 3) 



Gerhard Schilling 
Hemet, CA 



C-128 ESC key — There are several errors in the C-128 sys- 
tem guide's description of the escape sequences. On my 
machine, for example, ESC A activates Automatic Insert 
mode, while KSC C cancels it. ESC C does twt cancel Quote 
mode, as stated in the manual. 

ESC O is a powerful sequence that cancels Quote mode, 
RVS mode and the SOcolumn Flash (C TRL O) and Under- 
line (CTRL B) modes. Contrary to the manual's descrip- 
tion, ESC O does not cancel the Automatic Insert mode. 

Be sure you use the proper technique with all escape se- 
quences—first you press and release tJie tlSC key, and then 
you press the othei s. It's totally different I'nmi using shift or 
CI RL, where the keys must be pressed at die same time. 

Jim Borden 
Carlisle, PA 

C-128 40/80 display key sense— 1 his key's status can be 
detected by Peeking location 54533, then ANDing the re- 
suit with 128. If the final result is zero, the key is depressed, 



or in the 80-column position. If the final result is 128, the. 
key is released, or in the 40-column position. 

Remember that the computer uses this key to set the 
display only when it is reset or when the stop/restore com- 
bination is pressed. Since ESC X can be used at any time 
to switch displays, the status of the 40/80 key cannot be 
used to tell which display is in use. With the Peek' given 
above, it can be used as a handy push-on, push-off con- 
troller. 

Ken Garber 

Windsor, Ontario 

Canada 



C-128 tab stops — The manual doesn't give the whole story 
on setting and clearing tab stops. You can clear all tab 
stops by pressing and releasing the ESC key, then pressing 
and releasing Z. You can restore the default tab stops by 
using ESC Y in the way described above. You can set or 
clear a tab stop by moving your cursor to the desired 
position and pressing CTRL-X or the shifted tab key. 

Jerry W. Jarvis 
Spokane, WA 

C-i28 boxed spirals— Here's a simple but interesting 
giaphics one-liner. Try changing the value of A. 

10 A=11 :GRAPHIC1 ,1 :FORJ=0TO360STEPA:BOX1 ,0, 
0,319,199,J,0:NEXT:REM CHANGE A! 

Matt Woodring 
Cordell, OK 



C-128 Magic Boot — This program modifies any disk so that 
the 128, when turned on or reset in 128 mode, will auto- 
matically run the first Basic program in its directory. Here 
is how to cast the spell: 

1 . Select tlie Basic program you'd like to load and run au- 
tomatically. We'll call this the Target Program. 

2. Fonnat a disk, then save the Target Progiani as the first 
program on it. This becomes the Target Disk. (If you'd like, 
you can save other programs on the Target Disk as well. Just 
be sure the Target Program is tlie first one you save.) 

3. Remove the Target Disk and replace it with one con- 
taining the Magic Boot program. 

4. Load Magic Boot, but do not run it at this time. 

5. Put tlie Target Disk back into your drive; then run 
Magic Boot. The drive will spin, and your Target Disk will 
be converted. 

6. Test the conversion by pressing the reset button. If all 
is well, the Target Program will automatically load and run. 

Magic Bool should work on any Conunodore disk drive 
when used with the C-128 in 128 mode. If the Target Disk 
gels close to being filled, or if it contains some large 
relative files, there's a chance that Magic Boot's magic 
will be undone. 

The program works because, when the computer is 
turned on or reset in 128 mode, it checks the disk for the let- 
ters "CBM" at the start of track 1, sector 0. If it finds them, it 
loads and executes whatever machine language program 



RUN SPtClAL ISSLT 1987 / 3 1 



M 



follows them on that sector. Our program puts the letters 
there, followed by a machine language program to load and 
run the first Basic prof^iam on the disk. 

10 PRINT" {SHFT CLR}128 MAGIC BOOT - HARV HA 

RRIS" 
2f) DIMK(67) , 

30 FORJ=1T067:READK( J):CK=CK+K(J) :NEXT 
40 IFCK<>6318THENPRINT"DATA ERROR": STOP 
50 OPEN15,8,15:OPEM8,8,8,"i!(" 
60 F0RJ=1T067:PRINT^8,CHR$(K(J) ) ; :NEXT 
70 PRINTji!15,"B-W:"e;0;1 ;0 

80 CLOSES :CL0SE1 5 

81 DATA 066,077, 000, 0^10,000,000, 000, 042 

82 DATA 000,234,234,234,234,165,174,141 

83 DATA 016,018,165,175,141,017,018,076 

84 DATA 027,011,169,007,133,208,169,147 

85 DATA 141,074,003,169,151,141,075,003 

86 DATA 169,082,141,076,003,169,085,141 

87 DATA 077,003,169,078,141,078,003,169 

88 DATA 153,141,079,003,169,013,141,080 

89 DATA 003,096,001 

Harv Harris 
Wichita, KS 

C-128 Unnew program— This works in 128 mode only. 
Type the accompanying program and save it as UNNEW 
128 MAKER. Then run it. If you've made no typing errors, 
it will create a program called UNNEW 1 28 on the disk you 
have in die drive. (If you've made errors, correct them, 
scratch the old version and save the correct one.) 

Now, if yoti press the reset button or use tlie New com- 
mand by accident, just enter; 

BIjOAD "UNNEW I 2H" 

then type 

SVS'iB.'iO 

When you press the return key, your program will be 
resurrected. 



30 
40 
41 



10 PRINT 
RRIS" 

20 FORJ= 
XT 

IFCS< 
BSAVE 
DATA 

42 DATA 

43 DATA 

44 DATA 

45 DATA 

46 DATA 

47 DATA 

48 DATA 

49 DATA 

50 DATA 



"{SHFT CLR1UNNEW128 MAKER - HARV HA 
2850TO2923:READK:CS=CS+K:POKEJ,K:NE 



> 8443THENPRINT"DATA 
"UNNEW128",P2850 TO 
160,003,200,177,045 
249,152,105,001 ,160 
165,046,160,001 ,145 
045,133,065,165,046 
000,162,000,177,065 
010,200,192,000,208 
076,067,011,232,200 
002,230,066,224,003 
140,016,018,155,066 
096,000 



ERROR": STOP 

P2923 
,201 ,000,208 
,000,145,045 
,045,234,165 
,133,066,160 
,201,000,240 
,243,230,066 
,192,000,208 
,208,228,200 
,141 ,017,018 



Harv Harris 
Wichita, KS 



Print Using on the C-128— The C 128"s system guide 
doesn't give many examples of the new Print Using state- 
ment. The accompanying program illustrates many of its 
features and is most instructive to work widt. It simulates 
a report for a simple checkbook program. 



Enter the month's name in full (e.g., MARCH). Try dif- 
ferent amounts, from a penny to over $10,000, entering 
some with decimal points and some widtout. Try different 
letvglhs of input in the other areas, as well. Notice how the 
tmtput lines up on your screen and how it changes as your 
input changes. 

The example demonstrates, among other thinp, how 
ytm can assign a variable name to a format, then use the 
format anjwhere else in the program. It .shows how text 
and cursor- control characters can be used in the format as 
well, and it sliows the use of several of the Print Using 
format characters. 

10 PRIi^T"{SHFT CLR) PRINT USING DEMO - HELLM 

AN{CRSR DN)" 
15 F1$ = "{CRSR DN}{3 SPACEs}i^)^# {CRSR LF)>## 

{CRSR LF}, 1986{4 SPACEs}NUMBER: »fl§ff" 
20 F2S = "AM0UNT #ifffH$.ffft{8 SPACEs)TO: #§»»§» 

§§§§§" 

25 INPUT "{2 SPACES )M0!4TH";M$ 

30 INPUT "{4 SPACEs)DAY";D$ 

35 INPUT " CHECK//" ;C$ 

40 INPUT " AMOUNT"; A 

45 INPUT "TO WHOM";T$ 

50 PRINT USING F1$;M$,D$,C$ 

55 PRINT USING F2$;A,T$ 

60 PRINT:GOT025 

James C, Helman 
K. 1, Sawyer AFB, MI 

C-128 Print Using bug — The system guide says you can use 

PRINT*] USLNG 

which will allow you to print to the printer in a predeter- 
mined format. 'I he only trouble is, il doesn't work that 
way. You need a comma, like this: 

PRINT* 1. USING 

Of course, you can use any legal logical file number in 
place of the 1. 

Jerry W. Jarvis 
Spokane, WA 

C-128 stop key trap— In the new 7.0 Basic, the Trap state- 
ment treats a stop-key press as an Error 30. If you're using 
Resume to continue your program after errors are en- 
countered, the stop key will no longer function. To activate 
the stop key while avoiding other errors, insert this before 
the Resume statement: 

IF ER = 30 THEN END 

Jerry W. Jarvis 
Spokane, WA 

&128 disk Operations— Some of Basic 7.0's disk commands 

give trouble when you try to use them with string variables 
in their arguments. If you pin your string variables inside 
paren dieses, your troubles should vanish like magic. An- 
other good solution is to operate on the variables before 
using them. Any of these should work: 



DOPEN# 1 ,"FIU;n AME" 



Contintted on p. 94. 



32 / RUN SPECIAL ISSL'E 1987 



Get Your Money's Worth 

'EACH MONTH. , . THERE HAVE BEEN MORE AND 

MORE USEFUL TIPS, UTILITIES AND 

INFORMATION. . . TVE ALREADY GOTTEN MY 

MONEY'S WORTH OUT OF THE RRST FOUR 

ISSUES. THANKSr 

Larry B. Hlavsa. , .MN 



Increased Value 

Each month, more and more 
Commodore users find diat/^tW 
not only repays die low subscrip' 
tion cost, but actualiy increases the 
value of dieir computer, issue 
after issuel 

And why not* When ever)' 
issue oiRUN is packed with 
valuable programming tips, 
utilities and proven ideas dial 
make computing on your 064 
and C- 1 28 easier, more 
productive, and more fun. 







DISCOVER GEOS: SA ,^ 


CREATE A FRIENDLIER 


m 


AND MORE 


TII«a:EUCt[lUni.lTlt3; 


POWERFUL 064 


OW CHWWCTEB CENEHATOT 




OKKUmSLM 




C-ii EASY DISK-FM 


1*** 1 ■-- 


COMVERSBN 


HHHlMHlH^I^I 


PLUS: 


iHSP^^W 




refffECTPHNtlRRHHTK 




Many Exclusive Features 

In addition, RUN's Telecommunicadiig Workshop brings 
you all die latest developments in the fast-growing sphere of 
telecommunications for )'our Commodore, widi special em- 
phasis on eirtcient, error-free use. In the education area, 
RVN's exclusive Resource Center shows you the many new 
and exciting ways your Commodore can be used for educa- 
tion both at home and in die classroom. 

And when it comes to programs, no one brings you a 
wider range of helpful projects and programs you can put 
to use immediately for education, home and business appli- 
cations, managing your home finances, . , or just to take 
"dme out" with a delightful, imaginative game. 



>■ Better yet, « CAIX TOLL RREE 1-800-258-5473 (In NH, 

dial l-*)24-y47l) and get ittW working for you even sooner! 



Save Time • Save Moneyi 

li run's expert product reviews help 
you avoid even one mistaken pur- 
chase, you'll again save yourself 
enough to repay your subscription, 
not to mention time and hassle. And 
when you're ready to buy, you won't 
find a better marketplace Uian in the 
pages oiRUN. 

Save 44% Right Nowi 

Speaking of savings, you can start 
diose savings right now, by entering 
your RUN subscripdon at a full 44% 
off die cover priceljust complete die coupon below or mail the 
postpaid card opposite. Be assured of getting e\'ery issue of 
RUN, even' mondi to add value and enjoyment to every 
hour you spend ivith your computer. 



Y to, I want to start saving and add to my 
computing enjoyment every month! Send me the 
next 1 2 issues of RUN at the low Introductory Rate of 
just S 19.97 —a full 44% off the newsstand price! 

n Payment enclosed D Bill me 36SB3 



Name (Please Print) 



Address 



City 



State 



Zip 



Canada and Meaco, $22.97, Foresn surfaoo S39-97, i yea/ only US funds drawn 
on US banks R)feign airmail, $74.97. Please ariow S to S weeks for doltvcry, 

RUN • Box 954 • Farmingdale, NY 1 1737-9854 



Super Magic 



Several experts among our Commodore computing friends have contributed to this 
melange of useful little programs and other tid-bits. 



CrH reference guide clarifications— While preparing the 
Programmer's R^erence Guide far the Commodore Plus/4 with 
Sarah Meyer, I discovered a number of obscurities in the 
C-64 Programmer's Reference Guide. For instance; 

It's incorrect that a NOT operation (page 63) results in 
a two's-complement of a number. In fact, the result is the 
one'scomplement of the number. The NOT operator 
inverts each bit in a binary number. For example, 0000 
0000 0001 0010 is inverted to 1111 1111 1110 1101. The 
addition of 1 is required to get the two's-complement 
additive inverse, 1111 1111 1110 1110. Basic version 2.0 
uses 0000 0000 0000 0000 for a fiilse value, and 1 1 1 1 1111 
1111 1111 for a true value, so the statement NOT(A = B) 
is false when A equals B and true otherwise. 

Also, in a RND operation (page 80), only a nonnegative 
arguinent is a dummy. Any positive argument returns the 
next element of the current pseudo-random sequence. A 
argument reseeds the random number generator from 
the jiffy clock. A negative argument reseeds the generator 
using the value of the argument. Normally, a program 
seeds the generator once with a nonpositive argument and 
uses a positive argument thereafter. 

Following are two examples that demonstrate how the 
random number generator operates. The first statement 
results in the same sequence each time it is run: 

X = RND(-.4):FOR 1= 1 T0 4:PRINT RND(1):NEXT 

The next statement results in a different sequence 
each time; 

X = RND(0):FOR I = 1 TO 4:PRINT RND(1):NEXT 

Cyndie Merten 

Cyndie Merten, a founding member oj Dyadic Software Associates, 
has a tnaster's degree in mathematics from Temple University and 
luas previously a programmer for Commodore Business Machines. 

Traveling disk drives— Your 1541 or 1571, like any disk 

drive, is sensitive to movement. If you have to transport it 
any distance, it's important to take precautions. First and 
foremost, insert into the drive an old disk or the cardboard 
head protector that came with the drive and close the door. 
This will protect the fragile head alignment. 

Then, place the drive in its original box with the 
styrofoam packing, or surround it with styrofoam "pop- 
corn" in another box. If you move the drive often, you 
could build a special padded carrying case for it. 



Commodore "boom box"— You'll find that adding an 
inexpensive "boom box" or an independent speaker to 
your C-64 or C-128 will greatly enhance the sound it 
produces. Just get one with a phono input connector that 
matches the plug on the serial audio output wire, and plug 
it in. If you use a boom box, you can even disconnect your 
computer's sound system and take it to the beach! 

Jon Medek 

JonMedek, an assistant producer far Electronic Arts, is particularly 
interested in the music syntliesis and editing potential of computers. 
When he's not at a computer, he enjoys classic cars and comic 
books, and he's a performing musician. 

Ultra Hi-Res update— In February and May of 1986, RUN 
published a two-part article, Ultra Hi-Res Graphics, for the 
C-128 in 80-column mode. When using the Ultra Hi-Res 
program, I've found it helpful to redefine the function 
keys so as to enter the 80-column graphics commands more 
easily. To redefine the keys, enter the following statements 
in immediate mode or add them near the end of the boot 
program: 

KEY 1, "©GRAPHIC," 
KEY 4,"@DRAW," 
KEY 8,"@CLR," 

The listing below creates ultra hi-res patterns using the 
character fonts. 



1)3 
2(5 
3S) 
40 
50 
60 

70 
80 



IFCK=0THEN @CIRCLE,1 ,X+32 ,7+1 2 , 28 

60 

IFCK=1THEN @EOX,X+2,Y+2,X+62,Y+23 



REM ULTRA HIRES PATTERNS FROM CHARACTERS 

:REM*208 
^GRAPHIC ,0,2: @CLR , : FAST:TRAP1 1 : P = 

: REM* 7 2 

FORy=0TO1 99STEP25:FOR X=0 TO 63 9 STEP 64 

:REM*90 
12,0,3 
;REM=*92 
1 

; REM* 7 8 

IFCK = 2THEN gDRAW, X+2 , Y + 25 ,X + 64 , Y■^25 , 1 : @D 
RAW,X+6 4,Y+25,X+32,Y,1 : @DRAW,X+32 , Y,X+2 , 
Y+25,1 :REM*222 

IFCK=3THEN @DRAW,X-f 32 , Y , X+ 62 , Y + 1 2 , 1 :@DRA 
W,X + 62,Y+12,X+32,Y + 25,1 :(aDRAW,X+32 , Y+-2 5 , 
X+ 2, Y+1 2,1 :3DRAW,X+2,Y+12,X+32,Y,1 

:REM*202 
GOSUB120:@PAINT,X+32,Y+12,1 ,P(0),P(1),P( 
2),P(3),P(4),P(5),P(6),P{7) :REM*2 



34 / RUN SPECIAL ISSUE 1987 




_ PACKAGE 1 

C128 COMPUTER 
. C1571 DISK DRIVE 
*' C1902A MONITOR 
' MPSi200 PRINTER 



WORD PROCESSOR 
DATABASE SOFTWAR, 

w/1526 LETTER QUALIT\ 
PRINTER $990.90 



PRINTERS 



PACKAGE 2 

C128 COMPUTER 
, C1571 DRIVE 
Ci902A MONITOR 
2 FREE PROGRAMS 

(our choice) 

JOYSTICK " 

° $799.90 



COMMODORE HARDWARE 



CI 600 Modem .. . 
C 1660 Modem... 
C 1670 Modem... 
Ct 700 Expander. 
CT750 Expander . 
MPS120O Printer 



.$ 2S.90 
.$ 49.90 
.$149.90 
.$129.90 
.$169.90 
.$239.90 



PACKAGE 3 

64C computer' 
1541C DISK DRIVE 

VIC1525 GRAPHIC 

PRINTER 

2 FREE GAMES 

JOYSTICK 

$499.90 



w/1802 Monitor $679.90 



TIMEWORKS 



Data Manager 128 S 37.77 

SwUtcate i28w/Sideways..S 37.77 
Wordwrilert2aw/Sp«IICheck.$ 37.77 
Fanner 128 S 37.77 

All Four $149.90 

Data Manager S 27.77 

Word Wfitef $ 27.77 

SwidCalc S 27.77 

All Ttiree $139.77 



Oklmale 10 

Oklmate20.., 

Plug-N-Prim C64 ... 
Plt/g-N-Prinl Amiga . 
Panasonic t091 .... 
Panasonic 1080 .... 

Star NX 10 

Star SG IOC 

Okimate 120 

Epson LX 80 

Epson LX 85 

Epson LX 286 



ACCESS 



.$124,77 
.$134.77 
. $ 59.77 
, $ 69.77 
.$224,77 
.SI 99. 77 
.$239.77 
.$228,77 
.$224 77 
. $239.90 
.$369,90 
.$479,90 



VIC 1525 Graphics Pflntor .$ 99,90 
1526 Letter Quality Phnler $159.90 



f 802 Mom (Of __ 
1902A Monitor 



,JJ69,90 
-S289 90 



ACCOLADE 





MICROPROSE 


Acr.jjel 


$ 2077 


F15 Strike Eagle 


$ 1947 


Conflicl in Vietnam 


S 19,47 


QunsMp 


J 22 77 


Silent Service 


$ 24,77 



Dam Busters . . , 

Fighl Night 

Hardball 

Law o( the West 



.$ 17.90 
.$ 17.90 
.$ 17.90 
.$ 17.90 



Mach 5 S 23.77| 

Mach 128 S 29.7 

10th Frame S 23.77 

Leader Board $ 33 77 

Tournament Disks S 19 77 

Executive Tournamenl Disk S 14 77 



Multiplan S 39.90 

Movie Monster S 23.77 

Championship Wrestling . . . S 2377 

Super Cycle S 19.77 

Summer Games , $ 22.77 

World Games $ 23.77 

Fast Load $ 23.77 

World Karate Champ $17.90 



$ 22.77 
$ 23.77 
$ 23.77 

$ 17.90 



SUBLOGIC 



Jet 

Flight Simulator II 

Scenery Disks 1-6 ea, 

Scenery Disk 7-12 ea. 

Scenery Disks 6 Pack 



Spy vs. Spy 1 & 2 ; 

Dessert Fox 

Deceptor i 



All 3 for S28.00 



BERKLEY SOFTWORKS 



S 25.70 

,...$ 31.70 
. ea,$ 13.70 
. ea.$ 13.70 
. . . . $ 69.70 



GEOS , . 
Desk Pak , 
Font Pack , 



.$ 37 77 
. $ 20 77 
• S 19.77 



BATTERIES INCLUDED 



Consullant $ 35,77 

Paperclip $ 35.97 

Paperclip w/Spell $ 47.77 



"MUPPET PAD" 
By Koala Technologies . . S 19.77 



SPRINGBOARD 

Newsroom 

Certificate Maker 

Clip An I 

Clip Art II 

Clip An III 

Graphics Expander 



ABACUS 

Assembler Monitor 

Basic 128 

Basic 64 

Cadpak 128 

Cadpak 84 

Chartpak 126 

Chartpak 64 

Cobol 

Forth , 

Powarplan 

Quick Copy 2.0 

Super C Compiler 

Super Pascal 

T.A.S 

Video Basic 3 

XPEH 



Fleet System II 

Flisot System III 



.S 29.90 

. S 29 90 

. S 18 90 

.S 21.90 

.$ 21.90 

.S 24 90 



..$ 24,99 
. . $ 39.99 
. . $ 24.99 
..$ 39.99 
,.l 27.99 
,.$ 27.99 
, . $ 24.99 
..$ 27.00 
$ 26.90 
.$ 26.90 
.$ 14,90 
. $ 39.90 
,$ 39.90 
, S 39.90 
.$ 27.90 
. $ 39.90 



S 40.77 

s 47.77' 



PACKAGE 4 

64 C COMPUTER 
154K COMPUTER 
_ 5 GAMES 
2 JOYSTICKS 

$429.90 



JOYSTICKS & ACCESSORIES 



WICO The Boss $ 1077 

WICO Bat $ 14.77 

WKO 3 Way ....$ 18.77 

Kraft $ 6.77 

Recoton Big Shot $ 11.77 

5'A" Drive Cleaner i 

3V' Drive Cleaner $ 14.77 

CRT Cleaner $ 14.77 

C64 Cover S 6.77 

C128 Cover $ 7.77 

Drive Cover $ 7.77 

Prime Head Cleaner $ 7.77 



DIGITAL SOLUTIONS 



Pocket Writer-64 S 23.77 

Pocket Wnter 128 S 28.77 

Pocket Planner 64 $ 23.77 

Pocket Planner 128 $ 28.77 

Pocket Flier 64 J 2377 

Pocket Filer 12 S 2877 



BROOERBUND 



Karateita $ 17.00 

Printshop $ 25.90 

LIB 1/2/3 S 14.90 

Companion % 24 90 

Bank St, Writer s 32 ao 



SEIKOSHA 

V1000C 



•100% Commodore Compatible 
•120CPS Draft 
■40CDS N LQ 

$179.90^ 



SUPER SPECIAL 

PRINTM ASTER _ ' 

_ ART GALLERY I 
___ARTjGALLeRJJ|__ 
PRECISION 



Superbase 64 $ 47.77 

Superscript 64 $ 47.77| 

Superbase 128 $ 52,77 

I Supers cript 1 2B ^ . $ 52.771 

r MONTHLY SPECIALS 



botron 

md. Pac Man . 
Batllezone . . . 

Centipede 

Dig Dug 

Jungle Hunt.. 

Frogger 

OBen 

Popeye 

Calc Now .... 



. S 6.77 

. $ 6.77 

. $ 6.77 

. S 6.77 

. S 6.77 

.S 6.77 

, $ 6.77 

$ 6.77 

t 6.77 

.S 6.77 



ODDl'kV''^ OMV 



1-800-233-6345 



CUSTOMER SERVICE OR IN FLORIDA {305) 538-1364 
FREE FREIGHT ON ALL ORDERS OVER S100.00 



v^ 



Orders under S100.00 add S4.00 shipping and handling. COD. ofdofs add S4 00 prices rotloel a 3% cash discount. Add 3% lor VISA/MC AIWEX 
Personal checks allow 2 wks tor processing Prices Subjecl to Change Without Notice 
ORDERS RECEIVED BEFORE 12:00 PM WILL BE SHIPPED SAME DAY. Florida residenis add 5% sales Ian 



f^-r'^\a a-W> f 



I RAra^nr Qai"_'w 



EXFANDYOUR 
COMMODORE 10 
PERFORM LIKE 
NEVER BEFORE 



JusI pbg in the riiKil Coriridge. 
only $44.95 

Does NOT use exiHtiiiji memory 

The first «)[npk»t('l\' ixtcnuil (ipciiiliriK s\sk'iii t'rt'ated specifically for 
tlie Commodoi'c 1)4, MC and 11! S, 

rjjfiratles haixlwiire and software 

Tiiki's (lie |)l;icf of at least (i s(?|)ar;ilc devices. 1) DiskTUrbo-5/i»«i's 
/«!*;■ l<j;idinH m<i saviiiji: ^ ' lYcproKi-aiiiiufd I'liiiction Kej's-flirainatL' 

btii;- tt-'dious comm;md sequences 



^ for tiumy coimiiiinds, 3) Extended 
Macliinc LnwiaHt* Monitor-witli 
rctijc-atcd luad-scrolling up and 
down. I);inksvvi[i;hing, ;irni moa"; 
■I) I'riiiter Interface-prints all 
CiiintnalorL' jpiipliics plus siTeeii- 
(Innij) utility; 5) Brisic TikiI 

Iritw prii.k;rriin hliu-ks; with one 
tfiucti. Old recoN-en; aoideiitally-dclfti'd puii.T.iin^. Iicmimbmiit<. Find, 
Hfib debug; s>-stem. Disk /\l>pfiid adds new programs to existing files; 
6) Make backup copies of any soflwjtre program. 

Other Convenient features 

Fn-fxcr- 'lli sub inemis • color I'luuiKts • 4 resets • eentmnics/serial 
scrL'cnduinps • ptiiit \'ei;tor settiiiK • reverse pnnting • stops and con- 
tinues almost everj' pmRram • alltws total backup to disk or tape 
automaticallv • creates one file on disk or tape • freezes 4 to 6 limes 
faster than dedicated free^^ers • name killer 
Screendump Ciipabilit> -Prints lowre.4, high-res and multicolor • 
prints full pa^ • prints from games and more 
Keyboard Extrds-Delete pans of lines • move cursor 
operates your printer as a typewriter 

BOM'S; .Additional 2 IK extra RAM 

for basic profjrams 

10 Day Monev-back 
(luaranteL', I-^'ull 
year warranty 

SPECIAL! 

Commodore II Centronics 

printer cable -$19.95 

Payments to: 

H & P Computers 

• lJ;ii)k or Certified Check, Per- 
sonal Check, Money Order, 
Visa or MasterCard 
and C.O.D. 

• Add S5.00 for shipping 
and handling 

• NJ and NV residents add 
appropriate sales lax 

• Dealer inquiries welcome 






COMPUTERS 
OF AMERICA 

154 Vallej' Street, South Orange, New Jerse\' (ffOTy (^01) 7ti3-3946 



Listing cmitimied. 

90 P=P-fl :CK = CK + 1 :IF CK=4 THEN CK = :REM*192 
100 NEXT:NEXT;GETKEY AS: :REM*134 

110 ^TEXT;END :REM*38 

120 BANK14:F0R I=0TO7 : P{ I ) =PEBK( 53248+I+P*8 
): NEXT: BANK! 5: RETURN :REM*236 

Louis R. Wallace 

Louis R. Wallace has written software for both the C-!28 atid the 
Amiga. He is the co-author of Ultra Ht-Res Graphics. 

A bizarre dude — To get C-64 Basic programs up and 
running faster, use the following format for ihe Save 

statement: 

SAVE" < name, eievcti or less characters l(jiig> <sliifl/space> 
<Commodore/DUDE>",8<retum> 

"Commodore/DUDE" means hold down the Commo- 
dore key while you type DUDE, Laler, when you want to 
load the program, load the disk directory and list it. Then 
position the cursor to the left of the program you saved 
using this method and press the shift and run/stop keys 
simultaneously. Presto! 

To rename an existing DUDE file, type in: 

OPEN 15,8,1 S,''R():< new name> <sliiflJspace> < Commodore/ 
DUDE> = <iild iiame>" CIXJSK If). 

P&ul Grace 

Paul Grace, an assistant producer for Electronic Arts, has been 
involved with computing since 1979. He currently programs on a 
C-64 and an Amiga, 



Easy ellipses— R. West, in his book Programmirig Ifie PET/ 
CBM, includes a particularly efficient algorithm for draw- 
ing ovals or ellipses. The trigonometric calculations are 
performed only once, outside the drawing loop. 

The listing below is a variation on West's algorithm that 
has been modified to work W4th RUN Basic 1.0. It draws a 
polygon with a Tdegree change in direction at each vertex. 
Because the sides of the polygon are so short and each 
angle so large, the result appears as a rough ellipse. The 
shape of the ellipse is determined by the horizontal and 
vertical radii (xr and yr, respectively), so by varying tliese 
values, you can make the curve appear more — or less — 
circular. 

100 HIRESO , 1 :GCLR : PENl : PENDOWN 

110 PI=3.141 59265 

120 XR=50:YR=25:AN=1 :A1 =0:A2=359 

130 XC=160:yC=100:RD=Pl/ieO 

140 N=360/AN:P1=A1/AN:P2=A2/AN 

150 PC=AN*RD:MY=YR/XR 

160 CS=COS(PC) :SI=SIN(PC) 

1 70 PH=YR*C0S(AL*RD1 :PV=XR*SIN( AL*RD) 

190 F0RJ=P1T0P2 

200 PX=PH*CS-PV*SI 

210 PY=PH*SI+PV*CS 

220 MOVXYPX+XC,MY*PY+YC 

230 PH=PX: PV=PY : NEXT: F0RT=1 T02 500 : NEXT 

240 TEXT 



Better number-rounding— If you need rounded numbers 
for, say, plotdng graphs, you have undoubtedly used the 



36 / RUN SPECIAL ISSUE 1987 



Circle 410 on Reader Servica card. 



INT funciion to calculate them. However, because INT 
converts negative as well as positive fractions to tlic next 
lower integer (for instance, - 1.4 to - 2), the results of your 
calculations may be wrong. The following subroutine 
corrects this problem, making negative (and positive) 
values round to the nearest integer, which is what you 
normally need: 

10 INPirr-ENTER A NUMBER";X 

20 V = SCNf5CriNT(ABS(X) + 0.5) 
30 PRINT V 

Elizabeth Deal 

Elizabeth Deal is a computer programmer, consultant and writer 
vntk experience on Commodores ranging from the PET to the C-128. 



First things first — An Apple computer version of the 
sorting program below appeared in the 1986 edition of 
Vt^at Color Is Your Parachute?, a popular seifhelp book 
about job huiUing, RUN'S New Products Editor, Harold R. 
Bjornsen, appealed to me to modify the program to work 
on Commodore computers. So, I converted it to run 
flawlessly on any model Commodore. 

What sets this sorter apart from others is that you, not 
the computer, assign the priorities to the items within a 
list. You can use the program to quickly establish a 
hierarchy of items whose names contain any combination 
of characters, numbers and graphics symbols. The program 
instantly displays how many times you gave a selected item 
priority over another. 

To keep the program as short as possible, I didn't 
include a printer option, and long item names will have 
a tendency to scramble the screen display, 



10 

15 

20 
25 
30 



PRINT' 

DONE." 
N=K+1 : PRINT: 



PRINTTABd )N; 



35 
40 

45 
50 
55 
60 

65 

70 



75 



80 



85 
90 
95 



DIMT{200) ,T$( 200) : PRINT" {SllFT CLRJENTER T 
HE ITEMS YOU WANT TO PRIORITIZE" :REM*5 

PRESS RETURN WITHOUT AN ENTRY WHEN 
" :REM*90 

INPUTT$(N) :IFT 
:REM*161 
GOTO! 5 :REM*24 

N=N-1 :REM*143 

FOHC=1TON-1 :F0R0=C+1T0N:PRINT"{SHFT CLR) 
" : PRINT" 1 " ;TAB ( 4 )T$ ( C ) : PRINT"2" ; TAB ( 4 ) T$ 
(O) :REM*44 

PRINT"CHOOSE 1 OR 2" :REM*67 

GETKES:IF(VAL(KES)<1 )OR(VAL(KE$) >2)THEN4 

REM*182 
IFVAL(KE$)=2THEN55 
T(C)=T(C)+1 :GOTO60 
T(0)=T(0)+1 
NEXT:NEXT: PRINT" SORTING.. .":FORI: 



REM*105 
REM*168 
REM*143 
1 TON : FO 

RJ=1T0N-1 :IFT(J) c=T{J+1 }THEN70 :REM*238 
A=T(J}:A$=T$(J) ;T(J)=T(J+1 ) :T$(J)=TS(J+1 
) :T( J+l )=A:T$( J+1 }=A$ :REM*69 

NEXT :J}EXT: PRINT" {SHFT CLR} " : PRINTTAB ( 5 ) " 
{CTRL 91ITEMICTRL 0)",,"(CTRL 9 } NO . OF O 
CCURANCES(CTRL 0)":PRINT :REM*134 

F0RK = >JT01STEP-1 : PRINTT$ ( K )TAB( 2 5 )T{ K) :T{ 
K)=0:NEXT :REM*5 

PRINT" {CRSR DN){CRSR RT ) ( CTRL 9 } R { CTRL 
} TO RE-EVALUATE": PRINT" {CRSR RT}[CTRL 9 
)U{CTRL 0) TO USE AGAIN" : PRINT" { CRSR RT} 
{CTRL 9}N{CTRL 0) TO END" : REM* 70 

GETS$:IF S$=""THEN85 :REM*1 27 

IF S$ = "r"TIIEN30 :REM*44 

IF S$="u"THEN N=0:RUN :REM*33 



1571 DOS Shell trick — If you need to copy files such as hi- 
res screens and word processing documents, the 1 57 1 DOS 
Shell disk is invaluable. The only problem is that if the 
disk to be copied was formatted on one of certain third- 
party disk drives, your 1571 might not be able to read it. 
The cure is to boot up the DOS Shell, and, at the "D.O,S. 
SHELL ON Fl KEY" prompt, enter: 

OPEN 15.S,15J'R1NT#15,"UO>MO":CLOSE15 < return > 

Then place the disk to be copied into ilie drive and press 
the Fl key to activate the DOS Shell. 

RUN Script sentence detector— Many RUN readers are now 

using RUN Script 2.40, the latest version of RUN'S own 
word processor, on their C-I28s. There's a trick you can 
do with this program that will let you jump from sentence 
to sentence at blinding speed. To perform this feat, load 
a document into RUN Script 2.40 and press the F2 key. 
Then enter a period followed by a space and press return. 
Finally, place the cursor at the Ijeginningof the document, 
hold down the F2 key and watch what happens! 

The space after tlie period prevents the program from 
detecting decimal points within numbers. Of course, for 
this trick to work, you must insert a space at the end of a 
paragraph between the period and the return. ■ 

Tim Walsh 

Tim Walsh is RVN's technical editor. He holds a bachelor's degree 
in computer science from Franklin Pierce College in Rindge, New 
Hampshire. 




ih- 



FULLY ARMED TERRORIST SPACE STATION 
lOLDS AMERICA HOST/ 



ainst QotHl Terronsm X-15 AlFHA A«SgON"tor CommodW (M\7& rs an innovalivf 

Venture in fiigtn. The cJeUtled insJnjmcntaeo and six Icifrii □( qame play wdl ch.iltoic)r 

I ven tfw most (saymed aeev A* few « today at bctttr loftwan dealcn miywhcn. 

TO Onoei DIECI: (Ma b| \/H*m VISVMIUIERUWO/MHE) l-tOMM-MU OT7M . <<i Iwi l-aHO-M^-TStt 

BO. jMDiimiiswtiKii' 

JrHUMmu 

>M MSOLUTE 

r-IW.P.OBn 

I, II7«!. 




Cfinimo*re $4 jml 1?fl jra iraumarls %\ Cwmwdort flKlmBj 1 1...,,. 
K-IS ALPHA MISSION- jrnl ABSMIlTt tNItRIWNMf MI* m IriUwwhs ol 
A&MLUIEENrtRMINMENT- INC. '^^ISM flBSfliUIt tNIEniAINMENr- INi 



Ciicle 416 on fieaoer Sefvce caid. 



ABSOLUTE! 

I N r I K I AtH Mi NTg 

RUN SPECIAL ISSUE 1987 / 37 



SPECIAL EDITION! 




mmm' fmu 7/mcfi 









Packed with productive applicatiom for your C-64 
and C-128, including many never-hefore-puhlished! 



No matter how you and your fam- 
ily use your C-64 or C-128, you'll 
make short work of your most chal- 
lenging computer projects with FRO- 
DUCTWrrYPAKB-the blockbuster 
sequel to last year's best-selling Produc- 
tivity PaW 

Here, on a ready-to-run disk, you get 
more than a dozen top-rated progfams for 
Word Processing. . .Telecommunica- 
tions, . .Database Management, . . 
Spreadsheet Calculating ^mturingthe 
pofndar DatafUe Serm) . . , PLUS Edua- 
tion, Graphics and Utilities. 



To get your PRODUCTIVnY PAK E disk with 
ajully illustrated documfntation hookUt and 
loading instriKtms, complete the order form be- 
ImorV QILL TOLL FREE l-8m-258-S473 
(lnNH,diall-924-947I). 

YES! I want to increase my prodiicliviiy 
with ReRlWi new PRODVCTmTY PAK U. 
Please send disk and booklet at $21.47. 
(Includes postage). 

n Payment enclosed D Amcx □ Visa D MC 



Card # 



Exp. Due 



SignaLure 



Addrm 



Cilv 



Suite 



Zip 



'Coniinodori 64 ind 1!8 arc regUtcftd mdemub of 
Commodore Buiinesa Machines [nc 

RtRun • ElmSlrnt • Prirtboiouth SH OMSt I-97SI 



FOR THE «4. 



THE DATAFILE SEftlES ] Here's the 

newest version (3.6) of the most popu- 
lar database management program 
ever published in RUN, now fully up- 
dated exclusively for this special ReRun 
by the author, Mike Konshak! Includes 
MEAFILE, DFPRINT, and DFCALC! 

"One fantastic piece of wortd" 

—Frtd Burkhart 
"Simpler to use and moie flexible than most of 
the 'commerml' pragramsl" 

-P. Kirkpalrick 



m^flt »t\4 riLt OJIT PEOGEAn 
UB EECOKD TO CUEEERT FILE 

aotitfv BECgnci tR catKKS riLC 

KLOE EECOED IN CUEBCNT flLE 

BiEU OR t»iT ntr 

HDET EECSIES >V TIEiB 
IpIKI RECDMS US] MB trfltlNT/VrCltLC 
OtM (tO»l» nm FILE FEOtl PISK 
UEIIE ($»UE> CUEREMT FILE TO DIEK 
■ Bl» MINE CniHUItS H S »1KECTMV 



RUN SCRIPT 64 \ Here's power and 



nexibJiiiiy in a word processor, writ- 
ten by RUN'i noted programmer, 
Robert Rockefeller. Now totally up- 
dated with more than 100 features 
and options! 



RVNTERM PLUS \ (With ,\utcKiialing)- 
The hit teletoiiimunications pro- 
gram lets you tap into infinite 
sources of information including 
CompuServe, Delphi and The 
Source. And now it can be used with 



^^^^^^nptii.i 




autodialing and a wider choice of 
modems including the 1650, and die 
1670— plus other 1650 compatibles. 

Dm backup] a handy disk utility 
that permits you to make copies of 
ynur Prmiurlivily Pak U disk, 

A graphics 



COHSTRUCTiOn SET 



utility that helps yon create 6 con- 
secutive scrolling background 
screens. Great for creating adven- 
ture games! 

tOGO fOR yJDil A super LOGO 



language using Turtle Graphics de- 
signed especially for children. 

This disk utility displays 



\Mim u 



all programs on your disk and lets 
you run them with ease. 



...AND FOR YOUR C.128 



RUN SCRIPT US The 128 version of 



the iKjpiilar RUN SCRIPT word pro- 
cessor by Robert Rockefeller. Features 
a full 80 columns, larger text files, 
plus graphics capabilities, 

GRADEBOOK 128 | A valuable class- 



room management tool for teachers. 
The all-purpose 



REMINDER US 



"desktop accessory" that puts your 
memos and appointments at your fin- 
ggrtips. 

[MENU UB] This menu program lets 
you automatically run your 128-mode 
programs. 



STOLL FREE 800-258-547 3 



Mind Your Mortgage 

Get acquainted with the details of your mortgage, and maybe save some numey, 
with Loan Analysis 128. 



By ROBERT KUPFER 




If you're planning to purchase a 
home or refinance the one you 
have, you need all the information 
you can get to make sound mortgage 
decisions. Such information can also 
be helpful with the mortgage you 
have, by revealing how much the loan 
is really costing you and liow you 
might be able to save on it. 

Loan Analysis 128 will tell you 
everything you need lo know con- 
cerning the payments, interest rate 
and repayment period on a mort- 
gage. It will also provide a nionihby- 
month amortization schedule for the 
life of the loan, which, in addition to 
the items mentioned above, will in- 
clude your cumulative in teres i, cu- 



mulative equity and a breakdown of 
your montlily payments into interest 
and principal portions. Ac the end of 
every year, the program will calcu- 
late the amount of interest you paid, 
which is important for tax purposes, 
and the amount of equity you built 
up for that year. 

Loan Analysis 128 will work on any 
fully amortized loan for which inter- 
est is calculated on the remaining bal- 
ance. This covers just about all loans 
diat are eurrendy offered by llnancial 
institutions. 

A Sample Loan 

After you've typed in the program 
and saved it to disk, make sure you've 



set your monitor to 80 columns, then 
type RUN. Now, let's say you're buy- 
ing a home for $100,000 and are con- 
sidering an n.5 percent mortgage 
over 30 years. Enter these figures 
when the program asks for them, 
being sure not to include any com- 
mas. Then a display will appear that 
includes the loan amount, interest 
rate, monthly payment and total cost 
of the loan over its life span. These 
calculations are done in Fast mode. 

Then tlie program will ask if you 
want to see an amortization table. For 
tliis example, press Y. The screen will 
clear and an amortization table for the 
first 12 months of the loan will be cal- 
culated and dis])layed. The sum of 
the two columns marked INTEREST 
PAYMT and EQUITY PAYMT equals 
y<mr monthly payment. Note that, for 
quite a few years, the interest portion 
of the payment greatly exceeds the eq- 
uity portion. To get die next year's am- 
ortization schedule, press the return 
key; press any otlier key to quit. 

Loan Analysis 1 28 is designed to be 
used with an 80-column RGB monitor 
or a 40column monitor with one of 
the special cables being offered by 
third-party vendors. However, you can 
use the program with 40 columns if 
you're willing to do without .some of 
the amortization table displays. I 
would suggest leaving off the dis- 
plays for TOTAL, CUM INT and 
CUM EQUITY. 

A Money Saver 

You might want to use the amorti- 
zaUon table to determine how to re- 
pay your loan sooner. Perhaps you 
could save Uiousands of dollars in in- 



IIXUSTRATED BY GWYN STUAMUER 



RUN It Right 



cm 



RUN SPECIAL ISSUE im I 39 



terest, while paying little additional 
money each month. For example, say 
you're about to make payment num- 
ber 5 on your loan. Make out a check 
for that payment as usual, then check 
the amortisation table to sec wiial the 
equity portion of payment number 6 
is. Make out a separate check in that 
amount, and print on the back of the 



check, "To be used toward principal 
only." Enclose this check with the reg- 
ular payment for month 5. 

When you're ready to make pay- 
ment number 6, send in the full 
amount as usual, plus a separate check 
for the equity portion of month 7, 
and so on, as long as there is any 
principal balance outstanding. What 



of the principal that the interest Is 
you're doing is reducing the amount 
calculated on, thus reducing the total 
cost of the loan and the time it'll take 
to pay it €}ff. (bI 

Address alt author correspondence to 
Robert E. Kup/er, PO Box 1036, Stur- 
bridge, MA 01566. 



Listing 1 . Imh Amljsis 128 progrm. 



100 

110 

Mi) 

130 

140 
150 

160 
170 
180 
190 
200 
210 
220 
230 
240 



250 
260 
270 
280 

290 
300 
310 
320 

330 
340 
350 
360 
37 
380 
390 
400 
410 
420 
430 
440 



SCNCLR:F0RX=1T01 1 : PRINT:NEXT: PRTNTTAB( 2 
6)" {CTRL 2}**** LOAN ANALYSIS-1 28 ****" 

:REM*214 
SLEEP2:IY=12:IR=0:IE=0:I=0:IS=0:TE=0:TN 
=0:TP=0:Y=0 :REM*60 

SCNCLR:PRIHT"AMOUNT OF YOUR LOAN INCLUD 
ING FEES" ; ;INPUTAM: IFAM< =0THEN1 20 

:REM*252 
PRINT" ENTER INTEREST RATE (EXAMPLE: ENT 
ER 13% AS 13)";:INPUTIR:IFIR<=0THEN1 30 

: REM* 7 4 
INPUT"NUMBER OF YEARS OF LOAN" ; Y:IFY< =0 
THEN140 :REM*65 

FAST:P = AM+( (IR/1200)/( 1 - ( 1 / ( 1 -l- { IR/1 200 ) 
HUP ARROW) {Y*12) ) n :REM PAYMT EACH MON 
TH :REM*94 

P=(INT(P*100+, 5) )/100:REM ROUNDS (P! TO 
2 DECIMAL PLACES :REM+106 

SCNCLR: PRINT" {CTRL 9 (AMOUNT OF LOAN IS: 
{CTRL 0}";" $";AM:PRINT :REM*96 
PRINT" {CTRL 9) ANNUAL INTEREST RATE IS:{ 
CTRL 0)";IR;"li":PRINT :REM*36 

PRINT" (CTRL 9) NUMBER OF MONTHLY PAYMENT 
S:{CTRL 0}";Y+12:PRINT :REM*180 
PRINT" ( CTRL 9 ) MONTHLY PAYMT . AMOUNT : { CT 
RL 0)";" S";P: PRINT : REM* 30 

PRINT" {CTRL 9 (TOTAL REPAYMENT AMT. : {CTR 
L 0(";" $";P*(Y+12) :REM*220 

PRINT:P=P*(Y*121-AM:P=(INT{P*100+,5( ) /I 
00 ; REM* 5 8 

PRINT"(CTRL 9)T0TAL COST OF LOAN: (CTRL 
0)";" $";P :REM*92 

PRINT : PRINTTAB ( 21 ) " ( CTRL 9 ( DO YOU WANT 
AN AMORITIZATION TABLE Y/N{CTRL 0(" 

: REM* 6 4 
GETG$:IFG$=""THEN250 :REM*20 

IFG5 < > " Y"THENCLR : SLOW : SCNCLR : END • REM+77 
SCNCLR :GOSUB770 ;REM*41 

IP=Y*12:IR=IR/12 00:XF=(1-(1+IR) {UP ARRO 
W( ( -IP} ) /IR:0A=AM:R = AM/XF : REM* 21 1 
IV=(R+.005)*100:R = IV/100 : REM* 17 
1=1+1 :PI=AM*IR:IV=(PI+.005)*100:REM*125 
PI=IV/100:PE=R-PI:IFI=IPTHEN390:REM*221 
TN=TN + PI:TE = TE + PE:TP=TP■^R:II = II + PI:IE=I 
E-t-PE :REM*149 

GOSUB590 :REM*197 

IFI=IYTHEN440 :REM*169 

AM=AM-PE :REM*3g 

IFIS = 1TI[ENST0P :REM*29 

GOTO300 : REM* 61 



GOTO330 

IS = 1 

00=OA-TE- 

R=R+00 

PE=PE+00 

GOTO32 

IY=IY+12 



PE 



REM*11 9 
REM*153 
REM*231 
REM*11 5 
REM*221 
REM*153 
:REM*65 



450 
460 
470 
480 

490 



51 
520 

530 
540 
550 
560 
570 
580 
590 
600 
610 



.005:11=11*11 



)5:IE=IE*1| 



II=II+. 

00 

IE=IE■^. 

00 

I$=STR$(INT(II) )+". 

PRINT" {CRSR 
NT" INTEREST 



0:II=1NT{II) :II=II/1 

:REM*179 

0:IE=INT{IE);IE=IE/1 

:REM*199 

"■•■RIGHTS (STR$( 11*1 00 

: REM* 4 3 

DN({CTRL 4 (YEAR j^";I/12:PRI 

PAID THIS YEAR-- ";II 

:REM*253 
I$ = STR$( INTtlE} (■f".'VRIGHTS(STR$( IE*1 00 
),2) :REM*45 

PRINT" EQUITY PAID THIS YEAR-- "IE: PRINT 

:REM*201 
II=0:IE=0 :REM*63 

PRINTTAB(16 ("PRESS RETURN TO CONTINUE - 



:END 



ANY OTHER KEY TO STOP"; PRINT 
GETA$: IFA$=""THEN530 
IFA$<>CHR$( 1 3 )THEN580 
GOTO560 

IFISW= 1 THENCLR : SCNCLR : SLOW 
SCNCLRtGOSUB770:GOTO350 
CLR : SLOW : SCNCLR : END 
G0SUB61 0:GOTO600 
RETURN 
AM=AM+.005:AM=AM*100:AM=INT(AM) 



620 R=R+ 
630 



?)0:R = 



5:R=R*1 

PI=PI'K.005:PI=PI*100 

005:PE=PE*100 

TN^TN^i^ . 005 : TN=TN*1 00 

00 

TE=TE-|. . 005 : TE=TE*1 00 

00 

TP=TP+.005:TP=TP*100 

00 



:REM*1 44 
:REM*216 

:REM*68 

; REM* 98 
:REM*204 

: REM* 30 
: REM* 124 
:REM*250 
:REM*148 
;AM=AM/1 

: REM* 8 4 
INT(R(:R=R/100 

:REM*202 
0:PI=INT{PI(: 



PE=INT(PE( 
TN=INT(TN) 
TE=INT(TE( 
TP=INT(TP( 



PI=PI/1 

:REM*1 26 

:PE=PE/1 

:REM*146 

:TN=TN/1 

:REM*192 

:TE=TE/1 

:REM*32 

:TP=TP/1 

: REM* 80 

PRINT" {COMD 2("TAB{4-LEN(STR$(I( ()I; 

:REM*238 
PRINT USmG"H§§#K##§. if it" -.Al^; :REM*248 
PRINT USING" If ft H If lt» if. IIH"',R; :REM*224 

PRINT USING" M If H naif if .If ft"; Pi; :REM*250 

PRINT USltlG"itiliUHilflf.llll";PE; :REM*244 

PRINT US im" mi iHta a ti.fi If "ii'N; :rem*42 

PRINT USlUG"^fllfil§fi§#if.lfif";rE} :REM*130 
PRINT USING"//###^##(Sl#.##";TP :REM*214 

RETURN :REM*52 

PRINT" { CTRL 4 ) PAYMENT" TAB ( 9 ( "OUTSTAND" T 
AB ( 20 ( "GROSS"TAB ( 29 ( " INT"TAB ( 39 ( "EQUITY 
"; :REM*67 

PRINTTAB ( 50 ("CUMU"TAB( 61 ("CUM" :REM*17 
PRINT" NUMBER"TAB ( 9 [ "BALANCE"TAB ( 20 ) " PAY 
MT"TAI3( 29 ("PAYMT"; :REM*251 

PRINTTAB ( 39 [ " PAYMT"TAB ( 50 ) " INT" TAB ( 61 ) " 
EQUITY"; : REM* 8 7 

PRINTTAB (74 ("TOTAL" :REM*93 

FORXX=1T079: PRINT"-"; : NEXT: PRINT 

:REM*185 
RETURN : REM* 12 31 



640 ?£=?£■•■ 

00 
650 

660 

670 

680 

690 
700 
710 
720 
730 
740 
750 
760 
770 



780 
790 

800 

81 
820 

830 



40 t RUN .SPKCIAI. ISSUE 19S7 






^^amm 



Value-Soft 

9513 S.W. Barbur Blvd. B-56 
Portland, Oregon 97219 
DEALERS WELCOME 




Kor ORDERS only 
1— 80 —54 4— SOFT 

OREGON CALL, 1-503-245-0924 
ADD $2.00 S & H. Visa and HC gladly, 




CARTRtOCE PORT CONVERTER 
COMMODORE 64 t 12S COMPUTERS 



. OUILT-m -WAFlli KESET* SUTTOH WILL ELlHI 

N*TE TUHNINO POWEfl OFFION TO BESET 

. PHHALLEl. EKPANSIOH WHT ON LBOWS 

atCKSIDE *LLCWS SiUULI*NEO(JS H*n& 

WARE £ $OrrWAf*E ACCESS. 
. VeHTICAL CARTBIOaE f>0«T MAKES 
CAHTRiOQE U&E MLKH CASIER. 



NO MORE STRESS ON THE COUPUT. 

EH SPHINTEO CIRCUIT BOARD FROM 

THE PRESSURE OF PLUGOINO IN 

CAHTRIQGES SINCE LSOW PUTS 

IT ALL ON THE TABLE TOP. 



DELUXE *2 9. 9 5 

AB SHOWN IN INrO-«4, THE SH I TCHAILE L ' BDH. TMO CARTRIDUES 
PLUQQED IN AT THE SAME TIHE, SUITCH FHOH ONE tO THE OTHER 
PLUS A BUILr-tN 'HARM RCBET' BUTTON. TOR THE Ct2e OR C64, 



OMl 



ER 



CUTS A 

PRECISION SO JAR E 
NOTCH IN THE DISKETTE 
AT EXACTLY THE BIOHT SPOT 



SO THE "FLIPStDE" CAN BE USED. 




128 CABLE 

MMV BUY A NEH HON I TOR 7 
4D OR ao CDLUnNS ON THE 
CIZB. nONOCHRDnE OUTPUT 
WITH SOUND. PLUQS IN. 

$9 . 95 



THE 

BLfiCK 
BOOK 



C 128 



REFERENCE 
BOOK $15 . 95 

THE BEST TRIEttP A C13B OWNER EVER 
HAD. COVERB THE CE4, 128, CPR 3.0 
IS41 AND 1971 DISK DRIVE. 

Z&l PAQEB, 7S EAST TO KEAD CHARTS 
AND TABLES. NO UASTEO rASES. EACH 
CHAPTER COLOR CODED, ALWAYS FIND 
WHAT YOU NEED. THINK OF THE BLACK 
BOOK AS A DICTIONARY, ALWAYS READY 
TO ANSWER YOUR OUEETtONS. 



MONITOR SWITCH 

THIS IS THE SWITCH YOU HAVE ASK TDK ! ', : : 
SHARE ONE HDHITOR BETWEEN TWO CONPUTERB. 
FLIP THE KNOB AMY TIME AND CHANGE OUTPUT 
THE BOX HAS Z, SPIN CABLES, ONE TO EACH 
COHPUTER PLUS A B PIM SOCKET FOR HDNITOR 
FOR THE C64 OR C12B. 




$39 . 95 



POWER CENTER $59 . 95 

EMI FILrEfiiNG ^u LI6HTED ROCKER SWITCHES 

15 All BREAKER j^f MASTER QN/DFF SHITCH 

SURGE PROTECTION "^"^ HEAVEV METAL CASE 



1 



□ 



INCLUDES A SHITCH FOR COHPUTER, MONITOR, PRINTER, AUL 1 
AND 2. PLEASE INCLUDE $5.00 SHIPPING FOR THIS ITEM. 



PROTECTION 
REVEALED 



$19 . 95 



BDLVE THE TUtlLES OF flOFTWADE PROTECTION. FOR AUTHOR OR NEW 
USER. BECOME A HASTE* OF ILLUBION. LEARN HOW TO PROTECT OR 
UN-PROTECT YOUR BOrTWARE. iNCLUDCE BASIC PROSRAH SECURITY. 
LEARN HOW CONPILERS, HALF TRACKS ETC, EFFECT A DISK.RCVEALB 
NVBTtCAL SECRETS OF THE C-S4.B00K IS 141 PASES. A FREE DISK 
OF 21 UTILITY PROORAHa ARE INCLUDED. fHE BOOK IS UR I TTEN AT 
A LEVEL A BESINNEK CAN UNOEKBTAND, 



BRAND X 



$19 . 95 



BRAND X Ce A DISK CATALOBER. 4,000 FILES OR 100 DISKS. ADD 
SAVE, ETC. IDENTIFIES 14 FILE TYrEB, PRINT LISTS IN 1 2 OR 
3 COLUNNS, PLUS LABELS. ENO OtSK CONFUSION WITH BRAND X. 



VIDEO LOG 



$19 . 95 



VIDEO LOU S4 CATALOBS HOVlEi YOU HAVE SAWED ON VIDEO TAPE. 

l,00O FILMS, OR 2S0 TAPES, PRINT LIST OF TITLES, DR LABELS 

FOR TAPES. LIBT BY TAPE NO. /FILE HAHE. DATA SAVED INCLUDES 

I TITLE, START/ENI), LENSTH, PLUS CATESQRT. 



CABLES & ETC - 

6 FT. i PINDIN, MALE BOTH ENDS PART I B6S $6.95 

9 FT. 6 PIHDIN, MALE BOTH ENDS PART » B63 $8.95 

19 FT 6 P[«DIN, HALE BOTH ENDS PART I C618 $16. 95 

i FT. & PINDIN, HALE/FEHALE PART t ASB $6.95 

5 FT. HONITOR, 5 PINDIN/* RCA PART I D56 $9.95 

6 FT, MONITOR EKTENSIQH, 5 PINDIN PART I ESB $6.95 
6 FT. HONITOfi EHENSIOH, 8 PINDIN PART • t618 $6.95 
6 FT. CENTRONICS, HALE/HALE PART t C6HH $14.95 
6 FT. CENTRONICS, HALE/FEHALE PART t C6Hf $14.96 
B FT. RS232, 25 PIN, HALE/HALE PART t 6625 $14. 95 
9 FT. 6 PINDIN, KALE RIGHT ANGLE/HALE PART I R69 $9.95 
100 SILVER WRITE PROTECT TABS PART I TAB $1. 49 
lOO WHITE DISK SLEEVES PART t DSl $5.95 
B PIECE JEWELERS SCREW DRIVER SET PART I 5CB $4.95 



PARALLEL A/B SWITCH 

36 PIKS SWITCHED, FEMALE CONNECTORS, GOLD CONTACTS, HI6K 
QUALITY PUSH BUTTOK SWITCH $44 . 9 5 

RS 232 A/B SWITCH 

25 PINS 5UITCHED, DB 25 CONKECTQRS, HIGH QUALITY PUSH 
SUTTON SWITCH $44 . 9 5 



SUPER SWITCH $79.95 

4 COMPUTERS TO I DEVICE FOR SCHOOL OR BUSINESS 




i> — SAVER SWITCH 

THE • BAVER SWITCH COHHECTS TWO CDHPUTERB TO ONE PRINTER 
OR DISK DRIVE. BETTER YET, SHARE YOUR BlltUE ANO PRINTER 
BETWEEN TWO COMPUTERS, LIHK 1 PRIHTEttS TO ONE COMPUTER. 
FLIP A SWITCH FROM ONE DEVICE TO ANOTNER. NO ALTERATIONS 
ON EXTRAS NECOED, PLUB8 IN IN SECDNOS. 



$29 . 95 



MODEL l...COn(B WITH TWO t PINDIN FEMALE SOCKETS AND ORE 
4 FT. £ PINDIN MALE CABLE 



MODEL 3. ...COMES HtTN THREE • PINDIN FEMALE SOCKETS. 
BE USED WITH MOST PRINTER INTERFACES 




NEW 

METAL 

BOX 



OiCs 421 ofl R-aade' S«<vi-n caro 




The Light Choice 

Highlight your programs with easy-to-choose menus. 



By BOB GUERRA 



These days, practically all com- 
mercial computer programs are 
memt-driven, but different pro- 
grams provide different ways to select 
the option you want. Some have you 
enter the first letter of the option, 
such as P for print, S for search or Q 
for quit. Others number the options 
and ask you to enter the number of 
your choice. 

For most Basic programmers, these 
two methods liavc become stand- 
bys. A sliglnly more sophisticated ap- 
proach uses a joystick- or mouse-con- 
trolled arrow to point to the option, 
but this approach has to be written in 
inachine language to make the arrow 
travel snioothly and quickly around 
the screen. 

A third method, possible to code in 
Basic with utily a litde more effort 
than the letter and number systems, 
is the moving highlight. Here, the op- 
tions are displayed across a command 
line at the top of liie screen, and you 
use the left/right cursor key to make 
the highlight move from option to 
option. Wlien the higlilight covers the 
option you want, you press the return 
key to send execution to that routine. 
Altliough the moving-highlight 
method requires as many or more 
keystrokes for making a selection as 
Uic first-letter method, it turns out tc) 
be faster (especially for non typists), 
because you always press the same 
key to make a choice. Another advan- 
tage of this approach is that it gives 
programs a polished, professional 
appearance. 

Also, when you program a moving- 
highlight menu for the C-128 in 80- 
column mode, llicre's plenty of room 



across the top of tlie screen for menu 
items, and the Window command 
makes it easy to create "puJI-down" 
submenus from the main selections. 

Gtt Routines 

Here's how the highlight system 
works. As the menu is initially dis- 
played, the first option (on the left) 
appears in reverse lettering, and the 
rest are in normal lettering. This 
makes the first option look high- 
lighted. A Ciel routine wails for you 
to press either the left (CHR$(29)) or 
right (CHR$( 1 57)) cursor key, so it can 
decide whether to move the highlight 
to the next option on the right or 
jump it to the last option on the right. 

What actually happens when the 
highlight "appears" to move is that 
the two options involved are rewrit- 
ten—die one that was originally in 
reverse lettering is rewritten in nor- 
mal lettering, and vice versa. Because 
the rewriting happens so quickly, it 
looks like the highlight changes po- 
sition. Once you've moved the high- 
light, a second Get routine made for 
the new situation is executed. 

To make the whole sy.stem work, a 
separate four-line Get routine is 
needed for each of the menu items. 
These routines reside in lines 5()-,^20 
of the demonstration piogiam in List- 
ing 1. The first line of each routine 
gets the siring variable XS, checks to 
see if its value is CHR$(29) (cursor- 
right) and, if it is, rewrites the two 
options and sends execution to the 
appropriate routine. If the value of 
XS isn't {;HRS(2«)), execution falls 
through to the second line to sec if 
X$ equals CHRSCI57) (cursor-left). 



Again, if it does, the options are re- 
written and execution goes to the ap- 
propriate routine. 

If XS isn't CHR$(!.fi7), execution 
proceeds to the third line, where the 
variable is checked for CHRS(1 3), the 
return key. If it is, execution branches 
to that part of the program named in 
the menu option that was highlighted 
when you pressed return. 

If you didn't [)ress an appropriate 
key, execution falls through to the 
fourth line, which loops hack to the 
first line to gel X$ all ovei' ag-ain. Thus, 
the program ignores all keystrokes 
other than cursor-right, cursor-left and 
return. An advantage to using multi- 
ple Get routines is diat they enable you 
to hold down the cursor keys and rap- 
idly cycle thrtmgh the various menu 
choices in either direction. 

Pull-Down Menus 

You can create pull-down sub- 
menus by defining a small screen win- 
dow in the area directly below a main- 
menu choice, then listing the options 
in a column within the window. This 
time the highlighted option is the 
only one iiot written in reverse, and 
the program checks the keystrokes for 
GHR$(145) or CHK$(17) (cursor-up 
or cursor-down). 

To sec an example of a pull-down 
menu, select option 4 in the main 
menu of the demonstration program. 
The code for this submenu resides in 
lines 4000-4200 of the lisdng. When 
you're programming pull-clown menus, 
remember to clear and redefine the 
window immediately altera selection 
has been made. 

Although highlight-type menus are 



42 / RUN SI'KCIAL ISSUE 1987 



RUN It Right 



cm 



usually associated with productivity 
applications and utilities, they work 
equally well with games, and if the 
game you write is largely joystick-con- 
trol led, you can easily use it to move 
the highlight and make selections. In- 
stead of getting a keystroke and check- 
ing to see if it was a cursor key, you 



check the status of the reserved vari- 
able— JO Y(l) orJOY(2), depending 
on which port the joystick is using. 

A value of 3 means the stick has 
been moved to the right, and a value 
of 7 indicates a move to the left. A 
value of 128 or higher means the fire- 
button — which has the same function 



as the return key — has been pressed. 
If you wanted to allow botli keyboard 
and Joystick selection, you certainly 
could combine both methods. [BJ 

Address all author correspondence to 
Bob Guerra, 7 Russell SI., Oiarleslown, 
MA 02129. 



Listing 1. H^Hghldmmlratmprt^am. 

S FAST : REM* 4 3 

10 SCNCLR:PRINT"{CTRL 9)CH0ICE UCTRL 01", " 
<" "CHOICE 3", "CHOICE 4", "CHOICE 



CHOICE 2' 



'CHOICE 6", "CHOICE 7" 



:REM*112 



2(i PRINT" {CTRL 8H67 COMD Ts){CTRL 9) [2 SPA 

CEslMAIN MENU {2 SPACES } {CTRL 0)" : REM* 58 

30 FOR I=1T021 :PRINT:NEXT :REM*10 

4i) PRINT" (CTRL 9) (COMD 3)12 SPACES ) <CRSR > T 

O SELECT (2 SPACES] <RETURN> TO EXECUTE (41 

SPACES} (CTRL 0HCTRL 4j"CHR$(19) 

:REM*168 

45 Z$ = CHR$(29) :Y$=CHR$(1 57 J :C$=CHRS (1 3 ) :F$ = 

CHR$(145) :SS=CHRS(17) :REM*ni 

50 GETX$:IFX$=Z$THENPRIKT" {CRSR UP}CH0ICE 1 

"/'{CTRL 9) CHOICE 2 (CTRL 0)":GOTO90 

:REM*128 
60 IFX$=Y$THEK PRINT" (CRSR UP}CHOICE 1"TAB( 
60)" (CTRL 9] CHOICE 7 (CTRL 0]":GOTO290 

:REM*1 42 

70 IFX$=C$THENY=1 :GOTO 1000 :REM*40 

80 GOTO50 :REM*36 

90 GETXS:IFX$=Z$THENPRINTTAB(10)"{CRSR UP}C 

HOICE 2 "/'{CTRL 9) CHOICE 3 {CTRL ) " : GOTO 

130 :REM*78 

100 IFXS=Y$THEN PRINT" (CTRL 9 ) { CRSR UP) CHOI 

CE 1 (CTRL 0)"/'CEtOICE 2":GOTO50 :REM*22 

110 IFX$=C$THENY=2:G0T0 1000 :REM*88 

120 GOTO90 :REM*108 

130 GETX$:IFXS=ZSTHENPRINTTAB(20)"(CRSR UP) 

CHOICE 3" /'{CTRL 9) CHOICE 4 (CTRL 0)":GO 

TO17 :REM*0 

140 IFX$=Y$THEN PRINTTAB{10)"(CTRL 9) {CRSR 

UP) CHOICE 2 {CTRL 0)" /'CHOICE 3":GOTO90 

:REM*16 

150 IFX$=C$THENY=3:G0T0 1000 :REM*136 

160 GOTO130 :REM*138 

170 GETX$:IFXS=ZSTHENPRINTTAB(30)"{CRSR UP) 

CHOICE 4" /'{CTRL 9)CH0ICE 5 {CTRL 0)":GO 

T021 :REM*128 

180 IFX$=Y$THEN PRINTTAB ( 20) " (CTRL 9} (CRSR 

UP) CHOICE 3 {CTRL 0)" /'CHOICE 4":GOTO130 

: REM* 16 

190 IFX$=C$THEN4000 :REM*126 

200 GOTO170 :REM*242 

210 GETXS:IFX$=Z$THENPRINTTAB(40)"{CRSR UP] 

CHOICE 5" /'{CTRL 9) CHOICE 6 (CTRL 0]":GO 

TO250 ; REM* 50 

220 IFX$=Y$THEN PRINTTAB{ 30 ) " {CTRL 9) (CRSR 

UP] CHOICE 4 (CTRL 0]" /'CHOICE 5":GOTO170 

: REM* 88 

230 IFX$=C$THENB=5:GOTO5000 :REM*1 88 

240 GOTO210 :REM*194 

250 GETX$:IFXS=Z$THENPRINTTAB(50)"{CRSR UP) 

CHOICE 5" /'(CTRL 9)Ci!0ICE 7 (CTRL 0]":GO 

TO290 :REM*228 

260 IFX$=Y$THEN PRINTTAB ( 40 )" {CTRL 91 (CRSR 

UP) CHOICE 5 {CTRL 0)" /'CHOICE 6":GOTO210 

:REM*143 
270 IFX$=C$THENB=6:GOTO5000 :REM*237 
280 GOTO250 :REM*43 



290 GETX$:IPX$=Z$THENPRINT"{CTRL 9) (CRSR UP 

jCHOICE 1 (CTRL } "TAB { 60 ) "CHOICE 7":G0T 

050 :REM*117 

300 IFX$=Y$THENPRINTTAB(50 )" (CTRL 9} {CRSR U 

PICHOICE 6 (CTRL 0]"/'CHOICE 7":GOTO250 

:REM*21 5 

310 IFX$=C$THENB=7:GOTO5000 :REM*29 

320 GOTO290 :REM*1 47 

1000 SCNCLR:PRINTTAB(30)" (CRSR DN}BRANCHING 

TO CHOICE "Y:GOTO8000 :REM*119 

4000 WINDOW30,1 ,39,8:PRINT"{CTRL 9) {11 SPAC 

EsKCTRL 0) OPT ION A (CTRL 9) {2 SPACES ]0 

PTION B(2 SPACES) OPTION C{2 SPACES )OPT 

ION D{2 SPACEs)OPTION E{n SPACES) (6 C 

RSR UPs]" :REM*205 

4010 GETX$:IFX$=S$THENPRINT"{6 CRSR UPs){CT 

RL 9) OPTION A{2 SPACES] (CTRL 0]OPTION 

B":GOTO4050 :REM*105 

4020 IFXS=F$THENPRINT"(6 CRSR UPs){CTRL 9) 

OPTION A (3 CRSR DNs] (CTRL 0]OPTION E 

":GOTO4170 :REM*243 

4030 IFXS=C$T[!ENLETA$="A":GOTO 4900:REM*221 

4040 GOTO4010 :REM*213 

4050 GETXS:IFX$=S$THENPRINT"{5 CRSR UPs)(CT 

RL 9) OPTION B(2 SPACEs){CTRL 0]OPTION 

C":GOTO4090 :REM*253 

4060 IFXS=F$THENPRINT"{5 CRSR UPs) {CTRL 9] 

OPTION B (2 CRSR UPs) {CTRL 0} OPTION A 

":GOTO4010 :REM*179 

4070 IFX$=C$THENLETA$="B":GOTO 4900 :REM*69 

4080 GOTO4050 :REM*125 

4090 GETX$:IFXS=S$THENPRINT"{4 CRSR UPs){CT 

RL 9} OPTION C(2 SPACES) (CTRL 0)OPTION 

D":GOTO4130 :REM*157 

4100 IFXS=FSTHENPRINT"(4 CRSR UPs) (CTRL 9) 

OPTION C (2 CRSR UPs) {CTRL 0)OPTION B 

":GOTO4050 :REM*58 

4110 IFX$=C$THENLETA$="C":GOTO 4900:REM*174 

4120 GOTO4090 ;REM*40 

4130 GETX$:IFX$=S$THENPRINT"{3 CRSR UPs]{CT 

RL 9) OPTION D(2 SPACEs){CTRL 0)OPTION 

E" :G0T041 70 :REM»1 68 

4140 IFX$=F$THENPRINT"{3 CRSR UPs) (CTRL 9) 

OPTION D (2 CRSR UPs) {CTRL 0)OPTION C 

":GOTO4090 :REM*n 4 

4150 IFX$=CSTHENLETA$="D";GOTO 4900 :REM*24 

4160 GOTO4130 :REM*1 58 

4170 GETX$:IFX$=S$THENPRINT"(2 CRSR UPs]{CT 

RL 9) OPTION E (5 CRSR UPs) (CTRL 0]OP 

TION A":GOTO4010 :REH*222 

4180 IFXS=F$THENPRINT"{2 CRSR UPs) (CTRL 9) 

OPTION E (2 CRSR UPs) (CTRL 0]OPTION D 

":GOTO4130 :REM*188 

4190 IFX$=C$THENLETA$="E":G0T0 4900:REM*128 

4200 GOTO4170 :REM*70 

4900 WINDOW0,0,79,24,1 :PRINTTAB(30)"{CRSR D 

N) BRANCHING TO OPTION "A$:GOTO8000 

:REM*75 
5000 SCNCLR:PRINTTAB{30)"{CRSR DN)BRANCHING 
TO CHOICE "B:GOTO8000 :REM*15 

8000 GETKEYX$ :REM*191l 



RUN SPECIAL ISSUE 1987 / 43 



NX-10C $2191 

• 120 CPS Draft Mode 

• 30CPSNLQ 

• Push Tractor Kit 




WKmstUoismB:{§i§9Mum¥im 



LYCO 

COMPUTER 

Marketing 

and 

Consultants Inc. 



rSMOOOVC $165 

• 1 00 CPS Draft Mode 

• 20CPSNLQ 

• Direct Connect c-64/1 28 



micro nici-ific 




PRINTERS 



STAR MICR0N1CS 

NXIOc 219 

LVIZ.IO(New) . W5 

NL-10 259 

NX10 209 

NB15 939 

SG-t5 . .CALL 

SD 15 . . 3B9 

ERIO . .395 



0K1DATA 

OdlmaieZO ST 199 

?92 449 

293. sas 

IMJNLQ 225 

182 . 814 

192* 365 

193* 559 



EPSON 



uces . . . 

FX8S . . . 

DX10... 

EXSOO . 
EXIOOO. 

Hsao 

F«M . 

LOWO. 

LO1000. 



2?9 
359 
149 
499 
699 
CALL 
479 
. . S29 
729 



CITIZEN 

120-O 
MSP-10 
MSP 15 
MSP.20 
MSP-2ri 

Premif>r 35 . . 

"Whilo thsy lasll" 



179 
285 
3B5 
326 
485 
CAIL 



INTERFACING 

ORANGE MICRO 

Gr.ipplt"-' CD .69 

XETEC 

Siipei Graphix 64.64 

Super Graphix Jr. . . .64.45 

TYMAC 

Connect 1 0(1 49 

DSI 

ppi 44.9;) 

SILVER REED 

EXP -IMP 309 

EXP COOP 469 

EXP BOO P 64& 

EXP 770 740 



PRINTERS 



PANASONIC 

joeot 199 

10911 269 

\Vn\ 279 

1592 419 

1595 549 

3131 249 

3151 SAVE 

108AP1K: 239 

JUKI ^.,, 

JgkieiOO CALL 

Juki 5510 ...CALL 

Juki 6300 CALL 

RS-232 se-iaiboard 55 

LEGEND 

BOB 159 

1080 199 

1380 ?S9 

1385 289 



SEIKOSHA 




SP-tOOO Acenlrnnies 


1B5 


SP-1000 VCiE-64) 


185 


SP-IOOO IBM 


1B5 


SPIOOO ASnS.232 


185 


SP-1000 AP. APIIc 


1S5 


BP.13O0 


469 


aP.52M 


04 a 


BP-5J?0 


999 


Colo' K1I 


119 


BP 54P0 Mbbofi 


1?50 


SP-1000 riBtXjn 


B50 


TOSHIBA 




321 p;s 


.479 


351 shwl feeder 


. 529 


p 34 1 P 


.BE9 


p 341S 


.099 


P351+ 


999 



^^^^H^ 




^ ■!■ , - 


"" ' 


^' '^^HH 


r^i^ 


I^M.'^^^ 1 






iiw(?nt[MV 

All ourj-oinirxl.ae faclory frujift 
I * Kfuo 5hif)()in(] on pitspnltl (:;isii 

ordons. 
I* Comjiaro our prices 
I* E:Eiay toll fmc access, 

Air freifjht service avoilabl'- 

I* :L'4hr sMippmoonm-slock ii' 
OlfwrCOn With no df [XV..; 
Widnal ntilifcllonof nnew.! hi ■ ' 
Ijrodugt!! 

I* Full mf^i wflirnnly nppliuE.. 
Couitouii.'i ^nj OKporionced slaH 
Tr;iin(:(l <nj9[o<Tior gervice depl. 



3V 


.DISKETTES 




MAXELL 


; SSDD 


9 99 


1 DSOD. 


12 99 




BONUS 


SSDD 


6.99 


DSOD 


.7 50 




SKC 


SSDD 


8.50 


DSON 


9.50 



MODEMS 

SUPRA 

SuD'ii nc-*. ■'■'t95 

COMMODORE 

1670 129 



In PA 717-494-1030 
Customer Service 71 7-494-1 670 




EPYX 
(Amiga) 

Apahai' Tulogy 
Rougo 

Winiyr Games 

SUB LOGIC 

(Amiga) 

Fligtll SimulalOr CALL 



MONITORS 

COMMODORE 

1902Co'o' 
I602C 



B 



or Bene} order to 

Lyco Computsr 

P.O. BoK 5088 

Jersey Shore. PA 

17740 



HOURS 

Mon.Thur— 9 AM-8PM 
Frl-9 AM-fiPM 
Sal — 10 AM -a PM 



RISK FREE POLICY 

In slKlt liems shipped wtlhin 24 hours or order No depo5!t on C.0.0. orders. Free 
shippBirig on prepaid cash orders witnin the continenlat U.S. VoSume dscounis availa- 
ble PA fesidenis add sales tax APO FPO and mternaSional orders add S5 00 piuS 
3'^ (or prioniy mail service Advertssed prfCes show 4% discounr (or cash, add 4% 
tor MasterCard and Visd Personal ch&cKs rKiuire4 weeJ^sdP'.^ance befofeshipp'rig. 
We do noj guarantee compaiibiJiiy W© only ship (actory fre: . i merchandise. Ask about 
UPS Blue arvd Red label shipping AM merchancft$e earned uridflf manu!aclurer's 
warranly Return resincupn applicable. Relurr^ authoriialion tequifed. All items subioci 
to change wtlhoul notice 



TOLL FREE J -800-233-8760 



LX'86 ■ $229 

• 1 20 CPS Draft Mode 

• 16CPSNLQ 

• 1 year warranty 




LYCO 

COMPUTER 

Marketing 

i and i 

Consultants Inc. 



10801 $199 

• 1 20 CPS Draft Mode 

• 24CPSNLQ 

• Word Processing 

• Friction Feed 



EPSON 




Panasonic 

Industrial Company 



Ct commodore 



COMMODORE 

laS 249 

1571 . , . 239 

64-C ,, , tra 

15J1C... ,85 

C 1902.A 289 

C 1350 Mouso . . 33 

C 1700 128 K BAM ion 

C 1750 512 K RAM . . ,99 

OEOS 33 95 

Jane ... 35 

Perfect Wriiar 4595 

Perfect Gale CALL 

Perfect Filer ■-..4595 



MICROLEAGUE 



Baseball . . . 
Gen Mgr 
Stal Cornpller 



I1ATTERIE5 



2^75 
24 76 
ia.7S 



INCLLIOED 



Con sultan I 
Paperclip wf spell ph 
Paperclip II 



32 95 

48.95 
(NEW) 



HI TECH 

Ca-dware 8 95 

Partyware 8.95 

Hsartware 8.95 

Ware wtth All 12 SS 

Holiday Paper a 95 



Mews room 
Clip Art 1 
Clip An 2 



(C-64) 



32 75 
18.75 
24 75 



ACTIVISION 



(C-64} 

Hacher IS.75 

Hacker II 20.76 

Llltle People OT.75 

Game Maker 24.75 

Library 

Sports 13.75 

Scl Fi 13 75 

Nlusic Sludio .2275 

Basketball. .22.76 

Tass TImos 2^.75 

Rocky Horror IB. 75 

Spin brlly 1B.75 

Baseball . 2i 7S 

TIIWEWORKS 



Data l^gr 

Silicate 

Worriwrjler 
A/Payable 
A/Peceivatile 
General Ledger 
Invert! pry 
Payroll 



.42.95 
42.95 
42 95 
35 95 
38.95 
38.95 
3a. 95 
38 95 



JOYSTICKS 

Bal handle 
Boat 

SMP«r 3-way 
TAC-3 
Slick Slick 
Economy 
Black Max 
Epy« 500XJ 
TAC 10(Ap. IBM) 

FIREBIRD 

(C-64) 

Elite 
Tracker 

The Pawn 



16 75 
11.99 
19 99 
9 95 
6 95 
5 95 
895 
1495 
22 95 



ZZ.75 
28.75 
28 75 




SSI 

Cornpuier BasebaU ^4,&b 

Fighter Comarnd . . 34.75 

GerrsionG Warrior . 14.95 

Wizards Crown . . . . 24.75 

Gettysburg . 34.75 

Gerttstone Healer . . 24.75 

PhantasiP . - - 2'J-75 

gjyiJi)LDGIC 

Fiigtii Simulator . . . . 29.95 

Jel Simulator 29.95 

Fooiball 25.95 

Scenery Disk EA 14.95 

Sel 1-6 69.95 

Baseball 32.75 



XETEC 

Pont Master II 64 32 95 



INFOCOM 

Lealhor GodrJess 20.75 

Moon MiSt 20.75 



MicroProse 



F-15 

Sitenl Service 
Gunship 
Top Gunner 



21.95 
21 95 
21 95 
16 95 



"^Bradettund. 



Printstiop 
Graphic Ltb EA 
P.S. paper 
Bank Si. Writer 12flK 
CarrTt^n Sandiego 

Karate1<a 

PS. Comp 
Science Kit 



2976 
15 75 
12.95 
42.75 
22.75 
. 22.75 
24.75 
35 95 



SPECIAL PACKAGE PRICES! 



epfx 




tC-64) 




Moyie Monster . 


24.75 


Vorpol Kit 


22.75 


Fast Load 


. 24.75 


Sumrrier Games II , . 


24,75 


Super Cycle ... 


. 24 .75 


World Games 


2il.75 


Fooiball 


.24.76 


Mulli Plan 


. 36.75 


Winlor Gomes 


24.75 


Karate Chninp .... 


. 20.75 


Destroyer ... 


24,75 


Wrestling 


23.75 


ACCESS 




Leader Board 


. 24.75 


Tournament Disk 1 


16 


76 


Eioculivo Disk 


15 


75 


Aclion Pak ... 


16 


76 


Mach 128 


29 


75 


lOIti Frririio 


24.75 


PRINTER SUPPLIES 


1000 9V!«11 white (aier 


19.95 


200 9'.'iitt white laiar 


595 


3000 9'/!iiil while 


29.95 


1000 9'.^iii 1 whno 


16.95 


1000 Mailing labels 1x3 


6.95 


DISK STORAGE 


Fl.p.N-Filc 10 


2 49 


Fl.p.hJ.Filo25Lock 


10 95 


Fl.p.NFilo50 Mini 


10 95 


Fl.p.N.Filo 50 Lock 


16 95 


FliB-NFilo ROM 


7 99 


EASr MAINTENANCE 
FOR TOP PERFORMANC 


FI 



DISK DRIVE 
CLEANING KIT 

sa.95 



COMMODORE 128Z system 






1571 DRIVE 



THOMPSON 365 1 2 VIC 

* 14" Composite & RGB 

* Graon tout switch 

* 40/80 column 



128 KEYBOARD 



$699.00 



C'l64 COMPLETE PACKAGE 








1 541 C DRIVE 



HITACHI 1406 



64 KEY BOARD 



* 13" Color Composto 

* Buill in SpoaKor 

* Wild Cable 



$525.00 



Add/Calc-128 

Using this program for arithmetic cakulatums turns 
your C-128 into a printing calculator. 



By GEORGE mETH 

This little calculator program, 
written in Basic 7.0, is designed 
to tnrn your fancy new C-128 sys- 
tem into a rather simple printing cal- 
culator. I wrote Add/Calc-128 to learn 
about Basic 7.0, so I used as many 
commands as possible, as well as the 
80-column screen and the numeric 
keypad. As a profrramming challenge, 
I also avoided the Peeks and Pokes I 
normally use. 

When you run Add/Calc-128, it first 
asks if you Intend to use the printer; 
respond Y or N. Then a screen ap- 
pears, displaying two windows and 
the progiam instructions. 

Press a number on the numeric 
keypad. You'll hear a tone and the 
number will appear in the left win- 
dow. If it's a negative number, it'll be 
in red. To clear the window, press the 
F5 key. If you make a mistake entering 
a number, hit the F5 key and then 

Listing 1. AMCak-}28 pro-am. 

9D 



reenter the number. 

Pressing the + key moves the num- 
ber to the right window, clearing the 
left window in the process. As the 
right window Fdls with figures, they 
scroll vertically out of the window, 
with the most recent entries remain- 
ing in view. 

To total a column of figures, press 
the return key after the last entry. To 
multiply two numbers, press the Fl 
key after the first entry, then the re- 
turn key after the second. For in- 
stance, the proper entrj' sequence for 
multiplying 25 by 50 would be 25, Fl, 
50, return. The sequence for divi- 
sion is similar, except you press F3 in- 
stead of Fl. 

The program retains the result of 
an operation to use in the next. For 
example, if you press the + key after 
taking a sum, that sum will appear on 
the screen as the first entry for a sub- 



sequent multiplication. 

How did 1 like the new Basic 7.0? I 
was really impressed. This progi'am, 
as simple as it is, would have been 
much harder to create on many other 
machines. 

If you're interested in exploring 
Basic 7.0, you might begin by adding 
some enhancements to Add/Calc-128. 
There's plenty of room for improve- 
ment, because it lacks most of the 
features of the more sophisticated 
printing calculators. It could use mul- 
tiple memory keys and a percent 
key, for instance. Whether you're an 
old pro or a novice like me, I'm sure 
you'll find the C-128 and Basic 7.0 
an extremely versatile and easy-to-use 
combination. SI 

Address all author correspondence to 
George Noeth, 2781 Fort Island Drive, 
Akron, OH 44313. 



FAST : FORI = 1 TOS : KEYI , CHRS (1+132): NEXT : PRI 

NT" (CTRL 4)"; : REM* 40 

TC=53:TR=2:BC=71 :BR=22: Z=1 :REM*228 

00 PRINT" {SHFT CLR){4 CRSR DNs}{5 CRSR RTs 

ICCTRL 9) (2 spaces} CALCULATOR FOR CT 28 

IN 80 COLUMN MODE" :REM*228 

05 GOTO! 300 :REM*95 

10 PRINT" [CRSR DN){7 CRSR RTs) (CTRL 9){2 S 

PACEs)KEYl10 SPACES) FUNCTION (2 SPACES )" 

;REM*220 
spaces) A 
:REM*90 
SPACES )S 
:REM*32 
SPACES) 
REM*138 

spaces) 

REM*! 26 

spaces) 

: REM* 40 
SPACES) ENTER (7 SPACE 



20 
30 
40 
50 
60 
70 
20fS 
210 

220 



DN } 1 1 
DN ) { 1 
DN){10 
DN ) { 1 
DN){10 
DN ) { 1 



SPACES)-!- {11 
SPACES) -{11 
SPACEs}F1 {10 
SPACEs}F3{10 
SPACEs]F5{10 



PRINT" {CRSR 

DO 

PRINT" {CRSR 

UBTRACT 

PRINT" {CRSR 

MULTIPLY 

PRINT" (CRSR 

DIVIDE 

PRINT" (CRSR 

CLEAR ENTRY 

PRINT" {CRSR 

S)=/TOTAL :REM*188 

PRINT" {HOME}"; :PRINTTAB ( 50 ) ;"{CTRL 9) (2 

5 spaces)" :REM*202 

FORX=1TO22:PRINTTAB(S0)"{CTRL 9) {2 SPAC 

Es){CTRL 0){21 SPACES) {CTRL 9) {2 SPACES 

){CTRL 0)":NEXT :REM*152 

PRINTTAB(50)"{CTRL 9) {25 SPACES) {CTRL 

)" :REM*196 



230 
240 

250 

255 
260 

270 

280 
290 
300 
310 
320 
330 
340 
350 
360 
370 
500 
51 

51 5 
520 



PRINT" (3 CRSR UPs]{10 SPACES ) {CTRL 9} (2 
3 SPACES) {CTRL 0}" :REM*20e 

PRINT"{10 SPACES) {CTRL 9) (2 SPACES) {CTR 
L 0){19 SPACES) {CTRL 9) {2 SPACEs){CTRL 
0}" :REM*252 

PRINT" {10 SPACES) {CTRL 9} {23 SPACEs}{CT 
RL 0)" :REM*170 

PRINT"{CTRL 2)"; :REM*217 

WINDOW 12,22,36,22,1 :PRINT"{4 SPACEs)"; 

:REM*167 
GETKEY A$:B$=B$-i-A$:S0UND1 ,15000,1 : IF AS 



C(A$)>57 THEN300 
IFASC(A$) <48 THEN300 
PRINTA$; :GOTO270 
IFA$ = "-f"THEN500 
IFA$=" ."THEN290 
IPA$="-"THEN600 
IFASC(A$)=13 THEN 700 
IFASC(A$}=137 THEN 8^0 
IFASC(A$>=133 THEN 900 
IFASC(A$)=135 THEN 1000 
S0UND1 , 1 000 , 5 :GOTO270 
WINDOW TC,TR,BC,BR 
FOR SP=1T0Z:PRINT"{CRSR 



;REM*23 

:REM*69 

:REM*239 

:REM*231 

:REM*175 

:REM+255 

:REM*1 55 

:REM+65 

:REM*75 

:REM*147 

:REM*1 03 

:REM*17 

DN}"; :NEXT 

;REM*163 
IF VAL(BS)=0THEN B$=LP$ :REM*131 

PRINT USim"HliHitit#tfHlf #•»!>" ;VAL(B$ ) :MSG= 
VAL(B$):MSG$ = " ":GOSUB1200:Z = Z-t-1 :LPS = B$ 
:IF 2>20THENZ=20 :REM*146 



RUN It Right 



C-128 (in 8(kolumn mode); printer optimtd 



46 / RUN Sl'KClAL ISSUE 1987 






ANNOUNCING THE THIRD ANNUAL 



/^^ /^^ .y^"N 



Special 
Issue I 






4%A 



Hi^W^- 



BACK BY POPULAR DEMAND! The jam- - 

packed sp ecial issue that's become a legend M ' v 

among Commodore C-64 and C-128 users. . . "^^ " 

The first RUN Special Issue is a collectors' item. The 
second was an instant sell-out. And now the fantastic 
1987 edition — the best yet — is yours for the incredible 
priceof just $3.95. 

This year's Special Issue is a veritable treasure house 
of tips, tactics, hints, hovv-to's, free programs, and 
more to increase your productivity with the world's 
most popular computers. 

The 1987 RUN Special Issue is sure to sell out in a 
matter of days. So order early to reserve copies for 
yourself and your friends. Whether you're a beginner 
or an experienced Commodore user, you'll add new 
excitement to your computing adventure with — 

Commodore Clinic. Over 200 answers to your 
most-often-asked questions on hardware, software, 
programming, and applications. Everything you've 
ever wanted to know and weren't afraid to ask! 



utvJ^- 



250 "Magic" Tricks — including the best tricks of 
1986, and a gold mine of never-before- p ublished 
hints and tips developed especially for this issue. . . 
All indexed and organized by topic! 

Sensational, ready-to-run short programs you'll use 

again and again. Powerful utilities. Applications for 
the home user. Programming aids, and more. For 
both C-64 and C-128 owners. 

• Superstars. Some of the top names in the world of 
fcjC\J^\ Commodore computing — programmers, authors, 
^ developers — share their favorite and most useful 
hints and tips. Put their savvy to work for you! 

■ Plus a vaiiiabEe INDEX of already-published RUN 
programs and articles for quick reference. 



[^' 



AA 




LIMITED EDITION-DONT DELAY! 

This RUN Special Issue won't be reprinted once it's 
sold out. Hurry and order your copy. . . and order 
a couple for friends. Look for the convenient reply 
envelope in this issue. For faster service, call 
n 1-800-258-5473. (In NH, dial 1-924-9471.) 



FREE! 




ONLY $3.95 (the best deal in town!) 



YES! 



Giant 21" x 30 " Pull-Out Wall 
Chart eliminates searching through 
manuals! Instant access to valuable 
programming information. 
Memory maps. Machine-language. 
Assembly-language, and more. 
Updated for '87 . . . and yours 
FREE with each Special Issue! 



Please rush mc copies of the Third Annual RUN 

Special Issue, with my FREE Pull-Out Wall Chart. 1 am enclosing 
$3.95 for each copy that I order, 

n Check Enclosed 






VISA 



[IK 






I Card ff 
I Signature 
I 



Exp. Date 



Name 



Address 



City State Zip 

Canada & Mexico S4. SO. i'orcign Surface S5.50. US funds drawn on US bank. Foreign 
Airmail, S9.50. Orders will begin shipping in December. 1M6. 

CW Communkations/Petcrborough, Elm St.. Pelerborough, NH 03458 



^ 



Listing I continued. 

530 T=T+VAL(B$):B$="{2 SPACES} " :GOTO260 

:REM*194 
6f>0 WINDOW TC,TR,BC,BR :REM*118 

et)5 PRINT" {COMD 3}"; :REM*83 

610 FOR SP=1T0Z:PRINT"{CRSR DN}";:NEXT 

:REM*8 

615 IF VAL(B$)=0THIi;N B$ = LP$ :REM*231 

620 PRINT USim"Hiftl»UHIfH)iftJttf"rVkHm}:t^SG= 

VAL( B$) :MSG$="-" :G0SUB1 200: Z=Z+1 :LP$=B$ 

:IP Z>20T!iENZ = 20 :REM*42 

630 T=T-VAL(B$) :B$="(2 SPACEs } " :PRINT" {CTRL 

2}";:GOTO260 :REM*ig8 

700 WINDOW TC,TR,BC,BR:IF MU=1 THEN 910 

:REM*40 
705 IF DV=1 THEK 1010 :REM*199 

710 FOR SP=1T0Z:PRINT"{CRSR DN}";:NEXT 

:REM*1 08 

720 PRINT USinG"§ll§§§KltKiHf.iil(";T," T":MSG=T 

:MSG$=" T":GOSUB1200:Z=Z+2:LP$=STR$(T) : 

IF Z>20THENZ=20 :REM*1 90 

730 T=0:B$="{2 spaces)": PRINT :GOTO260 

: REM* 9 6 
800 B$="":GOTO260 :REM*173 

900 WINDOW TC,TR,BC,BR :REM*163 

910 FOR SP=1T0Z:PRINT"(CRSR DN1";:NEXT 

:REM*53 

920 M=VAL(B$):IF ASC{ A$ ) =1 3THEN970 :REM*89 

930 IF M=0THEN M=VAL(LP$) :REM*19 

940 PRINT USlNG"H§Mlt§MHt!fHi .§#" rVi," X":MSG=M 

:MSG$="X":GOSUB1200: Z=Z+1 : IF Z>20THENZ= 

20 :REM*105 

950 IF MU=0 THEN T=M:MU=1 :B$=" {2 SPACEsr':G 

OTO260 :REM*25 

960 T = T*M:B$ = "{2 SPACES I ":GOTO260 :REM*83 

970 PRINT i:SlNG"lfl)§ff§§#itHif.MH";n:KSG=t^:MSGS 

= " ":GOSUB1200:Z = Z-(-l :IF Z>20THENZ = 20 

:REM*225 



980 T=T*M:MU = 0:B$ = "(2 SPACES J " :G0T0 700 

:REM*129 
WINDOW TC,TR,BC,BR :REM*7 

FOR SP=1 TOZ : PRINT" {CRSR DNJ";;NEXT 

:REM*153 
D=VAL(B$) :IF ASC(A$)=1 3THEN1 07 0: REM* 19 
IF D=0TIIEN D=VAL(LP$) :REM*167 

PRINT USIHG"lf§llil§H#§§fl.lfii";D," /":MSG = 
D:MSG$="/" :G0SUB1 200: Z=Z+1 : IF Z>20THEN 
Z=20 :REM*244 

IF DV=0 THEN T=D: DV=1 :B$=" {2 SPACEs}": 
GOTO260 :REM*178 

IF D=0 THEN T=0:PRINT"ERROR":B$="{2 SP 
ACEs)":DV=0:GOTO260 : REM* 19 

T=T/D:BS="{2 SPACEs)":GOTO260 :REM*150 
PRINT USING"#|if#######/if.^#";D:MSG = D:MSG 
$=" ":GOSUB1200:Z=Z+1 :IF Z>20THENZ=20 

:REM*146 
IF D=0 THEN T=0:PRINT"ERROR":B$="(2 SP 
ACEs}":DV=0:GOTO260 :REM*39 

T=T/D:DV=0:B$="(2 SPACES }":GOTO 700 

:REM*1 88 
IF PR=1THEN1210:ELSE 1230 :REM*52 

PRINT#4fTAB(20} ; zP'RlNTIi A , USING" # ff # H § ti H 
n§^ . §li" ;MSG; :PRINT#4,HSG$:RETURN 

:REM*118 
RETURN : REM* 12 

PRINT" (6 SPACES) DO YOU WANT PRINTER OU 



II 
1010 

1020 
1025 
1030 



1050 

1055 

1060 
1070 

1075 

1080 

1200 
1210 



1230 
13S 



TPUT{3 SPACES} (Y/N)" :REM*1 39 

1310 GETKEY Z$: IFZ$="Y"THEN1 330 :REM*43 
1315 IFZ$="N"THEN1350 :REM*1 54 

1320 GOTO 1310 :REM*67 

1330 OPEN4,4:PR=1 :REM+209 

13 40 PRINT" (CRSR UP} {18 SPACES } PRINTER 0N{1 

5 SPACES) " :G0T01 1 :REM*163 

1350 PRINT" {CRSR UP} (18 SPACEs) PRINTER OFFC 

14 SPACES) ":GOTOn0 :REM*241I 



FSD-1 DISK DRIVE 



We've improved on Commodore's 1541 ^"^^^^^^ 






"99.99% 1541-compaHble. NotKing I've tried will stop the FSD," — Mark BrowTi 

— [nfo Magazine 

"I like it so much, in fact, that I now own three of them." 

— Bill Ruddick - RUN Magazine 

"The FSD-1 is one of the best of the n»v hardivare ofTerings to come out for 
use with the 64 and the 128. CoiLsidering alt of its features and the price, I 
highly recommend the FSD-1 to 64 and 128 users." 

— Scott Thomas — Computers Gazette 



ONLY $139.00 



To Order Call 800-356-5178 

Visa A MasterCard welcome (3% aervlca charge). Allow $12,00 ship- 
ping and handling. Send mail order with payment to: 




III- -=■= ^ 


Emanid Component Intemitlonil 

D«pt. FSO 

541 Wlil«m«n» Slrwt 

Eugeni. OR 9T401 

T»l. 503-683-1154 


^wl 



The FSD-1 Disk Drive is a versatile and efficient 
disk drive built for the Commodore series of per- 
sonal computers. This disk drive is fully compati- 
ble with the Commodore 64" computer and 
direclly replaces the Commodore 1541 Disk 
Drive. 

Special Features 



Huns all 0-64 commercial software 
Heady to run right from the box 
Full 6 month warranty 



Heavy djty construclion 

Vented metal chassis 

Built especially lor C-64 users 



COirfWOCXini »4 •■ ■ tvaitvws irka*^<ri, el o^^^^ceit fiwivK*. ^ 



48 / RUN SPECIAL ISSUE 19«7 



Cifcte 415 on Readei Ssivice card. 



Only NRI teaches you to service all computers 
as you build your own fully IBM; 
compatible microcomputer 



With computers firmly established in 
offices- and more and more new 
applications being developed for every 
facet of business-the demand for 
trained computer sen'ice technicians 
surges fonvard. The Department of 
Labor estimates that computer service 
jobs will actuafly double in the next ten 
years-a faster growth rate than for any 
other occupation. 

Total systems training 

No computer stands alone. . . 
it's part of a total system. And if 
you want to learn to service and repair 
computers, you have to understand 
computer systems. Only NRI includes a 
powerful computer system as part of 
your training, centered around the new, 
hilly IBM-compatible Sanyo 880 Series 
computer. 

As part of your training, you'll build 
this highly rated, 16-bit, IBM-compatible 
computer system. You'll assemble 
Sanyo's "intelhgent" keyboard, 
install the power supply and disk 
drive and interface the high- 
resolution monitor. The 880 
Computer has two operating 
speeds: standard IBM speed 
of 4.77 MHz and a remarkable 
turbo speed of 8 MHz. It's con- 
fidence-building, real-world 
experience that includes training 
in programming, circuit design 
and peripheral maintenance. 

No experience necessary— 
NRI builds it in 

Even if you 've never had any previous 
training in electronics, you can succeed 
with NRI training. You'll start with the 
basics, then rapidly build on them to 
miister such concepts as digital logic, 
microprocessor design, and computer 
memory. You'll build and test advanced 
electronic circuits using the exclusive 
NRI Discovery Lab®, professional digital 
multimeter, and logic probe. Like your 
computer, they're all yours to keep as 




part of your 
training. You even 
get some of the 
most popular software, including WordStar, 
CalcStar, GW Basic and MS DOS. 



Send for 100-page free catalog 

Send the coupon today for NRI's 100- 
page, full-color catalog, with all the facts 
about at-home computer training. Read 
detailed descriptions of each lesson, 
each experiment you perform. See each 
piece of hands-on equipment you'll work 
with and keep. And check out NRI 
training in other high-tech fields such 
as Robotics, Data Communications, 
TV/Audioi' Video Servicing, and more. 



SEND COUPON TODAY FOR FREE NRI CATALOG! 



McGraw-Hllt Continuing Education Center 

3339 Wisconsin Avenue, NW, Washinflton, DC 20018 

We'll give you tomorrow. 

:i/ CHECK ONE FREE CflrflLOG ONLIT 






approved unont Gl Bill 
O check for details. 



_^ Cornpifief BKifonict 
,._, TV/Audio/VitTeo Servicing 
U Sataiijle EJectranies 
D Roboilcs S. (ndustfiai Controi 
n Data Gorfimu'rtlcalions 



□ Convnuntcatton Electronics 

D Becironic Dwign TwhrtotOfly 

D TB*ephone Servicififl 

n CMgital ESwirofiicjServicifVB 

D Basic EieclronJea 

D Electrician$ 



n Appliartce Servicing 

aSma'l Engine Repair 
Alt Con^Jit'Onirjij. HcaSing, K 

G lodtsmithfrvg & E\earar\\c Securely 
D 8«lldif>9 ConsEfiKtion 

n Automotive Servicing 

P Photogfaphy 

P BookhEhsping & Accounting 



Name (PJe&-5e pi\r\t) 



C4y^(ale^i(} 



AccimJilpi) by ihp Naiiofial Homfl Study Courwll 



"iJ 



Cifolo 405 on Rsadef Servioo cord 



Lots of Labels 

Make as many identical labels as you want with Label Copy. 



Bj CHRIS ACHTSCHJN 




When I piirchastrd [iiy Epson 
printer, one of the first proj- 
ects I wanted to do was print 
some return address labels. However, 
I discovered that the mailing list pro- 
grams I had wouldn't ret)eat one par- 
ticular lahel a number of times. So, I 
wrote Label Copy to fill llie gap. I've 



run it on a Commodore 1525 printer 
as well as on my Epson RX-8() F/T', 
and it should run on any C-f>4-com- 
patible printer. 

Label Copy will print up to five 
lines on a label for a specified num- 
ber of ])rints. You can also determine 
the number of vertical spaces be- 



tween the last line and the new first 
line, thus adjusting to ilie depth of 
the labels you're using. Printing some 
test labels will get the text alignment 
right. 

After you've entered your text, the 
program will display it so you can 
check it for errors. If you say every- 
thing is okay, the labels will begin 
printing with the current label num- 
ber displayed on the screen. 

Vou can save your label text on disk 
if you intend to reuse it. When the 
prompt appears for a "save name," 
use a short one that will remind you 
of the text. You can use a save name 
only once. 

Label Copy includes defaults for 
some of the text parameters. To cus- 
tomize the program to your own 
needs, you can easily change these 
defaults by changing the poked char- 
acters. For example, line 50 pokes 
screen location 1078 widi 14 if you 
type N for no instructions. A 25 would 
mean Y for yes. You can find the 
screen display codes In the Commodore 
C-64 User's Guide. 

Label Copy could be itsed for much 
more than return adtlress labels. 
Some other applications might in- 
clude name tags, owner tags for lug- 
gage, books or record albums and ID 
tags for appliances. M — *" 

Address all author correspondence to 
Chris Achtschin, PO Box 42, Middlesex, 
NY 14507. 



50 / RUN SPECIAL ISSUE IW 



RUN It Right 



G64; printer 



ILLUSTRATED BV CIAUDtA TANTEJjO 



1541 MASH V2.0 




(1541 J 



Service Your Disk Drive! 



Now you csn service your own disk drive 
with Ihe popular program 1541 MASH. You 
can check and adjusl ihe head alignment, 
Check and adjusl the RPM's You can also 
use MASH to clean your drive and check 
disks tor errors. Complete instructions guide 
you step by step as you rate your drive's 
pertormance and make the necessary adjust- 
ments. All you need is a screwdriver and 
about an liourot your time. Noknowletfgeot 
electronics is necessary. This is the easiest 
program o' its type to use. 

OnlyV9.9S 



Disk Tracker 

Use Disk Tracker to catalog all of your disks 
into a neat filing system Read and Edit each 
disk directory Sort each directory and print 
disk jacket labels or a long master list Of your 
programs Display an/ directory at will. 
Search function finds lost programs quickly. 
Gel your wares organized. 

Only t19.9S 



Recipe Tracker 

Ar« yau lirtid qI Iryingi to convgrt your favorite 
rscipes To meet vinous cooJting need}? Lei Recfpe 
Tfickftr handle i\. Tfin handy progfAm ttOf*t your 
favorila ra>cipes ori(Ji>k andthen, at your command, 
qufcMy converts them to tefvA one person or a 
thouMnd Onty$i9.9S 

Pilgrim's Progress 

Here (s«s0phi9Mcitedtext adventure opmelhetwtll 
provide you wilh hours of fun end chtllenQe Btsed 
on the classic story, PiJofim'a Proffreis. Ihij ecJven- 
tufe providfri whoreaome Tun for adventurers o1 all 
ages. Walk with PAgnm down the periloua road lo 
trieceiast'Aicity through a maje of pen taihel occu- 
pies the entire conlenis of Ihe disk. Only $S9,9S 

Variety Pac #1 

A varislyol tpelling and math gsmei all on or>e dis* 
- Onl^ $9 95 

Variety Pac #2 

A vBheiy of eKcelJent BA5(C oames all on ona disk 
-Only S9 95 

Adventure Pac 



Forasl Advftnlure. Desert Adventure, Miter's House. 
Haunted House, and more... «it on one di£k 

Only t9.9S 



Utility Pac 



Here is an assortment of th^e bfltt diltt Mtflittes whh 
compleie mslruclion Handy tools (or the pro^ 

grammer ot for the casual user - Only J14.iS 



Hot Tips 



A disk fuN ol Hot Programming lips, secrets, and 
Liaetui sub-rouLines w^ih documentaiion 

OntySU.9S 

Address Tracker 

Dedicated liimg system designed specilically for 
names and eddfesies Prints labels Sorts on all 
fields Wor ka with Sperdscript Utilize no Merge 
labels and word processed tent, Super-Easy to Use 
A powerful addition to your software library. 

Oniy %1B.9$ 

Songs for Kids 

25 Oehgtittul, lradilior>ai childrens Bongs 
with words aniJ 3 voice music Everything 
(rom Hickory Dickory Doc lo Farmer in tfie 
Dell Ages 3-7. 

Only t14.9S 

Great Hymns 

25 terrific hymns wilh words and music in 3 
pan harmony 

Only JI4,95 

Bible Trivia 

Bible Trivia is one of the finest trivia games 
availatile 1000 questions. 1-10 players, 
exciting board game, question editor (or 
making your own quoslion tiles You can 
even use it to make quizzes lor your kids 
Only S24.9S 





Box 463 I 

S31 N. Cherry 
BanEe Ground, Wa. 98604 

1-800-331-3428 



fe Cirrv Plus i ^pftiire 

No Shipping Charges 

JM tl.M IH COD ir fntm Dtlmri. 



Custom Drives 

¥DUcancustomiieyOLrnS4l drive giving youadded 
convenience This booklet wilt ahow you how to 
movelhepowcrawitchtothelrontorihedrttfajnsteil 
■ write protect switch (allowinc^ you to write t>f\ the 
b*ck at t diik without punching holes or removing 
any tapei): Install a device number switch |a must il 
you have Iwo drives | Easy «iep by itep Instructions 
Includecomplele diagrams makmgthe procedure a 
map Complete >n\ includes awitches. wfrei, 
connector* 

Booklet ' OnlylMM 
CompleieKU-t24.i^d 

Reset Switch 

A Permanent, Cjtae Mountect reset switch that you 
can easily inslall by loHowing our step by step 
Ini iructions An atiraciivt and hindy addition to 
your Commodore 64. 

Only fV.PS 

Speed-Script 
Utilizer 

The Utiliier works along with your copy ot 
the popular word processor, Speedscrlpt 
The Utilizer allows you to print multiple 
copies of your documents unattended. You 
can also merge a mailing list or other data 
tile with your speedscript text so that multi- 
ple copies are printed changing i^amesetc 
on every copy The powerful sort routinecan 
be used to sort any Speedscript file into use- 
ful order. This program will work with any 
word processor that has sequential hie op- 
tions. 

Only S)0.B5 

PS Graphic Pac #1 

Here i» a Cn^ fuM of Original Graphics compiahbie 
With Ihe popular Print Shop program Areai plus tor 
your graphics library 

Computer Furniture 

Custom Computer Center designs that you cAh 
butid from one or two stieets ot plywood Booitlet 
includes $cale patterns, matenal list$. procedures, 
end professional hnishing tips Attractive and easy 
to build ' Only S3 &5 

Virtuoso 64 

This may be Ihe hnal word m music edJtori lor the 
Commodore 64 Virtuo«od4 isatoonbat is extreme^ 
lypowerlulandMexibla. itproducesintefupl driven, 
^lig^'y compact, relocateable, professional sound- 
inp, muiic code that can be used m your owh pro- 
grams or Foaded up and pSayad for yourenioyment 
tt ia ao easy to uaa that you will be composing your 
first muaicii score within mtnulas, yet Its deplh ot 
capability wiFI never be exhauated Oniy i29.95 

Spelling Scramble 

Spelling Scramble is the finest, fast acting 
spelling program wc have seen Use our 
prepared word lists or create your own lists 
of words to drill. Excellent sound and text 
rewards. Allows vocabulary words with detj- 
nitions A fast action game that takes only 
minutes to play but requires perfection in 
Spelling. 

Only ».95 

Commodore 64 

In Washington 1-687-2343 



CifCte 401 on Reaoer Sofvce card 



Listing 1 . Label CopjpTopam. 



10 PRINT" {SHFT CLR] " : POKE53280 , 8 : POKE53281 , 282 

8:POKE646,1 :PRINTCHR$(1 4) :REM*94 285 
20 F0RU = 1 T01 e):PRINT:NEXTU :REM*134 
30 PRINT"{14 spaces) {CTRL 9} {SHFT L}ABEL {S 
HFT C}OPy(CTRL 0]{9 SPACEs}" :REM*S) 

40 FOR J=1TO1000:NEXTJ:PRINT" (SHFT CLR) " 290 

: REM* 8 4 

90 PRINT" {SHFT CLR) {SHFT T}HIS PROGRAM PRIN 300 

TS A SPECIFIED NUMBER : REM* 32 

100 PRINT"OF LABELS. [SHFT L] INES CAN BE AD 310 

DED BETWEEN": PRINT" LABELS. (SHFT E)XAHP 320 

LE:":PRINT :REM*204 330 

110 PRINT"! 1/4 INCH LABELS REQUIRE ONE LIN 340 

E{6 spaces} BETWEEN LABELS .": PRINT 350 

:REM*228 360 

190 PRINT"{2 CRSR DNsXSHFT U)P TO 5 LINES 370 

OF TEXT CAN BE ENTERED ON EACH LABEL. 380 

:REM*58 410 
210 PRINTTAB{12}"{CRSR UP) {SHFT L) ABELS CAN 

ALSO BE SAVED TO DISK :REM*162 420 

220 PRINTTAB<5}"(CRSR UP) BY ENTERING A FILE 430 

NAME AT THE": PR INT" SPECIFIED PROMPT. 4 40 

:REM*50 450 

240 PRINTTAB(7) :INPUT"{CRSR DN){SHFT P}RESS 460 

<RETURN> TO CONTINUE { COMD 1)";A:REM*26 470 

250 POKE19,64:PRINT"{SHFT CLR) {CTRL 2} (SHFT 480 

E}NTER (Y) TO ALIGN AND PRINT A FIVE-L 

INETEST LABEL. :REM*204 490 

260 INPUT" {CRSR DN){SHFT T}EST LABEL (Y/N)" 

;L$ :REM*139 500 

280 IFL$="Y"THEN700 :REM*73 



POKE! 9,0 :REM*41 

PRINT" {SHFT CLR) {SHFT E}NTER LABEL DATA 
AT PROMPTS": PRINT" [CRSR DN)(SHFT N){SH 
FT 0){SHFT T){SHFT E); {SHFT N}0 SHIFTE 
D CHARACTERS!" :REM*136 

INPUT" {CRSR DN){SHFT H)OW MANY LABELS"; 
C :REM*105 

INPUT" [SHFT H)OW MANY LINES BETWEEN LAB 



OLD (0)";U$ 



ELS"rP 

INPUT"NEW (N) OR 
IF U$="O"THENa90 
X=1 532:E=E+1 : 
input"line 1";N$ 
INPUT"LINE 2";A$ 
INPUT"LINE 3";CS 

input"line 4"; as 

INPUT"LINE 5";E$ 

PRINT" {3 CRSR DNs){CTRL 9) LABEL 

CRSR DNs)" 
PRINT" (CTRL 9}" 
PRINT" {CTRL 9}";N$ 
PKINT"(CTRL 9}";A$ 
PRINT" (CTRL 9}";C$ 
PR INT" (CTRL 9)";Z$ 
PRINT" (CTRL 
PRINT" (SHFT 
LF) COPIES" 



:REM*253 

:REM*1 57 

:REM*1 

:REM*249 

:REM*23? 

: REM* 41 

:REM*85 

:REM*211 

:REM*141 

DATA: (2 

: REM* 173 

:REM*131 

:REM*167 

: REM* 41 

:REM*53 

:REM*203 

:REM*73 



9)";E$ 

T)HIS WILL PRINT" ;C;" {CRSR 

:REM*3 

PRINT" {SHFT W)1TH '•;P;"{CRSR LF) LINES 
BETWEEN LABELS" :REM*205 

PRINT" {24 SPACES)" :REM*143 




^ 



VAMIGA 

1000* 

PLUS 
IflBn COLOR 
I UOU MONITOR 



■ ■y>■^^'?5 



850 



•C.P.U. IS REFURBISHED - FULL 9C DAY PASTS 
AND LAaORWAHRANTY FROM COMMODORE. 

NEWAMfGA 1000s ALSO AVAILABLE 
CPU. AND MONITOR ALSO SOLD SEPARATELV. 



( SCHOOL P.O.'s ACCEPTED ~) 



PRINTERS 



159 



95 




^ 



FROM ■ ^«# '/T 

Rock Bottom Pricing! 
On Ail Star Printers 




NEW LOW PRICES 

64 • 128 
PACKAGES 

Call Us 
Before You Buyl 

We Want Your Business 



Canon 1^, 

COLOR INK JET 

$24995 < 

I ijurrcn ruiAdiTi-rv ^__ 



am- 



LIMITED QUANTITY 



RGB from '199.' 



f Panasonic 




lOBOi ROCK 

'„",! BOTTOM 
lD91l PRICING 



BS 



mam 



SFD1001 



179 



B5 



t20Q 



BAUD 




L »88 



00 



J\^ 



M.C.S. 

MlcroCompufear Ssrvica- 
""^^ BOO-a33-77S6 

In Michigan [313] 4e7-Oe67 

INFD a CUSTOMEH SERVICE - (313} 127.0267 
HOURS: MON - SAT 10:CX) A.M. -8:00 P.M. 
1 2964 Farmington, Livonia, Ml 481 50 



SEIKOSHA SP-1000VC 

COMMODORE READY 
015495 



NEAR LETTEfl QUALITY 
FRICTION f» TRACTOR 
lOOCPS* SHEET FEEDER 






TOO up BO.99 



DS/DD 40 .55 

3y2DS/DD<BUL.>. 1.80 2.00 

LIFETIME WARRANTY • LABELS 
WHITE PROTECTS • PACKAGED 



EDUCATOR 

FAR BELOW 

DEALER COST 



^ 




RETAIL 
«9,95 



REGULAR 

DEALER 

COST 

325.00 



• 100% C-B4 Compatible 

• Built in Hi-Res Green Monitor 

• Heavy dutv power supply and 
sti/rdy case 

• All units completely refurbished 
with full 90 day warranty 

$199.95 

DEALER PRICING AVAILABLE 
ATTENTIGN SCHOOLS - BIG SPECIALS ON PEIiCBM 



ACCESSORIES 



1670 , 

TaKprDgrAm . 



.Cell 
.Call 



PWR Supply , J9.9S 
OkimalaColor ..Call 



MAIL ORDER ONLV MC/ViSAfC.O.D. 

PI*aiB Ineluda phonn number, Dgalai Inquirla* 

Inwitod. All prices discounled lor cnsh or check. 

add 3% for MC/VISA. Slilppino^ Pftolefs »10.(W, 

Educator SZO.OO. Diiks %6.Vi par 10a, IWeit Coeit 

- add am per order). Add «3.00 for C.O.D. 

Reduced shipping far large quantitfaa. 

Returns are for Exchange/Repair anlv- 

'rlces and aveilability subjecl id change 

wllhuul nDtlcn. ALL MERCHANDISE CARRIES 

MANUFACTURERS WARRANTY 



52 / RUN SP£CUl BSUE 19ST 



circle 4iS on Readar Service eird. 



Lining 1 cimlimwii 


73ei 


PRINTj^5,"LINE 1 ******tHIS*******" 










:REM*184 






740 


PRINT#5,"LINE 2 **+***is*A*******" 


51 8> 


INPUT"{SHFT OHANGE (Y) OR <N)";B$ 






:REM*188 




:REM*115 


750 


PRINT||^5,"LINE 3 *****SAMPLE 


;*****i(tii 


530 


IF BS = "Y" T!iEK282 :REM*64 






:REM*230 


540 


INPUT" WANT TO SAVE DATA ";IS : REM* 9 6 


760 


PRINT#5,"LINE 4 ♦*****teST*******" 


550 


IP I$="Y"THENGOSUB810 :REH*240 






: REM* 6 4 


560 


OPENS, 4 :REM*162 


770 


PRINT#5,"LINE 5 ******LABEI 


^*** + * + " 


570 


FOR X=1 TO C : REM* 3 4 






:REM*253 


580 


PRINT//5,N$ :REM*232 


780 


INPUT" {SfiFT CLR) PRINT AGAI^ 


I";M$ :REM*57 


590 


PRINT#5,A$ :REM*80 


790 


IF M$="n"THENCL0SE5,4:G0T0282 :REM*155 


60?) 


PRINTj!f5,C$ :REM*154 


600 


IF M$ = "Y"TtlENGOTO7 30 


: REM* 19 


61 


PRINT^5,ZS :REM*136 


81 


PRINT" INSERT DATA DISK AND 


ENTER FILE N 


620 


PRINT)^5,E$ :REM*23a 




AME":INPUrV$ 


: REM* 9 3 


630 


FOR T=1T0P:PRINT#5:NEXTT :REM*1 35 


820 


OPEN2,8,2,"&:"+V$+"S,W" 


:REM*177 


640 


PRINT" (SHPT CLR}":PRINT"PRINT jf" jX 


830 


PR INT)!/ 2, N$ 


:REM*203 




: REM* 4 2 


840 


PRINTj¥2,A$ 


:REM*51 


650 


NEXTX : REM* 8 8 


850 


PRINT|!/2,C$ 


:REM*125 


660 


PRINT" ( SHFT CLR J " : F0RF = 1 T01 00^1: NEXTF 


860 


PRINT#2,Z$ 


:REM*107 




:REM*8 


870 


PRlNTfl2,E5 


:REM*209 


670 


POKE1082,14:INPUT"PRINT NEW LABELS" ;H$ 


880 


CLOSE2,8,2:RETURN 


:REM*207 




: REM* 106 


890 


PRINT" INSERT DATA DISK AND 


ENTER FILE N 


680 


IF H$="Y"THENCLOSES,4:CLR:GOTO250 




AME" :INPUTV$ 


:REM*173 




:REM*1 08 


900 


open2,8,2,"0:"+v$+"s,r" 


:REM*177 


690 


IF H$ = "N"TEtENEND :REM*224 


910 


INPUTA'2,N$ 


: REM* 2^3 


700 


POKE19,0:OPEN5,4 :REM*70 


920 


INPUTA!2rA$ 


: REM* 51 


71 


PRINT" {SllFT CLR} PUT LABELS IN PRINTER" 


930 


INPUTy^2,C$ 


:REM*125 




:REM*264 


940 


INPUT/? 2, Z$ 


; REM* 107 


720 


INPUT"ENTER 'Y' <RETURN> TO CONTINUE" ;V 


950 


INPUT^2,E$ 


:REM*209 




$ :REM*88 


960 


CLOSE2,6,2:GOTO410 


:REM*1 1 51 



HOW TO GET THE 
MOST OUT OF 

GEOS" 




— for the new user who «ants 
tn hnnvv more nlmut GKnS uiid 
linw In iriake it work foi' liirti: 

— for the udvanced user who 

wants mort tloxlblllty than 
GEOS alone offers; 

— for the progromnier who 
Hunts lu wrilf his own utililies 

— the book )»u need when (he 
nrunuul isi not enough; 



HOW TO GET THE, MOST OUT OF GEOS gii^ jdu the infomiation (hat .tou need to use this 
t>riHcrru1 program to jDur best advantage. A team of experienced users and programmers examined 
GKO.S in^de and nul In (;iv« jtiu: 

— slinrtcuts to make TOiir work go fiisler and smoother; 

— undocumented feulnres that >ou will wunl to take advantage of, or avoid; 

— translation uliiittes to import (cxl and graphics from other popular programs; 

— contvrsion utilities In let }uu transmit CEOS files to >uur friends lia modem; 

— the GKOS file structure, so programmers can write utilities for their own special needs; and 

— a map of important memon locations so advanced programmers can create their own ctistom 
utilities. 

( ; K OS I , D I rndtiiurk nf tkrkflf I J Seiflworlu. 



Comprehensive Reference 
Hook $14.95 

\. Complete Programs & Utilities 
wAl>isk $9.95 

■ — ■] Add $!.SU shippinj; iind hiindling 

/ Illlnuls residents add 6% sales tav 

—J C.0,1). imieni addilinnal UM 

i Make pa)nlilc to Mldnltc IVcsb 



^' ORDER LINE: 

(800) 222 - 4441 



•^ r:-^ 



1212 Hagan, Champaign. It. 61tt2f) 
Dealer inquiries welcome 



Circle 414 on Reader Service card. 



RUN SPEClAl, ISSUE mi I 53 



Envelope Maker 



This program ' only addresses envelopes — 
it rruikes the . I andy sizes, too. 



By MICL.EL ilROUSSARD 



# 




If your handwriting is as sloppy as 
mine, you probably write letters 
wiih your word processor. How- 
ever, when il's time to mail the tetter, 
chances are you end up addressing 
llic envelope by hand, because it's too 
much trouble to get out the type- 
writer or load labels into the printer. 
Don't your letters dcser\'e to be as 
neat on the outside as they are on the 
inside? Here's a utility that can help. 
Envelope Maker is a Basic program 
that uses your primer to create envel- 
o[)es in a con [lie of common size.s, 
with the address printed right on the 



front. It takes regular 85(.-by-l 1 paper, 
and you can choose whatever color 
you like. After the printer is done, you 
cut on the dotted lines, fold and fas- 
ten with ia))e or a hit of glue. The 
procedure is fast and easy, the envel- 
opes are professional looking and 
your postman will love them. 

To use Envelope Maker, type in the 
program in ListiiTg 1 and save it he- 
fore you run it. When you get to the 
Data statenieius in lines 780 through 
810, type in your own return address 
in ]>laceof mine, [ilaeingeach address 
line in quotes. The progiam expects 



four lines of return address, but I 
used only three, so the last Data state- 
ment specifies an empty string. 

Formatting Envelopes 

When yr>u run Knvelope Maker, the 
screen clears, and it asks which kind 
of envelope you want, standard letter 
or French fold. Standard letter is fiyis- 
by-;i')5,; inches, a size often used for 
informal coires])oudence or paying 
bills. French h)ld is a greet ing-eard- 
type envelope of 5-7,-hy-4J{, inches. 
French fold is the perfect size for a 
card produced by llroderlnuid's Print 
Shop. If you've been searching in vain 
at stationery stores for plain white en- 
velopes to use with I'riiu Shop cards, 
look no further! Clhoo.se the envelope 
type by pressing I or 2. 

Next, the program asks if you want 
to use the defatdt return address. If 
you respond Y, for yes, F.nvelope 
Maker automatically uses the return 
address specilletl in the Data state- 
ments at the end of the program. If 
you answer N, it asks for up to four 
lines of return addiess, one line at a 
time. To skip part of an address, press 
the return key when the prompt for 
that line appears. 

Now you mtisl enter the address of 
the person lo whom you arc sending 
the letter. Type in the address line.s, 
one at a time, pressing return after 
each. .A.gain, you may specify up to 
four lines. 

'fheu you are asked if you want to 
center the address lines. If you enter 
Y, the lines will be centered in rela- 
tion to each other. If you specify N, 
the lines will align on the left, but the 
block will still be centered on the en- 



54 / RUN Si'tClAL ISSUK mi 



RUN It Right 



064; printer 



ILLUSTRAfEl) UY ij\tt¥ HS-INRIK 



HViS'iiA mcnabcr (jrCVVCMTiiHiiLimcjEioii^flTic. KTnu|i. 
ttie ivmkri (jr^^^t jsiiMiitlicr of ^(iTiipu[ci'rrB.iu(l iii 
fnrmatluii, TliFKioup publiihf s uver 7<)c(tmpiiU'i [mi* 

Ihmititi* h^ niorf tluiii ^H inujor cuuntricv 1!^ imll 

|)rn]irF vriu\ i>iir cr mure of ihc ^roupi^ g)ut>li[t',Ln(Mi^ 
rmih iriinLlh. Mrmbris "I' CWCI ^^oiip roiitiiljiiJlr H> 
llu' f, W /ft^jTTu-j/Hflui/ jVftiJj iifTH/f. taffcriuji \hv iMf\i i.n\ 
dcunipstic and inicrnaiional computcT iir^s. MrnJut'Ti 
t>f ibc prtitiji include; ARGENTINA'S (Mmfrut^TK>itTl/i 
Atgmtjn/i, /*fx Miitido: ASLA'S Asian fJom^j'miiwW, (Jf^im 
RtKnifdJifAr V^SyrW; AUSTHAlJA'S Cimputfni<OTl4 Am 
Imtia, Cammunifatiam IVorid, Aa^trnliiin PC Wmlti. 
Auiirnium Maruorid: AUSTRIA'S Comfnitrrnflt fJ^fffr 
tfiih. BltA/ll;S iMUtSmi. PC MutuU}. CMIlX'S Jnfor 
maltea, Camftufation pfnonat: DKSMARK'S 
Cifmpulnumid ttnntvtrk, fC iVarLi IJunnnr*. flt'.V. UN 
Lj\Nr>.S Twtmiikke. Mtkm. FRANCl'S U Mond/ infm 
Hd/i^ur, Di\tT\h^tiqtif, Cotdin, InfoPC, Thfortnr, 
<iR£tCF.S Micro ^ QmpulfT Agr, Hl'VCJARVS V^T 
C,omputfTworUi,MikTm^ii3g,lSaiA'SDataquf^r,li>RAn:% 
l\0pie ^ Om/nJrt-j jWlJriiAf:!, Pi^pU <^ CjymputrrH Vttrhty. 
rrAiyS C^mptHrruycTld fi^tifi. PC Wirrtd Mof^iinr. J A 
PAN'S (.omfnitrworid jfipttn, MEXICO'S Comptiimt^YrUi 
Mnka, TJrE NETHKKij\NDS' OmpiiirrvMirUi Nfihrr 
knA, /Y: WotU Sfihrrtandy. NTW /t:Alj\S'l)'S CAmfm- 
irrnmrid ^'fw /.mtfind; Nt>kWA\"S PC MikrodnSn. 
OtmlmtrnttrU K'argr, I'EON.K'S IUI'I'IU.K: (Jh (^IIIN 
AS f ;Aj>iw i jjw!^ tfrtittridi S AU I >1 A H A I ^I A"S ^ ra/jjWpi t j^ra 
;wffT A'nii; StJUfJI KORFjVS Jfu Ki^frmiif limfv. 
SPAIN'S Computrru-itiiTld Eipana, Csmm&Urrr HWiri^ PL 
Wvrid K-if>atut; SWEDEN'S O^mputi^ SumiAn., Mi^rttdatom, 
Siimnka PC Wvrld; S;VJ IZERLV^D S Ompulrru^rrld 
Sthu^ii; CNmH) KINGDOM'S Ompufrr \f^n, m.C Tc* 
day. tiJ. Today, PC B^ifim Wmitt. L"M (ED STATES' 
Ami^^A'orUi, Ikitrm Ornifmirr Anti^ CflwijfrHJfrniwW, fhptai 
AVui. SO Mtcn. MX:CS Pubtiatlifmi, tnCtdrr, hf&Wifrtd. 
MafW,>Ttd, MitTp Markftw^td, Xftut^k Witt id. Pi. Wati^t. 

WKS I tiKKMANV'S Omfmtfruviciv. PC \Mt, C^inputfr 
hmiti^ii. Run, fnfitWfil. 



RUN 

T-Shirts 

• 100% Colloii, Sliiii1-slccvc<ISIiitl.s 

• Wliitf Willi Cdloiful Rl 'N Los^o & Design 
Siies: S, M. L. XI. Price: 59.95 rarh 

Cdmplflf fniJ[K>n. viirj i.L>]i, ih(^k. ur muiirv order 
p.sviblc to RUN KbfuiK. AlliiM ti-K tttrkt liir deliver^'. 




SATISFACTION GUARANTEED! 



TELECOMPUTING 





OUR 


RETAIL 


PBICE 


80 


U 


50 


43 


50 


43 


40 


34 


n 


M 


4Q 


34 


■M 


43 



Bobttefm Pro T 26 (Progressive) 

BobstBrmPFo64[ Prtjgrissiw^ 
Prole rm 1?g r^^m^ Micrchvare) 
Prclerm M I King Mtcroware) 
Rhap£(rdy128|KingMicrQW3re] 
SlilBStnM IZB (Prism) 
Syntach B^^ Consi S«l (Kin) 



LANGUAGES & COMPILERS 

Onomt Speed lie IK 114) 60 91 

Kyin Piicil t;g (Kyan) 70 60 

Kyan Piscal S4 (Kyan) 70 eo 

Oifoid PASCAL G4 (Precision) 60 43 

WStzacoeOLlVislonary) 50 43 



UTILITIES 
Big Blue Fl«i(lir (Sojwap) 
GnemeKltE4/l2a|Kiia) 
Phyilcal Eiem IS41 (Cardinal) 
PhyilcilEiim 1571 (Cardinal) 
Power 64 <l'^3'!ine) 
PAL64(Pio-iine) 
Rebel Aiiembltr til |Nii-Age) 
TeelbgiG* I Pro-Line) 
TSOS Super Aitimbier iNo-Synt:] 



AMIGA 

CambrldseLISPiMecsccmbco) 
Latlice C CempHer (Met^cnmEjcQ) 
MCC PASCAL I Metacombm) 
Tooffch IMeljcomlica) 



ri? 


?n 


41) 


34 


41) 


34 


40 


34 


60 


43 


iO 


43 


30 


75 


90 


t; 


10 


n 


!00 


170 


1M 


i:b 


100 


15 


50 


43 



SUPER SPECIALS 

fOrPRO-LINE PRODUCTS!! 

Pro-Line set i^e ind<j&Iry &iandarct (or AC^rdproLe&sors Trre» 
lave a buiH-in spefiing clMCker lor li^nTmng lasl spelling 
orrectioiiand siwnns true propotiorui printing 
WordPro 1 1B /S (retail S995) ourpriceS45 

WordPro M/S (rela 1 69 951 our prite S3a 



GRAPHICS & CAD 



C Potter IS [tie best ava»iat)ta C tan^Lt^ige rJevfiiMni^nr 
cock age. Praaotes nalrvo850?.'B50? languaje iilijcti code 
C'PowirlJt {retaita995) oiiipr)ce}49 

C-Poiaer64 |telaii69 96) our price 139 

GT1 is a "higti-priKiiiclnily" cjrtridge mat Iranslorms ynur 
siow 1541 into a super -last, luily lunclmai SUPER DRIVE , 
includes BASIC 4.0 and extra dis* commands. For your C64. 
I5T4 Cartridge (retail 39 951 our price 119 



■SPECIAL OFFER ■ 



HOW TO GET THE MOST OUT OF CEQS (UiUnile Press) 

Coniprenensn/enow'tDTeierence tioc^k it: SI 4. 95 

OJsk of complete ptogtams & utiiiiies rtl 59 95 

BOThi book and disk (or ONiy 370 00 



MISCELLANEOUS 



d Music SysteFn|Frret:irP> 
Wilsrlly CooklHoli (Merrill ward) 
FIPTdtt«Oroid|fta[Ursoti) 
Map] Europe (Radarsott) 
MipiU&AIRadaisoll) 
MipiWerM(Radarsolt1 
ScreenConvertfl^fR&^1) 





OUR 


RETAIL 


PRICE 


M 


u 


M 


IT 


30 


» 


30 


X 


40 


34 


40 


34 


30 


76 







OUR 




RETAIL 


PRICE 


Clip M Plus (RJSotl) 


22 


19 


CA0 30(IHT) 


50 


43 


Desk Pac (Berkley) 


30 


2G 


Boodle (Omni) 


40 


34 


Fitiidraw (InkwE<l) 


too 


85 


FleiltonI (Inkwell) 


30 


ZG 


FleiLMed Oeiign (Kira) 


40 


34 


FonlPac(nr!rkley) 


30 


26 


GeliSauB-t-Plc(RKM) 


35 


36 


Giapnoaiieria. Border (inkvfeii) 


25 


22 


Graph Gillerla-Ollp (Inkwell) 


?5 


n 


Graph Galleila-Holiday (inkwell) 


26 


22 


Graphic Integ rater (inkwell) 


30 


t6 


GEOS (Berkley) 


60 


51 


High-Fies Grephies (HJ soli) 


?0 


IT 


Perspectives iUK'ial 


60 


51 


FINANCE & DATABASE 




Accoununti;a(KFSl 


150 


126 


BEST Accou nil Piyitle (Besli 


eo 


51 


BEST (tcccunlt Reolvibtc (Best) 


60 


51 


BEST General Ledger (Best) 


70 


BO 


BEST Invenlory Mantger i Best) 


70 


50 


BEST Project Plannoi (Best) 


90 


TT 


D-Fae UtIliUes (Michiaeisod) 


25 


n 


D-File1!B(Mii;baBlsolt| 


25 


72 


Pio[l1e1J8(fro-Line) 


70 


GO 


Profile 64 (Pro- Line) 


50 


43 



24-hour order line: (2 1 5) 683-5433 

I RISK FREE POLICY 

We want you to be saiisf^df It Ihc product does not perlotm as expected, yog may reiurn it to us. wimm 15 days o1 receipt, 
lor a lull relund ot your purchase price. ProOocI must t« unmarked and in saleatjie contfilion 

ORDERING INSTRUCTIONS 

COD MasterCard, ViSii, personal clieck or money otders accepted Ail payments must Be in USA aollars. All products will be 
shipped immediately Add S2.00 for shipping and nandiino Ma %1 00 lor COO (USA only) Add 34 00 for Canadian and SS.OO 
lor lorcifln orciers Add S7 OO tor 2nd &>y Air service. PA residenis add 6M sales tan to total order Please specily ide eiact 
product name as listed in litis ad 



en i WALL 

Solid Producls * Solid Support 

P.O.Box129.KulZI0Wn,PA 1953D 

For product KitoimoUon wdle. or call: 21 5-6B3-5433 

Monday - Frimr 9 i.m. • 4 p.m. EST 



Circle 443 on Reader Sorvico card. 



RUN SPECIAL ISSUE 1997 / 55 



vflopf. In either case, the address is 

(iouhle spaced. 

Creating an Envelope 

Willi the foiniiUling clone, make 
sure ilie pajjcr in your printer is set 
ai the top of a new page and press 
any key to print the envelope. When 
output is complete, F.nvelope Maker 
will arik if you want to make another. 
If yovi answer Y, the progi am will loop 
back to prompt for more address 
lines. If you answer N, the program 
will etui. Note thai if yon answer Y, 
the ijrograin assumes you waul the 
same si/e envelope with the same re- 
turn address. If you want to change 
either of these parameters, answer N 
and run the program again. 

To assemble the envelope, cut 
along the outside lines, then fold 
along the inside lines. First foki in the 
little side flaps, then fold up the hot- 
loni. Fasten with glue or lape (I use a 
ghie stick, available at most oftice sup- 
ply stores). Finally, insert your letter 
and fold and fasten the main Ilap. 

F.nvel<)[)e Maker is designed to run 
on printers with pica type (10 char- 
acters per inch). If you have a printer 
wild elite type (12 characters per 
inch), such as Commodore's 1526, 
change the value assigned to the vari- 
able ELITE on line 100 of llie pro- 



gram from to 1. -Also, Envelope 
Maker assumes that your printer is 
device 4. If you're using a different 
device number for your printer, suh- 
stitulc the appropriate value in the 
variable I'DFV in line 100. 

The printer is opened with a device 
subaddress of 7, so the envelope is 
printed with the upper/lowercase 
character set. If you prefer the upper- 
case/giaphics character set, change 
the value assigned to the variable SA 
on line 100 from 7 to 0. 

Cttstomized Input Routine 

As an extra beiietlt. Envelope Mak- 
er contains a short machine language 
subroutine you can include in your 
own programs. This routine func- 
tions as an alternative to Basic's stan- 
dard Input statement and behaves 
like the Input statement with the fol- 
lowing exceptions: 

L It doesn't print a ? prompt, so 
you can specify whatever prompt 
you like. 

2, It acce])ts the whole line you 
type as input, even if the line ct)iilains 
commas or colons. 

3. Because of the second excep- 
tion, it inputs a value for only one 
string variable at a time. 

To use the subroutine, your pro- 
gram must first poke it into memory. 



Envelope Maker does this in lines 120 
and 130. You shouki include these 
lines in your own program, along 
with the Data statements numbered 
720 through 7.50. 

Envelope Maker pokes ihe subrou- 
tine into RAM starling at location 
49 1 52, but you can move it anywhere 
you like by changing the value as- 
signed to the variable SUli on line 
120. (Just be sure you don't put it 
where it will interfere with Basic.) The 
subroutine is invoked with a SYS 
statement ibai also specifies the name 
of the variable to be input. Here's how 
a typical call might look: 

I'RlN'f'Itiput your name: ";:SyS 
SUB.NS:i'KlNT 

Assuming the subroutine has al- 
ready been poked in beginning at the 
RAM location indicated l)y SUB, this 
line first prints a prompt and then 
a.ssigns a string to the variable N$. 

I'll be happy to answer any ques- 
tions you may have about Envelope 
Maker, but please entlo.se a self-ad- 
dressed, stani|)ed envelope. Now, 
where on earth are those stamps? E 



Address all author correspondence to 
Michael Broussard, 13136 Lazy Glen 
Court, Hemdon, VA 22071. 



Listing 1 . Eiwehpe Maker program. 



100 TE=0:PDEV=^ :SA=7:REM SET TE TO 1 IF YOU 

HAVE A 1526 PRINTER :REt4*18 

110 POKE53 280,0:POKE632ei , ; PRINTCHR$( 1 4) :P 

RIl^TCHRS ( 30 ): PRINT" {SHFT CLR)" :REM*44 
120 SUB=49152:FORJ = SUBTOSUB-t76:READN;CS = CS + 

N:POKEJ,N:MEXT :REM*240 

130 IFCSO 1 0586THENPRINT"ERROR IN DATA STAT 

EMENTS.":END :REM*136 

140 CLOSE4:OPEN4,PDEV,SA:B$="{20 SPACEs}":B 

$=B$.fB$ + BS-fB$ :REM+G4 

150 PRINT" (SHFT CLRKCRSR DM) "TAB{ 1 3 ) " { SHFT 

E)[SHFT N}(St!FT VKSHFT E}(SHFT L){SiiF 

T OHSHFT PKSHFT E}(SHFT SPACE} {SHFT M 

HSHFT A} (SHFT KHSHFT E} {SHFT R)(CRSR 

DN)":F0RK=1T06:READW(K) : NEXT :REM*1 22 
160 T$(1)="l) {SHFT SITANDARD {SHFT L) ETTER 

":T5{2)="2) {SHFT F)RENCH {SHFT F)OLD" 

:REM*30 

170 PRINT" (2 CRSR DNs ) "TAB ( 9 ) " { SHFT CJHOOSE 

ENVELOPE TYPE:":G0SUB71 :REM*82 

180 A$ = "":GETA$:IP(A$< >"1"}AND(A$< >"2")THEN 

180 :REM*224 

190 ET=VAL(A$) :T$(ET)="(CTRL 9 ] "-^T$ ( ET ) : PRI 

NT" {8 CRSR UPs}":GOSUB710 :REM*144 

2H IF ET=1 THEN W( 1 ) =64 : W( 2 ) =W( 2 ) - 4 : W ( 5 ) =W 

(5)-5:W(6)=W(6)-2 :REM*148 

210 IF TE THEN W{ 1 ) =W( 1 ) +4 : IF ET=1 THEN W(3 

J=W(3>-2 :REM*162 

220 F0RJ=1TQ4:READT${J):NEXT :REM*62 



230 

240 
250 
260 
270 
280 

290 



300 
310 

320 
330 



340 
350 

350 

370 
380 

390 

400 



PRINT" (2 SPACES} {SHFT 
RN ADDRESS"; :GOSUB680 
IFA$="Y"THEN270 
IFA$<>"N"THEN230 
P$=" RETURN" :GOSUB61 
FORJ = 1T04:R${J)=T${J): 



U}SE DEFAULT RETU 
:REM*1 36 
:REM*236 
:REM*100 
:REM*181 
NEXT :REM*41 
P$="":GOSUDG10:FORK=1TO4:AD$(K)=T$(K) :N 
EXT :REM*16 3 

PRINT" {2 CRSR DNsl{5 SPACES ) {SHFT C] ENT 
ER ADDRESS LINES" ; :GOSUB680:CF= (A$="Y" ) 

:REM*1 05 
IF CF THEN330 :REM*99 

CI=0:FORJ=1TO4:IFLEN(ADS(J) ) >CITHENCI=L 
EN(AD$(J) ) :REM*145 

NEXT : REM* 7 5 

PRINT" {CRSR ON} {4 SPACES ) {CTRL 9} {SHFT 
P)RESS ANY KEY TO BEGIN PRINTING." 

:REM*87 
A$="":GETA$:IFA$=""THEN340 :REM*69 
S=5:PRINT#4,MID$(B$,1 ,W(3)+S+2) ; 

:REM*243 
F0RJ=1T0W(1 )-2*S:PRINT^4,"-"; :NEXT;PRIN 
Tf^4 ;REM*223 

FORJ=S TO 1 STEP -1 :REM*2 3 3 

PRINTS 4, MID$(BS,1 ,J + W(3) ) " . "MID$ ( BS , 1 ,W 
(1 )-2*J+-2)".":NEXT :REM*83 

FORJ = 1TOW( 4>-S:PRINTj!/4,MIDS(BS,1 ,W(3}-(-1 
)":"MIDS(B$,1 ,W(1 ) t":":NEXT :REM*25 

GOSUB660:S=W( 3) :F1 =S:F2=S :F0RJ=1 TOW( 2 ) 

:REM*1 31 



5fi / RUN si'tcL^u. issL'K ml 



Listing 1 contimtrd. 

410 y=l+(-i*(J<=sn + (-i=*(J< = (w(2)-s) } ) :0N Y 
GOTO44S),4 30,420 . :REM+115 

420 X$ = " :":IFF1THENXS = " .":X = F1 :GOTO450 

:REM*195 
430 PRINTf^4,":"MID$(BS,1 ,S) ; :GOTO460:REM*39 
440 X$ = ":":IFP2THENX$ = ".":X = S-F2 + 1 :REM*n3 
450 PiaNT#4,MID${D$,l , X) " • "MID$ ( D$ , 1 ,S-X) ; 

:REM*157 
460 ZS="":IF(J>1 )AND(J<6)THEH2$=" "+R$(J-1) 

:GOTO500 ;REM*59 

470 IF(J<W(6) )OR(J>W(6)+6)OR(INT(j/2) <>J/2) 

T11EN500 :REM*225 

480 Z$=AD$( (J-W(6) )/2 + 1 ) •.CZ = LEN(Z$) :IFCF = 0T 

HENCZ=CI :REM*75 

490 X=INT( (W( 1 )-CX. )/2) : Z$=MID$ ( B$ , 1 ,X)4.Z$ 

:REM*151 
500 2=LEN( Z$):Z$=Z$+MID$(B$,1 ,W(1)-Z) : PRINT 

)?4,":"ZS":"; :REM*21 1 

510 X$=":";ON Y GOTO540,530,520 :REM*3 

520 IFF1THENX$=".":X=F1 :F1=F1-1 :GOTO550 

: REM* 10 
530 X=0:GOTO550 :REM*234 

540 IFF2TiiENXS = ".":X = S-F2+l :F2 = F2-1 :REM*90 
550 PRINT^4,MID$(B$,1 ,S-X) ;X$ :REM*232 

560 NEXT:GOSUB660:FORJ=1TOW( 5J :REM*106 

57 PRINTf^4,MID${B$,1 ,W(3) + 1 ) " : "MID$ (B$ , 1 ,W 



(1 ))' 



;NEXT 



:REM*104 



580 GOSUB660:FORJ=1TO6:PRINT^4:NEXT: PRINT" { 

CRSR DN){10 SPACES USHFT MJAKE ANOTHER" 

;:GOSUB680 :REM*154 

590 IFA$="Y"THEN280 :REM*84 

600 PRINT#4:CLOSE4 :END :REM*194 

610 PRINT" {2 CRSR DNs } " :X$ = " {SIIFT E]NTER"+P 

$+" ADDRESS LIMES:" :PRINTTAB{ (40-LEN(X$ 

)>/2)X$"{2 CRSR DNS}" :REM*148 

620 Z=W(1)-1;F0R J=1 TO 4 :REM*152 

630 PRINTMIDS(STR$( J) ,2)"> " ; : SYSSUB , T$ { J ) : 

PRINT: PRINT :REM*200 

640 IFLEN(T$(J) ) >Z THENPRINT"{CRSR DN}[SHFT 
DINE TOO LONG, MAX IS"Z"CI[ARS. {S»FT 

RJEENTER." :REM*222 

650 NEXT: RETURN : REM* 80 

660 PRINT)^4,MID$(B$,1 ,W(3) + 2) ; :REM*23 6 

670 FORJ = 1TOW(1 ):PRINT|?4,"-"; :NEXT: PRINT#4 : 

RETURN :REM*134 

680 PRINT" [Y/N]? "; :REM*14 

690 A$ = "" :GETA$: IF(AS< >"Y" )AND(A$<>"N" )THEN 

690 :REM*178 

700 PRINTMID$("YESNO " , -1 * ( AS = "y" ) -4* ( A$ = "N 

"),3) :FORJ=1TO80:NEXT:RETURN :REM*1 38 
710 PRINTTABdl )"(2 CRSR DNs } "T$ ( 1 ) : PRINTTA 

B(in"(CRSR DN)"TS(2)"{2 CRSR DNs}":RET 

URN :REM*22 4 

720 DATA 32,253,174,32,139,176,133,251,132, 

25 2, 32, 1 43, 173, 160, 0,32, 207, 255 :REM*22 2 
730 DATA 201,13,240,6,153,0,2,200,208,243,1 

92,1, 208, 8, 173, 0,2, 201, 32, 208,1, 136 

: REM* 10 
740 DATA 132,253,152,32,125,180,165,99,160, 

2, 145, 251, 136, 165, 98, 145, 251, 136 

:REM*120 
750 DATA 165,97,145,251,165,253,240,10,185, 

0,2,14 5,98,200,196,253,208,246,96 

: REM* 1 
760 DATA 57,26,6,13,19,14 : REM* 38 

770 REM DEFAULT RETURN ADDRESS :REM*143 

780 DATA "(SHFT M}ICHAEL {SiJFT B)ROUSSARD" 

:REM+55 
790 DATA "1313 6 {SIIFT L}AZY {SHFT GfLEN { Sli 

FT CtOURT" :REM*91 

800 DATA "(SHFT lUERNDON, {SHFT V}IRGINIA(2 
SPACEs}22071-2326" :REM*17 

81 DATA "" :REM*1 1 II 



MOVING? 

SUBSCRIPTION 
PROBLEM? 

Get help with your subscription by 
calling our new toll free number: 

1-800-645-9559* 

between 9 a.m. and 5 p.m. EST, 
Monday-Friday. 

If possible, please have your mailing laliel 

in from of you as we!l as your tancelled 

check or credit card statement if you are 

having protjleins vvitli paymcriL 

If moving, please give both your 
old adtlress and uevv address. 

• Nov York Slali- rt-siiieiit.v c ;ill l-SIMI-T:)^ 91 1'J, 



Graphics 
Converter 



Is 




Ea.sily converts Print 
Shop graphics to 
Print Master Graph- 
ic.'; 
Easily converts Print 



Master Graphics to 
I tjraphics 
ar 2 disk 



Print Shop 



rnnt stiop u; 

Supports 1 or 

drives (1541/1571) 



IVililSllOp 519.95 piu.s*.. 



FLEX 
FILE 

138 



rJATAB ASK 

FULLY 

VLIT17.ES 

THE 

POWER 

OF 

THE 



Kcrp jrniir drive En innd runnlnt 
atAtt w]lh PJlVSrCAL EXAM! 
TctI <ili|nmcnt ipcfd, xntl Kop 
pfiiitktn of your Con>]nn4orc 6'a,V 
d^ivc Inktructianb included ta 
-icjjutt and fix lit^drivc^ 




CIrcIo 432 on Reader Service csrd. 



RUN SPECIAL ISSIJK mi I 57 



Master Menus 

Start your menu-driven programs 
with an eye-catching main-menu display. 



ByJIMPELLECHl 




One of thf most important ele- 
ments of any successful pro- 
gram is lis introduction. The 
appearance of the opening displays 
can will or lose an audience. 

'I'he two Master Menus prof^rams 
provide a professional-looking main- 
menu screen with colorful, animated 
special effects. You can easily adapt 
the menu to any program you might 
develop. 

The two (jrograins consist of the 
Basic main program, entitled Master 
Menus (Listing 2), and a Basic loader 



called MUMenu-Window (Listing 1) 
that creates windows. These two pro- 
grams are designed to go at the begin- 
ning of your program listing. 

Customizing the Menu 

By making slight changes to a few 
lines in the Master Menus listing, 
you can design the menu for your 
program's needs. I set u]) Master 
Menus fora maximum of seven menu 
choices, to he selected hy keys 1 -7. If 
you need fewer choices in your pro- 
gram, alter line 1 120 to check for 



fewer keypresses, I'tir example, to 
test for keys 1-3, change the second 
CI IRS number to CHR$(51). Altering 
this line won't affect any other part 
of the program, so you won't have to 
rewrite portions of 1 lie listing. 

In line 1250, insert a ;i4characier 
message — perhaps instructions for 
choosing from the menu — that will 
scroll continuously across the screen. 

It) lines ] 29,7- 1 32r>, insert up to 
seven menu items, each up to Ifichar- 
aclers long, on the appropriate lines. 
The periods in the lines indicate 
where to enter the characters. Don't 
erase any periods, even if you don't 
use them all. 

Lines 1363-1455 hold the instruc- 
tions for branching to .sections ol' 
yoin' program that the user choo.ses. 
Change diese locations to match your 
program. 

Program Functions 

To use these programs, t)^e in ML/ 
Menu-Window (Listing 1) and save it 
to disk. Next, type in and save Master 
Menus (Listing 2). Run ML/Menu- 
Window, then load and run Master 
Menus. 

You must have MUMenu-Windoiv 
on disk with any program that uses 
Master Menus. MUMenu-Window 
]>okes the machine language in il.s 
Data statements into upper memory 
at SC100-$C318 (decimal 49408- 
49944). 

Add Master Menus to your pro- 
grams. Your opening menus should 
then be winners! [fi] 

Address all author mneapomlence to 
Jim Pellechi, 269 Pinecone Si., Middle 
hiaml, NY 11953. 



58 / RUN SPKCIA!. ISSl'K IW 



RUN It Right 



C-64; disk dme 



IIXUSTRATED IIV M.\RV A.S.S bMlTii 



Listing 1. MUMmu-Windm 



1|S REM WINDOW LOADER BY JIM PELLECHI . . . 

:REM*198 

12 REM INITIALIZE THE FOLLOWING VARIABLES I 

N YOUR BASIC PRGS: :REM*172 

14 REM UP='19152:DWN = UP+58:LFT=UP + 104: 

: REM* 18 

15 REM RHT=UP+1 69:RVS=UP+232:COL=UP+293 

: REM* 27 

16 REM FILL=UP+323:BRDR=UP+356 :REM*58 

17 PRINT" {SM FT CLR}" :REM*7 

20 FORX=491 52T0498Si4:HEADZ:PQKEX,Z:L=L+1 : PR 
INT" {HOME) "TAB (1 ) "READING BYTE :"L: NEXT: 

:REM*6 

21 DATA 32,169,193,134,184,165,185,166,186, 
32,5,194,32 :REM*207 

22 DATA 55,194,166,188,202,48,21,24,165,176 
,105,40,133 :REM*222 

23 DATA 178,133,182,165,177,105,0,133,179,3 
2,105,194,202 :REM*1 31 

24 DATA 16,235,164,187,185,156,194,145,176, 
185,196,194,145 :REM*170 

25 DATA 180,136,16,243,48,109,32,159,193,13 
4,184,32,252 :REM*1 1 1 

26 DATA 193,170,165,185,32,5,194,32,55,194, 
166,188,202 :REM*2 

27 DATA 240,217,56,165,176,233,40,133,178,1 
33,182,165,177 :REM*109 

28 DATA 233,0,133,179,24,32,105,194,202,16, 
234,48,193 :REM*128 

29 DATA 32,169,193,134,184,32,252,193,165,1 
85,166,179,32 :REM*131 

30 DATA 5,194,160,0,177,176,133,178,177, 18 
0,72,144,13 :REM*222 

31 DATA 200,177,176,72,177,180,136,145,180, 
104,145,176,200 :REM+97 

32 DATA 196,187,144,239,165,184,208,3,169,3 
2,44,165,178 :REM*206 

33 DATA 14 5,176,104,145,180,198,179,198,188 
,16,201 ,48,61 :REH*137 

34 DATA 32,169,193,134,184,32,252,193,155,1 
85,166,179,32 :REM*136 

35 DATA 5,194,177,176,133,178,177,180,72,16 
4,187,240,15 :REM*35 

36 DATA 136,177,176,72,177,180,200,145,180, 
104,145,176,136 :REM*78 

37 DATA 208,241,165,184,208,3,169,32,44,165 
,178,145,176 :REM*155 



38 DATA 104,145,180,198,179, 
48,56,32,176 

39 DATA 193,150,0,177,122,20 
41 ,183,134 

40 DATA 191,169,0,44,159,255 
,193,165,185 

41 DATA 166,179,32,5,194,177 
,176,165,189 

42 DATA 208,4,165,191,145,18 
8,179,198,188 

43 DATA 16,226,32,233,193,88 
134,191 ,32 

44 DATA 252,193,155,185,166, 
5,191 ,145,180 

45 DATA 136,16,251,198,179,1 
8,221 ,32,76 

46 DATA 194,165,185,166,179, 
0,1 45,176,165 

47 DATA 189,208,4,165,191,14 
1 ,198,179,198 

48 DATA 188,16,228,48,188,32 
,155,179,32 

49 DATA 5,194,155,190,145,17 
,165,191 ,145 

50 DATA 180,136,15,241,198,1 
228,48,221 ,165 

51 DATA 185,166,179,32,5,194 
5,165,189,208 

52 DATA 4,155,191,145,160,13 
0,237,198 

53 DATA 179,198,188,240,194, 
2,176,193,32 

54 DATA 241,183,96,32,233,19 
8,41 ,63,133 

55 DATA 185,32,241,183,138,4 
,241 ,183,202 

56 DATA 134,187,24,155,185,1 
76,16,32,241 

57 DATA 183,202,134,188,24,1 
201 ,25,176,1 

58 DATA 96,32,233,193,88,76, 
15,181 ,176 

59 DATA 72,189,141,194,149,1 
1 94,202,16,241 

60 DATA 96,166,186,138,24,10 
6,72,169,216 

61 DATA 133,176,172,136,2,13 
5,176,105,40 

62 DATA 133,176,165,177,105, 
6,240,24,104 



198,188,15,203, 

:REM*1 20 
1 ,44,208,8,32,2 

:REM*1 45 
,133,189,32,252 

:REM*254 

,176,73,128,145 

: REM* 61 

0,136,16,239,19 

:REM*1 42 

,96,32,159,193, 

:REM*3 

179,32,5,194,16 

:REM*124 

98,188,16,235,4 

:REM*1 1 

32,5,194,165,19 

:REM*1 24 
5,180,135,16,24 

:REM*1 31 
,76,194,165,185 

:REM*162 
6,165,189,208,4 

:REM*231 
79,198,188,240, 

:EEM*134 

,165,190,1 45,17 

:REM*61 

5,48,4,160,0,24 

:REM*222 

16,222,48,185,3 

:REM*93 

3,32,241 ,183,13 

:REM*148 

1 ,31 ,133,186,32 

: REM* 51 

01 ,187,201 ,40,1 

:REM*2 44 
65,186,101 ,188, 

:REM*1 55 

72,178,120,162, 

:REM*56 

76,104,157,141 , 

: REM* 81 

1 ,188,133,179,9 

: REM* 5 4 

6,132,177,24,16 

: REM* 4 3 

0,1 33,177,202,1 

:REM*164 



RUN SPKCIAL ISSUE 1987 / 59 



Listing I fmilmuftl. 



63 



64 



65 



66 



67 



68 



69 
70 



71 



DATA 

,0,13 

DATA 

208,3 

DATA 

63,19 

DATA 

177,1 

DATA 

4,169 

DATA 

3,183 

DATA 

,136, 

DATA 

,133, 

DATA 



101 ,17 

3,177, 

3,9,21 

,169 

32,44, 

6,194, 

16,236 

22,2(il 

44,208 

,255 

133,18 

,164 

187,17 

16,245 

179,13 

181 ,16 

133,18 



6,133,176,133,180,165,177,105 
41 :REM*169 

6,133,181 ,164,187,96,165,184, 

:REM*74 
177,176,153,156,194,177,180,1 
136 :REM*165 

,96, 32, 169, 193,1 34, 190, 160,0, 

:REM*154 
,8,32,241 ,183,134,191 ,169,0,4 

: REM* 167 
9,32,252,193,96,41 ,3,9,216,13 

:REM*212 
7,178,145,176,177,182,145,180 
,165 :REM*183 

3,177,165,178,133,176,165,183 
5,182 :REM*202 

0,96 :REM*147 



Listing 2. Master Mmits. 



1005 
1010 

1025 
1030 



REM MASTER MENU UPDATE 5/17/86 (2/17/8 
6) BY JIM PELLECHI :REM*1 

REM SETUP /BLANK SCREEN :REM*60 

CLR:POKE532 8fi,0:POKE53281 ,0: POKE646 ,8: 
POKE53265,PEEK(5326 5)AND239 : REM*! 27 
REM WINDOW VALUES :REM*83 

UP=491 52:DWN=UP+58:LFT=UP+104:RMT=UP+1 



:REM*22 
:REM*161 

:REM*75 

:REM*43 
; iGOSUBI 

:REM*20 

:REM*1 70 

POKE53265,PEEK{5326 



69:RVS=UP+232:COL=UP+293 
1031 FILL=UP+323:BRDR=UP+356 
1035 MG$="{HOME) {20 CRSR DNs}" 
1045 REM MENU DISPLAY 
1050 PRINTCHR$(8)"(SHFT CLR)(HOME) 

240 
1060 REM SCREEN OFF 
1065 SYSCOL,0,0,40,25,0 

5)OR16 :REM*249 

1075 REM SCREEN APPEARS :REM*207 

1080 FORX=1TO22:SYSDWN,3,0,34,22,1 :SYSCOL,0 

,0,40,1 ,8:NEXT :REM*234 

1085 PRINTLEFT$(MGS,7) ;:GOSUB1265 :REM*1 1 3 
1095 REM SELECT ROUTINE jREM*123 

1100 A$="":POKE198,0:SYS RVS , 1 2 , 20, 1 6 , 1 ,8:C 

=C+1 :IFC=15THENC=1 :REM*22 

1105 LL=1 1 :FORLC=29T032:LL=LL-1 :SYSC0L,LC,2 

0,1,1 ,C:SYSCCL,LL,20,1 ,1 ,C:NEXT:REM*35 
1110 FORTR=21T06 STEP-2:SYSCOL,32,TR-l ,1 ,1 , 

C:SYSC0L,7,TR-1 ,1 ,1 ,C :REM*2 

1115 IF TR/7=INT(TR/7)THEN SYSLFT , 3 , 2 , 34 , 1 , 

1 :REM SCROLLS MESSAGE :REM*35 

1120 NEXT:GETA$:IF A$<Ctm$(49) OR AS>CHRS(5 

5)THEN1100 :REM*84 

1125 ME=VAL(A$) :IFC/2<>I[JT(C/2)THEN SYS RVS 

,12,20,16,1,8 :REM+135 

1135 REM ROTATE/DISPLAY SELECTION :REM*9 

1140 FOR X=1 TO ME:READ CL : NEXT :0N- ( ME=7 ) GO 

T01145:FOR X=ME TO 6 : READ XX: NEXT 

:REM*176 
1145 FOR X=1 TO ME: READ CC: NEXT: FOR X=l TO 

5: SYS LFT, 12,20, 16, 1 ,0: NEXT :REM*61 

1150 SYS COL,8,20,24,1 ,CL:POKE64G,CL:PRINTM 



I— With' 



BERLITZ 



It takes less time than you think 
to learn a foreign language. 



TIk' ciisc and t'tieclivt-ncss ofiliis rfinarkaWe Icarn-ji-himn.- nmeram sliould 
comcitv iiOMirprisL'. Il lui«. ht-cii ik'i doped bylhctxpLTtsal Bcrlilz, anamc 
•.yndiiyniDiis willvcvt.'dl(;ivi.v in l:inf;u:i!;i.' inslruclion. 

Bcyin wilh iIk- liiniDus tk-rlil/ /l-ROi;<ic'rci5fs. si) named bctauscthfyMarl 
\ou "from /LTo" ill iL-arniim vour iitm lanyiiaj'.c. I [ii>.i.-mirsi;,vOiii.'hn>itiL's in a 
iiandsomc briL't'casf. tiinlains llit* 'JIl-miiiulL' /I^RO tassflli-, 40 lessons on five 
Ml-miniilftassi'lles. fi illuMraled vund and phraso inuiks. a mo-«ay potkel 
itielionary. aiiii a verb leiivi: linder 

ir><iuretimgi;iny is niM ri'imlnirsinKSiiu Tiir IliiMimcse. Ilii'ciisl 
i>>l;i\-deUnelil»le ifiisvil fur tnisiiiesv |)ur[»i)sev. II \oiiaiL- not 
aiiiipk'K'lj ".aiislial. sijnplj rclurn Uicaiiifseand die lape iilaver 
williin 31 (lavs, and receive a lull rcl'unil. 



Try The BERLITZ Learn-At-Home 
Language Course lor 21 Days . . . 
RISK- FREE. 




[mi vi,iiirvMmi,T>K'Jki.*oru[alit ■^MnliUit^.rMili.ihnlt'tri'i 



I 



WITH VOUB ORDER 
_This_Portabie Stereo Cassette Player 

•4 Track 2 Channel 
Stereo 

• Ad|ustab1e headset 
with Gord 
^ \ '^^^^^\ * Handy belt clip 
^\ ^^^^V • 4'^" X 3%" X 1 W 



(Baltorlesiiotirclu[Ji3tl) * 





I ('(Hntik'tt'.mJ iiKiil UK 

UK R 1,1 1/ I'liBI JCvnONS. INt ., Dili' 1.2301 
B66 Third Ave. 14lh Fl. New York, NY 11KIJ2 
n ^ HS! Please send nievour Berlitz Camprehfnsiift asset ktimrscM at 
SI4.s.()fl plus S7.,S0tbrshippingand insiirod delKery 

D Frtneh 7611Kt D Spanish 7fil0.1 Q German 7(il()l [ 1 liatiiin 7()I(I2 
D And witli my order, send me my KRKE portable stereo eassetle pkiyer lOOOl 
Pk'asc cheek metlmd ot'paymont: 

l-l Cheek ornlniieyorder— payabkMo Deri it/ Publiealions. liie. 
D ( 'li.irec my; D Anieriean 'l;.>ipre.ss □ Visa 

D Mastereard □ Diners Cliih 

t ard « . lixp, Date 

N;imc , 



Siijnaiiire 

NVamtNJ. res idenis 11 ikl sales tin. 



- Stale - 



-Zip, 



60 / RUN m.v\M. issi:!' ml 



Circio AOB on RoBdei Sarvlce card. 



1165 

1175 
116)9 

1185 

1190 

1200 
1205 

1210 

1215 

1225 

1235 
1240 

1245 
1250 

1255 

1265 
1270 



G$SPC(24)ME"(3 CRSR LFs}i^" :G0SUB1 340 1280 

:REM*248 1285 
REM FLASH CHOSEN CATEGORY :REM*226 
FOR X=l TO 16:SYS RVS, 1 3,ME*2+4 , 1 6 , 1 : D 1295 
EL=60:GOSUB1225:NEXT :REM*143 

REM BUBBLE CHOICE :REM*245 

SYS FIL,3,3,34,1,32,0:DEL=20:FOR X=ME 1300 
TO 1 STEP-1 :F0RSH=1T02 :REM*60 

SYS UP,8,X*2+1 ,23,4,1 :G0SUB1 225: NEXT :N 
EXT :REM*31 1305 

FOR X=l TO 3:SYS UP, 0,0 , 40, 5, IGOSUBI 2 
25 : NEXT: POKES 3280, CL:POKE64 6, CL 

:REM*142 1310 
REM COLLAPSE MENU : REM* 40 

GOSUB13 40:FOR X=1 TO 13:SYS RHT,7,5,13 
,16,0: SYS LFT, 20, 5, 13, 16,0: NEXT: REM* 17 1315 
SYS FILL,20, 5,1 ,16,71 , CL : F0RX=1 T08 : SYS 
FILL, 20, 4+X, 1,1, 32,0 :REM*218 

SYS FILL,20,21-X,1 ,1 ,32,0:NEXT:GOTO1 34 1320 
5 :REM*37 

FOR XX=0TODEL:NEXT:RETURN :REM*1 81 
REM DISPLAY :REM*99 1325 

PRINTSPC(13)"{CTRL 9) MASTER MENUS " 

:REM*56 
PRINTSPC(13}"{14 COMD Ys)" :REM*17 1330 
PRINTSPC( 3)". -CHOOSE MENU SELECTION 1 
THRU 7. ." :REM*32 1335 

PRINTSPC( 3) :FORX=1T034:PRINT"-"; :NEXT: 
PRINT"{2 CRSR DNs}" :REM*177 1340 

REM MENU COLOR :REM*107 

FOR TR=5T017 STEP2 :READCL:SYSFILL, 9,TR 13 45 
,22,1 ,121 , CL: NEXT; RESTORE :CL=11 13 50 

:REM*234 1460 



REM COLOR DATA : REM* 2 51 

DATA 3,5,8,6,11,2,14,1,13,7,14,15,10,3 

: REM* 1 2 
PRINTSPC(8)" {CTRL 9) (CTRL 4} {CTRL 2} 

1) {CTRL 4} {CRSR DN ) 

:REM*116 
PRINTSPC(8)" {CTRL 9} {CTRL 6) {COMD 6) 

2) {CTRL 6) {CRSR DN ) 

:REM+167 
PRINTSPC(8)" {CTRL 9) {COMD 1} {CTRL 8) 

3) {COMD 1 ) {CRSR DNl 

: REM* 16 
PRINTSPC(8)" {CTRL 9] (CTRL 7) {COMD 7) 

4) {CTRL 7) {CRSR DN) 

:REM*221 
PRINTSPC(6)" {CTRL 9} {COMD 4] {COMD 8) 

5) {COMD 4) {CRSR DN} 

" :REM*100 

PRINTSPC(B)" {CTRL 9) {CTRL 3) {COMD 3} 

6) {CTRL 3) {CRSR DN} 

" :REM*221 

PRINTSPC(8)" {CTRL 9} {COMD 7} {CTRL 4} 

7) {COMD 7} {CRSR DN ] 

" :REM*182 

PRINTSPCt 7 )"**** ENTER {2 SPACES ) SELECT 
ION ****(HOME)" :REM*221 

SYSFILL,7,5,1 ,16,42:SYSFILL,32,5,1 ,16, 
42:CL=8;REM STAR COLUMNS : REM* 1 8 
SYSCOL,7,5,1 ,1 6, CL:SYSCOL, 32,5,1 ,16,CL 
: RETURN: REM STAR COLORS ;REM*5 

REM CONTINUE : REM* 36 

ON ME GOTO 1460 :REM*125 

F0RX=1T01 500: NEXT: END : REM* 7 7 



Copy Wor/cfw/de Sfiorf -wave Radio 
Signals on Your Computer 



Remember the fun of tuning in all those foreign broad- 
cast stations on the short-wave radio? Remember those 
mysterious sounding coded tone signals that baffled 
you? Well, most of those beeps & squeals are really 
digital data transmissions using radioteletype or Morse 
code. The signals are coming in from weather stations, 
news services, ships & ham radio operators all over the 
world. Our short-wave listener cartridge, the "SWL", 
will bring that data from your radio right to the video 
screen. You'll see the actual text as it's being 
sent from those far away transmitters. 



The "SWL" contaias the program in ROM 
as well as radio interface circuit to copy 



MICROLOG 

INNOVATORS IN DIGITAL COMMUNICATION 




Morse code and all speeds/ shifts of radiotelet>'pe. It 
comes with a cable to connect to your radio's speaker/ 
earphone jack, demo cassette, and an excellent manual 
that contains a wealth of information on how to get the 
most out of short-wave digital DXing, even if you're 
brand new at it. 

For about the price of another "Pac-Zapper" game, you 
can tie your Commodore 64, 128 or VIC-20 into the 
exciting world of digital communications 
with the Microlog SWL. S64. Postpaid, U.S. 
MICROLOG CORPORATION, 
18713 .Mooney Drive, 
Gaithershurg; Mar\-land 20879. 
Telephone: 301 258-8400. 



Clide 427 on Reader Service card 



RUN Sl'tCIAL ISSUE 1987 / 61 



MIKE KONSHAK 

"He works real hard at meeting the 
needs of his users. I wish he would 
come to bed," 
Becl<y Konshak, 26 (wife) 

"Computer programs, give me head- 
aches but Mike's are easy on the 
eyes and gentle on the mind." 
Susan Konshak, 65 (mother) 

"I don't think he charges enough for 

the stuff!" 

Ljeslie Konshak, 69 (father) 

"I wish I could write programs like 

these, they're neat!" 

Sarah Konshak, 12 (daughter) 

"dfile is the best program I've ever 
written, because folks are always 
calling with new ideas.' 
Wke Konshak, 39 (author) 



^^^^^ 



dfile 128 



2.0 + 



DATABASE MANAGEMENT SYSTEM 

• 30% more records 

• More reporting capabilities 

• Bar charts of field data 

• More powerful editing functions 

FAST MEMORY MANAGEMENT FOR 

U Geneology studies 

D Inventories and collections 

n Mailing lists/labels 

n Financial reports 

n Calculations on data 

Bonus software; includes DBMS file 
utility programs clone, merge, read, 
print, export, import and more. 



49«5 VALUE 
ONLY 



2Q95 

^ W U.S. 



Wordfile 128 .0. 

Wordprocessor with mail merge 

• 80 column monitor required 

• 30% more capacity 

• Pop-up help screens 

• Form letters are easy to do 

• Uses dfile records and reports. 

BONUS SOFTWARE; INCLUDES 
spelKile 128, spelling checker with 
24,000 word dictionary. 

5495 VALUE origs 



ONLY 



29' 



U.S. 



VISA/MC ACCEPTED-NO SHIPPING 
CHARGES FOREIGN ORDERS ADD 2.00 



Michael soft™ 

4821 HARVEST COURT, (303) 596-4243 
COLORADO SPRINGS, CO. 80917 USA 

AUSTRALIA CALL: 059-643-793 
DEALER AND DISTRIBUTOR INQUIRES 
INVITED 



Circle 423 on Rfladi^r Service card. 
()2 / RUN •il'ti.iM. ISSfE 1987 



c 



From p. 22. 

I discovered that this is the only combi- 
nation that produces an error menage 
when listed. The other letter i of the (dpha- 
bet produce Basic keywords. Have I discov- 
ered some secret code, or is there some 
mundane explanation? And what use is it, 
apart from shortening REM statements'' 

John Shimwell 
San Francisco, CA 

A: You have discovered an undocu- 
mented feature (a bug) in Microsoft 
Basic, Unfortunately, we can't name it 
after you, as others liave also discov- 
ered iL W^at is happening is that ihe 
internal tokens, used to save memor)' 
space when entering the various Basic 
key^vords, have the .same ASCII value 
a.s the key combinations you tried. 
Normally, Basic knows when a partic- 
ular value is a keyword and when ii is a 
keystroke, but inside a RKM statement, 
it forgets. No harm is done, hut unless 
you want the unusual effects, it's best 
to eidier avoid capital letters inside a 
REM statement or precede them with 
a quotation mark. 

As for the usefulness of the effect, 
you could also use it as a secret code 
that could only be read after lyping it 
into a REM statement and listing it. 



Q: Haio can I make my printer print what 
I type onto ihe screen? 

Raymond Kirlin 
Seattle, WA 

A: Here is a simple routine to make 
your ccmiputer plus printer act like a 
typewriter and send everytbiiig you 
type to both your printer and the 
screen. To quit, press the @ key, 

10 OPEN .1,1 

20 GET AS:IF AE = "" THKN 20 

50 IF AS = '■©" THEN 70 

40 PRINT #4 AS; 

50 I'RINT.^; 

SO GOTO 20 

70 CLOSE 4 

80 END 



Q: Do you know of wnv wny to get some- 
thing printed with both upper- ami lower- 
ra.se letters? 

Mike Manning 
Sauk Village, IL 

A: Yes, but the meth<Kl depends on 




N I C 

the device in question. To shift to Text 

mode {lower- and uppercase) on the 
screen, press the Commodore key 
while h()lding down the shift key. To 
output text (o a Conunodnre serial 
bus printer, such as the 1.525, open 
your file to it with a secondary ad- 
dress of seven (i.e., OPEN 4,4,7). 

If you have a non-Commodore 
printer, you'll need an interface able 
to convert the Commodore character 
codes (I'ET.SCtl) into those used by 
tin- primer (usually /VSCII). 



Q: I have been unable to determine hmo — 
or if it is even possible — lo print out the 
run of a program on my 1541 Commodore 
printer. Can I do this with my C-6't? 

Evelyn Arnold 
Fort Lauderdale, FL 

A: Hmmm, the 1541 is a disk drive. 
Weil, nt} matter. We can do it both 
ways. This is one of tliose rare times 
when theCMD comniantl is es.sential. 
To dump a program rini to paper. 
Start the program this way: 

OPEN ■!,•! 

CMD 4:GOTO 100 

where line 100 is the first line in the 
program. When you are done, type: 

PRINT#4 
CXOSE -1 

(but don't abbreviate Print# as ?#!). 
While your program is running, what- 
ever would normally go to the screen 
will now go instead to the device spec- 
ified in the Open statement for file 
4— in this ca.se, ihe printer. 

To send yoiu' running j)rograni to 
die disk, instead, simply change the 
Open statement in the above se- 
quence to: 

OPEN 4.8,2,"0:DUMP,S.W" 

(DUMP is replaced with the filename 
you choose,) 

Let me add one qualification here: 
do not inchide a Cet statement in 
your program. One of its lesser- 
known effects is to turn olf any cur- 
rent CMD command and halt dumps 
to a printer. 'I'o get around it, replace 
all lines such as this: 

115 GETA$:IFA$ = ""THEN 115 

with an Input statement: 

It 5 INPUT AS 



R O 



R 



5. Entering Programs 

Q; In many of the program listings iti 
RUN, there an- two diaracters thai I can- 
not lofate on my 6-('s keyboard. The diar- 
acters are the left and right haces. How 
can 1 locate this symbol on my keyboard? 

Thomas Skeen 
S. Lake Tahoe, CA 



A: The braces, { and }, are not on 

Commodore keyboards. Tliat's one 
reason they are used in RUN's pro- 
gram hstings— they mark off" things 
you don 't type in as printed. When you 
see them, notice (lie words between 
the braces, hisiead of the braces, press 
the key named between them. Thus, 
if you see 

10 PRINT '■{CLR}" 

do not type either the {, the } or what 
is between them. Rather, when you 
reach that spot in the line, press the 
key labeled CLR. Since It is printed 
on the upper half of its keytop, you'll 
also need to hold down the shift key 
as you press it. If your computer is in 
Graphics mode, as it is when first 
turned on, the result will look like a 
heart within a box. 

Many printers are not able to prop- 
erly print the braces, but if yours can, 
you can print out both the left and 
right braces as foHows: 

JO OPEN 4,4 

20 PRINT#4,CHR$(li);l):Ri-M ASCII LEhT 

BRACK CHARAC IKK 
30 PRlNT#4.CnR$(i:ir.):RHM ASCII RIGHT 

BRfVCt GlIARACI ER 
40 CIX)SE 4 



j^ When I type in prograni^, ! always wse 
m many keyword abbreviations as possible. 
I've been told this saves memory. Invari- 
ably, though, I have to triake corrections, 
and when I list the lines, they appear unab- 
breviated. Have I scrubbed the abbrevia- 
tiom by listing at id editing? 

Tom Hedges 
Ft. MitcheU, KY 



A: Not at all. Although keyword ab- 
breviations are quite handy, they have 
almost nothing to do with the amount 
of memory used by Basic statements. 
Once you press the return key on a 
hne, abbreviated or not, it is con- 



M M I N G 

verted into a token that's even more 
abbreviated. In this form, each Basic 
keyword requires only one character 
space in memory. However, since full 
words arc needed when you list the 
program, the List command expands 
tokens in the listing itself into equiv- 
alent Basic words, without altering 
the program in memory. 

Feel free to use key^vord abbrevia- 
tions, but do so to save typing or to 
cram more on to a single program 
line, not to cut the ainouni of memory 
used to store a Basic keyword. 



Q: Between lines 57 and 58 of a program 
I typed, there is a lirie 32. It is out of 
sequence, ami I cannot delete it. Hotv can 
I get this line out of the prograttt? 

Ruth Fox 

Tonuwunda, NY 

A: No amount of deleting will re- 
move this line, because it isn't really 
a separate line. Rather, it is part of 
the line before it in the listing. If you 
list the preceding line (57 in your 
case), your spurious line (32) will also 
appear. To get rid of it, edit oi retype 
the preceding line (57). 



Q: \Vlien I make a mhtake and press the 
delete key, the error erases on the .screen, 
but still prints out on paper, h iliere an- 
other command I have to use? 

Darlene Davis 
Fairfield, CA 

A: I can think of two common causes 
for this problem. First, many new pro- 
grammers forget to press the icturn 
key after correcting a Basic program 
line on the screen. Until you press re- 
turn on that line, tlie correction will 
not become part of your program. 

Another common cause h a pro- 
gi-am that accepts all kcy.urokes, in^ 
eluding delete, as part of its input. 
The resulting data appeals all right 
on the screen, because the delctitm 
works normally there, but ii can't 
work on most printers. Even if your 
printer can back up one space, it can- 
not erase characters it has already 
printed. 

In tliis case, the solution is to modify 
the Get loop used to accept input data 
in your program. Add an If statement 
to make die Get loop notice the delete 
key; then, instead of adding die delete 



COMB 



Authorized Liquidator 




COMMODORE® 
VICMODEM" 

• Use with the Cammodore^ C64'", 
the SX-64orthe V I C-20 Computer. 

• Bell 103 Compatible. 

• Full Dufilex; 300 Baud. 

• Manual Dial Direct Connecting. 

• FCC Registeriid. 

This Modem is, LOW liquidation priced 
because it was closed out tiy Commo- 
dore* Add it to your computer for access 
to timeiy financidl information, news and 
reference libraries, .as near as your 
phone! An affordable introduction to 
phone/computer services; and you can 
communicate with computer users wfio 
also own modems! 

Use with data cassette (included), or with 
terminal programi software, available at 
computer stores. 
90-Day Limited Factory Warranty. 



Mfr. Ust Price 



Uquldatlon 
Priced At Only 



*59.00 



rt0mH-19O2-7O41-orz 
Shipping, handling: S4.Q0 each 
Commodore i« s, regialfcred Irademdift of Commodore 
ElH^tronics, Ltd. 

Cedit card cuslonwra can order by phone, 
24 hours 3 day. IBMS^ .-■ ■„ — 
?' da/s a wee)(. VtiA t*a*ot>-ca 

Toil-Free: 1-800^328-0609 

S4l«» OiiUide Ihe 4$ ccnit^uvut tlalet ore iiyitHflCl lo 
lipeclal condilaoni Pfed^c ^dll or iivrHe lo JnquJre. 



SEND TO: ttem H'1902 

C.O.M.B. Direct Marketing Corp. 
1405 Xenium Lane K/Mjr.neapolis, MN 5^41-4434 
Send Modem(t} W^rr. M: 902-7041 -072 sX Si 9 each, 
plus %A each (or ship. handJtng. {Minnu^ola rosii^onts add 
&"rti sales [J*.. Sdjt>', n? CO S orders.) 

D My check ar mangy o^dcr is enclosed, (No defays In 

processing orders paid by Chech. > 
Charais G M\^'- D WastcirC.irdfl D AmoricanExptOiB^ 

Accl Wo Exp. L 

PLEASE PfliMT CLEARLY 

N,imo , 

Address ^^^^^^^^-^^^^^^^^^^^^^^^^^^^_ 
City 



-ZIP . 



Phono L- 

Sign Here . 



C OM B C OM B C OM B 



RUN SPEOAl. ISSUE 1987 / 63 



CDmp-u-TEmp~ 

ATARI 800/XL, 13DXE, & COMMODORE 64 



TEMPERATURE MONITORING AND 
DATA ACQUISITION SYSTEM 



fEATUftCS inclii{l« cJimlJiv ot B or 16 limptrratLini 
cinwnnily r«ni^ of -1EJ"F to +1S0°r at apprtix, t 
ritQrii niolutJon, ilictranilc tnt^Uca p^Liti) diractly 
Into iht ioyilkk port, waithir-prO'tacTkd finwri, 
mflnui-drJvini loftwirt capabla of 11) libtlLng HanxOf 
iDcationt 12] HlfCtlnO Hiigh or low alarm ut poii^tt 
(3f hat'dcopy prmtocit* (4^ i«|action of dita umple 
timt irhttrvaft.fardl| ehannvUdS laconditn 4hQuri) 
!&} rtCQfdIng lantparitur* d*t« to diik {Dpiiorral). 

VERSION 1,0 aChannal... , $99.95 

Include* 2 »niQr», lofiwdrv, olectronic interfocfl. 
iTnJ hard copy 

VERStON^.O SChvnnfl... . . .£nS,9S 

Inciudct 2 tiniaii, lo'twaro, tflflCtrank interficfl, 
hard copy, and data itora^^ to tret frcm a'ak 

VERSION 3.0 16 Chinn«l 5179.9E 

Includes 4 teniQf], toifwAta, plecuonlc Interface, 
hard copy, and data itorage to and from dJiK 
AiJditJonil lantort (Each} . . . . , S&.75 



Applied Technologiei, Inc. 



Lyndon W*y. Kittoiy. ME 03904 
M/C ■ VISA accapted (207) 439-5074 

Dealer & Distributor Inquiries Invited 



Circle 403 on Reader ServJcs card. 




%)■ ^ LOTTERY +4 

►-< NOT WINNING WITH YOUR SVSTEW 
TRY OURS' 

WE'VE ALREADY WON THOUSANDS 
WITH IT AND WE'RE STILL WINNING' 

LOTTERY fias Ken ilesigntd 19 use !he 
compullng pawer o( the COMMODORE 
compuief 10 lwl|! you {ilay the various lottery 
games: PICK 3. PICK 4, LOTTO. SUPER 
LOTTO. 6. '49, LUCKY LOnERY. etc It can 
be used with any lottery game in whicti you 
picK the numbers. 

AVAILABLE ON DISKETTE ONLY 
SPECIFY M/ 128 or PLUS/4 

To order, sand S24.S5 lor each plus 

S3. 00 postage and hardling per order to: 

(Illinois [Bsidenls add 6% sales lax I 



^^2^^ 



O.O.D. orders call (3121566-4647 

GO 

Superior Micro Systems, Inc. 

PO Boi 713-'iVneelin9. IL 60090 
Dealei irQumes welcome' 






^S 



Cjrclo 400 on Rfladof Service card. 



I N I 



to the growing string of characters, 
have the loop reassign the string to all 
but tiie string's own last character, us- 
ing a subroutine similar to tlii.s: 

10 A$ = "" 

15 L = 1J-:X(AS) 

20 If L> 254 THEN 65 

25 GET G$ 

30 I'KINLGS; 

35 IF GS< > CHR$(20) THEN 50 

40 IP I. THEN AS = LEKT$(AS, L - 1) 

45 GCm) 15 

m IF GS = GHRS(13) THEN 65 

55 A$ = AS-tGS 

60 GO'IO 15 

65 RETURN 



Q- A shorl lime ago, f found a program 
for formatting a neiv disk. It would header 
a disk and then ask, "Do you want to format 
another Y/\'?" Could you furnish me with 
a program like this? 

Robert Smith 
Ennis, TX 

A: Here's a simple one; 

100 RiiM HE,\DERJFS 

110 OPEN 15,8,15 

120 ?'TKSERT A NEW OR REUSABU£" 

130 P'-DISK.'IHEN i'NTER A DISK" 

HO ?"IVAMi-;OF l-KiGElAKACTERS," 

I.'iO INPUT N$ 

160 ?"NC)W ENTER A UNIQUE 1-2" 

170 ?"GHARAC:rER l>ISKE'n'K ID." 

IHO INPUT IDS 

190 ?"WORKING. PLEASE WAIT." 

200 PRINT# i 5."NI):" -*■ NS + *'," + IDS 

210 INPU r#in,EN,EM$.E'rjiS 

220 IE EN = THEN 250 

230 r-"ERROR:"; KN:F.MS;ET;FLS 

240 ?"UN.AB1.E fO HFj\DER THIS DISK." 

250 r-PRFjSS 'V TO FORMAT NEXT' 

260 ?"DISK£1TE. OR 'N" TO QUTT." 

270 GET AS 

280 IF AS = "N" THEN CUXJSE I5:END 

290 IFAS!="Y"THEN 120 

300 GOrO 270 

If you want to use the program on 
a second disk unit, change the 8 in 
line 110 to the correct device number 
for that disk. Similarly, to use it on 
drive 1 of a dual disk drive, cliange 
the in line 200 to a 1. 



Q: Orcasionaliy, when I attempt to formal 
a disk on my 1541, my disk drive cranks 
for a minute or so and then the red light 
comes on, indicating an error. When I at- 



tempt to list the disk 's directory, I receive 
only garbage. When I attempt to format the 
disk again, the drive sometimes produces 
the same error and sometimes fonnats the 
disk properly. Do you know wny this occur.'i? 

Frank Cox 
Kindersley, Sask., Canada 

A: You've just described a typical 
disk failure when formatting. Such a 
failure usually means cither thai the 
disk wasn't seated propcily in the disk 
when you tried to formal it or that 
the disk is faulty. 

If you succeed in formatting the 
disk on your second try, after remov- 
ing and inserting the disk again, yoit 
probably don't have anything to wor- 
ry about. If a second try also fails, I 
would return the disk for a replace- 
ment (the disks I use are guaranteed 
for life). 

Howe\^er, you still ha\'e one more 
option: Use a bulk eraser (a big inag- 
net) on the disk and then try to format 
it one more time. Friends who do this 
claim it often works. 



Q: I have a Commodore 1541 drive tliat 
won't save any programs I mite. It does, 
however, save a file through my luord pro- 
cessor or from tny tennimd program. That 
hilled the theory I originally tuul — that my 
head is out of alignment. What could it be 
and what can be done about it? 

Jeffrey Luckett 
Rutherford, NJ 

A: If your disk drive is able to save 
files written by othei- programs, but 
not programs you write yourself, it's 
almost certain that tlie probleiu is in 
the syntax of your command, not in 
the disk drive itself Here is the cor- 
rect syntax (wording) to use when sav- 
ing to a Coiumodore-compatible disk 
drive a Basic program you have writ- 
ten on a Conmiodore computer: 

SAVE "0:MYPROGRAMNAMF,",8 

Replace MYPROGRAMNAME 

with your own chosen llleiiame t)f up 
to 16 characters. When you juess 
the return key, the disk drive motor 
should start up and run lor a short 
time. When it stops, lotjk at the front 
of the disk drive. If no lights are Hash- 
ing there, you've successfully saved 
your program, Othenvise, you have 
another problem. 



64 / RUN Sl'HCLU, ISSUE 1987 



ROGRAMM I N 



The mosi common problems in 
such cases are failing to format a 
brand new disk before tr)ing to use 
it to save programs and trying to save 
on the same disk two programs with 
the same name. It's also possible you 
have included an illegal character in 
your filename. To be sure, start out 
by limiting your filenames to the 26 
letters of the alphabet 



Q: I have a C-6-f and 1 54 ! and am heavily 
into programming. I've noticed thai when I 
save a Imlme program, it uses 40-78 blocks 
on my dkk. I dim 't see Iww. 

Robert Schiffrnan 
Hampton Bays, NY 

A: Most likely, your program altered 
the start-of-Iiasic or end'of-Basic point- 
er duriiiff a run. That's the problem. 
You saved your program to disk after 
running it. I suggest you never save a 
program to disk after running it. 

Instead, load the old version {if any) 
from disk, make your changes, save the 
new version and only then type RUN. 
In the case of your ten-line program, 
you need only load it, clear the screen, 
list all lines on the screen at once, type 
NEW, move the cm'sor back to tlie top 
of the screen and press the return key 
until all ten lines have been reentered. 
To be sure, list again. Then save the 
program before trying to run it. I'm 
sure it will then take only a few blocks 
on disk. 



Q: My 1541 drive will load, Imt will not 
save, programs, Somethitig may be out of 
alignmmt, because shortly before this, the 
write-protect tab on a disk came loose in 
tlie drive; it had to be pulled out and offered 
some resistance. Does this seem likely to be 
the cause? If so, do you think it s a problem 
that can be corrected at hornet 

James Grossie 
Houston, TX 

A: Yes, a write-protect tab caught in 
the drive can indeed cause the drive 
to load but not .save programs. The 
writeproteci sensor in the 1541 is op- 
tical (triggered by the breaking of a 
beam of light by an opaque object). 
Any opaejue object trapped within 
the path of that beam will prevent the 
drive from saving programs. 

As for correcting this situation, the 
first thing to try would !>c a can of 



compressed air with a narrow flexible 
nozzle that can be inserted into the 
disk slot. Use it to blow any dust or 
other foreign materials out of the 
write-protect sensor, which is located 
at the left end of the disk slot. 

If diis fails to correct the problem, 
you or a dealer may have to disassem- 
ble the drive and pick any remaining 
debris out of the sensor. This is a mat- 
ter of removing about a half dozen 
screws, so you might iie able lo handle 
it yourself if you are mechanically 
inclined and your 1541 is out of 
warranty. 

If, however, anything has been 
moved out of position or broken in 
the mechani.sm itself, you will proba- 
bly need the help of a dealer's service 
department lo fix thing,'; properly. 
But unless something is broken or 
other work is needed, the time re- 
quired should be minimal. 



Q: After typing in a program, f saved it 
to my 1541 disk, then loaded and ran it. 
Later, 1 wrote another one. It, too, loaded 
and ran all right. 

Now here's the funny part. When I lueni 
back to load the first program, I got the 
second instead. I can 't figure it out; 1 hope 
you can, 

Joe Nakles 
BlairsviUe, PA 



A: The problem often arises when a 
disk has been used for a while, con- 
tains some programs, and at least one 
program has been scratched. Then 
another program is saved, but some- 
thing happens and the save doesn't 
work. The red error light flashes and 
you know you have a problem. 

Your files have become cross- 
linked. The only sure cure is to copy 
the entire disk to a freshly formatted 
disk, copying tine file at a time, rather 
than using a disk backup program. 

The most probable cause is tliat at 
sotne previous time you scratched 
(erased) an improperly saved jjrogiam 
or file (one whose nairie ap])cared in 
the director)' with an asterisk next to 
its filctype, but ctmid not be loaded). 
For future reference, the proper way 
to get rid of such improperly saved 
files is w-ith the disk Validate command 
(known as Uie Collect command on 
thePlusMandC-lf)). 



\}iEs. siShiiLk iiSohivaxt, Dric. 



SUPER DISK LIBRARIAN 

A full tealureij disk cataloging and library 
system (or the C128 Willt one keypress all 
programs on a disk are cataloged and a label 
printedf Catalog up to 1000 disks and 15,200 
program names! Operates in fast mode with 80 
column display. Catalogs 64, 128 & CP/M Plus 
forfTiatted disk directories. Reads ever heavily 
protected disks! Printer output includes library 
index, foil library report, master program list, 
category program list & disk labels. Also 
contains full featured disk utilities section 
including all CBM DOS commands plus rename 
a disk, copy protect a disk, change disk tormat 
without adecting data & much more! Fully 
documented. Organize your disk library S 
more for only S29"95l 

1541/157! DRIVE ALIGNMENT 

Avoid costly repair billsl Insure maximum 
performance from your disk drive. 1M1/1571 
Drive Alignment diagnoses S reports Ihe 
alignment condition of Ihe disk drive as you 
perform adjustmenls. An on-Screen help menu 
is available while the program is running. Full 
documentation includes section on how lo load 
alignment program even when the disk drive is 
badly misaligned! Easy to use. Auto-boots to 
all modes. Works on 1541. 1571 in 1541 or 1571 
mode. C64. 0128 in ellher S4 or 128 mode Don't 
wait weeks for the repair service! Perform your 
own alignment in minutes! More fealures Ihan 
the competition and a better price' OnlyS34.95! 

PROGRAMMER'S NOTEBOOK 

Programmer's Notebook uses indexed liles to 
maintain records ol magazine articles, short 
routines, interesting tlps& tricks. It eliminates 
the need to maintain a notebook near the 
compuler while programming. It's different 
(rom the typical indexing program because It 
stores nol just the location of the material, but 
Ihe material itself plus a user comment line for 
special notes about the record. Very fast 
search & Display (about 3 sec. for 740 records). 
Program is menu driven & has full printer 
capability. Keep track of those imporianl 
subroutines! For the C128 & 1571. Disk -519.95 

MUSIC OF THE MASTERS 

Free Spirit's Music of the Masters series is a 
must for all music lovers. An hour of classical 
music per disk for Ihe CM or C128 in 64 mode. 
Mutic ol M Masters t - Handel, Haydn. Morart. 
Beethoven. Bach & many others' 
MutIc ol the Mgjtert II • Minuets, waltzes, 
sonatinas & more from Bach. Srahms, 
Beethoven, Chopin. Schubert & many others. 
Music of the Maslars III - Mostly Mozart. 
Music el the Masltrs IV - BesI of Bach. 
Music ollfie Maslers U - Popular ihemes from the 
greatest S best known works of Ihe Maslers 
S9.95 per disk, 2 for SI 7 95. 3 lor S24.95, 4 lor 
S31.95, all5forontyS38,95! 

The Winning Edge - The most comprehensive & 
amazing casino craps progr.irn ever oflered for 
the 064! Dlsk-S19.95 

FREE SHIPPING S HANDLINGI Illinois residents 
add 8% sales tax. Send check or money order 
to: 



Free Spirit Sollwore. Ini:. 

533 S. Edgewood 

(.a Grange. IL 60525 

Crde 430 on Reodsr Service card 



RUN SPEOAL BSUi- 19117 / 65 



I N 



Q; I was going to buy a C-128 computer 
and a 1571 disk drive until I heard rumors 
that the 1571 shares the same bug as the 
1541 in regard to the @Save command. Is 
(his true? 

John Menke 
Mt. Vernon, IL 

A; Leaving aside any discussion of 
the "truth" of the bug's existence, I 
suggest you don't use the ©Save com- 
mand on any Commodore computer. 
On the C-128, scratch any file you 
wish to replace and Dsave normally. 
Owners of other models can use 
equivalent Basic 2 commands. 



Q: Could you please explain why the C-64 
clears the screen when reading from or torit- 
ing to cassette? Is there any way of pre- 
venting this? Does it also happen on a 
monitor? 

Bob Wrobel 
Morris, IL 

A: Yes, no and yes. The 64 turns off 
(not clears) its screen when using the 
cassette to avoid interference in cas- 
sette operations by the VIC-II video 
chip. The video chip grabs control of 
the computer at unpredictable inter- 
vals to service its own needs. The de- 
lay this adds to the regular processor's 
operations would disrupt the timing 
routines used by the cassette if ilie 
VIC chip weren't first disabled. 



Q: Is there any way to transfer 7ny existing 
programs on tape far the C-64 onto a 1541 
disk, and if so, how? 

W.J. Gannon 
Siigem, NY 

A: If tile programs are in Basic, sim- 
ply load them iiuo the computer from 
the da{a.s,5etic, then resave them to 
disk. If they're in miieJiiiie language 
and have to be loaded with ",1,!" to 
avoid relocation in memory, you'll 
need a machine language monitor 
(available from user gioups) to save 
them properly. You'll also need to 
know where they are stored in mem- 
ory when loaded before the monitor 
can save them to disk. 

Copy-protected programs are an- 
other story — some companies have 
taken steps to prevent you from suc- 
cessfully copying their programs. In 



those cases, contact the company, tell 
them you've bought a disk and ask 
what (if any) trade-in policy they have 
for changing from a tape to a disk 
version of the program. Companies 
likely to be around for a while will 
have some reasonable update policy 
to handle this situation. 



j^' / have a C-64 with a cassette player 
and an SX-64 with a built-in disk drive 
and 710 tape port. Is there a way I can 
connect my SX-64 to my C-64 to transfer 
my tape programs to the SX-64 disk drive? 

Jeff Hickman 
Page, AZ 

A: If you can buy or borrow a 0-pin 
male-tomale DIN cable (i.e., a Com- 
modore serial bus disk drive or 
printer cable), you're in business. 

Simply hook up the cable to the 
serial bus connector on both com- 
puters, and then use the SX-64's disk 
drive from the C-64. It will behave as 
if it were a 1541 hooked directly to 
the C-64 along with the tape unit. 
Then simply alternate loading from 
cassette and saving to disk from the 
C-64, as follows: 

LOAD" name" 
S.WE"0;name".8 



Q: 1 lurue both a 64 and a VIC. Since the 
64 has better games, I don't get much tin* 
to use it with my whole family at home. 
Can I type a program on my VIC, save it 
on tape, take the tape to by 64 and load it 
there? 

Yosef Gutttnan 
Scranton, PA 

A: Yes. And nice to hear your com- 
puters are well used. 



Q: I am writing an adventure in which 
one program loads another. This aeates a 
problem, because the program being loaded 
must be shorter than the one loaditig it. 1 
have been avoiding this with REM state- 
tnents and dummy lines. However, this is 
very troublesome. 

Clinton Alleit 
Baird, TX 

A: Actually, only the first program 
loaded must be longer than all others 
loaded later, but the others may be of 



any smaller size without wonting 
about their size relative to each other. 
Further, it is quite easy to fool Basic 
into thinking your First program is 
much larger than it is. A single line 
does it for one of my own programs: 

1060 POK£ 45,0;POK£ 46,54:CLR 

This must appear right at the start 
of your first program, before you de- 
fine any variables, because the CLR 
command will erase all variables. 
Apart from that small limitation, the 
only difficult part of using this trick 
is calculating the correct value to 
poke into location 46. To obtain the 
correct value, store all your programs 
on disk, see which one occupies the 
most blocks and load that one into 
memory. Then type the following line 
in Immediate mode (without a line 
number): 

PtUNT PEEK(46) -t- 2 

The number that appears on your 
screen as a result is the one you want 
to poke into location 46 in your first 
program. 

There are other ways to chain be- 
tween programs, but this method has 
the advantage of presenting all dy- 
namic variables for use in programs 
loaded later. To be sure a string vari- 
able is dynamic, define it this way: 

AS-"LAMFON" + - 

The concatenation of the two 
strings forces Basic to make the re- 
sulting string dynamic and store it 
where it won't be disturbed by further 
program loads. 



Q; What is the Poke to load one program 
without wiping out another already in 
memory? 

Dennis Hallingstad 
Sparta, WI 

A: The programmer's aid. Power 64, 
has an especially good command for 
this. MRG lets two Basic programs 
share memory at once without inter- 
fering with each other at all. Several 
other aids have slightly simitar Ap- 
pend commands that tack new pro- 
grams on to the end of an existing 
program. 

Another way to load a second pro- 
gram is from within a machine lan- 
guage monitor, such as Micromon. 
Monitor loads don't change Basic's 



66 / RUN sPECWi. ISSUE mi 



R O G R A M M 



N G 



program pointers as Basic loads do. 
However, programs can still interfere 
with each other if they use the same 
memory locations. 

There are two regions of memory; 
program and screen. Thus, it is pos- 
sible to load two programs in memory 
at once, one in main memory and one 
on the screen. By editing the one on 
the screen to have different line num- 
bers, it may be added to the one in 
memory by simply running the cursor 
up to its corrected lines and pressing 
the return key. 

At least two other methods (fooling 
the cassette pointers and re-entering 
via the dynamic keyboard method) 
also work. 

jj I'm using a variable to lotul a program, 
and it itmrhfine. However, whmi I umnl lo 
load a third program, I need lo me thf first 
variable plus a new one. Can variables be 
used together to load a program on the C-641 

Travis Somalia 
Arcadia, WI 

A: They sure can. Here's an example 
of what I think you want to do: 

100 INPUT "WHAT SHAIX I LO.-U)"iAS 
110 IX)AD"0:" + AS.8 

Then, in your second progiam, you 
would add to the name before load- 
ing the third program: 

1 00 PRINT "WM.AT COMES .\FTER ";.« 
1 10 INPLT "IX YOL5R NEXT LO.\D";BS 
120 IX(AD"0:" + .AS + BS,8 

Wlicn you load one program from 
another like this, there are two key 
things to remember. P'irst, use only 
dynamic variables. These arc vari- 
ables whose values are entered via In- 
put statements, whose values have 
changed since they were first assigned 
or whose values result from a concat- 
enation {such as, AS -i- "ONE" + ""), as 
opposed to static strings like AS = 
"ONE" that never change. Second, be 
sure the first progi-am is the longest, 
or else fool Basic into thinking it is, 

6. Basic 

Q: I'm converting some Apple programs to 
the 64. My only hang-up is the command 
MOD. I kriow juhat the purpose of the 
command is, but I can 't find a command 
on the 64 that will replace it. If you could 
help, I will be most grateful. 

Jimi Kilby 
Fort Mill, SC 



A: Forthebenefitofotherswho don 7 
know what MOD does, it finds the 
remainder portion of the result when 
one number is divided by another. To 
simulate it on a Coimnodore conv 
puter, use this expression: 

!NTrr-B*INTfr/B)) 

(B is divided into T). As usual, to save 
tlie result, you must either assign it to 
a variable or print it out. Thus, 

C = AMODB 

on the Apple, becomes 
C = IN r(A - B*INT(A/B)) 
on a Commodore. 



Q: I would like to noi a program from the 
Apple computer on my Commodore. Tlte 
only things that won 't run are the Plot and 
Color commands. I would appreciate it if 
you could tell me what to do instead. 

Robert Fryz 
Dearborn, MI 

A; The easiest way to emulate Ap- 
ple's Plot and Color commands is 
with a Commodore C-128 or Plus/4. 
Their equivalent commands. Draw 
and Color, work in a similar way, but 
have added options and will probably 
need different data values, ['"or in- 
stance, white is color inunber I.") on 
the Apple and color number 1 on the 
64. Similarly, the plot range on the 
Apple is 0-39 and 0-47, while the 
range on the 64 is 0-320 and 0-160 
in the Split-Screen mode most similar 
to Apple's. 

1^: / have a Sybex book called Commo- 
dore 64, Basic Programs in Minutes 
by Stanly R. Trost. The book lua many 
wonder fid programs, but I can 't get them 
to work became of one symbol. Here is a 
quote of the whole line: 

340 P = .IM'fld-VINI) 

WTiat is ife t symbol? 

Wayne Tiemey 

Victoria, Australia 

A: It's the up arrow between the as- 
terisk and re.storc keys on the key- 
board. This key is used to raise a 
number to a power, called exponen- 
tiation, and is different from the con- 
trol key on the left end of the same 
row, which is sometimes represented 
with the same character in printouts. 



Q; Htm can you make the control key work 
in a program oltufr than a color controllw; 
for example, in an options menu, such as 
CTRLX, to exit? 

David Pugh 
Keitsington, CA 

A: Type 

GI'TAS:il'A$ = " 

Then press control-X and a reverse 
graphic character will appear after 
the ", End the line by typing 

'■ THEN 1000 

Now whenever you press the con- 
trol-X key se(]uence at tliat point in 
the [irogram, you'll go to line 1000. 



Q: I need to find a way lo get rid of key- 
board input. In a program I'm writing, 
when it's time to roll dice, I hold the pro- 
gram with Cetkey. When the player presses 
the space bar, it Cosubs to get a random 
number. Hut if the player prnses the spare 
bar twice, the game is ruined because the 
C-128 remembers keypresses made while it 
leas away in the subroutine. 

Robert Perillo 
Garfield, NJ 

A: Here is a suggested cure that will 
work on all Commodore systems: 

KJOO GEr.-\S 

1010 IK .■\S< > " " THKN 1 nOO 

1020 GOSL'B UOOO 

I0;50 GET BS 

1040 IF Its > VHEN 1030 



Naturally, it won't work unless you 
have a subroutine at line 2000. The 
key lines are 1030 and 1040, which 
throw away any keystrokes entered 
during the subroutine. 



Q: In typing a program, there are occa- 
siojLs ttihen one must pres the ClJi key 
(between quotation marks, of course). What 
has happened is that, for some reason, my 
leading quote mark wasn 't there, with the 
con.%equence that the program ukls wiped 
out. Is there any v)ay to recover the typed 
program after hitting CLR? 

L.P. Thomason 
Jacksonville, FL 

A: Pressing the CLR key should have 
no effect on your program. If you ac- 



RUN SPECIAL ISSUE 1987 / 67 



N I 



cidentally erase the screen by press- 
ing the CLR key, you can view your 
program Hsting again by simply typ- 
ing the word LIST and pressing the 
return key. Thtn, retype the line 
where you initially erred. 



Q: What locations do you have to peek lo 
distinguish between various Commodore 
computers? 

Herb Gross 
Elgin, IL 

A; Any location that gives a different 
answer when peeked on each differ- 
ent model will do. Here is the location 
1 use, with its Peek values in decimal 
(and hexadecimal). Location 616r)4 
($F()D6) contains: 

($00) on the C.128 

82 ($52) on the C-64 

145 (S9I)ontiie\lC-20 

32 ($20) in PET Basic 4.0 

109 ($A<1} in PF.T Upgratk- Basic 2.0 

2'!0 ($rO) iiB Origiiui! Basic 1.0 I'ETs 

Does anyone know what it contains 
on a PlusM? 



Q: What is the Poke for shortened com- 
mands (up to eight letters from one key)? 

Dennis HaUingstad 
Sparta, WJ 

A: No Poke is needed. Simply type 
the unshifted first character of the 
Basic word you want and then type 
its second character with the shift key 
down. This is accepted by tlie com- 
puter just as though you had typed 
the whole word. Since some Basic 
words can be confused, you may need 
to type the first two characters un- 
shifted, and then shift the third char- 
acter. For instance, G(shift)0 is the 
same as GOTO, whereas GO{shift)S is 
the same as GOSUB. 



Q: What is the Poke for listing two sepa- 
rate sections of a program? 

Dennis Hallingsiad 
Sparta, WI 

A; This is easiest to do on a CT28. 
Simply clear die screen and list the 
first section of your program. Then 
press the cursor-down key until the 



needed lines are at the top of the 
screen. 

Next, move the cursor to a point just 
after the last line you need to keep in 
view, and dien press tlie escape key, 
followed by die unshifted t key. This 
makes tlie rest of the screen a separate 
window, in which you can now list the 
second section of your program. 
When you are finished using the win- 
dow, press the home key twice in 
succession to remove the window. 



Q; / have been writing a program for tlie 
C-64 thai I planned on putting into a car- 
tridge. However, my 64 just locked up. 
Where do I put the entry point for my 
program on the cartridge? 

Joe St Lucas 
San Diego, CA 

A: When the 64 is turned on or reset, 
it first checks for the presence of a 
cartridge. It does this by checking to 
see if locations |8004 and following 
contain the characters CBM80. If so, 
the 64 docs a JMP Indirect to the 2- 
byte address contained in locations 
$8000 and 8001. Locations §8000-3 
should contain the address to be 
JMPed to if the user generates an NMl 
(presses Stop plus Restore), 

If you are using the MAE assembler, 
you can allow for this as follows: 

0100 .ba $8000 ;beg!n assembly 
0110 .wo rst ;2-byle address 
0120 .wo nmi ;low, then high byte 
0130 .l)y $c3 $c2 $ccl $38 $30 
OHOrst nop ; lie re on cold, start 
OlDOmiii nop ;here on Wiirm.start 

Other good assemblers use similar 
commands. 



Q: POKE 808,225 disables the run/stop 
and restore keys and the List command. 
What is the Poke that reactivates these 
comnwfnds? 

Larry S. Harmon 
El Centra, CA 

A: To be sure of the correct value on 
your computer, simply type 

I'RiNT J'KEK (K08) 

when you turn on your computer, 
and press the return key. The number 
that appears on the next line is the 
one to type after POKE 808 to restore 
normal function to that location. On 



my C-128 in 64 mode, the number 
is 237, so you would type POKE 
808,237. 



Q: Is there any way, possibly by ttsing a 
Poke or a short program, to make charac- 
ters overlap, rather than having one char- 
acter erased when a new one is typed in its 
place? 

Russeli Swiji 
Elkhart, IN 

A: Sometimes another character will 
give the desired effect. Commodore 
especially designed its graphics char- 
acters to work together for this pur- 
pose. For example, the keyboard 
includes a full set of graphics char- 
acters that allow you to draw a line 
through the middle of a character 
space and link it to another similar 
line in any desired way. 

If that isn't good enough, the next 
step is to use bit-mapped graphics. 
The C-128 and Plus/4 allow you to 
display characters on a bit-map 
screen with the CHAR command. 
You can then make the characters 
overlap by carefully using the Sshape 
and Gshape commands. Here's an 
example: 

10 GRAPHIC 2.1 
20 CHARl,a„O,"ir,0 
30 SSHAPE S$,<),0,1<),H 
40 GSHAPE SS,6,0,0.0 

It displays two capital letter I's in 
the top- left corner of the screen, then 
moves them closer together. Further 
options in Gshape even allow you to 
place a character on top of an existing 
character, with both visible together. 



Q: The VfC-20 allows easy placement of 
characters anywhere on the screen from 
within a program by poking row ami column 
locations with tliefollowing: 

FOKE214,ROW 
POKE 211,C0L 



What are the comparable locations on 
the C-64? 

J. Grove 
Chicago, IL 

A: Let me first suggest a different ap- 
proacb^one that works on nearly all 
Commodore models. First, define the 



68 / RUN S1'ECI.\L ISSUE 1987 



R O 



R 



M M I 



N 



following string at the start of your 
program: 

10 DNS = {"honif} {24 cursor ciowns}" 

Then set variable Y to the row (0 
through 22 or 24) ;ind X lu the col- 
umn (0 tln-ough 21, 39 or 79) desired, 
and call the following subroutine'. 

100 PRINT LEtT$(D.\$,Y+ l)TAB(X); 
no RKTURN 

It's just as fast as a Poke, and much 
easier to keep working when you 
change systems. 



Q: When dratmtigin bit-mapped graphics, 
is tliere a way to clwnge the color of only 
one horizontal line, without c flanging tite 
color of the horizontal linex directly above 
and below the line? That is, is there a luny 
to change the color of just one pixel insteMl 
of an area the size of the cursor? 

BUlAMer 
Cheney, KS 

A: Not easily. However, the illusion 
of doing so can be achieved by careful 
selection of foregrotmd and back- 
ground colors for each character 
position. This is done very well and 
understandably in the Pen Palette 
progi'am I use with the Fiexidraw 
light pen (both from Inkwell Systems, 
San' Diego, G\). 



Q: Is there any program you know of that 
would allow me to blink selected program 
lines on my display, so that wamittgs will 
stand out? 

Howard Sirois 
Huntington, CT 

A: This is one time Plus/4 owners can 
laugh at the rest of us. All they need 
do is to include an Escape command 
at the start of the me.s.sage they watit 
to blink. The rest of us have lu do this 
through a tliree-stagc procedure. 
First, to position the message any- 
where on the screen, you define a 
string of one cursor-home, followed 
by 24 cursor-downs, calling it DN$, as 
suggested in the answer to Mr. Grove, 
above. Next, you define the message 
or tide to be blinked as M$. Finally, 
after setting Y e([ual to the line on the 
screen, X equal to the column and NO 
equal to the luimber of blinks needed 
(at least 1), you CJOSUB to the follow- 
ing subroutine: 



1100 REMlU-lNKME-SSAOESfR 
1110 JI = 30:RF.MJlFnES E'ER IJt.INK 
1 120 BL= 0:RKM FIRST Bl.INK IS 'ON' 
ll;!0 [■ORI = l TO NO 
11-10 ; ?U'>T$(DNS,V-i-l);TAB(X);(:HR$ 

(lft + A«S(128*liL)):ME$; 
1150 : TT = T1+JI 

1160 : BL = B[.= 0:REM TOGGIX SUTTCH 
1170 : IFTKTTTHEN 1170 
1180 NEXT 
ll'tO RFEURN 

You may use this subroutine in any 
Basic program. 



(^ Is there a way to convert screen codes 
into PET ASCf I character codes? I'm trying 
to create my oimi screen dump. 

Joe McGuire 
Mooresville, IN 

A: Yes; in Basic, it's done this way, 
using the variable A to hold both the 
character to be converted and the al- 
tered result: 

100 itCi = A ANt>(i4 

110 A = AANi)()3 

120 IF A<32 THEN A = A OR 64 

1 30 If B6 = G4 THEN A = A OR 1 28 

This code works on all characters 
except those in reverse field, which 
cannot be converted with a single 
cliaracter, but with three. 



Q I am writing a program and I use I fie 
Get command to get a cliaracter. Tfien I 
need to Pofie the character into a screen 
locatimi. However, when I do, I end up 
Poking the character code rather tfian tfie 
screen code. Hmu da I solve tJti.sf 

Mark Shaw 
Joiiet, IL 

A: Here's a short program for the 64 
to do the conversion and the Poke, 

10 .S = 1024;REM START OF SCREKN 

20 C.KT GS:IF G$ = "" THEN 20 

30 G = /VSC(G$) 

40 B = G AND 128 

50 G = G .■\ND fi3 

60 IF H THEN G = G OK 04 

70 i'OKES.G 

80 S = S+1 

90 IF S <2025 THEN 20:REM FUll,? 

99 END 

If you have a VIC or Plus/4, just 
change the screen addresses in lines 
1 and 90 to match your system. 



Q: On tfie C-128, I can move the pixel 
airsor to absolute coordinates or to coor- 
dinates relative to a previous position only 
in tfie positive direction. For example, I gel 
these results: 

III V.RAI'inC!,! 

iO DRAW 1. 100,30 .HEM OK 

40 DRAW 1. + SO, + 20:REM OK 

50 DRAW 1, - to, + 20:I{EM AW OK 

60 Df{j\W 1, + 10, - 20:ti!iM SOT OK 

Tfie last two commands give an Illegal 
(Quantity error. Arty thougltt.s? 

Fred Tirraccine 
Rochester, NY 

A: Although the C12H System Guide 
shows relative posilioning in negative 
thrections as an o|ition, I could lltid no 
rei'erence to the idea in tlie more re- 
cent C-128 I^ogrummer's Refinance Guide; 
nor could I find ati example program 
that uses relative positioning in nega- 
tive directions in any of the (M28 
books I have. P'luthermore, 1 couldn't 
make it work, myself Therefore, un- 
less a reader ktiows a trick, let's con- 
sider negative relative coctrdinates a 
bug, eidier in the System Guide for 
saying you can have them, or in the 
computer for refusing them. 

Fortimaiely, you can achieve the 
same effeci by assigning a varial.)le to 
your starting coordinates and sub- 
tracting from its value to get your new 
po.sition, Basic accepts thi.s happily, 
because after parsing the expression, 
all it sees is an absolute coordinate. 
Here is your sequence of commands, 
converted to use a varia!)!c. 

10 GRAPIllC 1,1 

20 .K=I0():Y = 50 

:M) DR.^W I .X,Y:REM ( )K 

40 DR.-\W l,X-^-10,V-^20:REM OK 

5Q DRAW 1 ,X - 10,Y -f 20:REM NOW OK 

OO DR.^W I.X+ 10,Y-20:REM NOW OK 



Q: I need to put two different sprites mi the 
screen of my C-64 at the same lime. How do 
you do that? I tried to poke tfie other sprite 
into the 14th block, but it didn't work. 

Michael Intravaia 
Bayville, NY 

A: I iere's a simple program that de- 
fines and turns on two sprites, both 
in block i;^ and one of tiic two also 
occurring in block 14: 

10 REM SPRITE DATA 



RUN SPECIAL ISSUE 1087 / 69 



I N 



20 FOR 1 = 13*64 11) 13*64 + 03 

30 : PORK 1.165 

40 NF.XT 

fiO RK M Sl'KllK 1 DATA 

M FOR I « 14*64 TO I4*tj4 + 63 

70 :POKFT,73 

HO NEXT 

90 REM POINTER TO SPRTFE DATA 

100 POKE '2040,13 

1 10 REM POINTER TO SPRlTt-: 1 DATA 

120 POKE 2041, 14 

130 REM SPRriK O'S X & Y aK)RDS 

1 !0 POKF r);t248,5(l 

1 :M poke 53249,60 

160 REM SPRITE TS X & Y COORDS 

170 POKE 53250,100 

180 POKF; .'53251,1 15 

1(10 REM TURN ON SPRITF.S & 1 

200 POKE 53269,1 + 2 

This esampk' left oul lots of details, 
such as colors, and useful shapes, but 
should be enougli to help you get tvvo 
sprites on screen at once. 

The only other caution is that the 
program jiuts your sprite <lata in the 
cassette luifrer. If you use a cassette 
data file, tlie sprite data will be erased. 



Q: I would like to know Iioili I could make 
a figure appear on the screen, my, a small 
man, ami make it walk across the screen, 
controlled by joysticks. I would aim like to 
he able to make a ladder and have the figure 
climb it, Aiid one more Ihivg: I would like 
to make him shoot by pushing the fire-but- 
Ion, and have the shots affect certain objects 
OH the screim rather than others. 

Could you icml a short program that 
would illustrate .sttch an action? Even a 
recommendation for a boi)k xutmld he deeply 
appreciuted. 

Mike Martin 
Wilmington, DE 

A; Yon need to learn about sprites, 
also known as movable object 
blocks. They are one of the most 
powerful featmes of t!ie C4, and can 
be used to do everything you ask, 
but not in a program short enough 
to print here. 

I've reviewed some books that 
might hel]3 you — Sprite Graphics for 
the Commodore 6'(, froni Prentice- 
Ha!l/.\Iicro Text (Koj^lewood Cliffs, 
NJ), The Graphics Book for the Com- 
modore 6-t, from Abacus Software 
(Grand Rapi<is, MI) and Graphics for 
the Commodore 6-f Computer, from 
Spectrum Book.s/?rentice-Hall (En- 



glewood Cliffs, NJ). 

Also, consider using a sprite-mak- 
ing program, such as Sprite Master, 
from Access Soi'iware (Salt Lake 
City, UT), orSpwriter, from the Oct- 
ober 19S4 issue of RUN. Such j)ro- 
grams take much of the drudgery 
out of using sprites. 



Q: I bmie been knocking my brains out 
trying to make a cluiracter move by itself 
and home in on a main charm:ter controlled 
by the keyboard or joystick on wiy VIC. I 
think this is called artificial intelligence. 
If you call, would you try to explain how 
it works. 

Mike Baiuch 
Address not given 

A: As one of the other computer pro- 
fessors here at Western Illinois Uni- 
versity said recently, "If it works, it 
isn't artificial intelligence." The truth 
beneath tliat bit of humor is that 
whenever the computer appears to 
sliow intelligence, it does so by follow- 
ing your instructions. 

Therefore, to make the computer 
direct a character in a way that homes 
In on a moving target, you must in- 
struct it to do so in a program. To do 
this, you must (Irst find a way to rep- 
resent the locations of lioth charac- 
ters in a form the computer can 
understand and work with. Second, 
you must explain how to perform the 
task in steps that are simple and small 
enough for the computer to follow. 

A good way to represent the screen 
within a coinfjuter program is as a 
two-dimetisional array, with each lo- 
cation on the screen having its own 
pair of X and Y coordinates. 

To solve the rest of the problem, it 
helps to have studied geometry, which 
teaches liow to measure the distance 
between any two points on a graph. 
Briefly, the idea is I'or the computer to 
move its character to minimize the X 
and V distance between its position 
and youi- character's position. 

In doing this, there will be four 
cases: acid 1 to both X and Y; add I to 
X bui subtract I from Y; subtract I 
from X but add 1 to Y; and subtract 
1 from both X and Y. Each time it 
is the computer's turn to move, it 
should choose the case that mini- 
inizes its character's distance from 
your character's location. This will be 
a good project for you. 



For more information on AI, write 
Eloisa Yeargain, PO Box 241807, Los 
Angeles, C;A 90024. In return for a 
self-addressed stamped # 1 envelope, 
he will send you an Al fact sheet he 
has deve!o[>ed. 



Q: I am confused with the logic commands 
Ai\D arui OR. Wheiwver you encounter 
A - 96 AND 32, (hes the A efju^l the loxner 
number, 32f Atui luhen A=6-f OR 32, 
does A equal the .sum of both number. s, 96? 

Bill Goldman 
Langhonie, PA 

A: To understand the AND and OR 
commands as used in Basic computer 
programs, you must realize that they 
are written in decimal (base 10), Imt 
do their ^vork in binary (base 2). To 
see their effects, you must convert the 
numbers tiiey use into base 2. Casio 
and Radio Shack both make inexpen- 
sive calculators that do this. 

Next, remember that logical coui- 
mands are not arithmetic. Rather, the 
AND command defmes a set of con- 
ditions, all of which must he true be- 
fore die result is true. Similarly, when 
you're using lire OR command, W ei- 
ther of two conditions is true, then the 
result is true. 

To put these ideas togelhei and 
solve one t>f your examples, remem- 
i>er that a binary 1 is considered true 
and a binary false. Thus, 

96 AND 32 

is the same as: 

%01 lOtlOOO AND %f)0100000 

Notice that only one bit (binary 
digit) is true in both numbers. There- 
fore, it is the only bit true in the result; 

% 001 00000 

Converted back to decimal, your 
answer is 'i2. 

The ]jractical value is that die AND 
and OR commands allow you very 
preci.se control of the computer and 
its memory, 



Q: I have seen rtuiny programs with an 
XOR command in them. The Commodore 
(yl does not have this command in H<L\ic. 
Could you please explain its use and shoiu 
how it can he created using PET Basic? 

Robert Oesterreich 
Costa Mesa., CA 



70 / RUN SPECIAI. iSSUE 1987 



ROGRAMM I N 



A: XOR stands for cXclusive OR, a 
logical operation in which binary dig- 
its are compared and set to (false) if 
they arc the same, and to I (tnie) if 
they differ. The practical value ofihis 
ability is in flipping specificf! hits 
from on to off to on again. 

For instance, it can easily be used 
to flip the screen into reverse field 
and back again, because doing so only 
involves flipping one bit in each byte 
of screen memory. A further advan- 
tage is that EOR (as it is known in 
assembly language) is nondestructive. 
That is, any change caused by its use 
may be undone by repeating the same 
command, 

[liven a value. A, that we wish to 
EOR with another value, B, we could 
use the following code, in assembly 
language and in Basic, respeciively; 

Assembly 
IJ)A#A 
KOR #B 

Busk' 

A « (A OR B) AND NOT (A AND B> 

In both cases, the result ends up in 
A (the A register in the assembly lan- 
guage version). This is one time as- 
sembly language is simpler than 
Basic. 



Q: There resides a beast underneath the 
keyboard of my 6'f, ami Us number is 
-1.4901 1 612E-08. Toaiuaken the beast, 
run this: 

10 A '40 
20 B = ./« 
30 C = A + B 
■to D = 40.18 
50 PIUS'ID-C 

The zero you would expect to see has been 
eaten by the beast. Is there a glitch in Com- 
rtwdore's engineering? 

Gayleti Moore 
Bovey, MN 

A: No, you've simply discovered that 
the computer uses binary {base 2) for 
its calculations, while you use decimal 
(base 1 0). Vour beast comes from er- 
rors in converting from one t«j the 
Other. Precision in all Microsoft 
Basics except the one in (xmimo- 
d(H-e's B-128 model is limiled by the 
space set aside to do tlie.se conver- 
sions. A fix for your line 50 is shown 
below, 

fit) fRINf 1NT(]00*(D - C) + .5V1C0 



This change rounds the result to 
tfie nearest two digits, well within the 
limits of precisioti on all Microsoft 
Basics, To select more or fewer digits 
of precision, add or subtract zeroes 
from the numbers used for both mul- 
tiplication and division in my version 
of line ,")(). 

Let me al.so remind you that in sci- 
entific work, if you want two valid 
known decimal places in your answer, 
line 10 should 'Aso be changed to 

KJ A = -)().l)() 

The computer doesn't care about 
the extra zeroes, but without them, 
anyone checking your program must 
assume A was calculated only to the 
nearest whole number. 



Q: I am having trouble mak ing a program 
add up numbers the user enters, like this: 

10 INPUT A$ 
20 [NPtrrns 

Could you please tell rm hmo to do this? 

Joe Sadaushas 

Chicago, IL 

A: There are at least two ways to add 
a column of numbers in Basic. One is 
just like your program, except that 
the string .symbol (S) is left ofT from 
the variable names, making them 
numeric: 

10 INPUT A 
20 INPUT B 
30 ?A-i-B 

The other approach keeps your 
original lines and uses the V.'U. state- 
ment to convert the string variables 
into numeric values for adding: 

10 INPUT A$ 
20 INPUT li$ 
30 ? VAL(A$)-t-VAL(B$) 



Q: When programmiiig, I often work with 
dates and need to add certain amount i of 
time to a given calendar date. Aly programs 
have become atmbersome from my having 
to deal with 30 or 31 days per month, 28 
days for February, atiding I day in leap 
years, and so on. Can you advise me on how 
f might belter handle this kind of date 
calculation? 

Donald Izzi 
Laurel Springs, NJ 

A; In calculating dates, the trick is 



to use a common unit of measure- 
ment throughout. Since you want to 
know, to the nearest day, the time 
between two events, it will help if you 
first convert Gregorian dates {years 
and months and days) into so-called 
Julian days. 

The zero, or beginning point, in 
your calculations can be any date 
earlier than all other dates to be con- 
sidered. For example, many simple 
Julian date programs use [anuary 1, 
1900, as their zero [xiini. fhese pro- 
grams calculate the number of days 
between events by first converting 
both of the dates in question into the 
number of days that inten'ene be- 
tween each one and [anuary 1, 1900. 
They then subtract the smaller num- 
ber of days from the larger to find the 
elapsed time. The results are valid for 
any time in the 20th century. 

Following are two short progi-am 
segments to help you usejulian dates. 

Given a numeric day, month and 
year in variables DA, MO and YR, the 
fust set of lines will return a Julian 
day in variable JU. 

1000 YR = YR-^ 1900 

lOlO JU = INT(30.,i7 * MO) + INT(.H65.a5 * 

STL - 39.1.3.5) -f- DA 
102O IF MO > 2THENJU=JU- l;IF 

INr(YRM) * 4 <> VR I'iiKN JU » 

JU - I 

Similarly, the next set of lines, 
given JU and using LD as temporary 
leap-day variable, will return DA, MO 
and YR. 

2000 Rl'; = INr(IU;3C5.26}+l 

2010 DA aJU -I- 1NT(395.25- 365.25 • YR) 

2020 1 J> = I 

2030 tF INT(YR/4) • 4 <> YR THF.N t.D = 2 

2040 IF DA >(9 1 - 1 .11) Tf O-N DA = DA 

■fLD 
2050 MO = INT{DA;30.57) 
20(50 DA = DA - INT(30.57 * MO) 
2070 H''MO > 12rni':NMO-l:YR- 

YR + 1 
20«0 YK = YR-iyOO 



Q Cotdd you tell me how to write a pro- 
gram to generate raruiom non-repeating 
number.^? 

Bob Hendershot 
Carrollton, TX 

A: The first step is to decide how 
many random numbers you need and 
what range (top and bottom values) 
and increment (distance between pos- 



RUN SHECIAS, ISSUE 19!t7 / 71 



I N I 



sible values) you require. Then you 
can dimension a suitable array, fill it 
with appropriate luuuliers and finish 
by shuffling die values widiin the ar- 
ray. After all this, you generate your 
random, non-repeating sequence by 
printing the contents of tlie array 
in order. 

Here is a program to generate and 
shuffle a suit of cards: 

100 REM RNn DEMO 

110 X = KNn(-TI):RKM RANnOMIZK 

I'JO DIM A(13) 

Lin tii:M MAKE IDCVRHS 

140 i-'ORi=ITO 13 

150 :Aa) = I ■ 

1150 XF,XT 

170 RKMNOWSHU>T[,K 

IHO FCIK 1 = 1 TO<«) 

190 :C1%=R.ND(1)*13+1 

200 ;C2% = RND(1)*13+1 

210 ;T = A(C!%) 

220 :A(C1%) = A(C2%) 

230 :.A(C2%) = T 

240 NEXT 

250 RE.VI PRINT SEQUENCE 

2fiO K)R 1 = I rO 13 

270 :1'RINTA(1) 

280 NRXT 

200 F.ND 

The key lines are 1 10, which makes 
the sequence of random numbers 
more truly random; hl()-2(H), which 
select a random integer between 1 
and 13; and 210-230, which do the 
acuia! shuffling. 



Q: When using HNt)( ) slatements on my 
C-64, the computer generates the same ini- 
tial numl>f>rs in the same imU'r every time 
the powiT is turned off and on. What can 
be done to create a different first number 
each lime ike system is reset? 

Brian Wickizer 
Salem, OR 

A: Random numbers don't come 
from ihin air — they have to be ini- 
tialized somehow, and ik) matter how 
involved the process, it is likeiy to give 
the saine results each time on any one 
machine when it is first turned on. 
Therefore, Commodoic allows you to 
further randomi/.e the numbers by 
changing the seed value from which 
ilie random numbers are generated. 
Altluiugh other approaches also 
work, I add the following line to the 
start of my programs to alter the ini- 
tial value from which other seeds gen- 



erate random numbers: 

1 40 X = RND( - TI):REM RANDOMIZE 

After using this line, 1 simply use 
RNI>(1) to generate my random injm- 
bers, with entirely satisfactory results. 



Q: When counting dawn in seconds, my 
06'} goes from 10 seconds to 90 seconds. 
How do I correct this so it will read 09 
seconds? 

Jim Smith 
Sterling, KS 

A: The problem is that 9 is one char- 
acter shorter than 10. As a result, 
when it is printed after a 10, there is 
nothing to erase the 0. A sim])le way 
to get the display you want is to notice 
when the counter drops below 10 and 
print a before the counter value 
from then on, as shown below: 

10 FOR I = 99 TOO STEP -1 

20 : PRINT CI!R$(19) ; REM IIOMK 

CURSOR 
30 : IF I< 10 THEN PRINT""; 
40 : PRIN r I 
DO NEXT I 
60 END 



Q: In my program, I repeatedly use lite 
Gosub .slalement to access a subroulim' I 
sometimes don't have to return from. As a 
re.sull, I {juickly get an Out of Memory 
error. I know there w a stack someiohere in 
rnemoiy timt holds Ifie return^ arul I fiat I 
have to pop it to avoid fitHtig the staelc. 
The problem is that I don't know the Poke 
lo do thu. Can you help me? 

Larry Cohen 
Englishtown, NJ 

A: Exiting a subroutine in any other 
way th;m via a Return stalemeiil at its 
end is a very bad programming ]jrac- 
tiec that will bite yon when you least 
expect. Don't do it! 

Instead, set a flag variable to indi- 
cate your wish to change course in 
the program, exit the subroutine nor- 
mally and branch from thai point ac- 
cording to the value of the flag 
variable. Here is an example: 

10 CS="FREn" 

20 ? "VVlIAfS I'HE P.ASSWORD"; 

30 GOSUB 100 

-SO IF F>0 THEN :-"GUESSr;GOTO 20 

50 ? "WOW, WTIAT FUNf 



60 END 

100 F = 

110 INl'UTAS 

120 IF A$ = "J"'111EN F= l:t;OTO 150 

i:VO IF A$ = C$ THEN ? "tXJRRF.CT' 

1 40 IF A$<> t;$ THEN ? "SORRY" 

150 RETURN 



Q: Can a Basic program contain an 
On. . . Goto command on more than one 
line? A program thai does this was written 
for the Apple, hut I've heard it will also 
run on other computers. 

Michael Feeney 
Roswell, GA 

A: On Commodore machines an 
On. . .Goto coml)ination is limited to 
aljoul 14 destinations, due to the re- 
quirement that commands fit entirely 
within the 80-88 character size of die 
input buffer. .Apple's input buffer is 
255 characters, which can lead to 
problems when converting long lines, 
fortunately, there is a simple solu- 
tion. Just follow one On. . .Goto line 
with another, changing the expres- 
sion between the words On and Goto, 
For example, instead of saying, 

10 ON X GOTO 1,2,3,4,5,6.7,8,9 

you may also say, 

II) 0>;X(',0T(5 1.2,3,4,5 
1 ! ON X-5 C;OTO 6,7.8,9 

Both versions work in the same 
way, but the second shows how to con- 
vert a line that is too long into two or 
more shorter lines. 



Q: I have writ ten a progra m to keep track of 
six mutual funds. I think I should use a Di- 
mension statiment, but I can 'I figure out 
how. I want lo list the name of each fund, and 
umlir this the quotation for fnie d(tys. The 
list iiiill include five leeeksfor each month. 

Harry Cowles 
San Diego, CA 

A: It sounds like you want a direc- 
dimensional array, with the first di- 
mension being the fund, the second 
the week of the month and die third 
the day of the week. Since there are 
six funds, five weeks and five days per 
week to consider, the following line 
will dimension a suitable array: 

100 DIM S(6,5,5) 



72 I RUN SPECUL ISSUE 1987 



R O 



R A M M 



N G 



Here is a simple routine to fill your 
array: 

HO ?CHRJ(147);REM CLEAR SCREEN 

120 FOR[=l TOfS 

130 :KOKj=l lOri 

140 ::R)RK = 1T05 

150 ; ; : ? "ENTER PRICE FOR FUND M";l 

ICO : : : ? "IN DAY";K;"OF WEEK";] 

170 :;; INPUT S(IJ,K) 

IRO ::NEXT 

190 : NEXT 

200 NEXT 

Then, to print out the results, you 
might use 

210 ? CHR$(147):REM CLEAR SCREEN 

220 FOR I = 1 TO G 

230 : ?"RESULTS FOR FUND #";! 

240 :FORJ=l TO 5 

250 : : ?"WEEK « "J;";"; 

2(i0 ::F0RK=IT05 

270 t : : ? S(1J,K); 

280 : : : ? S(IJ,K); 

280 ;:NEXT 

290 ::? 

3tH) : NEXT 

3!0 :? 

320 NEXT 

330 END 

Naturally, this simple program 
could use a lot of help, but it may get 
you started. Skilled users will notice 
(hat we have ignored the /.ero cle- 
mums of I he array, therehy wasting 
some space hut simplifying the 
program. 



Q: I am writing a program and need it to 
start over, hut it doe.m 't reread the data, h 
their a way to reset variables, strings, etc.? 
ALw, can I reset the DhM statements so I 
won 't get a Redimensioned Arrav errorf 

James Soldi 
El Centra, CA 

A: Basic provides ai least two ways to 
do what you ask. One way Is by using 
the Run connnand. We type it all the 
time, but many people don't realize 
you can include it within a program 
itself. You can even follow it with a 
line number from which you wish the 
pro grain to begin nmning again. 

Also, the CLR statemeiu resets all 
the variables, including arrays. Most 
new programmers think the CLR key 
only erases the screen. However, Ba- 
sic also provides a CLR statement that 
has iH)thing to do with the screen. It 
is called automatically by die Run 



command, but can also be used man- 
ually. Its purpose is to clear all the 
variable pointers, including array 
pointers. 



Q: How can I run a program without 
clearing existing variables? 

Chadjones 
San Gabriel, CA 

A: Simply list the program and jot 
down its first line number. Then, in- 
stead of typing RUN, use the Goto 
command to access that line number. 
Thus, if 100 w-ere your first line num- 
ber, yuu would type GOTO 100, 



Q: My 64 always has displayed an Out of 
Data error whtm 1 run a program with a 
Remi statement. What can J dof 

Louis Minakaki 
Brooklyn, NY 

A: An Out of Data error means your 
program attempted to read more 
data than the progiam contains. Ac- 
cidentally omitting a conmia when 
typing in a data line is a common 
cause of the error. To trace the prob- 
lem, add a Print statement just after 
each Read, to show what has been 
read, and perhaps a counter variable 
as well, to show how many items have 
been read. 



Q: / have a C64 and plan to get a 012H 
in the future. If I type in and save programs 
(Basic and machine language) for the 
C-12H on my C-64, can I load and run 
them later on the C-I281 

Michael Chimchttsky 
Hernando, MS 

A: Sure, no problem. Machine lan- 
guage programs for the CS'i and the 
C-128 tend to be different, but you 
can easily enter them in Data stale- 
ment form on eidicr computer for the 
other computer to load and run. Sim- 
ilarly, althougii the starting address of 
Basic programs on the two machines 
is different, it's auiomaiically ad- 
jiislcd at load time. Just be sure to type 
in the C-l'JS version of a program 
when it differs from the C-(H version. 
When you get your C-128, load the 
]>rogram into it and list eai li H ■ that 
uses the new Basic 7.0 con ,mds. 
You'll need to move 1 1". : ir: ,f to such 



lines and press the return key to prop- 
erly store them in Basic 7.0 iorin. 
When you've taken care of them all, 
resave the program. 



Q: I'm considering buying a C-128, hut 
I've discovered that the tO-hcy numeric 
padfuyMions only in 128 mode, not in 64 
mode. Do you know if Commodore has plans 
to change thit, or if there's any software on 
the market that makes tising the ktypad in 
64 viotie po.ssiblef 

Keane Foster 
Schofield, m 

A: Some commercial programs, such 
as Grade Manager III from Smoky 
Mountain Software, already use the 
numeric keypad in 64 mode on the 
CM 28, You can too, thanks to a hint 
from the new Abacus book, !28 Tricks 
and Tips. First, type in the command 
POKE 53295, 2'18 to turn on the 
added lines K0-K2 in the (MUH's key- 
board matrix. Then you have to de- 
code the matrix to make scn.se mj; of 
it. One simple, but limited, way do 
this is with a Basic Get loop liki tlie 
following; 

100 POKE .'53295,248 

1 1 PRINT "PRESS A KEY ON THE 

KEYPAD" 
120 CKC AS 

l;i() A = f\SC(AS-t-CHR$({))) 
140 IF A = 95 THEN PRINT "0 OR «(JR +" 
150 IF A = 29 THEN PRINT "5 OR . OR -" 
!60 IF A = 160 THEN PRINT "2 OR 

ENTER" 
170 IF A = Li! THEN PRINT "l OR T 
180 IF A = ()1 THEN PRINT "1 OR li" 
190 IF A = 81 THEN PRINT "7 OR 9" 
200 GOTO 120 

A better solution would be lo write 
your own keyboard scan rouline in 
machine language, with ibe help of 
the C-128 keyboard table on [lage 0-12 
of the Commodare C-128 Programmer's 
Reference Cruide. 

7. Disk and File 
Handling 

Q: VI 7( He iLsittg my C-64, 1 am orcfLsiot>all\< 
unable to recall a letter that is listed in the 
disk directory, even though dorutnents be- 
fore and after it can be recalled. Is this a 
fault of the } 54 1 oris it a had spot on the 
disk? How can I recall this jnis.sirig letter? 

G. L. Curtice 
Rockport, TX 



RUN SI'tLlAL ISSUE 19S7 / 73 



I N 



A: If there is an asterisk (*) next to 
tlie filetype in a directory listing, tiiat 
file is called a "splat" file, because it 
was not properly closed when first 
written. The disk will noi let yon load 
such ("lies nonnally, because il has no 
way of knowing wliere ilie file ends, 
A skilled user can rescue at least pan 
of a splai file by opening it with a file- 
type of ",S,M" and copying ii to an- 
other file. The new file can he closed 
wlieii no more valid data can be re- 
trieved from tlie splat file. Once rescue 
attempts are completed, such files 
should immediately be deleted from 
tlic disk with the disk Validate or Col- 
lect command. On your C-M, type: 

OPEN 1 5,8,1 5,"V0" 

Do not omit the zero! 

On a CI 28 or Plus/4, type: 

coi.LF.crr DO 

'fhis is essential; erasing the file any 
other way creates a serious ri.sk of los- 
ing oilier valuable data on the disk. 

The tnosi common cause fil'a splat 
file is running out of room on the 
disk while saving a file. If the disk 
formatted properly when you first 
bought it and has not been abused, 
the odds are that it is still in good 
sfiape j)hysically. Similarly, if you can 
still load other letters, yom- l.'ill is 
probably in good shape as well. 



Q: I accklenlally created a file named 
""movies". Note the double quotes at the 
beg! titling of the name! Is there a rvay, 
short of reformatting the entire dish, to 
rename or scratch the file? I'd hate to 
recmutruct the whol^' thing. 

Vita Devenere 
Spokane, WA 

A: Scratching it would lie simple. 
Simply replace the unwante<i <juoie 
mark \n the name with a (jiiestion 
mark when you give die command. 
The ([ue.stion mark seiTes as a wild 
card, making the disk not care what 
character occupies that position in 
the name. Thus, your command 
could read: 

OPEN 1 .'i.ai r);'S():?MOVii-:s" 

Unfortunately, by using the wild 
card, a similar name, such as "XMO- 
VIKS", would also be scratched. If 
that is a problem, rename the other 
files first. 



Renaming the troublesome file 
without scratching it is also straightfor- 
ward, but the method is not as obvious. 
Here is the retiuircd command: 

OPEN l!J,8, 15,"RO:MOVIES = " + CHRS04) 
■f "MOVIES" 

The CHR$(34) in the middle forces 
the extra quote mark, which you 
need, into the command string, with- 
out upsetting liasic. 

By the way, the same techniques 
may help you if you manage to open 
or save a file without any name at all. 
You'll hear this situation referred to 
as a comma file, because it will appear 
in the disk directory with a name con- 
sisting of a single comma. 

Scratch such files with: 

OPEN l.'-.,8,l.V'.S():f" 



Q: Is there a function, such as CLOSE 13, 
that will close all the files previausly 
opened? 

Dennis Lancaster 
Gaylord, MI 

A: Yes, there is, and you've just given 
it, As.suming you've previously 
opened a command channel to the 
disk (with OI'HN 1 5,8,15), the channel 
and all open disk files are closed si- 
multaneously by the single command 
CLOSE 15, To cover all possibilities, 
you could give it twice, as follows: 

970 CLOSF. 15 
9H0 OPEN 15,8,15 
990 CLOSE 15 

The extra Close .statement takes 
care of situations in which file 15 was 
already open unexpectedly, and the 
Open statement takes care of times 
when you forgot to open file 15 
earlier. 



Q: I urrote sotiw programs that input data 
from my C-6-f's licyhoard and then print 
the data on my 802 printer. Even though 
I close the file and device, I cannot regain 
u.se of the keyboard without pressitig tlw 
restore key at the eiid of the program. The 
same thing Imppens when I list a program 
to tite printer. Wlutt can ! dot' 

Wetidel Hatts 
Goleta, CA 

A: Assuming that you opened your 
file to the printer with 



OPEN 4.'t 

what you have left out in both cases 
is the command 

PRiN'r#'t 

before closing your files. In the case 
of listings, it is necessary to ii.se the 
CMD 4 command, but even that 
causes troutjle; il would be tnuch bet- 
ter if ycm rewrote your keyboard pro- 
gram so as not to need it. Here's how, 
I'resumably, your keyboard pro- 
gram now looks something like this: 

10 OPEN 4,4 

15 C;MD4 

20 C;E'r AS: IE A$ = "" THEN 20 
30 [FAS = "@"Tt-IEN60 
40 PRINT A$; 

50 t;oro :)() 

60 C:iI).SE4 
70 END 

.\ cleaner and otherwise equivalent 
program would be: 

10 OPEN -I,! 

W i'.VA AS: [f AS = IHEN 20 

•M) II- AS = "@" THEN 60 
10 rKlNrM,A$; 
,'iO tiOlO 30 
liO CLOSE 4 
70 END 



Q: flow can I save a variable? 

Tim HoU 
Romell, NM 

A: By putting it in a data file. Saving 
the contents of variables is the main 
reason for having data files. Other- 
wise, all the information develo])ed 
during the run of a program would 
be lost when you turn off the com- 
puter. Assuming your variable is 
named A$, .save it on cassette this way: 

900 OPEN 1,1,1 "NAME" 
911) PRINT#1,A$ 
920 CUISEI 

If you have a disk, change line 900 to: 

900 OPEN 1,8,2"0:NAME,SW" 

Then, to load back your variable 
the next day, use these lines: 

9:'>0 OPEN 1,!,0,"NAME" 
yfiO 1NI'UT)!<1.AS 
970 CIX>SE I 

And for disk; 

9.50 OPEN i,8,2,"0:NAME,S,R" 



74 / RUN SPECIAL ISSLt 11187 



R O 



R 



M M 



N 



If you have more than one v:iri;i!)le 
to save, add more Hnes like ^)10 and 
•IfiO, one line per variable. (Il's OK to 
comhiric several variables in line '.HiO, 
separated by commas, but don'i coni- 
bine variables like that on line 910.) 



Q; / was experimenting with files on 
my Da t asset I e, and it gave me a File 
Data error: What is it, and what did 1 da to 
cause it? 

David Rainbolt 
MarshaU, AR 

A: This error is incorrectly identified 
ill the VIC and 64 progranimer'.s ref- 
erence guides as a Bad Data error. 
What actually appears on your screen 
is the more descriptive phrase, Kile 
Data error. 

However, Commodore's explana- 
tion of the error is correcL You were 
trying to read a non-nimieric charac- 
ter into a numeric (real or Integer) 
variable. It is the file-handling e(|»tv- 
alenlot'Reclo From Start, which you'll 
see if you attempt to do the same 
thing in an Input statement. One cure 
is to use only string variables when 
working with files, and use the VAL( ) 
statement later to convert those that 
must be numeric into proper form. 



Q: The Commodore 64 Program- 
mer's Reference Guide has a table of 
Status values for the reserved variable ST. 
It is incomplete, as I once had an ST value 
of 66 when trying to read a diskfde. What 
other status numbers are there? 

Henry Elwell 
Cleveland, NC 

A: ST is actually a binary value, even 
though we read it in decimal. That 
means it can simultaneously show sev- 
eral different errors, each comribut- 
ing part of the value of the eiTor 
status number displayed by ST. To 
decode such ST values as 66 without 
learnitig more about binar)', simply 
subtract from your ST value the larg- 
est numher in the ST table that is less 
than or e(|ual to your value. Yoiu" 
value includes the error listed nexl to 
thai value. If there is a remaiiuler, 
repeat the process on it until you have 
identified alt errors. 

In the example you cited, an ST 
value of 66 indicates 64, "End of File." 
with a remainder of 2, which in turn 



indicates "Time Out on Input." This 
combination could result from trying 
to read past the end of your file. 



Q: On p. 16 of my 154! user's manual 
(part number 154003 1 -2), there is a for- 
mat to combiTte fiie^. 1 simply cannot get 
this to work. 

Barry Ashwortk 
Tucson, AZ 

A: In the current 1.^)41 maiutal (part 
number 1540031-03), which you can 
purchase for S5 directly from Com- 
modore, I describe on p. S7 how to 
combine several already-existing se- 
quential datafiles on the same disk. 

Assuming there are three files to !>e 
concatenated ("ACi", "HM" and 
"NZ"), each containing the words 
from part of a short dictionary, the 
commands to combine them into a 
single dictionary' file {".-\Z") are: 

in OPEN 15,8.1!) 

20 fRINTiK 1 rV'COtAZ = (h.-\(;,l);I IM,0:NZ" 

31) INPUTS 15,EN.t:M$.iri',K.S 

40 IK EN THEN PRINT EMS;S TOP 

SO CLOSE 15 

(Line 20 does most of the work, but 
lines 30 and 40 are needed to aleri 
you to any problems dial arise during 
the process.) 

Unfortunately, this method of con- 
catenating files is only intended for 
use on datafiles, not program files. 



Q; / have a 64 and cassette. Is there any 
Basic statement or short program that will 
combine programs by loading more than 
one without erasing previous ones? 

Bryson Payne 
McCaysville, GA 

A; The commands that do what you 
request are Append and Merge. They 
are often found in programmer's 
aids, such as SYS RES, from Solidus 
International, and PAL, from Pro- 
Line Software. The difference be- 
tween the two is that A[j])etui altaches 
to the end of ihe [ireviously loaded 
programs each new piograin that's 
loaded, regardless oi its line numbers, 
while Merge inserts the new program 
into the existing program line by line, 
replacing any duplicated lines with 
the version cunently being loaded. 



Of the two commands. Merge is usu- 
ally more useful, but each has 
its place. 



Q: Why do I get a Syntax error when I try 
to type in more than two lines of a program 
that ha<; five or six lines between line 
numbers? 

Gilbert Neldner 
Haines City, FL 

A: Programs tliai have lines longer 
than two lines have done one of two 
things: either they have been typed in 
using the abbreviated forms of the 
Basic keywords, or they have been 
run through a compactor program 
after they were finished. If the Basic 
line you see is five or six screen lines 
in length, il almost certainly lias been 
compacted, fo type it in, you will 
have to split its parts down into sev- 
eral smaller Basic lities, no one of 
which is longer than two screen lines. 
An uncompactor program to auto- 
mate this chore was featured in the 
November 1984 i.ssue of Ht/A^ 

If it is im])(UTant to restore the line 
to its original oversize length later on, 
you'll have to run it through a com- 
pactor progi-am afienvards, such as 
the one also included in (he RUN ar- 
ticle. As the name suggests, compac- 
tor programs combine Basic lines as 
much as possible, up to the theoreti- 
cal maximum line length (255 char- 
acters), without affecting the logic of 
the program, and also delete Remark 
statements and spaces tliat are not 
within quote marks. Most require a 
disk drive. 



Q: I have a program tlmt mes Data state- 
ments. Some slntetnents are longer tlian the 
80-colnmn logical line limit. Hotvcan Icon- 
catenate these to accomtmnlate longer lines? 

John Schenck 
Aberdeen, SO 

A: Although there are ways to build 
data lines longer than 80 columns di- 
rectly, I prefer to handle such needs 
by concatenating strings (iuring the 
]}rogram run. fo do so, simply read 
die strings to be concatenated, and 
then assign them to the same string, 
using the + sign as a concatenation 
operator. 

Here is an example of a program 
that reads data lines and combines 



RUN Si'KClAL ISSUE 1987 / 75 



N 



any cncr a preset lengtJi (five in this 
example) wiih the next line of data: 

10 DATA 123-15 

20 DATA f<789 

30 AS = "" 

■10 R['.A]) liS 

no A$ = AS + US 

m l¥ LKN( B$) > 5 THEN 40 ' 

70 ['RIN'rAS 



Q; /.! it fHissiblf to list a sequent kil fi If from 
the (lirtrlory? If so, hmv could I^) ahtmt il? 

Stephen Yue 
Monterey Park, CA 

A: The easiest way to list a sequential 
file is with a memory-resident pro- 
graintning aid. For example, "Disk 
Reader" {HUN, May 198fi} is such a 
progi'am. Also, commtTcially avail- 
able is SYS RES, from Solidus Inter- 
national (215 \V. Holly, Suite 241, 
Belliiigham, WA 98225). 1 1 includes 
hoih sequential- and program- file- 
readin(^ commands liiai workjnst like 
tilt* l)(.)S wedge on Commodore's tost 
demo disk. The command 

@L"yourilIe"S 

lists your sequential fdc to the current 
output device (screen, printer or disk). 



Q I often need to duinge a word or line 
in a text file. CmuM you show me a umy to 
edit a sequential Jik witlwut retyping the 
whole fllif 

Peder Sterling 
North St. I'aul, MN 

A: The easy way to edit a text file is 
with a word processor or terminal 
program designed for the purpose. 
Easy Script, from Commodore, VIP 
Terminal, from Softlaw, and Paper- 
till]), from Batteries hicludcd, are 
three among many progiams with 
this option. Even progr;»mming aids 
such as SYSRES from Solidus hiter- 
national and compilers such as Com- 
modore's f>502 assembler/editor 
include Get and Put commands to 
ease the editing of sequential files. 



Q: I wrote a sei/uential file program for 
either the VIC or 64, ming the 15-11 disk. 
I »,V(' Input statements to enter data for 
fields, but if ] enter more than 76 characters 
in a string field, I receive a Syntax error. 



Is it possible to enter larger fields? I wmdd 
like fields of at least WOO characters, and 
more if possible. 

William Kerr 
Lynbrook, NY 

A: At the moment, yoiu' problem 
isn't in your file, but rather in your 
data entry method. And it's a serious 
problem. You are asking to violate 
two of the fundamental limits of Com- 
modore (and nu)si other) computers. 

First, there is a strict limit to the 
length of an Input statement, set by 
the size of the input buffer reserved 
by the operadng system. On the 64, 
it's set at two screen lines, including 
the leading tjueslion mark and space 
and the trailing carriage return. On 
the VrC's narrower screen, up to four 
lines are allowed. The bidfer holds 88 
characters, so yoiu' guess of 7ti char- 
acters is close enough. 

The other fundamental limit is the 
255 character limit on the length of a 
single string. If it weien't for this 
limit, you could solve your problem 
by using the Get statement in place 
of the Input statement. As it is, you'll 
have to divide your data somehow so 
it can be grouped in bunches no 
larger than 255 characters. Note; You 
can stack as many of these as you wish 
end to end in a sequential file, anci 
consider them all part of the same 
logical record. 

One otlier consideration — if you 
do use Get to lengthen your liekis, 
also use Get# to retrieve them from 
disk. Input#'s capacity is the same as 
Input's. 



Q: I find I can't wrilr to an individual 
field in a relative record (except the last 
field), without botching the record. How 
can I emulate the U2 command used with 
random files for this me? 

John Menke 
Mt. Venton, IL 

A: No need to emulate it — use it if you 
want. Relative records are stored in 
physical sectors that U2 can alter, just 
like any other file. You need only trace 
the poiiuers through one more step 
than with random files, including die 
side sectors in your calculations. 

However, the jjroper way to edit a 
relative record is all at once— inside 
the computer, not on disk. Using a 
readily availaljle public domain util- 



ity like String Thing, you can easily 
read a record of any size into mem- 
ory, alter it with Basic's standard 
string-iianfiling commands (lx'fl$, 
Mid$, kigln.$), and finish by rewriting 
it with a single Print# statement. 



Q: Is it possible for relative files to co-exist 
peacefully with other DOS fdes — that is, 
xuithoul vn-iting over themf 

Bob Sullivan 
Oak Park, II 

A: Yes, that is one advantage of rela- 
tive files over direct-access files. A 
direct -access file may not respect exist- 
ing files. Relative files give equally (lex- 
ible access to any record within a file, 
but keep themsleves separate from all 
other files jjioperly allocated in die 
BAM. Relative files also appear prop- 
erly in the disk directory, and are com- 
patible widi DOS's Validate command. 



Q: I have had sciiei'al reqiwsls for a voy 
large relative record program, cotisisting of 
48 fields and a record length of 600 bytes. 
Is il possible to write such a long record? 

David Runnion 
Ashtabula, OH 

A: To go beyond 254 characters per 
record, simply separate ynin" logical 
records within the program from die 
physical records on disk. Instead of 
cramming, all 48 fields into a single 
disk record, limited to 254 characters, 
let each disk record be a single field 
in your logical file and think of each 
multi[>le oi' 48 disk records as a new 
logical record, Tlie disk record length 
for this file will be the length of your 
longest field, and the number of disk 
records needed will be 48 times the 
number of logical records wanted. 



Q: I am uniting 20 fields to one relative 
record, each ten characters long. The 
PrintU statement should look like this: 

Um PRlNTIt2A$C:HRS(l3)B$CHHS(U). . .7$ 

However, because of the two-line limit in a 
(1-64 statement, I cannot fit the whole list 
in one statement. And when I break the 
statement into two line numbers, the fields 
are fmnled in two separate records, men 
when a .semicolon ends the first line. I have 
also tried pritiling two strings with the 
information in them, (ml they are reatl lit- 



76 / RUN SPECIAL ISSUE 1987 



R O G R A M M 



N G 



erally and printed all into one field. Does 
anyone know the solution? 

Richard Wolf 
Oneonta, NY 

A: When you buili two strings, you 
were close to the solution. Briefly, a 
relative record must be entirely writ- 
ten out with a single Print# statement, 
but there is no rule against building 
a very long string in earlier lines lor 
that one line to print out. What you 
probably didn't realize was that you 
needed the code CHR${13) in your 
strings, not the letters C, then H, then 
R, and so on. 

Here's a version that shows the 
needed technique: 

ion AS = '■" 

110 FORI = OTO 19 

120 :A$ = AS + F$(I) + CHR$(13) 

130 NEXT 1 

140 1'R1NT#2,AS; 

It usually works best to store data 
fields in memory as elements in an ar- 
ray, F${0) tluough F$(19) in tJiis case. 



Q: I am ii/riting an inventory program for 
vending machines. Each machine is saved 
in a separate sequential file. I would Ukr 
to get a listing of all machines without 
entering each filename individually, h this 
possible? Also, how can I change jitst oufl 
field in a file? 

E.H. McCuaig 
San Mateo, CA 

A: To list all the sequential files in or- 
der, without reentering Uieir names 
each time, you could keep the file- 
names in an array that is itself saved as 
a sequential file and automatically re- 
loaded w^hen the progratn runs. 

However, another approach is sim- 
pler, and it's the easiest way to change 
only one field in a file. Simply ret)Iace 
your sequential files with a single rel- 
ative file that keeps data for each ma- 
chine in one or more records. If each 
vending machine is allocated with 
enough records to hold each field in 
a separate record, you can easily edit 
any one field. 



8. Languages 

Q: Do you know of a compiler program 
that will let you write a whole program in 
Commodore C-64 Basic, and then compile 



it into machine language? TTw ones I've 
tried leave out such necessities as siring 
variables, iricluding CHRS and T/S. An- 
other program wanted to scratch the orig- 
inal program from the disk. There has to 
he a compiler that 's perfect for me some- 
where out there, but where? I'm tired ofptsl 
Basicly plodding along. 

Kelsey B. TidweU 
Address unknown 

A; As I'm learning each day in my 
own studies, there are many differ- 
ences between an interpreter and a 
compiler, and no compiled Basic is 
likely to be 100% compatible with an 
interpreted Basic. Strings, for exam- 
ple, are a real problem for a compiler. 
Should it bind them to a fixed siz.e at 
compile time for maximum speed, or 
should it delay binding until execu- 
tion fime, and handle them no faster 
than interpreted Basic, including all 
the garbage collection problems? Dif- 
ferent vendors answer that question 
in different ways. 

Even .so, if you're willing to go lo 
the trouble of reading the compiler 
manual, and make a few changes in 
your interpreted Basic programs to 
support the needs of the compiler, 
any of the several good compilers 
available to Commodore owners 
should be satisfactory for most uses. 

Tvvo new compilers to consider are 
Abacus Software's Basic- 128 (a Basic- 
64 is also available) and Syntech'.s 
Gnome Kit. The latter has the un- 
usual added virtue of not being copy- 
protected. 



Q: I have recently become interested in ma- 
chine language. Wheti attempting lo "fall 
below" Basic, it has become apparent that 
my 6-i does not contain the monitor pro- 
gram. Could you offer suggestiom as to how 
I could either trade in my 64 for one with 
a mmiitor or acquire a monitor program 
on disk? 

Aaron Starr 
SakmyOR 

A: Almost any user group can supply 
you Willi a copy of Micromon or Su- 
pernion for the 64, on disk at little or 
no cost. Both are excellent learning 
tools for machine language. 



Q; What is the difference between an ar- 
setnlAer and a machine-language monitor? 



Can I use a monitor instead of an assembler 
to write machine language programs? 

Troy Lund 
Hertnantown, MN 

A: When computers were first devel- 
oped, they were programmed di- 
rectly, in a language composed 
entirely of nuinbers that they could 
execute unchanged. A typical simjjle 
instruction was written as 11 001 000 
(binary), with each digit standing for 
an actual switch within the computer. 
Later, machine instructions were 
written in shorter numbers (base 16) 
that were easier for humans to re- 
member. For the same reason, the 
numbers were eventually replaced by 
short words that stood for each in- 
struction, allowing people to write 
programs as a series of words. 

This added a translation step to 
programming, since computers could 
still only obey numeric instructions 
directly. The program that did the 
translation is called an assembler. Its 
development was the first great leap 
forward in software development and 
heralded the eventual development 
of Basic. 

However, even after the advent of 
assemblers, there remained a need to 
view^ and change inimbers in the ma- 
chine directly, via machine language 
monitors, so called because they di- 
recti y monitor the actual values used 
by the machine. 

As this brief history suggests, there 
is a continuing need in programming 
for both assemblers and monitors. 
Short programs can be written en- 
tirely with a monitor, but larger pro- 
grams are much easier to develop 
with an assembler. Most machine lan- 
guage programmers use at least one 
of each. 



Q: Where I work, I am used to program- 
ming 7.80s with a multi-pass assembler 
1 recently bought a C-128, Imt I cannot 
find a multi-pass assembler anywhere. Are 
tfiere any? 

Erik Skyten 
Nashua, Nfi 

A: Yes, there are several two- pass as- 
semblers for Commodore comjjuters, 
and the one I use most, NbVE, even 
offers a third pass to create relocat- 
able object code. It is in many respects 



RUN spKt:iAi. ISSUE mi 1 77 



N I 



equal lo the IBM mainframe assem- 
bler used here at Western Illinois Uni- 
versity. A new macro assembler von 
might fmd especially helpful on the 
CI 28 is I he Buddy 128, from I'm- 
Line Soi'twisie. I'nlike some other- 
wise excellent competitors, BUDDY 
niid MAT, are not copy-protected, 
making them far easier and safer to 
use than others. 



Q: Must I know mndiim Um^tage lo 
knmv iiihrrf lo use the SYS commnnd. or is 
there some wtty i cmi use SYS calls without 
learning machine lattgitage? 

Jonathan Jackson 
Riverside, HI 

A: It isn't necessary to know machine 
language (o use SYS calls that others 
have ilistovered, hut it certainly heljjs 
in understanding what's going on 
after the call. Until you feel like in- 
vestigating machine language, just be 
very careful you type the numbers in 
puhlisiifd SYS calls exactly as written. 
(A mistake normally won't hurt the 
machine, bui you might have to tmii 
it oiiand start over.) 



Q; In many programs, I notice the number 
169 appearing frequently in Data state- 
ments. Is this a Gosith in nuichine lan- 
guage? I'm curious to kmni) the basics of 
machiiie language contained in Data 
statements. 

Jim Smith 
Sterling, KS 

A: The number 109 is the decimal 
repieseniation of the machine lan- 
guage command I, DA #. It loads the 
value ill the number following 169 
into the primary accumulator of the 
mici'oproccssor. This is indeed a vei'y 
cotnmon command, and often yon will 
Ihul (he next tuunber is 0, meaning 
that the accuunitator contains a i^ero. 

If you're ready to learn iTiore about 
machine language, one too! I use al- 
most daily is Micro Logic's 6502 ref 
crcnce card. It lists on a single plastic 
sheet all the reference material I need 
for 6r>xx programming, including die 
answer to your tjuestion ahoin what 
instructions are represented by var- 
ious mnnbcrs. To order, send a check 
for $0,95, marked "Send (1) MC- 
6502," to PO Box 174, Hackcnsack, 
NJ 07602. 



Q: I have recently purchased a C-I2S to 
take (uivantage of the programs available 
for CP/M users. Would you please tell me 
where I can find CP/M public domain pro- 
grams'? The user groups in my area are uiii> 
to CP/M and the C- 1 28. 

Ken Rippo 
Milan, TN 

A: Cheryl Peterson listed do/ens of 
sources in thejanuary 1986 RUN, Mer 
suggesiefi sources included Poseidon 
Klectronics, 10:5 VVaverley Place. New 
York, NY 1001 1, Kaypro and Osborne 
computer user groups, and RCP/M 
Imlletin board systems. 



Q: I undeistand that the 1571 disk drive 
will read and jmile IHM DOS disk pn- mats 
under the C-128's CP/M mmk. Can the 
formal he read arid written under the 
C-128 modef 

Jerry Mulherin 
Kaneohe, HI 

A: I haven't heard of anyone success- 
fully reading a PCDOSformat disk 
on the C;-i28 yet, although I expect it 
will be done; it's already been done 
for some other CP/M machines, such 
as the Osborne and Kaypro, via com- 
mercial ]>rograms like L'niform and 
Media Master. The IBM foirnai diat 
Conmiodore supports on the C-128 is 
a CP/M hinnat, not PC-DOS. 

Getting at CP/M disk formats from 
the C-128 side of the machine isn't 
easy, but it is possible, using the I .')7 1's 
new Burst mode. However, die needed 
read antl write commands ie([nire 
(he speed of machine language con- 
trol and aren't at all a project for the 
faint-hearted. 



Q: 1/ 1 p u rchase a non-Corn modore printer 
with a built-in Commodore interfuce, wdl 
the built-in interface be a disadvantage 
itilum using CP/M mode? 

Eugene Cozzi 
Barre, VT 

A: Ves, it often is a disadvantage. Only 
a few interfaces explicitly support 
CP/M mode on die C-128 so far. Also, 
such a jjrinier is incompatible widi .\p- 
pie and IBM computers, whei^eas a sc[)- 
arate interface can easily be removed 
for use with other systems. 



!^' I'd like to learn about the Cobol offered 
by Digital Research for CP/M mode on the 
C-128. Is it a limited .iuh.wt ofAi\'SI'74 
Cobol, or is it complete? What is its cost, 
and how is it ordered? 

Ted Chidestcr 
Sante Fe, NM 

A: All microcomputer versions of 
Cobol are still subsets of that massive 
language, although often complete 
enough for likely needs. DR describes 
their li'vel 11 (kibol aseualiling micros 
"to compile and mn progiains written 
in full ANSI '74 Cobol." If the SI 600 
list price doesn't scare you off, you can 
reach them at 60 Ciarden C^iun, Mon- 
terey, CA 93942 (40H-649-3H»)6). Mow- 
ever, for the money, a better choice 
may be Abacus Software's new S60 
f ;ohoM28, (They also sell a Cobol 64.) 



^2* / am interested in teaming the relative 
merits of Simons' Basic and Comal. Both 
of these liave commands — such rLS Auto, 
limumb(rring, MOD and Print Using — 
tlutt are not available on my 064. 

Lawrence A. Kiefer 
Saint Ann, MO 

A: Simons' Basic as first released by 
Commodore is bug- in Tested and non- 
si aiidard in its syntax for many com- 
mands. It is, however, a magnificent 
ilrst eiforl by a teenage programmer. 
Comal, on die other hand, is tiie highly 
polished result of several years of 
development, and compatible with 
generally accepted international sian- 
dards. The other practical and inipor- 
tani difference is that Simons' Basic 
adds to Basic, while ("tnnal replaces it. 



Q: I me Nevada Fortran with my C-64 
and a CP/M cartridge. To my .mrprise, the 
Fortran manual is geared to the experi- 
enced t'ortran progiammer already famil- 
iar with CP/M. Would you please assist me 
in iibtaining a tutorial book on CP/M for 
the Commodore 64, with re.spect to Fortran 
applications? 

Reynaldo Reyes, Sr. 
South Gate, CA 

A: First, CP/.M and Fortran arc en- 
tirely different from each other, For- 
tran is a very old, but still popular, 
programming language, of which Ba- 
sic is a somewhat modified subset. 
CP/M, on the other hand, is an oper- 



78 / RUN Sl'ECiAL ISSUE 1987 



H A R D W A R 



ating system, helping the computer 
run whatever language you like with 
equal ease. Thus, you aren't likely to 
fmd a single text that teaches both 
Fortran and CPiM. On the other 
hand, most bookstores carry books 
that deal with each subject separately. 
Of the CP/M books, my personal 
favorite is still Thom Hogan's Osborne 
CP/M User Guide, From Osborne/ 
McGraw-Hill. My favorite Fortran 
book is the Fortran Color Book, al- 
though nearly all textbook publishers 
offer good introductory Fortran texts 
for classroom use, available from the 
nearest university bookstore. 



Q; / liave a machine language jmnitor pro- 
gram called Micromon, but no longer have 
tfie inslructionsfor it. Can you tell me how to 
save programs with this monitor? 

John GuiSory 
West Lake, LA 

A; Saving programs with most ver- 
sions of Micromon is fairly simple. 
The statement .S"0:NAME", 1000,2000 
will save the contents of memory ad- 
dresses $1000-$IFFF to disk. If you 
have a cassette, use ,S"0:NAME", 
1000,2000,01 instead. (Micromon de- 
faults to disk.) Note that, in both cases, 
the final address is one location be- 
yond the actual last address you want 
saved. By now, most Commodore 
user's group libraries should have 
both Micromon and an instruction 
file for it. 



Q Is there any way to get the C-64 to keep 
time with millisecond accuracy? 

David A. Washburn 
Atlanta, GA 

A: Yes, using machine language. 
You'll need to set up a timing loop 
and add together the number of clock 
cycles used by each command in the 
loop. Just bear in mind that when a 
branch is taken, it requires one or two 
(depending on the distance of the des- 
tination address) more cycles than 
when it's skipped. The clock cycles 
needed for various commands arc 
shown in nearly all machine language 
guides. 

As an example of a timing loop, the 
subroutine 



W.-UT LDX#199 
LOOP DEX 

B\E LOOP 

RTS 

uses two cycles one time for the toad, 
two cycles 198 times for the decre- 
ment, three cycles 198 times and two 
cycles one time for the branch (assum- 
ing the whole sequence is within the 
same 256byte page of memoiy) and 
six cycles for the return. Adding these 
up, the subroutine takes a total of 
1000 clock cycles, of which ten are 
needed regardless of the value in the 
X register, and the rest are used at the 
rate of five per loop iteration. 

On a C-64, with its approximately 
1-MHz clock, a WAIT would execute 
in very close to one millisecond. For 
longer delays, just call WAIT repeat- 
edly, also taking into account the clock 
cycles used by the calling program. 



HARDWARE 

9. Computer Parts 
AND Connections 

Q: When I contacted my local authorized 
repair service, I was told that it mould cost 
$74 just to open my C-64, I thought that 
a littk high for a $139 unit. The service 
people also refused to sell nte a 6526 chip 
over the counter. Could you give me an 
address where I cotdd purchase the chip? 

Bob Prosser 
Chicago, IL 

A: Jameco Electronics (1555 Shore- 
way Road, Belmont, CA i)40u2. 415- 
592-8097), with whom I have had 
good dealings for several years, now 
sells llie 6526 and several other key 
chips for the C-64, along with a full 
line of general-purpose IC ctiips. 



Q: I represent Commodore computers in 
the Army and Air Force I^changc System 
throughout the Republic of Korea. Where 
can I get diagnostic disks Jar the many 
models of the VIC and 64? Is it jmssible to 
buy schematics and part-location charts for 
each model? There area lot of Commodore 
users here in the miliiaiy. 

Russel Garecht 
APO, San Francisco 



A: Schematics for the VIC and 64 
were available from Sams' Photofacis, 
Howard Sams Publishers, Indianapo- 
lis, IN, as CCS and CC4. Diagnostic 
programs for some Commodore prod- 
ucts should be available to authorized 
dealers directly from Commodore; if 
you can't them from Commodore 
yourself, check v^-ith a full-service 
dealer, MicroW, Box 113, Pompton 
Plains, NJ 07444, also sells Mr. Tester, a 
diagnostic disk for the C-64. 



Q: Fve read thai something called the se- 
rial bus is used to connect both a disk drive 
and a printer to the computer at one time. 
Could you please explain exactly what it is, 
where I can buy it and approximately how 
much it costs? 

Bruce Romney 
Suffem, NY 

A: Good news! The serial bus won't 
cost you a dime extra. The bus in- 
volves components built into every 64 
computer. Another essential part of 
the bus is the six- wire cable that 
comes with Conmiodore printers and 
disk drives to connect them to the 
computer. 

You see, the computer needs a way 
to communicalc bclwcen the micro- 
processor chip, (he interface adapter 
chips and exicina! devices they con- 
trol, such as the disk and printer. Run- 
ning a full set of wires between the 
processor and each of the other chips 
would be very t ostly instead, the com- 
puter uses a system much like a tele- 
phone party line. 

In both cases, only one set of wires 
serves several neighbors, and infor- 
mation carried on them is preceded 
by a code that tells which location is 
to receive that information. The 
phone company uses a special ring; 
the computer uses special addresses. 
In each case, however, the result is 
that only the intended recipient gets 
the information. 

In the case of the 64's serial bus, the 
wires start at an interface adapter chip 
called a CIA. From there, they run to a 
connector jack on the back of the com- 
puter. A cable goc,>. from tlie jack to a 
disk drive, if you have one, or directly 
to a printer, if that's all you have. If 
you have both, another serial bus con- 
nector on the back of the disk drive ex- 
tends the signals from the CIA chip in 



RUN SPECIAL ISSUE 1987 / 79 



I N 



the computer to another cable, going 
this time to a second disk drive or to 
the printer. With up (o five different 
computer accessories sharing tlie 
same serial bus, it is esKeniial to be- 
sure each one has its own unique ad- 
dress (also called device number). 
This assures that only the correct de- 
vice wiil listen to each command from 
the computer. You'll sometimes hear 
people refer It) this sharing of the se- 
rial bus as daisy-chaining. 



Q: Could you please tell me the device nitm- 
bers for the computer, ami everything you 
can hook up to it? 

Mark Vogi 
Address unknown 

A: Here is a partial list of devices that 
are often connected to (Commodore 
computers. All devices numbered 4 or 
higher are on the serial bus. 

— keyboard 

I — cassette drive 

2 — user port; Commodore modems 

and RS-232 interface 
3 — display screen 
4 — printer 
5 — primer #2 
6— plotter 
8 — disk drive 

9— disk drive #2 (B: in CP/M on C!28) 
10— disk drive #3 [C: in CP/M on C- 1 28) 

I I —disk drive #4 (D: in CPftI on Ol 28) 



Q; / am going to purcluise a printer ami 
use it, if possible, at the same time as a 
modem. However, if I huy n nonComvw- 
(lore printer, both accessories plug into the 
parallel port. What can I purchase that 
will allow me to ilw both at the same lime? 

Sean Htdl 
Schenectady, NY 

A: Unless you have a Plus/4, I would 
not count on using both a printer and 
a modem simultaneously, because 
most Commodore computers (with 
the exce]3tion of the l'his/4) utilize one 
IIO chi[) for both moiiem anti primer 
operations. This chip can't peri'oini 
both functions at once. 

One cure is to use them alternately, 
storing text to be printed in memory^ 
until you can paii.se your modem con- 
versation long enough to print what 



is in memory. Many terminal pro- 
grams allow this. 

As for plugging non-Commodore 
printers into the parallel port, it isn't 
necessary and I don't recommend it. 
The normal way to control most 
printers from current Commodore 
computers is via the serial bus, and 
special interfaces to make this pos- 
sible are widely available at reason- 
able cost. The problem is that the 
parallel port on most Commodore 
conrputers is not a Centronics [lar- 
allel printer port, such as you fmd 
on most printers; rather, it is an ex- 
perimenter's port, not intended to 
be compatible w^ith other parallel de- 
vices. It is, however, almost compat- 
ible with serial RS-232 devices, and 
makes a good modem port. 



Q: I don't under starui the theoty behind 
surge protectors. Why can't you ping an 
$S surge suppres.sor into an outlet and a 
jnultipk outlet into the surge protector? 
Would this not accomplish the same thing 
as using the Lemon, Lime and Orange 
brajul of surge suppressors? 

Ronald Moore 
Richmond, VA 

A: Fancy surge protectors provide 
two seiTices. First, they provide some 
protection against surges of moder- 
ately high voltage, just like your S8 
version. Second, they also provide 
filtering of more ordinarj' variations 
in voltage, damping down deviations 
from the standard voltage and fre- 
quency. A water heater is a good anal- 
ogy for the way this works. 

A water heater's size allows it to 
hold enough water to give a com- 
fortably warm shower. Even though 
cold water is constantly entering the 
tank as you bathe, the water doesn't 
normally leave the tank until it has 
been warmed. On the other hand, if 
the water were ever to boil, a separate 
emergency valve would open, to give 
steam an escape route and prevent 
an explosion. 

In a surge protector, the surge pro- 
tection is like the emergency valve, 
and the filtering is like the wa- 
ter tank. 

Thus, you do get something extra 
when you spend inore for fancy surge 
protectors. Whether you need that 
extra protection is another question. 



I have yet to hear of a piece of Com- 
modore equipment failing for lack 
of a power-line filter, although sev- 
eral systems have been lost for lack 
of a simple singe protector. 

One more thing — don't expect 
more of a surge protector than it can 
cleli%'er. Nothing will protect your sys- 
tem against a lightning strike on 
nearby wiring except unplugging the 
computer completely. 



Q: Should one leave the potuer supply for 
the 64 plumed in when mit in use, or 
shotdd it be disconnected? 

C. E. McDougal 
Salinas, CA 

A: I plug mine into a switched multi- 
outlet [Miwerstrip, along with llie test 
of the computer system, and switch it 
on and off with everything else. This 
works very welt and avoids the whole 
problem. 



Q- If the pmoer supply, the 64 or the 1541 
overheat, how can you tell? 

Mike Gross 
Bethlehem, PA 

A: Smoke curling up om of the cool- 
ing vents would he a dead giveaway. 
Short of a fire, the clearest sign of a 
heat problem is a system that works 
well when first turned on, but fails 
anywhere from a minute to two 
hours later. 

One way to trace the problem is to 
cool the suspected device, wit!) a fan 
or a can of Frost Test (although some 
folks recommend against using the 
latter on grounds it may cause a static 
shock to your chips). If the cooled 
device begins working profDeriy again, 
you've foiuid the trouble. I' 

Replacement ])ower su])plies are 
available from JSK Knter[>rises, 10035 
White Pine Lane, Santee, CA 92071; 
(i 19449-9748. 



Q: My Commodore 6-f seems to lock up 
about five minutes after I turn it on. If I 
turn it off for a feiv minutes, it will work 
for a few minuies before the problem ap- 
pears again. Do you know what could be 
causitTg this problem? 

John Allison 
RockviUe, MO 



80 / RUN SPKCL-U. ISSUE 1987 



H 



R D W A R 



A: Heat, I receive letters like yours 
several times a week, and, in most 
cases, the culprit appears to be an 
overheating power supply. As a gen- 
eral rule, it" a 64 fails anywhere from 
five minutes to a few hours after 
being turned on, ihe problem is heat- 
related, and the power supply should 
be checked first. 

If the red power iighl on the top of 
the keyboard dims or goes out, the 
power supply is probably at fault. But 
even if the light is on normally, the 
power supply could still he inade- 
quate. The way to be sure is to borrow 
a different power supply and try it. If 
the problem goes away, your power 
supply will have to be fixed or 
replaced. 

Lei mc make a couple of sugges- 
tions. First, be sure your power supply 
is plugged in properly; on some 64s, 
it's possible to force its connector in 
the wrong way. On most units, the 
dimple in the side of the connector 
should face up when plugging in. 

Second, keep your power supply in 
an open area. It needs ventilation, be- 
cause it is irv a sealed case and gen- 
erates a lot of heat. 

Third, try to minimize the number 
of add-ons you plug into a 64 using the 
standard power supply, and be suie 
their connectors are on properly. 

Fourth, if your power supply fails, 
replace it witli one of the repairable or 
oversized power supplies now being 
offered by various companies. 



Q: Are the C-64 chips plug-ins or sol- 
dered? If they're soldered, wotdd it be fea- 
sible to itistall sockets? 

Richard Stephens 
Yonkers, NY 

A: The C-64's chips are soldered in, 
and I've had considerable success re- 
moving soldered chips with an inex- 
pensive desoldering iron from Radio 
Shack. However, I must warn you that 
it's a lengthy and frustrating project, 
and it could destroy your circuit 
board. If you do remove soldered- in 
chips, you can install sockets for the 
replacements. In fact, that's the only 
way I do it. 



Q: Is there any Itelp you can recommend 
for a C-64 that loads but doesn't run cer- 



tain programs (e.g., Beachhead). I've gone 
to three technicians, all of whom say, "It's 
the nature of the beast. Some C-6't's just 
act tliat way." The disk is good, awl .so is 
the 1 54 1 drive. 

Name and 
address unkmnvn 

A: I'd be suspicious of the Kernal 
ROM in your C-64. Most likely It's the 
older Rev 1 or Rev 2 type, and some 
programs work only with the current 
Rev 3 chip. Similarly, your 1541 may 
have an older ROM and need the cur- 
rent -05 ROM. 



Q: Tiiere are 3-MHz versions of the 6510 
and 6502 chips available rwzu. Is there any 
way to use these chips to increase the .speed 
of my C-64 or 1541? 

Brian Jedrick 
Nufley, NJ 

A: Not yet, because you'd also need 
faster versions of all the supporting 
chips. For example, the C-128 won't 
run at 2 MHz in 40'Column mode be- 
cause the Commodore's 40-column 
color chip can't run at higher speeds. 

10. Input Devices 

Q: I have a problem with my C-64. Every 
other key on the top row {1-3-5-7-9- + - 
English pound-INS) will not print or 
move. All the other keys on the keyboard 
are OK. 

Marcia Shawgo 
Lewistown, IL 

A: Those keys are all connected to 
pin 12 on the 6526 CIA chip at Ul. 
Since pin 12 is also connected to joy- 
sdck I, first unplug your joystick if 
you are using one, and see if that 
helps. If not, you or a technician will 
probably need to replace the 6526, 
although after you get the case open 
to do so, first check that the keyboard 
connector is firmly in place. 



j^- My C-64 keyboard is beginning to suf- 
fer from key oounce. Do any companies 
(Commodore inchtded) offer replacement 
keyboards? 

Laura Thompson 
Alexandria., VA 

A; Gregory Kundert, of Detroit Lakes, 



MN, recently wrote to suggest one so- 
lution — swapping a keyboard from a 
VIC. With VI Cs widely available on 
the used market, this is ]Mobably a 
good solution. You can also have your 
dealer order a replacement keyboard 
from Commodore. 

However, let me make one other 
suggestion. When key bcjunce be- 
comes a problem on Coimnodore 
keyboards, it's usually limited to one 
or two keys. II" you are mechanically 
inclined, you cat) disassemble 1 he key- 
board with a #0 I'hillips screwdriver 
and swap the offending key contacts 
with those of a rarely used key; clean 
the keyboard contacts with a pencil 
e ra.se r, and you'll have a usable key- 
board again at IH) charge other than 
your labor. 

Reader Roy Holland of Las Vegas, 
Nevada, suggests that you can usually 
stop key bounce by spraying a little 
DEOX-ID contact cleaner (General 
Cement part number 10-1906} into 
the faulty key.s. 



Q: I oum a C-64 and iise two joysticks. 
About a month ago, one of the joysticks 
began malfimctioning; when I push it to 
the left, ? wilting happens. I know that the 
problem is eithtr in the port itself or in the 
6526 to which it is connected. How much 
woidd it cost to replace one or both, and 
where would I find them? 

Stcfthen Legate 
Los Alamos, NM 

A: The problem is probably in the 
joystick. Remove the screws from the 
base of the joystick and open the case. 
Slightly bend the contacts on the 
inside to get a good circuit and 
reassemble. 

If the joystick checks out all right, 
get a continuity tester, or ohmmeter, 
and check for continuity between the 
pins of port 1 and the pins of the 6526 
at Ul on your circuit board. Use the 
schematic in the Commodore 64 Pro- 
grammer's Refer nice Guide to be sure 
which pins should match. 

If there is continuity for each pin 
and no electrical shorts, then the port 
itself is all riglit. If continuity is not 
present, check the solder connections 
to the main board. 

Usually, it is the 6526, not the main 
board, that is damaged. If you must 



RUN SPECIU. ISSUE 1987 / 81 



I N 



replace the 6526, see your nearest au- 
thorized Commodore sen'icc center; 
or you can order one for $20 from K. 
Boufal, 244 Fitzwater St., I'liiladcl- 
phia, PA 19147; 215-925-6469, 



Q: f (mm a 0128 mid [would like lo know 
how good are its joystick port chips? I have 
had my 0128 only six months and have 
already bloimi four chips, fs there some- 
thing I'm iU)i)ig wrong? 

Mike Douglass 
Rochester, NY 

A: Commodore's 6526 CIA chip con- 
trols the joysticks on the C-128, as it 
does on the C-d-i. As chips go, it's pow- 
erful, and more reliable than the ear- 
lier 0522 chip, which does the same 
chore on the VIC. However, both 
chips have a definite weak spot as 
used in Commodore computers. 
They are directly connected to the 
joysticks, without any buffer chips in 
between. This makes them very sen- 
sitive to accidemal shorts when plug- 
ging in a joystick, as well as to static 
shocks when the port is touched. 

The most likely cure to your prob- 
lem is lo never plug anything into 
your system when it is turned on, and 
to protect your system from shocks 
even when it is turned off. 



Q: When I hold a light pen, which I con- 
structed, to the screen in one spot, the Y 
values remain comtant, while the X values 
range up or down by 15 over a one-second 
interval. Why? Will software written for 
other light pens work with mine? 

Also, do you have a formula for changing 
the X, y coordinates into screen locations 
on the 64? 

Keith Spencer 
Groves, TX 

A: Your experience is typical of the 
64's resolution with inexpensive light 
pens. Newer 64s may do better than 
older ones, due to a revised VIC-II 
chip, but truly usable resolution re- 
quires a light pen that costs almost as 
much as a 64. The only truly accurate 
light pen r\'e seen that you can buy 
is Flex id raw, from Inkwell Systems of 
San Diego, CA. 

The Flexidraw programs do not 
work with other light pens, but sim- 
pler programs should, as long as you 
don't mind only being able to choose 



accurately among rows rather than 
columns on the screen. 

Here is Supra's Cardwriter algo- 
rithm for converting X and Y to a 
screen location: 



LC = SS -i- SW*INT((Y - LY)/ 

DY) + INT((X - LX)(DX) 

where SS = screen sun: 1024 (7680 or 
4096 on VIC) 
SW - screen width: 40 (2a) 
ly = low y value; 50 (24) 
LX = low X value Ab (34) 
DY = douTV location: 8 (4) 
DX = dots fK location : 5 (4) 



12; I just saw the Omni-Reader by Obeion 
int. It Iramfers material from a typed page 
to the screen of your computer without touch- 
ing the keyboard. It Aas a standard RS-232 
serial port hookup and is made for the IBM 
PC- AT. Is this compatible with the C64? 

L,C. Blanchard 
Address unknown 

A: Currently, versions are available 
only for Apple and IBM. Since it does 
work via an RS-232 interface, you 
could write your own controller soft- 
ware for it, but a better approach 
could be to write and ask them to make 
a Coininodore version available. 

11. Datastorage 
Devices 

Q: WIten I plug a Commodore cartridge 
into the cartridge slot of my 64 after the 
power is on, I lose Basic. I was hoping to 
read the cartridge source code with a ma- 
chine-code reader such as MLX. Using a 
monitor (e.g.. Superman) also proved un- 
successful. I don't see how an expaiisioii 
motherboard (e.g., Supra CB-5) will solve 
this. What is energized tiy the Commodore 
cartridges to dhable Basic, and can this be 
counteracted? 

Henry Metz 
Bronx, NY 

A: You're lucky that Basic is all you 
lost when you plugged in that way! 
Many VIC owners have lost their 
whole systems by plugging in car- 
tridges with power already on. What's 
getdng you isn't something magic in 
the cartridges, but rather their ver)' 
nature. To ensure maximum flexibil- 
ity, the cartridge port is connected, to 



nearly all the important wires that 
run the 64. When you plug something 
in with power on, you disrupt the sig- 
nals on all these wires. Don't do it! 

When the computer is reset, it 
checks the cartridge port; if certain 
characters are found in the first few lo- 
cations of the cartridge memor)', the 
computer turns control over to the car- 
tridge instead of Basic. If you need to 
study a cartridge, use the CB-5. 



Q: I know the difference between RAM 
and ROM. I load a program from the Da- 
tassette into RAM. But wliat happens 
when I load a program in from a cartridge 
attached to the cartridge port? Does it go 
into RAM or what? 

Tom Murphy 
Maplewood, NJ 

A: When a cartridge is installed, its 
ROM takes precedence over any RAM 
located in the same memory ad- 
dresses. It doesn't have to load at all 
(because it is already connected to the 
machine at the correct addresses), as 
long as it contaitis a machine language 
program that the computer can obey 
directly from the cartridge's ROM. 

A few cartridges contain Basic pro- 
grams that relocate themselves inside 
the computer at start-up, and then 
run in the same RAM as other Basic 
programs. 



Q: Is it better to buy commercial software 
on disk or cartridge? What are the advan- 
tages and disadvantages of each? 

Dee Daviess 
St. Louis, MO 

Ai Disks are more common, pardy be- 
cause they are usually about S5 
cheaper than an equivalent cartridge, 
but also because they can be updated 
more easily and don't require chang- 
ing any hardware connections when 
going from one program to another. 

On the other hand, cartridges are 
far more durable than disk, cannot 
damage your disk drive and start 
instantly. 

As copy- protection schemes have 
grown ever more elaborate and fra- 
gile, I have come to prefer cartridge 
versions of programs that cannot eas- 
ily be copied, especially for use by 
kids and unskilled users. 



82 / RUN SPECIAL ISSUE 19S7 



H 



R D W 



R 



On the other hand, constant inser- 
tion and removal of cartridges can 
eventually wear out the contacts on 
ihc cartridge port, so no one answer 
is perfect for evt'iyone. 



Q; Using the jormai option in DOS mi a 
157! drive, I find I have 1 328 blocks free 
OH both single- ami doiible-sieied disks. Is 
this right? If so, why purchuse double-sided 
disks at nearly twice the cost? 

E. Cozxi 
Barre, VT 

A: Yes, it's right, and there's no rea- 
son to pay twice the cost. When dou- 
ble-sided disks differ from single- 
sided disks at all, ihey are said to be 
thicker, and burnished on both sur- 
faces rather than one. But the real dif 
fercnce is in testing; only double-sided 
disks have been tested and verified as 
good on both surfaces. Other disks 
have either nut been tested on the sec- 
ond surface or have failed the test. 

Your cHsk drive has no way to know 
whether you're Ibrmatling a single- 
or a double-sided disk, so it normally 
formats theui as double-sided in 128 
mode and single-sided in 64 mode. 
Either way, if the formaiied disk con- 
tains any errors, the format com- 
mand will fail, and you should re- 
place the disk. 

In !uy own experience, 90 percent 
of the single-sided, single-density 
disks that I own format properly as 
double-sided, double-density disks. 
And five years into the experiment, 
I am still wailing for the first disk so 
formatted to fail later. I siill buy dou- 
ble-sided disks for double-sided use, 
but I pay only a small surcharge to 
gel [hem. 



Q: t waidd like to know if a disk notcher 
(a puncher used to make another write- 
enable notch on the back side of a disk) is 
safe to tue on a disk tliat is full on one side, 
Qin it damage disks? 

Gordon Rimac 
Sterling Heights, MI 

A: On a single-sided disk drive like 
the 1541, you can easilv use the fiip 
side of a disk by adding another write- 
protect notch, Y'ou can do this with 
either a commercial notcher or a 59- 
cent paper punch. However, this 
should be done only on disks that will 



be rarely used and that can easily be 
replaced, such as a copy of an entire 
library of public domain programs 
from your user's group. 

'fbe caution is due to two prob- 
lems. One, the disks pre]>ared this 
way will have to be recopied to be 
used with the new 1571 chsk drive in 
its double-sided mode. This is be- 
cause true double-sided drives Hkc 
the 1571 always rotate disks in the 
same direction, whereas flipped disks 
rotate backwards when using (he back 
side. That makes it difficult Ibr the 
1571 to make sense out of your disk 
unless you continue flipping it man- 
ually as before. 

Second, the backwards rotation 
tends to release dirt that has been 
captured by the cleaning ])ad inside 
the disk jacket, and more of it than 
usual will end up on the read/write 
head. This will require more fretjuent 
cleanings and possible repairs dowti 
the road. 



Q: Lately, my 15-11 won 't read or write on 
track I; it jtist click's against the end stop. 
A disk-aligtiing program from CSM Soft- 
ware has an option to check alignment 
where it reads all the tracks, and it says my 
drive is in aiignmenl. Please help. 

Marty Westra 
Sioux Falls, SD 

A: Since the alignment j^rogram 
claims that all is well, how sure are 
you that track 1 can't be read from or 
written to? Here's a short progiam to 
test writing to track I: 

10 OI'KN 15.8,15 

20 OI'KN 4.8,4."r' 

30 PRINI#4,"TR.\CK-ONE" 

40 PRiNT#l,'i,"U2";4;0;l;l 

50 cij:)si:4 

60 CIX>Sf. 15 
70 END 

Here's another to read back what 
you've written: 

10 OPEN 15,8.15 

20 OPKN' 5,8,5,"#" 

30 PUlNT#1.5,"Ut";5;0;l;l 

■!() FOR X = 1 TO 9 

50 :G1;T#5,AS 

60 ; PRINT A$; 

70 NKXT X 

80 CLOSE 5 

90 CUJSE 15 

99 END 



If you really do have a problem us- 
ing track 1, you or your dealer will 
need to atjjusi the end stop. It's ju.st a 
matter of moving a bit of mclal that's 
held by a screw. Or better yet, replace 
it with a Quiet Drive spring from Car- 
dinal Software (1364 6 Jefferson Davis 
Highway, Woodb ridge, VA). This 
spring appears to permanently solve 
the problem of drives being forced 
out of alignment because of being 
thumped against the stop when some 
copy-proiectcd programs load. 



Q: I have one Commodore 64 systetn at 
home and another at the office. I recently 
discovered that duks pmtiatted on one 
1541 drive will not load reliably from the 
other, and vice versa; hownier, both drives 
will load disks formatted on their oion par- 
ticular drive. ICach unit passes the perfor- 
mance test program on the demonstration 
disk that comes packed with the unit. 

I assume the trouble lies with a cali- 
bration problem oji one or both drives. I 
have heard rumors of a software package 
that provides instructions for calibrating 
malfunctioning 1541 disk drives. Is .such 
a product available commercially? 

Albert Wellman 
Santa Rosa, CA 

A: I agree with your diagnosis. One 
or, more likely, both of your 154 Is are 
somewhat out of alignment — not 
enough not to load a disk formatted 
by a propei-ly aligned drive, such as 
the test/demo disk, !>ut enough to be 
incompatible with each other. 

To make sure, you could buy the 
new 1541 Physical Kxam progi'am 
from Cardinal Software (Wood- 
bridge, VA 800-762-5645). U wilt 
quickly and easily shoiv you whether 
or not your drives are properly 
aligned, and, if they're not, will show 
you in a simple graph which direction 
they are ttlf and how far. It will also 
lest the Track stop atid the motor 
sjjeed. If you are mechanically in- 
clined, you can tjse this information 
to make corrections. In addition, the 
brief mamial does include instruc- 
tions on the necessary steps involved. 



Q: 1 have a problem with the Check Disk 
program supplied with the 1 54! drive. The 
program takes so long to run through a 
disk t!iat ! normally give up before it checks 
500 blacks. I low long should Check Disk 



RUN .SPKCLU ISSUE 1987 / 83 



I N 



lake? I'm used to three to ten minutes on 
other computers. 

Barry Hoefermann 
Orekmd, PA 

A: Unfonutiatcly, tlie results you re- 
port are typical for the original Check 
Disk program on the 154! — over two 
hours to run, and increasing delays as 
it moves the read/ write head further 
from the block where it keeps its 
results. 

Few 1 54 Is arc solid enough to com- 
plete the Check Disk program with- 
out reporting spurious errors. The 
then-overheated drive may indeed re- 
fuse lo load other programs. 

Avoid the Check Disk program ex- 
cept as a torture test for new 1541 
drives. The header (disk NKW) cum- 
mand. which (brmais disks, already 
writes to and then verifies evei7 byte 
on tile disk's surface. You will rarely 
neetl any further assurance that the 
disk is good. I've never had a format- 
ted disk suffer ati error that couldn't 
be fixed by reheadcring the disk. 
Also, buy gootJ disks, and replace im- 
portant ones before they vvcar out. 



Q: In lestitig a 1541 dish drive with the 
demo disk provided, I ran the performance 
test program itnti received a number of unit- 
isfailing-performance-test messages. Is the 
drive defective? 

D.W. Shilling 
Shoreham, NY 

A: Probably not. As the message at 
the start of the performance test in- 
dicates, you are only supposed to run 
it on a "scratch" disk (a disk that does 
not contain any valuable informa- 
tion), not the Test/Demo disk itself. 
Fortunately, you left on the write-pro- 
tect tab; if you hadn't, the whole di.sk 
would have been erased by the test. 

Before worrying about the drive, 
try running the program again, using 
a new or reusable disk instead of the 
Test/Demo disk. The program called 
it a scratch disk because its con- 
tents, if any, can be safely scratched 
(erased). Be sure its write-protect 
notch is not covered by anything. 



1^ / have had my 1541 dish drive for 
approximately one year, having little or no 
(rouble with it. I am beginning lo see more 
and more ativertisements for dish drive 



cooling units. Are they really worth buying? 

Darretl Dopkin 

York, PA 

A: If your drive were failing or con- 
stantly going out of alignment due to 
overheating, a cooling unit might 
help. Since your disk is working prop- 
erly.just enjoy it. I'd only recommend 
a cooling fan or heat sink for a prop' 
erly functioning 1541 if it were 
mounted where air can't circulate or 
where temperatures often exceed 90 
degiees F. 



Q: When my disk drive mottrr is running, 
it makes a squeaking noise. It did not al- 
ways do this. Does it need some kind of 
lubrication? If Jtol, what does it need^ 

Phil Spicer 
Houghton Lake, MI 

A: If your drive is a 1541, more than 
a year or so old, and the noise began 
suddenly rather than gradually, your 
problem may be a loose flywheel. To 
be sure, you'll have to remove the 
drive from its case and look at the 
bottom of the drive. The flywheel has 
a strobe disk on it to assist in setting 
motor speed (if anyone could see it 
down die re). 

If it is held on by a screw and the 
screw is tight, that isn't your problem. 
But if there is no holding screw, you 
may need to gently tap the flywheel 
back onto its spindle with a small 
hammer (don't bend anything in the 
process) and seal it in position with 
superglue 

If the flj^vheel isn't your [)roblem, 
be sure the head is clean and the load 
pad in good condition. The head in ay 
be cleaned with 91% isopropyl alco- 
hol on a Q-Tip. If the load pad is 
missing, dirty or worn, replace it. If 
noise persists, try to notice whether it 
is constant or is heard only when the 
head moves. 

If it is associated with head move- 
ment, you can, with high-quality lith- 
ium grease, lighdy lubricate the rail 
on which the head moves, taking care 
to keep it off the rest of the drive. 
If the noise is constant, the washer 
that is atop the collet as.semlily and 
clamps the disk in place also may 
need a bit of giease. It can be re- 
placed, but about now- I'd begin think- 
ing about letting a professional do 
the work. 



Q: Wiat is the proper procedure for clean- 
i>ig- the head on the 1541 disk using a head- 
cleaning kit? I can't figure out horu to run 
the drive with the head engaged for more 
than a few seconds. 

John Aloi 
Ridgway, PA 

A: The trick is to repeatedly give the 
disk command until the cleaning is 
done, and make the command one 
that won't halt on an error. Here's a 
sequence that should work: 

W Ol'EN 15,8,15 
20 FOR I = 1 TO 500 
30 :PRlNT#15,'iO" 
-10 NEXT 

Contrary to the directions packed 
with many disk-cleaning kits, I have 
found no visible benefit from clean- 
ing a disk drive weekly. For folks that 
use good disks and avoid obvious 
sources of dirt and pollution, once a 
year is enough. 



Q: To reduce dmt in the house, Ijtist got 
an electronic air filter to go with my heat 
pump. Afterwards, I heard from a friend 
that the filter ionizes dust particles thai are 
not caught and that disk drives attract 
them like a magnet. Further, it was sug- 
gested that I keep the drives covered at all 
times, especially during operation. How- 
ever, I am reluctant to do so because of the 
heat problem. Have I a problem? 

Ed White 
Sacramento, CA 

A: In a word, no. A whole-house elec- 
trotiic air cleaner is one of the nicest 
presents you can give a computer to 
keep its environment clean. 

Although it can take up to a week 
to do so when first installed, the net 
effect of installing an electronic air 
cleaner is a large reduction in the 
number of particulates in the air. 
We've u.sed diem for years, and almost 
never have to clean dust out of our 
systems. 

You are also correct in assuming 
that the heat from running your sys- 
tem under a cover would be much 
worse for it than any amoiuil of dust. 
If you should someday accunmlate 
enough dust inside your system to 
need cleaning, five seconds with a 
compressed-air camera cleaning 
spray will do the job. 



84 / RUN SPECIAL ISSUE I9S7 



H 



R D W 



R 



Q: I have had a C-64 with two disk drives 
for about a year nott). About a month ago, 
my U9 drive started doing something ab- 
normal , When it is on, reading or writing 
a disk, both lights Muldmly go off, although 
the disk continues rotating. A few seconds 
later, a Device Not Present error message 
appears on the screen. Is there any way I 
can fix it? 

Leon Esquenazi 
Mexico DF, Mexico 

A: Rc':idc;r Steven Walley had tlie same 
tiling happen to liiin. lie reports that 
tlie bridge rectifier supplying 5V had 
gone intermittent, not allowing the 
rectified current to pass through. He 
jnst replaced the bridge rectifier with a 
50-PIV, 2r)ainp one fiom Radio Shack 
(part number 276- 1 185). 

When my own 1541 failed widi the 
same symptom, I had equal success by 
replacing the rectifier with Radio 
Shack's pan number 27fi01146, a 4- 
amp, 50-PIV unit. 

The needed rectifier is one of two lo- 
cated on the hack row of components, 
near the right rear of'tJie 1541*8 main 
circuit board, and looks like half of a 
domino. The 5-V rectifier is to tlie left 
of the 12-volt rectifier when viewed 
from tlie front f)f the drive. Some sol- 
dering is required to replace it. 



1^; As a cardiologist, I am asking for a 
heart consultation in your medical clinic. 
The patient is my 1541 (two months old}, 
which, sutUlenly, during reading a file, kept 
running and turned the red light on per- 
manently. It now does only that, until I 
turn it off with the hack switch. It seems 
like a cardiac arrest and ventricular tachy- 
cardia (forgive the analogy). Can you help"? 

Lelis Borges do Couto 
Rio de Janeiro, Brazil 

A: 1 presume frotn ilie analogy thai 
the I'ailure was ctnnplele — that is, 
nothing loads anymore, neither the 
file you were using nor any other files, 
programs or directories. If this is not 
the case, there may be something 
wrong with your file-reading pro- 
gram, such as a failure to check the 
flie-status variable ST for the end of 
file {ST = 64). 

If eveiything is dead, I'd first tn' to 
return the drive for a replacement. In 
the U.S. at least, you still have a mondi 
of warranty left and can let your dealer 



taJie care of it. If that is not possible, 
find and try out another 1541. If it 
works, tile trouble is in your 1541; if 
not, the trouble may be iti the (i-l. 

Next, if you find a cof»pera(ivc 1,541 
owner, you could try .swap[)ing the 
removable chips on the two 1541 cir- 
cuit boards, ho|)ing some swap will 
make a difi'erence. If one does, you've 
found the had chi[>. Also use a volt 
meter to be sine the 1541 has power. 
If not, the 5-volt bridge rectifier may 
he bad, as mentioiie<i in the February 
i;)85 Clinic. 

If swapping the rcmfwable chips 
makes no difference, you could try 
swapping tiie entire circuit hoard. If 
thi.'i doesn't hel[j either, the trouble 
could be in the drive itself. By now, 
you'll be ready either to buy and in- 
stall the needed part or to defer to 
the specialist's skills t>f your dealer. 

Q: I recently purchased a 1.541 disk. After 
a month, I got an errror me.s.sage — "fde not 
found." This ocairred with fiw;y disk I 
tried, and I know all the disks were good, 
(hmmodore .sent me a replacement drive, 
but after a week the .saine thing happened, 
so I also sent that drive back for repair or 
replacement. 

What 1 would like to know is — am 1 
doing. something wrong, or is this a common 
problem tvilh the 1 54 It 

James Kerins 
Seaford, NY 

A: I can't say anything definite, as 
you haven't (juite given nie enough 
information. Ihe error tncssage you 
received is an ojjerating system mes- 
sage from the 64, not the 1541 {al- 
though there is an equivalent disk 
error message). It means what it 
says — the computer tried to find and 
load the file you requested, but either 
didn't find it at all or did not succeed 
in loading it. 

After yon see this message from the 
compinei; the error light on the front 
of the 1541 should be Hashing. To 
find out what the real problem was, 
you need to read the error channel of 
the disk. Here is a brief program 
which does that. 

10 OI'KN 1 5,8, 15:REM OMIT tFAIJlEAnY 

OPEN 
20 INPUI#15, A.B$,CD 
30 ? BS 
■10 t:UXSE I5:REM OMIT IF ANY FILE 

.STIIJ. NEEllS TO BE OI'EN 



It must be entered iiuo memory, 
not used in Immediate mode. The 
variable names can differ, but the sec- 
ond one must be a string, as shown in 
line 20. When the program is run, the 
true rea.son (or die disk failure will 
appear on your .screen. It could be 
anything — from not having a disk in 
the drive, to misspelling the name of 
the program desired, to tnie of dozens 
of actual faults in the disk or drive. 

Before you send antither drive 
back, get some hel]3 froiii the dealer 
or friend who knows how to use the 
1541, and test your drive and disks by 
substituting them with the drive and 
disks already known to wf>rk. If, for 
instance, tho.se disks thai you know 
worked before now fail on a th ive that 
works for its owner, then something 
has hurt your disks, and getting a new 
drive probably won't help. 



Q; My question involves the comfmtihility 
of the 1541 and 1571 drives whm tcsed 
together. 1 thought I'd be able to keep both 
drives as device ffH and .simply .sf^ecijy drive 
or I when using them. If I attemfrt it, 
however, smnelimes both drives activate, 
and sometimes the lights on each machine 
come on, and the comfmter locks up, but 
tlie drives don 'I activate. Can you give itw 
any advice? 

James Baker 

Ftaxcombe, Sask. 

Canada 

A; It's quite easy to use a 1541 and 
1571 together, but yoti have to do it 
with one as device 8 and the other as 
device 9. Cfmimodorc makes this easy 
by including a pair of small switches 
on the back of the 1571 to set its de- 
vice nuinber However, if you wish to 
permanently change the tlevice num- 
ber on the 1,54 1, Larry (^<itlon's article 
on page 82 of the April 15)80 RUN 
gives complete details, 

If you really do need a dual disk 
drive, with drives and 1 , MSD's Sn-2 
and Cjommodore's CBM 4040 are both 
format-compatible with current 1 541 s. 
Neither is being produced any longer, 
but both are still available, used. 



Q; I have upgraded to a C-128 and 1571. 
I converted my existing 1541 to device 9, 
as detailed in theAfnil 1986 KU'^i. I con- 
nected the two drives in .series, and I know 



RUN SI-ECIAI. ISSUE 19B7 / 85 



N 



each drivp hivi to be addressed separately 
by its number, but that is all I hww. Where 
is information on tuitig the two drives 
available? 

G. Lee Curtice 
Rockport, TX 

A: It sounds like you've hooked up 

the two tirives properly. Having done 
that, all you need to do to use the ) 541 
as device 9 iiislead of the 1571 as de- 
vice 8 is to substitun; a 9 in [)liice of 
ilie 8 in your disk aiitunands. For ex- 
ample, Instead of typing 

D01'EN#l."lJOO",W.UH 

to create a new file named "BOO" 
on the 1571, just chaof^e tlic 8 lo a 9, 
and the file will be created on the 

15'H instead: 

DOPEN#l.'BOCr,\V,U9 

The only source of confusion is that 
disk commands default to Unit (de- 
vice) 8, As a result, they are often writ- 
ten without mentioning either Unit 8 
or Unit 9. In such cases, to use Unit 
9, just spell out the command and its 
Unit number. 

In C-64 niode, using device 9 is 
equally simple. Once again, replace 
the S's in your commands with 9's: 

ocfiN i,H,;i,"ruw)(),s,w" 

becomes 

OPKN l,<U."0:lU)t),S.W' 

To use the second drive in CP/M on 
the C-I28, just have your commands 
use drive B: instead of A:. Typing "B:" 
alone as a command will make the 
15tl your default C:iVM drive until 
you switch back to the 1571 with "A:". 



Q: I plan to btty a disk drive for my C-64, 
bit! I'm amfiLsed as to which is best. I've 
remi that the l^-U hu.H manyjlaws (head- 
banging, overheating, kicking out disks, 
chatter, and more), and I see ads for other 
drives claiming lo be better. Should my firs I 
drive be a 1541 or rtot? 

S. W.HaU 
Gray Court, SC 

A: First, everything you have heard 
about tlie 1541 is true. It's still one of 
the least ex])ensive intelligent disk 
drives available, and it has obvious 
deficiencies compared to most of 
its competitors. On the other hand, 
since its Kernai ROM is copyrighted. 



potential competitors can't license 
the RO.\I for their drives the way, for 
example, makers of clones of the IBM 
PC can license 10(t-pcrccnt-compat- 
ible BIO.S ROMs. 

¥ur normal commands this doesn't 
matter; all 1541 clones I've .seen emu- 
late the full Commodore command 
set properly. The problem arises 
when you try to run conunercial .soft- 
ware. Far too much commercial C;-()4 
software is still copy-protected, usu- 
ally in ways that tie the programs 
specifically to the 1541. I often re- 
ceive mail from people wondering 
why this or that program won't run 
on a particular 1541 clone, or even 
the 1571, and the answer is nearly 
always the same — copy protection. 
As long as Commodore owners tol- 
erate protected programs, they'll 
continue to be tied to the 1541, de- 
spite the ready availability t)f better 
drives. 



Q: As tlitre a SYS or Poke or something 
that will make the 1541 resell 

Theodore AusHn 
Washington, DC 

A: Assuming the 1541 Is sufficiently 
in ci>ntrol of itself to respt>nd to com- 
mands, you can reset it by sending 
the command "UJ" to its command 
channel: 

OPEN 15,8,15 
PRINTS 15."UJ" 
CUJSE 15 

If this doesn't work, remove any 
disk in the disk drive and turn the 
1541 off and on again, 

A true hardware reset switch can 
also be added tothe 1541. On a short 
board (tan) 1541, connect the front 
end of R15 to the back end of R16 
through a simple pushbutton. Natu- 
rally, you do this at your own risk, and 
it will void your warranty. 



Q: I am having problems xvith my 1541 
disk drive, and need whatever repair tnan- 
luda are available. I have been lold Com- 
modore has such tnanuals, (ml 1 cannot 
find the address. 

Carroll James Moore, Jr. 
Webster, TX 

A: The Commodore Single Disk Drive 
Technical Manual Model 1540/1541 is 



P/N 990445 and should be available 
directly from Commodore's Customer 
Support group, located at 1209 Wil- 
son Drive, West Chester. PA 19:i89, A 
good alternative is The 1541 Repair 
and Maintenance Handbook, new i'loin 
Abacus Software, FO Box 72 1 1 , ('.rand 
Rapids, MI 49510, Howard W. Sams k 
Co., Inc. (4300 W. (32nd St., Indian- 
apohs, IN 46268) also sells a 1541 
repair manual as part of their photo- 
facts scries. 



Q: Is the readhmrite head on the SX-64's 
disk drive on the top or bottom 1 1 read an ar- 
ticle that claimed the head is on the bottom. I 
need to krunv this to tnalie sure I put a clean- 
ing dbk in properly. (All the articles I read 
recommnul cleaniiig the head on a regular 
l>asis.) 

Seymour Gerr 
South Windsor, CT 

A: The head is on die bottom. Ac- 
tually, it does make sense; dust and 
odiercontaminents are more likely to 
settle on die top surface {even so, a few 
other disk drives put the head cm top). 
As for cleaning the head on a reg- 
ular basis, I recommend cleaning it 
no more than once a year. The oft- 
suggested weekly cleaning with a 
chemical cleaner causes more [jrob- 
lenis than it cures. 



Q: 1 have an MSD dual drive. Is there an 
MSD user's group, and are there any list- 
ings of software designed lo use the full 
capabilities of the SD-2? 

Peter Clemenko 

Ahlhom AFB 

West Germany 

A: Fellow reader Paul Eckler has or- 
ganized an MSD Information Ex- 
change, with its first project being a 
database of compatible software. The 
group will als(j maintain files an 
parts, service, manuals, memory maps 
and such. 

For a self addressed stamped enve- 
lope, the exchange offers HUN read- 
ers a printout of information in a 
selected category. For a blank disk 
with mailer and return postage, it of- 
fers a copy of the exchange data disk 
in Superbase data format. 

The address of the group is MSD 
Information Exchange, 2705 Hulman 
St., Terre Haute, IN 47803. 



86 / RUN SftUAL ISSUE 1987 



H 



R D W A R 



Q: When usirig a C-64 with a 1541 disk 
drive, can I load and run a PET Bcuic 
program that's on a 2031 disk, and vice 
versa? 

Don Nyre 
Newport Beach, CA 

A: Going from the PET to a VTC, C-64. 
Plus/4, B-128 or C-128 should be no 
problem, ;is long as the program itself 
doesn't need any changes, which it 
won't unless it inckicles one or more of 
tlie "fatal live" commands (Peek, Poke, 
Wait, SYS and USR). Going the other 
way will require a bit more effort. 

When you load a PET program into 
any of the newer machines, they re- 
locate it as necessary to put it into 
their own Basic workspace, which var- 
ies from machine to machine. This is 
automatic, so you needn't worrj' about 
it. Simply save the program on a 2031 
disk, put tlie same disk into your C-64 
and load normally. 

Going the other way depends on 
the model. Essentially, you iiuist ei- 
ther convince your newer model that 
Basic programs begin where ihey do 
on the PET, or else convince the PET 
that its programs begin where they do 
on the C-64, or whichever machine. 
In both cases, it's a matter of Poking 
a new value Into the start-of-Basic 
pointer in ])age zero of memory, a $00 
byte into tlie memory location prior 
to the new Basic work space and then 
doing a Basic NEW. 

Specifically, if you were to give the 
commands: 

POKE 1024,0 
POKE 41,8 
NEW 

on the PET, you'd then be able to 

load, list and run compatible pro- 
grams that were written on ihe C-64, 
as long as they fit within the PET's 
smaller memory. 



12. Video Output 
Devices 

Q: Upon hooking up my 64 (serial 
#43447) to my Zenith 19-inch color 'A^ / 
noticed the display was not as sharp as the 
one in the store. Despite repeated attempts 
to tune tlie TV, the v/avijKSs of the inuiges 
contimted. 



1 have, read that early 64s suffer from 
serioiLs video problems. Could my machine 
he .differing from video defects? The letters 
on the screen are legible in blue on blue, 
Imt unreatiahle in many other colors — they 
seem smudged. Also, the screen .ihows diag- 
mud waves that travel vertically up or 
down, distorting the imcige. 

A letter to Commodore bnnight a sugges- 
tion that the cause was an asynchronous 
scan being put ottl by (he T\"s automatic 
frrw tuner, but turning off the automatic 
fine tuner did not help. 1 would appreciate 
any help you could give me on this matter. 

Bin Reed 
Palmdale, CA 

A: Your 64 is old enough that it 

might have some video problems, in- 
cluding the smudging together of a 
few combinations of colors. In part, 
this is not Commodore's fault; it is 
due to the method used to inake U.S. 
TV signals and will continue even on 
the newest 64s and most non-Com- 
modore video monitors. 

A newer VIC II chip might give bet- 
ter results, but the bulk of your prob- 
lem is due to your TV, not the 64. 
According to information Commo- 
dore sent its dealers in December 
1982, the problem is unstable vertical 
synchronization, and there is a simple 
fix — defeat the integrated vertical 
mode circuit on ilie TV. 

On the Triple Plus chassis, it is lo- 
cated on the 9-1.52 series module. On 
9-1 52-01, remove the 2K jumper to 
the right of R2129. On 9-152-02, un- 
plug the yellow wire from 2H. On the 
Z cha.ssis, it is on the 9-181 module 
and is defeated by turning jumper ,5M 
90 degrees. 

Although it sounds simple enough 
to remove a wire or jumper, nothing 
is simple about the interior of a mod- 
ern TV. Unle-ss ycm arc skilled at work- 
ing in areas of vei7 high voltage, leave 
the fix to your Zenith dealer. 



Q: I purchased a Sears TV/monitor 
(M57H4084C) to me with my C-64. fiLsed 
the 5-pin, 2 -plug monitor cable to connect 
the 64 to the monitor. This arrangement 
worked fine for games a tut made an excel- 
lent television. 

A problem turned up, however, when I 
used a terminal emulalm- with an 80-col- 
umn mode. It is extrenwly hard to decipher 
ctumicters in the 80-col.umn mode. Clarity 
was much better on a friend's Commodore 



monitor. The Sears monitor supports 80 
columns in RGB mode, so is there any way 
to convert to an RGB signal? 

Sean Flynn 
West Simsbury, CT 

A: The probletn is partly in the way 80 
columns are emulated in software by 
Commodore progi-atns. Instead of the 
usual eight hori/onial dots per char- 
acter, most such programs u.se three, 
allowing two characters to lit in the 
.space normally occupied by one. 

However, tlie fundamental resolu' 
lion is still 40 columns, so the Sears 
RGB mode wouldn't help. The reason 
the Commodore monitor gives a bet- 
ter result is because it is connected 
via the rear chrotninance and lumi- 
nance connectors, which o|)timi/e the 
performance of the VIC-Il color 
video chip. 

For the moment, I can only suggest 
that you turn down the color and con- 
trast slightly, or trade up to a C-128. 



Q: I am ming a monitor that has no .sound 
capabilities with my 64. What is the cheap- 
est, easiest way to obtain sound for my 
system? 

J.F. Stadalsky 
Campobello, SC 

A: Short of replacing your monitor, 
the simplest solution is to simply con- 
nect the audio plug from your 64's 
video cable to a high- level input jack 
on a stereo system's amplifier. 1 use 
the jack that normally gets its signal 
from the tuner. 

Another alternative, if you don't 
have a stereo nearby, is to connect the 
audio plug into a small battery amp. 
Radio Shack .sells a $12 model (#277- 
1008) that has been popular with PET 
owners for years and has the needed 
adapter (#274-:-i;U)) to feed il from 
your audio cable. Pick up a few cheap 
9-voh batteries, too, as you'll use one 
up every- time you forget to turn off 
the amp after use. 



Q: I am planning to buy a C-128. How- 
ever, color monitors and evm TVs bother 
my eyes. I want to know what kinds of 
monochrome monitors can hold the C-128's 
80-column screen. 

Antonio Gomex 
Mexicali, Mexico 



RUN SPECIAL \SSVl 1987 / 87 



I N I 



A: Only two kitKls of monoclironie 
monitors are CDiiniioiily staid in the 
U.S. these days. One is usable only by 
IBM PC and I'C-ajnipatiblc com- 
puters with special monochrome 
adapter cards. This is recognizable by 
lis video tonnecior. which has eight 
])iiis, in two rows of four. The other 
kind of monochrome monitor (some- 
lirne-s called a li&W monitor) has an 
R(-A phono coruiettor (a single pin 
snrrounded bv a shield) and works 
tine on the VIC, C-li-l and C-128, as 
well as on Apples, IBMs with color 
cards and most otticr computers. 

To use this type of monitor with 
the C-128 in 80-column mode, you 
must obtain a suitable cable. Both 
Commodore and other suppliers 
liave already annoiniced special ca^ 
bles for this pin[H)se; .some contain 
an extra connector and switch, so you 
can use the cable in both -10- and 
80-column modes without changing 
any plugs. 



Q: I would like to add a mmiochmme mon- 
itor to my 6-t, hut my primary misgiving is 
tlw compatibility of the 64's 40-column for- 
mat versus the SO-mtumn capacity of the 
monochrome CRTs. What kind of a display 
will I see? Will it be luilftlie screen? 

Stephen Ballo 
Plymouth, PA 

A: Rest easy — the monitor will give 
the same display as a 40-co!umn IV, 
except with less interference and with 
added sharpness. ICven though you 
could hook up an 80-column com- 
])utcr to most monochrome monitors, 
no rule says you have lo. The format of 
the display lines is determined by the 
computer, not the mt>nitor. 

Do ask about a built-in speaker if 
that matters to you. Some monitors 
have one and other d(jn't. The 64 uses 
that speaker for all its sound. 



Q: I use a green sncni for a primary com- 
puter monitor on my C-64, but sometimes I 
need to use a color monitor. I iimuld like to 
me Imlh at the .wme lime. Is it OK to nm turn 
monitors at tlw same time — the color ant- 
nectcd It) Die TV ctmnecttir and the green 
screen to lite aiulio/uideo ettttnector? 

David Franks 
McAlester, OK 

A: Sure, no problem. Lots of folks 



do it. Both will show the same picture, 
but one will be in color and the other 
in green on black. 



Q: I am looking far a color monitor. Will 
any color composite mtmitor work with the 
6-4? Wimt are items 1 .<>hoidd be aware <f 
when buying arwther Irrand? 

, Breit Ketterer 
Fairbom, OH 

A: Most, but not all, color composite 
monitors work just fine with the M. 
Those few that fail .seem to have trou- 
ble locking in a stable picture, making 
their incompatibility obvious the mo- 
ment you try using diem with a 64. 

Most composite monitors have 
only one video-iii connector, which 
generally gives satisfactory results. 
I lowever, for maximum quality, look 
for a monitor with two separated 
video inputs, one for chroma (color) 
and the other Cor luma (brightness). 
Since the (i4 also sends an audio sig- 
nal lo the mtmitor, be sure there's an 
audio-input connector. 

If you expect someday to upgrade 
to either a 128 or an Amiga and want 
CO continue using the same monitor, 
you may be wise to get a monitor that 
also has one or more inputs for RCB. 



Q: We purchased a Commodore 1 702 
video monitor, which came with an 8-pin 
DIN plug. Our 64 has a 5 -pin DIN jack. 
Wliat can we do? 

I. A. Smith 
Bostott, MA 

A: You can buy a suitable 5-pin DIN 
cable from many Commodore deal- 
ers. If none in your area has it, try a 
stereo store. 

The cable ycju need has a 3-pin DIN 
plug at one end and four RCA phono 
plugs at the other. It is normally used 
to plug European stereos into speak- 
ers and tape decks. Also, the u-pin 
cable is intended lo use the jacks on 
the front of the monitor, not those on 
the rear. If you want to use the rear 
jacks, you'll need to modify 64s with 
,^1-pin DIN Jacks. 

According to an article in Baron's Mi- 
crtKomputing lielmrts, if you disconneci 
resistor RIO, the chrominance signal 
required by the 1702's rear connector 
will be available on pin 4 of the 5-pin 
DIN jack, which formerly carried com- 



posite video. Since this will make the 
computer incompatible with ordinai-y 
'fVs, you can atld a switch to reconnect 
the resistor when using a TV. 



Q; When I first ran the color adjiLstment 
check in the Ctiminodore 64 User's 
Ciuide (holding C'TRi. arul a number), it 
worked excellently. But when I went hack 
to do it again, it tvotdd only display letters 
in color and wotddn't display color bars 
when I held down the space bar. Is this a 
defect? 

Ronnie Barcak 
Fort Stewart, GA 

A: I expect your 64 is working just 
fine. You merely need to press one 
nioie pair of keys when you do the 
color-bar test— the C'l'RL key plus die 
9 key. This turns on reverse field (la- 
beled RVS ON on die front of the 9 
key), which makes the space character 
show up as a bright bar on your 
.screen. The bar will he the same color 
as any characiers you type and will 
change in color when you change the 
character colors. 

To turn off the color bars, merely 
press the return key, alone or to- 
gether with a shift key. You can also 
turn it off wilhout moving the cursor 
by simultaneously pressing the CTRL 
key with (the RVS OFF key). 



Q; I want to use both my C-64 and a VCIi 
with my Tl^. To set this up, I purchased a 
Radio Shack ti 1501628 splitter to go from 
the computer to tlie VCR, then connected 
the 75-ohm imtput and the signal coming 
from the cable company tti the splitter. 

Tiie problem is that while the TV arui 
VCR work correctly, the picture is snowy 
or cross-hatched wheti I use my word pro- 
cessor. Am I doiitg .wmething wrong? Is tlie 
splitter malfunctimting? Or do I need a 
monitor Iwcatise Tm askifig too much from 
my equipment? 

Jeremy A. Michele 
Big Timber, MT 

A: Video interference is often a prob- 
lem when you're using a TV as a dis- 
play, but it's jjfohably not the fault of 
the splitter. Before you give up and 
get a monitor, here's an alternative 
connection .scheme to try. 

First, connect the cable-TV wire di- 
rectly into the VCR, Second, connect 
a 300-ohm TV wire from the VCR lo 



88 / RUN SPECIAL ISSUE 19S7 



H 



R D W 



R 



the antenna terminals of the video 
switch you got with your C-64. Third, 
run the wire Commodore included 
with the switch from the computer to 
the switch. Fourth, feed tht; ouijiui 
connectors frotn the switch hiio the 
antenna terminals on your TV, 



Q: I have a VCR, and lite article called 
"Making the Video Connection" in the Jan- 
vary 1986 issue of KUK really interestfd 
me. However, iii trying to set up my system 
to add screen displays to a videotape, I've 
run into one problem. The article included 
instructions for using a 1 702 monitor, but 
not a 1902, such as I have. I've figured out 
how to hook the monitor up, but the picture 
appears otdy in black and white. How can 
I get color? Also, is this setup also supposed 
to record sound? 

Matt Linden 
LaGrange, OH 

A: Using a Y connector from Radio 
Shack to tie together the chromi- 
nance and luminance signals from 
the computer should give you color. 
Connect the cable that came with 
your 1902 from the videooui port on 
your computer to the VCR via a Y 
connector fitted with two female RCA 
phono jacks and one male RCA 
phono plug. The chrominance and 
luminance plugs from the computer 
go into the two jacks, and the plug 
from the Y connector goes into the 
VCR's video-in connector. 

Then i-un an ordinary hi-fi cable 
with male RC.-^ phono plugs at each 
end from the VCR's video-out jack to 
the female jack of another V connec- 
tor, one whose other two ends are 
male plugs. These go into die chrom- 
inance and luminance connectors on 
the back of the 1902. The result won't 
be perfect, especially compared to the 
clarity of running chrominance and 
luminance signals directly from the 
computer to the monitor, but it will 
be far superior to the luminance-only 
signal you have now. 

As for audio, just run a second hi- 
fi cable from the VCR's audiooutjack 
to the audio jack on the 1902. 



Q: I have a C64 and use my TV for a 

display. I wotdd like to buy a monitor, but 
am also considering upgrading to a C-128. 
Could I use a 1902orl902A monitor with 
my C-64 now and with a C-128 later, and, 



if so, would I need any special cables? 

Greg Diehl 
Lawrence, KS 

A: Yes. (he 1902 and 1 902 A should 
work just fine with youi' C(J4, as long 
as it's new enough to have eight holes 
in its monitor jack (early C()4s had 
only five holes). The monitor will 
need one cable to work with the 04, 
then an additional one forSO-column 
color when you get your 128. Both 
cables come with the monitor. 



13. Printers 

(^' Wh ich prin ters do C- 6 4 graph ics ? How 
is it dime? 

Kenneth Benson 
Columbia, SC 

A: The only printers that do Com- 
modore character graphics properly 
without any fuss whatsoever are Com- 
modore's own dot-matrix printers. 
Next best is a nonComitiodore printer 
or printer-plus-interface combination 
designed specifically lo do Commo- 
dore graphics. Examples arc the Star 
IOC, or an Epson-compatible printer 
with a Centronics parallel port con- 
nected to an intelligent interface like 
the Micro-World Electronic MW-350, 
which is in tin-n plugged into the serial 
bus on the C-fH, 



Q: I do a weekly bulletin for a service club, 
[have a DPSIWI printer. Is there any- 
thing like Hroderbund's Print Shop that I 
can ii^e with my equipment? 

Thomas Reese 
Kihei, HI 

A: If you are wanting a program to 
print high-resolution drawings on 
your daisy- wheel printer, the practical 
answer is no. Although such pro- 
gi-ams have been written, and one 
company has actually sold interfaces 
designed to autoinate the needed 
translations, the net result is unwork- 
able. The problem is that the only way 
to generate high-rcsohuion graphics 
with a daisy- wheel is with the period 
character. In practice, this has two 
consequences: a drawing takes an im- 
possibly long time to complete, and 
the period on the print wheel wears 
out almost immediately. 
With dot-matrix printers now avail- 



able for well under |200, it would be 
much more practical for you to buy a 
second priiuer for use with Print 
Shop atid other graphic programs. 



Q; What ore the advantages and disml- 
vantagcs of a thermal printer, aside from 
the .special paper needed? 

Gary Payne 
Fresno, CA 

A: Some advantages are extremely 
(juiet operation, low purchase cost 
and compact siw. Some disadvan- 
tages are the very high Utng-term cost, 
difficulty in finding the special paper, 
and deterioration of the printouts 
within a year or two. One solution is 
lliential-iransfer printers. The.se are 
also able to use plain paper and a 
thermal ribbon. 



Q: I have a C-64, a 1 541 disk drive and 
a Ritenuin printtr. I recently purrha.sed an 
Okimate W color printer. I want to connect 
both printers to the computer, but can find 
no additional outlet to plug in the color 
printer. It i.% a simple matter to change the 
device number of the color printer to 5. Can 
you help me? 

James B. Rovinson 
Aiken, SC 

A: One available product that does 
this is the Y-NOT?, from Master Soft- 
ware, (i Hillery Court, Randallstown, 
MU 21 133 (301.922-29fi2}, It is a spc- 
cial three-ended cable designed for 
just this [impose. One end contains a 
male sixpin plug lo connect to your 
C-64 or the back of your disk drive, 
while the other end has two female 
six-pin jacks that you connect to a 
cable from each of your two printers. 



Q; I have a Cardprint A printer interface 
connected to an Olivetti Praxis ty peter iter, 
with a typcivriter interface from Williams 
Uibs, My problem is that some programs 
require several blank linefeeds, aiul I can- 
not get the.%e on my printer. What's the 
secret? 

Larry Thomas 
Hooks, TX 

A: The solution is not to send line- 
feeds or carriage returns by them- 
selves. Instead, send a single s])ace 
followed by a carriage return (and 



RUN SP£Cl.y. iS-SUE 1987 / 89 



I N 



linefeed, if needed). Thus, instead of 
typing 

PtiINT#4 

try 

i'RiNr#-i." " 

and everything should be fine. 

Q: / bought a Panmonk typemriter called 
Thennnhwriter 12, ami the imtructions 
call for a VIC 101} A interface card or 
eijuiviiient. Commodore doesn't make it 
anymore. What do I do nmu? 

Michael Caiavito 
Staten Island, NY 

A: A VIC 101 lA interface i.s a stan- 
dard RS-232 interface, such as die 
Deluxe RS-232 adverli.sed by Onini- 
iroiiix in RUN. 



Q: Cmh used ribbons be reinked if they are 
otlierwise in good sliape? 

James David 
Bloomington, MN 

A; Yes, they can, if you use the 
proper ink. Dot-matrix printers use a 
special ink, formulated so it won't 
clog the tiny passages of the print- 
head, yet still give needed lubrication. 
Computer Friends (Suite 10, ()4 1 5 SW 
Canyon Court, Portland, OR 97225; 
503-297-2321) is one supplier of the 
special inks and reinking machines 
needed. They have models for most 
printers. 



Q: Why won 'l my Coinmodore 802 act like 
a Commodore printer? It won't print from 
Doodle.', The Print Shop or GEOS, to name 
a few programs, b there anything I can do 
to get more we out of the S02, or should I 
just junk it? 

Chuck Kinsey 
Bellevue, WA 

A: The 802 is another example of an 
othei^ise good product that's been 
defeated by a prior standard. Al- 
though the 802 has several advantages 
over the 801, C:omnKKiore chose not 
to make it fully software-compatible 
with the 801, especially in the way it 
handles graphics. Further, even 
though the protocol for doing graph- 
ics on the 802 has been known for a 
number of years, .several graphics 
software vendors stil! ignore it. Prob- 



ably all you can do is remind vendors 
of the sales to 802 owners that they're 
losing. 



Q: Recently the carriage returns tm my 
1525 printer became slower and slower. 
Now the head doesn't reach the; next line 
without a nudge. Can you tell me what's 
wrongl 

James Ryan 
Winlhrop, MA 

A: Unlike most printers. Commo- 
dore's 1515, 1525 and MPS 801 use a 
spring to return die head to the left 
end of die prim line after finishing a 
hne. One of two diings has probably 
happened to your printer. Either the 
S])ring has become fatigued after use 
(it's less springy) or it is binding due 
to foreign matter in the mechanism 
or lack of lubrication (it's more 
sticky). 



Q: I own an 801 printer, and the letters 
that go under the line (like p or g) are 
written above the line. Do you have any 
suggestions'? 

Jess Rosenbiad 
Princeton, NJ 

A: The feature you want is called 
"descenders;" that is, the lower por- 
tions of extended characters descend 
below the typing line. The 1525 and 
801 printers don't have it, but most 
others, including Commodore's 152fi, 
do. Thankfully, Paul Blair has devel- 
oped a replacement character ROM 
chip for the 801 that gives it true de- 
scenders. The ROM is available from 
Wilanta Arts, 6943 Barrisdale Drive, 
Mississauga, Ontario L5N 2H5, Can- 
ada (416-858-9298). 

Q: I'm using a Turhoprint/CT interface 
and Legend 880printe}' with jny 64/1541/ 
1 702 system. After one month of no prob- 
lems, the following has started: When load- 
ing, the monitor shows "loading," and the 
disk drive sometimes starts, but never stops, 
and the cursor does not return to the screen. 
If I do not have to i«p the printer, pulling 
the ."serial interfiice plug or the 5V plug to 
the interface allouJS everything to operate 
properly, fs my problem with the 64, drive, 
interface or printer? 

Jack Anderson 
Tacoma, WA 



A: If you're lucky, the only problem 
is that your printer is "off-line." You 
can determine this by looking at the 
lights next to the buttons on the top 
of your printer. If the online light is 
()1'1', your printer won't print, and the 
interface will tie up the serial bus and 
keep the disk drive from loading or 
saving files. The next time you have 
this problem, push the on-line button 
on the printer antl see if that ciu'cs it. 
If not, check die c<jinieciions between 
the printer and its interface to be sure 
they are properly connected. If they 
are, one or the other neetls repair. 

If the printer stil! passes its power- 
on self-test, the problem may be in 
the interface. To be sure, borrow an- 
other interface and see if that cures 
the problem. In any case, the prctblem 
isn't in die 64 or 1541. 

14. Networking/ 
Controller Devices 

Q: (Jin I Iwok up my 64 to a video recorder? 
I was cmuidering video birtlulay cards. 

Joe Sleeting 
N. Aurora, IL 

A: Yes, the 64 works fine connected 
to a VCR — that is one way of improv- 
ing its video quality on some TVs. The 
64 can be plugged into either the 
VH1''-1N jack, using an RCA phonoto- 
RCA phono cable and RCA jjhono-to- 
F Connector adapter (Radio Shfick 
sells both), or can be plugged into die 
video- and audio-in phono plugs from 
a standard monitor cable lor the 64. 
(If your C-64 has individual chromi- 
nance and luminance pins, you'll 
have to use a "Y" connector to con- 
nect them both to the video- in on the 
VCR.) Without this connector, the 
picture appears in black and white or 
not at all, depending on which video 
plug is connected. 



Q: How can I interface my €64 with a 
servo, an electrorneclmnicai device which re- 
sponds to digital signals and is used to con- 
trol model airplanes, boats and the like. I 
want to develop a teaching unit on robotics. 

Ray Orabona 
East Northport, NY 

A: The user port is the best way to 
interface any Commodore computer 
to electromechanical devices, both 
for receiving data from remote sen- 



90 / RUN St'ECLAl. ISSfK t9S7 



H 



R D W 



R 



sors and for sending output signals to 
such devicL'S as model airplanes. One 
company that oilers a robotics ex- 
perimenter's h()ard to connect such 
projects lo ilie user porl is Kobetek 
Systems, of 1 1 13 Commercial St., New 
Miiias, NS, Canada B4N 3E6, 

Q: I live hi a niral area that does not have 
touch-tone telephone aeruice. Is there any 
timy to get on line thai w pulse dial and 
then emulate the tones to access computer 
service? 

Rosalinda DeWitt 
Seneca Falls, NY 

A: I live in an area without tone di- 
aling, too, btit you're luckier than we 
arc. Even pulse diaiiog fails some- 
times here. If you need both pulse 
and tone dialing, some phones now 
have both methods built in. 

This allows you to use pulse to dial 
out of town and then use tones to 
access All Net or other sen'ices that 
require it. One such phone is the 
Thinfone, from TeleConcepts, Inc. 
(22 Culbro Drive, West Hartford, CI" 
06110). 

However, you won't need pulse 
plus tone dialing Just to go on-line. 
The tones used by a telephone mo- 
dem are differeiu from those used to 
dial a touch-tone phone. As long as 
your phone system allows you to con- 
verse easily with persons in other 
towns, it is good enough to support 
the use of a modem. 

If you have doubu about the (}ual- 
ity of your service, use a SOObaud mo- 
dem rather than the faster but more 
sensitive 1200-baud type. If having 
both tone and pulse dialing is impor- 
tant to you, some modems now in- 
clude both in built-in autodialcrs. 

Q: Is it okay to leave a 1660 modem 
plugged iu all the time? Will it affect the 
life of either the computer or the modem? 

Tom Clausen 
Lafayette, CA 

As If you never move your system 
even an inch or two, and don't have 

any other cartridges or interfaces con- 
nected to the system and using its 
power, you can leave the modem 
plugged in. In fact, under those cir- 
cumstances it would be best to do so, 
to avoid wearing out the thin gold 
contacts on the port. On the other 



hand, if there's even the slightest 
chance your keyboard unit will shift 
position, you should keep the modem 
unplugge<i until needed. I learned 
this, much to my sorrow, by shorting 
out the port after cleaning around my 
computer. 

Fortunately, there is a solution that 
doesn't require continual unplug- 
ging. Master Software {() Hillery 
Court, Randallstown, Ml) 21 133) sells 
a 4fool user-port extension cable for 
$30 [)ostpaid. The flexibilily of the 
cable protects against shorts when die 
system is being moved. 

Q: I'm having a problem with a recently 
purchased VIC-Modem 1600. 1 am unable 
to log onto CompuServe. The indicator 
light on the modem does not go on, and I 
am not getting the prompt from Compu- 
Serve. The modular phone I have has the 
dial built into the handset. Is tliere a prob- 
lem with the modem? 

Sieve Herr 
Chicago, IL 

A: The problem is probably in your 
phone having its dial in the handset. 
Try using the modem with a standard 
Series 500 Western Electric desk 
phone, one with its smarts in the base 
and a detachable handsel. 

Get someone to assist you who has 
already called CompuServe and knows 
how to log on when the equipment 
works as it should. If you don't have 
that kind of phone available, it may 
be less expensive for you lo trade in 
the 1600 on a direct-tonnect 1650, 
1660 or 1670 modem than to buy an- 
other phone. 

Q: By just adding the correct cable, can 
data be trarumitled and received via the 
RS-232 ports of two computers appropri- 
ately equipped? 

Julian M. Dean 
Bay Minetie, AL 

A: Yes, computers equipped with RS- 
232 ports can generally use these 
ports to chat back and forth with 
other computers so equipped. How- 
ever, since such ports are normally 
connected to a modem oi' printer 
rather than another computer, you'll 
need to do a bit of rewiring. Simply 
swapping pins 2 and 3 at one end of 
your cable may do the trick. 
However, an easier and better way 



to do this is by plugging a null modem 
adapter into the table between the 
two computers. It switches all the pins 
that could cause trouble, and you can 
quickly remove it when you want to 
use your RS-232 port with a modem 
or printer again. Radio Shack is one 
supplier of both RS-232 cables and 
null modem adapters. 



Q: Please tell me if it is a gooil idea to get 
a modem and what I can do with one. 

Sean Bergman 
Veradale, WA 

A: The key factor in deciding 
whedier or not lo get a modem is 
whether or not you can afford its ben- 
efits, CompuServe, for example, is a 
veritable cornucopia of information, 
but, where I live, using it costs me $20 
an hour, so I tend to check in quickly 
once a week when the long-distance 
rates are lowest. 

A friend in a larger town 30 miles 
away calls CompuSei-ve at the same 
nuiidjer I do, but for him it's a local 
call. Many towns, including his, also 
have active telephone bulletin board 
systems that people can call for free 
in their local dialing area. 

As for what you can do with a mo- 
dem, I'll cite one recent example. The 
day Commodore's new C-I28 com- 
puter was announced, eoinplete de- 
tails about it were available to anyone 
interested, via CompuScr\-e, within a 
half hour after the news conference 
that announced it. Although most 
weeks the news isn't as exciting as 
that, regular users of information net- 
works and bulletin board systems 
tend to hear about news in the indus- 
try before most others. 

One other important advantage of- 
fered by a modem is that il allows you 
to exchange files with u-scrs of other 
brands of computers, something you 
normally can't do via cassette or disk, 

For information on modems, see 
RUN'r telecommunications series, 
which began in the May 1985 issue. 



Q: How would one transfer text created on 
a Radio Shack Model 100 to a 64? Specifi- 
cally, what connectiorui, modems and word 
processing programs should be utilized? 
Thank you. 

Gilbert Gall 
Nashville, TN 



RUN SPECIAI. [S!>UE 1987/91 



N 



A: First, you'll need an RS-232 inter- 
face. You'll also need to swap RS-232 
lines 2 and 'A inside the interface or 
add a nidi modem adapter to do the 
same thing. Then connect the Tandy 
lOO's serial port to the 101 lA via an 
RS-232 cable wiih DB-25S (male) ccm- 
necfors at both ends. Radio .Shack and 
other electronic stores will have suit- 
able cables and adapters. 

Next, you'll need a suitable termi- 
nal progiam for the 64. I use Tcl.star 
()4, from Kastern llouse Software, and 
Vidtex, from CompuSeiTe, for ibis 
chore. To establish comriumi cation 
between the Tandy and the 04, start 
Telstar and use its @ command to set 
it to 300 baud, 8 bits, no parity and 1 
stop bit. 

Also select H, for Half-Duplex 
mode. Then .set (he Tandy's 'I'elcom 
program to STA'f 38N1E, go to Ter- 
minal mode and select Half Duplex. 
At this point, anything appearing on 
either screen will also appear on the 
other one. 

To transfer files, first open a file on 
Teistar, using the W command, spec- 
ifying PET A.SC11 as the fileiype. Then 
exit to Terminal mode. Now press the 
return key twice on the Tandy and 
select UPLOAD, pressing the return 
key again when it asks for the width. 
Your file will then begin a])pearing 
on the 64's screen and will be buf- 
fered into memory at the same time. 

When the Tandy stops setiding, be 
sure to use Telsiar's C (close) com- 
mand, followed by W for write. This 
will dum[) (he memory buffer into the 
disk file and close it properly. 

Finally, to use the new file on the 
()4, I use the I'apei' Clip word jjroces- 
sor, from Batteries Included. Its Con- 
trol-J File Load command handles 
everything. 

The entire process is very reliable, 
takes much less lime to do than to 
describe and can be reversed to send 
files from the ti 4 to die Tandy. 

Q: I have a C-I2S at home and rise an 
IBM-PC at work. My problem h I would 
like to take work home, but can't find an 
interface to run IBM software on my 
C-12S. Can you helpr 

Vincettt Hughes 
Wappingers Falls, NY 

A: The only way T know to direcdy nm 
die same software on both machines, is 
via the CP/M operating system. Micro- 



solutiotis, of DeKalb, Illinois, sells 
UniDOS, an emulation prograin that 
lets (he PC nm many C.P/M programs 
that also work on the C l28-8(), *fhey 
also sell Uniform, a well-known and 
excellent [irogram that lets the PC for- 
mat use CP/M disks in foiinats compat- 
ible with the C-128 (and about 50 other 
fonnat.s as well). However, this is not 
like nmning the same programs nor- 
mally used on the PC under its usual 
operating system, MS-DOS. 

To make the C-128 MS-DOS com- 
patible, 1 suggest another approach. 
When you go home after work, leave 
your PC turned on with a modem 
connected and running a terminal 
progiam that allows remote opera- 
tion of ihe PC (such as Remote, from 
Infostuff, of Roswell, CJA). Then sim- 
ply dial iruo ihe PC via a [uodecn on 
your CM 28, using any HO-column ter- 
minal program. Once connected, it 
will be just as though your C-1 28 were 
suddenly transformed into an IBM- 
PC, a [Hi you can run most MS-DOS 
programs normally. 

15. Specific Computers 

Q: I recently purchased a C-64 and have 
found some limitations I tmndil tike to over- 
come: memory not big entnigh; 80-column 
dhpkiy nee(kd; faster loading needed from 
disk. Could you provide any information 
about products to help me? 

Dave Pearce 
Southitigton, OH 

A: Ye.s; choose one, and I can help. 
All three limitations have been over- 
come on die C-64, but not sitnulta- 
neously; you can typically only solve 
one of them at a time, and even then 
not under all conditions. This is be- 
cause all of the solutions involve us- 
ing the cartridge port, and some of 
the solutions are incompatible with 
expansion motherboards and certain 
programs. 

If you can live with the limitations, 
here are some solutions: 

1 . Added memory on the C-64 will 
have lo be bank-selected, but is avail- 
able. Though not in stores at this writ- 
ing, C^ommodore's memory exjjandcr 
for the t;-128 and C-64 seems likely to 
become the eventual standard, 

2. Batteries Included still offers 
a good 80-column video board for 
the C-64. 

3. Several plug-in cartridges speed 



up disk access, including Kast Load, 
from Epyx, and Mach .5, from Access 
Software. 

If you can't accept the one-at-a-time 
idea, 1 suggest looking at a CI 28 in- 
stead; it includes all your recjuesi.s. 
Since your purcliase was recent, ]>er- 
haps your dealer will accept the C-64 
in trade. 



Q: Recently, a colleague mention^ that 
the TRS-HO has a memtny location that 
can he Poked to imrcdse the speed of the 
CPU. Can you recommend anything to 
speed up computatimis in the C-6-(? 

Mark Janus 
Panama City Beach, FL 

A: I'heonly speed-up Poke I've heard 
of on the 64 is POKE 532fi.f),n. li 
turns off the VIC-II chip and elimi- 
nates its interruptions of the 6.'ilfl 
processor, giving about a 2.")% in- 
cre.xse in speed. I'he catch is that the 
Poke also turns off the screen. When 
you need die screen again, POKE 
!J326.'j,27 turns it back on. 



Q: Are there any maps published for the 
6rs ROMs? 

Drew Jenkins 
Tltsanawas, OH 

A: I know of two publicadons that 
should meet your need. Anatmny of the 
(hmmodore 6-t, from Abacus Softivare, 
is a disassembly. It shows the actual 
machine language instructions used in 
the ROMs, with brief added comments 
as appropriate. 

Another "unassembled" pseudo- 
source code for die 64 is available 
from Schnedler Systems (1501 N, 
Ivanhoe, Arlingtcju, VA). It costs more 
than the Abacus book, but offers 
some added features in return. 



Q: I have an SX-64 and want to know 
what difference there is, if any, between it 
and the C-64. 

J hbell 
Austin, TX 

A: Apart from the tibvious differ- 
ence — the SX-64 has a built-in color 
monitor and disk drive — the two ma- 
chines barely differ. There are slight 
differences in the SX-64's Kernal 
ROM that cause some incompati- 



92 / RUN SPECIAL ISSUE 1987 



bility with copy-protected software. 
However, you can overcome these dif- 
ferences by adding a switchable Ker- 
nal ROM that includes ii standard 
Rev. S C-64 Kernal. This will also 
change the SX's screen color from 
white to the standard blue, so as to 
avoid problems with programs that 
assume a biue background and use 
white text. 

Also, the keyboards have a slighdy 
different toucli, and die 1541 has a 
built-in reset switcli, but these differ- 
ences should not have any effect on 
programs. 

Thejason-Ranheim Co. has pointed 
out one other crucial difference be- 
tween the user ports on the SX-64 and 
the C-64: Commodore grounded one 
leg of the 9v AC supply in the SX-64, 
requiring a slight hardware modifi- 
cation to the SX-64 and the Prome- 
nade EPROM burner when they're 
used together. 

Q: Is there somelhhtg that will improve 
the video resolution for early C-64 mimersf 
(See answer below.) 

Tim Thompson 
Boston, MA 

W/ten rumiiTig a program, 1 notice a 
Jlichering white line or sparkle on jnariy 
characters. When rVi immediate mode, this 
so-called sparkle is much less noticeable. Is 
there a circuit modification to do away with 
the probleml 

Norbert Perry 
New Port Richey, FL 

A: The well-known sparkle problem 
only affects very early 64s, although 
some "new" units are recycled oldies. 
Most 64s are immune. Owners of 
early units may exchange their 64 for 
a "new" one through a full-service 
dealer for about $75, 

To be sure the exhange unii is really 
a current model, see if its display is as 
clear as the one on your dealer's dis- 
play model when plugged into the 
same TV or monitor. As an alternative, 
you may lessen Uie problem by adding 
two 330 picofarad capacitors to the 
computer. One goes from pin 30 to 
pin 20 on the 6567 VK: II chip, and the 
other goes from pin 14 to ground on 
tlie 6510 microprocessor. 

If you remove those chips, insert 
the leads in the sockets, and then rein- 
stall the chips, you will avoid perman- 
ently altering your computer. ■ 




j^^a.cW 



$59.95 







A powehul word proctsslng system for ttie Commodore 128 
Includes: • On scrpicn staius'rieip a;s;]fay » 45 Fcnts r<?at3y to use 
■* Pant editafcrflalor included • Foreign LiinG'jage Uy^^ 
From Iha author dI FONTMASTER U ctmet fOHTMASTER 72d. in flnhanciit veriian for Ihe 
Commodon 1?9. Thl» powerful wQ{d praciiier, with lis m3nv dltlerent print itylii jfontil, turns your dot 
ntalrli printer Into a moTe powerlul tool T^rm pipiri . ii«Hi1«tl*rt and rorQlgn lanouigit %t% |uil a l«w Ol lt> 
miny application!, H<ri ara samft Qt \\\ cipibilltl»: 

^OW WITH NO CDN PROTECTION - USES MAROWARE KEY 
Word ProcAsting Foaturdi 

)Hi.|r>ii».gD' t*>t b«Ckl 

f^H »y1f«Jl on ItrMA 



* ^ti f-f pQ*pilji tc''^''' •'<']* "■**» i*M r3''i' 

* *i t FQniiii.ri-<ii»»P.^»ipn Qi*** «ii*i*ii 

* Tm1 (r*fnoTr ipp^B^aniniip Hi t^n 
» Sl*pM* men*. rf»ri ItO pfiTw^i 



i ^^f:*-^ "ifM 



Word Processing Printing Fiituras 






* Ci3lui*n«i priKlinq {up «» * cemmifh 

■ CTilrtAVi"!] C i <H n<9<v crwiClBf-t lloH tnv«* 'hlrlinm. aUdlH:!. «IE \ 

* M i'lim L«y*rtoLi |*i| tr<Mli'ifr| ittnt+diiifl in l«il niiil 

■ CLcimbir4 Any ar Ail at tn* ra|i[?ii|iF^g «riK11l u^dtNinirtQ jMlutlttilfl 

mar* inin JQ p.1c^M rrv^rt Ihjn H ''n* iPffing iiJ'ii <andini«d 
Htl boU'iC'iE ' iiiiv'^^r i,*>iir* Itiitrt «n «i*{ki VoU'WUM 
l*3|^H#bl(r:' ■ 1 1*1 1 hiighl* :mc'D nc-mii \t'-\ 



w On ferrM<^»t|lj(diI0l«T II 

* *ttm iMit E>'"*C4 d'ttiiiri 

■ Dp icnEcn br uaqu*! Hitixg 

Selup Modul* 

•'tH.iv nVw HiyE4 etf lb*' tiff M AMh Mitt' t*^ wti 

Fan\ A Character Set Cre*1i)rt 

f Out, e^mmtnn Igr tniinlitninti nj' Pgnll rK iili 
iQna Rd' enifieiir eHi«l'«niHi|ingiin|tiiDu'*1td #i'h (uric 
>iC^»tiCh, or Inght p|P|i 

■ tflifinfl eOrtVTUfVdi iritlu4» iriTHl. tufi. *i*4*i» Ih't^, {Hur, Ci 

■ Ct^r'ct'r cj.n b« pi'iiiff whi'* ■dilin^^raM t'lAloi Dnlyi 



E^QUhQUS 


riiliirn 


Viiiiiigritffi 


.>;<:ni]cll 


Oroadvif 


Goodtyp* 


^■w« 


^com 


SutrftDvictv 


tIflLrplvi 


OI»e fnatlab 


Teen 


Bu5 0Sj<nii 


/Calic 


PlCFIIOl 


-'brf^wj' 


CfUk 


Uarhattan 


Print 


ABSaE«rH 


Dun null mil 


IQTilK 


Siitii 


**"T 'nin 


Frttiia^^ 


dciaii'>i 


BhntiHii 


■ Exil««rx 



.«*!C&^«# , Inc. • :a(M Arnold Road 

Circle 1Z9 on Reader Service card. 



• Sallna.KS 67401 • (913)e:7-(lfia: 



NEW ADVANCED 
3-D GRAPHICS 




For Commodorf 64/123 in 64 mode 
View Desigris in Multiple I'erspeclives 

> V^riukl \\fl I'dst 360 dr^trc rotdl ion I ^-/iMnf, 
A 3Q0D Linr E^isplAy 

A I'rtnirr CApdhtltty with l*tt*i.t fdmpjilhk'ft 
itSMPUrftn-JvaiiAHJitj- 

> l>i:ik t Ji^ddtng, and Saving ai Dmgnt 

> Sup^nrnpo^e Oe^ij^ns/ r^odify Partul Deiignt 
i ComniFTcia] Graptiic prtigrim, i:ompJt]|:>il[(y 

Wiih UpdjTtrf ^finuil 

Pruf ps^tiunil — EtlucAliondi — Homt A ppl ications 
Archiletli, Engineers, Deiignrn, PftnuMmnHrj, Stvdmt* 

Al a i|[r¥)at intTtxlLKEnrv prxc ^'#.9S. AdJ ^.00 kit vhtfifAne. anJ 
Kimilins, htt C.O.T). inii an kldltkinaJ M.OC. iCkhlomu TruJ^ri 

picaw induJf fi% lalr* laxl. 



Ir» FLirupc CcMtlJuL: 
11(1' TrchnnLc^ir! 
^1' Via Monic NJipcJccinf 
•ltH2i Milui. Italy 

ph. ^.7tl^lfll 



iht Software 

2269 CHKSTNUT STREET 

SUITE 162 

SAN FRANCISCO. CA 94123 



ORDER UNE • <415> 441-1607 
Dr^lrrsJ Diil rilni lort tfit^ui ri** wtk omrd . 



LQTTQ ElPflER. 



lilt I mi. Hl^r DEUisON W^i I^TTKUt 
!sj^ M SintM - PM'K rc>l R ' D\ll.\ V.AMt. 

' M0«iO> FCHJnCCHHIiawAriOAIl OF 

Kututen TO CMOcru n^ott 

< AhT AHOvhT or l-ALLa AMD NUHHIH CAN 
ec PAOaflAHMID 

< PAINTS OUT FAST LOTTO NUUBERS DflAWK, 
PiLST COM^UTlfl PiCRS, AMD FtUMBER DRAW 
FflCOU^NCV llST 

» nANDOu NuMnrn aiFtrnATon i>4culf[}'Ed. 




IIS IS Clt, 



*Wind«w 



3^9^ 



li'l N K If I KCSOhtTllIN (IH AVl ISH t\ Ml LT1 elk MOM > M ll ( IM 

* COPT ' M^ WBH n-iP,AHOItC*X|P*a fPtfOwl 

' f «,]. * f DOW tA'MtH A 1«n»ilr TO HHjVtt »JI 

. LMd - |A*t A«D LOJ^I *Qy« lUtDOWl O* DiM 

* Haw ' HkxTS 0*1 STAki^ing DOT UAtiMJ r^Htl* 

- CO^Oli VJVAHttr * CXOlE cat-Dft AtTftklUTf f 

- T^PCi iCTTrPtl AND QBAPHLCS. 

* POLVDON IKAHI tllPIHD. SK'taX '^D flCTlTE. ThfI4 STAUP JlMVlTHIHE 
» tOOW hOT OAAw On An H^AA'DID W^OQW AhD TOUn DPIAWiHa AT iHt 

«AU| <iM( 

114 HC-IIHll. 



STOCK BROKER 



pgVlJM OOOtr gOALITT. VOLATILE FSfrUCS A*fS 
USAQ rh» T*>ma il iTUV WU. HJlVt VDU UKaV 
PfrtSTtS A T T*< kOwtl T mCH *J« C0«¥fWiW3 
TQ eiLiM At TK STOCB IvtAftt rfl PfU 

• TtCMwCAt TIUQUvg TMAT WDWU 

* HCOAO k;* ra 14* 1T0C>» OH a diim. 




* ii ?i* i n iiiriii » i(( 



i;t II cu.'i 



ACORN OF INDIANA, INC. 



J7S1 OHIO STREET 
MICHIGAN CITY. IN 46360 



219-879-2284 



siiiinst: ANt) HA^ni.]\{:. ADU H.50 - c.o.D/s *crKrini 
vi^A AMI m*sti:b card ORnFIl*^ Alltl <* 
tKEIUNA XEStDtNTN ADD i% SAL£5 TAK 



ClfClB 402 on Read 01 Service cjitl 



Circle 404 on Koador S^irvicG card. 



SEE THE WORLD , 




WORLD GEOGRAPHY 



Inlroducing an amawng new cducalionil game for the Commodore 
6*128 featuring a FULL COLOR 3D ROTATING GLOBE and 
detailed graphics of over 175 countries for 1 or 2 players. 

Add S2 shipping ALSO AVAri. 

and handling. CA 

^.den.add5.5* ^BOBCO 

200 7th Ave., suite 1 1 1 Santa Cruz, CA 95062 
1-800-331-4321 (CA ) 1-800-851-1986 



^W' 



O'. 



&.#: 



C Ire 1 431 on Reader Sefvloe card. 



10 MBYTE DUIVE 

ttorai 60 Floppleal 



' EXPANDABLE 
■ T RAN* PARE NT 
OPERATION 



|i" f£j*vl 



' MULTIPLE 
CHAINED 



20 Mbyte Model HFD-20 
ONLT •995.'"' 

10 MBYTE MOD€L HFO-)0 

ONLY'BflS." 

SMBTYE MODEL HFD-5 

ONLV *695,*° 



PAHTITIONR 
' OEOS" COMPATIBLE 
' SUPPORTS IINOLE atOEO 
cm AND CPM 

• BUILT-IN FLOPPI DRIVE 

' iUPPOHTS *U 1.0 TO TO 
{C-131) DOS COHMAHOS 
■ REPROGRAMMABLE "BOS PAR" 
{BUFFERED OPERATINO «TBTEH) 

T hB DAT A CHIEF has bB«'^flongnfl^DyC.64 users loTC.64u»era 
Mllh imporlar^l iBBIuros likB 

SlorBga m oftgmBl individual duk formil 

— Esay AccBli to progrAmt vka Duk NunntjB' 

— Emmplo tOf disk HBO OPEN 15. B, 1i. HBO" 
Slandard Utililini IncludBil 

— Includes Wedflfl CoinmandJ 
135WitlPo«8r Supply 

Meltl Encloiurt hou»lupto3 B«cn 1'3 Hi Hsra OiskJ 

— PrpvN^es EncBiiirni Monitor Slano P C alyte 

— Allows room lof liilufo BKptniion 
Complete OpB rating Manual 

1 Vear Full WBiranty 
TUB DATA CHIEF i| p«r1«ti lor tollwart ana MjrdwafB PBvalop4rl. 
businais usttri. studantt and aerioul computer oipBrimtntari at 
wall at lot bullalin board! and data bat* tytlBmt 
to OHDEB SEND CEBTIFIEO CHECK OB MONEY ORDER TO 

Maryland reaidBnia add ^% »le$ laji 
For mora information call 
{30t)37V4000 

Allow *-6 week$ delivery [U 5. Onlv^ 
' C-^4 & C^12S arfi tradsmarhs of 

Commchdore EiectTQnics. Hd. 



1D3 BAUGHMANS LANE 
SUITE 301 
FREDERICK. WD21?Cll 



' GEOS M a irAdflrriarh dT 

Dordeley So(twork» 



MAGIC 

From p. 32. 

DOPEN#l,(FS) 
D01'EN#1,"" + FS 

Jerry W. Jarvis 
Spokane, WA 

C-128 mode switcher — When I replaced my trusty C-fi'l with 
a new C-128, it was difTicult to keep track of which of my 
many disks were forC-64 mode and which were for Basic 7.0- 
I solved the problem by using the IdTI's auto-boot feature to 
load and run this program for my C-64 disks. 

10(1 REM SWITCH TO C-64 MODE 
IIU SYSfi5357 

C. David Moran 
RidgeField, NJ 

Testing for 128/64 mode— Ihe following line tclLs a pro- 
gram whether it is running in CA)4 mode or C-128 mode. 
It works because FRE{()) and FRE( 1 ) on the 64 always return 
the same value; while in 1 28 mode, they return the amount 
of bytes free for program and variable storage, re.spec- 
lively- It's possible, but highly unlikely, for both to be equal 
in 128 mode. After the line is executed, variable M wil! 
contain a 128 or a 64, depending on the machine you're 
using. 

I (10 M = 128 : IF FRE(0) = FRE{1) THEN M = 64 

Edward Horgan 
Coatesville, PA 

&128 RGBI connector — Be careful when making cables 
for this connector, because the pin diagram in the manual 
is incompletely labeled. Pin 1 is alw'ays at the end of the 
longer row, but it can l)e on your left or your right, de- 
pending on whether you're looking at the pin end or the 
solder-tenninal end of the connector, and on whether your 
connector is female or male. 

Before connecting any wires, you should carefully de- 
termine the location of pin 1, then mark it unmistakably. 
The other pins will then be easy to find, and your chance 
of error wil! be gix-atly reduced. 

Most connectors have tiny pin numbers molded into the 
plastic, and checking them is the surest way to locate pin 
1. You can also rely on this advice: If you are looking at 
the solder-terminal end of the connector, with the longer 
row of pitis on top, pin 1 is on your right for a male 
connector and on your left for a female connector. 

Ron HaU 
Duncan, OK 

Using &128 windowing— If you set a two-inch window at 
the top of your C-l'iH or Plus/4 screen, you can improve 
your speed when typing in programs. Set the window, then 
rest your magazine on the front of the monitor, wiih its 
top edge just below ibe window's lowest line. Since your 
cursor will never go below the window, you can simulta- 
neously see the magazine and your own typed material. 

Brad J. Taylor 
Clarksvilk, TX 



94 / RUN .SPECIAL ISSUE 1987 



Clfcle 434 gn Besoer Servlcs card- 



M 



&128 Input prompt — To suppress the question mark, use 
POKE 21,64. Immediately following the Input statement, 
use POKE 21,0 to return the system to normal. If you don't 
make the second Poke, your system will operate erratically. 

Edward B. Sullivan 
Branson, MO 

Tempo and the metronome— While the tones in computer 
music are usually faithful to the composer's intent, there's 
often something wrong with the music's speed, or tempo. 
There's no need for such a discrepancy, because the proper 
tempo is always specified on the sheet music by an Italian 
word such as Largo, Andante or Allegro. Musicians know 
the meanings of these words, but, unfortunately, com- 
puters don't. 

Luckily, much sheet music also includes a numerical met- 
ronome setting that tlie computer can easily digest. The set- 
ting is found at the start of tlie piece, usually in the form: 

M.M [note] = [number] 

The M.M. stands for Maelzel's Metronome. (Maelzel de- 
veloped the first one in the early 19th century.) The [note] 
will be the symbol for the note, usually a quarter note or 
half note, which is counted as one beat in the time signa- 
ture of the piece. The [number] signifies the number of 
beats per minute, often somewhere between 60 and 80, 
but with a practical range of about 50-120. 

When you establish the tempo for your computer music, 
just be sure there are the appropriate number of notes 
per minute of music played. 

On the C-128, the Tempo statement can be used for this, 
if you know the following formulas; 

TEMPO = beats per minute / note value / 3.12 

beats per minute = TEMPO x note value x 3.12 

TEMPO is the appropriate argument for the Tempo 
statement, while note value is 1 for a whole note, 2 for a 
half note, 4 for a quarter note, and so on. The note value 
and number of beats per minute are, of course, taken from 
the metronome setting. 

While the Tempo statement takes arguments from 1- 
255, only those in the lowest part of that range are useful 
in making music. Using a quarter note for one beat, Tem- 
pos from four to ten cover the range of 49 to 124 beats 
per minute. Using a half note for one beat, Tempos from 
8-20 cover the same range. 

Jean Patterson 
Pittsburgh, PA 

C-128 error trapping— When programming the CI 28, add 

the following three lines, numbered exacdy as shown. If 
your program encounters an error, these lines will tell you 
what kind it is and where it is. The offending line will even 
be listed to the screen. 

TRAP63 999:REH magic - A.OZERKOVSKY 
63996 PRINT"THE PROGRAM IS OK!":END 
63999 PRINTEHRS(ER};" ERROR IK LINE";EL:HEL 
P 

Alejandro Ozerkovsky 

Mexico City 

Mexico 



AIIIIIIIDIGITFIL \7l3IOnilllinil 

■ 

I COMPUTEREYES" 



I 



VfDEO IMAGES ON YOUR COMPUTERI 

Fin<iJJy— ,in inpjipenii'.T w^y [3 capiurr rfjil- world im.igrson your cofnputer'i 
grjphiCJ cJiipfflyi COWPLfTE:ffE¥ES"jsitn mrtCvativr ilOw-iCflfl device thiH ccr>- 
necls b*iwten\^ny iT-Tnc?flrci w' deo iourct (vidto wpe f«o/deif, vidfo c^mer^, 
vjdeodiiJi, cic I jnd your computeif. Urstfer Mmpre sofrwafeconifor, ^ oiw jmage 
ij^cjurred in l<^JJ tft<*n jj^ MTDntfs. unique mutif'ian mod*s jrso pftj^rd* 
resfistrt:grcy-5<<ircjiniA9<-l Hundrtdj oJ appPic^tonif 




Circle 433 on Reader Service card. 



Learn and ^pAC 
U nderstandMLVO 

Inside and Out 



A book for all GEOS users, from the 
beginner to the programmer. 
Starts out with a introduction 
to GEOS and its applications/ 
to creating your own GEOS 
applications, GEOS file 
formats and internal 
workings of GEOS. 
A must for everyone that 
wants to learn and understanc 
GEOS inside and out. 



Available 
NOW 



$19.95 



Phone 616/241-5510 

P.O. Box 721 9 DeplRS Grand Rapids, Ml 4951 
Telex 709-1 01 'Fax 61 6/241 -5021 

Call now for the name of the dealer nearest you. Or order 

directly using your MC, Visa or Amex card. Add S4,00 

per order for shipping. Foreign orders add S1 0.00 per 

item. Call today or write for your free catalog. Dealer 

inquires welcome-over 1500 nationwide. 



circle 436 on Rcudsr Service card. 



RUN SPECIAL ISSUE 1967 / 95 



Lincoln College 
Commodore Computer Camp 

with 

JIM BUTTERFIELD 

and other experts 

July 19-25, 1987 

Topics include: 

• Amiga 

• C-128 

• Robotics 

• Telecomputing 

• Additional selected topics 

For further information, contact: 

Office of Continuing Education 
Lincoln College 
300 Keokuk 
Lincoln, IL 62656 
217/732-3155 



Ctrcia 435 on Reader Service card. 



WE WONT PAY YOUR TAXES! 

But TAX MASTER wiEl hefp you computo Ihom more 
OUiCKLV and EASILY. Be the Master of your Income 
Toxfliwllh TAX MASTER. noiiVDvallabFo lor your 1986 
Federal income Taxes Tor thti C54/C12e w^lh single, 
Iwin. or dual diik drive and opiiorial pnriter 

• FORMS 1040. <S62, & Schedules A.B.C.O,E, and F 

• PERFORMS all flnthmetic CORRECTLY. 

■ EASY CHANGE of an^ entry, wim easy RECALCU- 
LATION of me €nUre form. 

• TRANSFERS rvumbers between lorms. 

• CALCULATES your taites and REFUND. Tax tables 
are included. 

• SAVES all your data to disk lor liituro chnr;gD?, 

• PRINTS the dnta Irom each lorm 

• DISCOUNT coupon toward Iho purchaao Ol noxl 
yOQf'a updalQd program. 

TAX MASTER {DISK ONLY) .... ONLY S3D.00 



TIRED OF SWITCHING CABLES? 

V^DEO MASTER 12& provider cor^linuoul BO column calor 
[FlOBlj. iMCOlumn mpnocfirome.andfluOio 0<J( S*.TCfi []«(*een 
80 eoljmn inonochroiTV& ana 40 columft colof Iw ctimponie 

moniCOiT UlS up to 4 fr>0ni10<rjdtoncv' InCtudtt CDmpotile cable 
VmEO MASTER 121 lorC«nm«lon 1» SJ9.H 



FED UP WITH SYNTAX ERRORS? 

HELPMASTCn a4|jrnvide& Insianc Opi-LlriDH«M[}ici»an»lor All 
G9 ElASlC Currknifl.r^da wnun yau neeij (htfrn. TiiIkb9 nq BASIC 
HAM. 1^0 InlorlorericQ with loading, saving, odltlng, or runnino 
QASIC programs. In^cludes^&a pag>e ralsrftncd iriinufll. rnor«. 
HELP WASTER M »24.« 



OTHER MASTER SOFTWARE ITEMS 

flESET HASTEFt rsul switch wiin 2 KriRl ports 131.K 



CHIP MVER KIT prolKlS from SEsIjC 
U DE U M A9 TEA u ittt pun eirtfin i^f U9.99. 
r*N0T7 fi-fC^Ql f«nBl Y CJ&I« 1 male. 2 IvniAh 
Ci?S&Ocol moriochroiricrctbtttof noo-nQfl 
Suro« PraiocEDX 6 0u1i4l pottti itnp ft-fcwt com 
0\%M NiKEChor ~- I>bT» yOU l>}« l>Olh f iO«S of doh 



tIlOO 
I ».» 

t tea 



MAI 



Se/fd /or ^reo Caiatog 



S I^UIftri Sur1«r 
(hipfHriB in U15 1 CtrDdi i« i/iclMCl^d 



I TT J.A, tV lli Qtiftrt \ji.$ C4n*,9i|[i POSTAL 

G Hlllery Cl. 

■ '"elm 



RandiMitown. MO 21133 
<301j 922-39eZ 



M 



C-128 tenninal program — This little gem demonstrates the 
power and flexibility of the mighty C-128. Where else can 
you find a terminal program that fits on a single line? 

If! REM MAGIC CI 2 8 TERMINAL - J.PAYNE 
20 POKE56577,0:POKES6579,38:OPENl,2,3,CitR$( 
6)+CiiR$(Si):D0:GETA$;GET#1 , B$ : IFASO ""THE 
NPRINT,^! ,A$;:L00P:ELSEIFBS<>""THENPRINTB 
S;:LOOP:ELSELOOP 

Jim Payne 
Dover, DE 

C-128 function keys— This Ijii of magic lets you rededne 
the C-128's help key and shifted nin/.stop keys, as long as 
you run it before any of the function keys have been 
redefined. If you want the new definition to include a 
carriage return, use the left-arrow key where you want the 
return to appear. 

If you know how the function keys are set up in memory, 
you can modify the program to accommodate your cre- 
ative wishes. Locations 4096-4351 are rcsei^'ed for the 
function keys. Locations 409G-4I0:') hold the lengttis of 
each key definition, from Fl through F8, then shifted run/ 
stop, then lielp. The definitions themselves are stored from 
4106-4351. 

Basic's Key command manages (ise first eight defini- 
tions, while a program such as this can manage the ninth 
and tenth. 

You can save the setups for all ten keys by using 

BSAVE "filename", P4096 TO P4351 

They can be reloaded at any time by 

BLOAD"filctiaiiie" 

10 PRINT" (SHFT CLRIMAGIC EXTRA C128 F-KEYS 

- GARY KEMPER" 
20 INPUT" (CRSR DN)RUN/STOP KEY DEFINITION"? 

R$ 
30 INPUT" (CRSR DN}{4 SPACES } HELP KEY DEFIKI 

TI0N";HS 
40 POKE4104,LEN(R$) : P0KE41 (!S ,LEN(H$ ) 
5 F0RJ=1TOLEN(H$-fR$) 
60 B=ASC(MIDS(RS+H$,J,1 )) 
70 IFBa95THENB=13 
80 P0KE41 58-fJ,B 
90 NEXT 

Gary Kemper 
Azusa, CA 



&I28 window work— If a window is established, all normal 
printing lakes place inside it. But you can print outside 
the window by Poking to location 235, as shown by this 
little program. 

100 PRINT" {SHFT CLR)C-128 WINDOW DEMO - E. 

DAM RAVN" 
110 WINDOW 0,10,39,20 

120 PRINT"INSIDE THE WINDOW" iGOSUBI 80 
130 P0KE235,1 :PRINT 

140 PRINT"OUTSIDE THE WINtX)Wl " :G0SUB1 80 
150 POKE23S,10:PRINT 

160 FORJ=1TO2 0: PRINT" INSIDE AGAIN! "iNEXT 
170 END 
180 PRINT" PRESS A KEY! " :GETKEYA$ JRETURN 

E. Dam Ravn 
Olstykke, Denmark 



96 / RUN SVIOAL ISSLIZ IW 



circle 442 on RaidM S«(vlcacard. 



M 



C-128 Sweeper — You can have some fun with this program, 
Sweeper, which I first wrote for the Timex-Sinclair ZX-81. 
It works even better on the C- 1 28, with its CHAR and Color 
commands. Try your own sounds in the program, and try 
fitting your own words to the sounds. 



10 

2(i 
30 
40 
50 



MAGIC SWEEPER C-128 



B 



PRINT" {SHFT CLR) 

.BUSH 

A=INT(RND(1 )*16->-1 ) : IFA=2T}iEN20 

B=INT(RND(1 )*6 + 1 ) 

IFB=1THENA$=" WHO?":B$=" >-YOU! " 

WHAT?":B$=" (LEFT ARROW}GE 



WHy?":B$=" (-BECAUSE 
IT'S ME!":B$=" (-GO! ! 
.AW":B$=" ) -BEGONE " 
ME?":B$=" YES, you; ' 



= (J 



IFB=2THENA$=" 
T OUT! " 
60 IFB=3THENAS=" 
70 IFB=4THENAS=" 
80 IFB=5THENAS=" 
90 IFB=6THENAS=" 
00 COLOR0,2:COLOR5,A:COLOR4,7 
10 FQRJ=1TOA+10 
20 CHAR1 , J, A, A$:S0UND3, 10500*3,2,1 ,1 

+A+B) ,6000,0,3000 
3 NEXTJ 

40 FORJ=30TO(2*B)STEP-1 
50 CHAR1 ,J,A,BS:SOUND3,600*(A+J),2, ,J,100* 

(J+A),3,50*( J+A) 
60 NEXT J 
70 GOTO20 

Bernard Bush 
Address unknown 

C-128 abbreviation— If you've been using P (shift) O as the 
abbreviation for the Poke command on your C-64 or 128 
in 64 mode, then beware! In 128 mode, you must use 
PO {SHFT K}. 

Mark Porter 
Montpelier, VT 

C-128 flasher — In 80-column mode, you can draw attention 
[o any Print statement by adding a CHRS(15) between tlie 
Print statement and the quotation mark. 

Dale L. Moore 
Dimondale, MI 

C-128 screen saver^ — The C-I28's Binary Save command 
can be used as a nearly "Invisible" screen save: 

BSAVE"SCREEN",P1024 TO P202'l 

It will save text or graphics characters currently on the 
screen. 

To preserve their color values, make a second bina- 
ry file: 

BSAVE"COLOR".P55296TO P56296 

You wilt lose some screen area to your BSave commands 
and the computer's replies, but you can reduce the screen 
loss with the following command: 

WINDOW 0,24,39,24 

This keeps your commands and the computer's replies 
to a single line, and it won't disrupt the image you're trying 
to save. 

You can also use the screen save to merge programs. If 
you list single pages of your current program and save 
them in binary files, you can recall them after you've 



ULTRABYTE 

DISK 

NIBBLER 



NEW SIXTH GENERATION ULTRABYTE COPIER 
FOR CQMMQgORE 64 and 128 (in 64 mode) 

• Copies 9^% of protected software In 2 min. or less 
Includes parameters tor 160 recent, tiard-to-copy 
disks. ( Send stamped envelope (or list ). 
Includes last (He copy program 

• Uses 1or2 1541/1571 drives, or MSD dual drive 

• More powerful than KeyMaster. Dlskbuster, Copy II, 
Superkit, 21 Second, Clone or Cracker 

• Copies llseK ( (or this reason, no refunds given ) 



SPECIAL - BUY A NIBBLER V3.0 AND GET 
YOUR CHOICE Of A FREE $14.95 PROGRAIVI 

S39.95 plus S4.0I] shipping 



Disk Surgeon - disk ullllty S14.95 

Ultramail — mail list and label printer $14.95 

McMurphy's Mansion — text adventure . . . .$14.95 
Handy-Capper -- race handicap system ...$14.95 

( Above may be ordered separately tor $14.95 plu* $4.00 
stilpplng. Foreign orders add S2.00 ) 

Mastercard. Visa, Check or M.O., CbIII. add 6.S°'i! ( J 2.G0 ) sales lai. 
Foreign orders /COD add S2.00. Payment must be In U.S. lunds 

UPDATES -Return your origmal Ultrabyle disk with S10.00 plus 
$4.00 shipping. Foreign add $2.00 

To order, write or call 24 hr. order line. For Into, write. 

ULTRABYTE (818) 796-0576 
P.O. Box 789 LaCanada, CA 91011 USA 



DEALERS & DISTRIBUTORS WANTED 



GJfds 438 afy Reader Service card. 

The MicroFlyte JOYSTICK 

Increase your flying en- 
joyment with the Micro 
Flyte Joystick— the ONLY 
fully proportional con- 
tinuously variable joystick 
control for Flight Simula- 
tor II. 

Only $59.'^ (+S4 shipping) 

OUR USERS SAY IT ALL: 

"...it transforms an excellent program into a truly 
realistic flight simulation system." B.A.C.E, 

"FSII flies like the real thing with your joystick and 
software ijriver! Congratulations on bringing a 
superior product to the market." D.F. 

"Simply put the MicroFlyte Joystick helps you 'fine 
tune' your flying." ANTtC 

Driver Disk for F15 now available for $9.95. 




NAME 

ADDRESS 

CITY/STATE/ZIP 

CARD NO. & EXP. DATE_ 



FSII is a trademark of Subiogic, F15 is a trademark of Microprose 

SEND TO: MteroCube Corp., P.O. Box 483, Leesburg, V A 22075 
(703) 777-7157 ™!" 



RUN SPECIAL ISSUE i987 / 97 



Circle 439 on Reader Service card. 



Attention 
Subscribers 



U'e occasionally miikc our mailing list available to 
other companies or orgurii/atioiis Kith products or 
sen ices which we led migiit be o! interest to you. If you 
[jiefer thai your name he deielcd from such a list, 
please fill out the coupon below or affix a copy of your 
mailing label and tnai! it to: 



CW Co tnmu n icai ions/l'etcrborough 

RUN 

PO liox 954 

Farmiiigdale. NY 1 1737 



Please delete my name from mailing lists sent to otlicr 
companies or organizations. RUN 



.^ 



Name 

Address. 
City 



. State . 



.Zip. 



MOVING? 

SUBSCRIPTION 
PROBLEM? 

Get help with your subscription by 
calling our new toll free number: 

1-800-645-9559* 

between 9 a.m. and 5 p.m. EST, 
Monday-Friday. 

If possible, please have your mailing label 

in front of you as well as your cancelled 

check or credit card statement if you are 

having problems with payment. 

If moving, please give both your 

old adchess and new address. 

* New York State rcsideiils call 1-800-732-9I 19. 



M 



loaded a new^ program. Then, you simply exit the Window- 
mode, bring the cursor to the top of the screen and press 
the return key on every line you wish to add to the current 
program. (Make sure your new program doesn't duplicate 
any lines from your old program, or they'll be overwritten. 

Scott Hanson 
San Diego, CA 

GET on the C-128 — Many of you prefer using the Get 
routine over the Input routine because Get allows you to 
stop program execution with the stop key, while Input 
requires a run/stop-rcstorc combination to break out, tlius 
causing you to lose your screen. 

Well, the C-128 has an undocumented fix for this that 
allows you to break in on the Input prompt. Simply hold 
down the run/stop key and press the enter key on the 
keypad. VoilaJ You'll see the familiar Break In Line Xxxx 
message, with the screen intact. 

J. Ian Stott 

Hamilton, Ontario 

Canada 

Commodore 128 Muzak— Try this trick with your 01 28 
and disk drive. Insert into the drive the tutorial disk that 
came with your computer. Then type in these lines in 
Immediate mode: 

[1I.OAD"128MUSIC",BO,P32768 
BANKO:SYS 32771.1,1 

The music you hear is on the demo program. When it 
ends, type: 

SYS 32771,2,1 

And, when thai finishes playing, type: 

SYS 32771,0,1 

Now change the Is to Os. To stop the music, type: 

SYS 32774 

Jeremy Winnick 
Cloverdale, IN 

Double speed C-64 — This trick is of interest to anyone who 

uses the CI 28 in C-64 mode. The program show.s bow to 
take advantage of the Fast (2 MHz) mode in your C-G'S 
programs. 

10 OT=TI : PRINT" [SHFT CLR} DOUBLE SPEED C6 4 - 

RAMOKOTA REDDY 
20 GGTO30: POKE53296,l 
30 FORI=1T0924 
4i9 B = 1*SIN(I) : 
50 NEXTI 

60 POKE5326S,PEEK(53265)OR16:POKE53296,0 
65 T=(TI-OT)/60 

70 PRINT" {SHFT CLR)TIME=";T:PRINTTAB(17)"{C 
RSR UP} SECONDS 

After you run it, the program will display that it took 
nearly 30 seconds to execute. Now, remove the GOTO 30 



98 / RUN Si'KCtU ISSUE 1987 



M 



from line 20 and mn it again. The screen will scramble as 
the program executes in Fast (2 MHz) mode. Once it is 
reset in line 60 to Slow {1 MHz) mode, ihe screen will 
regain its composure and ck-ar itself. The result? The pro- 
gram will tell yon it took less than \5 seconds to run. Use 
this trick when you want to reduce the execution times of 
Basic and machine language C-64 progi'ams running on 
the C-128. 

Ramakota Reddy 
Iowa City, lA 

Doing 128 Loop-Do-Loops— The C128's Basic 7.0s Do 
While and Loop White commands can lie used in the same 
Do. . -Loop. This simplifies some difficult programming 
tasks. The following program illustrates this with the Shell 
binary sort: 

10 PRINT" {SHFT CLRJDO WHILE, LOOP WHILE, DO 

. . LOOP - FRED RANSOM 
20 DIMA$( 500) :N0=-1 :DO:N0=NO+1 ;PRINT"ENTER 

CHARACTERS, * WHEN FINISHED": {2 SPACES)! 

NPUT A$(NO):LO0P UNTIL A$ ( NO ) ="* " :NO=NO- 

1 :PRINT"NUMBER OF ENTRIES = " ;N0+1 
30 REM SORT 
40 PRINT"START SORT: " ; TI$ : X=TI : D=NO : DO :D=I 

NT(D/2) :PRINTD, : FORKED T02*D- 1 ; FORI=K TO 
NOSTEPD:J=I:T$=A$( J) :D0 WHILE A$(J-D)>T 

$:A$(J)=A$(J-D) :J=J-D:L00P WHILE J>=D 
50 A$( J)=T$:NEXT:NEXT:LOOP WHILE D>1:Y=TI:P 

RINT"{2 CRSR DNs) COMPLETED: "TI$:PRINT"T 

OTAL TIME: "; (Y-X) /60 ; "SECONDS" : FOR 1=1 

T0N0:PRINTAS{I) ,:NEXT:EMD 

Fred Ransom 
Oxnard, CA 



C-128 Lo-Res screen dump— Use this subroutine to create 
hard copies of screen displays. It works in both 40- and 80- 
column modes — it even does w-indowsl 

10 REM CI 28 SCREEN DUMP - MIKE TRANCHEMONTA 

GNE 
20 0PEN3 , 3 : 0PEN4 , 4,7, CHR$ (13): PRINTCHRS (19) 

30 FOR Y=0TORWINDOW(0) 

40 IF RWINDOW(2)=40THENPRINT)1(4,CHR${14); 

50 FORX=0TORWINDOW(1 ) 

60 GET#3,A$:A=ASC(A$) 

70 IF(AAND1 27) >31THENPRINTf!/4,A$; 

80 NEXTX:PRINTii(4,CHR$(13) 

90 NEXTy:CLOSE3:CLOSE4 

Mike Tranchemontagne 
Nashua, NH 



C-128 Hi-res screen dump— This CI 28 40-column mode 
program, like some housekeepers, doesn't do windows. 
However, it does perform accurate screen dumps of both 
standard and multicolor bit-map screens. 



100 



JERRY JAR 



REM C-128 HIRES SCREEN DUMP 

VIS 
115 IFRGR(X> >2THEN M0DE=1 59: ELSE MODE=319 
120 OPEN3,4:FORY=0 TO 1 99STEP 7 



ICC's SCAN "8" 

TURNS YOUR C-64 OR C-128 INTO A: 

• VOLTAGE __iHiMi 
SCANNER I wf^r* 

• STRIP CHART 1 1> t^ 
RECORDER 

• INSTRUMENT 
PANEL MONITOR 

• Read Temperature, Pressure, Humidity, Height, Lengtli, 
Thicl^ness, etc. 

•Set up Alarm Limits 'Compare Readings to Alarm Limits 
•Print Record of Readings 

•Eighteen Fast Machine Language Programs on EPROM 
•Fast Read to Memory — 1000 Readings/Second 
•Eight (8) Separate Channels. 
FOR USE BY: 

1 . Home Computer Hobbyists 

2. Schoois 

3. Research and Test Labs 




lillUllLlI 



4. Shop Operations 

5. Engineering Projects 

6. Maintenance & Service 



ONLY 



ADDITIONAL SOFTWARE AVAILABLE FOR THE 
064 & CI 28 

CALL OR WRITE 

£{^•4 ^rk nn for more information. 
q> IdU. CALL (203) 496-1 1 1 1 

INDUSTRIAL 

COMPUTER CORP. 

261 MAIN STREET 

TORRINGTON, CT 06790 



VtSA. cofTiparry ihjrclusfl dtM^i p^rtCHwl 
ch«ks nnd rnQfiigiy ordan ^ r»«irv« tm 

(iflhl to wail 16 worVir*u dayi foir pofBonal 
ch^Ck:} to i;l0ir YfHJf hK^M. baForD wt sl^p, CT 

SHIPPENQ-Add S^.OO lor pJl c^fdurn 
COO ORDERS— Gash, Cortlliot] ChocH or 
Uomy Ordet only COD orders Add S^.OO fof 
harKjiir>a. 



Circle 440 on Reader Service card. 




NEW! 

UPDATED 

VERSION! 

PRESENTING . . . 

A NEW GRAPHIC-ART 
DISCOVERY FOR THE 
C-128 COMPUTER! 

3-0 C«NV«S 

NOW! EVEN MORE FEATURES &c Ori'lONS: 

MUITICOLOR MODK Icls you draw in 2 (lolcirs ;u once — even 
3-DI SCREEN.SWAPCINC;, KoahiPad, Doodli:, & 80 COLUMN 
CONVERSIONS! 

DUPLICATF. & TranstLT both Large & Small areas of Screens! 
NEW ZOOM Feaiure k'ls you magnify sections for DEiAlL! 
PLUS ALL THE GREAT FEATURES OF THE POPULAR ORIGINAL: 
TRUE 3-D nU.UVlNC (nol wire Irame), Jt L> 1) Drawing, li.ith in 
virlually any si/e, EVEN DR^VW IN ( KANSl'ARAN T :VD; C;reaK: 
COMPLEX :l-D Screens &SAVErlicni on 1>LSK ordtimp a Hard- 
copy to printer: I'RINT TEXT Anywhere on Strftni (Normal 
Jt- Reversed). Make CIRCLES, SPHERES, Pt)[.Yt;()NS, BOXES, 
Etc. FILL with COLORS or PATTERNS! A Versatile SCREEN 
WIPE Utility— AND DUI'LICATE, STREICH, even ANIMATE 
ANY BLOCK OF DRAWiXCS! ADD SPRITE ANIMATIION for 
LIVING DRAU'lNCSl 

ALL THIS Sc MORE AT LOW INTROD. PRICE: 
only S69.95 U.S. (CA, Res. ADD 6%) 

CAPPCO— P.O. Box 7652 

Chula Vista, Calif. 92012-7652 Tel.: (619) 477-5970 

(1T}IF.R C-12S PRO(;S, AVAII.AHI.K; 

NILW SPRITE SHOl'-UfJiKtl. CM-mgc, Rotate SPRITE.S, SAVt: J hcni, IIHE 

nL'ILTlN HIRES SCRKIINS In siiiiw llitm oli; Only S24.95 

^ANi■ASllr: (;aLj\X\-K.VS r AtrilON ARCAOt GAMK in a Nr™ Dimctukm $24.DS 
IMl'RISVEn C-12B ITIIITV DISK-Kvrii tiuirc .>ri(tinia K^mici, uiitv, rK, . . SIS.9S 



CIrcIs 409 on Reatler Satvlcs esrcl. 



RUN SPKCIAL ISSUE 1987 / 99 



M 



I 



Listing contimud. 

130 PRINT#3,CHR$(15) ;SPC{10) ;CHR$(8) ; 

140 FORX=0 TO MODE;CH=0:FORM=0TO6 

150 LOCATE X,Y+M:IF RDOT( 2 ) >0THENCH=CH+2 {UP 

ARROW )M 
155 NEXT 
160 CH=CH OR 128:A$=A$+CHR$(CH):PRINT*(3,A$; 



:A$ = 



INEXTX 



170 PRINT//3,CHR${8):NEXTY:CLOSE3:END 



Jeny Jarvis 
Spokane, WA 



Hi-res-sketch-128— Here's a program that will let you 
sketch a hi-res picture on your 128. The table below gives 
a brief description of each key's function, 

Y = up one pixel J == right one pixel 
B = down one pixel H = left one pixel 
T = move left and up one pixel 

U = move right and up one pixel 

V = move left and down one pixel 
N = move right and down one pixel 
P = paint an enclosed area 

5 REM SIMPLE SKETCH CI 28 - ANDY BRAILO 

T0 GRAPHIC 1,1: X=150: y=90: DRAW1,X,Y TO X 

,Y:CHAR1 ,11 ,0, "SIMPLE SKETCH" 
20 CHAR1 ,0,1 ,"(39 SHFT Ds)" 
30 GETA$:IFA$=""THEN30 
IFA$ = "Y" THEN Y = Y- 1 
Y=Y+1 
X=X+1 



'B' 



THEN 
THEN 



40 

42 IFA$ 
44 

46 IFA$="G" THEN X=X~1 

48 IFAS="N" THEN X=X+1 

Sti IFAS = "T" THEN X = X-1 
IFA$="V" 



52 
54 
56 



THEN X=X-1 
THEN X=X+1 



:GOTO60 
:GOTO60 
:GOTO60 
:GOTO60 
: Y=Y+1 ; 
; Y=Y-1 ; 
: Y=Y+1 ; 
: Y=Y-1 ; 



GOTO60 
GOTO60 
G0T06 
GOTO5 



IFA$="P" 



THEN PAINT1 ,X+1 ,Y,1 :GOTO30 
58 GOTO30 

60 IF X>318 THEN X=X-1:GOTO30 
65 IF Y>198 THEN Y=Y-1:GOTO30 
70 IF X<0 THEN X=X+1:GOTO30 
75 IF Y<12 THEN Y=Y+1:GOTO30 
80 DRAW1 ,X,Y TO X,Y 
85 GOTO30 



Andy Brailo 
Alpha, NJ 



Converting C-64 ftinction keys to C-128— Any C-64 pro- 
gram that uses the function keys can be converted to work 
on your C-128. This four-liner will do the trick. Just add it 
early in your program. 

10 REM CONVERTING CI 28 FUNCTION KEYS - ROBE 

RT H. WADE 
20 A=132 

30 FORI = 1T08STEP2:KEYI,CHR$(A-f1 ) :A=A+1 :NEXT 
40 A=136 
50 FORI = 2T08STEP2:KEYI,CHRS(A-t-1 ) :A=A-fl :NEXT 

Robert H. Wade 
San Diego, CA 



How do you spell help?— Here's a short CI 28 program 
that tells you where to turn for help. 

1 REM REDEFINE C-128 HELP - IAN CILLAY 

10 L=13:P0KE 4105,L:FOR J=4096 TO 4104:C=C■^ 

PEEK( J) :NEXT 
20 FOR R=1 TO L:READ D:POKE 41 05-fC-t-R,D:NEXT 

30 DATA 82,85,76,32,77,65,71,65,90,73,78,69 
,141 

To restore the normal help-key definition, change the 
value of L in line 10 to 5 and enter the following as line 30: 

30 DATA 72,69,76,80,13 

Line 10 pokes the length of the help-key string into 
location 4105 and calculates the location where the help- 
key definition begins. Line 20 reads the values of the new 
characters from the data in line 30 and pokes them into 
the proper location. End the siring with a carriage return 
(ASCII value of 13} to execute a command, or a shifted 
return (ASCII value of 141) to move the cursor to the 
beginning of die next line. 

The help-key definition can al.so be viewed in hexadec- 
imal with the C-128's built-in monitor by typing M $1000. 

Ian Cillay 
Bethesda, MD 



C-128 Perfect Typist aid— To keep the SYS addresses on 

screen for this vital RUN program, insert the following in 
line 60, between the Print statement and the SYS5120. 

:WlNDOW 0,4,79,23; 



J. C. Vollmer 
Prior Lake, MN 



C-128 Perfect Typist windows H— The C-128 Perfect Typist 
aid, above, works fine if you're using an 80column moni- 
tor. However, if the 40-column monitor is in use, the com- 
puter will return an Illegal Quantity error in line 60. 

Since the C-128 Perfect Typist program already detects 
for 40 or 80 columns in line 25, either screen width can 
be handled with the following modifications. 

Insert W = 39: after the A$ = "": in line 25 and add 
;W = 79 to the end of line 25. This change sets the correct 
number of columns for the Window command. Then in- 
sert WINDOW 0,4,W,24: before the SYS command in line 
60, Now the window will be set to the proper width no 
matter which screen you are using. 

Allen L. Larkins 
Sandusky, OH 



A "Draw"-back in 7.0— One of the few bugs in Basic 7.0 is 

in the Draw^ command. When you attempt to draw with a 
negative increment such as DRAW 1,50,50 TO -20,25, 
you will get an Illegal Quantity error. To avoid this prob- 
lem, use the ROOT function. RDOT(O) and RDOT(l) re- 
turn the value of the X and Y positions of the pixel cur- 



100 / RUN SPECIAL ISSUE 1987 



M 



sor, respectively. If vou change the line above to DRAW 
1,50.50 TO RDOT('0)-20,RDOT(]) + 25, your program 
will work fine. 

Warren Roper 
Gainesville, GA 

C-128 CUStomizer — If you're like me, there are several things 
you may change each time you start up your C-128. For ex- 
ample, I change the screen colors and the function key defi- 
nitions. 1 use the following program to make all the changes 
I want at one time. The newfiMietioii key deiiriitions are very 
much like the old DOS wedge conunands. You simply lisl 
the director)', move the cursor to the fiiename you want and 
press the I"2 key to load or F(5 to nui the program. The PRO 
is automatically deleted from the end of the line. You can 
make any other changes you like. 

To make the program easy to use, I put it on each new 
disk I forniat. This allows if to nm with the shift-run/stop 
conihinalion, and from then on you can use ihe directory 
to load or run other programs. This method al.so allows 
another progi^am on the disk to be an auto-boot program. 
Give the prograin a try. I'm sure you won't want to work 
without running your version of it first. 

10 REM C-128 CUSTOMIZER - JIM BORDEN 

20 COLORE! , 1 3 : C0L0R4 ,12: CL$=C!m$ ( 27 )+"Q" +CHR 

$(13) 
30 KEY 2,"DLOAD{3 CTRL Is}"-fCL$ 
40 KEY 3, "DIRECTORY" -hCLI 
50 KEY 5,CHR$(29)-^CHRS(20} :REM CURSOR ' BLAC 

K HOLE' 
60 KEY 6,"RUN{3 CTRL Is)"+CL$ 
70 KEY 7,"LIST"-i-CHR$(27) + "(a"-fCHR$(1 3) 
80 PRINT" tSHFT CLR)"CHR$(14) :COLOR6,2:COLOR 

5,1 
90 IF RGR{0)=5THEH FAST:REM 80 COL 
100 NEW 

Jim Borden 
Carlisle, PA 



Quiet, please — At power-up or after pressing the restore 
key or resei button on my C-12H, I was getting backgi-ound 
hiun from the monitor speaker, I found that by typing 
CHR$(7) or pressing CTRL-G, a short tone will sound, 
followed by silence. No more humming! 

Rodney Sweeney 
Montpetier, VT 

Improving 128 Perfect Typist— While typing in a lot of 

Data statements, using Fl for DA'l'A and F7 for commas, I 
wondered if the plus, minus and decimal point keys on 
the keypad could be redeftned. This would considerably 
improve typing speed for Data stalemeiUs and commands 
such as Circle. I found that you can copy the keyboard 
matrix into RAM and change the keys any way you like. 
My program changes the decimal jxiini key on the keypad 
to a comma and changes the minus key to duplicate the 
definition of the FI key. 

The lines are numbered to work with C-128 Perfect 
Typist. To use my program with it, be sure to remove :NEW 



from the end of line 60. Then add the lines below and save 

the program. You can also use this program without 128 
Perfect Typist. 

70 :REM '.'=, '-'=F1 (DATA) - TODD BAILEY 
80 KEY!, "DATA " :BASE=3072 :PH= INT( BASE/256 ) : 

PL = BASE-P11*256 
90 BANK15:FORX=0TO88:REM COPY OLD MATRIX 
10f) POKE BASE + X, PEEK ( 6 41 28 + X) : NEXT 
1 1 POKE830,PL:POKE831 ,PH: POKEBASE+82 ,44:PO 
KEBASE+74 ,1 33: NEW 

Todd Bailey 
Sharonville, OH 



C-128 no-run safety — The shift/run-stop key combination 
will load and nni the first program oti a disk, which is a nice 
feature, but it can become a nightmare. Sooner or later, when 
you least expect it, you will accidentally press tliat combina- 
tion while writing a progi-ain, and — jjoof! — there goes the 
])rogiain! 

To disable sliift/run-stop, type in anrl nm die following pro- 
giTiiu line, which erases the command diat's built into loca- 
tion 4104: 

10 POKF.4104.0-J'ORT = 4159TO41fM:POKKI,PFJJ((I ■^0):^^FX^ 

Don Harkness 
Andover, KS 

Function key restore— If you want to restore the default 
function keys on the Commodore 128, just type in this 
line: HANK13:SYS49425. It will restore the funcdon keys, 
(he tab settings and clear the screen. It also changes 40-/ 
HU-column modes, so you'll have to use ESC X to get back 
to the screen on which you typed the SYS. 

Ron Sardo 
Sugar! oaf, PA 

C-128 GETspeed — Using GETS in a Do Loop is an easy 
way to check a sequential file. It can be slow, however, if 
the file is a long one. Here's a version of a Do Loojj read 
diat speetis things up considerably. Enter ihe name of the 
file wlien pn>mpted. You can pause the printing with the 
no-scroll key. By changing the value of B in line 20, this 
progi^am should run on any Commodore computer. Of 
course, you won't be able to stop the listing with the no- 
scroll key. 



20 

30 
40 
b& 
60 
70 



REM GETSPEED - EDWARD !1 . SULLIVAN 

B=281 6:FORI=BTOB+54 :READT:POKEI,T:CK=CK+ 

T:NEXT 

IFCK<>7 503THENPRINT"ERROR" 

DATA 160,0,185,0,2,240,3,200 

208 ,248,152,162,0,160,2,32 
189,255,159,5,168,162,8,32 
186,255,32,192,255,162,5,32 
198,255,32,207,255,32,210,255 
32,183,255,240,245,32,204,255 
169,5,32,195,255,96,00 



DATA 

DATA 
DATA 

DATA 

DATA 

) DATA 



90 
10 
110 INPUT "FILENAME" ;F$ : SYS B 



Edward B. SuUivan 
Branson, MO 



RUN Si'KOAI. ISSUE !987 / 101 



M 



3. Computers— C-64 AND VIC-20 

C-64Af^C Buffer Saver — Maiiy intocsting programs poke 
iiuicliiiic Uitigiiagc routines inio the cassette buffer and 
iKlJuiuiiij^ locations, which occupy memory from 820 to 
lU2y, decimal. The trouble with this technique is that you 
must run the Basic Poker every time you want to load your 
macliinc language routines. 

The njutine below saves the machine language directly 
from the buffer to disk or tape. To use Buffer Saver, just 
add it to the end of your Basic Poker program and add 
the proper program name in line 1(30. II' you have a VIC, 
yoti must also change the SYS64738 to SYS64802. As 
primed, the program saves to disk. To make it save to tape, 
change the ,8 after the S.WE to a ,1,1. 

Once machine language programs have been saved to 
disk, diey must be loaded using the format 

LOAD"name",8,l 

in order to work properly, and a New command must be 
executed folhm'ing the load. If the New wipes out an im- 
pori;uu Basic progi-am, you can either reload it or use an 
Unnew program to bring it back to life. If you use the DOS 
5.1 wedge, you can load machine language by using % 
instead of /, and, in that case, you need not perform the 
New command. 

100 PRINT "{SHFT CLRKCRSR DM) 64/VIC BUFFE 

R SAVER - LOUIS F. SANDER (CRSR DNl" 
110 PRINT"SAVES 820-1023 ( $0334-$03FF ) TAPE 

BUFFER" 
120 PRINT" {CRSR DN} NOTICE - YOU MUST FIRST 

PUT YOUR" 
130 PRINT" PROGRAM NAME INTO LINE 160." 
140 INPUT" {CRSR DN)READY TO SAVE THE BUFFER 

" ; A$ : IFLEFT$ ( A$ , 1 ) <> "Y"THENEND 
150 POKE43 , 52 :POKE44 , 3 : POKE45 , : POKE46 , 4 : PC 

KE179,20:CLR 
160 SAVE"PROGRAM NAME" ,8:SYS64738:REM CHANG 

E TO SYS64802 FOR VIC 

Louis R Sander 
Pittsburgh, PA 

C-64 line counter— This relocatable progj-am for the C-fM 
and VIC gives an accurate count of the tines in any Basic 
[>n>gram. It is useful, among otbei' things, for determining 
liow many lines to list on each page of a printout. To use 
the line counter, load and run it, taking careful note of 
the SYS command on the screen. Then load the program 
whose lines are to be counted and execute the SYS. 



110 

120 

130 
140 
150 
160 
170 
180 
190 
200 



PRINT" {SHFT CLKIMAGIC LINE COUNTER - JA 

MES PELLECHI" 

SA=828: PRINT" {CRSR DN) SYS" ;SA ;"T0 COUNT 

":REM RELOCATABLE! 

FORJ=0TO41 ;READK:CS=CS+K:NEXT: RESTORE:! 

FCS<>7462THENPRIEJT"DATA ERROR": STOP 

FORJ=0TO41 :READK:P0KESA+J,K:NEXT 

DATAI 65,043, 13 3,251 ,165,044,133,252 

DATAl6el,i}0f),132,253,132,254,l77,25l 

DATA170,20i5,177,251 , 240 ,01 3 , 230 , 2S3 

DATA208,M2,230,254,134,251 ,133,252 

DATA1 36,240,235,165,254,166,253,076 

DATA205,189 

REM ABOVE IS FOR C-64, FOR VIC-20, ADD 

LINE 210 POKESA+41 ,221 



James Pellechi 
Middle Island, NY 



Printerwidth fix — This C-64 and VIC-20 program lets you 
print program listings in any desired width. With it, you 
can use any size paper for your listings, or you can leave 
wide right margins for comments. 

The first printed line of any program line is flush with 
the left margin, while succeeding lines are indented any 
number of spaces you choo.se. Default values are 64 col- 
umn listings, with four-space indentation of unnumbered 
lines. They can be changed by poking as indicated in the 
program. 

To use the program, run it, load the program to be listed, 
then Poke 807,3. Simultaneously pressing the run/stop and 
restore keys will disable the Special Listing mode. 

100 PRINT" {SHFT CLR}MAGIC PRINTER WIDTH FIX 

- JAMES F. LEES": REM C64 1 VIC 
1 1 FORJ= 1 T05 7 : READK: CS=CS + K : NEXT : RESTORE : I 

FCS<>7554THENPRINT"DATA ERROR": STOP 
120 FORJ=957TO1013:READK;POKEJ,K:NEXT:SYS95 

7 
130 PRINT" (CRSR DNIPOKE 976, PRINT WIDTH {2 S 

PACES ) (NOW" ; PEEK{ 976 ) ; " (CRSR LF ) ) " 
H0 PRINT" (CRSR DNIPOKE 989 , INDENTATION { 2 S 

PACES 1 (N0W";PEEK{9B9) ;"(CRSR LF ) ) " 

150 PRINT" (CRSR DN}POKEB07,3 ENABLES, STOP/ 
RESTORE KILLS." 

151 DA TAl 73, 038, 0^3, 141 ,238,003,173,039 

152 DATA003,141 ,239,003,096,072,201 ,013 

153 DATA240, 033, 169, 064, 197, 252, 208, 021 

154 DATA1 69, 01 3, 032, 237, 003, 132, 253, 160 

155 DATA004, 132,252,169,032,032,237,003 

156 DATAl 36, 208, 250, 164, 253, 230, 252, 104 

157 DATA076,000,000,1 69,255, 133,252, 208 

1 58 DATA2 4 4 

James F. Lees 
Dayton, OH 

4. Connections/Interfaces/Cables 

Cardco modification— I have a Cardco/? + G interface. I 
use it mainly for printing text, hut occasionally I use it 
with The Print Shop program. Changing between the two 
applications normally requires opening the interface and 
flipping DIP switch #8. 

I made the job much easier by turning the DIP switch 
off and wiring a Radio Shack #275-624 toggle switch in 
parallel with its terminals. I mounted the switch in a hole 
in the interface's cover. Now, when 1 need to change ap- 
plications, all I do is flip the Radio Shack switch. 

Jim Lynch 
St, Thomas, Virgin Islands 

Printer interface hazard— Most printer interfaces plug into 
the cassette port for power, leaving their own exposed 
contacts for connecting the Datassette. 'fins is dangerous, 
since metal objects can easily touch the exposed contacts, 
with potentially disastrous results. 

You can eliminate the hazard by changhig the plug or 
the socket. If you don't use a Datassette, you can replace 
the special interface connector willi a standard six-position 
P(J edge connector and insulate its smaller exposed con- 
tacts with epoxy or other potting material. 

As an alternative, you can mount a separate single-con- 
ductor connector on the back of your computer, connect- 
ing ii internally to the -i-S-volt power bus. Radio Shack 



1 02 / RUN SJ'HCiAL ISSUE 19S7 



M 



#274-721 and the mating miA-Tlb will do ilie job for 
under S2. 

If disaster stril^es before you lnYc ibese safety steps, you 
may not have to take your computer in for service. Ex- 
amine the fuse an lite inside of your computer. If it's 
blown, replace it with a fuse of equal value and pray that 
nothing else went up in smoke, 

Steven J. Walsh 
Seaford, NY 

Which wire is which? — Did you ever want to disconnect 

just one device from your surge protector in order to move 
it from one place to another? Did you have to go through 
the tedious task of tracing the appropriate wire to the 
surge protector? Here's a trick that will make your task a 
little easier. 

Almost everyone owns a label maker that churns out 
plastic stick-on labels. .Attach to the wire or cable near the 
base of the ])lug a short piece of label with the device name 
printed on it. Then finding the phig will be a snap, 

Eric Pickell 
Palatine, IL 



5. Disk OPERAnoN/RECORDiNG 

1541 Unscratch^This miraculous utility resurrects pro- 
grams and datafiles that have been inadvertendy scratched 
from the di.sk! .As it inins, it examines the disk in the drive, 
displaying the name ofever)' file in the director)', including 
the recently scratched ones. When it finds one of die latter, 
it asks if you want to unscratch it. If you do, it reque.sts a 
code number for the type of file involved {SF,Q, PRO, RKl, 
or USR), then performs the resurrection. 

We're dealing in very strong magic here, and if things 
don't go just right, you can easily corrupt your disk. Un- 
scratching is possible, since scratching a file merely sets a 
flag in the directory; the file and directory enti^ themselves 
are otherwise unchanged. Further writing to the disk, how- 
ever, can overwrite any of this material, leading to unpre- 
dictable results when luiscratching resets t!ie flag. In 
addition, Unscratch bypasses several built-in safeguards of 
your disk recording system; without them, it's easy for 
troubles to arise. 

So, please be careful when working with this program. 
After you type it in, test it to be certain you haven't made 
any disastrous errors. Save several programs on a newly 
formatted disk, then scratch and resurrect them one by 
one, until you're convinced that Unscratch is working per- 
fecdy. By the way, it's normal to experience apparently 
random delays of 30 seconds or so while running Un- 
scratch — the program needs that time for "thinking." 

When actually using Unscratch, it's best to use it just 
after your program has been scratched, before any new 
material has been saved to the disk. To do othei-wise is to 
invite corruption {though .sometimes it's a risk worth tak- 
ing). And since the names of scratched files can duplicate 
those of live ones, you must be extremely careful in choos- 
ing the file to unscratch. The safest procedure is this: 

• Make a backup copy of the disk you want to work 
with, then set it aside. 



• Unscratch the file from the original disk, then load it 
and check to sec that it's really the one you want. 

• Save the file onto the disk you set aside. 

If you type the progiam coiTcctly and use it with caution, 
Unscratch can be your closest friend in times of real distress. 
Use it wisely and well, and remember where y(m got it. 

1?10 PRINT" {SHFT CLR} UNSCRATCH - LUKE MESTER 



TR=ie:SE=l :OPEN2,8,15:OPEN1 
0TO255:GET# 



110 DIMBL$(255) 

,8,2,"^" 
120 PRINT#2,"U1 :2,"8,TR,SE:FORP 

1 BL$ ( P ) ; NEXTP 
130 NT = ASC(Br,$(0}-fCHR$((S)) :NS = ASC(BL$ ( 1 ^-^CH 

R$( 0) ) :NM=1 :FORFI=2T0255STEP32 
1 40 FORPN=3TO18:IFBL${FI+PN}=""THEN190 
150 FORPN = 3T018:PRINTBL$(FI-fPN) ; :NEXT: PRINT 

: IFASC ( BL $ ( FI ) +CHR $ ( ) ) <> 0THEN1 9 
160 INPUT"UNSCRATCH{3 SPACEs}N{3 CRSR LFs)" 

;Q$ : IFLEFT$ ( Q$ , 1 ) ="N"THEN1 90 
170 NM=0:PRINT"FILE TYPES: 1=SEQ(2 SPACEs)2 

=PRG{2 SPACES) 3=USR (2 SPACES } 4 =REL" 
180 INPUT"FILE TYPE {3 SPACEs}2{3 CRSR LFs}" 

; TY : BL$ ( Fl ) =CHR$ ( TY+ 128): IFTY > 40RTY < 1 TH 

EN180 
190 NEXTFI:IFNM=1THEN210 
200 FORP = 0TO255:PRINTA'2,"B-P 

L$(P); ; NEXTP :PRINTi!^2,"U2 
210 IFNT=0ANDNS=255THEN230 
220 TR=NT:SE=NS:GOTO120 
230 CL0SE1 :PRINT#2,"V0":CLOSE2:END 



;"2,P:PRINTiSf1 ,B 
;2,"0,TR,SE 



Luke Mcster 
CoUiers, WV 

SFD-1001 disks— The Commodore SFD-1001 disk drive 
looks just like a 1541, but it holds one megabyte of infor- 
mation. The major difference between the SFD-lOOl and 
the l,"i4I is that the SFD- 1(H) 1 is a direct drive with a massive 
heat sink and an IKF.E iiuerl'ace instead of a serial bus. The 
SFD- 1001 is made, but not sold, by Conmiodorc; it is only 
available at a few places. Working with this drive can be a 
pleasure, but it has more than its share of challenges, 
mostly due to poor documentation. 

C'ommodore recommends a 9fiTPI disk for use in this 
drive, but such disks arc extremely hard to find and require 
a very strong signal to format and write to; the SFDlOOl's 
signal is not strtjng enough. I've had success with premium- 
quality DSDD disks, such as Dysan and Maxell. 

John Saguto 
Washington, DC 

Reading the status variable—When working with disk files, 
it's useful to check ST, the computer's status variable, to 
determine when the end of file has been reached. If you're 
also checking for disk errors by reading channel IT), you 
umst always make the error check after the status check. 
Disk error checking sets ST to ti4, which is al.so the end-of 
file value. 

Keith W. Marshall 
San Juan, Trinidad 

Disk drive speed adjustment — I adjusted the speed of my 
1540 with the drive upside down, following the instruc- 



RUN SPFCIAI. ISSUE 1981/103 



M 



tions in the article, "Keep Your Disk Drive iti IJtic" (RUN, 
July 1985). However, when I put it right-side up, there was 
a noticeahle change in speed. Cure: While the (hive was 
riglit-side up, 1 removed tlie necessary covers, then used a 
mirror to reflect the lij^jit onto the stroboscope pattern. 
In the absence of a iluorcscent light source, I used die all- 
white light from my monitor screen. 

Erkki I. Suikki 
Vaasa, Finland 

Rearranging directories — Many computers and disk acces- 
sories jjrovide an easy way of loading the fust progiain in 
your disk directory. It's easy to put any prog]-am into tlie first 
position, even if another one is there at die moment. The se- 
cret is in using the Copy command, which can make a dupli- 
cate of any program already on disk. 

By skillfully combining the Copy command with other 
disk commands, you can rearrange your directory at will. 
For example, if the first program in your directory is Old- 
first, and the one you want to move there is Newfirst, here 
is the procedure to follow: 

1. Use the Rename command to rename Oldfirst, using 
a temporary name like Tempi. 

2. Use the Copy command to copy Tempi as OldJlrst. 
Tills ])uis a properly named Oldfirst somewhere other 
than in the first directory position. At this point, the first 
position is still field by Tempi, 

3. Use the Scratdi command to eliminate 'f em[}l from 
the directory. This vacates the first directoi-y position; it will 
be filled by the next directory entry added to the disk. 

4. Rename Newfirst, using something like f ecupS. 

5. Copy 'femp2 as Newfirst. This puts Newfirst in the 
first directory position, which was vacated when you 
scratched Tempi. 

6. Scratch TenipS. 

Here is the complete syntax for accomplishing the swap: 

OPEN 15.8,15 

PRINCE 1 5, "RENAME0:TEMPl=OIJ>nRST 

PRINl#lr),"C:<.)PY();OLDK[RH'l' = TEMP J" 

PRINl'tf 1 5,"SCRAlC;i [():'CEMP 1 " 

PRINTS 15,"RENAME(l:rEMP2 = NEW1''IRST' 

PRIN'[#15,"COPY();NEWFIRST = TEMP2" 

PRINTS 15,"SCRATCH0:TEMP2" 

CLOSE15 

Dt>n't forget that l*liINT# must be entered as one word, 
with no embedded spaces. 

If you use the DOS wedge or another utility that pro- 
vides simplified commands, those commands can make 
your progi-am-swapping even easier. If you plan a lot of 
swapping, you can write a simple program to do it. 

Louis F. Sander 
Pittsburgh, PA 

Disk Name Changer — This program, which you can use 
on any Commodtire computer, lets you change the name 
of a disk without reformatting it or losing any files. Make 
absolutely certain you type it in correctly, since it modifies 
the directory- header block, and program errors could cor- 
rupt the disk irreparably. Lines 200-2 1 are the ones that 



write to the disk, so you should check them with extraor- 
dinary care. Also, SP$ in line 100 should contain exactly 
16 spaces. 

Ii(i0 PRINT"{SHFT CLR} MAGIC DISKNAME CHANGER 
- LUKE MESTER{CRSR DN) " : SP$=" { 1 6 SPACE 
s}" 
110 PRINT" INSERT DISK TO BE CHANGED," 
120 PRINT"THEN PRESS 'D' TO CONTINUE." 
130 GETA5:IFA5<>"D"THEN1 30 
140 OPEN15,8,15,"I0":OPEN2,8,2,"^" 
150 PRINT#15,"U1 :2, 0,18,0" 
160 PRINT,^15,"B-P:2,144" 
170 FORJ = 0TO15:GETA'2,A$:D$ = D$■^A$:NEXT 
175 PRINT" fCRSR DN)QLD NAME: "rD$:PRINT 
180 INPUT"NEW NAME"; DNS :IFDN$=""THENEND 
190 DNS=LEFT${DNS+SPS,16) 
200 PRINTjS/1 5 , "B-P : 2,144": PRINT#2 , DN$ ; 
210 PRINT/!f15,"U2:2,0,18,0":CLOSE2 
220 IHPtJTjif15,A,BS:PRINTBS 
23^ PRINT#15,"10":CLGSE15 

Luke Mester 
CoUiers, WV 

Disk rescue tab — Has one of your disks ever warped after 
a lengthy period of use, making it difficult to remove from 
your drive? If it's a copy-protected master disk, the situa- 
tion is very uncomfortable. 

To remove a warped disk more easily, put the disk into 
your drive, making a mark where its top edge extends 
through the from of the cabinet. Remove the disk, locate 
the mark and place a label or piece of tape diere, folded 
to form a protruding tab. You can then use the tab to 
extract the disk when it gets stuck. Such a tab also makes 
your disk more visible in its box, so it's easy to find when 
you need it. 

Mike Rogalski 
Pasadena, CA 



Filename extensions — Do you wonder why some people 
end filenames with a period and three letters? Music file- 
names, for example, commonly end in .MUS, while files 
for downloading often have names ending in .IMG, or 
something similar. 

The practice is common in computers using disk oper- 
ating systems like CP/M and IBM's PC-DOS. Filenames in 
these operating systems are limited to eight characters, 
compared to Cotnmodore's 16, In addition to its name, 
such a file can have an optional "extension" of up to three 
characters, separated from the filename by a period. 

When the operating system lists such a file in a directoi^y, 
it uses spaces to pad the filename to eight characters, then 
it prints another space and the extension. When searching 
for files, it treats the extensions as different from the 
filenames, so you can, for example, search for all files 
whose extension is BAS. This feature makes it useful to 
group similar files by giving them similar extensions, and 
this is the practice that is .sometimes carried over into 
Commodore work. 

But in Commodore's DOS, of cour.se, there's no such 
thing as a separate extension. You can't search on it, and, 
because of the 16-character limit for filenames, you don't 
really need it. In fact, if you want to emulate such an 
extension, it's best to put it at the beginning o( ihe filename, 



104 / RUN SfEOAL ISSUE IM 



M 



where it can be searched for by using the wild-card char- 
acters. 

So, if you're tempted to tack a period and three letters 
onto the end of your filenames, try to resist the temptation. 
If you can't resist it, try putting them up front where you 
Clin use them. 

Lucy S. Terrier 
Alton, IL 



File finder — This routine can be used to check for the 
presence of a given file on the disk and to determine 
whether the disk is write^protected. It's useful to make such 
checks before attempting to manipulate a potentially un- 
available file. 

If the file named Filename is not on tlie disk, line 130 will 
give an error 62, File Not Found. If the disk is write-pro- 
tected, that line will give an enor 26, Write Protect On, 

If you don't need to check for write protection, replace 
the Open statement's A (for append) with an R (for read), 

100 REM FILE FINDEP - LOUIS F. SAtJDER 
1 10 OPEN2,8,2,"FILENAHE,P,A":CLOSE2 
120 0PEN1 5,8,1 5:INPUT#15,A,B$:CL0SE15 
130 IFA>1THENPRINTA,B$:END 
140 PRINT"THE FILE IS ON THE DISK" 

Louis F. Sander 
Pittsburgh, PA 

Easier disk commands — Not everyone is aware of this easy 

way of sending disk commands. Instead of something like 

OPEN 15,8,15 : 1'RINT#15,"N0:NAME.ID" 

it's possible to use 

OPFJ>I 15,8,15,"N0:NAME,II)" 

This works because the Open command's syntax allows 
text to be included after the secondary address, as long as 
it is separated from the address by a comma. In a slightly 
different way, you can use 

OPEN 4,4 ; CMD4,"PROGRAM NAME" : LIST 

to gel labcLs on your printed program listings. 

Hillmon W. Ancrum 
Orangeburg, SC 

Last-disk effort — If one of your disks containing valuable 
data has been rendered useless because of a warped jacket 
or spilt liquid, don't despair — all may not be lost. 

Carefully slit open the wrecked protective jacket and 
remove the good Mylar disk. Be sure not to touch the 
recording surface. 

Scrounge up an old disk that has a good jacket. Remove 
the disk from this jacket and insert the disk to be salvaged. 
Now, resecure the jacket with tape. Then, 117 initializing 
the disk {not formatting). If you can't initialize it, turn the 
disk oven you may have put the wrong side up. If it ini- 
tializes, make a backup copy immediately and you're all 
set. If it still doesn't initialize, at least you tried. 

Joseph R. Chametski 
Dallas, PA 



Easy on, easy off— As most 1 541 or 1 571 disk drive users 
know', the on/off switch at the back of the drive is incon- 
veniently located. Fortunately, you can solve this problem 
by connecting the drive to a remote-control extension 
cord, available in hardware stores for a!)OLit $5. 

The cord has its own on/off switch. Plug the extension 
cord into a power source, plug the drive's power cord into 
the extension cord, depre.ss the drive's switch and leave it 
in the on position. Thereafter, control the drive's power 
with the extension cord's switch. It's inexpensive, easy 10 
hook up, and it really works, 

William Lees 
San Francisco, CA 

1571 disk drive magic— Did you know your 1571 can for- 
mat and access both sides of a disk with a C-64 or C-128 
in C-64 mode? Mere's the magical command: 

OPEN 15,8,L5:PR[N'r# 15, "U0>Mr':C[.OSl'.ir) 

If you format a disk after sending this command, the 
1571 will format both sides and give you 1328 blocks of 
storage per disk. 

If you cannot access a disk that was formatted on a third- 
party disk drive, you can return to a single-sided mode 
with this connnand: 

OPEN 15,8,I5:PR1NT# 15,"U0>M0":t;LOSE15 

Trent Bills 
Lincoln, NE 

Keeping track of disk commands— If you have a C- 1 28, you 
now have the problem of remembering two sets of disk 
commands. 

1 keep a list of C-R4 disk commands on one side of a 
5x8 index card and the C-128 list on the other side. Then 
I prop up the card between my 128's vent panel and 
monitor stand. Thus, both sets of disk connnands arc read- 
ily visible. 

Eric Pickell 
Palatine, IL 

SFD-IOOl disk renamer— Luke M ester's Disk Name Chan- 
ger (see p. 104) is a useful progi-am, and I've made these 
line changes so that owners of SFD-1001 disk drives can 
change disk names, too. 

1^ REM SFD 1001 RENAMER - DAVE ENGLISH 

150 PRINT^/15,"U1 :2, 0,39,0" 

160 PRINTiyi5,"B-P:2,6" 

200 PRlNlvyi5,"B-P:2,6":PRINT#2,DN$; 

21 PRINT#15,"U2:2,0,39,(S":CLOSE2 

Also, a user-friendly code should give you the opportu- 
nity to check and correct input. Here's a code for that 
check. It works with any drive. 

174 : 

191 PRINT"VERIFY; "DN$ 

192 PRINT"OK (Y/N) ?" 

193 GETAS:IFA$<>"N"AND AS " "y"GOT01 93 

194 IFA$="N"GOT0175 

Dave English 
Orange, CA 



RUN SPEOAl ISSUE 1387 / 105 



M 



I 



Quick directory C-64— Ihc Safe Directory program Pokes 
a short machine huiguage routine into memory-, beguining 
at location 8'M). 'Ihc routine reads and displays the direc- 
tory of the current disk, without harming a Basic progiam. 
To iisi' it, type SYS H'M) and press return. The directory 
will then he disphiyed as it is read (Vom tlic disk. Press the 
shift or shift/lock key to pause the output, and the run/ 
stop key to stop output. 

Append the Basic loader to the end of your routine, and 
use the Gosub command to access it. 

10 PRIt^T" (SliFT CLHIQUICK DIRECTORY C-64 BY 

D. MORRIS 
15 FORA=830TO945: READS: POKEA,B:C=C+B:NEXT 
2S) IFC<>ie387T[lENPRINT:PRINT"ERROR IN DATA" 

:STOP 
25 PRINT:PRINT"'SYS830' TO ACTIVATE - ' SHIF 

T' TO PAUSE" 
30 SYS830 
35 DATA1 69, 2, 162, 176, 160, 3, 32, 189, 255, 16 9,1 

,162,8,160,0,32,186,255,32,192 
40 DATA255,24,162, 1, 32, 198, 255, 176, 75, 32, 20 

7,255,32,207,255,169,13,32,210,255 
45 DATA3 2,207,255, 32,207,255,32,207,255,133 

,252, 32, 207, 265, 133, 251, 165, 144 
50 DATA208,4 4,165,251 ,166,252,32,205,189,16 

9,32,32,210,255,32,207,255,32,210 
55 DATA255,17 4,141 ,2,208,251 ,166,145,224,12 

7,240,15,32,207,255,105,0,208,235 
50 DATA1 69,13,32, 2 10, 255, 76, 102, 3, 2 4, 169,1 , 

32,195,255,32,204,255,96,36,48 

David W, Morris 
At more, AL 



Protect your writes— It's always a good idea to use write 
protects to safeguard the information on your disks, and 
when they wear oiu, black electrical tape is an inexpensive 
icplacenieni. Use tape that's from onchalf to three-quar- 
ters of an inch wide, and cut it about an inch long. It works 
gi^eat! 

John Chong 
Syracuse, NV 

Easier loading 1571— When miming unprotected (M28 
programs in a L'iVl disk drive, you may have noticed that 
the disk drive sometimes has trouble finding the program 
you want to run. 'I'he problem is that in 128 mode, die 
1571 has difficulty reading programs written in single- 
sided format. If you make a copy of your unprotected 
software onto a I, 571 double-sided format, you will have 
nutcli smoother and faster loads. This works great with the 
autobooiers, too. fry copying your 1571 test/dcmo disk 
using the double-sided fortiiat and watch how fast DOS 
shell loads. 

Jay H. Graff 
Bossier City, LA 

Cleaning heads — Here's a good way to clean disk drive 
heads — with a C-128! First, insert a cleaning disk into the 
drive and lorn on the computer. Then hold down the reset 
switch for 'M) seconds — the job's done! 

Unknown contributor 
Bayfield, WI 



Easier filenames — It is comiuon practice to save long pro- 
grams several times while typing them in. Each version is 
usually natTied "program^". Rather than add the number 
to the end of the name, try adding it to the beginning (e.g., 
"4progratn"). By doing so, you can load the file with the 
number and first few characters followed by a w'ild card 
(e.g., "4pro*") instead of typing the entire name and die 
number. 

Save the final version without a number in it, and you 
can scratch all old versions with "SO:?program". 

Jason Lee 
Macomb, OK 



Double-sided disaster— 1 wonder how many other new 
1571 owners have erased a full side of perfectly good 
progiams. This was a result of attempting to format the 
"fiip side" using the Format Disk program included on the 
1571 test/demo disk. The pioblem is, this program only 
formats disks as tloublesided and thus erases whatever is 
on both sides of ibe disk. 

The Format Disk program can be made safer and more 
versatile by deleting line 90 and adding the following four 
linesr 

1 REM DOUBLE SIDE 1571 TEST/DEMO PROGRAM EN 
HANCEMENT - CHRIS MORRY 

141 INPUT"SINGLE (S) OR DOUBLE (D) SIDED" ;S 
S$ 

142 IF SS$<>"D"THEN OPEN 1 5 ,8, 1 5, "UO)M0" :CL 
OSE16:GOTO150 

1 4 3 0PEN1 5,8,15, "U0 >M1 " : CL0SE1 5 
269 QPEN1 5 ,8,15, "U0>M1 " :CL0SE1 5 

These minor changes let you choose single- or double- 
sided formats. Line 269 restores your 1541 to a 1571. 

Criss Morry 
Moncton, N.B., Canada 



Data on side 2 of the 1571— The 1571 double-sided drive 
allows iwice as nuicb storage as a single-sided 1541 disk. 
However, once you have reached ()f)4 or fewer blocks free, 
data saves to the disk arc (juitc slow, it appears diat the 
drive writes a block, then checks for the next free block, 
writes another block, and so on. If you have several long 
programs on the first side, you can reduce these delays by 
copying the long programs to the back of the disk and 
then scratching the original version. The data files will 
now be written, at normal speed, to the empty blocks on 
the first side of the disk. 

Riehard D. Young 
Greenwood, N.S., Canada 



One for all — I do all my programming on one disk because 
of so much saving, loading and saving again. This can be 
hard on a disk, so it's wise to verify the program after 
saving it. When the program is finished, 1 transfer it to die 
disk in my normal software library. This habit keeps my 
disks in good condition. 

Mike Dryja 
Washington, MI 



1 06 / RUN iil'ECIAL ISSUE IJS7 



M 



Back-side bonus — While using a C-64 word processor, I 
found thai my data disk was getting full. After trying the 
mode-selection program found in the 1571 manual, which 
enables you to lock the drive into 1571 Double-sided mode, 
I found that loading the word processor would unlock the 
drive, or, in some cases, refuse to load. To overcome this, 
load and nin die word processor, go into Disk mode and 
type U0>M1. The word processor will now be able to 
access the back side of the disk, provided that it has been 
formatted as a double-sided disk. 

This trick works on Easy Script, RUN Script and Font- 
master U. It will probably work with any word processor 
that allows you to send commands to your disk drive. 

Barry Estes 
Westbrook, ME 

No-knock loads — Wlien k>ading commercial software, the 
1541 disk drive often makes a loud chattering noise. This 
is usually cau.sed by copy-protecting. Over a period of time 
this may cause the drive to go out of alignment. 

If entered in Direct mode before you load die commercial 
program, the following one-line program usually stops this 
from occuning. This line is about 90% effective, but in cases 
where it does not work, it will not interfere with the proper 
loading of the commercial program. 

REM NO KNOCK - U US SELL MCCRORY 

1 0PEN1 ,8,l!i:PRINTj^l , "M-W"CHR$ ( 1 06 )CHR$ ( )C 
HR$(1 )CHR${1 33 1 :CLOSE1 

Russell McCrory 
GaUatin, TN 



Multiple scratch — When you want to scratch more that one 

fde from your disk, tiy this: 

OPEN15,8,t5,"S{).rilel,rie2,elc.":Ctr>SE15 {return} (for Basic 2.0) 
SCRATCH "rilcl,rilc2,ctc" {rclurn} (for C-128 or Plus/4) 

All specified files will be scratched with one command. 

Richard Penn 
Montreal, Quebec, Canada 

last resort — If you have an important Fde that's been dam- 
aged by the Save wiUi Replace command, it can be Fixed. 
Save with Replace saves the new program before scratch- 
ing (he old [jrogram and then changes the pointers. So all 
you need lo do to rescue that file is tt> Fmd its first block 
by using a utility such as Disk Doctor (see RUN, \une 1985). 
Then restore the pointers in the directory to that First 
block. Good luck. 

James Evans 
Hiuneston, lA 



Disk locker — Once a disk is locked, no information can be 
w'ritten to or scratched from it, unless you use the Format 
command, whicli, unfortunately, completely erases a 
locked disk. My program lets you lock or unlock disks in 
the 1541 or 1571 disk drive. Unlocking a disk returns it to 
its normal stale, allowing you to write and scratch files 
again. 



$ REM UN/LOCK DISKS-ERIC DARGAN 
10 INPUT "(SHFT CLR}{CTRL 9}L{CTRL 01OCK OR 
{CTRL 9}U(CTRL }NLOCK" ; A$ : A$=LEFT$ ( A$, 

1) 
20 OPEN15,8,15,"l0":OPEN2,8,2,"(i(" 
30 PRINTS! 5, "Ul :"2;0!l8;0:PRINT)i(15,"B-P:"2; 

2 
40 LK=66:IFA$="U"THENLK=65 
50 PRINT|i/2,CHR$(LK) ; : PRINT^I 5, "U2 : "2 ; 0; 1 8; 



60 PRINTi^l 5,"I0" :CL0SE2:CL0SE1 5 



6. Joysticks AND Ports 



Eric B. Dargan 
Sumter, SC 



Commodore 1350 mighty mouse joystick — The only pro- 
grams designed so far for the Commodore's new mouse 
are the Jane series of applications software. But don't fret! 
'Fhe rapid rtKleiit performs i]uite capably as a joystick (the 
left button acts as a Fire-bution) on several C-64 favorites 
socli as Doodle!, Micro Illustrator, the Graphic Editor in 
Tiie Prim Shop and even on GFOS. 

It may take a while to become accustomed to using the 
mouse, but once you get the hang of it, you won't want to 
go back to using a joystick for these programs. Also try the 
mouse on otiier programs that require a joystick. 

Warren D. Lee 
Dayton, OH 

Mouse tracks — The 1350 Mouse works best on a clean, 
smooth surface. Unfortunately, computer desks aren't al- 
ways clean or smooth. Rather than buy an expensive pad 
for your mouse to rini on, mouse out a plain plastic place- 
mat for about a dollar or liberate one from the kitchen. 
It's larger than most moii.se pads, st> you don't have to pick 
up your mouse as often. It can be easily cut to match the 
workspace around your computer, and it's easy to wash. 

Warren D. Lee 
Dayton, OH 

7. KE'YBOARD/KE'YBOARDING 

Shifted run/stop — On most Commodore computers, when 
you press these keys in combination, you're prompted with 
"Press Play on I'ape," (The computer is tiying to load and 
run the next program on the cassette.) If you hit the keys 
by mistake (not an uncommon event), you can correct your 
error by pressing the stop key. 

On the CM 28, however, |)ressing shifted run/stop loads 
and runs the First program on your disk, widiout pausing 
for additional action. If you accidentally hit those keys, 
whatever is in memory will immediately be overwritten by 
the new progiam coining in from disk! If the overwritten 
program was a valuable one you have not yet saved, you'll 
be annoyed, to .say the least. 

You can guard against this disaster by placing a sequen- 
tial Flic first on your disk. Since the computer cannot load 
it, it can't ovenvrite any programs. You can put such a file 
on a newly formatted disk by executing this line: 

OPEN 2,8,2,"INSURANCK.S,W" : Cl£)SF,2 



RUN .SPECIAI. ISSUE 1967 / 107 



M 



Another, less aiitoniiitic, way of having this insurance is 
to leave your disk's dnor open. 

Bruce Jaeger 
St. Paul, MN 

Restore key tip— If you've experienced erratic operation 
when using the stop/restore combination, you've got 
plenty of company. Don't call the repairman, though, be- 
cause there's nothing wrong with your computer. To work 
properly, the circuitry that monitors the restore key must 
see a sharp and rapiti change in that key's status. So, if 
restore is pressed gently — in the manner of the other 
keys — the monitoring circuit often misses the event. The 
solution is to ahvays use the following keyboard technique: 
Press the stop key and hold it, just as though you were 
using it to shift a letter key. While stop is firmly depressed, 
give the re,store key one sharp tap, as though your finger 
were a woodpecker's beak, 

Mary Haver 
Wood Islands, PEI, Canada 

Easy-fingered loading — It's common practice to rename 
frec[uently used jirograms with one-character names, to 
minimize the aiuouiu of typing necessary to load them. 
It's even better when the new name is a .single shifted char- 
acter, such as shilted W. With .such names, you can press 
the shift key immediately after the L in the abbreviated 
Load command, and not release it until the comma before 
the 8 for the disk drive number. This eliminates the coor- 
dinated fingering required with other sorts of filenames. 
It's not much, but it sure feels better! 

David A. Hooyer 
Bangkok, Thailand 

Ei|[Onomic urge? — Try raising the rear of your computer 
about an inch off the desk. For me, this vasdy improves 
the keyboard angle, nuiking typing much less fatiguing. It 
also improves the air fiow through the computer. 

Bertram Schulman 
Valley Stream, NY 



modem or a more expensive 1200-baud unit. I worked at 
300 baud for over a year, then upgraded to 1200. In my 
opinion, the speed and convenience of 1200 baud make 
the faster modem a significantly better in vestment for most 
people. 

Although 'lOO-baud tmits are tanializingly inexpensive, 
they are s-l-o-w, and their slowness diminishes the value of 
the on-line experience. In many cases, operations that are 
great at 1200 baud are tedious and unpleasant at 300. If 
you start out at 300 baud, you might wrongly decide that 
on-line work is not your cup of tea. 

Some on-line sei-vices (Quaniuml.ink, for example) have 
uniform rates, regardless of the speed of your modem. In 
those cases, your coiuiect-lime savings can quickly offset 
the additional purchase cost of a 1200-baiid modem. (IjCt's 
say you're downloading an interesting program. What 
takes ten minutes at 1200 baud takes 40 minutes at 300. 
Compare the savings in money and personal time, and 
you'll start to get the picture.) Also, if one day you want to 
sell your modem, you'll Hnd moreiiuyers and better prices 
if you're offering a t2t)()-baud imit. 

When choosing your modem, you should also consider 
how it connects to the telephone system. Most modems 
connect directly to the phone line via a modular connec- 
tor; modular cables and connectors are readily available 
at Radio Shack and elsewhere. Some luodems connect, not 
lo the phone line, but to the handset, via a smaller modular 
connector. If your telephone doesn't use such a connector 
(and many don't), you can't use these modems widi it at 
all. Also, handsel coimeciors and cables can be hard or 
impossible to find in stores. 

The final means of connection, seldom seen these days, 
is acoustic coupling. Here, there's no wiring at all between 
the modem and the phone line. Instead, the telephone 
hand.set is placed in a cradle with rubber cups, and the 
tones are coupled acoustically. This is the least desirable 
method of connecting your modem. 

The bottom line is this: Unless you can't afford it, start 
off with a 1 200-baud modem. And, regardless of which 
speed you choose, look for a modem that connects directly 
to the phone line, rather than to the handset. 

Loui.s F. Sander 
Pittsburgh, PA 



Keyboard lock/unlock — Sometimes, usually when garbage 
has been printed to the screen, the shifted Commodore 
key won't switch your computer between Text and Graph- 
ics modes, {Naturally this always happens when you're in 
the mode you don't want to be in.) 

You can correct the situation by holding down the 
GIRL key and pressing I. This is equivalent to printing 
a CHRS(9), the character that unlocks the mode switch. 
You can lock the mode as well, by pressing CTRL-H, 
which is the same as printing CHR$(8). 

Scott Duncan 
Superior, N£ 

8. Modems/Telecommunications 

Modem buyer's guide— Unless you've used both of them 
at length, it's hard to know whether to buy a 300-baud 



Modem cable tip — I usetl to connect my modem by discon- 
necting the telephone handset cable at the handset, then 
plugging it iiuo the modem. It was always hard to get to 
the modern, which was out of the way behind my computer. 
To make things easier, I bought a coiled handset cord, 
which I now leave permanently connected to my modem. 
When the time comes to connect, 1 unplug the handset 
from the phone base, then plug in my new modem cord. 
The phone is more mobile and accessible than the modem. 

Michael T. Martin 
Phoenix, AZ 

Modem modification— Some bulletin board systems are 
very difficult to connect to, since they have far more callers 
than available lines. Many terminal program.s, when they 
encounter a busy signal, will keep redialing undl they get 
through. This is great, but usually you, the operator, must 



1 08 / RUN Sl'KtlAt. ISSL'H IM 



M 



keep your eye on things so you know when the connection 
has been made. 

You can free yourself for other tasks if you wire a switch 
and a small piezoelectric buzzer (Radio Shack #273'060) 
across the modem's carricrdctect LED. Close the switch 
before dialing, and when the LED finally goes on, your 
buzzer will start to buzz. Stop the noise by opening the 
switch, and proceed with your telecommunicating, 

C. A. F. 
Throop, PA 

300-baud speedup — If you don't have a 1200-baud modem, 
here's a little consolation. It doesn't work with all modems 
or all terminal software, but when it does, it increases your 
modem speed to 345 baud, a 15 percent increase. (At these 
slow speeds, ever)' little bit counts!) The trick is to add this 
line to your terminal program after tlie modem's Open 
statement: 

POKE 665,240 : POKE 666, It 

The terminal program, of course, has to be written in Basic. 

Greg Long 
Hillsboro, OR 

Modem hearing aid — Sometimes you make a modem call 
and fail to get a carrier. Since most modems don't lei you 
listen in on the line, you can't tell if you're getting a busy 
signal, a ring with no answer or something else. Worse, 
modems with the auto-redial feature can be repeatedly 
answered by an angry human voice. 

To hear what your modem is receiving, use a telephone 
pickup such as the Radio Shack #^4-533, which you can 
plug into any handy amplifier. Move the pickup around 
on the telephone or modem until you get a useful signal. 

Many portable tape recorders can act as amplifiers for 
this purpose, if you plug earphones into the earphone 
jack, put a blank tape in the recorder and press the play 
and record buttons. The pause button will often stop the 
tape, but not the amplification. 

Craig Edward Given 
Chattanooga, TN 

Turbo dial — Auto-dial modem owners know how agoniz- 
ingly slow the auto-dial process is, especially when using 
pulse dialing. If your telephone has speed dialing, how- 
ever, you can speed up the process immensely. (Speed 
dialing lets you dial commonly called numbers by dialing 
one or two digits.) Just establish your QuantumLink or 
BBS number as one of your speed dialing numbers, then 
set your terminal program to call it. Now that your com- 
puter has only one or two digits to dial, things like dialing 
and redialing will proceed more rapidly. 

Craig Edward Given 
Chattanooga, TN 

I^ssword maker — Our bulletin board needed passwords 
that were unique and easy to remember. We wrote the 
accompanying program to create easily pronounceable, 



eight-letter passwords. If you need a printout, you can alter 
the program to accomplish this. 

The words are far from English, but they could easily 
have come from a tribal tropical paradise. Some conso- 
nants were omitted from B$ to make the words easier to 
pronounce. 
100 PRINT" {SHFT CLR} MAGIC PASSWORDS - BUCK 

SOMMERKAMP{CRSR DN ) " 
110 AS="AEIOU":BS="BCDFGHKLMNPRSTWZ":PWS="" 

:K=RND( -TI> 
120 F0RJ=1T04 

130 K=INT( 5*RND( 1 )+1 ) : VS=MIDS ( A$ ,K , 1 ) 
140 L=INT(16*RND(1 ) + 1 ) : CS = !'1ID$ ( BS , L, 1 ) 
150 PW$ = PW$ + C$-fV$ 
160 NEXT 
170 PRINTPWS, 
180 GOTO110 

Buck Sommerkamp 
Warrcnsburg, MO 

1670 modem auto-answer— An annoying quirk of the 1670 
modem is that it will answer all incoming calls when the 
computer is on. This makes it hard on your friends' ears 
when they try to call you. 

A solution is to buy the Ring Controller from Radio 
Shack (part #43-127) for S7,95. It's a replacement modem 
cord that connects the "line" connection of the modem 
with the wall jack. The cord has a switch box that lets you 
switch off the modem so that it won't detect the phone's 
ring. Be sure to plug the shorter end of this new cord into 
the modem and the longer end into the wall. Otherwise, 
it won't work. 

David Dumas 
Grovetown, GA 

Terminal garbage— In calling 1200-baud bulletin boards, I 
was usually plagued with all sorts of garbage when com- 
municating with a system that supported the higher speed. 
I was always told that it was "line noise," and that there 
was not much I could do about it. I discovered that the 
problem only occurred during a long scroll, such as a main 
menu or a long message. The conclusion? Well, to put it 
simply, in a Commodore there is a memory buffer in the 
channel the modem uses. At 300 baud, most programs can 
empty this buffer as fast as it's filled. At 1200 baud you're 
communicating four times as fast. If your terminal pro- 
gram isn't emptying the buffer as fast as it's filling up, it 
eventually overflow.s, and garbage results. My solution is 
to use a terminal program that runs fast enough to handle 
the speed. Sonic programs I recommend are: VIP Term 
XI., AutoCom III and a public domain program by Chris 
Kaiser called XMoBuf.7.3L 

James R, Carson 
The Woodlands, TX 

Text file processor — The majority of terminal software 
programs give you a screen editor that you can use to 
generate a text file prior to uploading it. These editors 
usually provide rudimentary text manipulation, which is 
awkward at best. 

Word processors are a better choice, but many don't use 



RUN SPECIAL ISSUE 1987 / 1 09 



M 



PET.'^CII to save their text flies. Instead, they use a 
method called compressed binary. Trying to dump one of 
these fries into a terminal bufTer will result in a screen full 
of garbage. 

Before ynu scraj) your familiar friend, check the main 
directory of the disk for a program entitled Convert or 
something similar. My Word Writer word processor has 
such a file, even though no meniion of it is made in the 
literature. Load and run the program from Basic and fol- 
loiv the prompts. 

You might also be able to write the file to disk as a 
secjueiuial file. Wilh RUN .Script, you can do this with the 
¥1 and W (for write) keys. True ASCII should be off for 
this procedure. 

If all else fails, you can contact the software company. 
They might be able to provide a converter at little or 
no cost, 

Guy B, Young II 
Richmond, VA 



9. Printers/Printer Paper 

Gemini lOX paper sensor— You can disable this sensor by 
executing the following cormnand: 

OPEN 4.4 : 1'KINT#'1,C1IR$(27);"8" : CUJSE 4 



Moien Jawaid Zobairi 
Riyadh, Saudi Arabia 



I526/NfPS-802 print troubles— Sometimes the output from 
this printer contains maddening gaps where noUiing is 
primed, or where only the bottoms of the letters show up. 
The problem ari.ws when the ribbon gets pulled out of 
position by die printhead. 

It's easily solved by increasing the tension where the 
ribbon emerges from its cartridge, I roll a strip of ^-inch- 
wide paper into a %■ X '/j- X Ji-inch pad, then place it as a 
brake shoe on the horn at the right side of the ribbon 
cartridge. 1 wrap it snugly with tape, and my troubles are 
gone for the life of the ribbon. 

In case you caimot visualize it, we have a ribbon sand- 
wich wrapped in tape, 'f he ribbon is squeezed between the 
paper wad and the plastic horn of the cartridge, while the 
tape wraps everything up and keeps the pressure on. An 
alternative is to tape the paper wad to the silver head- 
position lever. If it's positioned jitst right, it applies pres- 
sure at the appropriate point. 

Quinze Vingtetsix 
West Chester, PA 



Okimate money-saver- After extensive use, this printer 
iiegins to print illegibly, and you reach for your manual 
to find the order form for a new print head. If you're 
smart, you'll first reach for a cotton swab and some alcohol. 
Use them to clean the black part of the print head, and 
you can probably hold off on the new one, 

Joe Buckshaw 
Holbrook, NY 



Star SG-10 special mode— This popular printer has an 
undocumented mode in which it prints even-thing sent to 
it as hex digits, much like a machine language monitor. 
The mode is useful in debugging faulty print routines, 
since it lets you see exactly what the printer is receiving, 
control sequences and all. 

To activate the Hex mode, turn your printer off, then 
press both the formfeed (}']■') and linefeed (l.F) buttons. 
Turn the power on, keeping these buttons pressed until 
the printer's beeper sounds. Release the buttons, and your 
printer will be in Hex mode until it is either reinitialized 
or powered down. 

James Judd 
BaUwin, MO 



Musical staff maker — This prograin prints eight sets of 
musical staff lines on a standarfl sheet of paper. My daugh- 
ter uses it for music class, and I use it for planning com- 
puter music. Making your music paper is tmicb less 
expensive than buying it, and it's a lot more fun. 

100 REM MAGIC MUSICAL STAFF - M.L.OAKES 

1 1 OPEN4,4:PRINT)!(4:PRINT^4:PRINTf?4 

120 FORJ=1T079:A$=A$+CHR$(164):NEXT 

130 F0RK=1T08 

140 FORL=1T05:PRINT//4,A$:NEXTL 

150 PRIMT^4:PRINT#4 

160 NEXTK 

170 CLOSE 4 

Melvin L. Oakes 
Louisville, KY 



Printer grease— After I ran nearly 7000 sheets of paper 
through my Panasonic KXP-109I printer, the paper bail 
pivot arms on the square tractor drive shaft had had a lot 
of wear and started jmnping, causing the platen to jam. 
Replacing the damaged parts can be expensive. Apply a 
dab of white grease such as Lubriplatc to the pivot arms 
where the square shaft pa.sses through them. If I'd done 
this when I purchased my printer, Td've saved myself a lot 
of grief. 

Jay H. Graff 
Bossier City, LA 



New Okimate 10 manual— If you bought one of the first 
Okimate 10 color printers, here's good news: The manu- 
facturer has revised the original operator's manual. 

Information that was confusing is much clearer in the 
new edition, and details for using some popular word 
processors have been added. 

To determine which version of Okimate 10 you have, 
look at the manual's cover. The original manual is called 
Printer Handbook and has a photograph on the cover. The 
new manual has been retitled Printer Manual and has a 
drawing on the cover. 

I called Okidata's toll-free number (I-800-OKIDATA), 
and ihey mailed the S5 updated version to me. 

C. Finke 
Evansville, IN 



110/ RUN SPECIAI. ISSUE I98T 



M 



Faster hi-res dumps— If you use a Cardco + G or G-Wiz 

interface, you may be experiencing some printing delays. 
The print buffer is so small on these interfaces that they 
are not able to quickly do hi-res printing. This can make 
printing with programs such as The Newsroom or Print 
Shop very time-consuming. A solution (other than a new 
interface) is a new ROM chip. Romeo (PO Box 248, Derby, 
KS 67037; 316-788-6985) has replacement ROM chips for 
the Cardco interfaces at a fraction of the cost of a new 
interface. The chips are simple to install and will speed 
printing by 1500%\ I'm now using a replacement ROM 
chip for my printer interface, and it has put new life into 
my printing. 

Jay Knott 
Huntington Beach, CA 

Lo-Res screen dumps on the 1526— If you're having prob- 
lems making low-resolution screen dumps with your 1526, 
here's a simple solution. With normal line spacing, there's 
a gap after each line printed. The space-setting feature 
controls the number of steps between lines of print. The 
default is six lines per inch, but that can be changed with 
this line: 

OPEN6,4,6:PRINT#f>,CHR${21):CLOSE6 

A value of 21 reduces the number of steps sufficiently 
to remove the gap between lines. The printer will remain 
in this step-reduced state until it is reset or turned off 

Cameron E. Currie 
Winnipeg, Manitoba, Canada 

P^per chase — Many first-time printer owners are confused 
over what type of paper to buy. "Word processing" paper 
is of thicker bond, while "data processing" means the 
paper is thinner, since it's used in situations where a lot 
of paper is consumed. 

Price also generally reflects the quality of paper. The 
more expensive paper is usually better quality or has extra 
features such as "laser perf," which allows a smoother edge 
when the tractors arc removed. First-time users should 
probably select a paper that is neither too thin nor too 
extravagant. After a while, you'll discover which paper 
suits your purposes best. 

Mike Dryja 
Washington, MI 

The Plus 5 connection — Many printer interfaces have a 
special plug that connects to the cassette port in order to 
get + 5 volts for the interface power. To be polite, this 
arrangement stinks! Most printers oiler + 5 volts at the 
parallel port, so it's possible to slighdy modify your inter- 
face to draw the needed power directly from the printer. 
Just solder a jumper wire from the proper pin to the -i- 5- 
volt printed circuit on the interface. For my SG-10 and 
Xetec interface, the entire project took about 20 minutes. 

Scott H. Johnson 
Traverse City, MI 

Mini floppy labels — You can make tiny directory labels to 



glue right on your disks if you use superscripts or sub- 
scripts in Condensed mode to print your directories. Be 
sure to reduce the linefeed spacing to about half You 
might also want to use Compressed pitch. 

A directory with ten to 12 files will be the same size as 
the brand label already on the disk. 

Bob Woodson 
Carmichael, CA 



SP-IOOOVC and WordPro fix— Using the Seikosha SP- 
lOOOVC printer with WordPro 3 Plus/64 word processor 
prevents you from accessing the printer's special features, 
like underline or double strike. 

Hattori Seiko Computer Peripherals now has a replace- 
ment ROM chip to remedy this problem. The chip is avail- 
able by calling 1-800-422.7768. 

The new ROM is easily installed with no speci.il tools. 

Bob Woodson 
Carmichael, CA 



10. Video/ Audio Devices 

Better video display— Don't forget your monitor's video 
controls, since their proper adjustment can make an amaZ' 
ing difference in your picture. When using my word pro- 
cessor, I turn the color control all the way down; by 
removing the color fringe around the letters, it makes 
things much easier on the eyes. 

Lucy S, Terrier 
Alton, XL 



Color/no-color monitor— Some software locks the screen 
into its own colors, which are not necessarily legible or 
attractive. If you use the Commodore 1701 or 1702 mon- 
itor, connected through three wires on the back, there's a 
solution close at hand. Disconnect the chroma cable, and 
your display will appear in black, white and various shades 
of gray. The chroma cable is the one that carries the color 
signals. It plugs into the red-colored jack. 

Michael F. Lehman 
Los Angeles, CA 

Too-small video display— Sometimes the top or bottom 
lines of your screen may not show up on your monitor or 
television. When thai happens, the problem is not in your 
computer, but in the adjustment of your display. Look on 
its front or rear panel for two controls marked "vertical 
height" (or "size") and "vertical linearity." Their names 
may be somewhat different, or they may be abbreviated in 
some way, A few inexpensive sets do not have them at all. 
When you find the controls, first fill your computer 
screen with text or keyboard graphics. Next, adjust the two 
controls so you can see the top and bottom lines, and so 
the lines in between are not distorted. You'll notice that 
the height and linearity controls interact somewhat, af- 
fecting the picture's size and uniformity. The best method 
is to adjust one and then the other, going back and forth 
until your picture is satisfactory. 



RUN SPECIAL ISSUE 1987 /111 



M 



If the controls are on the back panel, you can position 
a mirror so you can see the screen while adjusting them. 

Bernhardt Sandler 
Venice, CA 



mnemonic and assures safe powering piocetkires in our 
computer lab. 

Elaine Buckshaw 
Holbrook, NY 



C-64 Commo-strobe— This program emulates a strobe 
light, which allows you to photogj-aph moving objects that 
you cannot normally see with the naked eye, such as the 
rapidly spinning blades of a ceiling fan. 

When the program prompts you for a delay value, enter 
a number. The larger the luiniber, the longer the time 
between (lashes. 

Pressing I he V key while the program is running will 
flash the light more rapidly, and [iressing S will flash the 
light less rapidly. Pressing P gives you the cunenl flashing 
frequency and will ask you for comments. Pressing C al- 
lows you to reset the delay. 

5 REM C64 STROBE LIGHT 

10 PRINT "{SHFT CLR}":PRINT "{CTRL 4)":0PEN 

3,4 
20 INPUT "DELAY" ;A 
30 POKE 53280, 0:POKE 53281,0 
40 FOR 1=1 TO A:NEXT I 
50 POKE 53280,1 :POKE 53281,1 
60 FOR 1=1 TO A: NEXT I 
70 GET A$:IF A$="" THEN GOTO 30 
80 IF AS="S" THEN A=A+1 
90 IF A$="F" THEN A=A-1 
100 IP A$ = "P" THEN PRINTi¥3, "DELAY- ";A:POKE 

53261 , G:1NPUT "COMMENTS" ;B$ 
110 IF A$ = "P" THEN PRINTA!3,B$ 
120 IF A$="C" THEN INPUT "NEW DELAY" ; A 
300 PRINT "{SHFT CLR]": PRINT "DELAY-" ; A :GOT 

O 30 

Darren Keith Bolding 
Friendswood, TX 



Catch the wave— I had a problem with wavy lines scrolling 
up my monitor screen. 1 discovered that the fluorescent 
light on my computer desk was the culprit. Switching to 
incandescent lights solved the problem. 

Jerald Brown 
Erlanger, KY 

Dust-free screen— I use anti-fog/anti-static spray for eye- 
glasses to clean my monitor screen of dust. Just spray it on 
and wipe it off 

John Nadrowski 
Bayonne, NJ 



11. Miscellaneous Hardware Tips 

Remembering power-up sequences— In our school, all chil- 
dren greet iheir (ionunodore liy saying "My Dear (lom- 
[juter." This reminds them to turn on the moniior (My), 
then the disk drive (Dear) and, finally, the computer (Com- 
puter). When leaving the computer, diey say "Computer, 
Don't Move." This, of course, reminds them to turn every- 
thing off in reverse order. 

A large bulletin board display reminds children of the 



Toolkit tip— A useful tool not usually found in the elec- 
tronic toolbox is the jeweler's saw, available In most craft 
shops. This is something like the more familiar coping saw, 
except it has a finer blade and will cut metal. It can be 
used to modify connectors or cut circuit boards, and it's 
particularly well-suiied for cutting off small screws and 
bolts. I recently used mine to cut a shoulder off a dongle 
so it would fit my new C-128. 

Daniel Morris 
Waynesburg, PA 

Electronics repair — Many failures in the computer, disk 
drive and associated e(}uipment can be attributed to 10 
chips failing when subjected to heat. A quick and fairly 
reliable way to find tlic culprit is to operate the ecjuipment 
until the failure occurs, then to spray eacli chip with com- 
ponent coolant such as Radio Shack #64-2321. Chances 
are good that when you spray the faulty chip, the machine 
will resume operation. 

Since the chips used in the C-64 and 1541 are now 
readily available, this technique could save you plenty of 
time and money. 

Joe Grossinger 
El Paso, TX 



12. Entering/Editing Programs 

Delete a block of Imes— If you have a C-64 or VIC, it's 
never pleasant wiien a large block of Basic lines needs to 
be removed from your program. To delete them, you must 
type each line number individually, then press ttie return 
key. Sometimes, you can write a Basic program to automate 
the task, but such programs usually depend on your lines 
being nmnbered in a vei7 regular way. 

If you have a Cvl28, PlusM or C-16, or if you own a 
progranmier'.s aid cartridge, the Delete command is a god- 
send at times like these — it lets you remove any number 
of lines, just by typing one command. 

The accompanying program provides the Delete com- 
mand for tlic rest of us. When run, it puts a machine 
language prtigram into the cassette buffer. Once tliat pro- 
gram is in place, blocks of lines can be deleted by typing 
commands of the following form: 

SYS828.starting Une#,endmg liiiL'# + 1 <return> 

For example, 

SYSH2K,1(»0,200 deletes lines 10l)-l<)9 
SYSKLWMOO (iektes evL-rythitiK up lo line 9<J 
SYS828,30(J,r>:l9'J9 deletes eveiytliiiiK from line 300-63998 
SYS828,30(),0 tleletes everything from 300 up 

Once the machine language is in place, you can use the 
Buffer Saver program in Chapter 5 to save it directly, so 
you won't have to bother with the Basic program again. 



112/ RUN .SPECIAL ISSUE 1987 



M 



Machine language experts will be pleased to know that the 
machine language is completely relocatable, making it pos- 
sible to store in any safe area of memory. 

10 print"blck:k delete - j. pellechi" 

26 CS = : FOFJ = 1 T01 4 7 : READK : CS = CS + K : NEXT 

30 RESTORE: IPCS <>1 776 3THENPRINT"DATA ERROR" 

:STOP 
40 S=828:FORJ=STOS+1 46 :READK:POKEJ ,K:NEXT: I 

FPEEK(65532)=226THENEND:REM C-64 
50 POKES+6 , 206 : POKES+26 , 1 98 : POKES + 37 , 1 9e:P0 

KES+56,198:REM VIC-20 

60 POKES + l 40 , 197: POKES+1 43 , 1 9 : POKES + 1 46 , 196 
:REM VIC-20 

61 DATA 162,004,138,072,032,253,174,032 

62 DATA 107,169,104,170,165,021,149,105 

63 DATA 165,020,202,149,105,202,208,234 

64 DATA 032,089,166,165,108,166,109,133 

65 DATA 020,134,021,032,019,166,165,095 

66 DATA 166,096,133,108,134,109,165,106 

67 DATA 166,107,133,020,134,021,032,019 
66 DATA 166,165,095,166,096,133,106,134 

69 DATA 107,165,108,197,106,165,109,229 

70 DATA 107,144,012,165,045,233,002,133 

71 DATA 106,165,046,233,000,133,107,056 

72 DATA 165,045,229,106,133,104,165,046 

73 DATA 229,107,133,105,024,165,104,101 

74 DATA 108,133,045,165,105,101,109,133 

75 DATA 046,160,000,165,104,208,004,198 

76 DATA 105,048,015,198,104,177,106,145 

77 DATA 108,200,208,239,230,107,230,109 

78 DATA 208,233,032,051,165,032,089,166 

79 DATA 07 6,128,164 

James Pellechi 
Middle Island, NY 



Line-editing tips — When changing Basic progiam lines, 
here are some things to keep in mind. 

1. As long as the cursor is on the altered line when you 
press the return key, the line will be entered into the 
program. You needn't move the cursor to the end of 
the line. 

2. You can duplicate a line in the program by listing it, 
typing a new line number over the old one, then pressing 
return. The new line number will be added to the program, 
and the old one will remain as it wa.s. 

3. Before you press the return key, you can easily dis- 
card your changes by pressing shifted return or by moving 
the cursor off the line in question. The line will remain in 
memory in its uncorrected state. 

4. If you want to replace one line with another while 
retaining die opiion of restoring the original line, insert 
a REM statement in the original line, just after its number. 
Then give the replacement a line number that is a small 
offset of the original. You can later undo your work by 
removing the REM and deleting the second line. 

5. If you want to move a group of lines from one pro- 
gram to anotlier, load the first program and list the lines 
you want to move on the screen. Then, without di.srnpting 
the screen, load the second program, move the cursor to 
each of the listed lines and press the return key. The first 
program's lines will be added to the second program. If 
the line numbers interfere with those in the second pro- 
gram, you can change them before pressing the return key. 

6. lif you have a C-128, you can use its two-screen capa- 
bility to make the above process even better. List the de- 



sired lines to the 80-column screen, then use ESC X to 
return to 40-column mode. The lines will stay on the 80- 
column screen no matter what you do with the program 
or the 40column screen. To add them to your progi-am at 
any time, use ESC X to move to HOcolumn mode, then put 
your cursor on each line you wish to move and press the 
return key. 

J. C. Vollmer 
Prior Lake, MN 

Entering C-64 programs in C-128 mode— When typing in 
Basic Ct)4 progiams, use the C 128 mode in order to take 
advantage of Basic 7.0's editing features and the 157rs 
rapid disk access. When you're finished, save the program. 
It should load and run without trouble in C-64 mode. 

You may find that some lines won't give the proper 
checksum for a C-64 line when using C-128 Perfect I'ypist. 
Should this occur, look for a C-128 keyword in that line. 
That would produce a different checksum iban in the 
C-64 version. After you spot the keyword, move the cursor 
to its second letter, press the shift and INST/DKL keys 
simultanctjusly, then the Commodore/Z key combination 
and press return. This should give the proper C-64 check- 
sum. (The Commodore/Z is ignored, but it prevents the 
keyword from being tokenized, thus treating all letters like 
the C-64.) 

Richard W. Clark 
Barrow, AK 

Reverse append-ectomy — To combine two or three pro- 
grams into one larger progi-am takes a lot of work. An easy 
way is to combine them with ati append routine. Load 
your first progi^am and type, in Direct mode; 

POKE .l:l,[*KEK(-t.i) - 2 : POKE ■H,Pf,[';K(46) 

Now renumber the lines in the second program, begin- 
ning with a number higher than the last number in the 
first program. Load your second program and type: 

POKE'lM.l : POKE 44,8 

When you type LIST and press return, you'll find that 
the second program has been appended to the first. (Note: 
If you get an Overflow error, try adding an unnecessary 
line to die new program, such as REM.) 

Adzhar Hamdan 
Syracuse, NY 

Deleting a block of lines— This tip is useful to VIC-20 and 

C-64 users who wish to delete a block of lines. First type 
POKE774,0 and press the return key. The List command 
lists only the line numbers. Now list the block of lines you 
wish to delete, move the cursor to the first line number 
and press return to delete each line shown. 

If you wish to delete more lines than will Rt on the 
screen, just repeat the list-and-renirn sequence above until 
all lines in the block have been deleted. 

.After you've finished, you must type POKE774,26 and 
press return to restore the normal List command. 

David Pampreen 
Belleville, MI 



RUN SPECLU ISSL'E 1987 / 1 13 



M 



Mechanical safety— Have you ever accidentally hit a key 
you did not want? Tlic solution is to cover the key with a 
small box that's a hit mller than the key. Any heavy paper 
or light cardboard will do, 

Mary E. Wilson 
Clearwater, FL 

Listen while you work— Typing progiams is a long and 
rcdious job. I've found a way to enter pnjgrams four times 
as fast, virtually error free and with considerably less 
eye strain. 

Kirst, 1 slowly read the program into my (a]H' recorder. 
Then 1 play it back, typing the program as I listen. It's 
especially useful for entering long programs with many 
Data statements. 

Kenneth S. Ascher 
Virginia Beach, VA 

Don't panic! — As any program you're writing becomes 
longer, it takes longer for the cursor to return after enter- 
ing or editing a line. N'ever hit the run-stop/restore com- 
bination during this pause or the program may be 
mangled! But, shcntld you ever do that, enter and press 
the return key. This should restore your program. 

Harv Harris 
Wichita, KS 

Basic program append— Would you like to be able to ap- 
pend Basic program segments to each other on the 64, 128 
or Plus/4? Just load in your first program and type in one 
of the following lines: 

G4 or l'liis;4; 2 = PEEK(4.fi) ■(■ PEEK(46)*2.'>fi - 2:POKE43,2 

AND255:POia:: 44.Z;2r>(i 
C-l 28: Z = 65278 - FRE({));POKJ;45,Z AND255:POKE 46,Z(2&6 

Now load your second program. The second program 
must have line numbers higher Uian the first. After the sec- 
ond program is loaded, type in one of the following lines: 

Cl)l:l>OKE4.1,l:POKK44.H 
PUisM; POKE43,l:POKK14,lf) 
C-128; POKE45,l:POKE4(),28 

Now you can list the entire program. If you want to 
append anodier segment, just move die cursor back up to 
the first line and press return. Load the next segment, 
press return over the second line, and so on. On the 
PlusM and C-128, you can redefine the function keys to 
the lines for your computer. 

Perry Buschert 
Grand Rapids, MI 



13. Languages— Basic 

Exclusive OR operator— The exclusive OR, also called 
XOR or EOR, works by comparing the bit patterns of two 
numbers and then returning a I for every case where the 
bits are dissimilar. In other words, if the compared bits are 
both Os or both Is, a zero will be returned. But if one is 1 



and the otlier is 0, the XOR will return a I. The principle 
is illustrated by this diagram: 

1001 
XOR 1100 

0101 

Machine language includes an XOR operator, and it is 
frcquendy used for flipping bits. (Using XOR to combine 
one byte with a byte consisting of ail Is gives a new byte 
whose bits arc the reverse of those in the original.) 

Commodore Basic doesn't have an XOR operator, but 
you can easily simulate one by using this: 

A XOR IJ = (A OR B) AND NOT (A AND B) 

Georges Ellas 
Tripoli, Lebanon 

Faster-running programs — Here are some hints to make 
your Basic programs run faster: 

• In For. . .Next loops, type the Next without the vari- 
able name. 

• If possible, do not use arrays. 

• If you have numerous Data statements, put them at 
the beginning of your program. 

• Do the same with frctiuently executed subroutines. 

• Strip all the spaces and REMs from your ])rogram. 

Javier Eeheverria 
Santa nder, Spain 

Input with variable default— Sometimes you may like to 
build a variable default value into an Input statement. That 
is, you want the default value to be based on conditions 
that vary from lime to time when you're running the pro- 
gram. The way to do it is to print the prom])ting message 
and the variable, then use a Poke to place your cursor on 
the last character of your prompt. Here's an example: 

PRINT "PRGMPT'iN; : POKE X,6 : INPUT N 

The value of X is 211 for the C-64 and VIC; 202 for the 
PlusM and C-l 6; and 230 for the C-128. 

The Input siatemeni's cjuestion mark will appear di- 
rectly after the prompt, followed by a space and the cursor 
flashing on the first digit of the number N, Just press the 
return key to make this your entry, or type another number 
to change it. The trick can also be used when the default 
is a string variable, but you must insert an extra space at 
the end of the prompt. 

Joseph R. Charnetski 
Dallas, PA 



C-64 screen position— My short machine language subrou- 
tine keeps track of the current screen position when I need 
to display a message in another area of the screen. 

For example, after accessing disk files. I include a rou- 
tine in my program to display disk-status messiiges in the 
upper-left corner of the screen. The routine then returns 
the cursor to its previous screen location. Type SYS 49152 
to save the current screen location and SYS 491 57 to return 
the cursor to the previous screen location. 



114/ RUN SPECIAL ISSL'E 1987 



M 



10 FOR L = 1 TO 10:READ PC (L): NEXT 

20 L=1 : FORLOC= 49152 TO 49151 

30 POKE LOC,PC(L) :L=L+1 :NEXT 

40 DATA 56,32,240,255,96,24,32,240,255,96 

90 0PEN1 5,8,15:INPUT#15,E,E$;GOSUB500 

500 SYS49152:REM SAVE CURRENT SCREEN LOCATI 

ON 
505 PRINT" {HOME} {CTRL 2) DISK STATUS: {COMD 

7} ";E$:REM MESSAGE 
510 FORSL=1TO5 00:NEXT:REM DELAY 
515 SYS49157:REM PREVIOUS LOCATION 
52 RETURN 

Stanley C. Evans 
Bahama, NC 



Heads or tails?— This one-liner simulates 100 coin tosses. 
Teachers and students of Basic progi-amming may Find the 
program of interest. It demonstrates important concepts, 
including For. . . Next looping, the RND function, Boolean 
expressions and subscripted variables. That's a lot of pro- 
gi'amming knowledge in a small package! 

10 REM COIN TOSS SIMULATOR - S. SANDER 

20 PRINT" [SHFT CLR ) " : FORX= 1 T01 00 : T= { RND ( ) )■ 

.5)+1 :S(T)=S(T}+1 
30 PRINT" (HOME}HEADS:"S(0)TAB(18}"TAILS:"S( 

1 ) :NEXT:CLR: INPUT"AGAIN( Y/N) " ;NS 
40 IFN$="Y"GOTO10:END 

Stephen Sander 
Kennett Square, PA 

Tune machine 64/128— Convert improper times into cor- 
rect form. For example, I hour, 71 minutes becomes 2 
hours, 11 minutes. 

10 PRINT" {SHFT CLRJTIME MACHINE 64/128 - MI 
KE DANIEL 

11 INPUT" {3 CRSR DNs}HOW MANY ENTRIES" ;EN; 
IFEN<1 1 THEN1 9 

12 DIM M{EN) 

19 PRINT "{SHFT CLR}":FOR E=1 TO EN 

20 PRINT"#"E: INPUT "HOURS" ;H ( E) : INPUT"MINUT 
ES";M(E) : PRINT "{SHFT CLR}":NEXTE 

30 F0RE=1TOEN;TH=TH+H(E) :NEXT 

40 F0RE=1T0EN:TM=TM-fM(E) :NEXT 

50 IF TM<60 THEN 10000 

60 IFTM=60THENTH=TH-f1 :TM=0:GOTO1 0000 

70 D=TM-60:TM=D:D=0:TH=TH+1 : IFTM< 60THEN1 000 



9999 GOTO 70 

10000 PRINT"HOURS. 
TM:END 



,"TH:PRINT"MINUTES. . ." 

Mike Daniel 
Fountain Valley, CA 



A better wait— C-64 programmers often use a Gel loop in 
their programs to give the user time to select a key. A 
shorter and easier way is to wait for the shift. Commodore 
or control key by using the statement 

WAIT 653,X 

where X is replaced with 1 for the shift key, 2 for the 
Commodore key and 4 for the control key. The numbers 
can be added together to wait for one of several keys to be 
pressed. For example, to wait for the shift or control key 



20 
30 



50 
60 
70 
80 
90 



to be pressed, use a value of 5 for X. Be sure to tell the 

user which key to press. 

Also note that the run-stop key has no effect on the Wait 
statement, but will incur a Break error with Get. 

Denis Boisvert 
Saint John, N.B., Canada 

Universal sequential printer — This compact but powerful 
program lets you print any sequential file to screen or 
paper for examination. It is quick and works with any 
Commodore computer. If the printer is ready when you 
run the program, the file will be printed on paper. If the 
printer is not ready, the screen is used. 

If you misspell the filename or mistakenly enter a non- 
sequential file name, it lets you reenter it. Pressing any key 
(except run-stop) will close all files and stop the run. Or 
you can let the entire file be printed and the progi^am will 
close the files. Remember that you may also use wildcards 
in the filename rather than typing the entire name. 

10 PRINT" [SHFT CLRKCRSR DN'){COMD 8} {CTRL 9 

ISEQUENTIAL FILE PRINTER" :REM LO^i OLSON 

DN = 3:0PEN 15,4,15:CLOSE15:IF ST = THES^ D 

N=4 

OPEN 3,DN,7:OPEN 15,8,1 5 :REM DN=PRINTER 

IF ON ELSE SCREEN 

INPUT "{2 CRSR DNslSEQ FILE NAME";S$ 

OPEN 2,8,2,SS+",S,R" 

INPUTf!/15,E,M$,T,S:IF E = THEN 100 

PRINT"{CRSR DN>";E;M$;T;S 

IF E=62 OR E=64 THEN CL0SE2:G0T0 40 

G0T01 30 
100 GET#2,AS:RS=ST 
110 GET K$:IF KS<>"" THEN 130 
120 PRINT#3,A$; :IF RS=0 THEN 100 
1 30 PRINT^3:CLOSE2:CLOSE3:CLOSE1 5:END 

Lon Obon 
Mesa, AZ 

C-64 hi-res error trap— One of the most frustrating things 
about writing programs that use the C-64's hi-res graphics 
screen is the resulting error message that prints as unread- 
able garbage on your TV or monitor when an error occurs. 
This short program pokes a machine language routine 
into memor)' that intercepts the Error Handling routine. 
This code turns off the hi-res screen before an error mes- 
sage is printed, so that you can read the message. The 
machine code is relocatable, meaning that you can load it 
at any safe location. To alter the location, just change the 
value of A in line 20 to the desired starting address. 

10 REM HI-RES ERROR TRAP-JIM CHAMBERS 
20 A=679 :F0RI = AT0A-t-1 5:READD:P0KEI,D:NEXT 
30 HB=IKT(A/256) :LB=A-HB*256 :POKE768 ,LB:POK 

E769,HB:NEW 
40 DATA 173,17,208,41,223,141,17,208,169,21 

,141 ,24,208,76,139,227 

Jim Chambers 
Lithonia, GA 

Variable name test — Descriptive variable names help to 
make a program more understandable, but with Commo- 
dore Basic, you cannot use a variable name containing a 
reserved Basic keyword. For example, COLOUR can be 



RUN SPECIAL ISSUE 1987 / 1 15 



M 



used as a variable, but COLOR cannot because it contains 
the l^eyword OR. 

The computer wil[ tell you whether it can use a variable 
name if you type PRINT variable name {return} in Direct 
mode, lithe name tomaius a reserveci word, you'l! gel aSyn- 
tax error, llihe name is acceptable, the computer prints tlie 
String (a blank) or die numeric value (0). Then you know that 
this variable name will not crash the program. 

You might also like to look over the added keywords 
used by Basic 3.5 and 7.0. For example, XLoop is a legal 
variable lor liasic 2.0 but not for liasie 7,0. If you write a 
prograui using XLoop on the C-()4 and run the program 
in C128 mode, no problem will occur. However, if you 
edit the line, XLoop will become a token and a Syntax 
error will result the next time it's run. 

Paul Hollander 
Ames, lA 

C-$4 cursor locator— This two-line program is capable of 
moving the cursor to any place on the screen — fast. It 
makes use of the Kernal Positioning routine at ().'J520 
(SFFOO). Hovvever, it does not require the bothersome 
Pokes and SYS calls necessary' to otherwise invoke the 
routine. It is also completely relocatable. To move the code, 
change ihe 679 in line 1 000 to the location where you want 
the code to start. 

To use the rouiine, simply add it to your program, lie 
sure the data line is the first data in your program and 
Gosub to 1000. The routine will now be active, and a simple 
USR call will move the cursor to the desired position. The 
call would took like thi.s: 

A = USR(ROW*a56 + COL);PRINT "Curstn h hrrt;" 

Of course, ROW and COL would be replaced by your 
own values, where ROW ranges from to 24 and COL 
ranges from to 39, and any variable may be used in 
place of A. 

If the program this routine is appended to uses other 
USR calls, which is unlikely, you'll have to update the USR 
vectors ai 785 and 78(1 each time you change routines. 

10 REM SCREEN CURSOR LOCATOR-G . M -JAMES 
1000 1=679 :J= INT (1/255) : POKE785 , I-J*256 : POK 

E786 , J :F0RJ=IT0I+1 5 :READK: POKEJ ,K 
1010 NEXT: RETURN :DATA32, 170,177, 170,1 73,1 5, 

3, 41, 254, 141, 15, 3, 32, 240, 255, 96 

Gregory M. James 
Fayetteville, WV 

Universal input subroutine — This subroutine prevents er- 
rors associated with Input statements and allows use of 
selected characters only. It should work with any Com- 
modore computer. Cursor and graphic keys are easily 
locked out, since only the characters included in X.S will 
be accepted. Easy escape is provided by using the left- 
arroiv key. 

By defniing XS as the numeral.s, the decimal point, de- 
lete character and return, numeric data can easily be han- 
dled with the VAL(LS) function. 

While the routitie is a bit slow in Basic, it is especially 
useful when children are on the keyboard. In a compiled 
program, there is no apparent loss of speed in execution. 



10 REM UNIVERSAL INPUT SUB-JAMES R, BOOTH 
20 X$="ABCDEFGHIJKLMN0PQRSTUVWXYZ1 234567890 

+-/. {LEFT ARROW}"+CHRS{13)+CHR$(20) 
30 REM *HENU OR MAIN PROGRAM HERE* 
40 : 
100 PRINT" INPUT DATA EXAMPLE :";: G0SUB1 030 : I 



FL$ = 



THEN STOP 



110 YOUR$=L$:REM PUT DATA INTO PROPER STRIN 

G 
120 REM *REST OF PROGRAM HERE* 
130 : 

999 END 

1000 PRINT'MCOMD @}{CRSR LF}"; 
1010 GETE$:IFE$=""GOTO1010 
1020 C=ASC(E$) :RETURN 

1030 LS="":REM NULL STRING BEFORE STARTING 
1040 GOSUB1000:FORB=1TOLEN(X$) :IFE$oMID$(X 

$,B,1 )THENNEXT:GOTO1040 
1050 IFC=1 3THENPRINT" (CRSR LF) " :RETURN : REM 

I RETURN] 
1060 IFC=95THENPRINT" {CRSR LF) " : B=LEN ( XS ) : 



NEXT:LS= 



; RETURN: REM {LEFT ARROW) TO 



ESCAPE 
1 070 IFC=20ANDLEN(L$} >0THENPRINTE$ ; :L$=LEFT 

$(L$,LEN(L$)-1 ) :GOTO1040 
1090 IFC=20GOTO104 0:REM [DEL] WITHOUT ANY C 

HAR 
1090 PRINTE$;:L$=L$-i-E$:GOTO1040 



111 



L$ = L$i-' 
NE 



:B=LEN{X$): NEXT: RETURN: REM DO 

James R. Booth 
IVfoline, XL 



Qearer DSS — While writing a program thai checked the 
disk status, I fotmd that DS$ was printed as aa,bb$,cc,dd. 
I wanted something a little more professional, so I looked 
at subdividing the message string. This listing is the result: 

10 REM BETTER DSS-KEN CAREER 

20 X=INSTR(DS$,",",4) 

30 PRINT"ERROR NO. "LEFTS ( DSS , 2 } " { 4 SPACES ) 

ERROR TYPE: "MID$ ( DSS , 4 , X-4 ) 
40 PRINT"IN TRACK: "MID$ (DSS ,LEN( DS$ ) -4 , 2 ) " 

{4 SPACES) SECTOR: "RIGHT$ ( DS$ , 2 ) 
50 REM(2 SPACES} PRINT" IN TRACK, SECTOR: "RIG 

HTS{DSS,5) 

Line 20 finds the second comma, the first being between 
the error number and the error description. Line 30 uses 
the LEFTS function to print the error number and the 
MIDS function to print the error message. The value of 
X-4 is the location of the comma minus the starting 
position of the siring. This finds tlie proper length of the 
message siring. 

Lines 40 and 50 are two ways of printing the track and 
sector information. Line 40 allows text between numbers 
while line 50 combines the track and sector into one string. 

Ken Garber 
Windsor, Ontario, Canada 

Random number seeds— The computer uses the RND func- 
tion to pick a random number. This number is actually 
based on the previous random number, so every nme you 
turn on your computer, the same numbers are chosen. A 
simple solution is to use a different "seed" value each lime 
the computer is turned on. This can be done as follows: 

1 X = RND(-Tb 



116/ RUN SPECIAL ISSUE 1987 



M 



A negative "seed" will iilways stiirl a new setjucncc of 
numbers, and, since the value of TI would almost always 
be different, the order of random numbers will be dider- 
ent. For subsequent RND calls, use a positive nniiiber (usu- 
ally 1) in parentheses. 

Joey C. Lin 
Louisville, KY 



Switchable Basic — I've found a way to switch back and 
forth between Simons' Basic and Basic 2.0. If you're in 
Simons' Basic and want to go to Basic 2.0, type SYS .''>H260. 
To return to Simon.s' Basic, type SYS 647:J8. When switch- 
ing between the two Basics, the program in memory will 
be "lost." However, when switching to Simons' Basic, you 
can restore the program by using the Old command. 

Lance Sloan 
Swartz Creek, MI 



14. Languages — Machine Language 

Working with machine language— Yon can easily tell when 
a Basic program includes a machine language routine, 
because you'll see one or more Data statements whose 
elements are numbers between and 255. Those numbers 
are the machine language program, and the Basic program 
always includes some Pokes to put them into memory. 

Once the machine language program is in memory, it is 
activated by a SYS connnand, which Is die machine lan- 
guage equivalent of KUN. Sometimes the SYS causes a one- 
time action to take [ilace, and sometime.s it activates a 
feature that you can access agaiti and again, utull the 
computer is reset. 

Even if you erase your Basic program with the New 
command, or even if you reset it with stop/icstore or a 
reset button, the machine language ]>rogiain remains in 
memory! If your reset seems to have killed die machine 
language, you can usually resurrect it by repeating die 
original SYS. 

Use Payne 
Cheswick, PA 



15. Languages— Other 

CP/M utilities— If you arc using CP/M mode on the C-128, 
yon might think that it came wilboul some of its important 
utilities, because ihey don't show up in any disk directory. 
Mip your disk to the oilier sitle, and you'll (Ind them 
lurking there. 

Eugene Cozzi 
Barre, VT 



C-128 CP/M screen color- You can change the screen color 

when in C'.P/M mode by holding down the control key and 
one of the number keys on the keypad {nol the number 
keys on the top row); CTRL 2 = white, CTRL 3 = red, 
and ,so on. 

Michael L. Knapp 
Omaha, NE 



Kaypro CP/M disks — There are many public domain 
CP/\I [>rogram.s available that can be used with the C-128 
and \57[ drive. While loading a disk formatted for the 
Kaypro II, the prompt KAYPRO IV appeared on the 
screen. I'o get the Kaypro II format, press the cursor-right 
key, and the disk will load correctly. 

Lonnie Williams 
Orange, CA 

Faster CP/M disk copies— Here's a useful tip to use on the 

C-128 in CP/M mode. Making copies of CP/M disks widi 
PIP.CX>M is time-consuming, for die program copies only 
a single Hie at a time. To speed things up a bit, I've used a 
fast commercial back-up program (tJopy II 64/128) to copy 
Commodore (OCR-formatted) CP/M clisks in a short time. 
You should watch out for several things, though. Only 
Commodore-formatted disks can be copied. Also, only 
single-sided disks can be copied unless the program you 
use speciries it is designed for double-sided disks. If your 
program oflers a "whole disk" copy, select it instead of a 
"BAM" copy, since CP/M t)ms its directory in a place where 
('ommodore computi*rs won't find it! 

Joe Malloy 
Clinton, NY 



CHAR and ML code — After a bit-map area has been allo- 
cated on the C-12H with die GRAPHIC:! connnand, all texi 
printed with the C^HAR command is .sent to the bit-map 
screen. This can create a problem if you are writing a 
program using the allocated 9K of memory for ML code 
and operating in 80-column mode. Anydiing printed to 
the 80-column screen appears as it should, but lext sent by 
the CHAR command ends up on die bit-map screen. 

To correct this situation, a GRAPHIC():CRAPHIC5 com- 
mand must be issued after the CRAPIIK;! command to 
return toSO-column text mode. GRAPHICO reUtrns to Text 
mode and the GRAPH IC:5 to SOcolumn. The GRAPHICS 
command in itself is not sufficient! 

Mark F. Kostncr 
Murdock, KS 



16. Programming Tips — Debugging 

Line numbers for debugging— When debugging, it's com- 
mon to insert statements diat will later be deleted. It's 
useful to give them unusual numbers, not otherwise used 
in your program. Numbers 13, 113 and 273 are useful 
examples. They are easy lo find when you're ready to 
delete them, and you stand Utile chance of deleting a 
wanted nnniber by mistake. 

A. D. Entwistle 
Kingston, Ontario, Canada 

Checking lines with C-128 Perfect Typist— To check pro- 
grams entered wiihoui the 128 Perfect Typist, first load 



RUN .SPECIE ISSUE 19S7 / 1 1 7 



M 



and run 128 Perfect Typist. Then cnier tlie following lines 
and press return: 

10 REM CHECKING FOR C-1 28 PERFECT TYPIST - 

JOSEPH FAUST, JR. 
2S) REM ENTER LINE 30 WITHOUT LINE NUMBER 
30 A$=CHR$(148):B$=CHR$(145):KEY7,CHR$(2?)+ 

"J"+A$+A$+A$+A$+"LIST"+CHR$( 1 31+B$+B$+B$ 

+B$+CHRS(131 

Next, load the program you ivish to check and type 
AUTO, followed i)y the line nunihcr increment used in the 
program to he checked. List the first line of the prngi'am, 
move the cursor up to tlie hsted line anti press return. 
This will jrive you the checksum for that liiu- followed by 
the line number for the next line. Press F7, and the next 
line will be listed, along with the checksum for that line 
followed by the next line number. If you coi:tinue to press 
F7, you c;ui step righi through the piogiain. As a side 
benefit, [>ressing F7 without a line iniiiiber lists the 
program. 

Joseph V. Faust, Jr. 
Lompoc, CA 

17. Programming Tips— General 

Detecting keypresses— There is an alternative to ihe Get 
siateineoi in detecting single key|)resses on (loiiunodore 
computers. A memory location called LSTX always con- 
tains a nmiiber that corresponds lo whatever key is cur- 
rently pressed. Here are the locations of LSTX: 

&64 and VIC— 197 

Plus/4 amt CM f)-80;i8 
CI2H— 21.t 

You can determine the values for different keys by exe- 
cuting the following program and pressing the keys. Sub- 
stitute one of the numbers above for LSTX in the following 
example: 



10 ['RINT PEEK (I.STX) ; GCfTO 10 



Backing up whiJe typing— We all know the merits of making 
disk or tape b:>ckups of all important programs. On a 
smaller scale, when yuu are working on a program and are 
making changes to a line, try listing the line tvvice on the 
screen. One listing is for you to edit; the other is your 
backup. If you txiin the line you're editing, you can move 
your cursor up to the untouched one and start all over agiiin. 

Bertram Schulman 
Valley Stream, NY 

Nonrandom RND— Beware of generating random num- 
bers using RND(O)! 

To see why, try running this little program. As you can 
see, it should randomly fill the C-6'1 screen with white up- 
percase A's. Run it, and you'll see that this is far from 
the case. 

U) X = IN'r(RjND(0)*I024) : POKE 1024 -^ X,l : POKE .'j.'i'iilt) + X.l : 
C;OTO 1(1 

When you've seen how it works with /.ero as an aigument 
for RND, run it again with other values, and observe ihe 
striking difference. 

Davie Cooley 
Dothan, AL 

GET with flashing cursor— This routine provides a blink- 
ing cursor for the Gel statement. It doesn't have the cursor 
footprint problems usually inhercin in such routines, and 
ii allows input from all keys, including the cursor, delete 
and color keys. The routine works as is on the VIC, C-64 
and in both modes on the G128. 

1000 REM MAGIC GET W/CURSOR - ED HORGAN 
1010 REM FOR C64,VIC,C128 IN BOTH MODES 
1020 X=235:Y=236:IFFRE(0)=FRE(1 )THEHX=21 4 : Y 

= 211 
1030 Z = 1024 + PEEK(X)*4?!+PEEK{Y) ;ZZ = PEEK(Z) 
1040 POKEK,160:GETAS:POKEZ,ZZ:IFAS=""THEN10 

40 
1 050 PRINTAS; :B$=B$-kAS:IFA$=CHRS( 1 3 )T!iEtJGOT 

1060 GOTO1030 

1070 PRINTBS;"REST OF PROGRAM GOES HERE" 



Feng Yihao 
Singapore 



Edward Hor^an 
Coatesville, PA 



Ultimate program backup— Even if you ijack up religiously, 
yoiu" valuable programs might be lost. For instance, when 
you dtni'l use a progiam for a while, you lose track of its 
name and importance. Once that liappens, it's easy to erase 
it while weeding out the junk. Another example: If the 
wrong disk is in the drive when you issue a format com- 
mand, then goodbye, good software! 

The ultimate, perfect, impossibieto-erase backup system 
exists, and it's as close as CMD'i. When a progiam abso- 
lutely, positively must stay in your hands forever, just list 
it on your printer, then file it away in a drawer. Hard-copy 
listings are remarkably durable and remarkably lesislani 
to trashing. If magnetic disaster strikes, no matter how 
long the program, you can always retype from the listing. 

Louis F. Sander 
Pittsburgh, PA 



Active device finder — Memory location 186 always holds 

the number of the last device used for input or output, 
and it's a very useful location to use in prograimning. (174 
is the equivalent location for the Plu.s/4 and C-16.) If you 
type PEEK 186 before performing any further input or 
output, the screen will display the number of the device 
from which the program was loaded. You can use this 
information instead of asking the user about disk or tape. 
Be careful, diough — after you use the printer, this loca- 
tion will contain a 4 until more disk or tape input^output 
takes place. 

Brian Petroski 
Iron River, MI 

Hankey-Pankey — If your printer is like mine, it requires 
more than an 80-character line to set up the printer the 



118/ RUN SPECtAL ISSUE 1987 



M 



way I like. This short set of printer commands eliminates 
the need to type that data each time you want a printout. 

Add the lines shown helow with line numbers lower 
than the first line number in your program. I.isi the first 
few lines and move the cursor to the O in OPEN; tlien 
press the delete key until the O and the cursor arc in the 
first column. Erase the RFM statement in the next line the 
same way. Next, press return and — voila.' — your printer 
lists the program just the way you like it. 

To avoid typing this line at the beginning of your old 
progiams, use the line-editing tip described in Chapter 15. 
C-fi4 owners may have to use two lines because tif" the HO- 
character limit. 

REM EASY C-64/C-128 HARDCOPY - LARRY PANK 
EY 

4 REM 0PEN1 ,4;PRINT#1 ,CHR$(27)"C"CHR$(66)CH 
R$(27)"N"CHR$(6) :CMD1 :LIST 

5 REM PRINTj^l ,CHR$(12) j;CL0SE1 

Larry Pan key 
Dana Point, CA 



&64 jFunction-key cheat sheet— If a program uses the C-64 
function keys, make a cheat sheet from a 3 x 5 index card, 
and cut it to fit around those keys. Just \sTite on the card any 
functions the keys pcrfonn or any other infonnation, 

Patrick A, Lee 
Hempstead, NY 

18. Programming Tips — 
Math/Educational 

Probability function— Here's a neat little function that eval- 
uates to logic true or logic false (— 1 or 0), with tlie probabil- 
ity of "true" depending on a value assigned by you: 

10 DEFFiNPpt) = RND(l}<X 

In tills case, FN1'{.2} will be true 20% of the time, FNP(.5) 
50% of the li[iie, and so forth. 

One use of this is to cause certain lines to be executed 
or not, at random, but with a fixed probability. For ex- 
ample, consider this line: 

im IF FNP(,25) THEN GOSUB 1000 

When the line is executed, the program may or may not 
jump to the subroutine at 1000, but the probability that it 
will go tliere is one in four (.2.5). 

I've u.sed this technique to add interesting highlights to 
games. 

Davie Cooley 
Dothan, AL 

Decimal fractions = common fractions — I've written a 
program that converts decimal fractions into their equiv- 
alent common fractions. 

REM DECIMALS TO FRACTIONS - ED DARACK 

10 PRINT" (SUFT CLRXCOMD 4 } " : POKE 53280, 0:P 

QKE 53281 ,0 
20 INPUT "INPUT A DECIMAL NUMBER" ;X 
30 X$=STR$<X) :T=LEN{X$) 



40 PRINT "{CRSR DN}{CTRL 6} WORKING {CRSR DN) 

II 

50 FOR Y=1 TO 256 

60 FOR Z=256 TO 1 STEP-1 

70 E=(Y/Z) :E$ = STR$(E) :IF LEFT$( E$,T4-1 } = X$ T 

HEN 100 
80 IF Y=256 THEN PRINT" {3 CRSR DNs}{CTRL 8} 

(CTRL 91NUMBER TOO LARGEtCRSR RT){CTRL 

)" 
90 PRINTZ,Y"{3 CRSR LFs}[CRSR UP ) " :NEXT :NEX 

T 
100 PRINT "(CRSR DN}{CTRL 5 J THE FRACTION FO 

RM OF" ;X; "IS {CTRL 8)";Y;"/";Z 
110 PRINT "(CRSR DN){CTRL 3}AH0TIIER (Y/N)" 
120 GET A$:IF A$=""THEN 120 
130 IF A$< >"N"TilEN 10 
140 END 

Ed Da rack 
Lompoc, CA 



19, Programming Tips — 
Screen Display 

Screen scrolling — Here are some easy ways to scroll your 
screen up or down a line, without using any machine 
language routines. Upward scrolling can be done by; 

PRINT " {ilONfK} {'25 CRSR DNs} {HOME} " 

Downward scrolling, on the CG4 only, can be accom- 
plished by: 

PRINT ■• {HOME} {CRSR DN} {CRSR LF} {SHFT INST} " : POKE 
21H,KW 

Shachar Ebel 
Rehovot, Israel 

Screen Wiper— This routine for the C-64 or VIC wipes the 
screen clear in two visually interesting ways. I t's one of the 
most elegant and intriguing screen effects we've seen. 

The direction of this screen-clearing technique is con- 
trolled by the value of CIS in line .500. If it's a left-arrow 
symbol, it clears your screen like a theatre curtain pulled 
IVom (he sides toward the center. If Cl$ is an up-arrow 
symbol, the curtain works from the top and bottom. 

■'\s printed, the routine is for the C-64. For the VIC, 
substitute line 580 for line 500. 



480 
490 
500 

510 

520 

530 
540 

550 

560 
570 
580 



REM MAGIC WIPER - J.R.CHARNETSKI 
REM WIPES SCREEN UP/DK OR SIDEWAYS 
C1$="(LEFT ARROW}" :REM WIPE (UP ARROW} 

OR {LEFT ARROW} 
C1=23:C2=19:C3=24:C4=39:C5=59903:REM C6 
4 

FORJ = 0TOC1 :C2S = C2$ + CHR${ 32 )+CIlR$( 1 57 )+C 
IIR$( 17) :NEXT:C2$=C2$ + CHR$(145} 
FORJ=0TOC2:IFJ=0THENPOKE781 ,C3:SYSC5 
IFC1$="{LEFT ARROW) "THENPRINT" (HOME )";T 
AB(J ) ;C2$: PRINT" (HOME}" rTAB{C4-J) ; C2$ 
IFC1$="(UP ARROW} "THENPOKE781 ,J:SYSC5:P 
OKE781 ,C3-J:SYSC5 
NEXT : PRINT" { SHFT CLR ) " ; : C2$=" " : RETURN 



REM LIME 500 FOR VIC: CI ^ 
:C4=21 :C5=60045:REM VIC 



21 :C2=11 :C3=22 



Joseph R. Ch a met ski 
DaUas, PA 



RUN SPECIAL ISSL'E 1987 / 1 19 



M 



C-64 star track — This program will supply an inieresting 
background for a space adventure. You can Pol<e normal 
or customized characters for the desired effect. 

To speed up the stars, add Print commands to the end 
of line 20. To change cliaracters, substitute other numbers, 
such as 34, 42, 43 and 58, for 46 in line 30. 

10 REM SCROLLING STARS 

20 POKF.53280.0:l'OKt532Hl,0:X = 1NT(RND(I)*40):PRINT 

30 POKF,56256 + X.l POKE 1984 + X,46:GOTO20 

Fred Buike 
Madison Heights, MI 

Artistic Commodore — Here's a 74byte machine language 
tide-enhancement routine for the C-64. Whenever you en- 
ter SYS 49152, all the graphics and text will be bathed in 
cok>r. Press the space bar or joystick fire-button to termi- 
nate the routine, il makes a nice introduction to your 
program si 



1 
2 
3 

4 

5 

6 

7 

8 

9 

10 

11 

12 

13 

14 
15 

16 
17 




PRINTCHRS 

PRINTSPCI 

PRINTSPCI 

}MAGICH 

PRIfJTSPCi 

PRINTSPC( 

IIS FUN {5 

PRINTSPC( 

PRINTSPC( 

ACE (CTRL 

YS491 52 



3:READA 
(147)SPC 
8) "(CTRL 
8) "{CTRL 
SPACES)* 
8) "{CTRL 
8) "{CTRL 

spaces) 

8) "{CTRL 
222) ;SPC 
1 OR { 



POKE49152+X,A 

(160)CHRS{144 

9H22 SPACES 

9H4 SPACES) 

{3 spaces}" 

9) {22 SPACES 

9) {3 SPACES} 

*{2 spaces}" 

9) (22 SPACES 
(222)"PRESS { 
CTRL 9} FIRE- 



:NEXT 



) 

}" 

*{4 SPACES 

)" 

*{4 SPACES 

}" 

CTRL 9) SP 
BUTTON ":S 



James Pellechi 
Middle Island, NY 



C-128 and PIus/4 screen code decoder— This short Basic 
program c<mverts screen codes to their equivalent CHRS 
codes and displays the value represented by each character. 

10 REM C128 S PLUS/4 SCREEN CODES - MARTIN 

GELB 
15 PRINT" (SHFT CLE) " :CHAR, 6 , 1 , " (CTRL 9 } SCRE 

Et* CODE TO CHR$ CODE": PRINT 
17 PRINTTAB( 1 0)"{2 CRSR DNsKCTRL 0)RUN/STO 

P TO STOP":PR1MTTAB{10)"CONT <RETURN> TO 
CONTINUE" 
20 FOR S = 1 TO 128 
25 A=(S AND 127}OR(S AND 32}OR({S AND 64)*2 

)0R( (64-SAND32)*2} 
30 PRINT:PRINT"{HOME) {7 CRSR DNs)SCREEN COD 

E";S;"{2 SPACES) CHAR ";CHR${A};" CHR$ CO 

DE" ;A 
40 FORT=1TO500: NEXT: NEXT 
50 PRINT" {SEIFT CLR){CTRL 9 ) THE END":L1ST 



Change line 20 to INPUT'SCREEN CODE"; S and line 
40 to GOTO 20 to inspect individual screen codes. 

Martin Gelb 
Deerfleld Beach, FL 

C'64 windows — Have you ever dreamed of writing a Basic 

program with pull-down menus for your C-()4? The follow- 
ing program creates a window for each pull-down menu 
needed. Variable C determines the color of the window, 
Yl is the number of lines down from the top of the screen, 
XI is die number of spaces from the left side of the screen, 
X determines the column width of lines wiihin the window, 
and Y is the number of horizontal lines in the window. 
The cursor is placed at the upper-left corner of the screen 
after the program is run. 

Try substituting new values for the above variables to 
create fast, professional-appearing pull -down menus on 
your C-64. 



ANDERSON 
:GOTO5000 
:X = X■^2:Y = y■^3:IFC=6T 



1 REM C64 WINDOWS - ARAN 
10 C=1 :Y1=3:X1=5:X=5:Y=1 
20 C=C-i-1 :Y1=Y1-f2;X1=X1 + 3: 

HEN 5050 
5000 POKE646,C: PRINT" (SHFT CLR} " ; : IFY1 =0THE 

N5010 
5005 F0RI=1T0Y1 : PRINT: NEXT 
5010 PRINTTAB(X1 ) ;"{SHFT U) " ; :F0RI=1 TOX:PRI 

NT" {SHFT *)" J :NEXT: PRINT" {SHFT I}" 
5020 F0RI=1T0Y:PRINTTAB{X1 } ;" {SHFT B } " ; : FOR 

J=1T0X: PRINT" "; :NEXT:PRINT" (SHFT B}": 

NEXT 
5030 PRINTTAB{X1 ) ; "(SHFT J} " ; : P0RI=1 TOX: PRI 

NT" (SHFT *}"; :NEXT:PRINT"{SHFT K}" 
5040 PRINT" (HOME)"; :GOTO20 
5050 PRINTTAB(19)"(CTRL 21(10 CRSR DNs)INSI 

DE THE ":PRINTTAB(21 )"WINDOW(COMD 7}" 

Aran Anderaon 
Pocatello, ID 



Menu in reverse^The following routine should work on 
all Commodore computers. It produces a menu with re- 
verse fields just as in some commercial programs. Use the 
cursor up-and-down key to move the reverse field bar, and 
press return to make your selection. 

If you want the menu to appear somewhere other than 
in the upper-left comer, insert cursor movements after HS 
in line 130. You have to use the same cursor movements 
before printing R$ on line 170. The variable A is the screen 
line on which the reverse field will be printed. The first 
line is line 0, the second line I, and so on. 

10 REM C64/C128 MENU IN REVERSE - DAVID LU 

100 REM * REVERSE OPTION * 

110 REM * R$=REVERSE ON, H$=HOME * 

120 PRINT" (SHFT CLR } " : A= 1 : R$=CHR$ ( 1 8 ) :H$=CH 

R${19) :P1$=RS 
130 PRINTHSP1$" OPTION 1 " 
140 PRINTP2$" OPTION 2 " 
150 PRINTP3$" OPTION 3 " 

170 PRINTH$:FOR1=0TOA: PRINT :NEXT:PRINTR$ 
180 GETA$:IPA$=""THEN180 
190 REM NEXT LINE CAN CONTAIN ON-GOTQ AFTER 

IF-THEN 
200 IFA?=CHR${13)THENPRINT"0PTI0N"A"IS SELE 

CTED.":END 



120 / RUN .SPECIAL ISSUt 19S7 



M 



ListiTig continued. 

210 PU="":P2S = "":P3$ = "" 

220 IFA$=CHR$(17)THEN0N A GOTO240 , 250 , 260 

230 IFA$=CHR?(145)THENON A GOTO250 , 260, 240 

240 A=2:P2$=R$:GOT01 30 

250 A=3:P3$=R$:GOT01 30 

260 A=1 :P1 J=R$:GOTO130 

David ha 
Tlicson, AZ 



KEY TO CONTINUE. {4 SPACES) " :PL$=PL$+" {2 
CRSR DNs)":GOSUB10000 
60 GETA$:IFA$=""THEN60 
70 END 
100^0 L=LEN{M$>:MI=38~L/2:FORI=1TOLEN(M$}-1 

9 
1 001 PRINTPL$SPC(MI )LEFT$(M$,I)RIGHT$(M$,L 
- (L-I) ) :MI=MI-1 :NEXT:RETURN 

Eric J. Bruno 
Shirley, NY 



Animated titles— This routine for ihe C-64 adds a special 
touch of magic to any Basic program by animating your 
title screens. The program creates two substrings from a 
user-defined tide string and animates both characters from 
four directions. You may have as many lines in your title 
as desired, each specified in the N|(X} array. However, 
there is one limitation. Each N$(X) string must contain 
exactly 26 characters. If your string is shorter, just insert 
spaces on either side of the string. 

10 

20 

30 
40 
50 
60 

70 
60 



ANIMATED C-64 TITLES 



PATRICK GAINE 



90 



10 
20 
30 
40 
50 

60 
70 



REM 

S 

PRINT" {CTRL 8}{SHFT CLR) "CHR$( 1 4 ) :POKE53 

280,0:POKE53281 ,0:A$=" ":X=0 

N$(0)="** DYNAMIC TITLE SCREEN **" 

N$n)="** FOR THE COMMODORE 64 *♦" 

N$(2)=" CREATED BY PATRICK GAINES" 

A=1 :B=26:C= 32: D=1 :E=0:F=0 :G=0:H= 0:1=0 :J= 

0:K=C:L=C:M=C:N=C:P=41 :R=39 

IFA>BTHEN170 

G=126 3+E:H=1304-F:I=1903+E:J=1944-F:N1$= 

MID$(N$(XKA,D) :N2$=MID$(N${X) ,B,D) 

IFN1 $=A$THENA=A+D:E=E+D:GOTO70 

IFN2$=A$THENB=B-D:F=F+D:GOTO70 

POKEG,K:G=G+P:K=PEEK(G); 
L=PEEK(H) ; 
M=PEEK(I) : 
N=PEEK( J} ; 

IFG>=ITHENA=A+D:B=B-D:E= 

=C:M= 



;P0KEG,ASC(N1$) 
:P0KEH,ASC(N2$ ) 
:P0KEI,ASC(N1$) 
:P0KEJ,ASC(N2$) 
=E+D:F=F+D:K=C:L 



180 



POKEH,L:H=H+R; 
POKEi,M:l=l-R: 
POKEJ,N:J=J-P: 

:ITHENA=A+D:B= 

=C:N=C:GOTO70 
G0T01 1 

FORS=0TO2:SYS59626:NEXT:X=X+1 :IFN${X) < > 
""THEN60 
REM ** PLACE REST OF PROGRAM HERE *♦ 

Patrick Gaines 
Gastonia, NC 



The white hole — This neat little subroutine prints any 38- 
character message from the center of the screen to the 
edges in a very fancy way. The printing sequence is just 
die opposite of a black hole. The first and last letters are 
printed, then the second and next-to-last letters, and so on, 
working outward from the center. 

10 REM C-64/C-128 WHITE HOLE - ERIC J. BRUN 


20 PRINT"{SHFT CLR) " :POKE53280,0: P0KE53281 , 


30 M$="{CTRL 9} (CTRL 3) {3 SPACES) THIS IS TH 

E 'WHITE HOLE' TRICK {3 SPACES) " :PL$=" {HO 

ME) {8 CRSR DNS}" IGOSUBI 0000 
40 M$="{CTRL 9} (CTRL 2) INSERT NEW TEXT IN L 

INES 30,40,4 50.":PL$=PL$+"{2 CRSR DNs)" 

:GOSUB10000 
50 M$="{CTRL 9}(C0MD 7} {6 SPACES ) PRESS ANY 



REM SHAKE IT UP - HAZMAN HALID - C-64 

POKE53280,0:POKE53281 ,0; INPUT "FRICTION 

(1-7)"rF 

FOR R=1 TO 200:PRINT "SHAKE" ; :NEXT 

FOR R=0 TO 15 STEP F:POKE53270,R :NEXT 

FOR R=15 TO STEP -F : P0KE5 3270 , R :NEXT 

GOTO 40 



Shake it up, baby!— Try running this short and simple 

program for an earth-shaking surprise: 

10 
20 

30 
40 
50 
60 

Input a 1 for a sliding effect or a 7 for a good shake! To 
smooth the slide, just add :POKE 5632.'),! to the end of 
line 20. Press the run/stop key to quit and run/stop-restore 
to exit the program. 

Hazman Halid 
West Malaysia 

No-fade colors — This progi-am lets you select screen colors 
to replace the standard btues on the C-64. The program 
remembers the new colors until the computer is reset or 
turned off. Use Fl, F3 and F5 to cycle through the text, 
background and border colors, respectively. Printed text 
will always be visible because the progi'am automatically 
sets a selection to the next color if text and Ijatkgiound 
colors are the same. 

When you've selected your colors, press F7. If all has 
gone well, the run/stop-resiore combination won't destroy 
your colors, and even if you run a program that changes 
the colors, they'll return when the program ends. 



10 
20 
30 
40 
50 

60 
70 

80 

90 

100 

110 

120 

130 

140 

150 

160 

170 

180 

1 90 

200 



REM NO-PADE C-64 COLORS- J , R .CHARNETSKI 

FOR J=. 1 T023 : READN : T = T+N : NEXT : RESTORE 

IFT< > 1 03il65THENPRINT"DATA ERROR" :END 

READM,B,T,W:P0KET+4, 1 28:X=1 5:Y=7:S=X 

PRINT" { SJiFT CLR ) " : FOR J = MTOM-^N : READA : POKE 

J, A 

NEXT:P0:<i-rr,X-1 : pokes, X-l :P0KEB + 1 ,Y-1 

PP.INT"{iiOME} {2 CRSR DNs)F1 TEXT" : IFX>STH 

EhX = 

PRINT" {CRSR DN)P3 BACKGROUND" : I FY >STHENY 

= 

PRINT" ' JRSR DN)F5 BORDER" : IFZ >STHEN2=0 

PR1N'''"{CRSR DN)F7 COLORS OK" 

GETAi:IFAS=""THEN110 

1 ) "THENPOKE 
3)"THENP0KE 
5) "THENPOKE 



T,X:X=X+1 
B-t^l ,Y:Y = Y + 1 
B,Z:2=Z+1 



IFA$="{FUNCT 

IFA$="{FUNCT 

IFA$=" [PUNCT 

IFX=YTHEN120 

IFA$<>"{FUNCT 7}"THEN70 

POKEM+1 ,PEEK(B) : POKEM+6 , PEEK( B+1 ) 

POKEM-fll ,PEEK(T) :POKET + 4,0 

POKEW, 23 2:POKEW+l , 203 : PRINT" { SHFT CLR)" 

:NEW 

DATA 52200,53280,646,770,169,014,141 



RUN Sl'tOAL ISSUE 1987/121 



M 



I 



Listing continued. 

210 DATA 032,208,169,006,141,033,208,169 
220 DATA 014,141,134,002,076,131,164,017 

Joseph R. Chamctski 
Dallas, PA 

C-128 graphs — The following short program will show how 
easy i I is to create graphs in your [>rograins. As set up, the 
height is determined by a random number. In your own pro- 
graui, this will be dcteniiincd by your statistics. 

To save you the iroul^le of dividing the scale, I used the 
variable that deteiiTiines the height of each graph to tell it's 
tnagnitude. Placing it atop the appropriate bar idetiufios it 
nicely. The headings will be correlated to these also. 

REM 7.0 GRAPHS - G. L. PENKOSE 

10 PIUNT"{SHFT CLR)" :G0SUB1 00:COLOR0,1 :CHAI? 

1 , 4,23:E$=" {COMD M) ";P$=" {COMD ?}" 
20 FORl = 1T022:l^RIHTE$"{CRSR UP]{CRSR LF)";: 

NEXT: CHART ,5,23 
30 l^0KI = 1T0eeSTEP4:PRINTF$"(CRSR UP}{CRSR L 

F}";:NEXT:CHAR1 , 6 , 23 :G$=F$:F0RI=1 TO30 :PR 

INTGS;:NEXT 
40 CIIAR1 ,12,1 ,"CYAN":CIiAR1 ,18,1 ,"GRN":CHAR1 

,24 ,1 ,"YEL":CHAR1 ,30,1 ,"RED" 
50 CIIAR1 ,12,24 :A$ = " {CTRL 9HCTRL 4}{CRSR UP 

1(2 SPACES) t 2 CRSR LFs) " :F0RI=1 TOX: PRINT 

A$; : NEXT: PRINT" {CTRL 2} {CRSR LF}{CRSR UP 

]{CTRL 0)"X; 
60 CHARl ,18,24 :U$ = "{ CTRL 9HCTRL 6] {CRSR UP 

}{2 SPACES} {2 CRSR LFs) " :F0RI=1T0Y iPRINT 

B$,-: NEXT: PR INT" {CTRL 21 [CRSR LFHCRSR UP 

HCTRL 0}"Y; 
70 CHARl ,24, 24:C$ = "{CTRL, 9HCTRL 9} {CRSR UP 

){2 SPACES} (2 CRSR LFs 1 ": FORI=1 TOZ : PRINT 

C$; : NEXT: PR INT" {CTRL 21 (CRSR LFHCRSR UP 

MCTRL 0)"Z; 
80 CHARl ,30,24 :D$=" {CTRL 9} (CTRL 3} {CRSR UP 

1(2 spaces! {2 CRSR LPs )" :F0RI=1T0W: PRINT 

D$; :NEXT:PRINT"{CTRL 21 (CRSR LFHCRSR UP 

HCTRL 0}"W; 
90 COI,OR5,2:CHAR1 ,1,1 :GETKEYK$:RUN 
100 X=INT(RND(1 )*21 )+1 :Y=INT(RND(1 )*21 ) t 1 
11 Z=INT(RND(1 )*21 )+1 :W=INT(RND(1 )*21 )+1 :R 
ETURN 

G. L. Penrose 
Oakville, Ontario, Canada 

Easy on your eyes — When writing a program, it is impor- 
tant to use color combinatioos that are easy on the eyes. 
To incrca,se legibility, try to resist the temptation to put 
dark lext on a light background. Actually, a black back- 
ground is not only easier on the eyes but also makes the 
foieground colors .stand out better and gives your progi^am 
a professional appearance. 

Jay Leslie 
Hillside, NJ 



20. Programming Tips — Sound 

Selecting sheet music — Commodore computers have a 
great deal of musical talent, but they are limited to three 
voices (four for the Amiga), or, in other words, to three 
notes playing at once. Unibriiinately, most sheet music is 



arranged for die keyboard world, where up to ten notes 
can be playing at once (one for each finger), and where a 
huge double staff is used. When you computerize such 
music, choosing the three most important notes can drive 
you back to spreadsheets. 

If you want to make life easier, l)uy your sheet music in 
the finger-picking guitar de[)artment of a well-stocked mu- 
sic store. Most finger-picking guitar an^angements are in a 
three- voice format, with all voices noted on one staff, 'fhe 
finger-picking style put.sa complete lead, harmony and bass 
anangement on a single insirumenl and is taitor-made for 
Commodore computers. 

Dave Rensberger 
Brea, CA 



Crybaby's reward — A sjjecial sound effect for a losing 
game player or an incorrect trivia answer can enliven your 
programs. Try it on your C-64. Then use it with a Gosub. 

1 REM C64 CRY BABY'S REWARD 

1010 POKE54296,15: POKE54295,0 

1020 R = 54272: POKER-^6,240 

1030 POKER+1,4: POKER-^5,0: POKER-f4,33 

1040 FOR Z=1024 TO 512 STEP-8 

1050 POKER+1 ,Z/256: POKER, Z AND 255 

1060 NEXT Z 

1070 POKER-i-4,0 

1 080 REM RETURN 

W, Stuart Sewell 
Asheville, NC 



Songs in the key of C— The C-128's SID chip has great 
music capabilities and the ease of programming provided 
by Basic 7.0. There is one slight drawback, though. If you 
program a song u.sing the default note values in SID, your 
song will be in the key of F instead of in die key of C. That 
means you cannot accompany your 128 on the keyboard 
or piano without first transposing the music. 

The accompanying program will play the default scale, 
then a C scale using the Sound command to demonstrate 
the difference between the two scales. 

1 REM GIVE ME A C - NEAL SMITH - C-128 

1 TEMPO 8 

20 PLAY"V1O4T7U15X0CDEFGABO5C":SLEEP1 

30 READA: SOUND! ,A,30: IFA=0THENEND:ELSEGOTO3 


40 DATA4297, 4822, 541 2, 5724, 6429, 721 7, 81 02, 8 

578,0 

Neal Smith 
Rochester, NY 



From the Grand Ole Opera— My program plays "The Ma- 
rines Hymn," which was written in 1868 for an opera by 
Jacques Offenbach. I've converted it to C-1 28 Basic. I hope 
you enjoy it 

10 REM GRAND OPERA C-128 - JESSE B BROWN 
20 TEMPO 31 :PLAY"V1O4T0U15X0":PLAY"V2O3T0U1 

5X0" 
30 A$="V1O4.QEV203.QEQPV1O4QFMHGV2Q3HFHFV1Q 

4HGMQFV2O3QF.nDV104.HDMWCV2O3WEMVl 04HBV2 

03$HFHRV1 04 .QCQEM" 



1 22 / RUN SPECIAL ISSUE \m 



M 



Luting cotttiTiued. 

40 B$="V104HGV203HGHGV104HGMHGV203HGHGV104H 

GMWGV203HEV202HEMV1 04HGV202HAHAV1 04 . QEQF 

MIiGV203HClICVl CIHCM" 
50 C$="V104QFV203QD.llFV104.HDMWCV203HCV202n 

BMV1 04HCV202QAQGV1 04 .QCIEMHGV203HGHGV1 04 

HGMHGV203HFHFV104HGM" 
60 D$ = "V104.HGV203I1C02HBV105QCM04HGV202HAHG 

V104.QEIFMHGV203HCHCV104HGQFV203QD.HFV10 

4 . HDMWCV203HC02HBM" 
70 E$="V1 04HCV202HAHGV1 05 ,QC04IBMHAV202HF03 

HCV104HFMHAV203HF02[iFV104HFM.HGV203HC02H 

BV1 04QAMHGV202HAHGV1 05 .QC04IBM" 
80 F$="V1 04HAV202HF03HCV1 04HFMWAV203HFHCM04 

V203HGV1 04WGV203HBMV1 O4QGV203$QBV1 04QRV2 

03QRV104.QCV203HRV104IEM" 
90 G$="V1 04HGV203HGHGV1 04HGMHGV203HFHFV1 04H 

GM. HGV203HC02HBV1 05QCMO4HGV202HAHGV1 04 .Q 

EIFM" 
1 00 HS=" V1 04HGV203HCHCV1 04HGMQFV203QD . HFV1 
4.HDMV203.QCV1O4WCO2IGQAQGQEMV1O4QCV2O2 
QCQRV104QR05QCV202QCQRV104QRM" 
1 1 PLAYA$ : PLAYB$ : PLAYCS : PLAYDS : PLAYES : PLAY 
F$:PLAYGS:PLAYI!$ 

Jesse B. Brown 
Eunice, LA 



C-128 Beethoven— Here's a program that creates a C-128 
version of a piece of music actually written by Bcctlioven. 

10 REM 128 BEETHOVEN-JESSE B BROWN 

TEMPO! 6: ENVELOPE 6,3,8,5,9,2 

AS="V103T6V15XaHGIAIGIAIBQG041GIDID03IBI 

BIG04HC03IBIAIB" 

B$="O4IC03QAO4IDIEID03IB04ICO3IAHGIAIGIA 

IB04HCIEIDIEjlfIFIGIDIEIC" 
50 C$ = "03IB04IC031AllAgGQRHA04IC03IBIB04ICIA 

IG#IFIEIDIC03HB04IDIC031B04IC1EIDIBIAIG// 

IFIEIDIC" 
60 D$="03QB04IG#IFIGIAIBQCIB04ICIDIC03IATB0 

4HDQDQDHDQDQB05HDQDQD04HBHRHDQDQDHDQG05Q 

DQR" 
70 E$ = "O4;i/QFQRQGQR03QGHGHGWG" 
80 PLAY AS: PLAY BS : PLAY C$ : PLAY D$:PLAY E$ 

Jesse B. Brown 
Eunice, LA 

Trumpet fanfare — Here's a trumpet fanfare introduction 
for your important screen announcements. Try i( in your 
C-64 or C-128 (in 40- or 80-column mode) programs. To 
balance the slower speed in the C128's 40'cohimn mode, 
change the delay value in line 90 from 200 to 125, Also be 
sure you're in bank 15. 



20 
30 

40 



10 
20 
30 

40 
50 
60 
70 
80 

90 



110 



REM TRUMPET FANFARE - W. STUART SEWELL 

F0RX=1T08:READFH{X) ,FL(X) :NEXT 

WF=64:A=3:D=0:SU=15:R=10:AD=A*16+D:SR=SU 

*16+R 

S=54272 : FOR I=STOS+24 :POKEI,0: NEXT 

POKES +24 ,1 5:POKES+5,AD:POKES+6,SR 

READN:IFN= THEN END 

IFN=9THEN F0RI=1 T01 25 :NEXT:GOTO60 

POKES t1 ,FH(N) : POKES, FL(N) : IFWF=64THENPOK 

ES+3,7:POKES+2,150 

POKES+ 4 , WF+ 1 : F0RT=1 TO200 : NEXT : POKES+ 4 , WF 

:GOTO60 

DATA 28,49,31 ,165,33,135,37,162 

DATA 42,62,44,193,50,60,25,30 



120 DATA 8,3,5,7,9,7,5,9,5,3,5,3,8,9,9,9 
130 DATA 8,3,5,7,9,7,5,9,5,3,9,3,8,9,8,3,9, 
9,9,0 

W. Stuart SeweU 
Asheville, NC 



21. Programs— Amusements/Delights 

Christmas card — Type in this program on your C-64 or 
C-128, put the [)rogram away widi die ornaments, and take 
a look at it next year, 

10 REM CHRISTMAS CARD - AUTUMN BAYLES 

20 POKE53281 ,13:POKE53280,10:PRINT"{SHFT CL 

R}{CRSR DN)" 
30 X$="{CTRL 6)H0":Y$="{C0MD 3) HO" :F0RT=1 TO 

9:PRINTTAB(T) ;X$;TAB(20-TJ ; Y$:NEXT:PRINT 

TAB(T) ;X$ 
40 FORJ=nTO20:PRINTTAB(20-JJ;Y$;TAB(J) ;X$: 

NEXTJ 
50 PRINTTAB(18) ;"(n CRSR UPsKCOMD 3) MERRY 

CHRISTMAS(10 CRSR DNs}" 
60 FORC=5TO10STEP5:FORP=557 5 4TO557 68:POKEP, 

C : NEXT ;F0RT=1 TGI 00: NEXT: NEXT :GOTO60 

Autumn Bayles 
Nazareth, PA 



Funny Valentine — Can a computer program make you cry? 
Depending on your mood, it might. This one, for the 
C-64, plays a bell-like rendition of this well-known bitter- 
sweet song. 



10 PRINT"! 

ARNETSK 
20 F0RJ=1T 

5THENPR 
30 RESTORE 

,0:NEXT 
40 READN,D 
50 POKES+1 
60 P0KES-+4 

70 POKES ■^ 4 

71 DATA 59 

72 DATA 59 

73 DATA 59 

74 DATA 79 

75 DATA 67 

76 DATA 71 

77 DATA 71 

78 DATA 1 1 

79 DATA 79 

80 DATA 94 

81 DATA 67 

82 DATA 79 

83 DATA 79 



JOSEPH R. CH 



SHFT CLRIVALENTINE 

I":PRINT 

015 4:READK:CS=CS-fK:NEXT:IFCS<>624 

INT"DATA ERROR! ": STOP 

:S=54272:V=S-f24:FORJ=STOV-1 :POKEJ 

:P0KEV,15 

: IFD=255THENPRINT" MAGIC! " :END 

,N:POKES-f5,9:POKES + 15,9 

,17:FORDL=1TOD*250:NEXT 

,0:FORDL=1TO45:NEXT:GOTO40 

,3,67,1,71 ,1 ,67,1,71 ,1,67,5 

,2,67,1 ,71 ,1 ,67,1 ,71 ,1 ,67,6 

,2,67,1 ,71 ,1 ,106,3,94,1 ,89,1 

,7,71 ,1 ,67,1 ,106,3,71 ,1 ,71 ,2 

,1 ,71 ,5,71 ,1 ,67,1 ,119,3,71 ,1 

,2,67,1,71 ,5,71 ,1 ,67,1 ,134,3 

,1 ,71 ,2,67,1 ,71 ,3,79,1 ,89,1 

9,5,71 ,2,79,1 ,89,1 ,79,1 ,89,1 

,3,71 ,5,59,2,67,1 ,71 ,1 ,106,3 

,1 ,89,1 ,79,7,59,2,67,1 ,71 ,1 

,1 ,71 ,1,67,3,71 ,2,79,1,89,1 

,1 ,89,1 ,79,3,71 ,2,79,1 ,89,1 

,1,89,1,79,3,71,10,0,255 

Joseph R. Chamctski 
Dallas, PA 



Spritebusters — Thi.s sprightly sprite is out of sight! In white 
and red on any suitable background, he's very much worth 
seeing. Lines 10-90 are a multicolor version of the Sprite 
Demo progiam we've printed in our 1986 Special Issue. If 
you already have that program, jusi change line 60 to read 
as shown, add the sprite and watch that you don't get 
slimed. 



RUN si'KCIAL mv£ mi 1 123 



M A 

10 REM MULTICOLOR SPRITEDEMO C-64 - LFS 

20 POKE53281 ,16:PRINT"{SHFT CLR){COMD 7) {4 

CRSR DNsl" 

30 FORS=832T089 4:READT:POKES,T:NEXT 

40 V=53248:POKE2040, 1 3 :REM SPRITE AREA 

50 POKEV+21 , 1 :REM DISPLAY SPRITE 

60 P0KEV+2e,1 :POKEV+37,l : POKEV+38 , 2 : PQKEV+3 

9, 2: REM MULTICOLOR SETUP 

70 POKEV+1 ,60:REM Y POSITION 

S0 FORJ=1T0255:PQKEV,J:NEXTJ:REM X PCS 

90 LIST 

91 REM SPRITEBUSTERS - TIM WHITECOTTON 

92 DATA 000,001,064,000,021,080,000,085 

93 DATA 064,003,085,064,005,153,240,005 

94 DATA 085,240,053,085,124,245,153,127 

95 DATA 065,101,255,213,087,255,197,095 

96 DATA 195,085,127,065,193,253,087,195 

97 DATA 253,087,255,213,085,255,085,067 

98 DATA 253,085,079,061,085,124,015,215 

99 DATA 240,01 5, 255, 240, 003, 255, 192, ( 



Tim Whitecotton 
Manson, LA 

Racehorse — This program packs so much into a short 
space that we've waiveci Magic's usual limit ofouc screenful 
for the listing. On the C-64, it shows an animated galloping 
racehorse, complete with jockey and sound effects. If you 
want to use the sprites elsewhere, they're presented in our 
normal form; each sprite corresponds to one position of 
the galloping horse, 

10 PRINT" {SHFT CLRltCOMD 7)RACEH0RSE - BOB/ 

DAVE SNADER" 
20 POKE53261 ,1 :FORJ=832T0959:READK:POKEJ,K: 

NEXT:B=13:S=54296:V=53248 
30 POKE2040,B:FORJ=0TO1 00 :NEXT: POKEV+21 ,1 :P 

OKEV+39, 9: POKEV+1 , 1 50 :P0KEV,X:X=X+5 
40 FORJ= 5T01 5STEP5 : POKES , J : POKES , : FORK = 0TO 

50: NEXT: NEXT :IFX=255THENEND 

50 B=14+IB=14):GOTO30 

51 DATA 000,000,000,000,000,000,000,000 

52 DATA 000,000,000,000,000,000,000,000 

53 DATA 001,000,000,003,192,000,003,128 

54 DATA 000,030,016,048,063,188,121,190 

55 DATA 127,135,255,255,015,255,240,015 

56 DATA 255,224,007,255,192,007,255,192 

57 DATA 015,057,224,018,000,176,011,128 

58 DATA 144,004,069,096,002,002,000,000 

59 REM 

50 DATA 000,000,000,000,000,000,000,000 

61 DATA 000,000,000,000,000,000,000,000 

62 DATA 002,000,000,007,128,000,007,000 

63 DATA 000,030,016,048,063,188,249,190 

64 DATA 127,007,255,255,015,255,240,015 

65 DATA 255,224,007,255,192,007,255,192 

66 DATA 015,057,224,028,000,216,054,001 

67 DATA 160,065,000,016,128,000,008,000 

Bob Snader and David Snader 
Baltimore, MD 

March Hare — His live appearances are legendary. Since 
Alice in Wonderland, his name has been a householcl word. 
But until this very momeiU, the March Hare has never 
appeared on a monitor screen. Now Magic has lured him 
there, where his wonders await you. 

Run the following progiam on your C-64. To see Hare's 
classic role, press and release the space bar. 



1 REM MARCH HARE - BOB & DAVID SNADER 

20 PRINT"{SHFT CLR} " : V=53248 :L=1 70 : S=2040 

30 FORN=832T0959:READQ:POKEN,Q:NEXT 

40 PQKEV + 21 ,3:POKEV-»-33,6:POKEV + 39,0 

50 PQKEV+ 40, 1 :POKEV,L: POKEV+1 ,L 

60 POKEV+2,L:POKES,13:POKES+1 ,14 

70 IFPEEK(197) <:>64THENL=140 

80 POKEV+3,L:L=17 0:GOTO70 

81 DATA 000,000,000,000,000,000,000,000 

82 DATA 000,031,128,252,120,000,015,031 

83 DATA 255,252,007,255,240,007,255,240 

84 DATA 003,255,224,003,255,224,003,255 

85 DATA 224,007,255,240,007,255,240,007 

86 DATA 255,240,015,255,246,015,255,248 

87 DATA 015,255,248,031,255,252,000,255 

88 DATA 128,000,000,000,000,000,000,000 

91 DATA 001,128,192,001,193,192,000,193 

92 DATA 128,000,099,000,000,062,000,000 

93 DATA 107,000,000,054,000,000,156,128 

94 DATA 000,193,128,000,255,128,000,255 

95 DATA 128,001,099,064,001,107,064,001 

96 DATA 136,192,001,255,192,000,255,128 

97 DATA 012,127,024,015,221,248,000,000 

98 DATA 000,000,000,000,000,000,000,000 

Bob Snader and David Snader 
Baltimore, MD 



C-128 lines & sounds — This one-liner gives an entertaining 
random display. It shows how much can be done in a single 
line when you have 100 characters to work with. 

1 COLOR0,1 :C0L0R4,1 :COLOR3 ,R^^D( ) +1 4 +2 :GRAP 
HTC3,1 :J=RND(0)*5+1 :N=RND( ) *7 :DRAW3 ,N*4 5 
.7,J*33TOJ*N*7,N*28.5:P$="0"+CHRS(48+J)+C 
HR$(65+N) :PLAYPS:G0T01 

J. C, VoUmer 
Prior Lake, MN 

Bunny Hop^This game for the C(i4 or C-128 in f)4 mode 
lets you put the Easter liunny into his baskeL To make 
him hop, hold down any key for a second or so. The longer 
you hold it, the farther Mr. Rabbit jumps. If he misses the 
basket, he returns to his starting place and lets you try 
again. When you put him into the basket, the program 
tells you how many hops it took. 

Y<ju can make the game more difficult by increasing the 
value of X in line 35. That moves the starting point closer 
to the basket, making the target harder to hit. 

10 PRINT" {CTRL 8} {SHFT CLR}{CTRL 11 MAGIC B 

UNNY HOP - BOB 8 DAVE SNADER {CRSR DN ) " 
15 H=1 :V=53248:POKE2040,13:POKE1805,76:POKE 

1808,122 
20 FORJ = 83 2T0879 : READK : POKEJ , K : NEXT 
25 FORJ=880TO896: POKEJ, 0:NEXT 
30 POKEV+21 ,1 :POKEV+3 3,5:POKEV+39,1 
35 X=50:Y=192:F=0:G=0:POKEV,X:POKEV+1 ,Y 
40 IFPEEK( 197)=64THENGOTD40 
45 IFPEEK( 1 97 ) <> 64THENF = F+ . 04 :GOT045 
50 P0KE1 98, 0:POKEV,X:X=X+F: POKEV+1 ,Y 
55 Y=Y-1 .5+F+G:G=G+.05:IFY<0THENY=0 
60 IFY<:192ANDX<255THENGOTO50 

66 IFX>195ANDX<212THENPRINT" YOU DID IT IN" 
;H;"I!OPS";END 

70 FaRJ=0TO700:NEXT:H=H+1 :GOT035 

71 DATA 008,000,000,012,000,000,014,024 

72 DATA 000,007,060,000,001,066,000,! 



124 / RUN SPECIAL ISSUE 1987 



M 



Listing contimifd. 



73 DATA 224,000,000,248,000,000,240,1 

74 DATA 003,128,000,007,128,000,015,128 

75 DATA 000,031,224,000,031,032,000,127 
75 DATA 000,000,126,000,000,031,240,000 

Bob Snader and David Snader 
Baltimore, MD 



April 1 Magic — If you appreciate practical jokes, you'll 
have endless fun with these April Knols subroutines. The 
first one simulates ihc Ready prompt, leading one to be- 
lieve that the main Basic program is finished. Hovt'ever, 
nothing could be furiher from the truth. 

The first subroutine is composed of lines 699-750. 
These give the bogus Ready prompt, which, for the next 
30 seconds, waits for you to press any key. If you do, an 
interesting message appears on the screen, and the 30- 
second timer is reset. If no key is pressed, the subroutine 
finishes so quietly that nobody is the wiser. 

To get the second subroutine, replace lines 740 and 750 
with lines 770 aivd 780. This time, the subroutine also waits 
30 seconds. If a key is pressed during this period, the subrou- 
tine terminates unobtrusively, and your computer will ac- 
cept normal keyboard input. But if die Magic key defined in 
line 700 is pressed, program execution is transferred to line 
780. You can put anything at all there, including hundreds 
of additional program lines. 

As printed, the program runs on the C-64 or VIC-20. 
For the C-128, you must change the value of C in line 
700, using the number listed in line 790. You can change 
the program's time delay or the Magic character by mak- 
ing appropriate changes to line 700. If you disable your 
stop key before executing the subroutine, you'll keep 
others from discovering your trick. 

699 REM LARSON E. RAPP 

700 C= 204 :DELAY= 5000 :MAGIC$="*":POKEC,0 
710 PRINT" (CRSR DN] READY. " :F0RJ=1T0DELAy:GE 

TAS 
720 IFA$=""THENNEXT:PRINT"(2 CRSR UPs}";:EN 

D 
730 P0KEC,1 :J=DELAY:NEXT 
740 PRINT" (CRSR UP} {CRSR LF] HANDS OFF, BUD 

DY!" 
750 FORK=1TO500:NEXT:RUN700 
760 : 
770 1FA$<>MAGIC$THENPRINT"{2 CRSR UPs)";:EN 

D 
780 PRINT"PROGRAM CONTINUES HERE": STOP 
790 REM C=2599 FOR CI 28, 204 FOR VIC&C64 



Larson E, Rapp 
Newington, CT 



Summertime magician— This C-64 audiovisual spectacular 
shows a miracle worker in full flower. There are no bugs 
in the program, but there is a CHRS(66) that you'll only 
see when you run it. 

10 PRINT" {SHFT CLR ) { CTRL 2 ) SUMMERTIME MAGIC 

IAN - BOB fi DAVID SNADER 
15 S=54296:V=53248 

20 FORJ=832T0959:READK:POKEJ,K:NEXT 
25 PORJ = 0TO7:READK,L;POKEV4-K,L:NEXT 
30 S= 54296 : V= 53248 ;FORJ=0TO255:POKEV, J 



35 
40 
45 
50 
51 
52 
53 
54 
55 
56 
57 
60 
61 
62 
63 
64 
65 
66 
67 
70 
71 



POKES 

IFB = 1 

B = 14 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 

DATA 



. 5:POKE2 

4THENB=1 

NEXT 

240 
003 
016 
143 
009 



040,B:POKES 
3:GOT035 



,0 



255 
001 
085 
145 



000 



003 
085 
145 
000 
000 
032 
039 



000 



016 
255 
009 



005 
007 



,003,252 
255,001 ,000,255, 
000,063,016,000, 
028,073,153,093, 
153,085,001 ,153, 
000,004,064,000, 
064,000,017 



003,255 
004,000 
063,004 
025,153 
020,000 
001 ,016 



-000,001 ,000 
.000,000,016 
028,075,252 
153,085,001 
000,004,064, 
064,000,017, 

rt rt rt ri 



,000,000,000 
,033,014,037 
.^21 ,001 ,028 



,000 


,004 


r000 


,000 


000 


r004 


,093 


025 


249 


,153 


020 


,000 


,000 


001 


016 


,000 


000 


000 


,000 


000 


000 


,000 


036 


015 


,001 


001 


108 



Bob Snader and David Snader 
Baltimore, MD 

Jotto answers— A guessing game named Jotto appears on 
p. 145 in my copy of Commodore 64 User's Guide. If you're 
like me, that was one of your first programs. The accom- 
panying lines, an acce.s.sory to that program, will show you 
all the right answers. Just add them to the original un- 
changed Jotto, then .save the combined program under 
some appropriate name. 



10 

20 
30 
40 
50 
60 
70 
80 
90 



PRINT" (SHFT CLR) JOTTO ANSWERS 

MADSEN{CRSR DN } " 

FORJ=1TO50;READAS 

F0RK=1T05 

T$(K)=MIDS(AS,K,1 ) 

JK=ASC(T5(K) ) iJK^JK-l 

PRINTCHRS(JK) ; 

NEXTK 

PRINT 

NEXTJ 



CARL E. 



Carl E. Madsen 
Bayard, lA 



C-64 multiple elevators— Here's a neat litde trick for the 
C-64. Hope you like it! 

1 REM C64 MULTIPLE ELEVATORS 

10 PRINT" {SHFT CLR}" 

20 POKE 220,234 

30 PRINT"MULTIPLE ELEVATORS" 

40 GOTO 30 

Tim Dunn 
Edgewood, KY 

Commodore kudos— Ever wonder who are the real wizards 

whose magic lets you perform all those amazing tricks on 
your C-128? Enter the following incantation on your 
screen and press the return key to find out. 

SYS32800, 123,45,6 

You will also see a bit of advice we would all do well to 
follow. 

Daniel Miller 
Astoria, NY 



RUN SPECIAL ISSUE 1987 / 125 



M A 

0128 spiralgraph— Here's a three-line update to Matt 
Woodring's "CM 28 boxed spirals" (see p. 30). It changes 
most of the variables to let the 128 really do its thing. 

! COLOR 0.1:COLOR 4.1 

5 A a n;Xl - 0:V1 = (J:X2 = 1G0:Y2 = 195 

10 GR/VJHIC .5,l:FOR J - TO 360 STEP A:BOX 

3.Xl,Yl.X2,Yaj.(l:XEXT 
20 .A = A-..i5:Xl»Xl+5;Yl=Yl + 5^2 = X2-5;Y2 = Y2-5;GOTO 10 

James D. Hanke 
Yakima, WA 



Up, up and away C-64— Whoever said piloting a hot-air 
balloon wa.s easy? Windspeed, the rate of ascent and de- 
scent, the balloon's fuel consumption and the navigation 
of the contraption all add up to create a pilot's nightmare. 
This program opens with the balloon rising from the bot- 
tom of the screen. The balloon's buoyancy is controlled 
by alternately pressing and releasing any key until you 
alight on the landing pad at the opposite end ofthe screen. 

Obstacles have been placed in the sky to keep your 
journey to the landing pad challenging. While keeping an 
eye on die fuel gauge at the top of the screen, navigate 
over the first obstacle, under the second and then land on 
the pad. Avoid hard landings and bypassing or colliding 
with anything on the screen. 

AUhough it is unlikely you'll want to do so, the level of 
difficulty can be increased by changing the wind speed, 
fuel allotment and obstacle locations (LI and L2) in the 
first line ofthe program. 

If) PRINT" (SHFT CLR}UP, UP AND AWAY - THE SN 

ADEHS" :FUEL=250:WIND=20:L1 =1 395:L2=1 724 
20 X=40:Y=228:B=1 : V=53248: P0KE1 61 2 , 68:POKE2 

040,13:POKEL1 ,42:POKEL2,42 
30 FORT=0TO7:RERDQ,D;POKEV-fQ,D:NEXT:FORT = 83 

2T089 5 : READQ : POKET , Q: NEXT 
40 IFPEEKI 1 97) <>64THENA=-.03:FU=FU-1 
50 B=B-A:Y = Y-B:P0KEV-f1 , Y :X = X+Wl/50: POKEV,X: 

A=.03 
60 IFPEEK(V■^31 ) = 1 ORY>229ORX>250ORFU<0THENPR 

INT" GAME OVER - TRY AGAIN! ":END 
70 IFX>239ANDX<24 3ANDYM41AKDY<145ANDB>-.5A 

NDB< . 5THENPRINT"NICE LANDING 1 " -.END 
80 PRINT" { HOME 1 (CRSR DN } FUEL {4 SPACES H 4 C 

RSR LFS)";FU: PRINT" BUOYANCY {4 SPACES] (4 
CRSR LFsl";INT(B*100) :GOTO40 

90 DATA 21,1,28,1,31,0,32,2,33,1,37,12,38,2 

39 7 

91 DATA 002,170,128,042,170,168,170,170 

92 DATA 170,234,234,234,234,234,234,187 

93 DATA 187,187,187,187,187,110,174,173 

94 DATA 110,174,173,074,170,161,018,170 

95 DATA 132,018,170,132,004,170,016,004 

96 DATA 170,016,001,040,064,001,040,064 

97 DATA 000,065,000,000,065,000,000,085 

98 DATA 000,000,085,000,000,085,000,000 

Bob Snader and David Snader 
Baltimore, MD 



Son of Burrow— I've added color and sound to Magic's first 
published trick C$()0,january 1984). My little toddler enjoys 
watching it, but hey, so do I! 

REM SON OF BURROW - DOUGLAS BURR 

1 AS="(CRSR UP H CRSR DN){CRSR RT} {CRSR LF)" 
:B$ = "{CTRL 1){CTRi:i 2} (CTRL 3} (CTRL 4HCTR 



i I c 

L 5) (CTRL 6) (CTRL 7} (CTRL 8}[C0MD 1](CCIMD 

2 } { COMD 3 1 ( COMD 4 1 { COMD 5 5 { COMD 6 } { COMD 
7} ICOMD 8}":DIMH(16) :F0RI=1 T01 6 :READH( 1} : 
NEXT:W=54276 

2 F=5427 3:DATA39,37,42,4 4,47,50,5 3,56,59,63 
,67,71 ,75,79,84,89:FORS=5427 3T05 4296 

3 POKES , : NEXT : POKE542 96,15: POKE54 277 , 1 00 : P 
OKE5 42 78,100:POKEW,33 

4 D=INT{ l + (16-l-fl )*RND{ . ) ) :PRINTMIDS{AS,RND 
(. )*4 + 1 ,1 )"*{CRSR LF}"; 

5 PRINTMIDS(B$,RND( . >*16+1 ,1 )"{CTRL 91 {CRS 
R LF}";:POKEF,H(D)/3.5:GOT04 

Douglas Butt 
White Plains, NY 

Typing for toddlers— Children will have fim printing short 
messages they've typed on the screen, without having to 
load a word processor. Type in this little program. 

REM SIMPLE TEXT PRINTING - JERALD DROWN 
10 OPEN 4,4,7 

20 INPUT"TYPE IN WORDS:" ;AS 
30 PRINT#4,A$ 
40 GOTO 20 

Youngsters can type in ivords or short messages, which 
will print out on hard copy when diey press the return key. 

Jerald Brown 
Erlanger, KY 

The way we were — Sometimes there's magic in memories. 

We're not old enough to long for NASA's good old days, 
but we will, for a while at least, miss the scene depicted in 
this program. 

We think this C-64 program produces a pretty spectac- 
ular display. Turn up the volume on your monitor to get 
the full effect. 

1 REM THE WAY WE WERE - BOB & DAVID SNADER 
- C-64 

10 PRINT" {SHFT CLR){2 CRSR DNs}THE WAY WE W 
ERE. . .":PRINT"{2 CRSR DNs}PRESS ANY KEY 

20 V=53248:S=54273:B=3:POKE2040,13:POKE2041 

,1 4:FORJ=642T091 9:READK:P0KEJ,K:NEXT 
30 FOR J=0TO2:READK,L: POKES +K,L: NEXT :FORJ=0T 

08 : READK , L : POKEV-fK ,L : NEXT 
40 GETK$:IFKS=""THEN40 
50 FORC=9TO0STEP-1 :PRINTC;"(3 CRSR LFs)";:P 

OKES-f23,15:POKES-f23,0:FORT=0TO950:NEXT:N 

EXT 
60 FORY=245TO40STEP-1 :P0KEV-f1 , Y-40: P0KEV-f3 , 

Y!POKEV-t-23,B:IFB=lTHENB=3:NEXT:RUN 
70 B=1 :POKESt-23,(Y/15)-2:POKES,Y/6:NEXT 
80 DATA 16,0,0,124,0,0,254,0,8,254,32,28,25 

4,112,62,130,248,62,56,248,62,84,248 
90 DATA 62,124,248,60,124,120,57,109,56,57, 

109,56,35,109,136,15,109,224,63,125 
100 DATA 248,254,0,254,0,108,0,20,0,80,0,0, 

16,0,8,56,32,28,124,112,62,124,248,28 
110 DATA 56,112,28,56,112,8,56,32,0,16,0,4, 

128, 5,128, 3, 129, 21, 3, 23,1, 39,1, 40, 8,0 
120 DATA 220,2,220,1,207,3,245,33,6 

Bob Snader and David Snader 
Bald more, MD 



126 / RUN SPECIAL ISSUE 1987 



M A 

A plane joy — The following program creates an airplane 
and stores it as sprites. You can then move the airplane in 
three directions with a joystick in port 2. This program 
could provide the groundwork for a simple game. 



10 
15 
2i 
30 
40 
50 
60 
70 
80 

90 
100 

11 
120 

130 
140 
150 
160 
170 



REM C-128 

GRAPH IC1 

SCNCLR 1 : 

DRAW1 ,5,1 

DRAWl ,4,1 

DRAWl ,24, 

DRAWl ,21 , 

DRAWl ,21 , 

BOX 1 ,23, 

3,13,4,14 

DRAWl ,6,1 

0,12 

DRAWl ,21 

T05 , 1 5 

DRAWl , 1 1 

SSHAPEA$ 

BOX0,0,0 
IFJ0Y(2) 
IFJ0Y(2) 
IFJ0Y(2) 
IFJOY ( 2 ) 



PLANE JOY - DAVID ZAJAC 

BOX 1 ,1 ,1 ,29,29 

1 TQ5 , 1 2 

2T09,12T08,11 

12T024,1 4 

11T024,11T024,9T023,8T025,8 

10TO23,8 

10,24,1 2 :B0X1 ,22,1 4,25,1 5 :B0X1 , 

0TO9 , 1 0TO1 , 1 1 T01 1 , 1 1 T01 2 , 1 2T02 

, 1 5T01 8 , 1 5T01 7 , 1 4T01 1 , 1 4T01 0,15 

,16T017,16 

,3,7,25, 30 :SPRSAVA$,1 :SPRITE1 ,1 

,30,30,,1 :M0VSPR1 ,150,100:00 
=6THENM0VSPR1 ,260 H^0 
=7THENM0VSPR1 ,270 #10 
=8THENMOVSPR1 ,280 #10 
>1 27THENM0VSPR1 ,0 #0: ELSE: LOOP 

David Zajac 
Alhambra, IL 



"HoUaday" snowflakes— Ihis program produces a series 
of snow-flakes by drawing triangles in different colors and 
rotating them through 3()() degrees. Run this program on 
the C-128 in 40-column mode. 

10 REM SNOWFLAKES - HARMON K. HOLLADAY 

20 GRAPHIC 1,1: COLOR 0,1: COLOR 4,1 

3f) F0RI = 1T05:Z = Z + 1 

40 IFZn60RZ<lTHENK = 2 

50 C0L0R1 , Z 

60 X = X+10:IF X=>300TflENX = 10 

70 Y=Y+1 0: IFY=>200THENY=1 

80 A=A-10:IFA<=10THENA=300 

90 B=B-10:IFB<=10THENB=200 

100 FORJ=0TO360STEP30 

110 CIRCLE 1 ,tX^-A)/2,(Y + 3)/2,ABS{A-X)/2,ABS 

{B-Y)/2, ,,J,120 
120 NEXT: NEXT 
130 SCNCLR :GOTO30 

Harmon K. Holladay 
Dodge City, KS 

Ultia hi-res string art — Here's a program I originally typed in 
froiTi I he VIC-20 Super Expander Programmer's Guide. I mod- 
ified il to work with the C-128 Ultra Hi-Res module (RUN, 
February lOSfi). It draws two ever-changing lines that swirl 
around on the screen. Tlii.s program is simply fun to watch, 
especially if you have an RGBI monitor. 

10 REM ULTRA MI-RES STRING ART-JEFF GOODE 
20 FAST:TRAP230:DIMA%{200,3) : PCLR ,0 : F0RL=1 T 

05 
30 SC = INT(RND(1 t*16-i-l ) 
40 CH=INT(RND(1 )*16+1 ) :IFCH=SCTHEN40 
50 tdGRAPHIC,SC,CH 
60 X=INT(RND(1 )*1280/2) 
It) y=INT(RND( 1 )*400/2) 
80 X1=INT(RND{1 )+320*2) 



90 Y1 =INT(RND( 1 ) *100*2> 
100 CI =0:C2=0:FORM=0TO200 

1 10 IFCl <1THENC1 =5-tIMT(RND(1 )*10) :RE = INT(RN 

D(1 )*3)+1 
120 1FC2<1TI1ENDX = INT(RND(1 )*41 ) -2 0: DY=INT( R 

ND(1 )*41 }-20:DA=INT(RND(1 )*41 ) -20 
130 IFC2<1TnENDB=lNT{RND(1 )*41 )-20:C2=15+IN 

T(RND(1 )*10) 
140 X=X+DX:Y=Y+DY:X1=X1+DA:Y1=Y1+DB 
150 IF(X<0)OR(XiG39)TnENDX=-DX;X=X+DX*2 
160 IF{Y<0)OR(Y>199 }THENDY = -DY: Y = Y-tDY*2 
170 IF(X1 <0)OR(X1 >639)THENDA=-DA:X1=X1+DA*2 

180 IF(Y1 <0)OR(yi >199)THENDB = -DB:Y1=YWDB*2 

190 CI =C1-1 :C2=C2-1 

200 @DHAW,A%(M,0) ,A%(M, 1 ) , A%{M, 2 } , A%( M, 3 ) , 

210 @DRAW,X,Y,X1 , Y1 , 1 : A% ( M, 1 =X : A% ( M, 1 ) = Y : A 
%(M,2)=X1 :A%{M,3)=Y1 

220 NEXT:NEXT:SLEEP5 

2 30 L^TEXT: HELP: END 



Jeff Goode 
Burlington, CT 

Random 3-D shapes — This progj-am draws and erases .sev- 
eral 3-D shapes in random sizes on the C-128. 

1 REM 3D SHAPES-M. N. CARSWELL 

2 COLOR0, 1 :C0L0R1 ,2:COLOR4,l :GRAPHIC1 ,1 :D0 

3 FORJ=1TO15:X=160:Y=100 

4 XR = INT(RND(1 ) + 30 ) + 80 : YR = INT ( RND ( 1 )*30)+60 

5 IFD=0THEND=1 5:ELSEIFD=1 5THEND=45 : ELSEIFD= 
45THEND=60;ELSEIFD=60THEND=90:ELSEIFD=90T 
HEND=15 

10 C0L0R1 ,3:FORI=XRTO0STEP-(XR/6>:CIRCLE1 ,X 
,Y,1,YR,, , ,D:NEXT 

11 COLORl ,8:FORI=YRTO0STEP-(YR/6) iCIRCLEI ,X 
,Y,XR,I,, , ,D:NEXT 

12 FORI=VRTO0STEP(-YR/6) : CIRCLE0 , X , Y, XR , I , , 
,,D:NEXT 

13 FORI=XRTO0STEP-(XE/6) : CIRCLE0 , X , Y, I , YR , , 
,,D: NEXT: NEXT: LOOP 

M. N. Carswell 
Eatonton, GA 



More snow — Here's another snowmaker for the C-128. The 
technique used here is the same as that used to draw a star. 
The program will run until you press the stop key. 

10 REM MORE SNOW - JIM BORDEN 

20 COLOR0,1 :C0L0R1 ,2:X=RND(-TI) :DIM X%(50), 

Y%(50) 
30 DO:R = INT(RND( 1 ) *90 ) + 1 0:NS=INT( RND{ 1 )*10) 

*2 + 5:GRAPHIC 1 ,1 :Z=0 
40 AN=2*{PI1/NS:F0RX=AN TO 2*{PI}+.1 STEP A 

N :Z=Z+1 
50 X%(Z}=R*SIN(X)+160.5:Y%(i:)=R*COS(X)+100. 

5: NEXT 
60 LOCATE X%(NS} ,Y%(NS) :S=INT(NS/2)-INT(RND 

(1 )*4) :N=S:IFS=0THEN60 
70 WIDTH2:IFNS/S=INT(NS/S)TKEN60 
80 F0RX=1T0NS:DRAW 1 ,RDOT( ) ,RDOT ( 1 ) TO X%( 

N),Y%(N) 



RUN SPECLU ISSUE 19S7 / 1 27 



M A 

Listing continued, 

90 N=N+S:IFN>NSTHENN=N-NS 

100 NEXT :SLEBP2: COLOR! ,RND(1 )*15+2:LOOP 



Jim Borden 
Carlisle, FA 

Space Caverns — One day, while piloting your mining 
cruiser back home, your ship begins to tremble and shake. 
Your cniiser has entered the dreaded Space Cavernsl 

When you run this C-(J4 program, the number you see 
in the iipper-lefi corner of the screen is the cavern vvidtii. 
To make your journey more difficult, use ihc Fl key to 
decrease the width and then press any other key to begin. 

To pilot your ship, press the cursor-down key to go left 
or cursor-right to go right. The game is over if you hit the 
cavern wall, and your score will be displayed. For every 
cavern width less than nine, you get 150 points, and for 
every star you pass, you get one point. 

Good luck, space cadetsi 

REM SPACE CAVERNS 64 - MIKE GEBIS 

1 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,(5,128, 
0,1, 192, 0,3, 231, 0,1, 199, 128, 8, 134, 144 

2 DATA 5,255,160,3,60,192,7,60,224,7,60,224 
,3, 255, 192,1, 255, 128, 3, 153,1 92, 4, 2-1 

3 DATA 32,8,24,16,16,24,8,120,60,30,0 

4 V=53 248:POKEV-t-21 , 255 : POKE2042 ,1 3 :K = 9 : POKE 
198,0 

5 FORN=832TON+62 : READQ; POKEN , Q ;NEXT : POKE532 
80,0:POKE53281 ,0:PRINT"{S[IFT CLR) {CTRL 2) 
"K; :H=1984 

6 POKEV+5,170;POKEV-f41 ,1 : PRINTTAB{ 1 6 ) "SPACE 

CAVERN" :WAIT 1 98 , 1 :GETA$ : Z = 1 5 

7 FORD=1T023:PRINT:NEXT:IFA$="{PUNCT 1}"THE 
NK = K-1 : S = S + 150: PRINT" (SHFT CLR}"K; :G0T06 

8 X=160:F = PEEK( V-i-31 ) 

9 S = S-f1 :GETAS:IFAS = "{CRSR RT) "THENX = X-f5 

10 J=26:IFA$="{CRSR DN } "THENX=X-5 

1 1 U=INT( 3*RND( 1 ) + 1 ) :IFX>255THENX = 255 

12 C=42;IFU = 1THENZ = Z-i-1 : IFZ > JTHENZ=J 

13 IFU=3THENZ=Z-1 :IFZ<1THENZ=1 

14 POKEV + 4,X:POKEH4-Z-fK,C:POKEH + 2,C 

15 PRINT:IFPEEK( V-^31 ) = ,G0T09 

16 PRINT" (SHFT CLR)YOU EiAVE DIED! SCORE = "S: 
PRINT"PRESS [SHIFT! TO CONT" : WAIT653 , 1 : R 
UN 

Mike Gebis 
Bloomingdale, XL 

Unicom/Pegasus — The following C-64 program will pro- 
duce an interesting sprite. Its magical appearance certainly 
fits this column! 

10 REM UNICORN/PEGASUS - RAY PEREZ 
20 POKE53280,0:POKE53281 ,0:PRINT"[SHFT CLR] 
If 

30 PORS=83 2T0894 :READT; POKES, T:NEXT 

40 V = 5 32 48:POKE204 0,13:POKEV-k21 ,1 

50 POKEV+39,12:POKEV+1 , 1 50: POKEV, 1 60 

61 DATA 003,243,224,001,025,016,000,140 

62 DATA 200,056,098,072,108,026,136,196 

63 DATA 010,144,143,233,096,031,255,224 

64 DATA 031,255,240,031,255,249,031,255 

65 DATA 250,031,255,254,027,015,220,025 

66 DATA 006,092,017,002,084,017,002,092 



67 DATA 017,001,076,017,002,064,017,012 

68 DATA 064,008,136,032,012,192,048,000 



Ray Perez 
Henderson, NV 



C-128 spirals — The program listed below will draw ran- 
domly shaped spirals. 



10 
20 
30 

40 
50 
60 
70 
80 
90 
10 
1 1 
12 
13 



REM MAGIC SPIRALS - MICHAEL E RANDELL 

GRAPIMCI ,1 

BG=INT(RND(1 )*15)+1 

BC=INT(RND(1 )*15)-*-1 

FG=1NT(RND( 1 )*1 5)-i-1 : IFFG=BGT11EN50 

C0L0R1 ,FG:COLOR0,BG:COLOR4,BC 

IN=INT(RND(1 )*250>+1 

AN = INT(RND(1 )*359) + 1 

R=INT(RKD(1 )*9)-f2:T = lNT(RND(1 )*1 5) 
DO UNTIL XR>100 
XR=XR-(-R:AN=AK + T 
CIRCLE 1 ,160,100,XR,, , ,AN,IN 
LOOP:SLEEP2:CLR:GOTO20 



Mike Randell 
Coloma, Ml 



22. Programs— Commercial Software 

Colorful Print Shop — Output from the popular Print Shop 
program can lie briglueiied up by using colorctl marker 
pens. It's easy to color The Print Shop text and designs, 
and with the range of colors available in markers today, 
your creativity can be virtually unlimited. Give this idea a 
try the next time you do sometiiing with The Print Sho]^. 
It's extremely easy to do, and the results itutsi be seen to 
be believed. 

Roger Baillie 
Kensington, PEI, Canada 

QuantumLink scrolling— Whenever text scrolls off the 
screen in QuantumLink, you can recall up to 85 lines of 
it at the press of a key. Just press the cursor-up key and 
watch the previous (cxi scroll down from the top of the 
screen. 

This feature is particularly useful when you're in an 
ongoing dialogue widi other users, such as in the Confer- 
ence Centers and in People Coimection. 

AJ G. Bell 
Boston, MA 

Fast Load flakkiess— This popular cartridge is a wonderful 
help in disk operations, but it tends to cause programming 
problems. If something unu.sual occurs with my Fast Load- 
equipped computer, especially when working with files or 
the printer, 1 can usually resolve the proljlem by disabling 
my Fast Load cartridge, 

Donald E. Griffey 
Hopkinsville, KY 

Fast Load and drive 9 — There's an easy way to make the 
popular Epyx Fast Load cartridge work with drive 9 (or 



1 28 / RUN SPECIAL ISSUE 1987 



M A 

any other drive) rather than the default drive 8. Just open 
a command channel to the drive in question, and Fast 
Load will adopt it as its default drive. Here's an example 
for drive 9: 

OPEN 15,9,15 

To return to drive 8, just do this: 

CU3SE 15 : OPEN 15,8,15 : CLOSE 15 

Donald E. Griffey 
HopkinsviUe, KY 



Cartridge repair— Don't discard faulty software cartridges 
until you've given them this CPR. First clean the metal 
contacts with a pencil eraser. If that doesn't help, disassem- 
ble the plastic case and use your Fmgers to apply even 
pressure to any socket-mounted components. Reassemble 
the case and try the cartridge again. 

This procedure may or may not resuscitate your car- 
tridge, but it works often enough to be worth a try, 

Lee A. Seats 
Mountville, PA 

Flight Simulator n coordinates— The manual omits the 
coordinates for some important landmarks; 

Worid Trade Center— 17060 N, 20982 E 

Brooklyn Bridge— 17054 N, 20991 E 

Empire State Building— 17073 N, 20991 E 

Statue of Liberty— 17049 N, 20971 E 

When entering coordinates from the Editor mode, don't 
start out on the landmark itself, or you'll fall to the street 
like King Kong. 

Kim Moser 
New Vork, >fY 

Flight Simulator U jet assist— In the Editor mode, if you 
type 65535 for your throttle setting, you can cruise at 189 
knots and climb at 1600 feet per minute. Also, if you select 
the right fuel tank prior to entering W\V1 Ace mode, your 
effective range is doubled. 

Nicholas R. Clarke 
McKinnon, Victoria, Australia 

Blitzing Blitz! — The popular Blitz! compiler executes For/ 
Next loops much more quickly than If/Then statements. 
So you can speed up yotir Blitzed programs by changing 
lines like 

100 J = 

105J=J+1 

1 1 Other program lines 

120 IFJ<10THEN 105 

to lines like 

100 FORJ=lTO 10 

no OlliLT program lines 
120 NEXrj 

Mike Dr)ja 
Washington, MI 



G I C 

KoalaPainter to Print Shop— This hit of magic will change 
KoataPainter picture files into Print Shop Screen Magic 
picture files. Enter your machine language monitor, then 
type these commands: 
.L " (COMD I Jl'ICl tr rilename",08 

:v 6000 7F;ii" tooo 

.S"illciiainf",tm,!00,.''iF3F 

In the first line, [COMD 1] stands for the Commodore 
key and the 1 key pressed simultaneously, and Itr stands 
for any letter between A and O. The filename stands for 
the name of your KoalaPainter file. There must be 15 
characters between the quotes, including spaces. If your 
filename isn't long enough, pad it out with spaces. 

Your monitor may have slightly different commands 
from those shown here. Use the necessary syntax to load 
a file, transfer memory and save the transferred block. 

Brian Dressel 
Spring Lake, MI 

Colossal Datafile on the C-I28— fhc C-l 28 grcady expands 
the memory capacity of Mike Konshak's Datafile program 
{RUN, November and December 1984). Since the unex- 
panded C-l 28 has over three times the available RAM of 
the C-64, your files can be much larger. 

In line 22 of the original Datafile program, simply in- 
crease the value of MEM from 30,000 to 60,000. Presto! 
You've got a Datafile 128! 

James Adams 
Indianapolis, IN 

A faster colossal Datafile — After making the above change 
to Datafile, you can double the speed of RAM operations 
by adding the Fast command either to the first line of 
Datafile or as a new line at the beginning of the listing. 

You must have an RGB cable connected between the 
C-l 28 and the video monitor to use this feature, since the 
Fast command blanks the 40-column screen. 

James Adams 
Indianapolis, IN 

Restructuring DFRestructure— In Mike Konshak's DFRe- 
structure progi-am (RUN, November 1985), changing line 
4784 to MEM = 60000: RL = increases the number of 
entries you may enter into your files. Now load the old file 
and either rename the field or increase the length of the 
field by one character. When you resave the file, you'll 
have more space for entries. 

Clarence F. Cragin 
Cottage Grove, MN 



Copying with RUN Script 64 1.0— Did you know that your 
copy of RUN Script 64 1.0 can double as a handy macliinc 
language code copier? Load and nm RUN Script 64 I.O, 
then insert into your disk drive a disk containing the 
machine language program to l)e copied. With the Fl and 
L keys, load the progi-am file iiUo RUN Script's text area 
as you would a text file. Now insert another formatted disk 
into the drive and copy the code to the disk with the Fl 
and S keys, followed by a filename. 



RUN SPECUL ISSUE 1987/129 



M A 

This is a fast and handy method of copying RUN Script 
ML code and character sets, but be careful— some ML code 
may save at an improper address and become corrupted. 
Also, Basic programs cannot be copied this way widiout 
extensive modifications. 

Tim Walsh 
RUN Staff 

RUN Script 64 reversed characters— If you have a favorite 
character set you would like to use with RUN Script 64 LO, 
but can't because it lacks reversed characters, here's a fix 
to get around dial problem. First, using the copy method 
ouliined in the above Magic trick, copy the diaracter set(s) 
you want to use to a disk containing a copy of KL'N Sciipt 
(34 1.0. Next, load and run RUN Script using the standard 
C-(>4 character set or any other character set that has re- 
versed characters. Once RUN Script is activated, exit it via 
tiicFl and X keys. 

Next, load in the Hoot program and change the char- 
acter .set name diat resides diere to the filenaine of the 
preferred character set you saved on the disk. Now run 
(he boot program. Your new character set has replaced the 
original one. In most instances, you will still retain the first 
set's reversed characters that are needed for die command 
bar and printer macros. 

Tim Walsh 
RUN Staff 

Quick-loatiing Basic 4.5 a la C- 128 mode— To quickly load 
Basic 4.5 in 128 mode, enter these two lines and run the 
progiam. Be sure your monitor is in 40-column mode. 

10 IU£)AD"BASIC 4,r)",mi.l':i27(i« 
20 GO 04 

Arhn R. Sprinty 
Zumbrota, MN 

DatafUe punctuation— In Mike Konshak's Datafile pro- 
gram {RUN, November and December 1984), you cannot 
include commas, colons or semicolons in data you are 
entering. But you can if you enclose such data in tjuotes, 
lor example, "Anucci, Mary Lynn: unemployed," The 
t|Uotes aren't counted as characters, and they won't appear 
in any printouts. 

David M. Palo 
Escanaba, MI 

NLQ and Paperback Writer— To switcl) to NearUnter 

Quality mode on the Star line of printers widi I'ajjerback 
Writer, select a pitch of 1 1 . 'f he printer file for the Gemini 
does not allow you to turn off the NLQ mode with a pitch 
command, but pitch 20 is not defined. So if you wish, you 
can load the file and define pitch 20 to ESC,"B",5, Then 
save the file back to disk. This will turn off NI.Q and revert 
to the type you were using before NLQ was selected. 

Greg Simpson 
Murrayville, IL 

Word-processing database — If you don't have a database 
progi'am, a word jjrocessor can sometimes make a good 



Gt I C 

substitute. For example, you can put a list of addresses and 
phone numbers in one word processor document. Each 
name, address and phone number should be listed to- 
gether. When you need to look for an address or phone 
number, use your word processor's search function to 
locate the person's name. You'll automatically find the 
address and telephone number too. If you don't find the 
person's name, you'll know that you should add the infor- 
mation to the file and rcsave the document. 

Mark Bersalona 
PhOadelphia, PA 



Make 'em sparkle— We all know iliat we can make terrific 
cards with The Print Shop and color them with crayons, 
paint or magic markers, but here's how to make 'em spar- 
kle! Just add glitterl 

Thin st>me white glue with water to make it easier to 
work with and apply it to the areas where the glitter will 
go. Then sprinkle the glitter over the glue and shake off 
tile excess, 

Mary E, Wilson 
Clearwater, FL 



Datafile improvement— With tlie Datafile program {RUN. 
November and December 1984) you can set up records 
with various fields of your own choosing and design. For 
example: 

l.NAME: 
BORN: 
UKfJS: 

You can also select the number of characters you want 
in each field. After you select a field name and length, 
place the number you have selected for the field length at 
Uie end of the field name. For example: 

1. NAME 10: 

HORN 8: 
l.lKi:s 10: 

Now you can see how many characters you have allowed 
for each field. It's really helpful when you have many 
databases set up with Datafile. 

Gary W, Hollen 
Address unknown 



23, Programs— USEFUL Appucations 

Super-simple scheduling program— I'm in charge of sched- 
uling and reset%'ations for our Lions Club hall. 1 used a 
paper calendar for six months, but with all the reserva- 
tions, cancellations and conflicts, 1 decided to put my 
computer to use. I started by writing a Basic program using 
Data statements. However, with our very heavy schedule, 
the progiam became monstrous and time-consuming, 

I finally came up with a program that contains only one 
executable line and operates in real time, I don't know 



t '30 I RUN SPECIAL IS.SUE 1987 



M A 

thai it is unique, but in my computer-conscious small com- 
munity, no one has ever seen the like. 

The secret is to use one line for each day, with the line 
number consisting of a 1 followed by the month and day 
in four-digit form. The line number for June 8 would be 
10608; for Halloween, it would be 1 1031; and so on. After 
some dates have been scheduled, the program might look 
like this: 

10 LIST loono- 
10112 BINGO TONIGHT 
101 l.'i SWIM PARIT AT Sm 
101 1-1 LUNCHKON 

and so on, with up to 80 characters per line. 

The beauty of the program is that lines are never exe- 
cuted, so they needn't be syntactically correct. To access 
the lines, you simply load and run the program. You can 
make monthly or quarterly printouts by listing to the 
printer. If all your information won't fit on one line, end 
the tine with SKE xxxxx, where xxxxx is an unused line 
number above 20000. After a date has passed, you may 
delete it by typitig its litie number; yon can then save the 
file by using ihe Save wilb Replace command. 

If you aciopt this system for your own purposes, be 
careful not to use question marks in your entries, since 
the computer will convert them to Print statements. Also, 
to guard against reserving the same date twice, always list 
the program before making a new entry. 

John T. McClennan 
Point Arena, CA 



ML Booter — If you use short Basic progi-ams, usually called 
boots, to load machine language and enter a SYS com- 
mand to activate the ML, there's no need to clutter your 
disks with a specific boot for each ML routine. You can 
use the progi-am below to boot any ML of the type de- 
scribed above, and it will execute the appropriate SYS 
command automatically. 

Since loading ML from Program mode does not disrupt 
Basic's internal pointers, it isn't necessary to use a New 
command. So, without reloading ML Booter, you can run 
it again to boot as many ML programs as you like. 

The ML program's SYS address must be the first byte in 
the program for ML Booter to activate it. If you must access 
an address otbei' fiian the first byte, you will need a sepa- 
rate boot program. 

10 PRINT" (SHFT CLR)C-64 ML BOOTER - SUSAN C 

HARNETSKHCRSR DN)" 
2i) IFA= 0THENIKPUT"FILENAME" ; F$ : OPEN! 5 ,8,15 
30 OPEN2,8,2,F$-f",P,R":IFATHEN70 
4J9 INPUTS! 5, E, E$;CL0SE2:CL0SE1 5:IFE=0THEN60 
5f) PRINTE;E$: INPUT" (CRSR DNJHIT RETURN" ;R$: 

HUN 
60 A=1 : PRINT" {CRSR DN ) LOADING. " :LOADF$, 8, 1 
70 GETij^2,L$,H$:CLOSE2:L=ASC<L$ + CHR$(0) ) 
80 X=L-fASC(H$-fCHR$(0) )*256 
90 PRINTF$" ACTIVATED. ";SYSX 

Susan Chametski 
Plains, PA 



Foreign exchange — Here's a nifty litde program that prints 
a conversion chart for U.S. and foreign currency. Look in 



the business section of your newspaper for the foreign ex- 
change rates. Find what one U.S. dollar is worth in a foreign 
currency and enter that value at the prompt. The program 
then prints the values for one dollar to S50. To print higher 
amounts, change the value in tlie loop in line 50. 

10 REM C-64/C-128 FOREIGN EXCHANGE - CHAD J 

ONES 
20 INPUT "$1.00 US=";C1 :C2=1/C1 :C1=C1*100 
30 OPEN4,4 
40 PRINT#4,"C4 spaces! AMERICAN ${2 SPACEs)= 

[2 SPACEslF0REIGN{2 SPACEs}${5 SPACEs}FO 

REIGN S{2 SPACEs)=[2 SPACES } AMERICAN S" 
50 FORT=1TO50 
60 A=INT{T*Cl4-.5)/100:F=:INT{T*C2*100+.5}/10 


70 PRINT|iil4,"{6 SPACEs}"T"(10 SPACES ) "A" { 1 

SPACEsl"T"{10 SPACEs}"F 
80 NEXT:CL0SE4 

Chad Jones 
San Gabriel, CA 



Variable-size graph paper — There are times when you need 
graph paper for different applications. This program gives 
you the number of squares you need. Some applicadons 
might include an 8 X 8 grid to create custom characters 
for your printer, a 24 X 21 grid for sprite design, or maybe 
you want to make your own crossword pu/zle. This pro- 
gram is designed for the 152(3 printer, but could easily be 
adapted to other printers, 

10 REM VARIABLE GRAPH PAPER-DAN PRICE 

20 INPUT" {SHFT CLR)HOW MANY SQUARES ACROSS" 

;X:IFX>40THENX=40 
30 INPUT"HOW MANY SQUARES DOWN";Y 
40 OPEN4,4:OPEN6,4,6 
50 AS="1SHFT OjlSHFT P) " : B$=" ( SHFT L) {SHFT 

%)" 
60 A=A+1 :IFA=Y+1G0T01 20 
70 PRINT)^6,CHR$(20) 
80 F0RI = 1T0X;PRINTjll4 ,AS; :NEXT 
90 PRINT|!/6 ,CHR$( 20} 
100 F0RI=1T0X:PRINT/M,BS; :NEXT 
110 PRIHT|?6,CHRS(20) :GOTO60 
120 CLOSES :CL0SE4: END 

Dan Price 
Athol, MA 



24. Programs— Utilities 

Unprotector— Have you been frustraled by C-64 programs 
that use REM {SHIFf L} to protect them from being listed? 
Have you laboriously gone through those programs, de- 
leting the offending lines by band? Well, if you have, that 
drudgery is behind you. Type in the accompanying pro- 
gram, run it, then load a program containing some of those 
disturbing REMs, F.nter SYS 49152, and, in a few seconds, 
all the shifted Ls will be removed, Vou can then list your 
program without encountering Syntax errors. 

10 PRINT" {SHFT CLR} UN PROTECTOR - RALPH NEAL 

II 

20 PORJ=49152TO49200:READK:POKEJ,K:CS = CS■^K: 
NEXT: PRINT 



RUN SPECIAL ISSUE 19S7 / 131 



M A 

Lisliitg contimitd. 

30 IFCS<)8220THENPRINT"ERROR IN DATA STATEM 

ENTS";STOP 
40 PRINT"SYS49152 REMOVES REM SHIFT L'S FRO 

M": PRINT 

50 PRINT"THE BASIC PROGRAM IN MEMORY. MAGIC 
I I. 

61 DATA 169,000,133,251,169,008,133,252 

62 DATA 160,000,177,251,201,143,208,020 

63 DATA 192,256,208,002,230,252,200,177 

64 DATA 251,201,204,208,007,169,032,145 

65 DATA 251,076,010,192,200,208,227,230 

66 DATA 252,165,252,197,174,208,219,096 

67 DATA 255 

Ralph Ncal 
Nash, TX 

C-64 shorter sorter— I believe this to be the world's fastest 
Basic numbersoitci-. I challenge you magician's appren- 
tices — even yon Iloitdinis! — to come up with a faster 
sorter. My benchmark program first prints a list of 100 
random luimbers in the range 1-100 and then prints the 
sorted version of the numbers in less than eight seconds. 

REM C6 4 SHORTER SORTER 

1 TI$="000000":DIMB(100> :PRINT"{SHFT CLR){C 
TRL 2}"; :A=RND(-TI) :C=1 :D=100 

2 FORI=CTOD:A=INT(RND(C)*D)tC:PRINTA; :B(A)= 
B(A) +C:NEXT:PRINT: PRINT" {CRSR DN}":FORI=C 
TOD 

3 IFB(I}=.THENNEXT: PRINT: PRINT"{CRSR ON} TIM 
E ="TI/60"SEC":WAIT198,1 :END 

4 PRINTI;:B(I}=B(I)-C:G0TQ3 

James E McConnell 
Marathon, NY 

REM Highlighter program— This program displays re- 
versed RVM staicniciUs in your Basic listings. As written, 
RKM Highlighter resides at memory location 679 (an un- 
used area of 88 bytes). You may want to use a different 
RAM location because a reset clears the memory below 
address 2049. If you use a higher address in RAM, you can 
reactivate KKM Highlighter after a reset by entering a SYS 
to tile starting address. Some suggested starting addresses 
are49I5i!andr>;W2I. 

10 PRINT "{SHFT CLR)64 HIGHLIGHTER - BRUCE 

KARPE 
20 DEFFN HI(X)=INT(X/256):DEFFN LO{X)=X-FNH 

I(X)*'256 
30 INPUT"STARTrNG ADDRESS 679(5 CRSR LFs ) " ; 

SA 
35 I=0:CS=I4 
40 READX:IFX=256THEN ON- {CS=2643 )GOTQ60 :PRI 

NT" DATA ERROR": END 
50 P0KESAtI,X:CS=CS-fX:I = I+1 :GOTO40 
60 POKESA■^25,PEEK(774) : POKESA+26 ,PEEK{ 775 ) 
70 POKESA-fl ,PNL0(SA+11 ) :P0KESA-f3 ,FNHI ( SA-t-1 1 

) 
80 SYSSA:PRINT"REM HIGHLIGHTER ENABLED" :NEW 
90 DATA 169,178,162,002,141,006,003,142,007 

,003,096,008,72,201 
100 DATA1 4 3,206,005,169,01 8,032,210,255,104 
,040,076,026,167,256 



Bruce S. Karpe 
Stroudsburg, PA 



Byte-size sequential files— If you've ever tried to load an 
important seciucniial file into a word processor, only to 
find that it was too long to fit into its text buffer, then my 
program is for you. 

The program asks you for the filename of that long file 
and the desired size, in bytes, of your new, smaller files. It 
then spli(s your large file into several smaller files with 
filenames beginning with 1, 2, and so on. 

REM SPLITTING SEQ FILES - JIM BRANBERG 

1 INPUT" {SHFT CLRKCRSR DN } FILENAME" ; N$ : IN 
PUT" (CRSR DN) SIZE OF NEW FILES (IN BYTES 
)";B$:CK%=VAL{a$) 

2 ST%=64:N=49:OPEN 2 , 8, 2 ,NS+" ,R" 

3 AA$=CHR$(N)+CHR$( 160)+NS:X=0:O%=0:OPEN 3, 
8,3,AAS+",W" 

4 GET#2,A$:Z=ASC(A$+CHR$(0) ) :IF Q%=1 THEN6 

5 IFZ = 44 OR 2=59 OR 2=58 THEN A$ = CHR${ 34 ) -kA 
$:Q%=1 

6 IF A$=CHR$( 13) GOTO 9 

7 IF STATUS AND ST% THEN PRINT)!* 3 , BS : PRINT^3 
: CLOSE 3: CLOSE 2; END 

8 B$=U$-fA$:GOTO 4 

9 X=X+LEN(B$) 

10 PRINT#3,B$:IFX>CK% THEN N = N+1 : PRINTiiO :CL 
OSE 3: GOTO 3 

11 B$="":GOTO 4 

Jim Branberg 
Los Angeles, CA 

Number formatting — You can format and accurately 
round numbeis to any desired number of decimal places. 
The resulting string will contain zeros to fill places having 
no digit, including an initial zero for numbers between 
zero and one, 

1 REM NUMBER FORMATTER - ROBERT FLETCHER 

20 K=4:REM It OF DECIMAL SPACES 

30 PRINT" {SHPT CLR){3 CRSR DNs ) "N,N$ 

40 PRINT" {2 CRSR DNs) INPUT N {CRSR DN)":IN 

PUTN 
50 X=INT(N*10{UP ARROW) (K+1 )) :X$=STR$(X) 
50 IFVAL(RIGHT$(XS,1 ) ) >4THENX=X+10 
70 X$ = STR$(X) :L=LEN(XS}:IFL>K-f2THEN110 
80 N$ = "0.":IFL = K+2TIIEN100 
90 F0RJ=1T0(K-(-2-L) : NS = N$ + " 0" : NEXT 
100 N$=N$+MID$(X$,2,L-2) :GOTO120 
110 N$ = MIDS{X$,2,L-K-2)+"."-(-MID${X$,L-K,K) 
120 PRINT" {2 CRSR DNs) "N,"*"NS"*" 
130 GETKEY RPTS 
140 GOTO10 

Robert Fletcher 
Annandale, VA 



Limiteci input routine — Here's a short machine language 
Get routi[ie for the C-()4. It provides control for you to 
limit the number of characters that are input. No more 
FC)KE19S,0; no more GET A$:IF A$ = "" THEN. . . , and so 
on. Any value from 1 to 255 may be passed to the routine. 
The cmsor will flash aulomatically, and the only acceptable 
characters aie the alpbaniunerics, uppercase/graphics, de- 
lete and return. This means the cursor cannot move ofT 
the line you start it on by using the cursor control keys. 

Experiment with the routine by positioning the cursor 
as you would normally do in any program, and then pro- 
vide tlie appropriate SYS number for accessing the new 



1 32 / RUN .SPECIAl. ISSl'K I98T 



M A 

routine. An example of the propei- Jbrniai lo use the Gel 
routine follows; 

10 A$ = "":REM STRING MUST BE FIRST VARIABLE 

<Your program goes here. > 
520 PRINT CHRS(147);:RF.M POSITION CURSOR 
530 SVS49152.16;PRINTA$ 

In line 5'iO, the value Hi Is passed to the routine, setting 
a maximum limit of Ifi characters ti> input. If no value is 
passed, then a default of 1 is used. Be sure you define the 
string variable you want to use as ihe first variable in your 
program. 

Pressing return will exit the (iet routine. When you're 
back in the Basic program, AS (or whatever string you 
defined first in your program) will hold the value that 
was inpui. 



10 REM C-64 LIMITED INPUT ROUTINE - JAMES P 
ELLECHI 

97 REM ALL PURPOSE 'GET' (C-64) 

98 REM FORMAT: {2 SPACES) SYS 49152,(1-255] 

00 FORX=491 52T049262:READZ:T=T+Z:POKEX,Z:N 
EXT:IFT< > 1 581 3THENPRINT" ERROR": STOP 

01 DATA 160,0,140,111,192,132,204,177,122, 
201 ,44,240,4 

02 DATA 162,1,208,3,32,241,183,142,112,192 
,32,228,255 

03 DATA 201,0,240,249,201,13,240,53,201,20 
,208,10,172 

04 DATA 111,192,240,236,206,111,192,16,29, 
170,41 ,127,201 

05 DATA 32,144,224,138,172,111,192,204,112 
,192,176,21 5,238 

06 DATA 111,192,208,5,206,111,192,48,205,1 
53,113,192,32 

07 DATA 210,255,169,0,133,212,76,23,192,16 
0,2,173,111 

06 DATA 192,145,45,200,169,113,145,45,200, 

169,192,145,45 
09 DATA 230,204,169,32,76,210,255 

James Pellechi 
Middle Island, NY 



Shifty top row — When I enter a progratn on my C- 1 28, 1 
use the numeric keypad to enter all iniinbers, I use the 
upper row of keys on the maiti keyboard only for entering 
the shifted characters. To avoid the need lo use the shift 
key, I wrote a short ML progiam that switches the shifted 
and unshifted values for the top row of keys (numbers 1 
to 9). If you prefer to get die shifted character when shifted 
or unshifted, change the 107:^9 in line 20 to lfl(i2(> and 
change the 157 near the end of line 12(1 to 44. If you 
remove the REM from line 180, the ML will be saved to 
disk and can be BLoaded. 

REM SHFT NUMS-ANTOON U. BREDA JR 

10 FORX=48 64T04972;READA:CS=CS+A:POKBX,A:NE 

XT 
20 IFCSol 0739TIiENPRINT"SORRY, DATA ERROR": 

LIST:END 
30 SYS4e64 

40 DATA 162,69,202,189,128,250,157,109 
50 DATA 19,189,217,250,157,198,19,224 
60 DATA 0,208,239,162,8,32,67,19 
70 DATA 162,11,32,67,19,162,16,32 
80 DATA 67,19,162,19,32,67,19,162 
90 DATA 24,32,67,19,162,32,32,67 



i I c 

100 DATA 19,162,27,32,67,19,162,56 

110 DATA 32,67,19,162,59,32,67,19 

120 DATA 76,80,19,169,128,250,157,198 

130 DATA 19,189,217,250,157,109,19,96 

140 DATA 173,197,10,5,128,141,197,10 

150 DATA 169,109,141,62,3,169,19,141 

160 DATA 63,3,169,198,141,64,3,169 

170 DATA 19,141 ,65,3,96 

180 REM BSAVE"KEY CONFIG" ,B0, P4864 TO P4973 

Antoon U. Breda, Jr. 

Eersel 

The Netherlands 



25. Computer Room 

Computer desk— 1 used a door to make a computer desk. 
The door sits on two small filing cabinets, but I could easily 
have used saw-horses or bookshelves. The door-desk is 
quite large and can easily hold all my computer equip- 
ment. An added attraction is that all cables and cords pass 
neaily through the hole fcjr the lock. 

If you don't have any old doors hanging around, you 
can buy new ones at building supply stores, usually for 
under $20. 

Nigel Horscroft 
St. Lucia, West Indies 



Printer stands— Here's how to get an inexpensive printer 

stand. You can use an old TV or microwave stand to hold 
your printer and paper. If it has wheels, it will be easy to 
move around. If it has only two bars for the top shelf, so 
much the better if your printer feeds from the bottom. 
The paper is stored on the bottom shelf. If you don't have 
a TV stand, scan the merchandise section of your news- 
paper's classified ads. 

Chuck Moody 
Milledgeville, GA 

26. Odds AND Ends 

Easy SEQ file viewing— When I'm writing programs that 
create sequential files, I often want to examine the files to 
find if they're being properly put together. I just use my 
Easy Script word proce.ssor and load the files as though 
they were regular Easy Script docutuent-s. 

If 1 need to edit the file, I use Easy Script; then I save 
the file as 1 would any document. 

Tom Kinsel 
Sandusky, OH 

Magazine indexing^ if you subscribe to RUN or any other 

publication, you know how hard it can be to search die 
back issues for a single memorable article. I've learned that 
most issues contain one or two articles that are more 
interesting to me than all the others combined. When each 
issue arrives, I identify those articles and write their names 
on the binding of the magazine. It i.s atuazing how much 
search lime that elitninates thereafter. 

James Albrecht 
KalispeU, MT ■ 



RUN SPKOAIJSSUK 1987/133 



MAGIC INDEX 



Computer-Specific Tricks 

1. Computen— &&1 

C-Gt sctwiilinf erasing 26 

Majric C()l clock "26 

5(JHz docks 2B 

C-fi'l scre(--n blankitij! . 2fi 

C-64 textcoUji cli;mgt.' ^fi 

Improving batkf^ioujui color diangcs ... .27 

Datapoinlw for llif (.Mi-l 27 

Halloy's Dimct revisilcd 27 

CM>4 wedge; and AnKi Mcnn 27 

Priiitintr wilb Ofi-I sound 27 

InslLtiit rfsirt liuttdii 28 

C-t)4 ijuick dirccrory 28 

C-(i4 goto variable ,28 

64 Keypad and VCR la[)e.s 28 

2. Computer!— C-1S6 

GI28 load and rtin 28 

0128 joystick ports 28 

C12e MIDS feature 30 

CI28 slow listing 30 

C128 bytes Tree 30 

C-12H F.SC key. 30 

C-12H 40/80 display key sense 30 

CM2H l;ib MO])!, 30 

C:i2H boxfd spirals 30 

C128 Magic Boot 30 

C-128 Unnew progratn 32 

Print Using on tbc CI28 32 

C-128 Print Using bug 32 

C-1 28 stop key trap 32 

CM 28 disk operations 32 

C'128 mode switcbcr .04 

Testing for 12Hi(i4 nioiie O-J 

CI 28 RGUI connecloi , . ,04 

Using C.128 windows 94 

C-128 Input prompt 95 

Tempo and tlic metronome 95 

C128 error trapping 95 

C-128 teradiial prograni , ,96 

C-128 fniiciiun keys 96 

C-12K window work 96 

C-128 Sweeper 97 

C;-128 abbreviulion 97 

C-128 Hasher , 97 

C-128 screetT saver 97 

GET on tlie C-128 98 

Comijiodoic 128 Murak 98 

D<>uble spet^cl C-64 98 

Doing 128 l,oop-Do-l.oops 99 

C-128 l.o-Rcs screen dump <*9 



C-128 Hi-Res screen dump 99 

Hi-rfs-sketcb-128 100 

Converting C-64 function keys to CM 28 lOO 

How do you s]jell bel])? 1 00 

C.128 Perfect Typist aid 100 

C-128 Perfect Typist windows II 100 

A "Draw"-ba(:k in 7.0 100 

C-128 customizer 101 

Quiet, please 101 

Improving C-128 Perfect Typist 101 

C:-128 no-run safely 101 

Function key restore 101 

C-128 GF-Tspeed 101 

3. Computers— C-64 and VIC-20 

C-fi4(VIC Buffer saver 102 

C-64fVIC-20 line counter 102 

Prituer-width fix 102 

Hardware Tricks 

4. Connections/In tcrfaccs/Cables 

Cardco modification 102 

Printer interface hazard 102 

Which wire is whichf ,,.,., 103 

5. Disk Operation/Recording 

l."i4 1 I jjscratcb 103 

SFD 1001 disks 103 

Reading the status variable ,103 

Disk drive speed adjnstmeni 103 

Rearranging directories 104 

Disk Name Changer 104 

Disk rescue tab 104 

filename extensions 104 

File Under lO.fi 

iia.sier disk commands 105 

Last-disk effort . . . 105 

Easy on, easy oft 1 0,5 

1571 disk drive magic lO.") 

Keeping track of disk commands 105 

SFD 1001 disk renanier UKi 

Quick directory t;-64 106 

Protect your writes loti 

F'asier loading 157 1 lOtJ 

Cleaning heads 106 

F.asier filenames , 1 06 

Double-sided disaster 106 

Data on side two of the 1571 1 06 

One for all 106 

Back-side bonus 107 

Noknock loads 107 

Multiple scratch 107 



Last rcson 107 

Disk locker 107 

6. Joysticks and Ports 

1350 mighty mouse joystick 107 

Mouse tracks . . , , 107 

7. Keybuard/Kcyboarding 

Shifted nni/.stop 107 

Restore key tip 108 

Easy-fingered load 108 

Ergononiic tnge? 108 

Keyboard lock/unlctck 108 

8. Modems/Telecommunications 

Modem buyer's guide 108 

Modem cable tip ... 108 

Modem inodiflcatitm ................. 108 

300 baud speedup 109 

Modem hearing aid 109 

Turbo tiia! 109 

Pasiword maker 109 

1670 modem autoanswer 109 

Terminal garbage 109 

lexi Hie processor 109 

9. Primers/Printer Paper 

Gemini 10.\ paper sensor 1 10 

iri26(MPS 802 print troubles 110 

Okiniale money-saver 1 10 

.Star SO- 10 special mode 110 

Musical staff maker 110 

Printer grease 110 

New Okimate 10 manual . .110 

Easier hi-res dinnps Ill 

Lo-Res screen dumps on the 1 526 ......111 

Caper chase Ill 

f he Plus 5 connection Ill 

Mini-floppy labels Ill 

SP-IOOOVC and WordPro fix Ill 

10. Video/Audio Devices 

Heller video displ.ty Ill 

Color/no-color monitor ,111 

Too-small vitSeo display Ill 

C-64 (lonnnostrobe 112 

Catch the wave 112 

Dust-free screen 112 

11. Miscellaneous Hardware Tips 

Remembering p<jwer-up sequences 112 

Toolkit tip , 1 12 

Electronics repair 112 



1 34 / RUN SPECIAL ISSUE 1987 



Software Tricks 

12. Entering/ Editing IVograms 

Dcleic a block of lines 112 

Linc-ediiing tips 1 1:) 

Entering C-54 programs in 128 mode ... 1 13 

Reverse appendectomy i 1 3 

Deledng a block of lines 113 

Mechanical safely 114 

Listen while you work 114 

Don't panic 114 

Basic program append 114 

13. Languages^Basic 

Exclusive OR operator 114 

Faster-running programs 114 

Input with variable tiefault 114 

C-64 screen pusilUm 114 

Heads or tails 1 1 ."i 

Titne machine 64/128 115 

A better wail , 115 

Universal sequential printer 115 

C-64 Hi-Res error trap 115 

Variable name test 115 

C'64 cur^ior locator 1 1(5 

Universal input suli 116 

Clearer DS$ lit) 

Random number seeds 1 1 G 

Switchable Basic 117 

14. Languages — Machine Language 

Working witii ML 117 

Clf.AR and ML rode 117 

15. Languages — Other 

CP/M utilities .....117 

CiaS CP/M screen color 117 

Kaypro CP/M disks 117 

Faster CP/M disk copies 117 

16. Programming Tips — Debugging 

Line numbers for ilebtigginj; 117 

Checking lines with C-128 Perfect Typist. 117 

17. Programming Tips — General 

Detecting keypresses 118 

Ultimate program backup 118 

Backing up while typintC 118 

Ncm-randimi RND 118 

Get with flashing cursor 1 18 

Active device finder 118 

HankevPankey 118 



C-64 function keys 



..119 



IS. Programming Tips — Matli/Educational 

Probability function 1 19 

Dfcinial fractiims = common fractions ... 1 19 

19. Programmmg Tips — Screen Display 

Screen scrolling 119 

Screen wiper 1 19 

CM star track !'2() 

Ariisiie Commotlore 1^0 

C-128 & Plus/4 screen code decoder .... 120 

C'f)-t windows 120 

Menu in re\'erse 120 

Animated tides , 121 

The white bole 121 

Shake it up, babyt 121 

No.fade colors 121 

C.128 graphs 122 

Easy tjn your eyes 122 

20. Programming Tips — Sound 

Selecting sheet music 122 

(Irybaby's reward 122 

Songs in die Key of C] 122 

From llie Grain! Ole Opera 1 22 

C-138 Rcothovcn 123 

Triunpet fanfare 123 

2 1 . Programs' — Amuseme nts/ Delights 

Christmas card 123 

Funny Valentine 123 

Spritcbustcrs 12,3 

Racehorse 124 

March Hare 124 

C.128 lines Sc sounds 124 

Bunny Hop 124 

April 1st Magic 12.5 

.Summertime magician 125 

Jotu> an!5w-ers 125 

C-64 multiple elevators 125 

Commodore kudos 125 

C-128 spiralgraph 126 

Up, up and away C-fi4 1 26 

Son of Burrow 1 26 

Typing for toddlers 1 26 

The way we were 12() 

A plane joy 1 27 

Snowflakes 127 

Ultra Hi. Res .string art 127 

Random ."JD shapes 127 

More snow 127 



Space Caverns 128 

Unicorn/Pegasus 1 2S 

C-128 spirals 128 

22. Programs— Commercial Software 

Colorful Print Shop 128 

Quantuml.ink scrolling 128 

Fast Load flakjness 128 

Fast Load and drive 9 128 

Cartridge repair , 1 29 

Flight Simulator 11 coordinates 129 

Flight Simulator II jet assi.sl 129 

Blit/ing Bliiil 129 

KoaiaPainter to Print Shop 129 

Colossal Datafde on the C-128 129 

A Faster Colossal Dalaflle 129 

Restructuring DFReslruclurc 129 

Copying with RUN Script 64 1.0 129 

RUN Scrijit 64 reversed characters LSO 

Qnick4oading Basic 4.5 a la C-128 mode 130 

Datafile punctuation 130 

N'LQ and Paperback Writer 130 

Word processing databjise 130 

Make 'em sparkle 130 

Datalile improvement 130 

23. Programs — Useful ApplicHtluns 

Supersiinple scbediding jirogratn 130 

Ml. Bortter 131 

Foreign exchange 131 

Variable-si^e graph paper 131 

24. Programs — Udlilies 

Unprolector 1.31 

C-64 shorter sorter 132 

RFIM lligiilighter program 132 

15yle-.5)?.e sequential files 132 

Number formatting i32 

Limited input routine 132 

Shifty lop row 133 



25. Computer Room 

Computer desk 

Printer stands 



. 133 
.133 



MISCELLANEOUS TRICKS 

26. Odds and Ends 

Fasy SEQ file viewing 133 

Magazine indexing 133 



RUN SPECUl. ISSUE 1987/135 



Learn to Walk Before 
You RUN 




We receive many letters from new Commodore owners 
who want to learn the first steps in using tlieir computers. 
For these first-time users, we present the following step- 
bystep list of things that all beginners should be aware 
of as they start typing in programs. 

1. Before you can use a fresh disk, you have to format 
it. First turn on your disk drive, then insert the disk, close 

the latch and type: 

OPEN] 5,8,! 5 < Press Remrn> 
E'R1NT#15,"N():NAMK.##" < Press Return > 

The ## is a two-character identification number thai 
can be any combination of letters and/or digits. "NAME" 
can be any title for your disk that you choose, but it must 
not exceed 16 characters. Wait for a few minutes while 
the disk spins inside the drive, being formatted. When 
the disk stops spinning, type: 

C1jOSE15 <I"res.s Ki.'Uiin> 

C-128 owners can shorten this procedure by simply 
typing: 

Hl'>\Di!iR ■'N.AME,##" < Press Return > 

Caution: The formatting process erases all material 
already on the disk, so if you're formatting a used disk, 
make sure it doesn't contain any programs you want to 
save. See item 7, below, on reading the disk directory. 

2. As a beginner, you should start entering short Basic 
programs. Avoid machine language listings and very 
lengthy Basic programs until you get the hang of what 
you're doing. We have a checksum program (Perfect Typist) 
which actually [jroofreads your typing and tells you when 
you tnake a mistake. You should type in Perfect Typist be- 
fore you enter any progi-ams. See directic^is below. 

3. Remember to press the return key after each pro- 
gramming line you type in. 

■t. As you are typing in a program, you arc likely to 
make iypt)gi-a|>hical errors. To check what you have typed 
in, you'll need to list your progiain's lines on the screen. 
You can specify the exact lines that you want to see. 
Typing LIST lO-SO will list lines 10 through 50. LIST 20 
will list only line 20. If you see an error in one of your 



listed lines, you can fix it by using the INST/DEL key and 
retyping the incorrect section of the line. Always press 
the return key after you have fixed a line, 

5. Be sure to save what you have typed in before turning 
off your computer. I'o save any partial or complete Basic 
program listing to your disk, type: 

S.WE "NA\fF.",8 <PreS! Rftiirti> 

C-128 owners can press F5, type in the program name, 
and press the return key. 

Note; As you save subsequent versions of the same 
program, you need to make a slight change in the program 
name each time. You might simply add version numbers 
to the end of the program name (PROGR/\M.l, PRO- 
GRAM.2, etc). 

6. While working on a program, you may develop 
several versions before you're satisfied that you have it 
in final form. After you do achieve that final version, you 
might want to go back and erase the old, incomplete 
versions from your disk. Erasing unwanted programs is 
called scratching. (Be sure not to erase your final version!) 
To scratch a prograin, type: 

OPEN15,8,15 < Press Return > 

PRINT#15,"S0:prog.iiame" < Press Return and wail a few seeonds> 

CLOSE 15 < Press Rcliirii> 

7. After you have saved several programs to your disk, 
you will need to see their names so that you can load the 
one you want. Wr get the complete list (the disk directory) 
of all the program names on your disk, type: 

LOAD "S",8 <Press Retum> 

Then type LIST to actually see the directory. C-128 
owners simply press F3. 

8. When you know what prograin you want to load 

into your computer, type: 

LOAD '■NAMK",8 <l"ress Return > 

C-128 owners can just press F2, type in the program 
name, and press the return key. 

9. After you have loaded a program, type RUN to 
actually use the |>rograin. 



How TO Type Listings 
From RUN 

To simplify your typing of RUN's C-64 and C'128 
[irogram listings, we include checksum numbers. These 
luunbers follow a REM statement at the end of each line 
(e.g., :REM*123), These checksutn numbers necessitate 
your using RUN's Perfect Typist programs, listed below. 
Use 64 Perfect Typist for C-64 programs and 1 28 Perfect 
Typist for 128 Mode programs on the C-128. 

Type in 64 Perfect Typist (Listing 1) or 128 Perfect 
Typist (Listing 2) and save it to either tape or disk before 
running. When you want to type in a 64- or a 128-mode 
program, first load and run the appropriate Perfect Typist 
listing, Iwo SYS numbers will be displayed on your 
screen. Jot these down and keep them handy. They are 



1 36 / RUN sPECiy. issue 1937 



the SYS numbers thai you type in for deactivating and 
reactivating the checksum program. 

After Perfect Typist has been loaded and run, start 
typing in the program listing from RUN as you normally 
do. The only difference is thai now, after you press the 
return key to log in each line, a 1,2- or Sdigit number 
will appear below the line on the left margin. This is the 
checksum number, ranging from to 255. 

If this number matches the checksum number printed 
in the listing after the :REM*, then you know you have 
typed that line correctly. Then you type the next program 
tine right over the previous line's checksum value. If the 
checksum numbers do not agree, analyze your line on 
screen for any typographic errors or otnissions. Make the 
needed changes and press the return key again to log in 
those changes. A new checksum number will appear in 
place of the old one. Compare this to the magazine's 
number and then proceed to the next line. 

When you've Hnished typing in your program, disable 
the Perfect Typist by typing in the appropriate SYS 
number for either 64 or 128 mode, and press the return 
key. Now you can save your program as usual, to disk or 
tape. (Before you attempt to run your new program, turn 
your computer off and buck on to completely clear out 
the Perfect Typist program.) 

You may save an incomplete program any time and 
continue it later. You will have to reload and run the 
Perfect Typist program, then load the incompleted 
program that you were working on, list it, and continue 
where you left off. 

The 128 Perfect Typist will work in either 40 or 80 
columns. Also, it lets you use the C-128's automatic tine- 
numbering. If Auto is on, the checksum will lie [irinted 
below the line you just entered, and the C-128 will place 
the next tine number below the checksum. 

All !isting.s in RUN have been translated so that the 
gfraphics and control cliaracters are designated as under- 
standable key combinations. When you sec instructions in- 
side curly brackets, such as {SIlll-T 1.}, you sliould hold 
down the shift key and press the L key. What you see on your 
screen will look quite different from what is designated in- 
side ttie brackets. .Another exainjjle is {22 SPACEs}, which 
instiTicts yoti to press the space bar 22 times. 

Listing 1. 64 Perfect Typhi program. 

1 REM 64 PERFECT TYE>IST 

2 REM BY: JAMES E BORDEN 

1 i) POKE56 , PEEKf 56 ) - 1 : POKE52 , PEEKf S6 ) :CLR 

20 PG=PKEK(56) :ML=PG*256+60 

36 FORX = ML TO ML-^1 54 : READD:T = T + D:POKEX,D:NE 

XT 
40 IFTO 16251 THEN PRINT"ERR0R IN DATA...": 

END 
60 P0KEML + 4,PG:P0KE ML-f 1 , PG ; POKE ML+16,PG 
70 POKE MLt20,PG:POKE ML+ 32 , PC : POKE ML-v38,P 

G 
80 POKE Ml,+ 141 ,PG 

89 PRINT" (SUFT CLR)fCRSR rt) ++******♦*+++** 

)|i:^^)f^:f3(t. )t<;^ i^l i^t ^ -Hf. ■^ ^ ^ i^i n^ :^ Hf. i^i. i^r. ■if: f^ 

90 SYS ML: PRINT "{CRSR RT)*+ 64 PERFECT TYP 
1ST IS NOW ACTIVE! 2 SPACEs)**" 



100 

101 

11 
120 
1 30 
140 
150 
160 
170 
180 
190 
200 
210 
220 
230 
240 
250 
2G0 
270 
280 
290 
300 



PRINT "{CRSR RT) 
SYS"ML+30"=OFF * 
PRINT" {CRSR RT)+ 



DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 
DATA 



173, 
1 41 , 
003, 
140, 
003, 
005, 
162, 
189, 
004, 
008, 
104, 
041 , 
016, 
240, 
173, 
021 , 
255, 
189, 
255, 
013, 



005,003 
105,003 
162,103 
005,003 
141 ,004 
003,096 
000,142 
000,002 
164,21 2 
072,105 
072,238 
007,168 
001 ,056 
003,1 41 
240, 003 
141 ,240 
169,000 
162,003 
202,016 
032,032 



** SY 

* + + + * 

NEW 

,201, 

,173, 

,160, 

,096, 

,003, 

,032, 

,240, 

,240, 

,240, 

,212, 

,241, 

,104, 

,042, 

,240, 

,024, 

,003, 

,174, 

,189, 

,247, 



S"ML"=0N{5 spaces) 



003,208 
004,003 
003,142 
234,234 
173,105 
1 24,165 
003,142 
051 ,201 
040,201 
073,001 
003, 173 
024,072 
136,01 6 
003,232 
101 ,020 
169,042 
240,003 
211 ,003 
164,01 1 



,001 
,141 
,004 
,173 
,003 
,1 32 
,241 
,032 
,034 
, 1 33 
,241 
,024 
,246 
,208 
,024 
,032 
,032 
,032 
,096 



,096 
,104 
,003 
,104 
,141 
,011 
,003 
,20a 
,208 
,212 
,003 
,104 
,109 
,200 
, 101 
,210 
,205 
,210 
,145 



Listing 2. 128 Perfect Typkt pro-am. 



HEM 40/80 COL CI 28 PERFECT TYPIST 

REM BY: JAMES E UORDEN 



1 

2 

10 FORX=51 20TO53 79:READD:T=T+D;POKEX,D 

20 NEXT:IFT<>28312 T11ENPRINT"{2 CRSR DNs)ER 

ROR IN DATA. . .":END 
25 A$="":IFPEEK( 21 5) THENA$="{20 SPACES)" 
30 PRINT" (SHFT CLR) "A$" **** *+*** * +*** ***** 

40 PRINTAS" ** 128 PERFECT TYPIST IS NOW AC 

TIVE **" 
50 PRINTAS" **{2 SPACEslSYS 5120=ON{7 SPACE 

s}SYS 5150=OFF{2 SPACES }+♦" 
60 PRINTAS" ********»++**+****»************ 

*******" :SYS51 20:NEW 
70 DATA 173,5,3,201,20,208,1,96,141,45,20,1 

73, 4, 3, 141, 44, 20, 162, 43, 160, 20 
80 DATA 142,4,3,140,5,3,96,234,234,173,44,2 

0,141 ,4, 3, 173, 45, 20, 141, 5, 3, 96 
90 DATA 32,13,67,140,255,19,162,0,142,252,1 

9,142,263, 19,142,254,19,189,0,2 
100 DATA 201,32,240,8,201,48,144,7,201,58,1 

76,3,2 32,208,2 38,189,0,2,240,54 
110 DATA 201,32,208,5,172,254,19,240,42,201 

,34,208,10,72,173,254,19,73,1 
120 DATA 141,254,19,104,72,238,253,19,173,2 

53,19,41 ,7,168,104,24,72,24,104 
130 DATA 16,1,56,42,136,16,246,109,252,19,1 

41 ,252,19,232,208,197,17 3,252 
140 DATA 19,24,101,22,24,101,23,141,252,19, 

169, 42, 32, 241, 20, 32, 188, 20, 160 
150 DATA 2,185,185,20,32,241,20,136,16,247, 

165,11 6,208,9,166,117,208,5,169 
160 DATA 145,32,241,20,172,255,19,96,13,32, 

32,162,0,173,252,19,232,56,233 
170 DATA 100,176,250,105,100,202,240,3,32,2 

32, 20, 201, 10, 176, 5, 205, 252, 19 
180 DATA 240,15,162,0,232,56,233,10,16,250, 

24,105,10,202,32,232,20,170,72 
190 DATA 138,9,48,32,241,20,104,96,170,173, 

0,25 5,72, 169,0,1 41 ,0,255,1 38, 32 
200 DATA 210,255,104,141,0,255,96 



RUN Sl'KCIA!, rSStIK 1987 / 137 



1986 INDF^ 

TITLE 


AUTHOR 


ISSUE 






PAGE 


COMPUTER 


Applications 










Making llic Video Connection 


Bobo 


Jan 


26 




Commodore Carousel 


Morris 


Jan 


34 




The Creative Computer 


Cfjhn 


Jan 


44 




Tax Deductor's Delight 


Schulak 


Feb 


66 


C-64, 1'lus/4 


Run script ()4 


Rockefeller 


Mar 


40 


C-64 


Uuuscript 64, Pari 2 


Rockefeller 


A|jr 


42 


C-64 


Label Maker 


Konshak 


May 


M] 


C-64 


Extra! Extral Read All About It! 


D. Hook 


Jul 


26 


G-64 


Needlegraph 


Venator 


Jut 


M 


C-64 


Computerize Your Finances 


Shaughnessy 


Sep 


28 


C-64, C-128 


The Loan Arnmgcr 


Kroes 


Sep 


34 


C-64, C- 128 


Focus on Screen Shots 


Bobo 


Sep 


40 




Sign Maker 


Am berg 


Sep 


76 


C-64, VIG-20 


Computer Creativity 


Karrow 


Oct 


50 


C-64 


04 Personal l^cdger 


Beddows 


Oct 


62 


C-64 


Spreadsheets Revisited 


Shaughnessy 


Nov 


34 




CalcAid 64 


Busch 


Nov 


40 


C.64 


Dashing Off the Dots 


Novak 


Nov 


74 


C-64, C-128 


Electronic Expressions 


Grubbs 


Dec 


33 


C-64 


Extra! Newslctler C.raphics 


D. Hook 


Dec 


56 


C-64 


Runscripi I2H 


Rockefeller 


Dec 


60 


C-128 


CP/M 










CP/M Treasure Trove 


Peterson 


Jan 


68 


C-128 


Commodore's CP/M Plus 3.0 










Documentation 


Lane 


Mar 


64 


C-128 


Shopper's Chiide to CP/M Progiams 


Peterson 


Apr 


53 


C-128 


A CP/M Sampler 


Rockefeller 


Nov 


46 


C-128 


Education 










Grolier — I^'adi^g the Way in 










Education 


Morabito 


Jun 


58 




EducrUion in Canada — A Favorable 










Climate lor tJonunodores 


G. Hook 


Jun 


62 




The C-(34 Goes to Second Grade 


Gore 


Jun 


74 


G-64 


Turtle-Tutor for Tykes 


Crosby 


Sep 


46 


C-64 


Educational Games 










A-Ma/eing Wordjumbler 


DeGroff 


Jan 


104 


G-64 


ArithmeSketch 


Pel lech i/Jean 


Jun 


66 


G64 


As the Word Turns 


Caron 


Oct 


74 


G-64, VIC-20 


Math Square Olf 


Broussard 


Nov 


82 


G-64, VIC-20 


Sum Fun 


Achtman 


Dec 


92 


G-64, C-128 


Games 










Fast-Food Chef 


Decker 


Feb 


80 


C-64 


Swish! 


Jordan 


May 


40 


C-64 



138 /RUN SPECIAL ISSlJt I 



TITLE 


AUTHOR ISSUE PAGE 1 COMPUTER 


General Interest 

New Members of the Commodore 

Family 
The 1581 Disk Drive 
Commodore Power 


B ri s s o n /M o rab i to 
Morabito 


Jul 
Jul 






22 
24 
58 


C-64, VIC-20 


Shauglinessy 


Oct 


Jim Butterfield: The Guru of 
Commodore Computing 

Graphics 

Pulsiufi; Pictures 
Ultra Hi-Res Graphics 


G. Hook 

TrepaJ 


Oct 

Jan 


82 
48 


C-64 


Waliace/Darus 


Feb 


34 
42 
50 


C.128 
C-128 
C-64, C-128 


C-128 Custom Character Sets 
A Gallery of Characters 


Malitz 


Feb 


Sander 


Mar 


C-128 Ultra Hi-Res Graphics, Part 2 
Give Your C-128 More Character 
Video Fatit:isia 


Darus/French /\Val lace 
Goddard 


May 
Jun 


34 
52 


C-128 
CI 28 


N y m a n IN e w in a n 


Jul 


40 


C-128 
C-64 
Cf>4 
C.64 


Hi- Res Writer 

Add Some Character to Your C64 

High-Resolution Revolution 


Jaeger 


Jul 


50 
54 
68 


Solimene 
Markarian 


Aug 
Oct 


Double Vision 
Micro Artist 

Hardware Reviews 

Cartridjfe Kx]>;uidcr 
MIDI Interface 

Conunodore's New Disk Drive 
Home Sweet Home Control 


Cotton 


Oct 


86 


C-64 


Gannon 


Nov 


90 


C-128, C-16, Plus/4 


Morabito 


Jan 


136 
114 

26 


C-64 

C-64, C-128 
C-128 
C-64 
C-128 


Morabito 
Borden 


Feb 
Feb 


Adamec 


Apr 


22 
46 


RAM Expansion for the C-128 
Quick Brown Box 


Wallace 


Jul 


Premack 


Jul 


88 


064 


The FSD-1 Disk Drive— A Viable 

Akernative 
MicroFiyte Joystick 
Add an Apple to Your 64 


Ruddick 

Bobu 

Morabito 


Sep 
Nov 
Dec 


78 




127 


C-64 


86 


C-64 


H/W Modifications 

1541 Number Changer 

Languages 

RUN Basic 

Music/Sound 

Songfest 


Cotton 








Apr 


82 












Rockefeller 


Sep 


50 


C-64 








Kaczynski 


Apr 


30 


C-64 


Speak Up, Commodore! 

Printers/Interfaces 

Homewriter 10 


Wallace 


Dec 


74 


Wright 


Jan 


136 


Okidata 120 


Walsh 


Feb 


114 




Super Graphix Printer Interface 


Kevelson 


Feb 


116 


C-64, C-128, VIC-20 


Fn Search of the Perfect Printer 
Your Guide to Printer Interfaces 
In Search of the Perfect Printer, Part II 
M\V-:i50 Interface 
Controlling Your Printer 


Walsh 


May 


26 




Kevelson 
Walsh 


May 


32 


Jun 


38 


C-64, C-128, VIC-20 


Kevelson 


Jul 


88 


Shaughnessy 
Walsh 


Nov 


54 


The Gemini II and NL-10 


Nov 


124 


Spotlight on Laser Printers 


Stern 


Dec 


50 




Okimate 20 


Walsh 


Dec 


150 




Device One 


Walsh 


Dec 


152 





RUN SI'KCIAl. ISSUE 1987 / 139 



TITLE 


AUTHOR 


ISSUE 


PAGE 


COMPUTER 


Software Reviews 

White Lightning 


Bryan 


Jan 
Jan 


12 
14 
14 
16 

IS 
20 


C-64 
C-64 
C-64 
C-64 
C-64 
C-64 


Stunt Flyer 


Bobo 


Winter (James 

1541 Disk Drive Alignment Program 


Annucci 
Premack 


Jan 
Jan 


Project: Space Station 

The Original Boston Computer Diet 


Bobo 
Premack 


Jan 
Jan 
Jan 
Feb 
Feb 
Feb 
Feb 
Feb 
Feb 


Success with Algebra Series 


(iuen-a 


22 
16 
16 
18 
20 
22 
22 
24 
12 

14 


C-64 
C-64 
C-64 
C-64 
C-64 
C-64 
C-64 
C-64 
C-64 

C-64 

C-64 

C-64 

C-128 

C-64 

C-64 

C-128 

C-64 
C-64 
C-64 
C-64 

C-64 

C.128 

C-64 

C-64 

C-64 

C-64 

C-64 

C-64 

C-64, C-128 

C-64 

C-64 
C-64 

C-128 


Fast Tracks 


Bobo 


Calkii 

Snowdrii'ts and Sunny Skies 


Silverstein 
A. Hinshaw 


Maps 64 USA 
The Whole Bit 
Real Estate 64 


Stern 
Premack 

Wasser 


The Halley Project 
Spy vs. Spy 11 

Inventory Management and Accounts 
Receivable Management 

IMayWriter/Casdes and Creatures 


Guerra 
Wasser 

Khalsa 
Bobo 


Feb 

Mar 

Mar 


Mar 
Mar 
Mar 


16 
18 
24 
12 
14 
14 

17 
19 
14 


S'More 

Productivity Plus for the C-128 


Wasser 
Guerra 


The Management Edge 
Newsi-ooni 


Griibbs 
Gnibbs 


Apr 
Apr 


Wordpro 128 


Premack 


Apr 

Apr 
Apr 
May 


Sylvia ]^>iier's Your Personal 

l-'inancial Planner 
Silent Service 
Personal Portfolio Manager 


A. Hinshaw 
Guerra 

Grubbs 


Hardball! 


Guerra 


May 

May 
May 


14 

16 
18 
18 
20 
18 
26 
20 
24 
25 
26 

30 
14 


Stickybear Math and Stickybear 

Reading 
Paperback Writer 128 
Mean of Africa 


A, Hinshaw 
Bobo 


Guerra 


May 


The File Converter 

Chem Lab 
At Bat Stats 64 


Premack 
Premack 
Wasser 


May 
Jun 
Jun 
Jun 


Transylvania 


Bobo 


Pipeline 

Progi-ammers' Basic Toolkit 

Ultima IV: Quest of the Avatar 


Premack 

Guerra 

Guerra 


Jun 
Jun 
Jun 

Jun 


CiFOS: A Whole New World for 
Your Commodore 


Stem 


Alter Ego 


Bobo 


Jul 


CMS General Accounting System 128 

The Bard's Talc 

The Graphics Magician Junior 


Wasser 


Jul 


16 


Guerra 
A. Hinshaw 


Jul 

Jul 
Jul 

J"l 


18 
18 
19 


C-64 

C-64 
C-64 

C-128 

C-128 

C-64 

C-64 

C-64 

C-64 

C-64 
C-64 

C-64 


Font master 11 


A. Hinshaw 


Paperclip 11 

Superscript 

G rover's Animal Adventures 

Elite 

Silver Disk Series 


Walsh 


Premack 
Guerra 

Teverbaugh 
Teverbaugh 


Aug 
Aug 


14 
14 


Aug 
Aug 
Aug 
Aug 
Sep 
Sep 


16 
16 
18 
46 
16 
18 


WillWritcr 

Butcher, Baker, Candlestick Maker 
Fight Night 
The Bod)' in Focus 
Micro League Baseball/General 
Managers Disk 


A. Hinshaw 
Adamec 
Bobo 
Guerra 

Wasser 


Sep 


18 



1 40 / RUN Sl'KCIAl. ISSUE 1987 



TITLE 


AUTHOR 


ISSUE 


PAGE 


COMPUTER 


Quizam! 

Shadowfire 

Bank Street Mailer 

The Music Studio 

Your Personal Financial Planner 

Gato 












Wasser 


Sep 


20 
22 
24 
16 


C-64 


Bobo 

Wasscr 

Bobo 

Guerra 

Bobo 


Sep 
Sep 
Oct 
Oct 
Oct 


C-64 
C-64 
C-64 


18 
18 


C128 




C-64 


Party Songs 


M, Hinshaw 
Walsh 
Bobo 
Bobo 

Lane 

Wailace/P re mack/Bo uterse 

Hunt 


Oct 
Oct 
Oct 


18 
20 
22 


C-64 




Fleet System 3 

Jet 
Infiltrator 

Personal Inventory; Personal 
Accountant; Time Manager 

Big Software for Small Business 

Software to Improve Your Business 
Picture 

GBA Championship Basketball: 
Twoon-Two 

Solo Flight 

Super Boulder Dash 

Whole Brain Spelling 


C-128 




C-64 




Oct 
Oct 


22 
24 


C-64 

C-128 




Oct 
Oct 


28 
40 


C-128 
C64 


Wasser 
Guerra 
Guerra 
Grubbs 


Oct 
Oct 
Oct 

Nov 
Nov 
Nov 
Nov 


104 

104 

105 

20 

20 


C-64 


C-64 
C.64 
G64 


Aerojet 

Quake Minus One 

Color Mail 

Intrigue! 

Lords of Conquest 

Final Four College Basketball 

Battle of Antietam 

Dfiie 128 


Walsh 

Bobo 

Grubbs 


G64 


22 
22 


C-64 


C-64 


M. Hinshaw 
Bobo 

Teverbaugh 
Teverbaugh 


Nov 
Nov 
Nov 


26 


C-64 




26 


C-64 


26 
116 


C-64 


Nov 


C-64 


Premack 


Nov 


116 


C-128 


Partner 128 

Mind Mirror 

Riddle of the Redstone 

Football 

Where in the World is Carmen 

Sandiego? 
Machl28 


Wasser 
Sodaro 


Dec 


18 


C-128 




Dec 


18 


C-64 


Bobo 
Grubbs 


Dec 
Dec 

Dec 
Dec 


24 

24 

26 
26 


C-64 
C-64 


Bobo 
Watt 




C-64 
C-128 


Conflict in Vietnam 
Bank Street Speller 
World Karate Championship 
Lords of Midnight 
1541 M.A.S.H. 

Telecommunications 

BRS/After Dark and The Knowledge 

Index 
RUN's Great Communicator — 

Run term Plus 
11-Line with Medical Services 
Enter the On-Line World of Lucasfilm 

Utilities 

Add Elegance to Your Program Listings 

Auto-Run 

New Names for Old Disks 

Create Your Own Keypad 

C-128 Automenu 

Automenu 

Automatic Line Numbers 

Autoboot 


Bobo 

Wasser 
Guerra 

Wasser 


Dec 


27 


C-64 


Dec 
Dec 
Dec 


28 
28 
28 
29 


C-64 
C-64 
C-64 


Grubbs 
Morabiio/Adamec 


Dec 


C-64 




Jan 


56 

84 
50 
24 




Situs 

Morabito 

Morabito 


Jan 

Feb 
Aug 


C-64 










Broussard 

Kapauan 

Dickow 

Borden 

Dams/Wallace 

Rocke 

Broussard 

Smoak 


Jan 
Jan 


74 
100 


C-64 


C-64, VlC-20 


Feb 


74 


C-64 


Mar 
Apr 
Apr 


58 
60 


C-64 

C-128 


66 


C-64 


Apr 


72 
76 


C 64, V1C.20 


Apr 


C-64 











RUN SFECIALISSIE WT I 141 



IIILE 


AUTHOR 


ISSUE 


PAGE 


COMPUTER 










C-64 
C-64 
C-64 


Disk Reader 

Hide and Seek with Basic 


Agostini 
Flee 


May 
May 
May 


50 
62 
69 


Easy Data Entry 


Allen 


Easy Disk-File Conversion 
Quick Merge! 
Disk Keeper 


Stange 


Jun 


78 
84 
34 


C-64 
C-64 
C-64 


De A'Morelli 
Broussard 


Jun 
Aug 


Bootmaker 128/64 


Pytlovany 


Aug 


42 


C-128 


Programmers, Take Note! 
Making a Pointer 
Put It on Paper 


Kodadek 

Cam[)bell 


Sep 


72 


C-64 
C-64 
C-64 


Oct 


78 
68 
98 


Rasmusseti 


Nov 


ML Perfect Typist Version 2.0 


Borden 


Dec 











Attention 
Subscribers 



UV (Hcasidnitllv UKikc uiir miiilirii; list ;iv;ii!;il>li t(i 
other coinpaiiiLi ni iiii;ajiiAniiiii'. uiili pn>(iiiti.\ or 
senices uliidi ue feci niighi bv ol inleresl lo you. If yiiii 
piefer tliat vour name be deleted from stidi a li^i. 
pk'asv litl I lilt tia' roupon below ui affix aaipy of vour 
mailing label and mail it lo: 

V.W ( ■oiiiiminicalions/l'ettTbdrovigli 

RUN 

POIiiixO,')-^ 

Fanninirdalc. XV 1 1 7;!7 

I'k-asL' (k'k'lc HI) namu Iruin mailing lists stni lu oihcr 
companies (u oi-)rani«ititms. 



Name . 



Address . 
Cih 



. State . 



. Zip . 



RUN CLASS ADS 



ADULTS ONLY SOFTWARE tor the Commodore 64/128 

THE LOVEGAME Inlsracirvo fanlasy 

game lor two Of fnots mtimaie play- 
ers Amusing and sugg^H'™ '"'"s 
quiz lormat with provocative "Soofing" 
systBtni S24 9S pOTtpatS 
STUD'S CHALLENGE A mans lam 
advonluro ronip .Tne obiec! ol t^is 
game is to SCORE, ttgunng out how 
to pleasfi various lyPO$ ol women, 
and wtiflt I urns Itioin oH It takes all 
kindsM SSI. 95 postpaid 



ALVA DATA q , jg •• 

26 Alva Street. 
New Bedford. MA 02740 
(chBck/MO, oulside US add S6) 



WIN LOTTO MILLIONS!!! 

LoHo Picker" improvos your odds Tor wn-vn''; s/ 

oiiminaling bias Hom your 5i>re4::lion£. Using a proton 

siRiisical lool w(j duplicate \t\n same selection pro^ 

coss u&m) by tPtlory CommiaaiOfiS tftemBflilvss' All 

US Slate & CanntSirtTii LotlP gameji n& wQl^ a$ 3 & 

4digat daily gomea included Pj-oflfammnbie' Never 

ObSPletfli For Commodore GAn23 ino Ainign) 

S29.9S * shippma ORDERS l-BOO-34l'l&50 enl. 77 ^ 

Inquines'Dealers V71B'317-1901 

SAVE SHIPPING, Ordflf by Mail: GE RlDGC SERVICES, INC. 170 Bfoadvi^ ay. Suite 

^l-R, New YorH. NV ^0036 Wftle lOf FREE catalog. 








HUN Class Ad Section 








m w \f w 


i'.\A'*\ M HMtilH lo an H|l]]4iltlUlitk 1*11 i\utw u 


III ( 


llllllll 


i.tiiit' 


|IIO{||Ht4ll 


1 V.H 


iHr,V»'J-jn,ltiiiluuik-i., ,11 k.'n ,illMiilidiU- (iri 


I. ( 


lll1.il 


i-liilK 


ihMRVX^ 


i*lb 


■ H'iHIIci I'Klt'tt U^imillt^i'lllH^llili'l MMJi.uillt' 111 


itin: 


l.llEil 


(111 in 


Ut lilt* Mu\ 


1 Hii 


iMU 111 IjULlk-lliiiliJ, Jit'X'^ tluiikihnit i\ liiiintti ci 


^111^^ 


I'M '11 


Itinlicr ill iW n" 


11111^ Mll]t1ML^. 








W iiu] fillet 


Mn 


|m'>liiiti>,ilM.uI III V'« ( l,<t> Vil >i'iiii>ii. i,ill 1 


falh 


■I I^^^lu'^tt' 1 


m KflO^tl- 


403 


ur HIMS^'MTI .IT llii'iiilii liillllliiivi 111 CilMi 


IIIUL 


.It II 


v:i;!K- 


.11 VII \\i .1 


ir|ir 


iiit'ik^. iniiiii'i 'iiili'i^, M.iHii'i 1 ,iMi Ml \'1^^ 









142 / RUN si't:t;i;\l. LSSt.'K 11)87 



RUN CLASS ADS 



YOUR ONE-STOP DISCOUNT SHOPPING HEADQUARTERS 
FOR GEOS AND ALL GEOS SOFTWARE 

GEOS 1.2— S30 
FONT PACK 1-Sie.,DESK PACK— S22 

NEW WRITER'S WORKSHOP— S32 , , , _^ 

NEW GEODEX— S2G ("11 [^ (l CZJ 

OEOS PROGRAM MANUAL (Banian Publ.}— S14\ \\J} I_J^ — I CJ) 
GALAXY GRAPHICS— S8 IntolLogic 
Above Discount Prrcos Based on cash purchase ot itiree or more ■> 
ilems. For two items please add S3 for one item please add S5, 
Add S4 H&S. VISA, MC rush order add S2. CALL 1-800-672-2887. 
Or send certified chock or money ordei (allow iliree weeks if porsonal check) to: 
ImolLofliC— Suite 840. 3(10 West 5th Strccl, Austin TX 78701. (TX res add 3%) 




g. H;|.H,N!i Deluxe 

V^^^^*^ BBS Construction Kit 

T^BiS maEpucs you in control v*iy tj^cr fnendly. IOO%pfcxjr.MnmabJ«; menus. 300/1200 Baud, 
multj-dnvtf, compfthetTii\t file tramfefi, mer acIMiy laj. coloi gf,3phics capatfc, meiiage bjie^. 
story tw^rds, plus .ill tfie f^^urt^ you Vb-ould expect it\ a g^Jt BB5 sj-item 



OnJcn: DEADLOCK SOfTWAfiE 
205 Boston Ave. Miiyl Landing. NJ OB330 
Or ull Ontefs Only. 1-S0O-334-0B54 ext. SZ7 
(6091 6SJ-4330 - Demo BBS {24 hfi; 300/1 JOOJ Hsj!? nof.-™iri..l ctmt! 



$59.95 



PERSONAL 



OWNERS 



WRITE:C,l.t.U.M. 

P.O. Box 60369 



BmiltJKiTil 



92106-8369 



List of 100 services you can offer 
and earn $5000 per nnonth! 



CASINO CRAPS 

^^ A computfir progrpm for ttie beginning or vjrpflriencad bhoo1«r. 
COMMODORE 64 or 128 DISK 
EASY TO USE: Completely simulates various casinos' house rules attd jams 
va/ialions Allows every betting option available on a casino craps tapfo, 
PlK!««BuyH»nJway>P»M»Don't P»s»»ConwDon't Com«»CWdi*Arid Murfi Morel 
As advertised in Gambling Tlmft«l It'A tNi wnt at the real thln^jl 
Only Sie.BS plus $3.00 ohipping and handliiio»Cr«dlt cards, coll 1-eo<M43-2751 
Ext, 65 (U,S.A.)»ln Wyoming, 1-800-442.2BM Ext. 05 24 Hour* Sanica 
Check/Money Order to 
Ciiino Sollware 50S Usviia, Rock Springs, WY 92901 



TRY BEFORE YOU BUY 

Best Selling Games, Utilities, Educational Classics and New Releases. 

lOO's ot Titles • VISA/M.C. • FREE BROCHURE 
Same Day Shipping 

RENT-A-DISC 

Frederick Btdg. Suite 345 B 

Huntington W. VA 25701 

(304) 529-3232 



COMPREHENSIVE GOLF PACKAGE tor the C64 ON DISK 
USGA HANDICAP SYSTEM— For one to 300 golfers. Designed for speed 
of data entry and featuring calculation of new USGA slope handicaps. 
GOLF STATS— Keeps track o( every impo/lant aspect ot your game. Reports 
your averages tor the last 10, 30, and 100 rounds played. It even keeps 
hole by hole averages, 

MUCH MORE— Programs tor iMurse filing, hda handkaping, and also a 9 hole 
league handicap system. 12 different golf related programs In all, 

SEND— $39.95 to McConnell Software, 
P.O. Box 652, Marathon, NY 13803 




DISCOUNT SOFTWARE 

Send for our free 24 page catalog. 
SMALL BUSINESS ACCOUNTING 

Hie ACZ Genera] Lodgor was designed specifically far Ifie Conmodore &4 arxj small 
bus^fvoss. The ACZ General Lj^dg^r is BOTH complele and easy lo use. Check these 
features: Flexible report formals to suit your business. Complete pnntouts Of journal 
enirias and ledger accounts. Three digit account numbers. Use 1 or 2 disk drives. 150 
accounts. ?00 entries per month. Double entry desfgn so the trooks always balance. 
Tho program comes wilh a complete 40 page manual plus a demo disk thai lully 
illuslrates ell the foalures of the ACZ General Ledger. 30-Day sallsfactlon guarantee. All 
Ihia for only 129.95 ppd. (NY Residents edtt aaloa lax-loreign orders add SS.OO). COO 
phone orders add Si. 90. Send check or money order to: 
WMJ DATA SYSTEMS 
4 Butterlly Drive, Kauppauge, NY 117B8, (516) S43-5252 



^_ 



Add Power to SpeedSctlpt 3.0-3.2 

Gro&t Add-on pro^&ma rrom Eho ftultror of BonptSave ind 03 t!hiatomlzer. 
ftrmmDMiOMt SB 3-x customizAr, Set/save m&rgin default, 30 + prmt codes. Print 
preview 80 cola, on acraen at once, no horn. scroUlngl 117 + (3 8*:H, 
lammnruci as 3,x enhanoor: Edit/cut paale Iwlween two taits at ohm. add tait 
macros, halp, sntiryptor, mail marge, Dvorak. ASCH oonv. tl7 + 43 S&H, 
immai Webster's UpBtart Ready Dloaonary for flpeedCheok. 16K * verified worda 
entered Viy frequency In Am. En^ati or raster oheo}clng, IIT* + 13 SAH. 

US funds only. Outside na/C»n add 13 per dlalt/ video, NC ree. add 8% lax. 

UPSTART PUBLISHSING 

Dapt. ntS, POB ZI022, OrHntotKiro, NC 37431}. MC/Vlia ordera: 918/370-9732 



MUSIC FAKEBOOK SYSTEM FOR THE 064/128 

■ Stores and displays wards & chords, up lo 100 songs par floppy 

■ On screen transposition for immediate uso 

• AI3 songs on ti\s< can bo aulo sequenced 

■ Paging (up to 4 pages) with keyboard or remote coilrol 

• Songs can be sorted'Alphatjeticaly-numencaHy-artisl name-drum boat-type Ol muSiC 

• Song sheets print out in any key setecled 

SySlflnrt comes compfete w»h program di^kn demo disk, operating monual and remote 
conlrol for advancing li'xl. fslo computer knowJodgo necessary, Excelfent for the beginner 
mualclun and the slngu pro^uaaionfll No rr>oro fumbling w-ith faho books or shoot music 
Unllmiltid rijpenoire at your linger tips. 
Price S69.95 plus S3.50 shipping & handling. Visa. M.C.. AmEx , CO D. (add St. 90) 

tgC2 HighviT^y AlA ^ , , IlT ]j^ S 



aIa 



Indian Hartwr Beach, Fl, 32937 : 
l3Ca\ 773-Z956 Send for info. 



DOUBLE YOUR COMPUTER 
CHARACTER SIZE INSTANTLY! 

KJDSVIEW ger>flrales DOUBLE. SiZE characters automalk^ly and instantly wtth normal 

operalton of your Commodofo 64— run eiisting, or create imaginative new programs 

easily. For children, adults, schootg, the vtsually Impaired. 

KIDSWORD is a word processor specially designed tor the kldsviow anvironmant— 

powertui and very easy tc use. 

KIDS VIEW and KIDS WORD Dlaki I29.SS each or bott) tor $49.95 

VI SAf MASTERCARD (603) g27-M28 
KIDSVIEW, Dapt. RS, P.O. Box 98, Warner, NH 03278 



^z ciDmmodor^ 



plus/4 



AND 



$19,95 



-^ SOFTWARE 

Games, (logic, puzzles, battle) educational, ftnath, geography, 
v(x:abialary), nuance & statistics and trivia. Write far catafog. 

Cifdlnil SoIIWHi I4K0 Build Amcii«Dr,Wc™lbTklB:.VA JILSIl (7031 JSI|.6494 



I"' 
disk 



FREE SOFTWARE 

fOOO's of PROGRAMS availablo (including games, business, modem, util- 
ities and application programs) from the PUBLIC DOMAIN USERS GROUP 
for the CB4, C12B (plus CP/M PROGRAMS FOR THE C-138), IBM and 
CP/M computers. PDUG, established in 1302, Is one ot the oldest and 
largest usara group with over 10,000 members worldwide, 
SPECIAL OFFER— Sand $10 today and receive not only our 1 year member- 
ship, but also our new members' disk containing £1 great pnogra/ns. Or for irtore 
info send a stamped addressed return envelope (specify computer) to: 
PUBUC DOMAIN USERS GROUP, PO Box 1442-N1, Orangoparli, FL 32067 



RUN SPECIAL ISSUE 1987 / 143 



THE SMART WAY TO SAVE 
YOURjRCW 

You'll find all your favorite issues of RUN in minutes— and in 
great condition-with smart-looking binders or file cases from 
Jesse Jones, 

Sturdy, protective tile cases make for easy access to each 
issue, while rugged binders allow magazines to lay flat for 
easy reference. Botfi hold 

12 issues, are custom-designed in brov^^n with gold spine let- 
tering, and are unconditionally guaranteed. 

Order todayl 

File CBse»; S6.95 ea : 3/S20; 6/$36. 
Binders: S8.50 ea : 3;$Z4.75: 6/S48, 

YES! Please send nne protection for my RtJN: 




He Cases 



. Birxtefs 



I erclose my Chech or money wder for $ . 



State. 



_ap. 



us cun«icy orfy CuskK us, Hjd $f so 
pv rtflm icf WS93B and handing 
Pease allow 4-6 iweKs tor deli'^ 

MML TO; Jssse Jones Box Cap , PO 60K 

iW. Depi flUN, miadelptva, PA I9nt 



TMe running Board 

RUN invites you to contact its bulletin board (RUNning 
Board). In addition lo up-to-date information about RUN 
and the Commodore industry, tlic RUNning Board now 
presents useful computing liinis and tips, corrections and 
updates 10 piiblisherl articles, user's group infonnation, 
an up-to-date list of selections for ReRUN and sneak 
previews of upcoming articles. 

The RUNning Board also features a menu format that 
makes it easier and faster for you to select a specific 
section of the hulleiin board. We use a standard protocol, 
300 baud, one stop-bit, no parity, full duplex and a word 
length of eight bits. 

The RUNning Board is definitely worth a call. You can 
get on-line anytime, 24 houns a day, seven days a week, by 
dialing fi03-92'4-9704. 



RUNAiSRT 



As a setTJce to ics renders, RUX will ])criodical]y pubtisli the 
names of companies who are having difficulties mt-ctinj; their 
customer obligations or who havo gone out of business. Readers 
are advised to coiuact /i6W before dealing with tliese totnpaiiits: 

Software Dimensions 

Star-Tech Software 

If readers have any questions or concerns about ;my otlier ad- 
vertisers in RU.\', please contact: 

Barbara Harris, Business Manager 

RUN 

80 Elm St. 

Peterborough, NH 03458 

603-924-9471 



List of Advertisers 

Advertising Sales: 

East Coa^ Sales: 

Steve RobbuKj Ken Blakeman; Nancy Potter-Thompson (603>fl24-7t38 or (800>441-M03| 

West Coast Sales: 
Giofsto Saluti (415>-328-3470 



Reader Service 



f^ge 

436 Al>aciis Sofiwiire 515 

416 Al)si>liiic Kmtrtainmciu .W 

404 Acorn ot Indiana .93 

403 .\pplicd Tectinologics. Inr. 64 

418 Batlcrici Included CIV 

423 llaitcric* included 7 

44.=; Dcrkcley .Soflworks 28, 29 

408 Bed!/. IjniBiiane Course! 60 

431 Unlini Sdllware 11-1 

406 itiiclykig. Inc , S, 3 

443 Briwdl 55 

• c.o.M.Ei es 

409 Cappco, Co .99 

432 Cardinal Software 57 

401 t:lii[)mnnk .Software 51 

424 Combiner t^eiuers (if America 2!) 

441 Coni[HLSci-vc 10. 1 1 

444 iligital SoiiJlionI 4 



Reader Service ^£e 

433 nigital Villon 95 

41.^ F.nlcruld t'oinponents 48 

430 Free Spiril Soihvare 65 

437 Ureal Oaitic FriKlucts 57 

■107 Hi.M .Marketing 22 

410 li&P Ciimpulers 36 

440 Indn^triiil CAnnputer CUjrp .99 

■tUVJ I.! I.r. Software , 93 

43'1 inCoiiTrol . 94 

419 Kctek n 

435 LitHciln College 96 

* Lyco C^tnnpnter 44, 45 

442 Ntastcr Software 96 

428 Michael Konshak 62 

vn \ficrol(>K Corp., 61 

126 MicroCom|»ltcr .Services 5',; 

43y Micro t;uhc Corp 97 

414 Mitinite fress 53 



Reider Service Pig* 

• .Mindsc^iK-, Inc. .9 

405 NRl SdiEiols 49 

41 1 Prism .Software CHI 

417 Professional Software CIl 

RL'S 

RUN Suliscription Ad 33 

RUN Special Issue Ad 47 

T-Sliirt Ad 55 

Special ReRUN Ad .38 

•120 S&S Wholesalers 35 

4^5 Styles Kkctric Works 23 

4 i2 Supra .1 

400 Superior Micro Systems 64 

438 Ultraliytc 97 

413 VC Data Shack 6 

421 V,ilin-Sori 41 

42S1 Nfic-i , Inc 33 



For further iiiformauini iroin our advertisers, circle tlic corres[)otiding Reader Scr^'ice 
number on the Reader Service card. 

*This advertiser prefers to be contacted dirccdy. 



This index is provided as an addi- 
tional serviee. The publisher does 
not assume any liability for errors or 
omissions. 



144 / RUN SPEXIiAL ISSUE 1937 




Sixth Sense 64 



$39.95 



It answers your phone, makes your calls, acts on botti. 
Sounds outrageous! 11 is! The Sixth Sense 64 modem software 
understands a macro language that operates based on the lime 
of da/, daia received, iniernal counters or provided templates. 
Over 160 functions at your control! 

• 700 virtual line screen • 16 macro keys 

■ 16 condition strings spol prompt/initiats responses 

• Clock (unctions key operations/stamp Incorr^ing data 




Sixth Sense 128 



$49.95 



The spectrum of Prism expands to enhance your Commodore 
128. With Sixth Sense 128 comprehensive rrrodem control isnl a 
mission impossible. 

Sixth Sense 129 is the most comprehensive modem control 
available. It operates based on ihe time of day, data received. 
Internal counlers or provided templates. Harness the explosive 
capabilities ol Sixth Sense to do your next mission impossible. 

■ 800 line buffer/7,200 lines maximum with expanded RAM 

• 20 active macros ■ Runs in 80 columns only 

• 42 prewired command keys ■ 10 to wire your way! 

1 Line/screen editors • SEARCH/GOTO commands in buffer 

■ CompuServe "B" & Xf/0DEfv1 CRC/Checksum file transfer protocol 



Dataquicl< 64 $19.95 

Extral Extra! Calling all potential BBS and Exchange Operators! 
Once again Prism Soltware otters the latest in software for the 
Commodore 64 user! Now with Dataquick 64 you can operate a 
BBS with 8 message bases and 10-25 messages per base, 
Included with Dataquick is the Lighlning Exchange which 
makes multi-file transfers quick and easy 
Dataquickls EXTRAordinary features: 

• Supports 1650/1660/1670, Westridge. Master Modem, 
Volksmodem 12 & Hayes compatible modems, 

• Supports 1-4 disk drives. ■ Supports new Punter protocol, 
. Control access to drive 10 & 11 Reslhcts tc high level users. 

• Secure - users see only what you let them see. 10 access 
levels (or sysop control Records hackers and leeches. 

■ Poll function • Storyboard - E-mail - Macros! 

■ Complete sysop support-documentation, maintenance 
programs, samples, setup programs & membersnip to private 
support line. 

Lightning Exchanged shocking features: 

• Multi-tile transfer 

■ Supports same modems as Dataquick 64 eupFRKir 

• Built-in lerminal • Supports 1-4 disk drives bUf-tfiM 



Superl<it 1541 

version 2,0 Dy Marty t^ranz S Joe Peter 

SINGLE NORMAL COPIER - Copies a disk with no errors In 1 

minute. Correcls all disk errors. 

DUAL NORMAL COPIER - Copies a disk in 33 seconds with a 

graphic/music display while working. 

SINGLE NIBBLER - Nibble copies a protected disk in 1 minute. 

DUAL NIBBLER - Nibbles a disk in 30 seconds and has a 

graphic/music display while working Its capable of copying 

elongated headers, extra sectors and non-siandard GCR. 

FILE COPIER • Full screen display including buffer, starting 

track & sector, file being copied and revives deleted/corrupted 

tiles. 

TRACK & SECTOR EDITOR • Capable of reading to track 40 

and examines data under errors Full editing capabilities in 

HEX. ASCII or text An ML monitor is bullt-m. 

GCB EDITOR - Allows examination of a disk in lis raw format 

including the header, density, sync marks and non-standard 

GCR bytes. You can even examine a full track at a time. It's a 

great way to learn disk prelection methods' 

SUPER NIBBLER - The most powerful nibble available. It even 

detecis and duplicates density changes automatically 

DISK SURGEON - This is what a parameter copier should be! It 

copies and places parameters cn the disk. Now, over 400 

parameters are included. 

SUPER SCAN - Gives a video or printer display of errors and 

density on a disk in under 35 seconds. 

SUPER DOS FAST LOADER - Loads 150 blocks in ID seconds. 

It also Includes an Auto-Boot maker. 

Alt programs work with 1541/1571 single side drives made. All Of 

the copiers are the fastest on the market and include directory 

options. The File Copier. Track & Sector Editor, Super Nibbler 

and Disk Surgeon use 1 or 2 drives and include device number 

change. All programs re-boot to main menu. SUPERKIT has an 

easy to use menu-dnven operation! Version updates are S10. 

Parameter updates are S6, 



Plus $3.00 Shipping/Handling Charge - S5.00 CO D Charge 
All of these programs come cn a double-sided disk 

401 Lake Air Drive, Suite D Waco. Texas 76710 

Orders/Tech Help (817) 751-0200 

Dealers and cistributors are welcome. 

MASTERCARD 4 VISA ACCEPTeD 
15ii is for arefiival use only I We do nol conSons rwr encourago piracy of any kind. 




Ciicie 41 1 on Flesctei Service card. 



COMMODORE CLASSICS! 



PAPERCLIP WIWSPELLPACK 

for Ihe Commodore 61 

"The 1^ I Best Sell inn iVortS Procesainif Package " 
~ BILLBOARDS COMPtn-KR SOmVARE CHART 
"Superb . . . the most sophisticated to date. " 
- COMPUTK MAGAZINE 
"The hesi pro fessiomit ivord proceiisor availahle. ' ' 

■ Fast: Insert/ Delete. Move or Copy words,, 
phrases, sentences or entire blocks of text. 

■ Easy: sane up to 52 repetitive words or phrases, 
then enter then] witbju.<;i two keystrokes. 

■ Sophisticated: Global Search and Replace 
chani^es eoery occurrence of a wrong word or 
phrase. 

■ Works with the Consultant Data Hase Manager 
for the CM 

■ Personalized form letter, mailing li.<st and 
mailing label functions. 

■ Built-in Spellpack with Dictionary for fast error 
checking. 

THE CONSULTANT 

for the Commodore 128/61 
Database inanaiiement made easyt 
"Combines .■iimplicity with speed and gigantic 
records. " 
-C0MM01J()RK.\U(MINE 

■ Built-in templates for the most- needed database 
functions: Inventory. Budgets, Mailing List.'i, 
Catalogs and many more. 

■ K\ ten sire macro capaliility 

■ Keyed field accets speed — 1/ 10 .wcotul: .sorting 
speed — •/ seconds per 11)011 records. 

■ ^('v .search operators ~ l-jprnl To. Greater 
Than. Less Than. Not i:<pial To. Match Anywhere. 
WddCard 

■ Totally flexible relational reporting — insert 
any Consultant data file in a report. 

■ Works with Paperclip Word Processor. 

KEYS TO TYPING: 

for the Commodore (14/128 

40 words a minute in 32 easy le.ssons — or less! 

U'arn to type at your own pace! 

■ '12 step-by step lessons to reach at least grade 10 
proficiency' 

■ le.s.sons based on proven instructional 
technkjues used by typing teachers. 

ajniKH.S tVL U [)1 0. ^n l 111 i ..n,|um. W tliinl Mrt rl. Hn t.ra.pm) lllll 

(tieiHHI mie ll>i.uiiiii1lln<lth>itii<>luit>l)iiurlii(aliTlallrr.)uuiiiiv 
onj^rjtrilrttl fr^mi u*M Ihf full fcutfijrijril llRtprhc plus >SO0 fnV putEAJ^r 

*«r mtm KAItrrlcK Im ludr^l |>Mri]«i4 It ^ihu t ai) «U«^a [utr Ih*- Ul^ri ^mltjrt 

ttt v«ur jiniarum li^ rr I urnlnjt I ht^ iirlijEi:*) illiL drMi 1 1 Q.OO.Vttilr Tis ui fur 

itmrtulUtii.Ti Htldlipif tiF ihriMhiH ft 
tiirlhrAmi. M'I'I f MAl IVIIJMI, 
lUKI.AimiM.ajMMlllHJHf, 
(f>MMUIHtkt. -^-MK^A, ^^[l tUM 
MMl.VPp 

i; IH»« lUlltriri IihJui1<-i1. AHWi:, 
APPII MAtiyrOStl, AIAJIJ. AT-\RI 
s 1 . 1 1 IM Ml )l M )Hf . CI) VVIODORi: 
AMll.V AM) IBM u IT r-jislrirrt 
IrjifriiidrLt rT>prrlhTl> tit \mi. 
IDVll'l 11 U>,ist , MArtr 
( DUf't IW vnt)>, ( OMMI iVHiHF. 
IKSIM.SSMAE HINLMM\AN1> 
IMHl\AtlO\M lllMM.VV 
MjUUIM.StNt. 





Isli»met^li 



BATTERIES 
INCLUDED 




^^ 



PAPERCLIP 11: 
for ttie Commodore 128 

"An exceptional value . . , one of the best software 
incestments now acailable for the C128!" 
~ RUN MAGAZINE 

The *7 best-selling word-processor, re-designed to 
tuite full advantage of the Cl2H's increased 
mcmor}: speed und power Compatible with C-(>'f 
Paperclip text files. 

" Integrated 38. OOO-word .spelling checker to give 
you error- free documents. 

■ Built-in telecomnmnkations module to access 
on-liiu- .serrices — one toggle moves you between 
word /irocessor and terminal. 

■ Works with THE CONSUITANT for the C12H. 
p New editing features include multiple columns 
reverse video scroll and chaptering, with 
maximum document size now expanded to 999 
hnes. 

CALKIT 

for the Commodore 64/128 
". . //([' very best program of its type ... a 
powerful tool thut's not overpowering . .. Ifie 
jH'rfect spreadsheet for the home user. " 

- COMPUTER ENTERTAINEK NEWSLETTER 

" Simplified, streamlined spreadsheet program 
with "What If?" capability for projections and 
estimates. 

■ Built-in application templates: Check Hook, 
Budget, In.stallment Payment, Income Tax, 
Balance Sheet. Stock Portfolio, Materials 
Estimator, and many more. 

■ formats are already set up, calculations are 
pre-programmed — all you need do is enter data. 

■ De.sign yoar own customized worksheets to 
solve specialized problems. ^ 

HOMEPAK 

for the Commodore 64/128 

"... inexpensive, powerful, integrated software. 
/\s such, HomePak is the winner of InfoWorld's 
Best Hav Award." 

- INRnVORLD MAGf\ZINE 

. (me of the finest values on the market. 
Performance: excellent. Value: excellent. " 

- EVMILY COMPUTING MA(I«INE 

Three easy- lo- use programs on one disk: 
/. IIOMETERM TELECOMMUNICATIONS 

■ Powerful Macro facility — logon to your 
favorite bulletin board or database with one 
command 

■ Flexible data handling — save incoming text to 
disk, edit it. print it. 

2 IIOMETEXr WORD-PROCESSOR 

■ Over 2I> fullscreen editing and formatting 
features: move & copy word- wrap, justification, 
automatic paging and many rnore. 

:i IIOMEFIND DATABASE MANAGER 

■ Natural English - language da ta en try/ retr leva I 
system, for simplified electronic filing 

All three llomePak programs work together so it's 
easy to transfer data and perform integrated tasks