The transactor vol9 iss4

Page 1

Canada $4.25 USA $3.50

-

0. 1&1

~

3

g

• Loadermaker - Take the pain out of GEOS program development • Fattening the C128 - RAM expansion alternatives • Customizing C128 CP/M - Patches for CPM+.SYS

-

• How random is RND? An analysis of the C64 and C128 RND routines • Inside GEOS 128 - Information you won't find anywhere else • The C64 Power C Shell - Making it work with a RAM expansion unit • Turning off write/verify - Modifying 1571 vectors • Converting 1541 disks to 1571 format • An introduction to GEOS files - Using the high-level disk routines

• Product Reviews : Macro Set 1 from Xytec, X-10 Powerhouse Computer Interface, SFX Sound Expander, What's Really Inside The C64? reviewed by Jim Butterfield

~ 1&1 ::E ::E I

• Plus Regular columns by Todd Heimarck and Joel Rubin , Bits, and more

~· ~

00:: A.

w

0::

0 c 0 ::E ::E 0 0 0:: 0I.L w

z

-:.! ~ ~

::E w

.... :::z:::

0

ThunderBear by Wayne Schmidt


WORLD'S BIGGEST PROVIDER OF

UTILITIES UNLIMITED, Inc.

If you wish to place your order by phone. please call 20&-254-6530. Add $3 00 shoppong & hand·

12305 N.E. 152nd Street Brush Prairie, Washington 98606

ling; $3.00 COD on all orders. Vosa. M/C accepted . Dealer lnQulnes lnvtted

Software Submissions Invited

C64/128

We are looking for HACKER STUFF: print util ities. parameters. telecommunications, and the unusual.

UTILITIES

We now have over 1,000 arameters In stoc:k!

'

OVER 5000 OMITS SOLDIII

Lock Pik 64/128 was put together by our crack team, as a tool lor those who haf8 a desire to see the lllerul Worki.Jgs of a parameter. The books give you Step-By-Step llslrlc:tioas on breaking _protection lor backup of 100 popular /rogram titles. Uses Besm011 and Saperedit. Instructions are so clear an precue that anyone can use it. • OUR BOOK TWO IS NOW AVWBLE • 80011 1: Includes Hesmon and a disk wl!h many uhlihes such as: IEBIIAL SAVE, 1/0 SAVE, DISII LOG FD.£ and lots more, aU with instruchons on disk. Along-time favorite. 80011 Z: 100 NEW WlfPLES, Hesmon on disk and cartridge plus more utilities to mclude: AGatrill Onnielf 01 Bow to lUke Pmmeten and a Disk Sciluer. Sl9.95 Nck OR BUY BOTH FOR OIILY S29.95 Now wilk FilE£ a-111

Unlike our compeblors, we at Utilities Un!Jmiled, Inc. have been concen· Iraling all our ellorls in bringinq the newesllechnolo9y. The result ollhal ellort is SaperCird. II is lai h penllf to il!IM copy alililies oat!Mre ilcladiag: llaboirdllelegide, Date) Burst Nibbler, 21Second, Ultrabyte, and any other backup utility on the market. So don't be led astray. We will gin fDa you •oaey bick II they can back up more ol the latest software, will they??? In a word "NO! ALL SALES ARE FINAL!!!" That is their response il you want Ia return RAMBO. II you happen Ia see the ads on RAMBOard (orig~nal name huh), they claim to be cheaper. WeU, that's partially true, but as is u1ual, mostly false. First you need to buy their board1 than you need to spend another $~ .95 lor software to run their board. Tut •ikes the cost of bUoile~Mgide to M ill INSt $69.90. Ill tMa ~ey dilill yoa Cill liSe oar seltwilrt (IfNI does ~~ SiiJ UoaltMir solhrm?). WeD aow, U..t •iiJ k jasl il bit of il rkite lie iiS well, rkile irs tne U..t euly, less rtliUle 'enioas wwk with TBEDI W.,. 1M llfW ••e reliUie nnioas of SaperCird sGihme is specifially desiped Dol to rork ri~ their UMBO. FCif ~~e ~~ bin !DGDd oat ~I the lWIBO ud llelle9ilde soltrm piekilge m te ialeriCif to SlperCird we olter 1M I.Uorilg saggesti•. Seld iD you ud SZU5 iiM WE'U SEID YOU TBE lEAL THING - Saperl:iri. Needless to say you need a pau of hip boots to walk through their claim that they are the best. By the way1 their software that bacb up an unprotected disk in 50 seconds, weU, it Clottn't even use the RAMBO to work. I app.e if Jill W il cUice Ill u OLDSMOBILE or il Conelle ri~ 10 ,..oe, J11 •..W slill pick 1M OIDIIMie.

A ;- There is an empty socket inside J~ur 1_2_8_ just waiting lor our Saper Chip to 9i•e you 32K worth of great Bllill·ll Utilities, all at 1ust the Toac• oil Fiager. You get built-in features: File Copier, Nillkler, Tmk & Sedor Editor, Screea lllllp, and even a 300/ 1200 baud Tel'llilill Progn• that's 1650, 1670 and Hayes compatible. Best of all, it doesn't use up any memory. To use, simply lauch a function key, and it responds to your command. B- BAS SUPER 81 UTILITIES, a complete utility package lor the 1581. Copy whole dosks from I~ I or 1571 format to 1581. Many options mcluda 1581 disk editor, drive monitor, Ram wnler and wilt also perform many CP/M& MS-DOS utihty functions. C- "C" IS FOR COMBO and that's what you get. A super cornbmation of both ch1ps A and B in one chopJ swotchable at a great savongs to you. lll Ckips IDdade 100 Paruetm FIIU! A or B: S29.95 N. Choo C: $44.95 N.

SUPER GRAPHICS 1000 PACK

That's nghl! Over 1000 graphocs in a 10-dosk set lor only SZ9.95. There are graphics lot virtually everylhmg in this package. These graphocs work w1lh Pnnl Shoo and Print Master.

SUPER PARAMETEIIS 500 PiCk #1 ud #2

SUPER PARAMETERS 1000 Pack #1

I

Utilities Unltd. has done it again!! We have consolidated and lowered the prices on the most populai parameters on the market . . . ~uper· Pa.rameters, now you can qel 1000 parameters an~ our 64/ 128 nabbler package for just $39.95111 This is a complete 10 d11k set, that mcludH every parameter we have produced.

PARAMETERS CONSTRUCI'ION SET

The ~mpany that h~- ne 1111111 Puillleten is about 10 do. •o,methong DUelietU!e. We are gavmg you more of our secrets. Usong lhu lrJ l'.ilsY program, •! will not only INd, COIIpire and_Write Puweten lw Y~~~; it WIO also Caslaue the d11k with your name. It willompress you as well as your friends. The "Pillillleler CeastnctiOI Ser' is ~ke nothing you've ever~"In fact you can even Ifill Parueten thai you may have alreadt wnlt~ni then by using your construction set rewrite it with your new CISI•I'ID Me11. S2U5

Introducing the World's First Color Screea Dlap on a cartridge. Explode! VU will now Sapporl Direcdy from the screen. FULL COLOR PIUNTING lor the R.ilbor Sur 'NI-100 and also the Okiuta 10 & ZO prinlm. The Most Porerhal Disk Orin and Pritter Cartridge produced for the COMMODORE USER. Super FrieMiy walh the features most asked lor. • SUPER FAST buill-in single dnve 8 or 9 FUE COPY, copy Iiles of up to 235 BLOCKS in length, in less than 13 seconds! • SUPER SCREEN CAPTURE. Capture and Convert hy Screea to KOALA or DOODLE. • SUPER FAST FORMAT (8 SEC'S) · plus FULL D.O.S. WEDGE w/standard formal! • SIJPEJI FASTLOAD and SAVE (50k an 9 SEC'S) works with all C-64 or C·l28's Nt llaHer Wbit ViD!19e! And with most alter market drives EXCEPT the 1581, M.S.D. I or 2. • SUPER PIIHTEB FEATURF.S allows ANY DOT MATRIX PRINTER even 1526/802 to print HI-RES SCREENS (using 16 shade GRAY SCALE). hy Prialer or ltlerlac:t Cambiailioa can ba used woth SUPER EXPLODE! VU or V3.0. • NEW illll IMPROVED CONVERT feature allows anybody to convert (even TEXT) SaffiiS ilto DOODLE or KOAU Type Pictures r /FaU Color! • SOPER FlSTSAVE ol EXPLODE! SCREENS as KOALA or DOODLE FILES w/ COLOR. • SOPER FAST LOADING woth Color Be-Displilf of DOODLE or IIOAU loles. • SUPER FAST LOAD or SAVE can be TURNED OFF or ON wathout AFFECTING the REST of SUPER EXPLODE'S FEATURES. The rest of Explode V4.1 as sliD aclave. • SUPER EASY LOADING ud RtlmG of ALL PROGRAMS !rom the DISK DIRECTORY. • SOPER BUILT-IN TWO-WAY SEQ. or PBG. file READ.ER using the DISK DIRECTORY. • NEVER TYPE l FlU NAME AGllll when you use SUPER EXPLODE'S unique LOADERS. • CAPTUII£ 40 COLUMN C or D-128 SCREENS! (woth opbonal DISABLE SWITCH). Add $5.

THE 128 SUPERCHIP · A, B or C(~er firs1l

Slper(m 15411154lt ..... S4U5 2 drive version .... .•. . ... S7UO s.,ercm 1541-D . . ...... S5U5 2 dri.. venio.n ........ . .. $H.to s.,ercm 1571 .......... S5U5 2 drive version ........... $H.to S.per(i.N 1541-D version will work with moe! compatible dri•e~ . 1\ese J.lrices ilclade soltwilrt. Yoa doa't Hed to steill iiDfGie ehe'$ soltrare to me 11 work. 500 Pick #1 · SZU5 has the vintage parameters on otthal no one else haJ. This pack comes on a 5-duk set. 500 Pick #Z • $29.95 has aU the most cunenl parameters on ol. And put together as only Ulihties Unltd. can. AU Super Parameter Packs are. com· pletely menu driven, last and rehable. Included on both 500 Packs os our state-of-the-art 641128 Super Nabbler at no extra charge.

HEW! SOPER CABTRIDGE EXPLODE! VU wiCOLOR DUMP $44.95

LOCI PICK • THE BOOKS • lor lbe C64 and ClZB

ADULT GAME & GRAPHICS DATA DISKS

G.UIE: A very unusual game to be played by a very Opel Miluled adult. II in· eludes a CiiSiiO and a- Ill mllepate. Please, you Mast lie 18 to order Ei~er lilt. . . . . DATA *: Tkis Pepllu duk works woth Prill S.., and Prill Milster. Now Versoon I + 2 ..• SZ4.95 N.

W. TBE ABOVE FEATURES, AIID IIUCB MOREl PlUS l Fm DTDm DISII r"SUPEI EXPLODE! VU. IWE YOUR C-t4, 14-C or C-lZ8 ·, D·lZI • SIJPEJI FAST ud WY to ase. .

* *Jt-************************************************* SOPER ruCIEB ... •, , , , , *Jt- "·UtilitiesT Unlllnted It .a. '11 1 1 . 1 f * .per Rw.er * will Super Tricker ! has done again. At last an easy way to find out where the protection really is. d" h f d • h d hi} d" • f Wl lSp ay t e ocahon 0 your nve ea w e you are oa mg a piece 0 so tware.

iC iC iC

This information be very useful, to find where the protection is. has other useful options such as: track and hall-track display 8 and 9 switch density display write protect on/ off

_,.

.._ This incredible little tool is encased in a handsome box that sits on top of your drive. Works with all

iC

*Jt-

*Jt~

.._ ~

'

C/ / 64 128

and most

C/64

.

'

.

.

.

.

.

compahble dnves. Some mmor soldenng Wlll be requued.

.

Introductory Pnced

at

Just

$69.95

_,.

iC ~

_:

,..

L-----------------************************************************* *


AL CARTRIDGE ffi® The Be t Utility Ever for Your C-64 or 128 Only! Til~

$69.95

Only!

SPECIAL VAWE: FREE Joystick and FREE 100 PARAMETER PAK. 1htal Hc.•tail Value.•, 39.95, with each purch~L"<' FINAL CARI'RIDGE Ill JI•IY· t-rful I« m I>3SC'tl CJPCI1II 1118 S1aTI 011 'ntl ...,. Fr uze•

~') tem c·untain:• c

">

tc.-usc \\indc1ws

and Jlllll down llU'IIUS Alln\\ing the U~w.r tn let1 clthcr me ~USC, ,il•) kk c•r ke) he nt, h 11\3) en u\t'r ftO fk'\\ c•omrruu~<ls nnd functions. Let

IDkl"'l and rdoaclahlc without the cw trio I •, fiOK m JI.Bt 15 l!cr>nl Euts ID

) clllr " 6-1 (ICrfnnn like 1111 Arnls;a.

\ 'ariuus J•rintl'r in14·rf~ b:usk' tuolkit ('1\11 alsl• he

!I

\\t•ll I

lnctUcl< ,,uiahk• 5be 5(n't"fl c1um"" l•~•lor if E~S>n o•lnr or ~El~ as ~&.'<I I. \Uow tO< 1.a1 bx'kup or an} I"'K'IIlOI') m;idmt soft· w11.n" on the nwi;~ tnda) ! t'Ve! an•

a

lbsk' or IL moruror.

ANAL CARTRIDGE II ONLY $24.95 can or write for men lnfonnatton

noc c~tc In mftnol')" lnciu. IM I dri• e an: and 1\l)rUe ~ h'Jlt 111\'!1 (h

up IUld cluw n M'rUIIinlland pnnCM' dri\t'rl

AUftdel....._,,..... .....,_,

Noi-'AOIWQM) ftM'<'IIIWI

-·..nr.. c -.. =',':!· ___ , ..... :...... -....,- "'*"""and oon.-- .,..._ • ~

("41(1Uiin!; Jl"IJ•II1iO•n:al c hatllrtf'l"!!lll'lol woord ~ 11111 Enalb uu tn l!lltre a"'I Jlrinl lima11

__ , ........ ... .. ... .. ..... ............

~{'.

Slml*il

FMIUf Dill I LoAiliiiO IIVUll

t"lontall 2 dis-k l<~~t~od('r.o, I ii:o. rill tt-r than numl&l'

~1th

Jl('('<l UJI Ill

TMMIPDIW Y<MM C 14 lwio

AN Aw 1U Loo«JU.•If \ III'ICIUio ~iudctw !lOCh t'n-rt·~·oce5, 'nil~. l)jy( \\:&ntl<o~ l!irec1c") , l'rirctl'r fkK k allotW )IIU Ill recl U if )COU are ~'twit ""'" the 511100 frll'ndly f'n•in>fUft('nt as the Arn41a' IIMY-~MuuBM

.\lmll'lt

cunmand not lll1h tc:od h) nm •~ l w hDc ln IJal

Dl'l)'

•indo""

~ JUIIl I)' 1

ln Om;.

.,... Tooucrr a~ lllrTMa IIX'Iuck'l!! Rcnumb!oring, aii'IO, cild dc·k~r. ldD, \ , l!-11\ RAM r~_-... 1 , rw ronna~ and mall), marl) ft'l(~ " .• . I ran 't I ll'h kit (#ot 6IJ

_,JWI ~

.. ..,...

>

.

Back-. UJI am ,.,ft\\ r.· (li'I>SJ''Ihn' E\ en the laus ron»tt'<1Jon hcmcs' l'lu~ intn )uur cln\t' w th on)) the t nf a srn•\lidn\c~. If M)'lhing tould l13C'k UJI t'\t'l')'thlng, thas It 11•1 tislac.1inn guaranteed' 10 da) ur "'"'"'~ hack gu:&ranlc!C!

ONLY $39.95!

E.xnHoe:D ML MounOtt

.....

INTRODUCING SUPER CARD

n 111 think •4 a mrtrl

-:ful th I

• d '" mlw, a mcm lt.--m for tlw llA· 'and tiWdllrw 14'*!/U(J{II" progrummrr." - An llunklll!l, <::otnJII.II••'s Ci~tc· 71f(l IJilJ llJI

-

GA'' sK••a 1\U~ "fii'IIC Ill 'I""' It' and !>I 111M: kpuuncl c•nllilinn Can be Jltaruod at rmy pcolnt Ill )OUr Rami AU10 AM IIHGIII•

r.u...... -•IIJUiini!--opo•n..,

r-f«<IJ onu. Thr Anal c~

I ,._

("

~ ••

tift

IZ h

Ill 11:1

•• n

.,

.n

'1'ra.n!J'c11'111S nonnal jo)'Jtkk into an auto

... ""' ,...,._ loNiho

II"

rare! IIMY-10-Un R1•r lvrral Re!et )cour C'ICtiJIUlCI' b) W or. btltlhn 1! \\ov. !!

EXTRAS AVAILABLE Jllt~

tc!U(h

· hl\41

can ridge 1. • • • • • . • • . • uum

•('' 13:ll ~1ull'SC • •• ••••••• ••• :f2.9J;

",\., rvnl ji#' oil tltt rxtrna ..-knt II'JU lear thl5 (' M aalstnnl • a ront...Ww-1

n'IYw tJ,,. 't do tiJto l'inal (:brlridgt jus tkfo• • .fun at a J>rK'f" ls a rarity." -1\m \\AWl, Rl ~ t~dnc 9'87

• c:::oP\IIPUTCRS

Ueluxe ,JuyMk k •• •• •••• •• • • S H.9) ('t'nt. ,,nntc•r t'llhlt-o • (111 »llllfllll) • • • • • • • • • • $ 10.0.'> d 9WW•M ,n-wibHp

Ordeilng Info: Ordetll Only Cell: 1100 451 Ml2

tllCNM e:c~ ..,...., ~~ J..:S _ 1U ~ -141 o.-oe lfiCI _ , CJII

(Ita

S•

"'C»taeij

... CftKO C'l •'II "" & MUlCIO lor alb

(201) 70~

OJ' AMERICA

,... 12011'101

Home A ~nonal Comput~lll or Amt'rb 154 \'alley~~ South Oranel'. SJ 07079 201 ·763-3946, dealfts only, 201·763· 1

ANY PAODUCT PURCHASED FROM

DATEL ELECTRONICS WILL NOT BE GUAAA.N TE£0 BY H&P COMPUTER.


.....tlCIIIJt,

11111PI• lUI Cll ... Y11 IIWt 111111

•••ry 111111•••••••· " 1541 15'11

C•••a•r••••"" 1117 Die.,

IRK 1541/1571 Drive Alignment reportS the alignment condl· uon of the disk drive as you perform adJUStments. On screen help is available while the program IS runntng. In· eludes features tor speed adJustment. Complete 1nstruct1on manual on altgmng both 1541 and 1571 drives. Even In· eludes mstructions on how to load alignment program when nothing else will load! Works on the C64, SX64. C128 in either 64 or 128 mode, 1541, 1571 10 e~ther 1541 or 15 71 mode! Autoboots to all modes. Second dnve lully SUpported Program disk, cabbfallon diSk and InStrUCtion manual Included.

Illite.... 1!1 Complete drawmo system for the Commodore 128 and 1351 Mouse. Sketchpad 128 takes advantage of the cnsp 80 column graph.cs capabilities of the C128 . Smooth freehand drawmg, 640 x 200 draw1ng screen, wide selectiOn Q1 dawmg tipS, many fonts provided. Compatible with Basic 8, Prmt Shop, News Maket 128 and Spectrum 128. Sketchpad 128 can be used to create 80 column al'twork. slideShows. 51gns. and many other uses. .... l'ltlll . . . $21.15

-~~ •J :-:;q

........ '""$34.15

Super 81 Ullhttes IS a complete utilit1es package for the 1581 d1sk dnve Seperate verSJOn are available lor C64 or C128 An or.g the many Super 81 Ut1httes features are. • Copy whoe diSks from 1541 or 1571 format to 1581

part•t ons

• Copy 1541 or 15 71 files to 1581 d1sks • Backup 1581 d1sks or hies w1th 1 or 2 158 t 's • Suppbed on both 3'11'' and 5'14'' d•skettes so thai It will load on a 15•1. 1571 or 1581 dnve • Pertorms numerous DOS lunct1ons such as rename a d1sk, rename a hie, scratch or unscratch files, lock or unlock Illes. create auto boOt and much more' Super 81 Utilities uses an optiOn window to diSplay all choices ava11able at any giVen lime. A full featured d1sk utlbt1es system lor the 15811 iU1M l'ltlll priCt $31.15

Hotne Desigller ........ ·- .

... Grven glowmg ratings by every majOr Commodore magazme, this CAD system outcta~ every other CAD program. because of 1ts obJect based design. W1th over 50 powerful commands. 5 drawmg layers superb support of library flgures and tazer quality prmtouts at ANY scale on your dot matnx pnnter or plotter, you can create drawtngs so accurate that a bluepnnt can be made from them1 Tired of work1ng with poor quahty/maccurate pnntouts. mampulatmg little dots on a bit-map, OIVIIIQ up on detailed work because you can't zoom m close enough? JOin the proless1onals1 11111t1 l'ltlll $41.15 -~

,.ICI

..

.

~

..•"

News Miller 121 ;~· • L · ·~ Desk top publ1sh1ng tor the C128D (or the C128 w1th 64K V1deo Ram Upgrade) News Maker 128 can be used to create profeSSional look1ng newsletters. reports. signs and posters. It can be used as a stand alone program or an combination w1th word proceSSing or graphjCS software It uses standard ~equential fdes for " pouring" te11t mto user defmed columns. FuO page layout. popdown menus. smooth screen scrolhng, font selection. cut. paste, m1rror. fhp are among the options ava !able. ·~ rttal priCe $21.15

lpectrull 128 A deluxe P<l nt program for the Ct280 computer (or the C128 With 64K Video RAM Upgrade) Uses 80 column display for 640 x 200 Ptxel resolutiOn W1ll diSplay 128 colors• Menu operated Requtres 1351 or compatible Mouse. Features tnclude a r brush, erase. mtuor. multi color. block fill or erase. p1xel ed1tor. color eclltor. fonts. slide show and more. Compatible w1th Sketchpad 128. News Maker 128. Basic 8. 1750 REU. 1541 , 1571 and 1581 diSk dnves rttJI ,rice $31.15

Basic 8

Powerful 80 column hl res graph.cs programm1ng system for the Commodore 128 or 1280 computer. Th1s popular package adds over 50 new graphiC commands to standard C128 Bas1c. A must lor C128 programmers' lh1s new verSion published by free Spu1t haS been upgraded and enhanced As an added bonus several preprogrammed BaSic 8 applications. such as Bas1c Paant, Wnte and talc are ancluoed Sutteattd rttJI ,rice $31.15

See your dealer or order from Fm s,lrit Seftwart, lllc. 58 Noble Street Kutztown, PA 19530 215 683 5609


No other training in school, on the ·ob, anywhere shows you how to trou leshoot and service computers like NRI PACKARD BEll COMPUTER HARD DISK 20 meaatwte hard diSk drtve VOU Install InternallY for greater data storage ~ltV and data access speed.

NECV40dual speed t4.n MHZ/8 MHlla>U, 512K RAM, 360Kctoubl&Skled dlskdrtve.

MONITOR HJgtH'f!SOiutlon, non-Q~'!._12" m monoc:nrome monitor WJU1 tilt and SWivel base.

TECHNICAL MANUALS

DICITAL MULTIMETER

With professiOnal programs and comPlete SPeCS on Padcard Bell compUter.

Pi Ofesslonal test Instrument for

QUidc and easy measurements.

DISCOVERY LAB

LESSONS

complete breadbOarding svstem to let vou design and modlf'V drtults. diagnose and repair faults.

oearcut mustrated texts bU1ld Understanding

vour

Of c:omputers step by step.

DIGITAL LOGIC

SOFTWARE

PROBE

Including MS-DOS, GW BASIC, word processing, database and spreadsheet

Slmpllfles analyZing digital

drcult aperatlon.

programs.

Only NRI walks you through the step-by-steP. assembly of a powerful XT-compatlble computer system you keep-giving you the hands-on experience you need to work with, troubleshoot, and service all of today's most widely used computer systems. You get all it takes to start a money-making career, even a business of your own in computer service. No doubl about ir: The best way to learn to service compun.'I'S is to actually build a ~ure4·the·m computer from the keyboard on up. As you put the machine together, performing key tesiS md demonscr.uions at each stllge or assembly, you see for youn;elf how each p:tn of it works, what CVI go wrong, and how you CVI fiX it. Only 1\'Rl-lhe leader in career-building. at·home electronics training for ~5 years-gives you such practiCIJ, real-world l'0111>11ter servicing cxpcrience. ln<k.'UI, no olher training-in school, on !he job, an)Wi:lerP- shows you how to trouble· sbcxx md service computers like NRl.

You get In-demand computer servicing skills as you train with your own XT-compatlble system-now with 20 meg hard drive With NRJ's exdush-e ll:uK1s-<ln training, you :ICtU3lly build and keep the powe-rful new Packard Bell VX88 PCIXT compatible computer, complete "ith S12K RA.\1 and 20 meg hard disk drive.

You st21t by assembling and testing the "intelligent" keyboard, mo,·e on to ta>t the circuitry on the rmin logic board, in:sull the power supplr :uul514 • disk drive, tbcn interface your high-resolution monitor. But lhat's not alL

Only NRI gives you a top-rated micro with complete training built into the assembly process Your NRJ h:tnds-on tnining continues as you in>Uil the powerful 20 meg:lbyte hard dis!. driH~-uxl:ly'b most wanted computer pcriphcral- indudcd in your cour.se to

dratnadeally ux:rease your l'Oillj)Uter's storage capacity while gMng you tightning·

quick data acccslo. Having fuUy assembled your Packard Bell VX88, you take it through a complete series of dUgno5tic tesiS, mastering prefe;sional computer servicing techniques as you take C!l!lllltllld of the fuU power of the VX88's high-speed V40 microprocessor. In no time a1 :111, you have the confidence md the know·how m work with, troubleshoot, md SC!r\ict every computer on the market today. Indeed you have what it takes to step into a fuU·time, money-making career as an indUStry technician,

even ;tUt 2 computer ser-·.cc business of your 0\\11.

No experience needed, NRI builds it in You need no previous experience in computers or elearooics to succeed with NRI. You st21t with the basics, following easy-tc>-re:ld instructions :l1ld di2gr:lms, quicldy

moving from the functtmcntab co sophistieated computer servicing techniques. Step by ~'Y step, you gt:1 the kind or prac'tic'Jl h:tnd'l-on experience thatlll2kes lou uniquely prepared to take advan• of every opponunity in tocby's top-growth field of computer service. What's more-)OU learn at )·our 0 " 11 pact: in your 0\\11 home. No cl~IOQill pressures, no night !oCbool, no need to quit your present job until you're ready to lll2ke rour move. And all throughout your tnining. you ha,·e the full support of your personal NRI instructor and the NRJ rechnic:ll staff always ready to answer your qllt'Siions and give you help whenever you need it.

Your FREE NRI catalog tells more S<:nd today for your fttt full-color catllog describing every a..<pec~ of NRI's innOvative computer tnining. a:. "ell as iland:K>n traini.ng in ~. vidcol audio ser-icing, electronic mUSic technology, security eltt:tronics. dau ronununications. md other growing high-tech career foelds. If the coupon is missing. write to NRI School of Electronics, McGraw-Hill Continuing Education Center, 4401 Connecticut A\'enue, Washington, DC 2~ PCJ:\'1' :uld X'T 2re n.W>ttn:d tr.oclc:rn:ub of International llusinl'S.'o M:K'hino Corporuk>n

r--------------, I =::a I ~::~ t!nlll

cou~ 2pprovt:d under Gl biU I For Cll\.u

Edueali?n Center 0 rrx 12 II McGraw-Hill 4401 Connecrictn Avenue, Wa.~hington, DC 2~ B Chedc one FREE catalog onJy Mlcrop~n 0 I 0 I 0 0 0 TVf\lidco/Audio i>ervking 0 6:L>ic Ek.-ctronlcs 0 Communi<.'Otion;. I 0 Computer Progr..mming I I ~tinuing

ch<CI:

Computen and RoboitC>

c~<. ;c,

I I I I

!i«.'llri<)' Ek'C!ronb

Ek.-..'lronk. Mu.J< Ti."<.illlOiog) D:lt2

Nom<

I

(pic".tiC print)

11/!fo'

I I

I.

A<klr<s<

I ______________ .... L

I

Cily/St>rc!Zlp

AcC"'"t.'dhcd b)· lhe N;nion'lJ Homc Slud)' Council

0000·000 -

I


Transactor

Volume 9, Issue 4

The Magazine for Co mmodore Programmers

Publi ~he r

Anton) Jacoh-.on \'ice-PreJ.idcnt Ope ratio ns

Jeannie La'' renee AssiM.ant Ad' erti.,in~ \tana~e r Julie Calc

Inside GEOS 128

29

b) William Coleman \t l:ht 1 Read it here fiN' What you need to lulO\\ to program GEOS on the 128.

34

Loadermaker Editor~

Malcolm O'Brien Nid. Sullivan Chri" Zamar:l C ontributing Writer.,

Marte Brengle Paul Bo\act..i Btll Bner Anthony Br)ant Jo-.eph Bucldc) Jim Butterticld William Coleman Rtchard Curcio \.t it.. to:. Garam Lcgh) LaiT) Ga:tnicr

Todd Hcimarck Adam HeN Rolxrt Huchn George I lug Zoltan Hunt Dennt~ Jarvt~

Garry KiLiaJ... Francis Kos tclla Mike Mohilo D.J. Morm.-. Noel N)man

Adrian Pepper Ste\e Punter Robert Rockefeller Joel Rubm Da' 10 S.mncr Stephen Shcn11is

Audrys vtl!..as tcholas \ rtl'> W. \1at Walle'> CoH~r

Artist

Wayne Schm1dt

by Nicholas 1. Vrtis Developing a GEOS program in the

~tandurd

environment'? This program eliminates conversion.

40

An Introduction To GEOS files by Francis G. Kostella \ handy Icon Definer program that dcmonMrates the u\e of the high-level disk

routine~.

RAMifications

46

b} Richard Curcio Some suggestions for fattening the (" 128.

How Random is RND?

50

b) D. J. Morris The C64;Cl:!8 R\lD routines: The orderly generation of di~order includes some surprise~ ...

Turning Off Write/Verify

56

by Dennis.J. Jarvis The inner workings of the 1571's vectored operating ~ystcm. Includes a BASIC program that will run on all 8-bit Commodore computers.

Make 2 Sided

58

by Dennis.J. Jarvis Comcning 1541

d1~ks

to 1571 fonnat • ou could do it by hand butt hi' program make\ it simple.

Customizing C128 CP/M b} Miklos Garamszeghy Patchmg the CPM+.SYS program.

62


Transactot Is published bimonthly by Croftward Publishing Inc .• 85-10 Wesl Wilmot Street. Rich· mond H1H, Ontano. L48 11<7 1$$N# 0838-0163 Ca.Jia<lian Second Class Ma" Ae~lra1Jon No. 7690. Gateway·Mississauga. Onl. USPS Postmasters: send address changes to. Transactor. PO Box 338. StaliOn C. Buffalo NY, I 4209.

Departments and Columns Letters

8

Bits

10

Crolt....ard pubi1Shl"9 Inc ts In no way connected w1th Commodore Bus1ness Machines Lid. or Commodore lncorporaled Commodore and Commodore product names are regiStered !lade· mar1<s of Commodore Inc Subsc"pnons:

Command Tail~ Device Pre~ence Ched,er

Fast Gmphics with SY\11ASS Quickie Fla~h Routine Cl28 ML Monitor Tricks

canada s t 9 Cdn. USA$15 US All others $21 US Aor Ma1l (Ovefseas only) S40 US

12

The ML Column by Todd Heimarck

Ever wondered how data compression works? Todd explains the ins and outs of Huffman encoding and crunches a verse from A. A. Milne.

22

The Edge Connection by Joel Rubin

Joel shares hi" experiences with a 1700 RAM expansion unit. There's much more capability in that 128K than you might have thought. And the price is right ...

Reviews What's Really Inside the Commodore 64?

Quantity Orders: tn Canada· Ingram Software ltd t41 Adesso D"ve. Concord. Ontano. L4K 2W7 (416) 738- I 700. In the USA IPO (lnterna· tonal Penod~eal OIStnbutO<S) 11760-8 Sorrenlo Valley Road. San O.ego. Callfol'lll3 92121. !619) 481-5928. ask for Dave Buescher. Edrtonal cootnbulions are welcome Only ong1nal, previously unpubliShed matenal W1ll be CO<\Side<ed. Program 11$11ngs and artiCles, rndudong BITS sl.lbm,SSions, ol more than a few lnes. should be provided on diSk. Preferred fonnat Is 1541·1ormat w1th ASCII !ext l1ies Manuscnprs should be l)'pewrmen. double-spaced. w1th specla; characters or lormats clearly marked, Photos should be glossy Iliaci\ and wMe pr1nts. llluwa· liOnS should be on while paper W1lh black lnl< only. H1-res g~aphiCS files on diSk are pref~rred 10 hardcopy otustratlons when poss•ble W"te to Transactors Richmond Hill offJtelo obta1n a w111 er·~ guiM

69

70

The ol)fnions expressed In conlnbuled arocles are not necessar,ly those of Ctottward publ1sh1ng

Reduce program development time with this handy package from Xytcc

SFX Sound Expander

Tronsaeror, SubSQ1Pt>Ons Department 85 West Wilmot Street. Unrt tO. A chmond H fl. Ontar>O. Canada. L48 tl<7. (416) 764-5273. For besl results. use the postage paid card at the centre of the maQaz•ne.

All matenal accepted becomes the property of Croflward publishing Inc. exoept by •paaal ar· rangement AI matenaf 1s copyright by Croftward publishing Inc Reproduction '" any form w~hout permissiOn 15"' VIOiahon of applicable laws. WNe 10 lhe RIChmond H1l! address for a wnler's gu1de

Jim Bunerfield analyzes this commented disassembl)

Macro Set 1

Send all subscriptions to:

72

Inc. Allhough accuracy IS a mapr ol)te<:l1ve Croftward pubhsh1ng Inc. cannot assume llabdrry for errors in amcles or programs. Programs ksled tn TransaC10(, and'or appeanng on Transactord,Sl<$. are copynght by Croltward pubi1Sh1ng Inc. and may not be dupllcared or d1stnbuted w'thout permJSSIOn.

Commodore UK's hardware add-on is now making beautiful mu~ic in North America Production hrhou.e With Aml!la 2000 and Professional Page

X-10 Powerhouse Computer Interface

75

Frnal Ol/lput by Vellum Prim & Graphic SeMCes. Inc., Toronto

With an X-10. you can control the world ... or at least your house. Printing Pnnted 11 Canada by Bowne or canada Inc.

About the cover: TlumderBear wa-; created by Wayne Schmidt using Kwikpaint and Ani~t 6-1. Wayne de~cribes the picture as follows: " Inspired by Kwakiutl motifs (North West Coast Indians). the subject is a 'transformation· ma~h. design worn b)' shamans during initiation and ceremonial events. During these event<;, the Thunderbird outer mask opens to reveal a great Bear spirit.,.


Using ''VERIFIZER'' Transactor's foolproof program entry method

"weighted checksum technique" that can be fooled if you try hard enough: transposing two sets of four characters will produce the ~arne repon code. but this will rarely happen. (VERIFliER could have been designed to be more complex. but the reporl code!> would need to be longer. and u!.ing it would be more trouble than checking the program manually). VERÂŁFIZER ignores <;paces ~o you may add or omit \pace~ from the listed program at will (providing }OU don't -.plit up keywords!) Standard l..cyword abbreviations (lil..e nE instead of next) will not affect the VFRIFIZER repon code.

VERtFIZF.R should be run before typing in any long program from the pagel. of Transactor. lt will let you check your \>vork line by line a~ you enter the program and catch fru1.traling typing errors. The VERtFtZER concept works by displaying a twoletter code for each program line: you can then check this code again'>t the corresponding one in the pnnted program listing. There arc three vcr!>ioru. of \ ERJFILLR here: one each for the PET/CBM. VIC/C64. and Cl28 computer<;. Enter the applicable progmm and RUN it. lf you get a data or checksum error. rc-ched. the program and keep trymg unttl all goc!> well. You \hould SAVE the program smce you'll want to uc;e it every time you enter a program from Transacror. Once you've RU the loader, remember to enter NEW to purge BASIC text !>pace. Then tum VERlFIZER on with:

Technical info: VTC/C64 VFRtF17FR re<,ides in the cassette buffer. so if you're using a dat~ette be aware that tape operation<, can be dangerous to its health. As far as compatibility with other utilities goes. VERIFJZER shouldn't cause any problems since it works through the BASIC warm-start link and jumps to the original destination of the link after it's finished. When disabled. it restores the link to its original contents.

SYS 634 to enable the PET/CBM version (off: SYS 637) SYS 828 to enable the C64/VIC ver~ion (off: SYS 83 1) S YS 1072.1 to enable the C 128 ver<;ion (off: SYS 3072,0)

PETIC BM VERIFIZER (BASIC 2.0 or 4.0)

Once VERmZt:R is on. every time you pre~~ RETUR.'J on a program hne a two-letter repon code \\ill appear on the top left of the screen in reverse field. Note that these letters are in uppercac;e and will appear as graphics characters unless you are in upper/lowercase mode (press ~hift/Commodore on C64/VLC).

Cl LJ

HC DH GK OG JO AF IN ON 18 CK EB HE 01 JB PA HE EL LA Kl EB DM

Note: If a repon code is missing (or .. --") it means we've edited that line at the last minute, changing the repon code. However, thb will only happen occa\ionall} and usually only on REM statements. With VI:.RtHZE.R on, JUSt enter the program from the magazine normally. ched.ing each repon code after you press RETUR. on a Ime. If the code doesn't match up with the letters printed in the box bc~ide the listing, you can re-ched. and correct the line. then try again. If you wish. you can LIST a range of lines. then type RETURN over each in succes!>ion while checking the repon codes as the} appear. Once the program has been proper!} entered. be sure to tum VERtFtZER off with the SYS indicated above before you do anything ebe. VERIFIZER w11l catch transposition error' lll..e POKE 52381.0 instead of POKE 53281.0. However, \ ERtFIZER uses a Tronsoctor

4

10 rem* data loader for "verifi7er 4.0" * 20 cs=O 30 for i=634 to 754: read a: poke i.a 40 cs-cs+a: next i 50: 60 if cs<> 15580 then print"***** data error*****": end 70 rem sys 634 80 end I 00 : I000 data 76. 138, 2, 120. 173. 163. 2. 133. 144 IOIOdata 173. 164, 2. 133. 145. 88, 96. 120, 165 1020data 145.201, 2, 240. 16. 141. 164. 2. 165 1030data 144,141, 163. 2. 169, 165, 133, 144, 169 I 040 data 2, 133, 145, 88. 96. &5, 22&. 165, 217 1050 data 201. 13, 208, 62. 165, 167, 208, 58, 173 I060 data 254, 1, 133, 251. I 62, 0, 134, 253, 189 I070 data 0, 2. 168, 20 I. 32. 240. 15, 230. 253 1080data 165,253, 41, 3.133,254, 32,236. 2 1090 data 198.254, 16.249.232, 152,208,229, 165 I 100 data 251, 41. 15. 24. 105, 193. 141. 0. 128 Ill 0 data 165, 251. 74. 74. 74, 74. 24. I 05. 193 1120 data 141. I, 12!>. 108. 163. 2. 152. 24. 101 1130 data 25 1. 133. 251. 96 April 1989: Volume 9, Issue 4


I VIC/C64 \ ERlFIZER

CB 370 data 255. 169. 19. 32.210.255. 169. 18 OK380data 32,210,255.165.250. 41. 15.24 ON 390 data I05, 193, 32. 210, 255. 165. 250, 74 01 400 data 74, 74, 74. 24. 105. 193. 32. 210 OD 410data255,169,146, 32,210,255. 24, 32 PA 420 data240, 255, 108,253. 0, 165,252. 24 BO 430 data I 0 I, 250, 133. 250, 96

KE JF Ll ; BE DH GK FH KP AF lN EC EP

10 rem• data loader for "venfiler' • 15 rem "ic/64 version 20cs=O 30 for •=821.! to 958:read a:poke i,a 40 Cl>=cs+a:next i 50: 60 ifc~<>l4755 then print"uu• data error ......,,... .. : end 70 rem sys 828 80end 100: 1000 data 76, 74. 3. 165. 251. 141. 2, 3, 165 1010 data 252, 141. 3. 3, 96. 173. 3. 3. 201 OC 1020 data 3, 240. 17, 133,252. 173. 2. 3. 133 \1 1030 data 251. 169. 99, 141. 2. 1. 169. 3. 141 MG I<MO data 3, 3, 96. 173. 254, I, 133. 89, 162 DM I 050 data 0, 160, 0, 189, 0. 2, 240, 22, 20 I CA 1060 data 32,240, 15, 133. 91,200. 152, 41, 3 NG I 070 duw 133, 90, 32. 183, 3, 198. 90, 16, 249 OK 1080 data 232. 208. 229. 56. 32, 240. 255. 169, 19 A ' 1090 ll<lta 32.210,255. 169. 18. 32.210,255. 165 GH IIOOdata 89. 41. 15. 24. 105. 97, 32.210.255 JC 1110 data 165, 89. 74. 74. 74. 74. 24. 105. 97 EP 1120 data 32, 210. 255. 169. 146. 32. 210. 255. 24 MH 1130 data 32, 240. 255. I08. 25 I. 0. 165, 91, 24 BH 1140data 101, 89.133. 89. 96

The Standard Transactor Program Generator If you type tn programs from the mag:ume. you mtght be able to -.ave your..elf some work with the program listed on this page. Smce many programs are pnnted in the form of a BASiC "program generator·· which creates a machine language (or BASIC) program on disk, we hove created a "standard generator" program that contains code common to all program generator~. Just type this in once, nnd save nil that typing for every other program generator you enter! Once the program is typed in (check the Verifizer codes as u'>unl "'hen entenng it). save tt on a di'>k for future use. Whenever you type in a program generator, the listing "'ill refer to the standard generator. Load the ~tandard generator first. then type the lines from the listing as shown. The re!>ulting program will include the generator code and be ready to run. When you run the new generator. it will create a program on disk (the one described in the related article). The generator program is JUSt an easy way for you to put a machine language program on disk. using the standard BASIC editor at your dispo,al. After the file has been created. the generator is no longer needed. The standard generator, however, should be kept handy for future program generator...

*NEW* C L28 VERIFIZER (40 or 80 column mode) I00 rem ~ave"O:c 128 vfz.ldr" .8 II 0 rem c-128 verifizer 120 rem bug~ fixed: I) work~ in 80 column mode. 130 rem 2) sy~ 3072.0 no"' ''orks. 140 rem 150 rem by joel m. rubin 160 rem • data loader for "verifizer c 128" If 170 rem • commodore c 128 version DG 180 rem • works in 40 or 80 column mode!!! EB 190 ch=O GC 200 for j=3072 to 3220: read x: poke j,x: ch=ch+x: next 1\K 210 ifch<>l8602 then print "check~um error": stop BL 220 pnnt '\ys 3072.1 to enable DP 230 pnnt "sys 3072,0 to disable AP 240end BA 250datal70.208. ll,l65.253.141. 2. 3 MM 260 data 165, 254, 141. 3. 3, 96, 173, 3 AA 270 data 3. 20 I, 12. 240, 17. 133. 254, 173 FM 280data 2. 3, 133,253, 169, 39. 141, 2 IF 290data 3, 169. 12, 141. 3, 3, 96, 169 FA 300 data 0, 141. 0, 255, 165, 22, 133, 250 LC 3 I0 data 162, 0, 160. 0, 189, 0, 2. 20 I AJ 320 data 48. 144. 7. 20 I. 58. 176. 3. 232 EC 330 data 208. 242, 189. 0. 2, 240, 22.201 PI 340 data 32. 240, 15. 133. 252. 200. 152. 41 FF 350 data 3. 133. 251. 32, 141, 12, 198. 251 DE 360 datu 16,249, 232. 208, 229, 56. 32, 240

KL 01 \10 DG KK GH HG

1~-

TIONOCtor

I

The standard generator listed here will appear in every issue from now on (when necessary) as a standard Transacror utility like Verifit.er.

I I

MG EE LK KO EC FB DE CM CH HM NA KD HE JL MP MH

I00 rem transactor standard program genemtor II 0 n$="filename": rem name of program 120 nd=OOO: sa-00000: ch=OOOOO 130 for i=l to nd: read x 140 ch=ch-x: next 150 1f ch then print "data error": ~top 160 print "data ok. now creating file." 170 restore 180 open 1,8, I,"0: "+n$ 190 hi=int(sa/256): lo=sa-256*hi 200 print#l,chr$(lo)chr$(hi); 210 for i=lto nd: read x 220 print# l,chrS(x):: next 230 close I 240 pnnt"prg file "':n$:"· created ..." 250 print"thi!> generator no longer needed." Ill 260:

--------------

5

April 1989: Volume 9, Issue 4

I !


..-.-...............................---------------------------------

r'~======~~~~~~

Follow-ups and returns

In 9:3 we were 路pu-;hing the limit~路 with George Hug路~ Toward 2.JOO; another article that was very well received. I don't k.now hov. many people have called about that. Some of them called to get the missing data ~t atemcnt line from the CIA test program (see Sloops). Some were interested in incorporating the routines in their own programs. At least the prices on 2400 bps modems have become affordable ...

Last issue this -;pace was devoted to copyprotection. Specifically, I was upset that Commodore GEOS b protected and Apple GEOS isn't. Since that time I have discovered a very interesting thing: When fiN released. Apple GEOS was copyprotected but the response from the Apple community was so negative that Berkeley Softworks removed the protection! Since then, Apple GEOS sales figures have improved. Of course, some may contend that sale~ were ~timu lated primarily by the release of Apple GeoPuhlish, but my own feeling is that sales of both are augmented because of the absence of copy-protection.

We're pushing the limits in 路neshware' too. By the time you read this the Transactor editorial taff will be 33% larger. That's right, we have a new editor. Tim Grantham did eight AmiRa Dispatches columns for us before Don Curtis started doing it when we started up TransAmi. Tim also recently started a new column in TransAmi called Hard Copy. Tim has been 'in deep' for quite a while with both the Amiga and the 8-bit machines. We're very pleased to welcome Tim back to Transactor. The extra manpower means we 'II have time for other things. such as eating. sleeping and breathing.

This means there is hope! Write to Berkeley and tell them how you feel. Maybe we can get the situation changed. In the case of Apple GEOS, Berkeley Softworks has demonstrated that they are responsive to the user community. The ball is in )'our court now... I'

The response to Paul Bosacki 's hardware project in 9:2 has been phenomenal. Seems like everybody wants more RAM! A c;ampltng of the leners Paul has received (and Paul\ replies) have been included in Le((ers. Also m thi'> issue ts an article by Richard Curcio <;ugge<;ting a stmtlar project for the C 128. Included with that are the letters between Paul and Richard and some schematics from Richard. This is a topic that is not going to go away! Now if only the price of RAM would come down ... Transactor

Also returning thts ic;sue are Letten and NewsBRK. To those of you who v. rote in about it or were just wondering. the) haven't been discontinued. We just needed the space. Both departments are fairly weighty this time. Malcolm D. O'Brien 6

-

April 1989: Volume 9, Issue 4


T

L

e

e

Please address leiters totltr ediwr to: Leuers. Transactor Maga:ine. 10-85 ~~elf ~'.-ilmm Street. Richmond /-/ill. Omario L-IB I K7 A tale of\\ oe... and a solution: I would like to thank you all for the complimentat) cop} of Tramacwr containing Joel \1. Rubin·, comparison re' te\\ of a fe'>' Commodore macro assemble~">: my Budd\' . included. Brian Htlchie once ..aid to me. regardmg a not -.o totally po~itive review ol hi~ C compiler. "Bad publiclly i., better than no pubhctt)." Of course it \\a!in't a bad revtew. or unfair. But it still p~~ed me off and made me .. ay some gosh dam bad word\. But before I launch into any more heartrending whining or the reason why I felt compelled to say the~e bad words, I would like to share a glimpse of the sofl" are industry through the eyes of Budely's greatest fan and victim: it'> author: the idea being not only to egoite on a bit. but to try and piece together an admitted)} cynical software publication theory· to be constdered by other use~ and hackers pure in spirit. Even• hacker h~ dreams (in addition to tho...e of flying and betng lound inexplicabl) and embarra.,smgly naked tn public place~) of gaming recognition and reward for his awesome programming accomplbhmcnts. I (except for the flying dreams) am no different.

s

t

Before Buddy. I did a screen design and animation utility for games progmmmer~ called 64 Animator. Ahhough life on Earth (and perhaps m) marriage) could well have carried on much the same if I had not. it \\asn 't bad. and every publisher that eYer looked at it dre" up a contract. Except Commodore. Commodore looked at it for about si:x months and then said the} weren't in the software business anymore. I do belie\C however that some of the ideas in it may have found their "ay into the ~prite routines on the 128. (Call me paranoid: call me a megalomaniac: just don't call me a lawyer.) Commodore (Canada) returned the sixty bucks I had put up to get them to look at it in the first place: thereby, in their expressed consideration, voiding our non-disclosure agreement. Richvale Telecommunications (remember Script 6-1?) signed up for Animator next • then !>at on it for about six month!> until they went under. 'ext it was Pro-Line\ tum. Pro-Line din.J..ed around \\ith it literally for years before releasing it to Spinnaker who released it back to them who released it back to me. Richard Eve~· Northern Blue Marketing Inc. contracted to publish it next, and i~ currently doing so. and · get this · has actually sent me a royalty cheque. Richard and company and family, Tlove you: I really do.

Buddy assembler was Pro-Line\ tdea. The world owes Buddy to Pro Line and

OSAP (Ontario Student As!li!ltance Program). I even made almost enough money the fiN year to. ~ay. co-..er my hydro (I heat with oil). Still, it was better than the nothing I was accustomed to. Then Pro-Lmc decided to ~ign an agreement for all of their products with the big boys at Sptnnaker dO\\n in Boston. And that ''a~ that. The fir'>t quarter T actually earned a negative royalt}. Of course. they didn't make me pa): they let me owe it to them. \/ext quarter l paid ProLine bad. from royaltie~ b~ed on back collection-. from their O\\ n sales and I haven't <,ecn a mckel since. And neither has Pro-Line from what I hear. Anyone who bought Spinnaker's package (nobody according to my percentage) prohably wondered why the name Poue1 Assembler is displayed above C source code. After all, the assembler say~ .. Buddy" when you run it: you have to type in "Bud" to invoke it: the manual refers to the ''Buddy System" throughout: and C ~ource would !>urely be a '>'Onderful -.ourcc ·of !>yntax erro~. But I \\-Ould be willing to let them slide for -.ccmingly 'ticking it in a used box: I would even be \\ illing to ignore the fact that the) ha\e never advertised the prod· uct - if it were not for the following: Spmnakcr apparently doe), not believe in updating their release~. The version revte'>'ed b a'> old as the proverbial hills. Budtl\. has been a true macro assembler

L

Transactor

7

April 1989: Volume 9, Issue 4


for year,; it ha ... a vertical <>plihcreen Chris to ask lnm if he would muul if 11'e editor. ~upcrior memof) management. prinu·d it. He said that Itt• lwtl» rill en it speed. and di.,pla} formatting. and even figuring that ll'e would puhlislt a1 lea.st improved dtX:umentation (although .1ome of it. Of course. the .ltatemems some might ~1111 find it overly concise). made and opiniom e.\pre.ut•d are Clms' Jim Butterfield. Liz Deal. R1chard J::.v- 011'11. Transactor receiretl a leuer and en., Miklo., Garams.Leghy, Darren published it, that's all. Spruyt, John Lem and a zillion others gave me valuable feedback in bringing Since his main concem m tills {101111. as Buddy up to what is currently not e.\pressed in the lette1~ is the tma\allable from Spinnaker today. O\\.. I aratlabt!tty of Ius upgrade. I made a mg~estion Ollll Chri.l a,grt'ed 10 it. I mgIillO\\. that hackers update their ~tu fr hourly and a publisher can't alway .. be grsted that Chri.~ supply thl' upgrade direct!\ Chris was concemt•d that users re~tuffing boxe~. but Spinnaker ha~ had the latest and greatest for over a year. would thin/.. that he 1\'ll.\ ju.\1 trymg to l'l'OOp up some cash bv writing his lerter J u\t \lilt ng there. I wid him that I would .1ay llwt the upNow, I'll probably never get rich off grade offer was my idea (and so it ll'os). Buddy. but it does give me a nice. warm, 1/e also didn't want to charxe so much fuuy feeling to know that someone out that people would he put off and be dethere i' occasionally wowed by 11 and nied the upgrade. \Ve agn•ed that $10 finds it useful. And it annoy~ the so~.:b wa~ a reasorwble jif!,w·t· and unltl..ely to diuuade anyone on the bc1.11s of cost. off me when giants sleep in the road. I guess my advice to hacker~; in search of recognition and reward would be to ~cek out the smallel>t publisher you can find. Software publishers arc like fi,h: the bigger they are. the harder they jerh. you around. This is my theory; it b what I have come to believe.

Tranwctor ha~ been my staunchel>t ally all along: al .... ay!> connecting me with the right people and the right information. Ever catering to my ever--.tarvmg ego. You guys 'aved my life. I cannot thank you enough. I now spend my days coding medical systems in Con Ki tchener Online Data's !>tate of the art, 32-node, QNX networh.. I enjoy the \\.Ork and the people. But the Commodore (H was my tirst and i\ my deepest love. I feel bad for letting her langu1sh sometimes. because tf it were not for the Commodore 64 and Tramactor I honestly believe that I would \till be painting townhou!>es or wal>hing poh for a living - instead of playing on the virtual circuits. All the best. Chri~

Miller 2 H1lda Place. Kitchener. ON

2G I K3

J\ r you can .~ee. this is not your arerage lett£'1' to the eduor. Smce 11 comains

some prol'{)catil·e mau.>rial. I plumed Transactor

wnung you 10 the hope that you may have an an~wer to a po~~ible hardware fix for the 1750 REU. I use it as a CPf\1 RA Mdisk on the C 128. I'm told that it might be pos'>lble to convert the REU into a no11-mlatile RAMdi\k. Thio; apparently could be done by interrupting the power supply line from the main board inside the cartridge, mserting a "refresher circuit" (oscillator/regulator) and connecting thl\ circuit to a direct and con~tant po\\Cr 'uppl y. or a battery: u'ed. for inl>tance. by the Quic/.. Brml'll Bo.\. Since the REU uses dynamic and not \tatic RAM. a battery wouldn't keep its charge very long. ~u~­ taining 512K of DRAM. But rather connecting the ctrcu1t to a tran~former plug. of the kind used to power transistor radios when their battenes aren't being used. It .,.. a.\ \uggested that a plug supplying 7 volh would be about right.

Buddy are lrdd Doel> it !teem to you that thb would be h_, Spinnaker and Ire can't he takmg cus- possible? If ,o, I'm not sure I'd attempt tomers from them. So ... if wm .1e11d your it my'>elf. but .... ith the proper i~truc­ original Power Assembler dr~J.. and $10 tions and a rough schematic. if needed, to rhe address printed abow•. Chris will I'd happily hand it over to an experisend you tire "latest and grc•au•st" l'er- enced technician. .~ion of Buddy with some ~upplememary doc.\ 011 dis/... I stre~s that it muM be the Carl Gabler. Van uyl>. CA original disk . This way, Chris is not tal..illf!, customers from Spinnaker /hey And r m aji·aitl that oil I hOI'(! is bad ma/..e their money ll'h('lt you pwdwse ne11s for yuu.l too. hare heard of such a Power Assembler. In effect. Clm~ ts pm- hardware fil. hill nnl\' 111 the "would11't it lulmg custmner support fen thetr prod- be great if" .\tagt 1 \\Ihen I first recetred uct on "1•olumeer plus costs plus a lit- your letter, /loo/..ed briefly into the probtlr" basis. Since tire product is not copy- lem. and though I helie1•e it possible. I protected. you 11'0n 't ha1•e to do ll'ithout just haren't had the time 10 do anything while it's in tire moil abo111 it. Your note outlined the problem exactly: extenwl power supply. I'Oitage Pushing the Limits: Paul Bosacki's ar- regulator and a refresher of some sort. ticle on expanding the C64 \ memory 10temally has been very \\.Cll received. to The 41256 Dlt\M Jw.1 an on board reput it mildly. Paul ha' recei\ed numer- fresh coumer. sn all that'.f necessary in ous letters and i\ \1111 receiving them the refresher 1.1 a umer (the ummg·., (and replying to them) as we go to press. tensr) and a method of strobing *RAS In the space remaming we·,e included while *CAS i.~ held low. The power consome of the~e lette~ along with Paul's sumpticm would be high. hill then we· \'e responses. I've edited both the letters an extemal power supply, so that's not a and re~ponse~ somewhat to eliminate problem. material which does not pertain directly Anvwa\'. that'~ prettY much all I hm·e tn to the article. - MO say on the Wptc m~/11 now. If I get any Wanted : ~on-volatile 1750: I read your further 1\'1/h 11. f' II let \'ou /..now. On the article. "Care and Feedmg ol the C256.. other hand. if you manage to come up in Transactor 9:2 with grc<ll mtercst. I'm with anything. f' d appreciate hearing Of course. tire rights

8

10

----------------

April 1989: Volume 9, Issue 4


about it. My REU could use the same treatmelll. Thank you for your illlerest. /' m sorry I couldn't l1e of more help. I just got Transac/Or 9:2 with your article in it. I am I'I!T)' interested in knowing how you managed to squeeze 1MB into a C64. Please send me any info you have on the procedure. Is the I MB also GEOS compatible? What other project:. are in the works? How far could the 64 be expanded? Could another graphics chip be interfaced to improve resolution? Could rwo 64s be linked to common memory to do multitasking or parallel processing? As you can see, I'm full of questions. Anything you could send to answer a few would be greatly appreciated. Thank you.

!

to function together. In the first article. it was one or the other. Not both. What other projects are in the works? Mostly, I' m working on sofnmre right now. and the upcoming Transactor article. 1' 1•e also beenlool..ing at doing an internal RAM erpansion to one meg, using one meg chips. It gets a little ridiculous though. Through banked RAM, there's no reason why you couldn't install megabytes of memOT)' in10 a 64 (power supply considered). But when you consider that a 6-1 costs less than $175 and a full megabyte of RAM $320 ... well, you see what I mean. So. it srops somewhere, probably where the cost of rhe memory exceeds !he orginal purchase price of the compu/el: 512K pushes it.

Concemin[? some of your other questions here. There's no sense in adding another \'IC chip to a 64. No. it wouldn't Dale Schoek. Hurl>t. TX increase resolution. In facr. ir's probably I swffed a meg inro tile 64 using rwo impossible due to rhe way the VIC hanl'ery different techniques. The first. and dles the address and data buses and reperhaps least obl'iou:. - I e.\panded a j/'esll timing and bus timing. etc. Whm 1764 REV ro 512K. As -vou mav . know. /' l'e always thought would he a really this umt comes with 256K installed. Tak- near option is a nev.· chip rhat's compatiing it to 512K is as simple as opening ble with the earlier VIC hut offers the unit and installing another hank of (through additional registers) higher 41256's. Tile /50 nanosecond chips are resolutions, more colours. e/c. That the ones to use. They're designated with would he the way to go. But that's up 10 a -15 at the end of the chip number. i.e. Commodore. so I doubr we' II see something like that. Although, I ha1•e heard 41256-15. rumours that Commodore is considering In order 10 install the extra RAM, vou a new 8-bir complller rhot would be 64will ha1•e ro clear the solder rings. hut compatihle. Maybe a 'turbo' 64 wirh enother than thor. there's nothing else in- lwnced !vaphics and memory! mired. Jusr a /iule proficiency with a soldering iron. and rhe usual ami-static And lastly. conceming multitasking. The 51 2K hoard offers rhat option. The 256K precawions. mod. as you know. keeps a certain Now, conceming the 512K expansion amowlf r~f memory common to each board that I ha1•e installed in mv 6-1: it bank. The 512K mod allows you. now looks as though Transactor will be through software, to turn off that option. publishing the 512K Upgrade article in What happens rhen is that. with a little an upcoming issue. Because of litis. I'm hit of ser-up. you ha1•e 8 absolwely sepaback in de1·elopment. trying to stream- rate 64 K partirirms. Each with its own line the board. So unril I rest ow rite new swck, :page. and Kemal rectors. The board, I really would feeluncomforrahle only thing that ha~ 10 be handled is releasing that inj(mnation. Keep your reloading the 110 chips on ban~ switch. You· II read all about it soon. eyes open: it' II be in a Transactor soon.

sion of this rype for the C64. Now that you have done the hard part, the rest of us can just sit back and wait for c;ome cheap RAM to come along. If convenient, I would apprectate your sending me a list of any errors in the article. I assume that on page 7 1 the AEC switch setting under B(ii) should read "enabled when closed", but I would like ro know about any other typos you may have found. Congnllulations on your successful project and fine articles. I look forward to future instalments.

Conceming typos in the article. You' l'e cau~?llf the glaring one. The resr are, 10 my knowledge. just misspellings. and those are mine. not T's. The only other thing is on omission in the code. In rhe header declaration. the icon is missing. Apparemly. the T is planning an errara. [The missing icon data is included as a "bloop'' in this issue.- MO} l1

NOW AVAILABLE FOR THE AMIGA

The MicroFtyte JOYSTICK, the only fully proportional oontonuously varoable pystock control for Right Somulator II It transforms an excellent program into a

truly realistic ttoght somulation system" B.A.C E. MICROCUBE PRODUCTS Commodore 64/1 28 • MocroFiyte ATC Joystick . • • . . . $59.95 • Tesi{Cattbratlon Disk: A diagnostic tool fOt your JOystick . . . . . • . . . . . . . • . . $4.95 Amiga • MicroFiyte JoystiCk-Plugs onto the mouse port & wor1<s woth most software $119.95 • Analog Joystick . . . . . . . . . ... $74.95 lndude $4.00 shippong of pysllek orders. FSIIos a trademar1< of subLOGIC Corp. Order Dtrect from.

As ll'ell. the article will present the dri1•er that will configure !he extra RAM as a 1571 RAM DISK. as well as allow

the 17xx REV's and my RAM expansion Transactor

Some alternatives: I very much enjoyed reading your "C256" article in Transactor 9:2. To my knowledge you are rhe first to demon~trate a working conver9

MICROCUBE CORPORATION

P.O. Box 488 leesburg. VA 22075 17031777· 7157

April 1989: Volume 9, Issue 4


I

I Gm an interestins: programminf? tip. a short mutine. or a11 unknmm hit of Commodore trhia? Send it ill- if we use 11111 the blt!J column. 11e'll credit .1011111 the column and send you a free one-year suhscription to Transactor.

Fast G raphics Primithes with SYMASS Henry Calc, Roswell, NC\\ Mexico Robert Huchn ':. excellent f- ust Graphic:. Primitives program in the December 1989 issue (Volume 9 Issue 2) of Transactor works well after being as\emblcd using SYMASS if the following minor change!> are made to the assembly code: ( l) Remove the comment after SYS 700 111 hne I00. (2) Enter 5700 .EI\'D as the last line of the lisung. (3) Change the code starting address to 290 COOO or ~orne other <;afe location. At $9000 the a'<;embled code ovemrne-. SY~1'\SS\ S)mbols table which propagate., downward from SY\1.\SS causing SY~fBOL '\OT

•=

FOL'D erro~.

Command Tail for the C64/C l28 ~oel 1\yman, cattle, Wa!.hington At a recent user group meeting. a member a~l..ed me if it was possible to pa.'~ data to a program a' pan of the RUN statement. For example. CP/M allow~ you to type:

number. The operating ~)stem ignore~ anything that follows the colon. but the bytes arc still in the input buffer. All a program ha~ to do is ~can for the RUN tol..en and the colon. A zero byte mdicates the end of the line in the buffer. Anything between the colon and the ;ero byte i'> data we can manipulate in any wuy we choose. Below b a simple sCtJUCntial file reading program that ·command tail' to get the name of the file to read.

use~

the

An)'thing bet\\een a colon following RUJ'\ and the end of the line 1s placed in Bf . Leading spaces and quote marks are discarded. If BFS is null. there was no command tail and we ask the U\er for a file name. You could chccl.. for number..., MS-DOS '>l) le switches (slash). Unix-style options Chyphen). or an}thing you want. You can do it in machine language. or l..ccp it in BASIC. which is probably fa'it enough. The C I28 mal..es the command even more usefuL Tt allows RUr-< to also LOAD the program. So.

READ filename.ex t

is the name of a program to be executed; CP/M loads and runs this program. It also makes available the data "filename.ext". called the 'command tail', to the program READ. which can do what it lil..cs with the information. AmigaDos. MS-DOS, and other operating system~ al<>o allow arguments to be pa.'i~ed to progmm' in thb way. "READ"

RUN "file rea der": "filename

...will LOAD the program called "lile reader" from drive 0 of device 8 and RUN 1t. File Reader then parses past the colon and puts "filename" in BF$. The main program then opens therequested file and displays its contents on the screen.

At first. I 'iaid that you can't do that m Commodore BASIC. then I thought about it a bit and realized that you can. and quite easily! When RETUR:"\ is prc'><.ed on a screen line, the entire line is tran<;ferred to an area of memory called the input buffer. The line is tolenued during the transfer: each BASIC keyword is replaced with a single-byte token

lt'!. beM to usc quotes ahead of the lile name to avoid tokenizing any BASIC commands that may be pan of the name. IG 100 rta puse the il:put buffer for a hit II: UO ra caM follcvlAq nD : EO 120 rea by noel oyuo GP 130 :

PI 140 a:512 : rea start of input buffer GB 150 xx=592. re. chaoqt to 673 for c128

RUN· "filename

FB 160 : if peei(x)<138 111d plti(x)>O thtn x:x+l: qoto 160: rea 138--run toie:1 CJ 110 : 1f peei(x)=O qoto 250: rea end of line 10 buffer

On the C64. RU.:...; can only be followed by a colon or a line Transactor

-

10

April 1989: Volume 9, Issue 4


183 : 1f pttk(xi=S8 then x=xtl. qoto 210 : r11 fowod 1 colon lC3 193 : r-x+l : 1f x>u goto 250 · r:a xx po111t1 to tDd of 1!1pOt bl!ffer IY.) 200 : qotol80 c 210 : 1f peek(xi=l2 l!ld b!$='' tl:e:~ x:x+l : goto 210: r11 skip leilillq spaces (jJ 220 • 1f peek(xi=34 thi!D x:xH: qoto 220: r11 sklp quotes PI 230 • if peek (x) <>0 th111 bf$=bf$tdr$ (peek (x)) : x=xtl qoto 220

De\oice Presence Checker Paul Saw)er, Orangeville, Ontario

IJ

EG 243

IL 250 !8 260 Ill 270 01 280

Thi'> maclune language program \\ill report on the presence of a g•vcn dev1ce number. You can use it to check if the user has hts dbk dme or printer plugged 10 and turned on before proceeding with an operation.

if bf$•'' then input ' enter file oaae: ';bf$: r.. no azqucents ; open 15,8,15 opao 2,1,2,'0:'tbf$t',s, r•

The program is relocatable: in this listing it resides at 49152. To U'>C it, put the device number in location 252, then SYS 49152. and PEEK locarion 251: if the result is zero. the device ill off or not connected.

n m 1np0tiH. x xs PI 300 if 1>19 tben print 'file aa. = "bf$ print 'd.uk tnor'x x$: qoto 390

n 310

If you check for a di~k drive that •~ pre~ent. the drive error light V.lll nash. Just initialize the drive and everything will be olay.

LP 320 91t12 x$ Pl 330 pnnt x$;

340 : FP 350 wait 653,1,255: rem sbift key pauses, ah1ft/lock bolds MN 360 MN 370 1f st:O qoto 320 Ill

BASIC Loader NG 100 res device presence checker MJ 110 r11 by paul 9 uvyer Jl 120 rea store device I in 252, JO 130 res sys to roatlne (49152), Ill 140 res then peelt(251). if value u ltJ 150 r• 0 then deYice is off LP 160 rea 1 then dm.ce is 011. Ill 170 r• liP 180 re:a 1f dence clleclted u a duk D! 193 rt11 dmt, i111ti&lize after alling JlC 200 ra roatint. ~ 220 for i•49152 to 49191:read x:poke i ,x next BM 230 data 169, 0, 133, 251, 165, 252, 170, 160 11M 240 data 0, 32, 186, 255, 169, 1, 166, 251 BC 250 data 160, 0, 32, 189, 255, 32, 192, 255 or 260 data 165, 144, 12, 165, 252, 32, 195, 255 BG 270 data 104, 48, 4, 169, 1, 133, 251, 96

u m: close 2· close 15 El 400 : FO

39~

LJUOtncl

Quickie Flash Routine R.J . Poulin, Frederick, Maryland A short and sweet 'tlash • routine for the

C64 is always in de-

mand. II ere'!-. one I use with my notice to a forgetful user to turn on his printer: 500 r11 sUip1t flatb tubrootine 510 re:a r. J. poullll frederick, .S 520 !=0; pr111t •press <ntum> wl:en rudy': print 530 prlnt chr$(f) 'turD OD fOOl printtr 1'chr$(145) 540 qet &$ !=18-f: for 1=1 to 250: next 550 if &$<>chr$(13) then 530 560 rtturD

Source code liB 300 •=$c000 OJ 310 opt OD a! 320 clence = $fe Nl

C128 ML Monitor Tricks James Devlin, Decatur, Georgia

NB DB

FJ

cc

The following poles will turn the RESTORE key into a monitor BRK key:

JI II:

Jl

poke dec("0318") , peelt(dec( "0316"))

Pl

poke dec( "0319"), peelt(c:lec( "0317"))

Cit fl

Enter the pokes and hit the RESTORE kc) (you don't need the SlOP key). Your computer will BRK into the machine language monitor, just a-. if it had encountered a BRK instruction. And the best thing about this trick is that the program counter and rcgbtcm di~played wiiJ reflect exactly what the computer was doing when you hit RESTORE!

DO

·c ··~ .

0

..

0

...._.....

,

INDUSTRY FIRST - LIFETIME COMPUTER SER I'ICE PERFECT/0"1- Ufnm" Warrumr/<>r C-64/ 118 Comput""'!! Errlusn·f'lrfrom TOP TECH H OR/ D, IVC

This trick works b) copying the monitor's BRK vector into the ~\11 vector. so that the non-ma<;kable interrupt generated by tapping the RESTORE key force:. a JMP to the monitor's BRK routine rather than the normal '.11 routine. Transactor

330 onflag = $fb 340 1da 10: sta onflag 350 lda device: tax: ldy 10 360 jtr $ffba ;set1fs 370 lda 11 : ldx onflag: ldy to 380 jsr $ffbd ;setnaa 390 jar $ffc0 ·open 400 1da $90: ph4 no lda dmce ; jsr $ffc3 ;close 420 pla: 1m off 430 CD lda Jl sta onflag UO off rts

Flao S..rir•

a.,.,.- F 4'-T. Prol..•lon•l'-'k•

hill hrw .._. C"R\t ('N'I'tp.ul~n tl ptnphn-•" Pov. ·r \uf"r - lu.., C ~ CJ.·yr ••.rnntr). ~fl•art Htr6-4o-fa8d pans. Sen"-""" \t.lftu.ah. Pt1•l«l• c: De. tCH VISo\ \PoSTER CARD DI~CO\fR , A\If\ (...) lol~tMI • 112 '> O.~...~ o\1< . Ph•IIMkiph a PA 191C7 • (liS) 31'-tMI

11

Aprll1989: Volume 9, Issue 4


•--------~~~~====~------------------------------------------------------------------------------

The ML Column Crunching : from order to chaos

by Todd Heimarck It doe~n 't seem to make sense. Crunching reduces the size of a file without reducing the amount of infonnation there. How is that pos~ible?

HulTman encoding. which is capitalized because it's named after its inventor, typically reduces a file by 20 to 40 percent. sometime\ more. It works best on text files, which abound with space characters between words. Text files al'>O have a lot of characters m the a-1 and A-Z range. The> 're predictable and orderly.

If you've used programs like ARC, you J...now that, however it worb, it worJ...s. In lhis article. we '11 looJ... at the classic crunching algorithm called /-Iuffman encodi"!?·

Enough theory. Let"s crunch c;omething.

Huffman encoding and other comprc,s1on technique!> usually reduce the size of a file. However, you can find mathematicians, computer scientists, and other theoreticians who can prove that compression algorithm' can fail. Once in a while, you crunch a file and (surpnse!) you get back something that\ bigger than the original. That\ the chance you take.

HO\\

it works

The writer A.A. Milne, author of ''Winme the Pooh". wrote a poem that start1> with these lines: Of all the Knights in Appledorc The wi~est wac; Sir Thomas Tom. l ie multiplied as far as four, And knew v.hat nine was taken from To maJ...e eleven.

But that\ a reasonable rule. If you owned a crunching algorithm that guaranteed a 20tt reduction 10 Slle. you could run the program over and over again to compress a whole encyclopedia into one byte. You'd just run the output into lhe input until it ~hranJ... down to whatever 11i1e you wanted.

To introduce the concepts of Huffman codmg. we will crunch lhose five line!>. including leners. puncwation. spaces. and five carriage returns, there are 143 byte~ to crunch.

The theory: making chaos On the fir~t pass of the Huffman program, we count each character\ frequency. Next, we son the leners from most common to lea\t common. That list i:. ul.ed to create the Huffman codes. which are labeled HCODES in Table I.

The basic theory of crunching is that you look for patterns of order in the input file. You then replace the patterns with smaller codes lhat will later expand during lhe uncrunching process The crunched file is more chaotic and more random (in an order!) way) lhan the source file.

Columns 1-3 list the character. the P£ 1ASCU code. and lhe frequency. Columns 4 and 5 give the Huffman code and its length (note that the lenglh varie in this example from 3 bits to 8 bits and that the most frequent character~ have the shortest lenglh). Columns 6 and 7 list the number of bit'i for the Huffman code and the number of bits for the eight-bib-in-a-byte ASCII code.

As a vef) s1mple example. imagine that a text file contains 431 instances of the word "the". The word "qt" appears nowhere in the file, mainly because it's not an English word. If you search and replace "the" with "q~:", you save 43 Lbytes. Two letters have replaced three letters. But you've made the file more random. At some point you run out of orderly patterns and you can't compress any more.

Take the entry for the letter· A'. for example. It looks like lhi~: A

193

2

111001

6

12

16

A benefit of crunching is that you save space. v. hether it's di k space or memory. A drawback is that it takes time to crunch The PFTASCII code is 193 and it appears two times in the samand uncrunch·--------------=---------------------ple text. The Huffman code for thi., particular example i:.

L

Transactor

-

12

April 1989: Volume 9, Issue 4


Table 1: Characters Sorted b) Frequen9 CHR

ASC

spc* 32

FRBQ

BCODE BLEN

23

Figure I : Crunching ''Of aU tbe Knights of Appledore<" BBITS 8BITS

000 110

3

69

184

3

42

112

80 64

69

14

a

65

10

0100

4

n

78

8

4

83

8

1000 1001

40 32

4

32

64

i

73

7

4

28

1

76

6

1011 1111

4

24

t

84

6

5

30

0

79

6

00100 00101

30

r

82 72 87 77

5

00111

5 5

5

5

5

01100 01101

25 25

5

25

5

01010

5

13 70

5

01011 01111

5

25 25

5

20

T 212

4

5

It

75

3

10111 11101

d

68

3

p

80

3

001100 001101

6 6

20 15 18

2

011101

6

u

46 85

18 12

2

A

193

2

111000 111001

6 6

12 12

56 48 48 48 40 40 40 40 40 32 32 24 24 24 16 16 16

7

7

8

8

8

8

7

8 7 7

8 8 8

h

..

m

<* f

4

5

1

0

211 207

0111001 01110000

1

01110001

8

K H

203 200

1

7

v

86 71

1

1010110 1010111 1010100

7

7

8

1

1010101

7

7

8

'

s

q

1

1

spc a

f

0

1

h

spc t

1

e

spc

01110001, 01111 000, 0100 1111, 1111 000 0,0100 0110,0 110 000 $71 $78 $4F $FO $46 $61 i

n

-------- ----- ----

g

ape o f ' ------ ----- ----- --- ------ ------

h

-~------

t

1,010110 10,00 1011 10,10101 011,00 00100 1,001 000 00,101 01111, $SA $21: $Ai $09 $20 $1F

spcA

p

p

1

d

0

r

<

--- -----------·· ·------ ----- --- ------- ----··- -··- --- -----000 11100,1 001101 0,01101 111,1 110 0011,00 00101 0,0111 110 0,1011 $1C $9A $6F $£3 $0A $7C $B?

Unc runc hing Now it\ time to uncrunch the file. which you may notice is a lot more chaotic than it was before. The letter "I" repeats three time~. for example. in the original line. Not one byte repeats in the crunched line. Before we stan to uncrunch, we ~hould briefly revie" binary treeo,. A 'tree· is a data structure made up of nodes. There\ alway-. one node at the top. A node can do one of two things: it can terminate or it can branch. If it branche~. it's called a pare/11 node and the nodes below are called children. In a binary tree, the parent nodes can have only two children not three and not one. lf you branch to the left, you find child 0. On the right is child I. (Other kind~ of trees can have more than two children. but we ·re using a stricti)' hi nary tree for Huffman codes.)

· The space character and the carriage return are listed a~ spc and <.

The Huffman codes listed above happen to lit into a binary tree that's illustrated in Figure 2.

111001, which is 6 bits long (in another e>.ample, the code might be something completely different). In the crunched file, 2 umc\ 6 i\ 12 (frequency times length). In a normal ASCll file, two 8 bit bytes would need 16 bits. For this character. we crunch 16 hit~ down to 12. a ~avmgs of 25~.

To uncrunch the Huffman codes, we need to do something called "tmversing the tree··. The bit pauerns of the first two bytes look like this:

Comparing the HBITS column (630 bih) again'>t the &BITS column ( 1144 bits) shows that u<,ing Huffman code~ shouJd ~ave 4Y'c Actually, as we'll see in a minute, the overhead needed for the code table wipes out the <,avings.

Start at the top of the tree and read the bit~ from left to right. FtN there·., a 0. which means ) ou move down to the left to child 0. which happens to be a parent node. Next a I. so move do"n and right to child I. Then right, right, left, left, left, and right. The eight node terminate~ in the letter .. 0". Print that letter (or send it to an output file) and go back to the top of the tree. One left and four rights rakes u<; tO the terminating node "f". Print it and go back to the top. The next traversal does three quick lefts and hits the space chamcter.

not at all obvious where the lluffman code 11100 I for "A" came from. We'll get to that soon. But first, let's examine a coded line. Figure I shows the characters of the lirst line of the poem. The Huffman code from the table above is under each character. The bits are repaclaged a<, 8-bit byte~. which '-'Ould be written to the crunched file. The commas would not appear in memor) or in the file: the) 're included to visuall)' separ.tte the bit~. ~

Transactor

--

l

01110001 , 01111000

It'~

'

You might ask the question "What if one code is 01 and another i-. 0101?'' How do you know when to <;top and when to contmue? If you look at the tree. you 'II see t.bat a node 13

I

April 1989: Volume 9, Issue 4


I

I

'pc

I

I

I

0

a r

I

'

I I

I

m <

h w

I I I

d p

s

I

0

;I

I n

'

f

I

I

I

I

I

I

T

I

v

e

I

g

K H

u

A

Figure 2: The bmary tree either tenninate or ha' children. It\ impo.,,ible to have both 0 I and 0 I0 I. Since the 'pace character 'tan' with 000. no other charucter\ stan with OOCh (where x is a 0 or I). How to grow a tree

Let\ 'ltart with a \mall example. Suppo!.e you have a file w1th six chamcter<; di-;tributed like this (the "t" means "tenninating node"):

t'l' tA

tO tN tQ

16 (children tN and tQ)

tA

15

tO

12

Combine the two bottom nodes tA and tO mto p02. with a frequency of 27 and \Ort aguin:

Of coul'\e, the next queMion I'> how do you create a binary tree'! Well. we want it 10 be 'we1ghted', which mean., we want the popular characters near the top (a 'hort ~th) and the unpopular ones near the bottom (a longer path).

til

pOl

til

50

t'l'

31

p02

27 (children tA and tO)

pOl

16 (children tN and tQ)

The proce" continues unul only two nodes remain, which arc then hooked into the node at the very top.

50 31

How to use the progra m

15 12

Say you want ro crunch a ..equential file called ZEBRA into a ..equential file called 1 Ht..FF. Load the Huffman program into memory and run thh program:

8 8

10 OPDI 2, 1 , 2, "fDJIA, I,R"

After \Orting the frequencie'>, you stan building nodes from the bottom. Combine 1 and tQ into a new node called pOl (the "p" mean~ "parent node"), whkh hal> a frequency of 8+8 or 16. It replaces the ..econd to the last node and we delete the l;l\t node:

IYI 4!1152 : 111M FIUT PASS

The file z HUFF IS created. In addition. the original file '>ize and the crunched . ize are printed on the screen. To uncrunch. run thi~ progmm:

til

t'l'

50 31

tO

15 12

pOl

16

tA

10 OPIM 5, 1, 5, "1.1Drr, I , R" : OPEl 6, 1 , 6,"00Trlt&, I , W" : IYS 4'151

It\ important thru the Iiles be opened a.' number\ 2. 3. and 4 when you crunch and 5 and 6 when you uncrunch.

The tree i<> still l>Orted, except for the final node. Next we perfonn an insertion ~on, to put that node in it'> right place: t&

50

t'l'

31

TrONOefor

Program Notes The program h~ three paru.: EPASSI (49152), EPASS2 (49155). and.DECODE (49158). --~-14

April l 989: Volume 9, lssu. 4


1 rouunc

count the b}1e m COU:\'TE.\1, \\ htch stores the frequencies in the tables CFREQLO nd CFRf;QHI (the C mon "chamcter''). Then it lt.'i lhe h t tn SORTEM. which in tum C':IIJ ISORT. the insenion Mm rouune. Then tAKEI"REE butld.. 0 tree. The node r~quen~ ies lll'e tored '" SffiEQLO aJkJ !FREQIII. The code n: tn i'I>CODE. The PJrent node for chara~en nrc in CPNOil ~ lor nodes the) 'rc in ~f'l\iODE. HPAS~2

\\on't \\Orl.: unlc~' f:PAS'il lms been C'.tlkll liN. h send.. out 11 set of b)1C" that dcscnhe rhe tree. FirM, the tornl number of b)1es is sent (t\\O b}tc ). then the number of charncten that hnmch lefl (the 1.crm) and e h one' parent and name. NeAt, the child~n \\ ho brnndl right (ones), the nodes that arc Os. nnd the nod that arc I . The O\erhead needed to describe the tree in rca~s the si1e of the tile. l·or c;~.ample. the p:ICm alxl\c ha.' 143 ch:imct~-rs. but on I) 29 are unit~ue. 'llle hcallcr nttds 29 rime 4 plu :! h) res: JIM h)IC in ull. Tlu: I•U c:h:tmcrer' crun\:h tlo\\n inro 79 b)te • bur \\hen )OU ulklthc merhc.u.J, the ~run hed lile ctm·

tain I117 b)1C (comPJred to 143 in the ongin:tll. The lluffm:m oode folio\\ the hc:Wer. In the e.xnmple abo, e. the letter •·n" h:ts the code I«XXX. The table are arranged b} p:lTCnl nodes, so to ligurc out the code, the progrum \\or!.:" b:tck" anh: 0. o. n. I. When it gets to the top. it rc' erscli the (m cr.;cd} bits to get J(XIO. The ' riable·length code" arc p:~CL:cd tnto h) tc of eight bih c:~eh :md M:nt out to the crunched hie.

u uo clrd:l 1.\ UC close

#

n

IJ 1Cj ~

mtrce coJ~ mi'Aifomwt

fll ....·~t . rrc•

-

110 1Je100 Uj •-4Jl52

n. mmtftoo • W feut

• $~

IC 1~ ella 01 m c!lril

• Sffc£ • met

• m ,.w • stlt4

: file eut;a

m

IC 220 ~

$6:~ t~t»+O

1.0 m etnqlo • &I) 240 d~ • bb+$100 A 250 ccode • tlb+UOO ,11 250 qNlOdl • tlb+$300 ro no I!Aqlo • tlb+$400 Ql 280 If• • tlb+$500

• m acd• • llb<mo •

; code (00.0, ff•ll : pmllt DOdt : ooclte ' freq ; code : puct (Oatapl : torttd litt

300 cpcodt • tlb+S7ot Ul llO Ust • tlb+SCO K 320 trPt • tib+UOO

; t"JPI Qscta&r, u....a

al leitl 31 D ]SO ct:J:n

:: rtl_, ftri.atlt ail.d e...

:no • tlb+$&~ :uo =."t,. • lib+: I • tlb+U~ u m a1tJPt • tlb+SlOO • m ah

01

• tt+noo

m,.. .,...1

a. ln jlp tpUa2 a. 4~ jlp dtc:cdt

; . , 011:

r.acl

: ~,....

lflct-...t!Hd C type

..

: -code ,... two ; cllcodt

AI 410 ; CC 420 tpaeel • • n ldl IP U: jar chHa : C1f1e anel 2 for IJ:pt .JO 450 jsr ru• ; IUO Gat Z'J • UO jar Cl"•tt• : COilt tbt bytes rllnD 14112 rr 4~ ju cloee liP 4JQ )tr elm. : cloee 1:p e••l 2 u s= ]St .w.- : IOrt tM 1iJt li m ju .u.u. : hrild tilt tnt ca ~20 ju IOdtO : tilt tip cf tM me

m

Ct CJ

u

m m:

1:1 550 tu• tl 5ie ,Jl 370

01

ru

7

141 ·~ UJ

m aeioGp .u dAqlo.7

u m

eta d~' eta c<=dt,y .uc~ 7 1U ~Code , 7 .u

IC 640

IU

n

dtJ

A

~

IJ 110

1M aaloop Ita fllll• .u fllllatl eta.._,..., eta • a~ iK • ode : ..,. lOde I for t.11t top

.. 120

ttl

"' m

110

~

• no

t,.,,

U QC

• m

Ill UO tl UO n 100 11

m:

Cl 740 Iii ~ II 1£0 Cll Ct

n

"hutr.~rc·· •

== •m42

Gl 200 cb:: • meJ

Jlte I>IC om routine uncrunchc.' llultnlm'! u....Je . It set' up a tAble (CliOSAME. UllJTH'E. <lfi~"ML'. and (~JIIT'IPE). Ole that thi i!l u table of child~n. "'hereas the encoding routrne used :s table of p:arent • In the dn--oding pmces • the pmgram gets bJt one nt u rime unul it gets a child that' a char ter. Tb:n 11 goc bad; to the top of the tree.

In ome h:-ts I mn, text liJc, crun~hcd be 1. A 15-lOO·b}te file crunched dcl\\n tn 911M h}U~' tfmm 61 di\L: bltd.~ to 36l. Ihm' u 41 r.! ~W\ ing . 'llle PAl. source celtic Irom thb program. "'hi h i most!\ te:t.t, reduttd fnllll 10126 bvte to 111<. a 19~ S:t\ rngs. The .\peed.\mpt pmgrnm (nll nUtchinc language) didn't crunch 'el) "'ell at all, pn,robl) h«ausc of the O\erbcad It hmnk light!). from 6153 b)1C to 6CI41. a 1'k $a\ lOg

• mer: • IUcl

nc

10 7f0

~-

llat,y

•• ju clri.a ta uc c!Aqlo a

Ia ttt«•t

iK cfAqki,a .n. 100 bft«c•:lt iK filtl• lJ 110 tiM cotut Ql 120 ac hlel••l • llO cottet 1dy fiUt .. 140 .. .II ·~ ldl filil• CID 160 141 flltle.tl ., 170 ju Aided • ItO Ldt fQ K Ito ju Croat tile; rtl D flO :

=-·

15

; pt a ct.a.rKUt

m. dUt

; '""' by .a : - IC.A ia tMt elot ; if 0, t.lltl uc t.llt

tip byte

; tilt IUtU 10 • ICrt tO cmtl : 90 bad fc.r ICrt bytu

•• Apri 1989. Volume 9, laue.


-Ill t20 torte • • ID m ldyfO n. 940 ltJ luti.ID

01 950 Iii IJ.

Gl

llO

IIi

a &I

IIi

• IC Jl IIi

..,

r;t

•a Jl II

GJ

a

OJ

r;

.., nl

I

II

Jr IJ Cl

I

.

ro

n

I!

Iii ~

IP

n CP

•.

Ali I' Ol rt IJ' J(

Cl JO

. IIi LO rD

ID

Gr JJ

a

• Ll

n PC JJ Cll IE nl

II:

w

: vtd

bf tile J.JCrt roatlJe

ltf 1e 960 IOloop ldf 1e m lda tmljlo.7 tat on e f • r : c!lla 1l fnq o D beq noehlr : 1f eq, tile DO cU.nctu1 1000 : US 1t to tile tilt tJI 1010 ldf CM• 1020 : tkia il tile udi code It& lllt,J IJIC !!!WQar 1030 : IIDit c».nctu 1040 ) II I.ICrt : i.Uutia IOrt lCSO 1liC liltla : tile 1ut 1lu - 8Cirt tee 1060 DCQU 1liC lC: 1070 : ..., 901119 nu le 0 to 255 - toloop 1010 rtJ 1090 liOrt • 0 1100 : ltalr.l of tile lilt ldf lilt1• a uOl lllO •• 1120 : if ••• aklp ~~ ru 1130 1101 lda blt,J 1140 1t1 uhlt 1150 tu 1160 lda tJP1. J 1170 It& 11tJPI : " " t.biM ftlw 1110 ; if 00, 1t' 1 I IIOdl - aode 1190 lda c:fRqlo,a 1200 1t1 Wo 1211 lda c.freq!l.i ' • 1220 ztl uhi : IIW fnqMOOU 1230 J7P uC2 ; 90 c• 'i*" U. 1240 •IIOCII lda llfreqlo,a 1250 Itt ialo 1260 ida llfniP1 1I 1270 : lift frtqQIIIClU It& iW 1210 u02 • • 1211 : COQllt badwud 1.D tile liJt ciiJ 1300 141liJt.r 1310 lda tJPI' 1320 : Wltbet- anoclt2 1330 ida c:fRq10, I rna Itt tutlo 1350 lda c:f~ , l mo Ita tilth 1370 J7P uOl 1310 tDode2 ida DfreqlO,I uu It& teltlo 1400 ld& llfrtfU' I 1410 It& talthi lt20 uOl • • 1430 ld& Wu 1m Clip t.uthi : COipUI 1450 bee 1.DIIrt : 1AIIrt 111 tile lilt bert : . , looplll9, llybe 1460 11De1J04 mo lda Wo 1410 czp Uttlo : lOt IVt' 10 c!lla lOll • • 1m beq 1.DIIrt : if tqQil, wvt 1500 bee 1UUt : if iJlo < tlltlo, 11111tt 1510 : 1111 drtlp Urvap 1520 u~ cprto a u02 15U : if .' • 0. drtlp Urvap to 1UUt 1540 ciiJ 1550 wvt • • 1560 1liJ mo ltJ tiiiPf : "" tile ftllll 1510 cpr liltlll 1590 a cint 1600 rtJ

'" r;

I& ll

fror\IOC't()(

.

Dl 161t dolt

ldf Wtlll

: ltUt It t.bl

ID4

1,20 111oop dey 100 lda lUt, J II 1Ul iAJ Iii 1630 It& lllt,J ID U6l ciiJ Iii 1511 lda tJPI.J &I lUO iAJ IC UN lt&tJPI' 1100 ciiJ GO mo cpr tiiiPf m 1720 - 111oop II) 1130 lda 11Wt

"

Iii IIi

mo mo nu 1m mo:

a

11H lllltne • • 141 mwc\.ar liDO

&I II: ~

u:

Jll

UlO

It& bit ' lda 11tJPI It& tJPI J

rtl

del ltJ lutl•

1120 a 1130 •raio ldJ l1JtlDO II 1140 )lr fi.ICII fD

Iii uso Cl liU

a

1170

l7 ue LO 1190 OJ ll ltlO

.

uoo

mo

r;t 1930 fuc:a

• uso 1~0

IJ

a.

U60 IIi 1970

• 1m mo " IlL 2000

•• Ill. .u.

It ll Cl Jll LO II

IJ Ill Jf)

rl Cl II II)

ID

a n

PI IJ'

• DC

t.l IP

-

Ir OJ

n.

Ill ll

a Q a

JO

16

)II fufrtq )JrttdMdt ) II 110rt

: fu tile c:odlt ' Dode1 fo: J llld r-1 : fut.bi-Dode ' l ~ : US tile DOda to tile 1ut I ICrt 1t

iDe me•,a.

lda 1uUa

ctipll aznuo rt1

: qut wllll OlllJ two 1101511 r na

••

ldf lllt1oo

lda t Sff JII fuar dey ldaf) jn fuar

; WI ••· c:odl • 1 : set tile code 'Dade

: code • 0 • tile 1Ift

rtl

2010 h.w 141 typt.J beq u&e!J.ar : 1tll diu 2020 2030 141 tilt, r 2040 It& acoclt.a : 1t' l • 2050 ldl 2060 It& Dfoode I 2070 rtJ 2010 u&e!J.ar 1411ut,J 2011 Itt ccode.a Ida,..... 2100 2110 Ita Cpoodl I 2120 rtl 2130 f1lfreq • • 2140 ldf liltlDO 2150 141 tJPI,J 2160 beq aootdlat ; al!Otber diu mo 141 111t,J lda llfRqlO,I 2110 ztl 10111 mo ida llfrecp.i. , I 2200 2210 sta u1 2220 JZ1P abeld 2230 uotdlat 141 hit' ' 224Q lda efnqlo a 2250 1tal0111 2260 ida cfrecp.i.,I 1Ub.l.1 2270 2210 abead dey 2290 ldl lJPI.J beq 1udYt : ll!Otbe~ diu 2300 141 lilt,, 2310 2320 ida Dfreqlo.I ltllcwl 2330 2340 lda afrtqiU I & 2350 It& w 2360 J7P us.

a··•

April1919: Volume 9, lllue 4


AC ~

c:. II &I

., u

·~ --

zm it"Ckr

141 lUt.J lda clreqlo, a IU low2 l4a cl• ••

mo mo 2m me

IUW

2W wtl

141 r clc lda ~1

m~

Iii 2UO

:z me

Cl

-

mo m~

2m

IU

&:. 2!CC

rtl

a II

a

u

254~

fJ K

mo

.. . ao

n 25!0 D

rtl

me

CD

IC J1

: t)'llt

Cl

ltl ~ ••

mo

n 2UO 1!0

me

1:1)

UJO

II II

mo mo

Cl m~ Ill 2720

:

~

Ill

ldalitt'

n

ltiiCo*l

~

lltl

jsrSbdot

AI

l~

a

rta

2Ja :

tf 2t= II 2110

•OI mt

21~

.ll 21U IJ 2150

£0 2160 II

:&

2171

: ..S t'w 'w· dlr bytu : ..su.~ file

(I

II

j u=.mt

:;

l!~

1da hlelc+!

2JU

j ua:.t

to 2m

u, to Ua to

-

u. PJ

:t= lJll

»»

.11 303: fJ 3!4 ~ II ]J~ CJ 3:(~

Trar IIOCtof

ora~, a

.... bladJ 1da ~ •• lila h•d•

mo

ll

]~

a

3670 3W

3710

~ Car !.a fi1t I 1f10 frtq . . . ,t mJt

Cll

WOIIt

)lrltldDoda

tlllp awl

"

: Mild f of )eodu aDd t'wa .._ ,

u oatl• Clltl•

u

Olltle+l a.tlc+l

II 3m

*"to

~

ata oatle+l

Cl 3m D 3710

rta

Ita Gltlca

1da adr: oatle+l

• mo mo

tff

ata Wta ,J

: piU

)lr

ulGitl• rD1 oatlwl clc 1da a.tl•

., noo •. mo mo

: u

: pull • tlllp IUd

... utloop

Ill ID

I lJ'III

...

.,

• 300

: 1.,u of ilplt fi1t

: 19f1Crt m

adr: IU lda adr: IU

11 3UC Jl PJ 3UO

3m

lid Ula I Bll

tJI

35~

,

Ot»1pe

11M ,.S.l

n 3110

Ul

iaJ

mo 3520 mo

PI 3SIO u, GC 35to utloop pla G1 3100 clc

1-vtl

..S f of

til

"'"' mo I; 3570 :

ll. 29N~lda~• ~

DCOte I .......1'!3

3540

II

I

ldatl

loO lUI ltl !abita ' Al lt N iaJ ~hac!] IC ilia Jl cpa II

1da fi.W•

2140

ro ma

;u rrn*odl ldJ 14

Cl

: &an- filtl..U

: prir:t uwcbld

~

:z

ju c:Ucat

• 1m

mt'wada•• •

IC Ull

~:10

3C5il

lUI

27t)

... tya

Ul ](50 . . .1 lda

n.

Cl

._ JlllldaO

lU. .::. 1m

lda t Ita Gltlca ltl Gltla+l ja: btrdar ju 1Kf11t lda .. )1% clott lda u jii clOII )If clraa 1da oatlta lda Gltle+l

: ipoct 1ft

rdt

cpll

12.

: cM"''l 4 for wriili9

: Mild t of 1~ aDd tta · -

l pWGat. . awl

me 'wad2 w

Cl ~ ~

rta

zm : ro nc~ .,..12 •• ll mo ldaU &J me )U ctkGit n na;

u,

12. 3m

qr ote a

: puh • tlllp IUd

ata llblta.J

D 3370 loO 33M l l llN

u . . • 11 u. top

S40

til

m. 3361

: tM pa.r-=t

: 1pOrt

c:lltOIIt

]lr~r

I; ])(I

IC

n me

~ar

1.1 3210 ldJ fD IIC 32to 141fl Cl 3300 f'IIOdtO lda DCocla I DJ 3310 bla'wrd2

U. DOda ll 4tt to t'w h.at

lda 10

1t1

...

llU llSO

3320

.,

I

tJI

,• lllO

su qt:'Odla

u.. •

til

10 3270 :

ldytl 141 litt ' lda Uff

mo

du1 !de ccote a .... 'wlldl

a mo

cf a paNt ia alnJI a DOda

Jl 2UO Il 200 l l 2UO

ll~

, m•

lda

me DOdaO •

: ..S t of Wl4:11 lid

ldJ tO 141 tO

au ~ita 'f 31" 01 3200 1-, Cl lll 0 'wlldl ill rt 1m ...Carl

C)..J 2~0 ;

I.

)Jl Q:o;t jar •oA:!yr

AC m~

die llrtl• 141liatlc lda ISff

•=u• aa li.Jt,a

mo

3:08

PI l:C fJ me

of~, l

IU t)'llt I

tJI

&:. 1m :

• meMta • • •=. 2m

,..

l~

]111

251C :

g; 2m

lila QuO

•• 1120

IU afrtqlo I

me

3078 ....~ilia

IJ lv...

lo.Jl

lda hil ad:W

tl

. AI

: Aprtl1989; Volume 9, laue 4


• lm m'tk• dey

a= n 3m

1a

ur

lda qt:ldt1

jar c!tt= Jar em:: CFf ·~

D 3!70

rtt

OJ

Ut

ll~

lit~

lt~

n:= a me cr mo

. ttmxll

· _. ._

l.dl

cpf

• 11M ~ •• ...

n

hle~c+l

I bitt Ul I t.,te ju qltl:p • alk 11p ell u. )It •lkP. · cc:trt tlle t.,te dec hledl bat •'ocp c1a: filtl-1 a. talocp : ..., toilt ~l•

n em s mo

mo • mo •

4140

Q

Cl~

l.dl

011ttlu

em

mo Cl~

AJ ct

Cl~

mo =to

Ll Cl70 D ClU

em dalpl ue

GP

u. cllancUn ue ar '9

a ca:o •

CIZO

... , ..... 1utoDe ul odlftt

.. Cll~ • UU

B eHO

IC

- lutoae 1a te lb odlft•

=- : •* t.

o; Cll~ I) utt

)It

ilc

em a em

DL

11c

e850

• mo : II e ~ cbil

lU Co £ct

n mo

ttad

u. lut -

ldy tiiPf 1= o:tltD a. rttetl 1ac Clltlll+1 lda tl tt1

c=biu

lU et.ua

lU

... cbil atalc ju dlrla

w )It

erie

IU cMn IU

diC 1c lila dalpl

Jl) " " Cl e~

... IUlc

• locp M!::tlt

u

3u eria

mo dalp2

mo

Cl

eM~

""

Ul

lU chit IU 01 ·

Ill eKO fJ ct 0

IP

)tr ct.ta

• em a m'

ua

lrSOOO"" n. 5010

t.rpul

IP 5:20

ttl

ldr u

fJ 0:0 JC mo

.u llbitt.r

II C321

1Af

Q)

CliO

: 91t u. ~at

ilpllt

t.,te

: fuat cocll

: if puct. u wo mt

B CC50 It: UlD

• u D u 111:

o

em

lda llbitl,f ro1 ro1 0::7te : t..lld • diC .wu

t.r f0W7t1 : u lllltbiu • • , 1 biu

ut

Cl 5140 Ill: 5150 dtlp4 • 5114

a me

CD 51" Ill SlH

rudf

~T~I~ ;; .ac ;;t;~;---------------~~----------------~11

lc ju aria

w

~:A C0typ11

a suo pul 11 mo

bf-.e • bit 1t • u.-

; b MliJ pa.r.tO' I

llSW

Dol 5100 IIi 5110 :

mo ID ill~ U., : 91t U. cocll lid am 1t ., em l.da &;*lClt 1 K em a. 1o91 : bra:e if • pa.r.t 1 ca mot:;~Q~t def 1:1 mo ru • mo 11 u" .adon • • r;

cb.tia

LI ~10

S:A

• suo

lda ICodt ,l tt1 wu r

)It

cb.ta IU cMI !a IStf

a.

CP<MI 111 1

ua

m~ :

m so~ dalpl 1.1 sm Ill scso

coi)(a I

t.r 'i*lt 1ocp

I

• mo

jn ctU•

em

', I

1da"ciiCtJpl,l

fJ 0£0 01. 4210

GO

s :.a ut=

wu

a em

e~'

a!..,..

tt• hlll• ltr eria .u filtU..l iac hltlwl

UaU

n

• ctcw'

ju cUb

mcm

lda

I

• llolr -=r cW41' a

a CJ»

.~ 1

mo :

a em

:

ju aria

Ol

fal p

II: eUO ftatp tU 11 II CleO •lkiiP • •

lda

cb&n:tu

)Jr Q:OGt

14115

a em

cp~ta

n mo

tlld

=b!t•

IIIC£

u

IU o.thiU

a1 e• ~

lda

bat dcll':tett • tlmctl

Jl

:.0 e:ZO

II mo <1 mo 111 mo

•"'bel

• e£0 a. em

Cl

lda 11

Ill c:JO talcap eQCO

• c:d cf

,."···· • mo

rtt

n mo

Cl

em em a. mo

q:l)(a,l

bat . . . . .

II 3910 c:filt • • a c::o illc

C5t~

111: em r.D 1.1 Ol. eUO nMtl

r

)ar dlr1m ua )u Wc;t

• mo o;uc Cl mo

.:1 e~

Ill eiCO

10 tMta

Jtse

o; 4110

em · JO mo fOUbft• atr t11Pf n C5G !aU IJ em jlt etbm rl)

diiJ

ru

CD

.Cidl&r

t.l m~ IJ lttO 11

GO m~

• Mild pa.r.t' t . _

PI 3320 II lll~ II: lUO .. ~

a.

n esoo dor:lwt def a mo cpf em CD 62~ a. .u~

•mo

fl !UC • !Z20 ID 5m :

)U

01

declc - dtlpl

Jlt aria

8IJ pucl'a

t.rbittu ; locp co.tu

Ita lc )lt

c:t.ria

Ul )It ~ia ttl 01'1

01

lda ISff IU dltyp1 ,1

die lc

-

dalpC

April 1919: Volume 9, l..ue 4


" sm uuu • • ~e sm l4il •~ cr !2~ au ca 11 !ll o:lq u. ts

Ll 100 ra ,.wtoz for ··~·

n 110 1$-' di)ICt ':

120 dtl171: ...CfUl

lfor 1bu 1J>2U, -

;u """

:.J !2t=

n 5m II !3:=

jar chr1A Ita l::fftr 1da 11

.n. sm

•p

l4y IOdl rol l=ffu

II 5340

cr mo

be.

1D 53£0 iti&O • • a 5310 1da 11 m

sm

PC 5310

ioo

ce:

m

1 ,

&:i 5420

• • die - I U

5m

lA 5410 GJ '4N

mo a sm prit:tit • .JD Q 5520 .

5!4,

u u 01 a

ct c.Wd c

· • u u..- ,.,_,... : ,..,

• uao data

to Fiat

JJ 1110 data 1P 1120 data II 11" data C& 1140 diU II 1150 cllta LJ 11~ date .. 1170 diU • mo data M lUO date CI 1100 data CI 1210 diU g UlO data LC 12~ data fl 1240 data 1P 1250 data

u.. ..- of child 1

Ita IOdl : . 1J tile- puct/DOda 1dl Qltype y : dou It ttra!utt

bel{ priltu a. natb1t

: yu, 90 priA

1dl u '" cth•t

u

mo 1da DOda sm )ar c:krOIIt mo dec m.:a sm tiDe totbltep II. 5l~ dec flltl. .l m mo tot.lletop 11!1 u ID 55£0

ID 5UO

au IOdl

JP 1.\ SUO

1da

sm

ll 5£50 C.: SUL

a

.o

tD 5 Ill !nQ Pf 5120

ca sm co sm :

1da

Q

1'

n

• 10

: bed 1p to IOdl 0 at till top

a

D

u rJ 1.0 CJ

u

jar cl~• 14a "

u

)U ei) lr elrdll

ru

rr

mo • • • ••3

II 5710 lc • •·4 a 5 " Ur.la • ••S

a mo ulltt • Jt 5!10 utype Cl 5120 blo Cl 51la W • !«~ ttr.lo c;:; 5150 tuUi 10 suo ltlff

»

u

11: 5750 hltho • • II, 57~ m•c!Lu a •+2 o.J

PI PI

ora flltl_.l bM M'!blt

m~ C!Mn. . . .

rt 5£ PI Sm

m.:a

·~

data data data data diU data diu data cla*.e

CL 1m -.

a. blOCf bel! CIIIUOGp

.ll !m Jll 5450 • IJ '4&0 1taa1 • • 10 mo 1da dth q : get

K 55Cj

tlle ..-

1dl COtype J : doll it terwl tttJ

bel! pr1liUt

: "'

1~

1010 102t 1030 1040 cr 1cso n lUO a 1011 II lC.,

: tile IOdl la till pa.rt11t : 9ft a bit illto ClUJ : it Cl till l:.it u 1

1.1 54:0

• sm r.att:! t

.. 1P • II a

I biu

tta aa1u

PD 5320 GJ 5330 iDIOGp

ra ._ cf propa

Il

Dr Cl

: ltc;U tf uc file : • cf c:llw

Jl JJ

: hf - ·

ro GD

• 10Cip COIIIttr : ~ ct lilt,

ued bf uort matae : t ; =rllJ 1tM1q1 foz lilt, type fnqlo, : ad frtl;.i

JD

•••, • •+I • ••t • '+10 : illo/U u tilled e;alut t.eatlolb • t +11 : foz iAM.rtioll 10rt • '+12 : tllp ltOZIIJI for f n mo 1o1r1 • u1o •iW a k11 a sm 1a2 •tutlo II 5to0 W •tutU o:. mo O&tlu • ••U : Oiltput file lqUi c: 5120 c=tyte • •dS : tile (ttildaedl lrdflla byte OCit .a m~ ~u • ••16 : HF4•r of l:.iu (1lllla it,., till byte flU . c) • 594~ tmffu • l.l!o 1 tll!t.A by".e ,. . mwdl"9) ., 5J~ ... • 1&1 : till dn ld ICidl (tiUer nGtller IOdl or a chat) rl 5Ke lllll&itl • t.ut1.o : a tv of tita

m Jl

a

., lr

II

Sit'

fl

IL e1

t=-

1.1

• JJ

Jf

• 19

7,, 1t5, 192, 255, U, 1", t, 153, 232,

a-:7~1

tlll ltiDdtrd 11

t, lD, 32, 32, lt3, 153, 1H,

o,

192, 2, 11, 204, 32,

o,

153, 2~ .

1U, 154, m lH !U, " · 32, 201, m, 3, 254, 201, 3 231, 232, 174, 154,

•rator • , . 51

76, 32, 1t2, 255, 6,

32, 194, 6, 172 1M 255, 32, 31 ut 2, 32, US 32, 120, lt2, 32 lH, 96, Ut, t ttl, 153 o, ltt. 153 o. 200, m e, 203 m t , 20s m 201 lK lU, lS5 lH 1U m, lH 231 m , lH m no, 254 t. m o. 1t1 m 1!4 lH 155 lK 164 1U 240 lH 173 155 lH 32

l2 nt, 255, K t , ut, 1St lK 140, lSI, lK

205, Itt UJ, D

150, 112, lSI, 1H, liS, t , 1tl, 25, 111 241, 16, 112, 172 156 196, o, 205, 231, 155, m . 12. 161, 231, 15t, lH, 231, 151 ltt 201, K 172, 1St, 1H 201, 1 96 0, 205, 1U, 150, 1H 170, 115, 2:6 141, 151, lH 201 15 lit ltl, lU, 1D, lK lit 0, ltl U3 1H, 76, 209 ln lit t, 141, 1D, 1H. lit, 0, 202 141 12~ data m, m 1t0, t . m us. o. 12lC data 201 15, lit, 0, ltl, 1U U4 UN data lit I , ltl 141, US, lH, 1,, Uto data U2, lit I, 201, 141 164 1K, 1300 data 0, 202, 1U, ll5, lH, 173 10, 1310 data 205 US, lH, 1U 11, 201 11, 1320 date 1u, 1H. 205, 164 m , 240 1, 1330 data 5, 1t2, o, 201. 1t6, m, 201, 1340 data lU 196. 204, 159 ltl, 201, I, mo data m, m lH. m . m . t , 205, 1150 diu 153, t , 205, m . liS, a 206, 1370 dau m t , 206 136 2t4 m, lK, 1~ date 234 , nl 1M, tH , m t, m U» date m, 1K, 153 o, m " 174 u:o date 1M m , a2, m tM 1•2 ut lUO data 32, t5 1fl. U, 1U 1Jl 32 tuo data m, 32, :n, 112, 231 m, 1", 1430 data m lK 201, 1, 201. m "· 144, data 1St lH 1ft, 255, 32, 110 lt3 100 data lU 0, ll, 110, 1tl Jt ltO, 1450 data 206, 240, 13, lto, o, 205 157, 1470 data 203, 173. 157, lH, 157, 0, 204 1410 data ltO, 0, 20S. 157, 0, ltt 113, 14t0 diU IH, 157, 0, 200, H, 172, 159 1500 data lto, 0 2Ql 240, 11 lto, 0 1510 data lit 0 20:, 1U, lU 1K UJ 1520 dati m , 141, 10 1K, ., lU ltl ts31 data ' · ~s 11t 1, m , 141 10 1543 data lit, I , 1M 141, 10 lH m , 1550 data o, 2u m , 11 lto, o, 205. 1561 diu I , 201, 14:, 164 lH lit 0, mo data m , us tH. n , 221, m m , lsto data 20s, m 1. m , 1u, 164 m . l5to data 0, 191 1U, US, lH 174 157, 1640 data 24, 17) 1(2, 196. lOt ll4 lt,, 1610 data 0, 201, 173, 163, lH, lOt 165, 1620 data 157, 0, 202, 96, 206, 1St, 1t6, 1630 w m . m Ut, m . 157, o. 20' 1640 data m , lK lSl, I , 2C5, H 160, 1650 data 190, 0. 2CS, lU, m , m , 0, 1660 data m, o, 151, ' · 2C4 m 1to u1o data ~5. m, ' · 2oJ m , • ~4 1610 data lU, 4, 32, 201, 155 llf 0, Uto diu In, lK 141, 1", lH 32 74 noo data 12, n, 1ts 16J, 4 u m

I 153

m

224 115 I 0 lU 20~

10 206 lK 2U lit 1H 1l3 1u

m

t6

201 200 201

m

156 1M 2U

m

m

136 0

o

t6 157 lH 205 0 190 1K 1M llf 202 o sat lH 157 196 174 m 1 2Cl

o

H 141 lH

m


• a 11

Il CJ Ll

u.

Cl AA oo a II •

Fl a II m; II

Pt n AM GP Ml CJ I)

11

CJ r6

CP or; Jl

.. ll .: ll IJ

II IC

.n. II IJ

rJ Cil

CP n

LJ

II fl

IO II ro .. 11 .. n ct II tt

ac ac tt

CM II CXl

n

Mr

• II II 11 oc Fl c;. 10 QC It QC

mo

Qt.~

3, 32, m . zs5. 32, 264 , m 1721 datA 174, lfl, 196, 113 IU, lK, 32, 205 1~30 dau tat, " · m m tu, :u, 210, m 1741 data 11), 155, 196 32, 211, 255, 1~, 0 17SO datA 162, 0, IIJ, 0, ltl, 29, 0, Itt 17£1 datA 240, 10, IIJ I, lJJ, 201, 5, 131 mo data 153, o, 201, 200, 232, 201. m , m 1711 data 72, 32, 210, 255, 32, 245, lt4 , 1,0 17Jt data I, 162, 0, liJ 0, 1J9 24~, 5 uoo datA m , m , o, 201, 200, 2:u 201, m 1110 data w , 12, 32, 210, m . :u m m 1121 data 1£1, I , 162, 1, liJ, 0, 203, 201 tilt dau 5, 131, m o, 201, 200. z:u, m un Qt.~ m , IK, 201 m , m , n :u , 210 !ISO datA 255, :U, I, 195, 160, 0, U2 , 1 1161 datA lit, 0, 203, 240, 5, 131, 153, 0 1110 data 201. 200, m , m 157, lK, 201, m 1810 data 152, 72, 32, 210 255, :U I, 115 lito data 161, 4, 104, 24 109, lfl, 19,, 141 lJOO data lfl, 196, lU, 8, 109, IU, 196, 141 1910 datA 161, IK, 136. 201 237, 14 , If/, 196 1920 datA U, 161, 196 24 173, lfl, 195, lOS 1931 data ' · 141, lfl, 1J5 1,9, 0, 109, 1ll IJCO data 19,, 141, 161, 196, 9,, 136, 190, 0 1950 datA 207, 119, 0, 200, 32, 211, 255, 131 1960 uta :u, 210, m . u2 1, 201, 231, u tt7t data m . tM, o, 201, tat. o, 2c., 32 1tt0 data uo, rn, 131, 32, 210, m . m , o ltH data 201, 231, J5, 231, 155, 1H, 10, I 2000 data tu , 110, 1J5, 32, 14 m , :u, 122 2010 data ItS, 2C,, 154 1H, 201, 2U, 2li6, 15S 2020 data 196, 201, 240, 174 170, IH, 224 , I 203t data 241, 25, u , 169, m , 202, 201, 250 2040 dau 162, c, 32, 201 255, 113, 10, m 20SI data 32, 210, 255. 231. lfl, 196, 201, 3 2061 datA 231, 161, lt,, " 162, 3. :U, 191 2070 data 255, 32, 207, 255, 170, 160, 0, IIJ 2010 data I, 19J, 153, 0, 201, 200, 119, 0 2093 data 200, 240, 13, 170, lit, o, 203, lSl 2100 datA I, 207, 200, lit, I, 204, 201, 243 2110 data 136, K, liS, 0, 207, 41, 4, , 16J 2120 data 196, 206, 110, 196, zco. 6, 13,, 1t2 mo data m , 201, m " · uo. 1". m , 162 2141 data 4, 32, 201, 255, 17), 169, 196, 32 2150 data m . m , m , U6, m . m . 1fl. m 21" data 201, 3, 231, 1,1, 19,, lEt, I, 141 2171 data 170, 196, ZCI, 211 162, S, 32, Ita 2111 data 155, 12, 207, 255, 141, 154, lt6, 32 2194 data 207, 255, 141, ISS, 196, 231, 155, 1J6 2200 data 32, 201, 255, 240, 23, Ul, lSI, U6 2211 data 32, 201, 255, no, 32, zo7, 255, 157 2220 datA 0, lJt, 16t, 0, 157, •• 197, 206 mo data 151, m . 201, m , 32, 201, m , m 224Q data 23, 141, 151, 196, 32, 207, 155, 170 2254 datA 32, 207, 255, 157, o, 100. tn, o 2261 datA m , o, m , 206. m , m , 201, m 2270 data 32 , 207, 255, 240, 23, lCl, 151, 1t6 221t data 32, 201. m , no, 12, 101, 2ss, m ma data o. 1M. ut, m , m , o, m , 206 2300 data lSI. 196, 201, m , 32, 201, 2ss, m 2110 dab 23, tu, rn, m , 32, 201, m . 110 2320 dati 32, 207, 255, 157, 0, ZOO, 169, 255 2330 datA 157, 0, Itt, 20,, 151, 19,, 201, 236 2340 dati 169, 0, Ul, 163, m , 162, S, l2 mo data m . m , 32 , 201, 25S, 141, 162, 1" 23~ dab 169, I, lCl , 1,C, 196. 172, 163, 19, 2310 data 46, 162, m , 176, u , tiS, o, ttt 2310 data Ul Ill, 1t6 191, 0, 197, 2.0, 20 2392 data 206, IU , 196, 201, 232, m , 214 115 2400 clata a. 200. 141, 163, 1t,, 1t,, o, 1tt 2410 data 240, 2, 201, 236, 162, 6, 32, 201 2C20 data 255, 173, 163, 196, 32, 210, 255, 20, mo c1au 1sc. 196, zot, 3, zo6, 155, 196. m 2440 data 0, lCl , 163, 196. 173, 154, 196, 13 2450 data 155, 196, 201, 204, 169, S, 32, lt5 2460 data 255, 169, 6, 32, ItS, 255, 12, 204 wo data m . 96

TrCINOCtOf

m.

New! Improved! NSBASIC2!

••

" I used to be so ashamed of my dull, messy code, but no matter what I tried I just couldn't get rid of those stubborn spaghetti stains!" wrttes Mrs. Jenny A. of Richmond Hill, Ontario. " Then the Transactor people asked me to try new TransBASIC 2, with Symass•. They explained how TransBASIC 2, with Its scores of tiny 'tokens', would get my code looking clean, fast! " I was sceptical, but I figured there was no harm in glvmg it a try. Well, all it took was one load and I was convinced! TransBASIC 2 went to work and got my code looking clean as new In seconds! Now I'm telling all my friends to try TransBASIC 2 in their machines!"

• • ••• • • TransBASIC 2. w1th Symass, the symboliC assembler. Pacl<age contalllS all 12 sets of TransBASIC modules from the magame, plus ful documentatiOn Make your

BASIC programs run taster and better With

(MJI

140

added statement and functiOn keywotds

Disk and Manual $17.95 US, $19.95 Cdn. (... order card at c.nter and News BRK for more Info)

TransBASIC 2 UCieaner code, load after toadl" 20


. ·..·.·.··..:· -- -····'· " .•. ·. . .. -··' . .·.·.· " ·. • • • •• • •

·.·~

·-

, • • "•'•'"· • • ·......

~. ·,.•,.·.•,.·~• ••

• • •• • • • • ·

• •

• • •• . ·

• • ' •. ·· ••··~

•.· . .. ...... - ..... • ...... . . . . . . . . . .• . :· · •

•.· ,

. . . . . .. . . . .. .

.

.

0

.

...• . · . · .

..

. . . . . . . ..

. -.

·

·. ·.·.~· .

• •

•••

• •

·•·•· . .·.·•·..-......-.·-· ..·.·.·.·.·····-:·.·· ..·.·:· ·.•.....·~·.·.· ···-·.·.·.....-.... ·.·.... ... ·..·•·..•.....,., ........ ·. ····•••· .... ..... ..·...•.·. ,. ···~· ·,

.

........

• " · ' • ' . .. . . . •

.

. . . . .• •• • • • • • • • •

••

• •

· .-

••

• • •• • •

. . . . . . . ..

.

,•_

•••

0

• •

• •

••

,

• • • •• ••

• • ••

• ••

••

• ••

..

• • ••

• •• •

••

••. :,.•,•,. .•.·.~,.•,.·"~."•, ·.::~·.,•.,•·,• .•••.•,..,.•.•.•.•., •.,•.•.·-.•. "•" .•.• .•.•;••.•.•.·,•~·· ·'• •.~.·.·~~··-'•' '· •"• .• ~·.•,. ""• ~• ·-~•,•. •,•."•, ·...·.. r.·,•.•.:•.·.·.·:•'••'"• .•. -.. ..•.· •.·. •• • • • •"• ····-·~ ·.· . .......•.... . ... ·····- -·-··· •• •#•• "··'"· · · ··· · ........•.~..• . •... ........ _............. .·. •.·.·•.·. . ... ... •

• ..

• •• •• • · . . ....

• •• •

• •· . • •• . . •••

• •••• • •

• • • • ••• •

•••• • - , ... 0

• •• •

• . ·.

• • • • • • •• . . .

. . . . . . . . .• • • • • •

.. . . . . . .

. . . . .. . .. . • . · • •

.

. . . .• • • · - •

• _ ,._. . . . . . . · . . .

• ...• . •..... ·.·.: .

•••••

• • • ••

• -

.

.

......• •

. . . . .. . . .. · . • . . : ·

• I,

... .....; .•••• ••• •

••

..

..

... .• • • • •• .·.·· · · ···· . •

..

So all your friends have IBM's and Macs?

API

Now you can feel sorry for them.

THE SUPERFAST PARALLEL DOS FOR THE COMMODORE 141121 AND 1641 You're a Commodore ownw. You'Ve gd grul colora and fantastiC eound, dynamic f••ur.. thm IBM and Mte ownera can only dream ol.

Sample RapI Doe futurea: • All dllk eocne oommanda execute at aupe!fut epudal • O..igned to ·~ muh'* drivesI • On board DOS Wedge I Sc:teen Dump I M·l MoMorl • Centrona paralef p~Wer IYppOI1 av lblel • F~ Commodore CIOtl'lpldM & yow cattridge port II left frMI Rap IDoe Profeaalonal f11turee: • Gtvaa evan faster diM eoc:.u than Rap.Ootl • IK RAM ndt buffering 8nd hardware GCR converaionl • Provldea 40 triCk extension (74Q b6odl.a FREE)! • Adc:tt 20 NEW dltk commanda (1oc* filet, rename diak. atc:)l SPECIAL: RAM80atd'- eaplb'Riu are bull InI Rapil)oa Pro can UN Mawridt"" paratn..II'S to beckup eome of the new11t, hotlut tiUM on the market today I

You'Ve got II all • eJCCept apeed. Wei. you don1 have to be 11ft in the dutl anymore I Lawrwa KW. one ol the ongNI ·eaument aop·, bnnga you the mo.1 •at~

development In the hin>ty ol Commodore computera • RapiOoal Padted with fe•ur... Rapeo. wll tranlform your alug mo a bullet · just take a lock at the d\alt belowl 0.. your R~. tt..n invila your IBM and MIC fr•ndt OYif to ... your •new- •'P If computer. But be nice • m&e ture they're altling down blllore you blow them awayl P•rel'-1 Ut/IIU.. Did A-..oU.b'- F« 8oth Function

Normal DOS

RapiDoa 15pzn*e

v...ton•

FbpiDoa Pro

3 F?J?'f'd3

• 0n11 •••·•

Your system

1

RapiDos - Only $49.95 I RapiDos Professional - Only $119.95 nt•• '"" .,.*" • aawan~ t:44 w ,,., 'ct ... n 1..oo.,.., ll•t-.lfx ~ Commoct:vw ~.-.. tu tn»• • _,.. cor • ct w lor wu«c ~.00. l'llq&Mw • todtllad tr.fJIII ROM U4 ., 'fOUl C44. ~ ,. •••'Y ~.Weill~• ., fie Pldm.,., •• .., The Rttp;Dt»

~ duw cannlw •

erat7mu •• GbR ,. our,. ot

THE MSO MASS OUPUCATOR ONLY $39.95 , .

INTERNATIONAL

~ ~FREE!

fie,..,,...•.

qiiJ ~In Euto,»l

• . . . . . .. ..

.


The Edge Connection Experiences with a RAM e.qJansion unit b'•

J~l

M. Rubin

On Boxing Da) (not a holida~ here). ha\ ing looked far and "td~ tor the m)thu:al 17!50 ~ 12K R \\1 E:>.pan,ion Unit lor the Commodore llR (" hich appc.a~ to ~ lln eternal back.· order). I grab~d a 1700 for 9() (l \). Contrnf) to the promi'e' on the bo\, I rc"·ehcd neither a "ne"' " CP; \1 di,J.. nor the R \\1I>OS <.oll\\'arc: hut, 'lncc the price "a' right and I ;liread) had both piece-. of soft\.\ are, I did not 'cream too loudl) . ne"e~t

\Cn>ton ot the l S C 11X Kcmal t ff'XO contain' the idenutymg vuluc SOl ,and th~o: I>MA Kcm:ll jump at FF50 jump:. to the ~tch are;a at Cf-!iOI the~ three bogs \.\lth 0\t\ acce"· FiN ol all. a~ pre\ itJU.-.1) noted in thi~ ma£aLinc. it tcmporunl) 'hu" ott m:t-l.;ahle mterruph (sEll "hteh could force the Cl28 mto 81\'\K 15 ~fore the deferred 0\t\ acce,., i-. consummated. (If bit 4 ol DHll is not set • "hich i' the wa) BASIC tklCs it • a DMA pnx:e s i!> not "':U'ried out until the ne'i \.\rite to FRIO. But. the ~\U nnd IRQ rouunc~ \.\nte to FRXl. toctung BA'"' 15 so. af the) hapf!~:n at the "rong time. the OM I\ tran.,fer tak.c place tmm B"'K 1~. e\cn if )OU wanted 8"'"' 0.1 The

"'II

Of coul"'C. one c--.mnot '>hut ott non ·ma,lablc interrupt... <,()be careful \.\ith the RE..<;tORI. L;c) und p-.eudo-RS·l32 acti' 11ies. Second I). if )OU requc't a D\1,\ acti\ it) u'ing BA' " I R,\ \1 , the ne\\0 Kcmal routine temporarily "" itchc' the \'tCJ0\1A RA't B ''"- reri,ter (bit 6 of 0506) toR'"' I. Therefore. "ith ne" Kemal 12~h. contrat) to the RF.ll manual. )OU do not ha\e to do thi-. )OUI"'iell ~hen )OU do a H\SIC fl!l CH, ST,\SH Or S\\\P imohing B·" K I RA\1 - ju~t usc the 8 \SIC " 81\'K I" 'IU&temcnt. Ho\.\ t:\ cr. the nc" Kemal t:311 doe:. not temporarily '"itch to SLO\\ mode. so )OU "ill ~till ha\t: to ~"itch to I \IHl )OUr· 'elf. !Actually. I>~" operation.. seem 10 \\Oct correct!) in FAST mode, hut the Si!,l2 get confused Ul the end of the proce 'and tend to drop into the monitor. I

old . .-c.all

nmo • tnaSI:

, fflIS bd fO f'l lda lf'!fO, I I pt COD.hfiiitlOI nl01 .mal 2t fe &lid Uf• : .w out i(o bit . ff111 11 tu : coof~at101 nbe to a·Aqiltlt . ff'l~ 4e fO 03 JIP fOlfO : j'llf to o 01 ra . .

'*' dla·c.all tmso • kfiOI : .fc:fiO ad 06 d5 lda USC6 : am tM ne ra bW 01 tM met .fdU 41 plla .fdl4 5d n f'leor $ntt,a .fdll 2t 3f &lid Ulf .fdlt 5d n n eor smo,a .fdlc ld 06 d5 .u fd5K : twa 1t to but 1 for bW 1 opuaueca .fcflf . fdt2 . fcm . fc:fN , fc:ftS . fc:fM •fc:ftt . fc:fta , fc:ftd

bd II

n n lda $mo.a t&l

01 pt1p 11 111 20 ft 13 )&t f03fl 21 plp " pll ld U d5 Ita 14546 60 ru

: am u. .una 01 u. IUd : llllt off lrq'a Olllt 10t s '• &lui : do dla : ell if~ 1 ~J tcow! 01

: noco;u old nc ra blok

.eom .. ot ff ldl urn •OC30 k 01 dt ltJ fdt01 .eom ld ot tt .u moo .eom a. ot ff .u tftOO . OC3fc 60

rt1

Word prtlt:e"ors \\hic:h ullo"' )OU 10 load the \\'hole dictio· n~try into the REU and then uutornaticall) check )OUr spelling a' you t)pe. 'uch "' Puprn lip 111112H. and the nc\.\e..t "cr,ion of \\ orciPro I 21\. \.\On ' t do thi' autochecling if ) ou on I) h3\ c 12XK ot RHI. but Papadip can load all the O\ erla)' ) ou "ant into I he RHI. GCO\ 2.0 and GU>.\ I 28 "on ' t allo" •'ou to u'e a 11MK REU a., a RA \ldi,J... but 'ou • cu11 configure 3 l:!t\K RI!U lor lal>t rcboottng after e\ltmg to Br\SIC. and/or to '(lCCd up Gf.()\ application' b) allo\.\ing the \ UR 0\ erla} 10 he stored in the Rl:ll. Fa't rebooting doe~ not rc~uire the cup) ·protected GEO\ L;e) dt~l.: - on I) a di,J,. "nh the d~JJ.Iop. Gwproarammtr'~ u~rdcbug~cr, a' "ophi ticatcd a dehuggcr 3 i' found on man) main· frame . "orL; line on a I:!RK RE .

Finall). under the uld mutine. there Wlh !>tlme trouble "ith the 110 chi~ ($()()()() Of+ F) nl\.\ 3) ~ ~ing in contt:\1 during Of course. all but the earlic~l \en.ion~ of CP I aliO\.\ lhc USC a Kemal 0\lr\ operatum. cau,mg erro~ (and likely. cr.L,he') ot a 12RK RFU "'a R"\ldisk. de\ ice M:. :\ot all c P 1 ~oft· ~hen )OU tried to usc I> \II\ operation' on RA't under the 110 "arc 'uppon~ de' icc M:. ho\.\C\Cf. )OU c Llll ~cl amund thi . page. The ne" Kcmal routine h:~.e, that . FiN (due 10 Ken f:lippo Miting in "'o'em~r 19

-

TIOIIIOCior 22 Aprtl1989. Volume 9, Issue 4 .................................................................................................................................... ....

~

~


FOG. P.O. Box 347.&. Oah· Cm. California 94015 • • U.S.A .. Telepho~ !4 151 755.::!000) )OU can Jl''le the addn:, .. ot the RA' ' di'l.: handler into the oru pointer uddrc" of the logtcal tJj,t.; dme )OU \\ant the R \\1 dt'k to he. For C\.umplc, 10 the X ~cember 1985 BIOs. di'l dri'e C: h.h "'table entr) at OF805h and the R.-\\1 di-.l handler i' at OFB96h. Lile the 650:!, the ZSO li!.;c, ih \\ llrd' lo\\ -b)IC lir.t. Ergo. ftX;IIOR\',

conf poke

tbd5•~6tb

\\ould 'et/changc device C: from de,icc 10. drhe 0. to the Rr\\1 dbt.. !11'801 h h de' i'e A:. OFB03h i' device 8 :. nnd ~ on. If )OU \\Unt. you can put thi' line in a pmjiles uh file. \O it uutomaticall} happen' on boot. Or, if }OU arc a fanatic. you can either lind the: patch addrc-,, in your vcr..ion of c~"·-~H and modif) it or. if )OU ha\e the 'ource code for }OUr BIOs. Hhe "lurcc: code for one uf the Occcmhcr 19l{5 BIOS' i' included in the CP 1 de,clopment P••d:a£cl )OU can change it and rea....emble it. When I e'amined CP\1+ u s \\llh .,id and the Cl28 nathc·modc monitor (\\hich. unlile 'lid. ha' a hunt function). I did not find an immediate!) ob' iou' patch .,pol. 'tl thi' chore i' Jell a' an e\.erci..e to the reader. According to Millo' Garum,Lcgh) \ C!•,M+ memor) map (Ji-cJil\cJctor 9::! or Ttrin Citil!\ 128 i"uc :!II the cntl} for de' icc A: i, nt OFBOJ h in all ver..ion' of CP 1+ \\hich .. uppon thc RA\t c\pander · all ~cember and Ma) \cr..ion .... (Augu\1 'cr..ion' U'>C a difterent addn:'' but don't 'uppon the Rl-..ll. l Ho\\evcr. if you have a ver.ion other than 8 ~'ember. )OU may \\i'h to check the value of the RfU handler. U~: conf c1UIIIp

than one file. you can pip them together • making 'ure, if they arc not te\1 tile,, that pip i' in binar) mode. I for rciJtl\el)' 'hon file-.. there j, an ca,icr method not imolv-

ing the RHI • from Commodore oos to CPI'1. load the file in BA'\~ I. beginning at I COO. and then boot CPI\1+ and u-.e the C"P/\1+ program saH'I\\icc. To get a lilc into Commodore DOS. u-.c <,id or ddt on it. Mo\'e the urea from ~IOU to S03rF too higher area in memOI)' ('ince SO I()(). 03Ff of OA'" I are ordinarily in' i'iblc in I :!8 model. Nov.:. hit 'top-n:-.ct and end up in the monitor. Your file i' in RA'\~ l.l I can't get my 1700 to \\Ork \\ith m) old Cardco multicanridgt board. I don·, I.: no" if I hi, i' ju .. t a lacl of ph) 'ical contact or that the 1'0 e,pan,ion line' are bulle red in 'l'me inappropriate \\3) . I have trouble u..ing the Cardco bo:lnl \\ ith ~me (but not alll bank-\\~ itched curtridsc., '~hich U'>l! the OEOCI or OF<lO t/0 e\p<tn,ion 'pace,. Simon's B \ SIC "'orked tine \\ tth the Cardco board and u 64, but not v.:ith the Cardco board and 3 12M. lit "-Ork'l fine on the 12S without the Cardco board.l On the mhcr h3nd. both the 118 nnd 64 m<lde:. of Cinema\\are·., \\iJrpfprrJ (m} fa\'ourite canridge. right nO\\ l '~ork "ith the Cardco boord. and the ~ mode u.~' the OE(lO 110 'pace for banl '"itching. Unfonunatcl}. Ullrp· \f'l!t'd al-.o u,c., the SORX) frO 'pace. \\ hich i' the 'anle uddre,., a' the R,\\t e\pan,ion contrOller chip. '0 there j., no hope of ~ing both \\'c1rp,pud and a 17H :u the ">arne time • e,·en \\ith a different multi-cartridge board. {5wp th~ prc.Hn 1 Tlus

in from J~I:J The problem \\ ith rn) 1700 REll und Cardco cartrid~c turned out to be entin:l)

tbe~

Jll.\1

ph)'ical ·the 17<Xl \\Or!.' fine" ith it if>ou remo'e the pla-.tic outer 'hell of the 1700. Ho\\e\cr. be'au'C! of the SOFOO con· flict. ) ou 'till can't u'e the 1700 \\ ith \l'arp.tpud.

One C 1:!8 CP/\1 u">er. J. Waltrip. made .;.everal modtf•catton' to

Interrupts and the C l28 SO-column chip

hi' BIOS. The -.ource and object code' are U\ailable. among other place,. on fOG di'l 186. Mr. Waltrip ha' the R,\\tdi'k a' de' ice 0 :. and he al'o eliminated vinual drive E: and ~0column 'uppon.

There ha'i been -.orne que,tion a' to ju't \\hen )OU c.ut u..c an interrupt routine \\hich \\rite' to the CJ28 \OC chip. I've been pl£1) ing "ith thi' a bit. and my conclu..ion \CC!m' to be that :h long a.' the main pl"'graJll is not in an actual routine "hkh read~ or write' to the \IX' chip. )OU are \Ufe • pml'idrd that ym fcJI't" and rt' \IOft' n·<:i.\ tt'r.l 12 01ul S/3. the RA\1 addre" regi.,ter...

An REl aho pro' ide\ a way of tr.m,ferring lilc.. bci\\CCn Commodore DOS and CP,'\1. To copy a file from CP./\1 to C(lmmodore oos, pip 11 to the RFll and reboot to Commodore nos. On a I 700. the file begin' at bank 0. $0800. The dircciOI) cnlr). near the beginning of the Rf:ll. "ho"' ho\\ long the file i,. in the 'tandatd CP" dtrectof) entry method. With the 1700. each allocation unit " IK. and the -.arne 'hould be true \\ith the 176t Ho\\ever. 'Iince each alloc-.uioo unit ha' a one-by h! cntr) in CPI\1, if }OU ha\'e a 1750, each allocauon unit mu't be 2K (512K/256 entrie..l .

For wcll-bchaved program., (~Tam' \\hich 'laY \\ith the normal text <~Crceth Md only u..e the !itrttn editor RO\t routine., to rcad or \\rite to the \"OC) )OU \hould be \Ufc u.' long a.' the high b) te of the program counter i' not SCO. If you arc u...ing a program \\hich ~ "'eird thing' to the voc chip u.'ing its O\\n RA\1-based mutine,, 'uch ll\ GW\ I::?H orB t\IC R. nll bet-. are oft.

-

tax

Going the other \\a). liN boot CPi\1. To create a directOr)' COli) up 10 ~K. U'-4.! SU\ e to '-J\C a tile 10 the Rf:U. If )OU ha\e a big~;er file. you can create more than one file. each in multi· pb of the REl allocation unit (I K or 2K). 'o"'. reboot to Commodore oos. put your file 10 17n memo!), beginning at soxoo. bank 0. and reboot CP'\1. Smce the RA\Idi'l..: 'urv i"~ a reboot. )OUr file \\ill nO\\ be 10 de\lcc M:. If )OU ha\'c more

l d.a $107 , X C8p

l$cd

bne ok

;.p $ t a65 ; old izq •

Olt,

23

your coct. here

April1989: Volume 9, IMue •


~orth

America.) Th1 could east I) be sold for 511 (l ~I hst and \\clllld h:a'e all the sound and grnphics la\.llllie~ ul the C64. And. it \\c.,uld ghe u-. Commudurc M-hit h.tc.:lcrs a nc\\ almo\t plrate· pnJOf mstalkd hasc tor" htc.: h to pnt ram game,,

If )OU \\ant to be a b11 fer, )OU can male ure that the h1 h b)1e ofthc PC I!> not bct\\ccn C400and Clll· clnc la.'it p.~~gc und a lwlf nf OKlO h u pat h »rca -;() there might be MllllC· thmg h:l\ mg to do "uh lhe \ oc m the future). Sm e the com· putcr pend., much of It t1mc m 11 waitmg loop amund ~110. th1 1 m h better th:m )100 CFFF. I ha\e mchxk--d n mtcrrupt-dm en clod: mutme \\ hkh "ill run in cnher Ion} or eaght) column te~tmclde. lit). "anna bu~

mlt'ITU[It-drn~n

Clock. rc: CIZ

clod mutmt' for -10 or 60

C'l1l11mn 1t'.tl moclt'.

•••••••••••••••••••••••••••••••• • clcd progra for c 1.21 • • • worb i.a •~ or ~ • • • ' fc) lNt joel • rea

a cheap orphan'!

te~

I nouce that

~"

one m:ul '~ house ( meric3n Doign BO\ 210, J-ail"\ lt'\\, J 07022, telephone 1201 l

••••••••••••••••••••••••••••••••

Components. 1~0 9-1 1-SOOO or c8(WII 524-(~II'JJIS ~cllmg nd ol Plus/-ls for 9.95. These are rctlUllal machines. but the'• ha' -e 1-c."Ctl tcsle\1. What can ) ou ckl "ith a MWI/4 (no an:u<mtical u~uun ple:L'ie)? Th re j,, or\\

-

coU 10 • U1

: cvrtDt tal•

• e> wnu • to I

I

II)

"* dlta n;iaUr 'f'l5l: I

wtltt I to

"*J•ItU

(31 ) I

nld '*date (31) rtgilttt 1A • ' I II) fMd fdr: rtgUttt I I 1A I

Cahlom1a. :\1) loc:~l lt~) ·R·U , JU't do"n the n~atl Irum W)all l~lrp's tombstone. \.'Drric~ a \\onl pn!Cessor and an accounun p.l('ln e ftll' the Plu$/4. Tbcrc :.ue ad lor \-:tnou progr.uns. mcludmg an assembler, m the p.1ges of Cnmmotlorr Compmmr: llllt'rtratwnal. Inc :o.scmhler i sold b) a Bnta!i.h oil are house. Su~r')()ft. \\httse pruduc:h nrc Mlld m the l S. b} Sk) I .., Electric \\ ork'l. "o une might ~he\:l '"'h rl ·m Tbc Plus/4 can run nmn} UA IC 7.11 graph": pro~nun "nuen for the 12 • lc."rc) .

It1"'1rd c ~ 'fiCtor

oUi.rq • St.aU

u;w •

$~3:.

l2l

U. tGit 1M

ciA clod 11

tia·~

\\ h1lc the Plus/-1 onh• has (I column~. 11 does ha' ~ 1 M!i I 1 AR 1. ~ 11 might llC uo;cd h'r tran-.tcrring hJe., "''ln11n Ccmt· mudorc oos to uthcr m.xhmes ut u hi(!h haud rate. (P,lpm lip 111118' tel~om""" 1\.ill•un module and (irol.a rr both ha\e 96(111 b.1ud scum So. ,f ynu ckl "-lltle CIA bit t\\illdlin • mthcr th:m u ing 1h, k.trn I mutinc-.. it ,flould be ptli,tble to use the C I ~M. and ma} llc C\Cn the C6-t. at 9(.,(1() baud. I !IU • p«t that eH•n \\lth the fanc1e 1 h1tl\\1ddhng, }tlU'd 't1ll ha\e to hut ott the CI:!K C64 4Ckolumn screen to ~K:hic\C uch (lC'Cd • and )OU mi11h1 need a guodl} number of nulb tf )OU want to n1llthe Cl2. 80-eolumn screen.)

·-----------------• • pat 2 bed 4iflta I ' c:vr.t JCZ 11 ' JIOI1t1M 1

1) • at CUrMt

• •

·-----------------pti:tit UJ

a:

lu lu lu m

t•o•

:

doable q.otu 11ut tochcata mit • alp•htut bit Mt , 10 rtftrlld

JU wtltit

hll.'lll). a rcpl) 10 Info rrugallllC's rumour cohmm. A xmlinll to the JanU3J)Jl -ebru:u) issue. ConmxxJore wu.' thinkutg ol punm out a ,u~-r-64 ur supcr-12 • IUllJ one ot the 4UC5l~ the) "~ a ~mg was... llo\\ l"\.llllflallble mu'l 'uch a machulc: lle !" Info 'aid, .. J(X)'jt •·• But thi-. \\t'Ukl pm:ludc 'uch ~xxhc~ a.. a 65~ If\. a built-in l ~KI nt DFJIII. u built-in 17!\0, u txult·tn JS' d1!J.: d me. ct &llu. I think th:1l 1f Commodore· 8 · bu hoc i \ 10 SUI'\ 11 must, lil.:e the Apple iG.'i, mme forwanJ "1th the tm~. lr 11 does. n "til \.'\Jnllnuc to !;Ct thml part) .. uppun . lr 11 ck~ 't, it "111. li~e the Awi ·hll hne. hl"\.'tlll\C ju't a \.'Ditridge gWltc mac tunc.

tJ1

priatl lid l $0f ora t•o• liP wt1Ut

·----------• pat •

JCZ • •

"e. •• JIOI•tl• •

ftl• at c:vr.t.

cvrtDt 1a n

• data 1A • • for U·col- tan• '

IUIM pol1tiM i.a I

• • • •

·--------------wntit pba lda coW M

B) the ""}· tf Commodore 1 mterested 10 competing "ith \.-artndge game rru~ehine . lK:h as the ~intcndo. 11 ~c.xdd hring out the Ma\ Ma hine. (Thi' wa' a t;ame mxhin \\ ith \\ hkh the C64 i Ufl\\ard compauble. It \\lh OC\Cr brought out 10 TraniOCtof

40-col- 1f 0,

~iflll

wtitdlt • kd:l wtltrtg • wt1~t•2

• Pfu,/4 uscn' gmup Dl P.O. Box HWll . Mon·

u

!fl tD pla ]lip

2A

wnt.dat Aprl1919, Volume 9, laue 4


.,

p1a

)at ptaUt

w

lda •••• )at •nut lda U.

: tctM ef MCoMI

pzi.Ztl lda I ' • )It wnut p1a

: . . blct IIi.. flat

.u sm,a I"..I

)at

...

__________________

,,

• fez ~

col-·

caly aU.t • r;:. wt .. n lOt do119

lda ••• •, ., . 11111 2c : &lip ..t two lda I p' &'''

• •

• cytHj Ill~

• 1'.01-kC

'

• ' • •

:o

tM wdc ri¢! ' to fdU 10 pod •

=ld pr~y pt MJ wi~ ScdDI to $cil!f ia buk I.S - Uart ia • rtfu.aa to ~ ia k5CO P1i1

• a1Jo u.n u a pat~ aru • &t tM eel ef $oaOO Jll9l • to kflf llhicll coald • ccau!a 'Ide nfuwet 1.1 • tM htut.

)It IIUUt

lda I a ' &'?'

• • •

'

• • • • '

··------------------·

)at •nUt

,,__________________ • 10 col-. oaly··fill 1.1 • &ttt*tt ~ ~~~~ tM • Clilrct colo:,

I.ZI

ldaU Jl% •ntnv l.d&lfl ad l$f

JIP oldilq

__________________

• for 10 oal_, oaly, • pat U. .u- of 'Ide • nr;utu 112 lid $13 • • tM ltG

• • • • •

an tol If to wntt •

tM llllfla1a9 ef tM • • 10 colan • to - U.• nfl.ltt.n • • t11

aa••· " .•90." til.

·1

· .u- ot • nvuun

• $13 lid 112 off tM tud

)It

pla

la n

ecllt

mtnv

mnv

do(

wntnv

col•• ad •• col_,

: llcv1 . . . .

: IIRn

: &1=tu

··------------------wco l.dlll2

..

ldalfl Jt1 ldiOO.I

bpi :1 l.d& klc

Clip

en

: lMitappu . .

ora

I«•

l.d& •••

mut

TrantOC:tor

old1rq

Jtl $41'11

lda t•:•

WI u.+l

)lip

mtnv

baelldlt l.d& ~

)I% pn&tlt

)tr

•'

•1

jar ptilllt lda I' :'

JU wnut lda ua+2

3ar

or .,..

• roatlDU for

l.dl., lda ua+l plla ad 1$1!

writnv

• color ra 111th Clilrtlt. • • • conor cole:. if " an ' 1.1 1Mtf11FPU IIOdt, tut t tM 1M: CUI rtftt1td • • •a" to •a• or '"pa•.•

• •

·-----------------• CO col_, oaly-·flU u •

tya

.'

du

plla

• c•

l.dl 1$13 ph

)ll r~llf

)It

jar wntdlt

• 10 col- caly-·Ub old

ldll U12

jar plla

.,

147 Ill

bile :1

.

I.ZI

Jn wntnv

lkC blt ok ClpiSciO bJaok

Uy )n

ldall lda 1$12

Clip

• lat::ll •

·------------------

coliO ta lda 1101,1

,,

bftu

Jtl

:

MCnMt

«Oc

baelld.lt Aprtl1989; Volume 9, 111ue.


The C64 Power C Shell With notes on nlodifying the shell f or REV users b) \dria n Pt!ppcr prc\KIU~

ankle c"On The C Side ... Trum.Jctor. Volume 9, I <.uc II. I hinted I the :thllit\• to u~ Po\\~r C \\llh a R-\\1 dj,J.; in a 17(~ Rt • hut ga'e M delllib. U"ng the RA \1 di,t.; ,oft" arc pmHdec.l "ath the 176-l require~ a :!56 h) tc pa~e ol regular C&l R '\1 to he set a'idc l"or the intcrfa c to the R,\ \t dhk 'ultwurc. In the tand.trd p,l\\Cr C en' irunm~nt. it j, not (lll,,j. hie to dtl thi~ . In a

What l"ullm\ ~ "111 gl\ e 'llfllC ba L.gmund 111 the e\plan:uion of mal.;mg the RAM d1~L o;ultwarc \Hifk "uh Po\\~r C. It d1gre"· c a hit, but thi~ hould help lead to better under..tnnding ol" the Pu\\cr C em mmmc:nt '"general. f.\en reader.. "m1 d(1n't uo;c Po\\er C n"Ja) find this mtere;.ung amJ helpful. e'pt'\:iall} it the) are con tllcnng purch:t ing it.

> "111 usc the \\onl lullu\\ ing 11 a' the name uf a -.equential file. It "ill ;mcrnrt Ill create the tile on the \\Oti.: di,l.;. to recei'c fllllclard ollf{'llf tnr the command e\ecuted. A .,pec1al ca-.c h '>>'. "hich "111 cau-.c 'tandard output to he directed to the prtnter. The fiN urpument found j, taL.en a~ the name ol a command. FiN. the 'hell che h to ~ 11 thi' 1' one of it' O\\ n built-in C(llllm3n,b:

1: li t directm) of \\Oti.: d1\t.;,

t..: h\1 d1m:tor) ol ) Mem d1sl.:.

rm: remme (!.cmtchl a tile. The Commodore M Pn\\cr C hell i~ a mxhine language program th:lt hl3d~ :u II , and occupie" the memo!) almo't to 1. (1(1. It h deigned to \\trl: ea~ll) \\lth one or I\\O dri'c' at a time. It rc\:ogn11c' a worJ. dme, "here user file" l'ource. obJCC:t and c~C\:utohlc) hould he. and a S)Strm dri,e. \\here file-.

m\-: mO\c I rename) a hk.

d i.,k: 'l!nd urhatran• d1,1.; wmmand to \\or!.; de' ice.

'U\:h lh the d1llcrent p.t sc~ ol the compiler. und ohj~t hbraric" are C\pcc:tcd 111 he. 'The~ ma) be t\\O dri,e., in the 'arne cdual dme) tlc'lce. or dme' '" ~parate de\ ICC' The default ct>nltgunumn \\hen the 'hell i' run j, -.u1tablc for a 'ingle dri\c '):.tern. und ha' hoth u"igncd to the 'arne driH: (de' icc It tlrhe 01. Thi' ~tmtiguration j., U'l<lble. but ncce,,itates u lot of di'l.; '" apping "hen ~.:c,mpihng and hnt.;mg prognam'>.

load : load. hut don't run. an apphcation program. "ork: set m di'PIJ) the \\llti.: de' 1cc and d"l.: number...

\ hht ol these command~ \\Ill u~ nthcr argumenh that rna} be pre'l!nt on the command hne. For inMance. the I and I comm. nth \\Ill usc an O(\llonal filename pattern. Detail~ are gi\cn in the p,,\\~r C m:mual. The uutput redire\:tion "ill \\Oti.: \\hen appropriate. to send output ce.g. a d1rectol) Jt,ttngl to d1'k or printer.

Onc:e runnmg, the hell reuth line~ ol u..er input from the ~rccn . It~~ the linc:s into "orc.J (.;eric' of non-blank charactc~). g.tthenng them • .., the 'argurnenh• to th comm.1nd to be t'\CCUted. Genc:rall). each \\ord become' a o;cparatc argu· rnent: the Iolio\\ mg \:h31'DC'ter:s cause cenain e\ception': " "ill tum a sene ol ch:lmctcrs. indudmg hlanl.;,. mto a ,m. gle argument. unttl clo ing double-quote ~~ found.

If the first argument i~ not one: of these built·in,, it i' ~umed to he the name of a user pmgrnm . first the "ort.: di l.: 1 :;carched tvr a program file named D'i the fiN argument ,uffi,ed \\llh " ,,h". II 11 I' not found on the \\OrL di,L:. the S)'· tern di\1.; i:. sca~hcd . If found tm one of the l\\0 di'L.'>. the prollnlm j, loaded at addres~ I XOO, and called h} the 'hell n' a 'ul'tmutinc.

< "ill u;;e the \\tml fullo" ing it lh the n:&Jl'le of a :-equentia1 file. It "111 loot.; lor the tile on the \\Or\; di,l.;, and open 11 a' stamlurJ "'f'llt fur the command C\CCUted in rc'pon~ to the cclfllmand line. e11her the '<' nor the file n:tme are a tu:tll) pa,scd tb nrgumcnh to the command. 26

Apt111989: Volume 9, laue 4


Thi' male~ Po\\cr C a 'Cl) ta1lor.able en\Jronment. If )OU can C\pre "a l"Cnain cummand a' a C pm!Jram, )OU can en,. ih• add it to •\our a'ailable ' \tlCabular\• ', lbe number ol argumcm~ lound tln the Ctlmmand line i' pa,,cd tt> the main() rouune ol the C program a' ih liN arsument. "ith a pointer to an arra) of chnr.tcter pointer\ to each of the command line argum..:nh being pa"cd a' the 'ccond (lhe tr.1ditional unw and urg l'). All program' read from ..tandard input and "rite tu \tant.lard output b) default Smw the~c can be ·redircctl!d' on the Ctlmmand line, man1pulallng tilt:' j, e'peciall) ea')· Se,eral not·'>o 'imple C application' arc 'upplied in 'ource lorm t10 the Po"..:r C t.li,l. induding a tnt lormauer. an object 11le libral) editor. a 'Iiiier' for adding page heading' to 'oun:e file' m preparallon for printing. and a program to 'earch a file for a te\1 palll!m. Po"er C ha~o another feature to .. peed thing' up. Sam;e the 'hell buill·in command, do not U'>C the Rr\\t lrom SUmO on. 8 u~r progmm that ha.. bi."Cn loaded there remain' untouched b) them. Therefore a command program \\ill not e\cn be reloaded from di,J.: if ih name i' the 'arne a' the Ja,t u:>er application run (tlr looded u~ing the load command.) 1lli' ~Jll~d' up the rerunning of a pmgr.tm, and u'ing the load command allm" -.tandard input dJta to be on a tlittcrcnt tl•'l.: from the program even on a une-<Jri\ e -.ctup.

S17fa: number of de' icl! containing ')"tern di,l. 17th: 17fc: 171'd: J7fc:

$1711;

h can u--cful to in,pec:t thc->e location' from C program,, For in,tance. )OU may want to ...uppre'' prompt' if 'tandard input ha' been redirected. Of couN.:. thi' ~ill ha\c the di,advantagc ol making the C '4-lurce Commodore 6-t dependent. In addiuon. a fe" run-time routine ... frequentl) u'ed b) C progr.tm' actually re ..it.le in the 'hell . There i' a jump table to the-.e near the ~ginning of the 'hell. each entl) con'i'ting of n jmp in,truction to one of the folio\\ ing mutinc..: XOc: XII: SK14:

R17: MIa:

Mid:

But thi' can l'au..c '><lme peculiar beha\iour. If a program i' run a ~cond time \\ithout reloading. ~/o/)1)/and 1t11tic data are 'remembered' from the previou' run. Thu,, C progr.1m' origi· nating on mher implementation;, that are ' paned' to Ptmer C often mu't be modi lied to e\plicitly initiali1e large ponion' of their global data at run-time Sta11c d.ila that i' local to a function mu't often~ mmcd oul\atle the function 'o it c:tn be ini· tiali1ed.

K:!O: 8:!~:

initialitc 'hell c·. /102 code c·Sfunrt_imt code primfcode fprmrfcode fprimf code t. · ~c·rc· code (part of ~rtdtclr()) ('S2/02 code

The c$jimc t_init routine doc' qukt. set-up for a C-callable machine-language routine. It i' u'ed by the prim/ code. actuall). The cSI 102 routine ...imply pu'hes the accumulator onto the C run·time \tad, (the pointer to \\hich i' located in la.Sib of 1ero page). The c$2102 routine ju't call' c$1102 to pu'h the 'alue 1cro onto the C run-time 'tact.:.

A' :tn a'itle. note that the ea,ie't "U) to get uround thi' problem (until the ol'lcnding program i' modified for the Po"er C em. ironment ) i' probabl} b} 1\riting the 'hone't C progr.1m:

Finding a free page ror the R \ \l di.,~ interrace The Po"er C hell occupie, or u'>l!... nearl) all the memol) be· 1\\CCII KO I and IKCXI. C application f'I'Ogram' are IO:ided at S IXOO. The) set up their run-time <.tac:l.. to gro" up" ani' from the end ot the loaded code. Thi' 'tack is u..OO for auromatic 'ariable... and ..orne par.~mcter p:l''>ing. and i-; pointed to b) ( Ia. lb) in the 1ero-page. Memof) dynamicall> allocated by the C Jibr.1ry routine' mal/or. n1/loc nnd n ·ullor i' tal..cn from thc top-of'-memol) d(l\\n. i\pplication' running under the PO\\Cr C 'hell potentially U\C all mcmOI). While the top-of-memol) can he set "ithin a 'inglc C pmgram b) the Po\\er C mutanc hi~lmu·m. ir cannot be -.et for the entire en\ ironment. Standard prognum ~uch a\ t"J. the c'lccllent Po\\er C te\l c-.ou~-c-lilel editor. and tc. the compiler command. \\hile the) are not C pro. gr.~m,, "all ttn:tinl) II) to U\C all the 8\ ailable memol)'.

aain() (

number of drhe containing') .. t..:m di,l. number of de, icc containing "orl.: di,l.;. number of dri'e containing \\OTl.: di,k. nag: 0 OICUlh 'tandanJ input j, U\ing the dcfaull Kemal c hrin de' ice: I mean.. ~tandartl input j, Kemallngil"UUIile NI. nag; 0 llle!an' 'tandanJ output 1\ U\lng the dcfaull Kerrul chrrmt de\JCC; I me<ll\' 'tandanl output i'> h.cmall~it."".lllilc It!.

.

• }

or, if )llU prefer. the 'hunc..t machine language progr.1m. u'ing an) u'-.emblcr package )OU lil..e. a' long ;h the load addre'' end' up a' II\()(); rt•

'arne the rc...uhant prugmm "unload". or 'C>m:thing 'imilar. and

e'\ccute it "hen )ClU wrun to force a reload of another ~nun .

Memor) usage b) C p ~ram~ a nd the o;hell

Ho"e'er. h) re" riting the 'hell. it ha' pro1 en p<h'>ible It> ~ueete a free page in there. 8)' carefull) compacting the code a liule. and re-arr.~nging the u-.e of mcmof) \\athin the 'hell. the page from S 1600 to S 161l lpage :!:!) can be freed.

When running. a C program relie' on 'ome location' in the ,hcJr, memol) area. among them: 27

April 1989; Vok.me 9, 1aue 4


fl" re nnd pc it) ing p3ge :!2 a." the mtcrf: c pa e. pnor lo lo:ldm the pcctally re\\ nncn shell and runnmg 11. all C program \\111 \\ork, and the RAM dt ..k i m de .,tblc sa dtsk drhe. 8) lu:ufmJ; the RAM dt k

Bits & Pieces 1:

he

Other pn1bl m (and n, l

The onl> hu he occur "hen the RAM dtsl.; docs not bch:n e qunc hkc other Coounodore d•sl.: dmcs. f'Or instance, a major problem 1 th tthe rc progrrun, \\hi h load nnd rurb the 1\\o passes of the C comptler ttempt to concntcnale t\\O Iiies b) sendmg the \\urt dtsl.; drhc lhe command:

5" ord

\\'ell, the RAM th k does not upport~o'Ofl atcnatton m thl' fru.hion. o C\cn though the '"" p:1 scs ul the C ~o·omptlcr \\llulll load and run pmpcrl) lrum the RA 1 lit k and t'rulluc:e com:c:t output una rc!lular di J,; dme. the linal objC\:1 file \\ould not be produced c:oiTC'Ctly 11 the RA~I dt 1.: n-.clr was being used a' the Pu\\er C \\l'lfk d1sl.:. Rut II 1 ulsu pusstble ttl l'e\\ntc the n ' comm:md tu pcrhtnn the l"OllC'.Jtcnatiun h> re:Jding and "ntmg the tile • It " ., "hilc duin thb re\\ rite th.11 I d1 "o'cred the bug m RA\IUO .U referred to tn "On lht C Sde". Unppil) that bug has been fhcd in the more recent R , \1 JlJ.., -L:!. RAM· 00 relea.~ can be lound •m 'anou BBS , and it h good to tl) and get recent n \cr..ion s )OU can.

is v.eoes ~·'~

~

r"''

""'

I I

I

J j

l j

j In general. though. must programs rcadmg or writing multiple lile on the R \t dt k re urpnsmgl) lo\\, I think tht- pn~~.. of "itching fmm "oding "ith one file tu another in the RAM dt :k sufl" re 1 'lUIIe lm\, Pcrfonrumce seem to improH: noll cabl) 11 the mput and output IS he:n 1l) bufferal. A pin

nt

\\ Ork in~ ~m lronm

J J

\

J

j

J

J J

nt

--

Alter "nung the nu~hl1cd M1cll, nd the 1 1 command, I combined them \\ 1th u ~o"'Upl~: ol other uppon utilitie" int(\ a compre sed an:ht\C tile, :~IIC'IIrrlm dfl, I ha\C uploaded th" to the Pm·hnc p,,"cr C Bns 1416·:!76·68 Ill. and I thmk it ma} b) no\\ be S\UIIahle lmm other piJccs tb "~II (including the 1rcJII\IICIOI lil\k l11r 1111~ I "UCI.

~_l

From th~ famous book of the same name. Transactor Productions now bnngs you 81ts &P1K~s 1: Th~ Disk/ You'll thrill to the spectal effects of the screen dazzlers! You'll l•ugh at t~ hours of typing time you'll savel You'll be Inspired as you boldly go w~re no bits have go~ before!

So "llh the nK~.hlicd 'IK:II, and the 1'C" comm:md, I ha\e a Po" er C em ironment in "hich the ed11or lo:Kh '"'tantl\, and • Utl.c:. on I) a couple of ~C'Oilili to lc~ e~r ~' c lar£C "'llln:e file <m the R \I d1,l.:, .\lthou h the 01.~ual compuunion·bound tdmpilation (lTUCC SC lln: n\tl much fa..tcr, e\Cn \\hen the source 1 on the RAM dt!ll, there 11ft' no anno) ing del:&)' "hllc each pa of the cornp1lcr 1 k)3(1ell. In adtlition. the concatcn:auon of the 1\\0 tcrnpornry Illes In Pf'ldoce the firu~J object tile i'i a lot Ia tcr. and u ot ea 1cr on the twd\\'lU'e, hnth d1~1.: :md dO\-c • Once cornp1led. C:\ en laq;e prosrnnt" lood an the ume 11 tal;es to '> pc their name.

" ExrraordltVflly fatthful co tM pJoc of ~ book .• ~ BAM a~ IS worth eM prk.t! of Mlmlssionl" Vanccnt Canbytc

"Absolut•ly lftllgnetldl" Ge~ Syscall

"If you mourx only ant! btts disk m 1987. malct! It this ant!/ Tht! fully cross-rt!ft!r~nc«J intkx IS unfofg«tilblt!l R«s Read. Nf!W York ns liT'S & PIECES t tHE 00:. A lof,tlaf fh. r'IISSOCIWOII WCh TQIUCD ~a. ~II: I OT~ nt.ll 'fOIJ

In fDCt, \\hen usmg Ptl\\C:r C \\Uh the RA\tll•'"'· I oltcn think it j, a grt'at tnhtue tn Po"er C lhat I \\11 able to tolerate u~mg 11 "ith regular dt~k dri,cs 1all. TranaoeiOf

OisJc sa 95 us. s9.95 Cdn. Books 14.95 us. s 17 95 Cdn. BooJc & Disk Combo Just s 19.95 US. S24 95 Cdnl

28

Aprtl 1919. Volume 9, 1uue.


Inside Geos 128 The info you needed and couldn't find ... b\• \\ illiam Cf,lc:man Gro for the

Commcldo~

I:::!$ h:l!> been available tor quite a nnt.l impnl\ct.l \CI'lllllfl (V2 Cll ha.-. ju t tx.-cn

(iraphic doubling

wtule llC.l\\ , A OC\\ released. Unlununatel.) there s11ll are H!l) lc" apphcattofh \\Tinen !>f'C illcnll) tur 11. ~hht arc 'impl.) CM Gl us program' th:u "ill run in 4th<llumn mode. on~· ul the hig~e't oh,tac.:lc' has ~-en a lad; Ill mformauon . flu~ :.tnidc "ill auempt tu remN) this snuauon h) pro\ lthng all Ill the mform3tion rtquii"CC... to pm~ram in 81kolumn nlOdc. ll~ere i'n't enough room to h! h <JI o pmgramming from scr.uch: therefore. the ~dcr is DS!>Uillt'd to alread) he trumli:tr "ith <•Efh pn~r.un­ mmg on the CM.

~ RO-column sen.-en "·

ot course. '"icc u' "ide a.' the 4(1. culumn screen. Gl O\ pro' it.lc:. 1t mcuns to automaticall~ dou • hie the "1dth and/or X flO" lion ul all graph1t:' dr.t\\.n on the screen. The hi~he.'t three h1h of the "idth/X p<hition h}te (or h.) te 1 are u~d fur thi' a' folio"\ : ait

15 0 1 1 0

\\ hich ,., "hich?

Before )OUr apphc.111on can do lh Jllh. 11 nctih to l..no" \\.hat computer ~md \\hat Jll(ldc it i' runnmg under. GI.Os (through · out thi~ ~1nidc the term GicOs i, used to "ignil.> c;ros 12X. unlr !> 'tatcd othcN iscl pro\ ide~ t\\.0 \1lriahlcs tor the purpo-.e of d1lh:rentu111on.

u 0 1 0 1

13 0 z..... X val.- u ia (poa1t1. . yaJ.ue) 0 z..a.. X val- aa ia ( nt19a U.Ye val. ue) n X • X • 2 + n . Doubled poaitive. n x • x • 2 - n . Doubled nt19au.. . .

1'.om1ally }OU >Aon't ucce.., these hit' du-c'tl) hut "ill in..tcad U~ the nC\\. GEOS con,tanh \DOl _\\ , \UUI _R, IMil Kl •:_\\ . and ()Ol Rl •:.R. S1mpl) OR the appropnatc c1m~tant or ctln,tant into the" idth ur X po~ition value. U!OC the h.>te {8) ctm,tanh in those reas "here a h.> tc (L-anll ':.tlue is required. i.e. icon tahk:.. llere' an C'-ample:

1llc firM . :wailahle to all \CI'llion (\'1.1 and ahme), i:. c128f"lag ( CHI.\ I. If bit 7 i~ set then the applicatitm i' run· ning undt'r en O'> I:!ft ~<liC th:lt the I:! [)(! l..lnp \\ill par;e out JlfllJ:lratlb that ~·an "t be run under the ourrcnt n~tlde or Ctml · puter (\\e'll d1 us~ JU 1 ho\\ a h1t latcrl hut the M l)c,kTop can't. II )UU arc >Anting a I ~M ·tml) appht.-utnm. it \\ill need to chcd; thi' llag to maJ.;c -.ure that it i'n 't tieing run under <II os 64. ll!iC th1' muunc to checL;:

ll)'lconTab:

. byte • word

thi-tny . .et.e1t 1oooau:_w

. byte

-•Top

firatlcon : • word II)'leon l e ft&dc;t I DOOa1 ·1L• yPoa widtb 1oooara_a

lda

U12

Clllp

YeCiiOD

• byte . byte . byte

bpl

lOt

. byte

bei!Jbt

lda

c121rlag

. byte

. . rvic.

lot : . .. . etc .

Itt I

,\Iter CM.

~-o~lhng

th1' rouunc. Hl't. "ill hrnm:h 1f running under o

The OC\\cr \Cr.i<m' of PwCitar alln" )OU Ill pa"' negati\e \ p<hllllln 'oluc,, In the-.c t:a~ .. .)UU •hnuld 1OR the t:on,tanh rather then oRmg them. Th1' "111 mamtam the h1t paucm required lor ncgati\c value...

The ~~md \Bri.1hle. called ~raph\lode. i available to Ci[O\ 12 onl}. nil \Cr IOib. II bn 7 i ~I then }<'U nrc in 0-column mode. \'inuall) all <ii:'Os graphic Wld te\1 muunes chccL: thh ,11fiablc tu tinc.J <JUt "hat mnde j., a~."lhc.

An astute reader "111 probJhl) rcnwL: that all) nwnher "hen muJt1phed h.) l\\0 \\Ill he C\CO. 'fhcreflli'C, )OU \\OUid not he 29


able to Ul"CC s odd po llllm' (lor dcurmg the ,cr·c:en, etc.). fo get around thi' problem 'lmpl) OR" ith \tn)t _n or \01>1 _\\ a' appropriate. Thi' "ill at.IJ one tn the tina I I'C\Uit. The unl) time )OU \\ill nom1all) need thi' b \\hen dearing the -,cn.-cn (i.e. 319 um nu:_\\ht>Ot _\\ 1.

While ull of thi' i' a p;1in for 'muller application,, it get' dam ncar impo,,ible to maimain "ith larger one,. Thh. j, "h) mo't large applic.ttinn' ha\e t\\o \er,•on' ·one fuu;t os CHand one f'1r the 128. The 128 memor) map

The routine u~ct.l to perform all of thi' miruculou' dl)Ubling i' called Sormuli:r.\'. h \\ill be called autom:uicall) h) all of the Grus graphic und te't routine, , In 40 column mode thi' routme \\ill RT\ \\llhout dmng un)thinr You can. il ) ou "i,h, call it Irom "ithin ) our upplicatton hut under normal circum,tance' (i, there rea II) .. uch u thing'!) ) ou ,houldn 't have to. Sec Table I for u more complete de"ription. Gruphic and

The mam Gf..OS 12M bank i' bank I. It i'l 'inuall) identical to the oms 64 memol) map \\ith the follo\\ing exception': I 1 The to area i' ah~a)' banked in. 21 The ~1\1U l.'1lfl be ~-en at FFOO. ;\) Bect~u..e of #2 the input dri\er ha' been mm.ed. The input driH:r table i-. -.till in the ..arne place (in thi' ca.\C. at the t'lld of the dri .. cr in,tead of at the beginning).

the ~

normal circum,tan e, ti.e. \\hen application code i, e\ccutingl. there i' no ctlmmon RA\1 defined. There j, a ..CI.'· tion ol the Gros Kemal in high mcmol) l'lanl. 0. When Gros need' to OK.'CC'' thi,, 11 ~h common R \1 high and thi' urea \\ill flip in. Und~:r

Wh1lc <i£ os 12M \\ill com:ctl) handle douhhng h1" regardle" or the \ideo mode. GEOS (H doe'n 't kilO\\ doubling bih from t\dam. If )OU tl} to u-.e them the graphic routine'> \\ill tl) to print \\a} oil the -.crecn "ith ob' iou'l> lou') re,ulb. fhi' male, creating a pmgmm that \\ill run in !!(kolumn 128 and Grc>S (H rather diltiCUit.

,,f

The ,ofhpritc -.ariable, re'ide in bani.: 0 bet\\een ~<).«Xl and I FFF. When the~ 'ariable' need to he ac'-"e'\Cd the Kemal "ill \Ct common RA \1 lo\\.

Probabl) the e;hie't \\a) to \\rite a totnll) compatible program j., to keep tract. of all the place' in the program \\here doubling bih are required. and pole the uppropriate 'alue' in during mitialitation. In tho-.e place' \\here the value folio\\ ing;

j,

G! o' 128 doe' not '"up memo!) to di'L: the \\a) the m:os CH

c.Joc,. ln,tead it u'e' 2000 to 9FFF of bank 0. You can U'>4! thi' area 11.' a butfer but if) our application lood' [)e,t.; Acce~­ ~rie, this area "ill be tr.L'>hed. There i,, unfonunatel). no \\ll} 10 pre\ent thi ...

loaded into a rcgi'>h.:r. tl} the

While at liN glance >ou ",,uld think the 128 ha' much more room thi'> j, not real h.• the ca">C "11h GEOS 12S. The acti.. e root mu't be in front R \\1 (bani. I I. a' mu,tthe 'Prite picture' and all table' pa,-.etJ to GEOs routine' \\'h1le there is u large area in bact. R\\1 tbant.. 0), it i' hard to u-.e and \\ill be tra,hcd b)

MyNoE1Ul. heX :

j•r bai

lda and

•t• 10$ :

Ch4tcltl>\lter 10$ $01,& • 00011111 $01,&

•• i f C121

•• it ' • • 64 •• •o clear the

Q.,,,

•• do\lhll09 bit8

The •runnable on' nag

rt•

Convert : •• pa•• : r2L- r4 ju•t like in Rectaft9l•

E\1!1}

GEOS lite ha, a 01-fi:!IIH..\GS. Thi' nag

nag in the header blocl at po'IIJOO tcllo; the GEOS 128 Kemal \\hat COOl· puter und/or mode the program c-an run under. Onl} the high· e't t\\O bi" matter: the re't 'hould be 1ero.

pha taa

pha

lda

lr3

jar

Nyllonulh.X

0

lda

lr4

jar

Nyllo~lh.X

1 0

bit 1

pla taa

1

pl.a

40-coluao .ode ool.y 40- and 10-coluao wode• Doe• not run under CZOS 121 10-column .ode only

!'tote that thi' nag 1\ not recognilcd b) UO) (if()S 64 \CNllO (\\hich i' \\h) 1ero mean' 40..Column onl} ). You can '>OnlC· time\ change thi' flag "ith intere... ting re,uJt... Both g~oAsstmblu and gtoLinlctr arc \Ct 'o that the) "ill not run on the 128. Ho\\ c\er. )OU can change th" nag unc.l the} "111 run ju't line! In fact. if ):OU don't mind a \\eird looking -.crecn.

rt•

1\o\\ ''mpl) u..e the doubled form" of all X po-.ition' and call Com·en before all call' to Rr•t lllllf:lc. f rumrRt'l'ltlfll:lt'. etc. Admmcc.lly. thi-. i' a bit or a lo.ludge but it \\Ort...... Tronsoetor

bit 6 0 0 1 1

30

Apr\11989: Volume 9,tssue•


)OU C'lln run them m , 0-culumn nK!dc at I\\ 1

c the nomUtl

thl.' tJc,.tmauon. When '"llllfl'"S memo!) m the

ne bani.: the

rc' crsc '" true.

speed! Sum e noa'>t~

buJt HidcOnhMou<.e•

lbere are a couple of sen u bugs that )OU hould be aY.are of. If 1300 i non-1ero. the ~ftspnte "111 not function rrup· erl) . Thh one i a real pam to Y.urt. round. It po stblc, stan )Our ~rruns I 1300 and 1tuke the ltr'!>l in truction .block I . You can then usc 00 to llff for buffers.

' 2F2

nothing

Pa.,.s:

Return: nothing

IX trm: a , , , •, , rl ·r6 •

Th1s mu11ne is used to cru'il' the mouse soft,.pnte from the <;Crecn "hen in !\().column mock. It "til be redr.1.,., n during the ne\t ~ .. through \1 in l.c..-.op. llu rooune "11llm' e no ellcct at C lied \\h.:ntn ll•-column mode. U Wll) II is~ IUt.'all ft'mp• /lulr \fou,t 111 .: the graphk mullne!i use ft'mpllidi' \lnmt' this mutine '' "nrthle ~if} tlU Illso call u graphic' routanc.

Smce the ltN 'crsiun ul <II O\ there has hecn a hug in the menu h:mdler that Jlre'ent menu fmm going p;tst position 255. nfonunatel) th•~ nlso pphcsto the 12 \Cr'!>lon" ~1rn m 80-cflllllmr nrmfr! Th~:-. one \.'an be I.JUIIC difltcult to \\ork around tl )OU U'il' laq;e menus.

I rnn up gain 1 th•~ pnlblcrn .,., hen I .,.,as .,., nung m} 12 termm.IL In 40·ullumn mode, the m:un menu e\lcndcd to 25.'\. In 80<olumn fll(xlc thts trnnslateo to bout 3 II (the B'i\\ font 1s bout 1.3 time as "ide as B \\:CO). Of course. it .,.,oultln't .,.,ort. Wh:ll I linnll) did .,.,,.s fuol Usr\utt~mfotll tnto thmlmg 11 \\3'> alwa) m ~0-culumn rno~.lc so that 11 \\OUid I" a'• return B'i\\40. It \\ons ltne hlc thi~ but the t«l· column menu t!i II\\1Ull~ tin). Uopcfull). \'2.0 h3 fi:~.cd these pnmkm • but I'm nnt holding m) breath.

MmeRI>ula -

' 2E.,

Pas : rO rI r2

- Pointer to tan of the SOURCE bloc!.: of merTIOI'). - Puamc r to wt of DE\Tt"" "no' blooL: of meniOf) • -Number ot h) h:' to mme. r3L - SOURCE Bani.: (II= bani.: U. I = hanlo; II r.\H ·l>I:S'II'ATlO'\ BanL (0= lwlk 0, I • b.ut1: I)

Return: rO r3 unchanged The folio\\ mg tables pro\ 1'-'e nil of the llC\\ routines, 'anahle , etc. I ould ~ug£est rru&lmg up a ne.,., indud~ file t.-allcd rro /2.'1~n·m You can then in Jude 11 1n all ol )tiUr IlK pm· gram' II ~ou OlkJ e\el) thmg to ft'O l S.tm )OU .,., ill .,.,:me ~~bl) lime

Thi routane 'impl) loath \' "lth 1cru and call~ /)o80p. It roth nrca.' nre m the same bank then Uf:Srl' -\00' rnu't be less than '>'>l RCE.

re:uhn1; 'annble that ".:n t u-.cd.

Table I - (if:O~ 111\ Ro/lfln~ /)t•frnptiom DoROp •

' 2F.C

Pa-.,: rO

- 8110. • 81 K2.

:\ormali1e:X •

Potntcr to the qan ul a bloclo; ol nk!mor\• • rl Pointer to the -.tan ol a lllocl of mcmof). r2 · :\umber ofb\te!lto mme. • r31. • BanJo; ol IU K I 10 = banJo; 0. I = hanlo; II r3H • BanJo; ol Blli:2 (II= b.lnk II, I = banlo; I) \' • Mode of operation &.'i fullo" s:

Pa":

This routi~ i use\.! to COO\ en doubling btl to n absolute \aluc. gruplr \faJe h cheded and. t1 c-.tlled Y.hen in ~u. column mode, "111 -.1m pi) ''"P the doubling btl,. J\11 <•I O\ ~raph1o n>Utme call th1" muttne, so norrnall) an appli ation .,., ill not need to call 11.

, tml~ 1

f\1ou~

• fo'F.89

nothing

Return: nuthing

fhil> rt,utinc i called b) the mtcrrupt mutinc juM after the Le~ bo rd j,. " anncll. It 's job il> w reset the I'OT lines, I hb '' onl) nc~.:c 'nf) for a mlluse: all other dmeh "ill impl)

This mutanc j,. a loY. h~\d, gcncr.1l purpo-.e. hanl to hanl melllOr) mme routine. I( both SOUI"C"C and tJe,tin:llton :Wdre • e~ :&l"C' tn the ':une b.lnt. then the soun."C mu't be greater then Tronaoc:IOf

- Pointer to the 1ero pJge "Clfd to nonnoalue, e.g. U>\ #r'.

Rctum: ' - un~.:hangcd

hu I hll 2 0 0 Mme lmm DlKtto 8l.K2 0 \lme fmm 8LK2 to BlKI I I 0 SY.UJ' Bl li:l With 81 li:2 \cnh• tmh• I I

Return: rO r3 un..:hangcd \: (I = match. H = m1,ma11.. h (\cril)

'

·2.:0

31

April1919: Volume 9, 111ue 4


RTS. An application hould ne\er need to cnll th1 mutme dm:ctl}.

Set!\e".\ 1ode- $(;200

Pa.., : ~~ \I~Pic Pa~s:

graphMode - \Ct to the

,,,wmode

Return: nuthmg

- $( '20 \

r0 • JlOintcr IO J:! b) IC ol data (l\\0 16 b) IC image" I or ARRO\\ to '"iteh to the default. ~lrm• :

Return: nothing

a,'·'"·• rO ·rlS

Ibis routine is u..ed to chan~e the h.ape ol the mou-;e 50it· "Prite (10) in 8(h;olumn mode. Unlilo..e the other ~\en ,oft· 'pntc,, the mou....: ..afhpritc i' h1ghly optimi1ed '0 that it \\ill function ... mouthl) :h a mou<.e. h i' onl) 16\H pi\eh in 'i1c. 1lle fir-.t 16 h) 1c of the tahlc a~ a ma'L: image. The la:.t 16 b)lt'S are the pieture it~ll . lbc: mouse h:mdler \\ill first ·"o the area "ith the ma'lo.. ima,c. An) 0\ in the masI. "•II dear that pi\el on the screen. Then the image 11-.clf i' OR'ed m. Here·, an e'ample: Tr i&n9lele0\ae :

I.oa-rO , NSUIC

Defaul.t.lllouae : I.oa$tr0, ~

jar

Thi' routine i' u<.Cd to '" 111:h graphic' mode. The applicauon mu't redra\\ the OC\\ :.ereen itsell. Note th;u llu·.\y\lrmFont i~ called; \0, it )OU an: U'ilng a CU\IOm ~t. )UU \\Ill ha\e tO l'e• enable it. Here\ an e\nmple: 8vitch'ki-M : : fizat eraae old ac.raen jar Lb<:t.an9le . byte

O,UII

. word 0 , 31tluuu•ta_WIADD1_W : nov avitch .odea lda CJr&Fb'toda ao.r I 10000000 ata CJr&phMo<le jar 8etNawtlode : nov initial.iae the new acr. .n ju DravScr. .n rta

. .~ePic

rta

S"apBOata • $C2E6 : . .cro to atore word in 8.1 /Lo order . . .czo cwwocd word . byte>word, <vord . endll

Pa,,; rO rJ

Pointer to . wt of a blt~L: ol mcmon• . - Bt li:2. Pointer tc) 't:1n of a hlocL: ol mcmof) . rl · umhl:r of b) te~ to mo' e• rJL · Bank of BU.: I ((I = banL: 0, I = bani. I) rJH · BanL: of BLK2 (0"' banL: 0. I = banl.: II - BL);;I .

NSUIC:

ReiUrn: rO·rJ urn:han~cd : -•It ~rd

~rei ~rd

1iWOrd

rvwozd cwword ~rd

zwword

\0000000000000001 \0111111111111011 \0111111111101111 \0111111110111111 '0111111011111111 ,0111101111111111 ,0110111111111111 \0001111111111111

Thi' routine 'impl) lo.:kh Y "ilh t\\0 :md call.-. OoBOp. If both area' are in the \3J1lC b;lnlo.. then Bt t.:l mu't he le "then BUd .

TempHide\louse- $C207 n<llhing

Return: n<llhing

; t.&~

nwo.rd rvvord rvvord zwword

0000000000000000 \0111111111111000 ,0110000011100000 ,0110001110000000

rvworci

'0110111000000000 \0111100000000000 '0110000000000000 \0000000000000000

&vword

Thi' routine i' u'ed to cra'e all of the \Ofhprite' from the 'crcen \\hen in RO-column mode. The) "ill be rcdrnn during the nc\1 pa" through Main Loop. Thi' routine "ill ha'e no eflet:t if called \\hen in 40-column m~e . All the mns graphic' routine' t.•all Tcmpllicldo1mtlr before dra\\ • ing to the ..creen. The unl) time an application \\ill need


CIOIW c:D.N'LU.SIOrl!l CJaUn.IOIIt

call i1 is "'hen mnnipulating screen (\DCJ memol) directh. •

10

OAN6U:: \'~rir, UO:ata •

-

oooa, .. •

('21)7

"-•o

Pa,s: rO

- BLii:l . l,omter to the stllft ofn hlock ofmnnOf). rl - BLt\2. Pointer to the !l.lan of a block of memory. r1 - ~umber of b) tes to mo\'c, r.'l. • Bank ol m 1i: I (II= hank 0, I = h.lnk I J rJif - Hank of m.li:2 (II= oonk 0, I • Nnk I )

"-10 DICONPATIIU.&

IDOT121

Return: rO rJ unchllnsed l>estrm: • a. ' · •' l'ht

.Vt'\1 l .qtMti'S,

: JUIIp Table

AcceaaC:.c:be • tc2ef Color<:&rd • tc2f3 Colorbot&fl91• • tc2fb • tc:2ec: ~ &1de0nl.}'Molae • tc:2f2 • $Ha0 _,..,IndX NoveBtlata • tc:2e3 lforaalia.X • Sc:2e0 . .tColorMode • Sc:2t5 . .tMaePic • tc2da . .tlteu~ • tc:2dd Svap.W.ta • tc2e6 '1'-.pllidMto\lae • Sc2d7 Vedtyao.ta • Sc2et

qrapl\Mode ac:dOPol.ar acriOColora Ydc<:lrNode

confiq

AD01_.

- uooo

AD01_8

• S20

A...'UIOW

• 0

MOO SOU& &11[11001&

TrantOCtor

.. •

••• ,

• • • •

$1000 $10 0 : uae thea• two to teat $10 ; qrapbWode

• • • • •

1• 15 25 26 27

UnfOSClU.

• 1

DYDITD

•11

. ''

:n-

d.iak error :n- Ulput device

: oftaet into header block

1-:diWriol .\'ot~:

I Ill' lramwtor clukjor thi~ iswt' (Tchtk #27J "til iiiC luJr g~o\1211 4iym. Also wmtll twtmg cJt tlus /IIIIi' if tilt' fao thdt :ltnrt' Y:l (when I WJtc•,/thut "''would ~uppnrt IW fornmt J. all uhmlssiom rral• i'cl hw r bee'II i11 gcoPm!(rum· mrr format. (i\ltlmu~lt l·ronc is Kostrlla ~c·m to tht' tmuhl~ of mubn~ his artit lc for tl11s ISSII~ PAL-compattblt'J Consc· qut'llll) . nwst artirlt's "'II bc m ~roPro ranm~r format using BSl\ laht-lf und symbols. Grneroll) pt"aking. em articlr "i/llw pub/i{llt'd in til~ fnml m '' ltirll it u rrui1 i'd: and tllat fonn "ill nuw ltl.el) be g~oPro rammrr. • MO u

~OTHI~C

LOADS \ 'OllR PROCRA\tS FASTER

THE QUICK BROWS lOX A NEW COSCEPT IS COMMODORE CARTRIDGES

S003t ; bit 7 aet • 10 col.~ aode Sllbc ; copy of vnc req 2• Sllbd :copy of vnc req 26 Sllbe : C\lrrent color aode Sd02f Sd030 Sd500 Sd600 UdOO UeiO SffOO

• • • • • • • • • • •

• ••o

01'1'12 ln.AGI SCJUCtMal'I'&WIO'I'B • 10 Sc:uur.IX&IMIOTB • UO

routine sun pi) ltl,l(ls \ ' "11h three and call' l>o80fJ.

'(',\ IH.t-: 2 \ ~mab/r{ uml Constanlll ~~o5/211S)"nt l

• e7e

Store up to JO of )OUr fa\onte proarams - Basic ol M/ L. Game. ol ltihties, Word Procn N'i ol Terminals - in a sinJ)e baller)·backed canridae RlADY 10 R US A l THE TOLCH OF A KEY. H USORfDS OF TIMES fASTfR THA~ DISK Chanre contenu as often u )Ou ,.a.h. lhe QBB IICccpu mo•t unprou:cted proaranu includm& MThc Wnte Stuff" the unl) ~ord processor that stortS your text a )OU t)pe. Use as a permanent RAM -DISK, a protected v.ork area. an autoboot utaht). lndudes uttlities for C64 and C-128 mode. v.uh •The Wnte Stun,• ·u ltraterm Ill,• ·QOiJk• (C P/ M RAM D~Jk), or QBB Utilities Dask. P"": J2 K $99; 64K. $129. (f$3 S / H: SS O\CrKOLS air; Mau raidcnu add S')t) I Year Warrallty. Bro-.n Boxes. Inc. 26 Concord Rd , Bcdford, MA 01730. (617) 2750090, 1\2·'\61S Pach&e~ avaalable

: paaa tbia to SetMaePic 33

April 1989: Volume 9,1uue 4


Loadermaker Easy GEOS info sectors

-

b\•

~1chola ... J.

\rti'i

Once you get the feel lor it. cud10g a scmhler for GEO~ i!> ea')· llte rouune nrc prell) ea') to :Kce s, and )''u can do some prell) impresme thmg_, ~ nh JU't one <,uhroullne call. The prublem 1s that dunng a de\ eloprnent C) etc ) ou end up a'..cm • bhng and tcMmg the 'ante program mer und O\er. Thi' process \.'an get me'') and incomcnient il )OU ha\c a progr.un ltt..e l'JUl'IIX•I:OS Irom Thl' Offic ;,,, c,/ o Pmgrumcr'\ Rcjt'r· rnce Gltldt'. The tnMJblc 1' that once )OU com en a tile to orn lunnat. )\MJ must delete it \\ith Gil>\. or )OU end up ~ath a scxtor alloc ted

10 the BAM but not tied tu 311) program lbct.-au-.e the oo-, \Crntch tl~n·t kno" aoout them~ rnlo sectorl. If )OU llrt' ht..c I nm. \\hen )tMJ arc tc... ting an 3\'\Cmhler program lpanicu· larly il )OU are ju\t leamint <•• Chi. )OU lrec.Jucntl) hang the ~) ,tem up and need to re"t 11 So to put up a ne~ \cr..ion of the program )OU need to boot up <·l~>'i , o;cratch the old program. then lxlot up )our assembler. change: the \Ource. rea scmhlc. ami rchoot GFJ >"' and l'On\Cn. hrudl) )OU get to tc!>l )llur 'h:m~e! With the \aOOUs ~Op) protecti<m scheme' inHlhed in OEU\ and )OUr a scmblcr, there arc a couple ol t.h 1.: wups 1n' oh cd m the pn~:es .

hont'n the pnx~s~. All UkldrnllliArr d1'1C' j, create a 'hon GUh pros rum ~ hthe ...ole purpose •~ tu lo.1d a non -GFO~ pro· gr.sm .• nd -.tan it running in the Gl o., ell\ inmment Smcc the loader pmgr.un doc'n 't do un) thing e\cept h1ad the program )OU ure toting. there j, not a h\1 ol need to chan~c 11 Si~e the tc I pn,~ram b a nomul Conunodore tile, )OU can u~ )OUr a-.scmbler and S(:f3tch. rea,..,scmhle. etc. to )tMJr flcan, ctlntcnt " i thout roiiC\:'ting cura GF.O\ into SCl1<lf . Opcr.1tion ol the pro~ram i~ prctt) ~traightlorward. Double ch\:k <m the t\:on to get 11 runnmg. You "ill get a menu ~ llh three tiJlll,,., : 'Done' "all get )OU bJd: to the DeskTop. ' M,tl..c' 'tan~ the pmce,~. and ' llclp' 'upphc' a httlc e\plana· tion of the pnt!;r.tm purpo'C nnd opcr.rtivn. Sefe(ting · Mat..c • "IJI present )OU ~llh a ~indO\\ ~h"h a,f.., lor the name of the program ) 11U want the ooot pmgrotm to lo.1d. Thi' 'hould be the n.1111e ol }<lUr a'-.cmblcr output. It dtlC' not ha\e to e\i't at thi~ time. The sa-ond que tion is the 1\lllllC lor the hoot pnl~mm "hich "til do the loading. llu i~ the name of the Gtos pro!) ram )OU ~ 111 double d1"L: on to get )OUr program loodcd Tromoctof

-

and run. It thi lile alread} c ists. }lMJ "ill be a,L.ed if )\MJ wam 11 (nerlaid "ith the ne" \Crsion or not. If )OU eli L; on ' E.'> . a riC\\ cup) 1' "ntten out. If )OU chd; on ~o. then )OU '~111 ~ n..L.ed tor a ne~ name for the lxlot hladcr program. l'hat', it. You ~ill gu bad: to the main menu to either c.JUit or create another !x'IOt loader. The opcr.111on ot the hoot loader program ~eneratcd b) Loc,ul· nmolt'r 1 e\en implcr than l..oailrmwtt"cr. All )OU do i' dou· ble did; on the icon, and )OO arc ott and running ~ ith )Our a~scmblcr prognun. The lo:Wcr run out ol lc tion SiF40. ~ it "ill not load a program to that area. It usc 1~ load lkkJre,., found us the liN t~o b)te.. ol the ..cmbler hie 18 Ia nonn:al load " ..." .8.11. The \tarting c\ecution addres, i' a''umed to he the 'arne a' the 'tarting load nddre,~. Smce I.AklJrmw~t·r i'> -.uch a 'lmple Gl os progr.un. it af..o mat..e, a good ..ample of ho~ to ctltlc one up. While 'implc. it u~' mu't of the ba'ic GEOS pr<X't ~ 1menu,, ~indo\\'· tile 110. etC.). I ~oold recommend 1\H) SOU~'C or information on GI:Os, The lir>t 1... a 'h!lrc~urr manual b) Ale..\andcr Boyce ( 2:!h9 Gnuxl~ ie~ A\ c., Apt I, Cle' eland Height • OH 44106-' 144, Of ched; }our loc:~.l DDS). The second b Tht' Official c;l.m Pmt:mmmrrr' Rrfumt t' (im'dt' b) Bcr\.clc) !Bantam Computer BooJ..,I. The latter i!> a little more complete. but dif· hcult to read and find thmg_' rn. The lormcr 1"' much ca,icr to read. and better inde"<cd. The ukltll'lll/uta program i' a mi\ture. The routine name.. are lrnm Bm~:e·, manual. and the • Page Zero definition'~ from the Ber\.ele) manual. Mo:-t of the pro~ram i'> a procc or scttmg up Pa~e Zero rt'gh· ter.. ~ ith pointer.. to a table. c:alhng a GE<h ruuune to do the ~ oi'L;, W1d then checl..ing the result . I "on 't tf) to e\plain nil the option used in c~h of the tables. Eather ol the ma.m.W mentioned earltcr can do that land l'\e 10duded li~ral com· ment' m the .,ourcel. What l•u// do here ~~ pomt out 'orne or the thing' "hich aren't reaII} mentioned in the manual,. One ol thc hard pan, of <·EO\ I' d ~I&Jnmg a te:-.1 \Creen l~he\C tt or noll. Smcc all the te~t i, propontonal. )OU can't ju,t ~.:ount char.Aetcr.. to ~ide it they ~ 111 lit on a line or 10 n OO\. I usc t~o diflerent method . For 'mall areOh ~uctt as menu option.. and IItie lines. I tiD>e a ,;ues" and then m.U:e adJustment.. after I ~ 11 on the S(recn. 1'\otc that ~hen doill8


menu options, OED!i tnl..e~ '-":U'C of the dh idmg line hct"een all t~ opuon~. o ull }ou hli\C to do 1s \HilT} a !lout the "idth ul the box area. II )OU don't allo" eoough room, UOO'> gets nm· fused and, "hen )OU select th:ll entry, it n:\crsc·images more lhan 11 should. Other than lc10~ing lunn). it \\clfl.:~ for te ting. Lining up ubmenu .. h n:ull) a challenge. ~in~.:e the d1\ iding line is put tn b) GEOS••\gam, take: a guc ..., und OOJUSI after) ou sec: 11 on the screen. After 11 \\hile )OU can get good enough to count dots on the: screen (a screen oot i.. one plllcl).

The ~und method of ligunng out \\hat "ill lit i.. the cmc I use for I~UBer area'i ( uch as the help "mdo\\ text). Thi I' more cmnplicatcd. I do the text in gt•o\\ ritr. "ith the: llW);ins pulled into the 'i'e ol the urea I um \\Orking "ith. Th:u wa), gco\\ Til!! "111 tell me "hat lit\, und \\ rJp the line' ru; necdetl (for )OUr mlormauon, the ,tan<furJ pacing bct\\een line u~d b) ro\\ntr is 10 p1xeb.). lllcre arc a lot more •mo,ing pan ' thi" "a}. but it doe<.n ' t taL.e un) longer than 11 you ju~t tncd to gue,, and ndju't el.lch line a') ou gn. I rttonunc:nd u'ing boldmg ILif moM hon tcxl. Plain B~\\ hmt (the default loot) 1<. u little hard to re:KI. You houhJ also note th3t it )<'u ha\e u pattern on the screen and put tc\t on it Y.llh ten phcJ, hct'Accn hnc' then: "ill be on.: P"el of pattern hoY.ing bct\\een n~t characters, but nine p1Ac:l' bct\\ccn cause5 the tops and bottrnm of !iOI'llC letters to touch. lllcrcfon:. I recommend putting te:~.t (10 u plain badground it 1'1<'"\i· ble. or hne it up "ith your pan.:rn (paucrn' urc 8 phcl' high). I also recommend u "pace before ond alter an) tc:~.t \\hich 1:-. put on a pattern. Other\\ 1sc: the: lln.t and Ia< t ch:uuctcrs of the text run into the pattern. \1uluplc hne' of te\1 in a "'indo\\ arc "on ot tncl). A camage return !decimal 131 takes )OU to the .. tan of the left margm. and the "1111.kl\\ procc stlf ..ct.. the left llW);in to 0. An) tc:llt pthitiuning control' "rc m reference to the lett margin. nut the edge ulthe "mdo\\ Sm~e the "indo\\ procc,~or alloY.' multi· pie '~'' reference I ould recommend thi .. method for most "indo\\ that need more than one hoc. It taL:e, li\ e b\le th1 • Wll) 1cmc control. three coonJinal'-''· and one 0 at the end 1. An alternate method 1" hich I u~d for the "mdoY. textl 1' to use the ptJSIIioning control' "ithin the te\1 and adjust lor but h.ts \\here the "indo'' \\ill be. Thi cmh• take" four b\le,, • the dl~;khantagc ol needing ~.:h.mgc .. it )OU mu'e the Y.indoY., A \\ON ol cauti<m on te\t: if )OU forget the 0 at the end of thc te t, )OU "ill u,uaJI) get :a ')'tcmcmwand/orh:mg upGf:O~. It h Jl'h,lhlc to po..itiun \Orne thing' lchcL: bo\c,, te'\t, etc.)\()

the) hang out, Ide the: "indo\\, Th1 tend, to me..-. up )our screen, smce the "111&.'" processor only I"C\."'tl\ers the ponion of the screen deli ned b\• the "indo\\, and it "ill lea\e the tull "hkh hung O\ cr on the recn. One final pt1int about text in CoEO'>: Gffi' use true SCII in tead ul Commodore '"CII. Thi.. mean .. that mo.. t Com· mc)lJ(m~ lhsemblef\ "ill ha' e trouble u''>l!mhling un)thing tllh· Transoctor

er than IO\\cr ca..c tcM string. I modified S't\1-\Ss \\ith an.:" JhCUdo tlpc(xlc.• rA\C'. \\hich tells "'MASS l(l a~~mble true \SCII characters mste~ ol Commcldon: -\Sctl, The lin.1l challenge no\\ bec(lfOe~: hn" do I a'iscmble l.omlrr· mu/..a \\ 1th SY\1 ' ' ' · and maL:e it 11 CiFOS pm}lrttm ~ I don't ha\ e to me ... "llh mal.1ng GEO'> program.. for a "hile again. Actuall) . then: an: three \\a)'· If )OU ha\e aln:ad) t)ptd in I'RviOCil os from the Berkcle) Btl<lk, then all )OU need to do i' t~c LomlrmwJ..a. a <oemble it. and uo;c 8 coO\ cnient ML monitor to sa\e the obJeCt code to d1 J.;, lllen JU 1 run PRGTOOlJl\ again 1 it. The ource lor u~UdC'mwJ..rr i' 'OCt up \\ itb the <•F.O'> inf(l sedor em the lmnt "hen: PR<· HXit::Os c'\pcct' it. If )OU ha\e nott)~d 10 PRGTO<.E<>'> (Or don't ha\c the Bc~e­ le) Bocll.:). then )OU "111 need a hand) sector cdiiLif program to pcrfonn some minor d1~t.:. magic. II ) ou an: going to do thi,., I \tmngf.\ n:,·ommcnd that )OU 'tan "ith u di"L. th<ll doc"n 't ha\c an} thing on itthnt )OU \\ant (prclcrabl) empty). You \\ill be rc\\ ntmg d1re.::tory t'lloch, and 11 ~~ po '1ble l<l make a m1 W..e and me" up the d1<.l so that )OU cannot ac'e" an)thing on itlnot h~ely. but fl<l 'ible). usscmt'llc l.omlt'rmaLrr and s.3\C it out to )our scrnh.h di,J.:. a" a normal Commodore PR<• file "nh a con\ enient ML monitor. Th..:n )OU need to use ) tlur 'iCC tor editor to find the dire~.: lUI) entf) for LoudrrmuJ..rr. Th.: directory i\ at tracl 12. sector SOl. If) ou 'tancd "1th un empt) d1'"· the /~)c}JrrmaJ..rr COli') \\ill be the fin. I (and 0111)) COli). It \\Ill tan \\ llh a :!, the \Ianing tract.:. and sector. and then the name. You "ill nc:cd to \\ nte do\\ n the 'Ianing trncl und ~tor number (thi' "ill become the ow~ info ctor). FiN,

U-.c }our ~--ctor ednor to read the staning trad.: and sector. The liN t\\O b) te.. ot thi' sector arc the tracJ.; and "Cetor "here the ulcJdt'TftiiJLtr cod.: ~tan,, Write these numbers doY.n (the\'• "ill bc\.--ome the program tuning sector). The third and founh b)tc tell \\hen: the data \\a~ ~'ed from ~'hould be ~04 S41) • You want to change these four b)IC' to .$(10 r·F S03 Sl5. and \Hitc the ~ctor bd~L: to di J.;, 'c).t, )OU Y.ant to reread the d1rcChlf) sector that ho~d the Lnadt'tmattr entry in 11 ( 1:! SO I if the d1 1.:. "as cmpt~ 1. Stanmg ut the !(! m the: u~Udtrmdta direCIIIf) c:ntf). )OU "ant to chan e the M:! to lO. then )OU "ant tu change the nc\1 t\\o b) te.. to be the tmcL: and 'ccwr or the progr.tm 'taning <;('(tor )OU \\nlt\.' do\\n lmm before. 11lc name portion of a d1I'"CI:IOJ) entf) 1" al\\a) tl~ me length. and the name i' ~dcd "'ith . hllt\.'d '()3CC 1 AO\). lmrrledl· ate I) Iolio\\ ing the name. )tlU wunt to enter the tracL: and -.ector number\ of the info sector ) c1u rcconJed pre' iou,ly. FolIo\\ mg the info scct(lf, )OU want to enter the folio" ins ti'e b) tcs~ son .$06 5X II so I. Finall). J'e\\ nte the dln:ctOI') sector bJ L: to di,L: . A th1rd method i' the one I u-.e utter I ha'e tested 8 OC\\ program and \\ant to mal.e it into a normal GEO.'I program. I JU t '<.teal' an info ~"'l.:tor lrtlm another GEOS program. Again, I urg..: duing thi-. on an empt) di'll: • ju't in l'U'>e. What I dn j, Aptil19&9; VoU'ne 9, luue •


progmm thnt hn nn mfo tor tmtlar to "hat I \\ant. 1ben I pomt to th:u sector us the info sector of m) ne\\ program. and fi up the lood address, etc. fin II), I boot up Gl and trash the cop) I tooL: the info !iCCtor lrom. I then use GI 0 to \ahdate the dtsk ~~ ause it has scruto.hcd m} into sector). \\ htle tht sound son of comph~: ted, I J,JO 't h:t\e tu do 11 enough tom e 11 \\onh nl) \\1ttle to bother L;e)ing in PRGTOOOO • nnd h:J, 10 to J.e) 10 the mfo sector for each ne\\ program. cop)

a GE

• nm

Q)

..,

» c.:

720 llt

7C

A

nm

n

-

cna>.t~

- Jc:a.ry

a Ill l'*"r

tm·

wort mgir.ca u a fl'll plOijt m ~ ·• 2 m r1 • sec

prio'jlW

aa liiOS dul'

n n!-

m

jU C I "I

.n.

. 110

m

Q;

•• cc

• sao • • ssc:a a ! :' IOftto .,.m '* 1111 m JC m • 1da l<titlt Ill: 5~ rtut 10 su 1da t>title

U 558 IU r0t1 liP UO )lr ~ 11.

do tilt opnl"9 cnd.l.u

a;

su ...,... • •

rvt&tt

Q

5 1da foe!

m.

Jl

" m Ill

w ;Jlf * U t

Transactor

fit -

fOl l..tu fila

ur

belt dow;~I• m lda t<tttn ~

,....rvt&tt

ckl aalJ ' lttlft' d:lft f~ -

-

,..,. caret lltW9

ur

n

mt belt pta •. .. fit • ut 1110 J.4a f<lrl:r I Cl 11to IU rl u. lda I>ld"l D UlO 1U rOtl II lUO )lr del•• uue Cllttllt

toa"e• -

uoo

uc fi.ld • • fl Wilda I

=• fraa

ftrtl.Da

u~ .

D

fila . . . iJ ok .,.. IMr codl to are it will raa traa

Ill U£0 ld• :11 • • co Ull lda 1dro:idt • ut UIOIU..,....4.1 co UN 1111

n

not cp1 l<ldnad-ldrcode

II: lllf boa ld••-. calc ..t addnu of ,..,. Ill 1320 ck lllO 1da l<ldnid ldrcode Ql 1313 Ide I<'Moeto

poilt

"IO llSO IU I> ".IC

IF'

II'NIIIl

1l6t lda ldr..t·ld: code ll1tlodr:I>11Mto llll IU Uftlld+l Jl llto lda , UJ 1t&rtJJ19 • lit P'9' of d.irectorJ a; lUI 1U rlO IIJ 1C10 lda l<ldric'o

'"]Ifco ;

• "'dofut ••

• •

p~·nor..ut

1100 W , d»c~ MID fraa lootllp JC 1110 boa hleok :. lOt fad·-pd 1121 1.dl l<uilir Cl u10 t>mm tJ UU)ar~ Ill uso 14a rt - if ok to -!IJ All 11~ CliP JC

11. ~ IU rt ca m 1da 11>~~.W.= CI m IU d+l • Dt ldlll &l

ptla

•• .,

a

codl will

dw:ll for cancel

n u~ u. 1 u 1C£0 1U clrwuQ n me :1u led ·• UJ to tild toekr All 1 =pla 10 IU clrwuQ "* dnft Mardi flit

Citlted bJ a --liJOS Ul hlu'

.

rt

lOCO IU n 1010 lda l>lrlrr 1C20 1U r6+1 fO 1030 lda dzonzQ Ql 1m pill

byte • 0 0,0,0 uc "lid 'rta ·· 1 • a clQ byte t t LJ ,,, byte 0 • ••• 0,1,0,0,0,0,0,0,1 ••••••••••••• Ill CSO byte O,t ,l ,l,t ,l ,l ,l ,l I,I,O.I,O,O,I,O,C,t ,I,O,I,t a 161 uc "Crute a loedu PR9f• aa liiOS clW to load IlL filu • a; '

l)'?rilldo7r

n m 1da t<:tn.n c.: ~~ IU rll

c:o u en

bytel

)lr

•U·

Ill

DC

ur I>tct411

150 CliP 12 Ill 1£0 belt doe;a"

10

l.l llO word beqi.a n.utilf load adr:!tw PI 3M word 1drtDd ..t1"9 loed lliir. . ll m word t.;'.a IUrtil9 •• otiaa ~· n ~~ uc 'IMAerltittn o•

UC

clcM all -

Q

LJ

150 byte s:6, S7f, Sff, ffa , ICO, IDO, ~ "' byte $13, $0UOO

0C C70

undle tilt ... apciaa

·o .u rlt•l m 1.dl t<t'*"'

••

byte~

0

rCr'&1l tilt -

IC ll 1da lql<piJII;Ct 1 ~ .u rlO D l :.dat)Wr

no

" ztt byte soo soo.m,su srr,st• sc .su • m byte ua m tn,s·• m,m s~. m 11 m byte Sf• s·. sn,m,ua m m sft Cl JlO byte $1C Sff,Sfe Sl5 S =.S7e S 5 Sff ,. m q-. . sft m w,s·. s•c su w m fJ llQ byte SOl S~ ITl,S~l, Sfe Ill Sff,Sfe .o lt~ byte m.w lfc,m ,sw ste m.m JG

d:-

JJ tl 0 ldl I>!Mal Lr t20 IU r10+1 1.dl I<Wm II AO tea t>~ ~ jar l)'?rilldo7r ' 1da rt ct.:' fOl - l Cl tl0CIIpl2

Jt 110 rC • $41 n 1M d • $Oe lr 1~ rt • SU It 2 rlD • S16 CC 210 a~ • Sflt n uo a1 • Sfd • 2~ » m we ... 2~ 111 2~ • • s~m IC

]If

JJ IC 1da

Cl u~

:iU l)'7llldo7r

~50

,; llQ

., 100 .,. 19!52 01. no ••Ul:&!l a; m ·lid Yrtil

tilt 11Lp apclaa

ur

., 1£0 ..... • • Pl.

l.cllldtrmaJ.:cr. rc

dok:p • • !41 to-:pr 110 t>M:,.

"""• tilt flit ClfUDa biCl to de•it op

Ct lUI IU rt

36

Apfl1989, VOlUme 9, 1aue 4


u~ ldl l>ldrWo

• :m m rt+1 a: :m JU...,. •

lCle ]lpdnp.a 1:1, 1C ~

n :m ~ • • p:adla

n,

Gl lUO 1t1

~

WI•

pGi:ted to bJ aJ, "P

rz noo r0+1 • 151c ,. willdcw o; mo :

t=

Di GD

15)0 1!~

me rr mo

• JiO

1570

m=

mo n 1£0 • me

11

••.ill-

br.• 1C

bJte 0 : 1t.1rt I

: left . .

:ri¢t . .

br.• J

: ) bori.J-.1 opt! 011

word - .

m

:•• ., cpU.

word ., 1 1 "' word.U

1P lUC br.• 0 Cl IUO word 4c:ab • UO word llalp QO !CO

• r'

"' dafuat.ia

word e II 114) word 21

brt•

bJte 0 bJte 0 bJte 0

n

-

; flu) '

: ••

a mo bJte nu.0,142

n

rJ

; fill petttn ,tcp/left comer : fill lllole "'111 - fill plttul : fill tcp title U. "'"l'"t title : bo16+«qthw

,.

" • &L

.. 0::

a

Cl II IO

, )'It bold ~

tn•er llaUr • : - pouuoa for

UJt

n mo bft• m,200,o,m n uu ue • toprr1¢t !ttl • tD lt50 bftt $U,I .0,1Sl II IKO ue ' 5163

'UIIUM S I . •

~

., 1110 brt• $16,1 0,174 JJ IIn ue ' r.tiiOOd, II 0501 '

Ql

2700 .bftt $ff,$ff,$ff,$10,$C0,$01,$Pa $10 2711 .bftt $01,$10,$55,$11.$10,$01,$01 $11

.bftt $01,$11,SIO,$fi, S•l,$ll,$fe $01

bJtt SOl SIP,$1!,$al $al,$ot,$0t 611 11 me bJte ftc $1.5, m.m fOl "'·"' so: rc 2160 bJte sausc,m,m s:s.sc!,su sec a mo bft• Sat sao . ~. sct . su, su . m IC 2710 bJtt $1) $06,$Ct ID 27U

2710 .word ~ IIJ Uot ..-..:1 •••+Z

• • • • 2,15 ft word llalJ1119 II 2071 bft• S01,31 135.0 :-cancel- boa

1.0 2111 .word 80ttt,.)t}7

u. zo" •lJiut bft• m

blql.a lddzut of ...,. ..S lddrwt for ...,. UICOUOI Jwt iddzuJ

2120 ue 'l.oedadllul'll.O' CJ 2130 llyu 0,0.0,0,0 Ql ZIU ue 'lid Vrtu -- IJII' Gt 2150 bJte • ' 0 ~

JJ 20M ue ' !til p:oqra u utd to autt a GIOI Protr• lllldl' • noo ~~r.• m u ,n : ~bare u rildow au• ed)Uttd 11 mo ue •eu.,. na m. t.M cutfap n. GIOI pr-4 • will' ft 2121 bJte $16 6 0,57 • 2130 ue 'U. told ud n11 u 111 tier p:ogr• cntUd u a• II 2HO llf'.t $16 6 I ,61 11 uc •• ~arwl ' 0 +re F"9•• 1lia noidl Mn.g to' 10 br.•

me me

mo .

" mo .byte m s~o.sot , saa m,m.w sec

bid to plmtezt at ..S

...

~ 20~

, CIDOII boa

2540 uafalr bJtt $11 mo bJt• $Gb 11,30 2560 •terd tnllll9 2510 .bftt 1Gb 10,40 2510 .word uml92 2590 brt• $0) 17' 60 -yu- boa 26M bJte 6(14,17, • ; -10- boa 2610 brt• 0 zuc en.v 11yu m ue ' k filt al:udJ uuu 264) .bftt 0 2150 ll'rM92 ue ·ca to mrlaf ,.

11 2121

zm sot --nadard Jilld •iadow bare a znv bJte 22 t•t •tcp(bottoa pi •II t1 zm word 4 : left . . a: z:cl terd 3:5 :

:119m a JWd&rd ailed WUibr

cc zm bft• tUI.t II) 2610 : n 2110 J.drwo terd lmn a mo ~~yu m m.ru

U2t ue • l1clootu J . Vrt1l •

ff UJO bft• SUI I Gl lt. . :& Mlpr bJte

:rl0 i.J blffu po111tu18& 16 dl.uKun Uip11t :-rnce!· boa

rr mo :

I

ue ' toedldla..r '

• :ttl bJte SUI $11 PO It= ue • n t "'d••

91t i.aplt ia willdcw

Cll 2510 ue bUr 1181 cf PmAII to told . • g 2!20 bJtt SUI. 0

do

m.

:u:

bfte <rlO, l' bJte $02,11, 71 ca mo bJtt • II 2SOO p~ bftt S1l

II 2470 ll 200

"'rtl.cal .uy

1111100 : U 1110 title bJte $05,21 » 1110 llyu $01 ,0,0,1 • 1130 bJte $01: word 320:.bfte Itt tc m bJte t IL ~lSI bJte SOl. word l2t : .bJte 20 Cl ~U4 bJte $06. word I · bJte lN c:1 mo bJte m.m s1.a Cl

200 loecbr .bftt $11 IC 2UC bJte t• 10 30 JoJ mo .word p~ • mo bJtt SOd 10, 60

: n;at . .

« m:~ word flit rr me bft• o rr 1111 word doq;it " mo fllt ue ~t·

tUJ wUidcw

102UO :

; left . .

f~t<>t

1a

CD 2)1~ ue ' bUr 1181 fer • loedar' II 2.310 bJte 0 IP 2400 tm;Z .ue Protr• to to auted • IC ZUO bft.• SUI.I

' lt.lrt te1o- 8.il ....ill u pua!J ~

m n~

:two l.iiM of te.t

bft• ~ .:: mo t-v bJte su

br.• D

a nco · If Ill I 6H n llyu U & :•zt llyu U+U

' JWd&rd lUI wildow

11: 2ID

• f1W ' do cpU.

II IW .word dDbelp n U10 a. .ue ' DeDI' : JoJ IUO .U. . ue "'IWW' : • UM llelp •ue ' lelp' :

Cl m~

11 2270 : GJ 2211 ldmw llyu $11 IJ 2210 brt• "' 10,31 If 2lOI word 1-v u me bft• ••·11 4 Cl 2121 word li 1;2 11 2330 bJte SOd 11. 60 IC 2340 bftt <11 0,16 rz 2350 bJt• m ,11, 71

ICrt8

:to +U U.

.word o word g2 ~~r.•

tcp of

Ll 2110 .ue ' na a ll!pUitt proijl• to 'corlltzt' JOU Ull Mer' l l 2110 bf'.t 116 6,1,17 10 u•o ue 'pr\.ljl• tldl tia J'lll rwu Ne 1t. 1 acrw: •· Ll mo bJtt s:' 6 e,11 " 2210 uc ·o xJcre Fl1•• u.. u. lW idi!t., u u. lint' CD 2220 bJtt $16 6,t ,ltl II 22)Q UC 'two 6lt.a bJtea of tlll fllt ud IWU IWGUOI It' II 2241 bftt $16 , ,1,117 m mo ue •U.t lddrw• attar toag loadld .• CJ 2261 bftt fUI,O

bJtt O,l ,t ,t,l ,l ,l ,t,t,t,O,I,O,O,D,O,O,O,I,t c. 2111 bJtt o t,t ,t,o.o,e,e,o,t,t,o,o,o.o,o,o.o,o,o.o • • IIJ 2110 ue ' Load ..S lla a CIDI prop• created bJ a --ciDI 111 'lu. • I1 2160

c.

me

ue •!UJ F"9•• lOidJ • II 2101 :

m 't,n

37

Apfl1919: Volume 9, laue.


n n:t ~ llJU o ., mo •••+u

:o

cr

allcw fer tul -

I hr /me hdnl\ hottld ht' enlt'rrd ( l\ hflr thr linrs uhm t' art' 111/ m mt'mon} if Hill Ofl' 01 usmg \ IC l: \ rtiJ' modified u •r· mn ofthr \rna r a ssrmhlrr fmm tllr Tranun tor duk fur thu USllt' /'hr.\ C'Ontam tht' ASCII hHt'f for tht' nlt'c SO~t'S tn tht' /,oadrrmakt'r pm ram

• tra!ll"9 all

m~

294~

14rc:odl • • t~J-.e ZKO ....11

•• ma"' • II 29

~ HI~

PI lw'tl 1.da f<a:MO CJ29r.tri

u

:~

:s:·

3:10 IU

!:4~

c;m

lda · -ltto

ri+l

...

.ti tk='

4iekot 1.dl ~2

• :J:JO lda dllltty+l Cl )100 IU r1

u

II 3110 lda f<liii!O AJ )UO 1U r4

464 tift• tee m m ,tot,32 m m AI CIS tlftt 32 1CI 111 tl, 1~ 32 il, 11 c 4" bftt 32 1021m,101 101 115.32 AL 470 byte tt 114 1101 1tl,116 101 , 1tO~ l2 • m bftt M 121 32,n ,l2,U0,111 110 L1 4 Z byte 45 711'' 7t 13 l2 1tl,11S 115 JJ 473 byta 101 lOt tl,lOI 101 114 n. 1510 ... bftt " 111 110,101

, Mt pdatu to ba.tfu fot rMd

., mo lda t>bc.fo Ita

r4+1

• mo Jar rue~ • mo lda an+2

: rud l1t afftr fit pnffa load adrw

Jl 3170 Ita at • 31101Ual c mo lda an+l JI

fJ DJ ID

Ll 1171 bftt 0 AI 1~ .W bftt Tl,tl1107,1Cl n tu: bftt 1 Ill U~ 1la1p bytt 12 U11CII112

me .u ,,.1 3211 IU al+l mt ldl u

32:11 ._ lliprea4

» •

l2 4 '""" lda lllf1l 3254 ... r1 01 3261 1.da t.n•l CD l27t 1U r1+1

II:

32tj )U rue~ 32to ldl f1

II llOt aklprtad c mt 1.da an It 3320-.

ldf Urt

,_..rt

,. 1 to 911t bftt 11 1111m 1:' lit lltl bftt 0 .:I lW bftt 11 u: tl m 1U UC1il, 17 ca 1111 bftt 101, m 1!4 12 " CJ 46 Cl 32 Tl n lJCl brtt bfte lt4 m m lm 32 ., n » oo bftt 1!01101 m,n,m m ~ u D :toJ llr.• ' 111 17 1 .m 114132 n » 1toc bftt n, m, m ~ u• 12

..u, t

1

poiaut

tor Ill . . Ill oct•

. , _ I full MC!:Ct chct a.t met poUitc

-

uu u

1ut 11etot p1:t tp I ftlid t 'flll4 bytes 1m for hll eectorl

bftM

n

rr 3440 (J

lda balD

•-

90

ttut

Pf09%'•

..t of loedtr cot to - . 0

mo •• cry • nm

.. 1!20 ~ • "'" AI lSM • .:1 lS4 ~ • kl~ AI lS5t • klSl D 1560 cw • kltl .. lSlt C IJ a Sell)! L1 lSN rMd • kle4 CID lSM- • kltd tr ~ Wltp • k1t1b .. W.t Alttt • kU: •

ret110ft to do

chct 1f 1011 MCtOra to p , • JU (Mit uact poilltu u -·wvl

lCS41DI~ 1463 ]If (al l

ll lC"O , u JCn ld:rtad • • II lCJO , III 1500 ba.tO • $

m;

• c:Mtk 1f to tad of ba.tfu : • lOt

lQt • 1ae • klll

1: JOt rildoll • k2S6 01 3640 • Cl liSe -

fiOI blffu t

dinetory •ry fraa locokcp 4ri" IIUCl

fll9

f"¢k tale praaauor

-

proee~aor

-

llletot

I "

' "

1N2 bytt 32 Q lKO llJU 32,53 5I ~ 51 ,12 IO, lCS Jl lt61 bfte 110,101 t16 1141101 :ot 12 lit 1K2 brt• 13 Ci U ,46 32 ll 1~ bft• )2,75,101,111.116 11t 111 1D ltll bfte11111ot,UI32,711ll,32152 II: 1M2 bftt 57,53 41,56 l2 LL 2010 bfte 14 ,104 1C5 115,l2,1121114 1M 20tl bftt 111 1103 114 t7,10t l21105 n 2ot2 bftt m 32 m~ m 101100,32 ll 20t3 bfte 11f 111 l21tt,114 lOl1tl CJ ~N bftt U6 lC1 l21tl,l2 71 U 1t Cl ~tS bfte t3,l21112 114 ,111,103 114 11 ~" tift• tuot l2 nt.tec m itt • zon bft• 104 ll. 2110 bftt " 11, 110 32 " 101 32 114 1J 2111 byta 111,110,121102 114 111 lOt CIC 2112 byta l2 1U 1C4 101 32 61,101 &:. nu t~J-.e m m.u m 112 u u 12 D 2114 llr.• u m m l2 11,n t u " 2US br.t 32,112 lU 1U 103 114 11 JO 2116 tift• tot 32 m 10s tot 101 .11 mo bftt m U4 101 uc 12 101 m a nn brt• n. toc. 32~ n. uc,toc 32 n4 GL 11lZ bfte 111111t,121tl,11C,l2 t7,115 A nn t.r.e m 101 let M 1ct m 114 tr n1e bftt 12.112 uc m toJ uc n m nlS bftt lit 32 tt uc 101 17, m ,. 2m bftt 101 1ot,l2 n .m 32 n It 2150 byta 3t,11t 111,114 lOt t7, 101 II

D 3)71 1df ba.ft I CC llN IU (aO) J

JCJOa~

I

D mo bftt 12 1 m tt lH m 101 n u 1m bftt rn 32 4 46 12 " 1a m 1.\ ~ bftt m m ,12 • lNO bftt 32 611111 112 121 114 lOS LO 1Nl bftt 10) 104 llf 12 4t 57156,5,

"1D me ldf" 33U~ia 33JO iac ao II lCOO 1DI aOot II> lClO UIC .0+1 II> lUO tOot cpa rt

1,,. bftt I

CIC 1JOO

alae

ID llC p+rtt ftJ r0

fi

a.Up t /1 ' ilddzMI -o:e''U•!·a.Up '!Jt rlld tat tnclf~~ttcr ot . - bloct

·. fOOd . . met

u m• ldf ba.tt+l

a

::: 1:. n, ,,

w tift• 5' CG 4'll tlftt 61,114 101 fl11U :ol 12 tl cr en tift• 32 1:1 111 tt,1= 101 m 32 IC 412 tlftt 112 114 111 10) 114 tl1lOt a m llr.• 32 111 m ,32 n u t 13 32

m .u r1•1

;; 3140

H 1111 n.m

11

G !:U

11:

bf".e

4jl bftt :01 lCl1llC " 4J 4,1 &I • uo bftt n m " m l32 " :a :u ll Ut llr.t lt5 115 12 45 C5 32 U Sl,Sf

chct lr.ctl fll!Pd 1t ok alae at II b U. load ' p bact to tsfrtcp

ll. 1:50 jlp rw.tt

• :s:·

4~

ID

JJ :J:Zv '" lod f ll. 3:~ ta

., :oo 17' ·oc

ndr•U.clOMa!l-

·- . fiOI hlt

, lritp hlt u d1nctory rtload dlllktcp ' rtlwt 9'01 tlae 9101 tilt rildoll pr-aor nat • •

31


01 2151 II 21.S2 ~ 2153 c: 2154

» ms ~ 2~

., 21"0 II 21'1 ca 2112 Cl n·3 .. 21"4 " 2!75

'

10

»

21~6

21M 11 m1

a

Jl IC ~

2tt2

2193 2!94

ms

brt• ]9 ]2,&7, 111,109 109,111

byte 1GO,Ul 1U 101,!2 112,1U byte l11,1Dl 114 91,109 46,!2,32

PLEASURE

bft• 14 1C4 105, 115,!2 fl,111 byte m m 1eo,m 12 14fl bft• 1!1,105,l!O,!U3 32 111,111 byte 114,117,110,32,97,32 115 byte 1,1 112 91,114,11,111,1:1 byte 12,112 m m,101 m n byte m 32 1:' 111,32 lt 11 m bf".e 110,111 101 ,!!4 111 lt 32 byte l21,111,117,!!4 32 91,115 byte 115 101,!09,11 !:1,101,114 bytt 1l2 1!4 lU, :cJ !!4 91,109 byte u 101,n ,tt m ,n m :o5 bft• U9,10t,32,121 111 m,u byte 1!4 101 91,115 113 101 lot byte H,101.10132 103,116," 32

byte 32,U.l2,lt ll. 21K byte 91,101 lt

,. 2210 II 2211 D 2212 ~ 2213 Cl 22U n 2215 GO 22U

GET MORE FRO M THE

BffiLEWITii

LANDMARK The Compute r Reference Blble Here'• what LA....;DMARK will enable you to do. SEARCH lliE 8181.2- Yiftd ~. word~ or tcn1cncn. DEVELOP TOPICAL PILES Copy from 1be Bible Wl and ICil'Cb raulu !hen add )'OUt own c - u and noca 1t1 COMPILE YOUR PERSONAL BIBLE- Ou11ine ~e~~~a In cdor. Add tlCI(•, COlli,.,..., and re!erenca Johke yout Bible Swdy orpnlr8d and on p•m•~P«¥ reconl ltl CREATE PILES-Then convert them lor we wllh 1t1 1t1

m,m,m m

brt• &7,111 lot 109,111 10#,111 bftt 114,101 ,32 112,114 111 103 byte 114,91,109.32,104 97,115,32 byte 11,.104 ,101 32,101,111,97 byte 100,32,97,100,100,114 101

1t1

MAKE

NEW WW PRICE!

bft• m ,m ,l2 tl,m ,u ,m

byte 104 101,32 1C2,105,114 115

IJ 221, .brt• lU

byte n,,nt 111 ,12 1oo,n ,tu OC Ull byte tl,32,tl ,l21 ,116,1Glll5.32 te 2232 byte 111,1C2 !2,11,,1f4,101,32

CALL OR WRlTB 10DAY FOR A FRJ!B BROCHURl! WHICH SHOWS HOW V.ALUABLB LANil.VARX CAN B/J IN YOlJR BIBLB S7UDY

c 22n bft• m to5 101,101 u ,l2,tl Jl 2234 brt• 110, 1~, 32 , 113, 111 97,114 m 2233 byte m,m 12,101120 ttt.tt oc 223, byte 117,11,,105,111,111,32,91 D

rut

.: 22.52

rr 2253 m 2254

01 2~ II 2311

.: 2312 rr 2313 Jo3 24 IP 24,1 .lD 24:2 Cl 2403 ~ 251t 01 25U ll 2512 IL 2513 ID 2631 II 2l31 II 2'32 Cl 2633

P.A.V.Y. Software P.O. Box 1584 Ballwin, MO 63022 (314) 527-4505

byte m byte m,114 n,m ,32 n ,1ot byte tot,m 101,m tl5,32,n byte m ,m m 1!4,32 M 101 byte m ,nt,tG3 32,m ,m n byte too,tot ,too," byte ,,,110,116 101,114,32 110 byte fl,10t,1Cl,32,102,111,114 .byte 12,11" n ,l2,1CI,111 n byte lOO,l01,U4

lnzrgl bft• 112,114 111,103,114 byte tl, 1ot,32,116,111 ,32,tl,101 byte 32, tt, 114 101, n UU01 brt• 100," byte 19 110,116,101,114,!2,110 byte tl,109, 101,l2,111,102,32,1t .bytt 12.lt,l1,12,65,ll,32,116 .byte 111,32,101,111,91,100,46 .bftt 14 104,tl,111,32,102 ,105 byte 101,101 32,91,101,114,101 byte 91,100,121,32 101,120,1GS brt• 115,111,115.46 ~ mo w:u;2 bft• lt,75,32,m ,m32 IJ 2151 byte 111 ,111,101,114,101 91, 121 a 2w byte u,n n rue byte 75,111 ,,, t00,10t,1u,n,91 Fl 2121 bft• 101,101,114 16,49 46 41 w 21" bft• 71,115 tt m ,l2 1uu m 0. 2141 byte 1G5,115,32 43,45 32,4t 51 II: 2JU byte ll. Hl~ byte n mt byte :. 2112 byte Jl Zlll bf".e Jl 2U4 bftt :a byte

ms

• nu Aj

%1

2U7

219:1

10 2111 Cl 21f2

$119.95

v1 .2 for C64 and v2.0 for C128

oc mo

ca m1 .:11 me

wordpi'C)«ucn llkc Papctdlp and G!OS SUPPI.EME."'TARY STUDY PILES Pot epec~llc . .., and develop II'&Niatlan varlallaN.

efta Flllf DIM ~tllfilf SY~IIm

-

lor,_ C44, SX.f4 I C.f21

Awr'lllllr~IC,IX44, C.ta & c.t•~a,

, • ..,._. ..

•••••lw tMt, tMtC. ,..,.... tm, tat, ,..,u.-•t&2. r...-.,lrturn--.hrd t ,..._, • ., "' f' •••n z

111111 ta

1

NIUflll AOMIIIr11 1 • .,. t M N. ~wU t ,,. . . • P •• ,.,., r ua Ch .. u.w.Ha·a'lnl lll:• l tuk O u r rr

56 ' 56 U 111 91, 1M,32,tl,Ut,100

32,12 m , uo,32 n ,32 1 " n n 32, 112 114,m ,m 114 fl,lOt 32,tt 114 1Cl,t7 U6 !~1 , 1M,l2 M,121 32,t1 32, uo,m.111.45.11 n n bft• u l2,tl,115,us,m tot" bftt 101,101,114," 32,32 bft• l4 104,105,115,32,112,114 byte 111 ,103 11C,9l,lt9 32,101 byte 11l,tl, 1.. ,115,]2 39

Aprill~

Volume 9, blue .t


An Introduction To G EOS Files Using the high-le,·el dis"- routines

Wlule codmg m) fil"lit anernpt 1 o \\orim • OliO program. I " mcrnhelmed - nd more than o hnlc confused - ot the scemms comple II) of the (oEOS L:cmal. ftcr II. lhcrt are almost _oo liable routmcs nnd hundi'C'I.l.. ut 'an hie II\ il:lhle to the llf\1!)11lmmer. nd I belie\C I've had the opportunll) to use mo~l of them the "mng wa)! But 11 bn of pel'lil tence docs pa) off nnd, 11fler \\ h1le. the r.tru tun: begin to make sense. What once seemed hkc: hoops to be jumped through be me 1mple methods of nchie' mg complc result~. M) II!'lit fc" progrum' a\llided u ing an) t) pc ol

~JJ,L; ac~:es,.

except to e 11 the pr0£mm and relood the De k hiJI. But later I became a bit bolder ~ dec1ded to l:ll.:e a look u1 the dozen of d1sl.: routtne:. "' Jl:~ble nnd try to use them m m) progmm (be 1des, m) program \\ere st. nmg to cat up lithe a\nllable memory anti I'd haH'II> load and s:t\C o;cctions hHh~ll. A lirr-t glance in Hu• Officral Gf.O'l I'm •rummrr. Rcfrrt'nc t' fanual front Berl.:clc~) ft\\"Ort sho\\ed 0\Cr 0 d1 L: mulntcs \rulable, so I prepared m)sclf 10 \\nle a number of complex setup mutntcs nd to do hours of debugs mg. Well. Ill) lirst ellurt f:uled miser.1bl). btll lunhcr ''Ud) ho\\ed that I " using too nl:ln) ruuti~. L..ooltng bad; 11 seem I " lr) mg to usc n man) of the a\ rulable routirtc pt_~SsJble, \\hen ortc or I\\O \Hlllld ha'e ufficcd. 'The great maJorit) of the t.hsk call re the primithc.. that male up the higher IC\CI ruuun " th:U load IOU ~\C \ IIR and <ii~S M Q tiles. omph hed once )OU have the hie· l.ooding 11 file 1s casil) nume. :md lhe rcoonJ number 1f tlte file i \ IJR file. 1o It d :a m os SEQuen1131 tructure tale. "" ~ampl) put the addre 11f the null·tcnninated tilenantc tnng into the :I'C:nl fl'lgc reg1ster r6 (SOEIOF). store a :I'C:ro m rG ( I~) ntJ then J R to ClUS (Gt"ll rlt" (t.OAD)J. (lhmughout thi!\ ani le. :utd in the progrnrn li ung. lite he.x ddress of lhe rouunc 1 used, folio\\ ed h) the n \\ lnhcl nd th Bo)CC label.) The llle a' lo~C'd to the tldress an the fih:'s Header Block. If \\e \\Unl to load the tale lu 11 different nddre • \\e store 11 I in rO. und pass the uddre to lood m r7 ( I0/11 ). FilenlltllCS are ea II) obtamed from dasl.: or from tlte user\\ uh a dialog box (Sft the c.xnmple pm&frun). If \\C'rc tr)lll • llllo:~d a record lrnm a \IIR tile \\C liN OJX'n the tile b) p:l.\!\ing the pointer tn the l1lenan in rO ($(12ftl.\)

lhen calling C274 (Opt"nRc·wnJI r/t' (\OPI::S).] ~ext we p3 s the reo;; rd number we " nt m • \and J R ::280 (PornJRc-coni (<".oOTO). I \\e're no\\ pointang ut lite record. lo lood 11 JlolS!> lhe Jo;W 11\Jdn:s m r7. and the number of b) tes e pcC'tN an r2 ()lln/071. I mall). ulter the record •~ re tJ an, (lls"umang y.e'rc done rcadang rcC'ords} \\C: cltiSC the hie \\ilh J'R C277 !C/MrRt'C'ordl ilc- (\CLOSE).] lo sa'e a file of nn} t)pc, \\C need to \:reate an urea 10 n~emor) that \\all he s:t\ cd In da~L: us the llc:~der Blud; utw ltcd to the lilc. The llc:Wer i~ 256 b) tcs long nnd "all tell tlte 'a'e routine the file l)pc. file tructurc. load addres • ctc. r:xoct Oescriptton:o. of the tructure of the Header t:nn be found in either \lex 8 o)cc' manual or lhe 85\\ PRG, but there rea lc\\ b)1es \\c'll u-e "hen s;l\ mg a llle that hould he explained. When the Header 1~ \\nllcn to d1sL:. the first l\\0 b)tes "Ill be rcpl d "11h 10 I·F to mdr tc 1ha1 the enure sector 1 used and no nthcr. but \\hlle the Header 1s ltllm RAM. these t\\O b~te~ "ill he used to point to 11 null·h:nnan:ucd lilcn:unc. Tha'.., the name th;u \\Ill be u~ m the file' darcdol) entr). ,\ fe\\ other b)te "111 be uSC\.! to bu1ld the dlrc\:tOI) enlr). B)tc: 6 in the llcadcr "'II hold the normal no~ file l)pc: ( u uall) 3. l: R). 8)1e 69 "111 de nbc one of lhc OEO file t) J'e" llont. pph\.1ltiun data, dc~l.; a ccssor) . nd st~ on i. B ) tc 70 \\all tdl u' the <11 o' file trul ture, I hiT \IIR and() for OliO r;Qur:-.nAL. lhe next t\\o parrs of b)tes re 11ddre sc : 71(72 1s the I dlbeginning ddress, 7J(74 is the end ddress. To

5a\C

un area ofmcmor) .1 u <.Eos SIVI Eii.'TIM lilc, \\C set

up the abmc mcnuortcJ b)tes and acklrcsscs, load the addrc 1Jf the Header into r9 ( 14/1 S). put a 7.cm mlu rl OJ ( 16) und l II SC ll· 0 I ~0\ • ftlc ( AVI). I I o s:&H' n \LIM re~:onJ. "" mu~t first ue:ue the tile. C II Cl F.O as ahmc. but set the hcgmning addrc in the Header Ill SOOOO arnJ the end nddres to HFF. (If tl~e \ IJR file is nn exec utahle file~ put the load address of lh first reC"onJ 1010 Header b)tes 71(72, 1he load oddres -1 into 73(74. and the JMP addrc s antn 7S(76.) ~o" "e h:l\c to create the re unJs. first open 11, 1."all C21\'l 126 time~. then chtsc the \ LIR hie. hle thi : Aprl 1989. Volume 9, Ill Je 4


eta lda ate jac

ldy

l<filnaa K'O : (f02) l>filnaa cO•l $c274 : opeiU'ecordfila 1126

PrCigram I : "com t'rtst'qtopar 0

PI

10 20 30 40 50 60 70 80 tO

(vopet~)

a loop jar tc21t : appendracocd (append) day bne aloop

jar tc277 : cloaacecocdflle (vcloaa)

&A

DP 8C DG N8 KM Ka CM

To '' ntc: u record. select the reconJ h) calling C2 0 tpomtRt', ord (GOlO)J "ith the record number in .A. put the begmning saw addrcs in r7 ( 10/11) nd the numhcr of h)1Cs to sa\e in r2 ( l6ft17) and JSR C28P l\\riuRcronl ("""' I.).J

eave• coovertaeqtopal". 8

open1,8,2,"0: f11ene·a •:1•1000 prlnt"(clc)(dovn) ": for1.0tol : pc1ntl;: l•1•2 vetll , al : a-·(at.0) : 1fe•Ovoto50 1fa$<>cbct(l3)tbenprintat:: goto30 pcint : nasti ifatbenpcint"l•"; l;" : poke152 , 1 : goto20" foci•631to63t•a : poke1 , 13 : nest pokeltl , t•a : cloael•a:prlnt"(ba..)"; : end :

Program 2: "tcon dtfint'r.rrr" Ll 1000 ope:l,l ,l ,"O·id' Ill 101 IIJI'TCn

c

•• toe' nut •moe ,• 1G5t 1C2Q ·•

The GEOS d1 I.; mutmc' do thc1r u\\n error chc\.l.;ing und u ual· I) return cm1r numhcr; m the .X reg1'tcr. l h mg the abo\C rou· tmes for Mmple loadmg and '~a\ing. the onl) error l'\c had hi dc:~l "ith is #II: record cmpt). "hen nncmpting to to read a none 1~tetll 't tR reconl. 01 course. more curnplc\ :1pphe11· tions \\ill \\ant more clahonue error dlc:d.mg. See 'l he abmc· mentionetl pmgrammer's reference guides for more c.lctails.

ol

IOJQ •

, ··tq~&t .. -·

ID 1~ tO

aSC2

tm r1

-s~

1m r2 IJ 1m r5 Dl :100 rl

aS:i "'~ 11$10

tl 1110 rt

aSlC

Ill

"'

.

Ill. 1UO riO IG 11» 12

11$16 aS'TD IUD ll 11$72 ..•• CJ 11" •• n 116Q diabaf a$2!

Another thing I hould mention, is thnt the nbme mutine s~ume that )tlU W'e not changing d1sl.; dc\ICC: nor s\\apping d•~l<s. Chansms dri\c, i" ccomph ..hctl h) callin~ C2BU 1.\rt/Jt'\IC«' ((>R\ ~~ t )I "ith the de' i~e numher in .,\. Thi' shu:Jid he lulltmcd b) u cull ttl C2,\l (OprnOM. (Ot':>.ns.-11 \\ hk h i!> ul!>tl u...cd to read u ne\\ I) in..crtcd lil\k, Thc"e '" o routine , "hen u..cd. ,~hould be called he lore u'ing an) of the loat.l "r S3\e n1u1ine~ detailed abli\C.

:

fore/bact~

•m• lditplaJ'IIffuce)

u 1170 : Ir 1110 p101d •IObOO OG 11" ....._. aSObOt 1200 pet&rt •SObOl

"'c

1210 IG 1220 fG Cll

\hout the program

12~

; 10id p!W.o ..,.. u alJo ; dafU atond llezt ; 1lt bJt• of bitalf

abefl.e -tZOdlt :

-=

uco;

f~

dlal ov 11a

tu1t

CG 125Q . 'ltd Ql;t 01 1270 :lit • . . . • Ill. 1m : 11e pliCid 1a u. Ll ~ : flle btadtr bf ' a)etOfiO'' Ct b!t• 100, Uf u 1)10 : bytt ) ,21 : )121 1COI Cf 1)20 • • fbf,lff,lff.$ff,ll2,120,f01

u., .w

t:s= •

ll 1)1: UCO

"'

fl Ill~ lJ t)tO

A tc\\ notes: llte lirst three h) tes ot the r;ro~phi.: arc the \\ idth and heir;ht Ot the hitmap. )OU mould delete thetn or COnllllent them out 11'> the) \\111 intertcre \\ ith the GEO<o uncompactmg routines, ,\I so. the l:lst fc:" h) tes nre the ~·olour inftlllll:ltion for the bitm:lp. If )OU ha\c a cop) of the B " PRG. -.ce Appcndh. D. othcf\\ise, )OU can lea'e them in. or cnlculate them from the "itlth and height b) tc~.

bft• IIC,I50,f01 $It 111,101 bft• IU,$1UQ1 llt.m ,tot Ill

t,te ll1,101 ,$1l Ste.llt,SI1,1cl,$11,1f4

., me bft• uusz,to1 sac ltl.$01 ,$1c

$!f, $~1 . 1ft $&1

byte

l»,lcl

sac

101 111

Ill' bft• llt IIC,sao ISS llf,lt0,16d $14 • 1l,O $al,$!7,$13,S51 bytt Jri ID tm bft• Ir 1m : Ir bJt• Cl 100 • •

tm

cc

IUO

m.m.m

m '

.bJte 0

GG lC 50 •woant NdLtr Ill U6Q •.m eMold

'Inc resulting "' Q tile ~-an ~ CtlO\ crtcd tu u I'RG file "ith Pm· grum I. \\hit:h i~ tmm an earlier 'lrcltllmtor.ll )ou're tr-.lll,Jat· ing lob ol ium ... u--e the llO~ comm<tnd CO: tu concatenate a gmup ot EQ 111~,. to 'ia\C time. II )ou'd hlc to ha\C~ a GU~ llc:adcr uttachcd to the output tile, change h)te 69 to 3. The progrnm i~ casil) modified 10 accept ditfc:rt'nt input :md output files. s.o experiment. I'd like to th:mk Joe 8ll4:l<lc) for C'\pl:&in· mg to me the use of the undocu!lll'ntcd routine ~ \ppt'ndR~cord.

• 1m .woant

ItJ1IIP

Scb, SI~, tlc,$0d

filetJPI : lfPliCI: !.oe Cl8

giOIMqfi.le : IUlt tddr

ted tddr : rt.art tddr ,..,

OD Uto : 1J 1m •uc '1COI dtfUlll'f1 • • II 1540 bft• O,t ,t ,O

.

mo , ~~e ·r 9 w...ua· tszo bft• o.u .o

11 &I m~

.

u 154' ,tM

c

••

155Q •

W1dU

IU1t ........ ..,..

I flU lU u.. cf " ... "'"' • Ptbl : _ . , ... _

n USII ••

Jnlgrum 2. lwn Drfitwr "ill translate: a ph01o from a Pholll Album intu a form readil) digestihlc: h) )llUr a sembler. I use thi progrnm to 'r;rnb' Ill) comp:l('ted icon lim" ing' tn1m gcoPomt tur uo.;c m rn) pmgr.ams. In 1:1\.t, th~ u:on .. u'cd in the pr11gr.tm \\Cn! tr.uhlatcd b) an earlu:r ,c..,. ion of thi~ pro~ ram.

'

r-

ac

rwt oft»"*' ia lit aid hen

byte


ca 1m -.urt

~

.U 2m II 2)42

me····

t1 1510 •• r.ut+U:

c liD.:,.., ••

U.S.

II 00 U:S:: •' 11: 1m l4a 11 CJ 1m r.a trf!A; 110 lUO ;u clra:: Jl lW ;ar llcic:c

~peeU1td

an

~

r..anillf poilU

1A uh file

1 ~tder

fer tim call ;hot iutr=icu de l.c=t to Mirl loep

mo dciall •• 2lt~ l4a tcll}'ialll can au~

IJ

1:1)

GJ

1m

)U )U

klJJ klJt

eot.petem Iw.patl 1 I:'ICU"9ll (;:fill2)

mo ttt• c tH

10 1710 00 1•2c

-=r 0 Slt

tua off~ w'9w • ea111 n m~ .. n ua, u.t ra) GJ l"U • iMm ov - roatillt i:;to U. J.J mo • ~:n~n neowv ..ctor &.\ m~ &I 1771

lda oti.W IDd t 1C111111

a

11~

m

mtl4a

bit~··)lt

d.i1bot t~r

Gl liDt IU n.ctw: Ill lilt ldl t>rtCOtf • 1120 IU 1:'1Cf11Ct1

n

1120

bft• s IM u

00 1flQ jar kl* Cll. U4 ~ wor 1&mlw I.G 1150 llftt S,U ) U &.\ 19IQ ~ klo co mo wor rumr a 1 : bytt S, lCI J 11 ca ltM pr ~ &.\ 200t wor Sc 1111 I'D 20Ja jar kleo a mt wor 24

oo

2~50

n 2uo

D 2070 1.1 2010

ro

01 2110

a

11t

s

uc: 'bf t 9

1 pltttri.lt (dlpWI

•1 o·

~tlle

for • • lldtr11M •

mo pr kl.lt 22~

It 22U

n:

22~ 22~

ut

110

,,,_ nc:ad"

lift• 0 )ar klat

mv .,... o

23Qt )If kl.lt n. mt wor 10 1-' 2l2t bftt 1U •

TrOI'IIOCtof

CG 2•1' bftt C,C,I 11 I.G 2U, IICr c:t; OM

I,..

k fiquiou

n: IU JCUltU

Cl UOO wor ICC a m. mo bJtt lt o 2 u U 25~ wcr a 25l' wcr 1&mw &I 2540 lift• ' 0, ) u • 2550 wor dclelt AD 251Q wcr ranow 1D 2510 bftt t ,t l 16

""""t

ZSI~

ca mo "

.wcr d:nrt

wor iCCGM ZIQO bytt 12,0, , ,16

n zne wor ll'l'llt

W ZQO - i.c:cD lltrtct roatlMI ••• 11. zuo ......t •• flit .,ucttu. 11: n•l ,., tcz2c ctC\Ieot".~p (reo'.rt) 1t 2GO ••• cMott a pbcto 1 !tm n 2w ,.,Olt •• Cll 2110 1U WUl pit" t i l t w cal llltc:tll ID 2~ CliP 12

mo~.....,.2

0

2 ~ 1da ·~

211~

tlp1 dcwr2

• mtlda to

Ul Zllt tkn1'2 •• 00 2120 ,.. f1Ut

lilt ••••

" 2114 llpl ,.Ut 1:: 2170 ldl ., a. 2180 Ita nr•c.. a 2m : IP 2* f'Ut ••

pit tp fU=

n zm }If • a 2t2Q pr fit*

11t

a

znoru

DU -· 110 2f5t ll'l'llt •• Cll 2KO }If flit'Clf ID 2~ ~ 11'1112

rr zm

~

GJ wor sa • 2211 byttlZC lr utO a.ec: ' lilt

o tJ

wor lCDIO

c;

J111ato ••,_.

2211 wor 5' DJ 2220 I!Jt• H I'D

bftt ' ·"

lcm t*ttt t siJ JC!tter fllt'lc poU:ur

ID 2140 dclut •' • 2150 dtc ......

bftt 52

lift• ~

•IU zm mo

zm bJtt n n~

H ~ IIJicm ••

t<*e·eo)

.PI

)If

m~ a.ec: ••

~.,.,

1 at rJ 2764 c mo 11c net u

2120 lift• 14 It ZUO uc: •U. trllltietor' ca 2m bft• u o . off • 415t )If kl.lt J: 2161 wor 10

.o

zm ru c:.zm

llj

1.1

ZUC )U

rO+l Sc1.5a

"'11 J••= rt.l mo •••

kltt 20to •wor 2.

.. 2100

z•:~ 1t1

Ill 27)0 ciiT012 ••

bftt 4t z• uc: · ~ daflar

bftt 0

iccU

a zno 1t1 ....:•-. c me,.. fllu

• zm bftt s 1n ' 11 • zm · till tlwJ •

•t

ca

01

IJlm · .,. 1m jar klll 1.1 1150 bytt c. u 11 U~ wor 1U 311 n. mo bft• IH eoU4 u.. IJ 1~ • priat !t wo llj 11!0 • tint ... Us ' taM ~ tl 1 ~ ;ar k~ 1 ba• 1 'f' lcla21 ~; U:C wor in+

r::t •

a zm l4a P11J1cC1c

m;

t:

lCCCJ-

111 D

Ill

1m ldl

I!Jtt C

u 2m •••

11

• :m

a ncord'

D 2n4 I".J

c::. 1"' rtJ n 1£50 -- ilitial $etMC •••

:w clntt ••

U:: ' CIIIfct all

n

D 2m J&f idft Ql :s= 1U ......

pnllpt for -

-

ca:al eoltcttll

uaelate to 4ilk

1P 3Qlt 11'1112 •• 1l. lC~ rt.l

,u a nec:d •

liD JO~ .... • • ' ct11 • to ,.t m· 1 ... II lC. flltba •' utt 11ttn of filt a 3054 • cleLr • f11=• 1 llllffu 110 me 14r tu JO )070 ldl ••


I

u ~ ptfAl ..

I

IIi l:M ru 11 T 7 ~ dey .. l11t llpl ptfAl

-.

u.

·

lHt 1da f<fipllb• 3170 IU rO &I liiO ldl t'>plluu • lito au ~1

mo ,; mo .

r5 to ~ld ..,.eed a n~ 1* l<.a.,..,• Cil JW r.a r5

til ltoO )If lclU

1a •

.

JlSQ 1da ·)l~l'l:lflll-

• me .u d+l

D 3170 1da l<p+.d

• mo.uro

~

of • tabla

&I

('lildowJ • • lloldl 12 l.f - : 1 ntu11 it to caller

3250 : • tabla

JD llfl ~ •'

Cll 3210 hftt U1 II ]210 bJU 2 11 II tl 32M • • 11

a

J~

Ja JJlO

1IQt

u

bJU U, 11

• r.tua ,.._ !.a r5 poillttr , ruada:d poutia · ct'CII U.

11 •

,.nr

0Gll2t :

ca

~

f'UU. C.S

II~ • d l

3340 bJU 24 If lUO LK piMM -.r file' ' a lMO tift• 21.1 • l370 : II lJIO :--· Mt1p 6 call • to liaS~ B llM fii!Ul •' I; mo : clttr ..:t u. p!ruu

II 3410 ldy Ill

• Jut 1da ,, If lOOWU•• II lU) r.a lh , 7 ro U50 dey » JUG .,1 hfU ... mo : MUck for tliU pot hlt typt : n mo ld& 11 : appl . diu a 3410 r.a t 1 Gol lsc:l • Rtua ttliCUd f1lt . - 1a c:: l51t 14a tqh CC 3521 IU r5 CJ JSlf lda f\p!r'l I JJ nu ru r5+1 D l550 : ~ for f1lu ntll tllil ll lSU : ptrM'nt3571 14a f4f'TPP Q) lSU IU riO UM 1dl f)J'TPP Cl HOI IU rlCtl AI Jet ldl l<ffU. : add!: of • ublt 1120 ru rO It l'lt ldl t>ffU.

• • •

~~

&: )ct )It k2SI

dodl--

;:; "" ldl rO Ill lf!tru . rOil a • JUt : Ill UN : . ublt ll )100

a

mo

: rtlad&rd • flt!U. a.s

s n.zc : .,..

a& t~rt• u. tO l"U bJU 2 11, 7U : ct'CI1

... 1'50 :11 mo : prUtt mao•• to ac:tm 101 mo +eT •' .. )100 ldl tt : IIAn U.. rc n )It lcllt D =)UkUf 1e sm bJU us IC JUt wor US, )(I)

IC lUI

kiM Cl lut .wr Ut .. )150 bJU 11,32,0 )If

:

coct

GO

mo ru

tpact

all

, •

d.W: ---

: Mtp&tten I 1'RCIR1lt

111tt O, l1t

trror rt.AI -

Jl CUO IIOrtC •' &I 3ar k1tt Ull ~ ut

mo

CUI

ldtpn-l

m

n 4100 , •••

•n

p~rtdec•rl

: 1 p:tatrllf

bJU 102

a mtuc " •Jncord ' ID uu bJU t

mo 16111 a. mo au ttfhv ID mo ,., k21l ID

.,

4200 rtl rJ 4210 I"' n WO dtrror •• C1 Ult fbi

: urtial.a a

czn 311 lclM

01 4250

.wr 110

11 4214 bJU 10l II 4270 uc • -41&k uror- I • 4210 bJU • a 4210 p1a II tlOO fbi oc 010 ru r0 mo lda to ll mo ru r0+1

... D

em ldl lkO

• mo mo

)It

: nwWt

lclU

PI lda 112 JC 4370 )It lclU Jl nat ldl 11

mo ru erfhv IJ' uoo p1a '" k2l1 a. 4410 n Cut Clip 111 Cl UJO a.a drn2 a uu )It k1M g

: In

11 • too 1oaq

: . , Ule record too 1oaq

• mo .tift• m

U50 .wrd 110

IJ'

uu. ••

u 3110 bJU fl1 a mt bJU u c,c

: nwltft

IL 4000 ) II k!U CJ mt ru a 4020 •·-· IG COlt doftid •• If ldl n CC!f ) lr lcllt me 3., lcltf ~

mo~t•'

U4 ru

mo 141 tn

Cl

, pouter ~~ ·~ 11 0 ,

ltU ru rO mo lda u 3KO IU r0+1 lt7014alk0 3MO )If lclU

m t bft• "n 4:11

_.

a

: ncordl

r;

• nco ·--!j

fJ

Gl

nlUtru •

; peeN• 1¥ •1

Jf

dod:pa

: alW

A%. lt20 )U lclU

CJ

Cl J1Mldll>ptd u n ru rO•l .II 32:1 )U kn6 • mt 1dl rO

mo ldl 1n

rr U70 , LK • ' record too loat' • a em bft• t R

.... dur2 ••

u uoo rtl D me :

.•

mo trf1tt bJU • mo :··- uu u. pboto , •• 110 csca drnl* •• : uu matted p11oto a moldlt>p~Urt II) ma ru r0+1

•"'

mt ldl

~

: wpa •'k

CSIO ru rO DL CStD lda II

cr Uot ru r1 .n. em lda m lC 4620 ru t1+1

: 'pilelpoa

If

: w1ti Itt lMJt 11

me lda plied

Apfl1 989; Volume 9, 1aue 4

4


• e"~ tleq bdiq o ern Clf uo ID e b:l bdlq U CO

n

Cl LJ

OJ

~treJ·• Ia 54» r~

M 54e ll. SeS4 OD 54lll K 5410 ar 54" o.J 5m ID 5500

r2

JU

u. •pllf;a e noo ap me em ta '-*'i' euo .... r2+1 eu~

c .,, )U klC2

, mo

bit 14 lcblal

M nuru

II ClS4 ...,.., • • ll Cllll )Sr klae JC.

cno

ward

m

rJ ,,., t,t• 1 2 " ., uc ..... ~tl:q-

c.

e ~ t)-.a I mo ru U2' em uitiat • •

Cl. Ir Cl D C''

UiJ ru u ailed to~ U. 6 rhlo+ & U.. nam •• mlled Woa¢ UCbl

em DD em lda ma, a eno ta =rcn • Cl01dlt1 u em ru rTf 1A1J 1110

.. ctOO jtr IIDFid " eJlO 1da una, u mo t:De Mhp 1.1 m~ '" •• ,, M eN' •:t 'f •'

tYi~

• call-

•rr mo .lO ' ~ 110 41

. u tM.... bitMp . u.. 61oplay it

.... rTtlJi

ru

."'

sm itt .cdrri~ 0 fltrte ••

•• l" IIDFill tqt • suo !e ~

Cl

Dl

II:

r;o

!:)Uk211 !100 Ua 5110 tU rO ldl,.... 5l» ltJ r0+1 51" ]U k21t

cr

• IF 9CI]Ik (fj dlkl

... ot.n

~lli (Hfd)

mow

ID Uto Ill 5111 tc 5111 K 51tt ll SleD

. . 1f • vror

... 1"1

tf!ll&

• po.iatncord (g:lte)

suo ... F:2

• sm lr r -

. M

sz~ru

Q,

5ZU fi'C2 •• sno ol, -neduia W 1da U!5 - f of lift• toOitia·plotd 51 eta rZ•l SlOt ldl lldl Slll JU d 5320 ldl llflotd • 1ot1l to~· Sllt Itt r7+1 53., WI 1~10111 5JS4 au rl suo ~at k2tc • nt1lncor1l t•loa41

II II Ill D

.• • •n. 5310 w, Jl

IU

.

11

Ml1l uror I

5ll 5l ... trd 54:0 ltt 1lernr

rc oa sm tt1

TIOIIIOCIOf

1.c

uu far '

• c.loMnco:df1lt ltd-)

suo Itt 12•1 sm ldl t<ahpa su ru al suo ldl

,,.,1a 5'U ru al+t

•.n. sm llbJtl •• 1oap 5700 ldl pea at .c; mo _.. UCf .10 n~ "' llbJtZ lftrJ u llr.• LJ sm u. m . tt1

ll SIOO Jt SilO OD SilO , SilO CD ~U " !ISO lr 5160 to SilO II StU t; Sl c 5 • 1.1 5t1C

10

jar M++r ldl IU

)Sr.....,., ldl U2 jar

.....,.r

rtart • -

• ,.ru~~ ••

:, : t tpC

Jill IJbytl

IJbytZ •' ldl IU

a

-

)tr IM::\r IJbytl •• iac pee t

sm 111e 1121. 7

D U» jar 10 5tc0 )tr II

ta 5220 tya Jl

• • rr co

a.,u.

=-•

: iec!n uu

,,ItO file

~

!tst )Sr Cllpi2C Jl !Kt'" llbytl

rta ffCl ••

me 1u k2tO

• 1f 1t p

.- !Sl' -·-·········· CC S!C, pte I 7 bJtt 0 1.1 5!50 rdjt •• 11: mn Fbato ll'l'hd at p!.oed to u. ao: u ac ·1 w 55 0 U.llft• file n1l .. ...,... frc. 1•1;11 to.., IG " " IC • a2 pllot4 poilurI ' .., lll7ltt pol ltVI C& 55 1da f(plead loC HQO IU a2 111 sm 111e t)p1at1l

)11 danor

1da

ned

!!:Oru

aco sm 111e "' m~ itt.....,., mo jar.....,., 111e '" •• sm Jt mo ldl m

141 •~

Dt SC20 -· 4ut roat.11tt ••• 5030 r. 111M • • 0 5CU , 1!p81'!r1ft •' cpt1GIIIl PJ S4SC ldl H , 11t1• ~

lift•

: . _ yet

m• ldiiU

CIL SMI II) SttO II 6* II &o:t • &o2t 00 &o» " &oe • &oS4 CC II 6070

)ar addehr 1da l!l eta lll i.J ldl f<ahef!•

;-

etart ia ..a'!tr

• -

. . . 11 ... tr

eta lrt&rt ldl f) 1a Ip1 eta uurc+l

ldl

a)

JU 'II I ldl al+l

a aoeo ru ur Q, &eta ttl a noo :

;1

SD UIO : trmlatt a u. 6120 . . . . pill

bJtt

1lltO lla fcQit

n mo u. m cr ,1, jar addc'r 01 uso p1a II mnpaa

; -

lift•

• mo 11r • ,110 1Jr a '1M 11r

:-

u-~ ato """

a

wow

1a

"" ll - ae u a poiater (r1 iJ ~ at iJ ~ fer wr - 1

Cll 5m )ar .....,.,

IOrCft •'

tl SC1D

,.

follw'.119 U. 1ut

Ia !W ety DCpcouD.-tt

n sm rTtlAIJ bJtt •

II)

ldl rl r.a aC ldl rl+l at.a ahl ldl u r.a erfl19 jar dr~ jar k2l1

br.e

• sm ldJ u

a emru Uto

of fan

u.


II WG pr fedtoc • 5m )It

...,.,.,r

.. lm ,u ll. 52U JU fpteae c:. mo Jn eddcbr

ntiRI 111~ ud1 diu ia • • nut lt u lllffu

DG

1~

• fit cnpw bft•

01

bftt t01,$00,$00,S0),$11,1J1 SIO,SOt bptt $ot,SOl,tto.$J0,$1t Sll 17t,SOl brt• $1t,S10,tll III,Scc,$0l.St0,$1f bptt Slf,$U,tcc S0l , St~. t01 Sbl,$Jc bftt Sfc,SOl ~, $01 , Sbl f)c Sc0,$01 Jlj 101~ bft• sauu Sbl m ,tcc soJ sac,m 10 1Cil bftt Stf 111 S7t S~l . StQ,t:c $00,$12 ~» bftt SOJ,SJ0,$04, to:I,St1 SOl S~ Sff « 7100 bptt Sll ,S7f St5.tff

: lltitt 1t

"

521~ fl!!!aae ••

: rcuu ucii fGr 4 lJb 1.a a

lm ..S UCf

: clear 4 Uhiu

Ill '~ Clip tJQI 1111 ~

c mo

• >t priat

• m'

11: ~m AI M fiadl ••

a·f , +SH : if it ' 1 O.t, ldd Slt

• •• lUI 1urow •• ; ltft a.rmr 71)0 bptt lbO,$ff,Sff,tff,StO,tOO.SOl,SJO

1t' 1

to caatVt to

uc:ti

7110 ;

Q) U.~tdr:tSlt

1COI

a. moru

Ol UIQ '

D.

me eddc!sr ..

n• lm ln

: add diu ia a to tile

11 JO Cl

714' bptt $00,$01 Sto,$00,$0l,tt0,$40,$0) 1150 bptt St1,ScO,tDJ.tt7,$ff Sfl Slf,S!f n 1}(j bftt $fl,Stl,$ff,$fl,Ul $cO SOl ... a 1110 bft• s.a,tol sa: too,toJ StO,SOO,SCJ 10 111~ bftt SN,soo S:J m, tff , Sff, t~t , ru , m

bftt lhltl lllffu

WO IU flli,J

10 li R

n

iAW

u:o ru &.&:~ • roo ixll lac a2

Ill 11t0 .

,., lllellitl

•.. "~

w2 ru

(410 : Q) (411 iacll UIC ll tl "~ lllelial tl UN lac &3+1 (I D.."t li&l ru Ill

• ~

D

1270 :

1210 ,.. .. : fi.ld . , _..1.01 II lltO : uc ' plloto allw • Ill bptt (ftfiU. IICIIt l.aclacltd) D 1)20 : tile - plloU atn jt'2 , 11 ttor. tile It llJO : • • of till l.adindllal pllotca u tile Ol 1340 : lut utd r«erd . llSO : . . : .uc •pboto an awl t• I.l 1)(0 : to rMd tile ol4ar ftfllOII trelUlftlJ n llll : - · .aae ' plloto a!' a t'2 1• llM ; to rMd tile ttrJ!.OI

nto .u ar 1 1: litO 1da &2•1 n ua 111c ahl

• .,• me : 1401 bftt t ,0,0,t ,t ,0,t ,t ,l ,0,0,t ,t ,t ,t ,t ,t : eelocttd plloU 7410 t ,O,O,t ,t ,o,o.o,t ,t ,t ,t ,t ,I,O,t ,O: ..., • 7420 : ·········------··--········

~

tap Mt

:

CIQru 01: U40 :

01 GD 7410 ; w. wder I.l 7UO bttder ••

'bft• 0

.

lUG :

. "" ..........

r. U90 141 f<'crtr

: liar"'• block for fllt

n moldatt

IF . .

;

---

t&it icaa

bft• l(i,m ,us t ,o,m ,m .uu,w ,1,1211 aA (ilt bftt 14l,2tl ,14l 241,14),241 Ul,1,121 n uzo bftt 1.uu ,m m .o t ,m m .t,o "~

oa (iJO : tile 1cau btlaw ..ra 'vabbtd• CG (iU :

(iSO « (iiO II ll1G I~ 61Sl II

W1~ . .

aul1u ftfl101 of W.

; cfaooet

ca

1e01

II.

7(]1 Utut •'

: ttut lddr

; ..S lddr, )lllp lddr '"' .uc ' I.CIIII defl•"1 ••

bftt ~ . ~l . Stt m ,s:.. nc.f1t.to UlO bftt Stt, Sld Sill SU Sell SIUtt. S1t mo bftt fbl ,su.Scl,s•.stt,m .auu

UCO ltSO tJ lt60 • me

11 ]'lilt • equze oatlut

Ill 7((0 . ~r t ,t

nc~

lt~

I.CIIII

PI 7(41 •wr t OI 7(51 Till d ••

byttf05,Sff $12,Sft,SIQ,$C4 $01,$12 bftt SOJ,SIO,SCC,t:O,Ibi,JCl Stf,Stt

• "to bftt .ot. ~. s~. ~l . ua ... soo .ot • GC a GC R 10

1520 ' w.

AI 7601 .bftt t : _..,...talunattlJ ua J for dttt D nlt ,bftt 0 ; ....... II 7UO : e.t two wof1ll pt.ctd bf tnulttt rt.o

; p:ogr• ic!MK!I ••

..

,bftt SIO,t ,1,St0,0,1,$M.t,1, Sff,Sff Iff

bptt $tt,t ,1,$JO,t ,1,SIO,t ,1,SI0,0,1,$10 bptt t ,1,Sto,t ,1,St0,t ,1,St0,1,1,$JO,t ,1

1510 ; - tile fUt 11 1 ca ... It 7541 bptt Sl1 : ca "' If me : ICUallf , .._ t11e wrut wntta IJ 7561 ; u. blt to d.iJt 1 t - 1.1 ma : tile liar •er to 4Ut ct 7511 ; .... lt tile e.t Al 75ft : bftt, a hlttJPI of _..,...

xo mo :

11 5110 :-- icaa tnfba

icaa

bftt Sff,S!f,Sff,Sto,t ,1 tto t ,1,St0 bftt t ,1 SM,t ,1,$M,t ,1 $to l,l,Stt,t,1

AI;

; 11ftf1lt (llftl

: Jr21

w.

Ol ll CJ

7410 HN 74to fJ 1500 PJ 1510

rt

CD 51U ttl rlt II 5150 ]lr fc.1td If 5110 ru

h ...... aloog ¥1~ tile

Hst ~rIU 1461 bftt l 21 •sw

PO 511C lda t>••rdtr s 512C 1ta rt+1

• nto IC

tcttrld

rTDIIe • •

Dttlp

51~ Ita

f' I I

D

c m• :······· Gol

.. • fittat a.rmr icoa bftt Sb0,$ff Iff Sft St0,$00,$0l.Sto bptt SOO,SOJ,Sto.tOO,tOl,$10,$04,$0) bftt SJO,t01,S0l.ttf,Sff,Scl.Stf,tff bptt tfl,Sff,lff,$cl,tto,S01,SOJ.st0 bptt 104,10) Sto,SOO,tO),SI0.$00,$0) bptt tto,$00,$01 lff,Sff Sff S7f,Sff,Sff

run~~

•• 7];0 $71,t6J.Slf,$74,tlf,$21,$fl,SSc,Sl2.S75. $&d $21 ., 1310 bptt 0 :

II: i560MC II. 1da &2 UIO lllc a4

a

7210 1220 7210 7240 7150 7260

ID

• , U70

.. (l50

D

I.l

·= ..

on ar 1

1200

u

c:o : mo · 1a21 .. lll~ : lf &2 >era •• tllle ..... ~ tile tcf .. Mt ·CtfrJ rn ~ : u < c~~~e nc11111 111~ •cany clear cso :

:.C: K2t

AI;

It 01.

"" lac tl•l

a.

$00,St2 tu,Slf

IQ 1020 lClO IC 7040 11 7050 Il 7014

a 5210 .----

a

~ -~

• 1e10 bftt $0J,SIO,JC4 SOC,Ibi,SCJ

Jo:: UIOru

,,!_.. bftt IOS,Sff 112 f!t ,SIO,SCC

" '"' .bJtt •.•.••o "" : noo .aae toruu. IU Al CJ •f . 9 · IL 1110 ·brt• 0,0,0,0 OJ 1720 :

bptt S7t,$fb,ttt.S1t,Sb),$((.SOd Stl bftt lfJ,UJ,Sbl.tU,Scii,S• . Itf,Stt brt• ttt,S)c,f71,tfJ,StO,S04 t00,$12 brt• $0l,StO,S04,$00,St1 ,SOJ.tDl.Stf brt• Sll ,S7f SCUff

.,.. 11)0 •••tllt

1740 .S.:rd a•

'* :

a: mo ..s

.a

; lfiCifitd ia bttde•

tlbwe

Alii


RAMifications

Approaches to fattening the CJ28, with critique and conznzents fronl Paul Bosacki, who did it f or the 64

b\• Richard Curcio Paul Bo,a~.:l..1\ C256 (\olume 9. l"ue 2) i\ the mo ... t exciting hardv.an: project lor the CCH to come along in a long time. I offer a bit of ad' ice to other. '' ho v.ould modi f) a \aJuable piece of equipment: Don't plan on n:-u,ing ch1p' de,oldered from equipment. Often, the effon... to remo\e the chip intact re ...ult in damage to the circuit hoard. If the IC j., -.ucce"full) n:mo\ ed. one can ne\er be 100% cenain of ih reliahiliry. Without acce'' to profe"ionaJ dc~ldering equipment. it\ better to plan on di-.carding any remo' ed chip.... H3' ing m3de thi' deci ion. chip remo' at become' much ea,ier. On the 'older 'ide of the circuit board. ...orne pin' ma) be bent O\er. Str:ughten the-.e b} heating v. ith a lov.-v.all3ge ...uldcring iron and ..,Jippmg the bl3de of a \maJI jev.eller's -.crev.dri' er or a hobby l..nife (X-acto) het\\een the bent-o,er ponion and the PC board. (Thi' 'tcp ;, N,cntial if )OU do decide to ri'k reu...ing the chip.... ) On the component 'ide of the bo.lrd. u'ing a 'harp....mall d1agonal cutter. clip each IC pin a.' clo..e a-. )OU can get to the body of the chip.

u-.e a tooth-pid. or .. rroightened paper clip to dear the nonle. A 'harpened \\ooden tooth-pick ;., u"o u\eful for clearing out the PC board hole'>. Oouble-,ided printed circuit board' (circuit troce' on both 'ide-.) use "plated-through" hole... In other \\Ord,. the in,idc of the hole i' copper clad ro continue the c1rcu11 from one 'ide of the board to the other. If an) dc...uldcrcd component lead or IC pin come' out \\ith a \mall copper-colou~d qlinder on it, the through-plating ha.\ come loose. u..uall) . ..oldering the replacement pan on both .,ide' of the board v.ill ~ . . to~ the circuit·., continuit). If )OU can't get to the component 'ide of the pan (\uch a.., the under..ide of an JC 'oclet.) nov. ju.,t a /m/c num· ..older than ncce'"nr) from the bottom of the board. You might want to prncti\C these technique' before mangling )Our tru't) C~. '\1o't lal}!e cnie' ha'e an area that u-.ed to be I.. nov. n a-. ·· Rad10 Ro\\ ". v. hen: one can purchase eveI) thing from anc1ent telet)pc: machine'> and r-.tdar tmn ...mittcl"'to ob'olete and/or defective con,umer electronic.... Pick up a fev. junk c1rcuir board' and II) )Our hand at remO\ mg IC'> . RA~llfications:

the C ll8

Once aJI the pin'> of one ch1p ha\e been clipped. and the bod) d1,canled. begm de...uldenng the pin,, Heating each pin from the bottom olthe board. mtht pin' will 'imply drop out of the hole. Tho->e that don't can be rcmo,ed from the rop-..ide. Grob each pin v.irh 'mall needle-no-;e plier. or tv.ee1er.. v.hile heating the pin "ith the -.oldering iron. With ju't a fev. jiggle,. the pin 'hould come free.

There nrc a number of JlO'"ibiliue, (v. 1lh altendanr difticultie'l in performing a memol) e\p;tn,ion ...imiliar to Paul Bo,acli\ on the C 128. The folio\\ ing i' rhe ~'ult ol man) mghh spent \ tud: mg the Cl28 'thematic, and is intended to 'timulate 'Oille dcoore on the ..ub.JCCI.

Clear out the hole from the 'older 'ide v.ith a "...older ..ud.er". Rad10 Shack curries a "el) inexpen,i\e one. The trick v.ith the-.e 1' to l..eep the n011le clear. Empty the \ucker often and

A' man} !unction' as i' rea-.onahle 'hould be controlled b) ...of! ware. with a fe\\ ke) functions controlled b) .,\, itche' that over-ride the sottwan: ~tting .... There j, ample LU 'PJlC for

Traruactor

Aprit 1989: Volui'M 9, laue •


~ ) ()o

nddtng latches :md uch "ithout u ing the 'offici I' 1.10 loca· liOn • At least part of the ndded memof) mould be :m1ilable in 64 mode nd be com~uble "ith \ 1r. Bosacli 's liesign.

nothing. Waul or Comroodore to produce the CIOOO. (lAln't hold •\our breath. I

PerMmall}. I am inclined to go "1th item one u~ a pl.m of actinn. 1\ lemof) j, increao;ed h) I%1\ to a total ol 32111\. De<Jhng "llh the d•ll•cultic~ ol Jh:m t\\O rna) require nn inordinate amount ol logic. lmuall) item three merel) douhlcs the :unount of mclllOf) and f'C4Uire~ e\en rnon: ' outboard' clectn)f'lics.

\\ uh tli('SC criteria in mind. nm~idcr these "uggc tion-,: I) Repl e the 641\ of R,\M I \\ ith !.561\ chips, dl\ iding RAM I into· ub-banh'. In 12 mode. \\C nec.-d not be '-'oncemed "ith the IOC'tltion :md amount ol common R \t ~in .: u· al\\a\ in R' t o and the MMl \\Ill tal..e care of cH:rythmg. Pm 47 ol the \1\tll. \llri · OU\I) refci'Ted to a." M\ ~ c'r c I!M, goes to logic 0 in M mode. d~sabling the f:l!-t serial circuitf) :md ignalling the l'l.A to :h· urne it C64 personn. lltb can be u~ to d1 regnnl RAM o nnd \\Itch mer to the C'-pm\Jed RAM I m 64 mode nd c:nable the CRA!o.t circuitf) that \\ ould be needed. sin1.c: the I!Ill cOe~.·­ ll\ d) \1lni he-,.

lltcre nre numcrou' detail to be "'orL.cd uut in imph!mcnting an) of the uho\e lc.~\ccpt lor item 51: What i' the dJiteren"-e hct\l!ecn \1~\. \\hich doc:.,n' t ellht in the CM' old \IC chip. and c .., ) Should the ne"' <'RA\1 circuitf) lool at the procc sor ddrc h\J,. or the trnn~l ted add~'" bu.,? llo"' hclUid the pm.""OOiigurauon reg• ters he handled. 11 at all? Jlo"' hould C:\~nded memot') behaH: 10 Z 0 mode'?

#

With enc,ush hard" u~ . un} thing h pch,ible. The quc-,tion k J, it pmctic:al'!

"''uld lose the ahllll) to ha\C: "''mcthing in RA\1 0 be preN!nt \\hen \lie :.\II IICh tO 64 mode. lr \\C: Ollcmpt ttl male RAM o a\ailahle. along "'1th the ellp:mdcd RAM 1. in 64 l1lOllc \\C then h:t\C lhc ,...,. b..lnt.;.,. • a majm incompAtibilit) "uh Mr. Bosadi' dc~ign. Hu\\C\Cr, \\C:

I he fnl/m, ins: te'.tt u taJ.t'n from un C'.'Kr' hungr nf lmt'n he· tttc'rfl \ fr. Curuo an./ Mr. BosllcJ.J. \lr. Cun 10, lll.r .\fr. Bn·

2) Repl ..cc: both R,\ \1 0 and I "ith 25M\ chlf'"· creating a

sue l.t h(1i'''' fum . ""' J.mdf.\ m:racl 111 tlu· puhltmtlo/1 flj ltu u,Mrt'H. · MO

C512! Be ides the potenual for d:unaging the circuli board b) ~<,01dering 16 si~tc:cn pin chips (that',. 2.56 pin~. full ), \\C ha'c: ttl duplicate the CRAM oction of the MMU. lltc:re i" no "ignal from the M\tll to indkntc th!ll common R''' is being ucc:c-,->ed. 'Jlle ta,J.; 1 to capture the common R \ '' amount and locu· lionhl \ 1llue' "riuen to the RA\t conllguruucm rcgi,ter at 05116 lnot twcrl} thliicult: 05n i.. alread) dec-odcdl. and qu:~lil) our t'RA tenable "'ith theCA~ intended lor R,\\\ o. Appropriate three- uue circuitf). "")f'ltmlled b) M J. could allo\\ thh mod to mimiC' \ fr. Bosocl1' modJiic:111on 10 64 mode.

I applaud )OUr 9Cromph hmcnt. creating a Inc C64. I wn c-.1ger to lnc.w. the deuuh of the S I!K e.llpan,•on. If 11 u~ a "1tch to sck'ct the "CC.:ond !561\. )OU might he intc~'itnl in Figure 1 ol the: endo->ed ~hematic.•,, I am told that }our modilkation due,n' t Y.ort. on the nc"'er 64C,, Can )OU c.onlmn th1" or pro· \ide a li\'! [1/uppi/y, Mr. Bowel. I ""' ohtmnrd 1111 II-hoanl 6-IC cuul \IUtr\ tlwt thr moe/ cun he ctchirt't '(/ 111 thm muclrmr olsn. · I~ I/ Al"'l· ho"' arc RA \t-b:lo,ed charucters handled by )our circuit! Doc Cnnfigurr 256 Y.ort.; "ith groPainr? Hc1\\ can "e implel'f'l('nt ) our GI:<l'l mod "'ithout the (alleged 1 bel')('· fit ol Gt'oPmr:rammn' ! I om not a fan ol (,!;<) nd tf •\OU c;m pm\ide an) impnl\emcnh to it lliL.e turning oft pmponional 'pacing in tC'<t in f:t'oPaillll that "ould he ireat.

In odc.huon to captunng the CRA\1 p3rumctcrs, 11 "'e uho cup· tun: bit 7 of FRXl, \\e can implement the mi~sing N.nL... 1 and 3. \\hich the opcrnting s) tern alread} L:no\\s uhoutllutthe M\1 nod the rest of the h:lrdwa~ don't pro\ ide. OnI) minor nltcruuons need be pc:rfcll11lC\I on the C 118 PC bo:ard. \fc'll'e RAM could be added at a later date. The hartk~t ~ rna} be getung it all to fit in,ide the: ca~.

Ha\e )OU con,itkretl the JlOS'ibilit) of a Cl:!.~ e\parhion'! I ha\C a fe"' i~a retardin that, and 11 seems that there are more th n a lc" dlftl'-'\dties to o\ercomc. I had heard ohout )OUr C"-.56 some Jlll)f'llih before secin~ it in 7rcm<ructor. \\-'hile a" uiung that i.. I de\ 1'iCtl hm paper) m) O\\ n method for R\\1 C:\pan,ion. I don't L.no\\ if it "ould "orl.;, and I admit that Ill) L.no"le\Jgc of d)JWTlic RA\1 is S4'111le\l!hat

,uc.

4) Don't add an) RAM. In tc:kl. m:1t.c RAM \, the ~ond colour mcmcJf) roru:. nnd pos:s1bl) the fa 1 serial circuih. tl\ailable in 64 mode.

...

..,

Tlu i" pn:tt) 'implc. Commodore could ha\e made thi' a\mi.Jhlc u' an 'enhanced ' 64 mode.) When com~red to a <'256. thi-, i' pretty mc:agre tare. and ma) Mt be "orth lh1! effon. On the other h.~nd . the c\crcise ma) be u-.clul;a.. a prelim· lll3T) lwd:.

.....

..... .. l

I!M

t o O(hw

47

Apflll919; Volume 9, 1_,. 4


M M ~~

74Ul.t'l

.... .,.

"-- - "9G

fi&ure 2b

1l1e altcmall\e 1s to also d\.'C'Odc RJ\\ nnd ph:l~ 2 to pn•\ldc \\Rue: strobe for a latch and ReaD for a tn· tate buffer to rend ba 1.: the I t h content . The latlh should h:ne "de r" mput so that RESET prm ules all 7croe "' the dct.tult.

.,.,

st..~'ICh).

\1) method 1\:tfUII'CSU hil more h:mt\\are and \\Jnng than ) oun. II "~'"ld Ill Ill' ide n CM but proh:lhl) nut 11 MC

Bastc:all). m.) schmtc H tgun: 1), \\ould le:t\c the ongm:ll RAM Chips Ill pl. , tmd dt\en the PI.A's C RAM tgnal from the 416-S to the cruJblc of a 741 s 1:.w ur similar dcccldcr. One decoded output ~tiCs 111 the on bll31d lllCI11<ll) chips and the others gu to brutk of 4464 (641\ 4). l'hc' lue on the dcl"'Odcr' select hits dctcnm~ \\htch bani; gets CA 'ed. (A thn:c·bll decoder would prm ide 641\ 'banks'.) n.) Cnmrnon RAM or Ban~ Enable s1gnnl \\ould fun-e lhi 'alue tn !>elect the ongmal K 1. Mcnllll) '''uld he c:o.p;~nded 111 tuges. and the n 1.: 111 d.tm.1ge to the ctrcuit boonJ ~~ mininm.etl b) not dc"'idcnng Dn.) clups. On the other hnnd. lithe data and MAline \\OUid Jm,e to he brought to the eApandcr boord. l.ooking at )OUr de ign. I get the unca~.) lctlmg that nunc \\ouldn't \\tlfl.: . Am I nu,lalr.;en m assuming that un~lectcd ~nh \\OUid contmue tn be relre hed \Ia RA'o? m:tSter 'mod d1snble' "" h t g<XId tdcn. l'\e gmtcn used to S(.'ttmg \\ 11 hcs to l"'nhgun: ffi) \ K' 20, hut lur the Ol4 s" 1tchc' seem hl.c SC\ entl 't.:ps h.M:l" anh. I he features I hn\e in mind need more bits th:m those prrn tded b) the~: ~~~ hnes of the 6SIO pon. To cre:ttc mn 00 p;ll"'C to ~ppl) the nc:cdcd b1t,, h urc 2a dl"'COlk.--s Jl)'" en.1blc (wfuch IX:~:upics a wa\tclul II\ of ~II. mto lour p.tgcs. One uf these '" used to cn:.thlc 11 6..~ Cll' ulhcr (\;111lllcl interface ch1p.

'\S04

H ., lis

74UU

'llus "ould flO" er up or reset "uh us pon pms htgh (' ia pull· up rc'' ton.) and the log1c \\oulll be ,lJdlthat th1s selects the nonnal tm."tnul) conhgurnuon Soft\\nre \\Ould he rumPJUhlc u' long 11 doe n't u~ Dn.) ID 'unage' ddrcsses. The b..'<.~ 1s undoubted!) O\er-~tll for thts upplicauon (the CMO 'erston. to ~ucc current con umpuon. 1 aho hanl to lind). hut n' e:ml) interfaced and its other pon might con m hand}. per· hap~ lor sclcctmg ,tltcmate RO~b .

tCIII trnf

the 65C2l \\ould need to be tmuah1.cd. On reset, the ponl> go htgh because the DDR (nnd II other rega tcrs) are cleared, puttmg the pon~ m mput mode. Chnngmg the OUR to output 'cold' \\Ould cause the pon pms to go lo\\ becuusc the Output Rcgi~tcrs \H'rc also dc,trcd. l ununatcl}. the ~<'22 pcnnlls "nung tn the Output Registers "hilc ~:unfigurcd lor mput. \\h) 1 n'llht o problent \\llh the 1 pon! (Or 1 tl?) Another " .) to obtam more 00 space ts. shown m r:igurc 2h. Ucre mK' uf the CJ \ cnahlcs is intcn:cptcd and dCl~ldcd \\ llh \7 to prm ide a nc\\ cn:~hlc. I tend to Ia' uur thi~ appnl:ldt, nnd the lm\cr half of the figure sho\\ the hu h/buffcr ultcmatne to the 6S 22. If 8 nl.: elect n:mam" at the 6510 pon. three of the tat h btts rc unu~ and a\'31lahle fur other tn ls. I \\ouh.J hl.c tu h;l\e d1llcrcnt mount ul common R\\1, per· haps a' much a lbK so that a bn-map 1 .IJCI() could be seen Irom the other bank . In hgurc 3 the OR g tc of )OUr de 1 n are lightl.) re3Jllltlged to pm\lde logt (I \\hen the lo\\e I I. 2. ~. or 161\ ul mcmol') re nddre sed. Bn SO ami I ol the 7-ll.S 151 ~.lata sekltur lhoose hm\ mulh /m• common RAM "til be present. 811 52 can ft,n:e the '151 to looi t the pm held at +5\', c using CRAMI to be htgh. (The 1: input can't be used be use "hen the 'IS t 1s d1 bled. output ' i lo" • "h•~·h i lhc: opposite of "lmt' needed, although 11 could be used lt•r u soft\\ are 'mod dtsnble·.I \\ 1th no lu\\ common R \M, ca h ~uti.; cvuld thu" h:t\1! tts u" n I.Cm·pagc und 'tad;! fkocau~

of the scarctl) of free RA..\1 m the lowest I K of nlCfllOI), It un: also prD\Ides the ~: ~btltl) of common RA 1 in htgh memOf). Thn:c-mput ~D g.te •'· "ith '"" left· 11\er imcncr.;, upplil.' CR\MII \\henAI5.14.and 13 urc 110. Jl\j,. dec·odes nddrc "C CIIOO· l>f·FF as comnwm R \M "hen II eroble 1 lo\\, Of course. () block i 1ble onl) "hen uo und ch er R0\1 are "11 hed out. Ciate H replaces the t"o-tnput A:'IOU g t~ an )OUr 1rcun. lbe n:mamm OR g:&lc l'Dn he used lor :a soltw:Arc J.C. cr1:1ble. (In }llUr Circuit. 00\\ due~ un upcn ~"lh.h trJn~latc 111 ((' cnuhl d. Mlll.c Af.C. d11C n't matter?) Add tn\encrs neces t) to pnl\ltle the power-up conliguratmn • dcpcndmg upon a 6.SC"'.1 pon "tlh :all pon hns at I or a cleared latlh "ith nil 1.croc • I"hat lea' cs one idle thrcc·tnput and t\\u :!-input MX lor an) uthcr cnh:mumcnts. In th1~ cm:utt the wnount ol ll1gh Cornrnnn RA 1 h hxcd, hut added cumpleJut) l'ould pm\ 1de 'unahle an"K•unt'>.


When thmg!> bewnle ton comple:~~ for gates all\J decoders, some me:ms ll\U\1 ~ tuu1kl tu rcJucc the chip count. I include D dalll meet for ll U\ em sable Pl.A. 1111!> de\ ice \\U~ sold b) J a wlule o. I don' t ~now 1f 1t"s sull \ 1111 blc. upposed!). th1s de' let' rould be pro8rammed in Dll ll'Rm.t bum · er(?). It 1t doc n't cmne uut nghl, era~ 11 und II) ngain. I as· ume the manuf:Kturcr c:m pn1' ide rnure inlumtnllon resanJ · ms pmgnurumng. etc.

Tn implelllCnt the GEO~ mod w uhout gl'of'mr:mmmt'r: Use 11• \l. tJr soniC nther ~ scml\lcr cI used tn use Rudd\ ). 1 ypc in rode rcmcmbenng to c pand all 1113Cros. honcn the routtnc names. Dlld make nil other chan es nppropnatc to )OUr scm· hlcr. lllen assemble and pill the the header manuall) fmm the progr.un. IuL.e ll look Ul the (ot;Cl pwgrnm I rum the pre\ ious I ru11sa tor. f I hts u a rrfl'rc fiec' Ill till' " mal.:l'togr os" program a11d P. \I.-format .smtror 'adr tl101 1\"tiS fraturrd rn .. Program· mmg m Gco " h) I ra11 ts <i. Kostrlla 111 T 9 ·/ . - \It Jj That' huw llle) t.hd 11.

f.,en w11hou1 rcsonmg tn n lwme·bunled PI • I' m sure that some ot the ahO\c could he done more elfidcntl). (; \CI) time I thought tlult th1s leiter '' n lini hcd. a ne\\ 1dea would pop mto m.) head. Thank )OU for most umulating pro)C't. I can Ilardi) wnittu tr} thi stulf.

Concemm • the· lie cd' \:mlnges of g~vPm romm~r. 113\ • mg used n, Rmkl) nd P.H•• I \\ouldn' t go oo L:. ll's JU"t too J>I'Kld. AnJ. ul C(IUI'l>C, lm programming under <.oos. ju't tnn 1 rK'~·c sun ••

Richa rd C urcio 22 Se\enth venue BrooL.Iyn. N.'l. 11217

I L:no\\ 11·,. arnpos tble to get text to line up proper!) m t"oPmnt. If )OU WDJlt to get rid ol prop.maonal p;JCing. If) using tile C'umntt.ld"rc lunt. h '<,; an ugl) lont. hut 11 "all dtl juM th t. II ) our pmblcnt ts gelling 1c:~~t to line up. U!>C the cdn tool nnd JUst mm e it mto pi ce. Once >ou de' clop the kllX'L:. n· qutte ea ) to d ' ·

llulnL. you lnr )uur ~p(Jrt.'>C! ll, rn~ nni lc. The h1g L.ick wuh thi nnicle has not been getllng 11 puhhshcll. but nuhcr ra.~htng letters hkC' )OUrs. Lenm lrum ~>tllk \\ho understand the wori;ms of the JlfU)'."'\:1, \1) \\ate. I'm afr.uJ. 113, goncn 3 l'llllln.-d (ll hc:uing uboot A'l> !!at sand CR " t\\O h•t cud .. ct~ .

'''and

About e p:mtlmg the 118: m) <ml~ thought there u!>Cd to he th1 : ptgg)back the D t \\llh 4164's, bend up ptn 15 and connect II tu the M\1 ' • 'i2, Ufk.l •C. l OU!JlUI. That' :m Ca."i) 2561\, "uh 12XI\ unu;;cd in an) \\U) b) the os. Other thmthat, I don't ha\e ac..tt s tn schem:uac' lor that nlOChinc and am unf:umhar "tth it archncaurc. \\11l nt) ubmc u estJOO e'"t'n \\orl.:'! hn't that pan of \\hal )OU' rc getting 1 in your comntent ? You'rc ~lt'f quahlied here th:ul me. ,\hhuugh I would lmc to~~ Ill) hand' on the 'iChc:maucs hw that machine. Gt.r an vnJcr nurnlx.'T'!

But, on to )OUr question . 1be most mtporwtt of \\ht h 1 : Is th pmJCCI cum~uhlc \\ 11h the OC\\er M,., The preliminary n~\\cr i a l..'n utiou' " )es" . The nc"cr rtll.ldeb usc 1 mJM' (rcad 4t~). a Mx41\ h1tt>RAM. The modtfication, us I see it 1 tht point, I Mmple. Jhe ' t 1~7 muhtplCMW I rcpJaceJ With n 'L\1 39 \\hu."h i ~ pcnnancntl) enabled. The t\\(1 pseudo nJ. drc:.se:. arc then u..cJ tn dnH' the ..;clc~t pin:. ut unc hall of thC' 'LSt39. The fuur tlUtput p10~ :uc then ronncctcJ to hlUr b:mh of :!\M 41\ bn DRAMs. lliC problem here 1 the additional Somcthin • I want 10 et 1 herc bout )OUr mod•fi tion. It \\ tnng ol the ORA \b. All chi 1 • n' I id, prchmtn3r) : I seem lhlltlt would won,;, )CS. And. }"t' , the RAM \\OUJd be It':· ha\cn' ttneclat )et, and I ' m sull m the pn)Cc"' of dru\\ 10g up lre5hcd \Ia • RAS. But don't mcrlnuL; the CM JX1\\Cf suppl). One rea'itm I \\cnt for replacing the ()RAWi altogether \\a' that the M:hem.ui "· flO"cr uppl). TO<l mucih uppon dn:uitl) and l\\O much The other possthilit) here I\ fors:&L:tn the two X 4 DRA.\IS on the DR.\\1 cqu:tl"' Ofl(' de:td power Uf'lll). nnd that dead power up· board and la)ing 10 a hank of 41 !56' • Allhoo h tl la)llUI of pi) Will pm~hl) ha\e I L.cn the DR \\1 \\lib it. Something Ill the ")'tcm roard i' quuc dtllcrcnt than th.1t of tile niJ M,. all e~m~ider! M} board dtlCS not n.~utrc a beeher pn\\Cr ~UJ'Ill> the ignoah ncok"\1 rc directl} acc..'O.'lhlc. M) llpinion i" ttut Ce!\t.:cpc an tho!>C ~inal \: ses). M) 64 ran for "I month helht j.,. thew ) tu gu. But 111. llm\cn'ttried it )et.,\nd DRAM lore I (:tiC nn RE • with no prohlcrn .t\nd then I \\"Ciltlo 5121\. l!i ex pen I\ c n hi now (J gut m} first 2561\ lor 511 ). wh1 h Jcltnncl) l't"I.JUtrc the hca' ier power ~uppl). Your OC\1 que tion i<o a hll unclear. Doc this RlunE\ \\orl.. \\tlh roPamt? I W..c it to mc:m. t.lo )OU set the IU!>t D\1\ that a1low, the qut~L. scmlhng nhtlUt a t'(IPcJi nt Jucurncnt? If that",. )our que,.uon, the an\\\Cr h nu. "' I mcnuoncd tn the amdc. th' ta.,h. let\:h, s\\llfl amJ \Cnl} roullnc:. arc not 'Ufl· pon d St,JI ~ guc? The ll\1 routine in OF.U' arc h.lscd "'n the pru'k.,rl.. tt .1 11 '1'> tas1cr to use the Rll to mO\e c.llilllth!lfl it is to use the \lrt • And thC) 're nght. M) RnmE\, howe' cr. use the 1PU tu mmc data. and 'mcc 11 mo\c:o. 11 :u:n"'' ~nL.' that ffiO\C' is a hlllc: l\1\\er than a ""''c \\ilhin one b:u ~ o. lof llut f\.'a<;(lf'l, I chose not to uppon 1~ ruutincs. f't · .11 n.:t· son and another. )OU c..'rul vnl) mod1f) so mtx:h (,flo~ code~­ fore ~ou run out of 'f' ~e. 49

.\lth..,ugh It's u:nainl) nut ob\lou • I h:kJ two mcmdmg concerns "hen I went at this e'pan ton pmJI.'CI. 1\eep the pwts ~·,)Unt dt,\\ n and ~~-cp 11 tr.m.~o~t . l sing the t pon litcrall~ requtrctl the n.:htcr drSllhll! ~wItt.: h. ,\nd the 11ther '" itdle"! I agree. M 11d~es ure 11 tt'p 10 the wmng dtrttllon. But I wuntcd tu how that II c..-ould be done simpl~. The other op11011. e\eO "hen th:lt bcl:ll\1 w s hemg \le\clopcd. w s rut ·bll lat h mapped into (lh:mtunt 110 pace. but IlK' :xklttiun:ll Cln.Uilf) w:.s too nllJ(h u mmpltc-aung foctcw. I tlt~•ught ttut lllilll) ntt'lf'e ~..... pk: \\OUIJ try to butld a i x~h1p bLl:lnlthan a t\\ehe. Yes. nt) ltrst 5121\ h:ld 12 chips and " " a p:il h on the orignl:ll hc~Urd. Paul Ro'iatki Apnl1919: VolwM 9, I~~Ue 4


How Random is RND? An analysis of the C64 and C 128 RND routines

-

b\• (). J. Morri"

m1e tanmg numbcr ts muhiphcd h) one con tant, and unoth· cr con tant i added. The resulting random numbcr b pcrhap:. Jteret.J in some other \\U) . and becomes lhc starting (lOiOt lor a rcpc:u nl the ~c prtX~~ ... The third ") tern Ill \ttl\ c' pa, ..ing the bud;: the Ctlrnputcr tne~ to find "nmc c\lcmal ..uurcc ol random numbers th;u 11 ct~n u~ l<l gcncr.llc th mtcmal random numbers.

'The bcgmner m BA IC I" often urpriscd to lmd the R:\l> function. What i the u~ of 11 fun<:tion that upphcs n allegcdl) romplctcl) Wlfll'edrct ble numbcr? Inc !Thtre experienced J"'fO· grammcr see the utiht) ul ~Kh a lunwun m g:unc-.; tlr, more scnou~t). m ~imulatum ... But -.cliTIC nc:" 4UC,trmh occur: hu" d(lCS the computer en rule these random numbcno. and are the) trul) random. or do the) c hrbu some hu.Jdcn bia"1 You're about to implement a ~o-mt<ullin in\cntttry control .P·tem. ba_~ on }OUr tmulatron of I}J'l al demand Je,eh: \\Ill 11 cut cost or lose safe,.? Or )Otfre pcclf)tn tna\lmum drama c cap.~cit) lor a pnlfl'tSed mumctpJI Mtlflll·SC"cr ') • tcm. utter 'imul:uing 2flll )Cur.. ol rainfall C'\trcmc, on )Our cvmputer. Th1' could ,et expcn,l\c!

The R'l> luncucm on the C I :!8 i 101.--ated 10 ROM , tanmg t 434. 10 Ban!.; 15. and 1 the same m both Version 0 and I ol the R0\1,, The ruutmc mal..e c:~.tcn<>l\e usc ol Flo.ating Pomt ,\c,umulator #I . IFP.\ II 11. "here B \SIC. "'"re~ intermcdtah: re~ul h. loc.:atcd lrom $6.' to ShX. Another important 'torage area •~ called R"l>\, 1(1( ted from I:! I B to I:! I F. Th•' " the nt) tcriou-. rundclnl number seed. I nlnl "hie h OC\\ rarnJom numbt~ gro"' l 1,1ing I is a c~lnlmcntcd dtsa: sembl) of the C I :!8 routine: Sut-routincs u~ b) R:\1> are not included. but thetr purpo..c' .m: tndtc: t~d .

P.ut of the problem 1s that a random-number generator is. b} us 'Cl) nature. d1fficult to test. If >ou rome up "11h a ~at OC\\ square-root rnutmc. )OU need U) onl) a lc\\ \aluc tn l;no\\ 11 11 "ofl;, J'n'Jl'.'fl). But a random number generator ~o-an be ho" n to he 'good' on I) b) e\ammmg man) ob..cure pmp· t'ntc" ul lung .;cqucn cs ol number. pmdu~.:ed b) the ~encra· tt)f. Mo tuf u' lxl; both the ''-ill and time to ng"ruu I} tc~t a R.'D luncuon. pretcmng to tru l in the dcstgncrs of the BASI<' Interpreter. Unfortunate!). the R.'l:l> Junction. a implemented "" the CM and Cl2 , has a number of scnous 'hoftC<tmlfl that should be n!I.'OBnit~.:d 11 R:\0 i., to be used elte~:t i\CI) .

The ClH R:\0 mutinc i" located at [1197. fi'A #I i' at I to S66. and R'DX is at $CIC~ B . Althnugh ~ ol the detail .. and ubn'ltlline alb are dtftcrent. the gcncr.~l no\\ ul the CM R:\1> routine I the same ~the Cl:!ll \er..itm. u ..ting:! i a COOl • mcnrcd dts:b~mhl) ol pan of the ClH R'I:O fuoc tion. M o ..l ol the f\liiO\\ ing di'i<:ussaun ol the C I :!8 muune upplie" cquall) to ~llh computer.: "he~ dillcren<:C:'I arc ~igmlicant. the) are O(lh!d.

In th~o'OI) , :tl.'llmputer 1:\ a completl!l) dctcmlmcd ')'tern: gl\· en the tmual <.t<ltc, and 10 the ab:-encc ol uch 'anablel> a' l..c) bo:m.l input. the: ullse4uen1 tate' of the computer are com· pletel) dclincd .• uch .) tern cannot ener.~te true random numbers: tn'-teold, R.'D pntd~ pscudo·r.wlom numhcl". The) pa cor hnuM pa s) ull the te 1 ol rwtdom numbcr,, . uch Ol> :t\ erage vuluc. tandanl de\ tatum, and run' up and du" n. but the) are '-ener.ucd b} 't,me ~pccihc mathematical te,hnitjuc. The pwul that the~ are not true random numbe~ hes 10 till! fact thm the me SC4UC11Ce can be created O\er and O\C:r a ain. ln fact, there re lhrc:e sc~tc rnathem:ukal t.:<:h · 01qucs used to ccncratc psc:udo-randtllll numbcrs on the CM nod C I:!•. somettmc m ~.:'IllJunction.

The Cl2 routine tans 111 K434. b) determmmg the ''gn of the argument ol R'l>. torcd in FP.\ #I. Thc ruuunc then Ull.es three dtflcrent route • dcfk.-nding on "hcther thAt :.rgument i~: a1 ncgatl\c: bl 1cm: or cl Jll.l'>llhc.

R DH

c ll1e C I :!Rand CM

H~r..ion

of thi~ JlMI ul R.'D arc idcnti ai.J

II the argument ol R:\1> ts ncgau\c, the Cl :!8 rout me hnmchc" In 4llA. Here. the lir.-.t and luunh b.) te~ nl HI\ tl I are inter·

changed. then tllC ~cmd and third. 1\1 thi~ point. fl'A II I ultl· tamed the ncgaliH: urgumcnt ol R'D. llte :.ago b)h! '' set to 1em. maJ.:ing the 'aluc po IIi\ e. and the e\ponent b) tc 1 tran lcmd to the mundm b) II:. The C\(ll.lflCnt h) tc i, then set to XU. meaning a number hct\\c:en onc-h:lll and one. und the

The 11~1 '' Jugglmg: thc dtgn~ that make up the number arc re· arran ed in 'orne dchn d p.lltem. In the CM and C I:!S. thi~ juggling i.,. dQfiC till the b.l.'i~ ul irWI\ idwl b) tc nl a lour h) te numbcr. The 'C\:Ond ") h;m is multiplkaticm W'kl lk.khtion: 50

Apfl1919. Voll.me 9, laue •


number 1 "norm3hzed". l'he pnx of '' 11 hm b~ te 1113) ha\c led ton number m wtu h the most st naft ant bn (or bits) of the mo 1 stgmltcant b) te is not o une. Ounng nnmudi7.:IIlun. the "hole four-b)1e number m f,'P.' 81 1 htfral left. and the e ponent d reasci.l h) ,,ne for e h 'htlt, unlll that mmt tg· mft nt bit 1 one. lbe ne\\ bits neNcd t the le:l t igmfteant end of the number (tf ny) nrc obtained fmm the roundmg h)te. Th1s ne\1. number m IP.\ fjJ •~ ldt there a the 'alue returned b) the R."'U func:uon. but o cup) 1 p.xl.:ed ( torcd in a htfltl) dafferem " )) m R."'DX, t nmg t oddres 1218, lor re sons that \\till I hope) hccome clear ''xm.

1 llte Cl2 nnd CM \CTStons of this pan of tl) ~hfferent.)

re

1

nali·

Rcfcmn to the dtsa,sembh• of the RSD routtne nm, 1f the argument of R'D h tcf\l, the Cl28 mutmc tall through to X·BB. 11ere. the routine o;clc~:t\ Bani.: I~ . then pmcced to load ~"Ill \1, ith the content .. of OOl-4 to ocm. and JUmps to !i47A. Thi' ,., the ~me pan ulthc n,utme dt3t sth the 1gn po:.tti\e, the e,J",OCnl h) te to 0. nono;slues the ' lue, ropie illo 121B.Mdthcnc~it-..

Thu • \I.e st"e thnt R-.:o of a negnll\e number creates a r.mdom number b) cnfl) ing out pe tire mampulation on that negn· u'e number. o. RSD(-3) \\til al" ) )'JCid the me number. and R'l>l.·ll22l3) \\111 alwa~ ~ ) reh.J snme other pccilil: num· bcr. R'D(·) on the CM folio" e I~ the ~ procedure: a gl\en neg:ttr\e urgumcnt gnes the same mndom number on buth mochmc~ .

The Joe tion.. th:lt pnldlk--e the rnndom number. ~ to OC07, re four registers on Complex lntmoce Adapccr (n \I II l . 'These lour b) tc~ -tore the high and In" h} tc' olt\\0 internal 16-bit tuners. The) arc not p:u1 of the Time 01 D.t) CJodl'. ~ orne refcn:tK.~ h:nc tateJ cbut st't' the CM \Crsi'm da u~100 belo\1. 1. 'The timers are nonnall) used to Cllllllt pulses ol the ") • tern ckl(l. In the\_~. each b)te could ha\e nn) \Blue fmm 0 to 2~S. gh tn ltllall) mndom numbers: ho"-e'c:r. onl) ooc ulthe~ t\\tl timers i.. runmng! The t'lther ttn'ICI', Ut oco.~..os. is uSC\.! in the C I::!8 tor tape Wld f: t da l operauons. and ,., left topped b) 1hcse rouunc.,, u,u.lll) readmg .2 '"' I. Enter and run tha~ "hon pmg_ ram tn i.li pla) the four timer hyte,,

\!i the da~~--mhl) ~,"~· the lea 1 ''gnifK'ant b)te ol the

argument becomes the 010 I 1£nilicant h) IC of tl re Ulting rnndom number. Ir the argument 1 a number "nh onl) a fc" d1g11 (\\hen C\pressed an hlllat) floating J"IIOI lvnnl. then the l~st igmlkant b) tc (or h) te.') "all bl: zcn1 C)ud argumenh mdude 1ntcgen. Mc.l fr.~euon~ hl.:e 0. 1~2KI.!.fi tl71128) and 11.8~1625 (S7iCW 1. When these 1cro b\ tc~ are ~"Itched to • become the ~• tgmll\:anl h) tes of the random number, a lot of nonnahz tton ts nc e sa~. Thi tn tum mo.:ans that the c:xponclll is d re sed :a Jut. creating a 'c:~ mall rollldom number. R!l.l>(-37). for example. i 3.45 USU76E • and R!'\0(·6.61.5) '' 4 .~479241HE-8. On the other hand, the btn:ll) represenuuron of 37/1 J I. ltlf e\ample. use all lour h) tc , and R!l.l>(-37/131) 1 a more: rc sonablc 0 .9 5~ 1329. {Can n) rnndom number he to.:rrned rea"mahlc !1

RSI)

100 bank 15 : • • • 5,320 110 f or k-4 to 7 : print peek<•• + k) , 120 next : print 130 90 to 110 ;\~

)OU l'"lln ~. onl) 1\\ll ol the lour b~tcs arc changing. Thr' hmih the range of J"lS ihlc \ nluc that \\111 be trnn,lerrat to n~ \ I 1<.1 thul> hmus the random numbers produ\:Cd b) R'D(OI Stnl."e on I) the liN and thin! l't) tc:' ol the ramlnm number .If\; llwtging. while the ~--ond h) te t a con tant. rul\1 the founh '' 1eru. the result '' a stt ol random numbers cJu,. tcred do~ly <but n<lt 'e~. '~~ dosel} 1 nhclUt 256 e\enl)

llo\1. doe R'()(-37/ 131) comp:tre to R.,0(."\7/IJI/21 or R.'IJ(<"\7/131•641! The) arc the 'ltmc! llle onl} drllcrenec tn the bii'W) tlo:~tin point lonn of the three ~umem" ts m the eAponent, and the exroncnt tet hrltcd to the roundmg h} to:. to be USCll a .. the wun:e fnr OC:\1. hat' <.lunng norm.1htaltnn 1ncc: the argument .. use all four b)t • hnle nonnaJujn h I"C'\juired. and the nlllndtng h) te • pmbabl) not no.:eded. On the other hand, R'O( -~). R~D(-101. and R'll(-:~0), although all \er) close, nre drfferent. 1be d1fferent exponent of the Ill' ument~. tored m the roundmg b) te, become ''&n•licant "hen the nmdom numbers. "1th on I} a le\\ bit set, are nonnaluat.

~\"al~.

fu

dcmun~trnte

the effect ut thi

ll~

timer. run thi

hon

J'fll£t:1m!

200 print rnd(O) • 25' : 90 to 200 ~otc

that all the numbel'\ printed are 'c~ do.,;e to "hole num· ben.. In fuct. tl the 'topped timer h rending I. the lrncuonal pan ol the number "til be bct\\ccn 0.00'906~5 nt.l O.U07X 12~: thm ts, bl:t\\cen 1{.!56 and 1/256.

I h.l\C ultcn seen ankles "hich recommend R'll(·Tll a a good sotu\--e of re3ll) mndom numbers. S1ncc the jifl) docl.: l.ccps ttme tn integral number; of Jlllies, 11 '"dear th3t R'l)(· n) "ill alwa) s ) icli.l 'er) sJrulll random numbers. Pcrh ps a \mation Jrl.:e R!I.'O(·TI• QR(21} \\OUid gi\C the de rm.J 1'\! ult .

fh" hm1tauon stnou'l) de\:rt:a'"-'" th~ u~tulnc .. of R'IMIII. h,. e\amplc. ) uu ftl<l) "''h ,,, enerate a rnn~lffi intc er bct"ccn I and IUUO inclu'''c: a tatement hl.e: • • 1nt

rnce R.'l)(· l al\\a) gJ\es the 'arne \aluc lor u gJ\en negatl\e ar ument, 11 \\®ld ntll appear to be a \ef) useful random· nwuhcr gcncr.uor. Indeed. uhout the onl) purptl~ ut R'l)(·l i' to tore a OC\\, deltnllc \ Joe in the R'D\ mt.

(rnd

(0) • 1000 + 1)

"uuld appear Ill do e\actl) thh. In tact, tml) .256 of the IUUO integers \\OUid C\er he cncrato.:d' 51


Jlw, 1 a

tO :1\ollJ RlliO(II). llo"l!\l!r. there rna) he Circum tarx-es \\here 1t mu~t be used; for example, to mcrcasc JX"'Cd (sec the ummg results bclo\\ ). To make R:o..D(Ih trul) random. the stopped timer mu t be tllrtcd :md ~err runmng. 1111~ short program, f(lf' the C 12K. "111 ~•an the timer. nd set II w untmg do\\11 repeah.'tll) I Mil M~.'~ ·

• oo cU.a

\t"r) good re:!SO!l

UO a • end ( , I : y • end ( , )

420 • Jo ••o • so •'o . 10 •lo u o 500

300 t»nk 15 310 •••5,320 : poke ••+• . 255 :poke aa+5, 255 320 poke aa+1• , 1 : end

Re-run the Jlft'' 1ous R:O..U{O) c umplc~. alter 'Ianing the umer. and )OU \\Ill sec thAt RM>(OI i no\\ "cll-behaH·d. nfonun:~tcly. Dn) senal pon opcro~uon. uch a l.."::lling up a UIIU'rTOR't, \\Ill lop the timer unlllthc rmgram ahO\e I ~ run a gam. 1llC Cfl4 \t~tsiun ot R'()(()) i' ttUill! !>imllar I "

a • '••+1 : y • '•Y+1 a(x , y) • a(x , y) + 1 ~t qt : if qta• • tben 90to 410 peint : peLnt foe k • 1 to 6 foe 1 • 1 to ' peint a (k , 1). next 1 : peint •• next k 90 to UO

Press ll) L:c) OCc..'3SionaJI) to see an ufl'bte ul hl1\\ ohc:n e:Kh po !>lhle paar ol uluc ho" up. 01e the c\treme nonrandom d1stflbutioo of the patrs ol ' lues. S\\ 1tc..hmg to 1 q mode centuates the pmblem. Interrupt th.u occur hct"ecn the 1\\ll c-.111 In R'\[)(,0) allo\\ the limen; lc) run for dJIIercnt lengths ut time, and increa."t! blight I) 1 the mnuomne'' ol the dhtnhutlon of pllrS Of \lliUC,, TI)C re:o.ult~ Ol thl' prugr.tm on thi.' CM ure ,1111 u•~toned. but Jc,~ SC\crcl\. •

u ..ting #21.

hut uses M1mC thllcrent rcgi,tcr-. un C'l \#I m gcncmh~ the mndom nurnbcr. thi.' t"o regi,tcrs ul Timer#,\, lor 8) tc-, II und fn. and the 1/10 !iCI.:ond and SC\.IIfld' reg• tcrs ''' the Time ul Da) ClclCI.. . lor B)tc" #2 and #4, lu \\:Uch the~ n:gi,tcr-. on the CM. run this program: 150 ••• 5,320 1'0 peint paak(aa+•l . peek(aa+51 , peek <••+!I) 170 90 to UO

•<'· ,,

h1r hmh th"sc: reasons, R'\()(,11) houi,J he u J onl) to create nc" 'alues 1<,.. R'l>X. a: "u.o; the c..'USC ol lnr R'l>( ·) R:\UI+ I

peek (aa+l l , 1 l'he

CllR and CM \C~ion~ ulthh p:utul R'\D arc •c.lcntkal .l

Rch:rring tmc..e mnre to the dasa,'l!mhl) uf R:O..l>. 1f the i1JllU· rncnt i~ puliiti\ e. the routine hr.~nchc' tn H-l55. lien:. the number ~tnred in 1218 • 121 F IR,l>X) i ~ rc(O\cred into 11'1\ If I. und rnuluphcd h) the e~m tant l(lf'Cd 1m lloaung·(lllint luml) m ROM at M490 - 1\494. TI1 con tant 10 S49~ • S-'IJI) IS then adtlctJ. 1be routine then ralls through Ill the Code that juru;lcs the b) tes, SC:h the ~ign und exponent. normal ~.a: ant.! lin.tll) sturc~ the ne" value b.xl; tn 121 R.

t1tc that the la't 1\\0 regi-,tcr-. arc ll\cd at Jcru: thu ... R'()(OI on the CM i~ C\Cn more limited th.tn the Cl2~ \er-.ion Run the pmgr.tm f11und in Line 200 ahme, to dcmon,tratc the ell«tofth• ~ pmhlem on R'll>(UI.

The Time or Da) Clod.; i' runnmg: ho"e'cr. unul :a \\ntc to the 1/ 111 SC\:cllld regi tcr tales place. the n:gi tcrs arc lat(hcd. Run th• pn, ram:

:-o;otc that the \ aluc f<lund 10 I P.\ #I at the begmnmg or the ruu· un~. the fl<hlti\C argument of the R'l> fund1on, '" OC\cr u.;cd. ln,tcad, it j, mer-"rittcn h\• the Ia t r.mdclm number. 'torcd in R'l>\ . It i-; thi-. uld r.111dom number that i' used to create the n~" random numher. \\h1ch 10 tum hc'-umc~ the ~cd tor the nc\t random number.

110 poke 5'321, 0

tu alhm the rcghtcr.> to folio\\ the time: re-run the progrum at l.mc 150 and sec the change. Unhmunatcl} . thi, dot.-... not imprme R:\1)(,111 on the C64 \C:I) much. n~e 1/ 111 M:c..ond regi,tcr onl) run up tn 9 cdedmall. and tile clOd reghter on I) run\ up to . 9 (dccunal ). 59. Su c\en •f the l mle ul Oa) Clod: rega tcrs nrc du111gmg. the r.lll· dnm numbers gencnucd are 'ull du<otered ahout156 \"'allle'.

An) positl\e argument, con,tant or \1U'lahl~. h1r R'ID \\ouiJ h3\C produced e\actl) the ~le ne" random number from :a g 1' ~n <;('(.'d .

l·nlfll thi~ tle'Cription, it i' clear that, gi' en a panicular 'aluc ' turcd in R'D\. repealed U'il! ul R'O \\ uh UO) (llhith c argu-

Anucher pnlbletn "1th R'IX.OI i' th.lt. il 11 i uo;ed n:peatedl). in 'ucc..-cssiun, m u 8 -\SIC pn~rum. the umers "111 change: m a pre· ment "all gi\C the ..arne 'il!qucn.:e ul nmdmn numhe"' e\cf) du:tuhle \\:1\• In til\! I.."'O,tanl lnll!f\UI hct\\a!n \UCCC'i-'1\c! call\ tO tim~. The cold--.tan routine imuah1c R'UX to 1c:ro. ~ that R,u, >1cldmg fltlll ~ of random numhcr-. th.1t are highl) correlated. 'impl) u'10g M'u \\ith a jl(Nti\e argument \\OUid al"a)' ) idd the 'arne ~ucncc alter resetting. The unl) wa) to for C\:Unpk. u~ing ll.'l>I.OI '" i~ tn imulate mlhng a pair ol change to 11 ne" ~ucncc of random numbers h to change to a d•cc \\111 produce a \CI) unu~ual , non·r.llldum d~:otribution ol nc" ""~ 10 R'DX; U\C R'l>(·l, 11 )OU" nlto '\\lt'-h to some p~urs tll \Uiue:-.: some pours ot \Uiuc OC\er appcar! Tl) pcc1hc sequence, or R'l;l)(OI. 1f }OO "ish to JUmp to an undc· tcnnirx"'d OC\\ ~uence. thi:o. "hon pmgrum:

"'II

TraNOCtof

62

Aptl1919; Volume 9, laue 4


011C' 1mponant questum about R'U(+) 1 : ho\\ lung hcfmc the random number.; gc:ll<.'r,Jtoo thi " >begin to repeat. Remc:m ller. long "'you use RND{+). )OU nre folio~~> mg a li!\ed path. JUmpmg m n dtllnne mute I rom one number to ant11hcr. Soon· er or later. >11u must land on a number >c1u haH~ been 111 before. After all. there re onl) so rrum) different number.; on wtu h to 13.Ild. Once this h!lppcn • )"OU then rercat ) our Jlfl!'" I· ou scquc~--e of rnndom numben., tl\ er and U\Cr. lltc lcn1:]th ut th1or, loop h dependent on the wnor,tam~ used to generate the llC'\\ rundom number from the old one. I \\D" cunou' u.' to ho111 \\ell the CM and C I! dcs1gners had ctmscn these constants. 1lle m hinc l:llt1:]u:tgc prugr.m~ 1l.1~tmg .'I \\lh 111 nucn 111 dttenmne the length of 1hesc loops.

The problem ol lindmg the loop length l'i cornpli~ ted h) the pc s1bilit) of :a suu:uion hke thi": rand«IOl 'ittd A pnldlk:c B. \\hi h prodlltt! C. \\hi h produce (), \\hi h produces H. \\hi h produ e I. \\hkh produces C. am.l the loop h compl t· ed "llhout CH'r rctummg tu ,\ , l"he sequcn c "·cm'i'h c1l 11 loop. C. D. H. 1·. s \\elias a "tail", \, H. Thcre 1s not enough room to keep C\CI) mndom number of the ~>Cquencc in memor). nor 1s there time to ched: the \:Um!nt mmlum number ag1unst ull pre\ tclU'> rJndom number tc1 find a rnah:h "'hen the loop c Jose,..

<;" rne of these scqucn\:e h:u.J 'Cl) lung uul.,, twent} or tlnn) t" nd numbers kmg. but the loop at the en I "a quite shon. Another 2~ of the sequences studied ended m loops of length 70-'6. "h1lc a fe" other h1C1[' length,., hJ.:e 42J1. 2644. und "i66Cl 'ho" cd up at tt end of a h.~" sequences. The reason th!lt these loop lengths. and onl} these loop length • \\Cre obscn ed is a Ill\• ~Cf\• tn rnc.

lXspue the ht'n loops. Ctmunooore seem~ tn hJ.:e thi particular 'ers1on of RSU(+). l"he 1\\0 \'OOStnnh u;;cd to generate the OC\t random number are 11871J546 cmult1pli\: ndl and .' .CJ276771~E· K (OOdcndl. Thc"C arc e:~.lll·tl\ the same • con't:Ulh ns Rl\0 uses 10 the CM. und thu' R'\0(+) tm the 0 i-* utters from the same problem Rl\D(+) un the CJ1 . lo 1llu,tn11e thi" pmhlem, run thi o;hcm pmgram on ei1hcr a Cl28 or CM. "ith the oppmpriutc 'alue of ..a. the llddrc s nl the trut of R'IOI>X: COO 610 620 630 C40 650

aa • 4Cl5 : r . . for c121, •••13t for cC4 bank 15 : f a•t : r . . on c121 only for k.O to 4 : r . .d a : poke aa+k, a : neat data 121, 115, 1~3. 56 , 117 y • rnd(1) : print y for k • 1 to 214 : • • rndl1l : neat "0 90 to UO

i" hi run 1\\ll qucn\:C • Titc) both tan ~~>llh the 5rullc seed. One sequetll.--e cukulatc R'I;UC+l ume: then the other sequence calculates R'U(+) '" 1\:e: lhen the PfllCCS' 1, rqx:atcd. E h sequence Jo:ld~ 11" u~n old SC'Cd into R'O\ befure ta'-ing ih ,.jnglc ''r double tcp, and ':a"c" 11\ nc" c:urrent ~d uflcrwnrd • H\cntuall) the doublc-,tcpping ~~uence "111 ~"'Omplete the luop nnd eut~h ur "ith the inglc· 1eppmg sequc~c fmm hchind. J"hc numhcr of 'tcp" n ctk."'d is the length ut the loop. Tllc

~oulut1on

Tiu progrJm S«d, the II\ c h) h: ell R:'\D\ \\ 1th \ alues that place it on a l'"»fl of length 295. It ) ''" no\\ u~ Rl\D( +) repeat· cdl}. }c'u \\Ill generate the s:1mc 295 random numhers mer and mer again. 1\' )OU ~o'lln sec lmm the uutput ul tlu pm· gr.un. the same 'alue of Y j., generated and pnntcd each tune artlUnd the ltxlfl. ,\lithe c1thcr ~4 ran<k!Ol numbc~ arc rercat· cd lh \\ell. A cunou prOf! ramming tri ~ turned up "hen I chcc~at the ' lues of the RND ctm Ulllh 10 earl1er PE llliJM !o\• term. llte dc~1l:lncrs managed to 'tore t~o fi,c·h)h! c:cm'tlmh 10 cml) eigh1 b) te,. Ibe) acc:omph,hcd thi" pp:1rcnt miruclc by "' er· lapping the constanh. Thus. the tilth b)tC of lhc fiN con tanl i, abo the firM b} tc ol the SC\;tlnd c:cm tAnt: the hn.t b) h! ul the ol the .;crond '-'on.. tant. When 11u .. mutmc "abo the filth h\tc • rout me "'ll' tran,.Jcmd to the more pac1o1h CM and C I!8, the cun~tant'i "crt: ghen h'c h) tc" c:&eh. But the t\\O nc" fifth h)te~ \\ere :<>ettutcm. rhu" the wn~t.tnh \\Cre changed 10 Htl· ue ,flghll). and lhc ~~uencc~ ul random numbers gencmted h) R'\0(+} on the I'ETI( R\t and on the CM nnd Cl! arc complctcl) d1tleren1.

1be 11uatiun b n b1t mon: comph ted 11 the tie\JUC:ncc tan on the ta1l attached to a Juop, lh dcr.cnhed .lhcl\c, It the t.uJ1, long. ~XIOlpamlto lhe loop. then the pro nun m Li ling ·' "111 I"C'ConJ a lcn!!th that j, ppw~illl3tel) equal to the length ol the tall. llJC reponcd length "111 he a muluplc of the lt~tlp length. When this tL program ~~>a run "llh CI\Cr 1000 dillcrent t ning r:mdom seeds. 11 rc:m:u\: ble p:~uem ~~>11..'- disco' em.t. l·ull) 83fk nf the scqu nee' hM,JICd in the s:~mc length: 6:"\.671 rJn· dom numbers! Ahc1u1 !1£ ul lhe st"qUCOC"" c:ontainal e~actl) I\\ ICC s lll3n} numbers; these "ere dctermmed to he loops ol the !WOC length. 6'.671. entered through a tall nt l~'t a long. ~~~ SC()Uenu:" hmgcr than th1s ~~>ere f11und.

AlthtlUgh 6.'.671 r.uldom number.; ~m~ h~e a lot. it ~ld be \'tm\itkral Ill hght ul the 0\CT 35 h11Jion possible raooom numbers. Clcarl). lor an) panicular tanmg rand«IOl ..ccd, on I} a ,m,tlllraction ur all pcMihlc rJndt_IOl number.. i a' ailahle on th!lt p:.u1icular sequence. II the tlltal number uf randum num· hers used e:t.C"t"t"d\ 6'.671. U\ 11 "ell might, the scl~--ticm 11f number!o "111 ""' he random. l11cre 1~ uJ..u the dl,tmct pets' I· hi lit) of hilling 11 mu"h honer sequence. For imponant apph· cation~. II II>ClUid he a gnc)() idea 10 USC R''D(·) tlf lt:\1)(0) fre· l.jUCntl). to jump to another h"'P·

1be remaining I~~ of the sequence \\ere um ilkrahl) honer. ot the ~uen\:e trnccd hlkl lcs than JU.(XIO Tafl(kllll

sa

numbers. The !ihonc't sequcnl·c oh.;cf\cd had onl) 590 num· bers tn 11! 11lc hun scqu n"e:. 'hii\\Cd unuthcr ~trangc pmpen) . 111 ) almosl :~II 1um d out to be loops "llh tails. and 1he loop:. \\ere of OOI) a lc" d1lfercnt len th..-.. Ft"lf c~umplc. :~hclUt 9<1 ol the StqUCill.'t'" 'llt.k.h cJ turned UUI Ill cnJ in loop" vi length 72~ . 53

April1989. Vokme 9, lttue 4


I iming

----·-·······················-·--·--·····--------

As the d1sasscmbl) uxh tes. there arc lan!e d1ftercnce" in the three pos 1ble routes through the R:-.o function. resultmg in brge d1fferenccs tn e:\ecutton ttme. These e ~,:Ution tilt)(' v. ere measured for the C 12M b) e~ecuting 11 hun prugnun v. nh a loop that e;~;ecutcd 20Jl()(l times. The time tal..en lor the t tement ' :: rnd() l v. comp;tre\1 to the lilt)(' for the tat~ment \ :: ~ · flu eltmtn:lled the 0\Crflead time dc\oted 10 find· mg lhl tonng \llrtabl . Nlltundl). ~ v.~ allov.C\1 to be negaU\e, 1ero. nod posnhe. se,eral ignific:mt ~ulh v.en: obtatned.

nm 141 ua nm l.dJ ISU nm )US~ fUSe ldaiS t145t l.df J$4

nm

POSITtvi A);)~~'! aMra • er. fGi.=a:a to • Mid 1.1 LUI at Sllll ra:tiN tc tc nl t1 w. po!.:an to alupUcud at u

)u $1aCI

ram l4a l$t5 nus l.dJ tsa4

-

nm

=r..- to rcr:tiaeto n1 t2 ud a!tip:r bf n111, 1.ePi.D9 rNil t 1.1 n1 t1 11t

at

poil:an to ed,. 4

sam u •

l·ir.;t. R'D(.II) had the honeM C\e\."ution time. R~l>(-1 tool nm ;u Mau · RlltiM u u•ct CGUt.~at to 4.43 tune Ions to c:\ecutc. unJ R~l>(+ltool 4.69 ume' a · n 1 n 11111 add to n111 , long. oomp.ued to RM>(Il). Se~,;undl). the ume to parse and • 111'fil9 nnlt u n111 C\aluate u numen~-al Cllll\lllnt argument v.a' 'ignilicantl) longer than the time nec.-dcd w ltnd and tr.an,kr a 'uriable ·--------··················-·-··--·--······-.-.-ar~umcnt . For C\ntnplc, the- loop toot.. at')(lut IO'k longer to cotnpktc u"tnS \ = rndl.I), compared to ' = rndl~ ), v. here ~ had carltcr been dclint'd us -I. The alholute 'tx-cd champ : ..., IJ'tU fl a:id 14 fUw ldl U1 "'a" RM>( .): the Ba.,l\: Interpreter rc~.:ugnilc' 11 Mlhtaf) t.kd· ClUe 141564 : of n l tl mal point as o LCill lo'ltcr than it rc:\."ognilc the d1g11 1ero, flUe au $61 and Ia ter th:1n 11 can lout.. up a 'anable equal to 1cro. C\Cn if fl411 au~~ that 'ariable 1s at the beginning uf the 'anable table. !142 ldi$U tu14 tam rum

Itt"'

!1471

I) ,\\nid u"ing R~'D(Il) unles hsolutcl} O«\: S3r. wn and rc- taJ1 Timer Am CIA 1ft, 1f \OU insbt on u"in~ ~'t'40l on the: Ct2 • foor m:aimum peed. usc R'l>(.l

-

.

21 Use R-.;t>(-) to establish a OC:\\ ~uencc of random numbers. sc a the: mgumc:nt a ncgatne number that 00c:~ not huH· nn el'.:K'I rcprestntntton 1n tloatin1; point hiiW) nt,tutinn. A\oid numbers h\;e -7H. -54 • and- I 2..X75 .11 Usc R'fl(+l lor n11~t pufl'ltSC,,

M:

a \IUI:Ible a~umcnt.

rJth~r 'JX'~·d

th.•n a wmtnnt argument, for a usclul iocn:a-.e in \" 11\."h tn u d1llcrcnt SC~luem:e b) u'ing RSD(-) or R'-oD(()) hl:forc the 'C\IU nee be •ins tel repeat.

1.1

tin~

I: Commtllft'cl cllt.turnrlll\ oj tht' C/28

sees1 • dlterw• • '1111 of uy• fl01 tai _..61 • llrucll lf "9'ti" nm 1111 sam : b:ad u ~u" flU~ )at

m

··-------·----·--··--·······--·-············----~ 1 n1*' 1 111ilitta

m~

JU W45 t14le ldl t4::CE

mu au •~ mu ldl ~7 nm r..a m

W.blaklS fill ~JUt f1 ud ru 11 fna r~ar 1 CUll

u.

~4

fW lytel 12 ud 14

fiUd 141 Ide:!

· n1 11, fna T~ar 1 . cu 11

flut ldl

nut. au m

mse au m !145.2 ,.. sana TI'OI'IIOCior

11m '"'fDII_, l!t1'nll 1 , )lip

to 077 'I mt

mc/1) rmlllnr

aum

-------------·----··-·····-·············-·-·-----

cat " fU7a lda I~ !147c IU $61 ru • l4a au

mn au m

nm lda mo ram rum mu 1ar mw fi41t ldl Ill) fl41b l.dJ U12 !141d )lip UcOO

mt IWtra

, atuptyuofn&U

, to aero fo: poaiti,. CCii'f tllPCCll::t of nl 11 to ro 1 •,'9 bit• : ttt ~= bft• ct n1 u · tol : IOrwth u nl tl : Mt poiatan to • Aid • 1% 11211 1.1 lUll : • to roatiae to ptC.k n 1 tl : ~to • Aid ue tb.at roatu:t : m to wt

1

Li ting 2: Commnrtc•c/ cllwurmhf, oJ ,,,. Crw rn.l! l rommr ~,

)It

~,.

tll.1 hOd)

Sbc!o

lletarw•ne 1i91 of ug n brad f 119'ti" brad 1f pcaiti"

.etc ..... ··----------··--·················-----·····-..

·-----· ID:l U"ZWI'I ilXifta

.eta 1u mo ~ auw tOal

ltf Ul

tC&S l.dJ n: 4 .0., 141 (IZfl,f t0aJ IU $0 .C.iq tOac 141 tU2),f

• tat ., ia!irtet

...s=..

· to~u$22ud

·m rn u . 1ft• 1 ud ! , , ftll

, fna Tl8U l

, CUll

.oa. aum Aprill989; Volume 9, l11ue 4


atJ$63 by ldl IS22), y ltJ $65

: lytt1 2 IIIII 4, • froa T1a cf Day Clod:

li

• ll¢rten Cll II

&A

lC D

rr • ]IIIII

to COl I

)I

IXIT

···························----------------·-----~---

(retmundcr of ruuune Jdcntic,:alto C· l :!S \CI">ion. c\c~ptlor d1frcrent addrc"sc ol

muu~.l~\ #I ,

and l.'on t.mts)

(I)

..,

c.: 100, lc:t ; tAble d YUilbltl 1010 coc:t •lt2C : I'~ of =-tu 1012 IIIII a$Ulb : atut of rDd AICl 1014 - a$ff00 : cU"91 bW Cl 1m ~ -sam : pout1" rDd .uy IJ t:!t :--····-··---------------------::1 1020 ltm Ll 1022 :------------.---·-------------------------: IW't bW &:ld ~ 1024 : ldaltJ Ulp : 90 bW 15 • 1m : Cl 1021 : lda l 17 U Cl II

ltJ-

lClA : 1dl tc u 1c3' : lda n 10 1C31 loepl • • II 1m : ltJ coa:t,l : u.ro cx=ter 1042 : : all h" bytu n lCCC : llfl loepl Al. 104, , ---······-·-·-------··········-u 1041 : 1*14 ; ato:e CVtCt rDd lda 11111,1 1.0 1050 loepl 1C52 : 1t1 llldl,1 ; lA llldl lid ..s2 1tJ ..s2 I II 1C54 : n 1m : du ; all h" ¥ta me : llf11oep2 •

..

" "m. 1C60 :·-················-······················· • 1C64 ...................................-.......... 1CU

Cl

n

8111 ••

'"' .

• • (D lUI loepl 1071 : 10 1G 2 : Q, 1G74 :

.."

1076 :

ldll4

; -md..Sto

1dl m!z I ltJ llld'l ida Medl.l ru 111111 ella llfl loepl

: miD IIIII llldl : tomd..S

: all h" ¥ta

1CI6 ;·-············--------------··············· Cl) ICII : 14114 me 1oepe ill: COIZt I : 11C%IZ'' t coarter : d*' ror cany tC nn : II

0 1U4 :

c

lOH : AA lctl :

....

ella llfllocpC

J11P mt

: -md..s : to Med1 1:14 Mld2 : tomdllld

lda 11111,1 ltl llldl I ldll•dh ltJ 111111 : all fn• ~ me : du lll6 : llfl locp5 1111 :················-------.------------------1120 : )U ..... : .. md l•l 1122 : lu nq.. : twiCI lllt ;--.----·············--···········---------1U6 : 14114 : CO!pUt rDd lUI loep6 lda IIIII I : &:ld Med1 1130 : Clip llldl I ; ICt eqatl 10 IUrt OfV 1112 : blelllia 113A : 11)6 : t:plloep6 ; CCifU' fn• ~ llll ;-··············--···--··········----------llU mt lda t. . ; all fl" atcl 10 ; rutGn old but, 1144 : ltJ1145 : ell : ..uc. ilt.unpu, a= . bd to UCI : ru

..

D tr Ill lJ

a:.

"

01 1J llSO .··················-·---·-··············-··· n 1152 Med1 • •

Cl 1.1

me ¥t 0,0,0,0,0 11~

..s2 ••

1151 ¥t ....... LO 1168 tllp • • Cl 1162 bJttO

--..

VIDEO BYTE the first FULL COLOR! video digitizer for the C-64, C-128 1iiOitd's flrsl fUll COlDftl Vldeo dlg!!lzer !he Commodore C-64 C-121 & t28-0 COIIIIIIIta VIDEO IYT£ Qll p t wou cltQIWid from 'f(JNI VCR . 8/W or COLOR CAMERA or LM VIOEO liNn !S to 1 lasrt 2 2 S«. SWI 111!1el ""hlCh:CIQ

• fUlL COUIIIIllllll Is b 10 I S(l(CJ IJIIIIHS!AJ COlor DIOCUS. ftr1 'IIIII Clrl ont 11 1$ CXlLORS IIICS - ' ! IIIII COlor 1C ont al 4 GIW SCALES Tllis li'OCtU . . 1PW JQIIM1 :ll.DDO !lnM COlor 11:1 II 'ICU -

• wu •

C»ctwrn DlAII , _

'fCU 10 ""

cn.DR ~ s

or IICCI!IIr iiOUI lrllllie'l • lOU . . 11(-IIII'U'n YlleO lwle ~ '1011 """"' ..... 0\lldt VQe lrlll • IHJIU

....,..

DIIJV(II!

• F'llm v.. .,.

: coa:tu OYUfiow

GO 1100 ·----------··-····---------··-····-····-..-·

-

.., ~

lrll

YlleO lwlfCO'IIn tol!!l 1!1 &Ill' 10 use , _ ..,. UTlllY DISK nl

• cc•l'lltll twill .,_ twucamn (

IJICIUIU • lt$i nu 1!lll an DOll IIICS

or

• c:oqaaa; mtaa no llt!lllf

a-

1w1e • ~ 1111 . 'lll1•h . . . . CC'TW.Di

lleto • • Plllllll y - lwle .. .,..._. poclwrt$ •

or

\10111 MriOt

liP\.OOE•

"'t COlor

.- nu SQfl'A;UI( uoe.:n

~rue

JIIW!ll Hl: Zit! .aen IISecl . . . ( ....' "'1 IIOUIIIJIIIIOIIII Qll lie.,_ II FULL cn.DR 011 . . IWIIIOW IWfiiOW aa • .. DIIICim . , a Wllf OIUIIf • m •plltil or lilr : : : , "':" . '1011 Q.'l IWTH

u.- c.

1071 : Cl •• :---------·----··---··-·--·----·--·-·--·---,.,~. : ... md(+) 1'1 ltU :

14114

D

C1 1Cl2 , --··············------------···············

• tr fJ

1002 ayacooo 1c:c Ot9 em

.:s a» :

Cl JJ tr 11

Of

I htins:t 3: nmdom.sTt'

a u

1102 . . . . 1104 : 110, loep3 1101 : 1110 : 1112 :

E

· uu rn 11

ldy ts:t lda ($221 ' y

.X-.

'* -

VIDEO BYTE $79.95

SUPER EXPLODEJ V4.1 wiCOLOR DUMP

II )Wf 1c1Gk!na 1i1r a CARfRIOG( 1111:ct1 Qll CAl'! UR£ ANY SOil EN I'RMS All

HI-RES IIIII TllCl SC'IE£NS 11 FUU COLOR 10 h P.Ai.1etiN NX-~ AAIHIIJN

NX 1000 C E"SSH JX-10 n rlt ()I(OIJA 10 or 20 Pnra II 11 fiiJ ICIIIIO II 0111t1 P1WU1S Comes Wldll llle -'d"l F.sTESt SN£ n UW) llllltllleS in aCll lndOI at a e:l1f SEO PIIG lit IUdlr ,... a llull~ I S[CQf() lol n M:JCH &AJCH MQAEt Tblll b__. lit 1 • tor 'fOil

"*

.. ,IlCO-n s.M•

11M • 1411 ...,..,,.

' .. r.m: 1'0 Olllllll CALL »12-~ PtltOII?I o.;.a 10 0¥ 10 0..

'

r naiJ _ .

VIDEO mE onlr S7U5

IUPOIOP\.OOG . , IUM PLUS S150 SIH COD'S NXJ SUO l. RfSilEHTS NXJ ._ SAlES N

THE SOFT GROUP, P.O. BOX 111, MONTGOMERY. lll0538 Aprll989; Volume 9, 1ssue 4


Turning Off Write/Verify Modifying 1571 \'ectors b\•

l )(>nni~

J, Jan i

Cnpm!:ht 0 19"'9/U

)ann

Refure I get mtu the tual opemung ) tern I \HlUIJ h'-c ll''e some b:K:I.:ground un the 1571' ''J'Cmting ) ~•em.

II'

When Cl)flllllOtlore rcleaS~.~I the 1CH I th~'- time "hich "a~ a ~inglc dme untt. 11 mcluded Oi~ O~r.llin c.;, ,,,.m .2.6 . Do., 1 6 thu~ be~.: me the tumJard lur stn •lc ch I. dn I! umh. 1111 drwe 1!1 \\l~l the \IC· IS4l) \\U ~sed on. The IEEE b\1 \\llS rcducc:d tn a scnal bus, nd the d1 \; lomt:JIIn method W:l! cltanged (ClAPt "a\ tncn::~scd h) I on the 1540). llus 1 "h) the 4().4(1 nd :n31 d1 1.; dm es ure rro I comp:nible ne of d1 L; dmes hut ure not "Till' cnmp<lll· \\llh the IS:~. hlr. l-or mun: tnfliOllation 1m this read/write prohlem con... utt the booL: ltmdr Cnmntnd()Tt' 005 b) R1ch3rd lrmncrs and Gerld G. ~euleld on ~ e 2 . When Commudore relealiCd the Plus/4 oomputcr the) included u scnal bu fur th e:~o1~11ng scnnl hU!> de' tee • but the) also included u rte\\ t)]le of bu!> cnlled the lED hu'>. Thi' bus \\'b a ~.:m ~ bet"cen the scnnl bus nnd nn tEll hu~ \\lth R tbta hoe and n Ie" handsh ke It nes. When Clltllllll..'llk'lfe rc leaS~.." the 1551 d1~k lime (al~• knc.J\\11 the 4R8 di!il.. drhel the) cD.a' id Siracu!ial rn:tde SC\ emI ~.: hangc!o ,,, the o~rating ~> ,. tern. \\lll\;h tn lud~ u fn,ter CICH to tlin:tl) Clm\CT!Iion, o to t f1m1131 TllllltnC, an.J \:llrT'C\:IIUn'i h)r 54-"ltllC (lid tlug)> in lhc! hlod.:1'\:a.J and hlocl·\\nh: muunc~.

OdJI} enough. th1s DO ":t'> n:lcnscd a~ lXI\ 2.6. "hich I' the snme IXl\ \Cr ion that 1s uti 111 the 154~ dr'k dme~. C\ en thoagh thcu 111 mOl) 111 ps re no" here ncar the same. Com· rnodore' logi m numbenng their oos \Crsions i... 'tall rwt 'CT) clear tn rn ! ContmodtJfC based the nc" 1571 drsk dmc on the 15-h' melllOI) map \\'rult U:a\ td dtd " to n:mo' e a 101 of the code he mstallcd m the 1551 d1sl.: dmc nnd ph e itmto the 1571 ( uch the ne"' OCR muunes :md the fa ter fOJt'rulting .:ode. C:l .)

I onh• "1~h Commodore had relc sed the 1571 "llh a scnal 00\ nnd nn II:EE 01' 15!11 t)~ uf bus \\hkh \\oui.J ha\c incre sed the U\'CTUII peed of the dme • if the DOS \\U\ ret'Oiicd corrtttl). In \Hap up II ol the nbc.,,e. the onl) dmc' TtONOCior

that arc hl.lth read and "nte com~tthle urc the 40-«l und 10~ I dr l dn\c, anti the 15u. ~nes ut dmes an: read and "rite wmp.111hle. 01 ~uun;c, )HU ~.:an't put u 1571 di~'- in a 15'' and re:lll sule I sin~.c )''u dun'r h,l\c rhe read/v.ritc head to do it \\llh. '\uu cnn read the same db'-' v.11h the 15''· 2030, and 4C~II. hut""' not ''rile h.Kl til rhem or )tlU nta) regret 11.

One uf the changes made in the 1571 oos "

the method b) "hr h it !undies the IROS (Interrupt ReQuest~). Jn,t~ of I" ) JUmpmg to a con tant memol) Joe 1100 (adJ~~). 11 JUmps through 11 \ector the same \\:t) that )OUT ~"UU'Tlputcr· Kernal JUmps thmu h the tc:ltROln \ector to output a dtAraeter ro the ~pnnter. et". Since this 1s the fin.t dill. dmc to haH~ thi b1ht). uch program llS tht~ "nc not poss1illc befon: "1th· out a map c:ITurt on the p311 of the pn_J&r:unmer. \-.:tth thl!t rte\\ \ectonng )stem m )our d1 k drhe \\C ha\e m:lll) opiMm!\ to pursue- uch s the ooe CO\ered in this :utide. Tht drhe"s \trincation routine Whcne,c:r one ul the current d1 '- dmc:. Cfrom the 2030 thmugh rn the current 1571) "nrc a ~tor to di,L:. 11 "ill then proceed tu read th:u sccll'r ll.xl in ott the di'L: to \enl) 11 UJ;ain\1 \\ h:ll II hns Ill I( \M 10 cn,un: that the b)tCS \\ere \\ nt• len wrr~rh• . Gcner.lll) )UU "ill nc,er ~e un cm1r tl\.'tur unlc~' )OU ha"e a bad dl''-cttc ''r 11 h:ml" ure t.ulure m the dt L: dm c or o;cn.al ilu . 1\t,mt:~ll) a b:ld dt~l •~ dctt'\:t.:d dunng the ft,rmar pmce '· oot the) do 11111 from urne to ttme JUM b) 'lltmg m } ''ur dl " "'"· In either~.: ~. )llU \\un't lice the pwblcm \CI) often. What thi pnJ&ram due \\hen m tailed m the 571 I' 10 '"cdr.e' tlsdf into the IRQ \c tor In nllo" m) program to chcd: to sec II rhe uos 1s bout to do a \ 1~11' operation: it it i~. I repi:ICC it "ith a q:a; o~r uun . It )OO J(m't umJerst:md Wl) ul thi,, don'r "')IT) bout 11 11 l'i not requtmJ to koo" hoM the pmgrum "or\,. to usc 11. Thi~

program could be con idcrcd mt..) ro some de~rce uoJ 11 proNbl) 11 n '-}· hut I'\C hl..-cn U'>lllC tht pnlSf=lrn d.ttl) lor three months "1th 110 pmhlern encountered to tbtc. De.• I


rt !0 na pClia: 111 ri u rtamd

20 Flzt=r1 (1Uj'(II.DJ1b.llclrllibnlfibnlfdclnlf~ll6:alldcal ( tt!tm c!f YriU ..:ify Cf'Ur.i= fer' a ~ Fl.::' a lqa115n l • l 4W c1 :& C) F"..tt'l I ICJIIJI: I •ttl 1 1 ! Q SO Fi:lt'{~l br • 6a FLmtrUUI'Itlcl dala ' =rsrlUl ~ lC Fat'{~) u..~ furi4a ' a IQ pd:.:=.tS t'Je..r1 fU! 'I~ll I llt t!•IP"N tq tJy to •

Tlli\ pro~ram runs 011 any Commodore compwerfmm the VIC -20 to the C128 ...

'aniJ

uanmtce thts program'? ot on wur d1sl. I don't. Wh} . )OU mtght ask! \\ell. 10 putu impl}.lherc are lou m:ut) \'arinb~ 10\ ol\-ed; from )'OUr dt L: dm e ha\ mg the flu, to dt"L: that nre u~ a\ floor mats. It 11.ould ,ml) tuL.c one mull c to "'ape u dt L: . On an} OCC'ount. impl) run thas pmgrJm and ~he 11 a lr} b) doing some 1 !>ling on a junl. d1 J.. ( Yilll L.no11. the 1me. n's the one )OU don't c:ue 1f )OUr dog or c:u eru • or tf Junior uses n a In bee! \\h 1 I'm tr}tng to ) 1 thatl\e used thi rmgmm fvr qu11c 11 \\hllc Y.llh 110 pmblems vn SC\trnl dtllcrcnt \e~aon' ol the IS71 Di,J.: OJll:mlmg System. but this ~o:h<licC ;,. up to }OU ton&:~kc. oot me.)

na Jllr9l t::!fu c! IIIJ Jlft'1ocil ~ na walt tu • by to be pmm

puS U&So m fiiW if4Sa •

u a m fdlt'lclrl' 1110 120 iJF-'(

tt

t

iJ tM 1571

dlritt

I

I:ttt It 1t!tI' aS ltlll'ralld l

.-.z

6 (llft!ltt!tJ

,II; llQ ~3: U,IM

m prut'lclrl' c 1SO cpal5 * u CJ

II 10 clcstl5 ihtW:;:rltt'lclrll II IID2lld:MIIr'.¢tllrl¢.tl lrl¢1 II ri¢: I drr'.at I I cr ....rsr~ . a lilt c::d ., 1'~ tr u IP 1~ labo254 ullom p;b350 ra ru4 tb na U. ~.4r Ufffc) 10 m U!.JIIalDl&mt-J54•,•m n. 1:0 ,n:t'lclrll II JIOI!ell IIOI!ellri¢tllrl¢:11r. • )lr.~) ld.¢tllrl )amy tlla FOil• -'.11 ca!y ~l 1511 tilt trlw tl m d=nU uo tc-m:Um ~lse ra c.ct un at St:=l • " - trod 9 air • ftC

==- .

.,..u

Tht short pmgrum alloY. )OU to tum off the 11.nte 'en f) opera· uon m .>our IS71 dtsk dme e'en Y.'htlc u' m the 1541 mode. Current!) then: n: 'C\CrJI sinul:lr H~r..ion, of thi!> pn'lJrnm run· nmg nnJUnd on puhli domain bulletin boanl but scver.ll ul them cont:un bug bC'causc: the). hL:e thi one. it some \\here in 0100. 11.h1 h 1 the d1sli: tlri\e's L:. MO\l of the ones I ha\c een to date use up too much mom on the sta~: nd. upon lhc fir..t llC:h cmJI', • l"m h! ·the dme dtcs. 11te fullm,ang program It !> lll-cn t.:stC\.1. tcstt'd uguin, tht'n le! tetl more... lo usc this progmm nil )OU nect.lts a

·=sr~ul

{ipiCII

DC

2»1.~·~

a::tJ

aa

Qll 2~ fc:~ol-.cS: ~

a

sue U. iJ poau19 u a ratla :.ana

2 pQlSI na l.r! •Icl.r Jlibnll

24lllba:U C! m l.f:sliC1m

Qi

ia W19 •

U

.s-:...'U

Jlibnll illlnlf

11-rwI

U. n:tGr' f="A!I II t.S-tt;::UU

~I

ZA~~·!I~~coe•

Fl Zl pr1Dtll5 l·w'c:USitlchtS I1lctzttllchrSicl lilt

a m F!attl5 ..., •ctz$123Jctzst11 Fiat fclrlll!ilnll II II lldDIII tuned c!f' l rl¢tlfri¢!11r1¢tllri¢! 11ri¢!1 wr.tt w:J.tr

1~71

dtsl.: dme and thts progmm. Thi progrnm run~ on an) Commodore ronlfllller from the \ 1 20 to the C I:!8. Io !>lan the progr.un, ju t looo 11 up nod I) pc run. Ihe pmgrom "til m:U.:c unl) tme r~uc ..t. nnc.l that ''· 'impl): " l· nlt'r the de\ 1cc numbc:r of ) our 1571 dt l.: dmc:". Thi \uluc can be m the run e of 5 thnJUgh J(l, and would be the me number that you Y.ould enter lor a B~ 1 conunrutd as dln:.d"fil nam ",u(xxl or load "filen:.me" .xx \\here xx 1:. the dc\l~e number of the 1~71 c.lt''- dme. II the pw ram land that )OU mc.leed ha\C u 1571 dt~L: dmc at that de\ ke number. 11 "'ill pnl\.ttd "'ith it a! signed ta._d. If there t nflt a 1571 online. it 11.ill da~pl:l) :m emil' me ge. \\hen the progmm has tu!"lled off the Y.rllc \COf) llJCTUiion it \\111 mform )OU h) tit pl3) mg " Wntc \en f) uperouon ,., no11. turned oil!"'

:l ~ ita$<' ·~·1 ~~ ~=tom Q

m it&S> 1 eas<"9 tw-'..5 p:om

ca m Fut ·anw t.z tr.e - • q

n !»PUCaS · • U JU rtt;:a

Cl 35G pri:ttl5 •·r ctzS illbJctz$ ,...a:(U+Cr1 (0JI rttl::l

w

na fila na ta napb

IJ !~ 41 .II ! A l!au ..

n ~au 41 • mou aJ 5

na~U

Cl UO at1 b5 GO

D'

or II

410

•u

U? data 4~

aa

ct

na lda ~ J na Clip tsal na a ••l5 tMa bnaO na en U:O ~ac. t» wrifJ hlctla na 1U S~ 'f !J!th.na da to

d

=

~

N ct 1C

tl Ul W r. Ol. CSO dlta ca I: 4~ au lO 0 • 4iO 4e ft D' m : DO na Ula

•u

...ad: &:!lc of ~ 1 to cb:k 9ft arret jGb ovt c! ~ h it • w:.t, C* t:dl

' " " J " " c::to

tt

rabpl•·ll na J1P JOOCC

if IIJ ICrt to

. . tilt

bfi:C

!:r this -

m u are :» pr09f11 h UIOited ._ it a b t» till drift I& 500 aa&&aaa••••••••••••••••••••••••

During the course of thi program I m:lL:e sc'ernl chc ks to ~ th1 t!> renll) a 1571 dt k drhe: Fi~t I checl the IRQ \rctor nt HH~ to en'ure 1t contain nn f E67: thi 11.111 m un: that 11 '' n 15·-h or IS7\ I)Jll: of cJmc. ~ext I check 800:! for the tc:~-1 Sf 111 cn,un: it is a 1571 di\L; drh c. Finall} I check SO:!NJ 11. hi h il> the IRQ 'ector lor the 1571 di L: drh c. When I ched tht 'ector I enl>ure th t the ~L'>B of the odd res contam" a 'alue 11re:uer than 80 lo en urc th t the IRQ tl> gomg some" here tntu ROM . nd not to another pn'lJram 'ud1 a mine. II ull nl the altln:mcntiutiC\lnn: true. I tlu11. nlo:uJ the IIllO the cJrh C amJ C\C'CUIC II.

ID 5lD 4lta • 52U au

I ~

d C2

1.1 ~ dlta 11 u 54, llltt " Gl IJ 5!4 data 16 1~ fl &O~dr.edu2 II 5 Q dl:.a ~ U Cl

.awuuatCl

• ~., ~dC1 CD ~ diU aJ C1 t:G lll Gta 14 u C2: tD QO diU 58 Gl.

57

,~_,

~

na 1&1 na ~ s·w na clc na Ilk n na IU ml5 naldls:lu na ,... S:lU raUa12

na.us:w na ldl t1 na 1U $:2u ra eli naru

....., tact,:::::llll fit tM cf u. cmc: ldma ia tM u-. wet:: llld add ] co 11 u. " " It for a to ,_, to thiJ 'IU . . to '"" cedi a:. I! JIP SuD plact u. ldli.... cf ow

-=-

~tela lito

t» 15'1 •

u.

1:1 ttru:

ao tiUt al~ld uck lr, rwurt t» blct;rllllllf ~ udtlllt*-

u


Make 2 Sided Converting 1541 disks to 1571 fo nnat b"• l~nn i'i J, J11n i" Cop right 19 9 [)J. Janis Th1 progr.un w·: h 14 nuen tu sohe t\\.O problem' I "'n' ha' in~ "'1th the 1571 d1'k dm c:

21 [)(,mg u <011 H"l on a I571 d1 k "'hlle it "'a' in I'i-ll mooc, cau~mg 11 tu rc' en tn bemg a "ngle·"dcd d•'"· (:\(Hf.: 'lhis pmhlcrn ha'i been c1~kd in the ne"'cr 1571 di'l.; drh es.l The first problem can be a pain m the l.:c~ lx>ard. What "'a:. required "'as that I use the oos hell or other uch program and cop) the file 0\cr tu a ne" I) lormated 1571 di,J.:cttc. I could not usc an) lull di k copiers becnu\e thc) 14ould cop~ tra k I~ nnd 0 from the mgle- ided di k to the double· ,jded dl'.k, turnmg 11 bacl.: mto a ingle-~ided di~k (a' far alo the 1571 14:1 con,crncdl. Well, that got to be a time· con~uming operation. So I ~ct out ttl lind an ea"er 143). u~ms m} 1571 /nt(lllcJI\ boo}.; lrom AbaC'U\ Soft\\.llfC. I begun to '';tn through thC' format routine . A' 11 turned out. "hen Oa' 1d S1racu~a "'rotc the ft>rmat routine. he 'ct 11 up a' a two-pa" opcnuion. Fiht. he formab all of 'ide 0. then return~ tu lurm:u 'ide I. Beft>re I go mto an) further dcta1l' on ho" to u'e the format routine I \\ClUid hJ..c to tell }IIU hn"' the 1571 chccJ..' to ..ee if it'' got a double -~idcd di~J.:eue in the dri\c or not. When }OU pcrlorm m<hl d•~J.: luncuon~. the o,,L; Oper.umg Sy,tem (DOS) read tracl IS sector 0 mtu the di~l.: dri\e\ Ro\\t. then chech the •hird b}1e mto thtll sector Cthc fir..t b) te i~ b) te 01 and clk.--ch Ill sec it it ha.'i t'lit 7 ~t. If 11 i 11n1 -.ct. it i' a 'inglc· ii.IC\1 di,J.:. It bit 7 u t, the dri"e "'ill read in ttad: 53 ~tor 0 to read the re 1 ot the d1 ~.:·~ Bloc}.; AHlilabilit) \1ap (BA'-11. Th1., inlom\31100 ,., used to lind out af a ~tor on a 'JlCCIIic track on ide I ot the ,,h 1.: i in use or if it 1 tree. A~ 'ou can see. before • tracl be~ond tra~l l5 u

the DO "'iII allolo\ •\ ou to read a mg the normal uos. 11 need, to 'ec bit 7 . ct in the th1rd b~ te of true!.: I ector 0. M) program "'ill alwa} set this bit. Alter this has hc:en done I ~nd out an 11: "'hic.:h doe" a couple Ill thing~ : fiN. it force~ the d1'J.: dn\e tn reload tracJ.: I sccwr 0 into "" R,\\t (the 8,\\t for "de 0) and "et the mternal !oolnglc/double-~ided di~k flag.

sc,ond.

II

\\Ill Ioree the uo... to read

10

thl\ d ...~.:·, format·

I'"' 10~.

Whene\cr }UU luml.lt a disl u'ing a \latcmcnt 'u'h a' " nO:commodore 157 l,dj" it \\ill maJ..c the ,h,J.:', name commodore 1571, nnd pla~c the fonnatllng IllS in e:.ch header pre· cedmg each SCCIIll'. In this case the lom\atting lOS \\OUid be dj. The~ 11> b) tc nre placed along "'ith the n:~mc l>n trad: I X -.c~· tor 0. These can be changed b) \tmous wlt14are program\ "U~h 11' III'MJE:R Cll.t\(,[., lo\hkh IS \>0 the 1571 te,tfdcmo d1'J.: 14hich wa bundled \\.llh }our 1571. 1f)uu change the name of the t!1!'ol.; or the di!'ol.: ID on trud I S<X1or 0.} ou arc ju..t chang· ing the inform:uion that )OU "'uuld see when }OU 103dirt:ld in the d1rectof). 11~e actual hmnauing ID b}te~ l"annot be dunged "'uhout reflKTIIattmg the d1 l from scratch. ~"'C

the d1~ ha." been set up a.' a double·silkd dt,l.:. and ha' re:ld in the di ltD b}tc,., 14e're read) to go til "on;· :\'e,t. l ~~ the read attempt' to one til pre\cntthe di llrom searching too long (o;o 11 doel> not "'~tc ~11ur time~, then I anempt to rc:ld tr.u:k 53 sector Cl. Tro1~1.: 5~ scdor 0 could ha\ e ~nan\' track • on the tXond 'ide of the da~l.: . If I'm able: to read in thi' track and 'iCCillr, then I J..n<l\\ that the di,J.. wa.. pre" iou'l) formatted a a double 'ided di l, but ha .. rc\crtcd to a '>ingle-,ided di,J,; due to problem 1\\0 \latcd uh<l\c,AII I ha\e to do i' to perform a collect command lln the di'k to rc~on,tru't a valid (corrccll B-\\1. If I'm unable to read tmck 53. -.ccror 0 then I !..now that 'ide one 14lh ne\cr tonnattcd. and I need to format it. :--:ott that thi' prognun does 11or comen 01pp1C'-.. A1ppic, urc those d•~l..' that h;nc ~n notched on the other edge ..o that the} CUll be n.~d 0\Cr and used 00 the other ,jde. In order to format ~ic.lc o11e on I). all I ha\c to do is to enter the formatting routine ut A445 m the 1571 di }.; dmc. Once thi' h done the di~k dn'c \\111 go on 11 \\.a) lonnatting ''de one o11l) ot th1 di,L:. If no cmli'S (JCCur, perflmning a collect on the di<.l.: 14ill create a lor the ~onc.l ide. Once this ha~ been complet· cd )OU "'111 ha'c u douhle- ilkd di~ 14 ith no Iiles on ,jLJc one.

B"''

l!H:n though thil> pm£ram rna~ sound tro~ightfof\\.ard, 11 u 11ot! You mu~t allu14 malt' 1 1tikJ h> complete i" ta'l.. or it \\ill cause ~ou pmhtcm .. in the future. An C).:unple: )OU h:l\c a .,inglc·'>lded d1'k that }OU want to comcn to a doublc-,ided

T~~-~ --------------------------------------------------------------~~ ~........................................~A~~~d~ 19~1~ ~~V~~~~~1~ - 9~.~~-~ · _J


drs\:. You get all d~e "3) up to the pmnt "here the dr k "us JUst nbout tu he lunnancd (srdc one onl) . of C'OUI'liCI, and )tlU ~hange )OUr mind und pull the di~l.: out ul the di,J.. dri,c. II )OU t.lo not rerun thi program ond select nu (\\hen u o,J.:, )UU rf )OU want to fonnat the dr 1.:), )OU "ill find that )OU ha'e a btg problem on your hands...

usc on ide one ol the dr,l.:. lhrs \\OUid ghe them the option ot u.. mg a 154\, 2031. or 4040 dr~l.: dmc as the source dr 1.: und the 1571 di!.L. dri\c a.. the cup) d1~t... TI~e onl) dru"b.lcl.: I c.an see Cnnd lul\e l'locn all«tc:d b)) i tluu m} nonmt method nf readmg 10 u dr k' BAM and drrectOf) no longer \\Orts.

It )OU open the director') up tor rruJm • (not load" ".8 etc.) Smce nl) prt,gram h:t alread) set the double·,idcd Oug ~ that )'OU "ill he able to real.! in the dr,J.. \ B \\1 at the same time. On I wuiJ read rdc one ol the di L:. the ne\t tm~e )OU tf) to do the 157lrt \\Ill not<oend )OU the 8\M for-.idc one: )OU ha\1~ to an) thing \\ ith that drsl.: ( uch a sa' mg or lo:tdmg a program 1 go get It )ourself "ith a I command. One la't comment the 1571 sees the double- rded llag set and tne to read tracl.: about the fommt 10 b)o te in the DA\t: This b) te (b) te 2 -.taning 53. sector U to re:u1 in the re 1 ol the 8.\M and - hang! - a read "ith b\• te 011 :a S41 on the 4(~0. 2031. and 15:\ll, dri\e~. This errur tk:cau~ there 1 tw trm J.. 53. ~I'( tor 0 becuu'>e it "lh ne'- b)IC h~h ~c:n contused O\cr the )Cars a-. the lurmatt)pc b)IC:. er formatted! In m) opmum th" tell, ) ou the number ol ~~;tor:. per JOIIC and i-. laid out as I olio\\~: To ~ 11WI..t' 2 srdc d all ) ou need to do i'> to I} pe it in or obtain the Transactor dr 1.: for thr i sue {l'disf #27/. run u . ond then nn \\er the queMmn~. The) ure \ef) trarghthll'\\'llrd que llonlt u~;h 11\ entermg the d'\ICC numher ot )our 1!'71. Thi' pm· ------------------------------2040 20 u 1'7 16 U1 or l AO grum ha' tx--en te tc:d and tl(ll:nttcd "ithout 110) pmblem on a • • • • • 304 0 ~JC-20. CM. Plus/4. 8 - 12 (\\llh our fa 1 seri:ll bu~ in,tallcd. 1540 20 11 1'7 u 141 of course). and the Cl2tt I nudt- ure th:ll I onl) used BA\JC • • • • • 1541 2.0 commond!> to olio\\ C\Cf)<lllC that O\\n a I57 Ia ch:uKe to • • • • • 1551 use thi' program. 1571 2031

Mal.t' 2 ~idrcl h been te .. ted. h! ted. tc,tcd. then te,ted -.ume more. Thr~ program h:to. aJread} been released \Ill the CBU<j user'" gmup lor the 8 · 128 computer \\lth no cornplarn" thu .. tar.

40 40

A' "ith n) pi ~;c: of soh\\ ure, there i' mom for change and gro" th. but th1s 1 3 funcuonaJ pmgram "uhout an) tk:lls and Oag~. If )OU \\1\h It) change thi soltwarc, maJ..e 'Ure )tlU l..n<m ~~,u tl) "hat ) ou ~ doing or ) ou could era-.c the "mng 'ide uf the da,J..cnc or lind )OUr'iell \\tlh a OC\\ dent in )tlur 1571's outer ca~ because •wu toll.! •wur l.lr,J.. dmc:·, head to take a quid; trip to Mar. and rod.

• •

.. • .. ..

"

"

..

.. •

2030

(DO YOO IDtCM? I

142

1050 1250

21 26 24 22

143

• •

"

All of the abm c t:~ble i., of m) O\\ n creation nod opinion. Ta.L.e the FORM T 'TH'I S41 for example. On the 15-h and 1551 the) a~ all re:ld/\\nte compatible and are idcnuc:d 10 about C:\C:f) "") and are currc:ntl) l(lmlallcd c\actl) the 'arne. On the -«~II und 2031 drh c~. there i' an e\lra <1 II.P I b) te in the format pm· ce" "hen compared to the 15AA dri\~. Due to thtlt e'tra b} te. tllC) are not "rite comp;1trblc \\llh the 15n.

\ hen nJ(JI..I' ::! Jidrd "'ll' -.ent in. 11 ":t' O\er lour pa~e' long mo~tl) becuuse ol •ingle line \lah:mcnt,, and mu"i'e amount of comfTh!nl\. Probabl) the comment' "ill be remmed. and the program 'honc:ned due to :.pace limuatitm.... I hope that 7runsurtor "ill place the BA \IC pmgram on their di,J..ene a-. 11 " sent to them so )<)1.1 l"Un obtain a cop) to folio\\ e:t~ dl) ho\o\ thi' pro mm \\Ofl,. (\1r. Jarw: progr.tm h3'> not ~-en 'honc:ned. In lad. a line "a' added to get around the appearance of an r:t sr: ltll..en. A'idc: from that, nothing ha., been mno'ed.- MOl

The 1571 i double-,il.lcd drhe "ith a dillcrem BA\t ~h me "hen compared to that ot the 2031. ~0 und I~-h. and 15~ I t)pe dri\es, In other \\Ord~. th•~ b)te doe~ nor mdkate the number of tracJ.., on a dr l. nor the ronnattmg method u~d M the dj,}.; a' }l)IJ arc led tn bche\e 10 the di 1.: dri\c:·, manual. One intc:re,ting po101: on all uf the Commodore d"L; drhcs. the DIRFCTOR' routine l.letault bJ~;t.. to the 2().«) dr,J.. dme \\hich "a \ERSJO~ I n' the hlfllUit t)pe. On the 4().U) if )OU ch:mge the 2,\ on tra&:L. IR se,,,.,.. o to 2 lollo"cd by an Ann "111 -.ho\\ 11 lh 21. after the dr t.. name!. Thi~ hold true for all on the Commodore dr,J.. dri' e:.. includmg the 1'050/1<250 drhe' a~ \\CII!! (change the S050. R250 lmm 2C to 2. fol· lm'cd b\ an ,\()),

A couple of closmg commenh about tract.. IS sc~;tor 0: If )OU tool.; at the last h~" b)te:. 'tanmg nt b)te DO )UU "ill -.ee the number ol "CCtur.. tree on each trlk:l on 'il.le one. I'm not cc:r· lain but. in Ill) <'pinion. Da' id l.lid thi' to atlo" u~ (programmers) a "11) ot seemg it an) truch arc in use on the other ,itJe of the dr 1.:.

-

If llfl)onc ha~ an) 10put on m) opinion. u, ... uued abo, e. please .;end it into /rtlllltlc tor, I \\ould ht..c to hear tmm ,u,h people i.l't Fred BO\\Cn, Jim 8u1tcn1eld. L11 Deal. Jc,-.c Kmght. Anth· un) Gocclial... Davrd Srrn~;u':a or from an)Cli'IC \\anting to

\\ hen I \o\mtc u lull di,J.. cupicr lor the c IH c; CB-12S u\Cr. group) I u~d thh method to sec: ~.tuid.l) if an) ~ tors \\C:re in 59

Apfl1989. VOlUme 9, 1U!Je.


forementaonC\.1 programmers ~: m ooe S!Oit.. na t! .t a a l!n ,.,.. U. llfpua U. emr a111pe lt:n e been programmang on vnnous. Commodore di 1.: drh e fl) ~ prl.&t'lw t• ,s. ' IC::J tor u. 1.5 1 tilt 4rlft calJ" for m:m.) )Cars, nod lu\e fnr more hnnd -on time tlt:an I oo. - lt.d:J ll .. p:i::td l.ake so man) ot~. l'm Ull j ust a bcg anner. a m rwo:J - pruc .t • t.W ""' ct ~' nol na pr-..tt t ta ra•uad hil' S54 ~m na p:ut tt u u. cr:u of u. ec:r•n llopcfull) . an the next month or '" u I "all ha' ~ lmmd the time to clean up the comment in Ill} source cud lor m) fuu For· II. s~ flll~ : t..~o)e:t ..t ra a ~'' ~ na apa u.,.., ......,.:.. u u. wt drift mut lor the 154x. and 157 1 (an 157 1, or 15.t I m<'ldcl. and \\til r1 ~ tl•UI pQU14 na Mt U. fllg fCf 'e aided Wl be able to get them oil to Trarumtur • an<.ltl~ }lJU. Unulthen, I; ~ pru.ttl ~ G$(11 ned Itt. . . 1.1 1 Cl 6W prl:tl! "d 1 0 Sl ,. na atttlpt 1.1 ned MU 4 a* cf U. WI Leepthose da"L: dm es pmnmg. n 110 Q!=.,. na pruu" u. error =a 11 ll IH r:utll ¥.>r '+dtt l51 na nnt ••• • d nd t::tlllfU ·•make 2 id d .b;a .. • m if •• " u.. m - i1 te nd tM ..:·c1 aidl af u. till • u: na u.. t:.a u .. t u.r u r=- it IF lD .,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.,,,,,,, n m na ' rill trjll&1 " 1 u~: UIClllll ~~a• u ct W na u a w '• tend •:: fa!* of U. till) • a m na t1-. .u apa c+c=th u u. ~ U"1ft ll ~ na • t.W prur;:a u Ulll to cc:Mt a 1~ ww.:e tUt • mal.:e a comment! All of the

nl-

-=

na lib U. U lft ree~1• tut t.W dial 2 aidld dial 1111 "" It reed u dial l4 a

1G 4' na • . , col!Ac-..ad

IC

Cl SO na a ~ na AI 0 na li ~ na or na

GJ m pru:'fw J IG l p$a Cia.k U.., lila ttltored tc a doSI:e au.! cliabtte'

a uo-

U. 13'1 tat uht ~ it . , u U. lSU ... • CiQ nll lltwtiCilJ coattt a 411Ytte lllct 1.1 a tllfi!t aidld • WW.te uu prop~ will a!to *"'tt a wi.ttte f~tted ' • a 1541 te I Wd aidld 1571 WUttt • 1.1 . . UiJ pupa )lilt pla:a U. atf~ed 41.1Utu • u undid *ift .s na uu pro;:• 1111 if uu • prthla l:olda u. u. UiJ po;ra 11111 c:ont:t u. pra:..

• ' •

• • • • •

a.uona• II: mna•w:r,. if for ar rttl• q encn GCar er if t::r'.llf U. ll W ra• :atiGII af WJ pupa J" ibll Clli' f= ~ PI lUna• • o tc tb if fCf - nuc:t IIUOna• s:= ea a mu error or a pr;wr tillm UiJ p:o;ra t loG mna• a.= t111a tu tut p cr. mc:t uu ,... or t II m na• ..mu prllbr.t caU occ:: nU you 4i!Utte• • Oll) na• • II UO na • {cl Ull Ult bf Mh ] jam~ pCliCitiOU ripu ltllnld' • 2 -. t 1C 2!D t11 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''tt'''''' a. 22~ ..C) na enr UiJ u reu ClllllpiUn aa• •·• 4) ~ ttc CD

m ~pri:ec

n m frlzt'

1

u. ec:•• 1111 al.ttt ar w:et .:. . lif arl

Jlcl.t • na c:..u

11~

11 If

... • 1.\

• Gl U Ol

a •

" rt II

,. OJ

• PI r1 • •

a

IC Ill

noF$a c:.r u. c..t ui,.. W'.:.

• na r..rlaiJ u 111 prattd m r..:J ra mr u prut u. r..rliiJ • nop+lm na pnc 1t u u. ca:e: ot u. ec:1n 210 pr~ '( Wtlfla!t}'; nalhtp!IJ U. dafplt *in ' '•r lee lpll5 0 ' na prtl'lllt flllliGII lid fra IIIUf pru:::ed m il:petU .s na al!et u. wr to u. ~:~net ~ l2t c..CMS na a!a. proper prlliFtliiJ ID II ~(n.l f&J )) rta ab tM Mica t ft !4: if • 0 u. priat'fcl:J' - Uq rl . . . . . no 1!~! ed ocn u. m na Lf u. .ne~ mat..r u u ..,. ~ ID prht 'Icl.t}' na i! •! • ac:t • clw aaea 1111 pr.:t :l¥ mur n ,.. 111. , dlrlall ' v . nall u. tal• 1"1"1 rta lit Ut tiiiUI f~ ellq ~:J na prllt it U U. CIICU of U. aa Ill 4 :m na pnc u u u. aam Ut ~700 na W.lt to: tilt- te tet•ooo:.dfe U. e::or m toto250 na mwt u. UF- 1cop U~ II lS ' 1 ' rta tcft rtMl :J¥ CU Uift tO alit•,• -*1 I • • u fcrMtlltca ..t na 9lft u. u ift ca te twa 1u riMt prUt ~~~ - - ta 1111..,. 4W UIN IOIII.l ... H~ pril::l! w · na JUt:.. cuewn rc "f • a • tuc lilac: ;1ttr 4 pr:.cll "'C>r +ertr.! ~ nl u-.. II rl u t» tiM *ift 4 l!'..eftJ 11FJ tf J 11•' U.. oo! f"tG51C

TIOIIIOctOf

• m :.a pitl!m n m ,s. i • . , pufm'" a collect a ua dial pr1111 wet • •• lit n= ,_!l nol f11MII20 pabZt: ~ cpalS 11.5 ¥.1 ' d.U pNt.,cl.t,. 1111

II lCj 111 . ....... ........................ ....................... ~ SO na • i1 • art ar' 1 1.1 reed U. .:cad tia ot t.M Catcu Uti • Cl Ql

It

Cl •

m-. na '

~

pe t!it UU tM .laa af f=tttut ll!y U. MCCM t~ af thi

till if ...ICt.. Ua. W1ll forat a!J tM • • aid~ ot tM na • tat u if a« cted U. • rutcrt U. a:.:;:e aWd fllg • na • U. Cia lid cm:U:t uu ro;t l w

ra •

.......

' • • •

- -· - -•

Cl Ill p:!.C'Ic!.rl II Ut pnb2C Cl Ill ,S. ecny Uia Wietu ... a« f::aatted u a 4r:dllt aided lhabtte • it .,, ly a) ' ' r.!l·""l • m rwoll pelut ,sa• -.14,. 1llt u

pe:mpemt

m m prilt'lc!.rl IP 10 pta art,. ten' W.. r.ll uue

"' m r:.u rt ,...,m a •m ca pe•m JJ t:t pen~ ll.

~~pel

Ul piti!W

ue n..

10 • 150 f"*lllO

'*'

w uc=d aid~ ot reu dial'

IJa)"

clltiz rill I .. if t • J HWi na forat U. • ef af tilt dahtte na I:!:CI U. aer 1111 perl=a a =lltct • U. l!i.Ur.a - c!oM . . al! . . ht. ·na cpa u. ,.., c-u u u. eu u1ft •na • U. fllg for a atatl• alded tu•u ·na Alit aliiJlt au.! 4i•k•te flat nl . .

•*

• Klratm GC ,., fll eeeeeee•e•._.•~ • 11 na • UiJ r=-.W u U. u:rl:l 'aller it L."J cliA emn n • • - • ta::td ltlllr u. u. t:ift Miq off u. ,.... !• • • jllltl t» • rJ 1 na • mor m q• 1111 rmta U. • aida4 ua;:.. alded e••u • ID :m na •llect u a t!'l:• ·~ 41+r.tt ~«~ tMit u.u ta "t'f up::u=ll• cc : 21 rll • •••••••••••••••.•• ,' ......... ......... . . .......................... . n lW if lr. 1111 Ul) cblll~ na d:ilcl be U. CA trift bzi19 ux w aft Cl 1C4' pabl~ ift<2 t!la HWi rta if lWt Ill dr1ft IUOU tllll rr.t:l • lut pr!a'lclrl' .,.S I JJ lW p$e ' dial emc llu GCarled • • z;.al1 rliiO;p:~W r.u u:so pSaef ~:J ral plblllt pruc pctlt • • • ••••••ee.-•e-.-.-a

I**' ...

e e eeee . . eeeeeeee. .ee e eeeee . .

1P 1171 t1L . ........................................................_........... , tc 1010 na • ua Rlt.llt u utd bf tilt u., cc '"' u W.tct ncl men • « 10 na • u eyew o: U. wt Cnft bWf t•...t tff 1f U. did dr1ft •

tl 11= na •

*'

oo uu

U.?ld off tMI 1t pru.ta a ftP't; te U. aa 111 llllzwo..&r.a • na • u. prop• i1 ar car error ea:ua u. u. pr¥• u ib:rttd • U

-=-:

C1 lUQ ra •-·····-·------------·······-······-············--• CD 1W f$a' tm a reu tiM dnft ' no: r..:J g=C!W ~ ra

60

IJ

l!t ~

II

uso na •

rll . ....

reed

...... ... .... .................................

u. c•=• •

ua u.

'•

1111 •

u. a., u

Apfl1919. Volume 9, laue •


n

p

<

'

r

f

I

u I

a

s

I

II II

u

11 I1CU41

:u

u:

ll

y

u.

c

U&!ld U!l

I

l

til

L

I

ltJ

I I

u

I I t

t1

J I I

*

Ill

11ft ••

CI t

I

&1'1 •

I

u u

I l 1

I

'

..


** •

u~ na • J.l'dielte tUa Wi u Wed to .::. u to Rllf l! :: a ns • aida of 4!Ul 1111 if .. .... ale to nU it thil iistatu •

11 " an

II 1!IJ • au f II m~ nl ' ~ I.I 1m ra ' alaf!e 1idd 4i&Uttt ao nnt till

a=lt to it . . hCIIat~ U a flit U:t to Uld.icatt t.Ut W. 1111 W.. prc;:ra

D lZlD na • IJ a m;!t aidld litbttt

D 11" • • ll na •

' • •

nl

ll

ni

c u

=:srm

F~tl

a: mo pr~.£t n "12 2 c11 c· II 1m '«3 IC 1m p:idl "1' ' ll ~ p;l)2t!l

u:a .-m~

na

II ll' na

c; m; na fi 1m na li. ll» na ~ ~,~

n

I;

' • liLW nl Wfltt till ... blllll:l to till Wbttt na fe~ wr•tt Rid c1~1 nl fxrl tn.. t4 ltd it I ba ia na cl• oar • run :at ta'l nl nopa till cNMtla

(l

~·~ell

lln-:•M:prlr.ctrillll

... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. DUt

c:.r u. it}ilc&."d b:ffu cf . , bJ PflUM 1111 .Ut ~ till 1110 na • ...r to p:.u a bJ aad 11 it a till bf r U. rtt&rl to till ll~ na • olll"9 rr« l• tla ~till flat ia tlllbll to iwl:wt Uil

II &:. 1

na • wt ia a 11,.:. &i.W Wl liCit a H

IU U:D na'

n 1m

lt

• a!dld .t;atrte tlillllll •

na pr;~ till ter bo&rd =t!u of aay eautac!l.. Ur ptuJU m ·na.Ut fX t i l l - to JOUI bJ

~

• •

---•

G.7 U~ ptd i11J-' L: lNj ifdoYU. nt=

tUa r=ill IJ - to fOCIIIt u. u. cf u. ~ • t.Ut ia arzlltlr fo:at:td u • ~lt • clad diat to do W. • • I'CIItill t.Ut ia ia tllt l!ll Wk *1" IJ ued ~tiel IJ ia till • e=a! !~U., pr- u • WI r= ln "prm • .,.r cf tnaa 01 Uia 4iJl 1711 utc $:2Ac ad J-r to till • fo:at root!» SaUS) to fOCIIIt U. ""C'N' 11• of till 4.W

Cll · - - - - - -

a:

• •

!.D 1m ptu$ GL 2;43 n!CD g; rut ... .

•••·I

le'l

2W ifc•

p:lbm~

i!u$0"~~

~~lettS

.s 211 ntm

• mo ,r.tl .s ~" p~ • 2* cl0112 cloa.l rttUI a me epa1 "'u ' 10 • clwel ntc:a

lltllf putOCIIIII 01 lldt 1 of

p-+:m pra:t: ... ckS u =:sr.u

naac till f'.19 f:lr a aagl• aidld o~a•:e

ll 1m na · - -- - - - - - - - - - - - - · - - - -• ca HOO nl ' .-ne Jll%9l rr« 1• for all eta I lil.J eCrOJtile Wl!l • Sl ~lt nl ' 1 - t all cW~UI ctmd to U!J poll: ' ll 2~ til . .................................................................... .

•• - - - · · · · · · · · · · - · - - · · - · - - - - - - -·

u :u: Ffht'lclr l r; :m ps- u. fiiCIIIttUf pnc111 u Ispace lpr .w.tu'

1~

G.7 lKI pCml na c!;e~ ltiJ.,.. diat llri1t fll• 1.0 U ~ pnr.t'l' -11'- lclrl' na C:m till eaua lid tmaute till nllbr lr 1 trlwe U!J papa

na . ,... UKt r.oectd u u. 15 : 1 ' " c ma: t.l :m ~~on r• -rln tnct • to f=-t too • :oo tpal "' u nl . . . till c ... ct-1 to till 4iJl dn.. Q :m ~ 1510 na c11ec2 for., arnn u :m ptuttl ... +ctrSI• lllllliJ ~ •lllil ~ lli M na ac • w

flllllll

rJ 111~ na •

or

~u• a • 214

a :t

• •

r.ru, J::1 wi to ,n= md aru U. ~ate r • ~• fl.U • 111 or off (C)

D lllO Flat'! l' f~.m- F~ wt u tm fcrl•ltolbl lec·t.:,SJ/21 prilt'lri J'· ., liSe Fl=iS ~ nun

cllec2 fill 111111 t.-n:J ~ poiltu to U. a=le ~ ~a:~ sc flit u till ftbe fx 1."911

nl •

• 1l» na

• p$ •

r: me na•- - - - - - · - - - - - - - - - - - - -· " :m a1 • te ipS /2 na f i.ld trM le:r..l d r.rilf

D 132; fltUI l:llllG ll ~'

It

IU !t~ na • rcw • m r b: to pu: till ta: •

C ~r •- - - - - - - - - - - - - - - - - - -• lll:l F=infl -..: 2 ~ n I' na n.d b U.. diabttu ta

1043 U~ FWtl '11-f 2 l'

1ft •

• •

ae thiJ m:l• p

a:

1.0 17

a

ro uc'

~

tloaU

-u

CHIP CHECKER

:p.m~: ra:m

n ~ na • illl I'CIItUII r.ll c111ct to am t.ut tian art arnn dr:tllf' ::r ~C na • till ,..., pr_, _. u till - N1l9 till ""'*t• • of • • :.52: na • till Wt Ci" cr C1f write an:1 t.tc if . , ICCIIr U. thil •

"*""'!•

II 13» na • will tm•utt till f~tut pr- ad fiMt till ;; 00 na • IUfltldcOlt alclad fl"9 beet to a alqlt alclad datettt IJ ill~ na • 111tt Rid till an!"9 ia till fur. at of naltlt· Ftt al 00 n l . n !511 1• 'nSQ if~ nw:s na if 10 wt dn1t arnn "" OCCIItltd

r. a

,_.,m,...,

t11 r.ll pablm pse1700

u :m na •

1:1 !Q~

,....,w.

,.em flltollt

-·····--····

,_tat m" · · - -•

1l

:~til

n

1W c.lcteZ el•l na .tn'llt .... cl:ul ~r! .,.Z 2 I' na allOCII:t 1 tlol!u for ar • &a U. ~ dr11t lut .,.a1 "' 15 na till c: nzd ctwel to till Wk dn" !Gj f'U 15 ~ nl cllld f:lr Clf diJl UIOU Ua ICUI l~ f$e ' pr.a CJ bJ ~ COC:IAI ' n-1 ICE 1;)1142 plllt!m pl 1~4,

u

.......................................................................

*

• 75154 TTL (Ais

• 9000 TIL

t h.J,ts.s)

14-24 Ptn Chrps • 3 " + 6" IC Widths

s:) •

DUNE SYSTEMS

,.w 1f.S.' Uaino

2603 Wt't8 Dl'rve

1·1s prut'(clrl' ntm

St Joseph, Ml 49085 (616} ge3.2352

Cl l'"H •

c: :m

• 8000 NatiOnal + S.g

Pressang a s1ngle key •dent•ftesltests chaps w1th ANY type of output tn seconds The CHIP CHECKER now also tests popular RAM Chtps. The CHIP CHECKER tS avarlable for the C64 or C128 for $159 The PC com· pattble versiOn as $259

~·:o

• Ovof 650 0tg tal ICs

• 74154 CMOS CC.he. hd • 14/4 CMOS

tUa I'CIItltll W1!l .,. t111 c , to t111 Cia drl,. • na • . . u IJtofltd u• 1111 n!l &!tor-.. • na • • llof!u fx oar • Wi• of till ~ dr11t to ..U.. u to Rid •

:~

D

- -·

u. flt&rl

a

Cl l.i

• •

00 prl&t•1clr • c!•! fl- • 4ial dri" am: tv oc::."td • ftlllt f'lllt r.!l "'": 1: ell~ cMct

Q; 1C~ r11 • -

II

•--······-··--·------··-··-··-··-·-··-··--·• na • Uia rr«l• 1a .... u pru=. tc Clltl::tnd. t~~~ c,... • t

61

Aptl1919: Vok.me 9, laaue 4


Customizing C128 CP/M Patches for CPM+ .SYS b~

M. (iaram~Legh~ Cop) n ght C 19 ' llrrnr l>ata ,\,~trms l.td.

e arc \.'1lkulnh..-d b:asc:..J on the

C I :!8 c~ 1 mod relies on u RA!II based operJttng ')~tern to \."'Oltml the hao;ic I undion ol the computer. These Rt\M·ba-.ed opcruung ') "tcm1> ha\ c SC\cral mh ant.t£c~ mc:r RO\l·ha'Cd

') )otc:m' ('-U\:h lh the tandartl Conunoc.lore K·htt Kc:mal and B \\IC "') tem"l in that 11 is 'Cl') e.h) to mnlc ch:mge,, modtfi· \."lltions an..J a:en~ral c:u hlllli/Uilon h) patc:hmg the RAM. "herea an II'RO!II burner is genera II) requtred to ma~e changes to a RO\t·b:lscd ")~em . Tht ankle dcah "llh anum· her of lairl) implc:. but quitl." usclul modih\: lion\, or patchc • that \."M llc m:tdc to the rn 1 boot pmgram.

he~inning

ol the file being at Dt.klress 1110 (I.e. tilt' ncmnal tan olthe TP.\). If )OU are u mg a he' tile: cthtor "hkh \.'Uh:ul:uc: th DC.Idre sc~ ba-.c..J on the llcginning ut the file hcmg oddre l\ n ('uch a" rnFIILCO\fl, )OU mu 1 lo.Uhtroct 100 fmm the ad..Jressc:. gi\C~n here in all case to get the patt:h point lor thc~e other pmgrarn,. for e:\ample. uddres)o 4(1 "ith 'iiD, i actu:lll) off~t 340 "hen ) ou cnunt 11 lmm the hcginmng ol the hie u''"S flll ll.E. I 3-Ul f mm the tan uf the TPA Dl I00 c $4401 Starting ofT

l\gmund inftl ltla) he useful. Before "e ,;et stancd. a bit of Offtciall). there are fuur \Crsums of the <~!II boot pmgmm. CPM+ Sl • gencrnll~ :i\ntl ble for the Cl18. 1bc5c can be ideo· ufied b) the cbte dt,pla) cd "hen the ~ 1 ) stem firM booc up· I A UG 85, 6 DEC 85. Dr£ ~ ml18 I\\ 1\7. The I \00 5 'en.ion did oot urron etthcr the It .:m ptll't or the 17011 1750 RAM exp.mder. Suppon lor these "ere added "'th the 6 DEC 85 \ers1nn . A mmor bug tn the printer mutinc was oorTC\.ted ""tth the osc 5 relea~; and full support wa~ achlctl tor the I.5 I dm c "ith the ::!8 lA\ 87 'c:f'ion. T'he p.ltching points u\C\1 in this on ide for the 6 DEC nnd 8 Of c. \Cf"ion~ arc tdcntt at. Therefore. the) "ill both he referred to h the " UI c 5" \C:rsion.

The lirst lep in cu~tonuzin )OUr ~ 1 ) tern i to boot up <~ 1 nnd enter the 10 en~ tronmcnt. Thts 1 done b) liN putting the <.~ 1 booc dt '- in di '- drhc and turning on the computer or pres ing the re 1 button. Once the cr. 1 com· mand prompt (nommll) \>) nppears. )'UU \."'all pnx:ccd to the

There are als..) numcrctu nl<XIilictl. "unoUic:ial" and beta te~t H.',...,ion~ in limttcd circulation 1 hi~ ankle deaf, onI) "ith the tour ollidal \Crsion,, ulthough the C\pc!rtcnced progrummer can ea tl} dnpt the techn•que~ c'plamcd herein to other \er·

Aller :s fc" rnomcnh, the l·rccn -.hould dl'pla) 'omcthing hkc:

oe 1 tep. Wtth u cop) of c ~" •.St lite, 1~ pe in: liD CPM+.JYI

m cou tm

the same dt'k a)o )Our

<return>

~Ole: U~t' (}hoc btp K 'OI J.

t/rsl;,. {)o not cJa this 1\ llfr )(l!rr 01'1~1· no/ ')II I'm dt J. ht'ctliiJt' 11 "1/1 maJ.t' prmumt'fll clrdllt:t'~ wtltr opt•rt~tlllg

l) 1/t'trl,

CP/M 3 liD - Veraion • · •

'ton . aaaa

AlthcJUgh the procedUJ'(' i~ fairl) tnughtfo"'nnJ, I "ill as .. ume th:lt the render h:l a ccn:un degrtt of undcrsuwhng and fanuli:mt) ""tlh the n~ 1 em ironment. Speciti" II}. exten-~h e use ts made of the a llkbu mg utilit) SID coM. (Of note: to long time Cb4 usen. t that thi progrnm hlh noching to do " i th the und ctup ot the same rwne. In thi ca..'C SID i hon tor "S)mbohc In tnK'tton OebuS£er"'.)

0100

C&lt

"here 1711 i)o a hex:ldccimnl numher indi ting the length of the CI'M + t tile. l·or the I Al G 85 'ersion, it "til ha' e a 'nl· ue ol 5000; a \Blue of 6400 for the DEC 85 '~ion~~ and \lllue ol 6300 for the_ MA'\ 7 \"Crsioo. If unc of these num· llcf' tJ()e nc'l wo" up. then pn1CCCd "ith caution tt«uuse ) ou naa} not he \\Orltng \\ith M 'uiTid:ll' relea..'C.' and some or all ol the (l3t\:h poinb rna) ~ dtlfe.rent. In an) case, nwt this num~r d(m n because it "ill he needed at the end "hen }ou sa\e )OUr ch.mgl."s. Tile# i~ m·~ nomml input prompt: it " n<l" awaiting) uur tunt)(."r in trucu'm".

:\ole: The addresses gt,en in thi aniclc for the patch point-. refer l<l those 'mtainC\1 u mg 10 or n C<.JUI\IIIent debu~cr "hic:h food, the tile ~mg p.ttlhed mto the normal tran,icnt pmgrnm :trea (Tl'A) memol') pxe. Conscquentl). all acJdrc:,,. TrOI'IIOCtOf

aaaa

62

APfll9&9: voeum. 9, tssue •


Throughout the ron:under of tht ani lc. I \\Ill be referring to three m:un ll> command!!. These nre d for dt,pla) n~nlOf) : ., for set memol") (1.e. change menl(ll") bytes ; und '' tor wnte mcroory to tile. The ) nta~ for h of these command i~ unurum:t.ed helm\. otc th:lt there 1 no e hetween the COilU1Uild leuer :md the first argument. but p;tee (or comnw, apphcuble) t requued het\\een rgument . d<atarc addreaa>,<end addreaa> a<atart addreaa> v<t1le ,.t:>, <atart addreaa:> , <eDd addreaa:>

In all ~-a\Cs. <start oddf1'ft> nnd <l'nd addrus> arc e~pre~!>Cd hexadecimal 'nlue and both adJre,se~ ure optional. It <Jtart addrc .t> t omiued \\ uh the d command, the dt pia) start nt the current progrrun counter \aluc (default t n 1 0100, IUld "'nh ubsequcnt uses, 11 re umcs I rom "'here it la!>t left oil), \\ hile if <rnd uddrcn'> 1 omlllcd, the nc~t II.J:! h)1es \\Ill be t.Ji,phl)l!d c 121ine" ol lfl h)tc,l.lf <Jtart addrrn'> und <rnd uddrr. J> nrc omiued "'ith the " comnwxl. the \nlue dtspla)ed m m' tgn-on mcssa e under rc· and ~1:..\T are used a the stan addrc s nd end aOdrc ~pccthcl) . For safct,' s:Lkc. 11 1 n good idea ''' pedf) the nddres.o;es exph • Ill} "hen modtl} mg b) te~ "'llh the ., command ur "'nung the modtficd ltlc \\tth n . That \\U) )llU do not ha\e to ~ttp true~ of the dctauh ' luc from the progmm counter. W1th 10. the ~tcrs can be sep:uatcd b) enher ~or corlUl\lti.

You should see a dispht) imil:tr to:

osro : oo AA

u ex oo a n .. • • 3J)Otw ••••••••

follo\\ed b) number of other hoes of tmtlar format. 1bis first hn 1 the log~calto ph)sicnll'Oiour trnn.;.lnuon table. llf ) l)U ha\ c pre\ um,J) rcdcl mcd )OUr l'Oiours using the ~~ 'AG CX>'I.t uulit). then all of the numbers rna} not appear c tl) hmm.) Metnol") I uon 05fn contains the ph) ical colours oorre pt"ltlding to log• I colour 0 for the 0 nnd 40 column dt pla)s (the) can he dtlfcrent. if )OU so de ire). \\hile 11~11 ..:untain the ph) ical colt,urs hll' logical wlnur r. In c:Kh b) tc, the lo\\ II) bblc. -x. l'Ontain' the ph) !>i I colnur lor the t!O·culumn rren, "'htle the high n) bblc. x-. has the colour for the ().column reen. lnuiall). all logical colours are default· cd to the corre punding ph) • I colour numbers, hence the 011 II 22 ,:\.' et . Recall that logiul colour 0 '' pecified tor the ba ground. To chan c this. t) pc m: .StO

Sto "til respond "'uh: 051'0

00

-

In thl\ case. ()() I the current \ alue tor ITICIIIOr\• location sm und __ i~ the hll'lltion uf' the cul"ur. T)pe in )I)Ur nc\\ he' \:tluc. s:&) 16, ( (bj, "ill gl\t a hi l b:lckgruund on the 40· column screen nod :s blue one on the SO<olumn reen.) 1he ph) icaJ colour n) bhle~ cnn he obtaine-d from I he foliO\\ m lllhle lllt."lte the dttlercnce~ bet\\ CCII 40 and O~olumn modes):

Scr«n culour.,

tan·up ruutme. C I:! <.:P 1 pcdtics the crecn colou~ for the chM:l tcrs. Mekgruund and 40-column b~r area. No\\, )OU mu't ndmtt that not e\el")one \\ill like the purple c harnct~rs on a blad; ba kg round "'ith a bro\\ n border that the \\1 e tolks t Commodore cho-.e a' the del nul". Our hrst ta\'- i to dwnsc them into MJmcthing a btt more p:llatable. A

11 22 33 •• 55 ' ' 77 11 99

part of the

--------------------------------------------

I

.Uc:lr. White bd Cyan Purple Graan alue Yellow Ocanqe

9

llrown

Lt . bd Dlr. . Gcay (elk . Md . Gray Lt . Gr-n Lt . alue Lt . Gray

0 1 2 3

On e amining the ( P 1 ourcc c~lde, one land that the 'Innup routine spcctl tcs logical l'nh,ur 0 fur the backgn,und. lnsil:al colour 4 tor the torcgmund ti.e. the charactel">l and logtcal colour I.J tor the 4tholumn border area. Armed '' ath lht kno\\lcdge, there are t\\o \\D) to change the default : change the logt al to ph) ical colour trun lauon table or change the lo ical C'Oiuur code 1n the ~tan·up routine. You need onl) dn 110c ot th~ lui ing ~:hanges. u 1.1J..e )Our picL:.

• 5

'

7

It,"

The first method 1 pcrtups the ea test. nnd i sood introduction to the \\'OO;angs of sm. In all official \'C.'rstons ot C 128 ~ t, the logicul to ph) sil':tl l'OhlUr tramlation tahlc- i' in the ~ne pot. 'J)pc tn the follo\\ing at the SID pmmpt I .

b

c: d

e t

dSfO

{lt . c:yan 10 eol) (lt • purp 10 col)

(lt . yellow 10 c:ol) (elk . purp 10 col) (elk . yellow 10 col) c:ya~~

10 col)

-----------------------------------------------sn> \\Ill rc~Jl'lflt.l "ith:

followed b) the Return Lc). tf'mm thi" point un. \\hene,cr I U) to t) pc in !iOlll~;thmg. ) uu hould nl" :t)" pre!'\" the Return Le~ altern anh.)

05rl

63

u


"hu~h

1 the ne:\1 I1K"f1lOry I 1100 to rut h \\ c "111 not m e nn) chan~ here for nov., so press Return fe" tune unul m sa) : 051'4

: fUler : end of -••ave

u

1 the foreground or chai"IIC'ter colour loc uon. I)"PC m the ne" \'Diue, sa) II. for "hne charnc1ers or SS for green (hle green st1ttn momtor). Pre Return a fc\\ more time unul Th1s

)OU

••

db " dbO

1\ote that the three colours need noc be pccilied in an} gl\cn onJcr. The) rna) ulso be pcdlied a" ph} 1 I colours r.uhcr than logrcal one . The p:~tch k~~~: tiun are~ folio\\ :

---------------------------------------Location ---------------------------------------1 ADO 15 DEC 15 21 NAY 17

ct:

Color Code 0$1't

"

---------------------------------------2ffb 2e01 ror~owwt 28ct7

11u 1 the fin!ll colour I

uon to pat h. II n he 1gnom.l tf you use an 0-colunm dt,.pla) be\."'ause the border colour 1 onl) used m 40-oolumn mode. It ts general!) mos1 appcahn to set tht one to en her the same colour the kground or a dtffcn:nt h:Jdc ol the !':lrne colour ( u h us hght blue "1th tltrl: hlut.", light red" llh dart.; red. etc.)

aaek9rowwt 40 eol border

28db 2 dl

2fff 2f03

2e05 2e0t

---------------------------------------II three locatmns tuc mten:hangc blc hcc'Jusc the colour

After )OU ha\c completed the changes. type m u period('.') to e lithe' eomm:md nnd return to the mam ID mput prompt (I ) (~ote

that 111 also posstble to~~ h thl"' colour table usmg the •12 J.;e~ boanJ redcfimtion ullht) KEH10 ro~t. Bear in mmd that the log• al c:oh,urs tn he l:hang~'<llll set the tlclaull .;crecn colours are the s:unc a' those outlin~·d aNI\ c.) l'he SC"COnd p.ltch method for changmg the recn colours ma) m u bit more oomple to !iOf1lC bee usc the precise Joe tion

to modtf) depends upon the \crsion of<~M th:lt )Ou are modt· l)tng. JIOWC\Cr the I hmque i \lrtu:lll) llicnll\:3110 that OUI• hned nbme. Th colours ure octuall) set JU~t hclure the ''Sil· on me sage b) u m • u series of escape code pnntcd to the reen ccording to the lullov. ing e tr t I rom the -.uuree colic: cell prt ...9

source which 1 actll!lll) SCI b) gi\cn Joe tion depend~ onl) on the \ lue of b) tc. To 1 u gwen locauon logtcal foreground colour, add SO to the colour t ble numbers gl\cn obm c. To pcctf) the locatton a a I 1 I ~lground colour add S6(l, and for the 40<olurnn bonltr l"ohiUr add 70. f-or c\ rnple. if )IIU "i h to "~il~ th~ turcl)mund a lngll':ll l'tlhiUr I. the hacJ.;gmuml u" logu.:al~:ulour 7 und the border "" log• ul colour 3. the b)le \llluc" \\ould be 51. S67 and Tt If )OU prefer to rccaf> the coltiUr ll.\ ph) 1 I colnurs ti.e. the In 1 I to ph) i :tl colour tmn l:llttm t ble 1 b) J'3 ~ and the the C\llourl, the com,ptmd· pcctficd \alue b used dtr«tl) mg dllcrs are ::!0 h1r the foreground. U h1r the bacl.gmund and ~() ft)r the ~~rdcr. Flll' e\llln('llc. if ~ou used value of 21. '2. fl )OU \\ould al\\'3) h:.l'c 'Ahttc character\ on a red b3clground "ath n blue 4()-column border, regan!I ol ho\\ ) ou h.lt.l defined ) our logical colours.

: call rout!Ae to print •ifiDOD -ua9e

db ••a••-•• ••• :control•& to clear •cc. .n

se to's commancJ to set the appropnatc lt'atitm' to )Our dc~ired OC\\ \alucs.IDon'tltll'gCtto t)pc tn a pcntkl \\hen )OU

(note tbia acreen clear ia not really required)

ure done to return 111 the m.un sm pmmpt.l It nlil} nppe3r that the locauon' ll" en for the ore ~5 'ersum rc tiUI of ~uence. I !iUre }IIU. hc.I\\"C\er. 1ha1 the} are in correct ~ucnce. 1be illusion i cre:11cd b) the 00sct1re method m \\hlch ~~of the Cfll+ t file 1 stored tm dtll, It i tored in 12 ·b) te record~ m reH~~ order (t.e. the.- llrst n."'t:onl fter the llle hc.-aikr 1 placed mto the htgh end ol the computer'' rncnltiT) and pm· ~:c:cd~ dm,nwanl~l. llw, create' apparent dt-.cnntinuiuc~ an part 11f the lllc \\hkh happen h) ems o'er one ol the 12. · byte ~"'tlrd boundan , \ '<'C ,Jmll see •n the ne\t example. th1 can ulso create Jtlle manor conlu ion "hen If) mg to ~tc.:h ross a plit record.

db eac, eac , eac : prefix for aettiD9 color db pnple+$50

: lOCJ1Cal color 4 for

for~rowwt

db eac, eac, eac db black+$60

;lOCJlcal color 0 for back9round

db eac.eac, eac

db brown+$70

(thia

:l09ical color t for border

u tbe ODe which

db ' ' 0 /M 3 . 0 On the C'

h

required) cdore 121 ' ' UiCJftOD . .9

,,,

db date db cr,lf

..........................................................................................

~~~ T~;Q;~;;~kx~

-~

h~t~d

ubO\c m the eM.:erpt lmm the Cl' 1 ....,un:e code. a I n-un mc,.,;:agc i tndulktJ lor Ui pill} ing on the ~n 'A hen t~ t lir..t hoots up. In its llcfault funn. thi i a \Cf) bonng Apt 1989. Volume 9. laue A


cunsi ting of ''(~ t 3.0 ... •• etc. follo\\ed b) the d:ite. Beans m the nwKid ltlr cu,tomi1.ation, \\e can dmngc thi~ tu lln}thmg that \\C hl.:e, up to nhuut SO h) h!' tutnllength.

II1Cl sage

marlcr. The pnnt message routine that "~called 1 the 't:m ul the ~ign ·on "Ill resume at the :killres' immcJiatel) lt1Jio\\ • ing this h) tc. Mi,plocemcnt of the 1cm h) te tcnninator rna) cause a ) !Item crnsh.

\\ouldn't itl'C more intcre,.ting lur )OUr computer tullaspla} u pcrsorutl greeting e h time )OU swtcd it up? Ito\\ ahout "Good morning Fred. thi as fiAt. !>pcal.ang"? Or "Don't bothi.'r me nmo. , I'm thml.ing"'!

lJnfonunatd). the sign-on me s:age for the A Ci 85 \Cr.iion h splat ncros~ a I"C\.'ortl boundary . I he lirr.t h:~lf ul the me..-.agc ~lllhl\h of J I h} h! hJCated ut 21\c I to 21\fl and the -.econd h:tlr a :!4 b) te long at 2!«.Ml to 2817. lllC inllaal dear· screen is at 28e0 nrnJ the tl b)1C me sage tcnninator is at 2818.

The p:~tching pAA.~durcs for the l>r.c 5 and 28 Mt" 87 'er· aon nre simple nnd traight fOf\\ rd. \\'ith th m 5 \er· aon, )OU h:l\e 53 h)1C to pia) \\ ath at Btk.Jresscs 2ffi5 to :!f3ll. t!'iot mdudmg an mil tal C'llU z l Ia1 at 11l)4, to dear the scrctn hefore prinlln}; the mc,~agc. l With the \I" 87 \CI'\ion, )OU h:n e 54 h) tes Irom 2e0h tn 1e4U, "llh the dear· recn ut 2e0a.

It as cspcc:iall) amponnnt in thi~ cnse to 1-t.'Cp tru~J.: uf )our h)IC cvunt \\hen entering the: OC\\ mcss:~gc hccu'C af ~ ou m en.hool the a'11ilahle p:JCC, ~ou \\ill corrupt )Ut.Jr ~) lent dt L:. The RL '\ "TOP "t~

message can he crc:netl b) u'ing a \Bnation of SU>'s' command. I) pc in \<Jtart cJ,Mr,~n> "here 'tan addre'' ts th,· pre' auusl) mentioned value lor the CP 1 'crsiun ) ou are U:Sill~ S11• \\ill respond \\llh somethang hl.:e: Your

~:u,ttlffi

Mtlst ~uplc "ho arc familiar "ith the upcration ul the C 111< in 1\!lll\ c mod c:mtl r,,.. th;ll matter. mo..t other C'ummodore s. bll computcn;) use the RU:<~. S10P !.:c) ., mn ol a 'soft' r~ button to h.ah the cxe~:ution of a BA IC, or C\ en n nmchanc language program. llo\\C\er. )OU nt:l) h:t\C also di~'O\en:J th:u this doc!\ not \\urL: in <'PN nxlde. (tftl\\ ollen haH~ •\OU hecn in <I' 1 mode lr)tng to uhun a program nnd pressed Rl ~ lOP out elf habit? ) The cqul\alcnt gencrul prognun exat comm:uu.l and wft reset in CP/M is CTRI...<'. (That i~. hold d0\\0 the Con· trol i;e) and pres~ the letter C l;c) at the grnc ume. l

2r05 43

•ttl \\ill U\\Uit )our anput. Jn,h.:ad olt}pang an a !IJOglc he\ \UI· ue a.. be lore, ) nu can t) pe an ) our ootred AS<'II tring. preccd· ed b) a quote: •rrect• e cc

'J ha., OC\1 patch nxldtli~" the I.e) btJJrd d~cldtng tnhlcs to a,,jgn a value ol c nu c (he\ lJ) to the Rl'~ '>lOP l;c). The p>llch point is the s:unc lor all thn.-c \crnons of Cl28 <Y. 1: S05&. Change the b) tc nt this lcx:ntion fmm 0 l~ting the cqui' :t· lent of no actulfll to.' (representing n CTRL-CI. J"ruu's all there a to tht~ pall.:h. 1'\o\\ \\hen )otJ pre s IH 'STOI' in (I' I mode. II \\all be the s:.mlC as pre;.,in~ t"TRJ...C to e\it u pmgram.

and hJIJo\\ed b) a Return. Notr tlulf .wu ,Jo notulc' a trw/m~ quot~. An) thing cntcr"C\.1 after the fir..t quote is interpreted a., part of the 'lnng. U ing n tmiling quote \\all~: usc this quote mllll.: to be mcluded an )our me sage. In addition. }OU 'houltl flllt u..;c tnuling 'J13CC:~ unlc s }OU want them to be included in )OUr mess:age. Sto "ill dts('b) the nell.t \llil~hlc memo!) loc:uaon alter ) our ch!mge ft,Jio\\ cJ b) the cum-nt 'nluc lll thi., lcx--auon nnJ the an put cursor. 'J) pe m u pcriud and Return at )IIU are done tlr more te\1 if )UU atre not

Th ,\ ll<.i 1<5 CP 1 'en-ion doc not uppon "ill not be discu,.scd funher lor this topic.

RA \llh''-· '>0 it

"'m

andtklc hnelcech lhe\ bl. Return~ lhe\ SUd). lh \\'CII ns other cursor and -.crttn control ~"':lpc code an )OUr messa e. These rc easi"'' 1o enter "ith the nonnal ., com· manti clUtlincd ab(I\C: lor changing the he\ Hlluc ol indh idual h)t6. (When duing thi,, )OU ~hc,uld usc the d 1.ommand frc· l.jUCntl) to l.ecp tr.~d; of \\here )OU Mand.l You

th~

AI 'The Ja,L. Jahel : <~ 1 ha..' a cufl\cnicnt mcchod ul as igning 8 name (or \UJUillC l:tbel) IO :t l)I\Cn dj,J. tO help )llU l.:ecp tracl of \\ht~:h tJt,L; i~ \\hich. ( llli~ '' stmilar to the wmcnuon ul n.tmin!! a ("(,mmcldorc oos di,L; durin~ fornlJIItng. e:~tcepl thai II l"'lln be June al :tn) time. I The name i" a'isigncd u'ing the (. P I 't:l ( OU Ulllll\, •

\\hen )OU ha\e fini~hcd )our cu tOOl rnc~suge, ~.heeL; )OUr o\erall \\Ufl. \\lth the d command to see ho\\ mu"h patkling \ou should tltltl: • d2f05

label h recunlcd a., a pecial entl') an the tit 1.: dan.-ctul') "hkh i' lklrnlall) irl\ i~iblc. 1You l'annot ~ the \olumc label "h~n )OU dtl 11 I>IR cumm.and Jur the di'L. direc.:tnl').l Ccnain tlpcrutmg ) ~tern C\tcn,aon .. mal.e use ol the dii"C("IIll) lahel a' a "a} or tel lang "hich di-l.; i11 c.:um:ntl) in ) our tim e. It can aiStl he u ~implc rncth.ld vf · pcrsult:lhting· )OUr Ji '-"·

' Jl~e

(or d2e0b for t.he MAY v.reion)

Your me"-..sge hould be p:alkk."'d out "ith a scrie of hlanl.s ( 20 h)IC \BIUC!\) until )OU re:~eh 21Ja IOOC \~'1'\inn)Or :!1..'41 lM·" \ef'iOO)••11 \\hich poant )liU 'hould h3\C D he\() b)IC Tha" II h)tC j, \C:r) tmponant a., 11 -.ef\c:. a,, nn end of mc'..al!~: TIONOCtot

'-,o 1.1r 'o go(Jd, ur ut l~!a't tme \o.oultlthanl.: '"· But • und here cvmc the crun~oher • )IIU 'hould be \\Ill) of as agnang a name 65

Aprl 1989; Volume 9, ........


)OUr RA\f t.hsk (dri\c \1 :).11~ rea.'>on for tht-. ;, qune tm· pic: 11 already has a name whtch i al~o used :h a Oag to con· trol formaning of the RAM dt'k on a') 'tem bo<1t!

111

padded wllh pace... When }Ou ha\ e pre,o;ed Return, d"pla) the ne\1 memol) area. "'hich might be:

SU>

\\ill

11:65 01

Wllen <1'/M boot up, 11 ched<' for the pre<oence of lhe R\\I dtsk by looltng lor the RAM e\pan,ton controller IRf.Cl regi-.rers. If 11 ltruh the Rl • to he present, it then check' the fiN entry of the RAM dt'k dircctul) for a 'l.;e} • to ..ee if the R.l\\1 expander ha-. hccn initiali1ed 3' a c•• t R \\I di,l.;. Thi'> ke) i' the di'k lahcl ''ERTWI'E \0""· (\ 'on En\\tne \\lh the chap r~pon,ihle lor adapting CPJ\f to run on the CI2X.l If thi' label is nm lound. the boot ptlXe'' will ' format ' the R.\\t di,l. by era ing the director) area \\ ith he\ Se5 \ then \\ rittng thi' Jahcl to the fir..t cnll). thu' lo,ing any data \\ hich may be pre..ent ttl ready . There are a numhcr of rea'\t>O'> "'hY you ma} want 10 preser\c data \\hen ~wit~:hing mo<k' or rebooting )OUr ')'tem. The mo"' ob\lou' '' to re<:O\Cr from a '\'tem cm,h. If •\OU had • created or edited file, on the RA\t di'k \\ ilhout ..:1\ ing them to a Oopp) and then 'uh,~-qucntl} h:1d a cra'h or lock-up. )OU rna) \\ant to he able to recO\er the tiles \\hen )OU reboot. !'or· mall). C\CI)thing in the R\\t dj,j,; \\OUid he pi'C'Cf\Cd. prtl\td· ing )OU did a reboot b) pre..,ing the~~ bunon momentarily. IIO\\C\er. if )OU rename )OUr R \\1 di'k u'ing Sl.t. the L.e) \\ill no longer be preo;cnt and } our data "'ill not be pre'Cf\ ed \\hen going I rom C"P/\1 to C 12M mode and then bacl. again.

T)pe in a period 1.1 follo\\ed h} Return to ,ignif) that )OU are tini,hed. You can cheer.: ) nur handiw or'- b) typing in d le59 • ogatn. 'o\\ for the ""' N7 'er..ion. The fiN three character.. of the label (FRI) are at ldd to lett. "hile the remainder (\\ l'P. \O'l are at SldlO to h.1l7. 1o ">ec thi.,, t)pe in: d.lcOO left

To chanJ.!e the label. )OU "'ill ha\e to change the memory b)h!' in both location,, beanng 10 mtnd the number of byte., u-.cd at each locatton. Thi' can be done in two 'tep~: FiN. u-.e lcfd to change the tir..t three hy te' in the label at Jdd to Jell . Rememhcr to t)J>¢ in a p:riod when )OU ha'e changed the-.c thn.:e b)tCs to return to the SID command prompt. Se~:ond.

uo;e l cOO to change lhe remainder ol the b}LC' at I cOO to I c.1l7.

8 l The drive code: C 12M c~ t automaticall} a"ign'> the Rt\ \t di'l. to drhc M:. While thi' i' good lor mo~t application,, there are a fc\\ CP t progmm' Cmo.. tl~ thO'e c.le:o.igned to wori.: under much older ~oersion' of CP I I \\hich \\ttl not accept an)· thing O\cr 0 : huch a' M:l :b a legal dri\e 'pecifier. In thi~ ca-.e. it i' "i..e to change the RA\t di'L. a"ignment to 'ome other letter...uch a' 8 :. C:. or 0: (:h,uming that )OU do not ha~oe a di,J.: dme alrcad) 'iO a''igned). Chang10g the dri\e n•..,ignment invlo\e' making a fe"' patches to the DRI\'ETr\BLE and opuonall} to the code \\hich checl.' for and mitial11c' the RA\1 di,l.;. FiN the ORIHtT\BLI:..

The OI'C N5 \cr..ion i' relatt\el} 'imph: to patch. The \1;\Y 1!7 \ er,ion i' a bit more diflicult. again due to the patch area being 'Piit aero" a record boundal). For lhe DLC 1!5 'er..ton. the label ''located at le5a to le64. To ~...: it I} pe in: d.le5~

The tc\t "[;Rf\\1'\E \0'1;" 'hould be 'hO\\ non the fiN line ol the dump. The fiN chamcter i' a he\ :w (ASCII 'pace) \\hich indicate.. that the entl) i' a director) label. The la•.r b) te h a OJ. 1\etthcr ol the-.e 'hould be changed. U-.c SID\ comm:tnd to change the te\1 of the lahel:

For both the DEC 85 and \lAY 87 \el"\iOn,, the DRI\.'ET.<\BLE i' located \larttng at ~51. It contatn' a -.et of 16-btt "ecto,..... one lor each dri\e letter. to the di,l.; parameter bloc!.; for each ot the dri,e<;. CIf no dri'e i' a"igned to a ghen letter. the \ector ha' a \'alue of 0 O.l The first thing \\e mu't do i'> to "t.leullocat.:" dme M:. Thi' l-•.m be done h) ..euing both location' $669 and 66:1 to 0. The econt.l 'tep i' to allocate another dri\e letter to the: RA\t di,k. The "ector lor the RA\1 di'k DPB ' ' fb%. Tran,lated to IO\\ b}te/high byte format . thi-. become)!, 96 and lb. The correct addre'se' to patch depend on the de,ired dri\'e code accord10g to the tollo\\ing table:

ale5a

1&5A 45

To male the change... t)pe in )OUr cnll) pre~.:eded by u quote 'u~.:h a'>:

~w

di'k label a' a teltt

--------------------------------

Drive code

*lCIUS DISJt

location tor

--------------

You mu't indude the quote marL: at the begtnning. You have ele~oen chamcter.. to pla} \\ith and the) 'hould be 10 the form of a legal CP t filename (i.e. all uppen:a'e with no re..ef\ed or <,pecial ')mbol' \Uch n' ? or •). Unu'Cd location' ... hould be

"

fb

-------------------------------A:

a: 66

651 653

652 654

Apri11989; VolurM 9, laue •


J:

CS! 15'7 659 15b 15d 15f 161 Ul

It :

us

L:

66'7 169 Ub Ud Uf

C: D:

&:

r: C:

•: I :

M: If :

0:

·=

156

'Cr!.ion. 21cl'l for the Df£. 85 'cr;ion wk.l .2c:ce for the 1 \\ u 7 'enion. onn;:L!I).lhi b) tc "til hone a' lue of 10 which corrc· pond to the \"alue of PRlt from the folio\\ mg 13ble:

C58

I Sa 15c 65e 660 162 U4

--------------------------------

-------------------------------IOCOL 40COL PaTl .aT2

"' 668

Ua Uc

,..

(ac.reen) (acr-n)

(ct.Yice 4)

(device 5)

U-232

no

uo

t20 $10 tO I t02

---------------------------------

--------------------------------

de' tee n~1smnem arc n1so po able. Fare ample. n • ~ ole: )OU hould D\OJd igning dmes A: :md E: to the \alue of I t 10 + ) "'" ns agn the pnnter to both RAM d1 ~ bct.-Juse th1 rml) CD USC problems "uh other CP. 1 de\llccs 4 and 5. In the Clk"C of the R ·2'2 pon. some liddling "ith the serial protocol of the ptintcr Olll} be requ1red to nl:lh.:h '}'tern Iunction,. the default baud rate and commum uon protocol of the When CP I boot up It C!K'Cl for the presence of the RA I Cll . R m port. d1 k. II 11 •~ not found. the ume~pondmg \ector in the DRI\ET\8LE i.. remmcd and repl.a ed \\ith 0 0 . 1l1i~ proce s The drh e ..eart h chain ume that the RAM disl. i :c si~ncd to dri\e ~f :. Since \\C M\e ju 1 changed tht a -ignmcnt. 11 is de trable to change the When <."P 1 •~ lookmg for a program. 11 t'Dn search up to lour \C\:tor addre \\hu:h "'" be updated. :\ore that thl\ Jl.llch i' ..cpanue dme' belllre 11 8''c~ up tts -.can:h and rcpon' the not ""sentiat. but \\111 cmure th.u ) ou "ill not be ahle to access cqui\-alcnt of a "file not found" error. Tlli sequence i "-ailed the RAM di J.: drhc code if )UU do not ha\e a RAM disk the "'drhe search chain". In the PIC und IM 7 \en.iuns. umalled, \\ uh the mx: S5 'cr..iun the pllt~h lk1dre!. is leiO: the dri\e 'Carth chain parumett>l" are lciCntcd :11 126M to nnd with the \t" R7 'cr.. ton, it " Ic:h3. In both cusc:.. the 126b, "htle for the u G 85 'er~ion, the search cham is ot content uf thi,. b) te "til be 9 representing the pointer tnto le6R to C)e6b. In all ~":L--c • the default \ersion of c~ 1 conthe DRI\ P.TABLF. lor drhc M:. Tlli b) tc MklUld be chan~ed to a tain' the chain: 00 II fl II "hich corresponds to searching the \aluc from the follo\\ing table \\hkh corre pond~ to the dme currentl) logged dri\c onl). letter m~tallcd abm e: To set the search ch:un.the follo\\ing b)te \Blue are u~ : ~l uluple

-----------------------------------------

Dzive cOCS.

value

Drive coct.

value

00 • 01 • 02 • ( ••• 10 • ff •

----------------------------------------A:

ell

I:

a:

d.3

J:

C: D: &:

cU

It:

en dl

L: N:

r:

db

C:

dd

•:

cU

el el e5 e7 el

•=

eb

0:

eel

P:

ef

for C\:lmplc. it the ean:h ch.1in "a' <>ctto: 00 Od 01 02

----------------------------------------1 h~ dt fault

default or currently lo;ged drlve drlve A : drive a: e tc) drh·e P: tillez

and )OU t)pcd in atr.msicnt command ~uch tb PIP. CPM \\tluld search the default dmc for the corresponding tile (PIPCOU). If 11 wa fll.~tlound on this drhe. ~ t "ould then tr) dme ~1 :. II 11 Wth till not found. dri\c A: "ould be tried nc~t. then dmc 8 :. If it \\lb '1111 not found after the ""umplete scan:h. ('P 1 \\ould repon b.u:L: \\ 1th a tile not found em-,r.

print~r

\\ hen CP/M booo. up. the CP. tlcJgieal 1 tsl de' ice (i.e. the printer) t assigned to the ph) 1cal de\ 1ce f'RTI Ct.e. scrml pon pnnrer \\ith de\lce #4). You m:J) \\ish to \nC IIOOChcr pnnter ck'~· such de\itt 5. or C:\'m :m RHJ~ J'lllft de\ icc :&5 the dcfauh printer. (I

fta,"e '"" ~parruc monitlJI'\ hoo~ctlto m) ') 'tcm: one lur the 4(). colwnn "~-en. and the other lor the 80. In Mlflle ca! I u~ the <ID<Oiumn ~~as a temporal) 'pnnter'.) 'The pasch addres to chm~ fur the default printer :t'''gnment t:. .2&-t for the l c; R5

The defoull drhe and mer area Alter <1' I boot up, control IS ~turned to the user \Ia the Con,olc Cummand Proce,•..or tee PC0\11 \\htch \\all tor )our 67

Apnll919. Volume 9, 1uue 4


command. The cCP pmmpt wJ..c, the form of ·•t 11\t'r num· ht·riJdnn• Ieifer I>" ('>u~:h u-. J\1>), \\here uwr numhn and tlrnc lma represent the "currentl) logged" u"Cr area 13 m thi-. ca-.cl and di,J.. driH: 1M: in thi' ca-.c). When )OU tir-.r bom up. thi' i' normaII} -.ct to u-.cr urea 0 on dri' e A:. gi\ ing the familiar A> prompt. In <oome ca-.c,, 'uch a' \\hen }OU u-.e one d•'" driH~ to boot fmm. but ~tore mo't of )OUr progmm' (lOa dirtcrent driH~. ~ou rna~ "i'h to change thi' default ..cuing to aHlid ha' ing to change the drive :h,ignnll!nt e\plicitl) each time ) uu bc.xlt up. The default driH: on a cold bc.'IC.lt i' controlled b) the b)te at 122f for the DLC MS anJ \1,\"t' S7 'er.ion' and at $0c2f for the \l G MS \Cf'ion . The \M dluc or thi' h)te i~ ()for dri\e A:. I lor dri\e B:. etc.. up to f for dri\e P:. IThi, b)tc. \\hkh end' up at ofl~t IJ of the ')"tern control blncl.; (S(' R). i' al~o u~d h) the C<'P during the "arm boot routine for e..tabli,hing the default dri'e after C\iting fmm a tr.tn,ient program. The \aluc at thi., 1\)l."atinn i' updated each time )llU e>.plicitl) .;et the drhc from the CCI' b) i<>,uing a <drirr lrtttr>: <Return> command. Thi'i p.ltch onl) o,cc.. the imual 'alue U'>td 1lfter u cold boot.)

Correc1in~

bugs

Thi' final patch cure' a bug in the \l G ll~ ver:-.ion \\hich pre\Cn" )OU from e\ecutmg cu..tom 8502 machine language ruu· tine' from \\ithin CP,\1 (Ye' \argmia. }OU can '"itch the 8502 on from within CJlN mooe and e\ecutc X502 machine language pn>gmm'!) The em)r i' at S5"-ab "hich ends up in lhe BIOS MSO:! ponion of the CP/\1 opemting '>'tern Change thi' b)te from a Sc3 to u (x: and }OU are ofl ttl the ro~~e' "ith BIOS function 30. gmup 4, 'ubi unction 9 "U..er C'.tll to M5U2 Code Routine" lt.le-.crihcd on page 700 and 701 of the CI:!H Pro· ~wmnwn Rc1c'fi'IICI' (iuidrl . The 1\502 cooc :11 thi' location 'hoult.l be J\11' IFD051. hut the S6c for the J\tP in,truction "a" '-Orncho" -.cmmhlcd into a ·3 b} the cro'' a'-.cmblcr u-.ct.lto create the murine. Clo'iin~

up

\n\\ that ) nu hau~ completed all ol the patch \\or'- on ) our '} .. tern di,k. the la't thing to do i, to ...a\e a cop) of il. l'hi' i' done "11h SID·~ " command: w~+.aya,100 , &&&&

The default u~r orca on a cold bc.)()t i' controlled b} the h) te ut $1230 for the l>f ( M5 and \1 \'t 87 'e~ion" und at Oe30 for the Al <• 1\5 'er.ion The 'alue of thi' b)te mnge-. from 0 for u">er area 0 to f for uo;er area 15. It end' up at ofiSc:t 1-t of the SCB and i' alc;o u-.cd by the CTP during u warm boot.

\\here ua is the addre'' that }OU copied dm~<n from SID\ 'ign·on scrten ut the begmntng olthc pruce". To refre,h )UUr memor). it 'hould be 5dClO lor the Al G ~5 ,e,.,ion. MOO for the ore M5 ,e,.,ion or 6300 lor the \t\'t X7 \Cf\ion. Alter SID h<h ~\Hitten the file. it '~>hould di,pla} a me,...age 'imilar to: yyyyh record (a) written

In \olume !!, 1\,ue 03 of lrcm\udor l l'lio\embl!r 191\7). I pre· ~nred a patch for the Al G N5 and DH !(5 \ Cf\ion' of C 12R CP;\1 that \\OUid allow full uo,c of the capacity of the 15RI driH~. A' I mentioned at the lime, m} 15Kl di'k format would not be compatible \\ith the ..olliciar· Commodore vc,.,ion (i.e. the \t \'I X7 C'P I relea-.e). Sin~e ..orne of }OU rna) h:t\e obtained the \I,W R7 CP t rclea..e ,in~:c making m} miLia! pat~:h. )OU may be wondering ho" to accc" the 15Kl di't..' made "ith m} \cr.ion. Fear not. the ne't patch alto"' the \1M' 87 \cr.. ion I!) read and "rite the..e earl} 158 I di,t.,,, in addition to the "official" 15Rl dj.,t.,, (The patch poinh are al..o rep.!ated for the Al Ci 85 and m·c N5 'er..ion... for the benefit of those "ho mi,~d them the fiN umc around. 1 Chan£e the li,ted b}IC\ to the "nc" b) te value .. to complete the patch. Thi' pat~.:h fiddle, "ith the di'lt.. parameter table cntric-. for the EJX.O\ QX· III di'k t)pc (I() X 512 \CCtOI"\), '-0 }OU \\ill lose compatibilit} \\ith thi' t)pc. hut gain an I!(KlK di't.. in!ltead.

\\he~ ~ ~ ))

ha'> a value of 0081\ for the AUG M5 'er.ion. OOC6 for the DtC M5 \et'iion, or <XlC4 for the M\Y K7 \Cr.1on. Alter )OU get thi\ rne\\age. }OU can C:\il SID\\ ith U CTRL-C. To 'ce the efiect of )OUr change,, )OU mu't do a cold ')'h:m rcbc.xlt (i.e. \\ith the modified Cl'\1+ \t\ d"k in dri\e A:. P~" <"I Rt·d·:nter> or the ~'>et button). When Cl'; '1 come' bact.. on. }OUr clunges .,hould Ill! in fon:c. (If b} 'orne chance )OU ha\c made an error in the patchc,, and }OU cannot get <.'P 1 to reboot or it doc' 'omcthing une\~"Ct· ed. it is probabl) ea,ier to 'tan \\llh u fre,h copy ol the old unmodified CP\f+.SI \ file r.Jther than If) ing to lh )OUr mod•· lied one. It i' ar..o "i...e to \\ait u 'hon time bl!fore }OU cop) your modi lied ('P, M '}'tern to )OUr boot di,t.,., to checl.; that )OU ha"e not created any 'hidden' bug, by )our pat~:hing auempK)

-------------------------------------------------------New 8yte Value At lir\t glance. thi, anicle may -.cern to 'ugge~t a formidable ---------------------ta''-· e'JX.>ciall} for the ntl\ke C'P 1 pmgrummer. llo\\e,cr. 11 ADG 85 DIIC 85 lar 87 -------------------------------------------------------- i' fully recognited that not e\l!r)onc "ill \\ant to mal..e all of 1404 1405

2165 2166

ltOI

00

uog

u

1406 1U2

2167 ll73

lfOa ltl6

01 • IJG 1581

(Miter aa

text 8trlnq)

-------------------------------------------------------Transactor

the change' mentioned abo\ c but a combination of a le\\ of them can add '-Orne nice cu\tom touche' to }OUr CP 1 em iron· mcnt. In addition. there are pmbabl} man) more change, that could be made in the form of p:uchc,. I leave the'>t to oth~ reader. to figure out. ii April1989: Volume 9, lllue.


What's Really Inside The Commodore 64? hv Milton Bathurst •

lkM•k

rt\

it" b\• J im Butterfield

Puhluhrd h) OataCap. 12 lri\llill, B-4545 l· rm•t~r. Brl~wm Ara~lob/r 111

II )''Ill don't ha\e det:uJ, tile those of the ab(l\e exwnple, )l'IU "all need to do u good deal ot te!ic.--art:h belore w ing such a subroutine lmm }l'IUr o\\n prngram. The buoL. doesn't o;cc !.uch detail a.' (l:l11 ot ih ~ ; Jon 't CXJ'IC'tlo get tllllt infonn~uon here.

\onh J\mrrirofmm:

Sc hm•,ller .\ utt'lnr Orpt. 94. 25 l:amwocl Rtl PO. Box 5694 Ashnilll'. ,\C 18813 (704) 174-4646 242 fkl8~ • 2!1 y~

contain.. im(l\mant code. For example. CHROI!l. mentioned alxnc:. i.. in RA t: at 'tanup umc. it', copied fmm EJA2 in RUM and placed lll $007.1 in RAM . It', an impon:mt uhmu· 11nc that i~ used lrequcntl) b) B \SIC'. But II , u' )OU hlltl through the ixllll, )OU 'ee JSR 007.3. no amount of lrentied flipping of page' "ill 'ho" ) nu u 'ubmutine .n that addn:-.~.

us pil5fptlhl us\

Th1" OOc.l~ i~ a comph:te and n:lati\d) good d•~"seml'tl). "ith cro~s-reference materi:tl. Ill the ROM of the Commodore 64. The title is mh.leading. ince there are nUln) other thing m ade the Cummndore 64 th3t could be documented: vo chap:.. 'peciali1ed R \M area,, und fl\ln'> (pan connection, and lc' cbl.

Whale the '-'ode 1 nnotatcd - hout 80 pcn.-ent ut the mactune language m~trucuon .. CUI'f') a hric:f note - 11 doc n' t e\plam, and doe' not set the ,tage. When ) ou tool at the m.nh -.ubnlU· tine • )OU mu't l.;no" in :1<hance he.," floating point numhcrs are ~t up on the 64. You mu~t l.:nu'A tlut tltJ:Sting point regis· te"' "all be pre·l~~ "uh the ':dues to be tumdlc:d. When )''u tool at the ~:ode lor a cttmmand 'uch n:. 11\'1, )OU mu t lOll\\ that. upon COif'). the C flag \\ill be dear if I lSI i' IOI· hH\C:d b) a mm·numenc charu tcr, und the Z llag "ill be~~ it t tsr 'tand~ alone. The bool.; "on't tell )OU an) of thh; n I1S Ullle:. )OU l.:rlO" II 10 ad\ance.

The ixKll contains little: else apan lnlm the ROM dio;.a,,c:mbl) . I he author ha~ dune hi" jol't curdully; data tahlc' are not conlu">Cd a.... ~;,lde. und the tnd.) BIT entry ma l.;., an: caught \\ell. "lmrnedaate" data, \\here numeric 'alue maght ~me ­ tune,. be confused "ith oodn:ss lragmcms. arc generall)

good.

CrCK reference

A dasa,sembl\• is Olll in it..ell e\ten...a\ e documentation ot R0\1 • What \\ould be nectkd to do the JOb better 1 dctaaled re~i~h:r, memOf') and com.htion code requirements for the 'ariou' mu· tmc a' the) arc entered and~ the) e~it. F1lr e:~.nmplc. here\ documentation nt ,.uhroutine ( IIRGlll: Beton: calling. u pointer (1X 1roJ-.;n:K, ailllrcs hex 7,\(181 need' to he p)inting at the adllrcs,. to be --c.tnneJ; no 'fX.·dal n:gi ter or flag setup i'> need· td. When the ubn'IUtine return,., regi ter. X and Y "ill not he disturhed; register 1\ "ill '-'ontain the nc\t character lmm the text tre311l: 1\.TrOt'\ t'ER "Ill no" point at that ~.:har.tcter. flag-. 'I~ C. and \\Ill he affected uc~.:ording to the nature of the

A u.;eful pan of the hool.;- not readtl} a\ualahle else" here - i~ U Crt>';'>·refcn:ncc: ol the ROM '-~>de. 11w-. i' '-"llfefull) done, but it'~

fragmented: jumps. bf'all(hes. 'ubroutinc call:.. \ectors. "c\tcmal"llddre sc,, :md 1cm page aJttre,:.c... are li k'tl scp;~· r.uel). eat:h \\llh a 'JX.-cial prelh: and to udd to the prolifera· titlll of cnh,·rcfcrcncc entrie:., the 8-\SIC und Kemal RO\h each ha\e their""" ~t of li~ting~ . Fr.lgmc:nh..'\1 addresse~ are gcncrall) h31ldlcd 'ACII, and are car· f'led through comxtl) to the cm~"·refc:~nce area. For e'ample,

dw~Ktcr.

.. O JIIf/111/tV Oil p..l~~ 71

69

Apfl1919. Volume 9, 111U. A


Macro Set 1 for C64/C128 fronl Xytec

t ndard reference llbruries, )OU can grc tl) reduce the efton an \\ nting llC\\ asStrnbler rrogrnmli.

h'OIIablt'fmm

\\trc

'I he librarie

I 914 /) n uodm1

San I ratU 1 co, CA 94115 \f,Jcro .\t't I dtJC JUM th:ll lor )IIU . I\ Ia m!> and -.uhmutinc~ are ~9.9~

US.

~.00

5&1/, utld 1.•\0forCcmactll

facro 'it'l I from X)tCC i a collection ol some 36 read} to usc scmblcr soun.-c code ubroutme nnd 60 assembler macro . It i current!) U\ n1l ble for the Mt'.rlm aruJ Com· modorr Aurmhlrr Ot'\dop r \vstt'm, \\htlc \ersion for other

popul:tr a'isembler fonn:u ( uch P.\L or Budd)) are said to he fonhconun • It pn1' 1 n read&!) \ alnble nnd eas) to use source of semblcr un.~ code for man) common ta l.: foced b) pmgrummers.

lor mu t hou~kccring tun tttm' uch IL'> rcen J'flnllng. I.:C) bo:trd an put, dt k hie 110, CIC'. A SCI ol EQl ATI3 lor the tnndard 1\emal entl') points and other meml.ll') and ") t~m \Blue I colour codes) is lso rrm idcd in (Ill( of the libr:an • (Ho"e"er. cun picuous b) its absence i support lor wme of the f'Crlphernl nnd progrnmmmg urea man) people need heir "ith uch a sound, grupht , mi e nd RAM e p:m ion unit . In nddttton, nlthou h the d1~ I bel tate "for the Commodore 64 and 12 ··. there i no uppon for the Cl2 k"'lumn \DC chip, hank ""it~hin or the Cl2 • enh:mced 1\emnJ set.) J'Hl' idC\.1

l"he mxn and uhroutmcs re dt\ 1dcd mto h hbnuic which can be combined "ith ) our 0\\11 scm bier source code. f•or those \\ho are mtcrested. n scmbler tru!Cro is reall) ju 1 (One 'Cl') nice touch i th:lt the manWII unes th:lt progi'IUllS a imple \\ ) to insert 11 length) piece of tandarda1ed source containing code de\-eloped from the X)tr-<: routines ma) be code mto )OUT (lfOStarn h) pecifying 11 n:trnc \\ith pcrhap n frcel} dt tnhuted \\lthoot aunbuuon. Alter readmg the: rondt· re" J)lltameters. ( ot nil ssemblers upport m ros, but most tion ol man) compliers, ~:ode hbrnries, etc. that h;hkall) 1611~ of the bellet 00~ do.) each lillie the llUICRl I'> called in )OUT )OU t:annot sell n) program dc,CIOJll."'l.l U'iing ")'t~m \'tZ usscmblcr sou!'l'e cod , a lull COJl) ol the represented cnde i,. "ithout the (lCrmi ion ell \1cga \ 'tZ Corp.. thi~ i~ truly :1 \\el· ~:orne rcliclll In the C\I>·M \CI'limn. \\ha~.:h I ll:,ted. the tnli.Crtl!d antn the uhJCCl code. llhrJne~

sr:ouentaal d;ua tile . !Other '~raon or \f,Jcn' .\t't I "oulll rresumabl) ha'e II brat) tile~ comp;llthle "nh the gil en assembler.)

For example. 11 )nU \\anted to oren 11 da llale, )OU nomtall) ha\e to go through a scnes ol Meps u in~ the 1\emal \P.l~A\1. ETLF ( I::.IBA'\K <m the CJ2, ) then Of'E.'I;. Instead of manulll1) rercaung these tcp e h tame ) ou wanted to open a lite. )OU could set up a macro (let' ~: II it DOI't:..') wtu h ronmined nil these teps. Your nssembler source code rna) then contain some hnes winch rna) lool something lile (rclll\.--m~r. the )nta:c. for \anou ssemblers i dtfferent):

\\ere upphed

n~

The S't\KT hbr:ll) contam the 1\t'mal and >~tern FQ AlL'> a>. Y.ell a general \\orl.: rca , pscudt, 16-bit rcght~r handling routines and generul hnu elecping (i.e . sc:reen cle:uing. cursor ro itioning. etc). lbe I!I.'PUT hbral) contains n fairl} opha tic ted m m for ke) boord input. The B'> :\M Itbrut') has lile handling m rm and subroutine . ARITII contain a 'ariel) of math ml number com ersinn routine . lbe libraries D'l D MP nd TRACE c:onl:lin d bugging and monitor· ing t)pe routine •

where fil~rulm~. file#. de' k el and chan Mil are )OUr JWWlle· ter!> for the ncn file. :-.;o\\, e h ume )OUr scmbler SC\.""S thi line. it takes the source code (\\hi h rna) be SC\crnl hundred lines long) soctated "1th the m ro OOPE.'Il, tnsert the ~r.uneters nt the ppropn te pot. then msert' the code into )our mam program. 8) L;ecping ts ol often used mxro-. in

1 he hbrurie com in quite number ol te ted nd dcbu ed assembler routines, some flCrh p~ of more usc to the C\cl')da) progmmmer tlmn others, but all \\ell thought out nnd e •' to use. 70

Apfl1989. Vok.me 9, 1s8ue.


lnsid~ th~ Conmrodorc 64 .... from

let )OU use pseudo 16-bit regi ters for m:uh. uddre5s· ms and geneml purposes. It doe thi b) sening up series of lo" b) te, high b)1c memOJ) tornge patrs '"hich cnn be d~.rtttl} rn:1nipulated b) a number of the llUlCn~S and subrouu~. l'hi tc:uure male 16-hit m:uh on the 8-hit ll5.u processor a renl snnp to use. START

LOA tf$71, lJ>'

. A.9 l'• correcth• tran'llated ns l.DA <TA371 .

l.Dl' >TI\ 371 ... \\CII. almost correct!). 1ncc most n scmblers "'ould call fnr the " li'' )mbolto be retained. Indeed. that imme-

diate!>) mbnl is lacL:ing tltn:mthout the da!kl.o;scmhl). E'en tri,L:icr<."<ldc i' lundled intclhgcntl). 'TI~e IRQ \CCtor whlc nt f.D'JB seem' OC\cr to be referenced, but the book correcth• deduces th:lt 11' ~hed \\ ith an offset fmm I CBD. thus: WA J'D:\f.l: B·",.X - WA TDAP9B·7.X. But the authnrdidn't ~ to umu\'CI nil the codeng puules. Fur exunlple. there' a seerningl) b:lllling reference to IJFEA (not C:\'CO in R0\1!) at address AHX>. ~ot unul you tracl the call to AFA7 (from o\EEE) "oukl } ou n.-alize lll3l the t.'all i made '\\ ith a \"Diue in A of B4 or gm~ter; thmugh son~e odd anthmeu • thb generntcs a \'tllue in Y of S68 or llhl'' c:. The IJFEA reference C\mld then be changed to IJ>,\ A115:!·~.Y. 1\052 is the table of addres.'>l!s fur function calls, hut )IIU "nn't lind it addrc sed an} ocher \\a}.

\\hat'' up doc-; The documenr:uion (or Pmgrammcr's Rrfoau t' Gui41r.

pagt' 69

a~

the) cull it) io; a tairl) ell. ten i\ e descnpuon ul the a\ailable lll3C'ros and ubroutine grouped b) hbrury module. a~ \\ell a ~s:lf) h:lcLground info lm ho'" the libraries interact '"ith each other. Also included are some of the h.l.'iic conceph and as umption used in de\eloping the routine for ~h hbr:lry. 1be manm~l1s inde ~b) rouunc lunctioo ns \\ell a'i h) general subjeCt. and include a h ttng ol L:epnnd'i und re~f\ed \\ord u'iCd h\• the \':lriou, routines. The entry tor each mucro or 'ubroutine ,., ""'ompanied b) a hart ~nptton of It' functiOn, pedal preparatiOn required. '"hi h registers arc alf«tc:d and the S)ntax. \lost are also ocrompanied b) a hon eumple of their usage. If I h:&d one complaint about the mllllu:tl. it '"ould be that lllllit of the exnmple an: too brief or ugue to get a reall} good idea of \\run the) are trying to do.

If you know your way around ROM code. you'l/find it a lwndy compact reference ...

On the do\\ n ide. the ~upplied SOUI'l'C wde in the librarie i' \Cf) parscly comm nted. It ~"'em'i that the degree of com menung h in\crscl) proportionnltnthc complc:\lt) of the rou tines. l'he ca') one:!\ nre e\plained. "hilc: the complc\ one' lu\ e httle nr no comment' tn them. It i lllten \er) diltlcult to figure out \\hat 1 going on. Thi b ~pecinll) Important 1f )<lU \\'llllt to modi f) an) of the routine . (It i ah\a) nice to underWld "hat >ou arc trying to ch:mge. ju t to he ure that >ou are not remO\ ing something' itll!)

Other book\ YtJU might '"unt to coo...ider other l:xMlks in the snme \ cin. to 'ubstitute tor or upplcrncntthi infomution. J\\o other reference ghe Rm-1 deuuls. The Ah u boollhe ,\natom) ofthl' Commodort' 64 ghe a disa scmhl) plus discu' ion ul programming c:on~idc:rations. "uh ~'era I example: ol code. The disn sonbl) (contained 1n un appc:nd111( that i' lal'};cr than the book':. mam tc\1) "' curnmented. but not a' thorough!} u' en \\Ira(, Rt•ally Imide tltr Conmwd,rr 6-1. and no crth'·rclcrence i-. supplied.

A fe\\ deta1led examples "ould nlStl he mcc. Ho" about a complete: sample source code program th;u call.. a number or the m:ecms und .. uhroutine~ to dcmonMratc their proper u'ilgc? Something a 'imple a, a quential lllc read r "ould malo;c: use llf a ln1r number of the macro-. nnd ubruuunes.

Compute! booL: h:lS pubh,hcd fool A.'u: K~rnol nd fool K11 : BASIC, bc.Jth b) Dan Heeb. These two booL: tud) the ROM of the Commodore: 64. and that of the \'lC-20. '"hich has idcnt1cul lo~;ic llo\\, to con iderahle depth. The: code i c.xten hel) discu SC\.1, noc ju t commented. 1\ot nil of the ROM t.'Odc: i di • CU'i.SC\1, but most of II I' there.

Parting \\Ord\ All thing con idered. I \\OUid recommend lacm S~t I for nllle\els of a sembler programmer. although it \\ould prob.l· bl} be of most u~ 10 the intermediate le\el programmer "ho 1 competent enough to understand the ha~ic concept.. of the macro ~> rem. but not quite up tn \\riling ream~ of source code. Begmner 'hould be able tu fulhl\\ a lung '"11h the aid ol a good 00<1l on a,-.embl) programmmg. \\ hilc nd,nnccd users ma} lilc it for the ·"h) re-in,ent the \\.heel' feeling that 11 pn,, ides them.

Summar~

n ,,,,., Really lrr\1,/c

thl' Commf>clorc

a complete R0\1 liMing. If )OU L.no\\ )OUr \\a) urvund R0\1 code, )Ou'll find 11 a hand) l'"Ompact reference.

Ira \en;ion of Macm Set I 1 noc autlable for )llUr fa\oonte a...sembler. :m e perienced programmer sht.lUid be able to ac.Japc one of the exi~ting one!\"' 11h little dillicuh). u

()4 j,

Although the d1sasscmbl) contain brief comment • this boo).; would be tough 'leddmg for learners. It a umes that the read· c:r L.no" s quite a bit about the 64 ·, organi:r. lion bcfo~hand. u 71

Ap1111919; Volume 9, tau..


SFX Sound Expander SID dethroned Rt'ie" b) Richard C urcio f.~

ound f. \P(Indrr atul lhst . $90 0 tal r full n:r tr)hoord•.,..,., \f/IJI intrrfa r. ·4 \furtr Malt'r l.r\hoanl oH•rla). /0 tC6-I on/\ I I \f Com1111 rr mt.l l:clttor iltrl.. W .\1 \ ' I'm •rammrrs Rt'ft'rt'tu ,. Gwtlr, .. 10 (,\II prwrs m u~ dollars)

Hard\\a rt

I rorn & 111 1 • 19 \\ , fa\ lor I!JJ4. ~nta Iarlo, C \, 934 4. Call (800) 447-3434. /n CA . call (805} 9~(-668]

One of the more nouble feature; of lhe COOllllOdore 64 tu! lx"'I it'i excellent sound genlnting capabihues. ll~e powerful MD (htp. contruning lhrce <N:illatOI"" "ith lour w:nc::lonns 1.."61Ch, lour pan cmc::lopes, and fllt~..'l' '' ahntJ<.l a ~ompl·tc )nthi..os11cr in a ~mglc 1n1cgnued cen:uu S1~c the inmklucuoo ot the CM. '>)nlhcl;it~r tt'CIIIMik'S) ha' (1\cn.U.c:n and pa sed ID. Frw huih·in sound generoiliOI\, howe\Cf, f~ personal C:OtnpUlC!'S h:s\C SU~'ic."'tJ or C\'ell equ:lllcd the Ct"W. (In fnct, <'lfll) l\\U I'C:ldll) ~:orne 10 m1nd One 1 the Ami a, "ith lour channel' of s:unpled suun.J. 'The oth· cr as flOC 1U1 Atari.) 'The SFA ~und f~'POndt"r bring.' to the C~ a d&ITetott fonn ofsotllliJ ~ion: Di ual FM Synthesi...

lhe H r1101.lulc j, 1101 u ne" produ 1. It i manutactun:d b) Ct,rnmudore l K and ha' tx--en 3\lulahle an Fun,~ lor ...C\cral )C:::trs. f·eam & tu,ic i-. no" unponmg \I~ mu,1c pnkluch au the U.S. f>tt) k-:dl). the f'li .\ouml ' *''{J(mdrr is a I3J1!i'h Cllf· trul c. resembling Clwmodore's \fa~:1e \met' module. h plug.. mtu the C64 exp.msion pon and has n tmp door mechani<-m for the msen10n of a companion MIDI c:anrid c. D\Dtlablc scpa· rutcl) for 'i4, 1'hc ..10( (und soft" n:) 1s not eomp;~llhle \\ith Mll>l canridg lrom P~ pon. Sequenti:ll. and others. On one ide of II module i u ingl RCA phono J3CL: for aU&ho output . llt1 can he ~onn«t~ to a lcm• or an trumcnt amph· ficr. A flC\: 1al cubic uncludcd l ullo\\ s the M'IUnd' 10 hto pia) ed em a tclc\ i,ion h) muting the: "i£nal mill the CM audio/' ideo I:OOilCdur.

On the ocher 1de of the FX moc.lulc 1 a (tlCln«tor for an e~tcmal mu'i Le} boanl. Iso :&\ 1la"le SCJl:lr:llcl) for 0.

lhi ~e)bo:lnJ h:ls fi,c oct;a\C of full- ired pi:mo Lc) • i c!\tremel} hght \\eight. and compact. II i neither 'elocll)· SCO'>iti\C nor pres IUC·SCO'illi\C, but Its 'ac:tiOO' I!> ~UIIC gond nod not t all ·~ui-.h) · 11" eknn.ma Le) hoard tend 10 he. .\hhough 11 is an option, th1s cMcmal Lc}hc.W\1 I" e'senual 11 ·' bri r t \plana tion }0\1 want '"e the l:.'f"lrnlrr'" m.~ •IJlhilitk led feature~. The hl\Jr Wll\cforms ot o;m·~ usc&llators are more or lc"' thcd. 11te lop '"" m'" ot the wmputd Le} btwd can al'<l he u~d The tihcr ~un ~ u-;cd to n:mmc <IT cmphli\1/C:: hllrmon1c~ or Ill pia) the: I \f&JIItfa. A ~fu,tc \lttA,•r Lc) hoard 0\crla) "also u\cnone ul the "a' cform and thus 'imul. tc 'uriou' mu~kal u~ aalahlc at 10. Thi-. 1' u pJa,uc l"t.l\ cr "nh mmi·Y.itcd p1ano in'>tNIIICnls. nli~ proccs is t:alh:d 'subtructi\C Y.)nthcsis'. Lc), that mcrhang the computer ~C) hlJ:Ard. Tl) ing lo pia) nother method ot lUnd gcncr.!llun in\Ohe the adding mu..i "itbtlUI the OH'fla) or the lull· i1cd L:e) btlllfd i to ether of h:mnornc:all) n:J:uru 1ne" \'CS in \'Vlng amount • extrel'lYI} dum ). tediou... and lru trnting. l'h1 ts refem:d to 'adduh e )llthest •• The S1 ~ 1wund l:'fpmul~r tQ" mnc •,o· es' or ~nd genera· I· 1 } nthes1s is n altogether dtfferent )'li'O'C s. Sound ~ tors, each t.'OO isting of t\\o osetllatono (( llcd 'opcratOTh' m ueatcd b) ha\10g oscillators fn:~UCOC) modulate each other :u 1M tt!rminolog) 1. "ith en' elore nod ph:lse geocr.uol"\. The high nu 10 ~1Jtllplc1 W3) • Being more th:m the gentle FM ~'11"-arc uppli...-d "1th the f~Jcmdrr pro\1~ c1ght \OI~c,, or \lbr,un, ,IIJchand, ure generated: und h) \DI) mg the 'fl'-'Cd and '" 'oe~c~ plu~ h\ e percus.,um oumh. depth ol modulataon. and the mten:onn«llon~ tlct\\cen the osctllators. \CI) complc1 wund cun be gcnc:ratctl. Do all thi' \\1th d1g11al tc"hnolog). and )uu ha\c Digital I'M S)nthc~i . The th L that comes "1th the H 'oUtul Cxpmul~r u~ the form of cop) prutection that busc the d1 L: dm c: "hi lc lo:M.I· Tlu ~ proc 1 u~ in the ele\:lmrm." m trumcnts made b) hmaha, and not surpn mgl), the rx ound fupandcr '118· the dme emit ch:mering. grinding. nuchine-gun sound ct fe~:l • SulCc the ftw:ue i useless "llh&.'lut the h:snlwan:. and emplo) s a 'I lunaha 1 •

or

72

Apfl1919: Volw'M 9, laue 4


the hard" re is inlinuel) more dafficult (if nut imrx, sible) to duphaue. une ~ue tiun the need for cup)·pmtectton. Sending D ample command to the dmc, before Joodang software prole\.'ted in thas manner. can minimu:e the \iolcnce. opan15, 8,15: printl 15, •a·w•; ehrl(106) ; cbri(O) ; chr$(1) ; chr$(133) : cloae 15 ~~oall

cause the dn\c toN! agmlic:~ntl) quieter ~~ohcn software protected thas wa~ as lo:Jded.

Once the 1:\ soft\\ are as runnmg. a menu lane ppcars t the top of the screen. 11.11h n ~~oarnlo" an the cemrc da.;pl:t)ing I\\O mu,ic ta\'Cs "ith lxt s nnd treble clef • I hi "indo" ,ht," ~ the note), the) nre plu)ed. l'he CM functicm lc~s arc rcpmgrammal to pro\ ide ~ursor up nnd dtm n, lcll IU1d n£hl, mcre:1se and dec~~. or un w1d oil 11s upphn1hlc tel t~K" chnsen opcr.uion. plus 'Enter'. llli'i arrangement ta~es getting u!!ed to. and I 'till lind m) sell If) ing tn u~ the nunnal cul"or ,m\1 return ._C)'· ~ ffi\.'llU ~IC\:titlll arc Sill I~ s\~111. Rlln"IIM. RIFf,and t>l',t\. ll aghhghung l;ci\JP \\ath the ~.:ursor/tunctinn ._C)"· a dmp·dcl"'n "moo" appcan; "ith 11 number of npti\JOs nlfceting the mod· ule's Of'~tioo. \\ hen \omwl j., clad;e\1 lMl, the sound sek-cted in the s\'JI.Tll ~~oindo'' cnn he pla)etl m~r the lullle.>hoard. Onr Fmr:rr Chon1 prm idc5 m:ajor und mmor chords b) ~mg 'in· glc ._C)" ''" the lo\\ cr '" o m~~o of the computer lc) txl:JJ\l. or rombin:uions of lcft·h:md I.:C) on the e:~otcm3ll.;e) boord. (1'1'1e5e are liCIWII) t\\o-lingcr chord... hut \\h) quibble?)

light har docl>n't 'roll O\er' from top to bottom or VICC VCf'5L When you reach one end. ) ou ha\t~ to go through alllhe selections to get to the other end. A rudamental) tone control I pro\idcd I mm the computer keyboard. bot 11 " ould have been nice to h:l\e some son of perfonnance controls. perhaps usmg a JO)"t• k or paddles, to Iter the sound m real-tame. And "hat Commodore t\ calls User's Guide 1 pathetic. Ho\\'e\~r.

the sound lhru cm:mate from the SJ S<~tmd f.rpandt'T ore impl) nstoundmg an their n:a!Ml. lhe Stm1 s sound '"' especial I) coO\incing, p:uticularl) ~~ohcn l.rurmhlr is enabled. With the (lptional Compo rrl/Ulllor prngmm. Dn) sound found to be les--. than i~ltk"lOf) can N! shaped to the user' h1.:ing. A CM 0\"lc:r n:all) ~'M Jllll together a D\7-hle inwumc:nt for 11 fraction ol the '-'ust. OK' might) SID has b.--en ~'thmncd. FM Compo..er and Sound Editor

The cumpaninn nit\\ arc lur the ~/ \ ." 'muul l'..lfhlllclrr " F \f Colllfll•u•r ami ,\ouncll.clitor. Thi' pad;ugc enhance' the pcrfl1rman e ol that de\ i..c. and i~ indi~pcnsahle if )OU want to c~tc:" )OUr''"" sounds 11nd composauon\ for the \ f \ module. The Di'il.: The Mlltwarc cmph1)S the abu he form of cop) pmtcction that rong IlK' da~l.; dri\e head Mlllnd. \\ hiJe there m:&) he some justiliauioo for COp) protr'Cting thi di L:. there ~"UJl

be no ju ulicuunn for the method usct.l. Aller the aniu:ll head·h.ulgmg, a scm:n lqlpe3r.i "llh the C"hoi l'S &Juor nnd Compo rr. Alter making )our choice. the dri\e i objected to some more abuse belure t~K" selcctc.-d progF.un :lJlPCatS.

1be RtnTliM sclcc1oo antcracts "ith this ami lmr,:t'lc d Chord to pmduce null.., ump:mament. Mrmnry hold, a chord after

F\1 Compo'itr: llle kamp) hooL:Ictthat Commodore UK jol· ingl~ call a ··user' Guide" daim th:lt thi~ program i "po"erful. )Ct cas) to usc". llti is nnl) half true. The Com· poser is imk.-cd cxtrcmel) po\\crtul. It i ulso extreme!) ditn-

the ke)i~) nrc relcnsed. Pres ing the ~--e h.u ~~--eJ, a held chord. The e:uemal b:\• boon! C'an be PUT. and datfcrcnt sounds assigned tu the upper und lower punioo,., The plit point cltn he nn) "here on the 1.:c) hn:tnJ.

cult. n.nd u user mu't be pn::p:m.•d to pend a lol ol tune expcn· menung nnd lc~tmmg at lcnture bcfc1rc attempting to create a mu,acal .;core.

l11C s \ ~ IH menu pm' ides a selectinn of I:! dalterent sound,. Ihe da~k umlc "11h t\\U '"Uile' ur c1und h;.ml.;)o. Additional sound~ un 1'1: created u"mg the cum pan inn pmgmm f u Com· pmrr 1111cl \owul l .thtor, U\ uiiJhl.:- scp.aratcl). The ._C) hoard cun ~ 'halted -1- I oct.I\C. 'lltc note da,plu}ed on the mu,ie ta\e, don't change \\hen the cKIU\C' i" shaltcd. The lc)hoanl cun also be transposed +6 and -S semitone,., Pla)cd note, :u-e then di\pla)ed at their ne" Jl(lsitiuns. Htucmhlt' hahc' the numhcr Cll \llile and assigns 1\\n \nices tn a L.cy. The t\\0 \oices a.re then li~htl) dc·tuocd to 'latten' the sound. The RHnltM menu pm" ade pe~.,'"lon companimcnt in \'3Jio\h st}les: Pop. Rocl. Boss:lfkl\U. Countl). etc. The drum 'oumh are uncannil) rculisti (e~pcci lly the C)mNI ). unlilc the "boom-chiku-boom" ol uther inc pensne electronic rll)thm units. It beat!. a metronome O) d.J). When the pcrt'U'-'ion i" actl\e, the numN!r of playable \Oi es drops to ,h.

1- \1 CompcHt'l" ullll\\" the: \1 \ \t•uml l~\fltllltll'l" to play hacl nmc·part mu),ac: score:. pol) umhrall). In other "onJ,. each pan C'JO ha\C a dallcrcnt 'uund. With the compJnion \IIIli cartridge. ench \ui~e cun rccchc note), li\Cr nn) nf 16 MIDI chan· nch. An e\lcmal ttUI·etJuippcd de\ ke can <oet the tempo for pla)bacl CMIDI clock I. An} \Oicc can be turned on or uti for pla)ood:, en ~hghtl) dctuocd from the ot~K"r \Oke,,

In it" "clear memol)" !;late. the Cnmpcllt'T h:u mcmol) a'oailablc for 0\er twchc thou nd "C\cnt ", FoH'OO'Ipo,itioo. m:m) ct~mmon and uO\.--rnnmon ume ignatures are ~upponcd. tncludang S/1. 7/16. nd 9/4. ~otcs can be entered from the computer l.:e) htl:lrd. the nptitm:~l e tcrn.\1 I.;c) btlatd. or 'i:1 not. Rc t arc entered "ith the ~pxc bar. When enough notes and rc ts (lf the pnlflCr dumuon ha\e N!en cnt~ to fill a mea ure of the time Mgllllturc selected. the pro~rwn automati· call) an<;en~ a bar hoe. Kc) and time ~ignature, can change "ithin u pic'--c: ol mu k'. Triplets :md doll~d note~ :uc 'uppon· ed The in\trument sound can change" nhan u pan.

Sumrru1r~

The mcrall pcrtonnance of thas pad:tgc is e:-.~.:ellcnt. The ~oft· V.'af'C doe ha\C a le\\ shonl(mlings. hci\\C\er. The menu high·

73

April1989: voaum. 9, laue 4


A score entered "ith this f'I'Ogram cnn ha\e nil the con\cntionnl mu ic not:nions. Rit:mJando. !>lor1:mdo. h!nuto. and Da C11p1.1 nre n fe\\ ot the tcm1s used in the in,truction bool..kt . Ob' iousl), a more than 'uperfic•all..no\\ ledge ot mu,ic terminology i nccdcd to use this program tn it.. full pc.•tential. On pl:l) ba~.:k. the piece ~:an be 'hitted +/- 2 octa'e" or lr.llhposed +/- b semnonc,.. Oiltertnt '>Ound' ~:an be a....igned to the nine parts from u libr.1ry of 64 sound,, Additional 'ounds can be created " ith the /~litor dc-.cribed belo\\ .

The "'' or feuturc' goc' on und on. and perhap~ th:u'' the nMIIl problem \\ ith thi' program: it trie' too hard. The 'o\."allet.l U'cr·, Guide doc'n ' t pm\ ide much guidance and the ,jngk help -.crccn i'>n ' t 'el') helpful. SuiI. judging from the demo piece included on the di<.J... 'omcone \\illing to 'pend the ttrnc nc~.:e:-.sal') to learn th1' program "ill be able to do amuing thing' \\ ith the \f \ .\otmc/1~\f'•llllkr. f '\1 Sound f:ditor : Th1' progrnm enable' the u-.er to de\ clop

nc\\ ..ourl4h for the \1 \ St•Ulltl £\flclll<fl'r. The 'ound.. created can be u'ied b) the ru Ct~mpt•ft'r or lhe ba.'ic ..oftware included "ilh lhe £,pu,klcr. It aho function'> a' a nine·\oke pol)phoni~: ' ) mhe..ilc:r. The ~I'Tl P menu allo\\., 'lc~:tion of one of 64 different -.oun<h. The upper and lo\\ cr poniOih tlf the e\ternal ~e) board c-.m ha\ e t\\0 diflen:nt -.oumk The l..c:) boanl c-.m be 'Piit at all) point. The I..e) txl3rll \.'an be 'hiftc:d up or do\\ n one octn\ c. or IJ'atl,. po~J. With the \1101 interlace. the unit t.<m both -.end and recei-.c infonnation O\cr all 16 \tll>l channel\ and "Omni". A '>implc drum "l"qUcnc.'Cr i' included. "ith li\C! percu'><>ion 'nund,. The -.cqucn~:e h :n 'tep., \\ith no pro' i'ion to alter the length or 'a'e the ~qucnce. Drum e\ent' ~:an be entcn.>d from the ~e) board a 'tep at a time. or in real time. Ten dtllercnt drum 'I.:it..· are pro' idec.l. Again. "hen drum' are actiH~. the number ot manuall) pla)ablc \oicc., drop' to ,i,. The EJtt Sound "C:n.'l:n i' the real meat of thi' program. With it, an) of the 64 'itlUnd, in the libr.tl) can be tailored to the uo;er\ lil..ing. Becauw of lhe comple:\il) ol r-\1 programming. ccnain compromio;e, are mac.le. The ~rccn prewnh o;e'crul ·,tide,...,· allccting 'ariou' qualitie' of the \Ound. BrtllimKc and \ oltt•ltr arc selt-explanatol'). Where the compromio;e i' ob' iou.. i' in the f.'nrdop(' comml. Jn,tead of the four·pan emdllJlC' familiar to SID programme,-.,. a 'ingle .,Jider 't'lecl'l <me ut :!55 pre~• en\ elope,, :-.io gmphic n:pn:o;entation of the em elope i' t>ftercd. Bec:auo;e an ~~ 'oice ~:on'i'" of two o'(;illato,.-.,. control O\C~r the 1\\0 pill:he' i' pr\l\ ided. A ,Jider lahclled l~\f'<mJu controt.. the feed hac!.. bet\\ ecn the '" o o..cillato,..... Each O'>~:illator can ha\c dtftcrcnt Jc, cJ, of \ thratt' and/or Trc'molo. On~:e } ou· ' e got the 'ound ju't the "a) )OU want it. it can be 'torcd in the libml'\• and the \\hole lihmn• .,.., ed to di,~. The liN 12 ~und' of a libra!') c:m be \3\ ed a' a ·Voice Bani..· 10 be loaded by lhe E\pander·, ba'ic ,oft\\ arc.

Fruit \lachine: Thi' i' a 'ill) name for a 'cry cle' er proce''· Rather th;m a'-.emhle a 'ound from -.crmch. the ~reen .. ho"' a di,play 'imilar to a ,Jot machine. '' ith liulc: pkture' of dillerem mu,icul in,trumcnh. Entering the Go command, the \\heel\ arc 'pun. When lhcy 'top. ) OU can pre'' a fe\\ I.e)' and if )OU lil..e the 'ound. go to the f:dit <,ercen and mal..e udju,tmenl'l. or '>pin again tor a diUercnt ..ound combination.

o. erall: M) main complaint abouttru.. \Oft\\ are i'l the method ol copy protection empiO)ed and the non-integr.ucd nature of the ..cpo~r.uc progr.tm'l. If )Ou' rc in the Eclitor und )OU \\ant to e'\11 to the Compmrr. the computer mu't be rc..et and the load· ing pnxe''· replete "ith drive·abu,c. begun all O\ er again. With '" m:my teature... t\\O 'honcoming' of the C(lmpmu are e'pectall} unno> ing. On pia) bat:I... the ~reen di,pla) j, '>tatic. 'tuck \\hcrc\cr 11 "a' \\hen the Pia} n'lfnmand \\a' ghcn. This maJ..e, I<'IC"Jting one·, mi,tal..e' diflicult. Thi' i' compoun<k>d by the fact that \\hc!n )OU change pan ... the di,play jumP' to the \tan ol the OC\\ pan. rather than the loc'Uiion corre,ponding to the point \\here the prc\i<lu' pan \\:.t'> c\ited. Funhem1on:. no numbering of the mca,urc' i., pm' idcc.l. The ma&:quaq of the Compmcr in,truction., ma) di\Couragc M>me U\Cf'. Thi' \\OUid be u ,hamc, becauo;e it appear. to he a.. po\vcrtul a' claimcd. Diligen\.-c and patience on the u..er\ pan are dearly ll\.'\:C'\31) · In contm,t.lhcrc'., liulc to lind fault" ith in lhc Sound £Jt1t1r. The \1 \ E \f"Jfltlrr. combined "11h the Editor, Compo.\ rr. bring' 'ophisticated ') nthesi' to C64 O\\ne,.-., at :1 vel')· low price. One \\OildC:r'l \\h) Comm<xlore didn't mal..e thi<> pnxluct U\ aiJabJe in thi' COunt I') '001\Cr. A J,o U\ ailablc: SFX Pm~ramma'\ RrjcrMn- Gttult•. I0. Thi' 31 -page bool..let. titled "Da' Mu,il.. Ge,chall". i'> more 'pe~:ificall) about the Yamaha 'I \1\S~b IC than ab<>ut the ~1'.\ module. The chip '' acce"ed in a manner 'imilar to the C 12tl 80 column \'DC. Onl> t\\O location' appear in memory. one tel \\rite a rcgio,tcr addre.,.,, and one to "rite the data or read the chip'' ''atu,. The booklet pro,idc' no programming c\arnplc' in 65\\ or an} other \11 • but doe, e 'plain the numerou., rcg..,ter., and function, . I am in the proce.,., of di,-.ccting the St'X module. and the foliO\\ ing information i,, at thi' time. tentati,e: The matri\ for the e\temal l..e)board occupie' eight location' at DHIIi· SOHif·. The' "''i~fl li\c, at Dl ·~•. lncomph:tc uddre" dc~:od· ing cau'e' 'imageo, ·of the matri\ and Yamaha chip to ref"! at throughout 11m. The nm:!fl i' not cl~l..ed by the cnmput· er\ clod. but in'llcud ha' ih o\\n ~.5\1111 Cl'\,tal O'>Cillutor. • There '' the pc.>'>'>ibilit) that a \:tnablc clock can be 'ub,tituted for line tuning or pitc:h·hend . The connector for the 11,1101 can ridge appcaf'i to ha' c 'ome addrc" line' "" apped or 'hihcd. Thi' \\Ould c\plain the incompatibilit) \\ilh third pan) \1101 canridgc ... A' more: j, learned about thi' p1ecc of hard\\ are. I e'pcct programme"" on thi' 'ide of the Atlantic \\ill de\ elop their O\\ n .,Oft\\ arc for it. perhap' a C 12K 'er'ion that male., u<,e of the larger me mol'). buill-in "indo""· high re,olution routine.,, and 1'\Cl column dio,pla). Li Apfl1989: Volume 9, laue.

1


X-10 Powerhouse Computer Interface Control the world with vour C64 •

~-/0

Pm' t'rhnu t' Computrr Interface

lanufa llm•db\ ,\ .JO(U. 'AJim /8 ~A J.r<1 rtmd A l't' orrhroI r Ito'J 07647 A I'OJiablt' from ll'H'ral

Olm t'S mcludm~:

Complllt'cr lhrrct, lnc. 12192 orth Pt>ppt'cr Rood Barrlttgtnn IL. 60010 .......BUJ .n I L orJ 12·3S2-505 (ord r. ) 312-382-~u 1 (tt"Chmral a mtanrt') ~9

95 (US I plttl luppmg 111 Umtrr 1989 catalo~:

Rrqmrt'd: C64 (or

T h X· IO S\• trm X-10 (formcrl) mnlteted ns the

S) tern) control 120 \A light,, l:unp , I.Uld appliances b) usmg flO"~r lane c mer trun • RSR

ants 100. In ample terms, nn mterf e 1s plu ed mto an elec· tn I outlet m )OUr house. ndcr program or m:tnll:ll control. the mterfa c nds a ended radio 1gn:1l through the 120 \i\C "arc! to "control modul~". J'he module nre u uall} mall bo:\es th:u plug mto wall recep· t:ach: . The de' 1~c tu be ~~mtmllcd plug~ into n outlet un the module. J\oothe:r t}pe of module i dc.\agned 10 repl sumdard " II "atche for incundescent hght . The module~ Jcs1gncd lur hghting pplicaaions CM tum the lighb on or off. and dim to an) 5electcd le\t~l. The srune mod·

ule can be used for non-mduclt\e pphan • thmgs that don't hme motors. AJlPhat e module are tmulable that can "11c h an) l~d up to 5<Xl " tt • I'he) usc m:1ll rela) • Ml lrod~ connected to them cannot be dmuncd.

/2.'\J a11d ont' Jfi4J 1571 dul; drne

\\ hen I first bought n house. I "nmed to nutorrn~te e\t~l') • thmg. In those cb) • computers "ere too c'\pen 1\e to dcd1· cute to mundane thmg hl.;e tummg hghh tlll and ull . So. I set up u } tern using logi atcs, progmmmed lmm a p:~t h p ncl. I rnn el'.tru "tre "here needed, and used three dtffcr· ent \ ollngc le\ el , I m:untnmed the ptnt, 1f not the letter, ut the ele<:trtC'al Ct!tle . The hard"are cost about 25 lor each h ht "uch.

Each module ha.o; t\\u dials or mtaJ) \\11 he . One dtnl sclet: ts letten from A to I' (16 po '>lbaht1es). The other d1al selects num~ fmm one to txteen. F.ach module can ha\e one of 2.56 udtlresscs ~o.·ompusctlul a letter and a number.

There nre man) types of interface \ailable to control modules. I 1 ha\e o select ble letter ddres runge. u'tnS a \\uh the X-III Ctmlputer lnterfa c and a (64 nr Cl2 • :lll)onc '-\\ lllh or d1.11 . !"his i t:.tllcd the "house COlle". The house can creme 11 mu h more c:l bomte )stem th;m nt) uriginnl. It cod ts not ch;mged dunng norrnnl operation. llcpcndm on requ1res \Cl) hnle elcctri I e~penen • no e.\lnl \\'Inn • and controller I) Je, there nre four to u.teen "11 F h con· onl) n fc\\ mmut~ to in t II. UnliL:e m) logiC' gate cu\.'UII, n' tml module. wh1C'h 1 also set to the pre-selected house C~) to program. It features an on·board clocL:/llmcr and full cud • b) number. I here rna) be otkl1llonal S\\ ilche.' "' dun b3ttCI') b:d-up. module once the) are selected. Some interface prO\ 1dc "" hes for "nil hghts on". nnd other function . 1be computer I Used onJ) to tnlll:lh7.e the llllerf: e. 0~--c pro• gnunmcd, 11 ~'lln be t..hsconnectc:d from the ~·ompt.ner and tJJICr· Mmt mtcrtocc use manual \\ilche . Some re pond lo remote ated m t:md-alone mode. control de\ ices, euher mfru-red or radio. Spec1al Interface" answer the phone and respond to touch l(me 1gnal . Othcl"'i 1be Computer lntcrtac.:c or1gin;lll) Mild tor m cr ISCI. In arc tkl>igncd lor use "llh hurgl.tr ahmn )'tl!m'i. Some h:a\e recent )ears it' been dm 11 all) dascountcd through mnil iniCllUII clod:s and can he pre·pmgrnmmed to e:~;.ecutc com· rdcr outlet . At 0, n's close in cost to the t ndard X·IU rruutdl> based on ume nnd da). You can h:l\c mnn) intcrf. s controllers. m lhfferent locnuon.. to t.:ontwl thc s me, or dtffcrent modules. liOniOCIOf

75

Apft 1989: VOlume 9, 111ue •


Th Computtr lntt.'f'l; ce nd tb C6-l

I he Computer lntcl1 e ha c1gh1 manual "'Ill·he and a DIN connector. It ~OIIlCS \\ llh a ~pc.'dall>l'l; IU U'Cf pon Ctln• ne tor for the C64 '11 • nnd a di<.J.; of wft"' are m 15-'1 format. A nanc-,olt b IIC:f) 1s used ns a JlC.l'-'tr fa1lure ba l · up. lo use the Computer Interface. )OU JU t plug it into a \\all outlet nnd the Cfl.t. ,\ "'llh un} u er pon de' 1cc. be 'ure the cmnputer 1s turned ull llclorc ctmnccung the cable. Stan the U!)J)OII progr rn b.> R :o.;ning the I1Dt prvgrum un the dt l .

11lc program ts laQ;cl} menu drl\ en. You can use the le~ buard or n JO) ti l to select menu option . Aller tung the mtemal clock \\ith th da) ul the \\CCl and 111nc. }ou'rc a-.lcd lor a house ctl\lc. Th1~ ctltle "'111 be used "'llh the c:1ght manu:ll "1tche to alltl\\ the 1ntcrfulc to "'ort.; us a ~tnpprd do"' n tandard controller. At the m.tin screen. select the mrta/1 option.

The program d1 phi} u ' menu' of rooms m a house, and front and re:tr \le ul the C::\tcnor. The name~ tlf the roonh c n't b.: ch:mgcd. Sd.ll )OU \\ant a mtltlule in the den. )Ou'll pnlh3· hi> choo.e lh JlMe' mum. Your f:unil> n•nm might ~"Ct•mc the 'guot' mum. tuall), )OU could put oil the modul m one 'mom· for ease of pmgramm10g. reg rdles ol their loca· uon 10 the hou.se.

You can select ~ernltimes for each de\ ICC. You can also se~1 one C)clc (00\\, toda). or tOOIDIT\)\\ ), or Jll"fltlt!IC C)dCS (C:\CI') da) or 'pcciriC dJ}SI. You can seiC\"1 lull llf d1m pcn:cmagc for lamp' und wall '" 1tche,, Yt1u can U'C c~act lime. or 'SC\:urit) • lur hghtl) 'Ill) in • on/''" urnc,, You l'Wl ulso group :>C\cnd module to~ the same tmlr'd ()de. When done programming. ju .. t tum oil the ct•mputcr and unplug the Computer lnterflK.-e. A raJ l.F.O (Light Enuumg 01odc) on the Ct,mputcr lntcrfat.--c nashes lo\\ I) "hen the unit 1s disconnected lriJOllhc f'O\\Cr hnc. Plug the Computrr Interface 1nto an) outlet. It \\111 no" C)de the ll)(lduk )OU'u~ programmed. You c:an lso use the m!lllual s1.1. 11 hcs to control module one thmugh c1ght that hare the mtc:rfacc's house code. The Computer lntcrtacc cannot d1m lamps manuall) . A feature umqu to the Computer lnh:rface ~~ the ah1l11y ttl sa\ c.: the tored module prugram tm d1 l . You can h"Cp SC\cral pn~rams lor \ nou pu~ and ltt:ld them into the 1nter· t: , ~\ ing JO) h J.; tunc. fhe d1sl: Iso h3 uuhue to control de\ tee~ d1rcctl) nd chan e the umc 10 the mrerflk.~ "1thout U\IOS the menu pmgnun.

The X-10 )"tcm ) tern i~ incral1hl) ca ) to use, c peu II) 11 )ou' 'e e\cr pent hours \."rll\\lmg bout under a house ino;talling a \\ired "}stem! Ju 1 plug thing .. m and mmc ch In the empc) roum, )ou'll h.lh: '<!\Cral po ihlc module loc.t Jtl)!.llt.l. The "' II '-'Itch module do require a M"rc\\tlmcr tums ht-."' n o red MJUan. Some ore on the noor, other. tm to rcmo'e the \\all plate and old '"' tllh You' ll aho u~ "'1rc the wulh and ce1ling. "' )OU po10t tu a ..quare it tum, \\ hile. nuh c'upplicdl to cunnect the module. Be 'urc to tum the Aller selecting a Si.JU:trc. )tlU c~ lamp or appltunu. Apph· JlO'-'cr ull at the bre.tL.cr panel llcfore in tailing "all "'lh;h ances can't be dmuncd. so the program \\on't ghe )OU that m1'1dulc~. optton 1f you choose appllan ~. I ~fer the \\all ll)(~Uics to coll\ent1onal '"'ll~hes. e\en 11 ' cu. )ou'rc &1'cn a chni e of lamp or apphosncc~ to u c. the\• an:n't contmlled h\• IOtcrtac\: • The X-10 "'all module Th e arc cute Jllctures made ol multkoluur pritc... There·~ arc pu h-(lfl, fJU\h·oll . It\ cali) tu tum 1m a light "llh )OUr a 'uriet) ol appli:tnt.e' or lamp '') lc~ il )tlU picl.;cd a loc.t· hand full. Ju~t pu'h on the '"itch\\ ith )tlur clhtl\\. liOn nn lhc noor. Wall locatiOn) gi\C )OU onl) \\all lamp~ and &hcrmost ts. Cc1lings can h3\C hangmg lamp,, or the A d1s:l(h antagc 1s a mall mechanical htlc JUst hclo\\ the Pll'h cnc:ril.' 'cu tom' ppli:m c. a "C?". Alter in,tall:uion. huthJO. It tum~ oil lhe h •ht "'hen pu'>hcd to the lett. X-10 sa) these pk&ure \\Ill np.pc."ar at thcu locauun \\hcne,er )OU thi, i a ~fct} feature to d1'1COO!le\., po-.c:r "'hen rcpoong clec 1 thh n10m. lamps. It', cas) to hll that ,JitJc '"' it~:h in r~oltl of the main but· ton. II the room ~~ dan. )OU may If) SC\Cral pre'sc' helore Each nKltlulc 1:. a'\•lcned a houo;c code and number. The pm· d1 O\cring. b) tou h. that )Ou·,c mad,cnc:ntl) mo'ro the gr.un "111 default to the OC\1 a\ a1htblc numllcr for the house .,Iide. C1lde a signed tu the Cumputcr lntcrf:»ee. But. )OU can change thi~ to am• of the 25b comhiru~uoch. One of the lcaturc' ol the You cannot d1m hghh m.tnuall} at the "'II~: h. It can only be Computer lntcl1 e O\cr other mterf 1 that 11 can use OOnc: \\lth on mtc:r! c. You can O\C:rilic the mtc:rflk~ bri&ht· nJan) huu ~codes lmultancolbl). ncs• Je,cl b) turning the contnlllc:d lamp on or off. L1 hts to he dimmed are l1rst turned on at lull intrn~it). then brought Alter in,t.tlling the m,ltJulc' thmughoutthe hou-.c. )OU pu'h Q do\\n to the tJc,ircd lc,el. tn £0 ba~-:1.; tu &he nuun sc 1\."Cn and -.elct:t "fl" dlt'. 1 he: lamp module that plu' 1010 outlet ha\e omc cAtra Again. )OU mO\e throu h the house to select a room :md m1ld· intclhgcncc: that \\a' a plcas:mt urp.risc. If )OU ha'e a l:un(l ulc. The pn.gram lets )OU set on and olT tunc for e-.x:h module. plugged into a fll(l(Jule. )OU can tum 11 on b) thro\\ ing 11 Troneoc:tof

76

Apfl1989. Volume 9,1aue 4


NewsBRK Goos \\ritrr 6-1: 11m "or\:, Inc. ha released Gt'os \\ntrr 64, GEO ·based \\ord proces~ing S) tcm that mdudc a \\'\ 1\\'\G pre\1e\\ mode and high ~ tc 1 entr). and tmpon and export text nd graphi . The program al fea· tures a 100.000-\\ord, hu1h·m pelting checker. n \\ide \anct) of "f1Ccial effect lunts; ma1l merge capahllll): cxten'i'e lor· mailing control: a 'fust-dralt' pnnting nu.xk: hc.'Kiers unll foot · cr.;; document chaining. to print documents uf unlimited length: mglc-kc)stmkc comm:md option; usc of mouse. jO)· ttc&. or kc)boord to mmc IUOUnd the document; online help rccns. Gros \\mrr 64 i upponcd b} linlC\\orks' t«hmcal support team at no charge tu registered usel'li. The pnJSram Jist, lur S49.95 US. Onler tmm: lime\\(lrL:s. 444 Lake Cool. Rd .. Dccrtlcld. IL. 601115. USA. Gtolt \\ rittr 6-1: limewort . Inc. has released Gt'OS n nlt'T 64. a GF.o•;.ba.'iCCJ "ord procCS! ing S) lem that includes a W'\ l\\"\0 pmie" mode nncJ high peed text c:nll). and impon and expons te 1 nnd grnphk . 'lhe program also lea· ture 11 IIKI.CXlO·\\ord. bu1IHn ~relhng checker: a "u.Jc \ariel) ul pc:ci:sl cllcct lnnts: m:ul merge capahJhty: c.xtensh e lor· matting contml: a 'lust-draft' printing mode: hcalkr and loot· cr.;; document cluuning. tn print documents ol unlimited length; mglc-l.:e) trole command option: usc of mouse, JO)· st1 1.: or &.e)bo~rd to mo\c around the document: online help scn-cn . Gt>os U ntrr 64 is "upponcd b) lime"orl.:s' t~hnknl uppnn team at no chnrge tn regi tcrct.l users. The progr.1m h~h lor $49 ,9~ US. Order lrom: Timc"urh. 444 Lal.:e Coul.: Rd .. l:k.'l:nield, II. 6(1(115, USA.

'itrotr •ist uses 11 high·lm\ uadmg ) tern, enhanced h) the usc of persi tence ched; to confinn bu) nnd 5ell ignab nd e ponenual U\eruges of quotc·t~uote \Oiatiht) to modi!) the ('IC~i tence :tandards nrulthe bu) and sclltngger ~n~ith itic . .\trc1tc• •1st

:!IJ.t)~

US. \\luch mcludcs the mam pmgrum

and I\\O 'uppon progr.tm : one ~reates histuri al tiles and the other track' \\CCk·tO·\\cek price :acti\il) {m the present) for undmg ignul • l'he p3 kage nlso include teiC'COmmuni a· taons pmgrum. a sequential file reader nnd 5C\ crul ) ears of h1s· torical \IUOtcs for a ficuonal msurarx."C compan). The proc:ram nm in compili:d DA~tc and is not cop)·pml\:c.:h:d Str:atcro Suit" are, Bo\ 14-2403, An humgc. Ala\kD W514. l S \.

Troublt\hootinR ond Rtpoirin~ tht Commodorr 118: ·t/\8 Book Inc. has announced the publication of I rouble, hootmg and Rrpoiring thr Commndorr 128 b) An Margolis. I he htd ux:ludcs II cumplcle ~· ( r dtagnosuc pntgrams that rc."klcrs can Ul'C to 1~1 their o\\ n machines. E\C:I"\• one of the C 1:!8\ c.:hipo. i' llct~ulcd in a -.cpar.1te chan tru.lt ho"~ the chip logic, pinout nnd \Oit;~ge 'scupe rc:kling.s. Margoli, aho dcsrnbes ho\\ to Uke the m!l(hinc np:m and re:tS5Cftlble it safe!). nd prm ides the latest C'hip-ch:utging tcdtniques. Included nrc a 'nal-dlip location guide and ma.stcr hcmlt1 of the Cl28. TI~e

contcnh uho indude ~:haprcrl> on: te 1 JXlllll : sen" mg the lcl£1C gate : ~n 1 mg d1g11al reg1 ter : tl~ Pl.A c.:htp: the ntcmol) management un11: the address. data nJ contnll hose : tltc 563 'ideo controller: and the po"c:r uppl) .

ln\c tment •.tralq} un the Cl28: Strateg) Software has :mnounced 1he rcle sc of I ht' \trorcglSI. n C 121\ rrutrl.:ct timing progmm for in\estors 111 took • hond • mutual lund nnJ com· modtUC .

lbe book has 448 ~ges nnd 290 illu trntion • Cost i :!4.SU Can. ( I .60 US) lor the Jl'l(lCrbac&. etluion and 16.50 Can. 1 :! · IJ.Ci l Sl for the hard cmer \eNnn. TAB BooJ.;s, Inc .. Blue Rid!!C Summit. PA I7194 ·IIX~O. l S :\

,\ cording to Strateg) Suftw:ue, the 1~ pic-.11 technkal anal) ~is JlrOBrum appnlxhes the ill\c:stor's real question - \\hich 'trat· eg) is be t?- onl) indm~ctl). It allo\\ the u~ to ch:u1 i sue pnces against one or 5C\C:rul tndicator.o so that he or she can '1suall) pick those that !iCCm to call the turns in the m:ui.ct. then usc them tn tmte trade . But. s:t)!> the CIJtnpan). these pm· gr.mt.. 1'.1il to gi\ e u han! mca,ure uf hn" rnu~ h u 81' en 'tr.ll· eg) \\Ould ha\c p:ud tnr costl the 111\CStor had he Clr 'he used 11 in the real "orld 10 the ~st. Stllrtmg "ith a hi tori I quote file for the i uc of interest and a trnteg) pccificd b) the user, Stratrgut goc thmugh the tile maJ.ang reah,uc imulated trade~ to see ho\\ muc.:h the 'tr.ttcru "''uld ha'c paid in re.al hie. Then. 'Ianing "ith the u-.er\ ini· tial stro~tcg) . the pwgram goe~ throu£h the hi-toricul file tl\Cr and m cr. 'ury mg the trnteg) ~hghtl) each lime. unul il am\e at s strnleg) that SJ'C the optimal pa)OII.

co~h

1581 toolkit : ,\~:run.hng to Soft\\are Suppon International, 1t too&. near!) I:! month to produce the 15 I ToolI. II. The:

pacl.;age include~ the folio" ing features for the 15, I user: I a 1 d:ua copier: trn J. and 'ector cllitur: h) te p:.tnem care.: her: lilc trn~:&. and scctur tra cr: rchx :uahle laM loader: fa 1 llle copier: director) editor; crrur !'.~o:.mner; fa~t fom1at· tcr; panit1on creator: and a 15S I 00.\ Rt'}Ut'IICt' Guide•.. 'I he duc.:umentatilln i in u three-ring binder. Soft"are Sup· purt International. 2700 ~.E. Andersen Rd .. #fA· I, \ 'uncou' cr.\\,\ 9 661. USA .

,.

Income ta' preparation: Ma.,tcr Solt"ure announce~ the relc.1sc of the 19Sl'! 'crsitm ut /cJ1 \luwc•r, \\hkh uid!> in the prcJXIr.lllon ol US t~emlm~·ome 1,1\C' • The program i~ for the C64, "uh either a ingle d1~a. driH!, a dual d1sl.; dm c. or t\\o single d1 I.; dn\cs. A printer is optional. Apr11989; Volwne 9,1nue •


Ta\ tastrr 19 CO\<.'n all the ne\\ tax Ia\\ , and guide" the user through the prcp.li"Jtion ul f·onns JI»CI and 4.5h2 (dcprc· e~o~tiunl. and S~:hedule" A thnllagh £·. It alstl indudc~ the ta\ table • figure!> UlA uutom:IIIC:lll). perform ull culcul:uaons. and uan fers result from one tax form to another. Tar UcW«'r /9.'iJi in Jude a lluilt·in cakul.llor Junction th.ll can he acl.'e sed .11 an) point in the pmgrnm. I he cukulator re ult ~"ltn he trun~fem:J directl\• to the hne ot the U\\ fonn being \\Or\;ed upon. Tite progrum retruls for '2 US and mcludcs a coupon s~ud to be good for a 'ubstanual dtscount on the 19S9 \Crsion. \1 tcr Softwnrc. 6 H1IICJ) Cuun. Randall· to" n. MD 21131. us,\. (i f:OS 128. •tr.ion 1.0. fkrJ.;el ' loiolt\\orL:-. announce, \Cf· 1on 2.0 of I he C 11 ' g111ph1, ('PC'rating eO\ ironment. h mclude enhanced \Cf' u'l • dr J.:/11p, groPamt, f)r,J.: Acrr.1· .SOr/t'S anJ dnU tlf1Jt S(llllC nl the OC\\ le:llurc:. mclude

trctching und ' alml of unage,, con,tram und mca,urc hXll' IIJlJ ne\\ graphic !i.ha~" lor ~c·t•Pcllnt; 'uppon lur '" o dri' e" (1541. I~71 or 151\ I) :llld RAM c~r.p.tn,ion unit. multiple hie sci tinn and colour coding ol Iiles in deJI..Top; and cut and p;tSte option~ nml utom:uic openmg of the hnot pholo album on d1'J.: lor the 1>151.. , \c,·r~writs.

torcd for e:K: h flCNm. • lo~m·ugc-s ,\c/nmcttl pcmut~ lhe usc of alnw'\1 an} prmter und up to lclur di,J.; drhe,.,, I he u.;cr ~'Un ~:u~tnmi1c the pro· tr.am. lor exnmple. to h;a\e 11 ulwa)!l pnnt Ia 1 name lirst. or 10 add an oc~u~lion . It can do searches m a number ut wa~ . A mall built-in \\Ord pnl\.---essor pcrmils the addition ul 'turies to eoch (lCI'!iOil'!i data. This 'c:rsion abo corn\:s "ith telephone und mail ~uppon. • I anul' Roots dd, man) more capahilit1cs "' the l.ltl· togc- Adwmcetl program, mcludmg the usc ol !unction ke) for quid.; cntl') of rcpetithc place na~ or umames: tmcing of a ne\\ line of relntion~ on the rc:en nod sending onI) those ) ou "i-.h to the pnnter: maJ.:mg u chan 'ho" mg onl) the luther\ line: and su (m, Th1s prugr.am i~ :tlstl a' ailat'ile fur the C I:!X 111 lh rulli\ c mode. • I ne Choru 1 n upplcntenllll progrnm to both Unear:eJ and I am1h Roots enabling the user to cre:ue and print u graphacal rcpresentalitm of the famtl} tree. Quin-.ept

II'~

hcd at Rm. llh. Lexington. Mt\ 0217.'. l S \ lclephone (hl7) 641-:!930. Quinsept 1 reprcscmed m (.,n.ula b) Generation Pres Inc.• 172 King llenf) ·s RouJc,anJ. Agiocuun. 0~ Mil 2\'6. lel. (41h) 2!12·9~4~ . cliO

be re

di tributor: Posc1don f:ll'~tmnk ot :'\c" YurJ.:. ~y ha\ h«n ppointed primal) S dl-.tnbutur of the line of Cll CP/M ~ft"are from llemc D.:~ta S) terns of lon.wllo. 0~. PclSCidon i wcll·kno"n for it di tnbution of Cummodurc pcc."itic: CPJM Mlh\\ rc :md \\ill imuall) han(lle t\\0 llcme DJta produch: JUCIG' f I .R·/28, \c:r,mn 3A, anti QJ>,,t. \CI'l>ion 2. 1. The fcmner pmgram ., a dtsk ullhl) for lhc I ~71 and 1581 that allo" s them to read. "nle and fonnat 0\ er 140 l)pc~ of ~ 1/4 and 3 112 CP 1 di!J,;s, lhe Iauer is a lllCI1l«'l) · rc idcnt de\ ice dmt'r chat pnl\ides CP/\1 mode up· pun lor the Quic:J.: Bro\\ n 8u\, u t'lallcl) ·h:K J.:etl C\10'> K \\I canridJ;e that operate' a' a no1Holatilc RA\1 di.,J.: dmc. P<l~l ­ don Elcctrona~s. 1Cl3 WaH!rl) f>ln e. ~e" Yon.. N' lOCH I. LS\ Telephone (2111777-9515.

:\e" C l28

G/.0\ I !H 2.0 ulstl indude~ se\erul OC't\ uppli ution'>: • geoUme Uorbhop l!t\ i'i a 't\ord processor chat feature":

indl\ idual paragr.aph lvrm:uung: Jell. right, centre and full JU,tilicaticm: hcutler.. and lc!~llers: tl\.'\:imal tah ..; full page pre\ IC\\, II fonts 10 SC\ en I} lc~ and muhtplc lie~: mnmg of tcll.t and graphk : uppon lor muh1ple culumn,. head· line and llordcrs: and PostS ript output to the: Awlc l..nsc:r· \\ntcr • toSptll 12. oper.atc' in~~~ column' and pcrmth \iC\\ ing uf d1ctmn.ancs und document~ \\ hilc chcd.;mg 'pelling. It ullo\\ ~ the creation and updmmg of personal dadionaric,. and uwon glorol 'ol'an:h nd replace: • lt"xt Grahkr lets the u~r mtpon teu from llll) Com· modurc "1•rd procc,...or: • !:«'"\lag«' prm 1dc.. ma1lmc:rgc t."upabillt).

CPJ~t

lla\ ic 8 return,! l ·n.-~ Spmt Sult\\>~TC In . has mtrodu~ed SC\ • era I pmJu't' h1r the C I ~8 und CM. 1ncludmg a nc'' I) cnhan cd \Crsion o1 Ba R. \\hkh add~ mer SO graphic com· lllllnth to Bt\SIC 7 0. c;c\~rul prcprogrnmn d flan "'l'fl cation~ urc mel udal: 8 I" Pa/111, "nit' uncJ Coh. hl~ sr.nt IS aiS<l of1ering u BliSIC~ Too/1..11 teacunng u poin1 and d•~l. c•pcr· ating '}'tcm th.ll lei\ u~r~ create cu,tom pointer fonh, pat· tern' nnd koo~. The 7tJt•IJ.u ul~o allo"' the user to com en Print Shop ~;rap.hi mto BasicS ~raphic' files, nnd pro\ ide a numller ol dt\J.: ut1ht1cs that include mal..c uloboot, com"en 1con file to bru'h hie. scratch file, renante file. toggle dm e and ~ em. llcHic 'I ha' a 'uggc:Mt"d retail pric..: c,l 39.95 US: the 7tH•IJ.u i~ a' mlallk lor 19.9~ .

l ntil April 1~. 19 9. GEO.\ 128::0 i.. 3\:ul.th, ·o regi tered users of GI.O.\ /'21! for '5 S. plus $4.50 l S h pping :md handling caJd 2.4Ci .sak tux II an CilhlorniJ) lniJT\ BcrJ.;cle) Soft\\ or!..' f·ullilhncnt Ccnll:r Ci H4 Sterling Center Dri\c. \Vc,tlal.e Village. CA 91361. L S \. (;cmeal~ical

w R\\are: Quinsept Inc. ha .. created u lane of genealogaC':ll soltwarc for the C6-t: • l .mrilllt'' .\tclflc•r let.. the user 'tore data lor up to 570 pco·

pie. print alph!lbctk li~ts in u \ uri..:t) ul "a) • and print de cndant chan and th~ l.1nJ,., of anccslor chan, (m a Commodore prancer. • Lml'ciC:tl ,\ tandem/ due C\ Cl) thing ft,und in Lifl· I"CI!I<'\ ~tllfftl and udch cro..,·rcfcrcncang und pnnung ot oJdrc:'' label,, and mfomtallon 'hcch 'ho\\ ing "hat 1'

.\b' U\ailahlc:

dr.a't\ ins 1m u 640 ~ 200 scrccn. "llh numerou' dra\\ ins tip' and lont,. Outp.ul 1 comp;uihk "ith Ba\iC '1, l'nnt \hop. N«'liJ \fa1t•r I 28 nnd

• SJ.ttdlpacl /1,\ pnmdc

79

lrt--e·h<~nd


.'ipc•rtrum 128. Jlrice j, 19.95 LS. \rii'S \ful.rr I:!~ '' a de,J..tup publishing progr:sm for new~tcuer....

rept>n,, 'ign~ and po-ter,, It u~' ~tandanl sequential lite~ for 'ptlUring' tC:\t into U'Cr·ocfincd I:UJUm· n... Full page: la}OUt, ptJpdo~n menu-.. 'n10oth "rcen M:rotling. font -.ctecuon, cut, pa,te, mirror and llap are among the option' a' ail able. co,t i' ::!9.95 LS. • Spc•cflllfll I :!i'i i~ a mcnu-oper.ued paint program for the Cl1~0 that cun di,pla) the 16 'tandarc.J colour.. and un uddatitmal 11~ colnul"' through I.'Oiuur dithering on u ~() ' 100 -.creen. It~ feature' include air bru,h. em-.e. mirror. multi~:oloor. bloc!.. lilt or crn:-c. piwl cditclr. \.'Oiour cdatnr. fonh. ,Jidc 'ho\\ and other... h require .. the 1351 or compatible mou..e and C::lhh 39 9"i

l.nnomarl.. TCRB " not c::opy pmtc~:tcd and can be bJI.'I..ed up to 1581 . H·Ft. drl\c-. 'uch a' the C)fD HlOI or to a hard da,J... BuN mode is used ~ith 1571 and 15KI dri\c,, The 'fX>ed ol UO) ~•arch i' entire!} dependent on the 'fX"'Cd of the di''- dri'e li'Cd. Commercaal oi,J..: 'peed up pmduch ~ill \\ orll: ~ ith Landmatl..: (load and 'earch file' on one ,jc.Jc of a di,t.;: -.tcx:J.: 1541 - 6:()() min.; ~/Ep} \I u1t u>cJcl· I :3K min.). Landmart. \\ill alto~ )OU to e\tmct intunnation to create )our o~n topacal tile,, Thc\C can be manipulated "ith Lundmarl.. ·, o~n editing lc;uurc' or )OU can u\C the F1lr Cmwcrta to C\ptm tile that \.'Uo he u..cd \\ith Papmlip. f.'<HY Srnpt. gro\l'm1• (\ 21 or flat Sntmr. l.andmarll: i' ~ritten an 1(10~ \fl. for 'peed. Full) menu .Uri' en for ca\C of u-.e.

f'rec Spant ha' al~o antroduccd 'ome CM product,, including tour gr:sphic' pmgrnm, ~hich haH~ been licen,ed from Solu· titm' Untimitc:d. Inc.: k(lfl f(/( tory i' u gr.1phk' cunvel'>itm utilit) ( 34.95 US l: Sc-rt'c'll I \ '' a ,Jide,huw crcatiun and pre~ntmion progrnm ( 34.95 L S 1: B11fbo..m/ Mu~c-r taJ..e~ grnphic' fmm mo't drn~lfl~ progr:sm' and con, en' th\!m to 4· ft . )I; 3·1t. ~ign' 1 34.95 l S 1. ilnd Plwtn Fini\lt optimi1e' the clant) of the printed amage <640 \ 400 re,oJution - 29.95 USI

Co,t i-. 119 9'i l MO 630::!::!. L So\

on the CM. The progl'1ll1l 1\ ..;~id to u-.e the method., de\ eloped b) Dr. J. B. Rhine and the Foundation for Re..can:h on the ature of Man to h!'t for clair" O)an<.:c. prcco'-'niuon and telcpath) .

I

""'"'"u J

Solt~are.

P.O. Bo\ 15K4.

Ball~ in.

WE WON' T PAY YOUR TAXES! lui TAll MMTUI ...... you C1C11!1P1M . _ - OUICIU.Y n EASilY S. ... M - 01 ~ r . . - TAll MMTUI - ..-a• tAl tor ,our - ,_,,.

an an:ade·'t}le. 'h<lOt'em-up gilm\! for the CM that f\!aturc' " the ultimate ~anior of the luturc" C 29.9'i L Sl Order from: force Spant Soft~are Inc.. P.O. Bo\ 11K. KulltO\\n, P,\ 19530. LS \ Telephone (215) 6X~·5609 . j,

"""""" T • N[W

tor.,. CI<UC-1211 WCII.,..

Till . . . .,.. COts .. tid

-or-..,..,.. n

OIIIOotl ........,

• FORI II 1 - , •5&2, 6 k" It In A. .. C, 0 , I 6 ,

• I'OW'O'Itlll I I · - - CO~:rt.Y• • UoiY CHANG~.,....,...,.,""" -Tille Mc:Alc:YI.AllON.,..,.- 1om\ • 1'1IIANIRM ,.....,.. Wlli . .• lat1'llll • c:,&l t:l.!!.ATIS your .... n MJUIC) Tea ........ f t - • SAifD II ,our ID lor t.llin - . . • ,,.,,.. ... -

. . _ - llanft

• CAll C\Jl_/ITOIII . . , _ • ....,. "' • OIICOUNT OOi.IPO" -IWd tile . , . . , _ al nnt ~·· 14< · 1110C9- • - -

Guitar chord tar training: Chord Prima i' n dictional') of guatar chorc.J lingering' for the C64 containing 19 ol the mo,tu-.ed chord t)flC' in popular mu ...ic. u~r... can learn the c.hord fonnula'i for each I) pc and their o,ound b) ti"enang to the CM pia) them a' arpeggio ... Other option' include utilitie' for printing hard copae' of 'tall paper. tablature paper, blunt.: li,cfrct diagl'1ll1l' and mot-node li~ting, for the fuunh. filth .tnd i... U\ ail able at a co'I or s19.95 us 'iltth ... tnng .... CltorJ from Computers. Ell.:!. Dept. GCP. 4511-A Bee Radge Rd .. Sata\OW, FL 34133. L S \ .Telephone <813) 377-11::! 1 or (KCXl) 6~-5546 (orders. onl) 1.

TAX MASTER •••••••••• (ON DISK) •.••••••• ONLY S32.00

TIRED OF SWITCHING CABLES? VIDEO llAaTlJIJ 121 piOit'idlll OfW.,.,..._ 10 COl JCliL1I COb ~ ., <a' ••• mao ~.,., ewdiO OUI e-.c"- bef1:1P~ 10......., ...,IIOdWon• Met~ •rmn CIIDr for ~a•• UM wet.., • "~•• • orcr lndWr co•ijll'lr• Cllbte

,..,41:1

VIDEO MASTER 121 ••••• fOf' CommocSciN 121 •• •• • 131.15

FED UP WITH SYNTAX ERRORS?

p,;,,.,

HlLI' MMTUI N ~~~- you .... 'r-

ICI-•

0..~ Hi11P ~- II • MSIC COl-Ida t'IO 8AIIC RAM N10 ~- - . g ...... .,..'II or ~ IIASIC pagr- lntfudM - . . . USIC • • - - - , _ .

HELP MASTER M .....fOf' Commodore M, MC ••.• 124.15

--I

OTHER MASTER SOFTWARE ITEMS IIUIT MMTUI C... ,...,. AoiC) . ...,. 111'2 ...... 1111 0.. IMD'I lOT ~~~Cl>lpl " - M()OIM MMTUI 11011 • - 121. wlrnll Y-NOT? 1-locl _.. Y I ....... 2 lin . . cow-1 Y·Y£11 1-locl _,., Y eM* , -· C.ta ., COl liiOIIOCfWOII4 CliDit tor non-AQ8 tRUU HI'

King Jamt'i Bible on C~: l.wulnwr~. tilt· Compmtr Rt/cr· tlln! Bihlt con~i"" or the entire Kang Jaml!' 'el"iion ol the Bible on ::!4 douhle-,ided di,h. The Lumlmurl. o,olt~are pm· \ide.. accc'' to the d"l'. ~ ath indi\ idual 'ersc reference' unt.l the ~ord, ol Chri.,t highlighted in colour. A concotdan e of O\:Cr 3.300 of the mo't frequently loot.ed for \\Orc.l' i'> al'>tl pro\lided on ,h. duuble-,aded di'k'. The program enahle' thl! u'er to. for t\ample. create a pcr.onal Bible. complete "ath note,. comment,. referencing and outlining of te't. Transactor

PA\ \

Free '>Oh~arc from ~1tmOrc\ : \fcmorc\ ha e..tabli,h\!d a 'frequent bu)er' progrum that leh cu,tomers buald ptJIOh to~ Jrd tree 'ott~ arc. litle' a\ ailable include the Pf·S 'eric-. fn,m Soll~an! Puhh,hang Corp.. and other.. from \ ccol.1de. Acti\ i'i<m OJ,t.:-C<mnt Snlt~are. Electmnic An,, lndl\ idual and PubJi,hing lntcm.ttaonal (8} te Sue). The pmgl'1ll1l pro· mote' the full line of Memorc' computer 'upplies. including di,J..' and paper. Jn,truction-. and a l.'llmplctc Ji,t of a\aalablc ,oft\\MC are un each pa~:t.ugc. ~1emorc\ Computer Supplic~. 1400 Conden..a St . Sanw Clara. CA 95051 0996. LS \ Telephone l4tllH 957- HlUO.

f \P TC'urr ( 24.95 LSI no~ include-.,, version that \\ill run

\f \CII ( \fcmt'IIH'rtlhlt' ,\rmc.J Compllfa

~

"'*""'--

0.. -r.tor , .C ... M-niAH The Ol'lly you , . • -. , CIOOI>Illl IWtC

II.

114M fM :14M

1100 100

10.••

s.nd for FrH Ca1Mog

~~A~TER

C!JOFTWARE

8 Hlllety Ct. Randallstown, MD 21133 (301) i22·2182

eo

ACO&.t••_,•sJ .&_..,.UI .... C&i

~

7 1700 ...... M

J1'Qt •

...

c .............. C¥1f'Jn

POITAL ..,_, ..,. ...,,_. 'fl tt -

.,_ .._ Dalliw ... n I

a


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.